@clickhouse/click-ui 0.6.1 → 0.6.2-rc2

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 (154) hide show
  1. package/README.md +5 -0
  2. package/dist/cjs/click-ui.css +403 -1
  3. package/dist/cjs/components/Assets/Flags/France.cjs +17 -0
  4. package/dist/cjs/components/Assets/Flags/France.cjs.map +1 -0
  5. package/dist/cjs/components/Assets/Flags/system/FlagsDark.cjs +2 -0
  6. package/dist/cjs/components/Assets/Flags/system/FlagsDark.cjs.map +1 -1
  7. package/dist/cjs/components/Assets/Flags/system/FlagsLight.cjs +2 -0
  8. package/dist/cjs/components/Assets/Flags/system/FlagsLight.cjs.map +1 -1
  9. package/dist/cjs/components/Assets/config.cjs +2 -0
  10. package/dist/cjs/components/Assets/config.cjs.map +1 -1
  11. package/dist/cjs/components/AutoComplete/index.cjs +4 -1
  12. package/dist/cjs/components/AutoComplete/index.cjs.map +1 -1
  13. package/dist/cjs/components/ButtonGroup/ButtonGroup.css +37 -0
  14. package/dist/cjs/components/ButtonGroup/ButtonGroup.module.css.cjs +8 -0
  15. package/dist/cjs/components/ButtonGroup/ButtonGroup.module.css.cjs.map +1 -1
  16. package/dist/cjs/components/ButtonGroup/index.cjs +21 -2
  17. package/dist/cjs/components/ButtonGroup/index.cjs.map +1 -1
  18. package/dist/cjs/components/CardPrimary/CardPrimaryTopBadge.cjs +1 -0
  19. package/dist/cjs/components/Collapsible/IconWrapper.cjs +1 -0
  20. package/dist/cjs/components/Container/Container.css +5 -1
  21. package/dist/cjs/components/ContextMenu/index.cjs +4 -1
  22. package/dist/cjs/components/ContextMenu/index.cjs.map +1 -1
  23. package/dist/cjs/components/DatePicker/Common.cjs +1 -1
  24. package/dist/cjs/components/DatePicker/Common.cjs.map +1 -1
  25. package/dist/cjs/components/DatePicker/index.cjs +4 -1
  26. package/dist/cjs/components/DatePicker/index.cjs.map +1 -1
  27. package/dist/cjs/components/Dialog/Dialog.css +97 -0
  28. package/dist/cjs/components/Dialog/Dialog.module.css.cjs +27 -0
  29. package/dist/cjs/components/Dialog/Dialog.module.css.cjs.map +1 -0
  30. package/dist/cjs/components/Dialog/index.cjs +29 -71
  31. package/dist/cjs/components/Dialog/index.cjs.map +1 -1
  32. package/dist/cjs/components/Dropdown/index.cjs +4 -1
  33. package/dist/cjs/components/Dropdown/index.cjs.map +1 -1
  34. package/dist/cjs/components/Flyout/index.cjs +10 -6
  35. package/dist/cjs/components/Flyout/index.cjs.map +1 -1
  36. package/dist/cjs/components/HoverCard/index.cjs +3 -1
  37. package/dist/cjs/components/HoverCard/index.cjs.map +1 -1
  38. package/dist/cjs/components/Icon/SvgImageElement.cjs +1 -0
  39. package/dist/cjs/components/MultiAccordion/MultiAccordion.css +200 -0
  40. package/dist/cjs/components/MultiAccordion/MultiAccordion.module.css.cjs +42 -0
  41. package/dist/cjs/components/MultiAccordion/MultiAccordion.module.css.cjs.map +1 -0
  42. package/dist/cjs/components/MultiAccordion/index.cjs +102 -92
  43. package/dist/cjs/components/MultiAccordion/index.cjs.map +1 -1
  44. package/dist/cjs/components/Popover/index.cjs +3 -1
  45. package/dist/cjs/components/Popover/index.cjs.map +1 -1
  46. package/dist/cjs/components/Select/common/InternalSelect.cjs +3 -1
  47. package/dist/cjs/components/Select/common/InternalSelect.cjs.map +1 -1
  48. package/dist/cjs/components/Tabs/Tabs.css +54 -0
  49. package/dist/cjs/components/Tabs/Tabs.module.css.cjs +20 -0
  50. package/dist/cjs/components/Tabs/Tabs.module.css.cjs.map +1 -0
  51. package/dist/cjs/components/Tabs/index.cjs +45 -20
  52. package/dist/cjs/components/Tabs/index.cjs.map +1 -1
  53. package/dist/cjs/components/Tooltip/index.cjs +4 -1
  54. package/dist/cjs/components/Tooltip/index.cjs.map +1 -1
  55. package/dist/cjs/index.cjs +5 -0
  56. package/dist/cjs/index.cjs.map +1 -1
  57. package/dist/cjs/providers/PortalContext.cjs +19 -0
  58. package/dist/cjs/providers/PortalContext.cjs.map +1 -0
  59. package/dist/cjs/providers/PortalProvider.cjs +16 -0
  60. package/dist/cjs/providers/PortalProvider.cjs.map +1 -0
  61. package/dist/cjs/theme/styles/tokens-dark.css +5 -0
  62. package/dist/cjs/theme/styles/tokens-light.css +5 -0
  63. package/dist/cjs/theme/tokens/variables.dark.cjs +15 -0
  64. package/dist/cjs/theme/tokens/variables.dark.cjs.map +1 -1
  65. package/dist/cjs/theme/tokens/variables.light.cjs +15 -0
  66. package/dist/cjs/theme/tokens/variables.light.cjs.map +1 -1
  67. package/dist/esm/click-ui.css +403 -1
  68. package/dist/esm/components/Assets/Flags/France.js +13 -0
  69. package/dist/esm/components/Assets/Flags/France.js.map +1 -0
  70. package/dist/esm/components/Assets/Flags/system/FlagsDark.js +2 -0
  71. package/dist/esm/components/Assets/Flags/system/FlagsDark.js.map +1 -1
  72. package/dist/esm/components/Assets/Flags/system/FlagsLight.js +2 -0
  73. package/dist/esm/components/Assets/Flags/system/FlagsLight.js.map +1 -1
  74. package/dist/esm/components/Assets/config.js +2 -0
  75. package/dist/esm/components/Assets/config.js.map +1 -1
  76. package/dist/esm/components/AutoComplete/index.js +4 -1
  77. package/dist/esm/components/AutoComplete/index.js.map +1 -1
  78. package/dist/esm/components/ButtonGroup/ButtonGroup.css +37 -0
  79. package/dist/esm/components/ButtonGroup/ButtonGroup.module.css.js +7 -1
  80. package/dist/esm/components/ButtonGroup/ButtonGroup.module.css.js.map +1 -1
  81. package/dist/esm/components/ButtonGroup/index.js +21 -2
  82. package/dist/esm/components/ButtonGroup/index.js.map +1 -1
  83. package/dist/esm/components/CardPrimary/CardPrimaryTopBadge.js +1 -0
  84. package/dist/esm/components/Collapsible/IconWrapper.js +1 -0
  85. package/dist/esm/components/Container/Container.css +5 -1
  86. package/dist/esm/components/ContextMenu/index.js +4 -1
  87. package/dist/esm/components/ContextMenu/index.js.map +1 -1
  88. package/dist/esm/components/DatePicker/Common.js +1 -1
  89. package/dist/esm/components/DatePicker/Common.js.map +1 -1
  90. package/dist/esm/components/DatePicker/index.js +4 -1
  91. package/dist/esm/components/DatePicker/index.js.map +1 -1
  92. package/dist/esm/components/Dialog/Dialog.css +97 -0
  93. package/dist/esm/components/Dialog/Dialog.module.css.js +18 -0
  94. package/dist/esm/components/Dialog/Dialog.module.css.js.map +1 -0
  95. package/dist/esm/components/Dialog/index.js +29 -71
  96. package/dist/esm/components/Dialog/index.js.map +1 -1
  97. package/dist/esm/components/Dropdown/index.js +4 -1
  98. package/dist/esm/components/Dropdown/index.js.map +1 -1
  99. package/dist/esm/components/Flyout/index.js +10 -6
  100. package/dist/esm/components/Flyout/index.js.map +1 -1
  101. package/dist/esm/components/HoverCard/index.js +3 -1
  102. package/dist/esm/components/HoverCard/index.js.map +1 -1
  103. package/dist/esm/components/Icon/SvgImageElement.js +1 -0
  104. package/dist/esm/components/MultiAccordion/MultiAccordion.css +200 -0
  105. package/dist/esm/components/MultiAccordion/MultiAccordion.module.css.js +38 -0
  106. package/dist/esm/components/MultiAccordion/MultiAccordion.module.css.js.map +1 -0
  107. package/dist/esm/components/MultiAccordion/index.js +102 -92
  108. package/dist/esm/components/MultiAccordion/index.js.map +1 -1
  109. package/dist/esm/components/Popover/index.js +3 -1
  110. package/dist/esm/components/Popover/index.js.map +1 -1
  111. package/dist/esm/components/Select/common/InternalSelect.js +3 -1
  112. package/dist/esm/components/Select/common/InternalSelect.js.map +1 -1
  113. package/dist/esm/components/Tabs/Tabs.css +54 -0
  114. package/dist/esm/components/Tabs/Tabs.module.css.js +14 -0
  115. package/dist/esm/components/Tabs/Tabs.module.css.js.map +1 -0
  116. package/dist/esm/components/Tabs/index.js +45 -20
  117. package/dist/esm/components/Tabs/index.js.map +1 -1
  118. package/dist/esm/components/Tooltip/index.js +4 -1
  119. package/dist/esm/components/Tooltip/index.js.map +1 -1
  120. package/dist/esm/index.js +2 -0
  121. package/dist/esm/index.js.map +1 -1
  122. package/dist/esm/providers/PortalContext.js +13 -0
  123. package/dist/esm/providers/PortalContext.js.map +1 -0
  124. package/dist/esm/providers/PortalProvider.js +12 -0
  125. package/dist/esm/providers/PortalProvider.js.map +1 -0
  126. package/dist/esm/theme/styles/tokens-dark.css +5 -0
  127. package/dist/esm/theme/styles/tokens-light.css +5 -0
  128. package/dist/esm/theme/tokens/variables.dark.js +15 -0
  129. package/dist/esm/theme/tokens/variables.dark.js.map +1 -1
  130. package/dist/esm/theme/tokens/variables.light.js +15 -0
  131. package/dist/esm/theme/tokens/variables.light.js.map +1 -1
  132. package/dist/types/components/Assets/Flags/France.d.ts +4 -0
  133. package/dist/types/components/Assets/Flags/system/types.d.ts +1 -1
  134. package/dist/types/components/AutoComplete/AutoComplete.d.ts +2 -1
  135. package/dist/types/components/ButtonGroup/ButtonGroup.types.d.ts +5 -0
  136. package/dist/types/components/ButtonGroup/index.d.ts +1 -1
  137. package/dist/types/components/ContextMenu/ContextMenu.d.ts +3 -1
  138. package/dist/types/components/DatePicker/DatePicker.d.ts +2 -1
  139. package/dist/types/components/Dialog/Dialog.d.ts +2 -2
  140. package/dist/types/components/Dropdown/Dropdown.d.ts +3 -1
  141. package/dist/types/components/Flyout/Flyout.d.ts +1 -1
  142. package/dist/types/components/Flyout/Flyout.types.d.ts +2 -0
  143. package/dist/types/components/MultiAccordion/MultiAccordion.d.ts +2 -2
  144. package/dist/types/components/Tabs/Tabs.d.ts +11 -21
  145. package/dist/types/components/Tooltip/Tooltip.d.ts +2 -10
  146. package/dist/types/components/Tooltip/Tooltip.types.d.ts +1 -0
  147. package/dist/types/index.d.ts +2 -1
  148. package/dist/types/providers/PortalContext.d.ts +4 -0
  149. package/dist/types/providers/PortalProvider.d.ts +7 -0
  150. package/dist/types/providers/index.d.ts +4 -0
  151. package/dist/types/theme/theme.core.d.ts +30 -0
  152. package/dist/types/theme/tokens/variables.dark.d.ts +15 -0
  153. package/dist/types/theme/tokens/variables.light.d.ts +15 -0
  154. package/package.json +2 -3
