@godxjp/ui 11.1.0 → 12.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/README.md +40 -12
  2. package/dist/app/index.d.ts +1 -5
  3. package/dist/app/index.js +4 -4
  4. package/dist/{checkbox-em-oFM5D.d.ts → checkbox-DPFcnsMZ.d.ts} +1 -1
  5. package/dist/{chunk-QVLUCB47.js → chunk-2JCSS6B4.js} +2 -2
  6. package/dist/{chunk-6CSBMMZS.js → chunk-3ELRYXJK.js} +27 -0
  7. package/dist/{chunk-USNR424B.js → chunk-ASMTSQWA.js} +3 -10
  8. package/dist/chunk-BCBK4FLV.js +83 -0
  9. package/dist/{chunk-Q4WWD4VV.js → chunk-COYMFVBQ.js} +2 -2
  10. package/dist/{chunk-T2QO2S65.js → chunk-EPTRMMM5.js} +3 -3
  11. package/dist/{chunk-LN7GE73P.js → chunk-FK2JDABO.js} +1 -1
  12. package/dist/{chunk-X2VY4MOW.js → chunk-FK5QEFVY.js} +2 -11
  13. package/dist/{chunk-SARQRCKO.js → chunk-FOANNF6Z.js} +1 -1
  14. package/dist/{chunk-PUGEOUWZ.js → chunk-I6HD36IU.js} +2 -2
  15. package/dist/{chunk-2HOTP7RL.js → chunk-JSQOCVM6.js} +4 -78
  16. package/dist/{chunk-Z46J47FY.js → chunk-L2MEN2VK.js} +1 -1
  17. package/dist/{chunk-3Q4A4U2P.js → chunk-MMFIL33F.js} +1 -1
  18. package/dist/{chunk-IHRMOJXD.js → chunk-N6ELT7KB.js} +0 -47
  19. package/dist/{chunk-UNVRNJCB.js → chunk-PO5ISUFA.js} +1 -1
  20. package/dist/{chunk-NXVCI6YB.js → chunk-QQWA5ZRQ.js} +1 -1
  21. package/dist/{chunk-FAB3LMTK.js → chunk-REBRSO25.js} +3 -3
  22. package/dist/{chunk-EE5DKOHX.js → chunk-SIUIIIQW.js} +1 -1
  23. package/dist/{chunk-HTG5VHU7.js → chunk-TXRYSMOD.js} +2 -6
  24. package/dist/{chunk-IY347EQA.js → chunk-UDEPO3UF.js} +1 -1
  25. package/dist/{chunk-BG5RNXTH.js → chunk-UJUWAQE5.js} +1 -1
  26. package/dist/{chunk-QWALQSBS.js → chunk-WBUUCU7R.js} +2 -2
  27. package/dist/{chunk-7BF7U3GG.js → chunk-WJNR3RAG.js} +2 -2
  28. package/dist/{chunk-JWGLJXQU.js → chunk-XVD5SLDL.js} +1 -1
  29. package/dist/chunk-YD7V2HGZ.js +13 -0
  30. package/dist/{chunk-F6JGFU6O.js → chunk-YGD4CCQC.js} +2 -2
  31. package/dist/components/admin/index.d.ts +7 -15
  32. package/dist/components/admin/index.js +23 -21
  33. package/dist/components/data-display/badge.js +3 -3
  34. package/dist/components/data-display/card.d.ts +2 -2
  35. package/dist/components/data-display/carousel.js +3 -3
  36. package/dist/components/data-display/index.js +7 -6
  37. package/dist/components/data-entry/calendar.d.ts +1 -1
  38. package/dist/components/data-entry/cascader.d.ts +1 -1
  39. package/dist/components/data-entry/cascader.js +3 -3
  40. package/dist/components/data-entry/checkbox.d.ts +2 -2
  41. package/dist/components/data-entry/color-picker.d.ts +1 -1
  42. package/dist/components/data-entry/color-picker.js +3 -3
  43. package/dist/components/data-entry/command.d.ts +10 -10
  44. package/dist/components/data-entry/date-picker.d.ts +1 -1
  45. package/dist/components/data-entry/date-picker.js +3 -3
  46. package/dist/components/data-entry/date-range-picker.d.ts +1 -1
  47. package/dist/components/data-entry/date-range-picker.js +3 -3
  48. package/dist/components/data-entry/index.d.ts +3 -3
  49. package/dist/components/data-entry/index.js +17 -16
  50. package/dist/components/data-entry/radio.d.ts +1 -1
  51. package/dist/components/data-entry/select.d.ts +1 -1
  52. package/dist/components/data-entry/select.js +3 -3
  53. package/dist/components/data-entry/slider.d.ts +1 -1
  54. package/dist/components/data-entry/switch.d.ts +1 -1
  55. package/dist/components/data-entry/time-input.js +2 -2
  56. package/dist/components/data-entry/time-picker.d.ts +1 -1
  57. package/dist/components/data-entry/time-picker.js +3 -3
  58. package/dist/components/data-entry/transfer.d.ts +2 -2
  59. package/dist/components/data-entry/transfer.js +4 -3
  60. package/dist/components/data-entry/tree-select.d.ts +1 -1
  61. package/dist/components/data-entry/tree-select.js +3 -3
  62. package/dist/components/data-entry/upload.d.ts +2 -2
  63. package/dist/components/data-entry/upload.js +5 -5
  64. package/dist/components/data-grid/index.d.ts +71 -0
  65. package/dist/components/data-grid/index.js +372 -0
  66. package/dist/components/feedback/alert.js +4 -4
  67. package/dist/components/feedback/dialog.js +3 -3
  68. package/dist/components/feedback/index.js +5 -5
  69. package/dist/components/layout/index.d.ts +3 -3
  70. package/dist/components/layout/index.js +4 -4
  71. package/dist/components/navigation/index.d.ts +2 -2
  72. package/dist/components/navigation/index.js +6 -6
  73. package/dist/components/navigation/pagination.d.ts +1 -1
  74. package/dist/components/navigation/pagination.js +4 -4
  75. package/dist/components/navigation/steps.d.ts +2 -2
  76. package/dist/components/navigation/steps.js +3 -3
  77. package/dist/components/query/index.d.ts +1 -2
  78. package/dist/components/query/index.js +4 -4
  79. package/dist/components/ui/index.d.ts +3 -3
  80. package/dist/components/ui/index.js +19 -19
  81. package/dist/{data-entry.prop-BR4vNA1j.d.ts → data-entry.prop-6J0o45se.d.ts} +3 -25
  82. package/dist/{filter-bar-BxjSJJnQ.d.ts → filter-bar-B07JSxME.d.ts} +1 -1
  83. package/dist/{flex-D_EXRFSW.d.ts → flex-DXtIALBh.d.ts} +1 -1
  84. package/dist/i18n/index.d.ts +10 -0
  85. package/dist/i18n/index.js +2 -2
  86. package/dist/index.d.ts +7 -7
  87. package/dist/index.js +30 -28
  88. package/dist/{layout.prop-JE2TcRyL.d.ts → layout.prop-B1yQPUNZ.d.ts} +2 -17
  89. package/dist/lib/datetime/index.js +1 -1
  90. package/dist/{navigation.prop-DMcXkR-J.d.ts → navigation.prop-Dumy196X.d.ts} +1 -5
  91. package/dist/props/components/index.d.ts +4 -4
  92. package/dist/props/index.d.ts +4 -4
  93. package/dist/props/index.js +2 -2
  94. package/dist/props/registry.d.ts +0 -47
  95. package/dist/props/registry.js +1 -1
  96. package/dist/{query.prop-BDdz9L1G.d.ts → query.prop-Dog-EAfG.d.ts} +2 -6
  97. package/dist/{search-input-C_x-JFD3.d.ts → search-input-BR4nAWiT.d.ts} +1 -1
  98. package/dist/styles/card-layout.css +1 -1
  99. package/dist/styles/layout.css +2 -0
  100. package/package.json +12 -5
  101. /package/dist/{chunk-7CFO5FFE.js → chunk-GJXOBDER.js} +0 -0
