@medusajs/ui 4.0.5-preview-20250211091350 → 4.0.5-snapshot-20250127145424
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/cjs/blocks/data-table/components/data-table-action-cell.d.ts.map +1 -1
- package/dist/cjs/blocks/data-table/components/data-table-action-cell.js +1 -1
- package/dist/cjs/blocks/data-table/components/data-table-action-cell.js.map +1 -1
- package/dist/cjs/blocks/data-table/components/data-table-select-cell.d.ts.map +1 -1
- package/dist/cjs/blocks/data-table/components/data-table-select-cell.js.map +1 -1
- package/dist/cjs/blocks/data-table/components/data-table-table.js +4 -4
- package/dist/cjs/blocks/data-table/components/data-table-table.js.map +1 -1
- package/dist/cjs/blocks/data-table/index.d.ts +1 -1
- package/dist/cjs/blocks/data-table/index.d.ts.map +1 -1
- package/dist/cjs/blocks/data-table/index.js.map +1 -1
- package/dist/cjs/blocks/data-table/types.d.ts +1 -2
- package/dist/cjs/blocks/data-table/types.d.ts.map +1 -1
- package/dist/cjs/blocks/data-table/types.js.map +1 -1
- package/dist/cjs/blocks/data-table/use-data-table.d.ts +1 -2
- package/dist/cjs/blocks/data-table/use-data-table.d.ts.map +1 -1
- package/dist/cjs/blocks/data-table/use-data-table.js +1 -2
- package/dist/cjs/blocks/data-table/use-data-table.js.map +1 -1
- package/dist/cjs/components/alert/alert.d.ts.map +1 -1
- package/dist/cjs/components/alert/alert.js +0 -1
- package/dist/cjs/components/alert/alert.js.map +1 -1
- package/dist/cjs/components/avatar/avatar.d.ts +2 -2
- package/dist/cjs/components/avatar/avatar.d.ts.map +1 -1
- package/dist/cjs/components/avatar/avatar.js +4 -4
- package/dist/cjs/components/avatar/avatar.js.map +1 -1
- package/dist/cjs/components/badge/badge.d.ts.map +1 -1
- package/dist/cjs/components/badge/badge.js +2 -2
- package/dist/cjs/components/badge/badge.js.map +1 -1
- package/dist/cjs/components/button/button.d.ts.map +1 -1
- package/dist/cjs/components/button/button.js +2 -2
- package/dist/cjs/components/button/button.js.map +1 -1
- package/dist/cjs/components/calender/calendar.d.ts.map +1 -1
- package/dist/cjs/components/calender/calendar.js +0 -1
- package/dist/cjs/components/calender/calendar.js.map +1 -1
- package/dist/cjs/components/checkbox/checkbox.d.ts +2 -2
- package/dist/cjs/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/cjs/components/checkbox/checkbox.js +3 -3
- package/dist/cjs/components/checkbox/checkbox.js.map +1 -1
- package/dist/cjs/components/checkbox/types.d.ts +2 -2
- package/dist/cjs/components/checkbox/types.d.ts.map +1 -1
- package/dist/cjs/components/checkbox/types.js.map +1 -1
- package/dist/cjs/components/command-bar/command-bar.d.ts.map +1 -1
- package/dist/cjs/components/command-bar/command-bar.js +7 -10
- package/dist/cjs/components/command-bar/command-bar.js.map +1 -1
- package/dist/cjs/components/copy/copy.js +2 -2
- package/dist/cjs/components/copy/copy.js.map +1 -1
- package/dist/cjs/components/drawer/drawer.d.ts +9 -9
- package/dist/cjs/components/drawer/drawer.d.ts.map +1 -1
- package/dist/cjs/components/drawer/drawer.js +10 -10
- package/dist/cjs/components/drawer/drawer.js.map +1 -1
- package/dist/cjs/components/dropdown-menu/dropdown-menu.d.ts +14 -14
- package/dist/cjs/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
- package/dist/cjs/components/dropdown-menu/dropdown-menu.js +18 -18
- package/dist/cjs/components/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/cjs/components/focus-modal/focus-modal.d.ts +9 -9
- package/dist/cjs/components/focus-modal/focus-modal.d.ts.map +1 -1
- package/dist/cjs/components/focus-modal/focus-modal.js +10 -10
- package/dist/cjs/components/focus-modal/focus-modal.js.map +1 -1
- package/dist/cjs/components/hint/hint.js.map +1 -1
- package/dist/cjs/components/icon-badge/icon-badge.d.ts.map +1 -1
- package/dist/cjs/components/icon-badge/icon-badge.js +2 -2
- package/dist/cjs/components/icon-badge/icon-badge.js.map +1 -1
- package/dist/cjs/components/icon-button/icon-button.d.ts.map +1 -1
- package/dist/cjs/components/icon-button/icon-button.js +2 -2
- package/dist/cjs/components/icon-button/icon-button.js.map +1 -1
- package/dist/cjs/components/label/label.d.ts.map +1 -1
- package/dist/cjs/components/label/label.js +2 -2
- package/dist/cjs/components/label/label.js.map +1 -1
- package/dist/cjs/components/popover/popover.d.ts +6 -6
- package/dist/cjs/components/popover/popover.d.ts.map +1 -1
- package/dist/cjs/components/popover/popover.js +7 -7
- package/dist/cjs/components/popover/popover.js.map +1 -1
- package/dist/cjs/components/progress-accordion/progress-accordion.d.ts +5 -5
- package/dist/cjs/components/progress-accordion/progress-accordion.d.ts.map +1 -1
- package/dist/cjs/components/progress-accordion/progress-accordion.js +6 -6
- package/dist/cjs/components/progress-accordion/progress-accordion.js.map +1 -1
- package/dist/cjs/components/progress-tabs/progress-tabs.d.ts +5 -5
- package/dist/cjs/components/progress-tabs/progress-tabs.d.ts.map +1 -1
- package/dist/cjs/components/progress-tabs/progress-tabs.js +5 -5
- package/dist/cjs/components/progress-tabs/progress-tabs.js.map +1 -1
- package/dist/cjs/components/prompt/prompt.d.ts +8 -8
- package/dist/cjs/components/prompt/prompt.d.ts.map +1 -1
- package/dist/cjs/components/prompt/prompt.js +10 -10
- package/dist/cjs/components/prompt/prompt.js.map +1 -1
- package/dist/cjs/components/radio-group/radio-group.d.ts +4 -4
- package/dist/cjs/components/radio-group/radio-group.d.ts.map +1 -1
- package/dist/cjs/components/radio-group/radio-group.js +6 -6
- package/dist/cjs/components/radio-group/radio-group.js.map +1 -1
- package/dist/cjs/components/select/select.d.ts +9 -9
- package/dist/cjs/components/select/select.d.ts.map +1 -1
- package/dist/cjs/components/select/select.js +14 -14
- package/dist/cjs/components/select/select.js.map +1 -1
- package/dist/cjs/components/skeleton/skeleton.d.ts.map +1 -1
- package/dist/cjs/components/skeleton/skeleton.js +1 -1
- package/dist/cjs/components/skeleton/skeleton.js.map +1 -1
- package/dist/cjs/components/switch/switch.d.ts +2 -2
- package/dist/cjs/components/switch/switch.d.ts.map +1 -1
- package/dist/cjs/components/switch/switch.js +3 -3
- package/dist/cjs/components/switch/switch.js.map +1 -1
- package/dist/cjs/components/tabs/tabs.d.ts +5 -5
- package/dist/cjs/components/tabs/tabs.d.ts.map +1 -1
- package/dist/cjs/components/tabs/tabs.js +5 -5
- package/dist/cjs/components/tabs/tabs.js.map +1 -1
- package/dist/cjs/components/text/text.d.ts.map +1 -1
- package/dist/cjs/components/text/text.js +2 -2
- package/dist/cjs/components/text/text.js.map +1 -1
- package/dist/cjs/components/textarea/textarea.js +1 -1
- package/dist/cjs/components/textarea/textarea.js.map +1 -1
- package/dist/cjs/components/toast/toast.d.ts.map +1 -1
- package/dist/cjs/components/toast/toast.js +1 -1
- package/dist/cjs/components/toast/toast.js.map +1 -1
- package/dist/cjs/components/tooltip/tooltip.d.ts +3 -3
- package/dist/cjs/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/cjs/components/tooltip/tooltip.js +6 -6
- package/dist/cjs/components/tooltip/tooltip.js.map +1 -1
- package/dist/cjs/index.d.ts +0 -1
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +1 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/esm/blocks/data-table/components/data-table-action-cell.d.ts.map +1 -1
- package/dist/esm/blocks/data-table/components/data-table-action-cell.js +1 -1
- package/dist/esm/blocks/data-table/components/data-table-action-cell.js.map +1 -1
- package/dist/esm/blocks/data-table/components/data-table-select-cell.d.ts.map +1 -1
- package/dist/esm/blocks/data-table/components/data-table-select-cell.js.map +1 -1
- package/dist/esm/blocks/data-table/components/data-table-table.js +4 -4
- package/dist/esm/blocks/data-table/components/data-table-table.js.map +1 -1
- package/dist/esm/blocks/data-table/index.d.ts +1 -1
- package/dist/esm/blocks/data-table/index.d.ts.map +1 -1
- package/dist/esm/blocks/data-table/index.js.map +1 -1
- package/dist/esm/blocks/data-table/types.d.ts +1 -2
- package/dist/esm/blocks/data-table/types.d.ts.map +1 -1
- package/dist/esm/blocks/data-table/types.js.map +1 -1
- package/dist/esm/blocks/data-table/use-data-table.d.ts +1 -2
- package/dist/esm/blocks/data-table/use-data-table.d.ts.map +1 -1
- package/dist/esm/blocks/data-table/use-data-table.js +1 -2
- package/dist/esm/blocks/data-table/use-data-table.js.map +1 -1
- package/dist/esm/components/alert/alert.d.ts.map +1 -1
- package/dist/esm/components/alert/alert.js +0 -1
- package/dist/esm/components/alert/alert.js.map +1 -1
- package/dist/esm/components/avatar/avatar.d.ts +2 -2
- package/dist/esm/components/avatar/avatar.d.ts.map +1 -1
- package/dist/esm/components/avatar/avatar.js +4 -4
- package/dist/esm/components/avatar/avatar.js.map +1 -1
- package/dist/esm/components/badge/badge.d.ts.map +1 -1
- package/dist/esm/components/badge/badge.js +2 -2
- package/dist/esm/components/badge/badge.js.map +1 -1
- package/dist/esm/components/button/button.d.ts.map +1 -1
- package/dist/esm/components/button/button.js +2 -2
- package/dist/esm/components/button/button.js.map +1 -1
- package/dist/esm/components/calender/calendar.d.ts.map +1 -1
- package/dist/esm/components/calender/calendar.js +0 -1
- package/dist/esm/components/calender/calendar.js.map +1 -1
- package/dist/esm/components/checkbox/checkbox.d.ts +2 -2
- package/dist/esm/components/checkbox/checkbox.d.ts.map +1 -1
- package/dist/esm/components/checkbox/checkbox.js +3 -3
- package/dist/esm/components/checkbox/checkbox.js.map +1 -1
- package/dist/esm/components/checkbox/types.d.ts +2 -2
- package/dist/esm/components/checkbox/types.d.ts.map +1 -1
- package/dist/esm/components/checkbox/types.js.map +1 -1
- package/dist/esm/components/command-bar/command-bar.d.ts.map +1 -1
- package/dist/esm/components/command-bar/command-bar.js +2 -5
- package/dist/esm/components/command-bar/command-bar.js.map +1 -1
- package/dist/esm/components/copy/copy.js +2 -2
- package/dist/esm/components/copy/copy.js.map +1 -1
- package/dist/esm/components/drawer/drawer.d.ts +9 -9
- package/dist/esm/components/drawer/drawer.d.ts.map +1 -1
- package/dist/esm/components/drawer/drawer.js +10 -10
- package/dist/esm/components/drawer/drawer.js.map +1 -1
- package/dist/esm/components/dropdown-menu/dropdown-menu.d.ts +14 -14
- package/dist/esm/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
- package/dist/esm/components/dropdown-menu/dropdown-menu.js +18 -18
- package/dist/esm/components/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/esm/components/focus-modal/focus-modal.d.ts +9 -9
- package/dist/esm/components/focus-modal/focus-modal.d.ts.map +1 -1
- package/dist/esm/components/focus-modal/focus-modal.js +10 -10
- package/dist/esm/components/focus-modal/focus-modal.js.map +1 -1
- package/dist/esm/components/hint/hint.js.map +1 -1
- package/dist/esm/components/icon-badge/icon-badge.d.ts.map +1 -1
- package/dist/esm/components/icon-badge/icon-badge.js +2 -2
- package/dist/esm/components/icon-badge/icon-badge.js.map +1 -1
- package/dist/esm/components/icon-button/icon-button.d.ts.map +1 -1
- package/dist/esm/components/icon-button/icon-button.js +2 -2
- package/dist/esm/components/icon-button/icon-button.js.map +1 -1
- package/dist/esm/components/label/label.d.ts.map +1 -1
- package/dist/esm/components/label/label.js +2 -2
- package/dist/esm/components/label/label.js.map +1 -1
- package/dist/esm/components/popover/popover.d.ts +6 -6
- package/dist/esm/components/popover/popover.d.ts.map +1 -1
- package/dist/esm/components/popover/popover.js +7 -7
- package/dist/esm/components/popover/popover.js.map +1 -1
- package/dist/esm/components/progress-accordion/progress-accordion.d.ts +5 -5
- package/dist/esm/components/progress-accordion/progress-accordion.d.ts.map +1 -1
- package/dist/esm/components/progress-accordion/progress-accordion.js +6 -6
- package/dist/esm/components/progress-accordion/progress-accordion.js.map +1 -1
- package/dist/esm/components/progress-tabs/progress-tabs.d.ts +5 -5
- package/dist/esm/components/progress-tabs/progress-tabs.d.ts.map +1 -1
- package/dist/esm/components/progress-tabs/progress-tabs.js +5 -5
- package/dist/esm/components/progress-tabs/progress-tabs.js.map +1 -1
- package/dist/esm/components/prompt/prompt.d.ts +8 -8
- package/dist/esm/components/prompt/prompt.d.ts.map +1 -1
- package/dist/esm/components/prompt/prompt.js +10 -10
- package/dist/esm/components/prompt/prompt.js.map +1 -1
- package/dist/esm/components/radio-group/radio-group.d.ts +4 -4
- package/dist/esm/components/radio-group/radio-group.d.ts.map +1 -1
- package/dist/esm/components/radio-group/radio-group.js +6 -6
- package/dist/esm/components/radio-group/radio-group.js.map +1 -1
- package/dist/esm/components/select/select.d.ts +9 -9
- package/dist/esm/components/select/select.d.ts.map +1 -1
- package/dist/esm/components/select/select.js +14 -14
- package/dist/esm/components/select/select.js.map +1 -1
- package/dist/esm/components/skeleton/skeleton.d.ts.map +1 -1
- package/dist/esm/components/skeleton/skeleton.js +1 -1
- package/dist/esm/components/skeleton/skeleton.js.map +1 -1
- package/dist/esm/components/switch/switch.d.ts +2 -2
- package/dist/esm/components/switch/switch.d.ts.map +1 -1
- package/dist/esm/components/switch/switch.js +3 -3
- package/dist/esm/components/switch/switch.js.map +1 -1
- package/dist/esm/components/tabs/tabs.d.ts +5 -5
- package/dist/esm/components/tabs/tabs.d.ts.map +1 -1
- package/dist/esm/components/tabs/tabs.js +5 -5
- package/dist/esm/components/tabs/tabs.js.map +1 -1
- package/dist/esm/components/text/text.d.ts.map +1 -1
- package/dist/esm/components/text/text.js +2 -2
- package/dist/esm/components/text/text.js.map +1 -1
- package/dist/esm/components/textarea/textarea.js +1 -1
- package/dist/esm/components/textarea/textarea.js.map +1 -1
- package/dist/esm/components/toast/toast.d.ts.map +1 -1
- package/dist/esm/components/toast/toast.js +1 -1
- package/dist/esm/components/toast/toast.js.map +1 -1
- package/dist/esm/components/tooltip/tooltip.d.ts +3 -3
- package/dist/esm/components/tooltip/tooltip.d.ts.map +1 -1
- package/dist/esm/components/tooltip/tooltip.js +6 -6
- package/dist/esm/components/tooltip/tooltip.js.map +1 -1
- package/dist/esm/index.d.ts +0 -1
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +0 -1
- package/dist/esm/index.js.map +1 -1
- package/package.json +20 -6
- package/dist/cjs/components/divider/divider.d.ts +0 -8
- package/dist/cjs/components/divider/divider.d.ts.map +0 -1
- package/dist/cjs/components/divider/divider.js +0 -17
- package/dist/cjs/components/divider/divider.js.map +0 -1
- package/dist/cjs/components/divider/index.d.ts +0 -2
- package/dist/cjs/components/divider/index.d.ts.map +0 -1
- package/dist/cjs/components/divider/index.js +0 -5
- package/dist/cjs/components/divider/index.js.map +0 -1
- package/dist/cjs/utils/is-input-element.d.ts +0 -3
- package/dist/cjs/utils/is-input-element.d.ts.map +0 -1
- package/dist/cjs/utils/is-input-element.js +0 -12
- package/dist/cjs/utils/is-input-element.js.map +0 -1
- package/dist/esm/components/divider/divider.d.ts +0 -8
- package/dist/esm/components/divider/divider.d.ts.map +0 -1
- package/dist/esm/components/divider/divider.js +0 -12
- package/dist/esm/components/divider/divider.js.map +0 -1
- package/dist/esm/components/divider/index.d.ts +0 -2
- package/dist/esm/components/divider/index.d.ts.map +0 -1
- package/dist/esm/components/divider/index.js +0 -2
- package/dist/esm/components/divider/index.js.map +0 -1
- package/dist/esm/utils/is-input-element.d.ts +0 -3
- package/dist/esm/utils/is-input-element.d.ts.map +0 -1
- package/dist/esm/utils/is-input-element.js +0 -9
- package/dist/esm/utils/is-input-element.js.map +0 -1
@@ -3,8 +3,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.Textarea = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
5
|
const React = tslib_1.__importStar(require("react"));
|
6
|
-
const input_1 = require("../input");
|
7
6
|
const clx_1 = require("../../utils/clx");
|
7
|
+
const input_1 = require("../input");
|
8
8
|
/**
|
9
9
|
* This component is based on the `textarea` element and supports all of its props
|
10
10
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":";;;;AAAA,qDAA8B;AAE9B,
|
1
|
+
{"version":3,"file":"textarea.js","sourceRoot":"","sources":["../../../../src/components/textarea/textarea.tsx"],"names":[],"mappings":";;;;AAAA,qDAA8B;AAE9B,qCAAiC;AACjC,oCAA0C;AAE1C;;GAEG;AACH,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAG/B,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE;IACjC,OAAO,CACL,kCACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EACZ,uBAAe,EACf,2CAA2C,EAC3C,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC,CAAC,CAAA;AAGO,4BAAQ;AAFjB,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAA","sourcesContent":["import * as React from \"react\"\n\nimport { clx } from \"@/utils/clx\"\nimport { inputBaseStyles } from \"../input\"\n\n/**\n * This component is based on the `textarea` element and supports all of its props\n */\nconst Textarea = React.forwardRef<\n HTMLTextAreaElement,\n React.ComponentPropsWithoutRef<\"textarea\">\n>(({ className, ...props }, ref) => {\n return (\n <textarea\n ref={ref}\n className={clx(\n inputBaseStyles,\n \"txt-small min-h-[60px] w-full px-2 py-1.5\",\n className\n )}\n {...props}\n />\n )\n})\nTextarea.displayName = \"Textarea\"\n\nexport { Textarea }\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"toast.d.ts","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAKxD,UAAU,mBAAmB;IAC3B,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,YAAY,CAAA;IACtB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IAC7B,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACtB,WAAW,CAAC,EAAE,OAAO,CAAA;CACtB;AAED;;GAEG;AACH,eAAO,MAAM,KAAK,2EA2Cf,mBAAmB,sBAiFrB,CAAA"}
|
@@ -4,9 +4,9 @@ exports.Toast = void 0;
|
|
4
4
|
const tslib_1 = require("tslib");
|
5
5
|
const icons_1 = require("@medusajs/icons");
|
6
6
|
const React = tslib_1.__importStar(require("react"));
|
7
|
+
const clx_1 = require("../../utils/clx");
|
7
8
|
const sonner_1 = require("sonner");
|
8
9
|
const icon_button_1 = require("../icon-button");
|
9
|
-
const clx_1 = require("../../utils/clx");
|
10
10
|
/**
|
11
11
|
* This component is based on the [Sonner](https://sonner.emilkowal.ski/toast) toast library.
|
12
12
|
*/
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":";;;;AAAA,2CAOwB;AACxB,qDAA8B;
|
1
|
+
{"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":";;;;AAAA,2CAOwB;AACxB,qDAA8B;AAG9B,qCAAiC;AACjC,mCAA8B;AAC9B,gDAA2C;AAY3C;;GAEG;AACI,MAAM,KAAK,GAAG,CAAC;AACpB;;GAEG;AACH,EAAE;AACF;;;;;;;GAOG;AACH,OAAO,GAAG,MAAM;AAChB;;;;;GAKG;AACH,KAAK;AACL;;;;;GAKG;AACH,IAAI,EAAE,KAAK;AACX;;GAEG;AACH,WAAW;AACX;;GAEG;AACH,MAAM;AACN;;;;;GAKG;AACH,WAAW,GAAG,IAAI,GACE,EAAE,EAAE;IACxB,IAAI,IAAI,GAAG,KAAK,CAAA;IAEhB,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,QAAQ,OAAO,EAAE,CAAC;YAChB,KAAK,SAAS;gBACZ,IAAI,GAAG,oBAAC,wBAAgB,IAAC,SAAS,EAAC,wBAAwB,GAAG,CAAA;gBAC9D,MAAK;YACP,KAAK,SAAS;gBACZ,IAAI,GAAG,oBAAC,8BAAsB,IAAC,SAAS,EAAC,yBAAyB,GAAG,CAAA;gBACrE,MAAK;YACP,KAAK,OAAO;gBACV,IAAI,GAAG,oBAAC,oBAAY,IAAC,SAAS,EAAC,sBAAsB,GAAG,CAAA;gBACxD,MAAK;YACP,KAAK,SAAS;gBACZ,IAAI,GAAG,oBAAC,eAAO,IAAC,SAAS,EAAC,oCAAoC,GAAG,CAAA;gBACjE,MAAK;YACP,KAAK,MAAM;gBACT,IAAI,GAAG,oBAAC,8BAAsB,IAAC,SAAS,EAAC,iBAAiB,GAAG,CAAA;gBAC7D,MAAK;YACP;gBACE,MAAK;QACT,CAAC;IACH,CAAC;IAED,OAAO,CACL,6BAAK,SAAS,EAAC,0HAA0H;QACvI,6BACE,SAAS,EAAE,IAAA,SAAG,EAAC,kCAAkC,EAAE;gBACjD,sBAAsB,EAAE,CAAC,CAAC,IAAI;gBAC9B,aAAa,EAAE,CAAC,IAAI;gBACpB,aAAa,EAAE,CAAC,CAAC,WAAW;aAC7B,CAAC;YAED,CAAC,CAAC,IAAI,IAAI,CACT,8BAAM,SAAS,EAAC,yCAAyC,yBACtD,IAAI,CACA,CACR;YACD,6BAAK,SAAS,EAAC,uBAAuB;gBACpC,6BAAK,SAAS,EAAC,eAAe;oBAC5B,8BAAM,SAAS,EAAC,wCAAwC,IACrD,KAAK,CACD;oBACN,WAAW,IAAI,CACd,8BAAM,SAAS,EAAC,yCAAyC,IACtD,WAAW,CACP,CACR,CACG;gBACL,CAAC,CAAC,MAAM,IAAI,CACX,gCACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,IAAA,SAAG,EACZ,8GAA8G,EAC9G,oCAAoC,EACpC,yBAAyB,EACzB,8BAA8B,EAC9B;wBACE,kBAAkB,EAAE,MAAM,CAAC,OAAO,KAAK,aAAa;qBACrD,CACF,EACD,OAAO,EAAE,MAAM,CAAC,OAAO,IAEtB,MAAM,CAAC,KAAK,CACN,CACV,CACG,CACF;QACL,CAAC,CAAC,WAAW,IAAI,CAChB,oBAAC,wBAAU,IACT,IAAI,EAAC,SAAS,EACd,OAAO,EAAC,aAAa,EACrB,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,GAAG,EAAE,CAAC,cAAK,CAAC,OAAO,CAAC,EAAE,CAAC;YAEhC,oBAAC,aAAK,OAAG,CACE,CACd,CACG,CACP,CAAA;AACH,CAAC,CAAA;AA5HY,QAAA,KAAK,SA4HjB","sourcesContent":["import {\n CheckCircleSolid,\n ExclamationCircleSolid,\n InformationCircleSolid,\n Spinner,\n XCircleSolid,\n XMark,\n} from \"@medusajs/icons\"\nimport * as React from \"react\"\n\nimport type { ToastAction, ToastVariant } from \"@/types\"\nimport { clx } from \"@/utils/clx\"\nimport { toast } from \"sonner\"\nimport { IconButton } from \"../icon-button\"\n\ninterface ToastComponentProps {\n id: string | number\n variant?: ToastVariant\n title: React.ReactNode\n description?: React.ReactNode\n action?: ToastAction\n icon?: React.ReactNode\n dismissable?: boolean\n}\n\n/**\n * This component is based on the [Sonner](https://sonner.emilkowal.ski/toast) toast library.\n */\nexport const Toast = ({\n /**\n * Optional ID of the toast.\n */\n id,\n /**\n * @ignore\n *\n * @privateRemarks\n * As the Toast component is created using\n * the `toast` utility functions, the variant is inferred\n * from the utility function.\n */\n variant = \"info\",\n /**\n * @ignore\n *\n * @privateRemarks\n * The `toast` utility functions accept this as a parameter.\n */\n title,\n /**\n * @ignore\n *\n * @privateRemarks\n * The `toast` utility functions accept this as a parameter.\n */\n icon: _icon,\n /**\n * The toast's text.\n */\n description,\n /**\n * The toast's action buttons.\n */\n action,\n /**\n * @ignore\n *\n * @privateRemarks\n * The `toast` utility functions accept this as a parameter.\n */\n dismissable = true,\n}: ToastComponentProps) => {\n let icon = _icon\n\n if (!_icon) {\n switch (variant) {\n case \"success\":\n icon = <CheckCircleSolid className=\"text-ui-tag-green-icon\" />\n break\n case \"warning\":\n icon = <ExclamationCircleSolid className=\"text-ui-tag-orange-icon\" />\n break\n case \"error\":\n icon = <XCircleSolid className=\"text-ui-tag-red-icon\" />\n break\n case \"loading\":\n icon = <Spinner className=\"text-ui-tag-blue-icon animate-spin\" />\n break\n case \"info\":\n icon = <InformationCircleSolid className=\"text-ui-fg-base\" />\n break\n default:\n break\n }\n }\n\n return (\n <div className=\"shadow-elevation-flyout bg-ui-bg-component flex w-fit min-w-[360px] max-w-[440px] gap-x-3 overflow-hidden rounded-lg p-3\">\n <div\n className={clx(\"grid flex-1 items-center gap-x-2\", {\n \"grid-cols-[20px_1fr]\": !!icon,\n \"grid-cols-1\": !icon,\n \"items-start\": !!description,\n })}\n >\n {!!icon && (\n <span className=\"flex size-5 items-center justify-center\" aria-hidden>\n {icon}\n </span>\n )}\n <div className=\"flex flex-col gap-y-3\">\n <div className=\"flex flex-col\">\n <span className=\"txt-compact-small-plus text-ui-fg-base\">\n {title}\n </span>\n {description && (\n <span className=\"txt-small text-ui-fg-subtle text-pretty\">\n {description}\n </span>\n )}\n </div>\n {!!action && (\n <button\n type=\"button\"\n className={clx(\n \"txt-compact-small-plus text-ui-fg-base bg-ui-bg-base flex w-fit items-center rounded-[4px] transition-colors\",\n \"focus-visible:shadow-borders-focus\",\n \"hover:text-ui-fg-subtle\",\n \"disabled:text-ui-fg-disabled\",\n {\n \"text-ui-fg-error\": action.variant === \"destructive\",\n }\n )}\n onClick={action.onClick}\n >\n {action.label}\n </button>\n )}\n </div>\n </div>\n {!!dismissable && (\n <IconButton\n size=\"2xsmall\"\n variant=\"transparent\"\n type=\"button\"\n onClick={() => toast.dismiss(id)}\n >\n <XMark />\n </IconButton>\n )}\n </div>\n )\n}\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
|
-
import
|
1
|
+
import * as Primitives from "@radix-ui/react-tooltip";
|
2
2
|
import * as React from "react";
|
3
|
-
interface TooltipProps extends Omit<
|
3
|
+
interface TooltipProps extends Omit<Primitives.TooltipContentProps, "content" | "onClick">, Pick<Primitives.TooltipProps, "open" | "defaultOpen" | "onOpenChange" | "delayDuration"> {
|
4
4
|
content: React.ReactNode;
|
5
5
|
onClick?: React.MouseEventHandler<HTMLButtonElement>;
|
6
6
|
side?: "bottom" | "left" | "top" | "right";
|
@@ -12,7 +12,7 @@ interface TooltipProps extends Omit<RadixTooltip.TooltipContentProps, "content"
|
|
12
12
|
* @excludeExternal
|
13
13
|
*/
|
14
14
|
declare const Tooltip: ({ children, content, open, defaultOpen, onOpenChange, delayDuration, maxWidth, className, side, sideOffset, onClick, ...props }: TooltipProps) => React.JSX.Element;
|
15
|
-
interface TooltipProviderProps extends
|
15
|
+
interface TooltipProviderProps extends Primitives.TooltipProviderProps {
|
16
16
|
}
|
17
17
|
declare const TooltipProvider: ({ children, delayDuration, skipDelayDuration, ...props }: TooltipProviderProps) => React.JSX.Element;
|
18
18
|
export { Tooltip, TooltipProvider };
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,
|
1
|
+
{"version":3,"file":"tooltip.d.ts","sourceRoot":"","sources":["../../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,UAAU,MAAM,yBAAyB,CAAA;AACrD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAI9B,UAAU,YACR,SAAQ,IAAI,CAAC,UAAU,CAAC,mBAAmB,EAAE,SAAS,GAAG,SAAS,CAAC,EACjE,IAAI,CACF,UAAU,CAAC,YAAY,EACvB,MAAM,GAAG,aAAa,GAAG,cAAc,GAAG,eAAe,CAC1D;IACH,OAAO,EAAE,KAAK,CAAC,SAAS,CAAA;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,CAAA;IACpD,IAAI,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,CAAA;IAC1C,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AAED;;;;GAIG;AACH,QAAA,MAAM,OAAO,oIAgBV,YAAY,sBA6Bd,CAAA;AAED,UAAU,oBAAqB,SAAQ,UAAU,CAAC,oBAAoB;CAAG;AAEzE,QAAA,MAAM,eAAe,6DAA0E,oBAAoB,sBAMlH,CAAA;AAGD,OAAO,EAAE,OAAO,EAAE,eAAe,EAAE,CAAA"}
|
@@ -3,7 +3,7 @@
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
4
4
|
exports.TooltipProvider = exports.Tooltip = void 0;
|
5
5
|
const tslib_1 = require("tslib");
|
6
|
-
const
|
6
|
+
const Primitives = tslib_1.__importStar(require("@radix-ui/react-tooltip"));
|
7
7
|
const React = tslib_1.__importStar(require("react"));
|
8
8
|
const clx_1 = require("../../utils/clx");
|
9
9
|
/**
|
@@ -16,14 +16,14 @@ const Tooltip = ({ children, content, open, defaultOpen, onOpenChange, delayDura
|
|
16
16
|
* The maximum width of the tooltip.
|
17
17
|
*/
|
18
18
|
maxWidth = 220, className, side, sideOffset = 8, onClick, ...props }) => {
|
19
|
-
return (React.createElement(
|
20
|
-
React.createElement(
|
21
|
-
React.createElement(
|
22
|
-
React.createElement(
|
19
|
+
return (React.createElement(Primitives.Root, { open: open, defaultOpen: defaultOpen, onOpenChange: onOpenChange, delayDuration: delayDuration },
|
20
|
+
React.createElement(Primitives.Trigger, { onClick: onClick, asChild: true }, children),
|
21
|
+
React.createElement(Primitives.Portal, null,
|
22
|
+
React.createElement(Primitives.Content, { side: side, sideOffset: sideOffset, align: "center", className: (0, clx_1.clx)("txt-compact-xsmall text-ui-fg-subtle bg-ui-bg-base shadow-elevation-tooltip rounded-lg px-2.5 py-1", "animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2", className), ...props, style: { ...props.style, maxWidth } }, content))));
|
23
23
|
};
|
24
24
|
exports.Tooltip = Tooltip;
|
25
25
|
const TooltipProvider = ({ children, delayDuration = 100, skipDelayDuration = 300, ...props }) => {
|
26
|
-
return (React.createElement(
|
26
|
+
return (React.createElement(Primitives.TooltipProvider, { delayDuration: delayDuration, skipDelayDuration: skipDelayDuration, ...props }, children));
|
27
27
|
};
|
28
28
|
exports.TooltipProvider = TooltipProvider;
|
29
29
|
//# sourceMappingURL=tooltip.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;AAEZ,
|
1
|
+
{"version":3,"file":"tooltip.js","sourceRoot":"","sources":["../../../../src/components/tooltip/tooltip.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;AAEZ,4EAAqD;AACrD,qDAA8B;AAE9B,qCAAiC;AAcjC;;;;GAIG;AACH,MAAM,OAAO,GAAG,CAAC,EACf,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,aAAa;AACb;;GAEG;AACH,QAAQ,GAAG,GAAG,EACd,SAAS,EACT,IAAI,EACJ,UAAU,GAAG,CAAC,EACd,OAAO,EACP,GAAG,KAAK,EACK,EAAE,EAAE;IACjB,OAAO,CACH,oBAAC,UAAU,CAAC,IAAI,IACd,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa;QAE5B,oBAAC,UAAU,CAAC,OAAO,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,UAC1C,QAAQ,CACU;QACrB,oBAAC,UAAU,CAAC,MAAM;YAChB,oBAAC,UAAU,CAAC,OAAO,IACjB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,KAAK,EAAC,QAAQ,EACd,SAAS,EAAE,IAAA,SAAG,EACZ,oGAAoG,EACpG,4RAA4R,EAC5R,SAAS,CACV,KACG,KAAK,EACT,KAAK,EAAE,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,IAElC,OAAO,CACW,CACH,CACJ,CACrB,CAAA;AACH,CAAC,CAAA;AAaQ,0BAAO;AAThB,MAAM,eAAe,GAAG,CAAC,EAAE,QAAQ,EAAE,aAAa,GAAG,GAAG,EAAE,iBAAiB,GAAG,GAAG,EAAE,GAAG,KAAK,EAAwB,EAAE,EAAE;IACrH,OAAO,CACL,oBAAC,UAAU,CAAC,eAAe,IAAC,aAAa,EAAE,aAAa,EAAE,iBAAiB,EAAE,iBAAiB,KAAM,KAAK,IACtG,QAAQ,CACkB,CAC9B,CAAA;AACH,CAAC,CAAA;AAGiB,0CAAe","sourcesContent":["\"use client\"\n\nimport * as Primitives from \"@radix-ui/react-tooltip\"\nimport * as React from \"react\"\n\nimport { clx } from \"@/utils/clx\"\n\ninterface TooltipProps\n extends Omit<Primitives.TooltipContentProps, \"content\" | \"onClick\">,\n Pick<\n Primitives.TooltipProps,\n \"open\" | \"defaultOpen\" | \"onOpenChange\" | \"delayDuration\"\n > {\n content: React.ReactNode\n onClick?: React.MouseEventHandler<HTMLButtonElement>\n side?: \"bottom\" | \"left\" | \"top\" | \"right\"\n maxWidth?: number\n}\n\n/**\n * This component is based on the [Radix UI Tooltip](https://www.radix-ui.com/primitives/docs/components/tooltip) primitive.\n *\n * @excludeExternal\n */\nconst Tooltip = ({\n children,\n content,\n open,\n defaultOpen,\n onOpenChange,\n delayDuration,\n /**\n * The maximum width of the tooltip.\n */\n maxWidth = 220,\n className,\n side,\n sideOffset = 8,\n onClick,\n ...props\n}: TooltipProps) => {\n return (\n <Primitives.Root\n open={open}\n defaultOpen={defaultOpen}\n onOpenChange={onOpenChange}\n delayDuration={delayDuration}\n >\n <Primitives.Trigger onClick={onClick} asChild>\n {children}\n </Primitives.Trigger>\n <Primitives.Portal>\n <Primitives.Content\n side={side}\n sideOffset={sideOffset}\n align=\"center\"\n className={clx(\n \"txt-compact-xsmall text-ui-fg-subtle bg-ui-bg-base shadow-elevation-tooltip rounded-lg px-2.5 py-1\",\n \"animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2\",\n className\n )}\n {...props}\n style={{ ...props.style, maxWidth }}\n >\n {content}\n </Primitives.Content>\n </Primitives.Portal>\n </Primitives.Root>\n )\n}\n\ninterface TooltipProviderProps extends Primitives.TooltipProviderProps {}\n\nconst TooltipProvider = ({ children, delayDuration = 100, skipDelayDuration = 300, ...props }: TooltipProviderProps) => {\n return (\n <Primitives.TooltipProvider delayDuration={delayDuration} skipDelayDuration={skipDelayDuration} {...props}>\n {children}\n </Primitives.TooltipProvider>\n )\n}\n\n\nexport { Tooltip, TooltipProvider }\n"]}
|
package/dist/cjs/index.d.ts
CHANGED
@@ -12,7 +12,6 @@ export { Container } from "./components/container";
|
|
12
12
|
export { Copy } from "./components/copy";
|
13
13
|
export { CurrencyInput } from "./components/currency-input";
|
14
14
|
export { DatePicker } from "./components/date-picker";
|
15
|
-
export { Divider } from "./components/divider";
|
16
15
|
export { Drawer } from "./components/drawer";
|
17
16
|
export { DropdownMenu } from "./components/dropdown-menu";
|
18
17
|
export { FocusModal } from "./components/focus-modal";
|
package/dist/cjs/index.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAC5C,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAChD,OAAO,EAAE,QAAQ,EAAE,KAAK,oBAAoB,EAAE,MAAM,uBAAuB,CAAA;AAC3E,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;AAC9C,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAA;AAClD,OAAO,EAAE,IAAI,EAAE,MAAM,mBAAmB,CAAA;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/cjs/index.js
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
-
exports.toast = exports.clx = exports.useToggleState = exports.usePrompt = exports.TooltipProvider = exports.Tooltip = exports.Toaster = exports.Toast = exports.Textarea = exports.Text = exports.Tabs = exports.Table = exports.Switch = exports.StatusBadge = exports.Skeleton = exports.Select = exports.RadioGroup = exports.Prompt = exports.ProgressTabs = exports.ProgressAccordion = exports.Popover = exports.Label = exports.Kbd = exports.Input = exports.IconButton = exports.IconBadge = exports.I18nProvider = exports.Hint = exports.Heading = exports.FocusModal = exports.DropdownMenu = exports.Drawer = exports.
|
3
|
+
exports.toast = exports.clx = exports.useToggleState = exports.usePrompt = exports.TooltipProvider = exports.Tooltip = exports.Toaster = exports.Toast = exports.Textarea = exports.Text = exports.Tabs = exports.Table = exports.Switch = exports.StatusBadge = exports.Skeleton = exports.Select = exports.RadioGroup = exports.Prompt = exports.ProgressTabs = exports.ProgressAccordion = exports.Popover = exports.Label = exports.Kbd = exports.Input = exports.IconButton = exports.IconBadge = exports.I18nProvider = exports.Hint = exports.Heading = exports.FocusModal = exports.DropdownMenu = exports.Drawer = exports.DatePicker = exports.CurrencyInput = exports.Copy = exports.Container = exports.CommandBar = exports.Command = exports.CodeBlock = exports.Code = exports.Checkbox = exports.Calendar = exports.Button = exports.Badge = exports.Avatar = exports.Alert = void 0;
|
4
4
|
const tslib_1 = require("tslib");
|
5
5
|
// Components
|
6
6
|
var alert_1 = require("./components/alert");
|
@@ -31,8 +31,6 @@ var currency_input_1 = require("./components/currency-input");
|
|
31
31
|
Object.defineProperty(exports, "CurrencyInput", { enumerable: true, get: function () { return currency_input_1.CurrencyInput; } });
|
32
32
|
var date_picker_1 = require("./components/date-picker");
|
33
33
|
Object.defineProperty(exports, "DatePicker", { enumerable: true, get: function () { return date_picker_1.DatePicker; } });
|
34
|
-
var divider_1 = require("./components/divider");
|
35
|
-
Object.defineProperty(exports, "Divider", { enumerable: true, get: function () { return divider_1.Divider; } });
|
36
34
|
var drawer_1 = require("./components/drawer");
|
37
35
|
Object.defineProperty(exports, "Drawer", { enumerable: true, get: function () { return drawer_1.Drawer; } });
|
38
36
|
var dropdown_menu_1 = require("./components/dropdown-menu");
|
package/dist/cjs/index.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,aAAa;AACb,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,kDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,kDAA2E;AAAlE,oGAAA,QAAQ,OAAA;AACjB,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,sDAAmD;AAA1C,uGAAA,SAAS,OAAA;AAClB,gDAA8C;AAArC,kGAAA,OAAO,OAAA;AAChB,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,oDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,8DAA2D;AAAlD,+GAAA,aAAa,OAAA;AACtB,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,aAAa;AACb,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,kDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,kDAA2E;AAAlE,oGAAA,QAAQ,OAAA;AACjB,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,sDAAmD;AAA1C,uGAAA,SAAS,OAAA;AAClB,gDAA8C;AAArC,kGAAA,OAAO,OAAA;AAChB,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,oDAAkD;AAAzC,sGAAA,SAAS,OAAA;AAClB,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,8DAA2D;AAAlD,+GAAA,aAAa,OAAA;AACtB,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,4DAAyD;AAAhD,6GAAA,YAAY,OAAA;AACrB,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,gDAA8C;AAArC,kGAAA,OAAO,OAAA;AAChB,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,4DAAyD;AAAhD,6GAAA,YAAY,OAAA;AACrB,sDAAmD;AAA1C,uGAAA,SAAS,OAAA;AAClB,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,wCAAsC;AAA7B,0FAAA,GAAG,OAAA;AACZ,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,gDAA8C;AAArC,kGAAA,OAAO,OAAA;AAChB,sEAAmE;AAA1D,uHAAA,iBAAiB,OAAA;AAC1B,4DAAyD;AAAhD,6GAAA,YAAY,OAAA;AACrB,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,wDAAqD;AAA5C,yGAAA,UAAU,OAAA;AACnB,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,kDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,0DAAuD;AAA9C,2GAAA,WAAW,OAAA;AACpB,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,0CAAwC;AAA/B,4FAAA,IAAI,OAAA;AACb,kDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,gDAA8C;AAArC,kGAAA,OAAO,OAAA;AAChB,gDAA+D;AAAtD,kGAAA,OAAO,OAAA;AAAE,0GAAA,eAAe,OAAA;AAEjC,SAAS;AACT,8DAAmC;AAEnC,QAAQ;AACR,iDAA8C;AAArC,uGAAA,SAAS,OAAA;AAClB,6DAAyD;AAAhD,kHAAA,cAAc,OAAA;AAEvB,QAAQ;AACR,mCAAiC;AAAxB,0FAAA,GAAG,OAAA;AACZ,uCAAqC;AAA5B,8FAAA,KAAK,OAAA;AAEd,QAAQ;AACR,kDAAuB","sourcesContent":["// Components\nexport { Alert } from \"./components/alert\"\nexport { Avatar } from \"./components/avatar\"\nexport { Badge } from \"./components/badge\"\nexport { Button } from \"./components/button\"\nexport { Calendar } from \"./components/calender\"\nexport { Checkbox, type CheckboxCheckedState } from \"./components/checkbox\"\nexport { Code } from \"./components/code\"\nexport { CodeBlock } from \"./components/code-block\"\nexport { Command } from \"./components/command\"\nexport { CommandBar } from \"./components/command-bar\"\nexport { Container } from \"./components/container\"\nexport { Copy } from \"./components/copy\"\nexport { CurrencyInput } from \"./components/currency-input\"\nexport { DatePicker } from \"./components/date-picker\"\nexport { Drawer } from \"./components/drawer\"\nexport { DropdownMenu } from \"./components/dropdown-menu\"\nexport { FocusModal } from \"./components/focus-modal\"\nexport { Heading } from \"./components/heading\"\nexport { Hint } from \"./components/hint\"\nexport { I18nProvider } from \"./components/i18n-provider\"\nexport { IconBadge } from \"./components/icon-badge\"\nexport { IconButton } from \"./components/icon-button\"\nexport { Input } from \"./components/input\"\nexport { Kbd } from \"./components/kbd\"\nexport { Label } from \"./components/label\"\nexport { Popover } from \"./components/popover\"\nexport { ProgressAccordion } from \"./components/progress-accordion\"\nexport { ProgressTabs } from \"./components/progress-tabs\"\nexport { Prompt } from \"./components/prompt\"\nexport { RadioGroup } from \"./components/radio-group\"\nexport { Select } from \"./components/select\"\nexport { Skeleton } from \"./components/skeleton\"\nexport { StatusBadge } from \"./components/status-badge\"\nexport { Switch } from \"./components/switch\"\nexport { Table } from \"./components/table\"\nexport { Tabs } from \"./components/tabs\"\nexport { Text } from \"./components/text\"\nexport { Textarea } from \"./components/textarea\"\nexport { Toast } from \"./components/toast\"\nexport { Toaster } from \"./components/toaster\"\nexport { Tooltip, TooltipProvider } from \"./components/tooltip\"\n\n// Blocks\nexport * from \"./blocks/data-table\"\n\n// Hooks\nexport { usePrompt } from \"./hooks/use-prompt\"\nexport { useToggleState } from \"./hooks/use-toggle-state\"\n\n// Utils\nexport { clx } from \"./utils/clx\"\nexport { toast } from \"./utils/toast\"\n\n// Types\nexport * from \"./types\"\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-table-action-cell.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-action-cell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"data-table-action-cell.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-action-cell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAG9B,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAA;AAKnD,UAAU,wBAAwB,CAAC,KAAK;IACtC,GAAG,EAAE,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;CACjC;AAED,QAAA,MAAM,mBAAmB;sBAEtB,yBAAyB,KAAK,CAAC;;CA8DjC,CAAA;AAGD,OAAO,EAAE,mBAAmB,EAAE,CAAA;AAC9B,YAAY,EAAE,wBAAwB,EAAE,CAAA"}
|
@@ -1,8 +1,8 @@
|
|
1
1
|
"use client";
|
2
2
|
import * as React from "react";
|
3
|
+
import { EllipsisHorizontal } from "@medusajs/icons";
|
3
4
|
import { DropdownMenu } from "../../../components/dropdown-menu";
|
4
5
|
import { IconButton } from "../../../components/icon-button";
|
5
|
-
import { EllipsisHorizontal } from "@medusajs/icons";
|
6
6
|
const DataTableActionCell = ({ ctx, }) => {
|
7
7
|
const meta = ctx.column.columnDef.meta;
|
8
8
|
const actions = meta === null || meta === void 0 ? void 0 : meta.___actions;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-table-action-cell.js","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-action-cell.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;
|
1
|
+
{"version":3,"file":"data-table-action-cell.js","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-action-cell.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAA;AAEpD,OAAO,EAAE,YAAY,EAAE,MAAM,mCAAmC,CAAA;AAChE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAA;AAO5D,MAAM,mBAAmB,GAAG,CAAS,EACnC,GAAG,GAC6B,EAAE,EAAE;IACpC,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,SAAS,CAAC,IAErB,CAAA;IACb,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,UAAU,CAAA;IAEhC,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAA;IACb,CAAC;IAED,MAAM,eAAe,GAAG,OAAO,OAAO,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;IAE9E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,eAAe,CAAC,EAAE,CAAC;QACpC,OAAO,IAAI,CAAA;IACb,CAAC;IAED,OAAO,CACL,oBAAC,YAAY;QACX,oBAAC,YAAY,CAAC,OAAO,IAAC,OAAO,QAAC,SAAS,EAAC,MAAM;YAC5C,oBAAC,UAAU,IAAC,IAAI,EAAC,OAAO,EAAC,OAAO,EAAC,aAAa;gBAC5C,oBAAC,kBAAkB,OAAG,CACX,CACQ;QACvB,oBAAC,YAAY,CAAC,OAAO,IAAC,IAAI,EAAC,QAAQ,IAChC,eAAe,CAAC,GAAG,CAAC,CAAC,aAAa,EAAE,GAAG,EAAE,EAAE;YAC1C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,CAAA;YAC5C,MAAM,MAAM,GAAG,GAAG,KAAK,eAAe,CAAC,MAAM,GAAG,CAAC,CAAA;YAEjD,OAAO,OAAO,CAAC,CAAC,CAAC,CACf,oBAAC,KAAK,CAAC,QAAQ,IAAC,GAAG,EAAE,GAAG;gBACrB,aAAa,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAC7B,oBAAC,YAAY,CAAC,IAAI,IAChB,GAAG,EAAE,MAAM,CAAC,KAAK,EACjB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;wBACb,CAAC,CAAC,eAAe,EAAE,CAAA;wBACnB,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;oBACrB,CAAC,EACD,SAAS,EAAC,mDAAmD;oBAE5D,MAAM,CAAC,IAAI;oBACX,MAAM,CAAC,KAAK,CACK,CACrB,CAAC;gBACD,CAAC,MAAM,IAAI,oBAAC,YAAY,CAAC,SAAS,OAAG,CACvB,CAClB,CAAC,CAAC,CAAC,CACF,oBAAC,YAAY,CAAC,IAAI,IAChB,GAAG,EAAE,aAAa,CAAC,KAAK,EACxB,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;oBACb,CAAC,CAAC,eAAe,EAAE,CAAA;oBACnB,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;gBAC5B,CAAC,EACD,SAAS,EAAC,mDAAmD;gBAE5D,aAAa,CAAC,IAAI;gBAClB,aAAa,CAAC,KAAK,CACF,CACrB,CAAA;QACH,CAAC,CAAC,CACmB,CACV,CAChB,CAAA;AACH,CAAC,CAAA;AACD,mBAAmB,CAAC,WAAW,GAAG,sBAAsB,CAAA;AAExD,OAAO,EAAE,mBAAmB,EAAE,CAAA","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport { EllipsisHorizontal } from \"@medusajs/icons\"\nimport { CellContext } from \"@tanstack/react-table\"\nimport { DropdownMenu } from \"../../../components/dropdown-menu\"\nimport { IconButton } from \"../../../components/icon-button\"\nimport { DataTableActionColumnDefMeta } from \"../types\"\n\ninterface DataTableActionCellProps<TData> {\n ctx: CellContext<TData, unknown>\n}\n\nconst DataTableActionCell = <TData,>({\n ctx,\n}: DataTableActionCellProps<TData>) => {\n const meta = ctx.column.columnDef.meta as\n | DataTableActionColumnDefMeta<TData>\n | undefined\n const actions = meta?.___actions\n\n if (!actions) {\n return null\n }\n\n const resolvedActions = typeof actions === \"function\" ? actions(ctx) : actions\n\n if (!Array.isArray(resolvedActions)) {\n return null\n }\n\n return (\n <DropdownMenu>\n <DropdownMenu.Trigger asChild className=\"ml-1\">\n <IconButton size=\"small\" variant=\"transparent\">\n <EllipsisHorizontal />\n </IconButton>\n </DropdownMenu.Trigger>\n <DropdownMenu.Content side=\"bottom\">\n {resolvedActions.map((actionOrGroup, idx) => {\n const isArray = Array.isArray(actionOrGroup)\n const isLast = idx === resolvedActions.length - 1\n\n return isArray ? (\n <React.Fragment key={idx}>\n {actionOrGroup.map((action) => (\n <DropdownMenu.Item\n key={action.label}\n onClick={(e) => {\n e.stopPropagation()\n action.onClick(ctx)\n }}\n className=\"[&>svg]:text-ui-fg-subtle flex items-center gap-2\"\n >\n {action.icon}\n {action.label}\n </DropdownMenu.Item>\n ))}\n {!isLast && <DropdownMenu.Separator />}\n </React.Fragment>\n ) : (\n <DropdownMenu.Item\n key={actionOrGroup.label}\n onClick={(e) => {\n e.stopPropagation()\n actionOrGroup.onClick(ctx)\n }}\n className=\"[&>svg]:text-ui-fg-subtle flex items-center gap-2\"\n >\n {actionOrGroup.icon}\n {actionOrGroup.label}\n </DropdownMenu.Item>\n )\n })}\n </DropdownMenu.Content>\n </DropdownMenu>\n )\n}\nDataTableActionCell.displayName = \"DataTable.ActionCell\"\n\nexport { DataTableActionCell }\nexport type { DataTableActionCellProps }\n\n"]}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-table-select-cell.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-select-cell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;
|
1
|
+
{"version":3,"file":"data-table-select-cell.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-select-cell.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAA;AAG7F,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,UAAU,wBAAwB,CAAC,KAAK;IACtC,GAAG,EAAE,oBAAoB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;CAC1C;AAED,QAAA,MAAM,mBAAmB;mBAAmB,yBAAyB,KAAK,CAAC;;CAW1E,CAAA;AAGD,UAAU,0BAA0B,CAAC,KAAK;IACxC,GAAG,EAAE,sBAAsB,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;CAC5C;AAED,QAAA,MAAM,qBAAqB,iBAAmB,2BAA2B,KAAK,CAAC,sBAgB9E,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,CAAA;AACrD,YAAY,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-table-select-cell.js","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-select-cell.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAGZ,OAAO,EAAE,QAAQ,
|
1
|
+
{"version":3,"file":"data-table-select-cell.js","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-select-cell.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAGZ,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAA;AAEhD,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,MAAM,mBAAmB,GAAG,CAAS,KAAsC,EAAE,EAAE;IAC7E,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,aAAa,EAAE,CAAA;IAC7C,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,wBAAwB,EAAE,CAAA;IAEzD,OAAO,CACL,oBAAC,QAAQ,IACP,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EACnC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,QAAQ,GACzB,CACH,CAAA;AACH,CAAC,CAAA;AACD,mBAAmB,CAAC,WAAW,GAAG,sBAAsB,CAAA;AAMxD,MAAM,qBAAqB,GAAG,CAAS,KAAwC,EAAE,EAAE;IACjF,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,yBAAyB,EAAE;QACzD,CAAC,CAAC,eAAe;QACjB,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,wBAAwB,EAAE,CAAA;IAE9C,MAAM,QAAQ,GAAG,CAAC,OAAqB,EAAE,EAAE;QACzC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC,CAAC,OAAO,CAAC,CAAA;IACtD,CAAC,CAAA;IAED,OAAO,CACL,oBAAC,QAAQ,IACP,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,EAAE,EACnC,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,QAAQ,GACzB,CACH,CAAA;AACH,CAAC,CAAA;AAED,OAAO,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,CAAA","sourcesContent":["\"use client\"\n\nimport type { DataTableCellContext, DataTableHeaderContext } from \"@/blocks/data-table/types\"\nimport { Checkbox } from \"@/components/checkbox\"\nimport { CheckedState } from \"@radix-ui/react-checkbox\"\nimport * as React from \"react\"\n\ninterface DataTableSelectCellProps<TData> {\n ctx: DataTableCellContext<TData, unknown>\n}\n\nconst DataTableSelectCell = <TData,>(props: DataTableSelectCellProps<TData>) => {\n const checked = props.ctx.row.getIsSelected()\n const onChange = props.ctx.row.getToggleSelectedHandler()\n\n return (\n <Checkbox\n onClick={(e) => e.stopPropagation()}\n checked={checked}\n onCheckedChange={onChange}\n />\n )\n}\nDataTableSelectCell.displayName = \"DataTable.SelectCell\"\n\ninterface DataTableSelectHeaderProps<TData> {\n ctx: DataTableHeaderContext<TData, unknown>\n}\n\nconst DataTableSelectHeader = <TData,>(props: DataTableSelectHeaderProps<TData>) => {\n const checked = props.ctx.table.getIsSomePageRowsSelected()\n ? \"indeterminate\"\n : props.ctx.table.getIsAllPageRowsSelected()\n\n const onChange = (checked: CheckedState) => {\n props.ctx.table.toggleAllPageRowsSelected(!!checked)\n }\n\n return (\n <Checkbox\n onClick={(e) => e.stopPropagation()}\n checked={checked}\n onCheckedChange={onChange}\n />\n )\n}\n\nexport { DataTableSelectCell, DataTableSelectHeader }\nexport type { DataTableSelectCellProps, DataTableSelectHeaderProps }\n\n"]}
|
@@ -12,7 +12,7 @@ import { DataTableSortingIcon } from "./data-table-sorting-icon";
|
|
12
12
|
* This component renders the table in a data table, supporting advanced features.
|
13
13
|
*/
|
14
14
|
const DataTableTable = (props) => {
|
15
|
-
const hoveredRowId = React.
|
15
|
+
const [hoveredRowId, setHoveredRowId] = React.useState(null);
|
16
16
|
const isKeyDown = React.useRef(false);
|
17
17
|
const [showStickyBorder, setShowStickyBorder] = React.useState(false);
|
18
18
|
const scrollableRef = React.useRef(null);
|
@@ -32,7 +32,7 @@ const DataTableTable = (props) => {
|
|
32
32
|
isKeyDown.current = true;
|
33
33
|
const row = instance
|
34
34
|
.getRowModel()
|
35
|
-
.rows.find((r) => r.id === hoveredRowId
|
35
|
+
.rows.find((r) => r.id === hoveredRowId);
|
36
36
|
if (row && row.getCanSelect()) {
|
37
37
|
row.toggleSelected();
|
38
38
|
}
|
@@ -103,7 +103,7 @@ const DataTableTable = (props) => {
|
|
103
103
|
canSort && (React.createElement(DataTableSortingIcon, { direction: sortDirection })))));
|
104
104
|
}))))),
|
105
105
|
React.createElement(Table.Body, { className: "border-b-0 border-t-0" }, instance.getRowModel().rows.map((row) => {
|
106
|
-
return (React.createElement(Table.Row, { key: row.id, onMouseEnter: () => (
|
106
|
+
return (React.createElement(Table.Row, { key: row.id, onMouseEnter: () => setHoveredRowId(row.id), onMouseLeave: () => setHoveredRowId(null), onClick: (e) => { var _a; return (_a = instance.onRowClick) === null || _a === void 0 ? void 0 : _a.call(instance, e, row); }, className: clx("group/row last:border-b-0", {
|
107
107
|
"cursor-pointer": !!instance.onRowClick,
|
108
108
|
}) }, row.getVisibleCells().map((cell, idx) => {
|
109
109
|
const isSelectCell = cell.column.id === "select";
|
@@ -139,7 +139,7 @@ const DataTableEmptyStateDisplay = ({ state, props, }) => {
|
|
139
139
|
return null;
|
140
140
|
}
|
141
141
|
const content = state === DataTableEmptyState.EMPTY ? props === null || props === void 0 ? void 0 : props.empty : props === null || props === void 0 ? void 0 : props.filtered;
|
142
|
-
return (React.createElement("div", { className: "flex min-h-[250px] w-full flex-
|
142
|
+
return (React.createElement("div", { className: "flex min-h-[250px] w-full flex-col items-center justify-center border-y px-6 py-4" }, (_a = content === null || content === void 0 ? void 0 : content.custom) !== null && _a !== void 0 ? _a : (React.createElement(DefaultEmptyStateContent, { heading: content === null || content === void 0 ? void 0 : content.heading, description: content === null || content === void 0 ? void 0 : content.description }))));
|
143
143
|
};
|
144
144
|
const DataTableTableSkeleton = ({ pageSize = 10, }) => {
|
145
145
|
return (React.createElement("div", { className: "flex w-full flex-1 flex-col overflow-hidden" },
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"data-table-table.js","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-table.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport { Table } from \"@/components/table\"\nimport { flexRender } from \"@tanstack/react-table\"\n\nimport { useDataTableContext } from \"@/blocks/data-table/context/use-data-table-context\"\nimport { Skeleton } from \"@/components/skeleton\"\nimport { Text } from \"@/components/text\"\nimport { clx } from \"@/utils/clx\"\nimport {\n DataTableEmptyState,\n DataTableEmptyStateContent,\n DataTableEmptyStateProps,\n} from \"../types\"\nimport { DataTableSortingIcon } from \"./data-table-sorting-icon\"\n\ninterface DataTableTableProps {\n /**\n * The empty state to display when the table is empty.\n */\n emptyState?: DataTableEmptyStateProps\n}\n\n/**\n * This component renders the table in a data table, supporting advanced features.\n */\nconst DataTableTable = (props: DataTableTableProps) => {\n const hoveredRowId = React.useRef<string | null>(null)\n const isKeyDown = React.useRef(false)\n\n const [showStickyBorder, setShowStickyBorder] = React.useState(false)\n const scrollableRef = React.useRef<HTMLDivElement>(null)\n\n const { instance } = useDataTableContext()\n\n const pageIndex = instance.pageIndex\n\n const columns = instance.getAllColumns()\n\n const hasSelect = columns.find((c) => c.id === \"select\")\n const hasActions = columns.find((c) => c.id === \"action\")\n\n React.useEffect(() => {\n const onKeyDownHandler = (event: KeyboardEvent) => {\n // If an editable element is focused, we don't want to select a row\n const isEditableElementFocused = getIsEditableElementFocused()\n\n if (\n event.key.toLowerCase() === \"x\" &&\n hoveredRowId &&\n !isKeyDown.current &&\n !isEditableElementFocused\n ) {\n isKeyDown.current = true\n\n const row = instance\n .getRowModel()\n .rows.find((r) => r.id === hoveredRowId.current)\n\n if (row && row.getCanSelect()) {\n row.toggleSelected()\n }\n }\n }\n\n const onKeyUpHandler = (event: KeyboardEvent) => {\n if (event.key.toLowerCase() === \"x\") {\n isKeyDown.current = false\n }\n }\n\n document.addEventListener(\"keydown\", onKeyDownHandler)\n document.addEventListener(\"keyup\", onKeyUpHandler)\n return () => {\n document.removeEventListener(\"keydown\", onKeyDownHandler)\n document.removeEventListener(\"keyup\", onKeyUpHandler)\n }\n }, [hoveredRowId, instance])\n\n const handleHorizontalScroll = (e: React.UIEvent<HTMLDivElement>) => {\n const scrollLeft = e.currentTarget.scrollLeft\n\n if (scrollLeft > 0) {\n setShowStickyBorder(true)\n } else {\n setShowStickyBorder(false)\n }\n }\n\n React.useEffect(() => {\n scrollableRef.current?.scroll({ top: 0, left: 0 })\n }, [pageIndex])\n\n if (instance.showSkeleton) {\n return <DataTableTableSkeleton pageSize={instance.pageSize} />\n }\n\n return (\n <div className=\"flex w-full flex-1 flex-col overflow-hidden\">\n {instance.emptyState === DataTableEmptyState.POPULATED && (\n <div\n ref={scrollableRef}\n onScroll={handleHorizontalScroll}\n className=\"min-h-0 w-full flex-1 overflow-auto overscroll-none border-y\"\n >\n <Table className=\"relative isolate w-full\">\n <Table.Header\n className=\"shadow-ui-border-base sticky inset-x-0 top-0 z-[1] w-full border-b-0 border-t-0 shadow-[0_1px_1px_0]\"\n style={{ transform: \"translate3d(0,0,0)\" }}\n >\n {instance.getHeaderGroups().map((headerGroup) => (\n <Table.Row\n key={headerGroup.id}\n className={clx(\"border-b-0\", {\n \"[&_th:last-of-type]:w-[1%] [&_th:last-of-type]:whitespace-nowrap\":\n hasActions,\n \"[&_th:first-of-type]:w-[1%] [&_th:first-of-type]:whitespace-nowrap\":\n hasSelect,\n })}\n >\n {headerGroup.headers.map((header, idx) => {\n const canSort = header.column.getCanSort()\n const sortDirection = header.column.getIsSorted()\n const sortHandler = header.column.getToggleSortingHandler()\n\n const isActionHeader = header.id === \"action\"\n const isSelectHeader = header.id === \"select\"\n const isSpecialHeader = isActionHeader || isSelectHeader\n\n const Wrapper = canSort ? \"button\" : \"div\"\n const isFirstColumn = hasSelect ? idx === 1 : idx === 0\n\n return (\n <Table.HeaderCell\n key={header.id}\n className={clx(\"whitespace-nowrap\", {\n \"w-[calc(20px+24px+24px)] min-w-[calc(20px+24px+24px)] max-w-[calc(20px+24px+24px)]\":\n isSelectHeader,\n \"w-[calc(28px+24px+4px)] min-w-[calc(28px+24px+4px)] max-w-[calc(28px+24px+4px)]\":\n isActionHeader,\n \"after:absolute after:inset-y-0 after:right-0 after:h-full after:w-px after:bg-transparent after:content-['']\":\n isFirstColumn,\n \"after:bg-ui-border-base\":\n showStickyBorder && isFirstColumn,\n \"bg-ui-bg-subtle sticky\":\n isFirstColumn || isSelectHeader,\n \"left-0\":\n isSelectHeader || (isFirstColumn && !hasSelect),\n \"left-[calc(20px+24px+24px)]\":\n isFirstColumn && hasSelect,\n })}\n style={\n !isSpecialHeader\n ? {\n width: header.column.columnDef.size,\n maxWidth: header.column.columnDef.maxSize,\n minWidth: header.column.columnDef.minSize,\n }\n : undefined\n }\n >\n <Wrapper\n type={canSort ? \"button\" : undefined}\n onClick={canSort ? sortHandler : undefined}\n className={clx(\n \"group flex w-fit cursor-default items-center gap-2\",\n {\n \"cursor-pointer\": canSort,\n }\n )}\n >\n {flexRender(\n header.column.columnDef.header,\n header.getContext()\n )}\n {canSort && (\n <DataTableSortingIcon direction={sortDirection} />\n )}\n </Wrapper>\n </Table.HeaderCell>\n )\n })}\n </Table.Row>\n ))}\n </Table.Header>\n <Table.Body className=\"border-b-0 border-t-0\">\n {instance.getRowModel().rows.map((row) => {\n return (\n <Table.Row\n key={row.id}\n onMouseEnter={() => (hoveredRowId.current = row.id)}\n onMouseLeave={() => (hoveredRowId.current = null)}\n onClick={(e) => instance.onRowClick?.(e, row)}\n className={clx(\"group/row last-of-type:border-b-0\", {\n \"cursor-pointer\": !!instance.onRowClick,\n })}\n >\n {row.getVisibleCells().map((cell, idx) => {\n const isSelectCell = cell.column.id === \"select\"\n const isActionCell = cell.column.id === \"action\"\n const isSpecialCell = isSelectCell || isActionCell\n\n const isFirstColumn = hasSelect ? idx === 1 : idx === 0\n\n return (\n <Table.Cell\n key={cell.id}\n className={clx(\n \"items-stretch truncate whitespace-nowrap\",\n {\n \"w-[calc(20px+24px+24px)] min-w-[calc(20px+24px+24px)] max-w-[calc(20px+24px+24px)]\":\n isSelectCell,\n \"w-[calc(28px+24px+4px)] min-w-[calc(28px+24px+4px)] max-w-[calc(28px+24px+4px)]\":\n isActionCell,\n \"bg-ui-bg-base group-hover/row:bg-ui-bg-base-hover transition-fg sticky h-full\":\n isFirstColumn || isSelectCell,\n \"after:absolute after:inset-y-0 after:right-0 after:h-full after:w-px after:bg-transparent after:content-['']\":\n isFirstColumn,\n \"after:bg-ui-border-base\":\n showStickyBorder && isFirstColumn,\n \"left-0\":\n isSelectCell || (isFirstColumn && !hasSelect),\n \"left-[calc(20px+24px+24px)]\":\n isFirstColumn && hasSelect,\n }\n )}\n style={\n !isSpecialCell\n ? {\n width: cell.column.columnDef.size,\n maxWidth: cell.column.columnDef.maxSize,\n minWidth: cell.column.columnDef.minSize,\n }\n : undefined\n }\n >\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext()\n )}\n </Table.Cell>\n )\n })}\n </Table.Row>\n )\n })}\n </Table.Body>\n </Table>\n </div>\n )}\n <DataTableEmptyStateDisplay\n state={instance.emptyState}\n props={props.emptyState}\n />\n </div>\n )\n}\nDataTableTable.displayName = \"DataTable.Table\"\n\ninterface DataTableEmptyStateDisplayProps {\n state: DataTableEmptyState\n props?: DataTableEmptyStateProps\n}\n\nconst DefaultEmptyStateContent = ({\n heading,\n description,\n}: DataTableEmptyStateContent) => (\n <div className=\"flex size-full flex-col items-center justify-center gap-2\">\n <Text size=\"base\" weight=\"plus\">\n {heading}\n </Text>\n <Text>{description}</Text>\n </div>\n)\n\nconst DataTableEmptyStateDisplay = ({\n state,\n props,\n}: DataTableEmptyStateDisplayProps) => {\n if (state === DataTableEmptyState.POPULATED) {\n return null\n }\n\n const content =\n state === DataTableEmptyState.EMPTY ? props?.empty : props?.filtered\n\n return (\n <div className=\"flex min-h-[250px] w-full flex-1 flex-col items-center justify-center border-y px-6 py-4\">\n {content?.custom ?? (\n <DefaultEmptyStateContent\n heading={content?.heading}\n description={content?.description}\n />\n )}\n </div>\n )\n}\n\ninterface DataTableTableSkeletonProps {\n pageSize?: number\n}\n\nconst DataTableTableSkeleton = ({\n pageSize = 10,\n}: DataTableTableSkeletonProps) => {\n return (\n <div className=\"flex w-full flex-1 flex-col overflow-hidden\">\n <div className=\"min-h-0 w-full flex-1 overscroll-none border-y\">\n <div className=\"flex flex-col divide-y\">\n <Skeleton className=\"h-12 w-full\" />\n {Array.from({ length: pageSize }, (_, i) => i).map((row) => (\n <Skeleton key={row} className=\"h-12 w-full rounded-none\" />\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nfunction getIsEditableElementFocused() {\n const activeElement = !!document ? document.activeElement : null\n const isEditableElementFocused =\n activeElement instanceof HTMLInputElement ||\n activeElement instanceof HTMLTextAreaElement ||\n activeElement?.getAttribute(\"contenteditable\") === \"true\"\n\n return isEditableElementFocused\n}\n\nexport { DataTableTable }\nexport type { DataTableEmptyStateProps, DataTableTableProps }\n"]}
|
1
|
+
{"version":3,"file":"data-table-table.js","sourceRoot":"","sources":["../../../../../src/blocks/data-table/components/data-table-table.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\"\n\nimport * as React from \"react\"\n\nimport { Table } from \"@/components/table\"\nimport { flexRender } from \"@tanstack/react-table\"\n\nimport { useDataTableContext } from \"@/blocks/data-table/context/use-data-table-context\"\nimport { Skeleton } from \"@/components/skeleton\"\nimport { Text } from \"@/components/text\"\nimport { clx } from \"@/utils/clx\"\nimport {\n DataTableEmptyState,\n DataTableEmptyStateContent,\n DataTableEmptyStateProps,\n} from \"../types\"\nimport { DataTableSortingIcon } from \"./data-table-sorting-icon\"\n\ninterface DataTableTableProps {\n /**\n * The empty state to display when the table is empty.\n */\n emptyState?: DataTableEmptyStateProps\n}\n\n/**\n * This component renders the table in a data table, supporting advanced features.\n */\nconst DataTableTable = (props: DataTableTableProps) => {\n const [hoveredRowId, setHoveredRowId] = React.useState<string | null>(null)\n const isKeyDown = React.useRef(false)\n\n const [showStickyBorder, setShowStickyBorder] = React.useState(false)\n const scrollableRef = React.useRef<HTMLDivElement>(null)\n\n const { instance } = useDataTableContext()\n\n const pageIndex = instance.pageIndex\n\n const columns = instance.getAllColumns()\n\n const hasSelect = columns.find((c) => c.id === \"select\")\n const hasActions = columns.find((c) => c.id === \"action\")\n\n React.useEffect(() => {\n const onKeyDownHandler = (event: KeyboardEvent) => {\n // If an editable element is focused, we don't want to select a row\n const isEditableElementFocused = getIsEditableElementFocused()\n\n if (\n event.key.toLowerCase() === \"x\" &&\n hoveredRowId &&\n !isKeyDown.current &&\n !isEditableElementFocused\n ) {\n isKeyDown.current = true\n\n const row = instance\n .getRowModel()\n .rows.find((r) => r.id === hoveredRowId)\n\n if (row && row.getCanSelect()) {\n row.toggleSelected()\n }\n }\n }\n\n const onKeyUpHandler = (event: KeyboardEvent) => {\n if (event.key.toLowerCase() === \"x\") {\n isKeyDown.current = false\n }\n }\n\n document.addEventListener(\"keydown\", onKeyDownHandler)\n document.addEventListener(\"keyup\", onKeyUpHandler)\n return () => {\n document.removeEventListener(\"keydown\", onKeyDownHandler)\n document.removeEventListener(\"keyup\", onKeyUpHandler)\n }\n }, [hoveredRowId, instance])\n\n const handleHorizontalScroll = (e: React.UIEvent<HTMLDivElement>) => {\n const scrollLeft = e.currentTarget.scrollLeft\n\n if (scrollLeft > 0) {\n setShowStickyBorder(true)\n } else {\n setShowStickyBorder(false)\n }\n }\n\n React.useEffect(() => {\n scrollableRef.current?.scroll({ top: 0, left: 0 })\n }, [pageIndex])\n\n if (instance.showSkeleton) {\n return <DataTableTableSkeleton pageSize={instance.pageSize} />\n }\n\n return (\n <div className=\"flex w-full flex-1 flex-col overflow-hidden\">\n {instance.emptyState === DataTableEmptyState.POPULATED && (\n <div\n ref={scrollableRef}\n onScroll={handleHorizontalScroll}\n className=\"min-h-0 w-full flex-1 overflow-auto overscroll-none border-y\"\n >\n <Table className=\"relative isolate w-full\">\n <Table.Header\n className=\"shadow-ui-border-base sticky inset-x-0 top-0 z-[1] w-full border-b-0 border-t-0 shadow-[0_1px_1px_0]\"\n style={{ transform: \"translate3d(0,0,0)\" }}\n >\n {instance.getHeaderGroups().map((headerGroup) => (\n <Table.Row\n key={headerGroup.id}\n className={clx(\"border-b-0\", {\n \"[&_th:last-of-type]:w-[1%] [&_th:last-of-type]:whitespace-nowrap\":\n hasActions,\n \"[&_th:first-of-type]:w-[1%] [&_th:first-of-type]:whitespace-nowrap\":\n hasSelect,\n })}\n >\n {headerGroup.headers.map((header, idx) => {\n const canSort = header.column.getCanSort()\n const sortDirection = header.column.getIsSorted()\n const sortHandler = header.column.getToggleSortingHandler()\n\n const isActionHeader = header.id === \"action\"\n const isSelectHeader = header.id === \"select\"\n const isSpecialHeader = isActionHeader || isSelectHeader\n\n const Wrapper = canSort ? \"button\" : \"div\"\n const isFirstColumn = hasSelect ? idx === 1 : idx === 0\n\n return (\n <Table.HeaderCell\n key={header.id}\n className={clx(\"whitespace-nowrap\", {\n \"w-[calc(20px+24px+24px)] min-w-[calc(20px+24px+24px)] max-w-[calc(20px+24px+24px)]\":\n isSelectHeader,\n \"w-[calc(28px+24px+4px)] min-w-[calc(28px+24px+4px)] max-w-[calc(28px+24px+4px)]\":\n isActionHeader,\n \"after:absolute after:inset-y-0 after:right-0 after:h-full after:w-px after:bg-transparent after:content-['']\":\n isFirstColumn,\n \"after:bg-ui-border-base\":\n showStickyBorder && isFirstColumn,\n \"bg-ui-bg-subtle sticky\":\n isFirstColumn || isSelectHeader,\n \"left-0\":\n isSelectHeader || (isFirstColumn && !hasSelect),\n \"left-[calc(20px+24px+24px)]\":\n isFirstColumn && hasSelect,\n })}\n style={\n !isSpecialHeader\n ? {\n width: header.column.columnDef.size,\n maxWidth: header.column.columnDef.maxSize,\n minWidth: header.column.columnDef.minSize,\n }\n : undefined\n }\n >\n <Wrapper\n type={canSort ? \"button\" : undefined}\n onClick={canSort ? sortHandler : undefined}\n className={clx(\n \"group flex w-fit cursor-default items-center gap-2\",\n {\n \"cursor-pointer\": canSort,\n }\n )}\n >\n {flexRender(\n header.column.columnDef.header,\n header.getContext()\n )}\n {canSort && (\n <DataTableSortingIcon direction={sortDirection} />\n )}\n </Wrapper>\n </Table.HeaderCell>\n )\n })}\n </Table.Row>\n ))}\n </Table.Header>\n <Table.Body className=\"border-b-0 border-t-0\">\n {instance.getRowModel().rows.map((row) => {\n return (\n <Table.Row\n key={row.id}\n onMouseEnter={() => setHoveredRowId(row.id)}\n onMouseLeave={() => setHoveredRowId(null)}\n onClick={(e) => instance.onRowClick?.(e, row)}\n className={clx(\"group/row last:border-b-0\", {\n \"cursor-pointer\": !!instance.onRowClick,\n })}\n >\n {row.getVisibleCells().map((cell, idx) => {\n const isSelectCell = cell.column.id === \"select\"\n const isActionCell = cell.column.id === \"action\"\n const isSpecialCell = isSelectCell || isActionCell\n\n const isFirstColumn = hasSelect ? idx === 1 : idx === 0\n\n return (\n <Table.Cell\n key={cell.id}\n className={clx(\n \"items-stretch truncate whitespace-nowrap\",\n {\n \"w-[calc(20px+24px+24px)] min-w-[calc(20px+24px+24px)] max-w-[calc(20px+24px+24px)]\":\n isSelectCell,\n \"w-[calc(28px+24px+4px)] min-w-[calc(28px+24px+4px)] max-w-[calc(28px+24px+4px)]\":\n isActionCell,\n \"bg-ui-bg-base group-hover/row:bg-ui-bg-base-hover transition-fg sticky h-full\":\n isFirstColumn || isSelectCell,\n \"after:absolute after:inset-y-0 after:right-0 after:h-full after:w-px after:bg-transparent after:content-['']\":\n isFirstColumn,\n \"after:bg-ui-border-base\":\n showStickyBorder && isFirstColumn,\n \"left-0\":\n isSelectCell || (isFirstColumn && !hasSelect),\n \"left-[calc(20px+24px+24px)]\":\n isFirstColumn && hasSelect,\n }\n )}\n style={\n !isSpecialCell\n ? {\n width: cell.column.columnDef.size,\n maxWidth: cell.column.columnDef.maxSize,\n minWidth: cell.column.columnDef.minSize,\n }\n : undefined\n }\n >\n {flexRender(\n cell.column.columnDef.cell,\n cell.getContext()\n )}\n </Table.Cell>\n )\n })}\n </Table.Row>\n )\n })}\n </Table.Body>\n </Table>\n </div>\n )}\n <DataTableEmptyStateDisplay\n state={instance.emptyState}\n props={props.emptyState}\n />\n </div>\n )\n}\nDataTableTable.displayName = \"DataTable.Table\"\n\ninterface DataTableEmptyStateDisplayProps {\n state: DataTableEmptyState\n props?: DataTableEmptyStateProps\n}\n\nconst DefaultEmptyStateContent = ({\n heading,\n description,\n}: DataTableEmptyStateContent) => (\n <div className=\"flex size-full flex-col items-center justify-center gap-2\">\n <Text size=\"base\" weight=\"plus\">\n {heading}\n </Text>\n <Text>{description}</Text>\n </div>\n)\n\nconst DataTableEmptyStateDisplay = ({\n state,\n props,\n}: DataTableEmptyStateDisplayProps) => {\n if (state === DataTableEmptyState.POPULATED) {\n return null\n }\n\n const content =\n state === DataTableEmptyState.EMPTY ? props?.empty : props?.filtered\n\n return (\n <div className=\"flex min-h-[250px] w-full flex-col items-center justify-center border-y px-6 py-4\">\n {content?.custom ?? (\n <DefaultEmptyStateContent\n heading={content?.heading}\n description={content?.description}\n />\n )}\n </div>\n )\n}\n\ninterface DataTableTableSkeletonProps {\n pageSize?: number\n}\n\nconst DataTableTableSkeleton = ({\n pageSize = 10,\n}: DataTableTableSkeletonProps) => {\n return (\n <div className=\"flex w-full flex-1 flex-col overflow-hidden\">\n <div className=\"min-h-0 w-full flex-1 overscroll-none border-y\">\n <div className=\"flex flex-col divide-y\">\n <Skeleton className=\"h-12 w-full\" />\n {Array.from({ length: pageSize }, (_, i) => i).map((row) => (\n <Skeleton key={row} className=\"h-12 w-full rounded-none\" />\n ))}\n </div>\n </div>\n </div>\n )\n}\n\nfunction getIsEditableElementFocused() {\n const activeElement = !!document ? document.activeElement : null\n const isEditableElementFocused =\n activeElement instanceof HTMLInputElement ||\n activeElement instanceof HTMLTextAreaElement ||\n activeElement?.getAttribute(\"contenteditable\") === \"true\"\n\n return isEditableElementFocused\n}\n\nexport { DataTableTable }\nexport type { DataTableEmptyStateProps, DataTableTableProps }\n\n"]}
|
@@ -3,5 +3,5 @@ export * from "./use-data-table";
|
|
3
3
|
export * from "./utils/create-data-table-column-helper";
|
4
4
|
export * from "./utils/create-data-table-command-helper";
|
5
5
|
export * from "./utils/create-data-table-filter-helper";
|
6
|
-
export type { DataTableAction, DataTableCellContext, DataTableColumn, DataTableColumnDef, DataTableColumnFilter, DataTableCommand, DataTableDateComparisonOperator, DataTableEmptyState, DataTableEmptyStateContent, DataTableEmptyStateProps, DataTableFilter, DataTableFilteringState, DataTableHeaderContext, DataTablePaginationState,
|
6
|
+
export type { DataTableAction, DataTableCellContext, DataTableColumn, DataTableColumnDef, DataTableColumnFilter, DataTableCommand, DataTableDateComparisonOperator, DataTableEmptyState, DataTableEmptyStateContent, DataTableEmptyStateProps, DataTableFilter, DataTableFilteringState, DataTableHeaderContext, DataTablePaginationState, DataTableRowSelectionState, DataTableSortDirection, DataTableSortingState, } from "./types";
|
7
7
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/data-table/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yCAAyC,CAAA;AACvD,cAAc,0CAA0C,CAAA;AACxD,cAAc,yCAAyC,CAAA;AAEvD,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,+BAA+B,EAC/B,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/data-table/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yCAAyC,CAAA;AACvD,cAAc,0CAA0C,CAAA;AACxD,cAAc,yCAAyC,CAAA;AAEvD,YAAY,EACV,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,gBAAgB,EAChB,+BAA+B,EAC/B,mBAAmB,EACnB,0BAA0B,EAC1B,wBAAwB,EACxB,eAAe,EACf,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,0BAA0B,EAC1B,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,SAAS,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/blocks/data-table/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yCAAyC,CAAA;AACvD,cAAc,0CAA0C,CAAA;AACxD,cAAc,yCAAyC,CAAA","sourcesContent":["export * from \"./data-table\"\nexport * from \"./use-data-table\"\nexport * from \"./utils/create-data-table-column-helper\"\nexport * from \"./utils/create-data-table-command-helper\"\nexport * from \"./utils/create-data-table-filter-helper\"\n\nexport type {\n DataTableAction,\n DataTableCellContext,\n DataTableColumn,\n DataTableColumnDef,\n DataTableColumnFilter,\n DataTableCommand,\n DataTableDateComparisonOperator,\n DataTableEmptyState,\n DataTableEmptyStateContent,\n DataTableEmptyStateProps,\n DataTableFilter,\n DataTableFilteringState,\n DataTableHeaderContext,\n DataTablePaginationState,\n
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/blocks/data-table/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,yCAAyC,CAAA;AACvD,cAAc,0CAA0C,CAAA;AACxD,cAAc,yCAAyC,CAAA","sourcesContent":["export * from \"./data-table\"\nexport * from \"./use-data-table\"\nexport * from \"./utils/create-data-table-column-helper\"\nexport * from \"./utils/create-data-table-command-helper\"\nexport * from \"./utils/create-data-table-filter-helper\"\n\nexport type {\n DataTableAction,\n DataTableCellContext,\n DataTableColumn,\n DataTableColumnDef,\n DataTableColumnFilter,\n DataTableCommand,\n DataTableDateComparisonOperator,\n DataTableEmptyState,\n DataTableEmptyStateContent,\n DataTableEmptyStateProps,\n DataTableFilter,\n DataTableFilteringState,\n DataTableHeaderContext,\n DataTablePaginationState,\n DataTableRowSelectionState,\n DataTableSortDirection,\n DataTableSortingState,\n} from \"./types\"\n"]}
|
@@ -1,7 +1,6 @@
|
|
1
1
|
/// <reference types="react" />
|
2
|
-
import type { AccessorFn, AccessorFnColumnDef, AccessorKeyColumnDef, CellContext, Column, ColumnDef, ColumnFilter, ColumnSort, DeepKeys, DeepValue, DisplayColumnDef, HeaderContext, IdentifiedColumnDef, IdIdentifier, PaginationState,
|
2
|
+
import type { AccessorFn, AccessorFnColumnDef, AccessorKeyColumnDef, CellContext, Column, ColumnDef, ColumnFilter, ColumnSort, DeepKeys, DeepValue, DisplayColumnDef, HeaderContext, IdentifiedColumnDef, IdIdentifier, PaginationState, RowData, RowSelectionState, SortDirection, StringHeaderIdentifier, StringOrTemplateHeader } from "@tanstack/react-table";
|
3
3
|
export type DataTableRowData = RowData;
|
4
|
-
export type DataTableRow<TData extends DataTableRowData> = Row<TData>;
|
5
4
|
export type DataTableAction<TData> = {
|
6
5
|
label: string;
|
7
6
|
onClick: (ctx: CellContext<TData, unknown>) => void;
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/data-table/types.ts"],"names":[],"mappings":";AAAA,OAAO,KAAK,EACV,UAAU,EACV,mBAAmB,EACnB,oBAAoB,EACpB,WAAW,EACX,MAAM,EACN,SAAS,EACT,YAAY,EACZ,UAAU,EACV,QAAQ,EACR,SAAS,EACT,gBAAgB,EAChB,aAAa,EACb,mBAAmB,EACnB,YAAY,EACZ,eAAe,EACf,
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/blocks/data-table/types.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/blocks/data-table/types.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/blocks/data-table/types.ts"],"names":[],"mappings":"AA6QA,MAAM,CAAN,IAAY,mBAIX;AAJD,WAAY,mBAAmB;IAC7B,sCAAe,CAAA;IACf,wDAAiC,CAAA;IACjC,8CAAuB,CAAA;AACzB,CAAC,EAJW,mBAAmB,KAAnB,mBAAmB,QAI9B","sourcesContent":["import type {\n AccessorFn,\n AccessorFnColumnDef,\n AccessorKeyColumnDef,\n CellContext,\n Column,\n ColumnDef,\n ColumnFilter,\n ColumnSort,\n DeepKeys,\n DeepValue,\n DisplayColumnDef,\n HeaderContext,\n IdentifiedColumnDef,\n IdIdentifier,\n PaginationState,\n RowData,\n RowSelectionState,\n SortDirection,\n StringHeaderIdentifier,\n StringOrTemplateHeader,\n} from \"@tanstack/react-table\"\n\nexport type DataTableRowData = RowData\n\nexport type DataTableAction<TData> = {\n label: string\n onClick: (ctx: CellContext<TData, unknown>) => void\n icon?: React.ReactNode\n}\n\nexport interface DataTableCellContext<TData extends DataTableRowData, TValue>\n extends CellContext<TData, TValue> {}\n\nexport interface DataTableHeaderContext<TData extends DataTableRowData, TValue>\n extends HeaderContext<TData, TValue> {}\n\nexport type DataTableSortDirection = SortDirection\n\nexport interface DataTableActionColumnDef<TData>\n extends Pick<DisplayColumnDef<TData>, \"meta\"> {\n actions:\n | DataTableAction<TData>[]\n | DataTableAction<TData>[][]\n | ((\n ctx: DataTableCellContext<TData, unknown>\n ) => DataTableAction<TData>[] | DataTableAction<TData>[][])\n}\n\nexport interface DataTableSelectColumnDef<TData>\n extends Pick<DisplayColumnDef<TData>, \"cell\" | \"header\"> {}\n\nexport type DataTableSortableColumnDef = {\n /**\n * The label to display in the sorting menu.\n */\n sortLabel?: string\n /**\n * The label to display in the sorting menu when sorting in ascending order.\n */\n sortAscLabel?: string\n /**\n * The label to display in the sorting menu when sorting in descending order.\n */\n sortDescLabel?: string\n /**\n * Whether the column is sortable.\n * @default false\n */\n enableSorting?: boolean\n}\n\nexport type DataTableSortableColumnDefMeta = {\n ___sortMetaData?: DataTableSortableColumnDef\n}\n\nexport type DataTableActionColumnDefMeta<TData> = {\n ___actions?:\n | DataTableAction<TData>[]\n | DataTableAction<TData>[][]\n | ((ctx: DataTableCellContext<TData, unknown>) => DataTableAction<TData>[])\n}\n\nexport interface DataTableColumn<\n TData extends DataTableRowData,\n TValue = unknown\n> extends Column<TData, TValue> {}\n\nexport type DataTableColumnDef<\n TData extends DataTableRowData,\n TValue = unknown\n> = ColumnDef<TData, TValue>\n\nexport type DataTableColumnSizing = {\n /**\n * The maximum size of the column.\n */\n maxSize?: number\n /**\n * The minimum size of the column.\n */\n minSize?: number\n /**\n * The size of the column.\n */\n size?: number\n}\n\ntype DataTableColumnIdentifiers<TData extends DataTableRowData, TValue> =\n | IdIdentifier<TData, TValue>\n | StringHeaderIdentifier\n\nexport type DataTableDisplayColumnDef<\n TData extends DataTableRowData,\n TValue = unknown\n> = Pick<\n DisplayColumnDef<TData, TValue>,\n \"meta\" | \"header\" | \"cell\" | \"minSize\" | \"maxSize\" | \"size\"\n> &\n DataTableColumnIdentifiers<TData, TValue>\n\nexport interface DataTableIdentifiedColumnDef<\n TData extends DataTableRowData,\n TValue\n> extends Pick<\n IdentifiedColumnDef<TData, TValue>,\n \"meta\" | \"header\" | \"cell\" | \"minSize\" | \"maxSize\" | \"size\"\n > {\n id?: string\n header?: StringOrTemplateHeader<TData, TValue>\n}\n\nexport interface DataTableColumnHelper<TData> {\n /**\n * Create a accessor column.\n *\n * @param accessor The accessor to create the column for.\n * @param column The column to create for the accessor.\n * @returns The created accessor.\n */\n accessor: <\n TAccessor extends AccessorFn<TData> | DeepKeys<TData>,\n TValue extends TAccessor extends AccessorFn<TData, infer TReturn>\n ? TReturn\n : TAccessor extends DeepKeys<TData>\n ? DeepValue<TData, TAccessor>\n : never\n >(\n accessor: TAccessor,\n column: TAccessor extends AccessorFn<TData>\n ? DataTableDisplayColumnDef<TData, TValue> & DataTableSortableColumnDef\n : DataTableIdentifiedColumnDef<TData, TValue> & DataTableSortableColumnDef\n ) => TAccessor extends AccessorFn<TData>\n ? AccessorFnColumnDef<TData, TValue>\n : AccessorKeyColumnDef<TData, TValue>\n /**\n * Create a display column.\n *\n * @param column The column to create the display for.\n * @returns The created display column.\n */\n display: (column: DataTableDisplayColumnDef<TData>) => DisplayColumnDef<TData>\n /**\n * Create an action column.\n *\n * @param props The props to create the action column for.\n * @returns The created action column.\n */\n action: (\n props: DataTableActionColumnDef<TData>\n ) => DisplayColumnDef<TData, unknown>\n /**\n * Create a select column.\n *\n * @param props The props to create the select column for.\n * @returns The created select column.\n */\n select: (\n props?: DataTableSelectColumnDef<TData>\n ) => DisplayColumnDef<TData, unknown>\n}\n\nexport interface DataTableSortingState extends ColumnSort {}\nexport interface DataTableRowSelectionState extends RowSelectionState {}\nexport interface DataTablePaginationState extends PaginationState {}\nexport type DataTableFilteringState<\n T extends Record<string, unknown> = Record<string, unknown>\n> = {\n [K in keyof T]: T[K]\n}\n\nexport type DataTableFilterType = \"radio\" | \"select\" | \"date\"\nexport type DataTableFilterOption<T = string> = {\n label: string\n value: T\n}\n\ninterface DataTableBaseFilterProps {\n type: DataTableFilterType\n label: string\n}\n\nexport interface DataTableRadioFilterProps extends DataTableBaseFilterProps {\n type: \"radio\"\n options: DataTableFilterOption[]\n}\n\nexport interface DataTableSelectFilterProps extends DataTableBaseFilterProps {\n type: \"select\"\n options: DataTableFilterOption[]\n}\n\nexport interface DataTableDateFilterProps extends DataTableBaseFilterProps {\n type: \"date\"\n /**\n * The format of the date.\n * @default \"date\"\n */\n format?: \"date\" | \"date-time\"\n /**\n * The label to display for the range option.\n */\n rangeOptionLabel?: string\n /**\n * The label to display for the start of the range option.\n */\n rangeOptionStartLabel?: string\n /**\n * The label to display for the end of the range option.\n */\n rangeOptionEndLabel?: string\n /**\n * Whether to disable the range option.\n */\n disableRangeOption?: boolean\n /**\n * A function to format the date value.\n *\n * @example\n * ```tsx\n * formatDateValue={(value) => value.toLocaleDateString()}\n * ```\n */\n formatDateValue?: (value: Date) => string\n /**\n * The options to display in the filter.\n *\n * @example\n * ```tsx\n * options: [\n * { label: \"Today\", value: { $gte: new Date().toISOString() } },\n * { label: \"Yesterday\", value: { $gte: new Date(new Date().getTime() - 24 * 60 * 60 * 1000).toISOString() } },\n * ]\n * ```\n */\n options: DataTableFilterOption<DataTableDateComparisonOperator>[]\n}\n\nexport type DataTableFilterProps =\n | DataTableRadioFilterProps\n | DataTableSelectFilterProps\n | DataTableDateFilterProps\n\nexport type DataTableFilter<\n T extends DataTableFilterProps = DataTableFilterProps\n> = T & {\n id: string\n}\n\nexport enum DataTableEmptyState {\n EMPTY = \"EMPTY\",\n FILTERED_EMPTY = \"FILTERED_EMPTY\",\n POPULATED = \"POPULATED\",\n}\n\nexport type DataTableDateComparisonOperator = {\n /**\n * The filtered date must be greater than or equal to this value.\n */\n $gte?: string\n /**\n * The filtered date must be less than or equal to this value.\n */\n $lte?: string\n /**\n * The filtered date must be less than this value.\n */\n $lt?: string\n /**\n * The filtered date must be greater than this value.\n */\n $gt?: string\n}\n\ntype DataTableCommandAction = (\n selection: DataTableRowSelectionState\n) => void | Promise<void>\n\nexport interface DataTableCommand {\n /**\n * The label to display in the command bar.\n */\n label: string\n /**\n * The action to perform when the command is selected.\n */\n action: DataTableCommandAction\n /**\n * The shortcut to use for the command.\n *\n * @example \"i\"\n */\n shortcut: string\n}\n\nexport type DataTableEmptyStateContent = {\n /**\n * The heading to display in the empty state.\n */\n heading?: string\n /**\n * The description to display in the empty state.\n */\n description?: string\n /**\n * A custom component to display in the empty state, if provided it will override the heading and description.\n */\n custom?: React.ReactNode\n}\n\nexport type DataTableEmptyStateProps = {\n /**\n * The empty state to display when the table is filtered, but no rows are found.\n */\n filtered?: DataTableEmptyStateContent\n /**\n * The empty state to display when the table is empty.\n */\n empty?: DataTableEmptyStateContent\n}\n\nexport interface DataTableColumnFilter extends ColumnFilter {}\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import { type TableOptions, useReactTable } from "@tanstack/react-table";
|
2
2
|
import * as React from "react";
|
3
|
-
import { DataTableColumnDef, DataTableColumnFilter, DataTableCommand, DataTableDateComparisonOperator, DataTableEmptyState, DataTableFilter, DataTableFilteringState, DataTableFilterOption, DataTablePaginationState,
|
3
|
+
import { DataTableColumnDef, DataTableColumnFilter, DataTableCommand, DataTableDateComparisonOperator, DataTableEmptyState, DataTableFilter, DataTableFilteringState, DataTableFilterOption, DataTablePaginationState, DataTableRowSelectionState, DataTableSortingState } from "./types";
|
4
4
|
interface DataTableOptions<TData> extends Pick<TableOptions<TData>, "data" | "getRowId"> {
|
5
5
|
/**
|
6
6
|
* The columns to use for the table.
|
@@ -31,7 +31,6 @@ interface DataTableOptions<TData> extends Pick<TableOptions<TData>, "data" | "ge
|
|
31
31
|
rowSelection?: {
|
32
32
|
state: DataTableRowSelectionState;
|
33
33
|
onRowSelectionChange: (state: DataTableRowSelectionState) => void;
|
34
|
-
enableRowSelection?: boolean | ((row: DataTableRow<TData>) => boolean) | undefined;
|
35
34
|
};
|
36
35
|
/**
|
37
36
|
* The state and callback for the sorting.
|