@g4rcez/components 5.0.2 → 5.0.3
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/dist/AnimatePresence-j36AYeOQ.js +181 -0
- package/dist/AnimatePresence-j36AYeOQ.js.map +1 -0
- package/dist/Calendar.es-xICmgvjq.js +23 -0
- package/dist/Calendar.es-xICmgvjq.js.map +1 -0
- package/dist/Funnel.es-DjKVl8Nj.js +23 -0
- package/dist/Funnel.es-DjKVl8Nj.js.map +1 -0
- package/dist/{MotionConfig-DKKYqBH2.js → MotionConfig-CXHoPGbK.js} +2 -2
- package/dist/{MotionConfig-DKKYqBH2.js.map → MotionConfig-CXHoPGbK.js.map} +1 -1
- package/dist/Plus.es-DbyRkEE2.js +23 -0
- package/dist/Plus.es-DbyRkEE2.js.map +1 -0
- package/dist/Trash.es-BFAc8PMf.js +23 -0
- package/dist/Trash.es-BFAc8PMf.js.map +1 -0
- package/dist/{calendar-PCCZDUIL.js → calendar-DEPkz8sw.js} +364 -502
- package/dist/calendar-DEPkz8sw.js.map +1 -0
- package/dist/calendar-header-Dfr-CwkY.js +174 -0
- package/dist/calendar-header-Dfr-CwkY.js.map +1 -0
- package/dist/chunk-jwUa06l-.js +23 -0
- package/dist/components/core/button.js +1 -1
- package/dist/components/core/heading.js +11 -0
- package/dist/components/core/heading.js.map +1 -0
- package/dist/{polymorph-BLXhrn9n.js → components/core/polymorph.js} +2 -2
- package/dist/components/core/polymorph.js.map +1 -0
- package/dist/components/core/render-on-view.js +29 -0
- package/dist/components/core/render-on-view.js.map +1 -0
- package/dist/components/core/resizable.d.ts +7 -1
- package/dist/components/core/resizable.d.ts.map +1 -1
- package/dist/components/core/resizable.js +60 -0
- package/dist/components/core/resizable.js.map +1 -0
- package/dist/components/core/resizable.jsx +46 -40
- package/dist/{slot-pC8kH9De.js → components/core/slot.js} +2 -2
- package/dist/components/core/slot.js.map +1 -0
- package/dist/components/core/tag.js +1 -1
- package/dist/components/core/typography.js +40 -0
- package/dist/components/core/typography.js.map +1 -0
- package/dist/components/display/alert.d.ts.map +1 -1
- package/dist/components/display/alert.js +83 -102
- package/dist/components/display/alert.js.map +1 -1
- package/dist/components/display/alert.jsx +26 -29
- package/dist/components/display/calendar.d.ts.map +1 -1
- package/dist/components/display/calendar.js +1 -1
- package/dist/components/display/calendar.jsx +15 -10
- package/dist/components/display/card.js +2 -2
- package/dist/components/display/empty.d.ts.map +1 -1
- package/dist/components/display/empty.js +25 -0
- package/dist/components/display/empty.js.map +1 -0
- package/dist/components/display/empty.jsx +3 -1
- package/dist/components/display/list.d.ts.map +1 -1
- package/dist/components/display/list.js +132 -122
- package/dist/components/display/list.js.map +1 -1
- package/dist/components/display/list.jsx +30 -25
- package/dist/components/display/notifications.d.ts.map +1 -1
- package/dist/components/display/notifications.js +1 -1
- package/dist/components/display/notifications.jsx +8 -6
- package/dist/components/display/progress.d.ts.map +1 -1
- package/dist/components/display/progress.js +3 -0
- package/dist/components/display/progress.jsx +6 -8
- package/dist/components/display/shortcut.js +2 -0
- package/dist/components/display/skeleton.js +41 -0
- package/dist/components/display/skeleton.js.map +1 -0
- package/dist/components/display/spinner.js +17 -0
- package/dist/components/display/spinner.js.map +1 -0
- package/dist/components/display/step.d.ts.map +1 -1
- package/dist/components/display/step.js +3 -0
- package/dist/components/display/step.jsx +5 -5
- package/dist/components/display/tabs.js +1 -1
- package/dist/components/display/timeline.js +1 -1
- package/dist/components/floating/command-palette.d.ts.map +1 -1
- package/dist/components/floating/command-palette.js +255 -0
- package/dist/components/floating/command-palette.js.map +1 -0
- package/dist/components/floating/command-palette.jsx +34 -25
- package/dist/components/floating/dropdown.js +1 -1
- package/dist/components/floating/dropdown.js.map +1 -1
- package/dist/components/floating/dropdown.jsx +1 -1
- package/dist/components/floating/expand.js +15 -14
- package/dist/components/floating/expand.js.map +1 -1
- package/dist/components/floating/menu.js +1 -1
- package/dist/components/floating/modal.d.ts +14 -11
- package/dist/components/floating/modal.d.ts.map +1 -1
- package/dist/components/floating/modal.js +1 -1
- package/dist/components/floating/modal.jsx +56 -17
- package/dist/components/floating/toolbar.d.ts +3 -3
- package/dist/components/floating/toolbar.d.ts.map +1 -1
- package/dist/components/floating/toolbar.js +20 -0
- package/dist/components/floating/toolbar.js.map +1 -0
- package/dist/components/floating/toolbar.jsx +7 -3
- package/dist/components/floating/tooltip.js +2 -2
- package/dist/components/floating/tooltip.js.map +1 -1
- package/dist/components/floating/tooltip.jsx +1 -1
- package/dist/components/floating/wizard.js +3 -0
- package/dist/components/form/autocomplete.d.ts.map +1 -1
- package/dist/components/form/autocomplete.js +344 -2
- package/dist/components/form/autocomplete.js.map +1 -0
- package/dist/components/form/autocomplete.jsx +27 -18
- package/dist/components/form/checkbox.d.ts.map +1 -1
- package/dist/components/form/checkbox.js +29 -27
- package/dist/components/form/checkbox.js.map +1 -1
- package/dist/components/form/checkbox.jsx +21 -6
- package/dist/components/form/date-picker.js +1 -1
- package/dist/components/form/date-picker.jsx +1 -1
- package/dist/components/form/file-upload.d.ts +6 -1
- package/dist/components/form/file-upload.d.ts.map +1 -1
- package/dist/components/form/file-upload.js +1 -1
- package/dist/components/form/file-upload.jsx +34 -12
- package/dist/components/form/formReset.js +10 -0
- package/dist/components/form/formReset.js.map +1 -0
- package/dist/components/form/free-text.js +70 -0
- package/dist/components/form/free-text.js.map +1 -0
- package/dist/components/form/free-text.jsx +1 -1
- package/dist/components/form/input-field.d.ts.map +1 -1
- package/dist/components/form/input-field.js +3 -0
- package/dist/components/form/input-field.jsx +14 -8
- package/dist/components/form/input.js +1 -1
- package/dist/components/form/multi-select.d.ts.map +1 -1
- package/dist/components/form/multi-select.js +420 -0
- package/dist/components/form/multi-select.js.map +1 -0
- package/dist/components/form/multi-select.jsx +41 -33
- package/dist/components/form/select.d.ts.map +1 -1
- package/dist/components/form/select.js +55 -51
- package/dist/components/form/select.js.map +1 -1
- package/dist/components/form/select.jsx +8 -5
- package/dist/components/form/slider.js +3 -0
- package/dist/components/form/switch.d.ts +2 -1
- package/dist/components/form/switch.d.ts.map +1 -1
- package/dist/components/form/switch.js +32 -26
- package/dist/components/form/switch.js.map +1 -1
- package/dist/components/form/switch.jsx +26 -13
- package/dist/components/form/textarea.js +19 -0
- package/dist/components/form/textarea.js.map +1 -0
- package/dist/components/page-calendar/calendar-header.d.ts.map +1 -1
- package/dist/components/page-calendar/calendar-header.js +2 -0
- package/dist/components/page-calendar/calendar-header.jsx +6 -4
- package/dist/components/page-calendar/day-view.js +124 -0
- package/dist/components/page-calendar/day-view.js.map +1 -0
- package/dist/components/page-calendar/event-pill.js +44 -0
- package/dist/components/page-calendar/event-pill.js.map +1 -0
- package/dist/components/page-calendar/month-view.d.ts.map +1 -1
- package/dist/components/page-calendar/month-view.js +109 -0
- package/dist/components/page-calendar/month-view.js.map +1 -0
- package/dist/components/page-calendar/month-view.jsx +78 -31
- package/dist/components/page-calendar/page-calendar.d.ts.map +1 -1
- package/dist/components/page-calendar/page-calendar.js +75 -0
- package/dist/components/page-calendar/page-calendar.js.map +1 -0
- package/dist/components/page-calendar/page-calendar.jsx +2 -2
- package/dist/components/page-calendar/week-view.js +88 -0
- package/dist/components/page-calendar/week-view.js.map +1 -0
- package/dist/components/table/filter.d.ts.map +1 -1
- package/dist/components/table/filter.js +239 -0
- package/dist/components/table/filter.js.map +1 -0
- package/dist/components/table/filter.jsx +9 -4
- package/dist/components/table/group.d.ts.map +1 -1
- package/dist/components/table/group.js +3 -0
- package/dist/components/table/group.jsx +5 -3
- package/dist/components/table/index.js +102 -0
- package/dist/components/table/index.js.map +1 -0
- package/dist/components/table/inner-table.js +2 -0
- package/dist/components/table/inner-table.jsx +1 -1
- package/dist/components/table/metadata.js +73 -0
- package/dist/components/table/metadata.js.map +1 -0
- package/dist/components/table/metadata.jsx +1 -1
- package/dist/components/table/pagination.js +70 -0
- package/dist/components/table/pagination.js.map +1 -0
- package/dist/components/table/row.js +58 -0
- package/dist/components/table/row.js.map +1 -0
- package/dist/components/table/sort.d.ts.map +1 -1
- package/dist/components/table/sort.js +3 -0
- package/dist/components/table/sort.jsx +3 -1
- package/dist/components/table/thead.js +3 -0
- package/dist/config/default-translations.d.ts +18 -0
- package/dist/config/default-translations.d.ts.map +1 -1
- package/dist/config/default-translations.jsx +18 -0
- package/dist/{use-translations-DTLfPE3_.js → context-CsnUsfeP.js} +55 -40
- package/dist/context-CsnUsfeP.js.map +1 -0
- package/dist/{date-picker-BhKEFZew.js → date-picker-DNzupG8R.js} +301 -317
- package/dist/date-picker-DNzupG8R.js.map +1 -0
- package/dist/dict-CisoYSMO.js +28 -0
- package/dist/dict-CisoYSMO.js.map +1 -0
- package/dist/dist-ChfJ5LO9.js +498 -0
- package/dist/dist-ChfJ5LO9.js.map +1 -0
- package/dist/{dist-BrGpYRaj.js → dist-DIjUECx9.js} +56 -56
- package/dist/{dist-BrGpYRaj.js.map → dist-DIjUECx9.js.map} +1 -1
- package/dist/dom-Bn4wY_Zx.js.map +1 -1
- package/dist/{file-upload-DWbZfeG5.js → file-upload-C2zNnv9n.js} +501 -481
- package/dist/{file-upload-DWbZfeG5.js.map → file-upload-C2zNnv9n.js.map} +1 -1
- package/dist/fzf-CPGDDCoU.js +64 -0
- package/dist/fzf-CPGDDCoU.js.map +1 -0
- package/dist/getISOWeek-EcB4Ebqp.js +72 -0
- package/dist/getISOWeek-EcB4Ebqp.js.map +1 -0
- package/dist/group-Dl14TJXO.js +222 -0
- package/dist/group-Dl14TJXO.js.map +1 -0
- package/dist/hooks/use-translations.d.ts +18 -0
- package/dist/hooks/use-translations.d.ts.map +1 -1
- package/dist/index.css +1 -1
- package/dist/index.js.map +1 -1
- package/dist/inner-table-CeDX60cL.js +151 -0
- package/dist/inner-table-CeDX60cL.js.map +1 -0
- package/dist/input-Cmyuea4Y.js +412 -0
- package/dist/input-Cmyuea4Y.js.map +1 -0
- package/dist/{input-field-B_whI66Q.js → input-field-ffx1MbHo.js} +29 -16
- package/dist/input-field-ffx1MbHo.js.map +1 -0
- package/dist/isSameMonth-C3lsSwcg.js +10 -0
- package/dist/isSameMonth-C3lsSwcg.js.map +1 -0
- package/dist/isToday-COXfxFui.js +32 -0
- package/dist/isToday-COXfxFui.js.map +1 -0
- package/dist/lib/dom.d.ts.map +1 -1
- package/dist/modal-Df8-6i-o.js +408 -0
- package/dist/modal-Df8-6i-o.js.map +1 -0
- package/dist/notifications-NhCESJUV.js +1697 -0
- package/dist/notifications-NhCESJUV.js.map +1 -0
- package/dist/page-calendar.utils-Bd0PHktL.js +102 -0
- package/dist/page-calendar.utils-Bd0PHktL.js.map +1 -0
- package/dist/preset/preset.tailwind.d.ts.map +1 -1
- package/dist/preset/preset.tailwind.js +6 -7
- package/dist/preset/src/styles/dark.js +1 -1
- package/dist/progress-8LO5gWLp.js +104 -0
- package/dist/progress-8LO5gWLp.js.map +1 -0
- package/dist/{proxy-BcJ_5Dwq.js → proxy-fP2NxmhM.js} +658 -844
- package/dist/proxy-fP2NxmhM.js.map +1 -0
- package/dist/shim-Czv-YhKR.js +93 -0
- package/dist/shim-Czv-YhKR.js.map +1 -0
- package/dist/shortcut-CQCmgmlU.js +100 -0
- package/dist/shortcut-CQCmgmlU.js.map +1 -0
- package/dist/slider-TX9hiHO-.js +1196 -0
- package/dist/slider-TX9hiHO-.js.map +1 -0
- package/dist/sort-DGmiselV.js +195 -0
- package/dist/sort-DGmiselV.js.map +1 -0
- package/dist/step-DFpJ7zCG.js +185 -0
- package/dist/step-DFpJ7zCG.js.map +1 -0
- package/dist/styles/dark.js +1 -1
- package/dist/subMonths-QcCnE3Yh.js +43 -0
- package/dist/subMonths-QcCnE3Yh.js.map +1 -0
- package/dist/table-lib-1bkYSklk.js +174 -0
- package/dist/table-lib-1bkYSklk.js.map +1 -0
- package/dist/{tabs-Ciy0l9OF.js → tabs-Brc963EW.js} +2 -2
- package/dist/{tabs-Ciy0l9OF.js.map → tabs-Brc963EW.js.map} +1 -1
- package/dist/thead-B6WELJZ-.js +211 -0
- package/dist/thead-B6WELJZ-.js.map +1 -0
- package/dist/use-locale-DPM_sg4s.js +12 -0
- package/dist/use-locale-DPM_sg4s.js.map +1 -0
- package/dist/use-remove-scroll-pAgC09Sq.js +38 -0
- package/dist/use-remove-scroll-pAgC09Sq.js.map +1 -0
- package/dist/use-translations-BE4PuhLm.js +11 -0
- package/dist/use-translations-BE4PuhLm.js.map +1 -0
- package/dist/useAnimationFrame-DnKbaXfi.js +223 -0
- package/dist/useAnimationFrame-DnKbaXfi.js.map +1 -0
- package/dist/valueToPercent-DZc_m1tm.js +43 -0
- package/dist/valueToPercent-DZc_m1tm.js.map +1 -0
- package/dist/visuallyHidden-B7wI86yi.js +303 -0
- package/dist/visuallyHidden-B7wI86yi.js.map +1 -0
- package/dist/with-selector-BFW5n-pb.js +102 -0
- package/dist/with-selector-BFW5n-pb.js.map +1 -0
- package/dist/wizard-7u_qZ-78.js +218 -0
- package/dist/wizard-7u_qZ-78.js.map +1 -0
- package/package.json +19 -11
- package/dist/autocomplete-D3VOTihi.js +0 -415
- package/dist/autocomplete-D3VOTihi.js.map +0 -1
- package/dist/calendar-PCCZDUIL.js.map +0 -1
- package/dist/components/table/table.js +0 -3
- package/dist/date-picker-BhKEFZew.js.map +0 -1
- package/dist/input-B7jqwPG4.js +0 -473
- package/dist/input-B7jqwPG4.js.map +0 -1
- package/dist/input-field-B_whI66Q.js.map +0 -1
- package/dist/modal-Bz-61ays.js +0 -373
- package/dist/modal-Bz-61ays.js.map +0 -1
- package/dist/notifications-MT4XkLov.js +0 -2203
- package/dist/notifications-MT4XkLov.js.map +0 -1
- package/dist/polymorph-BLXhrn9n.js.map +0 -1
- package/dist/proxy-BcJ_5Dwq.js.map +0 -1
- package/dist/skeleton-CBYEq3lM.js +0 -26
- package/dist/skeleton-CBYEq3lM.js.map +0 -1
- package/dist/slot-pC8kH9De.js.map +0 -1
- package/dist/table-CUFbAI2k.js +0 -1914
- package/dist/table-CUFbAI2k.js.map +0 -1
- package/dist/use-translations-DTLfPE3_.js.map +0 -1
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { r as e } from "../../input-field-ffx1MbHo.js";
|
|
3
|
+
import { t } from "../../AnimatePresence-j36AYeOQ.js";
|
|
4
|
+
import { t as n } from "../../dist-DIjUECx9.js";
|
|
5
|
+
import { r } from "../../table-lib-1bkYSklk.js";
|
|
6
|
+
import { n as i, t as a } from "../../inner-table-CeDX60cL.js";
|
|
7
|
+
import { Metadata as o } from "./metadata.js";
|
|
8
|
+
import { useEffect as s, useMemo as c } from "react";
|
|
9
|
+
import { jsx as l, jsxs as u } from "react/jsx-runtime";
|
|
10
|
+
//#region src/components/table/index.tsx
|
|
11
|
+
var d = (e, t) => typeof t == "function" ? t(e) : t, f = (e, t, n) => e === t ? void 0 : n?.(t), p = (p) => {
|
|
12
|
+
let m = e(), h = c(() => ({ sticky: p.sticky === void 0 ? m.table.sticky ?? void 0 : p.sticky ?? void 0 }), [p.sticky, m.table.sticky]), g = p.operations ?? m.table.operations ?? !0, _ = c(() => r(p.cols), [p.cols]), [v, y] = n({
|
|
13
|
+
cols: p.cols,
|
|
14
|
+
sorters: p.sorters ?? [],
|
|
15
|
+
groups: p.groups ?? [],
|
|
16
|
+
filters: p.filters ?? []
|
|
17
|
+
}, (e) => {
|
|
18
|
+
let t = (t) => (n) => {
|
|
19
|
+
let r = e.state();
|
|
20
|
+
return {
|
|
21
|
+
...r,
|
|
22
|
+
[t]: d(r[t], n)
|
|
23
|
+
};
|
|
24
|
+
};
|
|
25
|
+
return {
|
|
26
|
+
cols: t("cols"),
|
|
27
|
+
sorters: t("sorters"),
|
|
28
|
+
groups: t("groups"),
|
|
29
|
+
filters: t("filters")
|
|
30
|
+
};
|
|
31
|
+
}, { postMiddleware: [(e, t) => (p.set?.(e), f(t?.filters ?? [], e.filters ?? [], p.setFilters), f(t?.sorters ?? [], e.sorters ?? [], p.setSorters), f(t?.groups ?? [], e.groups ?? [], p.setGroups), f(t?.cols ?? [], e.cols ?? [], p.setCols), e)] });
|
|
32
|
+
return s(() => {
|
|
33
|
+
y.cols(p.cols);
|
|
34
|
+
}, [p.cols]), /* @__PURE__ */ l(i, {
|
|
35
|
+
value: h,
|
|
36
|
+
children: /* @__PURE__ */ u(t, {
|
|
37
|
+
propagate: !0,
|
|
38
|
+
initial: !1,
|
|
39
|
+
children: [g ? /* @__PURE__ */ l(o, {
|
|
40
|
+
cols: v.cols,
|
|
41
|
+
rows: p.rows,
|
|
42
|
+
options: _,
|
|
43
|
+
groups: v.groups,
|
|
44
|
+
filters: v.filters,
|
|
45
|
+
setCols: y.cols,
|
|
46
|
+
sorters: v.sorters,
|
|
47
|
+
setGroups: y.groups,
|
|
48
|
+
setFilters: y.filters,
|
|
49
|
+
setSorters: y.sorters,
|
|
50
|
+
pagination: p.pagination ?? null,
|
|
51
|
+
inlineFilter: p.inlineFilter ?? !0,
|
|
52
|
+
inlineSorter: p.inlineSorter ?? !0
|
|
53
|
+
}) : null, v.groups.length === 0 ? /* @__PURE__ */ l(a, {
|
|
54
|
+
...p,
|
|
55
|
+
index: 0,
|
|
56
|
+
cols: v.cols,
|
|
57
|
+
options: _,
|
|
58
|
+
groups: v.groups,
|
|
59
|
+
filters: v.filters,
|
|
60
|
+
optionCols: _,
|
|
61
|
+
setCols: y.cols,
|
|
62
|
+
sorters: v.sorters,
|
|
63
|
+
setGroups: y.groups,
|
|
64
|
+
setFilters: y.filters,
|
|
65
|
+
setSorters: y.sorters,
|
|
66
|
+
onScrollEnd: p.onScrollEnd,
|
|
67
|
+
pagination: p.pagination ?? null,
|
|
68
|
+
inlineFilter: p.inlineFilter ?? !0,
|
|
69
|
+
inlineSorter: p.inlineSorter ?? !0
|
|
70
|
+
}) : /* @__PURE__ */ l("div", {
|
|
71
|
+
className: "flex flex-wrap gap-table-groups-gap",
|
|
72
|
+
children: v.groups.map((e, t) => /* @__PURE__ */ l("div", {
|
|
73
|
+
className: "min-w-full",
|
|
74
|
+
children: /* @__PURE__ */ l(a, {
|
|
75
|
+
...p,
|
|
76
|
+
group: e,
|
|
77
|
+
index: t,
|
|
78
|
+
cols: v.cols,
|
|
79
|
+
pagination: null,
|
|
80
|
+
rows: e.rows,
|
|
81
|
+
options: _,
|
|
82
|
+
groups: v.groups,
|
|
83
|
+
filters: v.filters,
|
|
84
|
+
optionCols: _,
|
|
85
|
+
setCols: y.cols,
|
|
86
|
+
sorters: v.sorters,
|
|
87
|
+
setGroups: y.groups,
|
|
88
|
+
setFilters: y.filters,
|
|
89
|
+
setSorters: y.sorters,
|
|
90
|
+
onScrollEnd: p.onScrollEnd,
|
|
91
|
+
inlineFilter: p.inlineFilter ?? !0,
|
|
92
|
+
inlineSorter: p.inlineSorter ?? !0
|
|
93
|
+
})
|
|
94
|
+
}, `group-${e.groupId}`))
|
|
95
|
+
})]
|
|
96
|
+
})
|
|
97
|
+
});
|
|
98
|
+
};
|
|
99
|
+
//#endregion
|
|
100
|
+
export { p as Table };
|
|
101
|
+
|
|
102
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","names":[],"sources":["../../../src/components/table/index.tsx"],"sourcesContent":["\"use client\";\nimport { AnimatePresence } from \"motion/react\";\nimport { ComponentProps, useEffect, useMemo } from \"react\";\nimport { useReducer } from \"use-typed-reducer\";\nimport { useTweaks } from \"../../hooks/use-tweaks\";\nimport { FilterConfig } from \"./filter\";\nimport { GroupItem } from \"./group\";\nimport { InnerTable, InnerTableProps } from \"./inner-table\";\nimport { Metadata } from \"./metadata\";\nimport { Sorter } from \"./sort\";\nimport { Col, createOptionCols, TableGetters, TableOperationProps } from \"./table-lib\";\nimport { TableContextProps, TableProvider } from \"./table.context\";\n\nexport type TableProps<T extends Record<string, unknown>> = Pick<InnerTableProps<T>, \"cols\" | \"rows\" | \"loadingMore\" | \"border\" | \"Aside\"> & {\n name: string;\n} & Partial<\n TableOperationProps<T> & {\n loading: boolean;\n reference: keyof T;\n operations: boolean;\n useControl: boolean;\n inlineFilter: boolean;\n inlineSorter: boolean;\n sticky: number | null;\n onScrollEnd: () => void;\n getScrollRef?: () => HTMLElement | undefined;\n getRowProps: (row: T) => ComponentProps<\"tr\">;\n }\n >;\n\nconst dispatcherFun = <Prev extends object, S extends Prev | ((prev: Prev) => Prev)>(prev: Prev, setter: S) =>\n typeof setter === \"function\" ? setter(prev) : setter;\n\ntype DispatcherFun<T extends object> = T | ((prev: T) => T);\n\nconst compareAndExec = <T extends unknown[]>(prev: T, state: T, exec?: (t: T) => void) => (prev === state ? undefined : exec?.(state));\n\nexport const Table = <T extends Record<string, unknown>>(props: TableProps<T>) => {\n const tweaks = useTweaks();\n const contextState = useMemo(\n (): TableContextProps => ({\n sticky: props.sticky === undefined ? (tweaks.table.sticky ?? undefined) : (props.sticky ?? undefined),\n }),\n [props.sticky, tweaks.table.sticky]\n );\n const operations = props.operations ?? tweaks.table.operations ?? true;\n const optionCols = useMemo(() => createOptionCols(props.cols), [props.cols]);\n const [state, dispatch] = useReducer(\n {\n cols: props.cols as Col<T>[],\n sorters: (props.sorters ?? []) as Sorter<T>[],\n groups: (props.groups ?? []) as GroupItem<T>[],\n filters: (props.filters ?? []) as FilterConfig<T>[],\n },\n (get) => {\n const create =\n <V extends object>(key: string) =>\n (arg: V) => {\n const state = get.state();\n type StateValue = (typeof state)[keyof typeof state];\n return {\n ...state,\n [key]: dispatcherFun(state[key as keyof typeof state], arg as StateValue),\n };\n };\n return {\n cols: create<DispatcherFun<Col<T>[]>>(\"cols\"),\n sorters: create<DispatcherFun<Sorter<T>[]>>(\"sorters\"),\n groups: create<DispatcherFun<GroupItem<T>[]>>(\"groups\"),\n filters: create<DispatcherFun<FilterConfig<T>[]>>(\"filters\"),\n };\n },\n {\n postMiddleware: [\n (state, prev) => {\n props.set?.(state as unknown as TableGetters<T>);\n compareAndExec(prev?.filters ?? [], state.filters ?? [], props.setFilters);\n compareAndExec(prev?.sorters ?? [], state.sorters ?? [], props.setSorters);\n compareAndExec(prev?.groups ?? [], state.groups ?? [], props.setGroups);\n compareAndExec(prev?.cols ?? [], state.cols ?? [], props.setCols);\n return state;\n },\n ],\n }\n );\n\n useEffect(() => {\n dispatch.cols(props.cols);\n }, [props.cols]);\n\n return (\n <TableProvider value={contextState}>\n <AnimatePresence propagate initial={false}>\n {operations ? (\n <Metadata\n cols={state.cols}\n rows={props.rows}\n options={optionCols}\n groups={state.groups}\n filters={state.filters}\n setCols={dispatch.cols}\n sorters={state.sorters}\n setGroups={dispatch.groups}\n setFilters={dispatch.filters}\n setSorters={dispatch.sorters}\n pagination={props.pagination ?? null}\n inlineFilter={props.inlineFilter ?? true}\n inlineSorter={props.inlineSorter ?? true}\n />\n ) : null}\n {state.groups.length === 0 ? (\n <InnerTable\n {...props}\n index={0}\n cols={state.cols}\n options={optionCols}\n groups={state.groups}\n filters={state.filters}\n optionCols={optionCols}\n setCols={dispatch.cols}\n sorters={state.sorters}\n setGroups={dispatch.groups}\n setFilters={dispatch.filters}\n setSorters={dispatch.sorters}\n onScrollEnd={props.onScrollEnd}\n pagination={props.pagination ?? null}\n inlineFilter={props.inlineFilter ?? true}\n inlineSorter={props.inlineSorter ?? true}\n />\n ) : (\n <div className=\"flex flex-wrap gap-table-groups-gap\">\n {state.groups.map((group, index) => (\n <div className=\"min-w-full\" key={`group-${group.groupId}`}>\n <InnerTable\n {...props}\n group={group}\n index={index}\n cols={state.cols}\n pagination={null}\n rows={group.rows}\n options={optionCols}\n groups={state.groups}\n filters={state.filters}\n optionCols={optionCols}\n setCols={dispatch.cols}\n sorters={state.sorters}\n setGroups={dispatch.groups}\n setFilters={dispatch.filters}\n setSorters={dispatch.sorters}\n onScrollEnd={props.onScrollEnd}\n inlineFilter={props.inlineFilter ?? true}\n inlineSorter={props.inlineSorter ?? true}\n />\n </div>\n ))}\n </div>\n )}\n </AnimatePresence>\n </TableProvider>\n );\n};\n"],"mappings":";;;;;;;;;;AA8BA,IAAM,KAA+E,GAAY,MAC7F,OAAO,KAAW,aAAa,EAAO,CAAI,IAAI,GAI5C,KAAuC,GAAS,GAAU,MAA2B,MAAS,IAAQ,KAAA,IAAY,IAAO,CAAK,GAEvH,KAA4C,MAAyB;CAC9E,IAAM,IAAS,EAAU,GACnB,IAAe,SACS,EACtB,QAAQ,EAAM,WAAW,KAAA,IAAa,EAAO,MAAM,UAAU,KAAA,IAAc,EAAM,UAAU,KAAA,EAC/F,IACA,CAAC,EAAM,QAAQ,EAAO,MAAM,MAAM,CACtC,GACM,IAAa,EAAM,cAAc,EAAO,MAAM,cAAc,IAC5D,IAAa,QAAc,EAAiB,EAAM,IAAI,GAAG,CAAC,EAAM,IAAI,CAAC,GACrE,CAAC,GAAO,KAAY,EACtB;EACI,MAAM,EAAM;EACZ,SAAU,EAAM,WAAW,CAAC;EAC5B,QAAS,EAAM,UAAU,CAAC;EAC1B,SAAU,EAAM,WAAW,CAAC;CAChC,IACC,MAAQ;EACL,IAAM,KACiB,OAClB,MAAW;GACR,IAAM,IAAQ,EAAI,MAAM;GAExB,OAAO;IACH,GAAG;KACF,IAAM,EAAc,EAAM,IAA4B,CAAiB;GAC5E;EACJ;EACJ,OAAO;GACH,MAAM,EAAgC,MAAM;GAC5C,SAAS,EAAmC,SAAS;GACrD,QAAQ,EAAsC,QAAQ;GACtD,SAAS,EAAyC,SAAS;EAC/D;CACJ,GACA,EACI,gBAAgB,EACX,GAAO,OACJ,EAAM,MAAM,CAAmC,GAC/C,EAAe,GAAM,WAAW,CAAC,GAAG,EAAM,WAAW,CAAC,GAAG,EAAM,UAAU,GACzE,EAAe,GAAM,WAAW,CAAC,GAAG,EAAM,WAAW,CAAC,GAAG,EAAM,UAAU,GACzE,EAAe,GAAM,UAAU,CAAC,GAAG,EAAM,UAAU,CAAC,GAAG,EAAM,SAAS,GACtE,EAAe,GAAM,QAAQ,CAAC,GAAG,EAAM,QAAQ,CAAC,GAAG,EAAM,OAAO,GACzD,EAEf,EACJ,CACJ;CAMA,OAJA,QAAgB;EACZ,EAAS,KAAK,EAAM,IAAI;CAC5B,GAAG,CAAC,EAAM,IAAI,CAAC,GAGX,kBAAC,GAAD;EAAe,OAAO;YAClB,kBAAC,GAAD;GAAiB,WAAA;GAAU,SAAS;aAApC,CACK,IACG,kBAAC,GAAD;IACI,MAAM,EAAM;IACZ,MAAM,EAAM;IACZ,SAAS;IACT,QAAQ,EAAM;IACd,SAAS,EAAM;IACf,SAAS,EAAS;IAClB,SAAS,EAAM;IACf,WAAW,EAAS;IACpB,YAAY,EAAS;IACrB,YAAY,EAAS;IACrB,YAAY,EAAM,cAAc;IAChC,cAAc,EAAM,gBAAgB;IACpC,cAAc,EAAM,gBAAgB;GACvC,CAAA,IACD,MACH,EAAM,OAAO,WAAW,IACrB,kBAAC,GAAD;IACI,GAAI;IACJ,OAAO;IACP,MAAM,EAAM;IACZ,SAAS;IACT,QAAQ,EAAM;IACd,SAAS,EAAM;IACH;IACZ,SAAS,EAAS;IAClB,SAAS,EAAM;IACf,WAAW,EAAS;IACpB,YAAY,EAAS;IACrB,YAAY,EAAS;IACrB,aAAa,EAAM;IACnB,YAAY,EAAM,cAAc;IAChC,cAAc,EAAM,gBAAgB;IACpC,cAAc,EAAM,gBAAgB;GACvC,CAAA,IAED,kBAAC,OAAD;IAAK,WAAU;cACV,EAAM,OAAO,KAAK,GAAO,MACtB,kBAAC,OAAD;KAAK,WAAU;eACX,kBAAC,GAAD;MACI,GAAI;MACG;MACA;MACP,MAAM,EAAM;MACZ,YAAY;MACZ,MAAM,EAAM;MACZ,SAAS;MACT,QAAQ,EAAM;MACd,SAAS,EAAM;MACH;MACZ,SAAS,EAAS;MAClB,SAAS,EAAM;MACf,WAAW,EAAS;MACpB,YAAY,EAAS;MACrB,YAAY,EAAS;MACrB,aAAa,EAAM;MACnB,cAAc,EAAM,gBAAgB;MACpC,cAAc,EAAM,gBAAgB;KACvC,CAAA;IACA,GArB4B,SAAS,EAAM,SAqB3C,CACR;GACA,CAAA,CAEI;;CACN,CAAA;AAEvB"}
|
|
@@ -33,7 +33,7 @@ const TFoot = React.forwardRef(({ context, ...props }, ref) => {
|
|
|
33
33
|
return (<tfoot {...props} ref={ref} className="bg-card-background">
|
|
34
34
|
<tr role="row" className="bg-card-background">
|
|
35
35
|
<td colSpan={999} className="h-table-loading-h bg-card-background px-table-cell-px">
|
|
36
|
-
<span className="
|
|
36
|
+
<span className="block h-table-loading-bar-h w-full animate-pulse rounded-table-loading-bar-radius bg-foreground opacity-60"/>
|
|
37
37
|
</td>
|
|
38
38
|
</tr>
|
|
39
39
|
</tfoot>);
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { t as e } from "../../sort-DGmiselV.js";
|
|
2
|
+
import { t } from "../../group-Dl14TJXO.js";
|
|
3
|
+
import { c as n } from "../../table-lib-1bkYSklk.js";
|
|
4
|
+
import { Filter as r } from "./filter.js";
|
|
5
|
+
import { jsx as i, jsxs as a } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/table/metadata.tsx
|
|
7
|
+
var o = (o) => /* @__PURE__ */ i("header", {
|
|
8
|
+
className: "mb-table-metadata-mb min-w-full",
|
|
9
|
+
children: /* @__PURE__ */ a("div", {
|
|
10
|
+
className: "flex min-w-full flex-wrap items-center justify-between gap-x-table-metadata-gap-x gap-y-table-metadata-gap-y",
|
|
11
|
+
children: [/* @__PURE__ */ a("div", {
|
|
12
|
+
className: "items-centeend flex w-fit gap-table-ops-gap whitespace-nowrap py-table-ops-py",
|
|
13
|
+
children: [
|
|
14
|
+
/* @__PURE__ */ i("span", { children: /* @__PURE__ */ i(r, {
|
|
15
|
+
cols: o.cols,
|
|
16
|
+
options: o.options,
|
|
17
|
+
filters: o.filters,
|
|
18
|
+
set: o.setFilters
|
|
19
|
+
}) }),
|
|
20
|
+
/* @__PURE__ */ i("span", { children: /* @__PURE__ */ i(e, {
|
|
21
|
+
options: o.options,
|
|
22
|
+
cols: o.cols,
|
|
23
|
+
sorters: o.sorters,
|
|
24
|
+
set: o.setSorters
|
|
25
|
+
}) }),
|
|
26
|
+
/* @__PURE__ */ i("span", { children: /* @__PURE__ */ i(t, {
|
|
27
|
+
rows: o.rows,
|
|
28
|
+
groups: o.groups,
|
|
29
|
+
setGroups: o.setGroups,
|
|
30
|
+
options: o.options,
|
|
31
|
+
cols: o.cols
|
|
32
|
+
}) })
|
|
33
|
+
]
|
|
34
|
+
}), /* @__PURE__ */ i("ul", {
|
|
35
|
+
className: "flex w-full flex-1 flex-grow flex-row flex-wrap items-center gap-table-filter-gap md:justify-end",
|
|
36
|
+
children: o.filters.map((e) => /* @__PURE__ */ a("li", {
|
|
37
|
+
className: "flex items-center gap-table-inline-gap-tight rounded-table-pill-radius border border-card-border px-table-pill-px py-table-pill-py",
|
|
38
|
+
children: [/* @__PURE__ */ a("span", { children: [
|
|
39
|
+
/* @__PURE__ */ i("span", {
|
|
40
|
+
className: "mr-table-filter-dot-mr inline-block aspect-square size-table-filter-dot-size rounded-full bg-primary",
|
|
41
|
+
"aria-hidden": "true"
|
|
42
|
+
}),
|
|
43
|
+
e.label,
|
|
44
|
+
" ",
|
|
45
|
+
e.operation.label.toLowerCase(),
|
|
46
|
+
":"
|
|
47
|
+
] }), /* @__PURE__ */ a("div", {
|
|
48
|
+
className: "relative w-min min-w-table-metadata-min-w",
|
|
49
|
+
children: [/* @__PURE__ */ i("span", {
|
|
50
|
+
"aria-hidden": "true",
|
|
51
|
+
className: "invisible whitespace-pre p-0",
|
|
52
|
+
children: e.value || " "
|
|
53
|
+
}), /* @__PURE__ */ i("input", {
|
|
54
|
+
type: e.type,
|
|
55
|
+
value: e.value,
|
|
56
|
+
className: "absolute left-0 top-0 m-0 inline-block w-full bg-transparent p-0 placeholder-primary/70 outline-none [appearance:textfield] after:empty:text-primary/70 [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none",
|
|
57
|
+
onChange: (t) => {
|
|
58
|
+
let r = n(t.target);
|
|
59
|
+
o.setFilters((t) => t.map((t) => e.id === t.id ? {
|
|
60
|
+
...t,
|
|
61
|
+
value: r
|
|
62
|
+
} : t));
|
|
63
|
+
}
|
|
64
|
+
})]
|
|
65
|
+
})]
|
|
66
|
+
}, `filter-table-${e.id}`))
|
|
67
|
+
})]
|
|
68
|
+
})
|
|
69
|
+
});
|
|
70
|
+
//#endregion
|
|
71
|
+
export { o as Metadata };
|
|
72
|
+
|
|
73
|
+
//# sourceMappingURL=metadata.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata.js","names":[],"sources":["../../../src/components/table/metadata.tsx"],"sourcesContent":["import { Any } from \"../../types\";\nimport { Filter } from \"./filter\";\nimport { Group } from \"./group\";\nimport { Sort } from \"./sort\";\nimport { TableOperationProps, valueFromType } from \"./table-lib\";\n\nexport const Metadata = <T extends Any>(props: TableOperationProps<T>) => (\n <header className=\"mb-table-metadata-mb min-w-full\">\n <div className=\"flex min-w-full flex-wrap items-center justify-between gap-x-table-metadata-gap-x gap-y-table-metadata-gap-y\">\n <div className=\"items-centeend flex w-fit gap-table-ops-gap whitespace-nowrap py-table-ops-py\">\n <span>\n <Filter cols={props.cols} options={props.options} filters={props.filters} set={props.setFilters} />\n </span>\n <span>\n <Sort options={props.options} cols={props.cols} sorters={props.sorters} set={props.setSorters} />\n </span>\n <span>\n <Group rows={props.rows} groups={props.groups} setGroups={props.setGroups} options={props.options} cols={props.cols} />\n </span>\n </div>\n <ul className=\"flex w-full flex-1 flex-grow flex-row flex-wrap items-center gap-table-filter-gap md:justify-end\">\n {props.filters.map((x) => (\n <li\n key={`filter-table-${x.id}`}\n className=\"flex items-center gap-table-inline-gap-tight rounded-table-pill-radius border border-card-border px-table-pill-px py-table-pill-py\"\n >\n <span>\n <span\n className=\"mr-table-filter-dot-mr inline-block aspect-square size-table-filter-dot-size rounded-full bg-primary\"\n aria-hidden=\"true\"\n />\n {x.label} {x.operation.label.toLowerCase()}:\n </span>\n <div className=\"relative w-min min-w-table-metadata-min-w\">\n <span aria-hidden=\"true\" className=\"invisible whitespace-pre p-0\">\n {x.value || \" \"}\n </span>\n <input\n type={x.type}\n value={x.value as string}\n className=\"absolute left-0 top-0 m-0 inline-block w-full bg-transparent p-0 placeholder-primary/70 outline-none [appearance:textfield] after:empty:text-primary/70 [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none\"\n onChange={(e) => {\n const value = valueFromType(e.target);\n props.setFilters((prev) => prev.map((item) => (x.id === item.id ? { ...item, value } : item)));\n }}\n />\n </div>\n </li>\n ))}\n </ul>\n </div>\n </header>\n);\n"],"mappings":";;;;;;AAMA,IAAa,KAA2B,MACpC,kBAAC,UAAD;CAAQ,WAAU;WACd,kBAAC,OAAD;EAAK,WAAU;YAAf,CACI,kBAAC,OAAD;GAAK,WAAU;aAAf;IACI,kBAAC,QAAD,EAAA,UACI,kBAAC,GAAD;KAAQ,MAAM,EAAM;KAAM,SAAS,EAAM;KAAS,SAAS,EAAM;KAAS,KAAK,EAAM;IAAa,CAAA,EAChG,CAAA;IACN,kBAAC,QAAD,EAAA,UACI,kBAAC,GAAD;KAAM,SAAS,EAAM;KAAS,MAAM,EAAM;KAAM,SAAS,EAAM;KAAS,KAAK,EAAM;IAAa,CAAA,EAC9F,CAAA;IACN,kBAAC,QAAD,EAAA,UACI,kBAAC,GAAD;KAAO,MAAM,EAAM;KAAM,QAAQ,EAAM;KAAQ,WAAW,EAAM;KAAW,SAAS,EAAM;KAAS,MAAM,EAAM;IAAO,CAAA,EACpH,CAAA;GACL;MACL,kBAAC,MAAD;GAAI,WAAU;aACT,EAAM,QAAQ,KAAK,MAChB,kBAAC,MAAD;IAEI,WAAU;cAFd,CAII,kBAAC,QAAD,EAAA,UAAA;KACI,kBAAC,QAAD;MACI,WAAU;MACV,eAAY;KACf,CAAA;KACA,EAAE;KAAM;KAAE,EAAE,UAAU,MAAM,YAAY;KAAE;IACzC,EAAA,CAAA,GACN,kBAAC,OAAD;KAAK,WAAU;eAAf,CACI,kBAAC,QAAD;MAAM,eAAY;MAAO,WAAU;gBAC9B,EAAE,SAAS;KACV,CAAA,GACN,kBAAC,SAAD;MACI,MAAM,EAAE;MACR,OAAO,EAAE;MACT,WAAU;MACV,WAAW,MAAM;OACb,IAAM,IAAQ,EAAc,EAAE,MAAM;OACpC,EAAM,YAAY,MAAS,EAAK,KAAK,MAAU,EAAE,OAAO,EAAK,KAAK;QAAE,GAAG;QAAM;OAAM,IAAI,CAAK,CAAC;MACjG;KACH,CAAA,CACA;MACL;MAxBK,gBAAgB,EAAE,IAwBvB,CACP;EACD,CAAA,CACH;;AACD,CAAA"}
|
|
@@ -16,7 +16,7 @@ export const Metadata = (props) => (<header className="mb-table-metadata-mb min-
|
|
|
16
16
|
</span>
|
|
17
17
|
</div>
|
|
18
18
|
<ul className="flex w-full flex-1 flex-grow flex-row flex-wrap items-center gap-table-filter-gap md:justify-end">
|
|
19
|
-
{props.filters.map((x) => (<li key={`filter-table-${x.id}`} className="
|
|
19
|
+
{props.filters.map((x) => (<li key={`filter-table-${x.id}`} className="flex items-center gap-table-inline-gap-tight rounded-table-pill-radius border border-card-border px-table-pill-px py-table-pill-py">
|
|
20
20
|
<span>
|
|
21
21
|
<span className="mr-table-filter-dot-mr inline-block aspect-square size-table-filter-dot-size rounded-full bg-primary" aria-hidden="true"/>
|
|
22
22
|
{x.label} {x.operation.label.toLowerCase()}:
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { Polymorph as e } from "../core/polymorph.js";
|
|
2
|
+
import { t } from "../../use-translations-BE4PuhLm.js";
|
|
3
|
+
import { Fragment as n, useId as r, useMemo as i } from "react";
|
|
4
|
+
import { jsx as a, jsxs as o } from "react/jsx-runtime";
|
|
5
|
+
//#region src/components/table/pagination.tsx
|
|
6
|
+
function s(e, t) {
|
|
7
|
+
if (!e || !t) return [];
|
|
8
|
+
let n = [1];
|
|
9
|
+
if (e === 1 && t === 1) return n;
|
|
10
|
+
e > 4 && n.push("-");
|
|
11
|
+
let r = e - 2, i = e + 2;
|
|
12
|
+
for (let e = r > 2 ? r : 2; e <= Math.min(t, i); e++) n.push(e);
|
|
13
|
+
let a = t - 2;
|
|
14
|
+
return i + 1 !== a && i + 1 < t && n.push("_"), i < t && (n.push(t - 2), n.push(t - 1), n.push(t)), Array.from(new Set(n));
|
|
15
|
+
}
|
|
16
|
+
var c = (c) => {
|
|
17
|
+
let l = r(), u = t(), d = i(() => s(c.current, c.pages), [c]), f = c.current < c.pages, p = c.asLink ?? "button";
|
|
18
|
+
return /* @__PURE__ */ o("footer", {
|
|
19
|
+
className: "text-typography-sm flex flex-wrap items-center justify-center gap-table-pag-gap border-t-muted p-table-pag-p lg:flex-nowrap lg:justify-between",
|
|
20
|
+
children: [/* @__PURE__ */ a("p", { children: /* @__PURE__ */ a(u.tablePaginationFooter, {
|
|
21
|
+
...c,
|
|
22
|
+
sizes: c.sizes,
|
|
23
|
+
select: c.onChangeSize && Array.isArray(c.sizes) ? /* @__PURE__ */ o(n, { children: [
|
|
24
|
+
/* @__PURE__ */ a("label", {
|
|
25
|
+
htmlFor: l,
|
|
26
|
+
children: u.tablePaginationSelectLabel
|
|
27
|
+
}),
|
|
28
|
+
/* @__PURE__ */ a("select", {
|
|
29
|
+
id: l,
|
|
30
|
+
value: c.size,
|
|
31
|
+
className: "cursor-pointer bg-transparent",
|
|
32
|
+
onChange: (e) => {
|
|
33
|
+
c.onChangeSize?.(Number(e.target.value));
|
|
34
|
+
},
|
|
35
|
+
children: c.sizes.map((e) => /* @__PURE__ */ a("option", {
|
|
36
|
+
value: e,
|
|
37
|
+
children: e
|
|
38
|
+
}, `pagination-opt-${e}`))
|
|
39
|
+
}),
|
|
40
|
+
" "
|
|
41
|
+
] }) : null
|
|
42
|
+
}) }), /* @__PURE__ */ a("nav", { children: /* @__PURE__ */ o("ul", {
|
|
43
|
+
className: "flex items-center gap-table-pag-items-gap",
|
|
44
|
+
children: [
|
|
45
|
+
c.current > 1 ? /* @__PURE__ */ a("li", { children: /* @__PURE__ */ a(e, {
|
|
46
|
+
as: p,
|
|
47
|
+
href: "previous",
|
|
48
|
+
className: "",
|
|
49
|
+
children: u.tablePaginationPrevious
|
|
50
|
+
}) }) : null,
|
|
51
|
+
d.map((t) => t === null ? null : /* @__PURE__ */ a(n, { children: typeof t == "string" ? /* @__PURE__ */ a("li", { children: "..." }) : /* @__PURE__ */ a("li", { children: /* @__PURE__ */ a(e, {
|
|
52
|
+
href: t,
|
|
53
|
+
as: p,
|
|
54
|
+
className: `cursor-pointer border-b-2 px-table-pag-item-px py-table-pag-item-py proportional-nums transition-colors hover:border-primary-subtle hover:text-primary-subtle ${t === c.current ? "border-primary text-primary" : "border-transparent"}`,
|
|
55
|
+
children: t
|
|
56
|
+
}) }) }, `pagination-${t}`)),
|
|
57
|
+
f ? /* @__PURE__ */ a("li", { children: /* @__PURE__ */ a(e, {
|
|
58
|
+
as: p,
|
|
59
|
+
href: "next",
|
|
60
|
+
className: "",
|
|
61
|
+
children: u.tablePaginationNext
|
|
62
|
+
}) }) : null
|
|
63
|
+
]
|
|
64
|
+
}) })]
|
|
65
|
+
});
|
|
66
|
+
};
|
|
67
|
+
//#endregion
|
|
68
|
+
export { c as Pagination, s as createPaginationItems };
|
|
69
|
+
|
|
70
|
+
//# sourceMappingURL=pagination.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pagination.js","names":[],"sources":["../../../src/components/table/pagination.tsx"],"sourcesContent":["import React, { Fragment, useId, useMemo } from \"react\";\nimport { useTranslations } from \"../../hooks/use-translations\";\nimport { Polymorph } from \"../core/polymorph\";\nimport { TablePagination } from \"./table-lib\";\n\nexport function createPaginationItems(current: number, max: number) {\n if (!current || !max) return [];\n const items: Array<string | number> = [1];\n if (current === 1 && max === 1) return items;\n if (current > 4) items.push(\"-\");\n const r = 2;\n const r1 = current - r;\n const r2 = current + r;\n for (let i = r1 > 2 ? r1 : 2; i <= Math.min(max, r2); i++) items.push(i);\n const p2 = max - 2;\n if (r2 + 1 !== p2) {\n if (r2 + 1 < max) items.push(\"_\");\n }\n if (r2 < max) {\n items.push(max - 2);\n items.push(max - 1);\n items.push(max);\n }\n return Array.from(new Set(items));\n}\n\nexport const Pagination = (pagination: TablePagination) => {\n const id = useId();\n const translation = useTranslations();\n const pageNavigation = useMemo(() => createPaginationItems(pagination.current, pagination.pages), [pagination]);\n const hasNext = pagination.current < pagination.pages;\n const Link: React.ElementType = pagination.asLink ?? \"button\";\n\n return (\n <footer className=\"text-typography-sm flex flex-wrap items-center justify-center gap-table-pag-gap border-t-muted p-table-pag-p lg:flex-nowrap lg:justify-between\">\n <p>\n <translation.tablePaginationFooter\n {...pagination}\n sizes={pagination.sizes}\n select={\n pagination.onChangeSize && Array.isArray(pagination.sizes) ? (\n <Fragment>\n <label htmlFor={id}>{translation.tablePaginationSelectLabel}</label>\n <select\n id={id}\n value={pagination.size}\n className=\"cursor-pointer bg-transparent\"\n onChange={(e) => {\n pagination.onChangeSize?.(Number(e.target.value));\n }}\n >\n {pagination.sizes.map((value) => (\n <option key={`pagination-opt-${value}`} value={value}>\n {value}\n </option>\n ))}\n </select>{\" \"}\n </Fragment>\n ) : null\n }\n />\n </p>\n <nav>\n <ul className=\"flex items-center gap-table-pag-items-gap\">\n {pagination.current > 1 ? (\n <li>\n <Polymorph as={Link} href=\"previous\" className=\"\">\n {translation.tablePaginationPrevious}\n </Polymorph>\n </li>\n ) : null}\n {pageNavigation.map((x) => {\n if (x === null) return null;\n return (\n <Fragment key={`pagination-${x}`}>\n {typeof x === \"string\" ? (\n <li>...</li>\n ) : (\n <li>\n <Polymorph\n href={x}\n as={Link}\n className={`cursor-pointer border-b-2 px-table-pag-item-px py-table-pag-item-py proportional-nums transition-colors hover:border-primary-subtle hover:text-primary-subtle ${x === pagination.current ? \"border-primary text-primary\" : \"border-transparent\"}`}\n >\n {x}\n </Polymorph>\n </li>\n )}\n </Fragment>\n );\n })}\n {hasNext ? (\n <li>\n <Polymorph as={Link} href=\"next\" className=\"\">\n {translation.tablePaginationNext}\n </Polymorph>\n </li>\n ) : null}\n </ul>\n </nav>\n </footer>\n );\n};\n"],"mappings":";;;;;AAKA,SAAgB,EAAsB,GAAiB,GAAa;CAChE,IAAI,CAAC,KAAW,CAAC,GAAK,OAAO,CAAC;CAC9B,IAAM,IAAgC,CAAC,CAAC;CACxC,IAAI,MAAY,KAAK,MAAQ,GAAG,OAAO;CACvC,AAAI,IAAU,KAAG,EAAM,KAAK,GAAG;CAC/B,IACM,IAAK,IAAU,GACf,IAAK,IAAU;CACrB,KAAK,IAAI,IAAI,IAAK,IAAI,IAAK,GAAG,KAAK,KAAK,IAAI,GAAK,CAAE,GAAG,KAAK,EAAM,KAAK,CAAC;CACvE,IAAM,IAAK,IAAM;CASjB,OARI,IAAK,MAAM,KACP,IAAK,IAAI,KAAK,EAAM,KAAK,GAAG,GAEhC,IAAK,MACL,EAAM,KAAK,IAAM,CAAC,GAClB,EAAM,KAAK,IAAM,CAAC,GAClB,EAAM,KAAK,CAAG,IAEX,MAAM,KAAK,IAAI,IAAI,CAAK,CAAC;AACpC;AAEA,IAAa,KAAc,MAAgC;CACvD,IAAM,IAAK,EAAM,GACX,IAAc,EAAgB,GAC9B,IAAiB,QAAc,EAAsB,EAAW,SAAS,EAAW,KAAK,GAAG,CAAC,CAAU,CAAC,GACxG,IAAU,EAAW,UAAU,EAAW,OAC1C,IAA0B,EAAW,UAAU;CAErD,OACI,kBAAC,UAAD;EAAQ,WAAU;YAAlB,CACI,kBAAC,KAAD,EAAA,UACI,kBAAC,EAAY,uBAAb;GACI,GAAI;GACJ,OAAO,EAAW;GAClB,QACI,EAAW,gBAAgB,MAAM,QAAQ,EAAW,KAAK,IACrD,kBAAC,GAAD,EAAA,UAAA;IACI,kBAAC,SAAD;KAAO,SAAS;eAAK,EAAY;IAAkC,CAAA;IACnE,kBAAC,UAAD;KACQ;KACJ,OAAO,EAAW;KAClB,WAAU;KACV,WAAW,MAAM;MACb,EAAW,eAAe,OAAO,EAAE,OAAO,KAAK,CAAC;KACpD;eAEC,EAAW,MAAM,KAAK,MACnB,kBAAC,UAAD;MAA+C;gBAC1C;KACG,GAFK,kBAAkB,GAEvB,CACX;IACG,CAAA;IAAE;GACJ,EAAA,CAAA,IACV;EAEX,CAAA,EACF,CAAA,GACH,kBAAC,OAAD,EAAA,UACI,kBAAC,MAAD;GAAI,WAAU;aAAd;IACK,EAAW,UAAU,IAClB,kBAAC,MAAD,EAAA,UACI,kBAAC,GAAD;KAAW,IAAI;KAAM,MAAK;KAAW,WAAU;eAC1C,EAAY;IACN,CAAA,EACX,CAAA,IACJ;IACH,EAAe,KAAK,MACb,MAAM,OAAa,OAEnB,kBAAC,GAAD,EAAA,UACK,OAAO,KAAM,WACV,kBAAC,MAAD,EAAA,UAAI,MAAO,CAAA,IAEX,kBAAC,MAAD,EAAA,UACI,kBAAC,GAAD;KACI,MAAM;KACN,IAAI;KACJ,WAAW,iKAAiK,MAAM,EAAW,UAAU,gCAAgC;eAEtO;IACM,CAAA,EACX,CAAA,EAEF,GAdK,cAAc,GAcnB,CAEjB;IACA,IACG,kBAAC,MAAD,EAAA,UACI,kBAAC,GAAD;KAAW,IAAI;KAAM,MAAK;KAAO,WAAU;eACtC,EAAY;IACN,CAAA,EACX,CAAA,IACJ;GACJ;KACH,CAAA,CACD;;AAEhB"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { p as e } from "../../dom-Bn4wY_Zx.js";
|
|
2
|
+
import { a as t } from "../../fns-KbsWlOTG.js";
|
|
3
|
+
import { SkeletonCell as n } from "../display/skeleton.js";
|
|
4
|
+
import { Fragment as r, createElement as i, useRef as a, useState as o } from "react";
|
|
5
|
+
import { jsx as s } from "react/jsx-runtime";
|
|
6
|
+
//#region src/components/table/row.tsx
|
|
7
|
+
var c = (e) => {
|
|
8
|
+
let t = a(null), n = a(null), [r, i] = o("opacity-0"), c = r === "opacity-0";
|
|
9
|
+
return /* @__PURE__ */ s("div", {
|
|
10
|
+
ref: t,
|
|
11
|
+
onMouseEnter: () => {
|
|
12
|
+
let e = n.current, r = t.current;
|
|
13
|
+
e !== null && r !== null && (r.style.left = `-${e.getBoundingClientRect().width + 4}px`), i("opacity-100");
|
|
14
|
+
},
|
|
15
|
+
onMouseLeave: () => i("opacity-0"),
|
|
16
|
+
"data-component": "cell-aside",
|
|
17
|
+
inert: c ? !0 : void 0,
|
|
18
|
+
tabIndex: c ? -1 : void 0,
|
|
19
|
+
className: `group-table-cell-aside absolute inset-0 top-0 flex h-full w-full items-stretch transition-opacity duration-300 ease-in-out ${r}`,
|
|
20
|
+
children: /* @__PURE__ */ s("div", {
|
|
21
|
+
ref: n,
|
|
22
|
+
className: "isolate block",
|
|
23
|
+
children: e.children
|
|
24
|
+
})
|
|
25
|
+
});
|
|
26
|
+
}, l = (a, o, l) => {
|
|
27
|
+
let u = l.cols, d = l.loading;
|
|
28
|
+
return /* @__PURE__ */ s(r, { children: u.map((u, f) => {
|
|
29
|
+
let p = `${f},${a}`, m = t(o, u.id), h = u.Element, g = u.cellProps?.className || "", _ = f === 0 && l.Aside && d === !1, v = l.Aside;
|
|
30
|
+
return /* @__PURE__ */ i("td", {
|
|
31
|
+
...u.cellProps,
|
|
32
|
+
role: "cell",
|
|
33
|
+
"data-matrix": p,
|
|
34
|
+
key: `accessor-${a}-${f}`,
|
|
35
|
+
className: `typography group-table-cell flex border-collapse flex-col whitespace-pre-wrap border border-y border-b border-table-border p-table-cell-padding md:table-cell md:border-b-0 md:border-r md:border-l-transparent md:last:border-r-transparent ${g}`
|
|
36
|
+
}, _ ? /* @__PURE__ */ s(c, { children: /* @__PURE__ */ s(v, {
|
|
37
|
+
col: u,
|
|
38
|
+
row: o,
|
|
39
|
+
rowIndex: a
|
|
40
|
+
}) }) : null, /* @__PURE__ */ s("span", {
|
|
41
|
+
className: "text-typography-sm block font-bold leading-tight md:hidden",
|
|
42
|
+
children: u.thead
|
|
43
|
+
}), /* @__PURE__ */ s("span", {
|
|
44
|
+
className: "relative",
|
|
45
|
+
children: d ? n : h ? /* @__PURE__ */ s(r, { children: /* @__PURE__ */ s(h, {
|
|
46
|
+
row: o,
|
|
47
|
+
matrix: p,
|
|
48
|
+
col: u,
|
|
49
|
+
rowIndex: a,
|
|
50
|
+
value: m
|
|
51
|
+
}) }) : /* @__PURE__ */ s(r, { children: e.nil(m) ? "" : m })
|
|
52
|
+
}));
|
|
53
|
+
}) });
|
|
54
|
+
};
|
|
55
|
+
//#endregion
|
|
56
|
+
export { l as Row };
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=row.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"row.js","names":[],"sources":["../../../src/components/table/row.tsx"],"sourcesContent":["import React, { Fragment, PropsWithChildren, useRef, useState } from \"react\";\nimport { Is } from \"sidekicker\";\nimport { path } from \"../../lib/fns\";\nimport { SkeletonCell } from \"../display/skeleton\";\nimport { CellAsideElement, CellPropsElement, Col, ColMatrix } from \"./table-lib\";\n\ntype ItemContentContext<T extends Record<string, unknown>> = {\n cols: Col<T>[];\n loading?: boolean;\n loadingMore?: boolean;\n Aside?: React.FC<CellAsideElement<T>>;\n};\n\nconst RowAside = (props: PropsWithChildren) => {\n const parentRef = useRef<HTMLDivElement>(null);\n const ref = useRef<HTMLDivElement>(null);\n const [className, setClassName] = useState(\"opacity-0\");\n const ariaHidden = className === \"opacity-0\";\n\n const onLeave = () => setClassName(\"opacity-0\");\n\n const onEnter = () => {\n const child = ref.current;\n const parent = parentRef.current;\n if (child !== null && parent !== null) {\n parent.style.left = `-${child.getBoundingClientRect().width + 4}px`;\n }\n setClassName(\"opacity-100\");\n };\n\n return (\n <div\n ref={parentRef}\n onMouseEnter={onEnter}\n onMouseLeave={onLeave}\n data-component=\"cell-aside\"\n inert={ariaHidden ? true : undefined}\n tabIndex={ariaHidden ? -1 : undefined}\n className={`group-table-cell-aside absolute inset-0 top-0 flex h-full w-full items-stretch transition-opacity duration-300 ease-in-out ${className}`}\n >\n <div ref={ref} className=\"isolate block\">\n {props.children}\n </div>\n </div>\n );\n};\n\nexport const Row = <T extends Record<string, unknown>>(index: number, row: T, context: ItemContentContext<T>) => {\n const cols = context.cols;\n const loading = context.loading;\n return (\n <Fragment>\n {cols.map((col, colIndex) => {\n const matrix: ColMatrix = `${colIndex},${index}`;\n const value = path(row, col.id);\n const Component = col.Element as React.FC<CellPropsElement<T, typeof col.id>> | undefined;\n const className = col.cellProps?.className || \"\";\n const exposeAside = colIndex === 0 && context.Aside && loading === false;\n const Aside = context.Aside!;\n return (\n <td\n {...col.cellProps}\n role=\"cell\"\n data-matrix={matrix}\n key={`accessor-${index}-${colIndex}`}\n className={`typography group-table-cell flex border-collapse flex-col whitespace-pre-wrap border border-y border-b border-table-border p-table-cell-padding md:table-cell md:border-b-0 md:border-r md:border-l-transparent md:last:border-r-transparent ${className}`}\n >\n {exposeAside ? (\n <RowAside>\n <Aside col={col} row={row} rowIndex={index} />\n </RowAside>\n ) : null}\n <span className=\"text-typography-sm block font-bold leading-tight md:hidden\">{col.thead}</span>\n <span className=\"relative\">\n {loading ? (\n SkeletonCell\n ) : Component ? (\n <Fragment>\n <Component\n row={row}\n matrix={matrix}\n col={col}\n rowIndex={index}\n value={value as CellPropsElement<T, typeof col.id>[\"value\"]}\n />\n </Fragment>\n ) : (\n <Fragment>{Is.nil(value) ? \"\" : (value as React.ReactNode)}</Fragment>\n )}\n </span>\n </td>\n );\n })}\n </Fragment>\n );\n};\n"],"mappings":";;;;;;AAaA,IAAM,KAAY,MAA6B;CAC3C,IAAM,IAAY,EAAuB,IAAI,GACvC,IAAM,EAAuB,IAAI,GACjC,CAAC,GAAW,KAAgB,EAAS,WAAW,GAChD,IAAa,MAAc;CAajC,OACI,kBAAC,OAAD;EACI,KAAK;EACL,oBAZc;GAClB,IAAM,IAAQ,EAAI,SACZ,IAAS,EAAU;GAIzB,AAHI,MAAU,QAAQ,MAAW,SAC7B,EAAO,MAAM,OAAO,IAAI,EAAM,sBAAsB,EAAE,QAAQ,EAAE,MAEpE,EAAa,aAAa;EAC9B;EAMQ,oBAfc,EAAa,WAAW;EAgBtC,kBAAe;EACf,OAAO,IAAa,KAAO,KAAA;EAC3B,UAAU,IAAa,KAAK,KAAA;EAC5B,WAAW,8HAA8H;YAEzI,kBAAC,OAAD;GAAU;GAAK,WAAU;aACpB,EAAM;EACN,CAAA;CACJ,CAAA;AAEb,GAEa,KAA0C,GAAe,GAAQ,MAAmC;CAC7G,IAAM,IAAO,EAAQ,MACf,IAAU,EAAQ;CACxB,OACI,kBAAC,GAAD,EAAA,UACK,EAAK,KAAK,GAAK,MAAa;EACzB,IAAM,IAAoB,GAAG,EAAS,GAAG,KACnC,IAAQ,EAAK,GAAK,EAAI,EAAE,GACxB,IAAY,EAAI,SAChB,IAAY,EAAI,WAAW,aAAa,IACxC,IAAc,MAAa,KAAK,EAAQ,SAAS,MAAY,IAC7D,IAAQ,EAAQ;EACtB,OACI,kBAAC,MAAD;GACI,GAAI,EAAI;GACR,MAAK;GACL,eAAa;GACb,KAAK,YAAY,EAAM,GAAG;GAC1B,WAAW,gPAAgP;EAyB3P,GAvBC,IACG,kBAAC,GAAD,EAAA,UACI,kBAAC,GAAD;GAAY;GAAU;GAAK,UAAU;EAAQ,CAAA,EACvC,CAAA,IACV,MACJ,kBAAC,QAAD;GAAM,WAAU;aAA8D,EAAI;EAAY,CAAA,GAC9F,kBAAC,QAAD;GAAM,WAAU;aACX,IACG,IACA,IACA,kBAAC,GAAD,EAAA,UACI,kBAAC,GAAD;IACS;IACG;IACH;IACL,UAAU;IACH;GACV,CAAA,EACK,CAAA,IAEV,kBAAC,GAAD,EAAA,UAAW,EAAG,IAAI,CAAK,IAAI,KAAM,EAAoC,CAAA;EAEvE,CAAA,CACN;CAEZ,CAAC,EACK,CAAA;AAElB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sort.d.ts","sourceRoot":"","sources":["../../../src/components/table/sort.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,GAAG,EAAY,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAErF,KAAK,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,MAAM,CAAC,SAAS,MAAM,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC;AAE/E,aAAK,KAAK;IACN,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,SAAS,cAAc;CAC1B;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,GAAG,IAAI;IAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAAC,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAY/F,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,MAAM,CAAC,CAAC,CAAC,EAAE,QAGvE,CAAC;AAEF,KAAK,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,kBAAkB,CAC1C,CAAC,EACD;IACI,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC1D,CACJ,CAAC;AASF,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,GAAG,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,
|
|
1
|
+
{"version":3,"file":"sort.d.ts","sourceRoot":"","sources":["../../../src/components/table/sort.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA6B,MAAM,OAAO,CAAC;AAGlD,OAAO,EAAE,GAAG,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGzC,OAAO,EAAE,GAAG,EAAY,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAErF,KAAK,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,MAAM,CAAC,SAAS,MAAM,CAAC,SAAS,MAAM,GAAG,CAAC,GAAG,KAAK,CAAC;AAE/E,aAAK,KAAK;IACN,GAAG,QAAQ;IACX,IAAI,SAAS;IACb,SAAS,cAAc;CAC1B;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,GAAG,IAAI;IAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;IAAC,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,CAAC;AAY/F,eAAO,MAAM,SAAS,GAAI,CAAC,SAAS,GAAG,EAAE,OAAO,CAAC,EAAE,EAAE,QAAQ,MAAM,CAAC,CAAC,CAAC,EAAE,QAGvE,CAAC;AAEF,KAAK,KAAK,CAAC,CAAC,SAAS,GAAG,IAAI,kBAAkB,CAC1C,CAAC,EACD;IACI,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;IACf,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC;IACrB,GAAG,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CAC1D,CACJ,CAAC;AASF,eAAO,MAAM,IAAI,GAAI,CAAC,SAAS,GAAG,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC,sBA4ElD,CAAC;AAEF,KAAK,eAAe,CAAC,CAAC,SAAS,GAAG,IAAI,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,SAAS,GAAG,YAAY,CAAC,GAAG;IAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC;AAE/G,eAAO,MAAM,UAAU,GAAI,CAAC,SAAS,GAAG,EAAE,OAAO,eAAe,CAAC,CAAC,CAAC,sBAkClE,CAAC"}
|
|
@@ -63,7 +63,9 @@ export const Sort = (props) => {
|
|
|
63
63
|
<Select options={props.options} value={sorter.value} onChange={onSetSorter(sorter.id)} title={translation.tableSortOrderInputTitle} placeholder={translation.tableSortOrderInputPlaceholder}/>
|
|
64
64
|
<Select onChange={onSortOrderType(sorter.id)} value={sorter.type} options={orderOptions} title={translation.tableSortTypeInputTitle} placeholder={translation.tableSortTypeInputPlaceholder}/>
|
|
65
65
|
<button className="mt-table-groups-mt" data-id={sorter.id} onClick={onDelete}>
|
|
66
|
-
<
|
|
66
|
+
<span className="text-danger">
|
|
67
|
+
<TrashIcon aria-hidden="true" size={14}/>
|
|
68
|
+
</span>
|
|
67
69
|
</button>
|
|
68
70
|
</li>);
|
|
69
71
|
})}
|
|
@@ -27,6 +27,10 @@ export declare const defaultTranslations: {
|
|
|
27
27
|
pageCalendarEventAt: (title: string, time: string) => string;
|
|
28
28
|
commandPaletteEmpty: string;
|
|
29
29
|
commandPaletteLoading: string;
|
|
30
|
+
commandPaletteResults: string;
|
|
31
|
+
commandPaletteSearchLabel: string;
|
|
32
|
+
commandPaletteSearchPlaceholder: string;
|
|
33
|
+
commandPaletteTitle: string;
|
|
30
34
|
datePickerCalendarButtonLabel: string;
|
|
31
35
|
emptyDataMessage: string;
|
|
32
36
|
inputCaretDown: string;
|
|
@@ -57,8 +61,12 @@ export declare const defaultTranslations: {
|
|
|
57
61
|
tableFilterTypeStartsWith: string;
|
|
58
62
|
tableFilterValuePlaceholder: string;
|
|
59
63
|
tableFilterValueTitle: string;
|
|
64
|
+
tableFilterDeleteLabel: (label: string) => string;
|
|
60
65
|
tableGroupLabel: string;
|
|
61
66
|
tableGroupLabelWithCount: string;
|
|
67
|
+
tableGroupOrderTitle: string;
|
|
68
|
+
tableGroupPlaceholder: string;
|
|
69
|
+
tableGroupTypeTitle: string;
|
|
62
70
|
tablePaginationFooter: (pagination: {
|
|
63
71
|
pages: number;
|
|
64
72
|
totalItems: number;
|
|
@@ -84,11 +92,21 @@ export declare const defaultTranslations: {
|
|
|
84
92
|
n: number;
|
|
85
93
|
}) => string;
|
|
86
94
|
uploadDialogTitle: string;
|
|
95
|
+
fileUploadRemoveFile: (name: string) => string;
|
|
96
|
+
fileUploadUploadButtonLabel: (label: string) => string;
|
|
97
|
+
fileUploadViewFile: (name: string) => string;
|
|
98
|
+
dialogResizeLabel: string;
|
|
99
|
+
dialogResizeInstructions: string;
|
|
100
|
+
modalConfirmCancel: string;
|
|
101
|
+
modalConfirmConfirm: string;
|
|
102
|
+
modalConfirmTitle: string;
|
|
87
103
|
datepickerPlaceholder: (_: string) => string;
|
|
88
104
|
spinnerLoading: string;
|
|
89
105
|
skeletonLoading: string;
|
|
90
106
|
closeButton: string;
|
|
91
107
|
fileUploadZoneLabel: string;
|
|
108
|
+
listCloseDetails: string;
|
|
109
|
+
listOpenDetails: (title: string) => string;
|
|
92
110
|
};
|
|
93
111
|
export type Translations = typeof defaultTranslations;
|
|
94
112
|
//# sourceMappingURL=default-translations.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-translations.d.ts","sourceRoot":"","sources":["../../src/config/default-translations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;+BAgBD,MAAM;;gCAEL,MAAM;;;;;;gCAMN,MAAM;iCACL,MAAM,QAAQ,MAAM
|
|
1
|
+
{"version":3,"file":"default-translations.d.ts","sourceRoot":"","sources":["../../src/config/default-translations.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAExC,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;+BAgBD,MAAM;;gCAEL,MAAM;;;;;;gCAMN,MAAM;iCACL,MAAM,QAAQ,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oCAqCjB,MAAM;;;;;;wCAMF;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,KAAK,CAAC,SAAS,CAAA;KAAE;;;;;;;;;;;;;;;4BAqB7G;QAAE,CAAC,EAAE,MAAM,CAAA;KAAE;;iCAER,MAAM;yCACE,MAAM;+BAChB,MAAM;;;;;;+BAON,MAAM;;;;;;6BAMR,MAAM;CAClC,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,OAAO,mBAAmB,CAAC"}
|
|
@@ -27,6 +27,10 @@ export const defaultTranslations = {
|
|
|
27
27
|
pageCalendarEventAt: (title, time) => `${title} at ${time}`,
|
|
28
28
|
commandPaletteEmpty: "Nothing here...",
|
|
29
29
|
commandPaletteLoading: "Loading...",
|
|
30
|
+
commandPaletteResults: "Results",
|
|
31
|
+
commandPaletteSearchLabel: "Command palette search",
|
|
32
|
+
commandPaletteSearchPlaceholder: "Search for...",
|
|
33
|
+
commandPaletteTitle: "Command palette",
|
|
30
34
|
datePickerCalendarButtonLabel: "Click to open a date picker",
|
|
31
35
|
emptyDataMessage: "No data",
|
|
32
36
|
inputCaretDown: "Click to see all options",
|
|
@@ -57,8 +61,12 @@ export const defaultTranslations = {
|
|
|
57
61
|
tableFilterTypeStartsWith: "Starts with",
|
|
58
62
|
tableFilterValuePlaceholder: "Something...",
|
|
59
63
|
tableFilterValueTitle: "Value",
|
|
64
|
+
tableFilterDeleteLabel: (label) => `Delete filter ${label}`,
|
|
60
65
|
tableGroupLabel: "Group",
|
|
61
66
|
tableGroupLabelWithCount: "Group",
|
|
67
|
+
tableGroupOrderTitle: "Order groups",
|
|
68
|
+
tableGroupPlaceholder: "Group by...",
|
|
69
|
+
tableGroupTypeTitle: "Group type",
|
|
62
70
|
tablePaginationFooter: (pagination) => (<Fragment>
|
|
63
71
|
{pagination.current} to {pagination.pages} of {pagination.totalItems} items.{Array.isArray(pagination.sizes) ? pagination.select : null}{" "}
|
|
64
72
|
per page.
|
|
@@ -79,9 +87,19 @@ export const defaultTranslations = {
|
|
|
79
87
|
uploadIdleButton: "Choose your files",
|
|
80
88
|
uploadDragging: (props) => `Dragging ${props.n} ${props.n > 0 ? "files" : "file"}`,
|
|
81
89
|
uploadDialogTitle: "Details of your file",
|
|
90
|
+
fileUploadRemoveFile: (name) => `Remove ${name}`,
|
|
91
|
+
fileUploadUploadButtonLabel: (label) => `Upload ${label}`,
|
|
92
|
+
fileUploadViewFile: (name) => `View ${name}`,
|
|
93
|
+
dialogResizeLabel: "Resize modal",
|
|
94
|
+
dialogResizeInstructions: "Use arrow keys to resize the modal",
|
|
95
|
+
modalConfirmCancel: "Cancel",
|
|
96
|
+
modalConfirmConfirm: "Confirm",
|
|
97
|
+
modalConfirmTitle: "Confirmation",
|
|
82
98
|
datepickerPlaceholder: (_) => "day/month/year",
|
|
83
99
|
spinnerLoading: "Loading",
|
|
84
100
|
skeletonLoading: "Loading content",
|
|
85
101
|
closeButton: "Close",
|
|
86
102
|
fileUploadZoneLabel: "File upload area. Drag files here or press Enter to browse.",
|
|
103
|
+
listCloseDetails: "Close details",
|
|
104
|
+
listOpenDetails: (title) => `Open details for ${title}`,
|
|
87
105
|
};
|