@s-hirano-ist/s-ui 1.18.1 → 1.19.1
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/dev/profiler-wrapper.d.ts +25 -0
- package/dist/dev/profiler-wrapper.d.ts.map +1 -0
- package/dist/dev/profiler-wrapper.js +36 -0
- package/dist/dev/profiler-wrapper.js.map +1 -0
- package/dist/forms/fields/form-dropdown-input.d.ts.map +1 -1
- package/dist/forms/fields/form-dropdown-input.js +1 -6
- package/dist/forms/fields/form-dropdown-input.js.map +1 -1
- package/dist/hooks/use-infinite-scroll.d.ts.map +1 -1
- package/dist/hooks/use-infinite-scroll.js +9 -0
- package/dist/hooks/use-infinite-scroll.js.map +1 -1
- package/dist/index.d.ts +0 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +0 -2
- package/dist/index.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +14 -10
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export type ProfilerResult = {
|
|
2
|
+
id: string;
|
|
3
|
+
phase: "mount" | "update" | "nested-update";
|
|
4
|
+
actualDuration: number;
|
|
5
|
+
baseDuration: number;
|
|
6
|
+
startTime: number;
|
|
7
|
+
commitTime: number;
|
|
8
|
+
};
|
|
9
|
+
type ProfilerWrapperProps = {
|
|
10
|
+
id: string;
|
|
11
|
+
/** Whether profiling is enabled. Defaults to true. Set to false in production. */
|
|
12
|
+
enabled?: boolean;
|
|
13
|
+
/** Warning threshold in ms. Defaults to 16 (one frame at 60fps). */
|
|
14
|
+
threshold?: number;
|
|
15
|
+
/** Programmatic data collection callback. */
|
|
16
|
+
onCollect?: (result: ProfilerResult) => void;
|
|
17
|
+
children: React.ReactNode;
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Development-only React Profiler wrapper.
|
|
21
|
+
* When `enabled` is false (default in production), renders children directly with zero overhead.
|
|
22
|
+
*/
|
|
23
|
+
export declare function ProfilerWrapper({ children, enabled, ...rest }: ProfilerWrapperProps): string | number | bigint | boolean | import("react/jsx-runtime").JSX.Element | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | null | undefined;
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=profiler-wrapper.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profiler-wrapper.d.ts","sourceRoot":"","sources":["../../dev/profiler-wrapper.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,cAAc,GAAG;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC5C,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,kFAAkF;IAClF,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,oEAAoE;IACpE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6CAA6C;IAC7C,SAAS,CAAC,EAAE,CAAC,MAAM,EAAE,cAAc,KAAK,IAAI,CAAC;IAC7C,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC1B,CAAC;AA+CF;;;GAGG;AACH,wBAAgB,eAAe,CAAC,EAC/B,QAAQ,EACR,OAAc,EACd,GAAG,IAAI,EACP,EAAE,oBAAoB,2WAMtB"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use client";
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { Profiler } from "react";
|
|
4
|
+
function DevProfilerWrapper({ id, threshold = 16, onCollect, children, }) {
|
|
5
|
+
const onRender = (id, phase, actualDuration, baseDuration, startTime, commitTime) => {
|
|
6
|
+
const result = {
|
|
7
|
+
id,
|
|
8
|
+
phase,
|
|
9
|
+
actualDuration,
|
|
10
|
+
baseDuration,
|
|
11
|
+
startTime,
|
|
12
|
+
commitTime,
|
|
13
|
+
};
|
|
14
|
+
if (onCollect) {
|
|
15
|
+
onCollect(result);
|
|
16
|
+
}
|
|
17
|
+
if (actualDuration > threshold) {
|
|
18
|
+
console.warn(`[Profiler] ${id} ${phase}: ${actualDuration.toFixed(1)}ms (threshold: ${threshold}ms)`);
|
|
19
|
+
}
|
|
20
|
+
else {
|
|
21
|
+
console.debug(`[Profiler] ${id} ${phase}: ${actualDuration.toFixed(1)}ms`);
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
return (_jsx(Profiler, { id: id, onRender: onRender, children: children }));
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Development-only React Profiler wrapper.
|
|
28
|
+
* When `enabled` is false (default in production), renders children directly with zero overhead.
|
|
29
|
+
*/
|
|
30
|
+
export function ProfilerWrapper({ children, enabled = true, ...rest }) {
|
|
31
|
+
if (!enabled) {
|
|
32
|
+
return children;
|
|
33
|
+
}
|
|
34
|
+
return _jsx(DevProfilerWrapper, { ...rest, children: children });
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=profiler-wrapper.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"profiler-wrapper.js","sourceRoot":"","sources":["../../dev/profiler-wrapper.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,QAAQ,EAAiC,MAAM,OAAO,CAAC;AAsBhE,SAAS,kBAAkB,CAAC,EAC3B,EAAE,EACF,SAAS,GAAG,EAAE,EACd,SAAS,EACT,QAAQ,GACc;IACtB,MAAM,QAAQ,GAA6B,CAC1C,EAAE,EACF,KAAK,EACL,cAAc,EACd,YAAY,EACZ,SAAS,EACT,UAAU,EACT,EAAE;QACH,MAAM,MAAM,GAAmB;YAC9B,EAAE;YACF,KAAK;YACL,cAAc;YACd,YAAY;YACZ,SAAS;YACT,UAAU;SACV,CAAC;QAEF,IAAI,SAAS,EAAE,CAAC;YACf,SAAS,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;QAED,IAAI,cAAc,GAAG,SAAS,EAAE,CAAC;YAChC,OAAO,CAAC,IAAI,CACX,cAAc,EAAE,IAAI,KAAK,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,kBAAkB,SAAS,KAAK,CACvF,CAAC;QACH,CAAC;aAAM,CAAC;YACP,OAAO,CAAC,KAAK,CACZ,cAAc,EAAE,IAAI,KAAK,KAAK,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAC3D,CAAC;QACH,CAAC;IACF,CAAC,CAAC;IAEF,OAAO,CACN,KAAC,QAAQ,IAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,YAClC,QAAQ,GACC,CACX,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe,CAAC,EAC/B,QAAQ,EACR,OAAO,GAAG,IAAI,EACd,GAAG,IAAI,EACe;IACtB,IAAI,CAAC,OAAO,EAAE,CAAC;QACd,OAAO,QAAQ,CAAC;IACjB,CAAC;IAED,OAAO,KAAC,kBAAkB,OAAK,IAAI,YAAG,QAAQ,GAAsB,CAAC;AACtE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-dropdown-input.d.ts","sourceRoot":"","sources":["../../../forms/fields/form-dropdown-input.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAejD;;;;;;;;GAQG;AACH,MAAM,MAAM,KAAK,GAAG;IACnB,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC9C,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C,CAAC;AAOF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,YAAoC,EACpC,iBAA8C,EAC9C,gBAA6C,GAC7C,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"form-dropdown-input.d.ts","sourceRoot":"","sources":["../../../forms/fields/form-dropdown-input.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,SAAS,EAAY,MAAM,OAAO,CAAC;AAejD;;;;;;;;GAQG;AACH,MAAM,MAAM,KAAK,GAAG;IACnB,kDAAkD;IAClD,KAAK,EAAE,MAAM,CAAC;IACd,wCAAwC;IACxC,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,OAAO,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IACxC,sDAAsD;IACtD,QAAQ,CAAC,EAAE,SAAS,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;IAC9C,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,oCAAoC;IACpC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,qDAAqD;IACrD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4CAA4C;IAC5C,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uDAAuD;IACvD,gBAAgB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CAC7C,CAAC;AAOF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,WAAW,EACX,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,YAAoC,EACpC,iBAA8C,EAC9C,gBAA6C,GAC7C,EAAE,KAAK,2CAyGP"}
|
|
@@ -82,11 +82,6 @@ export function FormDropdownInput({ label, htmlFor, options, inputRef, placehold
|
|
|
82
82
|
setOpen(false);
|
|
83
83
|
}
|
|
84
84
|
};
|
|
85
|
-
return (_jsxs("div", { className: "space-y-1", children: [_jsx(Label, { htmlFor: htmlFor, children: label }), _jsxs(Popover, { onOpenChange: setOpen, open: open, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { "aria-expanded": open, "aria-label": label, className: "w-full justify-between", disabled: disabled, role: "combobox", variant: "outline", children: [value || placeholder, _jsx(ChevronsUpDownIcon, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })] }) }), _jsx(PopoverContent, { className: "w-[var(--radix-popover-trigger-width)] p-0", children: _jsxs(Command, { shouldFilter: true, children: [_jsx(CommandInput, {
|
|
86
|
-
if (e.key === "Enter" && searchValue) {
|
|
87
|
-
e.preventDefault();
|
|
88
|
-
handleCustomValue();
|
|
89
|
-
}
|
|
90
|
-
}, onValueChange: setSearchValue, placeholder: searchPlaceholder, value: searchValue }), _jsxs(CommandList, { children: [_jsx(CommandEmpty, { children: searchValue ? (_jsx("button", { className: "w-full text-left hover:underline", onClick: handleCustomValue, type: "button", children: customValueLabel(searchValue) })) : (emptyMessage) }), _jsx(CommandGroup, { children: options.map((option) => (_jsxs(CommandItem, { onSelect: () => handleSelect(option.name), value: option.name, children: [_jsx(CheckIcon, { className: cn("mr-2 h-4 w-4", value === option.name ? "opacity-100" : "opacity-0") }), option.name] }, option.id))) })] })] }) })] }), _jsx("input", { id: htmlFor, name: fieldName, ref: inputRef, required: required, type: "hidden", value: value })] }));
|
|
85
|
+
return (_jsxs("div", { className: "space-y-1", children: [_jsx(Label, { htmlFor: htmlFor, children: label }), _jsxs(Popover, { onOpenChange: setOpen, open: open, children: [_jsx(PopoverTrigger, { asChild: true, children: _jsxs(Button, { "aria-expanded": open, "aria-label": label, className: "w-full justify-between", disabled: disabled, role: "combobox", variant: "outline", children: [value || placeholder, _jsx(ChevronsUpDownIcon, { className: "ml-2 h-4 w-4 shrink-0 opacity-50" })] }) }), _jsx(PopoverContent, { className: "w-[var(--radix-popover-trigger-width)] p-0", children: _jsxs(Command, { shouldFilter: true, children: [_jsx(CommandInput, { onValueChange: setSearchValue, placeholder: searchPlaceholder, value: searchValue }), _jsxs(CommandList, { children: [_jsx(CommandEmpty, { children: searchValue ? (_jsx("button", { className: "w-full text-left hover:underline", onClick: handleCustomValue, type: "button", children: customValueLabel(searchValue) })) : (emptyMessage) }), _jsx(CommandGroup, { children: options.map((option) => (_jsxs(CommandItem, { onSelect: () => handleSelect(option.name), value: option.name, children: [_jsx(CheckIcon, { className: cn("mr-2 h-4 w-4", value === option.name ? "opacity-100" : "opacity-0") }), option.name] }, option.id))) })] })] }) })] }), _jsx("input", { id: htmlFor, name: fieldName, ref: inputRef, required: required, type: "hidden", value: value })] }));
|
|
91
86
|
}
|
|
92
87
|
//# sourceMappingURL=form-dropdown-input.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form-dropdown-input.js","sourceRoot":"","sources":["../../../forms/fields/form-dropdown-input.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"form-dropdown-input.js","sourceRoot":"","sources":["../../../forms/fields/form-dropdown-input.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-infinite-scroll.d.ts","sourceRoot":"","sources":["../../hooks/use-infinite-scroll.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACtC,2CAA2C;IAC3C,WAAW,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,kBAAkB,EAAE,OAAO,CAAC;IAC5B,sCAAsC;IACtC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACrC,iDAAiD;IACjD,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CACnD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,UAAoB,EACpB,SAAe,GACf,EAAE,wBAAwB,GAAG,uBAAuB,
|
|
1
|
+
{"version":3,"file":"use-infinite-scroll.d.ts","sourceRoot":"","sources":["../../hooks/use-infinite-scroll.ts"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG;IACtC,2CAA2C;IAC3C,WAAW,EAAE,OAAO,CAAC;IACrB,gDAAgD;IAChD,kBAAkB,EAAE,OAAO,CAAC;IAC5B,sCAAsC;IACtC,aAAa,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,wDAAwD;IACxD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uDAAuD;IACvD,SAAS,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAEF;;;;GAIG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACrC,iDAAiD;IACjD,cAAc,EAAE,CAAC,IAAI,EAAE,WAAW,GAAG,IAAI,KAAK,IAAI,CAAC;CACnD,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,iBAAiB,CAAC,EACjC,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,UAAoB,EACpB,SAAe,GACf,EAAE,wBAAwB,GAAG,uBAAuB,CAuCpD"}
|
|
@@ -63,6 +63,15 @@ export function useInfiniteScroll({ hasNextPage, isFetchingNextPage, fetchNextPa
|
|
|
63
63
|
useEffect(() => {
|
|
64
64
|
setIsInitialized(true);
|
|
65
65
|
}, []);
|
|
66
|
+
// Cleanup observer on unmount to prevent memory leaks
|
|
67
|
+
useEffect(() => {
|
|
68
|
+
return () => {
|
|
69
|
+
if (observer.current) {
|
|
70
|
+
observer.current.disconnect();
|
|
71
|
+
observer.current = null;
|
|
72
|
+
}
|
|
73
|
+
};
|
|
74
|
+
}, []);
|
|
66
75
|
return { lastElementRef };
|
|
67
76
|
}
|
|
68
77
|
//# sourceMappingURL=use-infinite-scroll.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"use-infinite-scroll.js","sourceRoot":"","sources":["../../hooks/use-infinite-scroll.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA8BpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,iBAAiB,CAAC,EACjC,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,UAAU,GAAG,OAAO,EACpB,SAAS,GAAG,GAAG,GACW;IAC1B,MAAM,QAAQ,GAAG,MAAM,CAA8B,IAAI,CAAC,CAAC;IAC3D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,MAAM,cAAc,GAAG,CAAC,IAAwB,EAAE,EAAE;QACnD,IAAI,kBAAkB;YAAE,OAAO;QAC/B,IAAI,QAAQ,CAAC,OAAO;YAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAEpD,QAAQ,CAAC,OAAO,GAAG,IAAI,oBAAoB,CAC1C,CAAC,OAAO,EAAE,EAAE;YACX,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,IAAI,WAAW,IAAI,aAAa,EAAE,CAAC;gBAChE,aAAa,EAAE,CAAC;YACjB,CAAC;QACF,CAAC,EACD;YACC,UAAU;YACV,SAAS;SACT,CACD,CAAC;QAEF,IAAI,IAAI;YAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,oDAAoD;IACpD,SAAS,CAAC,GAAG,EAAE;QACd,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,cAAc,EAAE,CAAC;AAC3B,CAAC"}
|
|
1
|
+
{"version":3,"file":"use-infinite-scroll.js","sourceRoot":"","sources":["../../hooks/use-infinite-scroll.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AA8BpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,MAAM,UAAU,iBAAiB,CAAC,EACjC,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,UAAU,GAAG,OAAO,EACpB,SAAS,GAAG,GAAG,GACW;IAC1B,MAAM,QAAQ,GAAG,MAAM,CAA8B,IAAI,CAAC,CAAC;IAC3D,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAE1D,MAAM,cAAc,GAAG,CAAC,IAAwB,EAAE,EAAE;QACnD,IAAI,kBAAkB;YAAE,OAAO;QAC/B,IAAI,QAAQ,CAAC,OAAO;YAAE,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAEpD,QAAQ,CAAC,OAAO,GAAG,IAAI,oBAAoB,CAC1C,CAAC,OAAO,EAAE,EAAE;YACX,IAAI,OAAO,CAAC,CAAC,CAAC,EAAE,cAAc,IAAI,WAAW,IAAI,aAAa,EAAE,CAAC;gBAChE,aAAa,EAAE,CAAC;YACjB,CAAC;QACF,CAAC,EACD;YACC,UAAU;YACV,SAAS;SACT,CACD,CAAC;QAEF,IAAI,IAAI;YAAE,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,oDAAoD;IACpD,SAAS,CAAC,GAAG,EAAE;QACd,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACxB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,sDAAsD;IACtD,SAAS,CAAC,GAAG,EAAE;QACd,OAAO,GAAG,EAAE;YACX,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACtB,QAAQ,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;gBAC9B,QAAQ,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,CAAC;QACF,CAAC,CAAC;IACH,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAE,cAAc,EAAE,CAAC;AAC3B,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -44,7 +44,6 @@ export * from "./forms/fields/form-input-with-button";
|
|
|
44
44
|
export * from "./forms/fields/form-textarea";
|
|
45
45
|
export * from "./forms/generic-form-wrapper";
|
|
46
46
|
export * from "./hooks/use-infinite-scroll";
|
|
47
|
-
export * from "./layouts/body/viewer-body";
|
|
48
47
|
export * from "./ui/badge";
|
|
49
48
|
export * from "./ui/button";
|
|
50
49
|
export * from "./ui/card";
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAGH,cAAc,mBAAmB,CAAC;AAClC,cAAc,mCAAmC,CAAC;AAGlD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAGH,cAAc,mBAAmB,CAAC;AAClC,cAAc,mCAAmC,CAAC;AAGlD,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAG7C,cAAc,6BAA6B,CAAC;AAG5C,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAG9B,cAAc,YAAY,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -47,8 +47,6 @@ export * from "./forms/fields/form-textarea";
|
|
|
47
47
|
export * from "./forms/generic-form-wrapper";
|
|
48
48
|
// Hooks
|
|
49
49
|
export * from "./hooks/use-infinite-scroll";
|
|
50
|
-
// Layout Components
|
|
51
|
-
export * from "./layouts/body/viewer-body";
|
|
52
50
|
// UI Components
|
|
53
51
|
export * from "./ui/badge";
|
|
54
52
|
export * from "./ui/button";
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAClC,cAAc,mCAAmC,CAAC;AAElD,kBAAkB;AAClB,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAE7C,QAAQ;AACR,cAAc,6BAA6B,CAAC;AAE5C,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AAEH,qBAAqB;AACrB,cAAc,mBAAmB,CAAC;AAClC,cAAc,mCAAmC,CAAC;AAElD,kBAAkB;AAClB,cAAc,oCAAoC,CAAC;AACnD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uCAAuC,CAAC;AACtD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,8BAA8B,CAAC;AAE7C,QAAQ;AACR,cAAc,6BAA6B,CAAC;AAE5C,gBAAgB;AAChB,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC;AACnC,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAE9B,YAAY;AACZ,cAAc,YAAY,CAAC"}
|