@powerhousedao/design-system 6.2.3-dev.60 → 6.2.3-dev.62

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 (144) hide show
  1. package/dist/PinFilled-cSbUqZCA.js +41 -0
  2. package/dist/PinFilled-cSbUqZCA.js.map +1 -0
  3. package/dist/add-local-drive-form.impl-B5rVul7f.js +75 -0
  4. package/dist/add-local-drive-form.impl-B5rVul7f.js.map +1 -0
  5. package/dist/add-remote-drive-form.impl-D7zuqHJC.js +114 -0
  6. package/dist/add-remote-drive-form.impl-D7zuqHJC.js.map +1 -0
  7. package/dist/address-DsZy0bjk.js +92 -0
  8. package/dist/address-DsZy0bjk.js.map +1 -0
  9. package/dist/{checkbox-BmTXBcCE.d.ts → checkbox-DmRYkN10.d.ts} +2 -2
  10. package/dist/{checkbox-BmTXBcCE.d.ts.map → checkbox-DmRYkN10.d.ts.map} +1 -1
  11. package/dist/combobox.impl-C2oszOl2.js +144 -0
  12. package/dist/combobox.impl-C2oszOl2.js.map +1 -0
  13. package/dist/connect/components/toast/toast.js +2 -2
  14. package/dist/connect/index.d.ts +81 -33
  15. package/dist/connect/index.d.ts.map +1 -1
  16. package/dist/connect/index.js +184 -1608
  17. package/dist/connect/index.js.map +1 -1
  18. package/dist/{content-BMXLcwWY.d.ts → content-L3OINRSY.d.ts} +2 -2
  19. package/dist/{content-BMXLcwWY.d.ts.map → content-L3OINRSY.d.ts.map} +1 -1
  20. package/dist/default-editor.impl-a6EOuEme.js +30 -0
  21. package/dist/default-editor.impl-a6EOuEme.js.map +1 -0
  22. package/dist/document-timeline.impl-DRmIHFaI.js +254 -0
  23. package/dist/document-timeline.impl-DRmIHFaI.js.map +1 -0
  24. package/dist/drive-settings-form.impl-4yBGaTxe.js +171 -0
  25. package/dist/drive-settings-form.impl-4yBGaTxe.js.map +1 -0
  26. package/dist/{enum-field-qgV9wsyI.d.ts → enum-field-CSeQE4Ss.d.ts} +3 -3
  27. package/dist/{enum-field-qgV9wsyI.d.ts.map → enum-field-CSeQE4Ss.d.ts.map} +1 -1
  28. package/dist/formatted-json-viewer.impl-C198BZt5.js +58 -0
  29. package/dist/formatted-json-viewer.impl-C198BZt5.js.map +1 -0
  30. package/dist/icon-CR_tC1gc.js +358 -0
  31. package/dist/icon-CR_tC1gc.js.map +1 -0
  32. package/dist/{icon-01W_S_9A.js → icon-components-BZ_bQZmJ.js} +5 -479
  33. package/dist/icon-components-BZ_bQZmJ.js.map +1 -0
  34. package/dist/{id-autocomplete-CHvGhffo.d.ts → id-autocomplete-0bhU6VQG.d.ts} +2 -2
  35. package/dist/id-autocomplete-0bhU6VQG.d.ts.map +1 -0
  36. package/dist/{id-autocomplete-input-container-BqRQGpcs.d.ts → id-autocomplete-input-container-xg9lrpSK.d.ts} +2 -2
  37. package/dist/{id-autocomplete-input-container-BqRQGpcs.d.ts.map → id-autocomplete-input-container-xg9lrpSK.d.ts.map} +1 -1
  38. package/dist/{id-autocomplete-list-ChQsiJDg.d.ts → id-autocomplete-list-Da3FbpJ1.d.ts} +2 -2
  39. package/dist/{id-autocomplete-list-ChQsiJDg.d.ts.map → id-autocomplete-list-Da3FbpJ1.d.ts.map} +1 -1
  40. package/dist/{id-autocomplete-list-option-MsqKeLXD.d.ts → id-autocomplete-list-option-D7JgEK6E.d.ts} +3 -2
  41. package/dist/id-autocomplete-list-option-D7JgEK6E.d.ts.map +1 -0
  42. package/dist/index-C-Tup7Br.d.ts +4 -0
  43. package/dist/{index-C05uhexJ.d.ts → index-D99twPFI.d.ts} +6 -15
  44. package/dist/index-D99twPFI.d.ts.map +1 -0
  45. package/dist/index-D9nAoDks.d.ts +30 -0
  46. package/dist/index-FfMAMBu7.d.ts +3 -0
  47. package/dist/index-jfVVOU-H.d.ts +2 -0
  48. package/dist/index.d.ts +2 -1
  49. package/dist/index.js +2 -2
  50. package/dist/label-nH2HoKfI.js +15 -0
  51. package/dist/label-nH2HoKfI.js.map +1 -0
  52. package/dist/location-info-C3YbSsV0.js +47 -0
  53. package/dist/location-info-C3YbSsV0.js.map +1 -0
  54. package/dist/{radio-group-field-CjX_Zt0C.d.ts → radio-group-field-Bsf4waat.d.ts} +2 -2
  55. package/dist/{radio-group-field-CjX_Zt0C.d.ts.map → radio-group-field-Bsf4waat.d.ts.map} +1 -1
  56. package/dist/revision-history.impl-uogo6xDI.js +638 -0
  57. package/dist/revision-history.impl-uogo6xDI.js.map +1 -0
  58. package/dist/{select-field-BuXjM43L.d.ts → select-field-DbFd1YiC.d.ts} +2 -2
  59. package/dist/{select-field-BuXjM43L.d.ts.map → select-field-DbFd1YiC.d.ts.map} +1 -1
  60. package/dist/{selected-content-C49jmTLU.d.ts → selected-content-VMVPoru4.d.ts} +2 -2
  61. package/dist/{selected-content-C49jmTLU.d.ts.map → selected-content-VMVPoru4.d.ts.map} +1 -1
  62. package/dist/{sidebar-4juLhREX.d.ts → sidebar-DFqreKf1.d.ts} +2 -2
  63. package/dist/{sidebar-4juLhREX.d.ts.map → sidebar-DFqreKf1.d.ts.map} +1 -1
  64. package/dist/{sidebar-provider-CMG6WQWo.d.ts → sidebar-provider-CZHhqW5n.d.ts} +2 -2
  65. package/dist/{sidebar-provider-CMG6WQWo.d.ts.map → sidebar-provider-CZHhqW5n.d.ts.map} +1 -1
  66. package/dist/{splitted-input-diff-DBkgDh9Q.d.ts → splitted-input-diff-BKRMH7vI.d.ts} +2 -2
  67. package/dist/{splitted-input-diff-DBkgDh9Q.d.ts.map → splitted-input-diff-BKRMH7vI.d.ts.map} +1 -1
  68. package/dist/{src-CrUksCLW.js → src-B2s8MAp7.js} +148 -5
  69. package/dist/src-B2s8MAp7.js.map +1 -0
  70. package/dist/{text-field-3j4fLJ-7.d.ts → text-field-CtatgqNu.d.ts} +3 -3
  71. package/dist/{text-field-3j4fLJ-7.d.ts.map → text-field-CtatgqNu.d.ts.map} +1 -1
  72. package/dist/{text-input-tkqggbWx.d.ts → text-input-BSxhvnyx.d.ts} +2 -2
  73. package/dist/{text-input-tkqggbWx.d.ts.map → text-input-BSxhvnyx.d.ts.map} +1 -1
  74. package/dist/{text-input-diff-B7iFyzTK.d.ts → text-input-diff-CaZoFDjA.d.ts} +2 -2
  75. package/dist/{text-input-diff-B7iFyzTK.d.ts.map → text-input-diff-CaZoFDjA.d.ts.map} +1 -1
  76. package/dist/{types-DDSmPhHp.d.ts → types-FTqFl5du.d.ts} +2 -2
  77. package/dist/{types-DDSmPhHp.d.ts.map → types-FTqFl5du.d.ts.map} +1 -1
  78. package/dist/types-TZijOYrE.d.ts +17 -0
  79. package/dist/types-TZijOYrE.d.ts.map +1 -0
  80. package/dist/ui/components/checkbox/checkbox.d.ts +1 -1
  81. package/dist/ui/components/command/command.js +1 -1
  82. package/dist/ui/components/enum-field/enum-field.d.ts +1 -1
  83. package/dist/ui/components/enum-field/types.d.ts +1 -1
  84. package/dist/ui/components/form-label/form-label.js +1 -1
  85. package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.d.ts +1 -1
  86. package/dist/ui/components/id-autocomplete/id-autocomplete-input-container.js +1 -1
  87. package/dist/ui/components/id-autocomplete/id-autocomplete-list-option.d.ts +1 -1
  88. package/dist/ui/components/id-autocomplete/id-autocomplete-list-option.js +1 -1
  89. package/dist/ui/components/id-autocomplete/id-autocomplete-list.d.ts +1 -1
  90. package/dist/ui/components/id-autocomplete/id-autocomplete.d.ts +1 -1
  91. package/dist/ui/components/id-autocomplete/types.d.ts +1 -1
  92. package/dist/ui/components/id-autocomplete/use-id-autocomplete.d.ts +1 -1
  93. package/dist/ui/components/index.d.ts +20 -20
  94. package/dist/ui/components/input/splitted-input-diff.d.ts +1 -1
  95. package/dist/ui/components/input/splitted-input-diff.js +1 -1
  96. package/dist/ui/components/input/subcomponent/text-diff.d.ts +1 -1
  97. package/dist/ui/components/radio-group-field/radio-group-field.d.ts +1 -1
  98. package/dist/ui/components/select-field/content.d.ts +1 -1
  99. package/dist/ui/components/select-field/content.js +1 -1
  100. package/dist/ui/components/select-field/select-field.d.ts +1 -1
  101. package/dist/ui/components/select-field/selected-content.d.ts +1 -1
  102. package/dist/ui/components/select-field/selected-content.js +1 -1
  103. package/dist/ui/components/select-field/subcomponents/CommandItemList.d.ts +1 -1
  104. package/dist/ui/components/select-field/subcomponents/CommandItemList.js +1 -1
  105. package/dist/ui/components/select-field/use-select-field.d.ts +1 -1
  106. package/dist/ui/components/sidebar/index.d.ts +4 -4
  107. package/dist/ui/components/sidebar/sidebar.d.ts +1 -1
  108. package/dist/ui/components/sidebar/sidebar.js +1 -1
  109. package/dist/ui/components/sidebar/subcomponents/sidebar-content-area.js +1 -1
  110. package/dist/ui/components/sidebar/subcomponents/sidebar-item.d.ts +1 -1
  111. package/dist/ui/components/sidebar/subcomponents/sidebar-item.js +2 -1
  112. package/dist/ui/components/sidebar/subcomponents/sidebar-item.js.map +1 -1
  113. package/dist/ui/components/sidebar/subcomponents/sidebar-provider/index.d.ts +2 -2
  114. package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-provider.d.ts +1 -1
  115. package/dist/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.d.ts +1 -1
  116. package/dist/ui/components/sidebar/subcomponents/sidebar-search/sidebar-search.js +1 -1
  117. package/dist/ui/components/sidebar/subcomponents/status-icon.d.ts +1 -1
  118. package/dist/ui/components/sidebar/subcomponents/status-icon.js +1 -1
  119. package/dist/ui/components/sidebar/types.d.ts +1 -1
  120. package/dist/ui/components/sidebar/utils.d.ts +1 -1
  121. package/dist/ui/components/text-field/text-field.d.ts +1 -1
  122. package/dist/ui/components/text-input/text-input-diff.d.ts +1 -1
  123. package/dist/ui/components/text-input/text-input.d.ts +1 -1
  124. package/dist/ui/components/types.d.ts +1 -1
  125. package/dist/ui/components/value-transformer/value-transformer.d.ts +1 -1
  126. package/dist/ui/components/with-field-validation/with-field-validation.d.ts +1 -1
  127. package/dist/ui/index.d.ts +21 -21
  128. package/dist/ui/types.d.ts +1 -1
  129. package/dist/{use-id-autocomplete-wdw3CfYc.d.ts → use-id-autocomplete-DSRXA4Wt.d.ts} +2 -2
  130. package/dist/{use-id-autocomplete-wdw3CfYc.d.ts.map → use-id-autocomplete-DSRXA4Wt.d.ts.map} +1 -1
  131. package/dist/{value-transformer-BAD6r8Ol.d.ts → value-transformer-Dv-10UyC.d.ts} +2 -2
  132. package/dist/{value-transformer-BAD6r8Ol.d.ts.map → value-transformer-Dv-10UyC.d.ts.map} +1 -1
  133. package/dist/{with-field-validation-Bt02MQn2.d.ts → with-field-validation-WiD_NFDk.d.ts} +2 -2
  134. package/dist/{with-field-validation-Bt02MQn2.d.ts.map → with-field-validation-WiD_NFDk.d.ts.map} +1 -1
  135. package/package.json +4 -4
  136. package/dist/icon-01W_S_9A.js.map +0 -1
  137. package/dist/id-autocomplete-CHvGhffo.d.ts.map +0 -1
  138. package/dist/id-autocomplete-list-option-MsqKeLXD.d.ts.map +0 -1
  139. package/dist/index-C05uhexJ.d.ts.map +0 -1
  140. package/dist/index-CpSqVZKp.d.ts +0 -2
  141. package/dist/index-DSknqh8u.d.ts +0 -30
  142. package/dist/index-DU-WgcAh.d.ts +0 -4
  143. package/dist/index-DaRBrjZI.d.ts +0 -3
  144. package/dist/src-CrUksCLW.js.map +0 -1
