@epam/ai-dial-ui-kit 0.15.0-dev.1 → 0.15.0-dev.11

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 (85) hide show
  1. package/README.md +147 -0
  2. package/dist/CHANGELOG.md +17 -0
  3. package/dist/DateCellRenderer-Ba9tlNbk.cjs +1 -0
  4. package/dist/{DateCellRenderer-BVM-Q8yx.cjs → DateCellRenderer-S5QJV-Wp.cjs} +26 -26
  5. package/dist/components/Dropdown/Dropdown.js +70 -65
  6. package/dist/components/Dropdown/DropdownSubMenuItem.js +63 -55
  7. package/dist/components/Dropdown/constants.js +15 -13
  8. package/dist/components/DropdownIcon/DropdownIcon.js +43 -32
  9. package/dist/components/New/Accordion/Accordion.js +40 -38
  10. package/dist/components/New/Breadcrumbs/Breadcrumbs.js +159 -0
  11. package/dist/components/New/Breadcrumbs/constants.js +41 -0
  12. package/dist/components/New/ButtonDropdown/ButtonDropdown.js +7 -6
  13. package/dist/components/New/Calendar/Calendar.js +337 -289
  14. package/dist/components/New/CaptionText/CaptionText.js +18 -15
  15. package/dist/components/New/CardShell/CardShell.js +5 -3
  16. package/dist/components/New/Checkbox/Checkbox.js +67 -56
  17. package/dist/components/New/Checkbox/CheckboxBox.js +5 -3
  18. package/dist/components/New/CloseButton/CloseButton.js +18 -16
  19. package/dist/components/New/CollapsibleSidebar/CollapsibleSidebar.js +39 -34
  20. package/dist/components/New/ConfirmationPopup/ConfirmationPopup.js +44 -39
  21. package/dist/components/New/Dropdown/Dropdown.js +101 -95
  22. package/dist/components/New/EllipsisTooltip/EllipsisTooltip.js +20 -18
  23. package/dist/components/New/FileDropzone/FileDropzone.js +27 -25
  24. package/dist/components/New/FilterChips/FilterChips.js +43 -0
  25. package/dist/components/New/FilterChips/constants.js +5 -0
  26. package/dist/components/New/FolderPath/FolderPath.js +29 -28
  27. package/dist/components/New/Highlight/Highlight.js +23 -30
  28. package/dist/components/New/InfoButton/InfoButton.js +13 -11
  29. package/dist/components/New/InlineSelect/InlineSelect.js +43 -41
  30. package/dist/components/New/InteractiveTooltip/InteractiveTooltip.js +41 -39
  31. package/dist/components/New/Label/Label.js +13 -8
  32. package/dist/components/New/MenuItem/MenuItem.js +29 -27
  33. package/dist/components/New/MenuItem/constants.js +9 -8
  34. package/dist/components/New/NoDataContent/NoDataContent.js +21 -19
  35. package/dist/components/New/Notification/Notification.js +29 -27
  36. package/dist/components/New/NumberInput/NumberInput.js +42 -33
  37. package/dist/components/New/PasswordInput/PasswordInput.js +41 -34
  38. package/dist/components/New/Popup/Popup.js +46 -44
  39. package/dist/components/New/Radio/Radio.js +75 -64
  40. package/dist/components/New/RadioGroup/RadioGroup.js +76 -65
  41. package/dist/components/New/RadioGroupPopupField/RadioGroupPopupField.js +117 -106
  42. package/dist/components/New/ResizableContainer/ResizableContainer.js +42 -40
  43. package/dist/components/New/Search/Search.js +29 -27
  44. package/dist/components/New/SegmentedControl/SegmentedControl.js +29 -23
  45. package/dist/components/New/Select/Select.js +120 -109
  46. package/dist/components/New/Switch/Switch.js +69 -58
  47. package/dist/components/New/Tabs/Tabs.js +125 -61
  48. package/dist/components/New/Tag/Tag.js +42 -40
  49. package/dist/components/New/TagInput/TagInput.js +45 -43
  50. package/dist/components/New/ToggleIconButton/ToggleIconButton.js +26 -24
  51. package/dist/components/New/Tooltip/TooltipContent.js +11 -9
  52. package/dist/components/ProgressBar/ProgressBar.js +45 -33
  53. package/dist/components/SchemaRenderer/components/SchemaAdditionalPropertiesEditor.js +46 -31
  54. package/dist/components/SchemaRenderer/components/SchemaKeyValueEditor.js +223 -135
  55. package/dist/components/SchemaRenderer/types.js +19 -8
  56. package/dist/components/SchemaRenderer/utils.js +121 -96
  57. package/dist/components/Skeleton/Skeleton.js +25 -19
  58. package/dist/components/Spinner/Spinner.js +7 -5
  59. package/dist/components-manifest.json +248 -6
  60. package/dist/constants/public-class-names.js +182 -0
  61. package/dist/dial-ui-kit.cjs +2 -2
  62. package/dist/dial-ui-kit.js +227 -217
  63. package/dist/file-manager.cjs +1 -1
  64. package/dist/grid.cjs +1 -1
  65. package/dist/index.css +1 -1
  66. package/dist/src/components/New/Breadcrumbs/Breadcrumbs.d.ts +94 -0
  67. package/dist/src/components/New/Breadcrumbs/constants.d.ts +60 -0
  68. package/dist/src/components/New/Calendar/Calendar.d.ts +14 -1
  69. package/dist/src/components/New/FilterChips/FilterChips.d.ts +69 -0
  70. package/dist/src/components/New/FilterChips/constants.d.ts +13 -0
  71. package/dist/src/components/New/PasswordInput/PasswordInput.d.ts +4 -1
  72. package/dist/src/components/New/Tabs/Tabs.d.ts +54 -6
  73. package/dist/src/components/SchemaRenderer/types.d.ts +11 -0
  74. package/dist/src/components/SchemaRenderer/utils.d.ts +5 -1
  75. package/dist/src/constants/public-class-names.d.ts +173 -0
  76. package/dist/src/index.d.ts +8 -0
  77. package/dist/src/types/breadcrumbs.d.ts +9 -0
  78. package/dist/src/utils/__tests__/timezone.spec.d.ts +1 -0
  79. package/dist/src/utils/timezone.d.ts +24 -0
  80. package/dist/types/breadcrumbs.js +4 -0
  81. package/dist/use-file-manager-tabs-Ff6KIQOF.cjs +3 -0
  82. package/dist/utils/timezone.js +19 -0
  83. package/package.json +2 -2
  84. package/dist/DateCellRenderer-ssp7eaZY.cjs +0 -1
  85. package/dist/use-file-manager-tabs-DjdR_mYM.cjs +0 -3
