{"version":3,"sources":["api/PenaltyCodeList.js"],"names":["VerifyHtml","str","div","document","createElement","textContent","innerHTML","FetchPenaltyCode","varibleText","this_","type","FetchData","Regulations","html","fetchURL","host","$","ajax","url","headers","Accept","success","data","Error","result","Result","element","fragment","createDocumentFragment","firstListItem","className","appendChild","forEach","r","listItem","Name","querySelectorAll","li","classList","remove","querySelector","trim","indexOf","add","selected_check"],"mappings":"AACA,SAASA,WAAWC,GAElB,MAAMC,EAAMC,SAASC,cAAc,OAEnC,OADAF,EAAIG,YAAcJ,EACXC,EAAII,UAGb,MAAMC,iBAAmB,CAACC,EAAaC,EAAOC,EAAMC,EAAWC,EAAaC,KACrEA,IAAMA,EAAO,IAClB,IAAIC,EAAWF,KAAiBG,oCAAoCH,OAAmBG,oBAAoBL,IAC3GM,EAAEC,MACAC,IAAKJ,EACLJ,KAAM,MACNS,SACEC,OAAQ,oBAEVC,QAAS,SAAUC,GACjB,IAAKA,EAAKC,MAAO,CACf,IAAIC,EAASF,EAAKG,OAEdC,EAAUjB,EAAM,GACpBiB,EAAQpB,UAAY,GAEpB,IAAIqB,EAAWxB,SAASyB,yBAEpBC,EAAgB1B,SAASC,cAAc,MAC3CyB,EAAcC,UAAY,WAC1BD,EAAcvB,UAAY,sBAC1BqB,EAASI,YAAYF,GAErBL,EAAOQ,QAASC,IACd,IAAIC,EAAW/B,SAASC,cAAc,MACtC8B,EAAS5B,qBAAuBN,WAAWiC,EAAEE,iBAC7CR,EAASI,YAAYG,KAGvBR,EAAQK,YAAYJ,IAEfhB,GAAaA,EAAUD,IAAWC,GAAiC,KAApBA,EAAUD,MAC5DgB,EAAQU,iBAAiB,MAAMJ,QAAQ,SAAUK,GAC/CA,EAAGC,UAAUC,OAAO,YACTF,EAAGG,cAAc,UAAUnC,YAAYoC,OACzCC,QAA4B,KAApB/B,EAAUD,GAAe,KAAOC,EAAUD,KAAU,GACnE2B,EAAGC,UAAUK,IAAI,cAGrBC,eAAmC,KAApBjC,EAAUD,GAAe,KAAOC,EAAUD","file":"PenaltyCodeList.js","sourcesContent":["// 將特殊字符進行 HTML 轉義,防止 XSS 攻擊\r\nfunction VerifyHtml(str) {\r\n // 使用 textContent 處理 HTML 特殊字符\r\n const div = document.createElement(\"div\");\r\n div.textContent = str;\r\n return div.innerHTML;\r\n}\r\n\r\nconst FetchPenaltyCode = (varibleText, this_, type, FetchData, Regulations, html) => {\r\n if (!html) html = \"\";\r\n let fetchURL = Regulations ? `${host}/api/v1/Code/Law?regulations=${Regulations}` : `${host}/api/v1/Code/${type}`;\r\n $.ajax({\r\n url: fetchURL,\r\n type: \"GET\",\r\n headers: {\r\n Accept: \"application/json\",\r\n },\r\n success: function (data) {\r\n if (!data.Error) {\r\n let result = data.Result;\r\n\r\n let element = this_[0];\r\n element.innerHTML = \"\";\r\n\r\n let fragment = document.createDocumentFragment();\r\n\r\n let firstListItem = document.createElement(\"li\");\r\n firstListItem.className = \"selected\";\r\n firstListItem.innerHTML = \"\";\r\n fragment.appendChild(firstListItem);\r\n\r\n result.forEach((r) => {\r\n let listItem = document.createElement(\"li\");\r\n listItem.innerHTML = ``;\r\n fragment.appendChild(listItem);\r\n });\r\n\r\n element.appendChild(fragment);\r\n\r\n if ((FetchData && FetchData[type]) || (FetchData && FetchData[type] === \"\")) {\r\n element.querySelectorAll(\"li\").forEach(function (li) {\r\n li.classList.remove(\"selected\");\r\n let text = li.querySelector(\"button\").textContent.trim();\r\n if (text.indexOf(FetchData[type] === \"\" ? \"全部\" : FetchData[type]) > -1) {\r\n li.classList.add(\"selected\");\r\n }\r\n });\r\n selected_check(FetchData[type] === \"\" ? \"全部\" : FetchData[type]);\r\n }\r\n }\r\n },\r\n });\r\n};\r\n"]}