@health-samurai/react-components 0.0.0-alpha.7 → 0.0.0-alpha.9
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/bundle.css +10 -10
- package/dist/src/components/data-table.d.ts +7 -5
- package/dist/src/components/data-table.d.ts.map +1 -1
- package/dist/src/components/data-table.js.map +1 -1
- package/dist/src/components/data-table.stories.d.ts +6 -2
- package/dist/src/components/data-table.stories.d.ts.map +1 -1
- package/dist/src/components/data-table.stories.js.map +1 -1
- package/dist/src/components/fhir-structure-view.d.ts +8 -8
- package/dist/src/components/fhir-structure-view.d.ts.map +1 -1
- package/dist/src/components/fhir-structure-view.js +9 -7
- package/dist/src/components/fhir-structure-view.js.map +1 -1
- package/dist/src/components/request-line-editor.d.ts.map +1 -1
- package/dist/src/components/request-line-editor.js +1 -1
- package/dist/src/components/request-line-editor.js.map +1 -1
- package/dist/src/components/segment-control.d.ts +3 -3
- package/dist/src/components/segment-control.d.ts.map +1 -1
- package/dist/src/components/segment-control.js +4 -4
- package/dist/src/components/segment-control.js.map +1 -1
- package/dist/src/components/segment-control.stories.d.ts +2 -3
- package/dist/src/components/segment-control.stories.d.ts.map +1 -1
- package/dist/src/components/split-button.d.ts +2 -2
- package/dist/src/components/split-button.d.ts.map +1 -1
- package/dist/src/components/split-button.js +2 -2
- package/dist/src/components/split-button.js.map +1 -1
- package/dist/src/components/tree-view.d.ts +25 -5
- package/dist/src/components/tree-view.d.ts.map +1 -1
- package/dist/src/components/tree-view.js +44 -51
- package/dist/src/components/tree-view.js.map +1 -1
- package/dist/src/components/tree-view.stories.js +8 -8
- package/dist/src/components/tree-view.stories.js.map +1 -1
- package/dist/src/icons.d.ts +8 -8
- package/dist/src/icons.d.ts.map +1 -1
- package/dist/src/icons.js +16 -16
- package/dist/src/icons.js.map +1 -1
- package/dist/src/index.d.ts +1 -1
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/shadcn/components/ui/chart.d.ts +2 -2
- package/dist/src/shadcn/components/ui/chart.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/chart.js +2 -2
- package/dist/src/shadcn/components/ui/chart.js.map +1 -1
- package/dist/src/shadcn/components/ui/combobox.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/combobox.js +13 -22
- package/dist/src/shadcn/components/ui/combobox.js.map +1 -1
- package/dist/src/shadcn/components/ui/command.js +1 -1
- package/dist/src/shadcn/components/ui/command.js.map +1 -1
- package/dist/src/shadcn/components/ui/form.d.ts +2 -2
- package/dist/src/shadcn/components/ui/form.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/form.js +4 -4
- package/dist/src/shadcn/components/ui/form.js.map +1 -1
- package/dist/src/shadcn/components/ui/select.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/select.js +3 -2
- package/dist/src/shadcn/components/ui/select.js.map +1 -1
- package/dist/src/shadcn/components/ui/sonner.d.ts +3 -3
- package/dist/src/shadcn/components/ui/sonner.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/sonner.js +4 -4
- package/dist/src/shadcn/components/ui/sonner.js.map +1 -1
- package/dist/src/shadcn/components/ui/tabs.d.ts +6 -1
- package/dist/src/shadcn/components/ui/tabs.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/tabs.js +12 -8
- package/dist/src/shadcn/components/ui/tabs.js.map +1 -1
- package/dist/src/shadcn/components/ui/tree.d.ts.map +1 -1
- package/dist/src/shadcn/components/ui/tree.js +2 -2
- package/dist/src/shadcn/components/ui/tree.js.map +1 -1
- package/package.json +1 -1
- package/src/components/data-table.stories.tsx +9 -7
- package/src/components/data-table.tsx +6 -5
- package/src/components/fhir-structure-view.tsx +16 -14
- package/src/components/request-line-editor.tsx +1 -0
- package/src/components/segment-control.tsx +5 -5
- package/src/components/split-button.tsx +2 -2
- package/src/components/tree-view.stories.tsx +8 -8
- package/src/components/tree-view.tsx +100 -66
- package/src/icons.tsx +16 -16
- package/src/index.tsx +1 -1
- package/src/shadcn/components/ui/chart.tsx +2 -2
- package/src/shadcn/components/ui/combobox.tsx +13 -18
- package/src/shadcn/components/ui/command.tsx +1 -1
- package/src/shadcn/components/ui/form.tsx +5 -7
- package/src/shadcn/components/ui/select.tsx +3 -1
- package/src/shadcn/components/ui/sonner.tsx +5 -5
- package/src/shadcn/components/ui/tabs.tsx +26 -17
- package/src/shadcn/components/ui/tree.tsx +5 -4
package/dist/bundle.css
CHANGED
|
@@ -3270,6 +3270,16 @@
|
|
|
3270
3270
|
background-color: var(--accent);
|
|
3271
3271
|
}
|
|
3272
3272
|
}
|
|
3273
|
+
.in-data-\[focus\=true\]\:bg-bg-secondary {
|
|
3274
|
+
:where(*[data-focus="true"]) & {
|
|
3275
|
+
background-color: var(--color-bg-secondary);
|
|
3276
|
+
}
|
|
3277
|
+
}
|
|
3278
|
+
.in-data-\[focus\=true\]\:text-text-primary {
|
|
3279
|
+
:where(*[data-focus="true"]) & {
|
|
3280
|
+
color: var(--color-text-primary);
|
|
3281
|
+
}
|
|
3282
|
+
}
|
|
3273
3283
|
.in-data-\[folder\=true\]\:w-\[calc\(260px-var\(--tree-padding\)\)\] {
|
|
3274
3284
|
:where(*[data-folder="true"]) & {
|
|
3275
3285
|
width: calc(260px - var(--tree-padding));
|
|
@@ -3288,16 +3298,6 @@
|
|
|
3288
3298
|
}
|
|
3289
3299
|
}
|
|
3290
3300
|
}
|
|
3291
|
-
.in-data-\[selected\=true\]\:bg-bg-secondary {
|
|
3292
|
-
:where(*[data-selected="true"]) & {
|
|
3293
|
-
background-color: var(--color-bg-secondary);
|
|
3294
|
-
}
|
|
3295
|
-
}
|
|
3296
|
-
.in-data-\[selected\=true\]\:text-text-primary {
|
|
3297
|
-
:where(*[data-selected="true"]) & {
|
|
3298
|
-
color: var(--color-text-primary);
|
|
3299
|
-
}
|
|
3300
|
-
}
|
|
3301
3301
|
.in-data-\[selected\=true\]\:opacity-100 {
|
|
3302
3302
|
:where(*[data-selected="true"]) & {
|
|
3303
3303
|
opacity: 100%;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
|
-
import { type ColumnDef } from "@tanstack/react-table";
|
|
2
|
-
export interface DataTableProps<TData
|
|
3
|
-
columns:
|
|
1
|
+
import { type AccessorKeyColumnDef, type ColumnDef } from "@tanstack/react-table";
|
|
2
|
+
export interface DataTableProps<TData> {
|
|
3
|
+
columns: {
|
|
4
|
+
[K in keyof TData]: ColumnDef<TData, TData[K]>;
|
|
5
|
+
}[keyof TData][];
|
|
4
6
|
data: TData[];
|
|
5
7
|
stickyHeader?: boolean;
|
|
6
8
|
}
|
|
7
|
-
export declare function DataTable<TData
|
|
8
|
-
export type { ColumnDef };
|
|
9
|
+
export declare function DataTable<TData>({ columns, data, stickyHeader, }: DataTableProps<TData>): import("react/jsx-runtime").JSX.Element;
|
|
10
|
+
export type { ColumnDef, AccessorKeyColumnDef };
|
|
9
11
|
//# sourceMappingURL=data-table.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../src/components/data-table.tsx"],"names":[],"mappings":"AAEA,OAAO,EACN,KAAK,SAAS,EAId,MAAM,uBAAuB,CAAC;AAW/B,MAAM,WAAW,cAAc,CAAC,KAAK,EAAE,MAAM
|
|
1
|
+
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../../src/components/data-table.tsx"],"names":[],"mappings":"AAEA,OAAO,EACN,KAAK,oBAAoB,EACzB,KAAK,SAAS,EAId,MAAM,uBAAuB,CAAC;AAW/B,MAAM,WAAW,cAAc,CAAC,KAAK;IACpC,OAAO,EAAE;SAAG,CAAC,IAAI,MAAM,KAAK,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC;KAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;IAC3E,IAAI,EAAE,KAAK,EAAE,CAAC;IACd,YAAY,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,wBAAgB,SAAS,CAAC,KAAK,EAAE,EAChC,OAAO,EACP,IAAI,EACJ,YAAoB,GACpB,EAAE,cAAc,CAAC,KAAK,CAAC,2CAyFvB;AAED,YAAY,EAAE,SAAS,EAAE,oBAAoB,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/data-table.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n\ttype ColumnDef,\n\tflexRender,\n\tgetCoreRowModel,\n\tuseReactTable,\n} from \"@tanstack/react-table\";\n\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"../shadcn/components/ui/table\";\n\nexport interface DataTableProps<TData
|
|
1
|
+
{"version":3,"sources":["../../../src/components/data-table.tsx"],"sourcesContent":["\"use client\";\n\nimport {\n\ttype AccessorKeyColumnDef,\n\ttype ColumnDef,\n\tflexRender,\n\tgetCoreRowModel,\n\tuseReactTable,\n} from \"@tanstack/react-table\";\n\nimport {\n\tTable,\n\tTableBody,\n\tTableCell,\n\tTableHead,\n\tTableHeader,\n\tTableRow,\n} from \"../shadcn/components/ui/table\";\n\nexport interface DataTableProps<TData> {\n\tcolumns: { [K in keyof TData]: ColumnDef<TData, TData[K]> }[keyof TData][];\n\tdata: TData[];\n\tstickyHeader?: boolean;\n}\n\nexport function DataTable<TData>({\n\tcolumns,\n\tdata,\n\tstickyHeader = false,\n}: DataTableProps<TData>) {\n\t\"use no memo\";\n\tconst table = useReactTable({\n\t\tdata,\n\t\tcolumns,\n\t\tgetCoreRowModel: getCoreRowModel(),\n\t\tcolumnResizeMode: \"onChange\",\n\t\tenableColumnResizing: true,\n\t});\n\n\treturn (\n\t\t<div className=\"overflow-hidden w-full h-full\">\n\t\t\t<Table className=\"relative border-spacing-0 border-separate w-full\">\n\t\t\t\t<TableHeader>\n\t\t\t\t\t{table.getHeaderGroups().map((headerGroup) => (\n\t\t\t\t\t\t<TableRow key={headerGroup.id}>\n\t\t\t\t\t\t\t{headerGroup.headers.map((header) => {\n\t\t\t\t\t\t\t\treturn (\n\t\t\t\t\t\t\t\t\t<TableHead\n\t\t\t\t\t\t\t\t\t\tkey={header.id}\n\t\t\t\t\t\t\t\t\t\tclassName={`relative group border ${stickyHeader ? \"sticky top-0 z-10 bg-bg-secondary text-elements-assistive\" : \"\"}`}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\theader.column.getIndex() ===\n\t\t\t\t\t\t\t\t\t\t\t\theaderGroup.headers.length - 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t? \"w-full\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t: header.getSize(),\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{header.isPlaceholder\n\t\t\t\t\t\t\t\t\t\t\t? null\n\t\t\t\t\t\t\t\t\t\t\t: flexRender(\n\t\t\t\t\t\t\t\t\t\t\t\t\theader.column.columnDef.header,\n\t\t\t\t\t\t\t\t\t\t\t\t\theader.getContext(),\n\t\t\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t\t{header.column.getCanResize() && (\n\t\t\t\t\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\t\t\t\t\t{...{\n\t\t\t\t\t\t\t\t\t\t\t\t\tonMouseDown: header.getResizeHandler(),\n\t\t\t\t\t\t\t\t\t\t\t\t\tonTouchStart: header.getResizeHandler(),\n\t\t\t\t\t\t\t\t\t\t\t\t\tclassName: `hidden group-hover:block absolute top-0 right-0 h-full w-1 bg-border-secondary cursor-col-resize hover:bg-border-secondary`,\n\t\t\t\t\t\t\t\t\t\t\t\t\tstyle: {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tuserSelect: \"none\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t\ttouchAction: \"none\",\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t\t</TableHead>\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t))}\n\t\t\t\t</TableHeader>\n\t\t\t\t<TableBody>\n\t\t\t\t\t{table.getRowModel().rows?.length ? (\n\t\t\t\t\t\ttable.getRowModel().rows.map((row) => (\n\t\t\t\t\t\t\t<TableRow\n\t\t\t\t\t\t\t\tkey={row.id}\n\t\t\t\t\t\t\t\tdata-state={row.getIsSelected() && \"selected\"}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{row.getVisibleCells().map((cell) => (\n\t\t\t\t\t\t\t\t\t<TableCell\n\t\t\t\t\t\t\t\t\t\tclassName=\"border\"\n\t\t\t\t\t\t\t\t\t\tkey={cell.id}\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\twidth:\n\t\t\t\t\t\t\t\t\t\t\t\tcell.column.getIndex() ===\n\t\t\t\t\t\t\t\t\t\t\t\trow.getVisibleCells().length - 1\n\t\t\t\t\t\t\t\t\t\t\t\t\t? \"w-full\"\n\t\t\t\t\t\t\t\t\t\t\t\t\t: cell.column.getSize(),\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\t{flexRender(cell.column.columnDef.cell, cell.getContext())}\n\t\t\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t\t))\n\t\t\t\t\t) : (\n\t\t\t\t\t\t<TableRow>\n\t\t\t\t\t\t\t<TableCell colSpan={columns.length} className=\"h-24 text-center\">\n\t\t\t\t\t\t\t\tNo results.\n\t\t\t\t\t\t\t</TableCell>\n\t\t\t\t\t\t</TableRow>\n\t\t\t\t\t)}\n\t\t\t\t</TableBody>\n\t\t\t</Table>\n\t\t</div>\n\t);\n}\n\nexport type { ColumnDef, AccessorKeyColumnDef };\n"],"names":["flexRender","getCoreRowModel","useReactTable","Table","TableBody","TableCell","TableHead","TableHeader","TableRow","DataTable","columns","data","stickyHeader","table","columnResizeMode","enableColumnResizing","div","className","getHeaderGroups","map","headerGroup","headers","header","style","width","column","getIndex","length","getSize","isPlaceholder","columnDef","getContext","getCanResize","onMouseDown","getResizeHandler","onTouchStart","userSelect","touchAction","id","getRowModel","rows","row","data-state","getIsSelected","getVisibleCells","cell","colSpan"],"mappings":"AAAA;;AAEA,SAGCA,UAAU,EACVC,eAAe,EACfC,aAAa,QACP,wBAAwB;AAE/B,SACCC,KAAK,EACLC,SAAS,EACTC,SAAS,EACTC,SAAS,EACTC,WAAW,EACXC,QAAQ,QACF,mCAAgC;AAQvC,OAAO,SAASC,UAAiB,EAChCC,OAAO,EACPC,IAAI,EACJC,eAAe,KAAK,EACG;IACvB;IACA,MAAMC,QAAQX,cAAc;QAC3BS;QACAD;QACAT,iBAAiBA;QACjBa,kBAAkB;QAClBC,sBAAsB;IACvB;IAEA,qBACC,KAACC;QAAIC,WAAU;kBACd,cAAA,MAACd;YAAMc,WAAU;;8BAChB,KAACV;8BACCM,MAAMK,eAAe,GAAGC,GAAG,CAAC,CAACC,4BAC7B,KAACZ;sCACCY,YAAYC,OAAO,CAACF,GAAG,CAAC,CAACG;gCACzB,qBACC,MAAChB;oCAEAW,WAAW,CAAC,sBAAsB,EAAEL,eAAe,8DAA8D,IAAI;oCACrHW,OAAO;wCACNC,OACCF,OAAOG,MAAM,CAACC,QAAQ,OACtBN,YAAYC,OAAO,CAACM,MAAM,GAAG,IAC1B,WACAL,OAAOM,OAAO;oCACnB;;wCAECN,OAAOO,aAAa,GAClB,OACA7B,WACAsB,OAAOG,MAAM,CAACK,SAAS,CAACR,MAAM,EAC9BA,OAAOS,UAAU;wCAEnBT,OAAOG,MAAM,CAACO,YAAY,oBAC1B,KAAChB;4CAECiB,aAAaX,OAAOY,gBAAgB;4CACpCC,cAAcb,OAAOY,gBAAgB;4CACrCjB,WAAW,CAAC,0HAA0H,CAAC;4CACvIM,OAAO;gDACNa,YAAY;gDACZC,aAAa;4CACd;;;mCAzBEf,OAAOgB,EAAE;4BA+BjB;2BAnCclB,YAAYkB,EAAE;;8BAuC/B,KAAClC;8BACCS,MAAM0B,WAAW,GAAGC,IAAI,EAAEb,SAC1Bd,MAAM0B,WAAW,GAAGC,IAAI,CAACrB,GAAG,CAAC,CAACsB,oBAC7B,KAACjC;4BAEAkC,cAAYD,IAAIE,aAAa,MAAM;sCAElCF,IAAIG,eAAe,GAAGzB,GAAG,CAAC,CAAC0B,qBAC3B,KAACxC;oCACAY,WAAU;oCAEVM,OAAO;wCACNC,OACCqB,KAAKpB,MAAM,CAACC,QAAQ,OACpBe,IAAIG,eAAe,GAAGjB,MAAM,GAAG,IAC5B,WACAkB,KAAKpB,MAAM,CAACG,OAAO;oCACxB;8CAEC5B,WAAW6C,KAAKpB,MAAM,CAACK,SAAS,CAACe,IAAI,EAAEA,KAAKd,UAAU;mCATlDc,KAAKP,EAAE;2BANTG,IAAIH,EAAE,mBAqBb,KAAC9B;kCACA,cAAA,KAACH;4BAAUyC,SAASpC,QAAQiB,MAAM;4BAAEV,WAAU;sCAAmB;;;;;;;AASxE"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import type { Meta, StoryObj } from "@storybook/react-vite";
|
|
2
2
|
import { DataTable } from "./data-table";
|
|
3
|
-
|
|
3
|
+
type Data = {
|
|
4
|
+
name: string;
|
|
5
|
+
age: number;
|
|
6
|
+
};
|
|
7
|
+
declare const meta: Meta<typeof DataTable<Data>>;
|
|
4
8
|
export default meta;
|
|
5
|
-
type Story = StoryObj<typeof
|
|
9
|
+
type Story = StoryObj<typeof meta>;
|
|
6
10
|
export declare const Default: Story;
|
|
7
11
|
//# sourceMappingURL=data-table.stories.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.stories.d.ts","sourceRoot":"","sources":["../../../src/components/data-table.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAuB,MAAM,cAAc,CAAC;AAE9D,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,
|
|
1
|
+
{"version":3,"file":"data-table.stories.d.ts","sourceRoot":"","sources":["../../../src/components/data-table.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAuB,MAAM,cAAc,CAAC;AAE9D,KAAK,IAAI,GAAG;IACX,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,QAAA,MAAM,IAAI,EAAE,IAAI,CAAC,OAAO,SAAS,CAAC,IAAI,CAAC,CAItC,CAAC;AAEF,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAMnC,eAAO,MAAM,OAAO,EAAE,KAqErB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/data-table.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { DataTable, type DataTableProps } from \"./data-table\";\n\nconst meta: Meta<typeof DataTable
|
|
1
|
+
{"version":3,"sources":["../../../src/components/data-table.stories.tsx"],"sourcesContent":["import type { Meta, StoryObj } from \"@storybook/react-vite\";\nimport { DataTable, type DataTableProps } from \"./data-table\";\n\ntype Data = {\n\tname: string;\n\tage: number;\n};\n\nconst meta: Meta<typeof DataTable<Data>> = {\n\ttitle: \"Component/Data table\",\n\tcomponent: DataTable<Data>,\n\ttags: [\"autodocs\"],\n};\n\nexport default meta;\ntype Story = StoryObj<typeof meta>;\n\nfunction DataTableWrapper({ columns, data }: DataTableProps<Data>) {\n\treturn <DataTable columns={columns} data={data} />;\n}\n\nexport const Default: Story = {\n\targs: {\n\t\tcolumns: [\n\t\t\t{\n\t\t\t\theader: \"Name\",\n\t\t\t\taccessorKey: \"name\",\n\t\t\t},\n\t\t\t{\n\t\t\t\theader: \"Age\",\n\t\t\t\taccessorKey: \"age\",\n\t\t\t},\n\t\t],\n\t\tdata: [\n\t\t\t{ name: \"John Doe\", age: 30 },\n\t\t\t{ name: \"Jane Smith\", age: 25 },\n\t\t\t{ name: \"Bob Johnson\", age: 42 },\n\t\t\t{ name: \"Alice Williams\", age: 35 },\n\t\t\t{ name: \"Charlie Brown\", age: 28 },\n\t\t\t{ name: \"Diana Prince\", age: 31 },\n\t\t\t{ name: \"Edward Norton\", age: 45 },\n\t\t\t{ name: \"Fiona Green\", age: 27 },\n\t\t\t{ name: \"George Miller\", age: 38 },\n\t\t\t{ name: \"Hannah Davis\", age: 33 },\n\t\t\t{ name: \"Ian Moore\", age: 29 },\n\t\t\t{ name: \"Julia Taylor\", age: 41 },\n\t\t\t{ name: \"Kevin Anderson\", age: 36 },\n\t\t\t{ name: \"Laura Thomas\", age: 32 },\n\t\t\t{ name: \"Michael Jackson\", age: 44 },\n\t\t\t{ name: \"Nancy Wilson\", age: 26 },\n\t\t\t{ name: \"Oscar Martinez\", age: 39 },\n\t\t\t{ name: \"Patricia Lee\", age: 34 },\n\t\t\t{ name: \"Quinn Harris\", age: 37 },\n\t\t\t{ name: \"Rachel Clark\", age: 40 },\n\t\t\t{ name: \"Samuel Wright\", age: 43 },\n\t\t\t{ name: \"Tina Turner\", age: 48 },\n\t\t\t{ name: \"Ulysses Grant\", age: 52 },\n\t\t\t{ name: \"Victoria Baker\", age: 29 },\n\t\t\t{ name: \"William Scott\", age: 35 },\n\t\t\t{ name: \"Xavier Adams\", age: 31 },\n\t\t\t{ name: \"Yolanda King\", age: 38 },\n\t\t\t{ name: \"Zachary Nelson\", age: 27 },\n\t\t\t{ name: \"Amy Carter\", age: 33 },\n\t\t\t{ name: \"Benjamin Hall\", age: 46 },\n\t\t\t{ name: \"Catherine Allen\", age: 24 },\n\t\t\t{ name: \"David Young\", age: 41 },\n\t\t\t{ name: \"Emily Walker\", age: 36 },\n\t\t\t{ name: \"Frank Robinson\", age: 39 },\n\t\t\t{ name: \"Grace White\", age: 28 },\n\t\t\t{ name: \"Henry Lewis\", age: 47 },\n\t\t\t{ name: \"Isabella Hill\", age: 32 },\n\t\t\t{ name: \"Jack Martin\", age: 34 },\n\t\t\t{ name: \"Katherine Garcia\", age: 30 },\n\t\t\t{ name: \"Louis Rodriguez\", age: 45 },\n\t\t\t{ name: \"Margaret Martinez\", age: 37 },\n\t\t\t{ name: \"Nathan Hernandez\", age: 26 },\n\t\t\t{ name: \"Olivia Lopez\", age: 29 },\n\t\t\t{ name: \"Peter Gonzalez\", age: 43 },\n\t\t\t{ name: \"Quincy Wilson\", age: 38 },\n\t\t\t{ name: \"Rebecca Anderson\", age: 31 },\n\t\t\t{ name: \"Steven Thomas\", age: 44 },\n\t\t\t{ name: \"Teresa Taylor\", age: 35 },\n\t\t\t{ name: \"Ursula Moore\", age: 40 },\n\t\t\t{ name: \"Victor Jackson\", age: 42 },\n\t\t],\n\t},\n\tparameters: {\n\t\tlayout: \"fullscreen\",\n\t},\n\trender: (args) => <DataTableWrapper {...args} />,\n};\n"],"names":["DataTable","meta","title","component","tags","DataTableWrapper","columns","data","Default","args","header","accessorKey","name","age","parameters","layout","render"],"mappings":"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"}
|
|
@@ -4,15 +4,15 @@ type PackageSpec = {
|
|
|
4
4
|
version: string;
|
|
5
5
|
};
|
|
6
6
|
type Coordinate = {
|
|
7
|
-
id
|
|
8
|
-
packageSpec
|
|
9
|
-
"package-spec"
|
|
10
|
-
label
|
|
7
|
+
id?: string;
|
|
8
|
+
packageSpec?: PackageSpec;
|
|
9
|
+
"package-spec"?: PackageSpec;
|
|
10
|
+
label?: string;
|
|
11
11
|
};
|
|
12
12
|
type FhirStructure = {
|
|
13
13
|
type?: string;
|
|
14
|
-
min?: string;
|
|
15
|
-
max?: string;
|
|
14
|
+
min?: string | number;
|
|
15
|
+
max?: string | number;
|
|
16
16
|
lastNode?: boolean;
|
|
17
17
|
isSummary?: boolean;
|
|
18
18
|
isModifier?: boolean;
|
|
@@ -27,8 +27,8 @@ type FhirStructure = {
|
|
|
27
27
|
};
|
|
28
28
|
vsCoordinate?: Coordinate;
|
|
29
29
|
};
|
|
30
|
-
declare
|
|
30
|
+
declare function FhirStructureView({ tree, }: {
|
|
31
31
|
tree: Record<string, TreeViewItem<FhirStructure>>;
|
|
32
|
-
})
|
|
32
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
33
33
|
export { FhirStructureView, type FhirStructure };
|
|
34
34
|
//# sourceMappingURL=fhir-structure-view.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fhir-structure-view.d.ts","sourceRoot":"","sources":["../../../src/components/fhir-structure-view.tsx"],"names":[],"mappings":"AASA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAE1D,KAAK,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,UAAU,GAAG;IACjB,EAAE,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"fhir-structure-view.d.ts","sourceRoot":"","sources":["../../../src/components/fhir-structure-view.tsx"],"names":[],"mappings":"AASA,OAAO,EAAY,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAE1D,KAAK,WAAW,GAAG;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,KAAK,UAAU,GAAG;IACjB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,cAAc,CAAC,EAAE,WAAW,CAAC;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,aAAa,GAAG;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mBAAmB,CAAC,EAAE,UAAU,CAAC;IACjC,OAAO,CAAC,EAAE;QACT,QAAQ,EAAE,MAAM,CAAC;KACjB,CAAC;IACF,YAAY,CAAC,EAAE,UAAU,CAAC;CAC1B,CAAC;AA4JF,iBAAS,iBAAiB,CAAC,EAC1B,IAAI,GACJ,EAAE;IACF,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC,CAAC,CAAC;CAClD,2CA4BA;AAED,OAAO,EAAE,iBAAiB,EAAE,KAAK,aAAa,EAAE,CAAC"}
|
|
@@ -4,7 +4,7 @@ import { Tooltip, TooltipContent, TooltipTrigger } from "../shadcn/components/ui
|
|
|
4
4
|
import { cn } from "../shadcn/lib/utils.js";
|
|
5
5
|
import * as CustomIcon from "../icons.js";
|
|
6
6
|
import { TreeView } from "./tree-view.js";
|
|
7
|
-
|
|
7
|
+
function FiledIcon(item) {
|
|
8
8
|
const filedType = item.getItemData()?.meta?.type;
|
|
9
9
|
switch(filedType){
|
|
10
10
|
case "Resource":
|
|
@@ -39,9 +39,9 @@ const FiledIcon = (item)=>{
|
|
|
39
39
|
default:
|
|
40
40
|
return /*#__PURE__*/ _jsx(CustomIcon.ComplexTypeIcon, {});
|
|
41
41
|
}
|
|
42
|
-
}
|
|
42
|
+
}
|
|
43
43
|
const customItemFieldNameClass = cn("flex", "items-center", "truncate", "gap-2", "min-w-[calc(260px-var(--tree-padding))]", "w-[calc(260px-var(--tree-padding))]", "in-data-[folder=true]:w-[calc(260px-var(--tree-padding))]", "in-data-[folder=true]:min-w-[calc(260px-var(--tree-padding))]");
|
|
44
|
-
|
|
44
|
+
function customItemView(item) {
|
|
45
45
|
const fieldName = item.getItemData()?.name;
|
|
46
46
|
const cardinalityMin = item.getItemData()?.meta?.min;
|
|
47
47
|
const cardinalityMax = item.getItemData()?.meta?.max;
|
|
@@ -173,8 +173,8 @@ const customItemView = (item)=>{
|
|
|
173
173
|
})
|
|
174
174
|
]
|
|
175
175
|
});
|
|
176
|
-
}
|
|
177
|
-
|
|
176
|
+
}
|
|
177
|
+
function FhirStructureView({ tree }) {
|
|
178
178
|
const expandedItemIds = React.useMemo(()=>{
|
|
179
179
|
return Object.keys(tree ?? {});
|
|
180
180
|
}, [
|
|
@@ -209,6 +209,8 @@ const FhirStructureView = ({ tree })=>{
|
|
|
209
209
|
]
|
|
210
210
|
}),
|
|
211
211
|
/*#__PURE__*/ _jsx(TreeView, {
|
|
212
|
+
focusedItem: null,
|
|
213
|
+
onFocusedItemChange: ()=>{},
|
|
212
214
|
hideChevron: true,
|
|
213
215
|
horizontalLines: true,
|
|
214
216
|
disableHover: true,
|
|
@@ -216,11 +218,11 @@ const FhirStructureView = ({ tree })=>{
|
|
|
216
218
|
rootItemId: "root",
|
|
217
219
|
items: tree,
|
|
218
220
|
customItemView: customItemView,
|
|
219
|
-
|
|
221
|
+
defaultExpandedItems: expandedItemIds
|
|
220
222
|
})
|
|
221
223
|
]
|
|
222
224
|
});
|
|
223
|
-
}
|
|
225
|
+
}
|
|
224
226
|
export { FhirStructureView };
|
|
225
227
|
|
|
226
228
|
//# sourceMappingURL=fhir-structure-view.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/fhir-structure-view.tsx"],"sourcesContent":["import type { ItemInstance } from \"@headless-tree/core\";\nimport React from \"react\";\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from \"#shadcn/components/ui/tooltip\";\nimport { cn } from \"#shadcn/lib/utils.js\";\nimport * as CustomIcon from \"../icons\";\nimport { TreeView, type TreeViewItem } from \"./tree-view\";\n\ntype PackageSpec = {\n\tname: string;\n\tversion: string;\n};\n\ntype Coordinate = {\n\tid: string;\n\tpackageSpec: PackageSpec;\n\t\"package-spec\": PackageSpec;\n\tlabel: string;\n};\n\ntype FhirStructure = {\n\ttype?: string;\n\tmin?: string;\n\tmax?: string;\n\tlastNode?: boolean;\n\tisSummary?: boolean;\n\tisModifier?: boolean;\n\tmustSupport?: boolean;\n\tdatatype?: string;\n\tshort?: string;\n\tdesc?: string;\n\textensionUrl?: string;\n\textensionCoordinate?: Coordinate;\n\tbinding?: {\n\t\tvalueSet: string;\n\t};\n\tvsCoordinate?: Coordinate;\n};\n\nconst FiledIcon = (item: ItemInstance<TreeViewItem<FhirStructure>>) => {\n\tconst filedType = item.getItemData()?.meta?.type;\n\n\tswitch (filedType) {\n\t\tcase \"Resource\":\n\t\t\treturn <CustomIcon.ResourceIcon />;\n\t\tcase \"BackboneElement\":\n\t\t\treturn <CustomIcon.BackoneElementIcon />;\n\t\tcase \"Reference\":\n\t\t\treturn <CustomIcon.ReferenceIcon />;\n\t\tcase \"union\":\n\t\t\treturn <CustomIcon.UnionIcon />;\n\t\tcase \"instant\":\n\t\tcase \"time\":\n\t\tcase \"date\":\n\t\tcase \"dateTime\":\n\t\tcase \"decimal\":\n\t\tcase \"boolean\":\n\t\tcase \"integer\":\n\t\tcase \"string\":\n\t\tcase \"uri\":\n\t\tcase \"base64Binary\":\n\t\tcase \"code\":\n\t\tcase \"id\":\n\t\tcase \"oid\":\n\t\tcase \"unsignedInt\":\n\t\tcase \"positiveInt\":\n\t\tcase \"markdown\":\n\t\tcase \"url\":\n\t\tcase \"canonical\":\n\t\tcase \"uuid\":\n\t\tcase \"integer64\":\n\t\t\treturn <CustomIcon.TypCodeIcon />;\n\t\tdefault:\n\t\t\treturn <CustomIcon.ComplexTypeIcon />;\n\t}\n};\n\nconst customItemFieldNameClass = cn(\n\t\"flex\",\n\t\"items-center\",\n\t\"truncate\",\n\t\"gap-2\",\n\t\"min-w-[calc(260px-var(--tree-padding))]\",\n\t\"w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:min-w-[calc(260px-var(--tree-padding))]\",\n);\n\nconst customItemView = (item: ItemInstance<TreeViewItem<FhirStructure>>) => {\n\tconst fieldName = item.getItemData()?.name;\n\tconst cardinalityMin = item.getItemData()?.meta?.min;\n\tconst cardinalityMax = item.getItemData()?.meta?.max;\n\tconst isSummary = item.getItemData()?.meta?.isSummary;\n\tconst isModifier = item.getItemData()?.meta?.isModifier;\n\tconst mustSupport = item.getItemData()?.meta?.mustSupport;\n\tconst datatype = item.getItemData()?.meta?.type;\n\tconst short = item.getItemData()?.meta?.short;\n\tconst desc = item.getItemData()?.meta?.desc;\n\tconst extensionUrl = item.getItemData()?.meta?.extensionUrl;\n\tconst extensionCoordinate = item.getItemData()?.meta?.extensionCoordinate;\n\tconst binding = item.getItemData()?.meta?.binding;\n\tconst vsCoordinate = item.getItemData()?.meta?.vsCoordinate;\n\treturn (\n\t\t<div className=\"flex items-start gap-2 text-xs\">\n\t\t\t<div className={customItemFieldNameClass}>\n\t\t\t\t{FiledIcon(item)}\n\t\t\t\t{fieldName}\n\t\t\t</div>\n\n\t\t\t<div className=\"flex items-center gap-1 min-w-[60px] w-[60px]\">\n\t\t\t\t{mustSupport && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] text-white bg-red-600 rounded cursor-help\">\n\t\t\t\t\t\t\t\tS\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Must be supported</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isSummary && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">Σ</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Part of the summary set</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isModifier && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">!?</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Modifying element</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t<div className=\"flex items-center gap-1 min-w-[50px] w-[50px] typo-code\">\n\t\t\t\t{cardinalityMin && cardinalityMax\n\t\t\t\t\t? `${cardinalityMin}..${cardinalityMax}`\n\t\t\t\t\t: \"\"}\n\t\t\t</div>\n\t\t\t<div className=\"flex gap-1 w-[200px] min-w-[200px]\">\n\t\t\t\t{datatype !== \"union\" && datatype}\n\t\t\t</div>\n\t\t\t<div className=\"text-left overflow-hidden\">\n\t\t\t\t{short && <div className=\"line-clamp-2\">{short}</div>}\n\t\t\t\t{!short && desc && <div className=\"line-clamp-2\">{desc}</div>}\n\t\t\t\t{extensionUrl && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>URL:</span>\n\t\t\t\t\t\t{extensionCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${extensionCoordinate?.[\"package-spec\"]?.name || extensionCoordinate?.packageSpec?.name}#${extensionCoordinate?.[\"package-spec\"]?.version || extensionCoordinate?.packageSpec?.version}/sd/${extensionCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{binding && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>Binding:</span>\n\t\t\t\t\t\t{vsCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${vsCoordinate?.[\"package-spec\"]?.name || vsCoordinate?.packageSpec?.name}#${vsCoordinate?.[\"package-spec\"]?.version || vsCoordinate?.packageSpec?.version}/vs/${vsCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n\nconst FhirStructureView = ({\n\ttree,\n}: {\n\ttree: Record<string, TreeViewItem<FhirStructure>>;\n}) => {\n\tconst expandedItemIds = React.useMemo(() => {\n\t\treturn Object.keys(tree ?? {});\n\t}, [tree]);\n\n\treturn (\n\t\t<div className=\"h-fit w-fit min-h-0 min-w-0\">\n\t\t\t<div className=\"flex items-center gap-2 font-semibold text-xs text-text-secondary border-b py-2 bg-bg-primary sticky top-0 z-20\">\n\t\t\t\t<div className=\"min-w-[260px] w-[260px] ml-4\">Name</div>\n\t\t\t\t<div className=\"min-w-[60px] w-[60px]\">Flags</div>\n\t\t\t\t<div className=\"min-w-[50px] w-[50px]\">Card.</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Type</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Description</div>\n\t\t\t</div>\n\t\t\t<TreeView\n\t\t\t\thideChevron={true}\n\t\t\t\thorizontalLines={true}\n\t\t\t\tdisableHover={true}\n\t\t\t\tzebra={true}\n\t\t\t\trootItemId=\"root\"\n\t\t\t\titems={tree}\n\t\t\t\tcustomItemView={customItemView}\n\t\t\t\texpandedItemIds={expandedItemIds}\n\t\t\t/>\n\t\t</div>\n\t);\n};\n\nexport { FhirStructureView, type FhirStructure };\n"],"names":["React","Tooltip","TooltipContent","TooltipTrigger","cn","CustomIcon","TreeView","FiledIcon","item","filedType","getItemData","meta","type","ResourceIcon","BackoneElementIcon","ReferenceIcon","UnionIcon","TypCodeIcon","ComplexTypeIcon","customItemFieldNameClass","customItemView","fieldName","name","cardinalityMin","min","cardinalityMax","max","isSummary","isModifier","mustSupport","datatype","short","desc","extensionUrl","extensionCoordinate","binding","vsCoordinate","div","className","asChild","span","p","id","a","href","packageSpec","version","label","valueSet","FhirStructureView","tree","expandedItemIds","useMemo","Object","keys","hideChevron","horizontalLines","disableHover","zebra","rootItemId","items"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/fhir-structure-view.tsx"],"sourcesContent":["import type { ItemInstance } from \"@headless-tree/core\";\nimport React from \"react\";\nimport {\n\tTooltip,\n\tTooltipContent,\n\tTooltipTrigger,\n} from \"#shadcn/components/ui/tooltip\";\nimport { cn } from \"#shadcn/lib/utils.js\";\nimport * as CustomIcon from \"../icons\";\nimport { TreeView, type TreeViewItem } from \"./tree-view\";\n\ntype PackageSpec = {\n\tname: string;\n\tversion: string;\n};\n\ntype Coordinate = {\n\tid?: string;\n\tpackageSpec?: PackageSpec;\n\t\"package-spec\"?: PackageSpec;\n\tlabel?: string;\n};\n\ntype FhirStructure = {\n\ttype?: string;\n\tmin?: string | number;\n\tmax?: string | number;\n\tlastNode?: boolean;\n\tisSummary?: boolean;\n\tisModifier?: boolean;\n\tmustSupport?: boolean;\n\tdatatype?: string;\n\tshort?: string;\n\tdesc?: string;\n\textensionUrl?: string;\n\textensionCoordinate?: Coordinate;\n\tbinding?: {\n\t\tvalueSet: string;\n\t};\n\tvsCoordinate?: Coordinate;\n};\n\nfunction FiledIcon(item: ItemInstance<TreeViewItem<FhirStructure>>) {\n\tconst filedType = item.getItemData()?.meta?.type;\n\n\tswitch (filedType) {\n\t\tcase \"Resource\":\n\t\t\treturn <CustomIcon.ResourceIcon />;\n\t\tcase \"BackboneElement\":\n\t\t\treturn <CustomIcon.BackoneElementIcon />;\n\t\tcase \"Reference\":\n\t\t\treturn <CustomIcon.ReferenceIcon />;\n\t\tcase \"union\":\n\t\t\treturn <CustomIcon.UnionIcon />;\n\t\tcase \"instant\":\n\t\tcase \"time\":\n\t\tcase \"date\":\n\t\tcase \"dateTime\":\n\t\tcase \"decimal\":\n\t\tcase \"boolean\":\n\t\tcase \"integer\":\n\t\tcase \"string\":\n\t\tcase \"uri\":\n\t\tcase \"base64Binary\":\n\t\tcase \"code\":\n\t\tcase \"id\":\n\t\tcase \"oid\":\n\t\tcase \"unsignedInt\":\n\t\tcase \"positiveInt\":\n\t\tcase \"markdown\":\n\t\tcase \"url\":\n\t\tcase \"canonical\":\n\t\tcase \"uuid\":\n\t\tcase \"integer64\":\n\t\t\treturn <CustomIcon.TypCodeIcon />;\n\t\tdefault:\n\t\t\treturn <CustomIcon.ComplexTypeIcon />;\n\t}\n}\n\nconst customItemFieldNameClass = cn(\n\t\"flex\",\n\t\"items-center\",\n\t\"truncate\",\n\t\"gap-2\",\n\t\"min-w-[calc(260px-var(--tree-padding))]\",\n\t\"w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:w-[calc(260px-var(--tree-padding))]\",\n\t\"in-data-[folder=true]:min-w-[calc(260px-var(--tree-padding))]\",\n);\n\nfunction customItemView(item: ItemInstance<TreeViewItem<FhirStructure>>) {\n\tconst fieldName = item.getItemData()?.name;\n\tconst cardinalityMin = item.getItemData()?.meta?.min;\n\tconst cardinalityMax = item.getItemData()?.meta?.max;\n\tconst isSummary = item.getItemData()?.meta?.isSummary;\n\tconst isModifier = item.getItemData()?.meta?.isModifier;\n\tconst mustSupport = item.getItemData()?.meta?.mustSupport;\n\tconst datatype = item.getItemData()?.meta?.type;\n\tconst short = item.getItemData()?.meta?.short;\n\tconst desc = item.getItemData()?.meta?.desc;\n\tconst extensionUrl = item.getItemData()?.meta?.extensionUrl;\n\tconst extensionCoordinate = item.getItemData()?.meta?.extensionCoordinate;\n\tconst binding = item.getItemData()?.meta?.binding;\n\tconst vsCoordinate = item.getItemData()?.meta?.vsCoordinate;\n\treturn (\n\t\t<div className=\"flex items-start gap-2 text-xs\">\n\t\t\t<div className={customItemFieldNameClass}>\n\t\t\t\t{FiledIcon(item)}\n\t\t\t\t{fieldName}\n\t\t\t</div>\n\n\t\t\t<div className=\"flex items-center gap-1 min-w-[60px] w-[60px]\">\n\t\t\t\t{mustSupport && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] text-white bg-red-600 rounded cursor-help\">\n\t\t\t\t\t\t\t\tS\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Must be supported</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isSummary && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">Σ</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Part of the summary set</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t\t{isModifier && (\n\t\t\t\t\t<Tooltip>\n\t\t\t\t\t\t<TooltipTrigger asChild>\n\t\t\t\t\t\t\t<span className=\"px-[2px] max-h-[20px] cursor-help\">!?</span>\n\t\t\t\t\t\t</TooltipTrigger>\n\t\t\t\t\t\t<TooltipContent>\n\t\t\t\t\t\t\t<p>Modifying element</p>\n\t\t\t\t\t\t</TooltipContent>\n\t\t\t\t\t</Tooltip>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t\t<div className=\"flex items-center gap-1 min-w-[50px] w-[50px] typo-code\">\n\t\t\t\t{cardinalityMin && cardinalityMax\n\t\t\t\t\t? `${cardinalityMin}..${cardinalityMax}`\n\t\t\t\t\t: \"\"}\n\t\t\t</div>\n\t\t\t<div className=\"flex gap-1 w-[200px] min-w-[200px]\">\n\t\t\t\t{datatype !== \"union\" && datatype}\n\t\t\t</div>\n\t\t\t<div className=\"text-left overflow-hidden\">\n\t\t\t\t{short && <div className=\"line-clamp-2\">{short}</div>}\n\t\t\t\t{!short && desc && <div className=\"line-clamp-2\">{desc}</div>}\n\t\t\t\t{extensionUrl && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>URL:</span>\n\t\t\t\t\t\t{extensionCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${extensionCoordinate?.[\"package-spec\"]?.name || extensionCoordinate?.packageSpec?.name}#${extensionCoordinate?.[\"package-spec\"]?.version || extensionCoordinate?.packageSpec?.version}/sd/${extensionCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{extensionCoordinate?.label || extensionUrl}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t\t{binding && (\n\t\t\t\t\t<div className=\"flex items-center gap-1\">\n\t\t\t\t\t\t<span>Binding:</span>\n\t\t\t\t\t\t{vsCoordinate?.id ? (\n\t\t\t\t\t\t\t<a\n\t\t\t\t\t\t\t\thref={`#/ig/${vsCoordinate?.[\"package-spec\"]?.name || vsCoordinate?.packageSpec?.name}#${vsCoordinate?.[\"package-spec\"]?.version || vsCoordinate?.packageSpec?.version}/vs/${vsCoordinate?.id}`}\n\t\t\t\t\t\t\t\tclassName=\"font-medium hover:underline\"\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</a>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<span className=\"font-medium\">\n\t\t\t\t\t\t\t\t{vsCoordinate?.label || binding?.valueSet || \"Binding\"}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t</div>\n\t);\n}\n\nfunction FhirStructureView({\n\ttree,\n}: {\n\ttree: Record<string, TreeViewItem<FhirStructure>>;\n}) {\n\tconst expandedItemIds = React.useMemo(() => {\n\t\treturn Object.keys(tree ?? {});\n\t}, [tree]);\n\n\treturn (\n\t\t<div className=\"h-fit w-fit min-h-0 min-w-0\">\n\t\t\t<div className=\"flex items-center gap-2 font-semibold text-xs text-text-secondary border-b py-2 bg-bg-primary sticky top-0 z-20\">\n\t\t\t\t<div className=\"min-w-[260px] w-[260px] ml-4\">Name</div>\n\t\t\t\t<div className=\"min-w-[60px] w-[60px]\">Flags</div>\n\t\t\t\t<div className=\"min-w-[50px] w-[50px]\">Card.</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Type</div>\n\t\t\t\t<div className=\"min-w-[200px] w-[200px]\">Description</div>\n\t\t\t</div>\n\t\t\t<TreeView\n\t\t\t\tfocusedItem={null}\n\t\t\t\tonFocusedItemChange={() => {}}\n\t\t\t\thideChevron={true}\n\t\t\t\thorizontalLines={true}\n\t\t\t\tdisableHover={true}\n\t\t\t\tzebra={true}\n\t\t\t\trootItemId=\"root\"\n\t\t\t\titems={tree}\n\t\t\t\tcustomItemView={customItemView}\n\t\t\t\tdefaultExpandedItems={expandedItemIds}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport { FhirStructureView, type FhirStructure };\n"],"names":["React","Tooltip","TooltipContent","TooltipTrigger","cn","CustomIcon","TreeView","FiledIcon","item","filedType","getItemData","meta","type","ResourceIcon","BackoneElementIcon","ReferenceIcon","UnionIcon","TypCodeIcon","ComplexTypeIcon","customItemFieldNameClass","customItemView","fieldName","name","cardinalityMin","min","cardinalityMax","max","isSummary","isModifier","mustSupport","datatype","short","desc","extensionUrl","extensionCoordinate","binding","vsCoordinate","div","className","asChild","span","p","id","a","href","packageSpec","version","label","valueSet","FhirStructureView","tree","expandedItemIds","useMemo","Object","keys","focusedItem","onFocusedItemChange","hideChevron","horizontalLines","disableHover","zebra","rootItemId","items","defaultExpandedItems"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"request-line-editor.d.ts","sourceRoot":"","sources":["../../../src/components/request-line-editor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAgBpC,QAAA,MAAM,qBAAqB;;
|
|
1
|
+
{"version":3,"file":"request-line-editor.d.ts","sourceRoot":"","sources":["../../../src/components/request-line-editor.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,KAAK,KAAK,MAAM,OAAO,CAAC;AAgBpC,QAAA,MAAM,qBAAqB;;8EAsB1B,CAAC;AAyCF,KAAK,sBAAsB,GAAG;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC5C,IAAI,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,KAAK,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,iBAAS,iBAAiB,CAAC,EAC1B,SAAS,EACT,MAAM,EACN,cAAc,EACd,IAAI,EACJ,WAAW,EACX,SAAS,EACT,YAAY,GACZ,EAAE,sBAAsB,2CAoCxB;AAED,OAAO,EACN,iBAAiB,EACjB,KAAK,sBAAsB,EAC3B,qBAAqB,GACrB,CAAC"}
|
|
@@ -12,7 +12,7 @@ const METHODS = [
|
|
|
12
12
|
"PATCH",
|
|
13
13
|
"DELETE"
|
|
14
14
|
];
|
|
15
|
-
const requestMethodVariants = cva(cn("border-r-0", "rounded-r-none", "shadow-none", "typo-label", "text-left", "items-center", "w-26"), {
|
|
15
|
+
const requestMethodVariants = cva(cn("cursor-pointer", "border-r-0", "rounded-r-none", "shadow-none", "typo-label", "text-left", "items-center", "w-26"), {
|
|
16
16
|
variants: {
|
|
17
17
|
method: {
|
|
18
18
|
GET: "text-utility-green [&_svg]:text-utility-green",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/request-line-editor.tsx"],"sourcesContent":["import { cva } from \"class-variance-authority\";\nimport type * as React from \"react\";\nimport { toast } from \"sonner\";\nimport { Input } from \"#shadcn/components/ui/input\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"#shadcn/components/ui/select\";\nimport { cn } from \"#shadcn/lib/utils\";\nimport { CopyIcon } from \"./copy-icon\";\n\nconst METHODS = [\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\"] as const;\ntype RequestMethod = (typeof METHODS)[number];\n\nconst requestMethodVariants = cva<{ method: { [K in RequestMethod]: string } }>(\n\tcn(\n\t\t\"border-r-0\",\n\t\t\"rounded-r-none\",\n\t\t\"shadow-none\",\n\t\t\"typo-label\",\n\t\t\"text-left\",\n\t\t\"items-center\",\n\t\t\"w-26\",\n\t),\n\t{\n\t\tvariants: {\n\t\t\tmethod: {\n\t\t\t\tGET: \"text-utility-green [&_svg]:text-utility-green\",\n\t\t\t\tPOST: \"text-utility-yellow [&_svg]:text-utility-yellow\",\n\t\t\t\tPUT: \"text-utility-blue [&_svg]:text-utility-blue \",\n\t\t\t\tPATCH: \"text-utility-violet [&_svg]:text-utility-violet\",\n\t\t\t\tDELETE: \"text-utility-red [&_svg]:text-utility-red\",\n\t\t\t},\n\t\t},\n\t},\n);\n\ntype RequestMethodSelectorProps = {\n\tvalue: string;\n\tonValueChange?: (newMethod: string) => void;\n};\n\nfunction isKnownMethod(candidate: string): candidate is RequestMethod {\n\tconst methods: readonly string[] = METHODS;\n\treturn methods.includes(candidate);\n}\n\nfunction RequestMethodSelector({\n\tvalue,\n\tonValueChange,\n}: RequestMethodSelectorProps) {\n\treturn (\n\t\t<Select\n\t\t\tvalue={value}\n\t\t\t{...(onValueChange ? { onValueChange: onValueChange } : {})}\n\t\t>\n\t\t\t<SelectTrigger\n\t\t\t\tclassName={requestMethodVariants(\n\t\t\t\t\tisKnownMethod(value) ? { method: value } : undefined,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<SelectValue>{value}</SelectValue>\n\t\t\t</SelectTrigger>\n\t\t\t<SelectContent>\n\t\t\t\t{METHODS.map((method) => (\n\t\t\t\t\t<SelectItem key={method} value={method}>\n\t\t\t\t\t\t<span className={requestMethodVariants({ method: method })}>\n\t\t\t\t\t\t\t{method}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</SelectItem>\n\t\t\t\t))}\n\t\t\t</SelectContent>\n\t\t</Select>\n\t);\n}\n\ntype RequestLineEditorProps = {\n\tmethod: string;\n\tplaceholder?: string;\n\tautoFocus?: boolean;\n\tonMethodChange: (newMethod: string) => void;\n\tpath?: string | undefined;\n\tonPathChange?: React.ChangeEventHandler<HTMLInputElement>;\n\tclassName?: string;\n};\n\nfunction RequestLineEditor({\n\tclassName,\n\tmethod,\n\tonMethodChange,\n\tpath,\n\tplaceholder,\n\tautoFocus,\n\tonPathChange,\n}: RequestLineEditorProps) {\n\treturn (\n\t\t<div className={cn(\"flex\", className)}>\n\t\t\t<RequestMethodSelector value={method} onValueChange={onMethodChange} />\n\t\t\t<Input\n\t\t\t\tclassName=\"rounded-l-none\"\n\t\t\t\tvalue={path}\n\t\t\t\tautoFocus={autoFocus}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\trightSlot={\n\t\t\t\t\t<CopyIcon\n\t\t\t\t\t\ttext={`${method} ${path}`}\n\t\t\t\t\t\ttooltipText=\"Copy request line\"\n\t\t\t\t\t\tshowToast={false}\n\t\t\t\t\t\tonCopy={(text) => {\n\t\t\t\t\t\t\t// Custom toast for request line\n\t\t\t\t\t\t\tconst truncatedText =\n\t\t\t\t\t\t\t\ttext.length > 30 ? `${text.slice(0, 30)}...` : text;\n\t\t\t\t\t\t\ttoast(\n\t\t\t\t\t\t\t\t<div className=\"flex flex-col gap-1\">\n\t\t\t\t\t\t\t\t\t<span className=\"typo-body\">Request line copied</span>\n\t\t\t\t\t\t\t\t\t<span className=\"typo-code text-text-secondary\">\n\t\t\t\t\t\t\t\t\t\t{truncatedText}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tduration: 2000,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\t{...(onPathChange !== undefined ? { onChange: onPathChange } : {})}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport {\n\tRequestLineEditor,\n\ttype RequestLineEditorProps,\n\trequestMethodVariants,\n};\n"],"names":["cva","toast","Input","Select","SelectContent","SelectItem","SelectTrigger","SelectValue","cn","CopyIcon","METHODS","requestMethodVariants","variants","method","GET","POST","PUT","PATCH","DELETE","isKnownMethod","candidate","methods","includes","RequestMethodSelector","value","onValueChange","className","undefined","map","span","RequestLineEditor","onMethodChange","path","placeholder","autoFocus","onPathChange","div","rightSlot","text","tooltipText","showToast","onCopy","truncatedText","length","slice","duration","onChange"],"mappings":";AAAA,SAASA,GAAG,QAAQ,2BAA2B;AAE/C,SAASC,KAAK,QAAQ,SAAS;AAC/B,SAASC,KAAK,QAAQ,mCAA8B;AACpD,SACCC,MAAM,EACNC,aAAa,EACbC,UAAU,EACVC,aAAa,EACbC,WAAW,QACL,oCAA+B;AACtC,SAASC,EAAE,QAAQ,yBAAoB;AACvC,SAASC,QAAQ,QAAQ,iBAAc;AAEvC,MAAMC,UAAU;IAAC;IAAO;IAAQ;IAAO;IAAS;CAAS;AAGzD,MAAMC,wBAAwBX,IAC7BQ,GACC,cACA,kBACA,eACA,cACA,aACA,gBACA,SAED;IACCI,UAAU;QACTC,QAAQ;YACPC,KAAK;YACLC,MAAM;YACNC,KAAK;YACLC,OAAO;YACPC,QAAQ;QACT;IACD;AACD;AAQD,SAASC,cAAcC,SAAiB;IACvC,MAAMC,UAA6BX;IACnC,OAAOW,QAAQC,QAAQ,CAACF;AACzB;AAEA,SAASG,sBAAsB,EAC9BC,KAAK,EACLC,aAAa,EACe;IAC5B,qBACC,MAACtB;QACAqB,OAAOA;QACN,GAAIC,gBAAgB;YAAEA,eAAeA;QAAc,IAAI,CAAC,CAAC;;0BAE1D,KAACnB;gBACAoB,WAAWf,sBACVQ,cAAcK,SAAS;oBAAEX,QAAQW;gBAAM,IAAIG;0BAG5C,cAAA,KAACpB;8BAAaiB;;;0BAEf,KAACpB;0BACCM,QAAQkB,GAAG,CAAC,CAACf,uBACb,KAACR;wBAAwBmB,OAAOX;kCAC/B,cAAA,KAACgB;4BAAKH,WAAWf,sBAAsB;gCAAEE,QAAQA;4BAAO;sCACtDA;;uBAFcA;;;;AAStB;AAYA,SAASiB,kBAAkB,EAC1BJ,SAAS,EACTb,MAAM,EACNkB,cAAc,EACdC,IAAI,EACJC,WAAW,EACXC,SAAS,EACTC,YAAY,EACY;IACxB,qBACC,MAACC;QAAIV,WAAWlB,GAAG,QAAQkB;;0BAC1B,KAACH;gBAAsBC,OAAOX;gBAAQY,eAAeM;;0BACrD,KAAC7B;gBACAwB,WAAU;gBACVF,OAAOQ;gBACPE,WAAWA;gBACXD,aAAaA;gBACbI,yBACC,KAAC5B;oBACA6B,MAAM,GAAGzB,OAAO,CAAC,EAAEmB,MAAM;oBACzBO,aAAY;oBACZC,WAAW;oBACXC,QAAQ,CAACH;wBACR,gCAAgC;wBAChC,MAAMI,gBACLJ,KAAKK,MAAM,GAAG,KAAK,GAAGL,KAAKM,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,GAAGN;wBAChDrC,oBACC,MAACmC;4BAAIV,WAAU;;8CACd,KAACG;oCAAKH,WAAU;8CAAY;;8CAC5B,KAACG;oCAAKH,WAAU;8CACdgB;;;4BAGH;4BACCG,UAAU;wBACX;oBAEF;;gBAGD,GAAIV,iBAAiBR,YAAY;oBAAEmB,UAAUX;gBAAa,IAAI,CAAC,CAAC;;;;AAIrE;AAEA,SACCL,iBAAiB,EAEjBnB,qBAAqB,GACpB"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/request-line-editor.tsx"],"sourcesContent":["import { cva } from \"class-variance-authority\";\nimport type * as React from \"react\";\nimport { toast } from \"sonner\";\nimport { Input } from \"#shadcn/components/ui/input\";\nimport {\n\tSelect,\n\tSelectContent,\n\tSelectItem,\n\tSelectTrigger,\n\tSelectValue,\n} from \"#shadcn/components/ui/select\";\nimport { cn } from \"#shadcn/lib/utils\";\nimport { CopyIcon } from \"./copy-icon\";\n\nconst METHODS = [\"GET\", \"POST\", \"PUT\", \"PATCH\", \"DELETE\"] as const;\ntype RequestMethod = (typeof METHODS)[number];\n\nconst requestMethodVariants = cva<{ method: { [K in RequestMethod]: string } }>(\n\tcn(\n\t\t\"cursor-pointer\",\n\t\t\"border-r-0\",\n\t\t\"rounded-r-none\",\n\t\t\"shadow-none\",\n\t\t\"typo-label\",\n\t\t\"text-left\",\n\t\t\"items-center\",\n\t\t\"w-26\",\n\t),\n\t{\n\t\tvariants: {\n\t\t\tmethod: {\n\t\t\t\tGET: \"text-utility-green [&_svg]:text-utility-green\",\n\t\t\t\tPOST: \"text-utility-yellow [&_svg]:text-utility-yellow\",\n\t\t\t\tPUT: \"text-utility-blue [&_svg]:text-utility-blue \",\n\t\t\t\tPATCH: \"text-utility-violet [&_svg]:text-utility-violet\",\n\t\t\t\tDELETE: \"text-utility-red [&_svg]:text-utility-red\",\n\t\t\t},\n\t\t},\n\t},\n);\n\ntype RequestMethodSelectorProps = {\n\tvalue: string;\n\tonValueChange?: (newMethod: string) => void;\n};\n\nfunction isKnownMethod(candidate: string): candidate is RequestMethod {\n\tconst methods: readonly string[] = METHODS;\n\treturn methods.includes(candidate);\n}\n\nfunction RequestMethodSelector({\n\tvalue,\n\tonValueChange,\n}: RequestMethodSelectorProps) {\n\treturn (\n\t\t<Select\n\t\t\tvalue={value}\n\t\t\t{...(onValueChange ? { onValueChange: onValueChange } : {})}\n\t\t>\n\t\t\t<SelectTrigger\n\t\t\t\tclassName={requestMethodVariants(\n\t\t\t\t\tisKnownMethod(value) ? { method: value } : undefined,\n\t\t\t\t)}\n\t\t\t>\n\t\t\t\t<SelectValue>{value}</SelectValue>\n\t\t\t</SelectTrigger>\n\t\t\t<SelectContent>\n\t\t\t\t{METHODS.map((method) => (\n\t\t\t\t\t<SelectItem key={method} value={method}>\n\t\t\t\t\t\t<span className={requestMethodVariants({ method: method })}>\n\t\t\t\t\t\t\t{method}\n\t\t\t\t\t\t</span>\n\t\t\t\t\t</SelectItem>\n\t\t\t\t))}\n\t\t\t</SelectContent>\n\t\t</Select>\n\t);\n}\n\ntype RequestLineEditorProps = {\n\tmethod: string;\n\tplaceholder?: string;\n\tautoFocus?: boolean;\n\tonMethodChange: (newMethod: string) => void;\n\tpath?: string | undefined;\n\tonPathChange?: React.ChangeEventHandler<HTMLInputElement>;\n\tclassName?: string;\n};\n\nfunction RequestLineEditor({\n\tclassName,\n\tmethod,\n\tonMethodChange,\n\tpath,\n\tplaceholder,\n\tautoFocus,\n\tonPathChange,\n}: RequestLineEditorProps) {\n\treturn (\n\t\t<div className={cn(\"flex\", className)}>\n\t\t\t<RequestMethodSelector value={method} onValueChange={onMethodChange} />\n\t\t\t<Input\n\t\t\t\tclassName=\"rounded-l-none\"\n\t\t\t\tvalue={path}\n\t\t\t\tautoFocus={autoFocus}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\trightSlot={\n\t\t\t\t\t<CopyIcon\n\t\t\t\t\t\ttext={`${method} ${path}`}\n\t\t\t\t\t\ttooltipText=\"Copy request line\"\n\t\t\t\t\t\tshowToast={false}\n\t\t\t\t\t\tonCopy={(text) => {\n\t\t\t\t\t\t\t// Custom toast for request line\n\t\t\t\t\t\t\tconst truncatedText =\n\t\t\t\t\t\t\t\ttext.length > 30 ? `${text.slice(0, 30)}...` : text;\n\t\t\t\t\t\t\ttoast(\n\t\t\t\t\t\t\t\t<div className=\"flex flex-col gap-1\">\n\t\t\t\t\t\t\t\t\t<span className=\"typo-body\">Request line copied</span>\n\t\t\t\t\t\t\t\t\t<span className=\"typo-code text-text-secondary\">\n\t\t\t\t\t\t\t\t\t\t{truncatedText}\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t</div>,\n\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\tduration: 2000,\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t);\n\t\t\t\t\t\t}}\n\t\t\t\t\t/>\n\t\t\t\t}\n\t\t\t\t{...(onPathChange !== undefined ? { onChange: onPathChange } : {})}\n\t\t\t/>\n\t\t</div>\n\t);\n}\n\nexport {\n\tRequestLineEditor,\n\ttype RequestLineEditorProps,\n\trequestMethodVariants,\n};\n"],"names":["cva","toast","Input","Select","SelectContent","SelectItem","SelectTrigger","SelectValue","cn","CopyIcon","METHODS","requestMethodVariants","variants","method","GET","POST","PUT","PATCH","DELETE","isKnownMethod","candidate","methods","includes","RequestMethodSelector","value","onValueChange","className","undefined","map","span","RequestLineEditor","onMethodChange","path","placeholder","autoFocus","onPathChange","div","rightSlot","text","tooltipText","showToast","onCopy","truncatedText","length","slice","duration","onChange"],"mappings":";AAAA,SAASA,GAAG,QAAQ,2BAA2B;AAE/C,SAASC,KAAK,QAAQ,SAAS;AAC/B,SAASC,KAAK,QAAQ,mCAA8B;AACpD,SACCC,MAAM,EACNC,aAAa,EACbC,UAAU,EACVC,aAAa,EACbC,WAAW,QACL,oCAA+B;AACtC,SAASC,EAAE,QAAQ,yBAAoB;AACvC,SAASC,QAAQ,QAAQ,iBAAc;AAEvC,MAAMC,UAAU;IAAC;IAAO;IAAQ;IAAO;IAAS;CAAS;AAGzD,MAAMC,wBAAwBX,IAC7BQ,GACC,kBACA,cACA,kBACA,eACA,cACA,aACA,gBACA,SAED;IACCI,UAAU;QACTC,QAAQ;YACPC,KAAK;YACLC,MAAM;YACNC,KAAK;YACLC,OAAO;YACPC,QAAQ;QACT;IACD;AACD;AAQD,SAASC,cAAcC,SAAiB;IACvC,MAAMC,UAA6BX;IACnC,OAAOW,QAAQC,QAAQ,CAACF;AACzB;AAEA,SAASG,sBAAsB,EAC9BC,KAAK,EACLC,aAAa,EACe;IAC5B,qBACC,MAACtB;QACAqB,OAAOA;QACN,GAAIC,gBAAgB;YAAEA,eAAeA;QAAc,IAAI,CAAC,CAAC;;0BAE1D,KAACnB;gBACAoB,WAAWf,sBACVQ,cAAcK,SAAS;oBAAEX,QAAQW;gBAAM,IAAIG;0BAG5C,cAAA,KAACpB;8BAAaiB;;;0BAEf,KAACpB;0BACCM,QAAQkB,GAAG,CAAC,CAACf,uBACb,KAACR;wBAAwBmB,OAAOX;kCAC/B,cAAA,KAACgB;4BAAKH,WAAWf,sBAAsB;gCAAEE,QAAQA;4BAAO;sCACtDA;;uBAFcA;;;;AAStB;AAYA,SAASiB,kBAAkB,EAC1BJ,SAAS,EACTb,MAAM,EACNkB,cAAc,EACdC,IAAI,EACJC,WAAW,EACXC,SAAS,EACTC,YAAY,EACY;IACxB,qBACC,MAACC;QAAIV,WAAWlB,GAAG,QAAQkB;;0BAC1B,KAACH;gBAAsBC,OAAOX;gBAAQY,eAAeM;;0BACrD,KAAC7B;gBACAwB,WAAU;gBACVF,OAAOQ;gBACPE,WAAWA;gBACXD,aAAaA;gBACbI,yBACC,KAAC5B;oBACA6B,MAAM,GAAGzB,OAAO,CAAC,EAAEmB,MAAM;oBACzBO,aAAY;oBACZC,WAAW;oBACXC,QAAQ,CAACH;wBACR,gCAAgC;wBAChC,MAAMI,gBACLJ,KAAKK,MAAM,GAAG,KAAK,GAAGL,KAAKM,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,GAAGN;wBAChDrC,oBACC,MAACmC;4BAAIV,WAAU;;8CACd,KAACG;oCAAKH,WAAU;8CAAY;;8CAC5B,KAACG;oCAAKH,WAAU;8CACdgB;;;4BAGH;4BACCG,UAAU;wBACX;oBAEF;;gBAGD,GAAIV,iBAAiBR,YAAY;oBAAEmB,UAAUX;gBAAa,IAAI,CAAC,CAAC;;;;AAIrE;AAEA,SACCL,iBAAiB,EAEjBnB,qBAAqB,GACpB"}
|
|
@@ -8,9 +8,9 @@ interface SegmentControlItemProps {
|
|
|
8
8
|
children: ReactNode;
|
|
9
9
|
value: string;
|
|
10
10
|
}
|
|
11
|
-
declare
|
|
12
|
-
declare
|
|
11
|
+
declare function SegmentControlItem({ children, value }: SegmentControlItemProps): import("react/jsx-runtime").JSX.Element;
|
|
12
|
+
declare function SegmentControl({ children, defaultValue, onValueChange, name, }: SegmentControlProps & {
|
|
13
13
|
children?: ReactNode;
|
|
14
|
-
})
|
|
14
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
15
15
|
export { SegmentControl, SegmentControlItem };
|
|
16
16
|
//# sourceMappingURL=segment-control.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segment-control.d.ts","sourceRoot":"","sources":["../../../src/components/segment-control.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAc,MAAM,OAAO,CAAC;AAWlE,MAAM,WAAW,mBAAmB;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,UAAU,uBAAuB;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACd;AAgBD,
|
|
1
|
+
{"version":3,"file":"segment-control.d.ts","sourceRoot":"","sources":["../../../src/components/segment-control.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAc,MAAM,OAAO,CAAC;AAWlE,MAAM,WAAW,mBAAmB;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,IAAI,CAAC,EAAE,MAAM,CAAC;CACd;AAED,UAAU,uBAAuB;IAChC,QAAQ,EAAE,SAAS,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;CACd;AAgBD,iBAAS,kBAAkB,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,EAAE,uBAAuB,2CAqBvE;AAED,iBAAS,cAAc,CAAC,EACvB,QAAQ,EACR,YAAY,EACZ,aAAa,EACb,IAAI,GACJ,EAAE,mBAAmB,GAAG;IAAE,QAAQ,CAAC,EAAE,SAAS,CAAA;CAAE,2CAchD;AAED,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,CAAC"}
|
|
@@ -3,7 +3,7 @@ import { createContext, useContext } from "react";
|
|
|
3
3
|
import { cn } from "../shadcn/lib/utils.js";
|
|
4
4
|
const SegmentControlContext = /*#__PURE__*/ createContext({});
|
|
5
5
|
const segmentControlItemClass = cn("flex", "items-center", "justify-center", "px-2", "py-0.5", "text-sm", "cursor-pointer", "rounded-2xl", "text-white/80", "peer-checked:bg-bg-primary", "peer-checked:text-text-secondary", "select-none");
|
|
6
|
-
|
|
6
|
+
function SegmentControlItem({ children, value }) {
|
|
7
7
|
const { defaultValue, onValueChange, name } = useContext(SegmentControlContext);
|
|
8
8
|
return /*#__PURE__*/ _jsxs("div", {
|
|
9
9
|
className: "relative",
|
|
@@ -24,8 +24,8 @@ const SegmentControlItem = ({ children, value })=>{
|
|
|
24
24
|
})
|
|
25
25
|
]
|
|
26
26
|
});
|
|
27
|
-
}
|
|
28
|
-
|
|
27
|
+
}
|
|
28
|
+
function SegmentControl({ children, defaultValue, onValueChange, name }) {
|
|
29
29
|
const contextValue = {
|
|
30
30
|
...defaultValue !== undefined && {
|
|
31
31
|
defaultValue
|
|
@@ -42,7 +42,7 @@ const SegmentControl = ({ children, defaultValue, onValueChange, name })=>{
|
|
|
42
42
|
children: children
|
|
43
43
|
})
|
|
44
44
|
});
|
|
45
|
-
}
|
|
45
|
+
}
|
|
46
46
|
export { SegmentControl, SegmentControlItem };
|
|
47
47
|
|
|
48
48
|
//# sourceMappingURL=segment-control.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/segment-control.tsx"],"sourcesContent":["import { createContext, type ReactNode, useContext } from \"react\";\nimport { cn } from \"#shadcn/lib/utils.js\";\n\ninterface SegmentControlContextType {\n\tdefaultValue?: string;\n\tonValueChange?: (value: string) => void;\n\tname?: string;\n}\n\nconst SegmentControlContext = createContext<SegmentControlContextType>({});\n\nexport interface SegmentControlProps {\n\tdefaultValue?: string;\n\tonValueChange?: (value: string) => void;\n\tname?: string;\n}\n\ninterface SegmentControlItemProps {\n\tchildren: ReactNode;\n\tvalue: string;\n}\nconst segmentControlItemClass = cn(\n\t\"flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t\"px-2\",\n\t\"py-0.5\",\n\t\"text-sm\",\n\t\"cursor-pointer\",\n\t\"rounded-2xl\",\n\t\"text-white/80\",\n\t\"peer-checked:bg-bg-primary\",\n\t\"peer-checked:text-text-secondary\",\n\t\"select-none\",\n);\n\
|
|
1
|
+
{"version":3,"sources":["../../../src/components/segment-control.tsx"],"sourcesContent":["import { createContext, type ReactNode, useContext } from \"react\";\nimport { cn } from \"#shadcn/lib/utils.js\";\n\ninterface SegmentControlContextType {\n\tdefaultValue?: string;\n\tonValueChange?: (value: string) => void;\n\tname?: string;\n}\n\nconst SegmentControlContext = createContext<SegmentControlContextType>({});\n\nexport interface SegmentControlProps {\n\tdefaultValue?: string;\n\tonValueChange?: (value: string) => void;\n\tname?: string;\n}\n\ninterface SegmentControlItemProps {\n\tchildren: ReactNode;\n\tvalue: string;\n}\nconst segmentControlItemClass = cn(\n\t\"flex\",\n\t\"items-center\",\n\t\"justify-center\",\n\t\"px-2\",\n\t\"py-0.5\",\n\t\"text-sm\",\n\t\"cursor-pointer\",\n\t\"rounded-2xl\",\n\t\"text-white/80\",\n\t\"peer-checked:bg-bg-primary\",\n\t\"peer-checked:text-text-secondary\",\n\t\"select-none\",\n);\n\nfunction SegmentControlItem({ children, value }: SegmentControlItemProps) {\n\tconst { defaultValue, onValueChange, name } = useContext(\n\t\tSegmentControlContext,\n\t);\n\n\treturn (\n\t\t<div className=\"relative\">\n\t\t\t<input\n\t\t\t\ttype=\"radio\"\n\t\t\t\tid={`${name}-${value}`}\n\t\t\t\tname={name}\n\t\t\t\tvalue={value}\n\t\t\t\tdefaultChecked={value === defaultValue}\n\t\t\t\tonChange={(e) => onValueChange?.(e.target.value)}\n\t\t\t\tclassName=\"sr-only peer\"\n\t\t\t/>\n\t\t\t<label htmlFor={`${name}-${value}`} className={segmentControlItemClass}>\n\t\t\t\t{children}\n\t\t\t</label>\n\t\t</div>\n\t);\n}\n\nfunction SegmentControl({\n\tchildren,\n\tdefaultValue,\n\tonValueChange,\n\tname,\n}: SegmentControlProps & { children?: ReactNode }) {\n\tconst contextValue: SegmentControlContextType = {\n\t\t...(defaultValue !== undefined && { defaultValue }),\n\t\t...(onValueChange !== undefined && { onValueChange }),\n\t\tname: name || \"react-components-segment-control\",\n\t};\n\n\treturn (\n\t\t<SegmentControlContext.Provider value={contextValue}>\n\t\t\t<div className=\"inline-flex bg-gray-500 p-0.5 gap-0 rounded-full\">\n\t\t\t\t{children}\n\t\t\t</div>\n\t\t</SegmentControlContext.Provider>\n\t);\n}\n\nexport { SegmentControl, SegmentControlItem };\n"],"names":["createContext","useContext","cn","SegmentControlContext","segmentControlItemClass","SegmentControlItem","children","value","defaultValue","onValueChange","name","div","className","input","type","id","defaultChecked","onChange","e","target","label","htmlFor","SegmentControl","contextValue","undefined","Provider"],"mappings":";AAAA,SAASA,aAAa,EAAkBC,UAAU,QAAQ,QAAQ;AAClE,SAASC,EAAE,QAAQ,yBAAuB;AAQ1C,MAAMC,sCAAwBH,cAAyC,CAAC;AAYxE,MAAMI,0BAA0BF,GAC/B,QACA,gBACA,kBACA,QACA,UACA,WACA,kBACA,eACA,iBACA,8BACA,oCACA;AAGD,SAASG,mBAAmB,EAAEC,QAAQ,EAAEC,KAAK,EAA2B;IACvE,MAAM,EAAEC,YAAY,EAAEC,aAAa,EAAEC,IAAI,EAAE,GAAGT,WAC7CE;IAGD,qBACC,MAACQ;QAAIC,WAAU;;0BACd,KAACC;gBACAC,MAAK;gBACLC,IAAI,GAAGL,KAAK,CAAC,EAAEH,OAAO;gBACtBG,MAAMA;gBACNH,OAAOA;gBACPS,gBAAgBT,UAAUC;gBAC1BS,UAAU,CAACC,IAAMT,gBAAgBS,EAAEC,MAAM,CAACZ,KAAK;gBAC/CK,WAAU;;0BAEX,KAACQ;gBAAMC,SAAS,GAAGX,KAAK,CAAC,EAAEH,OAAO;gBAAEK,WAAWR;0BAC7CE;;;;AAIL;AAEA,SAASgB,eAAe,EACvBhB,QAAQ,EACRE,YAAY,EACZC,aAAa,EACbC,IAAI,EAC4C;IAChD,MAAMa,eAA0C;QAC/C,GAAIf,iBAAiBgB,aAAa;YAAEhB;QAAa,CAAC;QAClD,GAAIC,kBAAkBe,aAAa;YAAEf;QAAc,CAAC;QACpDC,MAAMA,QAAQ;IACf;IAEA,qBACC,KAACP,sBAAsBsB,QAAQ;QAAClB,OAAOgB;kBACtC,cAAA,KAACZ;YAAIC,WAAU;sBACbN;;;AAIL;AAEA,SAASgB,cAAc,EAAEjB,kBAAkB,GAAG"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import type { StoryObj } from "@storybook/react-vite";
|
|
2
|
+
import { SegmentControl } from "./segment-control";
|
|
2
3
|
declare const meta: {
|
|
3
4
|
title: string;
|
|
4
|
-
component:
|
|
5
|
-
children?: import("react").ReactNode;
|
|
6
|
-
}) => import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
component: typeof SegmentControl;
|
|
7
6
|
parameters: {
|
|
8
7
|
layout: string;
|
|
9
8
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"segment-control.stories.d.ts","sourceRoot":"","sources":["../../../src/components/segment-control.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"segment-control.stories.d.ts","sourceRoot":"","sources":["../../../src/components/segment-control.stories.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAE5D,OAAO,EAAE,cAAc,EAAsB,MAAM,mBAAmB,CAAC;AAEvE,QAAA,MAAM,IAAI;;;;;;;CAO6B,CAAC;AAExC,eAAe,IAAI,CAAC;AACpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,eAAO,MAAM,OAAO,EAAE,KAYrB,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
declare
|
|
1
|
+
declare function SplitButton({ children }: {
|
|
2
2
|
children: React.ReactNode;
|
|
3
|
-
})
|
|
3
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
4
4
|
export { SplitButton };
|
|
5
5
|
//# sourceMappingURL=split-button.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"split-button.d.ts","sourceRoot":"","sources":["../../../src/components/split-button.tsx"],"names":[],"mappings":"AAYA,
|
|
1
|
+
{"version":3,"file":"split-button.d.ts","sourceRoot":"","sources":["../../../src/components/split-button.tsx"],"names":[],"mappings":"AAYA,iBAAS,WAAW,CAAC,EAAE,QAAQ,EAAE,EAAE;IAAE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,2CAE/D;AAED,OAAO,EAAE,WAAW,EAAE,CAAC"}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { cn } from "../shadcn/lib/utils.js";
|
|
3
3
|
const splitButtonStyles = cn("flex", "*:data-[slot=button]:rounded-r-none", "*:data-[slot=dropdown-menu-trigger]:px-1", "*:data-[slot=dropdown-menu-trigger]:py-2", "*:data-[slot=dropdown-menu-trigger]:rounded-l-none", "*:data-[slot=dropdown-menu-trigger]:border-l-0", "*:data-[slot=dropdown-menu-trigger]:border-l-0");
|
|
4
|
-
|
|
4
|
+
function SplitButton({ children }) {
|
|
5
5
|
return /*#__PURE__*/ _jsx("div", {
|
|
6
6
|
className: splitButtonStyles,
|
|
7
7
|
children: children
|
|
8
8
|
});
|
|
9
|
-
}
|
|
9
|
+
}
|
|
10
10
|
export { SplitButton };
|
|
11
11
|
|
|
12
12
|
//# sourceMappingURL=split-button.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/split-button.tsx"],"sourcesContent":["import { cn } from \"#shadcn/lib/utils\";\n\nconst splitButtonStyles = cn(\n\t\"flex\",\n\t\"*:data-[slot=button]:rounded-r-none\",\n\t\"*:data-[slot=dropdown-menu-trigger]:px-1\",\n\t\"*:data-[slot=dropdown-menu-trigger]:py-2\",\n\t\"*:data-[slot=dropdown-menu-trigger]:rounded-l-none\",\n\t\"*:data-[slot=dropdown-menu-trigger]:border-l-0\",\n\t\"*:data-[slot=dropdown-menu-trigger]:border-l-0\",\n);\n\
|
|
1
|
+
{"version":3,"sources":["../../../src/components/split-button.tsx"],"sourcesContent":["import { cn } from \"#shadcn/lib/utils\";\n\nconst splitButtonStyles = cn(\n\t\"flex\",\n\t\"*:data-[slot=button]:rounded-r-none\",\n\t\"*:data-[slot=dropdown-menu-trigger]:px-1\",\n\t\"*:data-[slot=dropdown-menu-trigger]:py-2\",\n\t\"*:data-[slot=dropdown-menu-trigger]:rounded-l-none\",\n\t\"*:data-[slot=dropdown-menu-trigger]:border-l-0\",\n\t\"*:data-[slot=dropdown-menu-trigger]:border-l-0\",\n);\n\nfunction SplitButton({ children }: { children: React.ReactNode }) {\n\treturn <div className={splitButtonStyles}>{children}</div>;\n}\n\nexport { SplitButton };\n"],"names":["cn","splitButtonStyles","SplitButton","children","div","className"],"mappings":";AAAA,SAASA,EAAE,QAAQ,yBAAoB;AAEvC,MAAMC,oBAAoBD,GACzB,QACA,uCACA,4CACA,4CACA,sDACA,kDACA;AAGD,SAASE,YAAY,EAAEC,QAAQ,EAAiC;IAC/D,qBAAO,KAACC;QAAIC,WAAWJ;kBAAoBE;;AAC5C;AAEA,SAASD,WAAW,GAAG"}
|
|
@@ -5,11 +5,30 @@ interface TreeViewItem<T> {
|
|
|
5
5
|
children?: string[];
|
|
6
6
|
meta?: T;
|
|
7
7
|
}
|
|
8
|
-
|
|
8
|
+
type ExpansionPropsUncontrolled = {
|
|
9
|
+
defaultExpandedItems?: string[];
|
|
10
|
+
expandedItems?: never;
|
|
11
|
+
onExpandedItemsChange?: never;
|
|
12
|
+
};
|
|
13
|
+
type ExpansionPropsControlled = {
|
|
14
|
+
defaultExpandedItems?: never;
|
|
15
|
+
expandedItems: string[];
|
|
16
|
+
onExpandedItemsChange: (items: string[]) => void;
|
|
17
|
+
};
|
|
18
|
+
type ExpansionProps = ExpansionPropsUncontrolled | ExpansionPropsControlled;
|
|
19
|
+
type FocusPropsUncontrolled = {
|
|
20
|
+
defaultFocusedItem?: string;
|
|
21
|
+
focusedItem?: never;
|
|
22
|
+
onFocusedItemChange?: never;
|
|
23
|
+
};
|
|
24
|
+
type FocusPropsControlled = {
|
|
25
|
+
defaultFocusedItem?: never;
|
|
26
|
+
focusedItem: string | null;
|
|
27
|
+
onFocusedItemChange: (item: string | null) => void;
|
|
28
|
+
};
|
|
29
|
+
type FocusProps = FocusPropsUncontrolled | FocusPropsControlled;
|
|
30
|
+
type TreeViewProps<T> = {
|
|
9
31
|
rootItemId: string;
|
|
10
|
-
selectedItemId?: string;
|
|
11
|
-
expandedItemIds?: string[];
|
|
12
|
-
onSelectItem?: (item: ItemInstance<TreeViewItem<T>>) => void;
|
|
13
32
|
items: Record<string, TreeViewItem<T>>;
|
|
14
33
|
customItemView?: (item: ItemInstance<TreeViewItem<T>>, tree: TreeInstance<TreeViewItem<T>>) => React.ReactNode;
|
|
15
34
|
onRename?: ((item: ItemInstance<TreeViewItem<T>>, value: string) => void) | undefined;
|
|
@@ -20,6 +39,7 @@ declare function TreeView<T>({ rootItemId, items, selectedItemId, expandedItemId
|
|
|
20
39
|
itemLabelClassFn?: (item: ItemInstance<TreeViewItem<T>>) => string;
|
|
21
40
|
canReorder?: boolean;
|
|
22
41
|
onDropFn?: (tree: TreeInstance<TreeViewItem<T>>, item: ItemInstance<TreeViewItem<T>>, newChildren: string[]) => void;
|
|
23
|
-
}
|
|
42
|
+
} & ExpansionProps & FocusProps;
|
|
43
|
+
declare function TreeView<T>({ rootItemId, items, defaultFocusedItem, focusedItem, onFocusedItemChange, defaultExpandedItems, expandedItems, onExpandedItemsChange, customItemView, onRename, disableHover, zebra, horizontalLines, hideChevron, itemLabelClassFn, canReorder, onDropFn, }: TreeViewProps<T>): import("react/jsx-runtime").JSX.Element;
|
|
24
44
|
export { TreeView, type TreeViewItem, type TreeInstance };
|
|
25
45
|
//# sourceMappingURL=tree-view.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tree-view.d.ts","sourceRoot":"","sources":["../../../src/components/tree-view.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEX,YAAY,EAEZ,YAAY,EAEZ,MAAM,qBAAqB,CAAC;AAU7B,OAAO,
|
|
1
|
+
{"version":3,"file":"tree-view.d.ts","sourceRoot":"","sources":["../../../src/components/tree-view.tsx"],"names":[],"mappings":"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"}
|