@wheelhouse/ui 0.2.1 → 0.2.3

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.
Files changed (199) hide show
  1. package/dist/blocks/columns/columns-types.d.ts +40 -0
  2. package/dist/blocks/columns/columns-types.d.ts.map +1 -0
  3. package/dist/blocks/columns/columns-types.js +10 -0
  4. package/dist/blocks/columns/columns-utils.d.ts +13 -0
  5. package/dist/blocks/columns/columns-utils.d.ts.map +1 -0
  6. package/dist/blocks/columns/columns-utils.js +85 -0
  7. package/dist/blocks/columns/columns.d.ts +3 -0
  8. package/dist/blocks/columns/columns.d.ts.map +1 -0
  9. package/dist/blocks/columns/columns.js +79 -0
  10. package/dist/blocks/columns/columns.stories.d.ts +12 -0
  11. package/dist/blocks/columns/columns.stories.d.ts.map +1 -0
  12. package/dist/blocks/columns/columns.stories.js +67 -0
  13. package/dist/blocks/columns/index.d.ts +6 -0
  14. package/dist/blocks/columns/index.d.ts.map +1 -0
  15. package/dist/blocks/columns/index.js +3 -0
  16. package/dist/blocks/date-selector/date-selector-context.d.ts.map +1 -0
  17. package/dist/blocks/date-selector/date-selector-default-i18n.d.ts +10 -0
  18. package/dist/blocks/date-selector/date-selector-default-i18n.d.ts.map +1 -0
  19. package/dist/blocks/date-selector/date-selector-default-i18n.js +29 -0
  20. package/dist/blocks/date-selector/date-selector-i18n-resources.d.ts +11 -0
  21. package/dist/blocks/date-selector/date-selector-i18n-resources.d.ts.map +1 -0
  22. package/dist/blocks/date-selector/date-selector-i18n-resources.js +248 -0
  23. package/dist/blocks/date-selector/date-selector-i18n.shared.d.ts +12 -0
  24. package/dist/blocks/date-selector/date-selector-i18n.shared.d.ts.map +1 -0
  25. package/dist/blocks/date-selector/date-selector-i18n.shared.js +84 -0
  26. package/dist/{components → blocks}/date-selector/date-selector-parts.d.ts +9 -0
  27. package/dist/blocks/date-selector/date-selector-parts.d.ts.map +1 -0
  28. package/dist/{components → blocks}/date-selector/date-selector-parts.js +21 -6
  29. package/dist/{components → blocks}/date-selector/date-selector-types.d.ts +70 -0
  30. package/dist/blocks/date-selector/date-selector-types.d.ts.map +1 -0
  31. package/dist/{components → blocks}/date-selector/date-selector-types.js +22 -0
  32. package/dist/blocks/date-selector/date-selector-value.d.ts +81 -0
  33. package/dist/blocks/date-selector/date-selector-value.d.ts.map +1 -0
  34. package/dist/blocks/date-selector/date-selector-value.js +423 -0
  35. package/dist/{components → blocks}/date-selector/date-selector.d.ts +1 -1
  36. package/dist/blocks/date-selector/date-selector.d.ts.map +1 -0
  37. package/dist/blocks/date-selector/date-selector.js +191 -0
  38. package/dist/{components → blocks}/date-selector/date-selector.stories.d.ts +14 -0
  39. package/dist/blocks/date-selector/date-selector.stories.d.ts.map +1 -0
  40. package/dist/blocks/date-selector/date-selector.stories.js +299 -0
  41. package/dist/blocks/date-selector/index.d.ts +11 -0
  42. package/dist/blocks/date-selector/index.d.ts.map +1 -0
  43. package/dist/blocks/date-selector/index.js +8 -0
  44. package/dist/{components → blocks}/date-selector/use-date-selector.d.ts +4 -3
  45. package/dist/blocks/date-selector/use-date-selector.d.ts.map +1 -0
  46. package/dist/{components → blocks}/date-selector/use-date-selector.js +14 -8
  47. package/dist/blocks/index.d.ts +2 -0
  48. package/dist/blocks/index.d.ts.map +1 -1
  49. package/dist/blocks/index.js +2 -0
  50. package/dist/blocks/navigation/index.d.ts +4 -1
  51. package/dist/blocks/navigation/index.d.ts.map +1 -1
  52. package/dist/blocks/navigation/index.js +2 -1
  53. package/dist/blocks/navigation/navigation-types.d.ts +60 -0
  54. package/dist/blocks/navigation/navigation-types.d.ts.map +1 -0
  55. package/dist/blocks/navigation/navigation-types.js +1 -0
  56. package/dist/blocks/navigation/navigation.d.ts +9 -0
  57. package/dist/blocks/navigation/navigation.d.ts.map +1 -0
  58. package/dist/blocks/navigation/navigation.demo.d.ts +4 -0
  59. package/dist/blocks/navigation/navigation.demo.d.ts.map +1 -0
  60. package/dist/blocks/navigation/navigation.demo.js +46 -0
  61. package/dist/blocks/navigation/navigation.js +98 -0
  62. package/dist/blocks/navigation/navigation.stories.d.ts +14 -0
  63. package/dist/blocks/navigation/navigation.stories.d.ts.map +1 -0
  64. package/dist/blocks/navigation/navigation.stories.js +16 -0
  65. package/dist/components/accordion/accordion.stories.js +1 -1
  66. package/dist/components/alert/alert.stories.js +1 -1
  67. package/dist/components/alert-dialog/alert-dialog.stories.js +1 -1
  68. package/dist/components/aspect-ratio/aspect-ratio.stories.js +1 -1
  69. package/dist/components/avatar/avatar.stories.js +1 -1
  70. package/dist/components/badge/badge.d.ts +1 -1
  71. package/dist/components/badge/badge.stories.js +1 -1
  72. package/dist/components/breadcrumb/breadcrumb.stories.js +1 -1
  73. package/dist/components/button/button.d.ts +2 -2
  74. package/dist/components/button/button.stories.js +1 -1
  75. package/dist/components/button-group/button-group.d.ts +10 -4
  76. package/dist/components/button-group/button-group.d.ts.map +1 -1
  77. package/dist/components/button-group/button-group.js +15 -3
  78. package/dist/components/button-group/button-group.stories.js +1 -1
  79. package/dist/components/button-group/index.d.ts +2 -2
  80. package/dist/components/button-group/index.d.ts.map +1 -1
  81. package/dist/components/button-group/index.js +1 -1
  82. package/dist/components/calendar/calendar.stories.js +1 -1
  83. package/dist/components/card/card.stories.js +1 -1
  84. package/dist/components/checkbox/checkbox.stories.js +1 -1
  85. package/dist/components/collapsible/collapsible.stories.js +1 -1
  86. package/dist/components/combobox/combobox.stories.js +1 -1
  87. package/dist/components/command/command.stories.js +1 -1
  88. package/dist/components/context-menu/context-menu.stories.js +1 -1
  89. package/dist/components/dialog/dialog.stories.js +1 -1
  90. package/dist/components/direction/direction.stories.js +1 -1
  91. package/dist/components/drawer/drawer.stories.js +1 -1
  92. package/dist/components/dropdown-menu/dropdown-menu.d.ts +9 -2
  93. package/dist/components/dropdown-menu/dropdown-menu.d.ts.map +1 -1
  94. package/dist/components/dropdown-menu/dropdown-menu.js +4 -1
  95. package/dist/components/dropdown-menu/dropdown-menu.stories.js +1 -1
  96. package/dist/components/dropdown-menu/index.d.ts +2 -2
  97. package/dist/components/dropdown-menu/index.d.ts.map +1 -1
  98. package/dist/components/dropdown-menu/index.js +1 -1
  99. package/dist/components/empty/empty.stories.js +1 -1
  100. package/dist/components/field/field.stories.js +1 -1
  101. package/dist/components/filters/filter-date-metric-value.d.ts +32 -0
  102. package/dist/components/filters/filter-date-metric-value.d.ts.map +1 -0
  103. package/dist/components/filters/filter-date-metric-value.js +331 -0
  104. package/dist/components/filters/filters-defaults.d.ts +4 -0
  105. package/dist/components/filters/filters-defaults.d.ts.map +1 -1
  106. package/dist/components/filters/filters-defaults.js +59 -1
  107. package/dist/components/filters/filters-i18n-resources.d.ts +277 -0
  108. package/dist/components/filters/filters-i18n-resources.d.ts.map +1 -0
  109. package/dist/components/filters/filters-i18n-resources.js +276 -0
  110. package/dist/components/filters/filters-i18n.shared.d.ts +16 -0
  111. package/dist/components/filters/filters-i18n.shared.d.ts.map +1 -0
  112. package/dist/components/filters/filters-i18n.shared.js +111 -0
  113. package/dist/components/filters/filters-types.d.ts +33 -1
  114. package/dist/components/filters/filters-types.d.ts.map +1 -1
  115. package/dist/components/filters/filters-utils.d.ts +28 -1
  116. package/dist/components/filters/filters-utils.d.ts.map +1 -1
  117. package/dist/components/filters/filters-utils.js +102 -0
  118. package/dist/components/filters/filters.d.ts +21 -3
  119. package/dist/components/filters/filters.d.ts.map +1 -1
  120. package/dist/components/filters/filters.js +493 -290
  121. package/dist/components/filters/filters.stories.d.ts +107 -2
  122. package/dist/components/filters/filters.stories.d.ts.map +1 -1
  123. package/dist/components/filters/filters.stories.js +364 -29
  124. package/dist/components/filters/index.d.ts +3 -1
  125. package/dist/components/filters/index.d.ts.map +1 -1
  126. package/dist/components/filters/index.js +3 -1
  127. package/dist/components/frame/frame.d.ts +1 -1
  128. package/dist/components/frame/frame.stories.js +1 -1
  129. package/dist/components/hover-card/hover-card.stories.js +1 -1
  130. package/dist/components/index.d.ts +0 -1
  131. package/dist/components/index.d.ts.map +1 -1
  132. package/dist/components/index.js +0 -1
  133. package/dist/components/input/input.stories.js +1 -1
  134. package/dist/components/input-group/input-group.d.ts +2 -2
  135. package/dist/components/input-group/input-group.stories.js +1 -1
  136. package/dist/components/item/item.d.ts +2 -2
  137. package/dist/components/item/item.stories.js +1 -1
  138. package/dist/components/kbd/kbd.stories.js +1 -1
  139. package/dist/components/label/label.stories.js +1 -1
  140. package/dist/components/menubar/menubar.stories.js +1 -1
  141. package/dist/components/native-select/native-select.stories.js +1 -1
  142. package/dist/components/navigation-menu/navigation-menu.stories.js +1 -1
  143. package/dist/components/pagination/pagination.stories.js +1 -1
  144. package/dist/components/popover/popover.stories.js +1 -1
  145. package/dist/components/progress/progress.stories.js +1 -1
  146. package/dist/components/radio-group/radio-group.stories.js +1 -1
  147. package/dist/components/resizable/resizable.stories.js +1 -1
  148. package/dist/components/scroll-area/scroll-area.stories.js +1 -1
  149. package/dist/components/select/select.stories.js +1 -1
  150. package/dist/components/separator/separator.stories.js +1 -1
  151. package/dist/components/sheet/sheet.stories.js +1 -1
  152. package/dist/components/slider/slider.stories.js +1 -1
  153. package/dist/components/sonner/sonner.stories.js +1 -1
  154. package/dist/components/sortable/sortable.stories.js +1 -1
  155. package/dist/components/spinner/spinner.stories.js +1 -1
  156. package/dist/components/status-indicator/status-indicator.stories.js +1 -1
  157. package/dist/components/switch/switch.stories.js +1 -1
  158. package/dist/components/tabs/tabs.d.ts +1 -1
  159. package/dist/components/tabs/tabs.stories.js +1 -1
  160. package/dist/components/text/text.d.ts +1 -1
  161. package/dist/components/text/text.stories.js +1 -1
  162. package/dist/components/textarea/textarea.stories.js +1 -1
  163. package/dist/components/toggle/toggle.stories.js +1 -1
  164. package/dist/components/toggle-group/toggle-group.stories.js +1 -1
  165. package/dist/components/tooltip/tooltip.stories.js +1 -1
  166. package/dist/index.d.ts +1 -1
  167. package/dist/index.d.ts.map +1 -1
  168. package/dist/index.js +1 -1
  169. package/dist/tsconfig.tsbuildinfo +1 -1
  170. package/llms.txt +8 -10
  171. package/package.json +6 -2
  172. package/dist/blocks/navigation/pattern-1/index.d.ts +0 -3
  173. package/dist/blocks/navigation/pattern-1/index.d.ts.map +0 -1
  174. package/dist/blocks/navigation/pattern-1/index.js +0 -1
  175. package/dist/blocks/navigation/pattern-1/pattern-1.config.d.ts +0 -47
  176. package/dist/blocks/navigation/pattern-1/pattern-1.config.d.ts.map +0 -1
  177. package/dist/blocks/navigation/pattern-1/pattern-1.config.js +0 -55
  178. package/dist/blocks/navigation/pattern-1/pattern-1.d.ts +0 -7
  179. package/dist/blocks/navigation/pattern-1/pattern-1.d.ts.map +0 -1
  180. package/dist/blocks/navigation/pattern-1/pattern-1.js +0 -50
  181. package/dist/blocks/navigation/pattern-1/pattern-1.stories.d.ts +0 -16
  182. package/dist/blocks/navigation/pattern-1/pattern-1.stories.d.ts.map +0 -1
  183. package/dist/blocks/navigation/pattern-1/pattern-1.stories.js +0 -20
  184. package/dist/components/date-selector/date-selector-context.d.ts.map +0 -1
  185. package/dist/components/date-selector/date-selector-parts.d.ts.map +0 -1
  186. package/dist/components/date-selector/date-selector-types.d.ts.map +0 -1
  187. package/dist/components/date-selector/date-selector-value.d.ts +0 -47
  188. package/dist/components/date-selector/date-selector-value.d.ts.map +0 -1
  189. package/dist/components/date-selector/date-selector-value.js +0 -183
  190. package/dist/components/date-selector/date-selector.d.ts.map +0 -1
  191. package/dist/components/date-selector/date-selector.js +0 -144
  192. package/dist/components/date-selector/date-selector.stories.d.ts.map +0 -1
  193. package/dist/components/date-selector/date-selector.stories.js +0 -144
  194. package/dist/components/date-selector/index.d.ts +0 -7
  195. package/dist/components/date-selector/index.d.ts.map +0 -1
  196. package/dist/components/date-selector/index.js +0 -5
  197. package/dist/components/date-selector/use-date-selector.d.ts.map +0 -1
  198. /package/dist/{components → blocks}/date-selector/date-selector-context.d.ts +0 -0
  199. /package/dist/{components → blocks}/date-selector/date-selector-context.js +0 -0