package/README.md CHANGED
@@ -67,13 +67,13 @@ Components emit `data-slot` / `data-*`; the look lives in `styles/*-layout.css`.
67
67
 
68
68
  | Group | Import | Examples |
69
69
  | ------------------ | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
70
- | **Layout** | `@godxjp/ui/layout` | `Flex` (+ `Stack`/`Inline`), `PageContainer`, `ResponsiveGrid`, `AppShell`, `Sidebar`, `Separator`, `AspectRatio`, `Resizable` |
70
+ | **Layout** | `@godxjp/ui/layout` | `Flex`, `PageContainer`, `ResponsiveGrid`, `AppShell`, `Sidebar`, `Separator`, `AspectRatio`, `Resizable` |
71
71
  | **General** | `@godxjp/ui/general` | `Button` |
72
72
  | **Data Entry** | `@godxjp/ui/data-entry` | `Input`, `Select`, `FormField`, `Field`, `DatePicker`, `TimePicker`, `Combobox`, `Switch`, `Toggle`, `Upload`, `Cascader`, `TreeSelect`, `ColorPicker`, `Slider`, `PasswordInput`, `PasswordStrength`, `InputOTP`, `Rating`, `TagInput` |
73
73
  | **Data Display** | `@godxjp/ui/data-display` | `Table`, `DataTable`, `Card`, `StatCard`, `Badge`, `Avatar`, `Descriptions`, `Timeline`, `EmptyState`, `Progress`, `Accordion`, `HoverCard`, `Carousel`, `Popover`, `Collapsible` |
74
74
  | **Feedback** | `@godxjp/ui/feedback` | `Dialog`, `AlertDialog`, `Sheet` (side), `Drawer` (bottom-sheet), `Toast`, `Skeleton`, `Alert`, `Tooltip` |
75
75
  | **Query** | `@godxjp/ui/query` | `DataState`, `InfiniteQueryState`, `PrefetchLink` (adapter subpath — pulls TanStack Query) |
76
- | **Navigation** | `@godxjp/ui/navigation` | `Tabs`, `Toolbar` (+ `FilterBar`), `DropdownMenu`, `ContextMenu`, `Menubar`, `NavigationMenu`, `Steps`, `Pagination`, `Breadcrumb`, `LocalePicker` |
76
+ | **Navigation** | `@godxjp/ui/navigation` | `Tabs`, `Toolbar`, `DropdownMenu`, `ContextMenu`, `Menubar`, `NavigationMenu`, `Steps`, `Pagination`, `Breadcrumb`, `AppSettingPicker` |
77
77
  | **App** | `@godxjp/ui/app` | `AppProvider`, `useDateTime` (adapter — i18n/datetime singleton) |
78
78
  | **Datetime** | `@godxjp/ui/datetime` | `formatDate` (mandatory for display) |
79
79
  | **Form** | `@godxjp/ui/form` | `useZodForm`, `FormRoot` (adapter subpath — pulls react-hook-form) |
@@ -81,9 +81,37 @@ Components emit `data-slot` / `data-*`; the look lives in `styles/*-layout.css`.
81
81
  | **shadcn paths** | `@godxjp/ui/ui` | Thin re-exports for shadcn-style imports (tree-shakeable) |
82
82
  | **Admin (legacy)** | `@godxjp/ui/admin` | Compound admin exports |
83
83
 
