@burdenoff/fe-libs 2026.623.5 → 2026.623.6

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.
@@ -19,6 +19,7 @@ export { useLocalStorage } from './useLocalStorage';
19
19
  export { useSessionStorage } from './useSessionStorage';
20
20
  export { usePrevious, usePreviousDistinct, usePreviousHistory } from './usePrevious';
21
21
  export { useToggle, useToggleObject, useConditionalToggle } from './useToggle';
22
+ export { usePagination, type UsePaginationOptions, type UsePaginationResult } from './usePagination';
22
23
  export { useAsync, useAsyncImmediate, type UseAsyncReturn } from './useAsync';
23
24
  export * from '../keyboard';
24
25
  export * from '../logger';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAc,MAAM,OAAO,CAAC;AACnC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,oBAAoB,8CAA2D,CAAC;AAE7F;;GAEG;AACH,wBAAgB,uBAAuB,2BAMtC;AAOD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAG/E,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAG9E,cAAc,aAAa,CAAC;AAG5B,cAAc,WAAW,CAAC;AAG1B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAGjG,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAc,MAAM,OAAO,CAAC;AACnC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAEvD;;GAEG;AACH,eAAO,MAAM,oBAAoB,8CAA2D,CAAC;AAE7F;;GAEG;AACH,wBAAgB,uBAAuB,2BAMtC;AAOD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AACnG,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAG1D,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,KAAK,oBAAoB,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AAGrG,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,KAAK,cAAc,EAAE,MAAM,YAAY,CAAC;AAG9E,cAAc,aAAa,CAAC;AAG5B,cAAc,WAAW,CAAC;AAG1B,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAGlC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAGlD,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,yBAAyB,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAGjG,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,GAC1B,MAAM,oBAAoB,CAAC;AAC5B,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,cAAc,EACd,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EACL,6BAA6B,EAC7B,mBAAmB,GACpB,MAAM,iCAAiC,CAAC"}
@@ -0,0 +1,20 @@
1
+ export interface UsePaginationOptions {
2
+ initialPage?: number;
3
+ initialPageSize?: number;
4
+ maxPageSize?: number;
5
+ }
6
+ export interface UsePaginationResult {
7
+ page: number;
8
+ pageSize: number;
9
+ limit: number;
10
+ offset: number;
11
+ pagination: {
12
+ limit: number;
13
+ offset: number;
14
+ };
15
+ setPage: (page: number) => void;
16
+ setPageSize: (pageSize: number) => void;
17
+ reset: () => void;
18
+ }
19
+ export declare function usePagination(options?: UsePaginationOptions): UsePaginationResult;
20
+ //# sourceMappingURL=usePagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usePagination.d.ts","sourceRoot":"","sources":["../../../src/shared/hooks/usePagination.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE;QACV,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB;AAOD,wBAAgB,aAAa,CAAC,OAAO,GAAE,oBAAyB,GAAG,mBAAmB,CAiCrF"}
@@ -0,0 +1,29 @@
1
+ import { useState as e } from "react";
2
+ //#region src/shared/hooks/usePagination.ts
3
+ function t(e, t, n) {
4
+ return typeof e != "number" || !Number.isFinite(e) ? t : Math.min(Math.max(1, Math.floor(e)), n);
5
+ }
6
+ function n(n = {}) {
7
+ let r = t(n.maxPageSize, 100, 2 ** 53 - 1), i = t(n.initialPage, 1, 2 ** 53 - 1), a = t(n.initialPageSize, 50, r), [o, s] = e(i), [c, l] = e(a), u = (e) => {
8
+ s(t(e, 1, 2 ** 53 - 1));
9
+ }, d = (e) => {
10
+ l(t(e, a, r)), s(1);
11
+ }, f = () => {
12
+ s(i), l(a);
13
+ }, p = (o - 1) * c;
14
+ return {
15
+ page: o,
16
+ pageSize: c,
17
+ limit: c,
18
+ offset: p,
19
+ pagination: {
20
+ limit: c,
21
+ offset: p
22
+ },
23
+ setPage: u,
24
+ setPageSize: d,
25
+ reset: f
26
+ };
27
+ }
28
+ //#endregion
29
+ export { n as usePagination };
@@ -0,0 +1,68 @@
1
+ import { ArrowLeft as e, Compass as t, Home as n } from "lucide-react";
2
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
+ //#region src/shared/pages/NotFoundPage.tsx
4
+ function a({ code: a = 404, title: o = "Page not found", description: s = "The page you're looking for doesn't exist, moved, or the link is broken.", homeHref: c = "/", homeLabel: l = "Back to home", onGoHome: u, onGoBack: d }) {
5
+ return /* @__PURE__ */ i("div", {
6
+ className: "flex min-h-[60vh] w-full flex-col items-center justify-center px-6 py-16 text-center",
7
+ children: [
8
+ /* @__PURE__ */ i("div", {
9
+ className: "relative mb-8 flex items-center justify-center",
10
+ children: [/* @__PURE__ */ r("span", {
11
+ "aria-hidden": "true",
12
+ className: "select-none bg-gradient-to-b from-[var(--color-accent-soft)] to-transparent bg-clip-text font-bold leading-none text-transparent",
13
+ style: { fontSize: "clamp(7rem, 22vw, 12rem)" },
14
+ children: a
15
+ }), /* @__PURE__ */ r("span", {
16
+ className: "absolute flex size-20 items-center justify-center rounded-full border border-border-subtle bg-bg-elevated shadow-[var(--shadow-elevation-3)]",
17
+ children: /* @__PURE__ */ r(t, {
18
+ className: "size-9 text-action-primary-bg",
19
+ "aria-hidden": "true"
20
+ })
21
+ })]
22
+ }),
23
+ /* @__PURE__ */ i("p", {
24
+ className: "mb-1 text-sm font-semibold uppercase tracking-wider text-text-muted",
25
+ children: ["Error ", a]
26
+ }),
27
+ /* @__PURE__ */ r("h1", {
28
+ className: "mb-2 text-2xl font-semibold tracking-tight text-text-primary md:text-3xl",
29
+ children: o
30
+ }),
31
+ /* @__PURE__ */ r("p", {
32
+ className: "mb-8 max-w-md text-sm leading-6 text-text-secondary",
33
+ children: s
34
+ }),
35
+ /* @__PURE__ */ i("div", {
36
+ className: "flex flex-wrap items-center justify-center gap-3",
37
+ children: [u ? /* @__PURE__ */ i("button", {
38
+ type: "button",
39
+ onClick: u,
40
+ className: "inline-flex h-10 items-center gap-2 rounded-button bg-action-primary-bg px-5 text-sm font-medium text-action-primary-text shadow-elevation-1 transition-colors hover:bg-action-primary-bgHover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
41
+ children: [/* @__PURE__ */ r(n, {
42
+ className: "size-4",
43
+ "aria-hidden": "true"
44
+ }), l]
45
+ }) : /* @__PURE__ */ i("a", {
46
+ href: c,
47
+ className: "inline-flex h-10 items-center gap-2 rounded-button bg-action-primary-bg px-5 text-sm font-medium text-action-primary-text shadow-elevation-1 transition-colors hover:bg-action-primary-bgHover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
48
+ children: [/* @__PURE__ */ r(n, {
49
+ className: "size-4",
50
+ "aria-hidden": "true"
51
+ }), l]
52
+ }), /* @__PURE__ */ i("button", {
53
+ type: "button",
54
+ onClick: () => {
55
+ d ? d() : typeof window < "u" && window.history.back();
56
+ },
57
+ className: "inline-flex h-10 items-center gap-2 rounded-button border border-border-default bg-bg-surface px-5 text-sm font-medium text-text-primary transition-colors hover:bg-bg-sunken hover:border-border-strong focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--color-focus-ring)]",
58
+ children: [/* @__PURE__ */ r(e, {
59
+ className: "size-4",
60
+ "aria-hidden": "true"
61
+ }), "Go back"]
62
+ })]
63
+ })
64
+ ]
65
+ });
66
+ }
67
+ //#endregion
68
+ export { a as NotFoundPage };
@@ -4,4 +4,6 @@ export { LegalPage } from './LegalPage';
4
4
  export type { LegalPageProps } from './LegalPage';
5
5
  export { AiPage } from './AiPage';
6
6
  export type { AiPageProps } from './AiPage';
