{ "version": 3, "sources": ["../src/uxaddon/dom.ts", "../src/uxaddon/table.ts", "../src/page.ts"], "sourcesContent": ["import { createRenderEffect } from \"solid-js\";\n\n\nexport function wrapElementsInClass(elements: Iterable, classes: string[]) {\n for (const e of elements) {\n createRenderEffect(() => {\n const wrapper = document.createElement(\"div\");\n wrapper.classList.add(...classes);\n e.replaceWith(wrapper);\n wrapper.appendChild(e);\n });\n }\n}\n", "import { createRenderEffect, onCleanup } from \"solid-js\";\n\nfunction findCorrespondingTableHeadOfCell(target: HTMLTableCellElement): HTMLTableCellElement | null {\n const parentElement = target.parentElement as HTMLTableRowElement;\n const collection = parentElement.cells;\n for (let i = 0; i < collection.length; i++) {\n if (collection.item(i) === target) {\n const tbody = parentElement.parentElement\n const table = tbody.parentElement\n const allHeads =\n table.querySelectorAll(\n \"thead > tr > th\"\n );\n return allHeads.item(i) as HTMLTableCellElement;\n }\n }\n return null;\n}\n\nconst TABLE_COLUMN_HOVER_CLASSNAME = \"table-column-hover\";\n\nexport function renderAdvancedTablesOn(elements: Iterable) {\n for (const e of elements) {\n if (!(e instanceof HTMLTableElement)) {\n console.warn(e, \"is unable to be rendered as advanced table\");\n continue;\n }\n\n const onMouseEnter = (ev: MouseEvent) => {\n const head = findCorrespondingTableHeadOfCell(\n ev.target as HTMLTableCellElement\n );\n if (!head.classList.contains(TABLE_COLUMN_HOVER_CLASSNAME)) {\n head.classList.add(TABLE_COLUMN_HOVER_CLASSNAME);\n }\n };\n\n const onMouseLeave = (ev: MouseEvent) => {\n const head = findCorrespondingTableHeadOfCell(\n ev.target as HTMLTableCellElement\n );\n if (head.classList.contains(TABLE_COLUMN_HOVER_CLASSNAME)) {\n head.classList.remove(TABLE_COLUMN_HOVER_CLASSNAME);\n }\n };\n\n createRenderEffect(() => {\n for (const td of e.querySelectorAll(\"td\")) {\n td.addEventListener(\"mouseenter\", onMouseEnter);\n td.addEventListener(\"mouseleave\", onMouseLeave);\n }\n });\n\n onCleanup(() => {\n for (const td of e.querySelectorAll(\"td\")) {\n td.removeEventListener(\"mouseenter\", onMouseEnter);\n td.removeEventListener(\"mouseenter\", onMouseLeave);\n }\n });\n }\n}\n", "import { createRoot } from \"solid-js\";\nimport { renderLocalTimeOn } from \"./uxaddon/time.js\";\nimport { wrapElementsInClass } from \"./uxaddon/dom.js\";\nimport { renderAdvancedTablesOn } from \"./uxaddon/table.js\";\n\ncreateRoot(() => {\n renderLocalTimeOn(document.querySelectorAll(\"[data-time-format]\"))\n wrapElementsInClass(document.querySelectorAll(\"main > table\"), [\"table-responsive\"])\n renderAdvancedTablesOn(document.querySelectorAll(\"main > .table-responsive > table\"))\n})\n"], "mappings": "wDAGO,SAASA,EAAoBC,EAA6BC,EAAmB,CAClF,QAAWC,KAAKF,EACdG,EAAmB,IAAM,CACvB,IAAMC,EAAU,SAAS,cAAc,KAAK,EAC5CA,EAAQ,UAAU,IAAI,GAAGH,CAAO,EAChCC,EAAE,YAAYE,CAAO,EACrBA,EAAQ,YAAYF,CAAC,CACvB,CAAC,CAEL,CCVA,SAASG,EAAiCC,EAA2D,CACnG,IAAMC,EAAgBD,EAAO,cACvBE,EAAaD,EAAc,MACjC,QAASE,EAAI,EAAGA,EAAID,EAAW,OAAQC,IACrC,GAAID,EAAW,KAAKC,CAAC,IAAMH,EAOzB,OANcC,EAAc,cACR,cAEZ,iBACJ,iBACF,EACc,KAAKE,CAAC,EAG1B,OAAO,IACT,CAEA,IAAMC,EAA+B,qBAE9B,SAASC,EAAuBC,EAA6B,CAClE,QAAWC,KAAKD,EAAU,CACxB,GAAI,EAAEC,aAAa,kBAAmB,CACpC,QAAQ,KAAKA,EAAG,4CAA4C,EAC5D,QACF,CAEA,IAAMC,EAAgBC,GAAmB,CACvC,IAAMC,EAAOX,EACXU,EAAG,MACL,EACKC,EAAK,UAAU,SAASN,CAA4B,GACvDM,EAAK,UAAU,IAAIN,CAA4B,CAEnD,EAEMO,EAAgBF,GAAmB,CACvC,IAAMC,EAAOX,EACXU,EAAG,MACL,EACIC,EAAK,UAAU,SAASN,CAA4B,GACtDM,EAAK,UAAU,OAAON,CAA4B,CAEtD,EAEAQ,EAAmB,IAAM,CACvB,QAAWC,KAAMN,EAAE,iBAAiB,IAAI,EACtCM,EAAG,iBAAiB,aAAcL,CAAY,EAC9CK,EAAG,iBAAiB,aAAcF,CAAY,CAElD,CAAC,EAEDG,EAAU,IAAM,CACd,QAAWD,KAAMN,EAAE,iBAAiB,IAAI,EACtCM,EAAG,oBAAoB,aAAcL,CAAY,EACjDK,EAAG,oBAAoB,aAAcF,CAAY,CAErD,CAAC,CACH,CACF,CCvDAI,EAAW,IAAM,CACfC,EAAkB,SAAS,iBAAiB,oBAAoB,CAAC,EACjEC,EAAoB,SAAS,iBAAiB,cAAc,EAAG,CAAC,kBAAkB,CAAC,EACnFC,EAAuB,SAAS,iBAAiB,kCAAkC,CAAC,CACtF,CAAC", "names": ["wrapElementsInClass", "elements", "classes", "e", "createRenderEffect", "wrapper", "findCorrespondingTableHeadOfCell", "target", "parentElement", "collection", "i", "TABLE_COLUMN_HOVER_CLASSNAME", "renderAdvancedTablesOn", "elements", "e", "onMouseEnter", "ev", "head", "onMouseLeave", "createRenderEffect", "td", "onCleanup", "createRoot", "renderLocalTimeOn", "wrapElementsInClass", "renderAdvancedTablesOn"] }