@@ -1,6 +1,6 @@
1
1
  {
2
- "version": "0.15.0-dev.1",
3
- "generatedAt": "2026-09-14T16:58:20.214Z",
2
+ "version": "0.15.0-dev.11",
3
+ "generatedAt": "2026-09-22T07:47:15.048Z",
4
4
  "kit": {
5
5
  "name": "@epam/ai-dial-ui-kit",
6
6
  "description": "A modern UI kit for building AI DIAL interfaces with React",
@@ -429,6 +429,12 @@
429
429
  "required": false,
430
430
  "description": "Callback fired with the next value when the selection changes"
431
431
  },
432
+ {
433
+ "name": "onBlur",
434
+ "type": "FocusEventHandler<HTMLInputElement>",
435
+ "required": false,
436
+ "description": "Called when the Calendar's input field loses focus, e.g. for on-blur validation"
437
+ },
432
438
  {
433
439
  "name": "labelProps",
434
440
  "type": "LabelProps",
@@ -491,6 +497,13 @@
491
497
  "type": "string",
492
498
  "required": false,
493
499
  "description": "Additional classes merged onto the trigger field, overriding conflicting defaults"
500
+ },
501
+ {
502
+ "name": "showTimezone",
503
+ "type": "boolean",
504
+ "required": false,
505
+ "defaultValue": "false",
506
+ "description": "Shows the viewer's timezone (e.g. `(GMT+01:00) Europe/Berlin`) at the trailing edge of the `time` field"
494
507
  }
495
508
  ],
496
509
  "examples": [
@@ -543,6 +556,71 @@
543
556
  ],
544
557
  "sourceFile": "components/New/FolderPath/FolderPath.tsx"
545
558
  },