84
- > **Renamed in 8.0** (thin aliases kept): `Stack`/`Inline`→`Flex`, `KeyValueGrid`→`Descriptions`,
85
- > `ProgressMeter`→`Progress`, `CardStat`→`StatCard`, `FilterBar`→`Toolbar`, `ChoiceField`→`Field`,
86
- > `SkeletonCard`→`SkeletonStat`. `StatusBadge`→`Badge` (`status`/`tone`), `DialogConfirm`/`Dialog mode="confirm"`→`AlertDialog`.
84
+ > **Renamed / removed** use the new names; the old aliases were **removed in v11** (they are no
85
+ > longer exported at runtime). See the [migration table](#migrating-6--11) below.
86
+
87
+ ---
88
+
89
+ ## Migrating 6 → 11
90
+
91
+ The v11 line dropped the deprecated compatibility aliases entirely — they are no longer exported
92
+ at runtime, and their leftover `*Prop` types and README references have now been removed too (issue
93
+ #99). Replace these at the call site:
94
+
95
+ | Removed / renamed (≤ v8) | Replacement (v11) |
96
+ | -------------------------------- | -------------------------------------------------- |
97
+ | `Stack` | `Flex direction="col"` (the default direction) |
98
+ | `Inline` | `Flex direction="row"` |
99
+ | `Autocomplete` | `Select` with `showSearch` + `options` |
100
+ | `CountrySelect` | `AppSettingPicker kind="country"` |
101
+ | `LocalePicker` | `AppSettingPicker kind="language"` |
102
+ | `CountryOptionLabel` | `Intl.DisplayNames` (ISO 3166-1 α-2) — no component |
103
+ | `SwitchField` | `Field` + `Switch` |
104
+ | `CardStat` | `StatCard` |
105
+ | `KeyValueGrid` | `Descriptions` |
106
+ | `ProgressMeter` | `Progress` |
107
+ | `FilterBar` | `Toolbar` |
108
+ | `ChoiceField` | `Field` |
109
+ | `SkeletonCard` | `SkeletonStat` |
110
+ | `StatusBadge` | `Badge` (`status` / `tone`) |
111
+ | `DialogConfirm` / `Dialog mode="confirm"` | `AlertDialog` |
112
+
113
+ For the full feature data grid (sort / search / column visibility / paging) see
114
+ `@godxjp/ui/data-grid` (`DataGrid`); the lean server-driven list stays `DataTable`.
87
115
 
88
116
  ---
89
117
 
@@ -109,7 +137,7 @@ import { PageContainer } from "@godxjp/ui/layout"; // every page wraps in this
109
137
 
110
138
  1. **Every page** uses `<PageContainer title subtitle extra footer>`.
111
139
  2. **Mobile-first** — verify at 320–390px in preview / browser.
112
- 3. **Spacing via `Stack`/`Inline` `gap` + `ResponsiveGrid`** — no Tailwind `p-*` /
140
+ 3. **Spacing via `Flex` `gap` + `ResponsiveGrid`** — no Tailwind `p-*` /
113
141
  `gap-*` / `space-x|y-*` for app layout (see `docs/SPACING.md`).
114
142
  4. **Semantic tokens only** — no raw colors / hex / `dark:` overrides.
115
143
  5. **Dates** display via `formatDate` from `@godxjp/ui/datetime`.
@@ -126,12 +154,12 @@ One token `--phi-unit` drives page/section/card spacing; micro control gaps use
126
154
  4px grid. Density (`compact` | `default` | `comfortable`) retunes `--phi-unit` with
127
155
  control + table heights together.
128
156
 
129
- | App API | φ level |
130
- | ------------------- | ------------------- |
131
- | `<Stack gap="md">` | φ⁰ (default) |
132
- | `<Stack gap="lg">` | φ¹ |
133
- | `<Stack gap="xl">` | φ² |
134
- | Card shell / footer | base × φ / base ÷ φ |
157
+ | App API | φ level |
158
+ | -------------------------------- | ------------------- |
159
+ | `<Flex direction="col" gap="md">`| φ⁰ (default) |
160
+ | `<Flex direction="col" gap="lg">`| φ¹ |
161
+ | `<Flex direction="col" gap="xl">`| φ² |
162
+ | Card shell / footer | base × φ / base ÷ φ |
135
163
 
136
164
  ---
137
165
 
@@ -26,8 +26,6 @@ declare function getDayPickerLocale(locale: AppLocale): react_day_picker.DayPick
26
26
 
27
27
  /** Curated preset — pass to `<AppProvider timezoneOptions={APP_TIMEZONE_PRESET} />`. */
28
28
  declare const APP_TIMEZONE_PRESET: readonly ["UTC", "Asia/Ho_Chi_Minh", "Asia/Bangkok", "Asia/Singapore", "Asia/Jakarta", "Asia/Manila", "Asia/Kuala_Lumpur", "Asia/Yangon", "Asia/Phnom_Penh", "Asia/Vientiane", "Asia/Brunei", "Asia/Tokyo", "Asia/Seoul", "Asia/Shanghai", "Asia/Hong_Kong", "Asia/Taipei", "Asia/Ulaanbaatar", "Asia/Kolkata", "Asia/Karachi", "Asia/Dhaka", "Asia/Colombo", "Asia/Dubai", "Asia/Riyadh", "Asia/Qatar", "Asia/Tehran", "Asia/Jerusalem", "Europe/London", "Europe/Paris", "Europe/Berlin", "Europe/Amsterdam", "Europe/Rome", "Europe/Madrid", "Europe/Moscow", "Europe/Istanbul", "America/New_York", "America/Chicago", "America/Denver", "America/Los_Angeles", "America/Toronto", "America/Vancouver", "America/Mexico_City", "America/Sao_Paulo", "America/Buenos_Aires", "Australia/Sydney", "Australia/Melbourne", "Australia/Perth", "Pacific/Auckland"];
29
- /** @deprecated Use `APP_TIMEZONE_PRESET` or `getAllIanaTimezones()`. */
30
- declare const APP_TIMEZONE_OPTIONS: readonly ["UTC", "Asia/Ho_Chi_Minh", "Asia/Bangkok", "Asia/Singapore", "Asia/Jakarta", "Asia/Manila", "Asia/Kuala_Lumpur", "Asia/Yangon", "Asia/Phnom_Penh", "Asia/Vientiane", "Asia/Brunei", "Asia/Tokyo", "Asia/Seoul", "Asia/Shanghai", "Asia/Hong_Kong", "Asia/Taipei", "Asia/Ulaanbaatar", "Asia/Kolkata", "Asia/Karachi", "Asia/Dhaka", "Asia/Colombo", "Asia/Dubai", "Asia/Riyadh", "Asia/Qatar", "Asia/Tehran", "Asia/Jerusalem", "Europe/London", "Europe/Paris", "Europe/Berlin", "Europe/Amsterdam", "Europe/Rome", "Europe/Madrid", "Europe/Moscow", "Europe/Istanbul", "America/New_York", "America/Chicago", "America/Denver", "America/Los_Angeles", "America/Toronto", "America/Vancouver", "America/Mexico_City", "America/Sao_Paulo", "America/Buenos_Aires", "Australia/Sydney", "Australia/Melbourne", "Australia/Perth", "Pacific/Auckland"];
31
29
  type AppTimezonePreset = (typeof APP_TIMEZONE_PRESET)[number];
32
30
  /**
33
31
  * Preferred IANA ids not returned by all runtimes (e.g. Node lists `Asia/Saigon` only).
@@ -39,8 +37,6 @@ declare function resolveTimezoneForIntl(timezone: string): string;
39
37
  /** Full IANA list from runtime — sorted lexicographically. */
40
38
  declare function getAllIanaTimezones(): readonly string[];
41
39
  declare function isValidIanaTimezone(value: string): boolean;
42
- /** @deprecated Use `isValidIanaTimezone`. */
43
- declare function isKnownAppTimezone(value: string): value is AppTimezonePreset;
44
40
  /**
45
41
  * Options for TimezonePicker.
46
42
  * - `configured` omitted/empty → full IANA list
@@ -137,4 +133,4 @@ declare function useFormatting(): {
137
133
  /** Alias for useFormatting — emphasises timezone-aware datetime helpers. */
138
134
  declare const useDateTime: typeof useFormatting;
139
135
 
140
- export { APP_DATE_FORMAT_OPTIONS, APP_LOCALE_CONFIG, APP_TIMEZONE_OPTIONS, APP_TIMEZONE_PRESET, APP_TIME_FORMAT_OPTIONS, AppDateFormat, AppLocale, type AppLocaleConfig, AppProvider, AppRequestHeaders, AppTimeFormat, AppTimezone, type AppTimezonePreset, DEFAULT_STORAGE_KEY, FormatDateOptions, type StoredAppPreferences, TIMEZONE_ALIASES, formatDate, formatTimezoneDisplayLabel, getAllIanaTimezones, getAppRequestHeaders, getBrowserTimezone, getDateFnsLocale, getDateFormatLabel, getDayPickerLocale, getTimeFormatLabel, getTimezoneCityName, getTimezoneLabel, getTimezoneOffsetLabel, isAppLocale, isKnownAppTimezone, isValidIanaTimezone, readStoredPreferences, resetAppRequestHeaders, resetIanaTimezoneCacheForTests, resolveDefaultDateFormat, resolveDefaultTimeFormat, resolveDefaultTimezone, resolveTimezoneForIntl, resolveTimezonePickerOptions, syncAppRequestHeaders, useAppContext, useAppDateFormat, useAppLocale, useAppTimeFormat, useAppTimezone, useDateTime, useFormatting, useOptionalAppContext, writeStoredPreferences };
136
+ export { APP_DATE_FORMAT_OPTIONS, APP_LOCALE_CONFIG, APP_TIMEZONE_PRESET, APP_TIME_FORMAT_OPTIONS, AppDateFormat, AppLocale, type AppLocaleConfig, AppProvider, AppRequestHeaders, AppTimeFormat, AppTimezone, type AppTimezonePreset, DEFAULT_STORAGE_KEY, FormatDateOptions, type StoredAppPreferences, TIMEZONE_ALIASES, formatDate, formatTimezoneDisplayLabel, getAllIanaTimezones, getAppRequestHeaders, getBrowserTimezone, getDateFnsLocale, getDateFormatLabel, getDayPickerLocale, getTimeFormatLabel, getTimezoneCityName, getTimezoneLabel, getTimezoneOffsetLabel, isAppLocale, isValidIanaTimezone, readStoredPreferences, resetAppRequestHeaders, resetIanaTimezoneCacheForTests, resolveDefaultDateFormat, resolveDefaultTimeFormat, resolveDefaultTimezone, resolveTimezoneForIntl, resolveTimezonePickerOptions, syncAppRequestHeaders, useAppContext, useAppDateFormat, useAppLocale, useAppTimeFormat, useAppTimezone, useDateTime, useFormatting, useOptionalAppContext, writeStoredPreferences };
package/dist/app/index.js CHANGED
@@ -1,7 +1,7 @@
1
- import { useAppContext } from '../chunk-HTG5VHU7.js';
2
- export { APP_LOCALES, APP_REQUEST_HEADER_LOCALE, APP_REQUEST_HEADER_TIMEZONE, APP_TIMEZONE_OPTIONS, APP_TIMEZONE_PRESET, APP_TIME_FORMAT_OPTIONS, AppProvider, DEFAULT_STORAGE_KEY, TIMEZONE_ALIASES, formatTimezoneDisplayLabel, getAllIanaTimezones, getAppRequestHeaders, getBrowserTimezone, getTimeFormatLabel, getTimezoneCityName, getTimezoneLabel, getTimezoneOffsetLabel, isKnownAppTimezone, isValidIanaTimezone, readStoredPreferences, resetAppRequestHeaders, resetIanaTimezoneCacheForTests, resolveDefaultTimeFormat, resolveDefaultTimezone, resolveTimezoneForIntl, resolveTimezonePickerOptions, syncAppRequestHeaders, useAppContext, useAppDateFormat, useAppLocale, useAppTimeFormat, useAppTimezone, useOptionalAppContext, usePickerLocales, useTranslation, writeStoredPreferences } from '../chunk-HTG5VHU7.js';
3
- import { formatDate } from '../chunk-6CSBMMZS.js';
4
- export { APP_DATE_FORMATS, APP_DATE_FORMAT_OPTIONS, APP_LOCALE_CONFIG, APP_REQUEST_HEADER_DATE_FORMAT, APP_REQUEST_HEADER_TIME_FORMAT, APP_TIME_FORMATS, detectFormatDateKind, formatAppDate, formatAppDateLong, formatAppDateTime, formatAppRelative, formatAppTime, formatCalendarDate, formatDate, formatTimeOfDay, getDateFnsLocale, getDateFormatLabel, getDatePattern, getDateTimePattern, getDatetimeContext, getDayPickerLocale, getTimePattern, isAppDateFormat, isAppLocale, isAppTimeFormat, isFormatDateValue, isValidHhmm, normalizeHhmm, parseDateInput, resolveDefaultDateFormat, syncDatetimeContext } from '../chunk-6CSBMMZS.js';
1
+ import { useAppContext } from '../chunk-TXRYSMOD.js';
2
+ export { APP_LOCALES, APP_REQUEST_HEADER_LOCALE, APP_REQUEST_HEADER_TIMEZONE, APP_TIMEZONE_PRESET, APP_TIME_FORMAT_OPTIONS, AppProvider, DEFAULT_STORAGE_KEY, TIMEZONE_ALIASES, formatTimezoneDisplayLabel, getAllIanaTimezones, getAppRequestHeaders, getBrowserTimezone, getTimeFormatLabel, getTimezoneCityName, getTimezoneLabel, getTimezoneOffsetLabel, isValidIanaTimezone, readStoredPreferences, resetAppRequestHeaders, resetIanaTimezoneCacheForTests, resolveDefaultTimeFormat, resolveDefaultTimezone, resolveTimezoneForIntl, resolveTimezonePickerOptions, syncAppRequestHeaders, useAppContext, useAppDateFormat, useAppLocale, useAppTimeFormat, useAppTimezone, useOptionalAppContext, usePickerLocales, useTranslation, writeStoredPreferences } from '../chunk-TXRYSMOD.js';
3
+ import { formatDate } from '../chunk-3ELRYXJK.js';
4
+ export { APP_DATE_FORMATS, APP_DATE_FORMAT_OPTIONS, APP_LOCALE_CONFIG, APP_REQUEST_HEADER_DATE_FORMAT, APP_REQUEST_HEADER_TIME_FORMAT, APP_TIME_FORMATS, detectFormatDateKind, formatAppDate, formatAppDateLong, formatAppDateTime, formatAppRelative, formatAppTime, formatCalendarDate, formatDate, formatTimeOfDay, getDateFnsLocale, getDateFormatLabel, getDatePattern, getDateTimePattern, getDatetimeContext, getDayPickerLocale, getTimePattern, isAppDateFormat, isAppLocale, isAppTimeFormat, isFormatDateValue, isValidHhmm, normalizeHhmm, parseDateInput, resolveDefaultDateFormat, syncDatetimeContext } from '../chunk-3ELRYXJK.js';
5
5
  import { useMemo } from 'react';
6
6
 
7
7
  function useFormatting() {
@@ -1,7 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import * as CheckboxPrimitive from '@radix-ui/react-checkbox';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
- import { c as CheckboxGroupProp } from './data-entry.prop-BR4vNA1j.js';
4
+ import { b as CheckboxGroupProp } from './data-entry.prop-6J0o45se.js';
5
5
 
6
6
  declare function CheckboxGroup({ value: controlledValue, defaultValue, onValueChange, options, orientation, disabled, name, className, children, }: CheckboxGroupProp): react_jsx_runtime.JSX.Element;
7
7
 
@@ -1,7 +1,7 @@
1
- import { humanError } from './chunk-X2VY4MOW.js';
1
+ import { humanError } from './chunk-FK5QEFVY.js';
2
2
  import { Flex } from './chunk-INIIF7F7.js';
3
3
  import { Button } from './chunk-M4PZNAMV.js';
4
- import { useTranslation } from './chunk-HTG5VHU7.js';
4
+ import { useTranslation } from './chunk-TXRYSMOD.js';
5
5
  import { cn } from './chunk-U7N2A7A3.js';
6
6
  import * as React from 'react';
7
7
  import { Info, CheckCircle2, TriangleAlert, AlertCircle, X, RefreshCw } from 'lucide-react';
@@ -63,6 +63,7 @@ var en_default = {
63
63
  clearSearch: "Clear search",
64
64
  clearFilters: "Clear filters",
65
65
  first: "First",
66
+ previous: "Previous",
66
67
  next: "Next",
67
68
  selectedCount: "{count} selected",
68
69
  typeToConfirm: "Type {phrase} to confirm"
@@ -278,6 +279,14 @@ var en_default = {
278
279
  empty: "No data",
279
280
  loading: "Loading\u2026"
280
281
  },
282
+ dataGrid: {
283
+ search: "Search",
284
+ searchPlaceholder: "Search\u2026",
285
+ view: "View",
286
+ toggleColumns: "Toggle columns",
287
+ rowsPerPage: "Rows per page",
288
+ pageOf: "Page {page} of {total}"
289
+ },
281
290
  status: {
282
291
  active: "Active",
283
292
  completed: "Completed",
@@ -319,6 +328,7 @@ var ja_default = {
319
328
  clearSearch: "\u691C\u7D22\u3092\u30AF\u30EA\u30A2",
320
329
  clearFilters: "\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u30AF\u30EA\u30A2",
321
330
  first: "\u6700\u521D",
331
+ previous: "\u524D\u3078",
322
332
  next: "\u6B21\u3078",
323
333
  selectedCount: "{count} \u4EF6\u9078\u629E",
324
334
  typeToConfirm: "\u78BA\u8A8D\u306E\u305F\u3081 {phrase} \u3068\u5165\u529B"
@@ -534,6 +544,14 @@ var ja_default = {
534
544
  empty: "\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093",
535
545
  loading: "\u8AAD\u307F\u8FBC\u307F\u4E2D\u2026"
536
546
  },
547
+ dataGrid: {
548
+ search: "\u691C\u7D22",
549
+ searchPlaceholder: "\u691C\u7D22\u2026",
550
+ view: "\u8868\u793A",
551
+ toggleColumns: "\u5217\u306E\u8868\u793A\u5207\u66FF",
552
+ rowsPerPage: "\u8868\u793A\u4EF6\u6570",
553
+ pageOf: "{page} / {total} \u30DA\u30FC\u30B8"
554
+ },
537
555
  status: {
538
556
  active: "\u6709\u52B9",
539
557
  completed: "\u5B8C\u4E86",
@@ -575,6 +593,7 @@ var vi_default = {
575
593
  clearSearch: "X\xF3a t\xECm ki\u1EBFm",
576
594
  clearFilters: "X\xF3a b\u1ED9 l\u1ECDc",
577
595
  first: "\u0110\u1EA7u",
596
+ previous: "Tr\u01B0\u1EDBc",
578
597
  next: "Ti\u1EBFp",
579
598
  selectedCount: "{count} \u0111\xE3 ch\u1ECDn",
580
599
  typeToConfirm: "Nh\u1EADp {phrase} \u0111\u1EC3 x\xE1c nh\u1EADn"
@@ -790,6 +809,14 @@ var vi_default = {
790
809
  empty: "Ch\u01B0a c\xF3 d\u1EEF li\u1EC7u",
791
810
  loading: "\u0110ang t\u1EA3i\u2026"
792
811
  },
812
+ dataGrid: {
813
+ search: "T\xECm ki\u1EBFm",
814
+ searchPlaceholder: "T\xECm ki\u1EBFm\u2026",
815
+ view: "Hi\u1EC3n th\u1ECB",
816
+ toggleColumns: "\u1EA8n/hi\u1EC7n c\u1ED9t",
817
+ rowsPerPage: "S\u1ED1 d\xF2ng/trang",
818
+ pageOf: "Trang {page}/{total}"
819
+ },
793
820
  status: {
794
821
  active: "\u0110ang ho\u1EA1t \u0111\u1ED9ng",
795
822
  completed: "Ho\xE0n th\xE0nh",
@@ -1,22 +1,15 @@
1
+ import { EmptyState } from './chunk-YD7V2HGZ.js';
1
2
  import { Flex, densityClass } from './chunk-INIIF7F7.js';
2
3
  import { Checkbox } from './chunk-BE6GJGKJ.js';
3
4
  import { Button } from './chunk-M4PZNAMV.js';
4
5
  import { Table, TableHeader, TableRow, TableHead, TableBody, TableCell } from './chunk-4MMIMZMK.js';
5
6
  import { tableCellPaddingClass, tableRowHeightClass, controlIconSmClass } from './chunk-IBK5D2Q6.js';
6
- import { useTranslation } from './chunk-HTG5VHU7.js';
7
+ import { useTranslation } from './chunk-TXRYSMOD.js';
7
8
  import { cn } from './chunk-U7N2A7A3.js';
8
9
  import { jsx, jsxs } from 'react/jsx-runtime';
9
10
  import * as React from 'react';
10
11
  import { Layers, Layers2, ArrowUp, ArrowDown, ChevronsUpDown, MoreHorizontal } from 'lucide-react';
11
12
 
12
- function EmptyState({ icon: Icon, title, description, action, className }) {
13
- return /* @__PURE__ */ jsxs("div", { "data-slot": "empty-state", role: "status", className: cn("ui-empty-state", className), children: [
14
- Icon && /* @__PURE__ */ jsx("div", { className: "ui-empty-state-icon", children: /* @__PURE__ */ jsx(Icon, { className: "text-muted-foreground size-6", "aria-hidden": "true" }) }),
15
- /* @__PURE__ */ jsx("h3", { className: "ui-empty-state-title", children: title }),
16
- description && /* @__PURE__ */ jsx("p", { className: "ui-empty-state-description", children: description }),
17
- action && /* @__PURE__ */ jsx("div", { children: action })
18
- ] });
19
- }
20
13
  function Descriptions({ columns = 2, className, children }) {
21
14
  const colsClass = columns === 1 ? "grid-cols-1" : columns === 3 ? "grid-cols-1 sm:grid-cols-2 lg:grid-cols-3" : "grid-cols-1 sm:grid-cols-2";
22
15
  return /* @__PURE__ */ jsx("dl", { className: cn("grid gap-x-6 gap-y-3", colsClass, className), children });
@@ -390,4 +383,4 @@ DataTable.RowActions = function DataTableRowActions({ ariaLabel, children }) {
390
383
  };
391
384
  DataTable.RowActions.displayName = "DataTable.RowActions";
392
385
 
393
- export { DataTable, Descriptions, EmptyState };
386
+ export { DataTable, Descriptions };
@@ -0,0 +1,83 @@
1
+ import { Input } from './chunk-VOHTRR5X.js';
2
+ import { Label } from './chunk-7PWBC4BY.js';
3
+ import { useTranslation } from './chunk-TXRYSMOD.js';
4
+ import { useDebouncedValue } from './chunk-LFW37FGG.js';
5
+ import { cn } from './chunk-U7N2A7A3.js';
6
+ import * as React from 'react';
7
+ import { Search, X } from 'lucide-react';
8
+ import { jsxs, jsx } from 'react/jsx-runtime';
9
+
10
+ function SearchInput({
11
+ value: controlledValue,
12
+ defaultValue = "",
13
+ placeholder,
14
+ debounce = 250,
15
+ onValueChange,
16
+ onSearch,
17
+ label,
18
+ ariaLabel,
19
+ className,
20
+ inputClassName,
21
+ id,
22
+ disabled = false
23
+ }) {
24
+ const { t } = useTranslation();
25
+ const isControlled = controlledValue !== void 0;
26
+ const [internal, setInternal] = React.useState(defaultValue);
27
+ const value = isControlled ? controlledValue : internal;
28
+ const debounced = useDebouncedValue(value, debounce);
29
+ const reactId = React.useId();
30
+ const inputId = id ?? `search-${reactId}`;
31
+ const resolvedPlaceholder = placeholder ?? t("dataEntry.searchInput.placeholder");
32
+ const resolvedAriaLabel = ariaLabel ?? t("common.search");
33
+ const onSearchRef = React.useRef(onSearch);
34
+ React.useEffect(() => {
35
+ onSearchRef.current = onSearch;
36
+ });
37
+ React.useEffect(() => {
38
+ onSearchRef.current(debounced);
39
+ }, [debounced]);
40
+ const setValue = (v) => {
41
+ if (!isControlled) setInternal(v);
42
+ onValueChange?.(v);
43
+ };
44
+ return /* @__PURE__ */ jsxs("div", { className: cn("ui-search-input", className), children: [
45
+ label !== void 0 ? /* @__PURE__ */ jsx(Label, { htmlFor: inputId, className: "ui-search-input-label", children: label }) : /* @__PURE__ */ jsx(Label, { htmlFor: inputId, className: "sr-only", children: resolvedAriaLabel }),
46
+ /* @__PURE__ */ jsxs("div", { className: "ui-search-input-field", children: [
47
+ /* @__PURE__ */ jsx(Search, { className: "ui-search-input-icon", "aria-hidden": "true" }),
48
+ /* @__PURE__ */ jsx(
49
+ Input,
50
+ {
51
+ id: inputId,
52
+ type: "text",
53
+ role: "searchbox",
54
+ value,
55
+ onChange: (e) => {
56
+ setValue(e.target.value);
57
+ },
58
+ placeholder: resolvedPlaceholder,
59
+ "aria-label": resolvedAriaLabel,
60
+ className: cn(
61
+ "ui-search-input-control !pr-[var(--search-input-end-padding)] !pl-[var(--search-input-start-padding)]",
62
+ inputClassName
63
+ ),
64
+ disabled
65
+ }
66
+ ),
67
+ value && !disabled && /* @__PURE__ */ jsx(
68
+ "button",
69
+ {
70
+ type: "button",
71
+ onClick: () => {
72
+ setValue("");
73
+ },
74
+ "aria-label": t("common.clearSearch"),
75
+ className: "ui-search-input-clear",
76
+ children: /* @__PURE__ */ jsx(X, {})
77
+ }
78
+ )
79
+ ] })
80
+ ] });
81
+ }
82
+
83
+ export { SearchInput };
@@ -1,6 +1,6 @@
1
- import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from './chunk-NXVCI6YB.js';
1
+ import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from './chunk-QQWA5ZRQ.js';
2
2
  import { Button } from './chunk-M4PZNAMV.js';
3
- import { useTranslation } from './chunk-HTG5VHU7.js';
3
+ import { useTranslation } from './chunk-TXRYSMOD.js';
4
4
  import { cn } from './chunk-U7N2A7A3.js';
5
5
  import * as React from 'react';
6
6
  import { MoreHorizontal, ChevronLeft, ChevronRight } from 'lucide-react';
@@ -1,7 +1,7 @@
1
- import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from './chunk-NXVCI6YB.js';
1
+ import { Select, SelectTrigger, SelectValue, SelectContent, SelectItem } from './chunk-QQWA5ZRQ.js';
2
2
  import { Button } from './chunk-M4PZNAMV.js';
3
- import { useOptionalAppContext, useTranslation, APP_TIME_FORMAT_OPTIONS, getTimeFormatLabel, resolveTimezonePickerOptions, getTimezoneLabel, APP_LOCALES } from './chunk-HTG5VHU7.js';
4
- import { APP_DATE_FORMAT_OPTIONS, getDateFormatLabel } from './chunk-6CSBMMZS.js';
3
+ import { useOptionalAppContext, useTranslation, APP_TIME_FORMAT_OPTIONS, getTimeFormatLabel, resolveTimezonePickerOptions, getTimezoneLabel, APP_LOCALES } from './chunk-TXRYSMOD.js';
4
+ import { APP_DATE_FORMAT_OPTIONS, getDateFormatLabel } from './chunk-3ELRYXJK.js';
5
5
  import { cn } from './chunk-U7N2A7A3.js';
6
6
  import * as React from 'react';
7
7
  import { useId } from 'react';
@@ -3,7 +3,7 @@ import { Command, CommandInput } from './chunk-HTEL5DQI.js';
3
3
  import { Button } from './chunk-M4PZNAMV.js';
4
4
  import { Popover, PopoverTrigger, PopoverContent } from './chunk-DY5C44UP.js';
5
5
  import { ScrollArea, ScrollBar } from './chunk-3KPEZ5CF.js';
6
- import { useTranslation } from './chunk-HTG5VHU7.js';
6
+ import { useTranslation } from './chunk-TXRYSMOD.js';
7
7
  import { cn } from './chunk-U7N2A7A3.js';
8
8
  import * as React from 'react';
9
9
  import { Check, X, ChevronsUpDown, ChevronRight, Minus } from 'lucide-react';
@@ -1,15 +1,6 @@
1
- import { formatDate, getSyncedLocale, translateCurrent } from './chunk-6CSBMMZS.js';
1
+ import { getSyncedLocale, translateCurrent } from './chunk-3ELRYXJK.js';
2
2
 
3
3
  // src/lib/format.ts
4
- function formatDateTime(value, options) {
5
- return formatDate(value, { ...options, kind: "datetime" });
6
- }
7
- function formatDateLong(value, options) {
8
- return formatDate(value, { ...options, kind: "long" });
9
- }
10
- function formatRelative(value, options) {
11
- return formatDate(value, { ...options, kind: "relative" });
12
- }
13
4
  function formatBytes(n, locale = getSyncedLocale()) {
14
5
  if (n == null) return "\u2014";
15
6
  const num = (digits, scaled) => new Intl.NumberFormat(locale, {
@@ -43,4 +34,4 @@ function humanError(err) {
43
34
  return translateCurrent("feedback.genericError");
44
35
  }
45
36
 
46
- export { formatBytes, formatCurrency, formatDateLong, formatDateTime, formatRelative, humanError, shortId };
37
+ export { formatBytes, formatCurrency, humanError, shortId };
@@ -1,5 +1,5 @@
1
1
  import { controlIconClass } from './chunk-IBK5D2Q6.js';
2
- import { useTranslation } from './chunk-HTG5VHU7.js';
2
+ import { useTranslation } from './chunk-TXRYSMOD.js';
3
3
  import { cn } from './chunk-U7N2A7A3.js';
4
4
  import { Check, Loader2, X, Circle } from 'lucide-react';
5
5
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
@@ -1,9 +1,9 @@
1
- import { Tooltip, TooltipTrigger, TooltipContent } from './chunk-32WO3YLB.js';
2
1
  import { DropdownMenu, DropdownMenuTrigger } from './chunk-LMKUKCTN.js';
2
+ import { Tooltip, TooltipTrigger, TooltipContent } from './chunk-32WO3YLB.js';
3
3
  import { Collapsible, CollapsibleTrigger, CollapsibleContent } from './chunk-DV52WNXO.js';
4
4
  import { densityClass, pageContainerVariantClass } from './chunk-INIIF7F7.js';
5
5
  import { Popover, PopoverTrigger, PopoverContent } from './chunk-DY5C44UP.js';
6
- import { useTranslation } from './chunk-HTG5VHU7.js';
6
+ import { useTranslation } from './chunk-TXRYSMOD.js';
7
7
  import { cn } from './chunk-U7N2A7A3.js';
8
8
  import { ChevronRight, ChevronDown, PanelLeftOpen, PanelLeftClose, Search, Bell, SlidersHorizontal } from 'lucide-react';
9
9
  import { jsxs, jsx, Fragment } from 'react/jsx-runtime';
@@ -1,88 +1,14 @@
1
+ import { SearchInput } from './chunk-BCBK4FLV.js';
1
2
  import { reactNodeText } from './chunk-SMLKNECP.js';
2
- import { Input } from './chunk-VOHTRR5X.js';
3
3
  import { Checkbox } from './chunk-BE6GJGKJ.js';
4
4
  import { Button } from './chunk-M4PZNAMV.js';
5
5
  import { ScrollArea } from './chunk-3KPEZ5CF.js';
6
- import { Label } from './chunk-7PWBC4BY.js';
7
- import { useTranslation } from './chunk-HTG5VHU7.js';
8
- import { useDebouncedValue } from './chunk-LFW37FGG.js';
6
+ import { useTranslation } from './chunk-TXRYSMOD.js';
9
7
  import { cn } from './chunk-U7N2A7A3.js';
10
8
  import * as React from 'react';
11
- import { Search, X, ChevronRight, ChevronLeft } from 'lucide-react';
9
+ import { ChevronRight, ChevronLeft } from 'lucide-react';
12
10
  import { jsxs, jsx } from 'react/jsx-runtime';
13
11
 
14
- function SearchInput({
15
- value: controlledValue,
16
- defaultValue = "",
17
- placeholder,
18
- debounce = 250,
19
- onValueChange,
20
- onSearch,
21
- label,
22
- ariaLabel,
23
- className,
24
- inputClassName,
25
- id,
26
- disabled = false
27
- }) {
28
- const { t } = useTranslation();
29
- const isControlled = controlledValue !== void 0;
30
- const [internal, setInternal] = React.useState(defaultValue);
31
- const value = isControlled ? controlledValue : internal;
32
- const debounced = useDebouncedValue(value, debounce);
33
- const reactId = React.useId();
34
- const inputId = id ?? `search-${reactId}`;
35
- const resolvedPlaceholder = placeholder ?? t("dataEntry.searchInput.placeholder");
36
- const resolvedAriaLabel = ariaLabel ?? t("common.search");
37
- const onSearchRef = React.useRef(onSearch);
38
- React.useEffect(() => {
39
- onSearchRef.current = onSearch;
40
- });
41
- React.useEffect(() => {
42
- onSearchRef.current(debounced);
43
- }, [debounced]);
44
- const setValue = (v) => {
45
- if (!isControlled) setInternal(v);
46
- onValueChange?.(v);
47
- };
48
- return /* @__PURE__ */ jsxs("div", { className: cn("ui-search-input", className), children: [
49
- label !== void 0 ? /* @__PURE__ */ jsx(Label, { htmlFor: inputId, className: "ui-search-input-label", children: label }) : /* @__PURE__ */ jsx(Label, { htmlFor: inputId, className: "sr-only", children: resolvedAriaLabel }),
50
- /* @__PURE__ */ jsxs("div", { className: "ui-search-input-field", children: [
51
- /* @__PURE__ */ jsx(Search, { className: "ui-search-input-icon", "aria-hidden": "true" }),
52
- /* @__PURE__ */ jsx(
53
- Input,
54
- {
55
- id: inputId,
56
- type: "text",
57
- role: "searchbox",
58
- value,
59
- onChange: (e) => {
60
- setValue(e.target.value);
61
- },
62
- placeholder: resolvedPlaceholder,
63
- "aria-label": resolvedAriaLabel,
64
- className: cn(
65
- "ui-search-input-control !pr-[var(--search-input-end-padding)] !pl-[var(--search-input-start-padding)]",
66
- inputClassName
67
- ),
68
- disabled
69
- }
70
- ),
71
- value && !disabled && /* @__PURE__ */ jsx(
72
- "button",
73
- {
74
- type: "button",
75
- onClick: () => {
76
- setValue("");
77
- },
78
- "aria-label": t("common.clearSearch"),
79
- className: "ui-search-input-clear",
80
- children: /* @__PURE__ */ jsx(X, {})
81
- }
82
- )
83
- ] })
84
- ] });
85
- }
86
12
  function TransferPanel({
87
13
  title,
88
14
  items,
@@ -264,4 +190,4 @@ function Transfer({
264
190
  ] });
265
191
  }
266
192
 
267
- export { SearchInput, Transfer };
193
+ export { Transfer };
@@ -1,5 +1,5 @@
1
1
  import { Input } from './chunk-VOHTRR5X.js';
2
- import { useTranslation } from './chunk-HTG5VHU7.js';
2
+ import { useTranslation } from './chunk-TXRYSMOD.js';
3
3
  import { cn } from './chunk-U7N2A7A3.js';
4
4
  import * as React2 from 'react';
5
5
  import { EyeOff, Eye, Minus, Star, X } from 'lucide-react';
@@ -1,4 +1,4 @@
1
- import { normalizeHhmm, isValidHhmm } from './chunk-6CSBMMZS.js';
1
+ import { normalizeHhmm, isValidHhmm } from './chunk-3ELRYXJK.js';
2
2
  import { cn } from './chunk-U7N2A7A3.js';
3
3
  import * as React from 'react';
4
4
  import { jsx } from 'react/jsx-runtime';
@@ -337,8 +337,6 @@ var COMPONENT_PROP_REGISTRY = {
337
337
  "PageContainerVariantProp"
338
338
  ]
339
339
  },
340
- StackProp: { group: "layout", file: "components/layout.prop.ts", vocabulary: ["GapProp"] },
341
- InlineProp: { group: "layout", file: "components/layout.prop.ts", vocabulary: ["GapProp"] },
342
340
  FlexDirectionProp: { group: "layout", file: "components/layout.prop.ts", vocabulary: [] },
343
341
  FlexAlignProp: { group: "layout", file: "components/layout.prop.ts", vocabulary: [] },
344
342
  FlexJustifyProp: { group: "layout", file: "components/layout.prop.ts", vocabulary: [] },
@@ -399,12 +397,6 @@ var COMPONENT_PROP_REGISTRY = {
399
397
  file: "components/layout.prop.ts",
400
398
  vocabulary: ["ChildrenProp", "OnOpenChangeProp", "OnValueChangeProp"]
401
399
  },
402
- PageHeaderProp: {
403
- group: "layout",
404
- file: "components/layout.prop.ts",
405
- vocabulary: ["TitleProp", "SubtitleProp", "ExtraProp", "BreadcrumbProp"],
406
- deprecated: true
407
- },
408
400
  ButtonProp: {
409
401
  group: "general",
410
402
  file: "components/general.prop.ts",
@@ -491,25 +483,6 @@ var COMPONENT_PROP_REGISTRY = {
491
483
  file: "components/data-entry.prop.ts",
492
484
  vocabulary: ["ValueProp", "OnValueChangeProp", "DisabledProp", "IdProp"]
493
485
  },
494
- AutocompleteProp: {
495
- group: "data-entry",
496
- file: "components/data-entry.prop.ts",
497
- vocabulary: [
498
- "PlaceholderProp",
499
- "ValueProp",
500
- "OnValueChangeProp",
501
- "DisabledProp",
502
- "IdProp",
503
- "EmptyMessageProp",
504
- "ClassNameProp"
505
- ],
506
- note: "Deprecated \u2014 a thin wrapper over SearchSelect (static options)."
507
- },
508
- AutocompleteOptionProp: {
509
- group: "data-entry",
510
- file: "components/data-entry.prop.ts",
511
- vocabulary: ["ValueProp", "LabelProp"]
512
- },
513
486
  SearchSelectProp: {
514
487
  group: "data-entry",
515
488
  file: "components/data-entry.prop.ts",
@@ -693,11 +666,6 @@ var COMPONENT_PROP_REGISTRY = {
693
666
  "ClassNameProp"
694
667
  ]
695
668
  },
696
- MutationFeedbackProp: {
697
- group: "query",
698
- file: "components/query.prop.ts",
699
- vocabulary: ["OnValueChangeProp"]
700
- },
701
669
  ButtonRefetchProp: {
702
670
  group: "query",
703
671
  file: "components/query.prop.ts",
@@ -710,11 +678,6 @@ var COMPONENT_PROP_REGISTRY = {
710
678
  "LabelProp"
711
679
  ]
712
680
  },
713
- QueryRefetchButtonProp: {
714
- group: "query",
715
- file: "components/query.prop.ts",
716
- vocabulary: ["LabelProp", "ClassNameProp"]
717
- },
718
681
  InfiniteQueryStateProp: {
719
682
  group: "query",
720
683
  file: "components/query.prop.ts",
@@ -759,16 +722,6 @@ var COMPONENT_PROP_REGISTRY = {
759
722
  vocabulary: ["ClassNameProp", "ChildrenProp"]
760
723
  },
761
724
  SkeletonRowsProp: { group: "feedback", file: "components/feedback.prop.ts", vocabulary: [] },
762
- FilterBarProp: {
763
- group: "navigation",
764
- file: "components/navigation.prop.ts",
765
- vocabulary: ["OnClearFiltersProp", "HasActiveFiltersProp", "ChildrenProp"]
766
- },
767
- FilterGroupProp: {
768
- group: "navigation",
769
- file: "components/navigation.prop.ts",
770
- vocabulary: ["LabelProp", "ChildrenProp"]
771
- },
772
725
  ToolbarProp: {
773
726
  group: "navigation",
774
727
  file: "components/navigation.prop.ts",
@@ -4,7 +4,7 @@ import { Checkbox } from './chunk-BE6GJGKJ.js';
4
4
  import { Button } from './chunk-M4PZNAMV.js';
5
5
  import { Popover, PopoverTrigger, PopoverContent } from './chunk-DY5C44UP.js';
6
6
  import { ScrollArea } from './chunk-3KPEZ5CF.js';
7
- import { useTranslation } from './chunk-HTG5VHU7.js';
7
+ import { useTranslation } from './chunk-TXRYSMOD.js';
8
8
  import { cn } from './chunk-U7N2A7A3.js';
9
9
  import * as React from 'react';
10
10
  import { X, ChevronsUpDown, ChevronDown, ChevronRight } from 'lucide-react';
@@ -3,7 +3,7 @@ import { Input } from './chunk-VOHTRR5X.js';
3
3
  import { Button } from './chunk-M4PZNAMV.js';
4
4
  import { Popover, PopoverTrigger, PopoverContent } from './chunk-DY5C44UP.js';
5
5
  import { controlTriggerClass } from './chunk-IBK5D2Q6.js';
6
- import { useTranslation } from './chunk-HTG5VHU7.js';
6
+ import { useTranslation } from './chunk-TXRYSMOD.js';
7
7
  import { cn } from './chunk-U7N2A7A3.js';
8
8
  import * as React from 'react';
9
9
  import * as SelectPrimitive from '@radix-ui/react-select';