@ttt-productions/ui-core 0.11.33 → 0.11.35
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/README.md +1 -1
- package/dist/browser/index.d.ts +2 -2
- package/dist/browser/index.d.ts.map +1 -1
- package/dist/browser/index.js +1 -2
- package/dist/browser/index.js.map +1 -1
- package/dist/browser/reload-recovery-watch.d.ts +2 -6
- package/dist/browser/reload-recovery-watch.d.ts.map +1 -1
- package/dist/browser/reload-recovery-watch.js +5 -10
- package/dist/browser/reload-recovery-watch.js.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -4
- package/dist/index.js.map +1 -1
- package/dist/lib/format-numbers.d.ts +0 -6
- package/dist/lib/format-numbers.d.ts.map +1 -1
- package/dist/lib/format-numbers.js +2 -8
- package/dist/lib/format-numbers.js.map +1 -1
- package/dist/lib/reload-recovery.d.ts +1 -9
- package/dist/lib/reload-recovery.d.ts.map +1 -1
- package/dist/lib/reload-recovery.js +14 -24
- package/dist/lib/reload-recovery.js.map +1 -1
- package/dist/lib/utils.d.ts +0 -3
- package/dist/lib/utils.d.ts.map +1 -1
- package/dist/lib/utils.js +0 -3
- package/dist/lib/utils.js.map +1 -1
- package/dist/react/components/accordion.d.ts +2 -2
- package/dist/react/components/accordion.d.ts.map +1 -1
- package/dist/react/components/accordion.js +8 -8
- package/dist/react/components/accordion.js.map +1 -1
- package/dist/react/components/action-row.d.ts +2 -9
- package/dist/react/components/action-row.d.ts.map +1 -1
- package/dist/react/components/action-row.js +7 -11
- package/dist/react/components/action-row.js.map +1 -1
- package/dist/react/components/alert-dialog.d.ts +2 -2
- package/dist/react/components/alert-dialog.d.ts.map +1 -1
- package/dist/react/components/alert-dialog.js +15 -15
- package/dist/react/components/alert-dialog.js.map +1 -1
- package/dist/react/components/alert.d.ts +2 -2
- package/dist/react/components/alert.d.ts.map +1 -1
- package/dist/react/components/alert.js +12 -12
- package/dist/react/components/alert.js.map +1 -1
- package/dist/react/components/avatar.d.ts +2 -2
- package/dist/react/components/avatar.d.ts.map +1 -1
- package/dist/react/components/avatar.js +7 -7
- package/dist/react/components/avatar.js.map +1 -1
- package/dist/react/components/badge.d.ts +2 -2
- package/dist/react/components/badge.d.ts.map +1 -1
- package/dist/react/components/badge.js +9 -9
- package/dist/react/components/badge.js.map +1 -1
- package/dist/react/components/button.d.ts +2 -12
- package/dist/react/components/button.d.ts.map +1 -1
- package/dist/react/components/button.js +30 -35
- package/dist/react/components/button.js.map +1 -1
- package/dist/react/components/card.d.ts +1 -1
- package/dist/react/components/card.d.ts.map +1 -1
- package/dist/react/components/card.js +15 -15
- package/dist/react/components/card.js.map +1 -1
- package/dist/react/components/checkbox.d.ts +2 -2
- package/dist/react/components/checkbox.d.ts.map +1 -1
- package/dist/react/components/checkbox.js +6 -6
- package/dist/react/components/checkbox.js.map +1 -1
- package/dist/react/components/collapsible.d.ts +1 -1
- package/dist/react/components/collapsible.d.ts.map +1 -1
- package/dist/react/components/collapsible.js +2 -2
- package/dist/react/components/collapsible.js.map +1 -1
- package/dist/react/components/consequence-dialog.d.ts +1 -48
- package/dist/react/components/consequence-dialog.d.ts.map +1 -1
- package/dist/react/components/consequence-dialog.js +7 -23
- package/dist/react/components/consequence-dialog.js.map +1 -1
- package/dist/react/components/date-picker.d.ts +1 -18
- package/dist/react/components/date-picker.d.ts.map +1 -1
- package/dist/react/components/date-picker.js +102 -98
- package/dist/react/components/date-picker.js.map +1 -1
- package/dist/react/components/date-time-picker.d.ts +1 -24
- package/dist/react/components/date-time-picker.d.ts.map +1 -1
- package/dist/react/components/date-time-picker.js +20 -37
- package/dist/react/components/date-time-picker.js.map +1 -1
- package/dist/react/components/dialog.d.ts +2 -2
- package/dist/react/components/dialog.d.ts.map +1 -1
- package/dist/react/components/dialog.js +14 -14
- package/dist/react/components/dialog.js.map +1 -1
- package/dist/react/components/dropdown-menu.d.ts +2 -10
- package/dist/react/components/dropdown-menu.d.ts.map +1 -1
- package/dist/react/components/dropdown-menu.js +24 -20
- package/dist/react/components/dropdown-menu.js.map +1 -1
- package/dist/react/components/end-of-list-indicator.d.ts +1 -1
- package/dist/react/components/end-of-list-indicator.js +3 -3
- package/dist/react/components/end-of-list-indicator.js.map +1 -1
- package/dist/react/components/form.d.ts +3 -3
- package/dist/react/components/form.d.ts.map +1 -1
- package/dist/react/components/form.js +17 -17
- package/dist/react/components/form.js.map +1 -1
- package/dist/react/components/format-control.d.ts +7 -20
- package/dist/react/components/format-control.d.ts.map +1 -1
- package/dist/react/components/format-control.js +18 -22
- package/dist/react/components/format-control.js.map +1 -1
- package/dist/react/components/input.d.ts +10 -27
- package/dist/react/components/input.d.ts.map +1 -1
- package/dist/react/components/input.js +11 -9
- package/dist/react/components/input.js.map +1 -1
- package/dist/react/components/label.d.ts +3 -3
- package/dist/react/components/label.d.ts.map +1 -1
- package/dist/react/components/label.js +6 -6
- package/dist/react/components/label.js.map +1 -1
- package/dist/react/components/layout/screen-adaptive-view.d.ts +2 -9
- package/dist/react/components/layout/screen-adaptive-view.d.ts.map +1 -1
- package/dist/react/components/layout/screen-adaptive-view.js +40 -37
- package/dist/react/components/layout/screen-adaptive-view.js.map +1 -1
- package/dist/react/components/list-pagination.d.ts +1 -31
- package/dist/react/components/list-pagination.d.ts.map +1 -1
- package/dist/react/components/list-pagination.js +10 -37
- package/dist/react/components/list-pagination.js.map +1 -1
- package/dist/react/components/menubar.d.ts +2 -2
- package/dist/react/components/menubar.d.ts.map +1 -1
- package/dist/react/components/menubar.js +17 -17
- package/dist/react/components/menubar.js.map +1 -1
- package/dist/react/components/opener-focus.d.ts +2 -8
- package/dist/react/components/opener-focus.d.ts.map +1 -1
- package/dist/react/components/opener-focus.js +4 -10
- package/dist/react/components/opener-focus.js.map +1 -1
- package/dist/react/components/pending-guard.d.ts +1 -7
- package/dist/react/components/pending-guard.d.ts.map +1 -1
- package/dist/react/components/pending-guard.js +1 -7
- package/dist/react/components/pending-guard.js.map +1 -1
- package/dist/react/components/popover.d.ts +2 -2
- package/dist/react/components/popover.d.ts.map +1 -1
- package/dist/react/components/popover.js +5 -5
- package/dist/react/components/popover.js.map +1 -1
- package/dist/react/components/progress.d.ts +2 -2
- package/dist/react/components/progress.d.ts.map +1 -1
- package/dist/react/components/progress.js +5 -5
- package/dist/react/components/progress.js.map +1 -1
- package/dist/react/components/radio-group.d.ts +2 -2
- package/dist/react/components/radio-group.d.ts.map +1 -1
- package/dist/react/components/radio-group.js +7 -7
- package/dist/react/components/radio-group.js.map +1 -1
- package/dist/react/components/relative-time.d.ts +1 -9
- package/dist/react/components/relative-time.d.ts.map +1 -1
- package/dist/react/components/relative-time.js +8 -11
- package/dist/react/components/relative-time.js.map +1 -1
- package/dist/react/components/reload-recovery-notice.d.ts +3 -17
- package/dist/react/components/reload-recovery-notice.d.ts.map +1 -1
- package/dist/react/components/reload-recovery-notice.js +7 -12
- package/dist/react/components/reload-recovery-notice.js.map +1 -1
- package/dist/react/components/scroll-area.d.ts +2 -2
- package/dist/react/components/scroll-area.d.ts.map +1 -1
- package/dist/react/components/scroll-area.js +6 -8
- package/dist/react/components/scroll-area.js.map +1 -1
- package/dist/react/components/scroll-to-top-button.d.ts +6 -30
- package/dist/react/components/scroll-to-top-button.d.ts.map +1 -1
- package/dist/react/components/scroll-to-top-button.js +9 -9
- package/dist/react/components/scroll-to-top-button.js.map +1 -1
- package/dist/react/components/search-dropdown.d.ts +0 -53
- package/dist/react/components/search-dropdown.d.ts.map +1 -1
- package/dist/react/components/search-dropdown.js +10 -39
- package/dist/react/components/search-dropdown.js.map +1 -1
- package/dist/react/components/select.d.ts +2 -9
- package/dist/react/components/select.d.ts.map +1 -1
- package/dist/react/components/select.js +19 -21
- package/dist/react/components/select.js.map +1 -1
- package/dist/react/components/separator.d.ts +2 -2
- package/dist/react/components/separator.d.ts.map +1 -1
- package/dist/react/components/separator.js +5 -5
- package/dist/react/components/separator.js.map +1 -1
- package/dist/react/components/sheet.d.ts +3 -3
- package/dist/react/components/sheet.d.ts.map +1 -1
- package/dist/react/components/sheet.js +21 -21
- package/dist/react/components/sheet.js.map +1 -1
- package/dist/react/components/show-more-toggle.d.ts +2 -18
- package/dist/react/components/show-more-toggle.d.ts.map +1 -1
- package/dist/react/components/show-more-toggle.js +6 -11
- package/dist/react/components/show-more-toggle.js.map +1 -1
- package/dist/react/components/skeleton.d.ts +1 -1
- package/dist/react/components/skeleton.d.ts.map +1 -1
- package/dist/react/components/skeleton.js +3 -3
- package/dist/react/components/skeleton.js.map +1 -1
- package/dist/react/components/slider.d.ts +2 -2
- package/dist/react/components/slider.d.ts.map +1 -1
- package/dist/react/components/slider.js +5 -5
- package/dist/react/components/slider.js.map +1 -1
- package/dist/react/components/spinner.d.ts +1 -15
- package/dist/react/components/spinner.d.ts.map +1 -1
- package/dist/react/components/spinner.js +10 -18
- package/dist/react/components/spinner.js.map +1 -1
- package/dist/react/components/switch.d.ts +2 -9
- package/dist/react/components/switch.d.ts.map +1 -1
- package/dist/react/components/switch.js +13 -10
- package/dist/react/components/switch.js.map +1 -1
- package/dist/react/components/table.d.ts +2 -12
- package/dist/react/components/table.d.ts.map +1 -1
- package/dist/react/components/table.js +24 -30
- package/dist/react/components/table.js.map +1 -1
- package/dist/react/components/tabs.d.ts +2 -2
- package/dist/react/components/tabs.d.ts.map +1 -1
- package/dist/react/components/tabs.js +7 -7
- package/dist/react/components/tabs.js.map +1 -1
- package/dist/react/components/textarea.d.ts +5 -16
- package/dist/react/components/textarea.d.ts.map +1 -1
- package/dist/react/components/textarea.js +11 -9
- package/dist/react/components/textarea.js.map +1 -1
- package/dist/react/components/toast.d.ts +4 -8
- package/dist/react/components/toast.d.ts.map +1 -1
- package/dist/react/components/toast.js +26 -47
- package/dist/react/components/toast.js.map +1 -1
- package/dist/react/components/toaster.d.ts.map +1 -1
- package/dist/react/components/toaster.js +5 -5
- package/dist/react/components/toaster.js.map +1 -1
- package/dist/react/components/tooltip.d.ts +2 -2
- package/dist/react/components/tooltip.d.ts.map +1 -1
- package/dist/react/components/tooltip.js +5 -5
- package/dist/react/components/tooltip.js.map +1 -1
- package/dist/react/hooks/use-async-action.d.ts +1 -21
- package/dist/react/hooks/use-async-action.d.ts.map +1 -1
- package/dist/react/hooks/use-async-action.js +3 -11
- package/dist/react/hooks/use-async-action.js.map +1 -1
- package/dist/react/hooks/use-cursor-page.d.ts +1 -63
- package/dist/react/hooks/use-cursor-page.d.ts.map +1 -1
- package/dist/react/hooks/use-cursor-page.js +3 -39
- package/dist/react/hooks/use-cursor-page.js.map +1 -1
- package/dist/react/hooks/use-media-query.js +5 -5
- package/dist/react/hooks/use-media-query.js.map +1 -1
- package/dist/react/hooks/use-paged-list.d.ts +0 -43
- package/dist/react/hooks/use-paged-list.d.ts.map +1 -1
- package/dist/react/hooks/use-paged-list.js +2 -17
- package/dist/react/hooks/use-paged-list.js.map +1 -1
- package/dist/react/hooks/use-return-scroll.d.ts +1 -10
- package/dist/react/hooks/use-return-scroll.d.ts.map +1 -1
- package/dist/react/hooks/use-return-scroll.js +13 -45
- package/dist/react/hooks/use-return-scroll.js.map +1 -1
- package/dist/react/hooks/use-toast.d.ts +3 -11
- package/dist/react/hooks/use-toast.d.ts.map +1 -1
- package/dist/react/hooks/use-toast.js +18 -21
- package/dist/react/hooks/use-toast.js.map +1 -1
- package/dist/react/index.d.ts +74 -74
- package/dist/react/index.d.ts.map +1 -1
- package/dist/react/index.js +51 -57
- package/dist/react/index.js.map +1 -1
- package/package.json +8 -6
package/README.md
CHANGED
package/dist/browser/index.d.ts
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
export { createReloadRecoveryWatch } from
|
|
2
|
-
export type { ReloadRecoveryTarget, ReloadRecoveryWatch } from
|
|
1
|
+
export { createReloadRecoveryWatch } from './reload-recovery-watch.js';
|
|
2
|
+
export type { ReloadRecoveryTarget, ReloadRecoveryWatch } from './reload-recovery-watch.js';
|
|
3
3
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC"}
|
package/dist/browser/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/browser/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC","sourcesContent":["export { createReloadRecoveryWatch } from './reload-recovery-watch.js';\nexport type { ReloadRecoveryTarget, ReloadRecoveryWatch } from './reload-recovery-watch.js';\n"]}
|
|
@@ -1,12 +1,8 @@
|
|
|
1
|
-
import { type ReloadRecoveryKind } from
|
|
2
|
-
|
|
3
|
-
export type ReloadRecoveryTarget = Pick<Window, "addEventListener" | "removeEventListener">;
|
|
1
|
+
import { type ReloadRecoveryKind } from '../lib/reload-recovery.js';
|
|
2
|
+
export type ReloadRecoveryTarget = Pick<Window, 'addEventListener' | 'removeEventListener'>;
|
|
4
3
|
export interface ReloadRecoveryWatch {
|
|
5
|
-
/** The first failure only a reload repairs since the watch started, or `null` while there is none. */
|
|
6
4
|
current: () => ReloadRecoveryKind | null;
|
|
7
|
-
/** Calls `listener` once, when the first failure is recorded. Answers the unsubscribe. */
|
|
8
5
|
subscribe: (listener: () => void) => () => void;
|
|
9
|
-
/** Stops listening; a failure already recorded stays. */
|
|
10
6
|
stop: () => void;
|
|
11
7
|
}
|
|
12
8
|
export declare function createReloadRecoveryWatch(target?: ReloadRecoveryTarget): ReloadRecoveryWatch;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reload-recovery-watch.d.ts","sourceRoot":"","sources":["../../src/browser/reload-recovery-watch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reload-recovery-watch.d.ts","sourceRoot":"","sources":["../../src/browser/reload-recovery-watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,KAAK,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAE1F,MAAM,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,EAAE,kBAAkB,GAAG,qBAAqB,CAAC,CAAC;AAE5F,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,kBAAkB,GAAG,IAAI,CAAC;IACzC,SAAS,EAAE,CAAC,QAAQ,EAAE,MAAM,IAAI,KAAK,MAAM,IAAI,CAAC;IAChD,IAAI,EAAE,MAAM,IAAI,CAAC;CAClB;AAED,wBAAgB,yBAAyB,CACvC,MAAM,GAAE,oBAA6B,GACpC,mBAAmB,CA4BrB"}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
// entry, before React mounts, so a failure raised during startup is recorded for the notice to show
|
|
3
|
-
// once it mounts. It only listens: it never calls `preventDefault`, so the app's monitoring still
|
|
4
|
-
// captures every event once, and it never reloads the page.
|
|
5
|
-
import { reloadRecoveryKindOf } from "../lib/reload-recovery.js";
|
|
1
|
+
import { reloadRecoveryKindOf } from '../lib/reload-recovery.js';
|
|
6
2
|
export function createReloadRecoveryWatch(target = window) {
|
|
7
3
|
let recorded = null;
|
|
8
4
|
const listeners = new Set();
|
|
9
5
|
const record = (kind) => {
|
|
10
|
-
// The first failure stands: a repeat of it, or the other one after it, changes nothing.
|
|
11
6
|
if (kind === null || recorded !== null)
|
|
12
7
|
return;
|
|
13
8
|
recorded = kind;
|
|
@@ -17,8 +12,8 @@ export function createReloadRecoveryWatch(target = window) {
|
|
|
17
12
|
// An error event's `error` is the thrown value; a cross-origin script's carries only the message.
|
|
18
13
|
const onError = (event) => record(reloadRecoveryKindOf(event.error) ?? reloadRecoveryKindOf({ message: event.message }));
|
|
19
14
|
const onRejection = (event) => record(reloadRecoveryKindOf(event.reason));
|
|
20
|
-
target.addEventListener(
|
|
21
|
-
target.addEventListener(
|
|
15
|
+
target.addEventListener('error', onError);
|
|
16
|
+
target.addEventListener('unhandledrejection', onRejection);
|
|
22
17
|
return {
|
|
23
18
|
current: () => recorded,
|
|
24
19
|
subscribe: (listener) => {
|
|
@@ -26,8 +21,8 @@ export function createReloadRecoveryWatch(target = window) {
|
|
|
26
21
|
return () => listeners.delete(listener);
|
|
27
22
|
},
|
|
28
23
|
stop: () => {
|
|
29
|
-
target.removeEventListener(
|
|
30
|
-
target.removeEventListener(
|
|
24
|
+
target.removeEventListener('error', onError);
|
|
25
|
+
target.removeEventListener('unhandledrejection', onRejection);
|
|
31
26
|
},
|
|
32
27
|
};
|
|
33
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reload-recovery-watch.js","sourceRoot":"","sources":["../../src/browser/reload-recovery-watch.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"reload-recovery-watch.js","sourceRoot":"","sources":["../../src/browser/reload-recovery-watch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAA2B,MAAM,2BAA2B,CAAC;AAU1F,MAAM,UAAU,yBAAyB,CACvC,SAA+B,MAAM;IAErC,IAAI,QAAQ,GAA8B,IAAI,CAAC;IAC/C,MAAM,SAAS,GAAG,IAAI,GAAG,EAAc,CAAC;IAExC,MAAM,MAAM,GAAG,CAAC,IAA+B,EAAE,EAAE;QACjD,IAAI,IAAI,KAAK,IAAI,IAAI,QAAQ,KAAK,IAAI;YAAE,OAAO;QAC/C,QAAQ,GAAG,IAAI,CAAC;QAChB,KAAK,MAAM,QAAQ,IAAI,CAAC,GAAG,SAAS,CAAC;YAAE,QAAQ,EAAE,CAAC;IACpD,CAAC,CAAC;IACF,kGAAkG;IAClG,MAAM,OAAO,GAAG,CAAC,KAAiB,EAAE,EAAE,CACpC,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,oBAAoB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAChG,MAAM,WAAW,GAAG,CAAC,KAA4B,EAAE,EAAE,CAAC,MAAM,CAAC,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;IAEjG,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAC1C,MAAM,CAAC,gBAAgB,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;IAE3D,OAAO;QACL,OAAO,EAAE,GAAG,EAAE,CAAC,QAAQ;QACvB,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;YACtB,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxB,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC1C,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACT,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC7C,MAAM,CAAC,mBAAmB,CAAC,oBAAoB,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { reloadRecoveryKindOf, type ReloadRecoveryKind } from '../lib/reload-recovery.js';\n\nexport type ReloadRecoveryTarget = Pick<Window, 'addEventListener' | 'removeEventListener'>;\n\nexport interface ReloadRecoveryWatch {\n current: () => ReloadRecoveryKind | null;\n subscribe: (listener: () => void) => () => void;\n stop: () => void;\n}\n\nexport function createReloadRecoveryWatch(\n target: ReloadRecoveryTarget = window,\n): ReloadRecoveryWatch {\n let recorded: ReloadRecoveryKind | null = null;\n const listeners = new Set<() => void>();\n\n const record = (kind: ReloadRecoveryKind | null) => {\n if (kind === null || recorded !== null) return;\n recorded = kind;\n for (const listener of [...listeners]) listener();\n };\n // An error event's `error` is the thrown value; a cross-origin script's carries only the message.\n const onError = (event: ErrorEvent) =>\n record(reloadRecoveryKindOf(event.error) ?? reloadRecoveryKindOf({ message: event.message }));\n const onRejection = (event: PromiseRejectionEvent) => record(reloadRecoveryKindOf(event.reason));\n\n target.addEventListener('error', onError);\n target.addEventListener('unhandledrejection', onRejection);\n\n return {\n current: () => recorded,\n subscribe: (listener) => {\n listeners.add(listener);\n return () => listeners.delete(listener);\n },\n stop: () => {\n target.removeEventListener('error', onError);\n target.removeEventListener('unhandledrejection', onRejection);\n },\n };\n}\n"]}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
export * from
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
1
|
+
export * from './lib/utils.js';
|
|
2
|
+
export * from './lib/format-numbers.js';
|
|
3
|
+
export * from './lib/reload-recovery.js';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
export * from
|
|
3
|
-
export * from
|
|
4
|
-
export * from "./lib/reload-recovery.js";
|
|
1
|
+
export * from './lib/utils.js';
|
|
2
|
+
export * from './lib/format-numbers.js';
|
|
3
|
+
export * from './lib/reload-recovery.js';
|
|
5
4
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAC;AAC/B,cAAc,yBAAyB,CAAC;AACxC,cAAc,0BAA0B,CAAC","sourcesContent":["export * from './lib/utils.js';\nexport * from './lib/format-numbers.js';\nexport * from './lib/reload-recovery.js';\n"]}
|
|
@@ -1,8 +1,2 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compact number formatter:
|
|
3
|
-
* < 10,000 → "1234"
|
|
4
|
-
* 10,000 ≤ n < 1,000,000 → "12.3k" (trailing ".0" stripped)
|
|
5
|
-
* ≥ 1,000,000 → "1.2M" (trailing ".0" stripped)
|
|
6
|
-
*/
|
|
7
1
|
export declare function formatLargeNumber(num: number): string;
|
|
8
2
|
//# sourceMappingURL=format-numbers.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-numbers.d.ts","sourceRoot":"","sources":["../../src/lib/format-numbers.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"format-numbers.d.ts","sourceRoot":"","sources":["../../src/lib/format-numbers.ts"],"names":[],"mappings":"AAAA,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAUrD"}
|
|
@@ -1,17 +1,11 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Compact number formatter:
|
|
3
|
-
* < 10,000 → "1234"
|
|
4
|
-
* 10,000 ≤ n < 1,000,000 → "12.3k" (trailing ".0" stripped)
|
|
5
|
-
* ≥ 1,000,000 → "1.2M" (trailing ".0" stripped)
|
|
6
|
-
*/
|
|
7
1
|
export function formatLargeNumber(num) {
|
|
8
2
|
if (num >= 1_000_000) {
|
|
9
3
|
const formatted = (num / 1_000_000).toFixed(1);
|
|
10
|
-
return (formatted.endsWith(
|
|
4
|
+
return (formatted.endsWith('.0') ? formatted.slice(0, -2) : formatted) + 'M';
|
|
11
5
|
}
|
|
12
6
|
if (num >= 10_000) {
|
|
13
7
|
const formatted = (num / 1000).toFixed(1);
|
|
14
|
-
return (formatted.endsWith(
|
|
8
|
+
return (formatted.endsWith('.0') ? formatted.slice(0, -2) : formatted) + 'k';
|
|
15
9
|
}
|
|
16
10
|
return num.toString();
|
|
17
11
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format-numbers.js","sourceRoot":"","sources":["../../src/lib/format-numbers.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"format-numbers.js","sourceRoot":"","sources":["../../src/lib/format-numbers.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAAC,GAAW;IAC3C,IAAI,GAAG,IAAI,SAAS,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,CAAC,GAAG,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC/C,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;IAC/E,CAAC;IACD,IAAI,GAAG,IAAI,MAAM,EAAE,CAAC;QAClB,MAAM,SAAS,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAC1C,OAAO,CAAC,SAAS,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;IAC/E,CAAC;IACD,OAAO,GAAG,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC","sourcesContent":["export function formatLargeNumber(num: number): string {\n if (num >= 1_000_000) {\n const formatted = (num / 1_000_000).toFixed(1);\n return (formatted.endsWith('.0') ? formatted.slice(0, -2) : formatted) + 'M';\n }\n if (num >= 10_000) {\n const formatted = (num / 1000).toFixed(1);\n return (formatted.endsWith('.0') ? formatted.slice(0, -2) : formatted) + 'k';\n }\n return num.toString();\n}\n"]}
|
|
@@ -1,15 +1,7 @@
|
|
|
1
|
-
/** Each failure only a reload repairs. */
|
|
2
1
|
export declare const RELOAD_RECOVERY_KINDS: readonly ["storageDisconnect", "staleChunk"];
|
|
3
2
|
export type ReloadRecoveryKind = (typeof RELOAD_RECOVERY_KINDS)[number];
|
|
4
|
-
/**
|
|
5
|
-
* WebKit dropping a page's IndexedDB connection when it reclaims a backgrounded tab: an
|
|
6
|
-
* `UnknownError` whose message says the connection to the Indexed Database server was lost. Every
|
|
7
|
-
* storage call after it fails until the page reloads. No other `UnknownError`, and no quota, blocked
|
|
8
|
-
* storage, or network failure, is this one.
|
|
9
|
-
*/
|
|
3
|
+
/** WebKit drops a backgrounded tab's IndexedDB connection; every storage call after it fails until the page reloads. */
|
|
10
4
|
export declare function isStorageDisconnectError(reason: unknown): boolean;
|
|
11
|
-
/** A code chunk the deployed build no longer serves: a `ChunkLoadError`, or "Failed to load chunk". */
|
|
12
5
|
export declare function isStaleChunkError(reason: unknown): boolean;
|
|
13
|
-
/** Which failure only a reload repairs `reason` is, or `null` for any other. */
|
|
14
6
|
export declare function reloadRecoveryKindOf(reason: unknown): ReloadRecoveryKind | null;
|
|
15
7
|
//# sourceMappingURL=reload-recovery.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reload-recovery.d.ts","sourceRoot":"","sources":["../../src/lib/reload-recovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"reload-recovery.d.ts","sourceRoot":"","sources":["../../src/lib/reload-recovery.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,qBAAqB,8CAA+C,CAAC;AAClF,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,qBAAqB,CAAC,CAAC,MAAM,CAAC,CAAC;AAaxE,wHAAwH;AACxH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAKjE;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO,CAK1D;AAED,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,OAAO,GAAG,kBAAkB,GAAG,IAAI,CAI/E"}
|
|
@@ -1,38 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
const
|
|
6
|
-
const STORAGE_DISCONNECT_MESSAGE = "Connection to Indexed Database server lost";
|
|
7
|
-
const STALE_CHUNK_NAME = "ChunkLoadError";
|
|
8
|
-
const STALE_CHUNK_MESSAGE = "Failed to load chunk";
|
|
1
|
+
export const RELOAD_RECOVERY_KINDS = ['storageDisconnect', 'staleChunk'];
|
|
2
|
+
const STORAGE_DISCONNECT_NAME = 'UnknownError';
|
|
3
|
+
const STORAGE_DISCONNECT_MESSAGE = 'Connection to Indexed Database server lost';
|
|
4
|
+
const STALE_CHUNK_NAME = 'ChunkLoadError';
|
|
5
|
+
const STALE_CHUNK_MESSAGE = 'Failed to load chunk';
|
|
9
6
|
function fieldOf(reason, field) {
|
|
10
|
-
if (typeof reason !==
|
|
7
|
+
if (typeof reason !== 'object' || reason === null)
|
|
11
8
|
return null;
|
|
12
9
|
const value = reason[field];
|
|
13
|
-
return typeof value ===
|
|
10
|
+
return typeof value === 'string' ? value : null;
|
|
14
11
|
}
|
|
15
|
-
/**
|
|
16
|
-
* WebKit dropping a page's IndexedDB connection when it reclaims a backgrounded tab: an
|
|
17
|
-
* `UnknownError` whose message says the connection to the Indexed Database server was lost. Every
|
|
18
|
-
* storage call after it fails until the page reloads. No other `UnknownError`, and no quota, blocked
|
|
19
|
-
* storage, or network failure, is this one.
|
|
20
|
-
*/
|
|
12
|
+
/** WebKit drops a backgrounded tab's IndexedDB connection; every storage call after it fails until the page reloads. */
|
|
21
13
|
export function isStorageDisconnectError(reason) {
|
|
22
|
-
return (fieldOf(reason,
|
|
23
|
-
(fieldOf(reason,
|
|
14
|
+
return (fieldOf(reason, 'name') === STORAGE_DISCONNECT_NAME &&
|
|
15
|
+
(fieldOf(reason, 'message')?.includes(STORAGE_DISCONNECT_MESSAGE) ?? false));
|
|
24
16
|
}
|
|
25
|
-
/** A code chunk the deployed build no longer serves: a `ChunkLoadError`, or "Failed to load chunk". */
|
|
26
17
|
export function isStaleChunkError(reason) {
|
|
27
|
-
return (fieldOf(reason,
|
|
28
|
-
(fieldOf(reason,
|
|
18
|
+
return (fieldOf(reason, 'name') === STALE_CHUNK_NAME ||
|
|
19
|
+
(fieldOf(reason, 'message')?.includes(STALE_CHUNK_MESSAGE) ?? false));
|
|
29
20
|
}
|
|
30
|
-
/** Which failure only a reload repairs `reason` is, or `null` for any other. */
|
|
31
21
|
export function reloadRecoveryKindOf(reason) {
|
|
32
22
|
if (isStorageDisconnectError(reason))
|
|
33
|
-
return
|
|
23
|
+
return 'storageDisconnect';
|
|
34
24
|
if (isStaleChunkError(reason))
|
|
35
|
-
return
|
|
25
|
+
return 'staleChunk';
|
|
36
26
|
return null;
|
|
37
27
|
}
|
|
38
28
|
//# sourceMappingURL=reload-recovery.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reload-recovery.js","sourceRoot":"","sources":["../../src/lib/reload-recovery.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"reload-recovery.js","sourceRoot":"","sources":["../../src/lib/reload-recovery.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,mBAAmB,EAAE,YAAY,CAAU,CAAC;AAGlF,MAAM,uBAAuB,GAAG,cAAc,CAAC;AAC/C,MAAM,0BAA0B,GAAG,4CAA4C,CAAC;AAChF,MAAM,gBAAgB,GAAG,gBAAgB,CAAC;AAC1C,MAAM,mBAAmB,GAAG,sBAAsB,CAAC;AAEnD,SAAS,OAAO,CAAC,MAAe,EAAE,KAAyB;IACzD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,IAAI,CAAC;IAC/D,MAAM,KAAK,GAAI,MAAkC,CAAC,KAAK,CAAC,CAAC;IACzD,OAAO,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAClD,CAAC;AAED,wHAAwH;AACxH,MAAM,UAAU,wBAAwB,CAAC,MAAe;IACtD,OAAO,CACL,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,uBAAuB;QACnD,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,0BAA0B,CAAC,IAAI,KAAK,CAAC,CAC5E,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAe;IAC/C,OAAO,CACL,OAAO,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,gBAAgB;QAC5C,CAAC,OAAO,CAAC,MAAM,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,CACrE,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAe;IAClD,IAAI,wBAAwB,CAAC,MAAM,CAAC;QAAE,OAAO,mBAAmB,CAAC;IACjE,IAAI,iBAAiB,CAAC,MAAM,CAAC;QAAE,OAAO,YAAY,CAAC;IACnD,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["export const RELOAD_RECOVERY_KINDS = ['storageDisconnect', 'staleChunk'] as const;\nexport type ReloadRecoveryKind = (typeof RELOAD_RECOVERY_KINDS)[number];\n\nconst STORAGE_DISCONNECT_NAME = 'UnknownError';\nconst STORAGE_DISCONNECT_MESSAGE = 'Connection to Indexed Database server lost';\nconst STALE_CHUNK_NAME = 'ChunkLoadError';\nconst STALE_CHUNK_MESSAGE = 'Failed to load chunk';\n\nfunction fieldOf(reason: unknown, field: 'name' | 'message'): string | null {\n if (typeof reason !== 'object' || reason === null) return null;\n const value = (reason as Record<string, unknown>)[field];\n return typeof value === 'string' ? value : null;\n}\n\n/** WebKit drops a backgrounded tab's IndexedDB connection; every storage call after it fails until the page reloads. */\nexport function isStorageDisconnectError(reason: unknown): boolean {\n return (\n fieldOf(reason, 'name') === STORAGE_DISCONNECT_NAME &&\n (fieldOf(reason, 'message')?.includes(STORAGE_DISCONNECT_MESSAGE) ?? false)\n );\n}\n\nexport function isStaleChunkError(reason: unknown): boolean {\n return (\n fieldOf(reason, 'name') === STALE_CHUNK_NAME ||\n (fieldOf(reason, 'message')?.includes(STALE_CHUNK_MESSAGE) ?? false)\n );\n}\n\nexport function reloadRecoveryKindOf(reason: unknown): ReloadRecoveryKind | null {\n if (isStorageDisconnectError(reason)) return 'storageDisconnect';\n if (isStaleChunkError(reason)) return 'staleChunk';\n return null;\n}\n"]}
|
package/dist/lib/utils.d.ts
CHANGED
package/dist/lib/utils.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAG7C,wBAAgB,EAAE,CAAC,GAAG,MAAM,EAAE,UAAU,EAAE,UAEzC"}
|
package/dist/lib/utils.js
CHANGED
package/dist/lib/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,IAAI,EAAE,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/lib/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,IAAI,EAAE,MAAM,MAAM,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAEzC,MAAM,UAAU,EAAE,CAAC,GAAG,MAAoB;IACxC,OAAO,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;AAC/B,CAAC","sourcesContent":["import { type ClassValue, clsx } from 'clsx';\nimport { twMerge } from 'tailwind-merge';\n\nexport function cn(...inputs: ClassValue[]) {\n return twMerge(clsx(inputs));\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as React from
|
|
2
|
-
import * as AccordionPrimitive from
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
3
3
|
declare const Accordion: React.ForwardRefExoticComponent<(AccordionPrimitive.AccordionSingleProps | AccordionPrimitive.AccordionMultipleProps) & React.RefAttributes<HTMLDivElement>>;
|
|
4
4
|
declare const AccordionItem: React.ForwardRefExoticComponent<Omit<AccordionPrimitive.AccordionItemProps & React.RefAttributes<HTMLDivElement>, "ref"> & React.RefAttributes<HTMLDivElement>>;
|
|
5
5
|
declare const AccordionTrigger: React.ForwardRefExoticComponent<Omit<AccordionPrimitive.AccordionTriggerProps & React.RefAttributes<HTMLButtonElement>, "ref"> & React.RefAttributes<HTMLButtonElement>>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../../src/react/components/accordion.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"accordion.d.ts","sourceRoot":"","sources":["../../../src/react/components/accordion.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAKhE,QAAA,MAAM,SAAS,8JAA0B,CAAC;AAE1C,QAAA,MAAM,aAAa,iKAKjB,CAAC;AAGH,QAAA,MAAM,gBAAgB,0KAiBpB,CAAC;AAGH,QAAA,MAAM,gBAAgB,oKAapB,CAAC;AAGH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC"}
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import * as React from
|
|
4
|
-
import * as AccordionPrimitive from
|
|
5
|
-
import { ChevronDown } from
|
|
6
|
-
import { cn } from
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import * as AccordionPrimitive from '@radix-ui/react-accordion';
|
|
5
|
+
import { ChevronDown } from 'lucide-react';
|
|
6
|
+
import { cn } from '../../lib/utils.js';
|
|
7
7
|
const Accordion = AccordionPrimitive.Root;
|
|
8
8
|
const AccordionItem = React.forwardRef(({ className, ...props }, ref) => (_jsx(AccordionPrimitive.Item, { ref: ref, className: cn(className), ...props })));
|
|
9
|
-
AccordionItem.displayName =
|
|
10
|
-
const AccordionTrigger = React.forwardRef(({ className, children, ...props }, ref) => (_jsx(AccordionPrimitive.Header, { className: "flex", children: _jsxs(AccordionPrimitive.Trigger, { ref: ref, className: cn(
|
|
9
|
+
AccordionItem.displayName = 'AccordionItem';
|
|
10
|
+
const AccordionTrigger = React.forwardRef(({ className, children, ...props }, ref) => (_jsx(AccordionPrimitive.Header, { className: "flex", children: _jsxs(AccordionPrimitive.Trigger, { ref: ref, className: cn('flex flex-1 items-center justify-between py-4 font-medium hover:underline [&[data-state=open]>svg]:rotate-180', className), ...props, children: [children, _jsx(ChevronDown, { className: "h-4 w-4 shrink-0 transition-transform duration-[var(--motion-base)] ease-[var(--motion-ease)]" })] }) })));
|
|
11
11
|
AccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;
|
|
12
|
-
const AccordionContent = React.forwardRef(({ className, children, ...props }, ref) => (_jsx(AccordionPrimitive.Content, { ref: ref, className: "overflow-clip text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down", ...props, children: _jsx("div", { className: cn(
|
|
12
|
+
const AccordionContent = React.forwardRef(({ className, children, ...props }, ref) => (_jsx(AccordionPrimitive.Content, { ref: ref, className: "overflow-clip text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down", ...props, children: _jsx("div", { className: cn('pb-4 pt-0', className), children: children }) })));
|
|
13
13
|
AccordionContent.displayName = AccordionPrimitive.Content.displayName;
|
|
14
14
|
export { Accordion, AccordionItem, AccordionTrigger, AccordionContent };
|
|
15
15
|
//# sourceMappingURL=accordion.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../../src/react/components/accordion.tsx"],"names":[],"mappings":"AAAA,YAAY,
|
|
1
|
+
{"version":3,"file":"accordion.js","sourceRoot":"","sources":["../../../src/react/components/accordion.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,kBAAkB,MAAM,2BAA2B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,MAAM,SAAS,GAAG,kBAAkB,CAAC,IAAI,CAAC;AAE1C,MAAM,aAAa,GAAG,KAAK,CAAC,UAAU,CAGpC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAClC,KAAC,kBAAkB,CAAC,IAAI,IAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,KAAM,KAAK,GAAI,CAC3E,CAAC,CAAC;AACH,aAAa,CAAC,WAAW,GAAG,eAAe,CAAC;AAE5C,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAGvC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAC5C,KAAC,kBAAkB,CAAC,MAAM,IAAC,SAAS,EAAC,MAAM,YACzC,MAAC,kBAAkB,CAAC,OAAO,IACzB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,+GAA+G,EAC/G,SAAS,CACV,KACG,KAAK,aAER,QAAQ,EACT,KAAC,WAAW,IAAC,SAAS,EAAC,+FAA+F,GAAG,IAC9F,GACH,CAC7B,CAAC,CAAC;AACH,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC;AAEtE,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,CAGvC,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,CAG5C,KAAC,kBAAkB,CAAC,OAAO,IACzB,GAAG,EAAE,GAAG,EACR,SAAS,EAAC,yGAAyG,KAC/G,KAAK,YAET,cAAK,SAAS,EAAE,EAAE,CAAC,WAAW,EAAE,SAAS,CAAC,YAAG,QAAQ,GAAO,GACjC,CAC9B,CAAC,CAAC;AACH,gBAAgB,CAAC,WAAW,GAAG,kBAAkB,CAAC,OAAO,CAAC,WAAW,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,CAAC","sourcesContent":["'use client';\n\nimport * as React from 'react';\nimport * as AccordionPrimitive from '@radix-ui/react-accordion';\nimport { ChevronDown } from 'lucide-react';\n\nimport { cn } from '../../lib/utils.js';\n\nconst Accordion = AccordionPrimitive.Root;\n\nconst AccordionItem = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Item>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Item>\n>(({ className, ...props }, ref) => (\n <AccordionPrimitive.Item ref={ref} className={cn(className)} {...props} />\n));\nAccordionItem.displayName = 'AccordionItem';\n\nconst AccordionTrigger = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Trigger>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Trigger>\n>(({ className, children, ...props }, ref) => (\n <AccordionPrimitive.Header className=\"flex\">\n <AccordionPrimitive.Trigger\n ref={ref}\n className={cn(\n 'flex flex-1 items-center justify-between py-4 font-medium hover:underline [&[data-state=open]>svg]:rotate-180',\n className,\n )}\n {...props}\n >\n {children}\n <ChevronDown className=\"h-4 w-4 shrink-0 transition-transform duration-[var(--motion-base)] ease-[var(--motion-ease)]\" />\n </AccordionPrimitive.Trigger>\n </AccordionPrimitive.Header>\n));\nAccordionTrigger.displayName = AccordionPrimitive.Trigger.displayName;\n\nconst AccordionContent = React.forwardRef<\n React.ElementRef<typeof AccordionPrimitive.Content>,\n React.ComponentPropsWithoutRef<typeof AccordionPrimitive.Content>\n>(({ className, children, ...props }, ref) => (\n // `overflow-clip`, never `overflow-hidden`: a hidden box is still a scroll container, so a focus\n // mid-animation scrolls it and the content snaps back when the animation ends.\n <AccordionPrimitive.Content\n ref={ref}\n className=\"overflow-clip text-sm data-[state=closed]:animate-accordion-up data-[state=open]:animate-accordion-down\"\n {...props}\n >\n <div className={cn('pb-4 pt-0', className)}>{children}</div>\n </AccordionPrimitive.Content>\n));\nAccordionContent.displayName = AccordionPrimitive.Content.displayName;\n\nexport { Accordion, AccordionItem, AccordionTrigger, AccordionContent };\n"]}
|
|
@@ -1,26 +1,19 @@
|
|
|
1
|
-
import * as React from
|
|
2
|
-
/** What the app's link element must carry to be a row's link target. */
|
|
1
|
+
import * as React from 'react';
|
|
3
2
|
export interface ActionRowLinkTargetProps {
|
|
4
3
|
className: string;
|
|
5
|
-
|
|
4
|
+
'aria-labelledby': string;
|
|
6
5
|
}
|
|
7
6
|
interface ActionRowCommonProps {
|
|
8
|
-
/** Layout of the content (padding, flex, borders). */
|
|
9
7
|
className?: string;
|
|
10
8
|
children: React.ReactNode;
|
|
11
9
|
}
|
|
12
10
|
export interface ActionRowButtonProps extends ActionRowCommonProps {
|
|
13
11
|
onClick: () => void;
|
|
14
12
|
disabled?: boolean;
|
|
15
|
-
/** The row's own action is in flight. */
|
|
16
13
|
busy?: boolean;
|
|
17
14
|
renderLink?: never;
|
|
18
15
|
}
|
|
19
16
|
export interface ActionRowLinkProps extends ActionRowCommonProps {
|
|
20
|
-
/**
|
|
21
|
-
* Renders the row's target as the app's own link element (its guarded in-app link), spreading
|
|
22
|
-
* the given props onto it. The link takes no children: the row's content names it.
|
|
23
|
-
*/
|
|
24
17
|
renderLink: (target: ActionRowLinkTargetProps) => React.ReactElement;
|
|
25
18
|
onClick?: never;
|
|
26
19
|
disabled?: never;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-row.d.ts","sourceRoot":"","sources":["../../../src/react/components/action-row.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"action-row.d.ts","sourceRoot":"","sources":["../../../src/react/components/action-row.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAS/B,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,UAAU,oBAAoB;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAqB,SAAQ,oBAAoB;IAChE,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,KAAK,CAAC;CACpB;AAED,MAAM,WAAW,kBAAmB,SAAQ,oBAAoB;IAC9D,UAAU,EAAE,CAAC,MAAM,EAAE,wBAAwB,KAAK,KAAK,CAAC,YAAY,CAAC;IACrE,OAAO,CAAC,EAAE,KAAK,CAAC;IAChB,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,IAAI,CAAC,EAAE,KAAK,CAAC;CACd;AAED,MAAM,MAAM,cAAc,GAAG,oBAAoB,GAAG,kBAAkB,CAAC;AAEvE,wBAAgB,SAAS,CAAC,KAAK,EAAE,cAAc,qBAqB9C"}
|
|
@@ -1,16 +1,12 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
// A
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
import * as React from "react";
|
|
9
|
-
import { cn } from "../../lib/utils.js";
|
|
10
|
-
const TARGET_CLASS = "peer absolute inset-0 w-full cursor-pointer transition-colors duration-[var(--motion-fast)] ease-[var(--motion-ease)] group-hover/action-row:bg-accent disabled:cursor-default disabled:group-hover/action-row:bg-transparent";
|
|
11
|
-
const CONTENT_CLASS = "relative pointer-events-none peer-disabled:opacity-70 [&_:is(a,button,input,select,textarea,[role=button])]:pointer-events-auto";
|
|
3
|
+
// A row is never one <button> or <a>: a control inside it would be nested in the row's target.
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import { cn } from '../../lib/utils.js';
|
|
6
|
+
const TARGET_CLASS = 'peer absolute inset-0 w-full cursor-pointer transition-colors duration-[var(--motion-fast)] ease-[var(--motion-ease)] group-hover/action-row:bg-accent disabled:cursor-default disabled:group-hover/action-row:bg-transparent';
|
|
7
|
+
const CONTENT_CLASS = 'relative pointer-events-none peer-disabled:opacity-70 [&_:is(a,button,input,select,textarea,[role=button])]:pointer-events-auto';
|
|
12
8
|
export function ActionRow(props) {
|
|
13
9
|
const contentId = React.useId();
|
|
14
|
-
return (_jsxs("div", { className: "ui-action-row group/action-row relative", children: [props.renderLink ? (props.renderLink({ className: TARGET_CLASS,
|
|
10
|
+
return (_jsxs("div", { className: "ui-action-row group/action-row relative", children: [props.renderLink ? (props.renderLink({ className: TARGET_CLASS, 'aria-labelledby': contentId })) : (_jsx("button", { type: "button", className: TARGET_CLASS, onClick: props.onClick, disabled: props.disabled ?? false, "aria-busy": props.busy || undefined, "aria-labelledby": contentId })), _jsx("div", { id: contentId, className: cn(CONTENT_CLASS, props.className), children: props.children })] }));
|
|
15
11
|
}
|
|
16
12
|
//# sourceMappingURL=action-row.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"action-row.js","sourceRoot":"","sources":["../../../src/react/components/action-row.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb
|
|
1
|
+
{"version":3,"file":"action-row.js","sourceRoot":"","sources":["../../../src/react/components/action-row.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,+FAA+F;AAE/F,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAE,EAAE,EAAE,MAAM,oBAAoB,CAAC;AAExC,MAAM,YAAY,GAChB,+NAA+N,CAAC;AAElO,MAAM,aAAa,GACjB,iIAAiI,CAAC;AA4BpI,MAAM,UAAU,SAAS,CAAC,KAAqB;IAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,EAAE,CAAC;IAChC,OAAO,CACL,eAAK,SAAS,EAAC,yCAAyC,aACrD,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,CAClB,KAAK,CAAC,UAAU,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,iBAAiB,EAAE,SAAS,EAAE,CAAC,CAC5E,CAAC,CAAC,CAAC,CACF,iBACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,YAAY,EACvB,OAAO,EAAE,KAAK,CAAC,OAAO,EACtB,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAAI,KAAK,eACtB,KAAK,CAAC,IAAI,IAAI,SAAS,qBACjB,SAAS,GAC1B,CACH,EACD,cAAK,EAAE,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,KAAK,CAAC,SAAS,CAAC,YAC9D,KAAK,CAAC,QAAQ,GACX,IACF,CACP,CAAC;AACJ,CAAC","sourcesContent":["'use client';\n\n// A row is never one <button> or <a>: a control inside it would be nested in the row's target.\n\nimport * as React from 'react';\nimport { cn } from '../../lib/utils.js';\n\nconst TARGET_CLASS =\n 'peer absolute inset-0 w-full cursor-pointer transition-colors duration-[var(--motion-fast)] ease-[var(--motion-ease)] group-hover/action-row:bg-accent disabled:cursor-default disabled:group-hover/action-row:bg-transparent';\n\nconst CONTENT_CLASS =\n 'relative pointer-events-none peer-disabled:opacity-70 [&_:is(a,button,input,select,textarea,[role=button])]:pointer-events-auto';\n\nexport interface ActionRowLinkTargetProps {\n className: string;\n 'aria-labelledby': string;\n}\n\ninterface ActionRowCommonProps {\n className?: string;\n children: React.ReactNode;\n}\n\nexport interface ActionRowButtonProps extends ActionRowCommonProps {\n onClick: () => void;\n disabled?: boolean;\n busy?: boolean;\n renderLink?: never;\n}\n\nexport interface ActionRowLinkProps extends ActionRowCommonProps {\n renderLink: (target: ActionRowLinkTargetProps) => React.ReactElement;\n onClick?: never;\n disabled?: never;\n busy?: never;\n}\n\nexport type ActionRowProps = ActionRowButtonProps | ActionRowLinkProps;\n\nexport function ActionRow(props: ActionRowProps) {\n const contentId = React.useId();\n return (\n <div className=\"ui-action-row group/action-row relative\">\n {props.renderLink ? (\n props.renderLink({ className: TARGET_CLASS, 'aria-labelledby': contentId })\n ) : (\n <button\n type=\"button\"\n className={TARGET_CLASS}\n onClick={props.onClick}\n disabled={props.disabled ?? false}\n aria-busy={props.busy || undefined}\n aria-labelledby={contentId}\n />\n )}\n <div id={contentId} className={cn(CONTENT_CLASS, props.className)}>\n {props.children}\n </div>\n </div>\n );\n}\n"]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import * as React from
|
|
2
|
-
import * as AlertDialogPrimitive from
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
3
3
|
declare const AlertDialog: React.FC<AlertDialogPrimitive.AlertDialogProps>;
|
|
4
4
|
declare const AlertDialogTrigger: React.ForwardRefExoticComponent<AlertDialogPrimitive.AlertDialogTriggerProps & React.RefAttributes<HTMLButtonElement>>;
|
|
5
5
|
declare const AlertDialogPortal: React.FC<AlertDialogPrimitive.AlertDialogPortalProps>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../../../src/react/components/alert-dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,
|
|
1
|
+
{"version":3,"file":"alert-dialog.d.ts","sourceRoot":"","sources":["../../../src/react/components/alert-dialog.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,KAAK,oBAAoB,MAAM,8BAA8B,CAAC;AAMrE,QAAA,MAAM,WAAW,iDAA4B,CAAC;AAC9C,QAAA,MAAM,kBAAkB,wHAA+B,CAAC;AACxD,QAAA,MAAM,iBAAiB,uDAA8B,CAAC;AAEtD,QAAA,MAAM,kBAAkB,wKAYtB,CAAC;AAGH,QAAA,MAAM,kBAAkB,wKAmBtB,CAAC;AAGH,QAAA,MAAM,iBAAiB;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAEvF,CAAC;AAGF,QAAA,MAAM,iBAAiB;8BAA6B,KAAK,CAAC,cAAc,CAAC,cAAc,CAAC;;CAKvF,CAAC;AAGF,QAAA,MAAM,gBAAgB,8KASpB,CAAC;AAGH,QAAA,MAAM,sBAAsB,wLAS1B,CAAC;AAGH,QAAA,MAAM,iBAAiB,6KAKrB,CAAC;AAGH,QAAA,MAAM,iBAAiB,6KASrB,CAAC;AAGH,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,kBAAkB,EAClB,kBAAkB,EAClB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,GAClB,CAAC"}
|
|
@@ -1,31 +1,31 @@
|
|
|
1
|
-
|
|
1
|
+
'use client';
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
-
import * as React from
|
|
4
|
-
import * as AlertDialogPrimitive from
|
|
5
|
-
import { cn } from
|
|
6
|
-
import { buttonVariants } from
|
|
7
|
-
import { useOpenerFocus } from
|
|
3
|
+
import * as React from 'react';
|
|
4
|
+
import * as AlertDialogPrimitive from '@radix-ui/react-alert-dialog';
|
|
5
|
+
import { cn } from '../../lib/utils.js';
|
|
6
|
+
import { buttonVariants } from './button.js';
|
|
7
|
+
import { useOpenerFocus } from './opener-focus.js';
|
|
8
8
|
const AlertDialog = AlertDialogPrimitive.Root;
|
|
9
9
|
const AlertDialogTrigger = AlertDialogPrimitive.Trigger;
|
|
10
10
|
const AlertDialogPortal = AlertDialogPrimitive.Portal;
|
|
11
|
-
const AlertDialogOverlay = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Overlay, { className: cn(
|
|
11
|
+
const AlertDialogOverlay = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Overlay, { className: cn('fixed inset-0 z-50 bg-[color:var(--scrim)] duration-[var(--motion-base)] ease-[var(--motion-ease)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0', className), ...props, ref: ref })));
|
|
12
12
|
AlertDialogOverlay.displayName = AlertDialogPrimitive.Overlay.displayName;
|
|
13
13
|
const AlertDialogContent = React.forwardRef(({ className, onOpenAutoFocus, onCloseAutoFocus, ...props }, ref) => {
|
|
14
14
|
const openerFocus = useOpenerFocus({ onOpenAutoFocus, onCloseAutoFocus });
|
|
15
|
-
return (_jsxs(AlertDialogPortal, { children: [_jsx(AlertDialogOverlay, {}), _jsx(AlertDialogPrimitive.Content, { ref: ref, className: cn(
|
|
15
|
+
return (_jsxs(AlertDialogPortal, { children: [_jsx(AlertDialogOverlay, {}), _jsx(AlertDialogPrimitive.Content, { ref: ref, className: cn('fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 elevation-raised duration-[var(--motion-base)] ease-[var(--motion-ease)] data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg [&>*]:min-w-0', className), ...props, ...openerFocus })] }));
|
|
16
16
|
});
|
|
17
17
|
AlertDialogContent.displayName = AlertDialogPrimitive.Content.displayName;
|
|
18
|
-
const AlertDialogHeader = ({ className, ...props }) => (_jsx("div", { className: cn(
|
|
19
|
-
AlertDialogHeader.displayName =
|
|
20
|
-
const AlertDialogFooter = ({ className, ...props }) => (_jsx("div", { className: cn(
|
|
21
|
-
AlertDialogFooter.displayName =
|
|
22
|
-
const AlertDialogTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Title, { ref: ref, className: cn(
|
|
18
|
+
const AlertDialogHeader = ({ className, ...props }) => (_jsx("div", { className: cn('flex flex-col space-y-2 text-center sm:text-left', className), ...props }));
|
|
19
|
+
AlertDialogHeader.displayName = 'AlertDialogHeader';
|
|
20
|
+
const AlertDialogFooter = ({ className, ...props }) => (_jsx("div", { className: cn('flex flex-col-reverse sm:flex-row sm:justify-end sm:space-x-2', className), ...props }));
|
|
21
|
+
AlertDialogFooter.displayName = 'AlertDialogFooter';
|
|
22
|
+
const AlertDialogTitle = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Title, { ref: ref, className: cn('text-lg font-semibold break-words', className), ...props })));
|
|
23
23
|
AlertDialogTitle.displayName = AlertDialogPrimitive.Title.displayName;
|
|
24
|
-
const AlertDialogDescription = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Description, { ref: ref, className: cn(
|
|
24
|
+
const AlertDialogDescription = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Description, { ref: ref, className: cn('text-sm text-muted-foreground break-words', className), ...props })));
|
|
25
25
|
AlertDialogDescription.displayName = AlertDialogPrimitive.Description.displayName;
|
|
26
26
|
const AlertDialogAction = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Action, { ref: ref, className: cn(buttonVariants(), className), ...props })));
|
|
27
27
|
AlertDialogAction.displayName = AlertDialogPrimitive.Action.displayName;
|
|
28
|
-
const AlertDialogCancel = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Cancel, { ref: ref, className: cn(buttonVariants({ variant:
|
|
28
|
+
const AlertDialogCancel = React.forwardRef(({ className, ...props }, ref) => (_jsx(AlertDialogPrimitive.Cancel, { ref: ref, className: cn(buttonVariants({ variant: 'outline' }), 'mt-2 sm:mt-0', className), ...props })));
|
|
29
29
|
AlertDialogCancel.displayName = AlertDialogPrimitive.Cancel.displayName;
|
|
30
30
|
export { AlertDialog, AlertDialogPortal, AlertDialogOverlay, AlertDialogTrigger, AlertDialogContent, AlertDialogHeader, AlertDialogFooter, AlertDialogTitle, AlertDialogDescription, AlertDialogAction, AlertDialogCancel, };
|
|
31
31
|
//# sourceMappingURL=alert-dialog.js.map
|