package/llms.txt CHANGED
@@ -4,7 +4,7 @@
4
4
  Wheelhouse React component library: Base UI primitives, shadcn-style patterns, Tailwind CSS v4, CVA for variants. Published as ESM with TypeScript declarations (`dist/`).
5
5
 
6
6
  ## Package entry points (`package.json` → `exports`)
7
- - **`@wheelhouse/ui`** — components, **blocks** (composed patterns), and `cn` from `src/index.ts` (dev: TS sources; prod: `dist/index.js` + `.d.ts`).
7
+ - **`@wheelhouse/ui`** — primitives from `src/components/`, composed **blocks** from `src/blocks/` (e.g. `DateSelector`, `Navigation`), and `cn` from `src/index.ts` (dev: TS sources; prod: `dist/index.js` + `.d.ts`).
8
8
  - **`@wheelhouse/ui/globals.css`** — CSS entry for tokens, Tailwind, and theme wiring (`src/styles/globals.css`).
9
9
 
10
10
  ## Stack & peers
@@ -15,19 +15,17 @@ Wheelhouse React component library: Base UI primitives, shadcn-style patterns, T
15
15
  ## Consuming apps
16
16
  1. `@import '@wheelhouse/ui/globals.css';`
17
17
  2. With Tailwind v4, `@source` the published bundle (see `README.md`).
