@ecopages/radiant-ui 0.1.0-rc.8 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +9 -1
- package/dist/components/ui/autocomplete/autocomplete.css +1 -2
- package/dist/components/ui/avatar/avatar.css +10 -8
- package/dist/components/ui/avatar/avatar.d.ts +3 -1
- package/dist/components/ui/calendar/calendar.css +10 -5
- package/dist/components/ui/calendar/calendar.script.d.ts +1 -0
- package/dist/components/ui/calendar/index.js +1 -1
- package/dist/components/ui/calendar/index.js.map +3 -3
- package/dist/components/ui/carousel/carousel-autoplay.d.ts +22 -0
- package/dist/components/ui/carousel/carousel-swipe.d.ts +17 -0
- package/dist/components/ui/carousel/carousel-window.d.ts +63 -0
- package/dist/components/ui/carousel/carousel.css +71 -18
- package/dist/components/ui/carousel/carousel.d.ts +1 -1
- package/dist/components/ui/carousel/carousel.script.d.ts +49 -21
- package/dist/components/ui/carousel/index.js +1 -1
- package/dist/components/ui/carousel/index.js.map +4 -4
- package/dist/components/ui/checkbox/checkbox.script.d.ts +0 -3
- package/dist/components/ui/checkbox/index.js +1 -1
- package/dist/components/ui/checkbox/index.js.map +4 -4
- package/dist/components/ui/checkbox-group/checkbox-group.d.ts +0 -1
- package/dist/components/ui/checkbox-group/checkbox-group.script.d.ts +8 -7
- package/dist/components/ui/checkbox-group/index.js +1 -1
- package/dist/components/ui/checkbox-group/index.js.map +4 -4
- package/dist/components/ui/combobox/combobox.css +2 -2
- package/dist/components/ui/combobox/combobox.d.ts +1 -2
- package/dist/components/ui/combobox/combobox.script.d.ts +13 -6
- package/dist/components/ui/combobox/index.js +1 -1
- package/dist/components/ui/combobox/index.js.map +4 -4
- package/dist/components/ui/cycle-toggle/index.js +1 -1
- package/dist/components/ui/cycle-toggle/index.js.map +3 -3
- package/dist/components/ui/date-field/date-field.css +13 -17
- package/dist/components/ui/date-field/date-field.d.ts +7 -5
- package/dist/components/ui/date-field/date-field.script.d.ts +16 -48
- package/dist/components/ui/date-field/index.js +1 -1
- package/dist/components/ui/date-field/index.js.map +4 -4
- package/dist/components/ui/date-input/date-input-segment-dom.d.ts +24 -0
- package/dist/components/ui/date-input/date-input.css +50 -0
- package/dist/components/ui/date-input/date-input.d.ts +8 -0
- package/dist/components/ui/date-input/date-input.script.d.ts +137 -0
- package/dist/components/ui/date-input/index.d.ts +2 -0
- package/dist/components/ui/date-input/index.js +2 -0
- package/dist/components/ui/date-input/index.js.map +7 -0
- package/dist/components/ui/date-range-picker/date-range-picker.css +18 -19
- package/dist/components/ui/date-range-picker/date-range-picker.d.ts +8 -6
- package/dist/components/ui/date-range-picker/date-range-picker.script.d.ts +24 -47
- package/dist/components/ui/date-range-picker/index.js +1 -1
- package/dist/components/ui/date-range-picker/index.js.map +4 -4
- package/dist/components/ui/dialog/dialog.css +18 -14
- package/dist/components/ui/dialog/dialog.script.d.ts +10 -3
- package/dist/components/ui/dialog/index.js +1 -1
- package/dist/components/ui/dialog/index.js.map +4 -4
- package/dist/components/ui/disclosure/disclosure.css +3 -6
- package/dist/components/ui/disclosure/disclosure.d.ts +15 -5
- package/dist/components/ui/disclosure/disclosure.script.d.ts +2 -2
- package/dist/components/ui/disclosure/index.d.ts +1 -1
- package/dist/components/ui/disclosure/index.js +1 -1
- package/dist/components/ui/disclosure/index.js.map +4 -4
- package/dist/components/ui/field/field.d.ts +1 -1
- package/dist/components/ui/field/field.script.d.ts +27 -4
- package/dist/components/ui/field/index.js +1 -1
- package/dist/components/ui/field/index.js.map +4 -4
- package/dist/components/ui/form/control-protocol.d.ts +38 -1
- package/dist/components/ui/form/form-context.d.ts +3 -0
- package/dist/components/ui/form/form.script.d.ts +7 -0
- package/dist/components/ui/form/index.d.ts +2 -1
- package/dist/components/ui/form/index.js +1 -1
- package/dist/components/ui/form/index.js.map +4 -4
- package/dist/components/ui/hover-card/hover-card.css +12 -101
- package/dist/components/ui/hover-card/hover-card.script.d.ts +7 -0
- package/dist/components/ui/hover-card/index.js +1 -1
- package/dist/components/ui/hover-card/index.js.map +4 -4
- package/dist/components/ui/input/index.js +1 -1
- package/dist/components/ui/input/index.js.map +4 -4
- package/dist/components/ui/input/input.css +1 -1
- package/dist/components/ui/knob/index.js +1 -1
- package/dist/components/ui/knob/index.js.map +3 -3
- package/dist/components/ui/knob/knob.css +6 -1
- package/dist/components/ui/knob/knob.d.ts +1 -1
- package/dist/components/ui/knob/knob.script.d.ts +25 -10
- package/dist/components/ui/label/index.js +1 -1
- package/dist/components/ui/label/index.js.map +4 -4
- package/dist/components/ui/listbox/index.js +1 -1
- package/dist/components/ui/listbox/index.js.map +4 -4
- package/dist/components/ui/listbox/listbox.d.ts +1 -2
- package/dist/components/ui/listbox/listbox.script.d.ts +7 -5
- package/dist/components/ui/menu-button/index.js +1 -1
- package/dist/components/ui/menu-button/index.js.map +4 -4
- package/dist/components/ui/menu-button/menu-button.script.d.ts +1 -1
- package/dist/components/ui/menubar/index.js +1 -1
- package/dist/components/ui/menubar/index.js.map +4 -4
- package/dist/components/ui/meter/index.js +1 -1
- package/dist/components/ui/meter/index.js.map +3 -3
- package/dist/components/ui/meter/meter.css +27 -2
- package/dist/components/ui/meter/meter.script.d.ts +14 -4
- package/dist/components/ui/navigation-menu/index.d.ts +1 -1
- package/dist/components/ui/navigation-menu/index.js +1 -1
- package/dist/components/ui/navigation-menu/index.js.map +4 -4
- package/dist/components/ui/navigation-menu/navigation-menu.css +32 -34
- package/dist/components/ui/navigation-menu/navigation-menu.d.ts +33 -4
- package/dist/components/ui/navigation-menu/navigation-menu.script.d.ts +71 -9
- package/dist/components/ui/number-field/index.js +1 -1
- package/dist/components/ui/number-field/index.js.map +4 -4
- package/dist/components/ui/number-field/number-field.css +1 -1
- package/dist/components/ui/number-field/number-field.d.ts +1 -1
- package/dist/components/ui/number-field/number-field.script.d.ts +7 -9
- package/dist/components/ui/pagination/index.d.ts +1 -1
- package/dist/components/ui/pagination/index.js +1 -1
- package/dist/components/ui/pagination/index.js.map +3 -3
- package/dist/components/ui/pagination/pagination.css +50 -13
- package/dist/components/ui/pagination/pagination.d.ts +25 -6
- package/dist/components/ui/popover/index.js +1 -1
- package/dist/components/ui/popover/index.js.map +4 -4
- package/dist/components/ui/popover/popover.script.d.ts +5 -0
- package/dist/components/ui/radio-group/index.js +1 -1
- package/dist/components/ui/radio-group/index.js.map +4 -4
- package/dist/components/ui/radio-group/radio-group.script.d.ts +2 -1
- package/dist/components/ui/select/index.d.ts +1 -1
- package/dist/components/ui/select/index.js +1 -1
- package/dist/components/ui/select/index.js.map +4 -4
- package/dist/components/ui/select/select.css +4 -3
- package/dist/components/ui/select/select.d.ts +7 -5
- package/dist/components/ui/select/select.script.d.ts +32 -12
- package/dist/components/ui/shared/calendar-popover-behavior.d.ts +27 -0
- package/dist/components/ui/shared/listbox-host-controller.d.ts +5 -4
- package/dist/components/ui/shared/multi-value.d.ts +18 -8
- package/dist/components/ui/shared/numeric-range.d.ts +8 -0
- package/dist/components/ui/shared/popover.css +10 -99
- package/dist/components/ui/sidebar/index.d.ts +2 -1
- package/dist/components/ui/sidebar/index.js +1 -1
- package/dist/components/ui/sidebar/index.js.map +4 -4
- package/dist/components/ui/sidebar/sidebar-trigger.d.ts +12 -0
- package/dist/components/ui/sidebar/sidebar-trigger.script.d.ts +42 -29
- package/dist/components/ui/sidebar/sidebar.css +67 -61
- package/dist/components/ui/sidebar/sidebar.d.ts +1 -7
- package/dist/components/ui/sidebar/sidebar.script.d.ts +12 -7
- package/dist/components/ui/slider/index.js +1 -1
- package/dist/components/ui/slider/index.js.map +4 -4
- package/dist/components/ui/slider/slider.css +5 -5
- package/dist/components/ui/slider/slider.d.ts +5 -6
- package/dist/components/ui/slider/slider.script.d.ts +72 -29
- package/dist/components/ui/switch/index.js +1 -1
- package/dist/components/ui/switch/index.js.map +4 -4
- package/dist/components/ui/switch/switch.css +28 -22
- package/dist/components/ui/switch/switch.script.d.ts +10 -3
- package/dist/components/ui/table/index.js +1 -1
- package/dist/components/ui/table/index.js.map +4 -4
- package/dist/components/ui/table/table.d.ts +5 -3
- package/dist/components/ui/table/table.script.d.ts +25 -10
- package/dist/components/ui/tabs/tabs.css +18 -12
- package/dist/components/ui/tabs/tabs.script.d.ts +7 -0
- package/dist/components/ui/tag-group/index.js +1 -1
- package/dist/components/ui/tag-group/index.js.map +4 -4
- package/dist/components/ui/tag-group/tag-group.d.ts +7 -4
- package/dist/components/ui/tag-group/tag-group.script.d.ts +7 -5
- package/dist/components/ui/textarea/index.js +1 -1
- package/dist/components/ui/textarea/index.js.map +4 -4
- package/dist/components/ui/textarea/textarea.css +1 -1
- package/dist/components/ui/toast/index.js +1 -1
- package/dist/components/ui/toast/index.js.map +3 -3
- package/dist/components/ui/toast/toast.css +35 -32
- package/dist/components/ui/toast/toast.script.d.ts +2 -1
- package/dist/components/ui/toast/toaster.script.d.ts +6 -0
- package/dist/components/ui/tooltip/index.js +1 -1
- package/dist/components/ui/tooltip/index.js.map +4 -4
- package/dist/components/ui/tooltip/tooltip.css +14 -94
- package/dist/components/ui/tooltip/tooltip.script.d.ts +9 -1
- package/dist/components/ui/window-splitter/index.d.ts +1 -1
- package/dist/components/ui/window-splitter/index.js +1 -1
- package/dist/components/ui/window-splitter/index.js.map +3 -3
- package/dist/components/ui/window-splitter/window-splitter.d.ts +1 -1
- package/dist/components/ui/window-splitter/window-splitter.script.d.ts +5 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js +1 -1
- package/dist/index.js.map +4 -4
- package/dist/lib/icons/chevron-down.d.ts +0 -1
- package/dist/lib/intl-date/index.d.ts +4 -2
- package/dist/lib/intl-date/segment-editing.d.ts +34 -0
- package/dist/lib/intl-date/segments.d.ts +26 -4
- package/dist/lib/non-empty.d.ts +6 -0
- package/dist/lib/unique-id.d.ts +11 -0
- package/dist/lib/viewport/breakpoints.d.ts +6 -0
- package/dist/lib/viewport/mobile-layout.d.ts +15 -0
- package/dist/styles/primitives.css +10 -7
- package/dist/styles/radiant-ui-core.css +10 -0
- package/dist/styles/radiant-ui.css +40 -3
- package/dist/styles/style-dependencies.json +18 -6
- package/dist/styles/styles.css +456 -246
- package/dist/styles/tailwind.css +40 -93
- package/dist/styles/tokens/presets/colors/aurora.css +2 -0
- package/dist/styles/tokens/presets/colors/basalt.css +2 -0
- package/dist/styles/tokens/presets/colors/ember.css +2 -0
- package/dist/styles/tokens/presets/colors/glacier.css +2 -0
- package/dist/styles/tokens/semantic.css +1 -0
- package/dist/styles/tokens/system.css +11 -3
- package/dist/styles/tokens/typography/default.css +8 -0
- package/package.json +20 -10
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../../../src/components/ui/table/table.tsx", "../../../../src/lib/cx.ts", "../../../../src/components/ui/checkbox/checkbox.script.tsx", "../../../../src/components/ui/checkbox/checkbox.tsx", "../../../../src/components/ui/table/table.script.tsx", "../../../../src/lib/roving-tabindex.ts", "../../../../src/components/ui/shared/multi-value.ts"],
|
|
4
|
-
"sourcesContent": ["import { jsx, jsxs } from \"@ecopages/jsx/jsx-runtime\";\nimport { cx } from \"@/lib/cx\";\nimport { RuiCheckbox } from \"../checkbox\";\nimport \"./table.script\";\nexport function RuiTableHeader({\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"rowgroup\",\n class: cx(\"rui-table__header\", className),\n children: /* @__PURE__ */jsx(\"div\", {\n class: \"rui-table__row\",\n role: \"row\",\n children\n })\n });\n}\nexport function RuiTableBody({\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"rowgroup\",\n class: cx(\"rui-table__body\", className),\n children\n });\n}\nexport function RuiTableFooter({\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"rowgroup\",\n class: cx(\"rui-table__footer\", className),\n children: /* @__PURE__ */jsx(\"div\", {\n class: \"rui-table__row\",\n role: \"row\",\n children\n })\n });\n}\nexport function RuiTableColumn({\n id,\n allowsSorting = false,\n isRowHeader = false,\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"columnheader\",\n \"data-table-column\": id,\n \"data-table-row-header\": isRowHeader ? \"\" : void 0,\n class: cx(\"rui-table__column\", className),\n children: allowsSorting ? /* @__PURE__ */jsxs(\"button\", {\n type: \"button\",\n \"data-table-sort\": id,\n class: \"rui-table__sort\",\n children: [/* @__PURE__ */jsx(\"span\", {\n children\n }), /* @__PURE__ */jsx(\"span\", {\n class: \"rui-table__sort-indicator\",\n \"aria-hidden\": \"true\"\n })]\n }) : children\n });\n}\nexport function RuiTableRow({\n id,\n disabled,\n actionable,\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"row\",\n \"data-table-row\": id,\n \"data-table-actionable\": actionable ? \"\" : void 0,\n \"aria-disabled\": disabled ? \"true\" : void 0,\n class: cx(\"rui-table__row\", className),\n children\n });\n}\nexport function RuiTableCell({\n isRowHeader = false,\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: isRowHeader ? \"rowheader\" : \"gridcell\",\n \"data-table-cell\": true,\n tabindex: -1,\n class: cx(\"rui-table__cell\", className),\n children\n });\n}\nexport function RuiTableSelectionCell({\n scope,\n label,\n class: className,\n ...props\n}) {\n const all = scope === \"all\";\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: all ? \"columnheader\" : \"gridcell\",\n \"data-table-cell\": true,\n \"data-table-selection-cell\": scope,\n class: cx(\"rui-table__selection-cell\", className),\n children: /* @__PURE__ */jsx(RuiCheckbox, {\n \"data-table-select-all\": all ? \"\" : void 0,\n \"data-table-select-row\": all ? void 0 : \"\",\n children: /* @__PURE__ */jsx(\"span\", {\n class: \"sr-only\",\n children: label ?? (all ? \"Select all rows\" : \"Select row\")\n })\n })\n });\n}\nexport function RuiTableEmptyState({\n colSpan,\n children,\n class: className,\n ...props\n}) {\n const resolvedColSpan = Math.max(1, Math.floor(colSpan));\n return /* @__PURE__ */jsxs(\"div\", {\n role: \"row\",\n class: \"rui-table__row rui-table__row--empty\",\n children: [/* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"gridcell\",\n \"aria-colspan\": resolvedColSpan,\n class: cx(\"rui-table__empty-state\", className),\n children: /* @__PURE__ */jsx(\"span\", {\n class: \"rui-table__empty-state-message\",\n children\n })\n }), Array.from({\n length: resolvedColSpan - 1\n }, (_, index) => /* @__PURE__ */jsx(\"div\", {\n \"aria-hidden\": \"true\",\n class: \"rui-table__empty-state-spacer\"\n }, index))]\n });\n}\nexport function RuiTable({\n children,\n label,\n ariaBusy,\n selectionMode,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"rui-table\", {\n ...props,\n label,\n ariaBusy,\n selectionMode,\n children: /* @__PURE__ */jsx(\"div\", {\n class: \"rui-table\",\n role: \"grid\",\n \"aria-label\": label || void 0,\n \"aria-busy\": ariaBusy === \"true\" ? \"true\" : void 0,\n \"aria-multiselectable\": selectionMode === \"multiple\" ? \"true\" : void 0,\n children\n })\n });\n}", "export function cx(...parts) {\n return parts.filter(Boolean).join(\" \");\n}", "let _initProto, _initClass, _init_checked, _init_extra_checked, _init_indeterminate, _init_extra_indeterminate, _init_disabled, _init_extra_disabled, _init_value, _init_extra_value, _init_name, _init_extra_name, _init_inputTarget, _init_extra_inputTarget, _init_changeEvent, _init_extra_changeEvent;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { RadiantElement, bound, customElement, event, onEvent, onUpdated, prop, query } from \"@ecopages/radiant\";\nexport const CHECKBOX_DEFAULT_VALUE = \"on\";\nlet _RuiCheckbox;\nclass RuiCheckbox extends RadiantElement {\n static {\n ({\n e: [_init_checked, _init_extra_checked, _init_indeterminate, _init_extra_indeterminate, _init_disabled, _init_extra_disabled, _init_value, _init_extra_value, _init_name, _init_extra_name, _init_inputTarget, _init_extra_inputTarget, _init_changeEvent, _init_extra_changeEvent, _initProto],\n c: [_RuiCheckbox, _initClass]\n } = _applyDecs(this, [customElement(\"rui-checkbox\")], [[prop({\n type: Boolean,\n reflect: true,\n defaultValue: false\n }), 0, \"checked\"], [prop({\n type: Boolean,\n reflect: true,\n defaultValue: false\n }), 0, \"indeterminate\"], [prop({\n type: Boolean,\n reflect: true,\n defaultValue: false\n }), 0, \"disabled\"], [prop({\n type: String,\n defaultValue: CHECKBOX_DEFAULT_VALUE\n }), 0, \"value\"], [prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"name\"], [query({\n ref: \"input\"\n }), 0, \"inputTarget\"], [event({\n name: \"rui-change\",\n bubbles: true,\n composed: true\n }), 0, \"changeEvent\"], [[bound, onUpdated([\"checked\", \"indeterminate\", \"disabled\", \"value\", \"name\"])], 2, \"syncInputState\"], [onEvent({\n ref: \"input\",\n type: \"change\"\n }), 2, \"onInputChange\"]], 0, void 0, RadiantElement));\n }\n constructor(...args) {\n super(...args);\n _init_extra_changeEvent(this);\n }\n checked = (_initProto(this), _init_checked(this));\n indeterminate = (_init_extra_checked(this), _init_indeterminate(this));\n disabled = (_init_extra_indeterminate(this), _init_disabled(this));\n value = (_init_extra_disabled(this), _init_value(this));\n name = (_init_extra_value(this), _init_name(this));\n inputTarget = (_init_extra_name(this), _init_inputTarget(this));\n changeEvent = (_init_extra_inputTarget(this), _init_changeEvent(this));\n onConnected() {\n this.syncInputState();\n }\n syncInputState() {\n const input = this.inputTarget;\n if (!input) {\n return;\n }\n input.checked = this.checked;\n input.indeterminate = this.indeterminate;\n input.disabled = this.disabled;\n input.value = this.value;\n if (this.name) {\n input.name = this.name;\n } else {\n input.removeAttribute(\"name\");\n }\n if (this.indeterminate) {\n input.setAttribute(\"aria-checked\", \"mixed\");\n } else {\n input.removeAttribute(\"aria-checked\");\n }\n }\n onInputChange(event2) {\n const input = event2.target;\n this.checked = input.checked;\n input.indeterminate = this.indeterminate;\n this.changeEvent.emit({\n checked: this.checked,\n indeterminate: this.indeterminate\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiCheckbox as RuiCheckbox };", "import { jsx, jsxs } from \"@ecopages/jsx/jsx-runtime\";\nimport { CHECKBOX_DEFAULT_VALUE } from \"./checkbox.script\";\nimport \"./checkbox.script\";\nexport function RuiCheckbox({\n children,\n checked,\n disabled,\n indeterminate,\n name,\n value = CHECKBOX_DEFAULT_VALUE,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"rui-checkbox\", {\n ...props,\n checked,\n disabled,\n indeterminate,\n name,\n value,\n \"data-disabled\": disabled ? \"\" : void 0,\n children: /* @__PURE__ */jsxs(\"label\", {\n class: \"rui-checkbox\",\n children: [/* @__PURE__ */jsx(\"input\", {\n type: \"checkbox\",\n \"data-ref\": \"input\",\n \"data-rui-control\": true,\n \"data-rui-control-type\": \"boolean\",\n class: \"rui-checkbox__input\",\n checked,\n disabled,\n value,\n name: name || void 0,\n \"aria-checked\": indeterminate ? \"mixed\" : void 0\n }), /* @__PURE__ */jsx(\"span\", {\n class: \"rui-checkbox__control\",\n \"aria-hidden\": \"true\"\n }), /* @__PURE__ */jsx(\"span\", {\n class: \"rui-checkbox__label\",\n children\n })]\n })\n });\n}", "let _initProto, _initClass, _init_label, _init_extra_label, _init_ariaBusy, _init_extra_ariaBusy, _init_selectionMode, _init_extra_selectionMode, _init_value, _init_extra_value, _init_sortColumn, _init_extra_sortColumn, _init_sortDirection, _init_extra_sortDirection, _init_changeEvent, _init_extra_changeEvent, _init_sortChangeEvent, _init_extra_sortChangeEvent, _init_rowActionEvent, _init_extra_rowActionEvent;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { RadiantElement, customElement, event, onEvent, onUpdated, prop } from \"@ecopages/radiant\";\nimport { applyRovingTabindex } from \"@/lib/roving-tabindex\";\nimport { parseMultiValue, serializeMultiValue } from \"../shared/multi-value\";\nlet _RuiTable;\nclass RuiTable extends RadiantElement {\n static {\n ({\n e: [_init_label, _init_extra_label, _init_ariaBusy, _init_extra_ariaBusy, _init_selectionMode, _init_extra_selectionMode, _init_value, _init_extra_value, _init_sortColumn, _init_extra_sortColumn, _init_sortDirection, _init_extra_sortDirection, _init_changeEvent, _init_extra_changeEvent, _init_sortChangeEvent, _init_extra_sortChangeEvent, _init_rowActionEvent, _init_extra_rowActionEvent, _initProto],\n c: [_RuiTable, _initClass]\n } = _applyDecs(this, [customElement(\"rui-table\")], [[prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"label\"], [prop({\n type: String,\n attribute: \"aria-busy\",\n defaultValue: \"false\"\n }), 0, \"ariaBusy\"], [prop({\n type: String,\n attribute: \"selection-mode\",\n defaultValue: \"none\"\n }), 0, \"selectionMode\"], [prop({\n type: String,\n reflect: true,\n defaultValue: \"\"\n }), 0, \"value\"], [prop({\n type: String,\n attribute: \"sort-column\",\n reflect: true,\n defaultValue: \"\"\n }), 0, \"sortColumn\"], [prop({\n type: String,\n attribute: \"sort-direction\",\n reflect: true,\n defaultValue: \"ascending\"\n }), 0, \"sortDirection\"], [event({\n name: \"rui-change\",\n bubbles: true,\n composed: true\n }), 0, \"changeEvent\"], [event({\n name: \"rui-sort-change\",\n bubbles: true,\n composed: true\n }), 0, \"sortChangeEvent\"], [event({\n name: \"rui-row-action\",\n bubbles: true,\n composed: true\n }), 0, \"rowActionEvent\"], [onUpdated([\"value\", \"selectionMode\"]), 2, \"onSelectionUpdated\"], [onUpdated([\"sortColumn\", \"sortDirection\"]), 2, \"onSortUpdated\"], [onEvent({\n selector: \"[data-table-cell]\",\n type: \"click\"\n }), 2, \"onCellClick\"], [onEvent({\n selector: \"[data-table-cell]\",\n type: \"dblclick\"\n }), 2, \"onCellDoubleClick\"], [onEvent({\n selector: \"[data-table-cell]\",\n type: \"keydown\"\n }), 2, \"onCellKeydown\"], [onEvent({\n selector: \"rui-checkbox[data-table-select-row]\",\n type: \"rui-change\"\n }), 2, \"onRowSelectionChange\"], [onEvent({\n selector: \"rui-checkbox[data-table-select-all]\",\n type: \"rui-change\"\n }), 2, \"onSelectAllChange\"], [onEvent({\n selector: \"[data-table-sort]\",\n type: \"click\"\n }), 2, \"onSortClick\"]], 0, void 0, RadiantElement));\n }\n label = (_initProto(this), _init_label(this));\n ariaBusy = (_init_extra_label(this), _init_ariaBusy(this));\n selectionMode = (_init_extra_ariaBusy(this), _init_selectionMode(this));\n value = (_init_extra_selectionMode(this), _init_value(this));\n sortColumn = (_init_extra_value(this), _init_sortColumn(this));\n sortDirection = (_init_extra_sortColumn(this), _init_sortDirection(this));\n changeEvent = (_init_extra_sortDirection(this), _init_changeEvent(this));\n sortChangeEvent = (_init_extra_changeEvent(this), _init_sortChangeEvent(this));\n rowActionEvent = (_init_extra_sortChangeEvent(this), _init_rowActionEvent(this));\n structureObserver = void _init_extra_rowActionEvent(this);\n rovingSyncPending = false;\n connectedCallback() {\n super.connectedCallback();\n this.observeStructure();\n }\n onConnected() {\n this.syncSelectionState();\n this.syncSorting();\n this.syncRovingTabindex();\n }\n disconnectedCallback() {\n this.structureObserver?.disconnect();\n this.structureObserver = void 0;\n super.disconnectedCallback();\n }\n onSelectionUpdated() {\n this.syncSelectionState();\n }\n onSortUpdated() {\n this.syncSorting();\n }\n observeStructure() {\n if (typeof MutationObserver === \"undefined\") {\n return;\n }\n this.structureObserver?.disconnect();\n this.structureObserver = new MutationObserver(() => this.queueRovingSync());\n this.structureObserver.observe(this, {\n childList: true,\n subtree: true\n });\n }\n queueRovingSync() {\n if (this.rovingSyncPending) {\n return;\n }\n this.rovingSyncPending = true;\n queueMicrotask(() => {\n this.rovingSyncPending = false;\n if (!this.isConnected) {\n return;\n }\n this.syncRovingTabindex();\n });\n }\n getRows() {\n return Array.from(this.querySelectorAll(\"[data-table-row]\"));\n }\n getSelectableRows() {\n return this.getRows().filter(row => !row.hidden && row.getAttribute(\"aria-disabled\") !== \"true\");\n }\n getRowCells(row) {\n return Array.from(row.children).filter(child => child instanceof HTMLElement && child.hasAttribute(\"data-table-cell\"));\n }\n getFocusableCells() {\n return this.getSelectableRows().flatMap(row => this.getRowCells(row));\n }\n selectedIds() {\n return this.selectionMode === \"multiple\" ? parseMultiValue(this.value) : this.value ? [this.value] : [];\n }\n setSelectedIds(ids) {\n this.value = this.selectionMode === \"multiple\" ? serializeMultiValue(ids) : ids[0] ?? \"\";\n this.syncSelectionState();\n this.changeEvent.emit({\n value: this.value\n });\n }\n getActiveCellPosition() {\n const cells = this.getFocusableCells();\n const activeIndex = cells.findIndex(cell => cell.tabIndex === 0);\n const activeCell = activeIndex >= 0 ? cells[activeIndex] : this.querySelector(\"[data-table-cell]:focus\") ?? null;\n if (!activeCell) {\n return null;\n }\n const row = activeCell.closest(\"[data-table-row]\");\n if (!row) {\n return null;\n }\n const columnIndex = this.getRowCells(row).indexOf(activeCell);\n if (columnIndex < 0) {\n return null;\n }\n return {\n rowId: row.getAttribute(\"data-table-row\") ?? \"\",\n columnIndex\n };\n }\n syncSelectionState() {\n const selected = new Set(this.selectedIds());\n const selectableRows = this.getSelectableRows();\n const canSelect = this.selectionMode !== \"none\";\n for (const row of this.getRows()) {\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (canSelect) {\n row.setAttribute(\"aria-selected\", String(selected.has(rowId)));\n } else {\n row.removeAttribute(\"aria-selected\");\n }\n const rowCheckbox = row.querySelector(\"rui-checkbox[data-table-select-row]\");\n if (rowCheckbox) {\n rowCheckbox.checked = canSelect && selected.has(rowId);\n rowCheckbox.disabled = !canSelect || row.getAttribute(\"aria-disabled\") === \"true\";\n }\n }\n for (const selectAll of this.querySelectorAll(\"rui-checkbox[data-table-select-all]\")) {\n const selectedCount = selectableRows.filter(row => selected.has(row.getAttribute(\"data-table-row\") ?? \"\")).length;\n const canSelectAll = this.selectionMode === \"multiple\";\n selectAll.checked = canSelectAll && selectableRows.length > 0 && selectedCount === selectableRows.length;\n selectAll.indeterminate = canSelectAll && selectedCount > 0 && selectedCount < selectableRows.length;\n selectAll.disabled = !canSelectAll || selectableRows.length === 0;\n }\n }\n syncRovingTabindex() {\n const cells = this.getFocusableCells();\n if (cells.length === 0) {\n return;\n }\n const position = this.getActiveCellPosition();\n let activeIndex = cells.findIndex(cell => cell.tabIndex === 0);\n if (position) {\n const row = this.getRows().find(candidate => candidate.getAttribute(\"data-table-row\") === position.rowId);\n if (row) {\n const target = this.getRowCells(row)[position.columnIndex];\n const index = target ? cells.indexOf(target) : -1;\n if (index >= 0) {\n activeIndex = index;\n }\n }\n }\n applyRovingTabindex(cells, activeIndex >= 0 ? activeIndex : 0);\n }\n syncSorting() {\n for (const column of this.querySelectorAll(\"[data-table-column]\")) {\n const id = column.getAttribute(\"data-table-column\");\n if (id && id === this.sortColumn) {\n column.setAttribute(\"aria-sort\", this.sortDirection);\n } else {\n column.removeAttribute(\"aria-sort\");\n }\n }\n }\n isInteractiveTarget(target) {\n return Boolean(target.closest('button, input, select, textarea, a[href], [contenteditable=\"true\"]'));\n }\n selectRow(row, toggle = false) {\n if (this.selectionMode === \"none\" || row.getAttribute(\"aria-disabled\") === \"true\") {\n return;\n }\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (!rowId) {\n return;\n }\n if (this.selectionMode === \"single\") {\n this.setSelectedIds([rowId]);\n return;\n }\n const selected = new Set(this.selectedIds());\n if (toggle && selected.has(rowId)) {\n selected.delete(rowId);\n } else {\n selected.add(rowId);\n }\n this.setSelectedIds([...selected]);\n }\n focusCell(row, columnIndex) {\n const cells = this.getFocusableCells();\n const rowCells = this.getRowCells(row);\n const target = rowCells[Math.min(Math.max(columnIndex, 0), rowCells.length - 1)];\n const index = cells.indexOf(target);\n if (index < 0) {\n return;\n }\n applyRovingTabindex(cells, index);\n target.focus();\n target.scrollIntoView({\n block: \"nearest\",\n inline: \"nearest\"\n });\n }\n activateRow(row) {\n if (!row.hasAttribute(\"data-table-actionable\") || row.getAttribute(\"aria-disabled\") === \"true\") {\n return;\n }\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (rowId) {\n this.rowActionEvent.emit({\n rowId\n });\n }\n }\n onCellClick(event2) {\n const target = event2.target;\n if (this.isInteractiveTarget(target)) {\n return;\n }\n const cell = target.closest(\"[data-table-cell]\");\n const row = cell?.closest(\"[data-table-row]\");\n if (!cell || !row || !this.contains(row)) {\n return;\n }\n this.selectRow(row, this.selectionMode === \"multiple\");\n this.focusCell(row, this.getRowCells(row).indexOf(cell));\n }\n onCellDoubleClick(event2) {\n const target = event2.target;\n if (this.isInteractiveTarget(target)) {\n return;\n }\n const row = target.closest(\"[data-table-row]\");\n if (row && this.contains(row)) {\n this.activateRow(row);\n }\n }\n onCellKeydown(event2) {\n const target = event2.target;\n if (this.isInteractiveTarget(target)) {\n return;\n }\n const cell = target.closest(\"[data-table-cell]\");\n const row = cell?.closest(\"[data-table-row]\");\n if (!cell || !row) {\n return;\n }\n const rows = this.getSelectableRows();\n const rowIndex = rows.indexOf(row);\n const rowCells = this.getRowCells(row);\n const columnIndex = rowCells.indexOf(cell);\n switch (event2.key) {\n case \"ArrowRight\":\n event2.preventDefault();\n this.focusCell(row, columnIndex + 1);\n return;\n case \"ArrowLeft\":\n event2.preventDefault();\n this.focusCell(row, columnIndex - 1);\n return;\n case \"ArrowDown\":\n event2.preventDefault();\n this.focusCell(rows[Math.min(rowIndex + 1, rows.length - 1)] ?? row, columnIndex);\n return;\n case \"ArrowUp\":\n event2.preventDefault();\n this.focusCell(rows[Math.max(rowIndex - 1, 0)] ?? row, columnIndex);\n return;\n case \"Home\":\n event2.preventDefault();\n this.focusCell(row, 0);\n return;\n case \"End\":\n event2.preventDefault();\n this.focusCell(row, rowCells.length - 1);\n return;\n case \" \":\n event2.preventDefault();\n this.selectRow(row, true);\n return;\n case \"Enter\":\n event2.preventDefault();\n this.activateRow(row);\n return;\n default:\n return;\n }\n }\n onRowSelectionChange(event2) {\n const checkbox = event2.target;\n const row = checkbox.closest(\"[data-table-row]\");\n if (!row || !this.contains(row)) {\n return;\n }\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (!event2.detail.checked) {\n const selected = new Set(this.selectedIds());\n selected.delete(rowId);\n this.setSelectedIds([...selected]);\n return;\n }\n this.selectRow(row);\n }\n onSelectAllChange(event2) {\n if (this.selectionMode !== \"multiple\") {\n return;\n }\n this.setSelectedIds(event2.detail.checked ? this.getSelectableRows().map(row => row.getAttribute(\"data-table-row\") ?? \"\") : []);\n }\n onSortClick(event2) {\n const button = event2.target.closest(\"[data-table-sort]\");\n const column = button?.getAttribute(\"data-table-sort\");\n if (!column) {\n return;\n }\n this.sortDirection = column === this.sortColumn && this.sortDirection === \"ascending\" ? \"descending\" : \"ascending\";\n this.sortColumn = column;\n this.syncSorting();\n this.sortChangeEvent.emit({\n column,\n direction: this.sortDirection\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiTable as RuiTable };", "export function applyRovingTabindex(items, activeIndex) {\n items.forEach((item, index) => {\n const next = index === activeIndex ? 0 : -1;\n if (item.tabIndex !== next) {\n item.tabIndex = next;\n }\n });\n}\nexport function focusRovingItem(items, index) {\n if (!items.length) return null;\n const next = Math.max(0, Math.min(items.length - 1, index));\n applyRovingTabindex(items, next);\n items[next]?.focus();\n return items[next] ?? null;\n}\nfunction deltaForKey(key, orientation) {\n if (key === \"Home\") return \"first\";\n if (key === \"End\") return \"last\";\n if (orientation === \"horizontal\") {\n if (key === \"ArrowRight\") return \"next\";\n if (key === \"ArrowLeft\") return \"prev\";\n return null;\n }\n if (key === \"ArrowDown\") return \"next\";\n if (key === \"ArrowUp\") return \"prev\";\n return null;\n}\nexport function navigateRovingTabindex(options) {\n const {\n items,\n current,\n key,\n orientation = \"horizontal\",\n wrap = true\n } = options;\n if (!items.length || !current) return {\n handled: false\n };\n const index = items.indexOf(current);\n if (index < 0) return {\n handled: false\n };\n const delta = deltaForKey(key, orientation);\n if (!delta) return {\n handled: false\n };\n let next = index;\n if (delta === \"first\") next = 0;else if (delta === \"last\") next = items.length - 1;else if (delta === \"next\") next = wrap ? (index + 1) % items.length : Math.min(items.length - 1, index + 1);else next = wrap ? (index - 1 + items.length) % items.length : Math.max(0, index - 1);\n const item = focusRovingItem(items, next);\n if (!item) return {\n handled: false\n };\n return {\n handled: true,\n index: next,\n item\n };\n}", "export function parseMultiValue(value) {\n if (!value) {\n return [];\n }\n return uniqueTrimmed(value.split(\",\"));\n}\nexport function serializeMultiValue(values) {\n return values.join(\",\");\n}\nexport function serializeViewValue(value) {\n if (value == null) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n return serializeMultiValue(uniqueTrimmed(value));\n }\n return value;\n}\nexport function parseViewValue(value) {\n if (value == null) {\n return [];\n }\n if (typeof value !== \"string\") {\n return uniqueTrimmed(value);\n }\n return parseMultiValue(value);\n}\nfunction uniqueTrimmed(values) {\n return [...new Set(values.map(item => item.trim()).filter(Boolean))];\n}"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": ["jsx", "jsxs", "cx", "parts", "RadiantElement", "
|
|
3
|
+
"sources": ["../../../../src/components/ui/table/table.tsx", "../../../../src/lib/cx.ts", "../../../../src/components/ui/checkbox/checkbox.script.tsx", "../../../../src/lib/non-empty.ts", "../../../../src/components/ui/checkbox/checkbox.tsx", "../../../../src/components/ui/table/table.script.tsx", "../../../../src/lib/roving-tabindex.ts", "../../../../src/components/ui/shared/multi-value.ts"],
|
|
4
|
+
"sourcesContent": ["import { jsx, jsxs } from \"@ecopages/jsx/jsx-runtime\";\nimport { cx } from \"@/lib/cx\";\nimport { RuiCheckbox } from \"../checkbox\";\nimport \"./table.script\";\nexport function RuiTableHeader({\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"rowgroup\",\n class: cx(\"rui-table__header\", className),\n children: /* @__PURE__ */jsx(\"div\", {\n class: \"rui-table__row\",\n role: \"row\",\n children\n })\n });\n}\nexport function RuiTableBody({\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"rowgroup\",\n class: cx(\"rui-table__body\", className),\n children\n });\n}\nexport function RuiTableFooter({\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"rowgroup\",\n class: cx(\"rui-table__footer\", className),\n children: /* @__PURE__ */jsx(\"div\", {\n class: \"rui-table__row\",\n role: \"row\",\n children\n })\n });\n}\nexport function RuiTableColumn({\n id,\n allowsSorting = false,\n isRowHeader = false,\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"columnheader\",\n \"data-table-column\": id,\n \"data-table-row-header\": isRowHeader ? \"\" : void 0,\n class: cx(\"rui-table__column\", className),\n children: allowsSorting ? /* @__PURE__ */jsxs(\"button\", {\n type: \"button\",\n \"data-table-sort\": id,\n class: \"rui-table__sort\",\n children: [/* @__PURE__ */jsx(\"span\", {\n children\n }), /* @__PURE__ */jsx(\"span\", {\n class: \"rui-table__sort-indicator\",\n \"aria-hidden\": \"true\"\n })]\n }) : children\n });\n}\nexport function RuiTableRow({\n id,\n disabled,\n actionable,\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"row\",\n \"data-table-row\": id,\n \"data-table-actionable\": actionable ? \"\" : void 0,\n \"aria-disabled\": disabled ? \"true\" : void 0,\n class: cx(\"rui-table__row\", className),\n children\n });\n}\nexport function RuiTableCell({\n isRowHeader = false,\n children,\n class: className,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: isRowHeader ? \"rowheader\" : \"gridcell\",\n \"data-table-cell\": true,\n tabindex: -1,\n class: cx(\"rui-table__cell\", className),\n children\n });\n}\nexport function RuiTableSelectionCell({\n scope,\n label,\n class: className,\n ...props\n}) {\n const all = scope === \"all\";\n return /* @__PURE__ */jsx(\"div\", {\n ...props,\n role: all ? \"columnheader\" : \"gridcell\",\n \"data-table-cell\": true,\n \"data-table-selection-cell\": scope,\n class: cx(\"rui-table__selection-cell\", className),\n children: /* @__PURE__ */jsx(RuiCheckbox, {\n \"data-table-select-all\": all ? \"\" : void 0,\n \"data-table-select-row\": all ? void 0 : \"\",\n children: /* @__PURE__ */jsx(\"span\", {\n class: \"sr-only\",\n children: label ?? (all ? \"Select all rows\" : \"Select row\")\n })\n })\n });\n}\nexport function RuiTableEmptyState({\n colSpan,\n children,\n class: className,\n ...props\n}) {\n const resolvedColSpan = Math.max(1, Math.floor(colSpan));\n return /* @__PURE__ */jsxs(\"div\", {\n role: \"row\",\n class: \"rui-table__row rui-table__row--empty\",\n children: [/* @__PURE__ */jsx(\"div\", {\n ...props,\n role: \"gridcell\",\n \"aria-colspan\": resolvedColSpan,\n class: cx(\"rui-table__empty-state\", className),\n children: /* @__PURE__ */jsx(\"span\", {\n class: \"rui-table__empty-state-message\",\n children\n })\n }), Array.from({\n length: resolvedColSpan - 1\n }, (_, index) => /* @__PURE__ */jsx(\"div\", {\n \"aria-hidden\": \"true\",\n class: \"rui-table__empty-state-spacer\"\n }, index))]\n });\n}\nexport function RuiTable({\n children,\n label,\n ariaBusy,\n selectionMode,\n value,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"rui-table\", {\n ...props,\n value,\n label,\n ariaBusy,\n selectionMode,\n children: /* @__PURE__ */jsx(\"div\", {\n class: \"rui-table\",\n role: \"grid\",\n \"aria-label\": label || void 0,\n \"aria-busy\": ariaBusy === \"true\" ? \"true\" : void 0,\n \"aria-multiselectable\": selectionMode === \"multiple\" ? \"true\" : void 0,\n children\n })\n });\n}", "export function cx(...parts) {\n return parts.filter(Boolean).join(\" \");\n}", "let _initProto, _initClass, _init_checked, _init_extra_checked, _init_indeterminate, _init_extra_indeterminate, _init_disabled, _init_extra_disabled, _init_value, _init_extra_value, _init_name, _init_extra_name, _init_changeEvent, _init_extra_changeEvent;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { RadiantElement, bindTo, customElement, event, onEvent, prop } from \"@ecopages/radiant\";\nimport { nonEmpty } from \"@/lib/non-empty\";\nexport const CHECKBOX_DEFAULT_VALUE = \"on\";\nlet _RuiCheckbox;\nclass RuiCheckbox extends RadiantElement {\n static {\n ({\n e: [_init_checked, _init_extra_checked, _init_indeterminate, _init_extra_indeterminate, _init_disabled, _init_extra_disabled, _init_value, _init_extra_value, _init_name, _init_extra_name, _init_changeEvent, _init_extra_changeEvent, _initProto],\n c: [_RuiCheckbox, _initClass]\n } = _applyDecs(this, [customElement(\"rui-checkbox\")], [[[prop({\n type: Boolean,\n reflect: true,\n defaultValue: false\n }), bindTo({\n ref: \"input\",\n prop: \"checked\"\n })], 0, \"checked\"], [[prop({\n type: Boolean,\n reflect: true,\n defaultValue: false\n }), bindTo([{\n ref: \"input\",\n prop: \"indeterminate\"\n }, {\n ref: \"input\",\n attr: \"aria-checked\",\n map: value => value ? \"mixed\" : void 0\n }])], 0, \"indeterminate\"], [[prop({\n type: Boolean,\n reflect: true,\n defaultValue: false\n }), bindTo({\n ref: \"input\",\n prop: \"disabled\"\n })], 0, \"disabled\"], [[prop({\n type: String,\n defaultValue: CHECKBOX_DEFAULT_VALUE\n }), bindTo({\n ref: \"input\",\n prop: \"value\"\n })], 0, \"value\"], [[prop({\n type: String,\n defaultValue: \"\"\n }), bindTo({\n ref: \"input\",\n attr: \"name\",\n map: nonEmpty\n })], 0, \"name\"], [event({\n name: \"rui-change\",\n bubbles: true,\n composed: true\n }), 0, \"changeEvent\"], [onEvent({\n ref: \"input\",\n type: \"change\"\n }), 2, \"onInputChange\"]], 0, void 0, RadiantElement));\n }\n constructor(...args) {\n super(...args);\n _init_extra_changeEvent(this);\n }\n checked = (_initProto(this), _init_checked(this));\n indeterminate = (_init_extra_checked(this), _init_indeterminate(this));\n disabled = (_init_extra_indeterminate(this), _init_disabled(this));\n value = (_init_extra_disabled(this), _init_value(this));\n name = (_init_extra_value(this), _init_name(this));\n changeEvent = (_init_extra_name(this), _init_changeEvent(this));\n onInputChange(event2) {\n const input = event2.target;\n this.checked = input.checked;\n input.indeterminate = this.indeterminate;\n this.changeEvent.emit({\n checked: this.checked,\n indeterminate: this.indeterminate\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiCheckbox as RuiCheckbox };", "export function nonEmpty(value) {\n return value || void 0;\n}", "import { jsx, jsxs } from \"@ecopages/jsx/jsx-runtime\";\nimport { CHECKBOX_DEFAULT_VALUE } from \"./checkbox.script\";\nimport \"./checkbox.script\";\nexport function RuiCheckbox({\n children,\n checked,\n disabled,\n indeterminate,\n name,\n value = CHECKBOX_DEFAULT_VALUE,\n ...props\n}) {\n return /* @__PURE__ */jsx(\"rui-checkbox\", {\n ...props,\n checked,\n disabled,\n indeterminate,\n name,\n value,\n \"data-disabled\": disabled ? \"\" : void 0,\n children: /* @__PURE__ */jsxs(\"label\", {\n class: \"rui-checkbox\",\n children: [/* @__PURE__ */jsx(\"input\", {\n type: \"checkbox\",\n \"data-ref\": \"input\",\n \"data-rui-control\": true,\n \"data-rui-control-type\": \"boolean\",\n class: \"rui-checkbox__input\",\n checked,\n disabled,\n value,\n name: name || void 0,\n \"aria-checked\": indeterminate ? \"mixed\" : void 0\n }), /* @__PURE__ */jsx(\"span\", {\n class: \"rui-checkbox__control\",\n \"aria-hidden\": \"true\"\n }), /* @__PURE__ */jsx(\"span\", {\n class: \"rui-checkbox__label\",\n children\n })]\n })\n });\n}", "let _initProto, _initClass, _init_label, _init_extra_label, _init_ariaBusy, _init_extra_ariaBusy, _init_selectionMode, _init_extra_selectionMode, _init_value, _init_extra_value, _init_sortColumn, _init_extra_sortColumn, _init_sortDirection, _init_extra_sortDirection, _init_changeEvent, _init_extra_changeEvent, _init_sortChangeEvent, _init_extra_sortChangeEvent, _init_rowActionEvent, _init_extra_rowActionEvent;\nfunction _applyDecs(e, t, n, r, o, i) { var a, c, u, s, f, l, p, d = Symbol.metadata || Symbol.for(\"Symbol.metadata\"), m = Object.defineProperty, h = Object.create, y = [h(null), h(null)], v = t.length; function g(t, n, r) { return function (o, i) { n && (i = o, o = e); for (var a = 0; a < t.length; a++) i = t[a].apply(o, r ? [i] : []); return r ? i : o; }; } function b(e, t, n, r) { if (\"function\" != typeof e && (r || void 0 !== e)) throw new TypeError(t + \" must \" + (n || \"be\") + \" a function\" + (r ? \"\" : \" or undefined\")); return e; } function applyDec(e, t, n, r, o, i, u, s, f, l, p) { function d(e) { if (!p(e)) throw new TypeError(\"Attempted to access private element on non-instance\"); } var h = [].concat(t[0]), v = t[3], w = !u, D = 1 === o, S = 3 === o, j = 4 === o, E = 2 === o; function I(t, n, r) { return function (o, i) { return n && (i = o, o = e), r && r(o), P[t].call(o, i); }; } if (!w) { var P = {}, k = [], F = S ? \"get\" : j || D ? \"set\" : \"value\"; if (f ? (l || D ? P = { get: _setFunctionName(function () { return v(this); }, r, \"get\"), set: function (e) { t[4](this, e); } } : P[F] = v, l || _setFunctionName(P[F], r, E ? \"\" : F)) : l || (P = Object.getOwnPropertyDescriptor(e, r)), !l && !f) { if ((c = y[+s][r]) && 7 !== (c ^ o)) throw Error(\"Decorating two elements with the same name (\" + P[F].name + \") is not supported yet\"); y[+s][r] = o < 3 ? 1 : o; } } for (var N = e, O = h.length - 1; O >= 0; O -= n ? 2 : 1) { var T = b(h[O], \"A decorator\", \"be\", !0), z = n ? h[O - 1] : void 0, A = {}, H = { kind: [\"field\", \"accessor\", \"method\", \"getter\", \"setter\", \"class\"][o], name: r, metadata: a, addInitializer: function (e, t) { if (e.v) throw new TypeError(\"attempted to call addInitializer after decoration was finished\"); b(t, \"An initializer\", \"be\", !0), i.push(t); }.bind(null, A) }; if (w) c = T.call(z, N, H), A.v = 1, b(c, \"class decorators\", \"return\") && (N = c);else if (H.static = s, H.private = f, c = H.access = { has: f ? p.bind() : function (e) { return r in e; } }, j || (c.get = f ? E ? function (e) { return d(e), P.value; } : I(\"get\", 0, d) : function (e) { return e[r]; }), E || S || (c.set = f ? I(\"set\", 0, d) : function (e, t) { e[r] = t; }), N = T.call(z, D ? { get: P.get, set: P.set } : P[F], H), A.v = 1, D) { if (\"object\" == typeof N && N) (c = b(N.get, \"accessor.get\")) && (P.get = c), (c = b(N.set, \"accessor.set\")) && (P.set = c), (c = b(N.init, \"accessor.init\")) && k.unshift(c);else if (void 0 !== N) throw new TypeError(\"accessor decorators must return an object with get, set, or init properties or undefined\"); } else b(N, (l ? \"field\" : \"method\") + \" decorators\", \"return\") && (l ? k.unshift(N) : P[F] = N); } return o < 2 && u.push(g(k, s, 1), g(i, s, 0)), l || w || (f ? D ? u.splice(-1, 0, I(\"get\", s), I(\"set\", s)) : u.push(E ? P[F] : b.call.bind(P[F])) : m(e, r, P)), N; } function w(e) { return m(e, d, { configurable: !0, enumerable: !0, value: a }); } return void 0 !== i && (a = i[d]), a = h(null == a ? null : a), f = [], l = function (e) { e && f.push(g(e)); }, p = function (t, r) { for (var i = 0; i < n.length; i++) { var a = n[i], c = a[1], l = 7 & c; if ((8 & c) == t && !l == r) { var p = a[2], d = !!a[3], m = 16 & c; applyDec(t ? e : e.prototype, a, m, d ? \"#\" + p : _toPropertyKey(p), l, l < 2 ? [] : t ? s = s || [] : u = u || [], f, !!t, d, r, t && d ? function (t) { return _checkInRHS(t) === e; } : o); } } }, p(8, 0), p(0, 0), p(8, 1), p(0, 1), l(u), l(s), c = f, v || w(e), { e: c, get c() { var n = []; return v && [w(e = applyDec(e, [t], r, e.name, 5, n)), g(n, 1)]; } }; }\nfunction _toPropertyKey(t) { var i = _toPrimitive(t, \"string\"); return \"symbol\" == typeof i ? i : i + \"\"; }\nfunction _toPrimitive(t, r) { if (\"object\" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || \"default\"); if (\"object\" != typeof i) return i; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (\"string\" === r ? String : Number)(t); }\nfunction _setFunctionName(e, t, n) { \"symbol\" == typeof t && (t = (t = t.description) ? \"[\" + t + \"]\" : \"\"); try { Object.defineProperty(e, \"name\", { configurable: !0, value: n ? n + \" \" + t : t }); } catch (e) {} return e; }\nfunction _checkInRHS(e) { if (Object(e) !== e) throw TypeError(\"right-hand side of 'in' should be an object, got \" + (null !== e ? typeof e : \"null\")); return e; }\nimport { RadiantElement, customElement, event, onEvent, onUpdated, prop } from \"@ecopages/radiant\";\nimport { applyRovingTabindex } from \"@/lib/roving-tabindex\";\nimport { multiValuePropOptions } from \"../shared/multi-value\";\nlet _RuiTable;\nclass RuiTable extends RadiantElement {\n static {\n ({\n e: [_init_label, _init_extra_label, _init_ariaBusy, _init_extra_ariaBusy, _init_selectionMode, _init_extra_selectionMode, _init_value, _init_extra_value, _init_sortColumn, _init_extra_sortColumn, _init_sortDirection, _init_extra_sortDirection, _init_changeEvent, _init_extra_changeEvent, _init_sortChangeEvent, _init_extra_sortChangeEvent, _init_rowActionEvent, _init_extra_rowActionEvent, _initProto],\n c: [_RuiTable, _initClass]\n } = _applyDecs(this, [customElement(\"rui-table\")], [[prop({\n type: String,\n defaultValue: \"\"\n }), 0, \"label\"], [prop({\n type: String,\n attribute: \"aria-busy\",\n defaultValue: \"false\"\n }), 0, \"ariaBusy\"], [prop({\n type: String,\n attribute: \"selection-mode\",\n defaultValue: \"none\"\n }), 0, \"selectionMode\"], [prop({\n ...multiValuePropOptions,\n defaultValue: []\n }), 0, \"value\"], [prop({\n type: String,\n attribute: \"sort-column\",\n reflect: true,\n defaultValue: \"\"\n }), 0, \"sortColumn\"], [prop({\n type: String,\n attribute: \"sort-direction\",\n reflect: true,\n defaultValue: \"ascending\"\n }), 0, \"sortDirection\"], [event({\n name: \"rui-change\",\n bubbles: true,\n composed: true\n }), 0, \"changeEvent\"], [event({\n name: \"rui-sort-change\",\n bubbles: true,\n composed: true\n }), 0, \"sortChangeEvent\"], [event({\n name: \"rui-row-action\",\n bubbles: true,\n composed: true\n }), 0, \"rowActionEvent\"], [onUpdated([\"value\", \"selectionMode\"]), 2, \"onSelectionUpdated\"], [onUpdated([\"sortColumn\", \"sortDirection\"]), 2, \"onSortUpdated\"], [onEvent({\n selector: \"[data-table-cell]\",\n type: \"click\"\n }), 2, \"onCellClick\"], [onEvent({\n selector: \"[data-table-cell]\",\n type: \"dblclick\"\n }), 2, \"onCellDoubleClick\"], [onEvent({\n selector: \"[data-table-cell]\",\n type: \"keydown\"\n }), 2, \"onCellKeydown\"], [onEvent({\n selector: \"rui-checkbox[data-table-select-row]\",\n type: \"rui-change\"\n }), 2, \"onRowSelectionChange\"], [onEvent({\n selector: \"rui-checkbox[data-table-select-all]\",\n type: \"rui-change\"\n }), 2, \"onSelectAllChange\"], [onEvent({\n selector: \"[data-table-sort]\",\n type: \"click\"\n }), 2, \"onSortClick\"]], 0, void 0, RadiantElement));\n }\n label = (_initProto(this), _init_label(this));\n ariaBusy = (_init_extra_label(this), _init_ariaBusy(this));\n selectionMode = (_init_extra_ariaBusy(this), _init_selectionMode(this));\n value = (_init_extra_selectionMode(this), _init_value(this));\n sortColumn = (_init_extra_value(this), _init_sortColumn(this));\n sortDirection = (_init_extra_sortColumn(this), _init_sortDirection(this));\n changeEvent = (_init_extra_sortDirection(this), _init_changeEvent(this));\n sortChangeEvent = (_init_extra_changeEvent(this), _init_sortChangeEvent(this));\n rowActionEvent = (_init_extra_sortChangeEvent(this), _init_rowActionEvent(this));\n structureObserver = void _init_extra_rowActionEvent(this);\n rovingSyncPending = false;\n connectedCallback() {\n super.connectedCallback();\n this.observeStructure();\n }\n onConnected() {\n this.syncSelectionState();\n this.syncSorting();\n this.syncRovingTabindex();\n }\n disconnectedCallback() {\n this.structureObserver?.disconnect();\n this.structureObserver = void 0;\n super.disconnectedCallback();\n }\n onSelectionUpdated() {\n this.syncSelectionState();\n }\n onSortUpdated() {\n this.syncSorting();\n }\n observeStructure() {\n if (typeof MutationObserver === \"undefined\") {\n return;\n }\n this.structureObserver?.disconnect();\n this.structureObserver = new MutationObserver(() => this.queueRovingSync());\n this.structureObserver.observe(this, {\n childList: true,\n subtree: true\n });\n }\n queueRovingSync() {\n if (this.rovingSyncPending) {\n return;\n }\n this.rovingSyncPending = true;\n queueMicrotask(() => {\n this.rovingSyncPending = false;\n if (!this.isConnected) {\n return;\n }\n this.syncRovingTabindex();\n });\n }\n getRows() {\n return Array.from(this.querySelectorAll(\"[data-table-row]\"));\n }\n getSelectableRows() {\n return this.getRows().filter(row => !row.hidden && row.getAttribute(\"aria-disabled\") !== \"true\");\n }\n getRowCells(row) {\n return Array.from(row.children).filter(child => child instanceof HTMLElement && child.hasAttribute(\"data-table-cell\"));\n }\n getFocusableCells() {\n return this.getSelectableRows().flatMap(row => this.getRowCells(row));\n }\n selectedIds() {\n if (this.selectionMode === \"single\") {\n return this.value.length > 0 ? [this.value[0]] : [];\n }\n return this.value;\n }\n setSelectedIds(ids) {\n if (this.selectionMode === \"single\") {\n this.value = ids.length > 0 ? [ids[0]] : [];\n } else {\n this.value = ids;\n }\n this.syncSelectionState();\n this.changeEvent.emit({\n value: this.value\n });\n }\n getActiveCellPosition() {\n const cells = this.getFocusableCells();\n const activeIndex = cells.findIndex(cell => cell.tabIndex === 0);\n const activeCell = activeIndex >= 0 ? cells[activeIndex] : this.querySelector(\"[data-table-cell]:focus\") ?? null;\n if (!activeCell) {\n return null;\n }\n const row = activeCell.closest(\"[data-table-row]\");\n if (!row) {\n return null;\n }\n const columnIndex = this.getRowCells(row).indexOf(activeCell);\n if (columnIndex < 0) {\n return null;\n }\n return {\n rowId: row.getAttribute(\"data-table-row\") ?? \"\",\n columnIndex\n };\n }\n syncSelectionState() {\n const selected = new Set(this.selectedIds());\n const selectableRows = this.getSelectableRows();\n const canSelect = this.selectionMode !== \"none\";\n for (const row of this.getRows()) {\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (canSelect) {\n row.setAttribute(\"aria-selected\", String(selected.has(rowId)));\n } else {\n row.removeAttribute(\"aria-selected\");\n }\n const rowCheckbox = row.querySelector(\"rui-checkbox[data-table-select-row]\");\n if (rowCheckbox) {\n rowCheckbox.checked = canSelect && selected.has(rowId);\n rowCheckbox.disabled = !canSelect || row.getAttribute(\"aria-disabled\") === \"true\";\n }\n }\n for (const selectAll of this.querySelectorAll(\"rui-checkbox[data-table-select-all]\")) {\n const selectedCount = selectableRows.filter(row => selected.has(row.getAttribute(\"data-table-row\") ?? \"\")).length;\n const canSelectAll = this.selectionMode === \"multiple\";\n selectAll.checked = canSelectAll && selectableRows.length > 0 && selectedCount === selectableRows.length;\n selectAll.indeterminate = canSelectAll && selectedCount > 0 && selectedCount < selectableRows.length;\n selectAll.disabled = !canSelectAll || selectableRows.length === 0;\n }\n }\n syncRovingTabindex() {\n const cells = this.getFocusableCells();\n if (cells.length === 0) {\n return;\n }\n const position = this.getActiveCellPosition();\n let activeIndex = cells.findIndex(cell => cell.tabIndex === 0);\n if (position) {\n const row = this.getRows().find(candidate => candidate.getAttribute(\"data-table-row\") === position.rowId);\n if (row) {\n const target = this.getRowCells(row)[position.columnIndex];\n const index = target ? cells.indexOf(target) : -1;\n if (index >= 0) {\n activeIndex = index;\n }\n }\n }\n applyRovingTabindex(cells, activeIndex >= 0 ? activeIndex : 0);\n }\n syncSorting() {\n for (const column of this.querySelectorAll(\"[data-table-column]\")) {\n const id = column.getAttribute(\"data-table-column\");\n if (id && id === this.sortColumn) {\n column.setAttribute(\"aria-sort\", this.sortDirection);\n } else {\n column.removeAttribute(\"aria-sort\");\n }\n }\n }\n /**\n * @remarks\n * `rui-checkbox` paints a visible control that is not an `input`. Clicks on\n * that control still bubble to the cell; treating the nested host as\n * interactive keeps the cell handler from toggling the row again after\n * `rui-change`.\n */\n isInteractiveTarget(target) {\n return Boolean(target.closest('button, input, select, textarea, a[href], [contenteditable=\"true\"], rui-checkbox'));\n }\n selectRow(row, toggle = false) {\n if (this.selectionMode === \"none\" || row.getAttribute(\"aria-disabled\") === \"true\") {\n return;\n }\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (!rowId) {\n return;\n }\n if (this.selectionMode === \"single\") {\n this.setSelectedIds([rowId]);\n return;\n }\n const selected = new Set(this.selectedIds());\n if (toggle && selected.has(rowId)) {\n selected.delete(rowId);\n } else {\n selected.add(rowId);\n }\n this.setSelectedIds([...selected]);\n }\n focusCell(row, columnIndex) {\n const cells = this.getFocusableCells();\n const rowCells = this.getRowCells(row);\n const target = rowCells[Math.min(Math.max(columnIndex, 0), rowCells.length - 1)];\n const index = cells.indexOf(target);\n if (index < 0) {\n return;\n }\n applyRovingTabindex(cells, index);\n target.focus();\n target.scrollIntoView({\n block: \"nearest\",\n inline: \"nearest\"\n });\n }\n activateRow(row) {\n if (!row.hasAttribute(\"data-table-actionable\") || row.getAttribute(\"aria-disabled\") === \"true\") {\n return;\n }\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (rowId) {\n this.rowActionEvent.emit({\n rowId\n });\n }\n }\n onCellClick(event2) {\n const target = event2.target;\n if (this.isInteractiveTarget(target)) {\n return;\n }\n const cell = target.closest(\"[data-table-cell]\");\n const row = cell?.closest(\"[data-table-row]\");\n if (!cell || !row || !this.contains(row)) {\n return;\n }\n this.selectRow(row, this.selectionMode === \"multiple\");\n this.focusCell(row, this.getRowCells(row).indexOf(cell));\n }\n onCellDoubleClick(event2) {\n const target = event2.target;\n if (this.isInteractiveTarget(target)) {\n return;\n }\n const row = target.closest(\"[data-table-row]\");\n if (row && this.contains(row)) {\n this.activateRow(row);\n }\n }\n onCellKeydown(event2) {\n const target = event2.target;\n if (this.isInteractiveTarget(target)) {\n return;\n }\n const cell = target.closest(\"[data-table-cell]\");\n const row = cell?.closest(\"[data-table-row]\");\n if (!cell || !row) {\n return;\n }\n const rows = this.getSelectableRows();\n const rowIndex = rows.indexOf(row);\n const rowCells = this.getRowCells(row);\n const columnIndex = rowCells.indexOf(cell);\n switch (event2.key) {\n case \"ArrowRight\":\n event2.preventDefault();\n this.focusCell(row, columnIndex + 1);\n return;\n case \"ArrowLeft\":\n event2.preventDefault();\n this.focusCell(row, columnIndex - 1);\n return;\n case \"ArrowDown\":\n event2.preventDefault();\n this.focusCell(rows[Math.min(rowIndex + 1, rows.length - 1)] ?? row, columnIndex);\n return;\n case \"ArrowUp\":\n event2.preventDefault();\n this.focusCell(rows[Math.max(rowIndex - 1, 0)] ?? row, columnIndex);\n return;\n case \"Home\":\n event2.preventDefault();\n this.focusCell(row, 0);\n return;\n case \"End\":\n event2.preventDefault();\n this.focusCell(row, rowCells.length - 1);\n return;\n case \" \":\n event2.preventDefault();\n this.selectRow(row, true);\n return;\n case \"Enter\":\n event2.preventDefault();\n this.activateRow(row);\n return;\n default:\n return;\n }\n }\n onRowSelectionChange(event2) {\n const checkbox = event2.target;\n const row = checkbox.closest(\"[data-table-row]\");\n if (!row || !this.contains(row)) {\n return;\n }\n const rowId = row.getAttribute(\"data-table-row\") ?? \"\";\n if (!event2.detail.checked) {\n const selected = new Set(this.selectedIds());\n selected.delete(rowId);\n this.setSelectedIds([...selected]);\n return;\n }\n this.selectRow(row);\n }\n onSelectAllChange(event2) {\n if (this.selectionMode !== \"multiple\") {\n return;\n }\n this.setSelectedIds(event2.detail.checked ? this.getSelectableRows().map(row => row.getAttribute(\"data-table-row\") ?? \"\") : []);\n }\n onSortClick(event2) {\n const button = event2.target.closest(\"[data-table-sort]\");\n const column = button?.getAttribute(\"data-table-sort\");\n if (!column) {\n return;\n }\n this.sortDirection = column === this.sortColumn && this.sortDirection === \"ascending\" ? \"descending\" : \"ascending\";\n this.sortColumn = column;\n this.syncSorting();\n this.sortChangeEvent.emit({\n column,\n direction: this.sortDirection\n });\n }\n static {\n _initClass();\n }\n}\nexport { _RuiTable as RuiTable };", "export function applyRovingTabindex(items, activeIndex) {\n items.forEach((item, index) => {\n const next = index === activeIndex ? 0 : -1;\n if (item.tabIndex !== next) {\n item.tabIndex = next;\n }\n });\n}\nexport function focusRovingItem(items, index) {\n if (!items.length) return null;\n const next = Math.max(0, Math.min(items.length - 1, index));\n applyRovingTabindex(items, next);\n items[next]?.focus();\n return items[next] ?? null;\n}\nfunction deltaForKey(key, orientation) {\n if (key === \"Home\") return \"first\";\n if (key === \"End\") return \"last\";\n if (orientation === \"horizontal\") {\n if (key === \"ArrowRight\") return \"next\";\n if (key === \"ArrowLeft\") return \"prev\";\n return null;\n }\n if (key === \"ArrowDown\") return \"next\";\n if (key === \"ArrowUp\") return \"prev\";\n return null;\n}\nexport function navigateRovingTabindex(options) {\n const {\n items,\n current,\n key,\n orientation = \"horizontal\",\n wrap = true\n } = options;\n if (!items.length || !current) return {\n handled: false\n };\n const index = items.indexOf(current);\n if (index < 0) return {\n handled: false\n };\n const delta = deltaForKey(key, orientation);\n if (!delta) return {\n handled: false\n };\n let next = index;\n if (delta === \"first\") next = 0;else if (delta === \"last\") next = items.length - 1;else if (delta === \"next\") next = wrap ? (index + 1) % items.length : Math.min(items.length - 1, index + 1);else next = wrap ? (index - 1 + items.length) % items.length : Math.max(0, index - 1);\n const item = focusRovingItem(items, next);\n if (!item) return {\n handled: false\n };\n return {\n handled: true,\n index: next,\n item\n };\n}", "export function parseMultiValue(value) {\n if (!value) {\n return [];\n }\n return uniqueTrimmed(value.split(\",\"));\n}\nexport function serializeMultiValue(values) {\n return values.join(\",\");\n}\nexport const multiValueTransform = {\n fromAttribute: value => parseMultiValue(value),\n toAttribute: values => values.length > 0 ? serializeMultiValue(values) : null,\n fromProperty: value => {\n if (Array.isArray(value)) {\n return uniqueTrimmed(value.map(String));\n }\n if (typeof value === \"string\") {\n return parseMultiValue(value);\n }\n return [];\n }\n};\nexport const multiValuePropOptions = {\n type: Array,\n reflect: true,\n transform: multiValueTransform\n};\nexport function parseViewValue(value) {\n return multiValueTransform.fromProperty?.(value) ?? [];\n}\nfunction parseNumberArray(value) {\n if (!value) {\n return [];\n }\n return value.split(\",\").map(item => Number(item.trim())).filter(item => Number.isFinite(item));\n}\nfunction serializeNumberArray(values) {\n return values.join(\",\");\n}\nexport const numberArrayTransform = {\n fromAttribute: value => parseNumberArray(value),\n toAttribute: values => values.length > 0 ? serializeNumberArray(values) : null,\n fromProperty: value => {\n if (Array.isArray(value)) {\n return value.map(Number).filter(item => Number.isFinite(item));\n }\n if (typeof value === \"number\" && Number.isFinite(value)) {\n return [value];\n }\n if (typeof value === \"string\") {\n return parseNumberArray(value);\n }\n return [];\n }\n};\nfunction uniqueTrimmed(values) {\n return [...new Set(values.map(item => item.trim()).filter(Boolean))];\n}"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["jsx", "jsxs", "cx", "parts", "RadiantElement", "bindTo", "customElement", "event", "onEvent", "prop", "nonEmpty", "value", "_initProto", "_initClass", "_init_checked", "_init_extra_checked", "_init_indeterminate", "_init_extra_indeterminate", "_init_disabled", "_init_extra_disabled", "_init_value", "_init_extra_value", "_init_name", "_init_extra_name", "_init_changeEvent", "_init_extra_changeEvent", "_applyDecs", "e", "t", "n", "r", "o", "i", "a", "c", "u", "s", "f", "l", "p", "d", "m", "h", "y", "v", "g", "b", "applyDec", "w", "D", "S", "j", "E", "I", "P", "k", "F", "_setFunctionName", "N", "O", "T", "z", "A", "H", "_toPropertyKey", "_checkInRHS", "_toPrimitive", "CHECKBOX_DEFAULT_VALUE", "_RuiCheckbox", "RuiCheckbox", "RadiantElement", "customElement", "prop", "bindTo", "value", "nonEmpty", "event", "onEvent", "args", "event2", "input", "jsx", "jsxs", "RuiCheckbox", "children", "checked", "disabled", "indeterminate", "name", "value", "CHECKBOX_DEFAULT_VALUE", "props", "jsx", "jsxs", "RadiantElement", "customElement", "event", "onEvent", "onUpdated", "prop", "applyRovingTabindex", "items", "activeIndex", "item", "index", "next", "parseMultiValue", "value", "uniqueTrimmed", "serializeMultiValue", "values", "multiValueTransform", "multiValuePropOptions", "uniqueTrimmed", "values", "item", "_initProto", "_initClass", "_init_label", "_init_extra_label", "_init_ariaBusy", "_init_extra_ariaBusy", "_init_selectionMode", "_init_extra_selectionMode", "_init_value", "_init_extra_value", "_init_sortColumn", "_init_extra_sortColumn", "_init_sortDirection", "_init_extra_sortDirection", "_init_changeEvent", "_init_extra_changeEvent", "_init_sortChangeEvent", "_init_extra_sortChangeEvent", "_init_rowActionEvent", "_init_extra_rowActionEvent", "_applyDecs", "e", "t", "n", "r", "o", "i", "a", "c", "u", "s", "f", "l", "p", "d", "m", "h", "y", "v", "g", "b", "applyDec", "w", "D", "S", "j", "E", "I", "P", "k", "F", "_setFunctionName", "N", "O", "T", "z", "A", "H", "_toPropertyKey", "_checkInRHS", "_toPrimitive", "_RuiTable", "RuiTable", "RadiantElement", "customElement", "prop", "multiValuePropOptions", "event", "onUpdated", "onEvent", "row", "child", "ids", "cells", "activeIndex", "cell", "activeCell", "columnIndex", "selected", "selectableRows", "canSelect", "rowId", "rowCheckbox", "selectAll", "selectedCount", "canSelectAll", "position", "candidate", "target", "index", "applyRovingTabindex", "column", "id", "toggle", "rowCells", "event2", "rows", "rowIndex", "RuiTableHeader", "children", "className", "props", "jsx", "cx", "RuiTableBody", "RuiTableFooter", "RuiTableColumn", "id", "allowsSorting", "isRowHeader", "jsxs", "RuiTableRow", "disabled", "actionable", "RuiTableCell", "RuiTableSelectionCell", "scope", "label", "all", "RuiCheckbox", "RuiTableEmptyState", "colSpan", "resolvedColSpan", "_", "index", "RuiTable", "ariaBusy", "selectionMode", "value"]
|
|
7
7
|
}
|
|
@@ -43,10 +43,12 @@ export declare function RuiTableEmptyState({ colSpan, children, class: className
|
|
|
43
43
|
/**
|
|
44
44
|
* React Aria–inspired composable data table.
|
|
45
45
|
*
|
|
46
|
-
* @remarks The table owns keyboard navigation, row selection, and
|
|
47
|
-
*
|
|
46
|
+
* @remarks The table owns keyboard navigation, row selection, and sort state
|
|
47
|
+
* (`sort-column`, `sort-direction`, `aria-sort`). Clicking a data cell selects
|
|
48
|
+
* the row when `selectionMode` is `single` or `multiple`; nested controls do not.
|
|
49
|
+
* Callers retain the collection and reorder it after `rui-sort-change`.
|
|
48
50
|
* Prefer `RuiGrid` for simple read-only grids and `RuiTreegrid` for expandable hierarchies.
|
|
49
51
|
*
|
|
50
52
|
* @cssclass rui-table - Table surface (`role="grid"`).
|
|
51
53
|
*/
|
|
52
|
-
export declare function RuiTable({ children, label, ariaBusy, selectionMode, ...props }: JsxCustomElementAttributes<RuiTableElement, RuiTableProps>): import("@ecopages/jsx").JsxRenderable;
|
|
54
|
+
export declare function RuiTable({ children, label, ariaBusy, selectionMode, value, ...props }: JsxCustomElementAttributes<RuiTableElement, RuiTableProps>): import("@ecopages/jsx").JsxRenderable;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { RadiantElement } from '@ecopages/radiant';
|
|
2
2
|
import type { EventEmitter } from '@ecopages/radiant/tools/event-emitter';
|
|
3
|
+
import { type ViewMultiValue } from '../shared/multi-value';
|
|
3
4
|
import type { RuiCheckboxChangeDetail } from '../checkbox/checkbox.script';
|
|
4
5
|
export type RuiTableSelectionMode = 'none' | 'single' | 'multiple';
|
|
5
6
|
export type RuiTableSortDirection = 'ascending' | 'descending';
|
|
@@ -7,13 +8,13 @@ export type RuiTableProps = {
|
|
|
7
8
|
label?: string;
|
|
8
9
|
ariaBusy?: 'true' | 'false';
|
|
9
10
|
selectionMode?: RuiTableSelectionMode;
|
|
10
|
-
/** Selected row ids.
|
|
11
|
-
value?:
|
|
11
|
+
/** Selected row ids. The attribute is comma-separated. */
|
|
12
|
+
value?: ViewMultiValue;
|
|
12
13
|
sortColumn?: string;
|
|
13
14
|
sortDirection?: RuiTableSortDirection;
|
|
14
15
|
};
|
|
15
16
|
export type RuiTableChangeDetail = {
|
|
16
|
-
value: string;
|
|
17
|
+
value: string[];
|
|
17
18
|
};
|
|
18
19
|
export type RuiTableSortChangeDetail = {
|
|
19
20
|
column: string;
|
|
@@ -34,7 +35,11 @@ export type RuiTableRowActionDetail = {
|
|
|
34
35
|
* Required:
|
|
35
36
|
* - `[data-table-row]` — data row. Host sets `aria-selected` when `selection-mode` is not `none`.
|
|
36
37
|
* - `[data-table-cell]` — cell, direct child of a row. Host applies roving `tabIndex`.
|
|
37
|
-
*
|
|
38
|
+
* When `selection-mode` is `single` or `multiple`, a click on a non-interactive cell
|
|
39
|
+
* selects that row. There is no separate prop for click-to-select.
|
|
40
|
+
* Space toggles selection. Nested controls (`button`, `input`, `a[href]`,
|
|
41
|
+
* `rui-checkbox`, …) do not select. Double-click and Enter activate
|
|
42
|
+
* `data-table-actionable` rows (`rui-row-action`).
|
|
38
43
|
*
|
|
39
44
|
* Per row:
|
|
40
45
|
* - `data-table-row` — row id (selection and `rui-row-action` identity).
|
|
@@ -43,7 +48,9 @@ export type RuiTableRowActionDetail = {
|
|
|
43
48
|
*
|
|
44
49
|
* Per column header:
|
|
45
50
|
* - `[data-table-column]` — column header region. Host sets `aria-sort` when `sort-column` matches.
|
|
46
|
-
* - `[data-table-sort]` — sort button inside a sortable column. Click updates sort
|
|
51
|
+
* - `[data-table-sort]` — sort button inside a sortable column. Click updates `sort-column`,
|
|
52
|
+
* `sort-direction`, and `aria-sort`, then emits `rui-sort-change`. The host does not
|
|
53
|
+
* reorder rows.
|
|
47
54
|
*
|
|
48
55
|
* Optional:
|
|
49
56
|
* - `rui-checkbox[data-table-select-row]` — per-row selection checkbox (nested host).
|
|
@@ -58,14 +65,15 @@ export type RuiTableRowActionDetail = {
|
|
|
58
65
|
* @attr {string} label - Accessible name for the table.
|
|
59
66
|
* @attr {('true'|'false')} aria-busy - Whether the collection is currently updating.
|
|
60
67
|
* @attr {('none'|'single'|'multiple')} selection-mode - Row selection mode. Default: `none`.
|
|
61
|
-
* @attr {string} value -
|
|
68
|
+
* @attr {string} value - Comma-separated selected row ids in markup; the property is `string[]`. Default: `[]`.
|
|
62
69
|
* @attr {string} sort-column - Active sortable column id.
|
|
63
70
|
* @attr {('ascending'|'descending')} sort-direction - Active sorting direction. Default: `ascending`.
|
|
64
|
-
* @fires rui-change - Emitted after the selected row ids change.
|
|
65
|
-
* @fires rui-sort-change - Emitted after a sortable header changes direction.
|
|
66
|
-
* @fires rui-row-action - Emitted when an actionable row is activated.
|
|
71
|
+
* @fires rui-change - Emitted after the selected row ids change; `detail.value` is `string[]`.
|
|
72
|
+
* @fires rui-sort-change - Emitted after a sortable header changes direction. The table does not reorder rows.
|
|
73
|
+
* @fires rui-row-action - Emitted when an actionable row is activated (Enter / double-click).
|
|
67
74
|
*
|
|
68
75
|
* @remarks
|
|
76
|
+
* Click-to-select is implied by `selection-mode`; it is not a separate attribute.
|
|
69
77
|
* Callers retain ownership of the collection and reorder it after `rui-sort-change`.
|
|
70
78
|
* BEM classes live on the view; the host never queries them.
|
|
71
79
|
*/
|
|
@@ -73,7 +81,7 @@ export declare class RuiTable extends RadiantElement {
|
|
|
73
81
|
label: string;
|
|
74
82
|
ariaBusy: 'true' | 'false';
|
|
75
83
|
selectionMode: RuiTableSelectionMode;
|
|
76
|
-
value: string;
|
|
84
|
+
value: string[];
|
|
77
85
|
sortColumn: string;
|
|
78
86
|
sortDirection: RuiTableSortDirection;
|
|
79
87
|
changeEvent: EventEmitter<RuiTableChangeDetail>;
|
|
@@ -98,6 +106,13 @@ export declare class RuiTable extends RadiantElement {
|
|
|
98
106
|
private syncSelectionState;
|
|
99
107
|
private syncRovingTabindex;
|
|
100
108
|
private syncSorting;
|
|
109
|
+
/**
|
|
110
|
+
* @remarks
|
|
111
|
+
* `rui-checkbox` paints a visible control that is not an `input`. Clicks on
|
|
112
|
+
* that control still bubble to the cell; treating the nested host as
|
|
113
|
+
* interactive keeps the cell handler from toggling the row again after
|
|
114
|
+
* `rui-change`.
|
|
115
|
+
*/
|
|
101
116
|
private isInteractiveTarget;
|
|
102
117
|
private selectRow;
|
|
103
118
|
private focusCell;
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
|
|
2
2
|
@layer properties;
|
|
3
3
|
rui-tabs {
|
|
4
|
+
--rui-tabs-radius: var(--radius-container);
|
|
5
|
+
--rui-tabs-indicator-width: 2px;
|
|
6
|
+
--rui-tabs-indicator-color: var(--primary);
|
|
7
|
+
--rui-tabs-tab-padding-x: var(--space-control-x);
|
|
8
|
+
--rui-tabs-tab-padding-y: var(--space-control-y);
|
|
9
|
+
--rui-tabs-panel-padding: var(--space-inset);
|
|
4
10
|
display: flex;
|
|
5
11
|
width: 100%;
|
|
6
12
|
max-width: 100%;
|
|
@@ -27,8 +33,6 @@ rui-tabs {
|
|
|
27
33
|
justify-content: center;
|
|
28
34
|
border-style: var(--tw-border-style);
|
|
29
35
|
border-width: 0px;
|
|
30
|
-
border-bottom-style: var(--tw-border-style);
|
|
31
|
-
border-bottom-width: 2px;
|
|
32
36
|
border-color: transparent;
|
|
33
37
|
background-color: transparent;
|
|
34
38
|
white-space: nowrap;
|
|
@@ -36,12 +40,14 @@ rui-tabs {
|
|
|
36
40
|
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to;
|
|
37
41
|
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function, cubic-bezier(0.4, 0, 0.2, 1)));
|
|
38
42
|
transition-duration: var(--tw-duration, var(--default-transition-duration, 150ms));
|
|
43
|
+
border-bottom-style: solid;
|
|
44
|
+
border-bottom-width: var(--rui-tabs-indicator-width);
|
|
39
45
|
}
|
|
40
46
|
.rui-tabs__tab[aria-selected='true'] {
|
|
41
|
-
border-color: var(--color-primary, var(--primary));
|
|
42
47
|
--tw-font-weight: var(--font-weight-medium, var(--weight-medium));
|
|
43
48
|
font-weight: var(--font-weight-medium, var(--weight-medium));
|
|
44
49
|
color: var(--color-on-background, var(--on-background));
|
|
50
|
+
border-bottom-color: var(--rui-tabs-indicator-color);
|
|
45
51
|
}
|
|
46
52
|
.rui-tabs__tab:focus-visible {
|
|
47
53
|
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
|
|
@@ -69,13 +75,13 @@ rui-tabs {
|
|
|
69
75
|
}
|
|
70
76
|
rui-tabs[variant='boxed'] {
|
|
71
77
|
overflow: hidden;
|
|
72
|
-
border-radius: var(--radius-container, var(--radius-container));
|
|
73
78
|
border-style: var(--tw-border-style);
|
|
74
79
|
border-width: 1px;
|
|
75
80
|
border-color: var(--color-border, var(--border));
|
|
76
81
|
background-color: var(--color-background, var(--background));
|
|
77
82
|
--tw-shadow: var(--shadow-control);
|
|
78
83
|
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
|
|
84
|
+
border-radius: var(--rui-tabs-radius);
|
|
79
85
|
}
|
|
80
86
|
rui-tabs[variant='boxed'] .rui-tabs__list {
|
|
81
87
|
border-bottom-style: var(--tw-border-style);
|
|
@@ -89,8 +95,6 @@ rui-tabs {
|
|
|
89
95
|
padding-top: var(--spacing-2, var(--space-2));
|
|
90
96
|
}
|
|
91
97
|
rui-tabs[variant='boxed'] .rui-tabs__tab {
|
|
92
|
-
padding-inline: var(--spacing-control-x, var(--space-control-x));
|
|
93
|
-
padding-block: var(--spacing-control-y, var(--space-control-y));
|
|
94
98
|
text-align: center;
|
|
95
99
|
font-size: var(--text-xs, var(--text-xs));
|
|
96
100
|
line-height: var(--tw-leading, var(--text-xs--line-height, calc(1 / 0.75)));
|
|
@@ -100,20 +104,22 @@ rui-tabs {
|
|
|
100
104
|
opacity: 100%;
|
|
101
105
|
}
|
|
102
106
|
}
|
|
107
|
+
padding-inline: var(--rui-tabs-tab-padding-x);
|
|
108
|
+
padding-block: var(--rui-tabs-tab-padding-y);
|
|
103
109
|
}
|
|
104
110
|
rui-tabs[variant='boxed'] .rui-tabs__tab:not([aria-selected='true']) {
|
|
105
111
|
opacity: 70%;
|
|
106
112
|
}
|
|
107
113
|
rui-tabs[variant='boxed'] .rui-tabs__tab[aria-selected='true'] {
|
|
108
|
-
border-color: var(--color-primary, var(--primary));
|
|
109
114
|
--tw-font-weight: var(--font-weight-medium, var(--weight-medium));
|
|
110
115
|
font-weight: var(--font-weight-medium, var(--weight-medium));
|
|
111
116
|
color: var(--color-on-surface-container-low, var(--on-surface-container-low));
|
|
112
117
|
opacity: 100%;
|
|
118
|
+
border-bottom-color: var(--rui-tabs-indicator-color);
|
|
113
119
|
}
|
|
114
120
|
rui-tabs[variant='boxed'] .rui-tabs__panel {
|
|
115
121
|
background-color: var(--color-background, var(--background));
|
|
116
|
-
padding: var(--
|
|
122
|
+
padding: var(--rui-tabs-panel-padding);
|
|
117
123
|
}
|
|
118
124
|
rui-tabs[variant='ghost'] {
|
|
119
125
|
gap: 0px;
|
|
@@ -127,14 +133,14 @@ rui-tabs {
|
|
|
127
133
|
rui-tabs[variant='ghost'] .rui-tabs__tab {
|
|
128
134
|
border-top-left-radius: var(--radius-control, var(--radius-control));
|
|
129
135
|
border-top-right-radius: var(--radius-control, var(--radius-control));
|
|
130
|
-
padding-inline: var(--spacing-control-x, var(--space-control-x));
|
|
131
|
-
padding-block: var(--spacing-control-y, var(--space-control-y));
|
|
132
136
|
font-size: var(--text-sm, var(--text-sm));
|
|
133
137
|
line-height: var(--tw-leading, var(--text-sm--line-height, calc(1.25 / 0.875)));
|
|
138
|
+
padding-inline: var(--rui-tabs-tab-padding-x);
|
|
139
|
+
padding-block: var(--rui-tabs-tab-padding-y);
|
|
134
140
|
}
|
|
135
141
|
rui-tabs[variant='ghost'] .rui-tabs__panel {
|
|
136
|
-
padding-inline: var(--
|
|
137
|
-
padding-block: var(--
|
|
142
|
+
padding-inline: var(--space-1);
|
|
143
|
+
padding-block: var(--rui-tabs-panel-padding);
|
|
138
144
|
}
|
|
139
145
|
}
|
|
140
146
|
@property --tw-border-style {
|
|
@@ -55,6 +55,13 @@ export type RuiTabsChangeDetail = {
|
|
|
55
55
|
* @attr {boolean} automatic - When `true`, focusing a tab activates it. Default: `true`.
|
|
56
56
|
* @fires rui-change - Emitted when the selected tab changes; `detail.value` is the tab id.
|
|
57
57
|
*
|
|
58
|
+
* @cssprop --rui-tabs-radius - Boxed card corner radius. Default: `--radius-container`.
|
|
59
|
+
* @cssprop --rui-tabs-indicator-width - Selected-tab underline thickness. Default: `2px`.
|
|
60
|
+
* @cssprop --rui-tabs-indicator-color - Selected-tab underline. Default: `--primary`.
|
|
61
|
+
* @cssprop --rui-tabs-tab-padding-x - Tab inline padding. Default: `--space-control-x`.
|
|
62
|
+
* @cssprop --rui-tabs-tab-padding-y - Tab block padding. Default: `--space-control-y`.
|
|
63
|
+
* @cssprop --rui-tabs-panel-padding - Panel padding. Default: `--space-inset`.
|
|
64
|
+
*
|
|
58
65
|
* @remarks
|
|
59
66
|
* `resync()` re-applies tablist labeling and selected/hidden state from `value`.
|
|
60
67
|
* Observes `childList` so replaced children (e.g. parent re-render) stay in sync.
|