559
+ {
560
+ "name": "Breadcrumbs",
561
+ "category": "Components_2_0",
562
+ "generation": "2.0",
563
+ "description": "A navigation trail: where the user is, and every level they can step back to.\naliases: Breadcrumb|NavigationPath|BreadcrumbTrail\nDesign system 2.0\n\nThe last item is the current page — drawn semibold and primary, and never a\ncontrol, since a link to the page you are already on does nothing. Every\nearlier item with an `href` or an `onClick` is a link; one with neither is\ndrawn as plain text, which is how a read-only location path is built.\n\nThe trail never wraps. Segments truncate instead, each revealing its full\nlabel in a tooltip only once it is actually clipped, and a trail longer than\n`maxVisibleItems` collapses its middle behind an ellipsis menu — the root and\nthe current page, the two segments that carry the most meaning, always stay\non screen.\n\na11y: an `<ol>` inside a named `<nav>`, with `aria-current=\"page\"` on the last\nsegment. Separators are decorative and hidden from assistive tech, so the\ntrail is announced as a list of links rather than a string of chevrons.\n\nThe trail is drawn at `dial-small-text` by default; `size` switches it to\n`dial-h2-text` for a trail that doubles as the page heading, where the\ntoken's own semibold weight applies to every segment.\n\nLabels are the caller's to translate; the two accessible names default to\nEnglish and take an override.",
564
+ "props": [
565
+ {
566
+ "name": "items",
567
+ "type": "BreadcrumbsItem[]",
568
+ "required": true,
569
+ "description": "The trail, outermost first; the last entry is the current page"
570
+ },
571
+ {
572
+ "name": "maxVisibleItems",
573
+ "type": "number",
574
+ "required": false,
575
+ "defaultValue": "DEFAULT_MAX_VISIBLE_ITEMS",
576
+ "description": "Segments drawn before the middle collapses behind an ellipsis menu"
577
+ },
578
+ {
579
+ "name": "size",
580
+ "type": "BreadcrumbsSize",
581
+ "required": false,
582
+ "defaultValue": "BreadcrumbsSize.Small",
583
+ "description": "The trail's type scale: `dial-small-text` or `dial-h2-text`"
584
+ },
585
+ {
586
+ "name": "separator",
587
+ "type": "ReactNode",
588
+ "required": false,
589
+ "defaultValue": "defaultSeparator",
590
+ "description": "Node drawn between two segments; defaults to a right chevron"
591
+ },
592
+ {
593
+ "name": "ariaLabel",
594
+ "type": "string",
595
+ "required": false,
596
+ "defaultValue": "'Breadcrumb'",
597
+ "description": "Accessible name for the `<nav>`"
598
+ },
599
+ {
600
+ "name": "overflowAriaLabel",
601
+ "type": "string",
602
+ "required": false,
603
+ "defaultValue": "'Show hidden path segments'",
604
+ "description": "Accessible name for the ellipsis button"
605
+ },
606
+ {
607
+ "name": "className",
608
+ "type": "string",
609
+ "required": false,
610
+ "description": "Additional CSS classes for the `<nav>`"
611
+ },
612
+ {
613
+ "name": "itemClassName",
614
+ "type": "string",
615
+ "required": false,
616
+ "description": "Additional CSS classes applied to every segment"
617
+ }
618
+ ],
619
+ "examples": [
620
+ "<Breadcrumbs\n ariaLabel={t('File path')}\n items={[\n { label: t('My files'), onClick: () => open('/') },\n { label: 'DK Test', onClick: () => open('/DK Test') },\n { label: 'DK Test with nested' },\n ]}\n/>"
621
+ ],
622
+ "sourceFile": "components/New/Breadcrumbs/Breadcrumbs.tsx"
623
+ },
546
624
  {
547
625
  "name": "DangerButton",
548
626
  "category": "Components_2_0",
@@ -1517,7 +1595,7 @@
1517
1595
  "name": "PasswordInput",
1518
1596
  "category": "Components_2_0",
1519
1597
  "generation": "2.0",
1520
- "description": "A password field with a reveal toggle, built on .\naliases: SecureInput|ToggleablePassword\nDesign system 2.0\n\nThe toggle is a real `<button>`, so it is reachable by keyboard and announces\nboth its purpose and its state. `type` and `iconAfter` are owned by this\ncomponent; every other prop is passed through.",
1598
+ "description": "A password field with a reveal toggle, built on .\naliases: SecureInput|ToggleablePassword\nDesign system 2.0\n\nThe toggle is a real `<button>`, so it is reachable by keyboard and announces\nboth its purpose and its state. `type` and `iconAfter` are owned by this\ncomponent; every other prop is passed through.\n\nA disabled field is masked with no toggle at all, and comes back masked if it\nis enabled again.",
1521
1599
  "props": [
1522
1600
  {
1523
1601
  "name": "showPasswordLabel",
@@ -2841,7 +2919,7 @@
2841
2919
  "name": "Tabs",
2842
2920
  "category": "Components_2_0",
2843
2921
  "generation": "2.0",
2844
- "description": "A horizontal row of tabs, underlining the active one and showing optional count badges.\naliases: TabRow|TabNavigation|TabBar\nDesign system 2.0\n\nFollows the ARIA tabs pattern with automatic activation: only the active tab is\nin the tab order, and the arrow keys move both focus and selection. `Home` and\n`End` jump to the first and last tab, and the arrows wrap around the ends.\nTabs marked `disabled` are greyed out, cannot be clicked, and are skipped by\nkeyboard navigation.\n\nThe component renders the tabs only; the panels stay with the consumer.",
2922
+ "description": "A row or rail of tabs, marking the active one and showing optional icons and count badges.\naliases: TabRow|TabNavigation|TabBar|VerticalTabs|SettingsNav|SideNav\nDesign system 2.0\n\nFollows the ARIA tabs pattern with automatic activation: only the active tab is\nin the tab order, and the arrow keys move both focus and selection. `Home` and\n`End` jump to the first and last tab, and the arrows wrap around the ends.\nTabs marked `disabled` are greyed out, cannot be clicked, and are skipped by\nkeyboard navigation.\n\n`TabOrientation.Horizontal` draws the default row: the active tab takes a\ngradient underline, and `ArrowLeft` / `ArrowRight` move along it.\n`TabOrientation.Vertical` draws the settings-page rail instead — full-width\nrows with the active one on a tinted pill rather than an underline, driven by\n`ArrowUp` / `ArrowDown`. The rail is the shape to reach for when the tabs\nlabel whole pages of a settings surface; the row, when they filter one.\n\n`className` lands on whichever element is outermost: the heading wrapper when\n`sectionLabel` is set, the `role=\"tablist\"` itself when it is not.\n\nThe component renders the tabs only; the panels stay with the consumer.",
2845
2923
  "props": [
2846
2924
  {
2847
2925
  "name": "tabs",
@@ -2861,6 +2939,19 @@
2861
2939
  "required": true,
2862
2940
  "description": "Fired with the tab's `id` when the user selects a tab."
2863
2941
  },
2942
+ {
2943
+ "name": "orientation",
2944
+ "type": "TabOrientation",
2945
+ "required": false,
2946
+ "defaultValue": "TabOrientation.Horizontal",
2947
+ "description": "Layout direction of the tab list."
2948
+ },
2949
+ {
2950
+ "name": "sectionLabel",
2951
+ "type": "string",
2952
+ "required": false,
2953
+ "description": "Heading rendered above the tabs, which also names the tab list."
2954
+ },
2864
2955
  {
2865
2956
  "name": "ariaLabel",
2866
2957
  "type": "string",
@@ -2871,20 +2962,92 @@
2871
2962
  "name": "className",
2872
2963
  "type": "string",
2873
2964
  "required": false,
2874
- "description": "Additional CSS classes for the tab list container."
2965
+ "description": "Additional CSS classes for the root element."
2966
+ },
2967
+ {
2968
+ "name": "tabListClassName",
2969
+ "type": "string",
2970
+ "required": false,
2971
+ "description": "Additional CSS classes for the `role=\"tablist\"`."
2875
2972
  },
2876
2973
  {
2877
2974
  "name": "tabClassName",
2878
2975
  "type": "string",
2879
2976
  "required": false,
2880
2977
  "description": "Additional CSS classes applied to every tab."
2978
+ },
2979
+ {
2980
+ "name": "sectionLabelClassName",
2981
+ "type": "string",
2982
+ "required": false,
2983
+ "description": "Additional CSS classes for the `sectionLabel` heading."
2881
2984
  }
2882
2985
  ],
2883
2986
  "examples": [
2884
- "<Tabs\n ariaLabel=\"Conversation views\"\n tabs={[\n { id: 'all', label: 'All', count: 12 },\n { id: 'shared', label: 'Shared with me' },\n ]}\n activeTabId={activeTabId}\n onTabChange={setActiveTabId}\n/>"
2987
+ "<Tabs\n ariaLabel=\"Conversation views\"\n tabs={[\n { id: 'all', label: 'All', count: 12 },\n { id: 'shared', label: 'Shared with me' },\n ]}\n activeTabId={activeTabId}\n onTabChange={setActiveTabId}\n/>",
2988
+ "<Tabs\norientation={TabOrientation.Vertical}\nsectionLabel={t('Settings')}\nclassName=\"w-[240px] shrink-0 border-e border-e-tertiary\"\ntabs={[\n{ id: 'preferences', label: t('Preferences'), icon: <IconSettings size={18} /> },\n{ id: 'usage', label: t('Usage'), icon: <IconChartBar size={18} /> },\n]}\nactiveTabId={activeTabId}\nonTabChange={setActiveTabId}\n/>"
2885
2989
  ],
2886
2990
  "sourceFile": "components/New/Tabs/Tabs.tsx"
2887
2991
  },
2992
+ {
2993
+ "name": "FilterChips",
2994
+ "category": "Components_2_0",
2995
+ "generation": "2.0",
2996
+ "description": "A row of filter chips that picks one value out of a few.\naliases: FilterChipRow|ChipTabs|TagTabs|FilterTabs\nDesign system 2.0\n\nThe chip-shaped sibling of the kit's other single-select rows, and the one to\nreach for when the options label a *subset of a list* — \"All\", \"Shared\",\n\"Mine\" above a history panel. `Tabs` underlines the active option and reads\nas navigation between panels; `SegmentedControl` sinks equal segments into a\ntrack and reads as a view switch. This one draws `TagAppearance.Selectable`\nchips: no fill until selected, and a semibold label once it is. Selecting a\nchip therefore widens it by the difference between the regular and semibold\nlabel — give the row `stretch`, or the chips a width, if that shift matters.\n\nEach chip is a toggle button carrying its state on `aria-pressed`, wrapped in\na named `role=\"group\"` — the pattern `Tag` is built for. That makes every\nchip its own tab stop, which is what a filter row wants: unlike a\n`radiogroup`, arrowing onto a chip never changes the filter by accident.\nName the group through `aria-label` or `aria-labelledby`, or the chips are\nannounced as a handful of unrelated toggles.\n\nThere is no disabled chip. An option the user must not pick is left out of\n`items` — a chip that renders but cannot be activated is a label and nothing\nelse, and `Tag` drops its button role when disabled, so it would not even\nannounce as unavailable.\n\nLabels are the caller's to translate — the component ships no English\ndefaults.",
2997
+ "props": [
2998
+ {
2999
+ "name": "items",
3000
+ "type": "FilterChipItem<T>[]",
3001
+ "required": true,
3002
+ "description": "Chips to render, in order; each needs a unique `value` and a `label`"
3003
+ },
3004
+ {
3005
+ "name": "value",
3006
+ "type": "T",
3007
+ "required": true,
3008
+ "description": "The `value` of the selected chip"
3009
+ },
3010
+ {
3011
+ "name": "onChange",
3012
+ "type": "(value: T) => void",
3013
+ "required": true,
3014
+ "description": "Called with the `value` of the chip the user picked. A click on the already-selected chip fires it again, so a row that clears back to a default handles that itself"
3015
+ },
3016
+ {
3017
+ "name": "stretch",
3018
+ "type": "boolean",
3019
+ "required": false,
3020
+ "defaultValue": "false",
3021
+ "description": "Grows the chips to share the row width equally instead of hugging their labels"
3022
+ },
3023
+ {
3024
+ "name": "className",
3025
+ "type": "string",
3026
+ "required": false,
3027
+ "description": "Additional classes for the row, e.g. its padding or `flex-wrap`"
3028
+ },
3029
+ {
3030
+ "name": "chipClassName",
3031
+ "type": "string",
3032
+ "required": false,
3033
+ "description": "Additional classes for every chip. A panel too narrow for the chips' default padding can tighten it here"
3034
+ },
3035
+ {
3036
+ "name": "'aria-label'",
3037
+ "type": "string",
3038
+ "required": false
3039
+ },
3040
+ {
3041
+ "name": "'aria-labelledby'",
3042
+ "type": "string",
3043
+ "required": false
3044
+ }
3045
+ ],
3046
+ "examples": [
3047
+ "<FilterChips\n aria-label={t('Filter chats')}\n value={tab}\n onChange={setTab}\n items={[\n { value: 'all', label: t('All') },\n { value: 'mine', label: t('My chats') },\n { value: 'shared', label: t('Shared') },\n ]}\n/>"
3048
+ ],
3049
+ "sourceFile": "components/New/FilterChips/FilterChips.tsx"
3050
+ },
2888
3051
  {
2889
3052
  "name": "FileDropzone",
2890
3053
  "category": "Components_2_0",
@@ -10375,6 +10538,47 @@
10375
10538
  "sourceFile": "components/New/Calendar/Calendar.tsx",
10376
10539
  "typeBody": "Date | string | null"
10377
10540
  },
10541
+ {
10542
+ "name": "BreadcrumbsSize",
10543
+ "kind": "enum",
10544
+ "members": [
10545
+ {
10546
+ "name": "Small",
10547
+ "value": "'small'",
10548
+ "comment": "14px `dial-small-text`, with a `dial-small-semi-text` current page."
10549
+ },
10550
+ {
10551
+ "name": "Heading",
10552
+ "value": "'heading'",
10553
+ "comment": "18px `dial-h2-text`, for a trail that doubles as the page heading. The\ntoken is semibold, so every segment is — including the current page."
10554
+ }
10555
+ ],
10556
+ "sourceFile": "types/breadcrumbs.ts"
10557
+ },
10558
+ {
10559
+ "name": "BreadcrumbsItem",
10560
+ "kind": "interface",
10561
+ "members": [
10562
+ {
10563
+ "name": "label",
10564
+ "value": "string"
10565
+ },
10566
+ {
10567
+ "name": "href?",
10568
+ "value": "string"
10569
+ },
10570
+ {
10571
+ "name": "onClick?",
10572
+ "value": "(event: MouseEvent<HTMLElement>) => void"
10573
+ },
10574
+ {
10575
+ "name": "icon?",
10576
+ "value": "ReactNode"
10577
+ }
10578
+ ],
10579
+ "sourceFile": "components/New/Breadcrumbs/Breadcrumbs.tsx",
10580
+ "description": "One step of the trail rendered by ."
10581
+ },
10378
10582
  {
10379
10583
  "name": "TextareaResize",
10380
10584
  "kind": "enum",
@@ -10472,6 +10676,10 @@
10472
10676
  "name": "count?",
10473
10677
  "value": "number"
10474
10678
  },
10679
+ {
10680
+ "name": "icon?",
10681
+ "value": "ReactNode"
10682
+ },
10475
10683
  {
10476
10684
  "name": "disabled?",
10477
10685
  "value": "boolean"
@@ -10480,6 +10688,25 @@
10480
10688
  "sourceFile": "components/New/Tabs/Tabs.tsx",
10481
10689
  "description": "A single tab entry rendered by ."
10482
10690
  },
10691
+ {
10692
+ "name": "FilterChipItem",
10693
+ "kind": "interface",
10694
+ "members": [
10695
+ {
10696
+ "name": "value",
10697
+ "value": "T"
10698
+ },
10699
+ {
10700
+ "name": "label",
10701
+ "value": "string"
10702
+ },
10703
+ {
10704
+ "name": "icon?",
10705
+ "value": "ReactNode"
10706
+ }
10707
+ ],
10708
+ "sourceFile": "components/New/FilterChips/FilterChips.tsx"
10709
+ },
10483
10710
  {
10484
10711
  "name": "TagAppearance",
10485
10712
  "kind": "enum",
@@ -10686,6 +10913,16 @@
10686
10913
  "sourceFile": "utils/flat-to-hierarchy-convertor.ts",
10687
10914
  "description": "Helper to create a root folder wrapping flat items.\nUseful when you want the entire tree to be nested under a single root.",
10688
10915
  "signature": "function wrapInRootFolder(flatItems: FlatFileItem[], rootName = 'Prompts', rootPath = 'prompts/public/', rootFolderId = 'root'): DialFile[]"
10916
+ },
10917
+ {
10918
+ "name": "getTimezoneLabel",
10919
+ "sourceFile": "utils/timezone.ts",
10920
+ "description": "Returns a timezone as a hint label for time-of-day fields, e.g.\n`(GMT+01:00) Europe/Berlin`: the UTC offset in effect at `options.date`\nrendered by `Intl` (`timeZoneName: 'longOffset'`), followed by the IANA\ntimezone name.",
10921
+ "signature": "({\n locale,\n timeZone,\n date = new Date(),\n}: TimezoneLabelOptions = {}) => string"
10922
+ },
10923
+ {
10924
+ "name": "TimezoneLabelOptions",
10925
+ "sourceFile": "utils/timezone.ts"
10689
10926
  }
10690
10927
  ],
10691
10928
  "constants": [
@@ -10738,6 +10975,11 @@
10738
10975
  "name": "NOT_ALLOWED_SPACES_REGEXP",
10739
10976
  "sourceFile": "constants/validation.ts",
10740
10977
  "signature": "NOT_ALLOWED_SPACES_REGEXP = new RegExp(NOT_ALLOWED_SPACES)"
10978
+ },
10979
+ {
10980
+ "name": "DIAL_KIT_CLASS",
10981
+ "sourceFile": "constants/public-class-names.ts",
10982
+ "signature": "DIAL_KIT_CLASS = {\n /* ── Feedback and status ───────────────────────────────────────────────── */\n /** The `role=\"status\"` root of a `Spinner`. */\n spinner: 'dial-kit-spinner',\n /**\n * The outermost element of a `ProgressBar`: the box wrapping its label,\n * track and readout — or the track itself, which is the root when the bar\n * has neither.\n */\n progressBar: 'dial-kit-progress-bar',\n /** The root of a `Skeleton`, wrapping its avatar and text rows. */\n skeleton: 'dial-kit-skeleton',\n /**\n * The `Notification` surface. Present on every wrapper too — the toast and\n * section-message variants of error, info, success, warning, loading and\n * general all render this component.\n */\n notification: 'dial-kit-notification',\n /** The empty-state root of `NoDataContent`. */\n noDataContent: 'dial-kit-no-data-content',\n\n /* ── Text ──────────────────────────────────────────────────────────────── */\n /** The text element of a `Highlight`, which renders the matched query. */\n highlight: 'dial-kit-highlight',\n /** The caption line under a field, rendered by `CaptionText`. */\n captionText: 'dial-kit-caption-text',\n /**\n * A caption in its error variant — what `ErrorText` renders. Additive to\n * `captionText`, since one component draws both.\n */\n errorText: 'dial-kit-error-text',\n /** The `Label` root, which wraps the `label` element and its info button. */\n label: 'dial-kit-label',\n\n /* ── Containers ────────────────────────────────────────────────────────── */\n /** The `article` element of a `CardShell`. */\n cardShell: 'dial-kit-card-shell',\n /** The `aside` element of a `CollapsibleSidebar`. */\n collapsibleSidebar: 'dial-kit-collapsible-sidebar',\n /** The content box inside a `ResizableContainer`'s resize frame. */\n resizableContainer: 'dial-kit-resizable-container',\n /**\n * The `role=\"dialog\"` panel of a `Popup`. Its backdrop is reached through\n * `overlayClassName`.\n */\n popup: 'dial-kit-popup',\n /** The `Popup` panel of a `ConfirmationPopup`, additive to `popup`. */\n confirmationPopup: 'dial-kit-confirmation-popup',\n /** The root of an `Accordion`. */\n accordion: 'dial-kit-accordion',\n /** The breadcrumb root of a `FolderPath`. */\n folderPath: 'dial-kit-folder-path',\n /** The `nav` element of a `Breadcrumbs` trail. */\n breadcrumbs: 'dial-kit-breadcrumbs',\n /**\n * One segment of a `Breadcrumbs` trail: the link, button or plain span that\n * draws the label — not the `li`, which also holds the separator after it.\n */\n breadcrumbsItem: 'dial-kit-breadcrumbs-item',\n\n /* ── Menus and overlays ────────────────────────────────────────────────── */\n /**\n * The trigger wrapper of a `Dropdown`. Its floating panel is reached through\n * `listClassName`.\n */\n dropdown: 'dial-kit-dropdown',\n /**\n * The `role=\"none\"` item list inside a dropdown overlay — the box that holds\n * the rows and owns their vertical padding. Present in both generations, and\n * on a submenu's own list. It is *not* the floating panel.\n */\n dropdownList: 'dial-kit-dropdown-list',\n /**\n * One row of a floating overlay: a dropdown item, a `Select` option, a\n * submenu trigger, or a submenu child. It sits on the element that draws the\n * row box — so on the wrapper, not the inner button, for a row that has a\n * `rightControl` beside it.\n */\n menuItem: 'dial-kit-menuitem',\n /**\n * The trailing check of a chosen `MenuItemMark.Check` row. Decorative, like\n * the glyph itself — the row's `aria-checked` / `aria-selected` carries the\n * state.\n */\n menuItemCheck: 'dial-kit-menuitem-check',\n /** The primary icon of a `DialDropdownIcon` trigger. */\n dropdownIcon: 'dial-kit-dropdown-icon',\n /**\n * The caret badge of a `DialDropdownIcon` trigger — the round plate the\n * chevron sits on. Absent when `showCaret` is `false`.\n */\n dropdownIconCaret: 'dial-kit-dropdown-icon-caret',\n /** The bubble of a `Tooltip`, rendered by `TooltipContent` into a portal. */\n tooltip: 'dial-kit-tooltip',\n /** The panel of an `InteractiveTooltip` — the one whose content takes focus. */\n interactiveTooltip: 'dial-kit-interactive-tooltip',\n /** The text element of an `EllipsisTooltip`, which is also its trigger. */\n ellipsisTooltip: 'dial-kit-ellipsis-tooltip',\n\n /* ── Fields ────────────────────────────────────────────────────────────── */\n /** The `Search` field, additive to the `dial-kit-input` its `Input` carries. */\n search: 'dial-kit-search',\n /** The `PasswordInput` field, additive to `dial-kit-input`. */\n passwordInput: 'dial-kit-password-input',\n /** The `NumberInput` field, additive to `dial-kit-input`. */\n numberInput: 'dial-kit-number-input',\n /** The `TagInput` field, additive to `dial-kit-input`. */\n tagInput: 'dial-kit-tag-input',\n /** The root of a `Select`, wrapping its label, field and caption. */\n select: 'dial-kit-select',\n /** The trigger button of an `InlineSelect`. */\n inlineSelect: 'dial-kit-inline-select',\n /** The root of a `Calendar`, wrapping its label and date field. */\n calendar: 'dial-kit-calendar',\n /** The drop area of a `FileDropzone`. */\n fileDropzone: 'dial-kit-file-dropzone',\n\n /* ── Controls ──────────────────────────────────────────────────────────── */\n /** The row of a `Switch`: the control and its label. */\n switch: 'dial-kit-switch',\n /** The row of a `Checkbox`: the box and its label. */\n checkbox: 'dial-kit-checkbox',\n /** The decorative box a `CheckboxBox` draws, in a checkbox or a menu row. */\n checkboxBox: 'dial-kit-checkbox-box',\n /** The row of a `Radio`: the circle and its label. */\n radio: 'dial-kit-radio',\n /** The root of a `RadioGroup`, wrapping its label and its radios. */\n radioGroup: 'dial-kit-radio-group',\n /**\n * The root of a `RadioGroupPopupField`, wrapping its label and the collapsed\n * field that opens the group.\n */\n radioGroupPopupField: 'dial-kit-radio-group-popup-field',\n /** The `role=\"radiogroup\"` track of a `SegmentedControl`. */\n segmentedControl: 'dial-kit-segmented-control',\n /** One segment of a `SegmentedControl`. */\n segmentedControlItem: 'dial-kit-segmented-control-item',\n /**\n * The outermost element of a `Tabs`: the box wrapping its heading and tab\n * list — or the `role=\"tablist\"` itself, which is the root when the tabs\n * carry no `sectionLabel`.\n */\n tabs: 'dial-kit-tabs',\n /**\n * The `role=\"tablist\"` holding the tabs, in either orientation. Additive to\n * `tabs` when there is no heading above it, since one element is then both.\n */\n tabList: 'dial-kit-tab-list',\n /**\n * One tab inside `Tabs`, in either orientation. The selected tab of a\n * horizontal row keeps its own `dial-kit-tab-selected-underline`.\n */\n tab: 'dial-kit-tab',\n /**\n * The selected tab, additive to `tab`. A horizontal row draws its selection\n * with `dial-kit-tab-selected-underline`, which carries the gradient rule;\n * this one carries no declarations and marks the selected tab in either\n * orientation.\n */\n tabSelected: 'dial-kit-tab-selected',\n /** The `sectionLabel` heading above a `Tabs`. Absent when there is none. */\n tabsSectionLabel: 'dial-kit-tabs-section-label',\n /**\n * The `role=\"group\"` row of a `FilterChips`. Its chips are `Tag` pills, so\n * they carry `dial-kit-tag` and have no entry of their own.\n */\n filterChips: 'dial-kit-filter-chips',\n /** A `Tag` pill, wherever it is rendered — including a `TagInput`'s rows. */\n tag: 'dial-kit-tag',\n /**\n * A `ToggleIconButton`, additive to the `dial-kit-base-icon-button` it\n * already carries.\n */\n toggleIconButton: 'dial-kit-toggle-icon-button',\n /** A `CloseButton`, additive to `dial-kit-base-icon-button`. */\n closeButton: 'dial-kit-close-button',\n /** An `InfoButton`, additive to `dial-kit-base-icon-button`. */\n infoButton: 'dial-kit-info-button',\n /**\n * The wrapper of a `ButtonDropdown` — its trigger carries\n * `dial-kit-base-button`.\n */\n buttonDropdown: 'dial-kit-button-dropdown',\n} as const"
10741
10983
  }
10742
10984
  ]