7
+ export { NotFoundPage } from './NotFoundPage';
8
+ export type { NotFoundPageProps } from './NotFoundPage';
7
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/shared/pages/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAEpD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAElD,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5C,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC"}
@@ -15,28 +15,29 @@ import { useLocalStorage as k } from "./shared/hooks/useLocalStorage.js";
15
15
  import { useSessionStorage as te } from "./shared/hooks/useSessionStorage.js";
16
16
  import { usePrevious as A, usePreviousDistinct as j, usePreviousHistory as M } from "./shared/hooks/usePrevious.js";
17
17
  import { useConditionalToggle as N, useToggle as P, useToggleObject as F } from "./shared/hooks/useToggle.js";
18
- import { useAsync as I, useAsyncImmediate as L } from "./shared/hooks/useAsync.js";
19
- import { MODIFIER_KEYS as R, PLATFORM_TYPES as z } from "./shared/keyboard/types.js";
20
- import { useKeyboardShortcuts as B } from "./shared/keyboard/useKeyboardShortcuts.js";
21
- import { useHotkeys as V } from "./shared/keyboard/useHotkeys.js";
22
- import { useShortcutHelp as H } from "./shared/keyboard/useShortcutHelp.js";
23
- import { GLOBAL_SHORTCUT_CATEGORIES as U, createGlobalShortcuts as W, getGlobalShortcutsByCategory as G, mergeShortcuts as K } from "./shared/keyboard/globalShortcuts.js";
18
+ import { usePagination as I } from "./shared/hooks/usePagination.js";
19
+ import { useAsync as L, useAsyncImmediate as R } from "./shared/hooks/useAsync.js";
20
+ import { MODIFIER_KEYS as z, PLATFORM_TYPES as B } from "./shared/keyboard/types.js";
21
+ import { useKeyboardShortcuts as V } from "./shared/keyboard/useKeyboardShortcuts.js";
22
+ import { useHotkeys as H } from "./shared/keyboard/useHotkeys.js";
23
+ import { useShortcutHelp as U } from "./shared/keyboard/useShortcutHelp.js";
24
+ import { GLOBAL_SHORTCUT_CATEGORIES as W, createGlobalShortcuts as G, getGlobalShortcutsByCategory as K, mergeShortcuts as q } from "./shared/keyboard/globalShortcuts.js";
24
25
  import "./shared-keyboard.js";
25
- import { useLogger as q } from "./shared/logger/useLogger.js";
26
+ import { useLogger as J } from "./shared/logger/useLogger.js";
26
27
  import "./shared-logger.js";
27
- import { useHasAnimated as J } from "./shared/hooks/useHasAnimated.js";
28
- import { useReferralAttribution as Y } from "./shared/hooks/useReferralAttribution.js";
29
- import { useRecordProductVisit as X } from "./shared/hooks/useRecordProductVisit.js";
30
- import { QUOTA_EXHAUSTED_EVENT as Z, dispatchQuotaExhausted as Q, useQuotaErrorToast as ne } from "./shared/hooks/useQuotaErrorToast.js";
31
- import { PLAN_USAGE_SNAPSHOT_EVENT as re, publishPlanUsageSnapshot as ie, useUpgradePrompt as ae } from "./shared/hooks/useUpgradePrompt.js";
32
- import { appendContextToPath as oe, useCurrentContextSearchParams as se } from "./shared/hooks/useCurrentContextSearchParams.js";
33
- import ce, { use as le } from "react";
28
+ import { useHasAnimated as Y } from "./shared/hooks/useHasAnimated.js";
29
+ import { useReferralAttribution as X } from "./shared/hooks/useReferralAttribution.js";
30
+ import { useRecordProductVisit as Z } from "./shared/hooks/useRecordProductVisit.js";
31
+ import { QUOTA_EXHAUSTED_EVENT as Q, dispatchQuotaExhausted as ne, useQuotaErrorToast as re } from "./shared/hooks/useQuotaErrorToast.js";
32
+ import { PLAN_USAGE_SNAPSHOT_EVENT as ie, publishPlanUsageSnapshot as ae, useUpgradePrompt as oe } from "./shared/hooks/useUpgradePrompt.js";
33
+ import { appendContextToPath as se, useCurrentContextSearchParams as ce } from "./shared/hooks/useCurrentContextSearchParams.js";
34
+ import le, { use as ue } from "react";
34
35
  //#region src/shared/hooks/index.ts