@@ -1 +1 @@
1
- {"version":3,"file":"config.cjs","sources":["../../../../src/components/Assets/config.ts"],"sourcesContent":["export type AssetAliasMap = Record<string, string>;\nexport type AssetAlias = keyof typeof ASSET_NAME_MAPPINGS.aliases;\n\n/**\n * @deprecated Use the kebab-case name instead (e.g., 'activity' instead of 'Activity')\n */\nexport type AssetDeprecatedName = keyof typeof ASSET_NAME_MAPPINGS.deprecated;\n\nexport const ASSET_NAME_MAPPINGS = {\n aliases: {\n 'c#': 'c-sharp',\n } as AssetAliasMap,\n\n deprecated: {\n Activity: 'activity',\n Alarm: 'alarm',\n ArrowDirections: 'arrow-directions',\n ArrowDown: 'arrow-down',\n ArrowLeft: 'arrow-left',\n ArrowRight: 'arrow-right',\n ArrowTriangle: 'arrow-triangle',\n ArrowUp: 'arrow-up',\n AuthApp: 'auth-app',\n AuthSms: 'auth-sms',\n Backups: 'backups',\n BarChart: 'bar-chart',\n Bell: 'bell',\n Beta: 'beta',\n Blog: 'blog',\n Bold: 'bold',\n Book: 'book',\n Brackets: 'brackets',\n Briefcase: 'briefcase',\n Building: 'building',\n BurgerMenu: 'burger-menu',\n Calendar: 'calendar',\n CalendarWithTime: 'calendar-with-time',\n Cards: 'cards',\n CellTower: 'cell-tower',\n ChartArea: 'chart-area',\n ChartBarHorizontal: 'chart-bar-horizontal',\n ChartCloud: 'chart-cloud',\n ChartDonut: 'chart-donut',\n ChartHeatmap: 'chart-heatmap',\n ChartScatter: 'chart-scatter',\n ChartSquare: 'chart-square',\n ChartStackedHorizontal: 'chart-stacked-horizontal',\n ChartStackedVertical: 'chart-stacked-vertical',\n ChatIcon: 'chat',\n CheckIcon: 'check',\n CheckInCircle: 'check-in-circle',\n ChevronDown: 'chevron-down',\n ChevronLeft: 'chevron-left',\n ChevronRight: 'chevron-right',\n ChevronUp: 'chevron-up',\n Circle: 'circle',\n Clock: 'clock',\n Cloud: 'cloud',\n CloudKeys: 'cloud-keys',\n Code: 'code',\n CodeInSquare: 'code-in-square',\n Connect: 'connect',\n ConnectAlt: 'connect-alt',\n Console: 'console',\n Copy: 'copy',\n Cpu: 'cpu',\n CreditCard: 'credit-card',\n CrossIcon: 'cross',\n Data: 'data',\n DataLakes: 'data-lakes',\n DatabaseIcon: 'database',\n Disk: 'disk',\n Display: 'display',\n Document: 'document',\n Dot: 'dot',\n DotsHorizontal: 'dots-horizontal',\n DotsTriangle: 'dots-triangle',\n DotsVertical: 'dots-vertical',\n DotsVerticalDouble: 'dots-vertical-double',\n DoubleCheckIcon: 'double-check',\n Download: 'download',\n DownloadInCircle: 'download-in-circle',\n Email: 'email',\n Empty: 'empty',\n Enter: 'enter',\n Eye: 'eye',\n EyeClosed: 'eye-closed',\n FilterIcon: 'filter',\n Fire: 'fire',\n Flag: 'flag',\n Flash: 'flash',\n Flask: 'flask',\n FolderClosed: 'folder-closed',\n FolderOpen: 'folder-open',\n Gear: 'gear',\n Gift: 'gift',\n GitMerge: 'git-merge',\n Globe: 'globe',\n Hexagon: 'hexagon',\n HistoryIcon: 'history',\n Home: 'home',\n HorizontalLoading: 'horizontal-loading',\n Http: 'http',\n HttpMonitoring: 'http-monitoring',\n InfoInCircleIcon: 'info-in-circle',\n InformationIcon: 'information',\n InsertRowIcon: 'insert-row',\n Integrations: 'integrations',\n Italic: 'italic',\n Key: 'key',\n Keys: 'keys',\n Lifebuoy: 'lifebuoy',\n LightBulb: 'light-bulb',\n LightBulbOn: 'light-bulb-on',\n Lightening: 'lightening',\n LineInCircle: 'line-in-circle',\n ListBulleted: 'list-bulleted',\n ListNumbered: 'list-numbered',\n Loading: 'loading',\n LoadingAnimated: 'loading-animated',\n Lock: 'lock',\n MapPin: 'map-pin',\n Mcp: 'mcp',\n Metrics: 'metrics',\n MetricsAlt: 'metrics-alt',\n Minus: 'minus',\n Moon: 'moon',\n NoCloud: 'no-cloud',\n Pause: 'pause',\n Payment: 'payment',\n Pencil: 'pencil',\n PieChart: 'pie-chart',\n Pipe: 'pipe',\n Play: 'play',\n PlayInCircle: 'play-in-circle',\n Plug: 'plug',\n Plus: 'plus',\n Popin: 'popin',\n Popout: 'popout',\n PopoverArrow: 'popover-arrow',\n PuzzlePiece: 'puzzle-piece',\n Query: 'query',\n Question: 'question',\n Refresh: 'refresh',\n ResizeArrowsHorizontal: 'resize-arrows-horizontal',\n ResizeArrowsVertical: 'resize-arrows-vertical',\n Rocket: 'rocket',\n SandGlass: 'sand-glass',\n Search: 'search',\n Secure: 'secure',\n Server: 'server',\n Services: 'services',\n Settings: 'settings',\n Share: 'share',\n ShareArrow: 'share-arrow',\n ShareNetwork: 'share-network',\n Sleep: 'sleep',\n SlideIn: 'slide-in',\n SlideOut: 'slide-out',\n SortAltIcon: 'sort-alt',\n SortIcon: 'sort',\n Sparkle: 'sparkle',\n Speaker: 'speaker',\n Speed: 'speed',\n Square: 'square',\n Star: 'star',\n Stop: 'stop',\n Support: 'support',\n Table: 'table',\n Taxi: 'taxi',\n TextSlash: 'text-slash',\n ThumbsDown: 'thumbs-down',\n ThumbsUp: 'thumbs-up',\n Trash: 'trash',\n TreeStructure: 'tree-structure',\n Underline: 'underline',\n Upgrade: 'upgrade',\n Upload: 'upload',\n Url: 'url',\n UserIcon: 'user',\n UsersIcon: 'users',\n WarningIcon: 'warning',\n Waves: 'waves',\n\n // Flag deprecations (from retroactiveNames.ts)\n ae: 'united-arab-emirates',\n au: 'australia',\n br: 'brazil',\n ca: 'canada',\n ch: 'switzerland',\n de: 'germany',\n eu: 'european-union',\n gb: 'great-britain',\n hk: 'hong-kong',\n id: 'indonesia',\n ie: 'ireland',\n il: 'israel',\n in: 'india',\n jp: 'japan',\n nl: 'netherlands',\n sg: 'singapore',\n kr: 'south-korea',\n sw: 'sweden',\n uk: 'united-kingdom',\n usa: 'united-states',\n za: 'south-africa',\n Australia: 'australia',\n Brazil: 'brazil',\n Canada: 'canada',\n EuropeanUnion: 'european-union',\n Germany: 'germany',\n GreatBritain: 'great-britain',\n HongKong: 'hong-kong',\n India: 'india',\n Indonesia: 'indonesia',\n Ireland: 'ireland',\n Israel: 'israel',\n Japan: 'japan',\n Netherlands: 'netherlands',\n Singapore: 'singapore',\n SouthAfrica: 'south-africa',\n SouthKorea: 'south-korea',\n Sweden: 'sweden',\n Switzerland: 'switzerland',\n UnitedArabEmirates: 'united-arab-emirates',\n UnitedKingdom: 'united-kingdom',\n UnitedStates: 'united-states',\n } as AssetAliasMap,\n} as const;\n\nexport const resolveAssetName = (name: string): string => {\n if (ASSET_NAME_MAPPINGS.aliases[name]) {\n return ASSET_NAME_MAPPINGS.aliases[name];\n }\n\n if (ASSET_NAME_MAPPINGS.deprecated[name]) {\n console.warn(\n `Asset name \"${name}\" is deprecated, use \"${ASSET_NAME_MAPPINGS.deprecated[name]}\" instead`\n );\n\n return ASSET_NAME_MAPPINGS.deprecated[name];\n }\n\n return name;\n};\n\nexport const createAssetResolver = <T extends string>() => {\n return (name: string): T => resolveAssetName(name) as T;\n};\n"],"names":["ASSET_NAME_MAPPINGS","aliases","deprecated","Activity","Alarm","ArrowDirections","ArrowDown","ArrowLeft","ArrowRight","ArrowTriangle","ArrowUp","AuthApp","AuthSms","Backups","BarChart","Bell","Beta","Blog","Bold","Book","Brackets","Briefcase","Building","BurgerMenu","Calendar","CalendarWithTime","Cards","CellTower","ChartArea","ChartBarHorizontal","ChartCloud","ChartDonut","ChartHeatmap","ChartScatter","ChartSquare","ChartStackedHorizontal","ChartStackedVertical","ChatIcon","CheckIcon","CheckInCircle","ChevronDown","ChevronLeft","ChevronRight","ChevronUp","Circle","Clock","Cloud","CloudKeys","Code","CodeInSquare","Connect","ConnectAlt","Console","Copy","Cpu","CreditCard","CrossIcon","Data","DataLakes","DatabaseIcon","Disk","Display","Document","Dot","DotsHorizontal","DotsTriangle","DotsVertical","DotsVerticalDouble","DoubleCheckIcon","Download","DownloadInCircle","Email","Empty","Enter","Eye","EyeClosed","FilterIcon","Fire","Flag","Flash","Flask","FolderClosed","FolderOpen","Gear","Gift","GitMerge","Globe","Hexagon","HistoryIcon","Home","HorizontalLoading","Http","HttpMonitoring","InfoInCircleIcon","InformationIcon","InsertRowIcon","Integrations","Italic","Key","Keys","Lifebuoy","LightBulb","LightBulbOn","Lightening","LineInCircle","ListBulleted","ListNumbered","Loading","LoadingAnimated","Lock","MapPin","Mcp","Metrics","MetricsAlt","Minus","Moon","NoCloud","Pause","Payment","Pencil","PieChart","Pipe","Play","PlayInCircle","Plug","Plus","Popin","Popout","PopoverArrow","PuzzlePiece","Query","Question","Refresh","ResizeArrowsHorizontal","ResizeArrowsVertical","Rocket","SandGlass","Search","Secure","Server","Services","Settings","Share","ShareArrow","ShareNetwork","Sleep","SlideIn","SlideOut","SortAltIcon","SortIcon","Sparkle","Speaker","Speed","Square","Star","Stop","Support","Table","Taxi","TextSlash","ThumbsDown","ThumbsUp","Trash","TreeStructure","Underline","Upgrade","Upload","Url","UserIcon","UsersIcon","WarningIcon","Waves","ae","au","br","ca","ch","de","eu","gb","hk","id","ie","il","in","jp","nl","sg","kr","sw","uk","usa","za","Australia","Brazil","Canada","EuropeanUnion","Germany","GreatBritain","HongKong","India","Indonesia","Ireland","Israel","Japan","Netherlands","Singapore","SouthAfrica","SouthKorea","Sweden","Switzerland","UnitedArabEmirates","UnitedKingdom","UnitedStates","resolveAssetName","name","console","warn","createAssetResolver"],"mappings":"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"}
1
+ {"version":3,"file":"config.cjs","sources":["../../../../src/components/Assets/config.ts"],"sourcesContent":["export type AssetAliasMap = Record<string, string>;\nexport type AssetAlias = keyof typeof ASSET_NAME_MAPPINGS.aliases;\n\n/**\n * @deprecated Use the kebab-case name instead (e.g., 'activity' instead of 'Activity')\n */\nexport type AssetDeprecatedName = keyof typeof ASSET_NAME_MAPPINGS.deprecated;\n\nexport const ASSET_NAME_MAPPINGS = {\n aliases: {\n 'c#': 'c-sharp',\n } as AssetAliasMap,\n\n deprecated: {\n Activity: 'activity',\n Alarm: 'alarm',\n ArrowDirections: 'arrow-directions',\n ArrowDown: 'arrow-down',\n ArrowLeft: 'arrow-left',\n ArrowRight: 'arrow-right',\n ArrowTriangle: 'arrow-triangle',\n ArrowUp: 'arrow-up',\n AuthApp: 'auth-app',\n AuthSms: 'auth-sms',\n Backups: 'backups',\n BarChart: 'bar-chart',\n Bell: 'bell',\n Beta: 'beta',\n Blog: 'blog',\n Bold: 'bold',\n Book: 'book',\n Brackets: 'brackets',\n Briefcase: 'briefcase',\n Building: 'building',\n BurgerMenu: 'burger-menu',\n Calendar: 'calendar',\n CalendarWithTime: 'calendar-with-time',\n Cards: 'cards',\n CellTower: 'cell-tower',\n ChartArea: 'chart-area',\n ChartBarHorizontal: 'chart-bar-horizontal',\n ChartCloud: 'chart-cloud',\n ChartDonut: 'chart-donut',\n ChartHeatmap: 'chart-heatmap',\n ChartScatter: 'chart-scatter',\n ChartSquare: 'chart-square',\n ChartStackedHorizontal: 'chart-stacked-horizontal',\n ChartStackedVertical: 'chart-stacked-vertical',\n ChatIcon: 'chat',\n CheckIcon: 'check',\n CheckInCircle: 'check-in-circle',\n ChevronDown: 'chevron-down',\n ChevronLeft: 'chevron-left',\n ChevronRight: 'chevron-right',\n ChevronUp: 'chevron-up',\n Circle: 'circle',\n Clock: 'clock',\n Cloud: 'cloud',\n CloudKeys: 'cloud-keys',\n Code: 'code',\n CodeInSquare: 'code-in-square',\n Connect: 'connect',\n ConnectAlt: 'connect-alt',\n Console: 'console',\n Copy: 'copy',\n Cpu: 'cpu',\n CreditCard: 'credit-card',\n CrossIcon: 'cross',\n Data: 'data',\n DataLakes: 'data-lakes',\n DatabaseIcon: 'database',\n Disk: 'disk',\n Display: 'display',\n Document: 'document',\n Dot: 'dot',\n DotsHorizontal: 'dots-horizontal',\n DotsTriangle: 'dots-triangle',\n DotsVertical: 'dots-vertical',\n DotsVerticalDouble: 'dots-vertical-double',\n DoubleCheckIcon: 'double-check',\n Download: 'download',\n DownloadInCircle: 'download-in-circle',\n Email: 'email',\n Empty: 'empty',\n Enter: 'enter',\n Eye: 'eye',\n EyeClosed: 'eye-closed',\n FilterIcon: 'filter',\n Fire: 'fire',\n Flag: 'flag',\n Flash: 'flash',\n Flask: 'flask',\n FolderClosed: 'folder-closed',\n FolderOpen: 'folder-open',\n Gear: 'gear',\n Gift: 'gift',\n GitMerge: 'git-merge',\n Globe: 'globe',\n Hexagon: 'hexagon',\n HistoryIcon: 'history',\n Home: 'home',\n HorizontalLoading: 'horizontal-loading',\n Http: 'http',\n HttpMonitoring: 'http-monitoring',\n InfoInCircleIcon: 'info-in-circle',\n InformationIcon: 'information',\n InsertRowIcon: 'insert-row',\n Integrations: 'integrations',\n Italic: 'italic',\n Key: 'key',\n Keys: 'keys',\n Lifebuoy: 'lifebuoy',\n LightBulb: 'light-bulb',\n LightBulbOn: 'light-bulb-on',\n Lightening: 'lightening',\n LineInCircle: 'line-in-circle',\n ListBulleted: 'list-bulleted',\n ListNumbered: 'list-numbered',\n Loading: 'loading',\n LoadingAnimated: 'loading-animated',\n Lock: 'lock',\n MapPin: 'map-pin',\n Mcp: 'mcp',\n Metrics: 'metrics',\n MetricsAlt: 'metrics-alt',\n Minus: 'minus',\n Moon: 'moon',\n NoCloud: 'no-cloud',\n Pause: 'pause',\n Payment: 'payment',\n Pencil: 'pencil',\n PieChart: 'pie-chart',\n Pipe: 'pipe',\n Play: 'play',\n PlayInCircle: 'play-in-circle',\n Plug: 'plug',\n Plus: 'plus',\n Popin: 'popin',\n Popout: 'popout',\n PopoverArrow: 'popover-arrow',\n PuzzlePiece: 'puzzle-piece',\n Query: 'query',\n Question: 'question',\n Refresh: 'refresh',\n ResizeArrowsHorizontal: 'resize-arrows-horizontal',\n ResizeArrowsVertical: 'resize-arrows-vertical',\n Rocket: 'rocket',\n SandGlass: 'sand-glass',\n Search: 'search',\n Secure: 'secure',\n Server: 'server',\n Services: 'services',\n Settings: 'settings',\n Share: 'share',\n ShareArrow: 'share-arrow',\n ShareNetwork: 'share-network',\n Sleep: 'sleep',\n SlideIn: 'slide-in',\n SlideOut: 'slide-out',\n SortAltIcon: 'sort-alt',\n SortIcon: 'sort',\n Sparkle: 'sparkle',\n Speaker: 'speaker',\n Speed: 'speed',\n Square: 'square',\n Star: 'star',\n Stop: 'stop',\n Support: 'support',\n Table: 'table',\n Taxi: 'taxi',\n TextSlash: 'text-slash',\n ThumbsDown: 'thumbs-down',\n ThumbsUp: 'thumbs-up',\n Trash: 'trash',\n TreeStructure: 'tree-structure',\n Underline: 'underline',\n Upgrade: 'upgrade',\n Upload: 'upload',\n Url: 'url',\n UserIcon: 'user',\n UsersIcon: 'users',\n WarningIcon: 'warning',\n Waves: 'waves',\n\n // Flag deprecations (from retroactiveNames.ts)\n ae: 'united-arab-emirates',\n au: 'australia',\n br: 'brazil',\n ca: 'canada',\n ch: 'switzerland',\n de: 'germany',\n eu: 'european-union',\n fr: 'france',\n gb: 'great-britain',\n hk: 'hong-kong',\n id: 'indonesia',\n ie: 'ireland',\n il: 'israel',\n in: 'india',\n jp: 'japan',\n nl: 'netherlands',\n sg: 'singapore',\n kr: 'south-korea',\n sw: 'sweden',\n uk: 'united-kingdom',\n usa: 'united-states',\n za: 'south-africa',\n Australia: 'australia',\n Brazil: 'brazil',\n Canada: 'canada',\n EuropeanUnion: 'european-union',\n France: 'france',\n Germany: 'germany',\n GreatBritain: 'great-britain',\n HongKong: 'hong-kong',\n India: 'india',\n Indonesia: 'indonesia',\n Ireland: 'ireland',\n Israel: 'israel',\n Japan: 'japan',\n Netherlands: 'netherlands',\n Singapore: 'singapore',\n SouthAfrica: 'south-africa',\n SouthKorea: 'south-korea',\n Sweden: 'sweden',\n Switzerland: 'switzerland',\n UnitedArabEmirates: 'united-arab-emirates',\n UnitedKingdom: 'united-kingdom',\n UnitedStates: 'united-states',\n } as AssetAliasMap,\n} as const;\n\nexport const resolveAssetName = (name: string): string => {\n if (ASSET_NAME_MAPPINGS.aliases[name]) {\n return ASSET_NAME_MAPPINGS.aliases[name];\n }\n\n if (ASSET_NAME_MAPPINGS.deprecated[name]) {\n console.warn(\n `Asset name \"${name}\" is deprecated, use \"${ASSET_NAME_MAPPINGS.deprecated[name]}\" instead`\n );\n\n return ASSET_NAME_MAPPINGS.deprecated[name];\n }\n\n return name;\n};\n\nexport const createAssetResolver = <T extends string>() => {\n return (name: string): T => resolveAssetName(name) as T;\n};\n"],"names":["ASSET_NAME_MAPPINGS","aliases","deprecated","Activity","Alarm","ArrowDirections","ArrowDown","ArrowLeft","ArrowRight","ArrowTriangle","ArrowUp","AuthApp","AuthSms","Backups","BarChart","Bell","Beta","Blog","Bold","Book","Brackets","Briefcase","Building","BurgerMenu","Calendar","CalendarWithTime","Cards","CellTower","ChartArea","ChartBarHorizontal","ChartCloud","ChartDonut","ChartHeatmap","ChartScatter","ChartSquare","ChartStackedHorizontal","ChartStackedVertical","ChatIcon","CheckIcon","CheckInCircle","ChevronDown","ChevronLeft","ChevronRight","ChevronUp","Circle","Clock","Cloud","CloudKeys","Code","CodeInSquare","Connect","ConnectAlt","Console","Copy","Cpu","CreditCard","CrossIcon","Data","DataLakes","DatabaseIcon","Disk","Display","Document","Dot","DotsHorizontal","DotsTriangle","DotsVertical","DotsVerticalDouble","DoubleCheckIcon","Download","DownloadInCircle","Email","Empty","Enter","Eye","EyeClosed","FilterIcon","Fire","Flag","Flash","Flask","FolderClosed","FolderOpen","Gear","Gift","GitMerge","Globe","Hexagon","HistoryIcon","Home","HorizontalLoading","Http","HttpMonitoring","InfoInCircleIcon","InformationIcon","InsertRowIcon","Integrations","Italic","Key","Keys","Lifebuoy","LightBulb","LightBulbOn","Lightening","LineInCircle","ListBulleted","ListNumbered","Loading","LoadingAnimated","Lock","MapPin","Mcp","Metrics","MetricsAlt","Minus","Moon","NoCloud","Pause","Payment","Pencil","PieChart","Pipe","Play","PlayInCircle","Plug","Plus","Popin","Popout","PopoverArrow","PuzzlePiece","Query","Question","Refresh","ResizeArrowsHorizontal","ResizeArrowsVertical","Rocket","SandGlass","Search","Secure","Server","Services","Settings","Share","ShareArrow","ShareNetwork","Sleep","SlideIn","SlideOut","SortAltIcon","SortIcon","Sparkle","Speaker","Speed","Square","Star","Stop","Support","Table","Taxi","TextSlash","ThumbsDown","ThumbsUp","Trash","TreeStructure","Underline","Upgrade","Upload","Url","UserIcon","UsersIcon","WarningIcon","Waves","ae","au","br","ca","ch","de","eu","fr","gb","hk","id","ie","il","in","jp","nl","sg","kr","sw","uk","usa","za","Australia","Brazil","Canada","EuropeanUnion","France","Germany","GreatBritain","HongKong","India","Indonesia","Ireland","Israel","Japan","Netherlands","Singapore","SouthAfrica","SouthKorea","Sweden","Switzerland","UnitedArabEmirates","UnitedKingdom","UnitedStates","resolveAssetName","name","console","warn","createAssetResolver"],"mappings":"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"}
@@ -10,6 +10,7 @@ const GenericMenu = require('../GenericMenu/index.cjs');
10
10
  const IconWrapper = require('../IconWrapper/index.cjs');