10743
10985
  }
@@ -0,0 +1,182 @@
1
+ const i = {
2
+ /* ── Feedback and status ───────────────────────────────────────────────── */
3
+ /** The `role="status"` root of a `Spinner`. */
4
+ spinner: "dial-kit-spinner",
5
+ /**
6
+ * The outermost element of a `ProgressBar`: the box wrapping its label,
7
+ * track and readout — or the track itself, which is the root when the bar
8
+ * has neither.
9
+ */
10
+ progressBar: "dial-kit-progress-bar",
11
+ /** The root of a `Skeleton`, wrapping its avatar and text rows. */
12
+ skeleton: "dial-kit-skeleton",
13
+ /**
14
+ * The `Notification` surface. Present on every wrapper too — the toast and
15
+ * section-message variants of error, info, success, warning, loading and
16
+ * general all render this component.
17
+ */
18
+ notification: "dial-kit-notification",
19
+ /** The empty-state root of `NoDataContent`. */
20
+ noDataContent: "dial-kit-no-data-content",
21
+ /* ── Text ──────────────────────────────────────────────────────────────── */
22
+ /** The text element of a `Highlight`, which renders the matched query. */
23
+ highlight: "dial-kit-highlight",
24
+ /** The caption line under a field, rendered by `CaptionText`. */
25
+ captionText: "dial-kit-caption-text",
26
+ /**
27
+ * A caption in its error variant — what `ErrorText` renders. Additive to
28
+ * `captionText`, since one component draws both.
29
+ */
30
+ errorText: "dial-kit-error-text",
31
+ /** The `Label` root, which wraps the `label` element and its info button. */
32
+ label: "dial-kit-label",
33
+ /* ── Containers ────────────────────────────────────────────────────────── */
34
+ /** The `article` element of a `CardShell`. */
35
+ cardShell: "dial-kit-card-shell",
36
+ /** The `aside` element of a `CollapsibleSidebar`. */
37
+ collapsibleSidebar: "dial-kit-collapsible-sidebar",
38
+ /** The content box inside a `ResizableContainer`'s resize frame. */
39
+ resizableContainer: "dial-kit-resizable-container",
40
+ /**
41
+ * The `role="dialog"` panel of a `Popup`. Its backdrop is reached through
42
+ * `overlayClassName`.
43
+ */
44
+ popup: "dial-kit-popup",
45
+ /** The `Popup` panel of a `ConfirmationPopup`, additive to `popup`. */
46
+ confirmationPopup: "dial-kit-confirmation-popup",
47
+ /** The root of an `Accordion`. */
48
+ accordion: "dial-kit-accordion",
49
+ /** The breadcrumb root of a `FolderPath`. */
50
+ folderPath: "dial-kit-folder-path",
51
+ /** The `nav` element of a `Breadcrumbs` trail. */
52
+ breadcrumbs: "dial-kit-breadcrumbs",
53
+ /**
54
+ * One segment of a `Breadcrumbs` trail: the link, button or plain span that
55
+ * draws the label — not the `li`, which also holds the separator after it.
56
+ */
57
+ breadcrumbsItem: "dial-kit-breadcrumbs-item",
58
+ /* ── Menus and overlays ────────────────────────────────────────────────── */
59
+ /**
60
+ * The trigger wrapper of a `Dropdown`. Its floating panel is reached through
61
+ * `listClassName`.
62
+ */
63
+ dropdown: "dial-kit-dropdown",
64
+ /**
65
+ * The `role="none"` item list inside a dropdown overlay — the box that holds
66
+ * the rows and owns their vertical padding. Present in both generations, and
67
+ * on a submenu's own list. It is *not* the floating panel.
68
+ */
69
+ dropdownList: "dial-kit-dropdown-list",
70
+ /**
71
+ * One row of a floating overlay: a dropdown item, a `Select` option, a
72
+ * submenu trigger, or a submenu child. It sits on the element that draws the
73
+ * row box — so on the wrapper, not the inner button, for a row that has a
74
+ * `rightControl` beside it.
75
+ */
76
+ menuItem: "dial-kit-menuitem",
77
+ /**
78
+ * The trailing check of a chosen `MenuItemMark.Check` row. Decorative, like
79
+ * the glyph itself — the row's `aria-checked` / `aria-selected` carries the
80
+ * state.
81
+ */
82
+ menuItemCheck: "dial-kit-menuitem-check",
83
+ /** The primary icon of a `DialDropdownIcon` trigger. */
84
+ dropdownIcon: "dial-kit-dropdown-icon",
85
+ /**
86
+ * The caret badge of a `DialDropdownIcon` trigger — the round plate the
87
+ * chevron sits on. Absent when `showCaret` is `false`.
88
+ */
89
+ dropdownIconCaret: "dial-kit-dropdown-icon-caret",
90
+ /** The bubble of a `Tooltip`, rendered by `TooltipContent` into a portal. */
91
+ tooltip: "dial-kit-tooltip",
92
+ /** The panel of an `InteractiveTooltip` — the one whose content takes focus. */
93
+ interactiveTooltip: "dial-kit-interactive-tooltip",
94
+ /** The text element of an `EllipsisTooltip`, which is also its trigger. */
95
+ ellipsisTooltip: "dial-kit-ellipsis-tooltip",
96
+ /* ── Fields ────────────────────────────────────────────────────────────── */
97
+ /** The `Search` field, additive to the `dial-kit-input` its `Input` carries. */
98
+ search: "dial-kit-search",
99
+ /** The `PasswordInput` field, additive to `dial-kit-input`. */
100
+ passwordInput: "dial-kit-password-input",
101
+ /** The `NumberInput` field, additive to `dial-kit-input`. */
102
+ numberInput: "dial-kit-number-input",
103
+ /** The `TagInput` field, additive to `dial-kit-input`. */
104
+ tagInput: "dial-kit-tag-input",
105
+ /** The root of a `Select`, wrapping its label, field and caption. */
106
+ select: "dial-kit-select",
107
+ /** The trigger button of an `InlineSelect`. */
108
+ inlineSelect: "dial-kit-inline-select",
109
+ /** The root of a `Calendar`, wrapping its label and date field. */
110
+ calendar: "dial-kit-calendar",
111
+ /** The drop area of a `FileDropzone`. */
112
+ fileDropzone: "dial-kit-file-dropzone",
113
+ /* ── Controls ──────────────────────────────────────────────────────────── */
114
+ /** The row of a `Switch`: the control and its label. */
115
+ switch: "dial-kit-switch",
116
+ /** The row of a `Checkbox`: the box and its label. */
117
+ checkbox: "dial-kit-checkbox",
118
+ /** The decorative box a `CheckboxBox` draws, in a checkbox or a menu row. */
119
+ checkboxBox: "dial-kit-checkbox-box",
120
+ /** The row of a `Radio`: the circle and its label. */
121
+ radio: "dial-kit-radio",
122
+ /** The root of a `RadioGroup`, wrapping its label and its radios. */
123
+ radioGroup: "dial-kit-radio-group",
124
+ /**
125
+ * The root of a `RadioGroupPopupField`, wrapping its label and the collapsed
126
+ * field that opens the group.
127
+ */
128
+ radioGroupPopupField: "dial-kit-radio-group-popup-field",
129
+ /** The `role="radiogroup"` track of a `SegmentedControl`. */
130
+ segmentedControl: "dial-kit-segmented-control",
131
+ /** One segment of a `SegmentedControl`. */
132
+ segmentedControlItem: "dial-kit-segmented-control-item",
133
+ /**
134
+ * The outermost element of a `Tabs`: the box wrapping its heading and tab
135
+ * list — or the `role="tablist"` itself, which is the root when the tabs
136
+ * carry no `sectionLabel`.
137
+ */
138
+ tabs: "dial-kit-tabs",
139
+ /**
140
+ * The `role="tablist"` holding the tabs, in either orientation. Additive to
141
+ * `tabs` when there is no heading above it, since one element is then both.
142
+ */
143
+ tabList: "dial-kit-tab-list",
144
+ /**
145
+ * One tab inside `Tabs`, in either orientation. The selected tab of a
146
+ * horizontal row keeps its own `dial-kit-tab-selected-underline`.
147
+ */
148
+ tab: "dial-kit-tab",
149
+ /**
150
+ * The selected tab, additive to `tab`. A horizontal row draws its selection
151
+ * with `dial-kit-tab-selected-underline`, which carries the gradient rule;
152
+ * this one carries no declarations and marks the selected tab in either
153
+ * orientation.
154
+ */
155
+ tabSelected: "dial-kit-tab-selected",
156
+ /** The `sectionLabel` heading above a `Tabs`. Absent when there is none. */
157
+ tabsSectionLabel: "dial-kit-tabs-section-label",
158
+ /**
159
+ * The `role="group"` row of a `FilterChips`. Its chips are `Tag` pills, so
160
+ * they carry `dial-kit-tag` and have no entry of their own.
161
+ */
162
+ filterChips: "dial-kit-filter-chips",
163
+ /** A `Tag` pill, wherever it is rendered — including a `TagInput`'s rows. */
164
+ tag: "dial-kit-tag",
165
+ /**
166
+ * A `ToggleIconButton`, additive to the `dial-kit-base-icon-button` it
167
+ * already carries.
168
+ */
169
+ toggleIconButton: "dial-kit-toggle-icon-button",
170
+ /** A `CloseButton`, additive to `dial-kit-base-icon-button`. */
171
+ closeButton: "dial-kit-close-button",
172
+ /** An `InfoButton`, additive to `dial-kit-base-icon-button`. */
173
+ infoButton: "dial-kit-info-button",
174
+ /**
175
+ * The wrapper of a `ButtonDropdown` — its trigger carries
176
+ * `dial-kit-base-button`.
177
+ */
178
+ buttonDropdown: "dial-kit-button-dropdown"
179
+ };
180
+ export {
181
+ i as DIAL_KIT_CLASS
182
+ };