@medusajs/ui 1.0.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +51 -2
- package/dist/cjs/components/badge/badge.d.ts +16 -5
- package/dist/cjs/components/badge/badge.js +20 -31
- package/dist/cjs/components/badge/badge.js.map +1 -1
- package/dist/cjs/components/button/button.d.ts +1 -2
- package/dist/cjs/components/button/button.js +9 -37
- package/dist/cjs/components/button/button.js.map +1 -1
- package/dist/cjs/components/calendar/calendar.js +4 -4
- package/dist/cjs/components/calendar/calendar.js.map +1 -1
- package/dist/cjs/components/code-block/code-block.d.ts +3 -5
- package/dist/cjs/components/code-block/code-block.js +19 -19
- package/dist/cjs/components/code-block/code-block.js.map +1 -1
- package/dist/cjs/components/command-bar/command-bar.d.ts +22 -0
- package/dist/cjs/components/command-bar/command-bar.js +63 -0
- package/dist/cjs/components/command-bar/command-bar.js.map +1 -0
- package/dist/cjs/components/command-bar/index.d.ts +1 -0
- package/dist/cjs/components/command-bar/index.js +5 -0
- package/dist/cjs/components/command-bar/index.js.map +1 -0
- package/dist/cjs/components/container/container.d.ts +1 -1
- package/dist/cjs/components/container/container.js.map +1 -1
- package/dist/cjs/components/currency-input/currency-input.d.ts +21 -0
- package/dist/cjs/components/currency-input/currency-input.js +54 -0
- package/dist/cjs/components/currency-input/currency-input.js.map +1 -0
- package/dist/cjs/components/currency-input/index.d.ts +1 -0
- package/dist/cjs/components/currency-input/index.js +5 -0
- package/dist/cjs/components/currency-input/index.js.map +1 -0
- package/dist/cjs/components/date-picker/date-picker.d.ts +1 -1
- package/dist/cjs/components/date-picker/date-picker.js +42 -28
- package/dist/cjs/components/date-picker/date-picker.js.map +1 -1
- package/dist/cjs/components/drawer/drawer.d.ts +13 -15
- package/dist/cjs/components/drawer/drawer.js +53 -44
- package/dist/cjs/components/drawer/drawer.js.map +1 -1
- package/dist/cjs/components/dropdown-menu/dropdown-menu.js +2 -2
- package/dist/cjs/components/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/cjs/components/focus-modal/focus-modal.d.ts +9 -12
- package/dist/cjs/components/focus-modal/focus-modal.js +39 -35
- package/dist/cjs/components/focus-modal/focus-modal.js.map +1 -1
- package/dist/cjs/components/heading/heading.js +3 -3
- package/dist/cjs/components/heading/heading.js.map +1 -1
- package/dist/cjs/components/hint/hint.d.ts +1 -1
- package/dist/cjs/components/icon-badge/icon-badge.d.ts +20 -0
- package/dist/cjs/components/icon-badge/icon-badge.js +24 -0
- package/dist/cjs/components/icon-badge/icon-badge.js.map +1 -0
- package/dist/cjs/components/icon-badge/index.d.ts +1 -0
- package/dist/cjs/components/icon-badge/index.js +5 -0
- package/dist/cjs/components/icon-badge/index.js.map +1 -0
- package/dist/cjs/components/icon-button/icon-button.d.ts +21 -0
- package/dist/cjs/components/icon-button/icon-button.js +48 -0
- package/dist/cjs/components/icon-button/icon-button.js.map +1 -0
- package/dist/cjs/components/icon-button/index.d.ts +1 -0
- package/dist/cjs/components/icon-button/index.js +5 -0
- package/dist/cjs/components/icon-button/index.js.map +1 -0
- package/dist/cjs/components/input/input.js +5 -5
- package/dist/cjs/components/input/input.js.map +1 -1
- package/dist/cjs/components/kbd/kbd.d.ts +1 -1
- package/dist/cjs/components/kbd/kbd.js +4 -3
- package/dist/cjs/components/kbd/kbd.js.map +1 -1
- package/dist/cjs/components/progress-accordion/index.d.ts +1 -0
- package/dist/cjs/components/progress-accordion/index.js +5 -0
- package/dist/cjs/components/progress-accordion/index.js.map +1 -0
- package/dist/cjs/components/progress-accordion/progress-accordion.d.ts +19 -0
- package/dist/cjs/components/progress-accordion/progress-accordion.js +54 -0
- package/dist/cjs/components/progress-accordion/progress-accordion.js.map +1 -0
- package/dist/cjs/components/progress-tabs/index.d.ts +1 -0
- package/dist/cjs/components/progress-tabs/index.js +5 -0
- package/dist/cjs/components/progress-tabs/index.js.map +1 -0
- package/dist/cjs/components/progress-tabs/progress-tabs.d.ts +15 -0
- package/dist/cjs/components/progress-tabs/progress-tabs.js +46 -0
- package/dist/cjs/components/progress-tabs/progress-tabs.js.map +1 -0
- package/dist/cjs/components/prompt/prompt.js +3 -3
- package/dist/cjs/components/prompt/prompt.js.map +1 -1
- package/dist/cjs/components/select/select.js +1 -1
- package/dist/cjs/components/select/select.js.map +1 -1
- package/dist/cjs/components/status-badge/index.d.ts +1 -0
- package/dist/cjs/components/status-badge/index.js +5 -0
- package/dist/cjs/components/status-badge/index.js.map +1 -0
- package/dist/cjs/components/status-badge/status-badge.d.ts +6 -0
- package/dist/cjs/components/status-badge/status-badge.js +23 -0
- package/dist/cjs/components/status-badge/status-badge.js.map +1 -0
- package/dist/cjs/components/switch/switch.js +1 -1
- package/dist/cjs/components/switch/switch.js.map +1 -1
- package/dist/cjs/components/table/table.js +3 -3
- package/dist/cjs/components/table/table.js.map +1 -1
- package/dist/cjs/components/tabs/index.d.ts +1 -0
- package/dist/cjs/components/tabs/index.js +5 -0
- package/dist/cjs/components/tabs/index.js.map +1 -0
- package/dist/cjs/components/tabs/tabs.d.ts +11 -0
- package/dist/cjs/components/tabs/tabs.js +25 -0
- package/dist/cjs/components/tabs/tabs.js.map +1 -0
- 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.js +1 -1
- package/dist/cjs/components/tooltip/tooltip.js.map +1 -1
- package/dist/cjs/index.d.ts +9 -0
- package/dist/cjs/index.js +20 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types.d.ts +5 -0
- package/dist/cjs/types.js +3 -0
- package/dist/cjs/types.js.map +1 -0
- package/dist/esm/components/badge/badge.d.ts +16 -5
- package/dist/esm/components/badge/badge.js +19 -31
- package/dist/esm/components/badge/badge.js.map +1 -1
- package/dist/esm/components/button/button.d.ts +1 -2
- package/dist/esm/components/button/button.js +9 -37
- package/dist/esm/components/button/button.js.map +1 -1
- package/dist/esm/components/calendar/calendar.js +4 -4
- package/dist/esm/components/calendar/calendar.js.map +1 -1
- package/dist/esm/components/code-block/code-block.d.ts +3 -5
- package/dist/esm/components/code-block/code-block.js +7 -7
- package/dist/esm/components/code-block/code-block.js.map +1 -1
- package/dist/esm/components/command-bar/command-bar.d.ts +22 -0
- package/dist/esm/components/command-bar/command-bar.js +59 -0
- package/dist/esm/components/command-bar/command-bar.js.map +1 -0
- package/dist/esm/components/command-bar/index.d.ts +1 -0
- package/dist/esm/components/command-bar/index.js +2 -0
- package/dist/esm/components/command-bar/index.js.map +1 -0
- package/dist/esm/components/container/container.d.ts +1 -1
- package/dist/esm/components/container/container.js.map +1 -1
- package/dist/esm/components/currency-input/currency-input.d.ts +21 -0
- package/dist/esm/components/currency-input/currency-input.js +50 -0
- package/dist/esm/components/currency-input/currency-input.js.map +1 -0
- package/dist/esm/components/currency-input/index.d.ts +1 -0
- package/dist/esm/components/currency-input/index.js +2 -0
- package/dist/esm/components/currency-input/index.js.map +1 -0
- package/dist/esm/components/date-picker/date-picker.d.ts +1 -1
- package/dist/esm/components/date-picker/date-picker.js +44 -30
- package/dist/esm/components/date-picker/date-picker.js.map +1 -1
- package/dist/esm/components/drawer/drawer.d.ts +13 -15
- package/dist/esm/components/drawer/drawer.js +53 -44
- package/dist/esm/components/drawer/drawer.js.map +1 -1
- package/dist/esm/components/dropdown-menu/dropdown-menu.js +2 -2
- package/dist/esm/components/dropdown-menu/dropdown-menu.js.map +1 -1
- package/dist/esm/components/focus-modal/focus-modal.d.ts +9 -12
- package/dist/esm/components/focus-modal/focus-modal.js +39 -35
- package/dist/esm/components/focus-modal/focus-modal.js.map +1 -1
- package/dist/esm/components/heading/heading.js +3 -3
- package/dist/esm/components/heading/heading.js.map +1 -1
- package/dist/esm/components/hint/hint.d.ts +1 -1
- package/dist/esm/components/icon-badge/icon-badge.d.ts +20 -0
- package/dist/esm/components/icon-badge/icon-badge.js +20 -0
- package/dist/esm/components/icon-badge/icon-badge.js.map +1 -0
- package/dist/esm/components/icon-badge/index.d.ts +1 -0
- package/dist/esm/components/icon-badge/index.js +2 -0
- package/dist/esm/components/icon-badge/index.js.map +1 -0
- package/dist/esm/components/icon-button/icon-button.d.ts +21 -0
- package/dist/esm/components/icon-button/icon-button.js +43 -0
- package/dist/esm/components/icon-button/icon-button.js.map +1 -0
- package/dist/esm/components/icon-button/index.d.ts +1 -0
- package/dist/esm/components/icon-button/index.js +2 -0
- package/dist/esm/components/icon-button/index.js.map +1 -0
- package/dist/esm/components/input/input.js +5 -5
- package/dist/esm/components/input/input.js.map +1 -1
- package/dist/esm/components/kbd/kbd.d.ts +1 -1
- package/dist/esm/components/kbd/kbd.js +4 -3
- package/dist/esm/components/kbd/kbd.js.map +1 -1
- package/dist/esm/components/progress-accordion/index.d.ts +1 -0
- package/dist/esm/components/progress-accordion/index.js +2 -0
- package/dist/esm/components/progress-accordion/index.js.map +1 -0
- package/dist/esm/components/progress-accordion/progress-accordion.d.ts +19 -0
- package/dist/esm/components/progress-accordion/progress-accordion.js +50 -0
- package/dist/esm/components/progress-accordion/progress-accordion.js.map +1 -0
- package/dist/esm/components/progress-tabs/index.d.ts +1 -0
- package/dist/esm/components/progress-tabs/index.js +2 -0
- package/dist/esm/components/progress-tabs/index.js.map +1 -0
- package/dist/esm/components/progress-tabs/progress-tabs.d.ts +15 -0
- package/dist/esm/components/progress-tabs/progress-tabs.js +42 -0
- package/dist/esm/components/progress-tabs/progress-tabs.js.map +1 -0
- package/dist/esm/components/prompt/prompt.js +3 -3
- package/dist/esm/components/prompt/prompt.js.map +1 -1
- package/dist/esm/components/select/select.js +1 -1
- package/dist/esm/components/select/select.js.map +1 -1
- package/dist/esm/components/status-badge/index.d.ts +1 -0
- package/dist/esm/components/status-badge/index.js +2 -0
- package/dist/esm/components/status-badge/index.js.map +1 -0
- package/dist/esm/components/status-badge/status-badge.d.ts +6 -0
- package/dist/esm/components/status-badge/status-badge.js +19 -0
- package/dist/esm/components/status-badge/status-badge.js.map +1 -0
- package/dist/esm/components/switch/switch.js +1 -1
- package/dist/esm/components/switch/switch.js.map +1 -1
- package/dist/esm/components/table/table.js +3 -3
- package/dist/esm/components/table/table.js.map +1 -1
- package/dist/esm/components/tabs/index.d.ts +1 -0
- package/dist/esm/components/tabs/index.js +2 -0
- package/dist/esm/components/tabs/index.js.map +1 -0
- package/dist/esm/components/tabs/tabs.d.ts +11 -0
- package/dist/esm/components/tabs/tabs.js +21 -0
- package/dist/esm/components/tabs/tabs.js.map +1 -0
- 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.js +1 -1
- package/dist/esm/components/tooltip/tooltip.js.map +1 -1
- package/dist/esm/index.d.ts +9 -0
- package/dist/esm/index.js +10 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types.d.ts +5 -0
- package/dist/esm/types.js +2 -0
- package/dist/esm/types.js.map +1 -0
- package/package.json +12 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/components/table/table.tsx"],"names":[],"mappings":";;;;AAAA,qDAA8B;AAE9B,gDAA4C;AAC5C,qCAAiC;AACjC,2CAAuC;AAEvC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAG3B,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,6BAAK,SAAS,EAAC,sBAAsB;IACnC,+BACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EAAC,4CAA4C,EAAE,SAAS,CAAC,KACnE,KAAK,GACT,CACE,CACP,CAAC,CAAA;AACF,IAAI,CAAC,WAAW,GAAG,OAAO,CAAA;AAE1B,MAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAG1B,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,4BACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EACZ,
|
|
1
|
+
{"version":3,"file":"table.js","sourceRoot":"","sources":["../../../../src/components/table/table.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from \"react\"\n\nimport { Button } from \"@/components/button\"\nimport { clx } from \"@/utils/clx\"\nimport { Minus } from \"@medusajs/icons\"\n\nconst Root = React.forwardRef<\n HTMLTableElement,\n React.HTMLAttributes<HTMLTableElement>\n>(({ className, ...props }, ref) => (\n <div className=\"w-full overflow-auto\">\n <table\n ref={ref}\n className={clx(\"text-ui-fg-subtle txt-compact-small w-full\", className)}\n {...props}\n />\n </div>\n))\nRoot.displayName = \"Table\"\n\nconst Row = React.forwardRef<\n HTMLTableRowElement,\n React.HTMLAttributes<HTMLTableRowElement>\n>(({ className, ...props }, ref) => (\n <tr\n ref={ref}\n className={clx(\n \"bg-ui-bg-base hover:bg-ui-bg-base-hover border-ui-border-base transition-fg border-b\",\n \"[&_td:last-child]:pr-8 [&_th:last-child]:pr-8\",\n \"[&_td:first-child]:pl-8 [&_th:first-child]:pl-8\",\n className\n )}\n {...props}\n />\n))\nRow.displayName = \"Table.Row\"\n\nconst Cell = React.forwardRef<\n HTMLTableCellElement,\n React.HTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <td ref={ref} className={clx(\"h-12 pr-3\", className)} {...props} />\n))\nCell.displayName = \"Table.Cell\"\n\nconst Header = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <thead\n ref={ref}\n className={clx(\n \"border-ui-border-base txt-compact-small-plus border-y\",\n className\n )}\n {...props}\n />\n))\nHeader.displayName = \"Table.Header\"\n\nconst HeaderCell = React.forwardRef<\n HTMLTableCellElement,\n React.TdHTMLAttributes<HTMLTableCellElement>\n>(({ className, ...props }, ref) => (\n <th ref={ref} className={clx(\"h-12 pr-3 text-left\", className)} {...props} />\n))\nHeaderCell.displayName = \"Table.HeaderCell\"\n\nconst Body = React.forwardRef<\n HTMLTableSectionElement,\n React.HTMLAttributes<HTMLTableSectionElement>\n>(({ className, ...props }, ref) => (\n <tbody\n ref={ref}\n className={clx(\"border-ui-border-base border-b\", className)}\n {...props}\n />\n))\nBody.displayName = \"Table.Body\"\n\ninterface TablePaginationProps extends React.HTMLAttributes<HTMLDivElement> {\n count: number\n pageSize: number\n pageIndex: number\n pageCount: number\n canPreviousPage: boolean\n canNextPage: boolean\n previousPage: () => void\n nextPage: () => void\n}\n\nconst Pagination = React.forwardRef<HTMLDivElement, TablePaginationProps>(\n (\n {\n className,\n count,\n pageSize,\n pageCount,\n pageIndex,\n canPreviousPage,\n canNextPage,\n nextPage,\n previousPage,\n ...props\n },\n ref\n ) => {\n const { from, to } = React.useMemo(() => {\n const from = count === 0 ? count : pageIndex * pageSize + 1\n const to = Math.min(count, (pageIndex + 1) * pageSize)\n\n return { from, to }\n }, [count, pageIndex, pageSize])\n\n return (\n <div\n ref={ref}\n className={clx(\n \"text-ui-fg-subtle txt-compact-small-plus flex w-full items-center justify-between px-5 pb-6 pt-4\",\n className\n )}\n {...props}\n >\n <div className=\"inline-flex items-center gap-x-1 px-3 py-[5px]\">\n <p>{from}</p>\n <Minus className=\"text-ui-fg-muted\" />\n <p>{`${to} of ${count} results`}</p>\n </div>\n <div className=\"flex items-center gap-x-2\">\n <div className=\"inline-flex items-center gap-x-1 px-3 py-[5px]\">\n <p>\n {pageIndex + 1} of {Math.max(pageCount, 1)}\n </p>\n </div>\n <Button\n variant={\"transparent\"}\n onClick={previousPage}\n disabled={!canPreviousPage}\n >\n Prev\n </Button>\n <Button\n variant={\"transparent\"}\n onClick={nextPage}\n disabled={!canNextPage}\n >\n Next\n </Button>\n </div>\n </div>\n )\n }\n)\nPagination.displayName = \"Table.Pagination\"\n\nconst Table = Object.assign(Root, {\n Row,\n Cell,\n Header,\n HeaderCell,\n Body,\n Pagination,\n})\n\nexport { Table }\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./tabs";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/components/tabs/index.ts"],"names":[],"mappings":";;;AAAA,iDAAsB","sourcesContent":["export * from \"./tabs\"\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as TabsPrimitives from "@radix-ui/react-tabs";
|
|
2
|
+
import * as React from "react";
|
|
3
|
+
declare const Tabs: {
|
|
4
|
+
(props: React.ComponentPropsWithoutRef<typeof TabsPrimitives.Root>): React.JSX.Element;
|
|
5
|
+
displayName: string;
|
|
6
|
+
} & {
|
|
7
|
+
Trigger: React.ForwardRefExoticComponent<Omit<TabsPrimitives.TabsTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
8
|
+
List: React.ForwardRefExoticComponent<Omit<TabsPrimitives.TabsListProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
9
|
+
Content: React.ForwardRefExoticComponent<Omit<TabsPrimitives.TabsContentProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
10
|
+
};
|
|
11
|
+
export { Tabs };
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
"use client";
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.Tabs = void 0;
|
|
5
|
+
const tslib_1 = require("tslib");
|
|
6
|
+
const TabsPrimitives = tslib_1.__importStar(require("@radix-ui/react-tabs"));
|
|
7
|
+
const React = tslib_1.__importStar(require("react"));
|
|
8
|
+
const clx_1 = require("../../utils/clx");
|
|
9
|
+
const TabsRoot = (props) => {
|
|
10
|
+
return React.createElement(TabsPrimitives.Root, { ...props });
|
|
11
|
+
};
|
|
12
|
+
TabsRoot.displayName = "Tabs";
|
|
13
|
+
const TabsTrigger = React.forwardRef(({ className, children, ...props }, ref) => (React.createElement(TabsPrimitives.Trigger, { ref: ref, className: (0, clx_1.clx)("txt-compact-small-plus transition-fg text-ui-fg-subtle inline-flex items-center justify-center rounded-full border border-transparent bg-transparent px-3 py-1.5 outline-none", "hover:text-ui-fg-base", "focus:border-ui-border-interactive focus:!shadow-borders-focus focus:bg-ui-bg-base", "data-[state=active]:text-ui-fg-base data-[state=active]:bg-ui-bg-base data-[state=active]:shadow-elevation-card-rest", className), ...props }, children)));
|
|
14
|
+
TabsTrigger.displayName = "Tabs.Trigger";
|
|
15
|
+
const TabsList = React.forwardRef(({ className, ...props }, ref) => (React.createElement(TabsPrimitives.List, { ref: ref, className: (0, clx_1.clx)("flex items-center gap-2", className), ...props })));
|
|
16
|
+
TabsList.displayName = "Tabs.List";
|
|
17
|
+
const TabsContent = React.forwardRef(({ className, ...props }, ref) => (React.createElement(TabsPrimitives.Content, { ref: ref, className: (0, clx_1.clx)("outline-none", className), ...props })));
|
|
18
|
+
TabsContent.displayName = "Tabs.Content";
|
|
19
|
+
const Tabs = Object.assign(TabsRoot, {
|
|
20
|
+
Trigger: TabsTrigger,
|
|
21
|
+
List: TabsList,
|
|
22
|
+
Content: TabsContent,
|
|
23
|
+
});
|
|
24
|
+
exports.Tabs = Tabs;
|
|
25
|
+
//# sourceMappingURL=tabs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tabs.js","sourceRoot":"","sources":["../../../../src/components/tabs/tabs.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;AAEZ,6EAAsD;AACtD,qDAA8B;AAE9B,qCAAiC;AAEjC,MAAM,QAAQ,GAAG,CACf,KAAiE,EACjE,EAAE;IACF,OAAO,oBAAC,cAAc,CAAC,IAAI,OAAK,KAAK,GAAI,CAAA;AAC3C,CAAC,CAAA;AACD,QAAQ,CAAC,WAAW,GAAG,MAAM,CAAA;AAE7B,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAGlC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAC5C,oBAAC,cAAc,CAAC,OAAO,IACrB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EACZ,+KAA+K,EAC/K,uBAAuB,EACvB,oFAAoF,EACpF,sHAAsH,EACtH,SAAS,CACV,KACG,KAAK,IAER,QAAQ,CACc,CAC1B,CAAC,CAAA;AACF,WAAW,CAAC,WAAW,GAAG,cAAc,CAAA;AAExC,MAAM,QAAQ,GAAG,KAAK,CAAC,UAAU,CAG/B,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,oBAAC,cAAc,CAAC,IAAI,IAClB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EAAC,yBAAyB,EAAE,SAAS,CAAC,KAChD,KAAK,GACT,CACH,CAAC,CAAA;AACF,QAAQ,CAAC,WAAW,GAAG,WAAW,CAAA;AAElC,MAAM,WAAW,GAAG,KAAK,CAAC,UAAU,CAGlC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,oBAAC,cAAc,CAAC,OAAO,IACrB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EAAC,cAAc,EAAE,SAAS,CAAC,KACrC,KAAK,GACT,CACH,CAAC,CAAA;AACF,WAAW,CAAC,WAAW,GAAG,cAAc,CAAA;AAExC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE;IACnC,OAAO,EAAE,WAAW;IACpB,IAAI,EAAE,QAAQ;IACd,OAAO,EAAE,WAAW;CACrB,CAAC,CAAA;AAEO,oBAAI","sourcesContent":["\"use client\"\n\nimport * as TabsPrimitives from \"@radix-ui/react-tabs\"\nimport * as React from \"react\"\n\nimport { clx } from \"@/utils/clx\"\n\nconst TabsRoot = (\n props: React.ComponentPropsWithoutRef<typeof TabsPrimitives.Root>\n) => {\n return <TabsPrimitives.Root {...props} />\n}\nTabsRoot.displayName = \"Tabs\"\n\nconst TabsTrigger = React.forwardRef<\n React.ElementRef<typeof TabsPrimitives.Trigger>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitives.Trigger>\n>(({ className, children, ...props }, ref) => (\n <TabsPrimitives.Trigger\n ref={ref}\n className={clx(\n \"txt-compact-small-plus transition-fg text-ui-fg-subtle inline-flex items-center justify-center rounded-full border border-transparent bg-transparent px-3 py-1.5 outline-none\",\n \"hover:text-ui-fg-base\",\n \"focus:border-ui-border-interactive focus:!shadow-borders-focus focus:bg-ui-bg-base\",\n \"data-[state=active]:text-ui-fg-base data-[state=active]:bg-ui-bg-base data-[state=active]:shadow-elevation-card-rest\",\n className\n )}\n {...props}\n >\n {children}\n </TabsPrimitives.Trigger>\n))\nTabsTrigger.displayName = \"Tabs.Trigger\"\n\nconst TabsList = React.forwardRef<\n React.ElementRef<typeof TabsPrimitives.List>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitives.List>\n>(({ className, ...props }, ref) => (\n <TabsPrimitives.List\n ref={ref}\n className={clx(\"flex items-center gap-2\", className)}\n {...props}\n />\n))\nTabsList.displayName = \"Tabs.List\"\n\nconst TabsContent = React.forwardRef<\n React.ElementRef<typeof TabsPrimitives.Content>,\n React.ComponentPropsWithoutRef<typeof TabsPrimitives.Content>\n>(({ className, ...props }, ref) => (\n <TabsPrimitives.Content\n ref={ref}\n className={clx(\"outline-none\", className)}\n {...props}\n />\n))\nTabsContent.displayName = \"Tabs.Content\"\n\nconst Tabs = Object.assign(TabsRoot, {\n Trigger: TabsTrigger,\n List: TabsList,\n Content: TabsContent,\n})\n\nexport { Tabs }\n"]}
|
|
@@ -10,7 +10,7 @@ const clx_1 = require("../../utils/clx");
|
|
|
10
10
|
const ToastProvider = Primitives.Provider;
|
|
11
11
|
exports.ToastProvider = ToastProvider;
|
|
12
12
|
ToastProvider.displayName = "ToastProvider";
|
|
13
|
-
const ToastViewport = React.forwardRef(({ className, ...props }, ref) => (React.createElement(Primitives.Viewport, { ref: ref, className: (0, clx_1.clx)("fixed right-0 top-0 z-[
|
|
13
|
+
const ToastViewport = React.forwardRef(({ className, ...props }, ref) => (React.createElement(Primitives.Viewport, { ref: ref, className: (0, clx_1.clx)("fixed right-0 top-0 z-[9999] w-full p-6 md:max-w-[484px]", className), ...props })));
|
|
14
14
|
exports.ToastViewport = ToastViewport;
|
|
15
15
|
ToastViewport.displayName = "ToastViewport";
|
|
16
16
|
const Toast = React.forwardRef(({ className, variant, title, description, action, disableDismiss = false, ...props }, ref) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":";AAAA,YAAY,CAAA;;;;AAEZ,2CAMwB;AACxB,0EAAmD;AACnD,qDAA8B;AAE9B,qCAAiC;AAEjC,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAA;AAsJvC,sCAAa;AArJf,aAAa,CAAC,WAAW,GAAG,eAAe,CAAA;AAE3C,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAGpC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,oBAAC,UAAU,CAAC,QAAQ,IAClB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAA,SAAG,EACZ,
|
|
1
|
+
{"version":3,"file":"toast.js","sourceRoot":"","sources":["../../../../src/components/toast/toast.tsx"],"names":[],"mappings":"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","sourcesContent":["\"use client\"\n\nimport {\n CheckCircleSolid,\n ExclamationCircleSolid,\n InformationCircleSolid,\n Spinner,\n XCircleSolid,\n} from \"@medusajs/icons\"\nimport * as Primitives from \"@radix-ui/react-toast\"\nimport * as React from \"react\"\n\nimport { clx } from \"@/utils/clx\"\n\nconst ToastProvider = Primitives.Provider\nToastProvider.displayName = \"ToastProvider\"\n\nconst ToastViewport = React.forwardRef<\n React.ElementRef<typeof Primitives.Viewport>,\n React.ComponentPropsWithoutRef<typeof Primitives.Viewport>\n>(({ className, ...props }, ref) => (\n <Primitives.Viewport\n ref={ref}\n className={clx(\n \"fixed right-0 top-0 z-[9999] w-full p-6 md:max-w-[484px]\",\n className\n )}\n {...props}\n />\n))\nToastViewport.displayName = \"ToastViewport\"\n\ninterface ActionProps {\n label: string\n altText: string\n onClick: () => void | Promise<void>\n}\n\ninterface ToastProps\n extends React.ComponentPropsWithoutRef<typeof Primitives.Root> {\n variant?: \"info\" | \"success\" | \"warning\" | \"error\" | \"loading\"\n title?: string\n description?: string\n action?: ActionProps\n disableDismiss?: boolean\n}\n\nconst Toast = React.forwardRef<\n React.ElementRef<typeof Primitives.Root>,\n ToastProps\n>(\n (\n {\n className,\n variant,\n title,\n description,\n action,\n disableDismiss = false,\n ...props\n },\n ref\n ) => {\n let Icon = undefined\n\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 default:\n Icon = <InformationCircleSolid className=\"text-ui-fg-base\" />\n break\n }\n\n if (action && !action.altText) {\n // eslint-disable-next-line turbo/no-undeclared-env-vars\n if (process.env.NODE_ENV === \"development\") {\n console.warn(\n \"Omitting `altText` from the action is not recommended. Please provide a description for screen readers.\"\n )\n }\n }\n\n return (\n <Primitives.Root\n ref={ref}\n className={clx(\n \"bg-ui-bg-base border-ui-border-base flex h-fit min-h-[74px] w-full overflow-hidden rounded-md border shadow-[0_4px_12px_rgba(0,0,0,0.05)] md:max-w-[440px]\",\n \"data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none\",\n className\n )}\n {...props}\n >\n <div className=\"border-ui-border-base flex flex-1 items-start space-x-3 border-r p-4\">\n <span aria-hidden>{Icon}</span>\n <div>\n {title && (\n <Primitives.Title className=\"text-ui-fg-base txt-compact-small-plus\">\n {title}\n </Primitives.Title>\n )}\n {description && (\n <Primitives.Description className=\"text-ui-fg-subtle txt-compact-medium\">\n {description}\n </Primitives.Description>\n )}\n </div>\n </div>\n <div className=\"flex flex-col\">\n {action && (\n <>\n <Primitives.Action\n altText={action.altText}\n className={clx(\n \"txt-compact-small-plus text-ui-fg-base bg-ui-bg-base hover:bg-ui-bg-base-hover active:bg-ui-bg-base-pressed flex flex-1 items-center justify-center px-6 transition-colors\",\n {\n \"text-ui-fg-error\": variant === \"error\",\n }\n )}\n onClick={(e) => {\n e.preventDefault()\n action.onClick()\n }}\n type=\"button\"\n >\n {action.label}\n </Primitives.Action>\n <div className=\"bg-ui-border-base h-px w-full\" />\n </>\n )}\n {!disableDismiss && (\n <Primitives.Close\n className={clx(\n \"txt-compact-small-plus text-ui-fg-subtle bg-ui-bg-base hover:bg-ui-bg-base-hover active:bg-ui-bg-base-pressed flex flex-1 items-center justify-center px-6 transition-colors\",\n {\n \"h-1/2\": action,\n \"h-full\": !action,\n }\n )}\n aria-label=\"Close\"\n >\n Close\n </Primitives.Close>\n )}\n </div>\n </Primitives.Root>\n )\n }\n)\nToast.displayName = \"Toast\"\n\ntype ToastActionElement = ActionProps\n\nexport {\n Toast,\n ToastProvider,\n ToastViewport,\n type ToastActionElement,\n type ToastProps,\n}\n"]}
|
|
@@ -11,7 +11,7 @@ const Tooltip = ({ children, content, open, defaultOpen, onOpenChange, delayDura
|
|
|
11
11
|
React.createElement(Primitives.Root, { open: open, defaultOpen: defaultOpen, onOpenChange: onOpenChange, delayDuration: delayDuration },
|
|
12
12
|
React.createElement(Primitives.Trigger, { onClick: onClick, asChild: true }, children),
|
|
13
13
|
React.createElement(Primitives.Portal, null,
|
|
14
|
-
React.createElement(Primitives.Content, { side: side, sideOffset: sideOffset, align: "center", className: (0, clx_1.clx)("txt-compact-xsmall-plus text-ui-fg-subtle 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
|
|
14
|
+
React.createElement(Primitives.Content, { side: side, sideOffset: sideOffset, align: "center", className: (0, clx_1.clx)("txt-compact-xsmall-plus text-ui-fg-subtle bg-ui-bg-base shadow-elevation-tooltip rounded-lg px-3 py-2", "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)))));
|
|
15
15
|
};
|
|
16
16
|
exports.Tooltip = Tooltip;
|
|
17
17
|
//# 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,4EAAqD;AACrD,qDAA8B;AAE9B,qCAAiC;AAcjC,MAAM,OAAO,GAAG,CAAC,EACf,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,QAAQ,GAAG,GAAG,EACd,SAAS,EACT,IAAI,EACJ,UAAU,GAAG,CAAC,EACd,OAAO,EACP,GAAG,KAAK,EACK,EAAE,EAAE;IACjB,OAAO,CACL,oBAAC,UAAU,CAAC,QAAQ,IAAC,aAAa,EAAE,GAAG;QACrC,oBAAC,UAAU,CAAC,IAAI,IACd,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa;YAE5B,oBAAC,UAAU,CAAC,OAAO,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,UAC1C,QAAQ,CACU;YACrB,oBAAC,UAAU,CAAC,MAAM;gBAChB,oBAAC,UAAU,CAAC,OAAO,IACjB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,KAAK,EAAC,QAAQ,EACd,SAAS,EAAE,IAAA,SAAG,EACZ,
|
|
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,MAAM,OAAO,GAAG,CAAC,EACf,QAAQ,EACR,OAAO,EACP,IAAI,EACJ,WAAW,EACX,YAAY,EACZ,aAAa,EACb,QAAQ,GAAG,GAAG,EACd,SAAS,EACT,IAAI,EACJ,UAAU,GAAG,CAAC,EACd,OAAO,EACP,GAAG,KAAK,EACK,EAAE,EAAE;IACjB,OAAO,CACL,oBAAC,UAAU,CAAC,QAAQ,IAAC,aAAa,EAAE,GAAG;QACrC,oBAAC,UAAU,CAAC,IAAI,IACd,IAAI,EAAE,IAAI,EACV,WAAW,EAAE,WAAW,EACxB,YAAY,EAAE,YAAY,EAC1B,aAAa,EAAE,aAAa;YAE5B,oBAAC,UAAU,CAAC,OAAO,IAAC,OAAO,EAAE,OAAO,EAAE,OAAO,UAC1C,QAAQ,CACU;YACrB,oBAAC,UAAU,CAAC,MAAM;gBAChB,oBAAC,UAAU,CAAC,OAAO,IACjB,IAAI,EAAE,IAAI,EACV,UAAU,EAAE,UAAU,EACtB,KAAK,EAAC,QAAQ,EACd,SAAS,EAAE,IAAA,SAAG,EACZ,uGAAuG,EACvG,4RAA4R,EAC5R,SAAS,CACV,KACG,KAAK,EACT,KAAK,EAAE,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE,QAAQ,EAAE,IAElC,OAAO,CACW,CACH,CACJ,CACE,CACvB,CAAA;AACH,CAAC,CAAA;AAEQ,0BAAO","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\nconst Tooltip = ({\n children,\n content,\n open,\n defaultOpen,\n onOpenChange,\n delayDuration,\n maxWidth = 220,\n className,\n side,\n sideOffset = 8,\n onClick,\n ...props\n}: TooltipProps) => {\n return (\n <Primitives.Provider delayDuration={100}>\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-plus text-ui-fg-subtle bg-ui-bg-base shadow-elevation-tooltip rounded-lg px-3 py-2\",\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 </Primitives.Provider>\n )\n}\n\nexport { Tooltip }\n"]}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -6,22 +6,30 @@ export { Checkbox } from "./components/checkbox";
|
|
|
6
6
|
export { Code } from "./components/code";
|
|
7
7
|
export { CodeBlock } from "./components/code-block";
|
|
8
8
|
export { Command } from "./components/command";
|
|
9
|
+
export { CommandBar } from "./components/command-bar";
|
|
9
10
|
export { Container } from "./components/container";
|
|
10
11
|
export { Copy } from "./components/copy";
|
|
12
|
+
export { CurrencyInput } from "./components/currency-input";
|
|
11
13
|
export { DatePicker } from "./components/date-picker";
|
|
12
14
|
export { Drawer } from "./components/drawer";
|
|
13
15
|
export { DropdownMenu } from "./components/dropdown-menu";
|
|
14
16
|
export { FocusModal } from "./components/focus-modal";
|
|
15
17
|
export { Heading } from "./components/heading";
|
|
16
18
|
export { Hint } from "./components/hint";
|
|
19
|
+
export { IconBadge } from "./components/icon-badge";
|
|
20
|
+
export { IconButton } from "./components/icon-button";
|
|
17
21
|
export { Input } from "./components/input";
|
|
18
22
|
export { Kbd } from "./components/kbd";
|
|
19
23
|
export { Label } from "./components/label";
|
|
24
|
+
export { ProgressAccordion } from "./components/progress-accordion";
|
|
25
|
+
export { ProgressTabs } from "./components/progress-tabs";
|
|
20
26
|
export { Prompt } from "./components/prompt";
|
|
21
27
|
export { RadioGroup } from "./components/radio-group";
|
|
22
28
|
export { Select } from "./components/select";
|
|
29
|
+
export { StatusBadge } from "./components/status-badge";
|
|
23
30
|
export { Switch } from "./components/switch";
|
|
24
31
|
export { Table } from "./components/table";
|
|
32
|
+
export { Tabs } from "./components/tabs";
|
|
25
33
|
export { Text } from "./components/text";
|
|
26
34
|
export { Textarea } from "./components/textarea";
|
|
27
35
|
export { Toast } from "./components/toast";
|
|
@@ -31,3 +39,4 @@ export { usePrompt } from "./hooks/use-prompt";
|
|
|
31
39
|
export { useToast } from "./hooks/use-toast";
|
|
32
40
|
export { useToggleState } from "./hooks/use-toggle-state";
|
|
33
41
|
export { clx } from "./utils/clx";
|
|
42
|
+
export * from "./types";
|
package/dist/cjs/index.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.clx = exports.useToggleState = exports.useToast = exports.usePrompt = exports.Tooltip = exports.Toaster = exports.Toast = exports.Textarea = exports.Text = exports.Table = exports.Switch = exports.Select = exports.RadioGroup = exports.Prompt = exports.Label = exports.Kbd = exports.Input = exports.Hint = exports.Heading = exports.FocusModal = exports.DropdownMenu = exports.Drawer = exports.DatePicker = exports.Copy = exports.Container = exports.Command = exports.CodeBlock = exports.Code = exports.Checkbox = exports.Calendar = exports.Button = exports.Badge = exports.Avatar = void 0;
|
|
3
|
+
exports.clx = exports.useToggleState = exports.useToast = exports.usePrompt = exports.Tooltip = exports.Toaster = exports.Toast = exports.Textarea = exports.Text = exports.Tabs = exports.Table = exports.Switch = exports.StatusBadge = exports.Select = exports.RadioGroup = exports.Prompt = exports.ProgressTabs = exports.ProgressAccordion = exports.Label = exports.Kbd = exports.Input = exports.IconButton = exports.IconBadge = 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 = void 0;
|
|
4
|
+
const tslib_1 = require("tslib");
|
|
4
5
|
var avatar_1 = require("./components/avatar");
|
|
5
6
|
Object.defineProperty(exports, "Avatar", { enumerable: true, get: function () { return avatar_1.Avatar; } });
|
|
6
7
|
var badge_1 = require("./components/badge");
|
|
@@ -17,10 +18,14 @@ var code_block_1 = require("./components/code-block");
|
|
|
17
18
|
Object.defineProperty(exports, "CodeBlock", { enumerable: true, get: function () { return code_block_1.CodeBlock; } });
|
|
18
19
|
var command_1 = require("./components/command");
|
|
19
20
|
Object.defineProperty(exports, "Command", { enumerable: true, get: function () { return command_1.Command; } });
|
|
21
|
+
var command_bar_1 = require("./components/command-bar");
|
|
22
|
+
Object.defineProperty(exports, "CommandBar", { enumerable: true, get: function () { return command_bar_1.CommandBar; } });
|
|
20
23
|
var container_1 = require("./components/container");
|
|
21
24
|
Object.defineProperty(exports, "Container", { enumerable: true, get: function () { return container_1.Container; } });
|
|
22
25
|
var copy_1 = require("./components/copy");
|
|
23
26
|
Object.defineProperty(exports, "Copy", { enumerable: true, get: function () { return copy_1.Copy; } });
|
|
27
|
+
var currency_input_1 = require("./components/currency-input");
|
|
28
|
+
Object.defineProperty(exports, "CurrencyInput", { enumerable: true, get: function () { return currency_input_1.CurrencyInput; } });
|
|
24
29
|
var date_picker_1 = require("./components/date-picker");
|
|
25
30
|
Object.defineProperty(exports, "DatePicker", { enumerable: true, get: function () { return date_picker_1.DatePicker; } });
|
|
26
31
|
var drawer_1 = require("./components/drawer");
|
|
@@ -33,22 +38,34 @@ var heading_1 = require("./components/heading");
|
|
|
33
38
|
Object.defineProperty(exports, "Heading", { enumerable: true, get: function () { return heading_1.Heading; } });
|
|
34
39
|
var hint_1 = require("./components/hint");
|
|
35
40
|
Object.defineProperty(exports, "Hint", { enumerable: true, get: function () { return hint_1.Hint; } });
|
|
41
|
+
var icon_badge_1 = require("./components/icon-badge");
|
|
42
|
+
Object.defineProperty(exports, "IconBadge", { enumerable: true, get: function () { return icon_badge_1.IconBadge; } });
|
|
43
|
+
var icon_button_1 = require("./components/icon-button");
|
|
44
|
+
Object.defineProperty(exports, "IconButton", { enumerable: true, get: function () { return icon_button_1.IconButton; } });
|
|
36
45
|
var input_1 = require("./components/input");
|
|
37
46
|
Object.defineProperty(exports, "Input", { enumerable: true, get: function () { return input_1.Input; } });
|
|
38
47
|
var kbd_1 = require("./components/kbd");
|
|
39
48
|
Object.defineProperty(exports, "Kbd", { enumerable: true, get: function () { return kbd_1.Kbd; } });
|
|
40
49
|
var label_1 = require("./components/label");
|
|
41
50
|
Object.defineProperty(exports, "Label", { enumerable: true, get: function () { return label_1.Label; } });
|
|
51
|
+
var progress_accordion_1 = require("./components/progress-accordion");
|
|
52
|
+
Object.defineProperty(exports, "ProgressAccordion", { enumerable: true, get: function () { return progress_accordion_1.ProgressAccordion; } });
|
|
53
|
+
var progress_tabs_1 = require("./components/progress-tabs");
|
|
54
|
+
Object.defineProperty(exports, "ProgressTabs", { enumerable: true, get: function () { return progress_tabs_1.ProgressTabs; } });
|
|
42
55
|
var prompt_1 = require("./components/prompt");
|
|
43
56
|
Object.defineProperty(exports, "Prompt", { enumerable: true, get: function () { return prompt_1.Prompt; } });
|
|
44
57
|
var radio_group_1 = require("./components/radio-group");
|
|
45
58
|
Object.defineProperty(exports, "RadioGroup", { enumerable: true, get: function () { return radio_group_1.RadioGroup; } });
|
|
46
59
|
var select_1 = require("./components/select");
|
|
47
60
|
Object.defineProperty(exports, "Select", { enumerable: true, get: function () { return select_1.Select; } });
|
|
61
|
+
var status_badge_1 = require("./components/status-badge");
|
|
62
|
+
Object.defineProperty(exports, "StatusBadge", { enumerable: true, get: function () { return status_badge_1.StatusBadge; } });
|
|
48
63
|
var switch_1 = require("./components/switch");
|
|
49
64
|
Object.defineProperty(exports, "Switch", { enumerable: true, get: function () { return switch_1.Switch; } });
|
|
50
65
|
var table_1 = require("./components/table");
|
|
51
66
|
Object.defineProperty(exports, "Table", { enumerable: true, get: function () { return table_1.Table; } });
|
|
67
|
+
var tabs_1 = require("./components/tabs");
|
|
68
|
+
Object.defineProperty(exports, "Tabs", { enumerable: true, get: function () { return tabs_1.Tabs; } });
|
|
52
69
|
var text_1 = require("./components/text");
|
|
53
70
|
Object.defineProperty(exports, "Text", { enumerable: true, get: function () { return text_1.Text; } });
|
|
54
71
|
var textarea_1 = require("./components/textarea");
|
|
@@ -69,4 +86,6 @@ Object.defineProperty(exports, "useToggleState", { enumerable: true, get: functi
|
|
|
69
86
|
// Utils
|
|
70
87
|
var clx_1 = require("./utils/clx");
|
|
71
88
|
Object.defineProperty(exports, "clx", { enumerable: true, get: function () { return clx_1.clx; } });
|
|
89
|
+
// Types
|
|
90
|
+
tslib_1.__exportStar(require("./types"), exports);
|
|
72
91
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":";;;;AAAA,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,4CAA0C;AAAjC,8FAAA,KAAK,OAAA;AACd,8CAA4C;AAAnC,gGAAA,MAAM,OAAA;AACf,kDAAgD;AAAvC,oGAAA,QAAQ,OAAA;AACjB,kDAAgD;AAAvC,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,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,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,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,gDAA8C;AAArC,kGAAA,OAAO,OAAA;AAEhB,QAAQ;AACR,iDAA8C;AAArC,uGAAA,SAAS,OAAA;AAClB,+CAA4C;AAAnC,qGAAA,QAAQ,OAAA;AACjB,6DAAyD;AAAhD,kHAAA,cAAc,OAAA;AAEvB,QAAQ;AACR,mCAAiC;AAAxB,0FAAA,GAAG,OAAA;AAEZ,QAAQ;AACR,kDAAuB","sourcesContent":["export { Avatar } from \"./components/avatar\"\nexport { Badge } from \"./components/badge\"\nexport { Button } from \"./components/button\"\nexport { Calendar } from \"./components/calendar\"\nexport { Checkbox } 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 { 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 { 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 { 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 } from \"./components/tooltip\"\n\n// Hooks\nexport { usePrompt } from \"./hooks/use-prompt\"\nexport { useToast } from \"./hooks/use-toast\"\nexport { useToggleState } from \"./hooks/use-toggle-state\"\n\n// Utils\nexport { clx } from \"./utils/clx\"\n\n// Types\nexport * from \"./types\"\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"","sourcesContent":["export type ProgressStatus = \"not-started\" | \"in-progress\" | \"completed\"\n\nexport type DateRange = {\n from: Date | undefined\n to?: Date | undefined\n}\n"]}
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
import { VariantProps } from "class-variance-authority";
|
|
2
2
|
import * as React from "react";
|
|
3
|
-
declare const
|
|
4
|
-
type?: "rounded" | "default" | "icon" | null | undefined;
|
|
5
|
-
size?: "base" | "large" | "small" | null | undefined;
|
|
3
|
+
declare const badgeColorVariants: (props?: ({
|
|
6
4
|
color?: "green" | "red" | "blue" | "orange" | "grey" | "purple" | null | undefined;
|
|
7
5
|
} & ({
|
|
8
6
|
class: import("clsx").ClassValue;
|
|
@@ -14,8 +12,21 @@ declare const badgeVariants: (props?: ({
|
|
|
14
12
|
class?: undefined;
|
|
15
13
|
className?: undefined;
|
|
16
14
|
})) | undefined) => string;
|
|
17
|
-
|
|
15
|
+
declare const badgeSizeVariants: (props?: ({
|
|
16
|
+
size?: "base" | "large" | "small" | null | undefined;
|
|
17
|
+
rounded?: "base" | "full" | null | undefined;
|
|
18
|
+
} & ({
|
|
19
|
+
class: import("clsx").ClassValue;
|
|
20
|
+
className?: undefined;
|
|
21
|
+
} | {
|
|
22
|
+
class?: undefined;
|
|
23
|
+
className: import("clsx").ClassValue;
|
|
24
|
+
} | {
|
|
25
|
+
class?: undefined;
|
|
26
|
+
className?: undefined;
|
|
27
|
+
})) | undefined) => string;
|
|
28
|
+
interface BadgeProps extends Omit<React.HTMLAttributes<HTMLSpanElement>, "color">, VariantProps<typeof badgeSizeVariants>, VariantProps<typeof badgeColorVariants> {
|
|
18
29
|
asChild?: boolean;
|
|
19
30
|
}
|
|
20
31
|
declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
|
|
21
|
-
export { Badge };
|
|
32
|
+
export { Badge, badgeColorVariants };
|
|
@@ -2,18 +2,8 @@ import { Slot } from "@radix-ui/react-slot";
|
|
|
2
2
|
import { cva } from "class-variance-authority";
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { clx } from "../../utils/clx";
|
|
5
|
-
const
|
|
5
|
+
const badgeColorVariants = cva("", {
|
|
6
6
|
variants: {
|
|
7
|
-
type: {
|
|
8
|
-
default: "rounded-md",
|
|
9
|
-
rounded: "rounded-full",
|
|
10
|
-
icon: "rounded-md",
|
|
11
|
-
},
|
|
12
|
-
size: {
|
|
13
|
-
small: "txt-compact-xsmall-plus px-1.5",
|
|
14
|
-
base: "txt-compact-small-plus px-2 py-0.5",
|
|
15
|
-
large: "txt-compact-medium-plus px-2.5 py-1",
|
|
16
|
-
},
|
|
17
7
|
color: {
|
|
18
8
|
green: "bg-ui-tag-green-bg text-ui-tag-green-text [&_svg]:text-ui-tag-green-icon border-ui-tag-green-border",
|
|
19
9
|
red: "bg-ui-tag-red-bg text-ui-tag-red-text [&_svg]:text-ui-tag-red-icon border-ui-tag-red-border",
|
|
@@ -23,33 +13,31 @@ const badgeVariants = cva("inline-flex items-center gap-x-0.5 border", {
|
|
|
23
13
|
purple: "bg-ui-tag-purple-bg text-ui-tag-purple-text [&_svg]:text-ui-tag-purple-icon border-ui-tag-purple-border",
|
|
24
14
|
},
|
|
25
15
|
},
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
{
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
color: "grey",
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
const badgeSizeVariants = cva("inline-flex items-center gap-x-0.5 border", {
|
|
21
|
+
variants: {
|
|
22
|
+
size: {
|
|
23
|
+
small: "txt-compact-xsmall-plus px-1.5",
|
|
24
|
+
base: "txt-compact-small-plus px-2 py-0.5",
|
|
25
|
+
large: "txt-compact-medium-plus px-2.5 py-1",
|
|
36
26
|
},
|
|
37
|
-
{
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
className: "p-0.5", // Icon does not get any smaller than `md`
|
|
27
|
+
rounded: {
|
|
28
|
+
base: "rounded-md",
|
|
29
|
+
full: "rounded-full",
|
|
41
30
|
},
|
|
42
|
-
|
|
31
|
+
},
|
|
43
32
|
defaultVariants: {
|
|
44
33
|
size: "base",
|
|
45
|
-
|
|
46
|
-
color: "grey",
|
|
34
|
+
rounded: "base",
|
|
47
35
|
},
|
|
48
36
|
});
|
|
49
|
-
const Badge = React.forwardRef(({ className, size,
|
|
37
|
+
const Badge = React.forwardRef(({ className, size = "base", rounded = "base", color = "grey", asChild = false, ...props }, ref) => {
|
|
50
38
|
const Component = asChild ? Slot : "span";
|
|
51
|
-
return (React.createElement(Component, { ref: ref, className: clx(
|
|
39
|
+
return (React.createElement(Component, { ref: ref, className: clx(badgeColorVariants({ color }), badgeSizeVariants({ size, rounded }), className), ...props }));
|
|
52
40
|
});
|
|
53
41
|
Badge.displayName = "Badge";
|
|
54
|
-
export { Badge };
|
|
42
|
+
export { Badge, badgeColorVariants };
|
|
55
43
|
//# sourceMappingURL=badge.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../../src/components/badge/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAgB,GAAG,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEjC,MAAM,
|
|
1
|
+
{"version":3,"file":"badge.js","sourceRoot":"","sources":["../../../../src/components/badge/badge.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAgB,GAAG,EAAE,MAAM,0BAA0B,CAAA;AAC5D,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AAEjC,MAAM,kBAAkB,GAAG,GAAG,CAAC,EAAE,EAAE;IACjC,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,KAAK,EACH,qGAAqG;YACvG,GAAG,EAAE,6FAA6F;YAClG,IAAI,EAAE,iGAAiG;YACvG,MAAM,EACJ,yGAAyG;YAC3G,IAAI,EAAE,6GAA6G;YACnH,MAAM,EACJ,yGAAyG;SAC5G;KACF;IACD,eAAe,EAAE;QACf,KAAK,EAAE,MAAM;KACd;CACF,CAAC,CAAA;AAEF,MAAM,iBAAiB,GAAG,GAAG,CAAC,2CAA2C,EAAE;IACzE,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,KAAK,EAAE,gCAAgC;YACvC,IAAI,EAAE,oCAAoC;YAC1C,KAAK,EAAE,qCAAqC;SAC7C;QACD,OAAO,EAAE;YACP,IAAI,EAAE,YAAY;YAClB,IAAI,EAAE,cAAc;SACrB;KACF;IACD,eAAe,EAAE;QACf,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,MAAM;KAChB;CACF,CAAC,CAAA;AASF,MAAM,KAAK,GAAG,KAAK,CAAC,UAAU,CAC5B,CACE,EACE,SAAS,EACT,IAAI,GAAG,MAAM,EACb,OAAO,GAAG,MAAM,EAChB,KAAK,GAAG,MAAM,EACd,OAAO,GAAG,KAAK,EACf,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAA;IAEzC,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,GAAG,CACZ,kBAAkB,CAAC,EAAE,KAAK,EAAE,CAAC,EAC7B,iBAAiB,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EACpC,SAAS,CACV,KACG,KAAK,GACT,CACH,CAAA;AACH,CAAC,CACF,CAAA;AACD,KAAK,CAAC,WAAW,GAAG,OAAO,CAAA;AAE3B,OAAO,EAAE,KAAK,EAAE,kBAAkB,EAAE,CAAA","sourcesContent":["import { Slot } from \"@radix-ui/react-slot\"\nimport { VariantProps, cva } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { clx } from \"@/utils/clx\"\n\nconst badgeColorVariants = cva(\"\", {\n variants: {\n color: {\n green:\n \"bg-ui-tag-green-bg text-ui-tag-green-text [&_svg]:text-ui-tag-green-icon border-ui-tag-green-border\",\n red: \"bg-ui-tag-red-bg text-ui-tag-red-text [&_svg]:text-ui-tag-red-icon border-ui-tag-red-border\",\n blue: \"bg-ui-tag-blue-bg text-ui-tag-blue-text [&_svg]:text-ui-tag-blue-icon border-ui-tag-blue-border\",\n orange:\n \"bg-ui-tag-orange-bg text-ui-tag-orange-text [&_svg]:text-ui-tag-orange-icon border-ui-tag-orange-border\",\n grey: \"bg-ui-tag-neutral-bg text-ui-tag-neutral-text [&_svg]:text-ui-tag-neutral-icon border-ui-tag-neutral-border\",\n purple:\n \"bg-ui-tag-purple-bg text-ui-tag-purple-text [&_svg]:text-ui-tag-purple-icon border-ui-tag-purple-border\",\n },\n },\n defaultVariants: {\n color: \"grey\",\n },\n})\n\nconst badgeSizeVariants = cva(\"inline-flex items-center gap-x-0.5 border\", {\n variants: {\n size: {\n small: \"txt-compact-xsmall-plus px-1.5\",\n base: \"txt-compact-small-plus px-2 py-0.5\",\n large: \"txt-compact-medium-plus px-2.5 py-1\",\n },\n rounded: {\n base: \"rounded-md\",\n full: \"rounded-full\",\n },\n },\n defaultVariants: {\n size: \"base\",\n rounded: \"base\",\n },\n})\n\ninterface BadgeProps\n extends Omit<React.HTMLAttributes<HTMLSpanElement>, \"color\">,\n VariantProps<typeof badgeSizeVariants>,\n VariantProps<typeof badgeColorVariants> {\n asChild?: boolean\n}\n\nconst Badge = React.forwardRef<HTMLSpanElement, BadgeProps>(\n (\n {\n className,\n size = \"base\",\n rounded = \"base\",\n color = \"grey\",\n asChild = false,\n ...props\n },\n ref\n ) => {\n const Component = asChild ? Slot : \"span\"\n\n return (\n <Component\n ref={ref}\n className={clx(\n badgeColorVariants({ color }),\n badgeSizeVariants({ size, rounded }),\n className\n )}\n {...props}\n />\n )\n }\n)\nBadge.displayName = \"Badge\"\n\nexport { Badge, badgeColorVariants }\n"]}
|
|
@@ -2,8 +2,7 @@ import { type VariantProps } from "class-variance-authority";
|
|
|
2
2
|
import * as React from "react";
|
|
3
3
|
declare const buttonVariants: (props?: ({
|
|
4
4
|
variant?: "primary" | "secondary" | "transparent" | "danger" | null | undefined;
|
|
5
|
-
size?: "base" | "large" | "
|
|
6
|
-
format?: "default" | "icon" | null | undefined;
|
|
5
|
+
size?: "base" | "large" | "xlarge" | null | undefined;
|
|
7
6
|
} & ({
|
|
8
7
|
class: import("clsx").ClassValue;
|
|
9
8
|
className?: undefined;
|
|
@@ -3,54 +3,26 @@ import { cva } from "class-variance-authority";
|
|
|
3
3
|
import * as React from "react";
|
|
4
4
|
import { clx } from "../../utils/clx";
|
|
5
5
|
import { Spinner } from "@medusajs/icons";
|
|
6
|
-
const buttonVariants = cva("
|
|
6
|
+
const buttonVariants = cva(clx("transition-fg relative inline-flex w-fit items-center justify-center overflow-hidden rounded-md border outline-none", "disabled:bg-ui-bg-disabled disabled:border-ui-border-base disabled:text-ui-fg-disabled disabled:!shadow-none disabled:after:hidden", "after:absolute after:inset-0 after:content-['']"), {
|
|
7
7
|
variants: {
|
|
8
8
|
variant: {
|
|
9
9
|
primary: clx("shadow-buttons-colored text-ui-fg-on-inverted border-ui-border-loud bg-ui-button-inverted after:button-inverted-gradient", "hover:bg-ui-button-inverted-hover hover:after:button-inverted-hover-gradient", "active:bg-ui-button-inverted-pressed active:after:button-inverted-pressed-gradient", "focus:!shadow-buttons-colored-focus"),
|
|
10
10
|
secondary: clx("shadow-buttons-neutral text-ui-fg-base border-ui-border-base bg-ui-button-neutral after:button-neutral-gradient", "hover:bg-ui-button-neutral-hover hover:after:button-neutral-hover-gradient", "active:bg-ui-button-neutral-pressed active:after:button-neutral-pressed-gradient", "focus:shadow-buttons-neutral-focus"),
|
|
11
|
-
transparent: clx("text-ui-fg-base border-ui-border-transparent bg-ui-button-transparent", "hover:bg-ui-button-transparent-hover", "active:bg-ui-button-transparent-pressed active:border-ui-border-base", "focus:shadow-borders-focus focus:bg-ui-bg-base focus:border-ui-border-base", "disabled
|
|
11
|
+
transparent: clx("text-ui-fg-base border-ui-border-transparent bg-ui-button-transparent", "hover:bg-ui-button-transparent-hover", "active:bg-ui-button-transparent-pressed active:border-ui-border-base", "focus:shadow-borders-focus focus:bg-ui-bg-base focus:border-ui-border-base", "disabled:!border-none disabled:!bg-transparent disabled:!shadow-none"),
|
|
12
12
|
danger: clx("shadow-buttons-neutral text-ui-fg-on-color border-ui-border-danger bg-ui-button-danger after:button-danger-gradient", "hover:bg-ui-button-danger-hover hover:after:button-danger-hover-gradient", "active:bg-ui-button-danger-pressed active:after:button-danger-pressed-gradient", "focus:shadow-buttons-neutral-focus"),
|
|
13
13
|
},
|
|
14
14
|
size: {
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
xlarge: "txt-compact-large-plus gap-x-2 px-[19px] py-[13px]",
|
|
19
|
-
},
|
|
20
|
-
format: {
|
|
21
|
-
default: "",
|
|
22
|
-
icon: "",
|
|
15
|
+
base: "txt-compact-small-plus gap-x-1 px-2 py-[5px]",
|
|
16
|
+
large: "txt-compact-medium-plus gap-x-1 px-3 py-[9px]",
|
|
17
|
+
xlarge: "txt-compact-large-plus gap-x-1 px-4 py-[13px]",
|
|
23
18
|
},
|
|
24
19
|
},
|
|
25
20
|
defaultVariants: {
|
|
26
|
-
variant: "primary",
|
|
27
21
|
size: "base",
|
|
28
|
-
|
|
22
|
+
variant: "primary",
|
|
29
23
|
},
|
|
30
|
-
compoundVariants: [
|
|
31
|
-
{
|
|
32
|
-
size: "small",
|
|
33
|
-
format: "icon",
|
|
34
|
-
className: "px-px py-px",
|
|
35
|
-
},
|
|
36
|
-
{
|
|
37
|
-
size: "base",
|
|
38
|
-
format: "icon",
|
|
39
|
-
className: "px-[5px] py-[5px]",
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
size: "large",
|
|
43
|
-
format: "icon",
|
|
44
|
-
className: "px-[9px] py-[9px]",
|
|
45
|
-
},
|
|
46
|
-
{
|
|
47
|
-
size: "xlarge",
|
|
48
|
-
format: "icon",
|
|
49
|
-
className: "px-[13px] py-[13px]",
|
|
50
|
-
},
|
|
51
|
-
],
|
|
52
24
|
});
|
|
53
|
-
const Button = React.forwardRef(({
|
|
25
|
+
const Button = React.forwardRef(({ variant = "primary", size = "base", className, asChild = false, children, isLoading = false, disabled, ...props }, ref) => {
|
|
54
26
|
const Component = asChild ? Slot : "button";
|
|
55
27
|
/**
|
|
56
28
|
* In the case of a button where asChild is true, and isLoading is true, we ensure that
|
|
@@ -60,13 +32,13 @@ const Button = React.forwardRef(({ size, variant, format, className, asChild = f
|
|
|
60
32
|
const renderInner = () => {
|
|
61
33
|
if (isLoading) {
|
|
62
34
|
return (React.createElement("span", { className: "pointer-events-none" },
|
|
63
|
-
React.createElement("div", { className: clx("bg-ui-bg-disabled absolute inset-0
|
|
35
|
+
React.createElement("div", { className: clx("bg-ui-bg-disabled absolute inset-0 flex items-center justify-center rounded-md") },
|
|
64
36
|
React.createElement(Spinner, { className: "animate-spin" })),
|
|
65
37
|
children));
|
|
66
38
|
}
|
|
67
39
|
return children;
|
|
68
40
|
};
|
|
69
|
-
return (React.createElement(Component, { ref: ref, ...props, className: clx(buttonVariants({ variant, size
|
|
41
|
+
return (React.createElement(Component, { ref: ref, ...props, className: clx(buttonVariants({ variant, size }), className), disabled: disabled || isLoading }, renderInner()));
|
|
70
42
|
});
|
|
71
43
|
Button.displayName = "Button";
|
|
72
44
|
export { Button, buttonVariants };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,cAAc,GAAG,GAAG,CACxB,
|
|
1
|
+
{"version":3,"file":"button.js","sourceRoot":"","sources":["../../../../src/components/button/button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,sBAAsB,CAAA;AAC3C,OAAO,EAAE,GAAG,EAAqB,MAAM,0BAA0B,CAAA;AACjE,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAA;AACjC,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAA;AAEzC,MAAM,cAAc,GAAG,GAAG,CACxB,GAAG,CACD,qHAAqH,EACrH,oIAAoI,EACpI,iDAAiD,CAClD,EACD;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,OAAO,EAAE,GAAG,CACV,0HAA0H,EAC1H,8EAA8E,EAC9E,oFAAoF,EACpF,qCAAqC,CACtC;YACD,SAAS,EAAE,GAAG,CACZ,iHAAiH,EACjH,4EAA4E,EAC5E,kFAAkF,EAClF,oCAAoC,CACrC;YACD,WAAW,EAAE,GAAG,CACd,uEAAuE,EACvE,sCAAsC,EACtC,sEAAsE,EACtE,4EAA4E,EAC5E,sEAAsE,CACvE;YACD,MAAM,EAAE,GAAG,CACT,qHAAqH,EACrH,0EAA0E,EAC1E,gFAAgF,EAChF,oCAAoC,CACrC;SACF;QACD,IAAI,EAAE;YACJ,IAAI,EAAE,8CAA8C;YACpD,KAAK,EAAE,+CAA+C;YACtD,MAAM,EAAE,+CAA+C;SACxD;KACF;IACD,eAAe,EAAE;QACf,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,SAAS;KACnB;CACF,CACF,CAAA;AASD,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,CAC7B,CACE,EACE,OAAO,GAAG,SAAS,EACnB,IAAI,GAAG,MAAM,EACb,SAAS,EACT,OAAO,GAAG,KAAK,EACf,QAAQ,EACR,SAAS,GAAG,KAAK,EACjB,QAAQ,EACR,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAA;IAE3C;;;;OAIG;IACH,MAAM,WAAW,GAAG,GAAG,EAAE;QACvB,IAAI,SAAS,EAAE;YACb,OAAO,CACL,8BAAM,SAAS,EAAC,qBAAqB;gBACnC,6BACE,SAAS,EAAE,GAAG,CACZ,gFAAgF,CACjF;oBAED,oBAAC,OAAO,IAAC,SAAS,EAAC,cAAc,GAAG,CAChC;gBACL,QAAQ,CACJ,CACR,CAAA;SACF;QAED,OAAO,QAAQ,CAAA;IACjB,CAAC,CAAA;IAED,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,GAAG,KACJ,KAAK,EACT,SAAS,EAAE,GAAG,CAAC,cAAc,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,SAAS,CAAC,EAC5D,QAAQ,EAAE,QAAQ,IAAI,SAAS,IAE9B,WAAW,EAAE,CACJ,CACb,CAAA;AACH,CAAC,CACF,CAAA;AACD,MAAM,CAAC,WAAW,GAAG,QAAQ,CAAA;AAE7B,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,CAAA","sourcesContent":["import { Slot } from \"@radix-ui/react-slot\"\nimport { cva, type VariantProps } from \"class-variance-authority\"\nimport * as React from \"react\"\n\nimport { clx } from \"@/utils/clx\"\nimport { Spinner } from \"@medusajs/icons\"\n\nconst buttonVariants = cva(\n clx(\n \"transition-fg relative inline-flex w-fit items-center justify-center overflow-hidden rounded-md border outline-none\",\n \"disabled:bg-ui-bg-disabled disabled:border-ui-border-base disabled:text-ui-fg-disabled disabled:!shadow-none disabled:after:hidden\",\n \"after:absolute after:inset-0 after:content-['']\"\n ),\n {\n variants: {\n variant: {\n primary: clx(\n \"shadow-buttons-colored text-ui-fg-on-inverted border-ui-border-loud bg-ui-button-inverted after:button-inverted-gradient\",\n \"hover:bg-ui-button-inverted-hover hover:after:button-inverted-hover-gradient\",\n \"active:bg-ui-button-inverted-pressed active:after:button-inverted-pressed-gradient\",\n \"focus:!shadow-buttons-colored-focus\"\n ),\n secondary: clx(\n \"shadow-buttons-neutral text-ui-fg-base border-ui-border-base bg-ui-button-neutral after:button-neutral-gradient\",\n \"hover:bg-ui-button-neutral-hover hover:after:button-neutral-hover-gradient\",\n \"active:bg-ui-button-neutral-pressed active:after:button-neutral-pressed-gradient\",\n \"focus:shadow-buttons-neutral-focus\"\n ),\n transparent: clx(\n \"text-ui-fg-base border-ui-border-transparent bg-ui-button-transparent\",\n \"hover:bg-ui-button-transparent-hover\",\n \"active:bg-ui-button-transparent-pressed active:border-ui-border-base\",\n \"focus:shadow-borders-focus focus:bg-ui-bg-base focus:border-ui-border-base\",\n \"disabled:!border-none disabled:!bg-transparent disabled:!shadow-none\"\n ),\n danger: clx(\n \"shadow-buttons-neutral text-ui-fg-on-color border-ui-border-danger bg-ui-button-danger after:button-danger-gradient\",\n \"hover:bg-ui-button-danger-hover hover:after:button-danger-hover-gradient\",\n \"active:bg-ui-button-danger-pressed active:after:button-danger-pressed-gradient\",\n \"focus:shadow-buttons-neutral-focus\"\n ),\n },\n size: {\n base: \"txt-compact-small-plus gap-x-1 px-2 py-[5px]\",\n large: \"txt-compact-medium-plus gap-x-1 px-3 py-[9px]\",\n xlarge: \"txt-compact-large-plus gap-x-1 px-4 py-[13px]\",\n },\n },\n defaultVariants: {\n size: \"base\",\n variant: \"primary\",\n },\n }\n)\n\ninterface ButtonProps\n extends React.ComponentPropsWithoutRef<\"button\">,\n VariantProps<typeof buttonVariants> {\n isLoading?: boolean\n asChild?: boolean\n}\n\nconst Button = React.forwardRef<HTMLButtonElement, ButtonProps>(\n (\n {\n variant = \"primary\",\n size = \"base\",\n className,\n asChild = false,\n children,\n isLoading = false,\n disabled,\n ...props\n },\n ref\n ) => {\n const Component = asChild ? Slot : \"button\"\n\n /**\n * In the case of a button where asChild is true, and isLoading is true, we ensure that\n * only on element is passed as a child to the Slot component. This is because the Slot\n * component only accepts a single child.\n */\n const renderInner = () => {\n if (isLoading) {\n return (\n <span className=\"pointer-events-none\">\n <div\n className={clx(\n \"bg-ui-bg-disabled absolute inset-0 flex items-center justify-center rounded-md\"\n )}\n >\n <Spinner className=\"animate-spin\" />\n </div>\n {children}\n </span>\n )\n }\n\n return children\n }\n\n return (\n <Component\n ref={ref}\n {...props}\n className={clx(buttonVariants({ variant, size }), className)}\n disabled={disabled || isLoading}\n >\n {renderInner()}\n </Component>\n )\n }\n)\nButton.displayName = \"Button\"\n\nexport { Button, buttonVariants }\n"]}
|