18
- 3. `import { Button } from '@wheelhouse/ui'` (and other named exports, including blocks such as `NavigationPattern1`).
18
+ 3. `import { Button, Navigation } from '@wheelhouse/ui'` (named exports from `src/components/index.ts` and `src/blocks/index.ts`).
19
19
 
20
20
  ## Full documentation (LLM-friendly)
21
21
  Canonical narrative, examples, and props live in the **Wheelhouse docs** app (`apps/docs` in this monorepo). When deployed, it exposes `/llms.txt` (page index), `/llms-full.txt` (concatenated markdown), and `/llms-raw.mdx/...` (per-page markdown). Use your docs base URL or run the docs app locally — this file is only a short offline pointer.
22
22
 
23
- ## Blocks (composed patterns under `src/blocks/`)
24
- Higher-level layouts built from componentsimport from `@wheelhouse/ui` like primitives. Source lives next to optional colocated config (nav labels, URLs, menus).
23
+ ## Blocks (`src/blocks/`)
24
+ Composed UI built from primitivesre-exported from the package root alongside components:
25
25
 
26
- | Block | Export | Source (monorepo) | Docs slug |
27
- | --- | --- | --- | --- |
28
- | Navigation — pattern 1 | `NavigationPattern1` | `src/blocks/navigation/pattern-1/pattern-1.tsx` (+ `pattern-1.config.ts` for nav data) | `/docs/blocks/navigation-pattern-1` |
26
+ date-selector (`DateSelector`, `useDateSelector`, …), navigation (`Navigation`; pass `primary` and ordered `secondary` — optional `search` / `notifications`, `menu`, `account`)
29
27
 
30
- ## Component modules (barrels under `src/components/`)
31
- Named exports are grouped by folder. Alphabetical list of barrels re-exported from `@wheelhouse/ui`:
28
+ ## Component modules (`src/components/`)
29
+ Primitives and smaller patterns. Alphabetical list of barrels re-exported from `@wheelhouse/ui`:
32
30
 
33
- accordion, alert, alert-dialog, aspect-ratio, avatar, badge, breadcrumb, button, button-group, calendar, card, checkbox, collapsible, command, combobox, context-menu, date-selector, dialog, direction, drawer, dropdown-menu, empty, field, filters, frame, hover-card, input, input-group, item, kbd, label, menubar, native-select, navigation-menu, pagination, popover, progress, radio-group, resizable, scroll-area, select, separator, sheet, slider, sonner, sortable, spinner, status-indicator, switch, tabs, text, textarea, toggle, toggle-group, tooltip
31
+ accordion, alert, alert-dialog, aspect-ratio, avatar, badge, breadcrumb, button, button-group, calendar, card, checkbox, collapsible, command, combobox, context-menu, dialog, direction, drawer, dropdown-menu, empty, field, filters, frame, hover-card, input, input-group, item, kbd, label, menubar, native-select, navigation-menu, pagination, popover, progress, radio-group, resizable, scroll-area, select, separator, sheet, slider, sonner, sortable, spinner, status-indicator, switch, tabs, text, textarea, toggle, toggle-group, tooltip
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wheelhouse/ui",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "publishConfig": {
@@ -10,11 +10,11 @@
10
10
  "@dnd-kit/core": "^6.3.1",
11
11
  "@dnd-kit/sortable": "^10.0.0",
12
12
  "@dnd-kit/utilities": "^3.2.2",
13
- "lucide-react": "^0.469.0",
14
13
  "class-variance-authority": "^0.7.1",
15
14
  "clsx": "^2.1.1",
16
15
  "cmdk": "^1.1.1",
17
16
  "date-fns": "^4.1.0",
17
+ "lucide-react": "^0.469.0",
18
18
  "react-day-picker": "^9.14.0",
19
19
  "react-resizable-panels": "^4.9.0",
20
20
  "shadcn": "^4.1.0",
@@ -27,8 +27,10 @@
27
27
  },
28
28
  "peerDependencies": {
29
29
  "@base-ui/react": ">=1.0.0",
30
+ "i18next": ">=23.0.0",
30
31
  "react": ">=19.0.0",
31
32
  "react-dom": ">=19.0.0",
33
+ "react-i18next": ">=15.0.0",
32
34
  "tailwindcss": ">=4.0.0"
33
35
  },
