@getgreenline/blaze-ui 1.0.38 → 1.0.40
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/components/breadcrumb.js +1 -1
- package/dist/components/carousel.js +1 -1
- package/dist/components/chart.d.ts +34 -12
- package/dist/components/chart.d.ts.map +1 -1
- package/dist/components/chart.js +3 -3
- package/dist/components/data-table.d.ts +4 -3
- package/dist/components/data-table.d.ts.map +1 -1
- package/dist/components/data-table.js +19 -6
- package/dist/components/form.js +1 -1
- package/dist/components/hierarchical-select.d.ts.map +1 -1
- package/dist/components/hierarchical-select.js +1 -1
- package/dist/components/input-group.d.ts +1 -1
- package/dist/components/input-group.js +2 -2
- package/dist/components/input-otp.d.ts.map +1 -1
- package/dist/components/login-screen.js +1 -1
- package/dist/components/multi-select.d.ts.map +1 -1
- package/dist/components/multi-select.js +4 -3
- package/dist/components/pagination.js +1 -1
- package/dist/components/resizable.d.ts +4 -4
- package/dist/components/resizable.d.ts.map +1 -1
- package/dist/components/resizable.js +4 -4
- package/dist/components/segmented-control.js +1 -1
- package/dist/components/selection-panel.d.ts.map +1 -1
- package/dist/components/selection-panel.js +3 -3
- package/dist/components/spinner.d.ts +2 -1
- package/dist/components/spinner.d.ts.map +1 -1
- package/dist/svgs/blaze-dispatch-logo.js +1 -1
- package/dist/svgs/blaze-insights-logo.js +1 -1
- package/dist/svgs/blaze-pay-logo.js +1 -1
- package/dist/svgs/blaze-sites-logo.js +1 -1
- package/package.json +28 -27
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import { Slot } from '@radix-ui/react-slot';
|
|
3
|
-
import {
|
|
3
|
+
import { MoreHorizontal, ChevronRight } from 'lucide-react';
|
|
4
4
|
import { cn } from '../lib/utils.js';
|
|
5
5
|
|
|
6
6
|
function Breadcrumb({ ...props }) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import useEmblaCarousel from 'embla-carousel-react';
|
|
4
|
-
import {
|
|
4
|
+
import { ArrowRight, ArrowLeft } from 'lucide-react';
|
|
5
5
|
import { cn } from '../lib/utils.js';
|
|
6
6
|
import { Button } from './button.js';
|
|
7
7
|
|
|
@@ -16,6 +16,37 @@ export type ChartConfig = {
|
|
|
16
16
|
theme: Record<keyof typeof THEMES, string>;
|
|
17
17
|
});
|
|
18
18
|
};
|
|
19
|
+
type ChartPayloadItem = {
|
|
20
|
+
color?: string;
|
|
21
|
+
dataKey?: string | number;
|
|
22
|
+
name?: string | number;
|
|
23
|
+
payload?: (Record<string, unknown> & {
|
|
24
|
+
fill?: string;
|
|
25
|
+
}) | null;
|
|
26
|
+
type?: string;
|
|
27
|
+
value?: string | number;
|
|
28
|
+
[key: string]: unknown;
|
|
29
|
+
};
|
|
30
|
+
type ChartTooltipContentProps = React.ComponentProps<"div"> & {
|
|
31
|
+
active?: boolean;
|
|
32
|
+
color?: string;
|
|
33
|
+
formatter?: (value: NonNullable<ChartPayloadItem["value"]>, name: NonNullable<ChartPayloadItem["name"]>, item: ChartPayloadItem, index: number, payload: ChartPayloadItem["payload"]) => React.ReactNode;
|
|
34
|
+
hideIndicator?: boolean;
|
|
35
|
+
hideLabel?: boolean;
|
|
36
|
+
indicator?: "line" | "dot" | "dashed";
|
|
37
|
+
label?: React.ReactNode;
|
|
38
|
+
labelClassName?: string;
|
|
39
|
+
labelFormatter?: (value: React.ReactNode, payload: ChartPayloadItem[]) => React.ReactNode;
|
|
40
|
+
labelKey?: string;
|
|
41
|
+
nameKey?: string;
|
|
42
|
+
payload?: ChartPayloadItem[];
|
|
43
|
+
};
|
|
44
|
+
type ChartLegendContentProps = React.ComponentProps<"div"> & {
|
|
45
|
+
hideIcon?: boolean;
|
|
46
|
+
nameKey?: string;
|
|
47
|
+
payload?: ChartPayloadItem[];
|
|
48
|
+
verticalAlign?: "top" | "middle" | "bottom";
|
|
49
|
+
};
|
|
19
50
|
declare function ChartContainer({ id, className, children, config, ...props }: React.ComponentProps<"div"> & {
|
|
20
51
|
config: ChartConfig;
|
|
21
52
|
children: React.ComponentProps<typeof RechartsPrimitive.ResponsiveContainer>["children"];
|
|
@@ -25,17 +56,8 @@ declare const ChartStyle: ({ id, config }: {
|
|
|
25
56
|
config: ChartConfig;
|
|
26
57
|
}) => import("react/jsx-runtime").JSX.Element | null;
|
|
27
58
|
declare const ChartTooltip: typeof RechartsPrimitive.Tooltip;
|
|
28
|
-
declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }:
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
indicator?: "line" | "dot" | "dashed";
|
|
32
|
-
nameKey?: string;
|
|
33
|
-
labelKey?: string;
|
|
34
|
-
}): import("react/jsx-runtime").JSX.Element | null;
|
|
35
|
-
declare const ChartLegend: typeof RechartsPrimitive.Legend;
|
|
36
|
-
declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: React.ComponentProps<"div"> & Pick<RechartsPrimitive.LegendProps, "payload" | "verticalAlign"> & {
|
|
37
|
-
hideIcon?: boolean;
|
|
38
|
-
nameKey?: string;
|
|
39
|
-
}): import("react/jsx-runtime").JSX.Element | null;
|
|
59
|
+
declare function ChartTooltipContent({ active, payload, className, indicator, hideLabel, hideIndicator, label, labelFormatter, labelClassName, formatter, color, nameKey, labelKey, }: ChartTooltipContentProps): import("react/jsx-runtime").JSX.Element | null;
|
|
60
|
+
declare const ChartLegend: React.MemoExoticComponent<(outsideProps: RechartsPrimitive.LegendProps) => React.ReactPortal | null>;
|
|
61
|
+
declare function ChartLegendContent({ className, hideIcon, payload, verticalAlign, nameKey, }: ChartLegendContentProps): import("react/jsx-runtime").JSX.Element | null;
|
|
40
62
|
export { ChartContainer, ChartTooltip, ChartTooltipContent, ChartLegend, ChartLegendContent, ChartStyle, };
|
|
41
63
|
//# sourceMappingURL=chart.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../src/components/chart.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAA;AAK7C,QAAA,MAAM,MAAM;;;CAAwC,CAAA;AAEpD,MAAM,MAAM,WAAW,GAAG;KACvB,CAAC,IAAI,MAAM,GAAG;QACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACvB,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;KAC3B,GAAG,CACA;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GACjC;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,OAAO,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAChE;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"chart.d.ts","sourceRoot":"","sources":["../../src/components/chart.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,KAAK,iBAAiB,MAAM,UAAU,CAAA;AAK7C,QAAA,MAAM,MAAM;;;CAAwC,CAAA;AAEpD,MAAM,MAAM,WAAW,GAAG;KACvB,CAAC,IAAI,MAAM,GAAG;QACb,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;QACvB,IAAI,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;KAC3B,GAAG,CACA;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAA;KAAE,GACjC;QAAE,KAAK,CAAC,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC,MAAM,OAAO,MAAM,EAAE,MAAM,CAAC,CAAA;KAAE,CAChE;CACF,CAAA;AAMD,KAAK,gBAAgB,GAAG;IACtB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACzB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;QAAE,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,GAAG,IAAI,CAAA;IAC9D,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;CACvB,CAAA;AAED,KAAK,wBAAwB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC5D,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,CAAC,EAAE,CACV,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAC7C,IAAI,EAAE,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,EAC3C,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,KACjC,KAAK,CAAC,SAAS,CAAA;IACpB,aAAa,CAAC,EAAE,OAAO,CAAA;IACvB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,SAAS,CAAC,EAAE,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;IACrC,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;IACvB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,cAAc,CAAC,EAAE,CACf,KAAK,EAAE,KAAK,CAAC,SAAS,EACtB,OAAO,EAAE,gBAAgB,EAAE,KACxB,KAAK,CAAC,SAAS,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;CAC7B,CAAA;AAED,KAAK,uBAAuB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,OAAO,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAC5B,aAAa,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,QAAQ,CAAA;CAC5C,CAAA;AAcD,iBAAS,cAAc,CAAC,EACtB,EAAE,EACF,SAAS,EACT,QAAQ,EACR,MAAM,EACN,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,MAAM,EAAE,WAAW,CAAA;IACnB,QAAQ,EAAE,KAAK,CAAC,cAAc,CAC5B,OAAO,iBAAiB,CAAC,mBAAmB,CAC7C,CAAC,UAAU,CAAC,CAAA;CACd,2CAsBA;AAED,QAAA,MAAM,UAAU,GAAI,gBAAgB;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,mDA+BtE,CAAA;AAED,QAAA,MAAM,YAAY,kCAA4B,CAAA;AAE9C,iBAAS,mBAAmB,CAAC,EAC3B,MAAM,EACN,OAAO,EACP,SAAS,EACT,SAAiB,EACjB,SAAiB,EACjB,aAAqB,EACrB,KAAK,EACL,cAAc,EACd,cAAc,EACd,SAAS,EACT,KAAK,EACL,OAAO,EACP,QAAQ,GACT,EAAE,wBAAwB,kDA2H1B;AAED,QAAA,MAAM,WAAW,sGAA2B,CAAA;AAE5C,iBAAS,kBAAkB,CAAC,EAC1B,SAAS,EACT,QAAgB,EAChB,OAAO,EACP,aAAwB,EACxB,OAAO,GACR,EAAE,uBAAuB,kDA4CzB;AAyCD,OAAO,EACL,cAAc,EACd,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,kBAAkB,EAClB,UAAU,GACX,CAAA"}
|
package/dist/components/chart.js
CHANGED
|
@@ -77,7 +77,7 @@ function ChartTooltipContent({ active, payload, className, indicator = "dot", hi
|
|
|
77
77
|
.map((item, index) => {
|
|
78
78
|
const key = `${nameKey || item.name || item.dataKey || "value"}`;
|
|
79
79
|
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
80
|
-
const indicatorColor = color || item.payload
|
|
80
|
+
const indicatorColor = color || item.payload?.fill || item.color;
|
|
81
81
|
return (jsx("div", { className: cn("[&>svg]:tw:text-muted-foreground tw:flex tw:w-full tw:flex-wrap tw:items-stretch tw:gap-2 [&>svg]:tw:h-2.5 [&>svg]:tw:w-2.5", indicator === "dot" && "tw:items-center"), children: formatter && item?.value !== undefined && item.name ? (formatter(item.value, item.name, item, index, item.payload)) : (jsxs(Fragment, { children: [itemConfig?.icon ? (jsx(itemConfig.icon, {})) : (!hideIndicator && (jsx("div", { className: cn("tw:shrink-0 tw:rounded-[2px] tw:border-(--color-border) tw:bg-(--color-bg)", {
|
|
82
82
|
"tw:h-2.5 tw:w-2.5": indicator === "dot",
|
|
83
83
|
"tw:w-1": indicator === "line",
|
|
@@ -86,7 +86,7 @@ function ChartTooltipContent({ active, payload, className, indicator = "dot", hi
|
|
|
86
86
|
}), style: {
|
|
87
87
|
"--color-bg": indicatorColor,
|
|
88
88
|
"--color-border": indicatorColor,
|
|
89
|
-
} }))), jsxs("div", { className: cn("tw:flex tw:flex-1 tw:justify-between tw:leading-none", nestLabel ? "tw:items-end" : "tw:items-center"), children: [jsxs("div", { className: "tw:grid tw:gap-1.5", children: [nestLabel ? tooltipLabel : null, jsx("span", { className: "tw:text-muted-foreground", children: itemConfig?.label || item.name })] }), item.value && (jsx("span", { className: "tw:text-foreground tw:font-mono tw:font-medium tw:tabular-nums", children: item.value.toLocaleString() }))] })] })) }, item.dataKey));
|
|
89
|
+
} }))), jsxs("div", { className: cn("tw:flex tw:flex-1 tw:justify-between tw:leading-none", nestLabel ? "tw:items-end" : "tw:items-center"), children: [jsxs("div", { className: "tw:grid tw:gap-1.5", children: [nestLabel ? tooltipLabel : null, jsx("span", { className: "tw:text-muted-foreground", children: itemConfig?.label || item.name })] }), item.value && (jsx("span", { className: "tw:text-foreground tw:font-mono tw:font-medium tw:tabular-nums", children: item.value.toLocaleString() }))] })] })) }, String(item.dataKey ?? item.name ?? index)));
|
|
90
90
|
}) })] }));
|
|
91
91
|
}
|
|
92
92
|
const ChartLegend = RechartsPrimitive.Legend;
|
|
@@ -102,7 +102,7 @@ function ChartLegendContent({ className, hideIcon = false, payload, verticalAlig
|
|
|
102
102
|
const itemConfig = getPayloadConfigFromPayload(config, item, key);
|
|
103
103
|
return (jsxs("div", { className: cn("[&>svg]:tw:text-muted-foreground tw:flex tw:items-center tw:gap-1.5 [&>svg]:tw:h-3 [&>svg]:tw:w-3"), children: [itemConfig?.icon && !hideIcon ? (jsx(itemConfig.icon, {})) : (jsx("div", { className: "tw:h-2 tw:w-2 tw:shrink-0 tw:rounded-[2px]", style: {
|
|
104
104
|
backgroundColor: item.color,
|
|
105
|
-
} })), itemConfig?.label] }, item.value));
|
|
105
|
+
} })), itemConfig?.label] }, String(item.value ?? item.dataKey ?? item.name)));
|
|
106
106
|
}) }));
|
|
107
107
|
}
|
|
108
108
|
// Helper to extract item config from a payload.
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { CheckIcon, XIcon } from "lucide-react";
|
|
3
3
|
export type SortDirection = "asc" | "desc" | null;
|
|
4
|
+
export type DataTableCellValue = React.ReactNode | Record<string, unknown> | DataTableRow[];
|
|
4
5
|
export interface DataTableColumn<T> {
|
|
5
6
|
key: string;
|
|
6
7
|
label: string;
|
|
@@ -8,14 +9,14 @@ export interface DataTableColumn<T> {
|
|
|
8
9
|
align?: "left" | "center" | "right";
|
|
9
10
|
width?: string;
|
|
10
11
|
className?: string;
|
|
11
|
-
render?: (value:
|
|
12
|
+
render?: (value: DataTableCellValue, row: T, index: number, depth: number) => React.ReactNode;
|
|
12
13
|
}
|
|
13
14
|
export interface DataTableRow {
|
|
14
15
|
id: string;
|
|
15
16
|
children?: DataTableRow[];
|
|
16
|
-
[key: string]:
|
|
17
|
+
[key: string]: DataTableCellValue;
|
|
17
18
|
}
|
|
18
|
-
export interface IClickableField<T =
|
|
19
|
+
export interface IClickableField<T = DataTableRow> {
|
|
19
20
|
field: string;
|
|
20
21
|
onClick: (row: T) => void;
|
|
21
22
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../src/components/data-table.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAOL,SAAS,EAKT,KAAK,EACN,MAAM,cAAc,CAAA;AAuBrB,MAAM,MAAM,aAAa,GAAG,KAAK,GAAG,MAAM,GAAG,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"data-table.d.ts","sourceRoot":"","sources":["../../src/components/data-table.tsx"],"names":[],"mappings":"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"}
|
|
@@ -10,6 +10,15 @@ import { Button } from './button.js';
|
|
|
10
10
|
import { Pagination, PaginationContent, PaginationItem, PaginationPrevious, PaginationNext, PaginationLink, PaginationEllipsis } from './pagination.js';
|
|
11
11
|
|
|
12
12
|
const DEFAULT_PAGE_SIZE_OPTIONS = [5, 10, 25, 50];
|
|
13
|
+
function renderCellValue(value) {
|
|
14
|
+
if (value == null || React.isValidElement(value))
|
|
15
|
+
return value;
|
|
16
|
+
if (typeof value !== "object")
|
|
17
|
+
return value;
|
|
18
|
+
if (Array.isArray(value))
|
|
19
|
+
return value.length;
|
|
20
|
+
return String(value);
|
|
21
|
+
}
|
|
13
22
|
function DataTable({ columns, data, onRowClick, onSelectionChange, selectedRowIds, onSort, sortState, expandable = false, renderExpandedRow, actions, className, pagination, treeData = false, reorderable = false, onReorder, onDragReorder, customFilterColumnsWhiteList, loading = false, loadingRows = 5, emptyState, clickableFields, showColumnVisibility = true, footerContent, expandedRowIds, onExpandedChange, reservePaginationSpace = false, striped = true, selectContentClassName, menuPopupClassName, }) {
|
|
14
23
|
const [internalSelectedRows, setInternalSelectedRows] = React.useState(new Set());
|
|
15
24
|
const [internalExpandedRows, setInternalExpandedRows] = React.useState(new Set());
|
|
@@ -108,15 +117,19 @@ function DataTable({ columns, data, onRowClick, onSelectionChange, selectedRowId
|
|
|
108
117
|
}
|
|
109
118
|
onSort?.(key, direction);
|
|
110
119
|
};
|
|
111
|
-
React.useMemo(() => {
|
|
112
|
-
|
|
120
|
+
const processedData = React.useMemo(() => {
|
|
121
|
+
const result = [...data];
|
|
113
122
|
if (!onSort && sortConfig.key && sortConfig.direction) {
|
|
114
123
|
result.sort((a, b) => {
|
|
115
124
|
const aValue = a[sortConfig.key];
|
|
116
125
|
const bValue = b[sortConfig.key];
|
|
117
126
|
if (aValue === bValue)
|
|
118
127
|
return 0;
|
|
119
|
-
const comparison = aValue
|
|
128
|
+
const comparison = typeof aValue === "number" && typeof bValue === "number"
|
|
129
|
+
? aValue - bValue
|
|
130
|
+
: String(aValue ?? "").localeCompare(String(bValue ?? ""), undefined, {
|
|
131
|
+
numeric: true,
|
|
132
|
+
});
|
|
120
133
|
return sortConfig.direction === "asc" ? comparison : -comparison;
|
|
121
134
|
});
|
|
122
135
|
}
|
|
@@ -221,7 +234,7 @@ function DataTable({ columns, data, onRowClick, onSelectionChange, selectedRowId
|
|
|
221
234
|
const clickableField = getClickableField(column.key);
|
|
222
235
|
const cellContent = column.render
|
|
223
236
|
? column.render(row[column.key], row, rowIndex, depth)
|
|
224
|
-
: row[column.key];
|
|
237
|
+
: renderCellValue(row[column.key]);
|
|
225
238
|
return (jsx("td", { className: cn("tw:p-4 tw:align-middle tw:max-w-0 tw:overflow-hidden", column.align === "center" && "tw:text-center", column.align === "right" && "tw:text-right", column.className, rowBgClass), children: jsx("div", { className: cn("tw:truncate", clickableField && "tw:!text-primary"), style: {
|
|
226
239
|
paddingLeft: colIndex === 0
|
|
227
240
|
? isExpandable
|
|
@@ -322,7 +335,7 @@ function DataTable({ columns, data, onRowClick, onSelectionChange, selectedRowId
|
|
|
322
335
|
: sortConfig.direction === "desc"
|
|
323
336
|
? "descending"
|
|
324
337
|
: "none"
|
|
325
|
-
: undefined, className: cn("tw:!h-[40px] tw:px-4 tw:text-left tw:align-middle tw:font-medium tw:text-foreground tw:whitespace-nowrap", column.align === "center" && "tw:text-center", column.align === "right" && "tw:text-right"), style: { width: column.width }, children: column.sortable
|
|
338
|
+
: undefined, className: cn("tw:!h-[40px] tw:px-4 tw:text-left tw:align-middle tw:font-medium tw:text-foreground tw:whitespace-nowrap", column.align === "center" && "tw:text-center", column.align === "right" && "tw:text-right"), style: { width: column.width }, children: column.sortable ? (jsxs("button", { onClick: () => !loading && handleSort(column.key), disabled: loading, "aria-label": `Sort by ${column.label}${sortConfig.key === column.key
|
|
326
339
|
? sortConfig.direction === "asc"
|
|
327
340
|
? ", currently sorted ascending"
|
|
328
341
|
: sortConfig.direction === "desc"
|
|
@@ -336,7 +349,7 @@ function DataTable({ columns, data, onRowClick, onSelectionChange, selectedRowId
|
|
|
336
349
|
(hasRowSelection ? 1 : 0) +
|
|
337
350
|
(isExpandable ? 1 : 0) +
|
|
338
351
|
(reorderable ? 1 : 0), className: "tw:h-48", children: jsxs("div", { className: "tw:flex tw:flex-col tw:items-center tw:justify-center tw:h-full tw:text-center", children: [emptyState?.icon || (jsx("div", { className: "tw:h-12 tw:w-12 tw:rounded-full tw:bg-muted tw:flex tw:items-center tw:justify-center tw:mb-3", children: jsx(InboxIcon, { className: "tw:size-6 tw:text-muted-foreground" }) })), jsx("p", { className: "tw:text-base tw:font-medium tw:text-foreground", children: emptyState?.title || "No results found" }), jsx("p", { className: "tw:text-sm tw:text-muted-foreground tw:mt-1", children: emptyState?.description ||
|
|
339
|
-
"There are no items to display." })] }) }) })) : (
|
|
352
|
+
"There are no items to display." })] }) }) })) : (processedData.map((row, rowIndex) => renderRow(row, rowIndex, 0))) })] }) }), loading && (jsx("div", { className: "tw:absolute tw:inset-0 tw:z-20 tw:flex tw:items-center tw:justify-center tw:bg-card/50 tw:backdrop-blur-[1px]", children: jsxs("div", { className: "tw:flex tw:flex-col tw:items-center", children: [jsx(Loader2Icon, { className: "tw:size-8 tw:animate-spin tw:text-primary" }), data.length === 0 && (jsx("p", { className: "tw:text-sm tw:text-muted-foreground tw:mt-3", children: "Loading..." }))] }) }))] }), footerContent && (jsx("div", { className: "tw:border-t tw:px-4 tw:py-3 tw:bg-card", children: footerContent })), pagination &&
|
|
340
353
|
(pagination.totalPages > 1 ||
|
|
341
354
|
pagination.mode === "cursor" ||
|
|
342
355
|
pagination.showTotalItems ||
|
package/dist/components/form.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
3
|
import { Slot } from '@radix-ui/react-slot';
|
|
4
|
-
import { FormProvider, useFormContext, useFormState
|
|
4
|
+
import { FormProvider, Controller, useFormContext, useFormState } from 'react-hook-form';
|
|
5
5
|
import { cn } from '../lib/utils.js';
|
|
6
6
|
import { Label } from './label.js';
|
|
7
7
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hierarchical-select.d.ts","sourceRoot":"","sources":["../../src/components/hierarchical-select.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAY9B,UAAU,sBAAsB;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,UAAU,2BAA2B;IACnC,KAAK,EAAE,sBAAsB,EAAE,CAAA;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,UAAU,6BAA8B,SAAQ,2BAA2B;IACzE,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,UAAU,4BAA6B,SAAQ,2BAA2B;IACxE,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;CAC3C;AAED,KAAK,uBAAuB,GACxB,6BAA6B,GAC7B,4BAA4B,CAAA;AAgFhC,iBAAS,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"hierarchical-select.d.ts","sourceRoot":"","sources":["../../src/components/hierarchical-select.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAY9B,UAAU,sBAAsB;IAC9B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,UAAU,2BAA2B;IACnC,KAAK,EAAE,sBAAsB,EAAE,CAAA;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,KAAK,CAAC,aAAa,CAAA;IAClC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,UAAU,6BAA8B,SAAQ,2BAA2B;IACzE,KAAK,CAAC,EAAE,KAAK,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CACxC;AAED,UAAU,4BAA6B,SAAQ,2BAA2B;IACxE,KAAK,EAAE,IAAI,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;CAC3C;AAED,KAAK,uBAAuB,GACxB,6BAA6B,GAC7B,4BAA4B,CAAA;AAgFhC,iBAAS,kBAAkB,CAAC,KAAK,EAAE,uBAAuB,2CAkVzD;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAA;AAC7B,YAAY,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,CAAA"}
|
|
@@ -61,7 +61,7 @@ function countVisibleCategories(groups) {
|
|
|
61
61
|
function HierarchicalSelect(props) {
|
|
62
62
|
const { items, placeholder = "Select an option...", searchPlaceholder = "Search...", emptyMessage = "No results found", className, triggerStyle, disabled = false, label, } = props;
|
|
63
63
|
const isMulti = props.multi === true;
|
|
64
|
-
const multiValues = isMulti ? (props.value ?? []) : [];
|
|
64
|
+
const multiValues = React.useMemo(() => (isMulti ? (props.value ?? []) : []), [isMulti, props.value]);
|
|
65
65
|
const singleValue = !isMulti ? props.value : undefined;
|
|
66
66
|
const [open, setOpen] = React.useState(false);
|
|
67
67
|
const [search, setSearch] = React.useState("");
|
|
@@ -3,7 +3,7 @@ import { type VariantProps } from "class-variance-authority";
|
|
|
3
3
|
import { Button } from "../components/button";
|
|
4
4
|
declare function InputGroup({ className, ...props }: React.ComponentProps<"div">): import("react/jsx-runtime").JSX.Element;
|
|
5
5
|
declare const inputGroupAddonVariants: (props?: ({
|
|
6
|
-
align?: "
|
|
6
|
+
align?: "inline-end" | "inline-start" | "block-start" | "block-end" | null | undefined;
|
|
7
7
|
} & import("class-variance-authority/types").ClassProp) | undefined) => string;
|
|
8
8
|
declare function InputGroupAddon({ className, align, ...props }: React.ComponentProps<"div"> & VariantProps<typeof inputGroupAddonVariants>): import("react/jsx-runtime").JSX.Element;
|
|
9
9
|
declare const inputGroupButtonVariants: (props?: ({
|
|
@@ -21,8 +21,8 @@ const inputGroupAddonVariants = cva("tw:text-muted-foreground tw:flex tw:h-auto
|
|
|
21
21
|
align: {
|
|
22
22
|
"inline-start": "tw:order-first tw:pl-3 tw:has-[>button]:ml-[-0.45rem] tw:has-[>kbd]:ml-[-0.35rem]",
|
|
23
23
|
"inline-end": "tw:order-last tw:pr-3 tw:has-[>button]:mr-[-0.45rem] tw:has-[>kbd]:mr-[-0.35rem]",
|
|
24
|
-
"block-start": "tw:order-first tw:w-full tw:justify-start tw:px-3 tw:pt-3 tw:[
|
|
25
|
-
"block-end": "tw:order-last tw:w-full tw:justify-start tw:px-3 tw:pb-3 tw:[
|
|
24
|
+
"block-start": "tw:order-first tw:w-full tw:justify-start tw:px-3 tw:pt-3 tw:[&[class~='tw:border-b']]:pb-3 tw:group-has-[>input]/input-group:pt-2.5",
|
|
25
|
+
"block-end": "tw:order-last tw:w-full tw:justify-start tw:px-3 tw:pb-3 tw:[&[class~='tw:border-t']]:pt-3 tw:group-has-[>input]/input-group:pb-2.5",
|
|
26
26
|
},
|
|
27
27
|
},
|
|
28
28
|
defaultVariants: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"input-otp.d.ts","sourceRoot":"","sources":["../../src/components/input-otp.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"input-otp.d.ts","sourceRoot":"","sources":["../../src/components/input-otp.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,QAAQ,EAAqC,MAAM,WAAW,CAAA;AAKvE,iBAAS,QAAQ,CAAC,EAChB,SAAS,EACT,kBAAkB,EAClB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,QAAQ,CAAC,GAAG;IACzC,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B,2CAYA;AAED,iBAAS,aAAa,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAQ1E;AAED,iBAAS,YAAY,CAAC,EACpB,KAAK,EACL,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG;IAC/B,KAAK,EAAE,MAAM,CAAA;CACd,2CAsBA;AAED,iBAAS,iBAAiB,CAAC,EAAE,GAAG,KAAK,EAAE,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,2CAMnE;AAED,OAAO,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -167,7 +167,7 @@ function LoginScreen({ className, splitLayout = true, splitImageWidthPercent = 4
|
|
|
167
167
|
return;
|
|
168
168
|
}
|
|
169
169
|
event.preventDefault();
|
|
170
|
-
let nextIndex
|
|
170
|
+
let nextIndex;
|
|
171
171
|
if (isHome) {
|
|
172
172
|
nextIndex = enabledTabIndices[0] ?? currentIndex;
|
|
173
173
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"multi-select.d.ts","sourceRoot":"","sources":["../../src/components/multi-select.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAClE,OAAO,EAAE,iBAAiB,EAAE,CAAA;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,EACP,KAAK,EACL,aAAa,EACb,WAA8B,EAC9B,IAAgB,EAChB,YAAqC,EACrC,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,gBAAgB,
|
|
1
|
+
{"version":3,"file":"multi-select.d.ts","sourceRoot":"","sources":["../../src/components/multi-select.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAM9B,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,QAAQ,CAAC,EAAE,OAAO,CAAA;CACnB;AAED,MAAM,WAAW,gBACf,SAAQ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAClE,OAAO,EAAE,iBAAiB,EAAE,CAAA;IAC5B,KAAK,EAAE,MAAM,EAAE,CAAA;IACf,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACxC,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAA;IACvB,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAED,iBAAS,WAAW,CAAC,EACnB,SAAS,EACT,OAAO,EACP,KAAK,EACL,aAAa,EACb,WAA8B,EAC9B,IAAgB,EAChB,YAAqC,EACrC,QAAQ,EACR,GAAG,KAAK,EACT,EAAE,gBAAgB,2CA+HlB;AAqDD,OAAO,EAAE,WAAW,EAAE,CAAA"}
|
|
@@ -5,6 +5,7 @@ import { ChevronDownIcon, CheckIcon } from 'lucide-react';
|
|
|
5
5
|
import { cn } from '../lib/utils.js';
|
|
6
6
|
|
|
7
7
|
function MultiSelect({ className, options, value, onValueChange, placeholder = "Select options", size = "default", emptyMessage = "No options available", disabled, ...props }) {
|
|
8
|
+
const isInvalid = props["aria-invalid"] === true || props["aria-invalid"] === "true";
|
|
8
9
|
const valueRef = React.useRef(null);
|
|
9
10
|
const selectedOptions = React.useMemo(() => options.filter((option) => value.includes(option.value)), [options, value]);
|
|
10
11
|
const selectedLabels = React.useMemo(() => selectedOptions.map((option) => option.label), [selectedOptions]);
|
|
@@ -32,10 +33,10 @@ function MultiSelect({ className, options, value, onValueChange, placeholder = "
|
|
|
32
33
|
: [...value, optionValue];
|
|
33
34
|
onValueChange(nextValue);
|
|
34
35
|
}
|
|
35
|
-
return (jsxs(PopoverPrimitive.Root, { children: [jsx(PopoverPrimitive.Trigger, { asChild: true, children: jsxs("button", { type: "button", "data-slot": "multi-select-trigger", "data-size": size, disabled: disabled, className: cn("tw:!flex tw:!w-fit tw:!min-w-0 tw:!items-center tw:!justify-between tw:!gap-2 tw:!rounded-md tw:!border tw:!border-border tw:!bg-transparent tw:!px-3 tw:!py-2 tw:!text-[14px] tw:!shadow-xs tw:!transition-[color,box-shadow] tw:!outline-none", "focus-visible:tw:!border-ring focus-visible:tw:!ring-ring/50 focus-visible:tw:!ring-[3px]", "aria-invalid:tw:!border-destructive aria-invalid:tw:!ring-destructive/20 dark:aria-invalid:tw:!ring-destructive/40", "dark:tw:!bg-input/30 dark:hover:tw:!bg-input/50", "disabled:tw:!cursor-not-allowed disabled:tw:!opacity-50", "data-[size=default]:tw:!min-h-9 data-[size=sm]:tw:!min-h-8", className), ...props, children: [jsx("span", { ref: valueRef, "data-slot": "multi-select-value", className: cn("tw:!block tw:!min-w-0 tw:!flex-1 tw:!truncate tw:!text-left", selectedOptions.length === 0 && "tw:!text-muted-foreground"), children: selectedOptions.length === 0 ? placeholder : displayValue }), jsx(ChevronDownIcon, { className: "tw:!size-4 tw:!shrink-0 tw:!opacity-50" })] }) }), jsx(PopoverPrimitive.Portal, { children: jsx(PopoverPrimitive.Content, { "data-slot": "multi-select-content", align: "start", sideOffset: 4, className: "tw:!z-50 tw:!max-h-72 tw:!min-w-[var(--radix-popover-trigger-width)] tw:!overflow-y-auto tw:!rounded-md tw:!border tw:!bg-popover tw:!p-1 tw:!text-popover-foreground tw:!shadow-md tw:!outline-none data-[state=open]:tw:!animate-in data-[state=closed]:tw:!animate-out data-[state=closed]:tw:!fade-out-0 data-[state=open]:tw:!fade-in-0 data-[state=closed]:tw:!zoom-out-95 data-[state=open]:tw:!zoom-in-95", children: options.length === 0 ? (jsx("div", { className: "tw:!px-2 tw:!py-1.5 tw:!text-[14px] tw:!text-muted-foreground", children: emptyMessage })) : (options.map((option) => {
|
|
36
|
+
return (jsxs(PopoverPrimitive.Root, { children: [jsx(PopoverPrimitive.Trigger, { asChild: true, children: jsxs("button", { type: "button", "data-slot": "multi-select-trigger", "data-size": size, disabled: disabled, className: cn("tw:!flex tw:!w-fit tw:!min-w-0 tw:!items-center tw:!justify-between tw:!gap-2 tw:!rounded-md tw:!border tw:!border-border tw:!bg-transparent tw:!px-3 tw:!py-2 tw:!text-[14px] tw:!shadow-xs tw:!transition-[color,box-shadow] tw:!outline-none", "focus-visible:tw:!border-ring focus-visible:tw:!ring-ring/50 focus-visible:tw:!ring-[3px]", "aria-invalid:tw:!border-destructive aria-invalid:tw:!ring-destructive/20 dark:aria-invalid:tw:!ring-destructive/40", "dark:tw:!bg-input/30 dark:hover:tw:!bg-input/50", "disabled:tw:!cursor-not-allowed disabled:tw:!opacity-50", "data-[size=default]:tw:!min-h-9 data-[size=sm]:tw:!min-h-8", isInvalid && "tw:!border-destructive", className), ...props, children: [jsx("span", { ref: valueRef, "data-slot": "multi-select-value", className: cn("tw:!block tw:!min-w-0 tw:!flex-1 tw:!truncate tw:!text-left", selectedOptions.length === 0 && "tw:!text-muted-foreground"), children: selectedOptions.length === 0 ? placeholder : displayValue }), jsx(ChevronDownIcon, { className: "tw:!size-4 tw:!shrink-0 tw:!opacity-50" })] }) }), jsx(PopoverPrimitive.Portal, { children: jsx(PopoverPrimitive.Content, { "data-slot": "multi-select-content", align: "start", sideOffset: 4, className: "tw:!z-50 tw:!max-h-72 tw:!min-w-[var(--radix-popover-trigger-width)] tw:!overflow-y-auto tw:!rounded-md tw:!border tw:!bg-popover tw:!p-1 tw:!text-popover-foreground tw:!shadow-md tw:!outline-none data-[state=open]:tw:!animate-in data-[state=closed]:tw:!animate-out data-[state=closed]:tw:!fade-out-0 data-[state=open]:tw:!fade-in-0 data-[state=closed]:tw:!zoom-out-95 data-[state=open]:tw:!zoom-in-95", children: options.length === 0 ? (jsx("div", { className: "tw:!px-2 tw:!py-1.5 tw:!text-[14px] tw:!text-muted-foreground", children: emptyMessage })) : (options.map((option) => {
|
|
36
37
|
const isSelected = value.includes(option.value);
|
|
37
|
-
return (jsxs("button", { type: "button", "data-slot": "multi-select-item", disabled: option.disabled, className: cn("tw:!relative tw:!flex tw:!w-full tw:!cursor-default tw:!items-center tw:!gap-2 tw:!rounded-sm tw:!py-1.5 tw:!
|
|
38
|
-
"tw:!cursor-not-allowed tw:!bg-muted/50 tw:!text-muted-foreground tw:!opacity-60 hover:tw:!bg-muted/50 hover:tw:!text-muted-foreground"), onClick: () => toggleValue(option.value), children: [jsx("span", { className: "tw:!absolute tw:!
|
|
38
|
+
return (jsxs("button", { type: "button", "data-slot": "multi-select-item", disabled: option.disabled, className: cn("tw:!relative tw:!flex tw:!w-full tw:!cursor-default tw:!items-center tw:!gap-2 tw:!rounded-sm tw:!py-1.5 tw:!pl-2 tw:!pr-8 tw:!text-left tw:!text-[14px] tw:!outline-hidden tw:!select-none tw:!transition-colors", "hover:tw:!bg-accent hover:tw:!text-accent-foreground focus:tw:!bg-accent focus:tw:!text-accent-foreground", option.disabled &&
|
|
39
|
+
"tw:!cursor-not-allowed tw:!bg-muted/50 tw:!text-muted-foreground tw:!opacity-60 hover:tw:!bg-muted/50 hover:tw:!text-muted-foreground"), onClick: () => toggleValue(option.value), children: [jsx("span", { className: "tw:!absolute tw:!right-2 tw:!flex tw:!size-3.5 tw:!items-center tw:!justify-center", children: isSelected ? jsx(CheckIcon, { className: "tw:!size-4" }) : null }), jsx("span", { className: "tw:!min-w-0 tw:!flex-1 tw:!truncate", children: option.label })] }, option.value));
|
|
39
40
|
})) }) })] }));
|
|
40
41
|
}
|
|
41
42
|
function getCollapsedDisplayValue(labels, availableWidth, valueElement) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
2
|
-
import {
|
|
2
|
+
import { MoreHorizontalIcon, ChevronRightIcon, ChevronLeftIcon } from 'lucide-react';
|
|
3
3
|
import { cn } from '../lib/utils.js';
|
|
4
4
|
import { buttonVariants } from './button.js';
|
|
5
5
|
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import
|
|
3
|
-
declare function ResizablePanelGroup({ className, ...props }: React.ComponentProps<typeof
|
|
4
|
-
declare function ResizablePanel({ ...props }: React.ComponentProps<typeof
|
|
5
|
-
declare function ResizableHandle({ withHandle, className, ...props }: React.ComponentProps<typeof
|
|
2
|
+
import { Group as ResizablePanelGroupPrimitive, Panel as ResizablePanelPrimitive, Separator as ResizableHandlePrimitive } from "react-resizable-panels";
|
|
3
|
+
declare function ResizablePanelGroup({ className, ...props }: React.ComponentProps<typeof ResizablePanelGroupPrimitive>): import("react/jsx-runtime").JSX.Element;
|
|
4
|
+
declare function ResizablePanel({ ...props }: React.ComponentProps<typeof ResizablePanelPrimitive>): import("react/jsx-runtime").JSX.Element;
|
|
5
|
+
declare function ResizableHandle({ withHandle, className, ...props }: React.ComponentProps<typeof ResizableHandlePrimitive> & {
|
|
6
6
|
withHandle?: boolean;
|
|
7
7
|
}): import("react/jsx-runtime").JSX.Element;
|
|
8
8
|
export { ResizablePanelGroup, ResizablePanel, ResizableHandle };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resizable.d.ts","sourceRoot":"","sources":["../../src/components/resizable.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"resizable.d.ts","sourceRoot":"","sources":["../../src/components/resizable.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,OAAO,EACL,KAAK,IAAI,4BAA4B,EACrC,KAAK,IAAI,uBAAuB,EAChC,SAAS,IAAI,wBAAwB,EACtC,MAAM,wBAAwB,CAAA;AAI/B,iBAAS,mBAAmB,CAAC,EAC3B,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,4BAA4B,CAAC,2CAW3D;AAED,iBAAS,cAAc,CAAC,EACtB,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,uBAAuB,CAAC,2CAEtD;AAED,iBAAS,eAAe,CAAC,EACvB,UAAU,EACV,SAAS,EACT,GAAG,KAAK,EACT,EAAE,KAAK,CAAC,cAAc,CAAC,OAAO,wBAAwB,CAAC,GAAG;IACzD,UAAU,CAAC,EAAE,OAAO,CAAA;CACrB,2CAiBA;AAED,OAAO,EAAE,mBAAmB,EAAE,cAAc,EAAE,eAAe,EAAE,CAAA"}
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { GripVerticalIcon } from 'lucide-react';
|
|
3
|
-
import
|
|
3
|
+
import { Separator, Panel, Group } from 'react-resizable-panels';
|
|
4
4
|
import { cn } from '../lib/utils.js';
|
|
5
5
|
|
|
6
6
|
function ResizablePanelGroup({ className, ...props }) {
|
|
7
|
-
return (jsx(
|
|
7
|
+
return (jsx(Group, { "data-slot": "resizable-panel-group", className: cn("tw:flex tw:h-full tw:w-full data-[panel-group-direction=vertical]:tw:flex-col", className), ...props }));
|
|
8
8
|
}
|
|
9
9
|
function ResizablePanel({ ...props }) {
|
|
10
|
-
return jsx(
|
|
10
|
+
return jsx(Panel, { "data-slot": "resizable-panel", ...props });
|
|
11
11
|
}
|
|
12
12
|
function ResizableHandle({ withHandle, className, ...props }) {
|
|
13
|
-
return (jsx(
|
|
13
|
+
return (jsx(Separator, { "data-slot": "resizable-handle", className: cn("tw:bg-border focus-visible:tw:ring-ring tw:relative tw:flex tw:w-px tw:items-center tw:justify-center after:tw:absolute after:tw:inset-y-0 after:tw:left-1/2 after:tw:w-1 after:tw:-translate-x-1/2 focus-visible:tw:ring-1 focus-visible:tw:ring-offset-1 focus-visible:tw:outline-hidden data-[panel-group-direction=vertical]:tw:h-px data-[panel-group-direction=vertical]:tw:w-full data-[panel-group-direction=vertical]:after:tw:left-0 data-[panel-group-direction=vertical]:after:tw:h-1 data-[panel-group-direction=vertical]:after:tw:w-full data-[panel-group-direction=vertical]:after:tw:translate-x-0 data-[panel-group-direction=vertical]:after:tw:-translate-y-1/2 tw:[&[data-panel-group-direction=vertical]>div]:rotate-90", className), ...props, children: withHandle && (jsx("div", { className: "tw:bg-border tw:z-10 tw:flex tw:h-4 tw:w-3 tw:items-center tw:justify-center tw:rounded-xs tw:border", children: jsx(GripVerticalIcon, { className: "tw:size-2.5" }) })) }));
|
|
14
14
|
}
|
|
15
15
|
|
|
16
16
|
export { ResizableHandle, ResizablePanel, ResizablePanelGroup };
|
|
@@ -52,7 +52,7 @@ function SegmentedControl({ options, value, onValueChange, className, ariaLabel,
|
|
|
52
52
|
const resolvedSize = size ?? "default";
|
|
53
53
|
const containerRef = useRef(null);
|
|
54
54
|
const handleKeyDown = (event, currentIndex) => {
|
|
55
|
-
let newIndex
|
|
55
|
+
let newIndex;
|
|
56
56
|
switch (event.key) {
|
|
57
57
|
case "ArrowLeft":
|
|
58
58
|
case "ArrowUp":
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selection-panel.d.ts","sourceRoot":"","sources":["../../src/components/selection-panel.tsx"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"selection-panel.d.ts","sourceRoot":"","sources":["../../src/components/selection-panel.tsx"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,YAAY,EAClB,MAAM,cAAc,CAAA;AAqBrB,MAAM,WAAW,mBAAmB,CAAC,CAAC,SAAS,YAAY;IACzD,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,MAAM,IAAI,CAAA;IACnB,MAAM,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,IAAI,CAAA;IACvC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,cAAc,EAAE,CAAC,EAAE,CAAA;IACnB,OAAO,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IAC7B,eAAe,CAAC,EAAE,eAAe,CAAC,CAAC,CAAC,EAAE,CAAA;IACtC,WAAW,EAAE,MAAM,EAAE,CAAA;IACrB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAA;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,kBAAkB,CAAC,EAAE,OAAO,CAAA;IAC5B,mBAAmB,CAAC,EAAE,MAAM,CAAA;IAC5B,uBAAuB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,MAAM,EAAE,CAAA;CAC9D;AAED,wBAAgB,cAAc,CAAC,CAAC,SAAS,YAAY,EAAE,EACrD,IAAI,EACJ,OAAO,EACP,MAAM,EACN,KAAsB,EACtB,WAAW,EACX,cAAc,EACd,OAAO,EACP,eAAe,EACf,WAAW,EAAE,kBAAkB,EAC/B,OAAe,EACf,QAAgB,EAChB,cAA4B,EAC5B,aAA0B,EAC1B,cAA+B,EAC/B,iBAAqC,EACrC,eAAwB,EACxB,iBAA4B,EAC5B,qBAAqB,EACrB,oBAA0C,EAC1C,KAAa,EACb,QAAmB,EACnB,kBAAyB,EACzB,mBAAkF,EAClF,uBAAuB,GACxB,EAAE,mBAAmB,CAAC,CAAC,CAAC,2CAyfxB"}
|
|
@@ -4,7 +4,7 @@ import { cn } from '../lib/utils.js';
|
|
|
4
4
|
import { SearchBar } from './search-bar.js';
|
|
5
5
|
import { DataTable } from './data-table.js';
|
|
6
6
|
import { Button } from './button.js';
|
|
7
|
-
import { Sheet, SheetContent, SheetTitle, SheetFooter } from './sheet.js';
|
|
7
|
+
import { Sheet, SheetContent, SheetTitle, SheetDescription, SheetFooter } from './sheet.js';
|
|
8
8
|
import { VisuallyHidden } from './visually-hidden.js';
|
|
9
9
|
import { AlertDialog, AlertDialogContent, AlertDialogHeader, AlertDialogTitle, AlertDialogDescription, AlertDialogFooter, AlertDialogCancel, AlertDialogAction } from './alert-dialog.js';
|
|
10
10
|
|
|
@@ -144,7 +144,7 @@ function SelectionPanel({ open, onClose, onDone, title = "Select Items", descrip
|
|
|
144
144
|
setExpandedAvailableRows((prev) => {
|
|
145
145
|
const nextExpanded = new Set(prev);
|
|
146
146
|
newlyAdded.forEach((id) => {
|
|
147
|
-
|
|
147
|
+
const currentNode = availableItemsMap[id];
|
|
148
148
|
if (!currentNode)
|
|
149
149
|
return;
|
|
150
150
|
let parentId = currentNode.parentId;
|
|
@@ -199,7 +199,7 @@ function SelectionPanel({ open, onClose, onDone, title = "Select Items", descrip
|
|
|
199
199
|
setShowConfirmDialog(false);
|
|
200
200
|
onClose();
|
|
201
201
|
}, [onClose]);
|
|
202
|
-
return (jsxs(Fragment, { children: [jsx(Sheet, { open: open, onOpenChange: (isOpen) => !isOpen && handleClose(), children: jsxs(SheetContent, { side: "right", className: cn("tw:!p-0 tw:!z-[1200]"), overlayClassName: "tw:!z-[1200]", style: { width, maxWidth }, children: [
|
|
202
|
+
return (jsxs(Fragment, { children: [jsx(Sheet, { open: open, onOpenChange: (isOpen) => !isOpen && handleClose(), children: jsxs(SheetContent, { side: "right", className: cn("tw:!p-0 tw:!z-[1200]"), overlayClassName: "tw:!z-[1200]", style: { width, maxWidth }, children: [jsxs(VisuallyHidden, { children: [jsx(SheetTitle, { children: title }), description && jsx(SheetDescription, { children: description })] }), jsxs("div", { className: "tw:!flex tw:!h-full tw:!flex-col", children: [jsxs("div", { className: "tw:!flex tw:!flex-1 tw:!overflow-hidden", children: [jsxs("div", { className: "tw:!flex tw:!w-1/2 tw:!flex-col tw:!border-r", role: "region", "aria-labelledby": availableHeadingId, children: [jsxs("div", { className: "tw:!border-b tw:!p-4", children: [jsx("h2", { id: availableHeadingId, className: "tw:text-lg tw:!font-semibold tw:!mb-3", children: availableLabel }), jsx(SearchBar, { value: availableSearch, onChange: setAvailableSearch, onSearch: (term) => setAvailableSearchApplied(term), onClear: () => {
|
|
203
203
|
setAvailableSearch("");
|
|
204
204
|
setAvailableSearchApplied("");
|
|
205
205
|
}, placeholder: `Search ${availableLabel.toLowerCase()}...`, inputAriaLabel: `Search within ${availableLabel}` }), jsx("div", { className: "tw:!flex tw:!justify-end tw:!mt-3", children: jsx(Button, { size: "sm", onClick: handleAddSelected, disabled: availableChecked.size === 0, className: availableChecked.size === 0
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import type { ComponentProps } from "react";
|
|
2
|
+
declare function Spinner({ className, ...props }: ComponentProps<"svg">): import("react/jsx-runtime").JSX.Element;
|
|
2
3
|
export { Spinner };
|
|
3
4
|
//# sourceMappingURL=spinner.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/components/spinner.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"spinner.d.ts","sourceRoot":"","sources":["../../src/components/spinner.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,OAAO,CAAA;AAK3C,iBAAS,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,CAAC,KAAK,CAAC,2CAS9D;AAED,OAAO,EAAE,OAAO,EAAE,CAAA"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
|
|
3
3
|
function BlazeDispatchLogo({ width = 28, height = 28 }) {
|
|
4
|
-
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", {
|
|
4
|
+
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", { clipPath: "url(#clip0_13_251)", children: [jsx("path", { d: "M0 6.42C0 2.87 2.87 0 6.42 0H21.59C25.13 0 28.01 2.87 28.01 6.42V21.59C28.01 25.13 25.14 28.01 21.59 28.01H6.42C2.88 28.01 0 25.14 0 21.59V6.42Z", fill: "#EB8D48" }), jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M19.83 5.22994C18.53 4.61994 17.04 4.55994 15.69 5.04994C15 5.29994 14.38 5.68994 13.86 6.17994H9.9C9.53 6.17994 9.23 6.47994 9.23 6.84994C9.23 7.21994 9.53 7.51994 9.9 7.51994H12.82C12.76 7.63994 12.7 7.74994 12.64 7.86994C12.41 8.35994 12.26 8.91994 12.15 9.50994H7.44C7.07 9.50994 6.77 9.80994 6.77 10.1799C6.77 10.5499 7.07 10.8499 7.44 10.8499H12.02C11.99 11.4999 12.02 12.1799 12.06 12.8499H4.91C4.54 12.8499 4.24 13.1499 4.24 13.5199C4.24 13.8899 4.54 14.1899 4.91 14.1899H12.09C12.09 14.1899 12.16 14.1899 12.2 14.1899C12.38 15.5299 12.65 16.7499 12.87 17.5999C13.04 18.2899 13.18 18.7399 13.2 18.8099C13.22 18.8699 13.25 18.9199 13.29 18.9599C13.33 19.0099 13.38 19.0399 13.43 19.0699C13.48 19.0999 13.54 19.1099 13.6 19.1099C13.66 19.1099 13.72 19.0999 13.77 19.0799C13.89 19.0299 15.17 18.4899 16.72 17.5999C18.84 16.3999 21.48 14.5699 22.44 12.4999C23.04 11.1899 23.11 9.69994 22.62 8.33994C22.13 6.97994 21.12 5.87994 19.83 5.26994V5.22994ZM16.31 12.8199C15.79 12.5699 15.35 12.1799 15.05 11.6799C14.75 11.1799 14.6 10.6099 14.63 10.0299C14.66 9.44994 14.85 8.88994 15.19 8.41994C15.53 7.94994 16 7.59994 16.55 7.39994C17.09 7.19994 17.68 7.16994 18.24 7.30994C18.8 7.44994 19.31 7.74994 19.7 8.17994C20.09 8.60994 20.34 9.13994 20.43 9.71994C20.52 10.2899 20.43 10.8799 20.19 11.4099C19.86 12.1199 19.27 12.6599 18.54 12.9299C17.81 13.1999 17.01 13.1599 16.31 12.8299V12.8199Z", fill: "white" }), jsx("path", { d: "M7.07 17.56H11.51C11.73 18.46 11.91 19.07 11.94 19.16C12.01 19.39 12.13 19.61 12.29 19.8C12.45 19.98 12.65 20.13 12.87 20.24C13.09 20.34 13.33 20.4 13.57 20.4C13.81 20.4 14.06 20.36 14.28 20.26C14.45 20.19 16.27 19.41 18.28 18.18C18.54 18.02 18.81 17.85 19.08 17.67C19.11 17.7 19.14 17.74 19.15 17.78L20.47 22.19C20.47 22.19 20.47 22.28 20.47 22.32C20.46 22.36 20.43 22.4 20.4 22.43C20.32 22.5 20.21 22.54 20.11 22.53H5.75C5.64 22.53 5.54 22.5 5.46 22.43C5.43 22.4 5.4 22.36 5.39 22.32C5.38 22.28 5.37 22.23 5.39 22.19L6.71 17.78C6.74 17.71 6.79 17.65 6.86 17.61C6.93 17.57 7 17.55 7.08 17.56H7.07Z", fill: "white" })] }), jsx("defs", { children: jsx("clipPath", { id: "clip0_13_251", children: jsx("rect", { width: "28", height: "28", fill: "white" }) }) })] }));
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
export { BlazeDispatchLogo };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
|
|
3
3
|
function BlazeInsightsLogo({ width = 28, height = 28 }) {
|
|
4
|
-
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", {
|
|
4
|
+
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", { clipPath: "url(#clip0_13_302)", children: [jsx("path", { d: "M0 5.83C0 2.61 2.61 0 5.83 0H22.16C25.38 0 27.99 2.61 27.99 5.83V22.16C27.99 25.38 25.38 27.99 22.16 27.99H5.83C2.61 27.99 0 25.38 0 22.16V5.83Z", fill: "#FFD500" }), jsx("path", { d: "M16.68 11.7C17.0003 11.7 17.26 11.4404 17.26 11.12C17.26 10.7997 17.0003 10.54 16.68 10.54C16.3597 10.54 16.1 10.7997 16.1 11.12C16.1 11.4404 16.3597 11.7 16.68 11.7Z", fill: "white" }), jsx("path", { d: "M14 14C14.3203 14 14.58 13.7403 14.58 13.42C14.58 13.0996 14.3203 12.84 14 12.84C13.6797 12.84 13.42 13.0996 13.42 13.42C13.42 13.7403 13.6797 14 14 14Z", fill: "white" }), jsx("path", { d: "M17.85 7.39999C18.1703 7.39999 18.43 7.14032 18.43 6.81999C18.43 6.49967 18.1703 6.23999 17.85 6.23999C17.5297 6.23999 17.27 6.49967 17.27 6.81999C17.27 7.14032 17.5297 7.39999 17.85 7.39999Z", fill: "white" }), jsx("path", { d: "M19.73 18.45C20.0503 18.45 20.31 18.1904 20.31 17.87C20.31 17.5497 20.0503 17.29 19.73 17.29C19.4097 17.29 19.15 17.5497 19.15 17.87C19.15 18.1904 19.4097 18.45 19.73 18.45Z", fill: "white" }), jsx("path", { d: "M20.54 14.68C20.8603 14.68 21.12 14.4203 21.12 14.1C21.12 13.7797 20.8603 13.52 20.54 13.52C20.2197 13.52 19.96 13.7797 19.96 14.1C19.96 14.4203 20.2197 14.68 20.54 14.68Z", fill: "white" }), jsx("path", { d: "M24.04 13.24C24.3603 13.24 24.62 12.9803 24.62 12.66C24.62 12.3396 24.3603 12.08 24.04 12.08C23.7197 12.08 23.46 12.3396 23.46 12.66C23.46 12.9803 23.7197 13.24 24.04 13.24Z", fill: "white" }), jsx("path", { d: "M9.15 17.57C9.47032 17.57 9.73 17.3104 9.73 16.99C9.73 16.6697 9.47032 16.41 9.15 16.41C8.82967 16.41 8.57 16.6697 8.57 16.99C8.57 17.3104 8.82967 17.57 9.15 17.57Z", fill: "white" }), jsx("path", { d: "M12.55 19.42C12.8703 19.42 13.13 19.1603 13.13 18.84C13.13 18.5197 12.8703 18.26 12.55 18.26C12.2297 18.26 11.97 18.5197 11.97 18.84C11.97 19.1603 12.2297 19.42 12.55 19.42Z", fill: "white" }), jsx("path", { d: "M6.16 13.52C6.48033 13.52 6.74 13.2603 6.74 12.94C6.74 12.6197 6.48033 12.36 6.16 12.36C5.83968 12.36 5.58 12.6197 5.58 12.94C5.58 13.2603 5.83968 13.52 6.16 13.52Z", fill: "white" }), jsx("path", { d: "M10.37 10.7201C10.6903 10.7201 10.95 10.4604 10.95 10.1401C10.95 9.81973 10.6903 9.56006 10.37 9.56006C10.0497 9.56006 9.79 9.81973 9.79 10.1401C9.79 10.4604 10.0497 10.7201 10.37 10.7201Z", fill: "white" }), jsx("path", { d: "M3.96 17.28C4.28032 17.28 4.54 17.0203 4.54 16.7C4.54 16.3797 4.28032 16.12 3.96 16.12C3.63967 16.12 3.38 16.3797 3.38 16.7C3.38 17.0203 3.63967 17.28 3.96 17.28Z", fill: "white" }), jsx("path", { d: "M7.66 21.76C7.98033 21.76 8.24 21.5003 8.24 21.18C8.24 20.8597 7.98033 20.6 7.66 20.6C7.33968 20.6 7.08 20.8597 7.08 21.18C7.08 21.5003 7.33968 21.76 7.66 21.76Z", fill: "white" }), jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M24.04 9.16001C24.04 10.77 22.73 12.08 21.12 12.08C20.7 12.08 20.31 11.99 19.95 11.84L17.65 15.66C18.13 16.09 18.43 16.71 18.43 17.4C18.43 18.69 17.39 19.73 16.1 19.73C14.81 19.73 13.77 18.69 13.77 17.4C13.77 17.15 13.81 16.9 13.88 16.67L10.41 14.75C10.09 15.15 9.6 15.4 9.05 15.4C8.72 15.4 8.42 15.31 8.16 15.15L5.89 18.54C6.26 18.8 6.5 19.24 6.5 19.73C6.5 20.54 5.85 21.19 5.04 21.19C4.23 21.19 3.58 20.54 3.58 19.73C3.58 18.92 4.23 18.27 5.04 18.27C5.25 18.27 5.45 18.32 5.64 18.4L7.92 14.99C7.54 14.67 7.3 14.19 7.3 13.66C7.3 12.69 8.08 11.91 9.05 11.91C10.02 11.91 10.8 12.69 10.8 13.66C10.8 13.97 10.72 14.26 10.58 14.52L14 16.41C14.37 15.62 15.18 15.08 16.11 15.08C16.6 15.08 17.06 15.23 17.44 15.49L19.71 11.72C18.82 11.22 18.22 10.27 18.22 9.18001C18.22 7.57001 19.53 6.26001 21.14 6.26001C22.75 6.26001 24.06 7.57001 24.06 9.18001L24.04 9.16001Z", fill: "white" })] }), jsx("defs", { children: jsx("clipPath", { id: "clip0_13_302", children: jsx("rect", { width: "28", height: "28", fill: "white" }) }) })] }));
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
export { BlazeInsightsLogo };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
|
|
3
3
|
function BlazePayLogo({ width = 29, height = 31 }) {
|
|
4
|
-
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 29 31", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", {
|
|
4
|
+
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 29 31", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", { clipPath: "url(#clip0_13_234)", children: [jsx("path", { d: "M21.43 10.88L15.23 26.17C14.87 27.06 14.36 27.89 13.71 28.61C15.32 29.67 17.2 30.24 19.13 30.23C24.57 30.23 28.97 25.84 28.97 20.42C28.97 15.79 25.75 11.91 21.42 10.88H21.43Z", fill: "#45DCC1" }), jsx("path", { d: "M16.51 0.54C15.61 0.18 14.65 0 13.67 0C12.7 0 11.74 0.21 10.84 0.58C9.95 0.96 9.13 1.51 8.45 2.2C7.77 2.89 7.23 3.71 6.87 4.61L0.540003 20.24C-0.989997 24.01 0.840003 28.31 4.63 29.83C5.53 30.19 6.49 30.38 7.47 30.37C8.44 30.37 9.4 30.16 10.3 29.79C11.19 29.41 12.01 28.86 12.69 28.17C13.37 27.48 13.91 26.66 14.27 25.76L20.61 10.13C22.14 6.36 20.31 2.06 16.52 0.54H16.51ZM12.01 25.3C11.85 25.69 11.6 26.05 11.3 26.34C10 24.64 9.3 22.55 9.3 20.41C9.3 15.4 13.07 11.27 17.94 10.67L12.01 25.29V25.3Z", fill: "#29333B" })] }), jsx("defs", { children: jsx("clipPath", { id: "clip0_13_234", children: jsx("rect", { width: "29", height: "31", fill: "white" }) }) })] }));
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
export { BlazePayLogo };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
2
2
|
|
|
3
3
|
function BlazeSitesLogo({ width = 28, height = 28 }) {
|
|
4
|
-
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", {
|
|
4
|
+
return (jsxs("svg", { width: width, height: height, viewBox: "0 0 28 28", fill: "none", xmlns: "http://www.w3.org/2000/svg", children: [jsxs("g", { clipPath: "url(#clip0_13_335)", children: [jsx("path", { d: "M25.03 3.37H2.76V25.13H25.03V3.37Z", fill: "white" }), jsx("path", { d: "M21.69 0H6.31C2.82 0 0 2.82 0 6.31V21.69C0 25.18 2.82 28 6.31 28H21.69C25.18 28 28 25.18 28 21.69V6.31C28 2.82 25.18 0 21.69 0ZM4.43 5.29C4.43 4.91 4.73 4.61 5.11 4.61H22.78C23.16 4.61 23.46 4.91 23.46 5.29V7.94C23.46 8.32 23.16 8.62 22.78 8.62H5.12C4.74 8.62 4.44 8.32 4.44 7.94V5.29H4.43ZM9.88 23.55C9.88 23.95 9.56 24.27 9.16 24.27H5.15C4.75 24.27 4.43 23.95 4.43 23.55V11.34C4.43 10.94 4.75 10.62 5.15 10.62H9.16C9.56 10.62 9.88 10.94 9.88 11.34V23.55ZM11.28 11.34C11.28 10.94 11.6 10.62 12 10.62H16.01C16.41 10.62 16.73 10.94 16.73 11.34V16.42C16.73 16.82 16.41 17.14 16.01 17.14H12C11.6 17.14 11.28 16.82 11.28 16.42V11.34ZM23.47 23.47C23.47 23.85 23.17 24.15 22.79 24.15H12C11.62 24.15 11.32 23.85 11.32 23.47V19.82C11.32 19.44 11.62 19.14 12 19.14H22.79C23.17 19.14 23.47 19.44 23.47 19.82V23.47ZM23.57 16.42C23.57 16.82 23.25 17.14 22.85 17.14H18.84C18.44 17.14 18.12 16.82 18.12 16.42V11.34C18.12 10.94 18.44 10.62 18.84 10.62H22.85C23.25 10.62 23.57 10.94 23.57 11.34V16.42Z", fill: "#2BB2DC" })] }), jsx("defs", { children: jsx("clipPath", { id: "clip0_13_335", children: jsx("rect", { width: "28", height: "28", fill: "white" }) }) })] }));
|
|
5
5
|
}
|
|
6
6
|
|
|
7
7
|
export { BlazeSitesLogo };
|
package/package.json
CHANGED
|
@@ -1,31 +1,31 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@getgreenline/blaze-ui",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.40",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"dependencies": {
|
|
6
|
-
"@base-ui/react": "^1.1
|
|
6
|
+
"@base-ui/react": "^1.4.1",
|
|
7
7
|
"@hookform/resolvers": "^5.2.2",
|
|
8
8
|
"@radix-ui/react-accordion": "^1.2.12",
|
|
9
9
|
"@radix-ui/react-alert-dialog": "^1.1.15",
|
|
10
|
-
"@radix-ui/react-aspect-ratio": "^1.1.
|
|
11
|
-
"@radix-ui/react-avatar": "^1.1.
|
|
10
|
+
"@radix-ui/react-aspect-ratio": "^1.1.8",
|
|
11
|
+
"@radix-ui/react-avatar": "^1.1.11",
|
|
12
12
|
"@radix-ui/react-checkbox": "^1.3.3",
|
|
13
13
|
"@radix-ui/react-collapsible": "^1.1.12",
|
|
14
14
|
"@radix-ui/react-context-menu": "^2.2.16",
|
|
15
15
|
"@radix-ui/react-dialog": "^1.1.15",
|
|
16
16
|
"@radix-ui/react-dropdown-menu": "^2.1.16",
|
|
17
17
|
"@radix-ui/react-hover-card": "^1.1.15",
|
|
18
|
-
"@radix-ui/react-label": "^2.1.
|
|
18
|
+
"@radix-ui/react-label": "^2.1.8",
|
|
19
19
|
"@radix-ui/react-menubar": "^1.1.16",
|
|
20
20
|
"@radix-ui/react-navigation-menu": "^1.2.14",
|
|
21
21
|
"@radix-ui/react-popover": "^1.1.15",
|
|
22
|
-
"@radix-ui/react-progress": "^1.1.
|
|
22
|
+
"@radix-ui/react-progress": "^1.1.8",
|
|
23
23
|
"@radix-ui/react-radio-group": "^1.3.8",
|
|
24
24
|
"@radix-ui/react-scroll-area": "^1.2.10",
|
|
25
25
|
"@radix-ui/react-select": "^2.2.6",
|
|
26
|
-
"@radix-ui/react-separator": "^1.1.
|
|
26
|
+
"@radix-ui/react-separator": "^1.1.8",
|
|
27
27
|
"@radix-ui/react-slider": "^1.3.6",
|
|
28
|
-
"@radix-ui/react-slot": "^1.2.
|
|
28
|
+
"@radix-ui/react-slot": "^1.2.4",
|
|
29
29
|
"@radix-ui/react-switch": "^1.2.6",
|
|
30
30
|
"@radix-ui/react-tabs": "^1.1.13",
|
|
31
31
|
"@radix-ui/react-toggle": "^1.1.10",
|
|
@@ -36,14 +36,14 @@
|
|
|
36
36
|
"cmdk": "^1.1.1",
|
|
37
37
|
"embla-carousel-react": "^8.6.0",
|
|
38
38
|
"input-otp": "^1.4.2",
|
|
39
|
-
"lucide-react": "^
|
|
39
|
+
"lucide-react": "^1.14.0",
|
|
40
40
|
"next-themes": "^0.4.6",
|
|
41
|
-
"react-hook-form": "^7.
|
|
42
|
-
"react-resizable-panels": "^
|
|
43
|
-
"recharts": "
|
|
41
|
+
"react-hook-form": "^7.74.0",
|
|
42
|
+
"react-resizable-panels": "^4.10.0",
|
|
43
|
+
"recharts": "3.8.1",
|
|
44
44
|
"sonner": "^2.0.7",
|
|
45
|
-
"tailwind-merge": "^3.
|
|
46
|
-
"tw-animate-css": "^1.
|
|
45
|
+
"tailwind-merge": "^3.5.0",
|
|
46
|
+
"tw-animate-css": "^1.4.0",
|
|
47
47
|
"vaul": "^1.1.2",
|
|
48
48
|
"zod": "^3.25.76"
|
|
49
49
|
},
|
|
@@ -53,19 +53,20 @@
|
|
|
53
53
|
"react-dom": ">=16.14"
|
|
54
54
|
},
|
|
55
55
|
"devDependencies": {
|
|
56
|
-
"@rollup/plugin-commonjs": "^
|
|
57
|
-
"@rollup/plugin-node-resolve": "^
|
|
58
|
-
"@rollup/plugin-typescript": "^12.
|
|
59
|
-
"@tailwindcss/postcss": "^4.
|
|
60
|
-
"@turbo/gen": "^2.
|
|
61
|
-
"@types/node": "^20.19.
|
|
62
|
-
"@types/react": "^19.
|
|
63
|
-
"@types/react-dom": "^19.
|
|
64
|
-
"
|
|
65
|
-
"
|
|
66
|
-
"
|
|
67
|
-
"
|
|
68
|
-
"@workspace/eslint-config": "0.0.0"
|
|
56
|
+
"@rollup/plugin-commonjs": "^29.0.2",
|
|
57
|
+
"@rollup/plugin-node-resolve": "^16.0.3",
|
|
58
|
+
"@rollup/plugin-typescript": "^12.3.0",
|
|
59
|
+
"@tailwindcss/postcss": "^4.2.4",
|
|
60
|
+
"@turbo/gen": "^2.9.6",
|
|
61
|
+
"@types/node": "^20.19.39",
|
|
62
|
+
"@types/react": "^19.2.14",
|
|
63
|
+
"@types/react-dom": "^19.2.3",
|
|
64
|
+
"eslint": "^10.2.1",
|
|
65
|
+
"rollup": "^4.60.2",
|
|
66
|
+
"tailwindcss": "^4.2.4",
|
|
67
|
+
"typescript": "^6.0.3",
|
|
68
|
+
"@workspace/eslint-config": "0.0.0",
|
|
69
|
+
"@workspace/typescript-config": "0.0.0"
|
|
69
70
|
},
|
|
70
71
|
"main": "./dist/index.js",
|
|
71
72
|
"module": "./dist/index.js",
|