@@ -1,4 +1,4 @@
1
- import { et as IconName } from "./index-C05uhexJ.js";
1
+ import { o as IconName } from "./types-TZijOYrE.js";
2
2
  //#region src/ui/components/sidebar/types.d.ts
3
3
  declare enum NodeStatus {
4
4
  CREATED = "CREATED",
@@ -28,4 +28,4 @@ interface FlattenedNode extends SidebarNode {
28
28
  //#endregion
29
29
  export { NodeStatus as a, NodeSortType as i, NodeSortComparisonFn as n, SidebarIcon as o, NodeSortOrder as r, SidebarNode as s, FlattenedNode as t };
30
30
  export {};
31
- //# sourceMappingURL=types-DDSmPhHp.d.ts.map
31
+ //# sourceMappingURL=types-FTqFl5du.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types-DDSmPhHp.d.ts","names":[],"sources":["../src/ui/components/sidebar/types.ts"],"mappings":";;aAEY;EACV;EACA;EACA;EACA;EACA;EACA;;KAGU,cAAc,WAAW,MAAM;UAE1B;EACf;EACA;EACA,WAAW;EACX,OAAO;EACP,eAAe;EACf,SAAS;EACT;;KAGU,wBACV,gBACA;KAEU,4CAA4C;KAC5C;UAEK,sBAAsB;EACrC;EACA"}
1
+ {"version":3,"file":"types-FTqFl5du.d.ts","names":[],"sources":["../src/ui/components/sidebar/types.ts"],"mappings":";;aAEY;EACV;EACA;EACA;EACA;EACA;EACA;;KAGU,cAAc,WAAW,MAAM;UAE1B;EACf;EACA;EACA,WAAW;EACX,OAAO;EACP,eAAe;EACf,SAAS;EACT;;KAGU,wBACV,gBACA;KAEU,4CAA4C;KAC5C;UAEK,sBAAsB;EACrC;EACA"}
@@ -0,0 +1,17 @@
1
+ import { CSSProperties, ComponentProps, ComponentPropsWithRef, ComponentPropsWithoutRef } from "react";
2
+ //#region src/powerhouse/components/icon-components/names.d.ts
3
+ declare const iconNames: readonly ["AnalyticsProcessorModule", "AppModule", "ArrowCouterclockwise", "ArrowFilledRight", "ArrowLeft", "ArrowUp", "BarChart", "BaseArrowLeft", "BaseArrowRight", "Braces", "Branch", "BrickGlobe", "Briefcase", "Calendar", "CalendarTime", "Caret", "CaretDown", "CaretLeft", "CaretRight", "CaretSort", "Check", "CheckCircle", "CheckCircleFill", "Checkmark", "ChevronDown", "Circle", "CircleInfo", "Clock", "ClockFill", "ClockHistory", "CloudSlash", "CodegenProcessorModule", "Collapse", "Compass", "Connect", "ConnectSmall", "Copy", "Created", "CrossCircle", "CurlyBrackets", "Danger", "DescendenceModified", "Disconnect", "Discord", "DocumentIcons", "DocumentModel", "DocumentModelModule", "DownloadFile", "Drive", "Duplicated", "Edit", "EditorModule", "Ellipsis", "Error", "Ethscan", "Exclamation", "ExportCsv", "ExportJson", "ExportPdf", "ExportUbl", "ExportZip", "File", "FilesEarmark", "FolderClose", "FolderOpen", "FolderPlus", "Forum", "Gear", "Github", "Globe", "GlobeWww", "Hdd", "History", "InfoSquare", "Link", "Linkedin", "Lock", "M", "Modified", "Moved", "Npm", "PackageManager", "PackageModule", "Pencil", "People", "PeopleFill", "Person", "Pin", "PinFilled", "Plus", "PlusCircle", "PlusSquare", "PowerhouseDocumentModule", "PowerhouseLogoSmall", "Project", "QuestionSquare", "RedoArrow", "RelationalProcessorModule", "Reload", "Removed", "Renown", "RenownHover", "RenownLight", "Ring", "Save", "Search", "Server", "Settings", "SubgraphModule", "Synced", "Syncing", "Tabler", "Timeline", "TimelineCaret", "Trash", "TrashFill", "TreeViewSlash", "TriangleDown", "Tube", "VariantArrowLeft", "VerticalDots", "WarningFill", "XTwitter", "Xmark", "XmarkLight", "Youtube"];
4
+ //#endregion
5
+ //#region src/powerhouse/components/icon-components/types.d.ts
6
+ type IconName = (typeof iconNames)[number];
7
+ type IconComponentProps = ComponentProps<"svg">;
8
+ //#endregion
9
+ //#region src/powerhouse/types.d.ts
10
+ type DivProps = ComponentPropsWithoutRef<"div">;
11
+ type DivWithRefProps = ComponentPropsWithRef<"div">;
12
+ type Size = CSSProperties["width"];
13
+ type Color = CSSProperties["color"];
14
+ //#endregion
15
+ export { IconComponentProps as a, Size as i, DivProps as n, IconName as o, DivWithRefProps as r, iconNames as s, Color as t };
16
+ export {};
17
+ //# sourceMappingURL=types-TZijOYrE.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types-TZijOYrE.d.ts","names":[],"sources":["../src/powerhouse/components/icon-components/names.ts","../src/powerhouse/components/icon-components/types.ts","../src/powerhouse/types.ts"],"mappings":";;cAAa;;;KCGD,mBAAmB;KACnB,qBAAqB;;;KCGrB,WAAW;KACX,kBAAkB;KAElB,OAAO;KACP,QAAQ"}
@@ -1,3 +1,3 @@
1
- import { n as CheckboxProps, t as Checkbox } from "../../../checkbox-BmTXBcCE.js";
1
+ import { n as CheckboxProps, t as Checkbox } from "../../../checkbox-DmRYkN10.js";
2
2
  export { Checkbox, CheckboxProps };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import React from "react";
3
3
  import { twMerge } from "tailwind-merge";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,3 +1,3 @@
1
- import { n as EnumFieldProps, t as EnumField } from "../../../enum-field-qgV9wsyI.js";
1
+ import { n as EnumFieldProps, t as EnumField } from "../../../enum-field-CSeQE4Ss.js";
2
2
  export { EnumField, EnumFieldProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { C as SelectProps, S as SelectOption, b as RadioGroupProps, x as SelectBaseProps } from "../../../index-C05uhexJ.js";
1
+ import { C as SelectProps, S as SelectOption, b as RadioGroupProps, x as SelectBaseProps } from "../../../index-D99twPFI.js";
2
2
  export { RadioGroupProps, SelectBaseProps, SelectOption, SelectProps };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import { Tooltip, TooltipProvider as Provider } from "../tooltip/tooltip.js";
3
3
  import { twMerge } from "tailwind-merge";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,3 +1,3 @@
1
- import { n as IdAutocompleteInputContainerProps, t as IdAutocompleteInputContainer } from "../../../id-autocomplete-input-container-BqRQGpcs.js";
1
+ import { n as IdAutocompleteInputContainerProps, t as IdAutocompleteInputContainer } from "../../../id-autocomplete-input-container-xg9lrpSK.js";
2
2
  export { IdAutocompleteInputContainer, type IdAutocompleteInputContainerProps };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import { Tooltip, TooltipProvider as Provider } from "../tooltip/tooltip.js";
3
3
  import { sharedValueTransformers } from "../../lib/shared-value-transformers.js";
4
4
  import { Input } from "../input/input.js";
@@ -1,3 +1,3 @@
1
- import { n as IdAutocompleteListOptionProps, t as IdAutocompleteListOption } from "../../../id-autocomplete-list-option-MsqKeLXD.js";
1
+ import { n as IdAutocompleteListOptionProps, t as IdAutocompleteListOption } from "../../../id-autocomplete-list-option-D7JgEK6E.js";
2
2
  export { IdAutocompleteListOption, type IdAutocompleteListOptionProps };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import React from "react";
3
3
  import { twMerge } from "tailwind-merge";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,3 +1,3 @@
1
- import { n as IdAutocompleteListProps, t as IdAutocompleteList } from "../../../id-autocomplete-list-ChQsiJDg.js";
1
+ import { n as IdAutocompleteListProps, t as IdAutocompleteList } from "../../../id-autocomplete-list-Da3FbpJ1.js";
2
2
  export { IdAutocompleteList, type IdAutocompleteListProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { t as IdAutocomplete } from "../../../id-autocomplete-CHvGhffo.js";
1
+ import { t as IdAutocomplete } from "../../../id-autocomplete-0bhU6VQG.js";
2
2
  export { IdAutocomplete };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { v as IdAutocompleteOption, y as IdAutocompleteProps } from "../../../index-C05uhexJ.js";
1
+ import { v as IdAutocompleteOption, y as IdAutocompleteProps } from "../../../index-D99twPFI.js";
2
2
  export type { IdAutocompleteOption, IdAutocompleteProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { t as useIdAutocomplete } from "../../../use-id-autocomplete-wdw3CfYc.js";
1
+ import { t as useIdAutocomplete } from "../../../use-id-autocomplete-DSRXA4Wt.js";
2
2
  export { useIdAutocomplete };
3
3
  export {};
@@ -1,11 +1,11 @@
1
1
  import { n as ButtonProps, r as buttonVariants, t as Button } from "../../button-BYcXvZXr.js";
2
2
  import { n as CharacterCounterProps, t as CharacterCounter } from "../../character-counter-BZmZZCHN.js";
3
3
  import { n as CheckboxValue, t as CheckboxBase } from "../../checkbox-base-Bm0GPWgm.js";
4
- import { n as CheckboxProps, t as Checkbox } from "../../checkbox-BmTXBcCE.js";
4
+ import { n as CheckboxProps, t as Checkbox } from "../../checkbox-DmRYkN10.js";
5
5
  import { a as CommandItem, i as CommandInput, n as CommandEmpty, o as CommandList, r as CommandGroup, s as CommandLoading, t as Command } from "../../command-DHHTsHfH.js";
6
- import { n as RadioGroupFieldProps, t as RadioGroupField } from "../../radio-group-field-CjX_Zt0C.js";
7
- import { n as SelectFieldProps, r as SelectFieldRaw, t as SelectField } from "../../select-field-BuXjM43L.js";
8
- import { n as EnumFieldProps, t as EnumField } from "../../enum-field-qgV9wsyI.js";
6
+ import { n as RadioGroupFieldProps, t as RadioGroupField } from "../../radio-group-field-Bsf4waat.js";
7
+ import { n as SelectFieldProps, r as SelectFieldRaw, t as SelectField } from "../../select-field-DbFd1YiC.js";
8
+ import { n as EnumFieldProps, t as EnumField } from "../../enum-field-CSeQE4Ss.js";
9
9
  import { n as FormDescriptionProps, t as FormDescription } from "../../form-description-DJrDJzJi.js";
10
10
  import { t as FormGroup } from "../../form-group-Ckd28lpW.js";
11
11
  import { n as FormLabelProps, t as FormLabel } from "../../form-label-C8ghd_lR.js";
@@ -13,13 +13,13 @@ import { n as FormMessageProps, r as FormMessageType, t as FormMessage } from ".
13
13
  import { t as FormServerErrorMessage } from "../../form-server-error-message-D2tFtDZ0.js";
14
14
  import { t as FormMessageList } from "../../message-list-D8d2ltLd.js";
15
15
  import { t as Form } from "../../form-Brj5AQNr.js";
16
- import { n as IdAutocompleteInputContainerProps, t as IdAutocompleteInputContainer } from "../../id-autocomplete-input-container-BqRQGpcs.js";
17
- import { n as IdAutocompleteListOptionProps, t as IdAutocompleteListOption } from "../../id-autocomplete-list-option-MsqKeLXD.js";
18
- import { n as IdAutocompleteListProps, t as IdAutocompleteList } from "../../id-autocomplete-list-ChQsiJDg.js";
19
- import { t as IdAutocomplete } from "../../id-autocomplete-CHvGhffo.js";
20
- import { t as useIdAutocomplete } from "../../use-id-autocomplete-wdw3CfYc.js";
16
+ import { n as IdAutocompleteInputContainerProps, t as IdAutocompleteInputContainer } from "../../id-autocomplete-input-container-xg9lrpSK.js";
17
+ import { n as IdAutocompleteListOptionProps, t as IdAutocompleteListOption } from "../../id-autocomplete-list-option-D7JgEK6E.js";
18
+ import { n as IdAutocompleteListProps, t as IdAutocompleteList } from "../../id-autocomplete-list-Da3FbpJ1.js";
19
+ import { t as IdAutocomplete } from "../../id-autocomplete-0bhU6VQG.js";
20
+ import { t as useIdAutocomplete } from "../../use-id-autocomplete-DSRXA4Wt.js";
21
21
  import { n as InputProps, t as Input } from "../../input-WDvjJFqf.js";
22
- import { t as SplittedInputDiff } from "../../splitted-input-diff-DBkgDh9Q.js";
22
+ import { t as SplittedInputDiff } from "../../splitted-input-diff-BKRMH7vI.js";
23
23
  import { t as JsonViewer } from "../../json-viewer-Kg0IBIt-.js";
24
24
  import { i as PopoverTrigger, n as PopoverAnchor, r as PopoverContent, t as Popover } from "../../popover-TvQxa0RU.js";
25
25
  import { n as RadioGroup, t as CustomizableRadioGroupProps } from "../../radio-group-CROIwgYz.js";
@@ -27,16 +27,16 @@ import { n as RadioProps, t as Radio } from "../../radio-CTS4WsNy.js";
27
27
  import { n as SearchAutocompleteProps, r as SearchAutocompleteRowContext, t as SearchAutocompleteOption } from "../../types-D4CirgNk.js";
28
28
  import { t as SearchAutocomplete } from "../../search-autocomplete-COvFRZIb.js";
29
29
  import { t as useSearchAutocomplete } from "../../use-search-autocomplete-vSvcsvcB.js";
30
- import { t as Content } from "../../content-BMXLcwWY.js";
31
- import { t as SelectedContent } from "../../selected-content-C49jmTLU.js";
32
- import { n as TextInputProps, t as TextInput } from "../../text-input-tkqggbWx.js";
33
- import { n as TextFieldProps, t as TextField } from "../../text-field-3j4fLJ-7.js";
34
- import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../types-DDSmPhHp.js";
35
- import { n as SidebarProps, t as Sidebar } from "../../sidebar-4juLhREX.js";
36
- import { n as useSidebar, t as SidebarProvider } from "../../sidebar-provider-CMG6WQWo.js";
30
+ import { t as Content } from "../../content-L3OINRSY.js";
31
+ import { t as SelectedContent } from "../../selected-content-VMVPoru4.js";
32
+ import { n as TextInputProps, t as TextInput } from "../../text-input-BSxhvnyx.js";
33
+ import { n as TextFieldProps, t as TextField } from "../../text-field-CtatgqNu.js";
34
+ import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../types-FTqFl5du.js";
35
+ import { n as SidebarProps, t as Sidebar } from "../../sidebar-DFqreKf1.js";
36
+ import { n as useSidebar, t as SidebarProvider } from "../../sidebar-provider-CZHhqW5n.js";
37
37
  import { a as TooltipProps, i as TooltipContent, n as Root, o as Trigger, r as Tooltip, t as Provider } from "../../tooltip-B4uQJPUm.js";
38
- import { t as ValueTransformer } from "../../value-transformer-BAD6r8Ol.js";
39
- import { n as withFieldValidation, t as ValidationOptions } from "../../with-field-validation-Bt02MQn2.js";
40
- import "../../index-DSknqh8u.js";
38
+ import { t as ValueTransformer } from "../../value-transformer-Dv-10UyC.js";
39
+ import { n as withFieldValidation, t as ValidationOptions } from "../../with-field-validation-WiD_NFDk.js";
40
+ import "../../index-D9nAoDks.js";
41
41
  export { Button, ButtonProps, CharacterCounter, CharacterCounterProps, Checkbox, CheckboxBase, CheckboxProps, type CheckboxValue, Command, CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList, CommandLoading, Content, CustomizableRadioGroupProps, EnumField, EnumFieldProps, type FlattenedNode, Form, FormDescription, FormDescriptionProps, FormGroup, FormLabel, FormLabelProps, FormMessage, FormMessageList, FormMessageProps, FormMessageType, FormServerErrorMessage, IdAutocomplete, IdAutocompleteInputContainer, type IdAutocompleteInputContainerProps, IdAutocompleteList, IdAutocompleteListOption, type IdAutocompleteListOptionProps, type IdAutocompleteListProps, Input, InputProps, JsonViewer, type NodeSortComparisonFn, type NodeSortOrder, type NodeSortType, type NodeStatus, Popover, PopoverAnchor, PopoverContent, PopoverTrigger, Radio, RadioGroup, RadioGroupField, RadioGroupFieldProps, RadioProps, SearchAutocomplete, type SearchAutocompleteOption, type SearchAutocompleteProps, type SearchAutocompleteRowContext, SelectField, SelectFieldProps, SelectFieldRaw, SelectedContent, Sidebar, type SidebarIcon, type SidebarNode, SidebarProps, SidebarProvider, SplittedInputDiff, TextField, TextFieldProps, TextInput, type TextInputProps, Tooltip, TooltipContent, type TooltipProps, Provider as TooltipProvider, Root as TooltipRoot, Trigger as TooltipTrigger, ValidationOptions, ValueTransformer, buttonVariants, useIdAutocomplete, useSearchAutocomplete, useSidebar, withFieldValidation };
42
42
  export {};
@@ -1,3 +1,3 @@
1
- import { t as SplittedInputDiff } from "../../../splitted-input-diff-DBkgDh9Q.js";
1
+ import { t as SplittedInputDiff } from "../../../splitted-input-diff-BKRMH7vI.js";
2
2
  export { SplittedInputDiff };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import { Tooltip, TooltipProvider as Provider } from "../tooltip/tooltip.js";
3
3
  import { InputDiff } from "./subcomponent/input-diff.js";
4
4
  import { TextDiff } from "./subcomponent/text-diff.js";
@@ -1,4 +1,4 @@
1
- import { _ as WithDifference } from "../../../../index-C05uhexJ.js";
1
+ import { _ as WithDifference } from "../../../../index-D99twPFI.js";
2
2
  //#region src/ui/components/input/subcomponent/text-diff.d.ts
3
3
  interface TextDiffProps extends WithDifference<string> {
4
4
  value: string;
@@ -1,3 +1,3 @@
1
- import { n as RadioGroupFieldProps, t as RadioGroupField } from "../../../radio-group-field-CjX_Zt0C.js";
1
+ import { n as RadioGroupFieldProps, t as RadioGroupField } from "../../../radio-group-field-Bsf4waat.js";
2
2
  export { RadioGroupField, RadioGroupFieldProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { t as Content } from "../../../content-BMXLcwWY.js";
1
+ import { t as Content } from "../../../content-L3OINRSY.js";
2
2
  export { Content };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import { CommandEmpty, CommandGroup, CommandInput, CommandItem, CommandList } from "../command/command.js";
3
3
  import { CommandItemList } from "./subcomponents/CommandItemList.js";
4
4
  import { useEffect } from "react";
@@ -1,3 +1,3 @@
1
- import { n as SelectFieldProps, r as SelectFieldRaw, t as SelectField } from "../../../select-field-BuXjM43L.js";
1
+ import { n as SelectFieldProps, r as SelectFieldRaw, t as SelectField } from "../../../select-field-DbFd1YiC.js";
2
2
  export { SelectField, SelectFieldProps, SelectFieldRaw };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { t as SelectedContent } from "../../../selected-content-C49jmTLU.js";
1
+ import { t as SelectedContent } from "../../../selected-content-VMVPoru4.js";
2
2
  export { SelectedContent };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import React from "react";
3
3
  import { twMerge } from "tailwind-merge";
4
4
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- import { C as SelectProps } from "../../../../index-C05uhexJ.js";
1
+ import { C as SelectProps } from "../../../../index-D99twPFI.js";
2
2
  import React from "react";
3
3
  //#region src/ui/components/select-field/subcomponents/CommandItemList.d.ts
4
4
  interface FavoriteOptionsProps {
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../../icon-CR_tC1gc.js";
2
2
  import { CommandItem } from "../../command/command.js";
3
3
  import "react";
4
4
  import { twMerge } from "tailwind-merge";
@@ -1,4 +1,4 @@
1
- import { C as SelectProps } from "../../../index-C05uhexJ.js";
1
+ import { C as SelectProps } from "../../../index-D99twPFI.js";
2
2
  //#region src/ui/components/select-field/use-select-field.d.ts
3
3
  interface UseSelectFieldProps {
4
4
  options?: SelectProps["options"];
@@ -1,6 +1,6 @@
1
- import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../../types-DDSmPhHp.js";
2
- import { n as SidebarProps, t as Sidebar } from "../../../sidebar-4juLhREX.js";
3
- import { n as useSidebar, t as SidebarProvider } from "../../../sidebar-provider-CMG6WQWo.js";
4
- import "../../../index-DU-WgcAh.js";
1
+ import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../../types-FTqFl5du.js";
2
+ import { n as SidebarProps, t as Sidebar } from "../../../sidebar-DFqreKf1.js";
3
+ import { n as useSidebar, t as SidebarProvider } from "../../../sidebar-provider-CZHhqW5n.js";
4
+ import "../../../index-C-Tup7Br.js";
5
5
  export { type FlattenedNode, type NodeSortComparisonFn, type NodeSortOrder, type NodeSortType, type NodeStatus, Sidebar, type SidebarIcon, type SidebarNode, SidebarProps, SidebarProvider, useSidebar };
6
6
  export {};
@@ -1,3 +1,3 @@
1
- import { n as SidebarProps, t as Sidebar } from "../../../sidebar-4juLhREX.js";
1
+ import { n as SidebarProps, t as Sidebar } from "../../../sidebar-DFqreKf1.js";
2
2
  export { Sidebar, SidebarProps };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../icon-CR_tC1gc.js";
2
2
  import { triggerEvent } from "./utils.js";
3
3
  import { useSidebar } from "./subcomponents/sidebar-provider/sidebar-provider.js";
4
4
  import { SidebarContentArea } from "./subcomponents/sidebar-content-area.js";
@@ -1,4 +1,4 @@
1
- import { t as Icon } from "../../../../icon-01W_S_9A.js";
1
+ import { t as Icon } from "../../../../icon-CR_tC1gc.js";
2
2
  import { SidebarItem } from "./sidebar-item.js";
3
3
  import { useSidebar } from "./sidebar-provider/sidebar-provider.js";
4
4
  import { SidebarSkeleton } from "./sidebar-skeleton.js";
@@ -1,4 +1,4 @@
1
- import { s as SidebarNode, t as FlattenedNode } from "../../../../types-DDSmPhHp.js";
1
+ import { s as SidebarNode, t as FlattenedNode } from "../../../../types-FTqFl5du.js";
2
2
  //#region src/ui/components/sidebar/subcomponents/sidebar-item.d.ts
3
3
  interface SidebarItemProps {
4
4
  node: FlattenedNode;
@@ -1,5 +1,6 @@
1
- import { a as PinFilled, o as Pin, s as CaretDown, t as Icon } from "../../../../icon-01W_S_9A.js";
1
+ import { S as CaretDown, t as Icon } from "../../../../icon-CR_tC1gc.js";
2
2
  import { Tooltip, TooltipProvider as Provider } from "../../tooltip/tooltip.js";
3
+ import { n as Pin, t as PinFilled } from "../../../../PinFilled-cSbUqZCA.js";
3
4
  import { NodeStatus } from "../types.js";
4
5
  import { useEllipsis } from "../use-ellipsis.js";
5
6
  import { StatusIcon } from "./status-icon.js";
@@ -1 +1 @@
1
- {"version":3,"file":"sidebar-item.js","names":["cloneElement","forwardRef","useMemo","useRef","twMerge","CaretDown","Pin","PinFilled","Icon","Tooltip","TooltipProvider","NodeStatus","useEllipsis","StatusIcon","TOOLTIP_DELAY","TOOLTIP_DELAY_LONG","SidebarItem","node","toggleNode","togglePin","searchTerm","searchResults","activeSearchIndex","allowPinning","pinnedMode","isPinned","isActive","style","onChange","paddingLeft","depth","isSearchActive","length","id","IconComponent","isExpanded","expandedIcon","icon","isDescendenceModified","check","n","status","UNCHANGED","children","some","child","hasStatus","computedStyle","ellipsisRef","hasEllipsis","title","className","e","stopPropagation","undefined","RenderTitle","ref","toLowerCase","includes","highlightClass","parts","remaining","lowerTerm","i","idx","indexOf","push","slice","displayName","PinnedModeCircleIcon"],"sources":["../../../../../src/ui/components/sidebar/subcomponents/sidebar-item.tsx"],"sourcesContent":["import { cloneElement, forwardRef, useMemo, useRef } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport CaretDown from \"../../../../powerhouse/components/icon-components/CaretDown.js\";\nimport Pin from \"../../../../powerhouse/components/icon-components/Pin.js\";\nimport PinFilled from \"../../../../powerhouse/components/icon-components/PinFilled.js\";\nimport { Icon } from \"../../../../powerhouse/index.js\";\nimport { Tooltip, TooltipProvider } from \"../../tooltip/tooltip.js\";\nimport { type FlattenedNode, NodeStatus, type SidebarNode } from \"../types.js\";\nimport { useEllipsis } from \"../use-ellipsis.js\";\nimport { StatusIcon } from \"./status-icon.js\";\n\ninterface SidebarItemProps {\n node: FlattenedNode;\n toggleNode?: (nodeId: string) => void;\n togglePin: (nodeId: string) => void;\n searchTerm: string;\n searchResults: SidebarNode[];\n activeSearchIndex: number;\n allowPinning: boolean;\n pinnedMode?: boolean;\n isPinned?: boolean;\n isActive?: boolean;\n style?: React.CSSProperties;\n onChange?: (node: SidebarNode) => void;\n}\n\nconst TOOLTIP_DELAY = 700;\nconst TOOLTIP_DELAY_LONG = 172800000; // 2 days to simulate no tooltip\n\nexport const SidebarItem = ({\n node,\n toggleNode,\n togglePin,\n searchTerm,\n searchResults,\n activeSearchIndex,\n allowPinning,\n pinnedMode = false,\n isPinned = false,\n isActive = false,\n style,\n onChange,\n}: SidebarItemProps) => {\n const paddingLeft = node.depth * 24;\n const isSearchActive =\n searchResults.length > 0 && searchResults[activeSearchIndex].id === node.id;\n const IconComponent = node.isExpanded\n ? (node.expandedIcon ?? node.icon)\n : node.icon;\n const isDescendenceModified = useMemo(() => {\n const check = (n: SidebarNode): boolean => {\n // Check current node's status first\n if (n.status !== NodeStatus.UNCHANGED && n.status) {\n return true;\n }\n\n // Then recursively check all children\n if (n.children && n.children.length > 0) {\n return n.children.some((child) => check(child));\n }\n\n return false;\n };\n\n return check(node);\n }, [node]);\n const hasStatus =\n (node.status && node.status !== NodeStatus.UNCHANGED) ||\n isDescendenceModified;\n\n const computedStyle = { ...style, paddingLeft };\n\n // Check if the title has ellipsis to determine if the tooltip should be delayed\n const ellipsisRef = useRef<HTMLDivElement | null>(null);\n const hasEllipsis = useEllipsis(ellipsisRef);\n\n return (\n <TooltipProvider>\n <Tooltip\n content={node.title}\n triggerAsChild\n side=\"bottom\"\n delayDuration={hasEllipsis ? TOOLTIP_DELAY : TOOLTIP_DELAY_LONG}\n >\n <div\n style={computedStyle}\n className={twMerge(\n \"group/sidebar-item-wrapper flex w-full items-center\",\n !pinnedMode && \"pb-2\",\n )}\n >\n <div\n tabIndex={0}\n data-testid=\"sidebar-item\"\n id={`sidebar-item-${node.id}`}\n className={twMerge(\n \"group/sidebar-item relative flex w-full cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 text-foreground select-none hover:hover-effect\",\n hasStatus && \"pr-6\",\n allowPinning && (hasStatus ? \"hover:pr-12\" : \"hover:pr-6\"),\n isPinned && (hasStatus ? \"pr-12\" : \"pr-6\"),\n isSearchActive && \"bg-warning/10\",\n // line between pinned items\n pinnedMode &&\n \"after:absolute after:-top-2.5 after:left-[15px] after:h-4 after:w-px after:bg-secondary first:group-first/sidebar-item-wrapper:after:hidden hover:hover-effect\",\n isActive &&\n \"bg-sidebar-accent font-medium text-sidebar-accent-foreground hover:hover-effect\",\n node.className,\n )}\n onClick={() => {\n toggleNode?.(node.id);\n onChange?.(node);\n }}\n >\n <div className=\"flex max-w-full items-center gap-2\">\n {!pinnedMode && (\n <div\n className=\"-m-2 -mr-1 h-full rounded-md py-2 pr-1 pl-2 hover:hover-effect\"\n onClick={(e) => {\n e.stopPropagation();\n toggleNode?.(node.id);\n }}\n >\n <CaretDown\n width=\"16\"\n height=\"16\"\n className={twMerge(\n \"min-w-4\",\n node.isExpanded &&\n node.children &&\n node.children.length > 0\n ? \"\"\n : \"-rotate-90\",\n node.children === undefined || node.children.length === 0\n ? \"text-muted-foreground\"\n : \"text-foreground\",\n )}\n />\n </div>\n )}\n\n {IconComponent ? (\n typeof IconComponent === \"string\" ? (\n <Icon name={IconComponent} size={16} className=\"min-w-4\" />\n ) : (\n // @ts-expect-error -- this is a workaround\n cloneElement(IconComponent, { className: \"min-w-4 w-4\" })\n )\n ) : pinnedMode ? (\n <PinnedModeCircleIcon isPinned={isPinned} />\n ) : null}\n\n <RenderTitle\n ref={ellipsisRef}\n title={node.title}\n searchTerm={searchTerm}\n isSearchActive={isSearchActive}\n pinnedMode={pinnedMode}\n className=\"\"\n />\n\n {allowPinning && (\n <div\n className={twMerge(\n \"absolute top-1/2 flex -translate-y-1/2 items-center justify-center\",\n hasStatus ? \"right-8\" : \"right-2\",\n isPinned\n ? \"text-foreground hover:hover-effect\"\n : \"invisible text-muted-foreground group-hover/sidebar-item:visible hover:hover-effect\",\n )}\n onClick={(e) => {\n e.stopPropagation();\n togglePin(node.id);\n }}\n >\n {isPinned ? (\n <PinFilled width=\"16\" height=\"16\" />\n ) : (\n <Pin width=\"16\" height=\"16\" />\n )}\n </div>\n )}\n {hasStatus && (\n <div\n className={twMerge(\n \"absolute top-1/2 right-2 flex -translate-y-1/2 items-center justify-center\",\n \"text-foreground group-hover/sidebar-item:visible hover:hover-effect\",\n )}\n onClick={(e) => {\n e.stopPropagation();\n togglePin(node.id);\n }}\n >\n <StatusIcon\n status={node.status ?? NodeStatus.UNCHANGED}\n isDescendenceModified={isDescendenceModified}\n />\n </div>\n )}\n </div>\n </div>\n </div>\n </Tooltip>\n </TooltipProvider>\n );\n};\n\nconst RenderTitle = forwardRef<\n HTMLDivElement,\n {\n title: string;\n searchTerm: string;\n isSearchActive: boolean;\n pinnedMode: boolean;\n className?: string;\n }\n>(({ title, searchTerm, isSearchActive, pinnedMode, className }, ref) => {\n return (\n <div ref={ref} className={twMerge(\"truncate text-sm/5\", className)}>\n {searchTerm &&\n title.toLowerCase().includes(searchTerm.toLowerCase()) &&\n !pinnedMode\n ? (() => {\n const highlightClass = isSearchActive\n ? \"bg-warning/10\"\n : \"bg-secondary\";\n const parts: React.ReactNode[] = [];\n let remaining = title;\n const lowerTerm = searchTerm.toLowerCase();\n let i = 0;\n while (remaining.length > 0) {\n const idx = remaining.toLowerCase().indexOf(lowerTerm);\n if (idx === -1) {\n parts.push(remaining);\n break;\n }\n if (idx > 0) parts.push(remaining.slice(0, idx));\n parts.push(\n <span key={i++} className={highlightClass}>\n {remaining.slice(idx, idx + searchTerm.length)}\n </span>,\n );\n remaining = remaining.slice(idx + searchTerm.length);\n }\n return <>{parts}</>;\n })()\n : title}\n </div>\n );\n});\n\nRenderTitle.displayName = \"RenderTitle\";\n\nconst PinnedModeCircleIcon = ({ isPinned }: { isPinned: boolean }) => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"min-w-4\"\n >\n <rect width=\"16\" height=\"16\" rx=\"6.4\" fill=\"transparent\" />\n <path\n d=\"M12 8C12 10.2091 10.2091 12 8 12C5.79086 12 4 10.2091 4 8C4 5.79086 5.79086 4 8 4C10.2091 4 12 5.79086 12 8Z\"\n fill=\"currentColor\"\n className={isPinned ? \"text-muted-foreground\" : \"text-foreground\"}\n />\n </svg>\n);\n"],"mappings":";;;;;;;;;AA0BA,MAAMc,gBAAgB;AACtB,MAAMC,qBAAqB;AAE3B,MAAaC,eAAe,EAC1BC,MACAC,YACAC,WACAC,YACAC,eACAC,mBACAC,cACAC,aAAa,OACbC,WAAW,OACXC,WAAW,OACXC,OACAC,eACsB;CACtB,MAAMC,cAAcZ,KAAKa,QAAQ;CACjC,MAAMC,iBACJV,cAAcW,SAAS,KAAKX,cAAcC,kBAAkB,CAACW,OAAOhB,KAAKgB;CAC3E,MAAMC,gBAAgBjB,KAAKkB,aACtBlB,KAAKmB,gBAAgBnB,KAAKoB,OAC3BpB,KAAKoB;CACT,MAAMC,wBAAwBpC,cAAc;EAC1C,MAAMqC,SAASC,MAA4B;GAEzC,IAAIA,EAAEC,WAAW9B,WAAW+B,aAAaF,EAAEC,QACzC,OAAO;GAIT,IAAID,EAAEG,YAAYH,EAAEG,SAASX,SAAS,GACpC,OAAOQ,EAAEG,SAASC,MAAMC,UAAUN,MAAMM,KAAK,CAAC;GAGhD,OAAO;EACT;EAEA,OAAON,MAAMtB,IAAI;CACnB,GAAG,CAACA,IAAI,CAAC;CACT,MAAM6B,YACH7B,KAAKwB,UAAUxB,KAAKwB,WAAW9B,WAAW+B,aAC3CJ;CAEF,MAAMS,gBAAgB;EAAE,GAAGpB;EAAOE;CAAY;CAG9C,MAAMmB,cAAc7C,OAA8B,IAAI;CACtD,MAAM8C,cAAcrC,YAAYoC,WAAW;CAE3C,OACE,oBAAC,UAAD,EAAA,UACE,oBAAC,SAAD;EACE,SAAS/B,KAAKiC;EACd,gBAAA;EACA,MAAK;EACL,eAAeD,cAAcnC,gBAAgBC;EAE7C,UAAA,oBAAC,OAAD;GACE,OAAOgC;GACP,WAAW3C,QACT,uDACA,CAACoB,cAAc,MACjB;GAEA,UAAA,oBAAC,OAAD;IACE,UAAU;IACV,eAAY;IACZ,IAAI,gBAAgBP,KAAKgB;IACzB,WAAW7B,QACT,mJACA0C,aAAa,QACbvB,iBAAiBuB,YAAY,gBAAgB,eAC7CrB,aAAaqB,YAAY,UAAU,SACnCf,kBAAkB,iBAElBP,cACE,kKACFE,YACE,mFACFT,KAAKkC,SACP;IACA,eAAe;KACbjC,aAAaD,KAAKgB,EAAE;KACpBL,WAAWX,IAAI;IACjB;IAEA,UAAA,qBAAC,OAAD;KAAK,WAAU;KAAf,UAAA;MACG,CAACO,cACA,oBAAC,OAAD;OACE,WAAU;OACV,UAAU4B,MAAM;QACdA,EAAEC,gBAAgB;QAClBnC,aAAaD,KAAKgB,EAAE;OACtB;OAEA,UAAA,oBAAC,WAAD;QACE,OAAM;QACN,QAAO;QACP,WAAW7B,QACT,WACAa,KAAKkB,cACHlB,KAAK0B,YACL1B,KAAK0B,SAASX,SAAS,IACrB,KACA,cACJf,KAAK0B,aAAaW,KAAAA,KAAarC,KAAK0B,SAASX,WAAW,IACpD,0BACA,iBACN;OAAE,CAAA;MAED,CAAA;MAGNE,gBACC,OAAOA,kBAAkB,WACvB,oBAAC,MAAD;OAAM,MAAMA;OAAe,MAAM;OAAI,WAAU;MAAS,CAAA,IAGxDlC,2BAAakC,eAAe,EAAEiB,WAAW,cAAc,CAAC,IAExD3B,aACF,oBAAC,sBAAD,EAAgCC,SAAS,CAAA,IACvC;MAEJ,oBAAC,aAAD;OACE,KAAKuB;OACL,OAAO/B,KAAKiC;OACA9B;OACIW;OACJP;OACZ,WAAU;MAAE,CAAA;MAGbD,gBACC,oBAAC,OAAD;OACE,WAAWnB,QACT,sEACA0C,YAAY,YAAY,WACxBrB,WACI,uCACA,qFACN;OACA,UAAU2B,MAAM;QACdA,EAAEC,gBAAgB;QAClBlC,UAAUF,KAAKgB,EAAE;OACnB;OAECR,UAAAA,WACC,oBAAC,WAAD;QAAW,OAAM;QAAK,QAAO;OAAI,CAAA,IAEjC,oBAAC,KAAD;QAAK,OAAM;QAAK,QAAO;OAAI,CAAA;MAE1B,CAAA;MAENqB,aACC,oBAAC,OAAD;OACE,WAAW1C,QACT,8EACA,qEACF;OACA,UAAUgD,MAAM;QACdA,EAAEC,gBAAgB;QAClBlC,UAAUF,KAAKgB,EAAE;OACnB;OAEA,UAAA,oBAAC,YAAD;QACE,QAAQhB,KAAKwB,UAAU9B,WAAW+B;QACXJ;OAAsB,CAAA;MAE5C,CAAA;KAEJ;;GACF,CAAA;EACF,CAAA;CACE,CAAA,EACM,CAAA;AAErB;AAEA,MAAMiB,cAActD,0BASjB,EAAEiD,OAAO9B,YAAYW,gBAAgBP,YAAY2B,aAAaK,QAAQ;CACvE,OACE,oBAAC,OAAD;EAAUA;EAAK,WAAWpD,QAAQ,sBAAsB+C,SAAS;EAC9D/B,UAAAA,cACD8B,MAAMO,YAAY,CAAC,CAACC,SAAStC,WAAWqC,YAAY,CAAC,KACrD,CAACjC,oBACU;GACL,MAAMmC,iBAAiB5B,iBACnB,kBACA;GACJ,MAAM6B,QAA2B,CAAA;GACjC,IAAIC,YAAYX;GAChB,MAAMY,YAAY1C,WAAWqC,YAAY;GACzC,IAAIM,IAAI;GACR,OAAOF,UAAU7B,SAAS,GAAG;IAC3B,MAAMgC,MAAMH,UAAUJ,YAAY,CAAC,CAACQ,QAAQH,SAAS;IACrD,IAAIE,QAAQ,IAAI;KACdJ,MAAMM,KAAKL,SAAS;KACpB;IACF;IACA,IAAIG,MAAM,GAAGJ,MAAMM,KAAKL,UAAUM,MAAM,GAAGH,GAAG,CAAC;IAC/CJ,MAAMM,KACJ,oBAAC,QAAD;KAAgB,WAAWP;KACxBE,UAAAA,UAAUM,MAAMH,KAAKA,MAAM5C,WAAWY,MAAM;IACzC,GAFK+B,GAEL,CACR;IACAF,YAAYA,UAAUM,MAAMH,MAAM5C,WAAWY,MAAM;GACrD;GACA,OAAO,oBAAA,YAAA,EAAA,UAAG4B,MAAM,CAAA;EAClB,EAAA,CAAG,IACHV;CACD,CAAA;AAET,CAAC;AAEDK,YAAYa,cAAc;AAE1B,MAAMC,wBAAwB,EAAE5C,eAC9B,qBAAC,OAAD;CACE,OAAM;CACN,QAAO;CACP,SAAQ;CACR,MAAK;CACL,OAAM;CACN,WAAU;CANZ,UAAA,CAQE,oBAAC,QAAD;EAAM,OAAM;EAAK,QAAO;EAAK,IAAG;EAAM,MAAK;CAAa,CAAA,GACxD,oBAAC,QAAD;EACE,GAAE;EACF,MAAK;EACL,WAAWA,WAAW,0BAA0B;CAAkB,CAAA,CAEjE"}
1
+ {"version":3,"file":"sidebar-item.js","names":["cloneElement","forwardRef","useMemo","useRef","twMerge","CaretDown","Pin","PinFilled","Icon","Tooltip","TooltipProvider","NodeStatus","useEllipsis","StatusIcon","TOOLTIP_DELAY","TOOLTIP_DELAY_LONG","SidebarItem","node","toggleNode","togglePin","searchTerm","searchResults","activeSearchIndex","allowPinning","pinnedMode","isPinned","isActive","style","onChange","paddingLeft","depth","isSearchActive","length","id","IconComponent","isExpanded","expandedIcon","icon","isDescendenceModified","check","n","status","UNCHANGED","children","some","child","hasStatus","computedStyle","ellipsisRef","hasEllipsis","title","className","e","stopPropagation","undefined","RenderTitle","ref","toLowerCase","includes","highlightClass","parts","remaining","lowerTerm","i","idx","indexOf","push","slice","displayName","PinnedModeCircleIcon"],"sources":["../../../../../src/ui/components/sidebar/subcomponents/sidebar-item.tsx"],"sourcesContent":["import { cloneElement, forwardRef, useMemo, useRef } from \"react\";\nimport { twMerge } from \"tailwind-merge\";\nimport CaretDown from \"../../../../powerhouse/components/icon-components/CaretDown.js\";\nimport Pin from \"../../../../powerhouse/components/icon-components/Pin.js\";\nimport PinFilled from \"../../../../powerhouse/components/icon-components/PinFilled.js\";\nimport { Icon } from \"../../../../powerhouse/index.js\";\nimport { Tooltip, TooltipProvider } from \"../../tooltip/tooltip.js\";\nimport { type FlattenedNode, NodeStatus, type SidebarNode } from \"../types.js\";\nimport { useEllipsis } from \"../use-ellipsis.js\";\nimport { StatusIcon } from \"./status-icon.js\";\n\ninterface SidebarItemProps {\n node: FlattenedNode;\n toggleNode?: (nodeId: string) => void;\n togglePin: (nodeId: string) => void;\n searchTerm: string;\n searchResults: SidebarNode[];\n activeSearchIndex: number;\n allowPinning: boolean;\n pinnedMode?: boolean;\n isPinned?: boolean;\n isActive?: boolean;\n style?: React.CSSProperties;\n onChange?: (node: SidebarNode) => void;\n}\n\nconst TOOLTIP_DELAY = 700;\nconst TOOLTIP_DELAY_LONG = 172800000; // 2 days to simulate no tooltip\n\nexport const SidebarItem = ({\n node,\n toggleNode,\n togglePin,\n searchTerm,\n searchResults,\n activeSearchIndex,\n allowPinning,\n pinnedMode = false,\n isPinned = false,\n isActive = false,\n style,\n onChange,\n}: SidebarItemProps) => {\n const paddingLeft = node.depth * 24;\n const isSearchActive =\n searchResults.length > 0 && searchResults[activeSearchIndex].id === node.id;\n const IconComponent = node.isExpanded\n ? (node.expandedIcon ?? node.icon)\n : node.icon;\n const isDescendenceModified = useMemo(() => {\n const check = (n: SidebarNode): boolean => {\n // Check current node's status first\n if (n.status !== NodeStatus.UNCHANGED && n.status) {\n return true;\n }\n\n // Then recursively check all children\n if (n.children && n.children.length > 0) {\n return n.children.some((child) => check(child));\n }\n\n return false;\n };\n\n return check(node);\n }, [node]);\n const hasStatus =\n (node.status && node.status !== NodeStatus.UNCHANGED) ||\n isDescendenceModified;\n\n const computedStyle = { ...style, paddingLeft };\n\n // Check if the title has ellipsis to determine if the tooltip should be delayed\n const ellipsisRef = useRef<HTMLDivElement | null>(null);\n const hasEllipsis = useEllipsis(ellipsisRef);\n\n return (\n <TooltipProvider>\n <Tooltip\n content={node.title}\n triggerAsChild\n side=\"bottom\"\n delayDuration={hasEllipsis ? TOOLTIP_DELAY : TOOLTIP_DELAY_LONG}\n >\n <div\n style={computedStyle}\n className={twMerge(\n \"group/sidebar-item-wrapper flex w-full items-center\",\n !pinnedMode && \"pb-2\",\n )}\n >\n <div\n tabIndex={0}\n data-testid=\"sidebar-item\"\n id={`sidebar-item-${node.id}`}\n className={twMerge(\n \"group/sidebar-item relative flex w-full cursor-pointer items-center gap-2 rounded-md px-2 py-1.5 text-foreground select-none hover:hover-effect\",\n hasStatus && \"pr-6\",\n allowPinning && (hasStatus ? \"hover:pr-12\" : \"hover:pr-6\"),\n isPinned && (hasStatus ? \"pr-12\" : \"pr-6\"),\n isSearchActive && \"bg-warning/10\",\n // line between pinned items\n pinnedMode &&\n \"after:absolute after:-top-2.5 after:left-[15px] after:h-4 after:w-px after:bg-secondary first:group-first/sidebar-item-wrapper:after:hidden hover:hover-effect\",\n isActive &&\n \"bg-sidebar-accent font-medium text-sidebar-accent-foreground hover:hover-effect\",\n node.className,\n )}\n onClick={() => {\n toggleNode?.(node.id);\n onChange?.(node);\n }}\n >\n <div className=\"flex max-w-full items-center gap-2\">\n {!pinnedMode && (\n <div\n className=\"-m-2 -mr-1 h-full rounded-md py-2 pr-1 pl-2 hover:hover-effect\"\n onClick={(e) => {\n e.stopPropagation();\n toggleNode?.(node.id);\n }}\n >\n <CaretDown\n width=\"16\"\n height=\"16\"\n className={twMerge(\n \"min-w-4\",\n node.isExpanded &&\n node.children &&\n node.children.length > 0\n ? \"\"\n : \"-rotate-90\",\n node.children === undefined || node.children.length === 0\n ? \"text-muted-foreground\"\n : \"text-foreground\",\n )}\n />\n </div>\n )}\n\n {IconComponent ? (\n typeof IconComponent === \"string\" ? (\n <Icon name={IconComponent} size={16} className=\"min-w-4\" />\n ) : (\n // @ts-expect-error -- this is a workaround\n cloneElement(IconComponent, { className: \"min-w-4 w-4\" })\n )\n ) : pinnedMode ? (\n <PinnedModeCircleIcon isPinned={isPinned} />\n ) : null}\n\n <RenderTitle\n ref={ellipsisRef}\n title={node.title}\n searchTerm={searchTerm}\n isSearchActive={isSearchActive}\n pinnedMode={pinnedMode}\n className=\"\"\n />\n\n {allowPinning && (\n <div\n className={twMerge(\n \"absolute top-1/2 flex -translate-y-1/2 items-center justify-center\",\n hasStatus ? \"right-8\" : \"right-2\",\n isPinned\n ? \"text-foreground hover:hover-effect\"\n : \"invisible text-muted-foreground group-hover/sidebar-item:visible hover:hover-effect\",\n )}\n onClick={(e) => {\n e.stopPropagation();\n togglePin(node.id);\n }}\n >\n {isPinned ? (\n <PinFilled width=\"16\" height=\"16\" />\n ) : (\n <Pin width=\"16\" height=\"16\" />\n )}\n </div>\n )}\n {hasStatus && (\n <div\n className={twMerge(\n \"absolute top-1/2 right-2 flex -translate-y-1/2 items-center justify-center\",\n \"text-foreground group-hover/sidebar-item:visible hover:hover-effect\",\n )}\n onClick={(e) => {\n e.stopPropagation();\n togglePin(node.id);\n }}\n >\n <StatusIcon\n status={node.status ?? NodeStatus.UNCHANGED}\n isDescendenceModified={isDescendenceModified}\n />\n </div>\n )}\n </div>\n </div>\n </div>\n </Tooltip>\n </TooltipProvider>\n );\n};\n\nconst RenderTitle = forwardRef<\n HTMLDivElement,\n {\n title: string;\n searchTerm: string;\n isSearchActive: boolean;\n pinnedMode: boolean;\n className?: string;\n }\n>(({ title, searchTerm, isSearchActive, pinnedMode, className }, ref) => {\n return (\n <div ref={ref} className={twMerge(\"truncate text-sm/5\", className)}>\n {searchTerm &&\n title.toLowerCase().includes(searchTerm.toLowerCase()) &&\n !pinnedMode\n ? (() => {\n const highlightClass = isSearchActive\n ? \"bg-warning/10\"\n : \"bg-secondary\";\n const parts: React.ReactNode[] = [];\n let remaining = title;\n const lowerTerm = searchTerm.toLowerCase();\n let i = 0;\n while (remaining.length > 0) {\n const idx = remaining.toLowerCase().indexOf(lowerTerm);\n if (idx === -1) {\n parts.push(remaining);\n break;\n }\n if (idx > 0) parts.push(remaining.slice(0, idx));\n parts.push(\n <span key={i++} className={highlightClass}>\n {remaining.slice(idx, idx + searchTerm.length)}\n </span>,\n );\n remaining = remaining.slice(idx + searchTerm.length);\n }\n return <>{parts}</>;\n })()\n : title}\n </div>\n );\n});\n\nRenderTitle.displayName = \"RenderTitle\";\n\nconst PinnedModeCircleIcon = ({ isPinned }: { isPinned: boolean }) => (\n <svg\n width=\"16\"\n height=\"16\"\n viewBox=\"0 0 16 16\"\n fill=\"none\"\n xmlns=\"http://www.w3.org/2000/svg\"\n className=\"min-w-4\"\n >\n <rect width=\"16\" height=\"16\" rx=\"6.4\" fill=\"transparent\" />\n <path\n d=\"M12 8C12 10.2091 10.2091 12 8 12C5.79086 12 4 10.2091 4 8C4 5.79086 5.79086 4 8 4C10.2091 4 12 5.79086 12 8Z\"\n fill=\"currentColor\"\n className={isPinned ? \"text-muted-foreground\" : \"text-foreground\"}\n />\n </svg>\n);\n"],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { n as useSidebar, t as SidebarProvider } from "../../../../../sidebar-provider-CMG6WQWo.js";
2
- import "../../../../../index-CpSqVZKp.js";
1
+ import { n as useSidebar, t as SidebarProvider } from "../../../../../sidebar-provider-CZHhqW5n.js";
2
+ import "../../../../../index-jfVVOU-H.js";
3
3
  export { SidebarProvider, useSidebar };
4
4
  export {};
@@ -1,3 +1,3 @@
1
- import { n as useSidebar, t as SidebarProvider } from "../../../../../sidebar-provider-CMG6WQWo.js";
1
+ import { n as useSidebar, t as SidebarProvider } from "../../../../../sidebar-provider-CZHhqW5n.js";
2
2
  export { SidebarProvider, useSidebar };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { i as NodeSortType, r as NodeSortOrder, s as SidebarNode } from "../../../../../types-DDSmPhHp.js";
1
+ import { i as NodeSortType, r as NodeSortOrder, s as SidebarNode } from "../../../../../types-FTqFl5du.js";
2
2
  //#region src/ui/components/sidebar/subcomponents/sidebar-provider/sidebar-reducer.d.ts
3
3
  export interface SidebarState {
4
4
  nodes: SidebarNode[];
@@ -1,8 +1,8 @@
1
- import { n as Search, r as CrossCircle, t as Tabler } from "../../../../../Tabler-rjLxlzUV.js";
2
1
  import { Input } from "../../../input/input.js";
3
2
  import { useSidebar } from "../sidebar-provider/sidebar-provider.js";
4
3
  import { SearchNavigationArrow } from "./search-navigation-arrow.js";
5
4
  import { SearchResultCounter } from "./search-result-counter.js";
5
+ import { n as Search, r as CrossCircle, t as Tabler } from "../../../../../Tabler-rjLxlzUV.js";
6
6
  import { useLayoutEffect, useRef, useState } from "react";
7
7
  import { twMerge } from "tailwind-merge";
8
8
  import { jsx, jsxs } from "react/jsx-runtime";
@@ -1,4 +1,4 @@
1
- import { a as NodeStatus } from "../../../../types-DDSmPhHp.js";
1
+ import { a as NodeStatus } from "../../../../types-FTqFl5du.js";
2
2
  //#region src/ui/components/sidebar/subcomponents/status-icon.d.ts
3
3
  interface StatusIconProps {
4
4
  status: NodeStatus;
@@ -1,5 +1,5 @@
1
- import { a as DescendenceModified, i as Duplicated, n as Moved, o as Created, r as Modified, t as Removed } from "../../../../Removed-OP4eTrAN.js";
2
1
  import { NodeStatus } from "../types.js";
2
+ import { a as DescendenceModified, i as Duplicated, n as Moved, o as Created, r as Modified, t as Removed } from "../../../../Removed-OP4eTrAN.js";
3
3
  import { jsx } from "react/jsx-runtime";
4
4
  //#region src/ui/components/sidebar/subcomponents/status-icon.tsx
5
5
  const STATUS_ICON_MAP = {
@@ -1,3 +1,3 @@
1
- import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../../types-DDSmPhHp.js";
1
+ import { a as NodeStatus, i as NodeSortType, n as NodeSortComparisonFn, o as SidebarIcon, r as NodeSortOrder, s as SidebarNode, t as FlattenedNode } from "../../../types-FTqFl5du.js";
2
2
  export { FlattenedNode, NodeSortComparisonFn, NodeSortOrder, NodeSortType, NodeStatus, SidebarIcon, SidebarNode };
3
3
  export {};
@@ -1,4 +1,4 @@
1
- import { a as NodeStatus, i as NodeSortType, r as NodeSortOrder, s as SidebarNode } from "../../../types-DDSmPhHp.js";
1
+ import { a as NodeStatus, i as NodeSortType, r as NodeSortOrder, s as SidebarNode } from "../../../types-FTqFl5du.js";
2
2
  //#region src/ui/components/sidebar/utils.d.ts
3
3
  export declare const nodesSearch: (nodes: SidebarNode[], searchTerm: string, searchType?: "bfs" | "dfs") => SidebarNode[];
4
4
  export declare const getOpenLevels: (items: SidebarNode[], level: number) => Set<string>;
@@ -1,3 +1,3 @@
1
- import { n as TextFieldProps, t as TextField } from "../../../text-field-3j4fLJ-7.js";
1
+ import { n as TextFieldProps, t as TextField } from "../../../text-field-CtatgqNu.js";
2
2
  export { TextField, TextFieldProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { t as TextInputDiff } from "../../../text-input-diff-B7iFyzTK.js";
1
+ import { t as TextInputDiff } from "../../../text-input-diff-CaZoFDjA.js";
2
2
  export { TextInputDiff as default };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { n as TextInputProps, t as TextInput } from "../../../text-input-tkqggbWx.js";
1
+ import { n as TextInputProps, t as TextInput } from "../../../text-input-BSxhvnyx.js";
2
2
  export { TextInput, type TextInputProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { C as SelectProps, S as SelectOption, b as RadioGroupProps, v as IdAutocompleteOption, x as SelectBaseProps, y as IdAutocompleteProps } from "../../index-C05uhexJ.js";
1
+ import { C as SelectProps, S as SelectOption, b as RadioGroupProps, v as IdAutocompleteOption, x as SelectBaseProps, y as IdAutocompleteProps } from "../../index-D99twPFI.js";
2
2
  export type { IdAutocompleteOption, IdAutocompleteProps, RadioGroupProps, SelectBaseProps, SelectOption, SelectProps };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { t as ValueTransformer } from "../../../value-transformer-BAD6r8Ol.js";
1
+ import { t as ValueTransformer } from "../../../value-transformer-Dv-10UyC.js";
2
2
  export { ValueTransformer };
3
3
  export {};
@@ -1,3 +1,3 @@
1
- import { n as withFieldValidation, t as ValidationOptions } from "../../../with-field-validation-Bt02MQn2.js";
1
+ import { n as withFieldValidation, t as ValidationOptions } from "../../../with-field-validation-WiD_NFDk.js";
2
2
  export { ValidationOptions, withFieldValidation };
3
3
  export {};