34
36
  "devDependencies": {
@@ -47,8 +49,10 @@
47
49
  "eslint-plugin-react-hooks": "^7.0.1",
48
50
  "eslint-plugin-react-refresh": "^0.4.24",
49
51
  "globals": "^17.2.0",
52
+ "i18next": "^26.0.5",
50
53
  "jsdom": "^27.0.0",
51
54
  "react": "^19.2.4",
55
+ "react-i18next": "^17.0.4",
52
56
  "react-dom": "^19.2.4",
53
57
  "tailwindcss": "^4.1.18",
54
58
  "typescript": "^5.9.3",
@@ -1,3 +0,0 @@
1
- export { NavigationPattern1 } from './pattern-1';
2
- export type { NavigationPattern1Props } from './pattern-1';
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/blocks/navigation/pattern-1/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACjD,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC"}
@@ -1 +0,0 @@
1
- export { NavigationPattern1 } from './pattern-1';
@@ -1,47 +0,0 @@
1
- /**
2
- * Navigation data for {@link NavigationPattern1}. Single source for desktop + mobile.
3
- */
4
- export type NavBadge = {
5
- label: string;
6
- };
7
- /** Simple top-level link (Dashboard, Performance, …). */
8
- export type Pattern1PrimaryLink = {
9
- kind: 'link';
10
- label: string;
11
- href: string;
12
- /** Current / highlighted item (e.g. Dashboard). */
13
- active?: boolean;
14
- badge?: NavBadge;
15
- };
16
- /** Expandable group (Portfolio + children). */
17
- export type Pattern1PrimarySubmenu = {
18
- kind: 'submenu';
19
- label: string;
20
- items: readonly {
21
- label: string;
22
- href: string;
23
- }[];
24
- };
25
- export type Pattern1PrimaryItem = Pattern1PrimaryLink | Pattern1PrimarySubmenu;
26
- /** Left cluster: primary app routes. */
27
- export declare const pattern1PrimaryNav: readonly Pattern1PrimaryItem[];
28
- export type Pattern1SupportItem = {
29
- label: string;
30
- href: string;
31
- };
32
- /** Right cluster: Help / Support menu. */
33
- export declare const pattern1SupportMenu: {
34
- triggerLabel: string;
35
- items: readonly Pattern1SupportItem[];
36
- };
37
- export type Pattern1UserLink = {
38
- label: string;
39
- href: string;
40
- };
41
- /** Right cluster: Account menu — grouped sections + log out. */
42
- export declare const pattern1UserMenu: {
43
- triggerLabel: string;
44
- sections: readonly (readonly Pattern1UserLink[])[];
45
- logOut: Pattern1UserLink;
46
- };
47
- //# sourceMappingURL=pattern-1.config.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-1.config.d.ts","sourceRoot":"","sources":["../../../../src/blocks/navigation/pattern-1/pattern-1.config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,QAAQ,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEzC,yDAAyD;AACzD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,QAAQ,CAAC;CACpB,CAAC;AAEF,+CAA+C;AAC/C,MAAM,MAAM,sBAAsB,GAAG;IACjC,IAAI,EAAE,SAAS,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,SAAS;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CACrD,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG,mBAAmB,GAAG,sBAAsB,CAAC;AAE/E,wCAAwC;AACxC,eAAO,MAAM,kBAAkB,EAAE,SAAS,mBAAmB,EAiB5D,CAAC;AAEF,MAAM,MAAM,mBAAmB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAElE,0CAA0C;AAC1C,eAAO,MAAM,mBAAmB,EAAE;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,SAAS,mBAAmB,EAAE,CAAA;CAO9F,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/D,gEAAgE;AAChE,eAAO,MAAM,gBAAgB,EAAE;IAC3B,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,SAAS,CAAC,SAAS,gBAAgB,EAAE,CAAC,EAAE,CAAC;IACnD,MAAM,EAAE,gBAAgB,CAAC;CAuB5B,CAAC"}
@@ -1,55 +0,0 @@
1
- /**
2
- * Navigation data for {@link NavigationPattern1}. Single source for desktop + mobile.
3
- */
4
- /** Left cluster: primary app routes. */
5
- export const pattern1PrimaryNav = [
6
- { kind: 'link', label: 'Dashboard', href: '/dashboard', active: true },
7
- {
8
- kind: 'submenu',
9
- label: 'Portfolio',
10
- items: [
11
- { label: 'Settings', href: '/portfolio/settings' },
12
- { label: 'Calendar', href: '/portfolio/calendar' },
13
- { label: 'Performance', href: '/portfolio/performance' },
14
- { label: 'Engine Version', href: '/portfolio/engine' },
15
- ],
16
- },
17
- { kind: 'link', label: 'Performance', href: '/products' },
18
- { kind: 'link', label: 'Reporting', href: '/customers', badge: { label: 'Beta' } },
19
- { kind: 'link', label: 'Budgets', href: '/settings', badge: { label: 'Beta' } },
20
- { kind: 'link', label: 'Sets', href: '/settings' },
21
- { kind: 'link', label: 'Markets', href: '/settings' },
22
- ];
23
- /** Right cluster: Help / Support menu. */
24
- export const pattern1SupportMenu = {
25
- triggerLabel: 'Support',
26
- items: [
27
- { label: 'Live chat', href: '/support/chat' },
28
- { label: 'Help center', href: '/help' },
29
- { label: 'Changelog', href: '/changelog' },
30
- ],
31
- };
32
- /** Right cluster: Account menu — grouped sections + log out. */
33
- export const pattern1UserMenu = {
34
- triggerLabel: 'User',
35
- sections: [
36
- [
37
- { label: 'Profile', href: '/account/profile' },
38
- { label: 'Notifications', href: '/account/notifications' },
39
- { label: 'Email preferences', href: '/account/email-preferences' },
40
- { label: 'Your referrals', href: '/account/referrals' },
41
- { label: 'Teams', href: '/account/teams' },
42
- ],
43
- [
44
- { label: 'Connected channels', href: '/connections' },
45
- { label: 'Add channel', href: '/connections/add' },
46
- { label: 'API key', href: '/account/api-key' },
47
- ],
48
- [
49
- { label: 'Payment method', href: '/billing/payment' },
50
- { label: 'Subscriptions', href: '/billing/subscriptions' },
51
- { label: 'Invoices', href: '/billing/invoices' },
52
- ],
53
- ],
54
- logOut: { label: 'Log out', href: '/logout' },
55
- };
@@ -1,7 +0,0 @@
1
- import * as React from 'react';
2
- export type NavigationPattern1Props = React.ComponentProps<'div'>;
3
- /**
4
- * Responsive app header: mobile bar (menu, brand, search, upgrade) plus desktop nav with account actions.
5
- */
6
- export declare function NavigationPattern1({ className, ...props }: NavigationPattern1Props): import("react/jsx-runtime").JSX.Element;
7
- //# sourceMappingURL=pattern-1.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-1.d.ts","sourceRoot":"","sources":["../../../../src/blocks/navigation/pattern-1/pattern-1.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAqB/B,MAAM,MAAM,uBAAuB,GAAG,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;AA4HlE;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,uBAAuB,2CAoJlF"}
@@ -1,50 +0,0 @@
1
- 'use client';
2
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
- import * as React from 'react';
4
- import { Bell, ChevronDown, Menu, Search, X } from 'lucide-react';
5
- import { Avatar, AvatarFallback, AvatarImage } from '../../../components/avatar';
6
- import { Badge } from '../../../components/badge';
7
- import { Button } from '../../../components/button';
8
- import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '../../../components/collapsible';
9
- import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuLabel, DropdownMenuSeparator, DropdownMenuTrigger, } from '../../../components/dropdown-menu';
10
- import { Separator } from '../../../components/separator';
11
- import { Sheet, SheetContent, SheetDescription, SheetHeader, SheetTitle } from '../../../components/sheet';
12
- import { cn } from '../../../lib/utils';
13
- import { pattern1PrimaryNav, pattern1SupportMenu, pattern1UserMenu } from './pattern-1.config';
14
- /** Demo user — keep in sync between desktop account menu and mobile sheet. */
15
- const demoUser = {
16
- name: 'shadcn',
17
- email: 'm@example.com',
18
- avatarSrc: 'https://github.com/shadcn.png',
19
- avatarAlt: '@shadcn',
20
- initials: 'CN',
21
- };
22
- const navLinkClass = 'rounded-md px-3 py-1 text-sm font-medium text-muted-foreground hover:bg-primary/5 outline-none focus-visible:ring-2 focus-visible:ring-ring';
23
- const sheetNavLinkClass = 'flex items-center gap-2 rounded-md px-3 py-2.5 text-sm font-normal text-muted-foreground hover:bg-accent hover:text-accent-foreground';
24
- function primaryNavKey(entry, index) {
25
- return entry.kind === 'link' ? `link-${entry.label}-${entry.href}-${index}` : `submenu-${entry.label}`;
26
- }
27
- /** Wheelhouse icon mark — aligned with `marketing_site/public/svg/wh-logo-icon.svg`. */
28
- function BrandLogo({ className, ...props }) {
29
- return (_jsxs("svg", { viewBox: "0 0 282 196", fill: "none", xmlns: "http://www.w3.org/2000/svg", "aria-hidden": true, className: cn('h-5 w-auto shrink-0', className), ...props, children: [_jsx("path", { d: "M113.84 192.61L182.63 73.4702C201.1 41.4702 178.01 1.47021 141.07 1.47021H3.4999C3.149 1.47057 2.80437 1.56325 2.50062 1.73893C2.19687 1.91462 1.94468 2.16712 1.76939 2.4711C1.5941 2.77508 1.50186 3.11983 1.50195 3.47073C1.50204 3.82163 1.59445 4.16633 1.7699 4.47021L110.38 192.61C110.556 192.913 110.808 193.165 111.112 193.34C111.415 193.515 111.76 193.607 112.11 193.607C112.46 193.607 112.805 193.515 113.108 193.34C113.412 193.165 113.664 192.913 113.84 192.61Z", fill: "#AA1DA5" }), _jsx("path", { d: "M171.33 192.61L279.93 4.5C280.106 4.19611 280.198 3.85141 280.198 3.50051C280.198 3.14961 280.106 2.80487 279.931 2.50089C279.755 2.19691 279.503 1.9444 279.2 1.76872C278.896 1.59303 278.551 1.50036 278.2 1.5H140.74C103.74 1.5 80.6402 41.5 99.1302 73.57L167.86 192.57C168.032 192.877 168.282 193.134 168.584 193.314C168.887 193.494 169.232 193.591 169.584 193.595C169.936 193.599 170.283 193.51 170.589 193.337C170.896 193.164 171.152 192.913 171.33 192.61V192.61Z", fill: "#D926D2" }), _jsx("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M142.811 1.5H140.74C103.74 1.5 80.6402 41.5 99.1302 73.57L140.858 145.817L182.63 73.4702C200.808 41.976 178.729 2.73259 142.811 1.5Z", fill: "#71146D" })] }));
30
- }
31
- function MobileNavLinks({ onNavigate }) {
32
- return (_jsxs("div", { className: "flex flex-col gap-0.5 p-4 pt-2", children: [pattern1PrimaryNav.map((entry, i) => {
33
- if (entry.kind === 'link') {
34
- return (_jsxs("a", { className: cn(sheetNavLinkClass, entry.active && 'text-primary'), href: entry.href, onClick: onNavigate, children: [entry.label, entry.badge ? _jsx(Badge, { size: "sm", children: entry.badge.label }) : null] }, primaryNavKey(entry, i)));
35
- }
36
- return (_jsxs(Collapsible, { className: "w-full", children: [_jsx(CollapsibleTrigger, { render: _jsxs("button", { type: "button", className: cn(sheetNavLinkClass, 'group flex w-full cursor-default justify-between font-normal text-muted-foreground hover:text-accent-foreground'), children: [_jsx("span", { children: entry.label }), _jsx(ChevronDown, { className: "size-4 shrink-0 opacity-80 transition-transform group-data-[panel-open]:rotate-180" })] }) }), _jsx(CollapsibleContent, { className: "flex flex-col gap-0.5 pt-0.5 pb-1", children: entry.items.map((sub) => (_jsx("a", { className: cn(sheetNavLinkClass, 'py-2 pl-8 text-sm'), href: sub.href, onClick: onNavigate, children: sub.label }, sub.href))) })] }, primaryNavKey(entry, i)));
37
- }), _jsx(Separator, { className: "my-3" }), _jsxs("div", { className: "flex items-center gap-3 rounded-md px-3 py-2", children: [_jsxs(Avatar, { className: "size-8 border-0 after:hidden", children: [_jsx(AvatarImage, { src: demoUser.avatarSrc, alt: demoUser.avatarAlt }), _jsx(AvatarFallback, { children: demoUser.initials })] }), _jsxs("div", { className: "min-w-0 flex-1", children: [_jsx("p", { className: "truncate text-sm font-medium text-foreground", children: demoUser.name }), _jsx("p", { className: "truncate text-xs text-muted-foreground", children: demoUser.email })] })] }), pattern1UserMenu.sections.map((section, si) => (_jsxs(React.Fragment, { children: [si > 0 ? _jsx(Separator, { className: "my-2" }) : null, section.map((item) => (_jsx("a", { className: sheetNavLinkClass, href: item.href, onClick: onNavigate, children: item.label }, item.href)))] }, `user-section-${si}`))), _jsx(Separator, { className: "my-2" }), _jsx("a", { className: cn(sheetNavLinkClass, 'text-destructive-foreground hover:bg-destructive/10 hover:text-destructive-foreground'), href: pattern1UserMenu.logOut.href, onClick: onNavigate, children: pattern1UserMenu.logOut.label })] }));
38
- }
39
- /**
40
- * Responsive app header: mobile bar (menu, brand, search, upgrade) plus desktop nav with account actions.
41
- */
42
- export function NavigationPattern1({ className, ...props }) {
43
- const [mobileMenuOpen, setMobileMenuOpen] = React.useState(false);
44
- return (_jsxs("div", { "data-slot": "navigation-pattern-1", className: cn(className), ...props, children: [_jsx("nav", { className: "lg:hidden", "aria-label": "Main", children: _jsxs("div", { className: "relative flex h-14 items-center justify-between border-b border-border bg-background px-4", children: [_jsxs(Button, { type: "button", variant: "ghost", className: "relative -ml-2 h-9 w-9 shrink-0 px-0 [&_svg]:size-5", "aria-expanded": mobileMenuOpen, "aria-controls": "navigation-pattern-1-mobile-sheet", "aria-label": mobileMenuOpen ? 'Close menu' : 'Open menu', onClick: () => setMobileMenuOpen((open) => !open), children: [_jsx("span", { className: cn('absolute transition-all duration-300', mobileMenuOpen ? '-rotate-90 opacity-0' : 'rotate-0 opacity-100'), "aria-hidden": true, children: _jsx(Menu, {}) }), _jsx("span", { className: cn('absolute transition-all duration-300', mobileMenuOpen ? 'rotate-0 opacity-100' : '-rotate-90 opacity-0'), "aria-hidden": true, children: _jsx(X, {}) })] }), _jsx("div", { className: "pointer-events-none absolute top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2", children: _jsx(BrandLogo, { className: "h-6 w-auto" }) }), _jsxs("div", { className: "flex shrink-0 items-center gap-3", children: [_jsx(Button, { type: "button", variant: "ghost", className: "size-9 p-0 [&_svg]:size-5", "aria-label": "Search", children: _jsx(Search, { className: "text-muted-foreground" }) }), _jsx(Button, { type: "button", variant: "ghost", className: "size-9 p-0 [&_svg]:size-5", "aria-label": "Notifications", children: _jsx(Bell, { className: "text-muted-foreground" }) })] })] }) }), _jsx(Sheet, { open: mobileMenuOpen, onOpenChange: setMobileMenuOpen, children: _jsxs(SheetContent, { id: "navigation-pattern-1-mobile-sheet", side: "left", showCloseButton: false, className: "flex h-[100dvh] max-h-[100dvh] w-full flex-col gap-0 overflow-hidden p-0 sm:max-w-sm", children: [_jsxs(SheetHeader, { className: "shrink-0 border-b border-border text-left", children: [_jsx(SheetTitle, { children: "Menu" }), _jsx(SheetDescription, { className: "sr-only", children: "Primary navigation links for the application." })] }), _jsx("div", { className: "min-h-0 flex-1 overflow-y-auto overscroll-contain", children: _jsx(MobileNavLinks, { onNavigate: () => setMobileMenuOpen(false) }) })] }) }), _jsx("nav", { className: "hidden h-12 border-b border-border bg-background lg:block", "aria-label": "Main", children: _jsxs("div", { className: "container flex h-full items-center justify-between px-6", children: [_jsxs("div", { className: "flex items-center gap-x-3", children: [_jsx(BrandLogo, {}), _jsx("div", { className: "flex items-center gap-x-1", children: pattern1PrimaryNav.map((entry, i) => {
45
- if (entry.kind === 'link') {
46
- return (_jsxs("a", { className: cn(navLinkClass, entry.active && 'text-primary', entry.badge && 'inline-flex items-center gap-1'), href: entry.href, children: [entry.label, entry.badge ? (_jsx(Badge, { variant: "outline", size: "sm", children: entry.badge.label })) : null] }, primaryNavKey(entry, i)));
47
- }
48
- return (_jsxs(DropdownMenu, { children: [_jsxs(DropdownMenuTrigger, { className: cn(navLinkClass, 'inline-flex cursor-default items-center gap-0 border-0 bg-transparent'), children: [entry.label, _jsx(ChevronDown, { className: "ml-1 size-4 opacity-80" })] }), _jsx(DropdownMenuContent, { align: "start", className: "min-w-48", children: entry.items.map((sub) => (_jsx(DropdownMenuItem, { children: sub.label }, sub.href))) })] }, primaryNavKey(entry, i)));
49
- }) })] }), _jsxs("div", { className: "flex items-center gap-2", children: [_jsx(Button, { type: "button", variant: "ghost", size: "icon", "aria-label": "Search", children: _jsx(Search, { className: "size-4 text-muted-foreground" }) }), _jsx(Button, { type: "button", variant: "ghost", size: "icon", "aria-label": "Search", children: _jsx(Bell, { className: "size-4 text-muted-foreground" }) }), _jsxs(DropdownMenu, { children: [_jsxs(DropdownMenuTrigger, { className: cn(navLinkClass, 'inline-flex cursor-default items-center gap-0 border-0 bg-transparent'), children: [pattern1SupportMenu.triggerLabel, _jsx(ChevronDown, { className: "ml-1 size-4 opacity-80" })] }), _jsx(DropdownMenuContent, { align: "start", className: "min-w-48", children: pattern1SupportMenu.items.map((item) => (_jsx(DropdownMenuItem, { children: item.label }, item.href))) })] }), _jsxs(DropdownMenu, { children: [_jsxs(DropdownMenuTrigger, { className: cn(navLinkClass, 'inline-flex cursor-default items-center gap-0 border-0 bg-transparent'), children: [pattern1UserMenu.triggerLabel, _jsx(ChevronDown, { className: "ml-1 size-4 opacity-80" })] }), _jsxs(DropdownMenuContent, { align: "end", className: "min-w-56", children: [_jsxs(DropdownMenuLabel, { className: "font-normal", children: [_jsx("span", { className: "block text-sm font-medium", children: demoUser.name }), _jsx("span", { className: "block text-xs text-muted-foreground", children: demoUser.email })] }), _jsx(DropdownMenuSeparator, {}), pattern1UserMenu.sections.map((section, si) => (_jsxs(React.Fragment, { children: [si > 0 ? _jsx(DropdownMenuSeparator, {}) : null, section.map((item) => (_jsx(DropdownMenuItem, { children: item.label }, `${item.href}-${item.label}`)))] }, `user-dd-${si}`))), _jsx(DropdownMenuSeparator, {}), _jsx(DropdownMenuItem, { variant: "destructive", children: pattern1UserMenu.logOut.label })] })] })] })] }) })] }));
50
- }
@@ -1,16 +0,0 @@
1
- import type { StoryObj } from '@storybook/react';
2
- import { NavigationPattern1 } from './pattern-1';
3
- declare const meta: {
4
- title: string;
5
- component: typeof NavigationPattern1;
6
- parameters: {
7
- layout: string;
8
- };
9
- };
10
- export default meta;
11
- type Story = StoryObj<typeof meta>;
12
- /** Wide canvas: show the desktop bar only (`hidden lg:block` → forced visible). */
13
- export declare const Desktop: Story;
14
- /** Wide canvas: show the mobile bar and sheet trigger (`lg:hidden` → forced visible). */
15
- export declare const Mobile: Story;
16
- //# sourceMappingURL=pattern-1.stories.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"pattern-1.stories.d.ts","sourceRoot":"","sources":["../../../../src/blocks/navigation/pattern-1/pattern-1.stories.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAQ,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEjD,QAAA,MAAM,IAAI;;;;;;CAMiC,CAAC;AAE5C,eAAe,IAAI,CAAC;AAEpB,KAAK,KAAK,GAAG,QAAQ,CAAC,OAAO,IAAI,CAAC,CAAC;AAEnC,mFAAmF;AACnF,eAAO,MAAM,OAAO,EAAE,KAGrB,CAAC;AAEF,yFAAyF;AACzF,eAAO,MAAM,MAAM,EAAE,KAEpB,CAAC"}
@@ -1,20 +0,0 @@
1
- 'use client';
2
- import { jsx as _jsx } from "react/jsx-runtime";
3
- import { NavigationPattern1 } from './pattern-1';
4
- const meta = {
5
- title: 'Blocks/Navigation/Pattern 1',
6
- component: NavigationPattern1,
7
- parameters: {
8
- layout: 'padded',
9
- },
10
- };
11
- export default meta;
12
- /** Wide canvas: show the desktop bar only (`hidden lg:block` → forced visible). */
13
- export const Desktop = {
14
- // className="[&>nav:first-of-type]:hidden [&>nav:last-of-type]:!block"
15
- render: () => _jsx(NavigationPattern1, {}),
16
- };
17
- /** Wide canvas: show the mobile bar and sheet trigger (`lg:hidden` → forced visible). */
18
- export const Mobile = {
19
- render: () => _jsx(NavigationPattern1, { className: "[&>nav:first-of-type]:!block [&>nav:last-of-type]:!hidden" }),
20
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-selector-context.d.ts","sourceRoot":"","sources":["../../../src/components/date-selector/date-selector-context.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,wBAAwB,EAA8B,MAAM,uBAAuB,CAAC;AAElG,QAAA,MAAM,mBAAmB,mDAIvB,CAAC;AAEH,iFAAiF;AACjF,eAAO,MAAM,sBAAsB,gCAAwC,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-selector-parts.d.ts","sourceRoot":"","sources":["../../../src/components/date-selector/date-selector-parts.tsx"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-selector-types.d.ts","sourceRoot":"","sources":["../../../src/components/date-selector/date-selector-types.ts"],"names":[],"mappings":"AAAA,yHAAyH;AACzH,MAAM,WAAW,sBAAsB;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE;QACT,EAAE,EAAE,MAAM,CAAC;QACX,MAAM,EAAE,MAAM,CAAC;QACf,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,WAAW,EAAE;QACT,GAAG,EAAE,MAAM,CAAC;QACZ,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAClE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,qDAAqD;AACrD,eAAO,MAAM,0BAA0B,EAAE,sBA6BxC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,KAAK,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AAC1E,MAAM,MAAM,sBAAsB,GAAG,IAAI,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;AAE3E,eAAO,MAAM,iCAAiC,2CAA4C,CAAC;AAC3F,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,iCAAiC,CAAC,CAAC,MAAM,CAAC,CAAC;AAEzF,MAAM,MAAM,yBAAyB,GAAG,QAAQ,GAAG,cAAc,GAAG,cAAc,CAAC;AAEnF,6HAA6H;AAC7H,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,sBAAsB,CAAC;IAC/B,QAAQ,EAAE,sBAAsB,CAAC;IACjC,aAAa,CAAC,EAAE,yBAAyB,CAAC;IAC1C,WAAW,CAAC,EAAE,uBAAuB,CAAC;IACtC,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7C,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC9C;AAED,qFAAqF;AACrF,MAAM,WAAW,wBAAwB;IACrC,IAAI,EAAE,sBAAsB,CAAC;IAC7B,OAAO,EAAE,SAAS,GAAG,SAAS,CAAC;IAC/B,IAAI,EAAE,IAAI,GAAG,SAAS,GAAG,IAAI,CAAC;CACjC;AAED,uHAAuH;AACvH,MAAM,WAAW,sBAAsB;IACnC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,WAAW,CAAC,EAAE,sBAAsB,EAAE,CAAC;CAC1C;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,iBAAiB;IAC9B,KAAK,CAAC,EAAE,iBAAiB,CAAC;IAC1B,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,iBAAiB,KAAK,IAAI,CAAC;IAC9C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,WAAW,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACvC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,IAAI,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,CAAC;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACzC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,iBAAiB,CAAC,EAAE,SAAS,uBAAuB,EAAE,CAAC;CAC1D"}
@@ -1,47 +0,0 @@
1
- import { type DateSelectorFilterType, type DateSelectorI18nConfig, type DateSelectorPeriodType, type DateSelectorRollingDays, type DateSelectorSelectionMode, type DateSelectorValue } from './date-selector-types';
2
- /**
3
- * Computes inclusive calendar date bounds for rolling windows. “Next N” includes today and spans N calendar days.
4
- * “Last N” includes today and goes back N − 1 days before today (N days total).
5
- */
6
- export declare function computeRollingDateRange(mode: 'rolling-next' | 'rolling-last', days: number, now?: Date): {
7
- startDate: Date;
8
- endDate: Date;
9
- };
10
- /**
11
- * Formats a {@link DateSelectorValue} for display using the same rules as the selector’s summary text.
12
- */
13
- export declare function formatDateValue(value: DateSelectorValue, i18n?: DateSelectorI18nConfig, dayDateFormat?: string): string;
14
- /** Stable fingerprint for a {@link DateSelectorValue} (for sync keys and onChange deduplication). */
15
- export declare function dateSelectorDataKey(value: DateSelectorValue | undefined): string;
16
- export declare function computeStateSyncKey(value: DateSelectorValue | undefined, presetMode: DateSelectorFilterType | undefined, defaultFilterType: DateSelectorFilterType, validDefaultPeriodType: DateSelectorPeriodType): string;
17
- /** Full local UI state for {@link useDateSelector} (calendar month / hover are not part of {@link DateSelectorValue}). */
18
- export interface DateSelectorInternalState {
19
- periodType: DateSelectorPeriodType;
20
- filterType: DateSelectorFilterType;
21
- selectedDate: Date | undefined;
22
- selectedEndDate: Date | undefined;
23
- calendarMonth: Date;
24
- selectedYear: number | undefined;
25
- selectedMonth: number | undefined;
26
- selectedQuarter: number | undefined;
27
- rangeStart: {
28
- year: number;
29
- value: number;
30
- } | undefined;
31
- rangeEnd: {
32
- year: number;
33
- value: number;
34
- } | undefined;
35
- hoverDate: Date | undefined;
36
- selectionMode: DateSelectorSelectionMode;
37
- rollingDays: DateSelectorRollingDays | undefined;
38
- }
39
- export declare function createInitialInternalState(value: DateSelectorValue | undefined, validDefaultPeriodType: DateSelectorPeriodType, defaultFilterType: DateSelectorFilterType, presetMode: DateSelectorFilterType | undefined): DateSelectorInternalState;
40
- export declare function buildRollingValueFromState(selectionMode: DateSelectorSelectionMode, rollingDays: DateSelectorRollingDays | undefined): DateSelectorValue | undefined;
41
- export declare function buildCurrentValueFromInternal(s: DateSelectorInternalState, presetMode: DateSelectorFilterType | undefined): DateSelectorValue;
42
- /** Combined UI state + last emitted value fingerprint for `onChange` deduplication. */
43
- export interface DateSelectorHookState {
44
- internal: DateSelectorInternalState;
45
- lastEmittedDataKey: string;
46
- }
47
- //# sourceMappingURL=date-selector-value.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-selector-value.d.ts","sourceRoot":"","sources":["../../../src/components/date-selector/date-selector-value.ts"],"names":[],"mappings":"AAEA,OAAO,EACH,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,sBAAsB,EAC3B,KAAK,uBAAuB,EAC5B,KAAK,yBAAyB,EAC9B,KAAK,iBAAiB,EAEzB,MAAM,uBAAuB,CAAC;AAE/B;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,cAAc,GAAG,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,GAAE,IAAiB,GAAG;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,IAAI,CAAA;CAAE,CAYvJ;AAED;;GAEG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,iBAAiB,EACxB,IAAI,GAAE,sBAAmD,EACzD,aAAa,GAAE,MAAqB,GACrC,MAAM,CAuDR;AAED,qGAAqG;AACrG,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,SAAS,GAAG,MAAM,CAgBhF;AAED,wBAAgB,mBAAmB,CAC/B,KAAK,EAAE,iBAAiB,GAAG,SAAS,EACpC,UAAU,EAAE,sBAAsB,GAAG,SAAS,EAC9C,iBAAiB,EAAE,sBAAsB,EACzC,sBAAsB,EAAE,sBAAsB,GAC/C,MAAM,CAER;AAED,0HAA0H;AAC1H,MAAM,WAAW,yBAAyB;IACtC,UAAU,EAAE,sBAAsB,CAAC;IACnC,UAAU,EAAE,sBAAsB,CAAC;IACnC,YAAY,EAAE,IAAI,GAAG,SAAS,CAAC;IAC/B,eAAe,EAAE,IAAI,GAAG,SAAS,CAAC;IAClC,aAAa,EAAE,IAAI,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,SAAS,CAAC;IACjC,aAAa,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;IACpC,UAAU,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACxD,QAAQ,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,GAAG,SAAS,CAAC;IACtD,SAAS,EAAE,IAAI,GAAG,SAAS,CAAC;IAC5B,aAAa,EAAE,yBAAyB,CAAC;IACzC,WAAW,EAAE,uBAAuB,GAAG,SAAS,CAAC;CACpD;AAED,wBAAgB,0BAA0B,CACtC,KAAK,EAAE,iBAAiB,GAAG,SAAS,EACpC,sBAAsB,EAAE,sBAAsB,EAC9C,iBAAiB,EAAE,sBAAsB,EACzC,UAAU,EAAE,sBAAsB,GAAG,SAAS,GAC/C,yBAAyB,CAoD3B;AAED,wBAAgB,0BAA0B,CACtC,aAAa,EAAE,yBAAyB,EACxC,WAAW,EAAE,uBAAuB,GAAG,SAAS,GACjD,iBAAiB,GAAG,SAAS,CAoB/B;AAED,wBAAgB,6BAA6B,CAAC,CAAC,EAAE,yBAAyB,EAAE,UAAU,EAAE,sBAAsB,GAAG,SAAS,GAAG,iBAAiB,CAc7I;AAED,uFAAuF;AACvF,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,yBAAyB,CAAC;IACpC,kBAAkB,EAAE,MAAM,CAAC;CAC9B"}
@@ -1,183 +0,0 @@
1
- import { addDays, format, startOfDay, subDays } from 'date-fns';
2
- import { DEFAULT_DATE_SELECTOR_I18N, } from './date-selector-types';
3
- /**
4
- * Computes inclusive calendar date bounds for rolling windows. “Next N” includes today and spans N calendar days.
5
- * “Last N” includes today and goes back N − 1 days before today (N days total).
6
- */
7
- export function computeRollingDateRange(mode, days, now = new Date()) {
8
- const today = startOfDay(now);
9
- if (mode === 'rolling-next') {
10
- return {
11
- startDate: today,
12
- endDate: startOfDay(addDays(today, days - 1)),
13
- };
14
- }
15
- return {
16
- startDate: startOfDay(subDays(today, days - 1)),
17
- endDate: today,
18
- };
19
- }
20
- /**
21
- * Formats a {@link DateSelectorValue} for display using the same rules as the selector’s summary text.
22
- */
23
- export function formatDateValue(value, i18n = DEFAULT_DATE_SELECTOR_I18N, dayDateFormat = 'MM/dd/yyyy') {
24
- const { period, selectionMode, rollingDays, startDate, endDate, year, month, quarter, rangeStart, rangeEnd } = value;
25
- if ((selectionMode === 'rolling-next' || selectionMode === 'rolling-last') && rollingDays !== undefined) {
26
- const label = selectionMode === 'rolling-next'
27
- ? i18n.rollingSummaryNext.replace('{{count}}', String(rollingDays))
28
- : i18n.rollingSummaryLast.replace('{{count}}', String(rollingDays));
29
- if (startDate && endDate) {
30
- return `${label} (${format(startDate, dayDateFormat)} – ${format(endDate, dayDateFormat)})`;
31
- }
32
- return label;
33
- }
34
- if (period === 'day') {
35
- if (startDate && endDate) {
36
- return `${format(startDate, dayDateFormat)} - ${format(endDate, dayDateFormat)}`;
37
- }
38
- if (startDate) {
39
- return format(startDate, dayDateFormat);
40
- }
41
- return '';
42
- }
43
- if (period === 'month') {
44
- if (rangeStart && rangeEnd) {
45
- return `${i18n.monthsShort[rangeStart.value]} ${rangeStart.year} - ${i18n.monthsShort[rangeEnd.value]} ${rangeEnd.year}`;
46
- }
47
- if (year !== undefined && month !== undefined) {
48
- return `${i18n.monthsShort[month]} ${year}`;
49
- }
50
- return '';
51
- }
52
- if (period === 'quarter') {
53
- if (rangeStart && rangeEnd) {
54
- return `${i18n.quarters[rangeStart.value]} ${rangeStart.year} - ${i18n.quarters[rangeEnd.value]} ${rangeEnd.year}`;
55
- }
56
- if (year !== undefined && quarter !== undefined) {
57
- return `${i18n.quarters[quarter]} ${year}`;
58
- }
59
- return '';
60
- }
61
- if (period === 'year') {
62
- if (rangeStart && rangeEnd) {
63
- return `${rangeStart.year} - ${rangeEnd.year}`;
64
- }
65
- if (year !== undefined) {
66
- return `${year}`;
67
- }
68
- return '';
69
- }
70
- return '';
71
- }
72
- /** Stable fingerprint for a {@link DateSelectorValue} (for sync keys and onChange deduplication). */
73
- export function dateSelectorDataKey(value) {
74
- if (value === undefined)
75
- return '__uc__';
76
- const v = value;
77
- return [
78
- v.period,
79
- v.operator,
80
- v.selectionMode ?? '',
81
- v.rollingDays ?? '',
82
- v.year ?? '',
83
- v.month ?? '',
84
- v.quarter ?? '',
85
- v.startDate?.getTime() ?? '',
86
- v.endDate?.getTime() ?? '',
87
- v.rangeStart ? `${v.rangeStart.year}-${v.rangeStart.value}` : '',
88
- v.rangeEnd ? `${v.rangeEnd.year}-${v.rangeEnd.value}` : '',
89
- ].join('|');
90
- }
91
- export function computeStateSyncKey(value, presetMode, defaultFilterType, validDefaultPeriodType) {
92
- return `${dateSelectorDataKey(value)}|${presetMode ?? ''}|${defaultFilterType}|${validDefaultPeriodType}`;
93
- }
94
- export function createInitialInternalState(value, validDefaultPeriodType, defaultFilterType, presetMode) {
95
- const calendarMonth = value?.startDate ?? new Date();
96
- if (!value) {
97
- return {
98
- periodType: validDefaultPeriodType,
99
- filterType: presetMode ?? defaultFilterType,
100
- selectedDate: undefined,
101
- selectedEndDate: undefined,
102
- calendarMonth,
103
- selectedYear: undefined,
104
- selectedMonth: undefined,
105
- selectedQuarter: undefined,
106
- rangeStart: undefined,
107
- rangeEnd: undefined,
108
- hoverDate: undefined,
109
- selectionMode: 'custom',
110
- rollingDays: undefined,
111
- };
112
- }
113
- const filterType = presetMode ?? value.operator ?? defaultFilterType;
114
- if (value.selectionMode === 'rolling-next' || value.selectionMode === 'rolling-last') {
115
- return {
116
- periodType: value.period || validDefaultPeriodType,
117
- filterType,
118
- selectedDate: undefined,
119
- selectedEndDate: undefined,
120
- calendarMonth,
121
- selectedYear: value.year,
122
- selectedMonth: value.month,
123
- selectedQuarter: value.quarter,
124
- rangeStart: value.rangeStart,
125
- rangeEnd: value.rangeEnd,
126
- hoverDate: undefined,
127
- selectionMode: value.selectionMode,
128
- rollingDays: value.rollingDays,
129
- };
130
- }
131
- return {
132
- periodType: value.period || validDefaultPeriodType,
133
- filterType,
134
- selectedYear: value.year,
135
- selectedMonth: value.month,
136
- selectedQuarter: value.quarter,
137
- rangeStart: value.rangeStart,
138
- rangeEnd: value.rangeEnd,
139
- hoverDate: undefined,
140
- selectionMode: 'custom',
141
- rollingDays: undefined,
142
- selectedDate: value.startDate,
143
- selectedEndDate: value.endDate,
144
- calendarMonth,
145
- };
146
- }
147
- export function buildRollingValueFromState(selectionMode, rollingDays) {
148
- if (selectionMode !== 'rolling-next' && selectionMode !== 'rolling-last') {
149
- return undefined;
150
- }
151
- if (rollingDays === undefined) {
152
- return {
153
- period: 'day',
154
- operator: 'between',
155
- selectionMode,
156
- };
157
- }
158
- const { startDate: rs, endDate: re } = computeRollingDateRange(selectionMode === 'rolling-next' ? 'rolling-next' : 'rolling-last', rollingDays, new Date());
159
- return {
160
- period: 'day',
161
- operator: 'between',
162
- selectionMode,
163
- rollingDays,
164
- startDate: rs,
165
- endDate: re,
166
- };
167
- }
168
- export function buildCurrentValueFromInternal(s, presetMode) {
169
- const rolling = buildRollingValueFromState(s.selectionMode, s.rollingDays);
170
- if (rolling)
171
- return rolling;
172
- return {
173
- period: s.periodType,
174
- operator: presetMode ?? s.filterType,
175
- startDate: s.selectedDate,
176
- endDate: s.selectedEndDate,
177
- year: s.selectedYear,
178
- month: s.selectedMonth,
179
- quarter: s.selectedQuarter,
180
- rangeStart: s.rangeStart,
181
- rangeEnd: s.rangeEnd,
182
- };
183
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"date-selector.d.ts","sourceRoot":"","sources":["../../../src/components/date-selector/date-selector.tsx"],"names":[],"mappings":"AAsBA,OAAO,EAAqC,KAAK,iBAAiB,EAAsD,MAAM,uBAAuB,CAAC;AAItJ;;GAEG;AACH,wBAAgB,YAAY,CAAC,EACzB,KAAK,EACL,QAAQ,EACR,UAAiB,EACjB,WAAW,EACX,iBAAyB,EACzB,iBAAwB,EACxB,UAAU,EACV,SAAgB,EAChB,aAAoB,EACpB,aAAqB,EACrB,KAAK,EACL,SAAS,EACT,SAAa,EACb,QAAQ,EACR,OAAc,EACd,OAAc,EACd,WAAW,EACX,IAAI,EAAE,YAAY,EAClB,SAAS,EACT,aAA4B,EAC5B,cAAc,EACd,YAAY,EACZ,kBAA0B,EAC1B,iBAAqD,GACxD,EAAE,iBAAiB,2CA6TnB"}