11
11
  const getTextFromNodes = require('../../lib/getTextFromNodes.cjs');
12
12
  const mergeRefs = require('../../utils/mergeRefs.cjs');
13
+ const PortalContext = require('../../providers/PortalContext.cjs');
13
14
  const useOption = require('./useOption.cjs');
14
15
  const OptionContext = require('./OptionContext.cjs');
15
16
  const SearchField = require('../SearchField/index.cjs');
@@ -114,12 +115,14 @@ const AutoComplete = ({
114
115
  disabled,
115
116
  value = "",
116
117
  placeholder = "Search",
118
+ container,
117
119
  ...props
118
120
  }) => {
119
121
  const defaultId = react.useId();
120
122
  const [search, setSearch] = react.useState("");
121
123
  const [open, setOpen] = react.useState(false);
122
124
  const inputRef = react.useRef(null);
125
+ const portalContainer = PortalContext.useResolvedPortalContainer(container);
123
126
  const [highlighted, setHighlighted] = react.useState();
124
127
  const visibleList = react.useRef([]);
125
128
  const navigatable = react.useRef([]);
@@ -287,7 +290,7 @@ const AutoComplete = ({
287
290
  };
288
291
  return /* @__PURE__ */ jsxRuntime.jsxs(SelectPopoverRoot, { open, onOpenChange, children: [
289
292
  /* @__PURE__ */ jsxRuntime.jsx(RadixPopover.Trigger, { asChild: true, disabled, "data-testid": "autocomplete-trigger", children: /* @__PURE__ */ jsxRuntime.jsx("div", { onClick: onTriggerClick, children: /* @__PURE__ */ jsxRuntime.jsx(SearchField.SearchField, { ref: inputRef, value: search, onChange: onUpdateSearch, onKeyDown, disabled, placeholder, ...props }) }) }),
290
- /* @__PURE__ */ jsxRuntime.jsx(RadixPopover.Portal, { children: /* @__PURE__ */ jsxRuntime.jsx(PopoverContent, { sideOffset: 5, onFocus, onCloseAutoFocus: () => {
293
+ /* @__PURE__ */ jsxRuntime.jsx(RadixPopover.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxRuntime.jsx(PopoverContent, { sideOffset: 5, onFocus, onCloseAutoFocus: () => {
291
294
  onUpdateSearch("");
292
295
  inputRef.current?.focus();
293
296
  }, onOpenAutoFocus: (e) => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/AutoComplete/AutoComplete.tsx"],"sourcesContent":["import {\n Children,\n FunctionComponent,\n HTMLAttributes,\n KeyboardEventHandler,\n MouseEventHandler,\n ReactNode,\n forwardRef,\n isValidElement,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Portal, PopoverProps, Content, Root, Trigger } from '@radix-ui/react-popover';\nimport { styled } from 'styled-components';\n\nimport { HorizontalDirection } from '@/types';\nimport { SearchField } from '@/components/SearchField';\nimport { Separator } from '@/components/Separator';\nimport { Icon, type ImageName } from '@/components/Icon';\nimport { GenericMenuItem } from '@/components/GenericMenu';\nimport { IconWrapper } from '@/components/IconWrapper';\nimport { getTextFromNodes } from '@/lib/getTextFromNodes';\nimport { mergeRefs } from '@/utils/mergeRefs';\n\nimport { useOption, useSearch } from './useOption';\nimport { OptionContext } from './OptionContext';\n\ntype DivProps = HTMLAttributes<HTMLDivElement>;\ninterface SelectItemComponentProps extends Omit<\n DivProps,\n 'disabled' | 'onSelect' | 'value' | 'children'\n> {\n separator?: boolean;\n disabled?: boolean;\n onSelect?: (value: string) => void;\n value: string;\n icon?: ImageName;\n iconDir?: HorizontalDirection;\n}\n\ntype SelectItemChildren = {\n children: ReactNode;\n label?: never;\n};\n\ntype SelectItemLabel = {\n children?: never;\n label: ReactNode;\n};\nexport interface SelectGroupProps extends Omit<\n HTMLAttributes<HTMLDivElement>,\n 'heading'\n> {\n heading: ReactNode;\n value?: never;\n onSelect?: never;\n}\nexport interface SelectOptionItem extends Omit<SelectItemProps, 'children' | 'label'> {\n heading?: never;\n label: ReactNode;\n [key: `data-${string}`]: string;\n}\n\ninterface SelectGroupOptionItem extends Omit<SelectGroupProps, 'children' | 'label'> {\n options: SelectOptionItem[];\n label?: never;\n [key: `data-${string}`]: string;\n}\n\nexport type AutoCompleteOptionListItem = SelectGroupOptionItem | SelectOptionItem;\n\nexport type SelectItemProps = SelectItemComponentProps &\n (SelectItemChildren | SelectItemLabel);\ntype SelectOptionType = {\n options: AutoCompleteOptionListItem[];\n children?: never;\n};\n\ntype SelectChildrenType = {\n children: ReactNode;\n options?: never;\n};\n\ntype SelectOptionProp = SelectOptionType | SelectChildrenType;\n\ninterface Props\n extends PopoverProps, Omit<DivProps, 'onChange' | 'dir' | 'onSelect' | 'children'> {\n onSelect?: (value: string) => void;\n value?: string;\n placeholder?: string;\n onOpenChange?: (open: boolean) => void;\n label?: ReactNode;\n error?: ReactNode;\n disabled?: boolean;\n dir?: 'start' | 'end';\n orientation?: 'horizontal' | 'vertical';\n allowCreateOption?: boolean;\n}\ntype SelectItemObject = {\n disabled?: boolean;\n value: string;\n title: string;\n heading?: string;\n};\n\nexport type AutoCompleteProps = (SelectOptionType & Props) | (SelectChildrenType & Props);\n\nexport const SelectPopoverRoot = styled(Root)`\n width: 100%;\n ${({ theme }) => `\n border: 1px solid ${theme.click.genericMenu.item.color.default.stroke.default};\n background: ${theme.click.genericMenu.item.color.default.background.default};\n box-shadow: 0px 1px 3px 0px rgba(16, 24, 40, 0.1),\n 0px 1px 2px 0px rgba(16, 24, 40, 0.06);\n border-radius: 0.25rem;\n `}\n overflow: hidden;\n display: flex;\n padding: 0.5rem 0rem;\n align-items: flex-start;\n gap: 0.625rem;\n`;\n\nconst PopoverContent = styled(Content)`\n width: var(--radix-popover-trigger-width);\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 5px;\n`;\nconst SelectGroupContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n width: -webkit-fill-available;\n width: fill-available;\n width: stretch;\n overflow: hidden;\n background: transparent;\n &[aria-selected] {\n outline: none;\n }\n\n ${({ theme }) => `\n font: ${theme.click.genericMenu.item.typography.sectionHeader.default};\n color: ${theme.click.genericMenu.item.color.default.text.muted};\n `};\n &[hidden] {\n display: none;\n }\n`;\n\nconst SelectGroupName = styled.div`\n display: flex;\n width: 100%;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n ${({ theme }) => `\n font: ${theme.click.genericMenu.item.typography.sectionHeader.default};\n color: ${theme.click.genericMenu.item.color.default.text.muted};\n padding: ${theme.click.genericMenu.sectionHeader.space.top} ${theme.click.genericMenu.item.space.x} ${theme.click.genericMenu.sectionHeader.space.bottom};\n gap: ${theme.click.genericMenu.item.space.gap};\n border-bottom: 1px solid ${theme.click.genericMenu.item.color.default.stroke.default};\n `}\n`;\n\nconst SelectGroupContent = styled.div`\n width: inherit;\n`;\n\nconst SelectListContent = styled.div`\n width: inherit;\n overflow: overlay;\n flex: 1;\n`;\n\ntype CallbackProps = SelectItemObject & {\n nodeProps: SelectItemProps;\n};\n\nconst childrenToComboboxItemArray = (\n children: ReactNode,\n callback: (props: CallbackProps) => void,\n heading?: string\n): SelectItemObject[] => {\n return Children.toArray(children).flatMap(child => {\n if (isValidElement(child) && child && typeof child === 'object') {\n const type = child.type as FunctionComponent;\n if (type.displayName === 'AutoComplete.Group') {\n const groupChildren = child.props.children;\n return childrenToComboboxItemArray(\n groupChildren,\n callback,\n getTextFromNodes(child.props.heading).toLowerCase()\n );\n } else if (type.displayName === 'AutoComplete.Item') {\n const title = getTextFromNodes(child).toLowerCase();\n const value = child.props.value;\n const disabled = child.props.disabled;\n callback({\n disabled,\n value,\n title,\n heading,\n nodeProps: child.props,\n });\n return {\n disabled,\n value,\n title,\n heading,\n };\n } else if ('props' in child && child.props.children) {\n return childrenToComboboxItemArray(child.props.children, callback, heading);\n }\n }\n return [];\n });\n};\nconst SelectNoDataContainer = styled.div`\n border: none;\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: left;\n cursor: default;\n &[hidden='true'] {\n display: none;\n }\n ${({ theme }) => `\n font: ${theme.click.genericMenu.button.typography.label.default}\n padding: ${theme.click.genericMenu.button.space.y} ${theme.click.genericMenu.item.space.x};\n background: ${theme.click.genericMenu.button.color.background.default};\n color: ${theme.click.genericMenu.button.color.label.default};\n `}\n`;\n\nconst SelectList = styled.div`\n display: flex;\n flex-direction: column;\n width: inherit;\n max-height: var(--radix-popover-content-available-height);\n ${({ theme }) => `\n border: 1px solid ${theme.click.genericMenu.item.color.default.stroke.default};\n background: ${theme.click.genericMenu.item.color.default.background.default};\n box-shadow: ${theme.click.genericMenu.panel.shadow.default};\n border-radius: 0.25rem;\n `}\n`;\n\nexport const AutoComplete = ({\n onSelect: onSelectProp,\n options,\n children,\n onOpenChange: onOpenChangeProp,\n disabled,\n value = '',\n placeholder = 'Search',\n ...props\n}: AutoCompleteProps) => {\n const defaultId = useId();\n const [search, setSearch] = useState('');\n const [open, setOpen] = useState(false);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const [highlighted, setHighlighted] = useState<string | undefined>();\n const visibleList = useRef<string[]>([]);\n const navigatable = useRef<string[]>([]);\n const valueNode = useRef<Map<string, SelectItemProps>>(new Map());\n const [list, setList] = useState<SelectItemObject[]>([]);\n const updateElements = useCallback(\n ({ disabled, value, title, heading, nodeProps }: CallbackProps) => {\n if (title.includes(search) || heading?.includes(search)) {\n visibleList.current.push(value);\n if (!disabled) {\n navigatable.current.push(value);\n }\n }\n valueNode.current.set(value, nodeProps);\n },\n [search]\n );\n\n const onFocus = () => {\n inputRef.current?.focus();\n };\n\n const onOpenChange = useCallback(\n (open: boolean) => {\n const newOpen = open && !disabled;\n setOpen(newOpen);\n if (typeof onOpenChangeProp === 'function') {\n onOpenChangeProp(newOpen);\n }\n },\n [disabled, onOpenChangeProp]\n );\n\n const onSelect = useCallback(\n (value: string) => {\n onOpenChange(false);\n if (typeof onSelectProp === 'function') {\n onSelectProp(value);\n }\n },\n [onSelectProp, onOpenChange]\n );\n\n const onUpdateSearch = useCallback(\n (search: string) => {\n setSearch(search);\n let hasHighlightedValue = false;\n const visibleItemsList: string[] = [];\n const navigatableList: string[] = [];\n const searchLowerCase = search.toLowerCase();\n list.forEach(item => {\n if (\n item.title.includes(searchLowerCase) ||\n item.heading?.includes(searchLowerCase)\n ) {\n if (item.value === highlighted) {\n hasHighlightedValue = true;\n }\n visibleItemsList.push(item.value);\n if (!item.disabled) {\n navigatableList.push(item.value);\n }\n }\n });\n navigatable.current = navigatableList;\n visibleList.current = visibleItemsList;\n if (!hasHighlightedValue) {\n setHighlighted(navigatableList[0] ?? null);\n }\n },\n [highlighted, list]\n );\n\n const updateList = useCallback(\n (children?: ReactNode, options?: AutoCompleteOptionListItem[]) => {\n const lowerCasedSearch = search.toLowerCase();\n if (options) {\n setList(\n options.flatMap(option => {\n if ('options' in option) {\n const heading = getTextFromNodes(option.heading).toLowerCase();\n return (option.options ?? []).map(item => {\n valueNode.current.set(item.value, item);\n const title = getTextFromNodes(item.label).toLowerCase();\n if (\n title.includes(lowerCasedSearch) ||\n heading?.includes(lowerCasedSearch)\n ) {\n visibleList.current.push(item.value);\n if (!disabled) {\n navigatable.current.push(item.value);\n }\n }\n return {\n heading,\n disabled: item.disabled,\n value: item.value,\n title,\n };\n });\n } else {\n valueNode.current.set(option.value, option);\n const title = getTextFromNodes(option.label).toLowerCase();\n if (title.includes(lowerCasedSearch)) {\n visibleList.current.push(option.value);\n if (!disabled) {\n navigatable.current.push(option.value);\n }\n }\n return {\n disabled: option.disabled,\n value: option.value,\n title: getTextFromNodes(option.label),\n };\n }\n })\n );\n } else if (children) {\n setList(childrenToComboboxItemArray(children, updateElements));\n }\n },\n [disabled, search, updateElements]\n );\n\n useEffect(() => {\n updateList(children, options);\n }, [children, options, updateList]);\n\n const onKeyDown: KeyboardEventHandler<HTMLInputElement> = e => {\n if (!e.defaultPrevented) {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (highlighted) {\n onSelect(highlighted);\n }\n } else if (['ArrowUp', 'ArrowDown', 'Home', 'End'].includes(e.key)) {\n e.preventDefault();\n let nextHighlightedValue = highlighted;\n const highlightedIndex = navigatable.current.findIndex(\n value => value === highlighted\n );\n if (e.key === 'ArrowUp') {\n if (highlightedIndex === 0) {\n nextHighlightedValue = navigatable.current[navigatable.current.length - 1];\n } else {\n nextHighlightedValue = navigatable.current[highlightedIndex - 1];\n }\n } else if (e.key === 'ArrowDown') {\n e.preventDefault();\n if (highlightedIndex === navigatable.current.length - 1) {\n nextHighlightedValue = navigatable.current[0];\n } else {\n nextHighlightedValue = navigatable.current[highlightedIndex + 1];\n }\n } else if (e.key === 'End') {\n e.preventDefault();\n nextHighlightedValue = navigatable.current[navigatable.current.length - 1];\n } else if (e.key === 'Home') {\n nextHighlightedValue = navigatable.current[0];\n e.preventDefault();\n }\n setHighlighted(nextHighlightedValue);\n }\n }\n };\n const isHidden = useCallback(\n (value?: string) => {\n return !visibleList.current.includes(value ?? '');\n },\n [visibleList]\n );\n\n const optionContextValue = useMemo(() => {\n return {\n search,\n updateHighlighted: setHighlighted,\n highlighted,\n isHidden,\n onSelect,\n selectedValue: value,\n };\n }, [search, highlighted, isHidden, onSelect, value]);\n\n const conditionalProps: Partial<SelectOptionProp> = {};\n if (options) {\n conditionalProps.options = options;\n } else {\n conditionalProps.children = children;\n }\n\n const onTriggerClick: MouseEventHandler<HTMLDivElement> = e => {\n if (open) {\n e.preventDefault();\n inputRef.current?.focus();\n }\n };\n\n const onFocusOutside = (\n e: CustomEvent<{\n originalEvent: FocusEvent;\n }>\n ) => {\n const contentElement = (e.target as HTMLElement)?.closest('[aria-haspopup=dialog]');\n const triggerElement = (e.target as HTMLElement)?.closest(\n '[data-radix-popper-content-wrapper]'\n );\n\n if (contentElement || triggerElement) {\n e.preventDefault();\n }\n };\n\n return (\n <SelectPopoverRoot\n open={open}\n onOpenChange={onOpenChange}\n >\n <Trigger\n asChild\n disabled={disabled}\n data-testid=\"autocomplete-trigger\"\n >\n <div onClick={onTriggerClick}>\n <SearchField\n ref={inputRef}\n value={search}\n onChange={onUpdateSearch}\n onKeyDown={onKeyDown}\n disabled={disabled}\n placeholder={placeholder}\n {...props}\n />\n </div>\n </Trigger>\n <Portal>\n <PopoverContent\n sideOffset={5}\n onFocus={onFocus}\n onCloseAutoFocus={() => {\n onUpdateSearch('');\n inputRef.current?.focus();\n }}\n onOpenAutoFocus={e => {\n e.preventDefault();\n setHighlighted(visibleList.current[0]);\n inputRef.current?.focus();\n }}\n align=\"start\"\n onPointerDownOutside={() => {\n onOpenChange(false);\n }}\n onFocusOutside={onFocusOutside}\n >\n <SelectList>\n <SelectListContent>\n <OptionContext.Provider value={optionContextValue}>\n {options && options.length > 0\n ? options.map((optionProps, index) => {\n if ('options' in optionProps) {\n const { options: itemList = [], ...groupProps } = optionProps;\n return (\n <Group\n key={`autocomplete-${defaultId}-group-${index}`}\n {...groupProps}\n >\n {itemList.map(\n ({ label, ...itemProps }, itemIndex: number) => (\n <Item\n key={`autocomplete-${defaultId}-group-${index}-item-${itemIndex}`}\n {...itemProps}\n >\n {label}\n </Item>\n )\n )}\n </Group>\n );\n } else {\n return (\n <Item\n key={`autocomplete-${defaultId}-item-${index}`}\n {...optionProps}\n />\n );\n }\n })\n : children}\n </OptionContext.Provider>\n </SelectListContent>\n {visibleList.current.length === 0 && (\n <SelectNoDataContainer {...props}>\n No Options found{search.length > 0 ? ` for \"${search}\" ` : ''}\n </SelectNoDataContainer>\n )}\n </SelectList>\n </PopoverContent>\n </Portal>\n </SelectPopoverRoot>\n );\n};\n\nexport const Group = forwardRef<HTMLDivElement, SelectGroupProps>(\n ({ children, heading, ...props }, forwardedRef) => {\n useSearch();\n return (\n <SelectGroupContainer\n {...props}\n ref={mergeRefs([\n forwardedRef,\n node => {\n const hidden = node?.querySelectorAll('[cui-autocomplete-item]').length === 0;\n if (hidden) {\n node?.setAttribute('hidden', '');\n } else {\n node?.removeAttribute('hidden');\n }\n node?.setAttribute('aria-hidden', hidden.toString());\n },\n ])}\n >\n <SelectGroupName>{heading}</SelectGroupName>\n <SelectGroupContent>{children}</SelectGroupContent>\n </SelectGroupContainer>\n );\n }\n);\n\nGroup.displayName = 'AutoComplete.Group';\n\nconst CheckIcon = styled.svg<{ $showCheck: boolean }>`\n opacity: ${({ $showCheck }) => ($showCheck ? 1 : 0)};\n`;\n\nexport const Item = forwardRef<HTMLDivElement, SelectItemProps>(\n (\n {\n disabled = false,\n children,\n label,\n separator,\n onSelect: onSelectProp,\n value = '',\n icon,\n iconDir,\n onMouseOver: onMouseOverProp,\n ...props\n },\n forwardedRef\n ) => {\n const { highlighted, updateHighlighted, isHidden, selectedValue, onSelect } =\n useOption();\n const onSelectValue = () => {\n if (!disabled) {\n onSelect(value);\n if (typeof onSelectProp == 'function') {\n onSelectProp(value);\n }\n }\n };\n const onMouseOver: MouseEventHandler<HTMLDivElement> = e => {\n if (onMouseOverProp) {\n onMouseOverProp(e);\n }\n if (!disabled) {\n updateHighlighted(value);\n }\n };\n\n if (isHidden(value)) {\n return null;\n }\n const isChecked = selectedValue === value;\n\n return (\n <>\n <GenericMenuItem\n {...props}\n data-value={value}\n onClick={onSelectValue}\n onMouseOver={onMouseOver}\n ref={forwardedRef}\n data-state={isChecked ? 'checked' : 'unchecked'}\n data-disabled={disabled ? true : undefined}\n data-highlighted={highlighted == value ? 'true' : undefined}\n cui-autocomplete-item=\"\"\n >\n <IconWrapper\n icon={icon}\n iconDir={iconDir}\n >\n {label ?? children}\n </IconWrapper>\n <CheckIcon\n as={Icon}\n name=\"check\"\n size=\"sm\"\n $showCheck={isChecked}\n />\n </GenericMenuItem>\n {separator && <Separator size=\"sm\" />}\n </>\n );\n }\n);\n\nItem.displayName = 'AutoComplete.Item';\n\nAutoComplete.Group = Group;\nAutoComplete.Item = Item;\n"],"names":["SelectPopoverRoot","styled","Root","withConfig","componentId","theme","click","genericMenu","item","color","default","stroke","background","PopoverContent","Content","SelectGroupContainer","div","typography","sectionHeader","text","muted","SelectGroupName","space","top","x","bottom","gap","SelectGroupContent","SelectListContent","childrenToComboboxItemArray","children","callback","heading","Children","toArray","flatMap","child","isValidElement","type","displayName","groupChildren","props","getTextFromNodes","toLowerCase","title","value","disabled","nodeProps","SelectNoDataContainer","button","label","y","SelectList","panel","shadow","AutoComplete","onSelect","onSelectProp","options","onOpenChange","onOpenChangeProp","placeholder","defaultId","useId","search","setSearch","useState","open","setOpen","inputRef","useRef","highlighted","setHighlighted","visibleList","navigatable","valueNode","Map","list","setList","updateElements","useCallback","includes","current","push","set","onFocus","focus","newOpen","onUpdateSearch","hasHighlightedValue","visibleItemsList","navigatableList","searchLowerCase","forEach","updateList","lowerCasedSearch","option","map","useEffect","onKeyDown","e","defaultPrevented","key","preventDefault","nextHighlightedValue","highlightedIndex","findIndex","length","isHidden","optionContextValue","useMemo","updateHighlighted","selectedValue","onTriggerClick","onFocusOutside","contentElement","target","closest","triggerElement","jsxs","jsx","Trigger","SearchField","Portal","OptionContext","optionProps","index","itemList","groupProps","itemProps","itemIndex","Group","forwardRef","forwardedRef","useSearch","mergeRefs","node","hidden","querySelectorAll","setAttribute","removeAttribute","toString","CheckIcon","svg","$showCheck","Item","separator","icon","iconDir","onMouseOver","onMouseOverProp","useOption","onSelectValue","isChecked","Fragment","GenericMenuItem","undefined","IconWrapper","Icon","Separator"],"mappings":"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"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/AutoComplete/AutoComplete.tsx"],"sourcesContent":["import {\n Children,\n FunctionComponent,\n HTMLAttributes,\n KeyboardEventHandler,\n MouseEventHandler,\n ReactNode,\n forwardRef,\n isValidElement,\n useCallback,\n useEffect,\n useId,\n useMemo,\n useRef,\n useState,\n} from 'react';\nimport { Portal, PopoverProps, Content, Root, Trigger } from '@radix-ui/react-popover';\nimport { styled } from 'styled-components';\n\nimport { HorizontalDirection } from '@/types';\nimport { SearchField } from '@/components/SearchField';\nimport { Separator } from '@/components/Separator';\nimport { Icon, type ImageName } from '@/components/Icon';\nimport { GenericMenuItem } from '@/components/GenericMenu';\nimport { IconWrapper } from '@/components/IconWrapper';\nimport { getTextFromNodes } from '@/lib/getTextFromNodes';\nimport { mergeRefs } from '@/utils/mergeRefs';\nimport { useResolvedPortalContainer } from '@/providers/PortalContext';\n\nimport { useOption, useSearch } from './useOption';\nimport { OptionContext } from './OptionContext';\n\ntype DivProps = HTMLAttributes<HTMLDivElement>;\ninterface SelectItemComponentProps extends Omit<\n DivProps,\n 'disabled' | 'onSelect' | 'value' | 'children'\n> {\n separator?: boolean;\n disabled?: boolean;\n onSelect?: (value: string) => void;\n value: string;\n icon?: ImageName;\n iconDir?: HorizontalDirection;\n}\n\ntype SelectItemChildren = {\n children: ReactNode;\n label?: never;\n};\n\ntype SelectItemLabel = {\n children?: never;\n label: ReactNode;\n};\nexport interface SelectGroupProps extends Omit<\n HTMLAttributes<HTMLDivElement>,\n 'heading'\n> {\n heading: ReactNode;\n value?: never;\n onSelect?: never;\n}\nexport interface SelectOptionItem extends Omit<SelectItemProps, 'children' | 'label'> {\n heading?: never;\n label: ReactNode;\n [key: `data-${string}`]: string;\n}\n\ninterface SelectGroupOptionItem extends Omit<SelectGroupProps, 'children' | 'label'> {\n options: SelectOptionItem[];\n label?: never;\n [key: `data-${string}`]: string;\n}\n\nexport type AutoCompleteOptionListItem = SelectGroupOptionItem | SelectOptionItem;\n\nexport type SelectItemProps = SelectItemComponentProps &\n (SelectItemChildren | SelectItemLabel);\ntype SelectOptionType = {\n options: AutoCompleteOptionListItem[];\n children?: never;\n};\n\ntype SelectChildrenType = {\n children: ReactNode;\n options?: never;\n};\n\ntype SelectOptionProp = SelectOptionType | SelectChildrenType;\n\ninterface Props\n extends PopoverProps, Omit<DivProps, 'onChange' | 'dir' | 'onSelect' | 'children'> {\n onSelect?: (value: string) => void;\n value?: string;\n placeholder?: string;\n onOpenChange?: (open: boolean) => void;\n label?: ReactNode;\n container?: HTMLElement | null;\n error?: ReactNode;\n disabled?: boolean;\n dir?: 'start' | 'end';\n orientation?: 'horizontal' | 'vertical';\n allowCreateOption?: boolean;\n}\ntype SelectItemObject = {\n disabled?: boolean;\n value: string;\n title: string;\n heading?: string;\n};\n\nexport type AutoCompleteProps = (SelectOptionType & Props) | (SelectChildrenType & Props);\n\nexport const SelectPopoverRoot = styled(Root)`\n width: 100%;\n ${({ theme }) => `\n border: 1px solid ${theme.click.genericMenu.item.color.default.stroke.default};\n background: ${theme.click.genericMenu.item.color.default.background.default};\n box-shadow: 0px 1px 3px 0px rgba(16, 24, 40, 0.1),\n 0px 1px 2px 0px rgba(16, 24, 40, 0.06);\n border-radius: 0.25rem;\n `}\n overflow: hidden;\n display: flex;\n padding: 0.5rem 0rem;\n align-items: flex-start;\n gap: 0.625rem;\n`;\n\nconst PopoverContent = styled(Content)`\n width: var(--radix-popover-trigger-width);\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n gap: 5px;\n`;\nconst SelectGroupContainer = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n width: -webkit-fill-available;\n width: fill-available;\n width: stretch;\n overflow: hidden;\n background: transparent;\n &[aria-selected] {\n outline: none;\n }\n\n ${({ theme }) => `\n font: ${theme.click.genericMenu.item.typography.sectionHeader.default};\n color: ${theme.click.genericMenu.item.color.default.text.muted};\n `};\n &[hidden] {\n display: none;\n }\n`;\n\nconst SelectGroupName = styled.div`\n display: flex;\n width: 100%;\n flex-direction: column;\n overflow: hidden;\n white-space: nowrap;\n text-overflow: ellipsis;\n ${({ theme }) => `\n font: ${theme.click.genericMenu.item.typography.sectionHeader.default};\n color: ${theme.click.genericMenu.item.color.default.text.muted};\n padding: ${theme.click.genericMenu.sectionHeader.space.top} ${theme.click.genericMenu.item.space.x} ${theme.click.genericMenu.sectionHeader.space.bottom};\n gap: ${theme.click.genericMenu.item.space.gap};\n border-bottom: 1px solid ${theme.click.genericMenu.item.color.default.stroke.default};\n `}\n`;\n\nconst SelectGroupContent = styled.div`\n width: inherit;\n`;\n\nconst SelectListContent = styled.div`\n width: inherit;\n overflow: overlay;\n flex: 1;\n`;\n\ntype CallbackProps = SelectItemObject & {\n nodeProps: SelectItemProps;\n};\n\nconst childrenToComboboxItemArray = (\n children: ReactNode,\n callback: (props: CallbackProps) => void,\n heading?: string\n): SelectItemObject[] => {\n return Children.toArray(children).flatMap(child => {\n if (isValidElement(child) && child && typeof child === 'object') {\n const type = child.type as FunctionComponent;\n if (type.displayName === 'AutoComplete.Group') {\n const groupChildren = child.props.children;\n return childrenToComboboxItemArray(\n groupChildren,\n callback,\n getTextFromNodes(child.props.heading).toLowerCase()\n );\n } else if (type.displayName === 'AutoComplete.Item') {\n const title = getTextFromNodes(child).toLowerCase();\n const value = child.props.value;\n const disabled = child.props.disabled;\n callback({\n disabled,\n value,\n title,\n heading,\n nodeProps: child.props,\n });\n return {\n disabled,\n value,\n title,\n heading,\n };\n } else if ('props' in child && child.props.children) {\n return childrenToComboboxItemArray(child.props.children, callback, heading);\n }\n }\n return [];\n });\n};\nconst SelectNoDataContainer = styled.div`\n border: none;\n display: block;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n text-align: left;\n cursor: default;\n &[hidden='true'] {\n display: none;\n }\n ${({ theme }) => `\n font: ${theme.click.genericMenu.button.typography.label.default}\n padding: ${theme.click.genericMenu.button.space.y} ${theme.click.genericMenu.item.space.x};\n background: ${theme.click.genericMenu.button.color.background.default};\n color: ${theme.click.genericMenu.button.color.label.default};\n `}\n`;\n\nconst SelectList = styled.div`\n display: flex;\n flex-direction: column;\n width: inherit;\n max-height: var(--radix-popover-content-available-height);\n ${({ theme }) => `\n border: 1px solid ${theme.click.genericMenu.item.color.default.stroke.default};\n background: ${theme.click.genericMenu.item.color.default.background.default};\n box-shadow: ${theme.click.genericMenu.panel.shadow.default};\n border-radius: 0.25rem;\n `}\n`;\n\nexport const AutoComplete = ({\n onSelect: onSelectProp,\n options,\n children,\n onOpenChange: onOpenChangeProp,\n disabled,\n value = '',\n placeholder = 'Search',\n container,\n ...props\n}: AutoCompleteProps) => {\n const defaultId = useId();\n const [search, setSearch] = useState('');\n const [open, setOpen] = useState(false);\n\n const inputRef = useRef<HTMLInputElement>(null);\n const portalContainer = useResolvedPortalContainer(container);\n const [highlighted, setHighlighted] = useState<string | undefined>();\n const visibleList = useRef<string[]>([]);\n const navigatable = useRef<string[]>([]);\n const valueNode = useRef<Map<string, SelectItemProps>>(new Map());\n const [list, setList] = useState<SelectItemObject[]>([]);\n const updateElements = useCallback(\n ({ disabled, value, title, heading, nodeProps }: CallbackProps) => {\n if (title.includes(search) || heading?.includes(search)) {\n visibleList.current.push(value);\n if (!disabled) {\n navigatable.current.push(value);\n }\n }\n valueNode.current.set(value, nodeProps);\n },\n [search]\n );\n\n const onFocus = () => {\n inputRef.current?.focus();\n };\n\n const onOpenChange = useCallback(\n (open: boolean) => {\n const newOpen = open && !disabled;\n setOpen(newOpen);\n if (typeof onOpenChangeProp === 'function') {\n onOpenChangeProp(newOpen);\n }\n },\n [disabled, onOpenChangeProp]\n );\n\n const onSelect = useCallback(\n (value: string) => {\n onOpenChange(false);\n if (typeof onSelectProp === 'function') {\n onSelectProp(value);\n }\n },\n [onSelectProp, onOpenChange]\n );\n\n const onUpdateSearch = useCallback(\n (search: string) => {\n setSearch(search);\n let hasHighlightedValue = false;\n const visibleItemsList: string[] = [];\n const navigatableList: string[] = [];\n const searchLowerCase = search.toLowerCase();\n list.forEach(item => {\n if (\n item.title.includes(searchLowerCase) ||\n item.heading?.includes(searchLowerCase)\n ) {\n if (item.value === highlighted) {\n hasHighlightedValue = true;\n }\n visibleItemsList.push(item.value);\n if (!item.disabled) {\n navigatableList.push(item.value);\n }\n }\n });\n navigatable.current = navigatableList;\n visibleList.current = visibleItemsList;\n if (!hasHighlightedValue) {\n setHighlighted(navigatableList[0] ?? null);\n }\n },\n [highlighted, list]\n );\n\n const updateList = useCallback(\n (children?: ReactNode, options?: AutoCompleteOptionListItem[]) => {\n const lowerCasedSearch = search.toLowerCase();\n if (options) {\n setList(\n options.flatMap(option => {\n if ('options' in option) {\n const heading = getTextFromNodes(option.heading).toLowerCase();\n return (option.options ?? []).map(item => {\n valueNode.current.set(item.value, item);\n const title = getTextFromNodes(item.label).toLowerCase();\n if (\n title.includes(lowerCasedSearch) ||\n heading?.includes(lowerCasedSearch)\n ) {\n visibleList.current.push(item.value);\n if (!disabled) {\n navigatable.current.push(item.value);\n }\n }\n return {\n heading,\n disabled: item.disabled,\n value: item.value,\n title,\n };\n });\n } else {\n valueNode.current.set(option.value, option);\n const title = getTextFromNodes(option.label).toLowerCase();\n if (title.includes(lowerCasedSearch)) {\n visibleList.current.push(option.value);\n if (!disabled) {\n navigatable.current.push(option.value);\n }\n }\n return {\n disabled: option.disabled,\n value: option.value,\n title: getTextFromNodes(option.label),\n };\n }\n })\n );\n } else if (children) {\n setList(childrenToComboboxItemArray(children, updateElements));\n }\n },\n [disabled, search, updateElements]\n );\n\n useEffect(() => {\n updateList(children, options);\n }, [children, options, updateList]);\n\n const onKeyDown: KeyboardEventHandler<HTMLInputElement> = e => {\n if (!e.defaultPrevented) {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (highlighted) {\n onSelect(highlighted);\n }\n } else if (['ArrowUp', 'ArrowDown', 'Home', 'End'].includes(e.key)) {\n e.preventDefault();\n let nextHighlightedValue = highlighted;\n const highlightedIndex = navigatable.current.findIndex(\n value => value === highlighted\n );\n if (e.key === 'ArrowUp') {\n if (highlightedIndex === 0) {\n nextHighlightedValue = navigatable.current[navigatable.current.length - 1];\n } else {\n nextHighlightedValue = navigatable.current[highlightedIndex - 1];\n }\n } else if (e.key === 'ArrowDown') {\n e.preventDefault();\n if (highlightedIndex === navigatable.current.length - 1) {\n nextHighlightedValue = navigatable.current[0];\n } else {\n nextHighlightedValue = navigatable.current[highlightedIndex + 1];\n }\n } else if (e.key === 'End') {\n e.preventDefault();\n nextHighlightedValue = navigatable.current[navigatable.current.length - 1];\n } else if (e.key === 'Home') {\n nextHighlightedValue = navigatable.current[0];\n e.preventDefault();\n }\n setHighlighted(nextHighlightedValue);\n }\n }\n };\n const isHidden = useCallback(\n (value?: string) => {\n return !visibleList.current.includes(value ?? '');\n },\n [visibleList]\n );\n\n const optionContextValue = useMemo(() => {\n return {\n search,\n updateHighlighted: setHighlighted,\n highlighted,\n isHidden,\n onSelect,\n selectedValue: value,\n };\n }, [search, highlighted, isHidden, onSelect, value]);\n\n const conditionalProps: Partial<SelectOptionProp> = {};\n if (options) {\n conditionalProps.options = options;\n } else {\n conditionalProps.children = children;\n }\n\n const onTriggerClick: MouseEventHandler<HTMLDivElement> = e => {\n if (open) {\n e.preventDefault();\n inputRef.current?.focus();\n }\n };\n\n const onFocusOutside = (\n e: CustomEvent<{\n originalEvent: FocusEvent;\n }>\n ) => {\n const contentElement = (e.target as HTMLElement)?.closest('[aria-haspopup=dialog]');\n const triggerElement = (e.target as HTMLElement)?.closest(\n '[data-radix-popper-content-wrapper]'\n );\n\n if (contentElement || triggerElement) {\n e.preventDefault();\n }\n };\n\n return (\n <SelectPopoverRoot\n open={open}\n onOpenChange={onOpenChange}\n >\n <Trigger\n asChild\n disabled={disabled}\n data-testid=\"autocomplete-trigger\"\n >\n <div onClick={onTriggerClick}>\n <SearchField\n ref={inputRef}\n value={search}\n onChange={onUpdateSearch}\n onKeyDown={onKeyDown}\n disabled={disabled}\n placeholder={placeholder}\n {...props}\n />\n </div>\n </Trigger>\n <Portal container={portalContainer}>\n <PopoverContent\n sideOffset={5}\n onFocus={onFocus}\n onCloseAutoFocus={() => {\n onUpdateSearch('');\n inputRef.current?.focus();\n }}\n onOpenAutoFocus={e => {\n e.preventDefault();\n setHighlighted(visibleList.current[0]);\n inputRef.current?.focus();\n }}\n align=\"start\"\n onPointerDownOutside={() => {\n onOpenChange(false);\n }}\n onFocusOutside={onFocusOutside}\n >\n <SelectList>\n <SelectListContent>\n <OptionContext.Provider value={optionContextValue}>\n {options && options.length > 0\n ? options.map((optionProps, index) => {\n if ('options' in optionProps) {\n const { options: itemList = [], ...groupProps } = optionProps;\n return (\n <Group\n key={`autocomplete-${defaultId}-group-${index}`}\n {...groupProps}\n >\n {itemList.map(\n ({ label, ...itemProps }, itemIndex: number) => (\n <Item\n key={`autocomplete-${defaultId}-group-${index}-item-${itemIndex}`}\n {...itemProps}\n >\n {label}\n </Item>\n )\n )}\n </Group>\n );\n } else {\n return (\n <Item\n key={`autocomplete-${defaultId}-item-${index}`}\n {...optionProps}\n />\n );\n }\n })\n : children}\n </OptionContext.Provider>\n </SelectListContent>\n {visibleList.current.length === 0 && (\n <SelectNoDataContainer {...props}>\n No Options found{search.length > 0 ? ` for \"${search}\" ` : ''}\n </SelectNoDataContainer>\n )}\n </SelectList>\n </PopoverContent>\n </Portal>\n </SelectPopoverRoot>\n );\n};\n\nexport const Group = forwardRef<HTMLDivElement, SelectGroupProps>(\n ({ children, heading, ...props }, forwardedRef) => {\n useSearch();\n return (\n <SelectGroupContainer\n {...props}\n ref={mergeRefs([\n forwardedRef,\n node => {\n const hidden = node?.querySelectorAll('[cui-autocomplete-item]').length === 0;\n if (hidden) {\n node?.setAttribute('hidden', '');\n } else {\n node?.removeAttribute('hidden');\n }\n node?.setAttribute('aria-hidden', hidden.toString());\n },\n ])}\n >\n <SelectGroupName>{heading}</SelectGroupName>\n <SelectGroupContent>{children}</SelectGroupContent>\n </SelectGroupContainer>\n );\n }\n);\n\nGroup.displayName = 'AutoComplete.Group';\n\nconst CheckIcon = styled.svg<{ $showCheck: boolean }>`\n opacity: ${({ $showCheck }) => ($showCheck ? 1 : 0)};\n`;\n\nexport const Item = forwardRef<HTMLDivElement, SelectItemProps>(\n (\n {\n disabled = false,\n children,\n label,\n separator,\n onSelect: onSelectProp,\n value = '',\n icon,\n iconDir,\n onMouseOver: onMouseOverProp,\n ...props\n },\n forwardedRef\n ) => {\n const { highlighted, updateHighlighted, isHidden, selectedValue, onSelect } =\n useOption();\n const onSelectValue = () => {\n if (!disabled) {\n onSelect(value);\n if (typeof onSelectProp == 'function') {\n onSelectProp(value);\n }\n }\n };\n const onMouseOver: MouseEventHandler<HTMLDivElement> = e => {\n if (onMouseOverProp) {\n onMouseOverProp(e);\n }\n if (!disabled) {\n updateHighlighted(value);\n }\n };\n\n if (isHidden(value)) {\n return null;\n }\n const isChecked = selectedValue === value;\n\n return (\n <>\n <GenericMenuItem\n {...props}\n data-value={value}\n onClick={onSelectValue}\n onMouseOver={onMouseOver}\n ref={forwardedRef}\n data-state={isChecked ? 'checked' : 'unchecked'}\n data-disabled={disabled ? true : undefined}\n data-highlighted={highlighted == value ? 'true' : undefined}\n cui-autocomplete-item=\"\"\n >\n <IconWrapper\n icon={icon}\n iconDir={iconDir}\n >\n {label ?? children}\n </IconWrapper>\n <CheckIcon\n as={Icon}\n name=\"check\"\n size=\"sm\"\n $showCheck={isChecked}\n />\n </GenericMenuItem>\n {separator && <Separator size=\"sm\" />}\n </>\n );\n }\n);\n\nItem.displayName = 'AutoComplete.Item';\n\nAutoComplete.Group = Group;\nAutoComplete.Item = Item;\n"],"names":["SelectPopoverRoot","styled","Root","withConfig","componentId","theme","click","genericMenu","item","color","default","stroke","background","PopoverContent","Content","SelectGroupContainer","div","typography","sectionHeader","text","muted","SelectGroupName","space","top","x","bottom","gap","SelectGroupContent","SelectListContent","childrenToComboboxItemArray","children","callback","heading","Children","toArray","flatMap","child","isValidElement","type","displayName","groupChildren","props","getTextFromNodes","toLowerCase","title","value","disabled","nodeProps","SelectNoDataContainer","button","label","y","SelectList","panel","shadow","AutoComplete","onSelect","onSelectProp","options","onOpenChange","onOpenChangeProp","placeholder","container","defaultId","useId","search","setSearch","useState","open","setOpen","inputRef","useRef","portalContainer","useResolvedPortalContainer","highlighted","setHighlighted","visibleList","navigatable","valueNode","Map","list","setList","updateElements","useCallback","includes","current","push","set","onFocus","focus","newOpen","onUpdateSearch","hasHighlightedValue","visibleItemsList","navigatableList","searchLowerCase","forEach","updateList","lowerCasedSearch","option","map","useEffect","onKeyDown","e","defaultPrevented","key","preventDefault","nextHighlightedValue","highlightedIndex","findIndex","length","isHidden","optionContextValue","useMemo","updateHighlighted","selectedValue","onTriggerClick","onFocusOutside","contentElement","target","closest","triggerElement","jsxs","jsx","Trigger","SearchField","Portal","OptionContext","optionProps","index","itemList","groupProps","itemProps","itemIndex","Group","forwardRef","forwardedRef","useSearch","mergeRefs","node","hidden","querySelectorAll","setAttribute","removeAttribute","toString","CheckIcon","svg","$showCheck","Item","separator","icon","iconDir","onMouseOver","onMouseOverProp","useOption","onSelectValue","isChecked","Fragment","GenericMenuItem","undefined","IconWrapper","Icon","Separator"],"mappings":";;;;;;;;;;;;;;;;;;;AAiHO,MAAMA,iBAAAA,GAAoBC,uBAAAA,CAAOC,iBAAI,CAAA,CAACC,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,aAAA,EAAA,wFAAA,GAEzC,CAAC;AAAA,EAAEC;AAAM,CAAA,KAAM;AAAA,sBAAA,EACKA,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQC,OAAOD,OAAO,CAAA;AAAA,gBAAA,EAC/DL,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQE,WAAWF,OAAO,CAAA;AAAA;AAAA;AAAA;AAAA,EAAA,CAI5E;AAQH,MAAMG,cAAAA,GAAiBZ,uBAAAA,CAAOa,oBAAO,CAAA,CAACX,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,6GAAA,CAAA,CAAA;AAOtC,MAAMW,oBAAAA,GAAuBd,uBAAAA,CAAOe,GAAAA,CAAGb,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,yNAAA,EAAA,2BAAA,GAcnC,CAAC;AAAA,EAAEC;AAAM,CAAA,KAAM;AAAA,UAAA,EACPA,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,IAAAA,CAAKS,UAAAA,CAAWC,cAAcR,OAAO,CAAA;AAAA,WAAA,EAC5DL,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQS,KAAKC,KAAK,CAAA;AAAA,EAAA,CAC/D,CAAA;AAMH,MAAMC,eAAAA,GAAkBpB,uBAAAA,CAAOe,GAAAA,CAAGb,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,0GAAA,EAAA,EAAA,GAO9B,CAAC;AAAA,EAAEC;AAAM,CAAA,KAAM;AAAA,WAAA,EACNA,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,IAAAA,CAAKS,UAAAA,CAAWC,cAAcR,OAAO,CAAA;AAAA,YAAA,EAC5DL,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQS,KAAKC,KAAK,CAAA;AAAA,cAAA,EACnDf,MAAMC,KAAAA,CAAMC,WAAAA,CAAYW,cAAcI,KAAAA,CAAMC,GAAG,IAAIlB,KAAAA,CAAMC,KAAAA,CAAMC,YAAYC,IAAAA,CAAKc,KAAAA,CAAME,CAAC,CAAA,CAAA,EAAInB,KAAAA,CAAMC,MAAMC,WAAAA,CAAYW,aAAAA,CAAcI,MAAMG,MAAM,CAAA;AAAA,UAAA,EACjJpB,KAAAA,CAAMC,KAAAA,CAAMC,WAAAA,CAAYC,IAAAA,CAAKc,MAAMI,GAAG,CAAA;AAAA,8BAAA,EAClBrB,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQC,OAAOD,OAAO,CAAA;AAAA,GAAA,CACrF,CAAA;AAGJ,MAAMiB,kBAAAA,GAAqB1B,uBAAAA,CAAOe,GAAAA,CAAGb,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,gBAAA,CAAA,CAAA;AAIrC,MAAMwB,iBAAAA,GAAoB3B,uBAAAA,CAAOe,GAAAA,CAAGb,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,wCAAA,CAAA,CAAA;AAUpC,MAAMyB,2BAAAA,GAA8BA,CAClCC,QAAAA,EACAC,QAAAA,EACAC,OAAAA,KACuB;AACvB,EAAA,OAAOC,cAAAA,CAASC,OAAAA,CAAQJ,QAAQ,CAAA,CAAEK,QAAQC,CAAAA,KAAAA,KAAS;AACjD,IAAA,IAAIC,qBAAeD,KAAK,CAAA,IAAKA,KAAAA,IAAS,OAAOA,UAAU,QAAA,EAAU;AAC/D,MAAA,MAAME,OAAOF,KAAAA,CAAME,IAAAA;AACnB,MAAA,IAAIA,IAAAA,CAAKC,gBAAgB,oBAAA,EAAsB;AAC7C,QAAA,MAAMC,aAAAA,GAAgBJ,MAAMK,KAAAA,CAAMX,QAAAA;AAClC,QAAA,OAAOD,2BAAAA,CACLW,eACAT,QAAAA,EACAW,iCAAAA,CAAiBN,MAAMK,KAAAA,CAAMT,OAAO,CAAA,CAAEW,WAAAA,EACxC,CAAA;AAAA,MACF,CAAA,MAAA,IAAWL,IAAAA,CAAKC,WAAAA,KAAgB,mBAAA,EAAqB;AACnD,QAAA,MAAMK,KAAAA,GAAQF,iCAAAA,CAAiBN,KAAK,CAAA,CAAEO,WAAAA,EAAY;AAClD,QAAA,MAAME,KAAAA,GAAQT,MAAMK,KAAAA,CAAMI,KAAAA;AAC1B,QAAA,MAAMC,QAAAA,GAAWV,MAAMK,KAAAA,CAAMK,QAAAA;AAC7Bf,QAAAA,QAAAA,CAAS;AAAA,UACPe,QAAAA;AAAAA,UACAD,KAAAA;AAAAA,UACAD,KAAAA;AAAAA,UACAZ,OAAAA;AAAAA,UACAe,WAAWX,KAAAA,CAAMK;AAAAA,SAClB,CAAA;AACD,QAAA,OAAO;AAAA,UACLK,QAAAA;AAAAA,UACAD,KAAAA;AAAAA,UACAD,KAAAA;AAAAA,UACAZ;AAAAA,SACF;AAAA,MACF,CAAA,MAAA,IAAW,OAAA,IAAWI,KAAAA,IAASA,KAAAA,CAAMK,MAAMX,QAAAA,EAAU;AACnD,QAAA,OAAOD,2BAAAA,CAA4BO,KAAAA,CAAMK,KAAAA,CAAMX,QAAAA,EAAUC,UAAUC,OAAO,CAAA;AAAA,MAC5E;AAAA,IACF;AACA,IAAA,OAAO,EAAA;AAAA,EACT,CAAC,CAAA;AACH,CAAA;AACA,MAAMgB,qBAAAA,GAAwB/C,uBAAAA,CAAOe,GAAAA,CAAGb,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,oJAAA,EAAA,EAAA,GAWpC,CAAC;AAAA,EAAEC;AAAM,CAAA,KAAM;AAAA,UAAA,EACPA,MAAMC,KAAAA,CAAMC,WAAAA,CAAY0C,MAAAA,CAAOhC,UAAAA,CAAWiC,MAAMxC,OAAO;AAAA,aAAA,EACpDL,KAAAA,CAAMC,KAAAA,CAAMC,WAAAA,CAAY0C,MAAAA,CAAO3B,KAAAA,CAAM6B,CAAC,CAAA,CAAA,EAAI9C,KAAAA,CAAMC,KAAAA,CAAMC,WAAAA,CAAYC,IAAAA,CAAKc,KAAAA,CAAME,CAAC,CAAA;AAAA,gBAAA,EAC3EnB,MAAMC,KAAAA,CAAMC,WAAAA,CAAY0C,MAAAA,CAAOxC,KAAAA,CAAMG,WAAWF,OAAO,CAAA;AAAA,WAAA,EAC5DL,MAAMC,KAAAA,CAAMC,WAAAA,CAAY0C,MAAAA,CAAOxC,KAAAA,CAAMyC,MAAMxC,OAAO,CAAA;AAAA,EAAA,CAC5D,CAAA;AAGH,MAAM0C,UAAAA,GAAanD,uBAAAA,CAAOe,GAAAA,CAAGb,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,4GAAA,EAAA,EAAA,GAKzB,CAAC;AAAA,EAAEC;AAAM,CAAA,KAAM;AAAA,sBAAA,EACKA,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQC,OAAOD,OAAO,CAAA;AAAA,gBAAA,EAC/DL,MAAMC,KAAAA,CAAMC,WAAAA,CAAYC,KAAKC,KAAAA,CAAMC,OAAAA,CAAQE,WAAWF,OAAO,CAAA;AAAA,gBAAA,EAC7DL,KAAAA,CAAMC,KAAAA,CAAMC,WAAAA,CAAY8C,KAAAA,CAAMC,OAAO5C,OAAO,CAAA;AAAA;AAAA,EAAA,CAE3D,CAAA;AAGI,MAAM6C,eAAeA,CAAC;AAAA,EAC3BC,QAAAA,EAAUC,YAAAA;AAAAA,EACVC,OAAAA;AAAAA,EACA5B,QAAAA;AAAAA,EACA6B,YAAAA,EAAcC,gBAAAA;AAAAA,EACdd,QAAAA;AAAAA,EACAD,KAAAA,GAAQ,EAAA;AAAA,EACRgB,WAAAA,GAAc,QAAA;AAAA,EACdC,SAAAA;AAAAA,EACA,GAAGrB;AACc,CAAA,KAAM;AACvB,EAAA,MAAMsB,YAAYC,WAAAA,EAAM;AACxB,EAAA,MAAM,CAACC,MAAAA,EAAQC,SAAS,CAAA,GAAIC,eAAS,EAAE,CAAA;AACvC,EAAA,MAAM,CAACC,IAAAA,EAAMC,OAAO,CAAA,GAAIF,eAAS,KAAK,CAAA;AAEtC,EAAA,MAAMG,QAAAA,GAAWC,aAAyB,IAAI,CAAA;AAC9C,EAAA,MAAMC,eAAAA,GAAkBC,yCAA2BX,SAAS,CAAA;AAC5D,EAAA,MAAM,CAACY,WAAAA,EAAaC,cAAc,CAAA,GAAIR,cAAAA,EAA6B;AACnE,EAAA,MAAMS,WAAAA,GAAcL,YAAAA,CAAiB,EAAE,CAAA;AACvC,EAAA,MAAMM,WAAAA,GAAcN,YAAAA,CAAiB,EAAE,CAAA;AACvC,EAAA,MAAMO,SAAAA,GAAYP,YAAAA,iBAAqC,IAAIQ,GAAAA,EAAK,CAAA;AAChE,EAAA,MAAM,CAACC,IAAAA,EAAMC,OAAO,CAAA,GAAId,cAAAA,CAA6B,EAAE,CAAA;AACvD,EAAA,MAAMe,cAAAA,GAAiBC,kBACrB,CAAC;AAAA,IAAErC,QAAAA,EAAAA,SAAAA;AAAAA,IAAUD,KAAAA,EAAAA,MAAAA;AAAAA,IAAOD,KAAAA;AAAAA,IAAOZ,OAAAA;AAAAA,IAASe;AAAAA,GAAyB,KAAM;AACjE,IAAA,IAAIH,MAAMwC,QAAAA,CAASnB,MAAM,KAAKjC,OAAAA,EAASoD,QAAAA,CAASnB,MAAM,CAAA,EAAG;AACvDW,MAAAA,WAAAA,CAAYS,OAAAA,CAAQC,KAAKzC,MAAK,CAAA;AAC9B,MAAA,IAAI,CAACC,SAAAA,EAAU;AACb+B,QAAAA,WAAAA,CAAYQ,OAAAA,CAAQC,KAAKzC,MAAK,CAAA;AAAA,MAChC;AAAA,IACF;AACAiC,IAAAA,SAAAA,CAAUO,OAAAA,CAAQE,GAAAA,CAAI1C,MAAAA,EAAOE,SAAS,CAAA;AAAA,EACxC,CAAA,EACA,CAACkB,MAAM,CACT,CAAA;AAEA,EAAA,MAAMuB,UAAUA,MAAM;AACpBlB,IAAAA,QAAAA,CAASe,SAASI,KAAAA,EAAM;AAAA,EAC1B,CAAA;AAEA,EAAA,MAAM9B,YAAAA,GAAewB,iBAAAA,CACnB,CAACf,KAAAA,KAAkB;AACjB,IAAA,MAAMsB,OAAAA,GAAUtB,SAAQ,CAACtB,QAAAA;AACzBuB,IAAAA,OAAAA,CAAQqB,OAAO,CAAA;AACf,IAAA,IAAI,OAAO9B,qBAAqB,UAAA,EAAY;AAC1CA,MAAAA,gBAAAA,CAAiB8B,OAAO,CAAA;AAAA,IAC1B;AAAA,EACF,CAAA,EACA,CAAC5C,QAAAA,EAAUc,gBAAgB,CAC7B,CAAA;AAEA,EAAA,MAAMJ,QAAAA,GAAW2B,iBAAAA,CACf,CAACtC,MAAAA,KAAkB;AACjBc,IAAAA,YAAAA,CAAa,KAAK,CAAA;AAClB,IAAA,IAAI,OAAOF,iBAAiB,UAAA,EAAY;AACtCA,MAAAA,YAAAA,CAAaZ,MAAK,CAAA;AAAA,IACpB;AAAA,EACF,CAAA,EACA,CAACY,YAAAA,EAAcE,YAAY,CAC7B,CAAA;AAEA,EAAA,MAAMgC,cAAAA,GAAiBR,iBAAAA,CACrB,CAAClB,OAAAA,KAAmB;AAClBC,IAAAA,SAAAA,CAAUD,OAAM,CAAA;AAChB,IAAA,IAAI2B,mBAAAA,GAAsB,KAAA;AAC1B,IAAA,MAAMC,mBAA6B,EAAA;AACnC,IAAA,MAAMC,kBAA4B,EAAA;AAClC,IAAA,MAAMC,eAAAA,GAAkB9B,QAAOtB,WAAAA,EAAY;AAC3CqC,IAAAA,IAAAA,CAAKgB,QAAQxF,CAAAA,IAAAA,KAAQ;AACnB,MAAA,IACEA,IAAAA,CAAKoC,MAAMwC,QAAAA,CAASW,eAAe,KACnCvF,IAAAA,CAAKwB,OAAAA,EAASoD,QAAAA,CAASW,eAAe,CAAA,EACtC;AACA,QAAA,IAAIvF,IAAAA,CAAKqC,UAAU6B,WAAAA,EAAa;AAC9BkB,UAAAA,mBAAAA,GAAsB,IAAA;AAAA,QACxB;AACAC,QAAAA,gBAAAA,CAAiBP,IAAAA,CAAK9E,KAAKqC,KAAK,CAAA;AAChC,QAAA,IAAI,CAACrC,KAAKsC,QAAAA,EAAU;AAClBgD,UAAAA,eAAAA,CAAgBR,IAAAA,CAAK9E,KAAKqC,KAAK,CAAA;AAAA,QACjC;AAAA,MACF;AAAA,IACF,CAAC,CAAA;AACDgC,IAAAA,WAAAA,CAAYQ,OAAAA,GAAUS,eAAAA;AACtBlB,IAAAA,WAAAA,CAAYS,OAAAA,GAAUQ,gBAAAA;AACtB,IAAA,IAAI,CAACD,mBAAAA,EAAqB;AACxBjB,MAAAA,cAAAA,CAAemB,eAAAA,CAAgB,CAAC,CAAA,IAAK,IAAI,CAAA;AAAA,IAC3C;AAAA,EACF,CAAA,EACA,CAACpB,WAAAA,EAAaM,IAAI,CACpB,CAAA;AAEA,EAAA,MAAMiB,UAAAA,GAAad,iBAAAA,CACjB,CAACrD,SAAAA,EAAsB4B,QAAAA,KAA2C;AAChE,IAAA,MAAMwC,gBAAAA,GAAmBjC,OAAOtB,WAAAA,EAAY;AAC5C,IAAA,IAAIe,QAAAA,EAAS;AACXuB,MAAAA,OAAAA,CACEvB,QAAAA,CAAQvB,QAAQgE,CAAAA,MAAAA,KAAU;AACxB,QAAA,IAAI,aAAaA,MAAAA,EAAQ;AACvB,UAAA,MAAMnE,OAAAA,GAAUU,iCAAAA,CAAiByD,MAAAA,CAAOnE,OAAO,EAAEW,WAAAA,EAAY;AAC7D,UAAA,OAAA,CAAQwD,MAAAA,CAAOzC,OAAAA,IAAW,IAAI0C,IAAI5F,CAAAA,IAAAA,KAAQ;AACxCsE,YAAAA,SAAAA,CAAUO,OAAAA,CAAQE,GAAAA,CAAI/E,IAAAA,CAAKqC,KAAAA,EAAOrC,IAAI,CAAA;AACtC,YAAA,MAAMoC,KAAAA,GAAQF,iCAAAA,CAAiBlC,IAAAA,CAAK0C,KAAK,EAAEP,WAAAA,EAAY;AACvD,YAAA,IACEC,MAAMwC,QAAAA,CAASc,gBAAgB,KAC/BlE,OAAAA,EAASoD,QAAAA,CAASc,gBAAgB,CAAA,EAClC;AACAtB,cAAAA,WAAAA,CAAYS,OAAAA,CAAQC,IAAAA,CAAK9E,IAAAA,CAAKqC,KAAK,CAAA;AACnC,cAAA,IAAI,CAACC,QAAAA,EAAU;AACb+B,gBAAAA,WAAAA,CAAYQ,OAAAA,CAAQC,IAAAA,CAAK9E,IAAAA,CAAKqC,KAAK,CAAA;AAAA,cACrC;AAAA,YACF;AACA,YAAA,OAAO;AAAA,cACLb,OAAAA;AAAAA,cACAc,UAAUtC,IAAAA,CAAKsC,QAAAA;AAAAA,cACfD,OAAOrC,IAAAA,CAAKqC,KAAAA;AAAAA,cACZD;AAAAA,aACF;AAAA,UACF,CAAC,CAAA;AAAA,QACH,CAAA,MAAO;AACLkC,UAAAA,SAAAA,CAAUO,OAAAA,CAAQE,GAAAA,CAAIY,MAAAA,CAAOtD,KAAAA,EAAOsD,MAAM,CAAA;AAC1C,UAAA,MAAMvD,KAAAA,GAAQF,iCAAAA,CAAiByD,MAAAA,CAAOjD,KAAK,EAAEP,WAAAA,EAAY;AACzD,UAAA,IAAIC,KAAAA,CAAMwC,QAAAA,CAASc,gBAAgB,CAAA,EAAG;AACpCtB,YAAAA,WAAAA,CAAYS,OAAAA,CAAQC,IAAAA,CAAKa,MAAAA,CAAOtD,KAAK,CAAA;AACrC,YAAA,IAAI,CAACC,QAAAA,EAAU;AACb+B,cAAAA,WAAAA,CAAYQ,OAAAA,CAAQC,IAAAA,CAAKa,MAAAA,CAAOtD,KAAK,CAAA;AAAA,YACvC;AAAA,UACF;AACA,UAAA,OAAO;AAAA,YACLC,UAAUqD,MAAAA,CAAOrD,QAAAA;AAAAA,YACjBD,OAAOsD,MAAAA,CAAOtD,KAAAA;AAAAA,YACdD,KAAAA,EAAOF,iCAAAA,CAAiByD,MAAAA,CAAOjD,KAAK;AAAA,WACtC;AAAA,QACF;AAAA,MACF,CAAC,CACH,CAAA;AAAA,IACF,WAAWpB,SAAAA,EAAU;AACnBmD,MAAAA,OAAAA,CAAQpD,2BAAAA,CAA4BC,SAAAA,EAAUoD,cAAc,CAAC,CAAA;AAAA,IAC/D;AAAA,EACF,CAAA,EACA,CAACpC,QAAAA,EAAUmB,MAAAA,EAAQiB,cAAc,CACnC,CAAA;AAEAmB,EAAAA,eAAAA,CAAU,MAAM;AACdJ,IAAAA,UAAAA,CAAWnE,UAAU4B,OAAO,CAAA;AAAA,EAC9B,CAAA,EAAG,CAAC5B,QAAAA,EAAU4B,OAAAA,EAASuC,UAAU,CAAC,CAAA;AAElC,EAAA,MAAMK,YAAoDC,CAAAA,CAAAA,KAAK;AAC7D,IAAA,IAAI,CAACA,EAAEC,gBAAAA,EAAkB;AACvB,MAAA,IAAID,CAAAA,CAAEE,QAAQ,OAAA,EAAS;AACrBF,QAAAA,CAAAA,CAAEG,cAAAA,EAAe;AACjB,QAAA,IAAIhC,WAAAA,EAAa;AACflB,UAAAA,QAAAA,CAASkB,WAAW,CAAA;AAAA,QACtB;AAAA,MACF,CAAA,MAAA,IAAW,CAAC,SAAA,EAAW,WAAA,EAAa,MAAA,EAAQ,KAAK,CAAA,CAAEU,QAAAA,CAASmB,CAAAA,CAAEE,GAAG,CAAA,EAAG;AAClEF,QAAAA,CAAAA,CAAEG,cAAAA,EAAe;AACjB,QAAA,IAAIC,oBAAAA,GAAuBjC,WAAAA;AAC3B,QAAA,MAAMkC,mBAAmB/B,WAAAA,CAAYQ,OAAAA,CAAQwB,UAC3ChE,CAAAA,MAAAA,KAASA,WAAU6B,WACrB,CAAA;AACA,QAAA,IAAI6B,CAAAA,CAAEE,QAAQ,SAAA,EAAW;AACvB,UAAA,IAAIG,qBAAqB,CAAA,EAAG;AAC1BD,YAAAA,oBAAAA,GAAuB9B,WAAAA,CAAYQ,OAAAA,CAAQR,WAAAA,CAAYQ,OAAAA,CAAQyB,SAAS,CAAC,CAAA;AAAA,UAC3E,CAAA,MAAO;AACLH,YAAAA,oBAAAA,GAAuB9B,WAAAA,CAAYQ,OAAAA,CAAQuB,gBAAAA,GAAmB,CAAC,CAAA;AAAA,UACjE;AAAA,QACF,CAAA,MAAA,IAAWL,CAAAA,CAAEE,GAAAA,KAAQ,WAAA,EAAa;AAChCF,UAAAA,CAAAA,CAAEG,cAAAA,EAAe;AACjB,UAAA,IAAIE,gBAAAA,KAAqB/B,WAAAA,CAAYQ,OAAAA,CAAQyB,MAAAA,GAAS,CAAA,EAAG;AACvDH,YAAAA,oBAAAA,GAAuB9B,WAAAA,CAAYQ,QAAQ,CAAC,CAAA;AAAA,UAC9C,CAAA,MAAO;AACLsB,YAAAA,oBAAAA,GAAuB9B,WAAAA,CAAYQ,OAAAA,CAAQuB,gBAAAA,GAAmB,CAAC,CAAA;AAAA,UACjE;AAAA,QACF,CAAA,MAAA,IAAWL,CAAAA,CAAEE,GAAAA,KAAQ,KAAA,EAAO;AAC1BF,UAAAA,CAAAA,CAAEG,cAAAA,EAAe;AACjBC,UAAAA,oBAAAA,GAAuB9B,WAAAA,CAAYQ,OAAAA,CAAQR,WAAAA,CAAYQ,OAAAA,CAAQyB,SAAS,CAAC,CAAA;AAAA,QAC3E,CAAA,MAAA,IAAWP,CAAAA,CAAEE,GAAAA,KAAQ,MAAA,EAAQ;AAC3BE,UAAAA,oBAAAA,GAAuB9B,WAAAA,CAAYQ,QAAQ,CAAC,CAAA;AAC5CkB,UAAAA,CAAAA,CAAEG,cAAAA,EAAe;AAAA,QACnB;AACA/B,QAAAA,cAAAA,CAAegC,oBAAoB,CAAA;AAAA,MACrC;AAAA,IACF;AAAA,EACF,CAAA;AACA,EAAA,MAAMI,QAAAA,GAAW5B,iBAAAA,CACf,CAACtC,MAAAA,KAAmB;AAClB,IAAA,OAAO,CAAC+B,WAAAA,CAAYS,OAAAA,CAAQD,QAAAA,CAASvC,UAAS,EAAE,CAAA;AAAA,EAClD,CAAA,EACA,CAAC+B,WAAW,CACd,CAAA;AAEA,EAAA,MAAMoC,kBAAAA,GAAqBC,cAAQ,MAAM;AACvC,IAAA,OAAO;AAAA,MACLhD,MAAAA;AAAAA,MACAiD,iBAAAA,EAAmBvC,cAAAA;AAAAA,MACnBD,WAAAA;AAAAA,MACAqC,QAAAA;AAAAA,MACAvD,QAAAA;AAAAA,MACA2D,aAAAA,EAAetE;AAAAA,KACjB;AAAA,EACF,GAAG,CAACoB,MAAAA,EAAQS,aAAaqC,QAAAA,EAAUvD,QAAAA,EAAUX,KAAK,CAAC,CAAA;AASnD,EAAA,MAAMuE,iBAAoDb,CAAAA,CAAAA,KAAK;AAC7D,IAAA,IAAInC,IAAAA,EAAM;AACRmC,MAAAA,CAAAA,CAAEG,cAAAA,EAAe;AACjBpC,MAAAA,QAAAA,CAASe,SAASI,KAAAA,EAAM;AAAA,IAC1B;AAAA,EACF,CAAA;AAEA,EAAA,MAAM4B,cAAAA,GAAiBA,CACrBd,CAAAA,KAGG;AACH,IAAA,MAAMe,cAAAA,GAAkBf,CAAAA,CAAEgB,MAAAA,EAAwBC,OAAAA,CAAQ,wBAAwB,CAAA;AAClF,IAAA,MAAMC,cAAAA,GAAkBlB,CAAAA,CAAEgB,MAAAA,EAAwBC,OAAAA,CAChD,qCACF,CAAA;AAEA,IAAA,IAAIF,kBAAkBG,cAAAA,EAAgB;AACpClB,MAAAA,CAAAA,CAAEG,cAAAA,EAAe;AAAA,IACnB;AAAA,EACF,CAAA;AAEA,EAAA,uBACEgB,eAAA,CAAC,iBAAA,EAAA,EACC,IAAA,EACA,YAAA,EAEA,QAAA,EAAA;AAAA,oBAAAC,cAAA,CAACC,oBAAA,EAAA,EACC,OAAA,EAAO,IAAA,EACP,QAAA,EACA,aAAA,EAAY,wBAEZ,QAAA,kBAAAD,cAAA,CAAC,KAAA,EAAA,EAAI,OAAA,EAASP,cAAAA,EACZ,QAAA,kBAAAO,cAAA,CAACE,uBAAA,EAAA,EACC,KAAKvD,QAAAA,EACL,KAAA,EAAOL,MAAAA,EACP,QAAA,EAAU0B,cAAAA,EACV,SAAA,EACA,UACA,WAAA,EACA,GAAIlD,KAAAA,EAAM,CAAA,EAEd,CAAA,EACF,CAAA;AAAA,oBACAkF,cAAA,CAACG,mBAAA,EAAA,EAAO,SAAA,EAAWtD,eAAAA,EACjB,QAAA,kBAAAmD,cAAA,CAAC,kBACC,UAAA,EAAY,CAAA,EACZ,OAAA,EACA,gBAAA,EAAkB,MAAM;AACtBhC,MAAAA,cAAAA,CAAe,EAAE,CAAA;AACjBrB,MAAAA,QAAAA,CAASe,SAASI,KAAAA,EAAM;AAAA,IAC1B,CAAA,EACA,iBAAiBc,CAAAA,CAAAA,KAAK;AACpBA,MAAAA,CAAAA,CAAEG,cAAAA,EAAe;AACjB/B,MAAAA,cAAAA,CAAeC,WAAAA,CAAYS,OAAAA,CAAQ,CAAC,CAAC,CAAA;AACrCf,MAAAA,QAAAA,CAASe,SAASI,KAAAA,EAAM;AAAA,IAC1B,CAAA,EACA,KAAA,EAAM,OAAA,EACN,oBAAA,EAAsB,MAAM;AAC1B9B,MAAAA,YAAAA,CAAa,KAAK,CAAA;AAAA,IACpB,CAAA,EACA,cAAA,EAEA,QAAA,kBAAA+D,eAAA,CAAC,UAAA,EAAA,EACC,QAAA,EAAA;AAAA,sBAAAC,cAAA,CAAC,iBAAA,EAAA,EACC,QAAA,kBAAAA,cAAA,CAACI,2BAAA,CAAc,QAAA,EAAd,EAAuB,KAAA,EAAOf,kBAAAA,EAC5BtD,QAAAA,EAAAA,OAAAA,IAAWA,OAAAA,CAAQoD,SAAS,CAAA,GACzBpD,OAAAA,CAAQ0C,GAAAA,CAAI,CAAC4B,aAAaC,KAAAA,KAAU;AAClC,QAAA,IAAI,aAAaD,WAAAA,EAAa;AAC5B,UAAA,MAAM;AAAA,YAAEtE,OAAAA,EAASwE,WAAW,EAAA;AAAA,YAAI,GAAGC;AAAAA,WAAW,GAAIH,WAAAA;AAClD,UAAA,sCACG,KAAA,EAAA,EAEC,GAAIG,UAAAA,EAEHD,QAAAA,EAAAA,QAAAA,CAAS9B,IACR,CAAC;AAAA,YAAElD,KAAAA;AAAAA,YAAO,GAAGkF;AAAAA,WAAU,EAAGC,8BACxBV,cAAA,CAAC,IAAA,EAAA,EAEC,GAAIS,SAAAA,EAEHlF,QAAAA,EAAAA,KAAAA,EAAAA,EAHI,gBAAgBa,SAAS,CAAA,OAAA,EAAUkE,KAAK,CAAA,MAAA,EAASI,SAAS,EAIjE,CAEJ,CAAA,EAAA,EAZK,gBAAgBtE,SAAS,CAAA,OAAA,EAAUkE,KAAK,CAAA,CAa/C,CAAA;AAAA,QAEJ,CAAA,MAAO;AACL,UAAA,uBACEN,cAAA,CAAC,QAEC,GAAIK,WAAAA,EAAAA,EADC,gBAAgBjE,SAAS,CAAA,MAAA,EAASkE,KAAK,CAAA,CAC5B,CAAA;AAAA,QAGtB;AAAA,MACF,CAAC,CAAA,GACDnG,QAAAA,EACN,CAAA,EACF,CAAA;AAAA,MACC8C,YAAYS,OAAAA,CAAQyB,MAAAA,KAAW,qBAC9BY,eAAA,CAAC,qBAAA,EAAA,EAAsB,GAAIjF,KAAAA,EAAM,QAAA,EAAA;AAAA,QAAA,kBAAA;AAAA,QACdwB,MAAAA,CAAO6C,MAAAA,GAAS,CAAA,GAAI,CAAA,MAAA,EAAS7C,MAAM,CAAA,EAAA,CAAA,GAAO;AAAA,OAAA,EAC7D;AAAA,KAAA,EAEJ,GACF,CAAA,EACF;AAAA,GAAA,EACF,CAAA;AAEJ;AAEO,MAAMqE,KAAAA,GAAQC,iBACnB,CAAC;AAAA,EAAEzG,QAAAA;AAAAA,EAAUE,OAAAA;AAAAA,EAAS,GAAGS;AAAM,CAAA,EAAG+F,YAAAA,KAAiB;AACjDC,EAAAA,mBAAAA,EAAU;AACV,EAAA,uBACEf,eAAA,CAAC,wBACC,GAAIjF,KAAAA,EACJ,KAAKiG,mBAAAA,CAAU,CACbF,cACAG,CAAAA,IAAAA,KAAQ;AACN,IAAA,MAAMC,MAAAA,GAASD,IAAAA,EAAME,gBAAAA,CAAiB,yBAAyB,EAAE/B,MAAAA,KAAW,CAAA;AAC5E,IAAA,IAAI8B,MAAAA,EAAQ;AACVD,MAAAA,IAAAA,EAAMG,YAAAA,CAAa,UAAU,EAAE,CAAA;AAAA,IACjC,CAAA,MAAO;AACLH,MAAAA,IAAAA,EAAMI,gBAAgB,QAAQ,CAAA;AAAA,IAChC;AACAJ,IAAAA,IAAAA,EAAMG,YAAAA,CAAa,aAAA,EAAeF,MAAAA,CAAOI,QAAAA,EAAU,CAAA;AAAA,EACrD,CAAC,CACF,CAAA,EAED,QAAA,EAAA;AAAA,oBAAArB,cAAA,CAAC,mBAAiB3F,QAAAA,EAAAA,OAAAA,EAAQ,CAAA;AAAA,oBAC1B2F,cAAA,CAAC,sBAAoB7F,QAAAA,EAAS;AAAA,GAAA,EAChC,CAAA;AAEJ,CACF;AAEAwG,KAAAA,CAAM/F,WAAAA,GAAc,oBAAA;AAEpB,MAAM0G,SAAAA,GAAYhJ,uBAAAA,CAAOiJ,GAAAA,CAAG/I,UAAAA,CAAA;AAAA,EAAAC,WAAAA,EAAA;AAAA,CAAA,CAAA,CAAA,CAAA,UAAA,EAAA,GAAA,GACf,CAAC;AAAA,EAAE+I;AAAW,CAAA,KAAOA,UAAAA,GAAa,IAAI,CAAE,CAAA;AAG9C,MAAMC,IAAAA,GAAOb,iBAClB,CACE;AAAA,EACEzF,QAAAA,GAAW,KAAA;AAAA,EACXhB,QAAAA;AAAAA,EACAoB,KAAAA;AAAAA,EACAmG,SAAAA;AAAAA,EACA7F,QAAAA,EAAUC,YAAAA;AAAAA,EACVZ,KAAAA,GAAQ,EAAA;AAAA,EACRyG,IAAAA;AAAAA,EACAC,OAAAA;AAAAA,EACAC,WAAAA,EAAaC,eAAAA;AAAAA,EACb,GAAGhH;AACL,CAAA,EACA+F,YAAAA,KACG;AACH,EAAA,MAAM;AAAA,IAAE9D,WAAAA;AAAAA,IAAawC,iBAAAA;AAAAA,IAAmBH,QAAAA;AAAAA,IAAUI,aAAAA;AAAAA,IAAe3D;AAAAA,MAC/DkG,mBAAAA,EAAU;AACZ,EAAA,MAAMC,gBAAgBA,MAAM;AAC1B,IAAA,IAAI,CAAC7G,QAAAA,EAAU;AACbU,MAAAA,QAAAA,CAASX,KAAK,CAAA;AACd,MAAA,IAAI,OAAOY,gBAAgB,UAAA,EAAY;AACrCA,QAAAA,YAAAA,CAAaZ,KAAK,CAAA;AAAA,MACpB;AAAA,IACF;AAAA,EACF,CAAA;AACA,EAAA,MAAM2G,cAAiDjD,CAAAA,CAAAA,KAAK;AAC1D,IAAA,IAAIkD,eAAAA,EAAiB;AACnBA,MAAAA,eAAAA,CAAgBlD,CAAC,CAAA;AAAA,IACnB;AACA,IAAA,IAAI,CAACzD,QAAAA,EAAU;AACboE,MAAAA,iBAAAA,CAAkBrE,KAAK,CAAA;AAAA,IACzB;AAAA,EACF,CAAA;AAEA,EAAA,IAAIkE,QAAAA,CAASlE,KAAK,CAAA,EAAG;AACnB,IAAA,OAAO,IAAA;AAAA,EACT;AACA,EAAA,MAAM+G,YAAYzC,aAAAA,KAAkBtE,KAAAA;AAEpC,EAAA,uBACE6E,eAAA,CAAAmC,mBAAA,EAAA,EACE,QAAA,EAAA;AAAA,oBAAAnC,eAAA,CAACoC,2BAAA,EAAA,EACC,GAAIrH,KAAAA,EACJ,YAAA,EAAYI,KAAAA,EACZ,SAAS8G,aAAAA,EACT,WAAA,EACA,GAAA,EAAKnB,YAAAA,EACL,YAAA,EAAYoB,SAAAA,GAAY,YAAY,WAAA,EACpC,eAAA,EAAe9G,QAAAA,GAAW,IAAA,GAAOiH,MAAAA,EACjC,kBAAA,EAAkBrF,eAAe7B,KAAAA,GAAQ,MAAA,GAASkH,MAAAA,EAClD,uBAAA,EAAsB,EAAA,EAEtB,QAAA,EAAA;AAAA,sBAAApC,cAAA,CAACqC,uBAAA,EAAA,EACC,IAAA,EACA,OAAA,EAEC9G,QAAAA,EAAAA,KAAAA,IAASpB,QAAAA,EACZ,CAAA;AAAA,sBACA6F,cAAA,CAAC,aACC,EAAA,EAAIsC,SAAAA,EACJ,MAAK,OAAA,EACL,IAAA,EAAK,IAAA,EACL,UAAA,EAAYL,SAAAA,EAAU;AAAA,KAAA,EAE1B,CAAA;AAAA,IACCP,SAAAA,oBAAa1B,cAAA,CAACuC,mBAAA,EAAA,EAAU,IAAA,EAAK,IAAA,EAAI;AAAA,GAAA,EACpC,CAAA;AAEJ,CACF;AAEAd,IAAAA,CAAK7G,WAAAA,GAAc,mBAAA;AAEnBgB,YAAAA,CAAa+E,KAAAA,GAAQA,KAAAA;AACrB/E,YAAAA,CAAa6F,IAAAA,GAAOA,IAAAA;;;;;;;"}
@@ -51,6 +51,43 @@
51
51
  border-radius: var(--click-button-group-radii-button-borderless-all);
52
52
  }
53
53
 
54
+ .button_icon-only_default__1hthE {
55
+ padding: var(--click-button-group-space-icon-default-y)
56
+ var(--click-button-group-space-icon-default-x);
57
+ border: 1px solid var(--click-button-group-color-stroke-default);
58
+ }
59
+
60
+ .button_icon-only_default__1hthE:hover {
61
+ border-color: var(--click-button-group-color-stroke-hover);
62
+ }
63
+
64
+ .button_icon-only_default__1hthE[aria-pressed='true'] {
65
+ border-color: var(--click-button-group-color-stroke-active);
66
+ }
67
+
68
+ .button_icon-only_default__1hthE:disabled {
69
+ border-color: var(--click-button-group-color-stroke-disabled);
70
+ }
71
+
72
+ .button_icon-only_default__1hthE[aria-pressed='true']:disabled {
73
+ border-color: var(--click-button-group-color-stroke-disabled-active);
74
+ }
75
+
76
+ .button_icon-only_borderless__04LpP {
77
+ padding: var(--click-button-group-space-icon-borderless-y)
78
+ var(--click-button-group-space-icon-borderless-x);
79
+ }
80
+
81
+ .button__icon__HLIjg {
82
+ display: flex;
83
+ justify-content: center;
84
+ align-items: center;
85
+ }
86
+
87
+ .button__icon_height_line__fURvB {
88
+ height: 1lh;
89
+ }
90
+
54
91
  .button_fillwidth__lqIVG {
55
92
  flex: 1;
56
93
  }
@@ -9,6 +9,8 @@ const buttongroup_fillwidth = "buttongroup_fillwidth__WzJlu";
9
9
  const button = "button__w1Is2";
10
10
  const button_type_default = "button_type_default__G9UA1";
11
11
  const button_type_borderless = "button_type_borderless__PydeS";
12
+ const button__icon = "button__icon__HLIjg";
13
+ const button__icon_height_line = "button__icon_height_line__fURvB";
12
14
  const button_fillwidth = "button_fillwidth__lqIVG";
13
15
  const styles = {
14
16
  buttongroup: buttongroup,
@@ -18,10 +20,16 @@ const styles = {
18
20
  button: button,
19
21
  button_type_default: button_type_default,
20
22
  button_type_borderless: button_type_borderless,
23
+ "button_icon-only_default": "button_icon-only_default__1hthE",
24
+ "button_icon-only_borderless": "button_icon-only_borderless__04LpP",
25
+ button__icon: button__icon,
26
+ button__icon_height_line: button__icon_height_line,
21
27
  button_fillwidth: button_fillwidth
22
28
  };
23
29
 
24
30
  exports.button = button;
31
+ exports.button__icon = button__icon;
32
+ exports.button__icon_height_line = button__icon_height_line;
25
33
  exports.button_fillwidth = button_fillwidth;
26
34
  exports.button_type_borderless = button_type_borderless;
27
35
  exports.button_type_default = button_type_default;
@@ -1 +1 @@
1
- {"version":3,"file":"ButtonGroup.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"ButtonGroup.module.css.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -7,6 +7,7 @@ const jsxRuntime = require('react/jsx-runtime');
7
7
  const react = require('react');
8
8
  const cva = require('../../lib/cva.cjs');
9
9
  const ButtonGroup_module = require('./ButtonGroup.module.css.cjs');
10
+ const Icon = require('../Icon/index.cjs');
10
11
  const classVarianceAuthority = require('class-variance-authority');
11
12
 
12
13
  const wrapperVariants = classVarianceAuthority.cva(ButtonGroup_module.default.buttongroup, {
@@ -29,12 +30,26 @@ const buttonVariants = classVarianceAuthority.cva(ButtonGroup_module.default.but
29
30
  default: ButtonGroup_module.default["button_type_default"],
30
31
  borderless: ButtonGroup_module.default["button_type_borderless"]
31
32
  },
33
+ iconOnly: {
34
+ true: "",
35
+ false: ""
36
+ },
32
37
  fillWidth: {
33
38
  true: ButtonGroup_module.default["button_fillwidth"]
34
39
  }
35
40
  },
41
+ compoundVariants: [{
42
+ iconOnly: true,
43
+ type: "default",
44
+ class: ButtonGroup_module.default["button_icon-only_default"]
45
+ }, {
46
+ iconOnly: true,
47
+ type: "borderless",
48
+ class: ButtonGroup_module.default["button_icon-only_borderless"]
49
+ }],
36
50
  defaultVariants: {
37
- type: "default"
51
+ type: "default",
52
+ iconOnly: false
38
53
  }
39
54
  });
40
55
  const normalizeToSet = (value) => {
@@ -56,6 +71,7 @@ const ButtonGroup = react.forwardRef(({
56
71
  fillWidth = false,
57
72
  onClick,
58
73
  type = "default",
74
+ iconOnly = false,
59
75
  multiple = false,
60
76
  className,
61
77
  ...props
@@ -83,14 +99,17 @@ const ButtonGroup = react.forwardRef(({
83
99
  const buttons = options.map(({
84
100
  value,
85
101
  label,
102
+ icon,
86
103
  className: optionClassName,
104
+ "aria-label": ariaLabel,
87
105
  ...buttonProps
88
106
  }) => {
89
107
  const isActive = isValueSelected(value, currentSelection);
90
108
  return /* @__PURE__ */ jsxRuntime.jsx("button", { className: cva.cn(buttonVariants({
91
109
  type,
110
+ iconOnly,
92
111
  fillWidth
93
- }), optionClassName), "aria-pressed": isActive, onClick: () => onButtonGroupClickCommonHandler(value), role: "button", ...buttonProps, children: label }, value);
112
+ }), optionClassName), "aria-pressed": isActive, onClick: () => onButtonGroupClickCommonHandler(value), role: "button", ...buttonProps, "aria-label": ariaLabel ?? (iconOnly && icon ? icon.toString() : void 0), children: iconOnly && icon ? /* @__PURE__ */ jsxRuntime.jsx("span", { className: cva.cn(ButtonGroup_module.default.button__icon, type === "borderless" && ButtonGroup_module.default["button__icon_height_line"]), children: /* @__PURE__ */ jsxRuntime.jsx(Icon.Icon, { name: icon, size: "sm", "aria-hidden": true }) }) : label }, value);
94
113
  });
95
114
  return /* @__PURE__ */ jsxRuntime.jsx("div", { ref, ...props, className: cva.cn(wrapperVariants({
96
115
  type,
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["import { forwardRef, useCallback, useState } from 'react';\nimport { cn, cva } from '@/lib/cva';\nimport { ButtonGroupProps, SelectionValue } from './ButtonGroup.types';\nimport styles from './ButtonGroup.module.css';\n\nconst wrapperVariants = cva(styles.buttongroup, {\n variants: {\n type: {\n default: styles['buttongroup_type_default'],\n borderless: styles['buttongroup_type_borderless'],\n },\n fillWidth: {\n true: styles['buttongroup_fillwidth'],\n },\n },\n defaultVariants: { type: 'default' },\n});\n\nconst buttonVariants = cva(styles.button, {\n variants: {\n type: {\n default: styles['button_type_default'],\n borderless: styles['button_type_borderless'],\n },\n fillWidth: {\n true: styles['button_fillwidth'],\n },\n },\n defaultVariants: { type: 'default' },\n});\n\nconst normalizeToSet = (value: SelectionValue | undefined): Set<string> => {\n if (value === undefined) {\n return new Set();\n }\n if (value instanceof Set) {\n return new Set(value);\n }\n return new Set([value]);\n};\n\nconst isValueSelected = (value: string, selection: Set<string>): boolean => {\n return selection.has(value);\n};\n\nexport const ButtonGroup = forwardRef<HTMLDivElement, ButtonGroupProps>(\n (\n {\n options,\n selected,\n defaultSelected,\n fillWidth = false,\n onClick,\n type = 'default',\n multiple = false,\n className,\n ...props\n },\n ref\n ) => {\n const [internalSelection, setInternalSelection] = useState<Set<string>>(() =>\n normalizeToSet(defaultSelected)\n );\n\n // Use `selected` if the parent needs to own\n // or sync the selection state management (controlled\n // by consumer app)\n // Use `defaultSelected` if the component can manage\n // its own state independently (uncontrolled)\n const isControlled = selected !== undefined;\n const currentSelection = isControlled ? normalizeToSet(selected) : internalSelection;\n\n const onButtonGroupClickCommonHandler = useCallback(\n (value: string) => {\n let newSelection: Set<string>;\n\n if (multiple) {\n newSelection = new Set(currentSelection);\n if (newSelection.has(value)) {\n newSelection.delete(value);\n } else {\n newSelection.add(value);\n }\n } else {\n newSelection = new Set([value]);\n }\n\n if (!isControlled) {\n setInternalSelection(newSelection);\n }\n\n // WARN: Single mode returns string\n // while multiple mode returns Set (DS)\n onClick?.(value, multiple ? newSelection : value);\n },\n [currentSelection, multiple, isControlled, onClick]\n );\n\n const buttons = options.map(\n ({ value, label, className: optionClassName, ...buttonProps }) => {\n const isActive = isValueSelected(value, currentSelection);\n\n return (\n <button\n key={value}\n className={cn(buttonVariants({ type, fillWidth }), optionClassName)}\n aria-pressed={isActive}\n onClick={() => onButtonGroupClickCommonHandler(value)}\n role=\"button\"\n {...buttonProps}\n >\n {label}\n </button>\n );\n }\n );\n\n return (\n <div\n ref={ref}\n {...props}\n className={cn(wrapperVariants({ type, fillWidth }), className)}\n role=\"group\"\n >\n {buttons}\n </div>\n );\n }\n);\n\nButtonGroup.displayName = 'ButtonGroup';\n"],"names":["wrapperVariants","cva","styles","buttongroup","variants","type","default","borderless","fillWidth","true","defaultVariants","buttonVariants","button","normalizeToSet","value","undefined","Set","isValueSelected","selection","has","ButtonGroup","forwardRef","options","selected","defaultSelected","onClick","multiple","className","props","ref","internalSelection","setInternalSelection","useState","isControlled","currentSelection","onButtonGroupClickCommonHandler","useCallback","newSelection","delete","add","buttons","map","label","optionClassName","buttonProps","isActive","jsx","cn","displayName"],"mappings":";;;;;;;;;;AAKA,MAAMA,eAAAA,GAAkBC,0BAAAA,CAAIC,0BAAAA,CAAOC,WAAAA,EAAa;AAAA,EAC9CC,QAAAA,EAAU;AAAA,IACRC,IAAAA,EAAM;AAAA,MACJC,OAAAA,EAASJ,2BAAO,0BAA0B,CAAA;AAAA,MAC1CK,UAAAA,EAAYL,2BAAO,6BAA6B;AAAA,KAClD;AAAA,IACAM,SAAAA,EAAW;AAAA,MACTC,IAAAA,EAAMP,2BAAO,uBAAuB;AAAA;AACtC,GACF;AAAA,EACAQ,eAAAA,EAAiB;AAAA,IAAEL,IAAAA,EAAM;AAAA;AAC3B,CAAC,CAAA;AAED,MAAMM,cAAAA,GAAiBV,0BAAAA,CAAIC,0BAAAA,CAAOU,MAAAA,EAAQ;AAAA,EACxCR,QAAAA,EAAU;AAAA,IACRC,IAAAA,EAAM;AAAA,MACJC,OAAAA,EAASJ,2BAAO,qBAAqB,CAAA;AAAA,MACrCK,UAAAA,EAAYL,2BAAO,wBAAwB;AAAA,KAC7C;AAAA,IACAM,SAAAA,EAAW;AAAA,MACTC,IAAAA,EAAMP,2BAAO,kBAAkB;AAAA;AACjC,GACF;AAAA,EACAQ,eAAAA,EAAiB;AAAA,IAAEL,IAAAA,EAAM;AAAA;AAC3B,CAAC,CAAA;AAED,MAAMQ,cAAAA,GAAiBA,CAACC,KAAAA,KAAmD;AACzE,EAAA,IAAIA,UAAUC,MAAAA,EAAW;AACvB,IAAA,2BAAWC,GAAAA,EAAI;AAAA,EACjB;AACA,EAAA,IAAIF,iBAAiBE,GAAAA,EAAK;AACxB,IAAA,OAAO,IAAIA,IAAIF,KAAK,CAAA;AAAA,EACtB;AACA,EAAA,uBAAO,IAAIE,GAAAA,CAAI,CAACF,KAAK,CAAC,CAAA;AACxB,CAAA;AAEA,MAAMG,eAAAA,GAAkBA,CAACH,KAAAA,EAAeI,SAAAA,KAAoC;AAC1E,EAAA,OAAOA,SAAAA,CAAUC,IAAIL,KAAK,CAAA;AAC5B,CAAA;AAEO,MAAMM,WAAAA,GAAcC,iBACzB,CACE;AAAA,EACEC,OAAAA;AAAAA,EACAC,QAAAA;AAAAA,EACAC,eAAAA;AAAAA,EACAhB,SAAAA,GAAY,KAAA;AAAA,EACZiB,OAAAA;AAAAA,EACApB,IAAAA,GAAO,SAAA;AAAA,EACPqB,QAAAA,GAAW,KAAA;AAAA,EACXC,SAAAA;AAAAA,EACA,GAAGC;AACL,CAAA,EACAC,GAAAA,KACG;AACH,EAAA,MAAM,CAACC,mBAAmBC,oBAAoB,CAAA,GAAIC,eAAsB,MACtEnB,cAAAA,CAAeW,eAAe,CAChC,CAAA;AAOA,EAAA,MAAMS,eAAeV,QAAAA,KAAaR,MAAAA;AAClC,EAAA,MAAMmB,gBAAAA,GAAmBD,YAAAA,GAAepB,cAAAA,CAAeU,QAAQ,CAAA,GAAIO,iBAAAA;AAEnE,EAAA,MAAMK,+BAAAA,GAAkCC,iBAAAA,CACtC,CAACtB,KAAAA,KAAkB;AACjB,IAAA,IAAIuB,YAAAA;AAEJ,IAAA,IAAIX,QAAAA,EAAU;AACZW,MAAAA,YAAAA,GAAe,IAAIrB,IAAIkB,gBAAgB,CAAA;AACvC,MAAA,IAAIG,YAAAA,CAAalB,GAAAA,CAAIL,KAAK,CAAA,EAAG;AAC3BuB,QAAAA,YAAAA,CAAaC,OAAOxB,KAAK,CAAA;AAAA,MAC3B,CAAA,MAAO;AACLuB,QAAAA,YAAAA,CAAaE,IAAIzB,KAAK,CAAA;AAAA,MACxB;AAAA,IACF,CAAA,MAAO;AACLuB,MAAAA,YAAAA,mBAAe,IAAIrB,GAAAA,CAAI,CAACF,KAAK,CAAC,CAAA;AAAA,IAChC;AAEA,IAAA,IAAI,CAACmB,YAAAA,EAAc;AACjBF,MAAAA,oBAAAA,CAAqBM,YAAY,CAAA;AAAA,IACnC;AAIAZ,IAAAA,OAAAA,GAAUX,KAAAA,EAAOY,QAAAA,GAAWW,YAAAA,GAAevB,KAAK,CAAA;AAAA,EAClD,GACA,CAACoB,gBAAAA,EAAkBR,QAAAA,EAAUO,YAAAA,EAAcR,OAAO,CACpD,CAAA;AAEA,EAAA,MAAMe,OAAAA,GAAUlB,OAAAA,CAAQmB,GAAAA,CACtB,CAAC;AAAA,IAAE3B,KAAAA;AAAAA,IAAO4B,KAAAA;AAAAA,IAAOf,SAAAA,EAAWgB,eAAAA;AAAAA,IAAiB,GAAGC;AAAAA,GAAY,KAAM;AAChE,IAAA,MAAMC,QAAAA,GAAW5B,eAAAA,CAAgBH,KAAAA,EAAOoB,gBAAgB,CAAA;AAExD,IAAA,uBACEY,cAAA,CAAC,QAAA,EAAA,EAEC,SAAA,EAAWC,MAAAA,CAAGpC,cAAAA,CAAe;AAAA,MAAEN,IAAAA;AAAAA,MAAMG;AAAAA,KAAW,CAAA,EAAGmC,eAAe,CAAA,EAClE,cAAA,EAAcE,UACd,OAAA,EAAS,MAAMV,+BAAAA,CAAgCrB,KAAK,GACpD,IAAA,EAAK,QAAA,EACL,GAAI8B,WAAAA,EAEHF,mBAPI5B,KAQP,CAAA;AAAA,EAEJ,CACF,CAAA;AAEA,EAAA,sCACG,KAAA,EAAA,EACC,GAAA,KACIc,KAAAA,EACJ,SAAA,EAAWmB,OAAG/C,eAAAA,CAAgB;AAAA,IAAEK,IAAAA;AAAAA,IAAMG;AAAAA,GAAW,CAAA,EAAGmB,SAAS,CAAA,EAC7D,IAAA,EAAK,SAEJa,QAAAA,EAAAA,OAAAA,EACH,CAAA;AAEJ,CACF;AAEApB,WAAAA,CAAY4B,WAAAA,GAAc,aAAA;;;;"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../../src/components/ButtonGroup/ButtonGroup.tsx"],"sourcesContent":["import { forwardRef, useCallback, useState } from 'react';\nimport { Icon } from '@/components/Icon';\nimport { cn, cva } from '@/lib/cva';\nimport { ButtonGroupProps, SelectionValue } from './ButtonGroup.types';\nimport styles from './ButtonGroup.module.css';\n\nconst wrapperVariants = cva(styles.buttongroup, {\n variants: {\n type: {\n default: styles['buttongroup_type_default'],\n borderless: styles['buttongroup_type_borderless'],\n },\n fillWidth: {\n true: styles['buttongroup_fillwidth'],\n },\n },\n defaultVariants: { type: 'default' },\n});\n\nconst buttonVariants = cva(styles.button, {\n variants: {\n type: {\n default: styles['button_type_default'],\n borderless: styles['button_type_borderless'],\n },\n iconOnly: {\n true: '',\n false: '',\n },\n fillWidth: {\n true: styles['button_fillwidth'],\n },\n },\n compoundVariants: [\n {\n iconOnly: true,\n type: 'default',\n class: styles['button_icon-only_default'],\n },\n {\n iconOnly: true,\n type: 'borderless',\n class: styles['button_icon-only_borderless'],\n },\n ],\n defaultVariants: { type: 'default', iconOnly: false },\n});\n\nconst normalizeToSet = (value: SelectionValue | undefined): Set<string> => {\n if (value === undefined) {\n return new Set();\n }\n if (value instanceof Set) {\n return new Set(value);\n }\n return new Set([value]);\n};\n\nconst isValueSelected = (value: string, selection: Set<string>): boolean => {\n return selection.has(value);\n};\n\nexport const ButtonGroup = forwardRef<HTMLDivElement, ButtonGroupProps>(\n (\n {\n options,\n selected,\n defaultSelected,\n fillWidth = false,\n onClick,\n type = 'default',\n iconOnly = false,\n multiple = false,\n className,\n ...props\n },\n ref\n ) => {\n const [internalSelection, setInternalSelection] = useState<Set<string>>(() =>\n normalizeToSet(defaultSelected)\n );\n\n // Use `selected` if the parent needs to own\n // or sync the selection state management (controlled\n // by consumer app)\n // Use `defaultSelected` if the component can manage\n // its own state independently (uncontrolled)\n const isControlled = selected !== undefined;\n const currentSelection = isControlled ? normalizeToSet(selected) : internalSelection;\n\n const onButtonGroupClickCommonHandler = useCallback(\n (value: string) => {\n let newSelection: Set<string>;\n\n if (multiple) {\n newSelection = new Set(currentSelection);\n if (newSelection.has(value)) {\n newSelection.delete(value);\n } else {\n newSelection.add(value);\n }\n } else {\n newSelection = new Set([value]);\n }\n\n if (!isControlled) {\n setInternalSelection(newSelection);\n }\n\n // WARN: Single mode returns string\n // while multiple mode returns Set (DS)\n onClick?.(value, multiple ? newSelection : value);\n },\n [currentSelection, multiple, isControlled, onClick]\n );\n\n const buttons = options.map(\n ({\n value,\n label,\n icon,\n className: optionClassName,\n 'aria-label': ariaLabel,\n ...buttonProps\n }) => {\n const isActive = isValueSelected(value, currentSelection);\n\n return (\n <button\n key={value}\n className={cn(buttonVariants({ type, iconOnly, fillWidth }), optionClassName)}\n aria-pressed={isActive}\n onClick={() => onButtonGroupClickCommonHandler(value)}\n role=\"button\"\n {...buttonProps}\n aria-label={ariaLabel ?? (iconOnly && icon ? icon.toString() : undefined)}\n >\n {iconOnly && icon ? (\n <span\n className={cn(\n styles.button__icon,\n type === 'borderless' && styles['button__icon_height_line']\n )}\n >\n <Icon\n name={icon}\n size=\"sm\"\n aria-hidden\n />\n </span>\n ) : (\n label\n )}\n </button>\n );\n }\n );\n\n return (\n <div\n ref={ref}\n {...props}\n className={cn(wrapperVariants({ type, fillWidth }), className)}\n role=\"group\"\n >\n {buttons}\n </div>\n );\n }\n);\n\nButtonGroup.displayName = 'ButtonGroup';\n"],"names":["wrapperVariants","cva","styles","buttongroup","variants","type","default","borderless","fillWidth","true","defaultVariants","buttonVariants","button","iconOnly","false","compoundVariants","class","normalizeToSet","value","undefined","Set","isValueSelected","selection","has","ButtonGroup","forwardRef","options","selected","defaultSelected","onClick","multiple","className","props","ref","internalSelection","setInternalSelection","useState","isControlled","currentSelection","onButtonGroupClickCommonHandler","useCallback","newSelection","delete","add","buttons","map","label","icon","optionClassName","ariaLabel","buttonProps","isActive","jsx","cn","toString","button__icon","Icon","displayName"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ require("./CardPrimary.css");
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
@@ -1,3 +1,4 @@
1
+ require("./Collapsible.css");
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
@@ -1,4 +1,8 @@
1
- .container__JMoiT {
1
+ /* Kept at zero specificity via :where() so that modifier classes (e.g.
2
+ .container_padding_md) and downstream styled-components overrides on a
3
+ styled(Container) both win without needing a specificity hack — Container is
4
+ a CSS Module, whose rules otherwise beat equal-specificity styled-components. */
5
+ :where(.container__JMoiT) {
2
6
  /* These props are only emitted as inline custom properties when the
3
7
  matching Container prop is set (grow, shrink, fillHeight, minHeight,
4
8
  maxHeight, overflow). Custom properties inherit by default, so without
@@ -10,6 +10,7 @@ const GenericMenu = require('../GenericMenu/index.cjs');
10
10
  const PopoverArrow = require('../Assets/Icons/Popover-Arrow.cjs');
11
11
  const IconWrapper = require('../IconWrapper/index.cjs');
12
12
  const useInputModality = require('../../hooks/internal/useInputModality.cjs');
13
+ const PortalContext = require('../../providers/PortalContext.cjs');
13
14
  const Icon = require('../Icon/index.cjs');
14
15
 
15
16
  function _interopNamespace(e) {
@@ -87,6 +88,7 @@ const RightMenuContent = styledComponents.styled(GenericMenu.GenericMenuPanel).w
87
88
  const ContextMenuContent = ({
88
89
  sub,
89
90
  children,
91
+ container,
90
92
  showArrow,
91
93
  // TODO: remove deprecated side and align
92
94
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -97,7 +99,8 @@ const ContextMenuContent = ({
97
99
  }) => {
98
100
  const ContentElement = sub ? RightMenu__namespace.SubContent : RightMenu__namespace.Content;
99
101
  const inputModalityProps = useInputModality.useInputModality();
100
- return /* @__PURE__ */ jsxRuntime.jsx(RightMenu__namespace.Portal, { children: /* @__PURE__ */ jsxRuntime.jsxs(RightMenuContent, { ...props, $type: "context-menu", $showArrow: showArrow, as: ContentElement, ...inputModalityProps, children: [
102
+ const portalContainer = PortalContext.useResolvedPortalContainer(container);
103
+ return /* @__PURE__ */ jsxRuntime.jsx(RightMenu__namespace.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxRuntime.jsxs(RightMenuContent, { ...props, $type: "context-menu", $showArrow: showArrow, as: ContentElement, ...inputModalityProps, children: [
101
104
  showArrow && /* @__PURE__ */ jsxRuntime.jsx(GenericMenu.Arrow, { asChild: true, as: RightMenu__namespace.Arrow, width: 20, height: 10, children: /* @__PURE__ */ jsxRuntime.jsx(PopoverArrow.default, { className: "popover-arrow" }) }),
102
105
  children
103
106
  ] }) });