35
- var $ = ce.createContext(null);
36
- function ue() {
37
- let e = le($);
36
+ var $ = le.createContext(null);
37
+ function de() {
38
+ let e = ue($);
38
39
  if (!e) throw Error("useMicrofrontendContext must be used within a MicrofrontendProvider");
39
40
  return e;
40
41
  }
41
42
  //#endregion
42
- export { S as BREAKPOINTS, a as ConsoleTransport, U as GLOBAL_SHORTCUT_CATEGORIES, n as LogLevel, r as LogManager, ee as Logger, R as MODIFIER_KEYS, $ as MicrofrontendContext, re as PLAN_USAGE_SNAPSHOT_EVENT, z as PLATFORM_TYPES, Z as QUOTA_EXHAUSTED_EVENT, oe as appendContextToPath, W as createGlobalShortcuts, s as detectPlatform, Q as dispatchQuotaExhausted, c as formatKeyCombo, l as getDisplayKeysForPlatform, G as getGlobalShortcutsByCategory, u as getShortcutLabel, d as isMac, f as isMobileDevice, p as isTabletDevice, i as logManager, m as matchesKeyCombo, K as mergeShortcuts, h as normalizeKey, g as normalizePlatformCombo, _ as parseKeyCombo, ie as publishPlanUsageSnapshot, v as shouldEnableKeyboardShortcuts, y as shouldIgnoreShortcut, I as useAsync, L as useAsyncImmediate, C as useBreakpoint, N as useConditionalToggle, e as useCopyToClipboard, se as useCurrentContextSearchParams, b as useDebounce, J as useHasAnimated, V as useHotkeys, D as useKeyPress, O as useKeyboardShortcut, B as useKeyboardShortcuts, k as useLocalStorage, q as useLogger, t as useMediaQuery, ue as useMicrofrontendContext, w as useMobileBreakpoint, T as useOnClickOutside, E as useOnClickOutsideWithRef, o as usePWA, A as usePrevious, j as usePreviousDistinct, M as usePreviousHistory, ne as useQuotaErrorToast, X as useRecordProductVisit, Y as useReferralAttribution, te as useSessionStorage, H as useShortcutHelp, x as useThrottle, P as useToggle, F as useToggleObject, ae as useUpgradePrompt };
43
+ export { S as BREAKPOINTS, a as ConsoleTransport, W as GLOBAL_SHORTCUT_CATEGORIES, n as LogLevel, r as LogManager, ee as Logger, z as MODIFIER_KEYS, $ as MicrofrontendContext, ie as PLAN_USAGE_SNAPSHOT_EVENT, B as PLATFORM_TYPES, Q as QUOTA_EXHAUSTED_EVENT, se as appendContextToPath, G as createGlobalShortcuts, s as detectPlatform, ne as dispatchQuotaExhausted, c as formatKeyCombo, l as getDisplayKeysForPlatform, K as getGlobalShortcutsByCategory, u as getShortcutLabel, d as isMac, f as isMobileDevice, p as isTabletDevice, i as logManager, m as matchesKeyCombo, q as mergeShortcuts, h as normalizeKey, g as normalizePlatformCombo, _ as parseKeyCombo, ae as publishPlanUsageSnapshot, v as shouldEnableKeyboardShortcuts, y as shouldIgnoreShortcut, L as useAsync, R as useAsyncImmediate, C as useBreakpoint, N as useConditionalToggle, e as useCopyToClipboard, ce as useCurrentContextSearchParams, b as useDebounce, Y as useHasAnimated, H as useHotkeys, D as useKeyPress, O as useKeyboardShortcut, V as useKeyboardShortcuts, k as useLocalStorage, J as useLogger, t as useMediaQuery, de as useMicrofrontendContext, w as useMobileBreakpoint, T as useOnClickOutside, E as useOnClickOutsideWithRef, o as usePWA, I as usePagination, A as usePrevious, j as usePreviousDistinct, M as usePreviousHistory, re as useQuotaErrorToast, Z as useRecordProductVisit, X as useReferralAttribution, te as useSessionStorage, U as useShortcutHelp, x as useThrottle, P as useToggle, F as useToggleObject, oe as useUpgradePrompt };
@@ -1,4 +1,5 @@
1
1
  import { SearchPage as e } from "./shared/pages/SearchPage.js";
2
2
  import { LegalPage as t } from "./shared/pages/LegalPage.js";
3
3
  import { AiPage as n } from "./shared/pages/AiPage.js";
4
- export { n as AiPage, t as LegalPage, e as SearchPage };
4
+ import { NotFoundPage as r } from "./shared/pages/NotFoundPage.js";
5
+ export { n as AiPage, t as LegalPage, r as NotFoundPage, e as SearchPage };
package/dist/shared.js CHANGED
@@ -71,48 +71,49 @@ import { useLocalStorage as Gn } from "./shared/hooks/useLocalStorage.js";
71
71
  import { useSessionStorage as Kn } from "./shared/hooks/useSessionStorage.js";
72
72
  import { usePrevious as qn, usePreviousDistinct as Jn, usePreviousHistory as Yn } from "./shared/hooks/usePrevious.js";
73
73
  import { useConditionalToggle as Xn, useToggle as Zn, useToggleObject as Qn } from "./shared/hooks/useToggle.js";
74
- import { useAsync as $n, useAsyncImmediate as er } from "./shared/hooks/useAsync.js";
75
- import { MODIFIER_KEYS as tr, PLATFORM_TYPES as nr } from "./shared/keyboard/types.js";
76
- import { useKeyboardShortcuts as rr } from "./shared/keyboard/useKeyboardShortcuts.js";
77
- import { useHotkeys as ir } from "./shared/keyboard/useHotkeys.js";
78
- import { useShortcutHelp as ar } from "./shared/keyboard/useShortcutHelp.js";
79
- import { GLOBAL_SHORTCUT_CATEGORIES as or, createGlobalShortcuts as sr, getGlobalShortcutsByCategory as cr, mergeShortcuts as lr } from "./shared/keyboard/globalShortcuts.js";
80
- import { useLogger as ur } from "./shared/logger/useLogger.js";
81
- import { useHasAnimated as dr } from "./shared/hooks/useHasAnimated.js";
82
- import { useReferralAttribution as fr } from "./shared/hooks/useReferralAttribution.js";
83
- import { useRecordProductVisit as pr } from "./shared/hooks/useRecordProductVisit.js";
84
- import { QUOTA_EXHAUSTED_EVENT as mr, dispatchQuotaExhausted as hr, useQuotaErrorToast as gr } from "./shared/hooks/useQuotaErrorToast.js";
85
- import { PLAN_USAGE_SNAPSHOT_EVENT as _r, publishPlanUsageSnapshot as vr, useUpgradePrompt as yr } from "./shared/hooks/useUpgradePrompt.js";
86
- import { appendContextToPath as br, useCurrentContextSearchParams as xr } from "./shared/hooks/useCurrentContextSearchParams.js";
87
- import { MicrofrontendContext as Sr, useMicrofrontendContext as Cr } from "./shared-hooks.js";
88
- import { detectDeviceType as wr, getResponsiveSelector as Tr } from "./shared/tours/types.js";
89
- import { useTourPlayer as Er } from "./shared/tours/useTourPlayer.js";
90
- import { TourSpotlight as Dr } from "./shared/tours/TourSpotlight.js";
91
- import { TourTooltip as Or } from "./shared/tours/TourTooltip.js";
92
- import { TourPlayerProvider as kr, useIsTourPlaying as Ar, useStartTour as jr, useStopTour as Mr, useTourPlayerContext as Nr } from "./shared/tours/TourPlayerProvider.js";
93
- import { TourPlayer as Pr, TourTriggerButton as Fr, usePlayTour as Ir } from "./shared/tours/TourPlayer.js";
94
- import { getTourContextRank as Lr, getTourRouteCatalog as Rr, getTourRouteModules as zr, getTourRoutePages as Br, isTourVisibleForContext as Vr, normalizeTourPath as Hr, registerTourRouteCatalog as Ur, resolveTourTargetPath as Wr } from "./shared/tours/routeCatalog.js";
95
- import { withTourProgressStatus as Gr } from "./shared/tours/progress.js";
96
- import { ToursProvider as Kr, useAutoStartTour as qr, useSafeToursContext as Jr, useTours as Yr, useToursContext as Xr } from "./shared/tours/ToursContext.js";
97
- import { TourInitializer as Zr } from "./shared/tours/TourInitializer.js";
98
- import { AppShellProvider as Qr, resolveAppShellObservabilityConfig as $r } from "./shared/providers/AppShellProvider.js";
99
- import { MicrofrontendProvider as ei } from "./shared-providers.js";
100
- import { TourTrigger as ti } from "./shared/tours/TourTrigger.js";
74
+ import { usePagination as $n } from "./shared/hooks/usePagination.js";
75
+ import { useAsync as er, useAsyncImmediate as tr } from "./shared/hooks/useAsync.js";
76
+ import { MODIFIER_KEYS as nr, PLATFORM_TYPES as rr } from "./shared/keyboard/types.js";
77
+ import { useKeyboardShortcuts as ir } from "./shared/keyboard/useKeyboardShortcuts.js";
78
+ import { useHotkeys as ar } from "./shared/keyboard/useHotkeys.js";
79
+ import { useShortcutHelp as or } from "./shared/keyboard/useShortcutHelp.js";
80
+ import { GLOBAL_SHORTCUT_CATEGORIES as sr, createGlobalShortcuts as cr, getGlobalShortcutsByCategory as lr, mergeShortcuts as ur } from "./shared/keyboard/globalShortcuts.js";
81
+ import { useLogger as dr } from "./shared/logger/useLogger.js";
82
+ import { useHasAnimated as fr } from "./shared/hooks/useHasAnimated.js";
83
+ import { useReferralAttribution as pr } from "./shared/hooks/useReferralAttribution.js";
84
+ import { useRecordProductVisit as mr } from "./shared/hooks/useRecordProductVisit.js";
85
+ import { QUOTA_EXHAUSTED_EVENT as hr, dispatchQuotaExhausted as gr, useQuotaErrorToast as _r } from "./shared/hooks/useQuotaErrorToast.js";
86
+ import { PLAN_USAGE_SNAPSHOT_EVENT as vr, publishPlanUsageSnapshot as yr, useUpgradePrompt as br } from "./shared/hooks/useUpgradePrompt.js";
87
+ import { appendContextToPath as xr, useCurrentContextSearchParams as Sr } from "./shared/hooks/useCurrentContextSearchParams.js";
88
+ import { MicrofrontendContext as Cr, useMicrofrontendContext as wr } from "./shared-hooks.js";
89
+ import { detectDeviceType as Tr, getResponsiveSelector as Er } from "./shared/tours/types.js";
90
+ import { useTourPlayer as Dr } from "./shared/tours/useTourPlayer.js";
91
+ import { TourSpotlight as Or } from "./shared/tours/TourSpotlight.js";
92
+ import { TourTooltip as kr } from "./shared/tours/TourTooltip.js";
93
+ import { TourPlayerProvider as Ar, useIsTourPlaying as jr, useStartTour as Mr, useStopTour as Nr, useTourPlayerContext as Pr } from "./shared/tours/TourPlayerProvider.js";
94
+ import { TourPlayer as Fr, TourTriggerButton as Ir, usePlayTour as Lr } from "./shared/tours/TourPlayer.js";
95
+ import { getTourContextRank as Rr, getTourRouteCatalog as zr, getTourRouteModules as Br, getTourRoutePages as Vr, isTourVisibleForContext as Hr, normalizeTourPath as Ur, registerTourRouteCatalog as Wr, resolveTourTargetPath as Gr } from "./shared/tours/routeCatalog.js";
96
+ import { withTourProgressStatus as Kr } from "./shared/tours/progress.js";
97
+ import { ToursProvider as qr, useAutoStartTour as Jr, useSafeToursContext as Yr, useTours as Xr, useToursContext as Zr } from "./shared/tours/ToursContext.js";
98
+ import { TourInitializer as Qr } from "./shared/tours/TourInitializer.js";
99
+ import { AppShellProvider as $r, resolveAppShellObservabilityConfig as ei } from "./shared/providers/AppShellProvider.js";
100
+ import { MicrofrontendProvider as ti } from "./shared-providers.js";
101
+ import { TourTrigger as ni } from "./shared/tours/TourTrigger.js";
101
102
  import "./shared-tours.js";
102
- import { getNativeBridge as ni } from "./shared/native/bridge.js";
103
- import { getPlatform as ri, isAndroid as ii, isIOS as ai, isNative as oi, isWeb as si } from "./shared/native/platform.js";
104
- import { nativeConfirm as ci, nativeCopyText as li, nativeImpact as ui, nativeNotify as di, nativeOpenUrl as fi, nativeShare as pi, nativeToast as mi } from "./shared/native/consumers.js";
105
- import { SafeAreaView as hi } from "./shared/native/SafeAreaView.js";
106
- import { useNativePlatform as gi } from "./shared/native/hooks/useNativePlatform.js";
107
- import { useSafeArea as _i } from "./shared/native/hooks/useSafeArea.js";
108
- import { useNativeKeyboard as vi } from "./shared/native/hooks/useNativeKeyboard.js";
109
- import { useAppState as yi } from "./shared/native/hooks/useAppState.js";
110
- import { useDeviceInfo as bi } from "./shared/native/hooks/useDeviceInfo.js";
111
- import { useHaptics as xi } from "./shared/native/hooks/useHaptics.js";
112
- import { useStatusBar as Si } from "./shared/native/hooks/useStatusBar.js";
103
+ import { getNativeBridge as ri } from "./shared/native/bridge.js";
104
+ import { getPlatform as ii, isAndroid as ai, isIOS as oi, isNative as si, isWeb as ci } from "./shared/native/platform.js";
105
+ import { nativeConfirm as li, nativeCopyText as ui, nativeImpact as di, nativeNotify as fi, nativeOpenUrl as pi, nativeShare as mi, nativeToast as hi } from "./shared/native/consumers.js";
106
+ import { SafeAreaView as gi } from "./shared/native/SafeAreaView.js";
107
+ import { useNativePlatform as _i } from "./shared/native/hooks/useNativePlatform.js";
108
+ import { useSafeArea as vi } from "./shared/native/hooks/useSafeArea.js";
109
+ import { useNativeKeyboard as yi } from "./shared/native/hooks/useNativeKeyboard.js";
110
+ import { useAppState as bi } from "./shared/native/hooks/useAppState.js";
111
+ import { useDeviceInfo as xi } from "./shared/native/hooks/useDeviceInfo.js";
112
+ import { useHaptics as Si } from "./shared/native/hooks/useHaptics.js";
113
+ import { useStatusBar as Ci } from "./shared/native/hooks/useStatusBar.js";
113
114
  import "./shared-native.js";
114
115
  import "./shared/actors/index.js";
115
116
  //#region src/shared/index.ts
116
- var Ci = "1.0.0";
117
+ var wi = "1.0.0";
117
118
  //#endregion
118
- export { wn as ASSISTANT_WIDGET_TOGGLE_EVENT, zt as AccessDenied, At as ActorIdentity, Ne as ApolloClient, Pe as ApolloProvider, Yt as AppErrorBoundary, st as AppInitializer, Qr as AppShellProvider, Tn as AssistantWidget, ie as BACKEND_ERROR_EVENT, Rn as BREAKPOINTS, On as BackendAuditSink, Dn as BroadcastChannelSink, G as COMMON_SHELL_LESS_ROUTES, ae as CONNECTION_STATUS_EVENT, Kt as ConditionalShell, mt as ConsoleTransport, nn as ContextConversationWidget, Z as DEFAULT_PAGE_SIZE, K as DEFAULT_SHELL_CONFIG, En as DevtoolsSink, Nt as ErrorBoundary, Vt as ErrorFallback, jn as EventBusProvider, Ci as FE_SHARED_VERSION, Xt as FeatureFlagProvider, tn as FeatureGate, Q as GATEWAYS, or as GLOBAL_SHORTCUT_CATEGORIES, De as GatewayProvider, Fe as InMemoryCache, _n as KeyboardHelpDialogWrapper, Ht as LoadingFallback, ut as LogLevel, ft as LogManager, dt as Logger, tr as MODIFIER_KEYS, Sr as MicrofrontendContext, Gt as MicrofrontendErrorBoundary, ei as MicrofrontendProvider, An as OtelBrowserSink, _r as PLAN_USAGE_SNAPSHOT_EVENT, nr as PLATFORM_TYPES, V as PRODUCTS, H as PRODUCT_URLS, Jt as PWAInstallBanner, Ut as PageLoadingFallback, It as PermissionButton, Bt as PermissionDenied, Lt as PermissionGate, Rt as PermissionLink, bt as QUOTA_EXHAUSTED_CODE, mr as QUOTA_EXHAUSTED_EVENT, vn as QuotaMeter, xt as RESOURCE_CAP_EXCEEDED_CODE, Pt as RequireAuth, Ft as RequireGuest, kn as RybbitSink, xe as SSELink, nt as SSORedirectSpinner, St as STORAGE_QUOTA_EXCEEDED_CODE, hi as SafeAreaView, Wt as SectionLoadingFallback, Zr as TourInitializer, Pr as TourPlayer, kr as TourPlayerProvider, Dr as TourSpotlight, Or as TourTooltip, ti as TourTrigger, Fr as TourTriggerButton, Kr as ToursProvider, Ct as UPGRADE_ERROR_CODES, yn as UPGRADE_PROMPT_EVENT, Sn as UpgradeInlineBanner, bn as UpgradePromptModal, Me as WsLink, r as alertTokens, br as appendContextToPath, He as attemptTokenRefresh, jt as buildActorFallback, wt as buildQuotaExhaustedMessage, m as capitalizeFirst, h as capitalizeWords, i as categoryTokens, rt as checkRemoteSLO, it as checkSLO, Ue as clearAuthSessionStorage, at as clearLocalAuthState, Je as clearSSoCookie, Ye as clearShellSsoCookies, ht as clearUserContext, kt as cn, n as createApolloClient, Mn as createEventBus, sr as createGlobalShortcuts, Se as createGraphQLClient, vt as createProfileScopedStorage, wr as detectDeviceType, rn as detectPlatform, oe as dispatchBackendErrorEvent, hr as dispatchQuotaExhausted, xn as dispatchUpgradePrompt, se as extractBackendError, Tt as extractQuotaExhaustedExtensions, Et as extractUpgradeErrorExtensions, g as formatBytes, _ as formatCompactNumber, v as formatCurrency, y as formatCurrencyCompact, b as formatDate, x as formatDateTime, S as formatDuration, an as formatKeyCombo, C as formatList, w as formatNumber, T as formatOrdinal, E as formatPercentage, D as formatRelativeTime, O as formatTime, a as getAlertTokens, o as getCategoryTokens, on as getDisplayKeysForPlatform, $ as getGatewayConfig, ee as getGatewayUrl, Ce as getGlobalClient, cr as getGlobalShortcutsByCategory, te as getGraphQLEndpoint, ni as getNativeBridge, ri as getPlatform, U as getProductUrl, W as getProductsWithUrls, yt as getProfileScopedKey, s as getProgressTokens, Tr as getResponsiveSelector, ot as getSSORedirectUrl, Xe as getSSoCookie, q as getShellConfig, sn as getShortcutLabel, c as getStatusBadgeTokens, l as getStatusTokens, pe as getStoredAuthToken, me as getStoredLocale, he as getStoredOrganizationId, ge as getStoredProjectId, _e as getStoredWorkspaceId, ve as getStoredWorkspaceToken, Lr as getTourContextRank, Rr as getTourRouteCatalog, zr as getTourRouteModules, Br as getTourRoutePages, u as getTrendTokens, we as getWorkspaceClient, ne as getWorkspaceTokenPayload, Ie as gql, ye as graphqlFetch, We as hasAuthGraphQLErrors, Te as initializeAppClients, gt as initializeLogger, L as installGatewayFetchRewrite, ce as isAbortError, ii as isAndroid, Ge as isAuthGraphQLError, Ke as isAuthNetworkError, le as isBackendErrorDisplay, P as isChunkLoadError, ai as isIOS, cn as isMac, ln as isMobileDevice, oi as isNative, Dt as isQuotaExhaustedError, Ze as isSharedSsoCookieDomain, J as isShellLessRoute, un as isTabletDevice, Vr as isTourVisibleForContext, ue as isTransportError, Qe as isTrustedSsoOrigin, Ot as isUpgradeError, si as isWeb, re as isWorkspaceTokenValidForContext, F as lazyWithRetry, pt as logManager, de as markConnectionHealthy, dn as matchesKeyCombo, lr as mergeShortcuts, ci as nativeConfirm, li as nativeCopyText, ui as nativeImpact, di as nativeNotify, fi as nativeOpenUrl, pi as nativeShare, mi as nativeToast, fn as normalizeKey, pn as normalizePlatformCombo, Hr as normalizeTourPath, mn as parseKeyCombo, k as pluralize, d as progressTokens, vr as publishPlanUsageSnapshot, $e as readShellSsoCookie, qe as redirectToLogin, Ur as registerTourRouteCatalog, Ee as resetAppClients, $r as resolveAppShellObservabilityConfig, B as resolveAuthBridgeConfig, R as resolveGatewayBases, be as resolveGatewayUrl, I as resolveGatewayUrls, Wr as resolveTourTargetPath, et as setSSoCookie, tt as setShellSsoCookies, _t as setUserContext, hn as shouldEnableKeyboardShortcuts, gn as shouldIgnoreShortcut, Y as shouldShowBreadcrumb, X as shouldShowSidebar, fe as shouldToastBackendError, A as slugify, f as statusTokens, z as suppressConsole, j as toCamelCase, M as toPascalCase, p as trendTokens, N as truncateText, Mt as useActorProfiles, Le as useApolloClient, yi as useAppState, $n as useAsync, er as useAsyncImmediate, qr as useAutoStartTour, zn as useBreakpoint, Xn as useConditionalToggle, e as useCopyToClipboard, xr as useCurrentContextSearchParams, In as useDebounce, bi as useDeviceInfo, Nn as useEvent, Pn as useEventBus, Fn as useEventEmitter, Qt as useFeatureFlag, $t as useFeatureFlagDetails, en as useFeatureFlagValue, Zt as useFeatureFlags, Oe as useGateway, ke as useGatewayClient, xi as useHaptics, dr as useHasAnimated, ir as useHotkeys, Ar as useIsTourPlaying, Un as useKeyPress, Wn as useKeyboardShortcut, rr as useKeyboardShortcuts, Re as useLazyQuery, Gn as useLocalStorage, ur as useLogger, t as useMediaQuery, Cr as useMicrofrontendContext, Bn as useMobileBreakpoint, ze as useMutation, vi as useNativeKeyboard, gi as useNativePlatform, Vn as useOnClickOutside, Hn as useOnClickOutsideWithRef, qt as usePWA, Ir as usePlayTour, qn as usePrevious, Jn as usePreviousDistinct, Yn as usePreviousHistory, Be as useQuery, gr as useQuotaErrorToast, pr as useRecordProductVisit, fr as useReferralAttribution, ct as useRegistryHelpers, _i as useSafeArea, Ae as useSafeGateway, je as useSafeGatewayClient, Jr as useSafeToursContext, Kn as useSessionStorage, lt as useShellNavigate, ar as useShortcutHelp, jr as useStartTour, Si as useStatusBar, Mr as useStopTour, Ve as useSubscription, Ln as useThrottle, Zn as useToggle, Qn as useToggleObject, Er as useTourPlayer, Nr as useTourPlayerContext, Yr as useTours, Xr as useToursContext, yr as useUpgradePrompt, Cn as useVoiceInput, Gr as withTourProgressStatus };
119
+ export { wn as ASSISTANT_WIDGET_TOGGLE_EVENT, zt as AccessDenied, At as ActorIdentity, Ne as ApolloClient, Pe as ApolloProvider, Yt as AppErrorBoundary, st as AppInitializer, $r as AppShellProvider, Tn as AssistantWidget, ie as BACKEND_ERROR_EVENT, Rn as BREAKPOINTS, On as BackendAuditSink, Dn as BroadcastChannelSink, G as COMMON_SHELL_LESS_ROUTES, ae as CONNECTION_STATUS_EVENT, Kt as ConditionalShell, mt as ConsoleTransport, nn as ContextConversationWidget, Z as DEFAULT_PAGE_SIZE, K as DEFAULT_SHELL_CONFIG, En as DevtoolsSink, Nt as ErrorBoundary, Vt as ErrorFallback, jn as EventBusProvider, wi as FE_SHARED_VERSION, Xt as FeatureFlagProvider, tn as FeatureGate, Q as GATEWAYS, sr as GLOBAL_SHORTCUT_CATEGORIES, De as GatewayProvider, Fe as InMemoryCache, _n as KeyboardHelpDialogWrapper, Ht as LoadingFallback, ut as LogLevel, ft as LogManager, dt as Logger, nr as MODIFIER_KEYS, Cr as MicrofrontendContext, Gt as MicrofrontendErrorBoundary, ti as MicrofrontendProvider, An as OtelBrowserSink, vr as PLAN_USAGE_SNAPSHOT_EVENT, rr as PLATFORM_TYPES, V as PRODUCTS, H as PRODUCT_URLS, Jt as PWAInstallBanner, Ut as PageLoadingFallback, It as PermissionButton, Bt as PermissionDenied, Lt as PermissionGate, Rt as PermissionLink, bt as QUOTA_EXHAUSTED_CODE, hr as QUOTA_EXHAUSTED_EVENT, vn as QuotaMeter, xt as RESOURCE_CAP_EXCEEDED_CODE, Pt as RequireAuth, Ft as RequireGuest, kn as RybbitSink, xe as SSELink, nt as SSORedirectSpinner, St as STORAGE_QUOTA_EXCEEDED_CODE, gi as SafeAreaView, Wt as SectionLoadingFallback, Qr as TourInitializer, Fr as TourPlayer, Ar as TourPlayerProvider, Or as TourSpotlight, kr as TourTooltip, ni as TourTrigger, Ir as TourTriggerButton, qr as ToursProvider, Ct as UPGRADE_ERROR_CODES, yn as UPGRADE_PROMPT_EVENT, Sn as UpgradeInlineBanner, bn as UpgradePromptModal, Me as WsLink, r as alertTokens, xr as appendContextToPath, He as attemptTokenRefresh, jt as buildActorFallback, wt as buildQuotaExhaustedMessage, m as capitalizeFirst, h as capitalizeWords, i as categoryTokens, rt as checkRemoteSLO, it as checkSLO, Ue as clearAuthSessionStorage, at as clearLocalAuthState, Je as clearSSoCookie, Ye as clearShellSsoCookies, ht as clearUserContext, kt as cn, n as createApolloClient, Mn as createEventBus, cr as createGlobalShortcuts, Se as createGraphQLClient, vt as createProfileScopedStorage, Tr as detectDeviceType, rn as detectPlatform, oe as dispatchBackendErrorEvent, gr as dispatchQuotaExhausted, xn as dispatchUpgradePrompt, se as extractBackendError, Tt as extractQuotaExhaustedExtensions, Et as extractUpgradeErrorExtensions, g as formatBytes, _ as formatCompactNumber, v as formatCurrency, y as formatCurrencyCompact, b as formatDate, x as formatDateTime, S as formatDuration, an as formatKeyCombo, C as formatList, w as formatNumber, T as formatOrdinal, E as formatPercentage, D as formatRelativeTime, O as formatTime, a as getAlertTokens, o as getCategoryTokens, on as getDisplayKeysForPlatform, $ as getGatewayConfig, ee as getGatewayUrl, Ce as getGlobalClient, lr as getGlobalShortcutsByCategory, te as getGraphQLEndpoint, ri as getNativeBridge, ii as getPlatform, U as getProductUrl, W as getProductsWithUrls, yt as getProfileScopedKey, s as getProgressTokens, Er as getResponsiveSelector, ot as getSSORedirectUrl, Xe as getSSoCookie, q as getShellConfig, sn as getShortcutLabel, c as getStatusBadgeTokens, l as getStatusTokens, pe as getStoredAuthToken, me as getStoredLocale, he as getStoredOrganizationId, ge as getStoredProjectId, _e as getStoredWorkspaceId, ve as getStoredWorkspaceToken, Rr as getTourContextRank, zr as getTourRouteCatalog, Br as getTourRouteModules, Vr as getTourRoutePages, u as getTrendTokens, we as getWorkspaceClient, ne as getWorkspaceTokenPayload, Ie as gql, ye as graphqlFetch, We as hasAuthGraphQLErrors, Te as initializeAppClients, gt as initializeLogger, L as installGatewayFetchRewrite, ce as isAbortError, ai as isAndroid, Ge as isAuthGraphQLError, Ke as isAuthNetworkError, le as isBackendErrorDisplay, P as isChunkLoadError, oi as isIOS, cn as isMac, ln as isMobileDevice, si as isNative, Dt as isQuotaExhaustedError, Ze as isSharedSsoCookieDomain, J as isShellLessRoute, un as isTabletDevice, Hr as isTourVisibleForContext, ue as isTransportError, Qe as isTrustedSsoOrigin, Ot as isUpgradeError, ci as isWeb, re as isWorkspaceTokenValidForContext, F as lazyWithRetry, pt as logManager, de as markConnectionHealthy, dn as matchesKeyCombo, ur as mergeShortcuts, li as nativeConfirm, ui as nativeCopyText, di as nativeImpact, fi as nativeNotify, pi as nativeOpenUrl, mi as nativeShare, hi as nativeToast, fn as normalizeKey, pn as normalizePlatformCombo, Ur as normalizeTourPath, mn as parseKeyCombo, k as pluralize, d as progressTokens, yr as publishPlanUsageSnapshot, $e as readShellSsoCookie, qe as redirectToLogin, Wr as registerTourRouteCatalog, Ee as resetAppClients, ei as resolveAppShellObservabilityConfig, B as resolveAuthBridgeConfig, R as resolveGatewayBases, be as resolveGatewayUrl, I as resolveGatewayUrls, Gr as resolveTourTargetPath, et as setSSoCookie, tt as setShellSsoCookies, _t as setUserContext, hn as shouldEnableKeyboardShortcuts, gn as shouldIgnoreShortcut, Y as shouldShowBreadcrumb, X as shouldShowSidebar, fe as shouldToastBackendError, A as slugify, f as statusTokens, z as suppressConsole, j as toCamelCase, M as toPascalCase, p as trendTokens, N as truncateText, Mt as useActorProfiles, Le as useApolloClient, bi as useAppState, er as useAsync, tr as useAsyncImmediate, Jr as useAutoStartTour, zn as useBreakpoint, Xn as useConditionalToggle, e as useCopyToClipboard, Sr as useCurrentContextSearchParams, In as useDebounce, xi as useDeviceInfo, Nn as useEvent, Pn as useEventBus, Fn as useEventEmitter, Qt as useFeatureFlag, $t as useFeatureFlagDetails, en as useFeatureFlagValue, Zt as useFeatureFlags, Oe as useGateway, ke as useGatewayClient, Si as useHaptics, fr as useHasAnimated, ar as useHotkeys, jr as useIsTourPlaying, Un as useKeyPress, Wn as useKeyboardShortcut, ir as useKeyboardShortcuts, Re as useLazyQuery, Gn as useLocalStorage, dr as useLogger, t as useMediaQuery, wr as useMicrofrontendContext, Bn as useMobileBreakpoint, ze as useMutation, yi as useNativeKeyboard, _i as useNativePlatform, Vn as useOnClickOutside, Hn as useOnClickOutsideWithRef, qt as usePWA, $n as usePagination, Lr as usePlayTour, qn as usePrevious, Jn as usePreviousDistinct, Yn as usePreviousHistory, Be as useQuery, _r as useQuotaErrorToast, mr as useRecordProductVisit, pr as useReferralAttribution, ct as useRegistryHelpers, vi as useSafeArea, Ae as useSafeGateway, je as useSafeGatewayClient, Yr as useSafeToursContext, Kn as useSessionStorage, lt as useShellNavigate, or as useShortcutHelp, Mr as useStartTour, Ci as useStatusBar, Nr as useStopTour, Ve as useSubscription, Ln as useThrottle, Zn as useToggle, Qn as useToggleObject, Dr as useTourPlayer, Pr as useTourPlayerContext, Xr as useTours, Zr as useToursContext, br as useUpgradePrompt, Cn as useVoiceInput, Kr as withTourProgressStatus };
@@ -4,6 +4,7 @@ export { OptionalFields, type OptionalFieldsProps } from './optional-fields';
4
4
  export { BottomSheet, BottomSheetClose, BottomSheetContent, BottomSheetDescription, BottomSheetFooter, BottomSheetHeader, BottomSheetTitle, BottomSheetTrigger, type BottomSheetContentProps, type BottomSheetProps, } from './bottom-sheet';
5
5
  export { ResponsiveDialog, ResponsiveDialogClose, ResponsiveDialogContent, ResponsiveDialogDescription, ResponsiveDialogFooter, ResponsiveDialogHeader, ResponsiveDialogTitle, ResponsiveDialogTrigger, type ResponsiveDialogContentProps, } from './responsive-dialog';
6
6
  export { ResponsiveTable, type ResponsiveTableColumn, type ResponsiveTableColumnPriority, type ResponsiveTableProps, } from './responsive-table';
7
+ export { Pagination, type PaginationProps } from './pagination';
7
8
  export { Stepper, type StepperProps, type StepperStep } from './stepper';
8
9
  export { ResponsiveStack, type ResponsiveStackProps } from './responsive-stack';
9
10
  export { EmptyState, type EmptyStateProps } from './empty-state';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/ui/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ export interface PaginationProps {
2
+ page: number;
3
+ pageSize: number;
4
+ totalItems?: number | null;
5
+ totalPages?: number | null;
6
+ hasNextPage?: boolean;
7
+ hasPreviousPage?: boolean;
8
+ loading?: boolean;
9
+ pageSizeOptions?: readonly number[];
10
+ onPageChange: (page: number) => void;
11
+ onPageSizeChange?: (pageSize: number) => void;
12
+ className?: string;
13
+ }
14
+ export declare function Pagination({ page, pageSize, totalItems, totalPages, hasNextPage, hasPreviousPage, loading, pageSizeOptions, onPageChange, onPageSizeChange, className, }: PaginationProps): import("react/jsx-runtime").JSX.Element;
15
+ //# sourceMappingURL=pagination.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/ui/pagination.tsx"],"names":[],"mappings":"AAMA,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,gBAAgB,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAkBD,wBAAgB,UAAU,CAAC,EACzB,IAAI,EACJ,QAAQ,EACR,UAAU,EACV,UAAU,EACV,WAAW,EACX,eAAe,EACf,OAAe,EACf,eAAmC,EACnC,YAAY,EACZ,gBAAgB,EAChB,SAAS,GACV,EAAE,eAAe,2CAoFjB"}
@@ -0,0 +1,86 @@
1
+ import { cn as e } from "../lib/utils.js";
2
+ import { Button as t } from "./button.js";
3
+ import { Select as n, SelectContent as r, SelectItem as i, SelectTrigger as a, SelectValue as o } from "./select.js";
4
+ import { ChevronLeft as s, ChevronRight as c } from "lucide-react";
5
+ import { jsx as l, jsxs as u } from "react/jsx-runtime";
6
+ //#region src/ui/pagination.tsx
7
+ function d(e, t, n) {
8
+ return typeof e == "number" && Number.isFinite(e) ? Math.max(1, Math.floor(e)) : typeof t == "number" && Number.isFinite(t) && n > 0 ? Math.max(1, Math.ceil(t / n)) : null;
9
+ }
10
+ function f(e, t) {
11
+ if (t == null) return [e];
12
+ let n = Math.max(1, Math.min(e - 2, t - 4)), r = Math.min(t, n + 4);
13
+ return Array.from({ length: r - n + 1 }, (e, t) => n + t);
14
+ }
15
+ function p({ page: p, pageSize: m, totalItems: h, totalPages: g, hasNextPage: _, hasPreviousPage: v, loading: y = !1, pageSizeOptions: b = [
16
+ 10,
17
+ 25,
18
+ 50,
19
+ 100
20
+ ], onPageChange: x, onPageSizeChange: S, className: C }) {
21
+ let w = Math.max(1, Math.floor(p)), T = d(g, h, m), E = !y && (v ?? w > 1), D = !y && (_ ?? (T == null ? !1 : w < T)), O = f(w, T), k = typeof h == "number" && h > 0 ? (w - 1) * m + 1 : null, A = typeof h == "number" && h > 0 && k != null ? Math.min(h, k + m - 1) : null;
22
+ return /* @__PURE__ */ u("nav", {
23
+ "aria-label": "Pagination",
24
+ className: e("flex flex-col gap-3 rounded-card border border-border-subtle bg-bg-surface p-3 sm:flex-row sm:items-center sm:justify-between", C),
25
+ children: [/* @__PURE__ */ l("div", {
26
+ className: "text-sm text-text-secondary",
27
+ "aria-live": "polite",
28
+ children: k != null && A != null && h != null ? /* @__PURE__ */ u("span", { children: [
29
+ "Showing ",
30
+ k.toLocaleString(),
31
+ "-",
32
+ A.toLocaleString(),
33
+ " of ",
34
+ h.toLocaleString()
35
+ ] }) : /* @__PURE__ */ u("span", { children: ["Page ", w.toLocaleString()] })
36
+ }), /* @__PURE__ */ u("div", {
37
+ className: "flex flex-wrap items-center gap-2",
38
+ children: [
39
+ S ? /* @__PURE__ */ u(n, {
40
+ value: String(m),
41
+ onValueChange: (e) => S(Number(e)),
42
+ disabled: y,
43
+ children: [/* @__PURE__ */ l(a, {
44
+ className: "h-8 w-[6.5rem] rounded-button",
45
+ "aria-label": "Rows per page",
46
+ children: /* @__PURE__ */ l(o, {})
47
+ }), /* @__PURE__ */ l(r, { children: b.map((e) => /* @__PURE__ */ u(i, {
48
+ value: String(e),
49
+ children: [e, " / page"]
50
+ }, e)) })]
51
+ }) : null,
52
+ /* @__PURE__ */ u(t, {
53
+ type: "button",
54
+ variant: "outline",
55
+ size: "sm",
56
+ onClick: () => x(Math.max(1, w - 1)),
57
+ disabled: !E,
58
+ children: [/* @__PURE__ */ l(s, { className: "size-4" }), "Previous"]
59
+ }),
60
+ /* @__PURE__ */ l("div", {
61
+ className: "flex items-center gap-1",
62
+ "aria-label": "Pages",
63
+ children: O.map((e) => /* @__PURE__ */ l(t, {
64
+ type: "button",
65
+ variant: e === w ? "default" : "outline",
66
+ size: "icon-sm",
67
+ "aria-current": e === w ? "page" : void 0,
68
+ onClick: () => x(e),
69
+ disabled: y || e === w,
70
+ children: e
71
+ }, e))
72
+ }),
73
+ /* @__PURE__ */ u(t, {
74
+ type: "button",
75
+ variant: "outline",
76
+ size: "sm",
77
+ onClick: () => x(w + 1),
78
+ disabled: !D,
79
+ children: ["Next", /* @__PURE__ */ l(c, { className: "size-4" })]
80
+ })
81
+ ]
82
+ })]
83
+ });
84
+ }
85
+ //#endregion
86
+ export { p as Pagination };
package/dist/ui.js CHANGED
@@ -6,29 +6,30 @@ import { BottomSheet as _, BottomSheetClose as v, BottomSheetContent as y, Botto
6
6
  import { ResponsiveDialog as T, ResponsiveDialogClose as E, ResponsiveDialogContent as D, ResponsiveDialogDescription as O, ResponsiveDialogFooter as k, ResponsiveDialogHeader as A, ResponsiveDialogTitle as j, ResponsiveDialogTrigger as M } from "./ui/responsive-dialog.js";
7
7
  import { Table as N, TableBody as P, TableCaption as F, TableCell as I, TableFooter as L, TableHead as R, TableHeader as z, TableRow as B } from "./ui/table.js";
8
8
  import { ResponsiveTable as V } from "./ui/responsive-table.js";
9
- import { Stepper as H } from "./ui/stepper.js";
10
- import { ResponsiveStack as U } from "./ui/responsive-stack.js";
11
- import { EmptyState as W } from "./ui/empty-state.js";
12
- import { Button as G, buttonVariants as K } from "./ui/button.js";
13
- import { AlertDialog as q, AlertDialogAction as J, AlertDialogCancel as Y, AlertDialogContent as X, AlertDialogDescription as Z, AlertDialogFooter as Q, AlertDialogHeader as $, AlertDialogOverlay as ee, AlertDialogPortal as te, AlertDialogTitle as ne, AlertDialogTrigger as re } from "./ui/alert-dialog.js";
14
- import { Badge as ie, badgeVariants as ae } from "./ui/badge.js";
15
- import { Card as oe, CardContent as se, CardDescription as ce, CardFooter as le, CardHeader as ue, CardTitle as de } from "./ui/card.js";
16
- import { Checkbox as fe } from "./ui/checkbox.js";
17
- import { Command as pe, CommandDialog as me, CommandEmpty as he, CommandGroup as ge, CommandInput as _e, CommandItem as ve, CommandList as ye, CommandSeparator as be, CommandShortcut as xe } from "./ui/command.js";
18
- import { DropdownMenu as Se, DropdownMenuCheckboxItem as Ce, DropdownMenuContent as we, DropdownMenuGroup as Te, DropdownMenuItem as Ee, DropdownMenuLabel as De, DropdownMenuPortal as Oe, DropdownMenuRadioGroup as ke, DropdownMenuRadioItem as Ae, DropdownMenuSeparator as je, DropdownMenuShortcut as Me, DropdownMenuSub as Ne, DropdownMenuSubContent as Pe, DropdownMenuSubTrigger as Fe, DropdownMenuTrigger as Ie } from "./ui/dropdown-menu.js";
19
- import { Input as Le } from "./ui/input.js";
20
- import { Label as Re } from "./ui/label.js";
21
- import { Popover as ze, PopoverAnchor as Be, PopoverContent as Ve, PopoverTrigger as He } from "./ui/popover.js";
22
- import { ScrollArea as Ue, ScrollBar as We } from "./ui/scroll-area.js";
23
- import { Select as Ge, SelectContent as Ke, SelectGroup as qe, SelectItem as Je, SelectLabel as Ye, SelectScrollDownButton as Xe, SelectScrollUpButton as Ze, SelectSeparator as Qe, SelectTrigger as $e, SelectValue as et } from "./ui/select.js";
24
- import { Separator as tt } from "./ui/separator.js";
25
- import { Sheet as nt, SheetClose as rt, SheetContent as it, SheetDescription as at, SheetFooter as ot, SheetHeader as st, SheetTitle as ct, SheetTrigger as lt } from "./ui/sheet.js";
26
- import { Skeleton as ut } from "./ui/skeleton.js";
27
- import { Toaster as dt } from "./ui/sonner.js";
28
- import { Spinner as ft } from "./ui/spinner.js";
29
- import { Switch as pt } from "./ui/switch.js";
30
- import { Tabs as mt, TabsContent as ht, TabsList as gt, TabsTrigger as _t } from "./ui/tabs.js";
31
- import { Textarea as vt } from "./ui/textarea.js";
32
- import { Tooltip as yt, TooltipContent as bt, TooltipProvider as xt, TooltipTrigger as St } from "./ui/tooltip.js";
33
- import { PageContainer as Ct } from "./ui/page-container.js";
34
- export { e as Accordion, t as AccordionContent, n as AccordionItem, r as AccordionTrigger, q as AlertDialog, J as AlertDialogAction, Y as AlertDialogCancel, X as AlertDialogContent, Z as AlertDialogDescription, Q as AlertDialogFooter, $ as AlertDialogHeader, ee as AlertDialogOverlay, te as AlertDialogPortal, ne as AlertDialogTitle, re as AlertDialogTrigger, ie as Badge, _ as BottomSheet, v as BottomSheetClose, y as BottomSheetContent, b as BottomSheetDescription, x as BottomSheetFooter, S as BottomSheetHeader, C as BottomSheetTitle, w as BottomSheetTrigger, G as Button, oe as Card, se as CardContent, ce as CardDescription, le as CardFooter, ue as CardHeader, de as CardTitle, fe as Checkbox, pe as Command, me as CommandDialog, he as CommandEmpty, ge as CommandGroup, _e as CommandInput, ve as CommandItem, ye as CommandList, be as CommandSeparator, xe as CommandShortcut, i as Dialog, a as DialogClose, o as DialogContent, s as DialogDescription, c as DialogFooter, l as DialogHeader, u as DialogOverlay, d as DialogPortal, f as DialogTitle, p as DialogTrigger, Se as DropdownMenu, Ce as DropdownMenuCheckboxItem, we as DropdownMenuContent, Te as DropdownMenuGroup, Ee as DropdownMenuItem, De as DropdownMenuLabel, Oe as DropdownMenuPortal, ke as DropdownMenuRadioGroup, Ae as DropdownMenuRadioItem, je as DropdownMenuSeparator, Me as DropdownMenuShortcut, Ne as DropdownMenuSub, Pe as DropdownMenuSubContent, Fe as DropdownMenuSubTrigger, Ie as DropdownMenuTrigger, W as EmptyState, m as EntityIdModal, Le as Input, Re as Label, g as OptionalFields, Ct as PageContainer, ze as Popover, Be as PopoverAnchor, Ve as PopoverContent, He as PopoverTrigger, T as ResponsiveDialog, E as ResponsiveDialogClose, D as ResponsiveDialogContent, O as ResponsiveDialogDescription, k as ResponsiveDialogFooter, A as ResponsiveDialogHeader, j as ResponsiveDialogTitle, M as ResponsiveDialogTrigger, U as ResponsiveStack, V as ResponsiveTable, Ue as ScrollArea, We as ScrollBar, Ge as Select, Ke as SelectContent, qe as SelectGroup, Je as SelectItem, Ye as SelectLabel, Xe as SelectScrollDownButton, Ze as SelectScrollUpButton, Qe as SelectSeparator, $e as SelectTrigger, et as SelectValue, tt as Separator, nt as Sheet, rt as SheetClose, it as SheetContent, at as SheetDescription, ot as SheetFooter, st as SheetHeader, ct as SheetTitle, lt as SheetTrigger, ut as Skeleton, ft as Spinner, H as Stepper, pt as Switch, N as Table, P as TableBody, F as TableCaption, I as TableCell, L as TableFooter, R as TableHead, z as TableHeader, B as TableRow, mt as Tabs, ht as TabsContent, gt as TabsList, _t as TabsTrigger, vt as Textarea, dt as Toaster, yt as Tooltip, bt as TooltipContent, xt as TooltipProvider, St as TooltipTrigger, ae as badgeVariants, K as buttonVariants, h as useEntityIdModal };
9
+ import { Button as H, buttonVariants as U } from "./ui/button.js";
10
+ import { Select as W, SelectContent as G, SelectGroup as K, SelectItem as q, SelectLabel as J, SelectScrollDownButton as Y, SelectScrollUpButton as X, SelectSeparator as Z, SelectTrigger as Q, SelectValue as $ } from "./ui/select.js";
11
+ import { Pagination as ee } from "./ui/pagination.js";
12
+ import { Stepper as te } from "./ui/stepper.js";
13
+ import { ResponsiveStack as ne } from "./ui/responsive-stack.js";
14
+ import { EmptyState as re } from "./ui/empty-state.js";
15
+ import { AlertDialog as ie, AlertDialogAction as ae, AlertDialogCancel as oe, AlertDialogContent as se, AlertDialogDescription as ce, AlertDialogFooter as le, AlertDialogHeader as ue, AlertDialogOverlay as de, AlertDialogPortal as fe, AlertDialogTitle as pe, AlertDialogTrigger as me } from "./ui/alert-dialog.js";
16
+ import { Badge as he, badgeVariants as ge } from "./ui/badge.js";
17
+ import { Card as _e, CardContent as ve, CardDescription as ye, CardFooter as be, CardHeader as xe, CardTitle as Se } from "./ui/card.js";
18
+ import { Checkbox as Ce } from "./ui/checkbox.js";
19
+ import { Command as we, CommandDialog as Te, CommandEmpty as Ee, CommandGroup as De, CommandInput as Oe, CommandItem as ke, CommandList as Ae, CommandSeparator as je, CommandShortcut as Me } from "./ui/command.js";
20
+ import { DropdownMenu as Ne, DropdownMenuCheckboxItem as Pe, DropdownMenuContent as Fe, DropdownMenuGroup as Ie, DropdownMenuItem as Le, DropdownMenuLabel as Re, DropdownMenuPortal as ze, DropdownMenuRadioGroup as Be, DropdownMenuRadioItem as Ve, DropdownMenuSeparator as He, DropdownMenuShortcut as Ue, DropdownMenuSub as We, DropdownMenuSubContent as Ge, DropdownMenuSubTrigger as Ke, DropdownMenuTrigger as qe } from "./ui/dropdown-menu.js";
21
+ import { Input as Je } from "./ui/input.js";
22
+ import { Label as Ye } from "./ui/label.js";
23
+ import { Popover as Xe, PopoverAnchor as Ze, PopoverContent as Qe, PopoverTrigger as $e } from "./ui/popover.js";
24
+ import { ScrollArea as et, ScrollBar as tt } from "./ui/scroll-area.js";
25
+ import { Separator as nt } from "./ui/separator.js";
26
+ import { Sheet as rt, SheetClose as it, SheetContent as at, SheetDescription as ot, SheetFooter as st, SheetHeader as ct, SheetTitle as lt, SheetTrigger as ut } from "./ui/sheet.js";
27
+ import { Skeleton as dt } from "./ui/skeleton.js";
28
+ import { Toaster as ft } from "./ui/sonner.js";
29
+ import { Spinner as pt } from "./ui/spinner.js";
30
+ import { Switch as mt } from "./ui/switch.js";
31
+ import { Tabs as ht, TabsContent as gt, TabsList as _t, TabsTrigger as vt } from "./ui/tabs.js";
32
+ import { Textarea as yt } from "./ui/textarea.js";
33
+ import { Tooltip as bt, TooltipContent as xt, TooltipProvider as St, TooltipTrigger as Ct } from "./ui/tooltip.js";
34
+ import { PageContainer as wt } from "./ui/page-container.js";
35
+ export { e as Accordion, t as AccordionContent, n as AccordionItem, r as AccordionTrigger, ie as AlertDialog, ae as AlertDialogAction, oe as AlertDialogCancel, se as AlertDialogContent, ce as AlertDialogDescription, le as AlertDialogFooter, ue as AlertDialogHeader, de as AlertDialogOverlay, fe as AlertDialogPortal, pe as AlertDialogTitle, me as AlertDialogTrigger, he as Badge, _ as BottomSheet, v as BottomSheetClose, y as BottomSheetContent, b as BottomSheetDescription, x as BottomSheetFooter, S as BottomSheetHeader, C as BottomSheetTitle, w as BottomSheetTrigger, H as Button, _e as Card, ve as CardContent, ye as CardDescription, be as CardFooter, xe as CardHeader, Se as CardTitle, Ce as Checkbox, we as Command, Te as CommandDialog, Ee as CommandEmpty, De as CommandGroup, Oe as CommandInput, ke as CommandItem, Ae as CommandList, je as CommandSeparator, Me as CommandShortcut, i as Dialog, a as DialogClose, o as DialogContent, s as DialogDescription, c as DialogFooter, l as DialogHeader, u as DialogOverlay, d as DialogPortal, f as DialogTitle, p as DialogTrigger, Ne as DropdownMenu, Pe as DropdownMenuCheckboxItem, Fe as DropdownMenuContent, Ie as DropdownMenuGroup, Le as DropdownMenuItem, Re as DropdownMenuLabel, ze as DropdownMenuPortal, Be as DropdownMenuRadioGroup, Ve as DropdownMenuRadioItem, He as DropdownMenuSeparator, Ue as DropdownMenuShortcut, We as DropdownMenuSub, Ge as DropdownMenuSubContent, Ke as DropdownMenuSubTrigger, qe as DropdownMenuTrigger, re as EmptyState, m as EntityIdModal, Je as Input, Ye as Label, g as OptionalFields, wt as PageContainer, ee as Pagination, Xe as Popover, Ze as PopoverAnchor, Qe as PopoverContent, $e as PopoverTrigger, T as ResponsiveDialog, E as ResponsiveDialogClose, D as ResponsiveDialogContent, O as ResponsiveDialogDescription, k as ResponsiveDialogFooter, A as ResponsiveDialogHeader, j as ResponsiveDialogTitle, M as ResponsiveDialogTrigger, ne as ResponsiveStack, V as ResponsiveTable, et as ScrollArea, tt as ScrollBar, W as Select, G as SelectContent, K as SelectGroup, q as SelectItem, J as SelectLabel, Y as SelectScrollDownButton, X as SelectScrollUpButton, Z as SelectSeparator, Q as SelectTrigger, $ as SelectValue, nt as Separator, rt as Sheet, it as SheetClose, at as SheetContent, ot as SheetDescription, st as SheetFooter, ct as SheetHeader, lt as SheetTitle, ut as SheetTrigger, dt as Skeleton, pt as Spinner, te as Stepper, mt as Switch, N as Table, P as TableBody, F as TableCaption, I as TableCell, L as TableFooter, R as TableHead, z as TableHeader, B as TableRow, ht as Tabs, gt as TabsContent, _t as TabsList, vt as TabsTrigger, yt as Textarea, ft as Toaster, bt as Tooltip, xt as TooltipContent, St as TooltipProvider, Ct as TooltipTrigger, ge as badgeVariants, U as buttonVariants, h as useEntityIdModal };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@burdenoff/fe-libs",
3
- "version": "2026.623.5",
3
+ "version": "2026.623.6",
4
4
  "description": "Burdenoff frontend primitives and domain libraries",
5
5
  "type": "module",
6
6
  "imports": {