impact-nova 2.6.3 → 3.0.0-alpha.0

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 (254) hide show
  1. package/dist/components/data/ag-grid-react/ag-grid-cell-components.d.ts +9 -0
  2. package/dist/components/data/ag-grid-react/ag-grid-list.d.ts +16 -0
  3. package/dist/components/data/ag-grid-react/ag-grid-list.js +23 -0
  4. package/dist/components/data/ag-grid-react/ag-grid.types.d.ts +7 -0
  5. package/dist/components/data/ag-grid-react/cell-renderers/editors/list-select-cell-editor.d.ts +14 -0
  6. package/dist/components/data/ag-grid-react/cell-renderers/editors/list-select-cell-editor.js +70 -0
  7. package/dist/components/data/ag-grid-react/cell-renderers/editors/select-cell-editor.d.ts +10 -5
  8. package/dist/components/data/ag-grid-react/cell-renderers/editors/select-cell-editor.js +73 -41
  9. package/dist/components/data/ag-grid-react/cell-renderers/index.d.ts +7 -0
  10. package/dist/components/data/ag-grid-react/cell-renderers/index.js +42 -36
  11. package/dist/components/data/ag-grid-react/cell-renderers/list-select-display-renderer.d.ts +19 -0
  12. package/dist/components/data/ag-grid-react/cell-renderers/list-select-display-renderer.js +89 -0
  13. package/dist/components/data/ag-grid-react/cell-renderers/select-ai-insight-affordance.d.ts +28 -0
  14. package/dist/components/data/ag-grid-react/cell-renderers/select-ai-insight-affordance.js +96 -0
  15. package/dist/components/data/ag-grid-react/cell-renderers/select-display-renderer.d.ts +30 -10
  16. package/dist/components/data/ag-grid-react/cell-renderers/select-display-renderer.js +72 -24
  17. package/dist/components/data/ag-grid-react/cell-renderers/style-description-display-renderer.d.ts +42 -0
  18. package/dist/components/data/ag-grid-react/cell-renderers/style-description-display-renderer.js +86 -0
  19. package/dist/components/data/ag-grid-react/index.d.ts +1 -1
  20. package/dist/components/data/ag-grid-react/index.js +162 -146
  21. package/dist/components/data/data-table/data-table.js +85 -82
  22. package/dist/components/data/data-table/data-table.types.d.ts +5 -0
  23. package/dist/components/data/expandable-list-item/expandable-list-item-attributes.js +2 -3
  24. package/dist/components/data/expandable-list-item/expandable-list-item-metrics.js +2 -3
  25. package/dist/components/data/expandable-list-item/sku-next-page-coordinator.d.ts +14 -0
  26. package/dist/components/data/expandable-list-item/sku-strip-lookahead.d.ts +26 -0
  27. package/dist/components/data/expandable-list-item/useServerSkuInfinitePages.d.ts +10 -0
  28. package/dist/components/data/expandable-list-item/useSkuStripVirtualizer.d.ts +30 -0
  29. package/dist/components/data/expandable-list-item/virtualized-responsive-grid.catalog.d.ts +81 -0
  30. package/dist/components/data/expandable-list-item/virtualized-responsive-grid.item-grid.d.ts +1 -0
  31. package/dist/components/data/expandable-list-item/virtualized-responsive-grid.product-card.d.ts +7 -0
  32. package/dist/components/data/expandable-list-item/virtualized-responsive-grid.sku-picker.d.ts +2 -0
  33. package/dist/components/data-display/chart/chart-heatmap-demos.d.ts +3 -0
  34. package/dist/components/data-display/chart/chart-heatmap-play.d.ts +9 -0
  35. package/dist/components/data-display/chart/chart.category-cluster-heatmap.stories-data.d.ts +22 -0
  36. package/dist/components/data-display/chart/chart.diverging-heatmap.stories-data.d.ts +43 -0
  37. package/dist/components/data-display/chart/chart.js +100 -93
  38. package/dist/components/data-display/chart/chart.types.d.ts +10 -0
  39. package/dist/components/data-display/chart/chart.utils.d.ts +14 -2
  40. package/dist/components/data-display/chart/chart.utils.js +132 -35
  41. package/dist/components/data-display/chart/index.js +15 -13
  42. package/dist/components/data-display/chart/resolve-highcharts-options.js +19 -14
  43. package/dist/components/data-display/globe-map/globe-map.d.ts +8 -0
  44. package/dist/components/data-display/globe-map/globe-map.js +161 -0
  45. package/dist/components/data-display/globe-map/globe-map.stories-data.d.ts +12 -0
  46. package/dist/components/data-display/globe-map/globe-map.types.d.ts +83 -0
  47. package/dist/components/data-display/globe-map/globe-map.utils.d.ts +115 -0
  48. package/dist/components/data-display/globe-map/globe-map.utils.js +259 -0
  49. package/dist/components/data-display/globe-map/globe-map.variants.d.ts +19 -0
  50. package/dist/components/data-display/globe-map/globe-map.variants.js +80 -0
  51. package/dist/components/data-display/globe-map/index.d.ts +2 -0
  52. package/dist/components/data-display/globe-map/index.js +10 -0
  53. package/dist/components/data-display/globe-map/internals/globe-countries-110m.json.d.ts +4 -0
  54. package/dist/components/data-display/globe-map/internals/globe-countries-110m.json.js +7 -0
  55. package/dist/components/data-display/globe-map/internals/globe-map-context.d.ts +25 -0
  56. package/dist/components/data-display/globe-map/internals/globe-map-context.js +19 -0
  57. package/dist/components/data-display/globe-map/internals/globe-map-legend.d.ts +2 -0
  58. package/dist/components/data-display/globe-map/internals/globe-map-legend.js +51 -0
  59. package/dist/components/data-display/globe-map/internals/globe-map-point-card-carousel.d.ts +6 -0
  60. package/dist/components/data-display/globe-map/internals/globe-map-point-card-carousel.js +119 -0
  61. package/dist/components/data-display/globe-map/internals/globe-map-point-card.d.ts +2 -0
  62. package/dist/components/data-display/globe-map/internals/globe-map-point-card.js +106 -0
  63. package/dist/components/data-display/globe-map/internals/globe-map-scene.d.ts +17 -0
  64. package/dist/components/data-display/globe-map/internals/globe-map-scene.js +218 -0
  65. package/dist/components/data-display/globe-map/internals/globe-map-tooltip.d.ts +2 -0
  66. package/dist/components/data-display/globe-map/internals/globe-map-tooltip.js +33 -0
  67. package/dist/components/data-display/globe-map/internals/use-globe-map-scene.d.ts +45 -0
  68. package/dist/components/data-display/globe-map/internals/use-globe-map-scene.js +270 -0
  69. package/dist/components/data-display/hex-tilemap/hex-tilemap.d.ts +9 -0
  70. package/dist/components/data-display/hex-tilemap/hex-tilemap.js +94 -0
  71. package/dist/components/data-display/hex-tilemap/hex-tilemap.stories-data.d.ts +7 -0
  72. package/dist/components/data-display/hex-tilemap/hex-tilemap.types.d.ts +43 -0
  73. package/dist/components/data-display/hex-tilemap/hex-tilemap.variants.d.ts +11 -0
  74. package/dist/components/data-display/hex-tilemap/hex-tilemap.variants.js +47 -0
  75. package/dist/components/data-display/hex-tilemap/index.d.ts +2 -0
  76. package/dist/components/data-display/hex-tilemap/index.js +12 -0
  77. package/dist/components/data-display/hex-tilemap/internals/hex-camera.d.ts +40 -0
  78. package/dist/components/data-display/hex-tilemap/internals/hex-camera.js +103 -0
  79. package/dist/components/data-display/hex-tilemap/internals/hex-country-lattices.d.ts +9 -0
  80. package/dist/components/data-display/hex-tilemap/internals/hex-country-lattices.js +1387 -0
  81. package/dist/components/data-display/hex-tilemap/internals/hex-geometry.d.ts +21 -0
  82. package/dist/components/data-display/hex-tilemap/internals/hex-geometry.js +82 -0
  83. package/dist/components/data-display/hex-tilemap/internals/hex-lattice.d.ts +18 -0
  84. package/dist/components/data-display/hex-tilemap/internals/hex-lattice.js +47 -0
  85. package/dist/components/data-display/hex-tilemap/internals/hex-layout.d.ts +10 -0
  86. package/dist/components/data-display/hex-tilemap/internals/hex-layout.js +35 -0
  87. package/dist/components/data-display/hex-tilemap/internals/hex-new-zealand-grid.d.ts +31 -0
  88. package/dist/components/data-display/hex-tilemap/internals/hex-new-zealand-grid.js +138 -0
  89. package/dist/components/data-display/hex-tilemap/internals/hex-regions.d.ts +6 -0
  90. package/dist/components/data-display/hex-tilemap/internals/hex-regions.js +18 -0
  91. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-context.d.ts +24 -0
  92. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-context.js +19 -0
  93. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-legend.d.ts +2 -0
  94. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-legend.js +51 -0
  95. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-tooltip.d.ts +2 -0
  96. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-tooltip.js +36 -0
  97. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-viewport.d.ts +3 -0
  98. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-viewport.js +147 -0
  99. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-zoom.d.ts +13 -0
  100. package/dist/components/data-display/hex-tilemap/internals/hex-tilemap-zoom.js +99 -0
  101. package/dist/components/data-display/hex-tilemap/internals/hex-world-grid.d.ts +8 -0
  102. package/dist/components/data-display/hex-tilemap/internals/use-hex-camera.d.ts +27 -0
  103. package/dist/components/data-display/hex-tilemap/internals/use-hex-camera.js +137 -0
  104. package/dist/components/data-display/notch-card/index.d.ts +2 -0
  105. package/dist/components/data-display/notch-card/index.js +6 -0
  106. package/dist/components/data-display/notch-card/notch-card.d.ts +7 -0
  107. package/dist/components/data-display/notch-card/notch-card.js +151 -0
  108. package/dist/components/data-display/notch-card/notch-card.path.d.ts +19 -0
  109. package/dist/components/data-display/notch-card/notch-card.path.js +118 -0
  110. package/dist/components/data-display/notch-card/notch-card.types.d.ts +15 -0
  111. package/dist/components/data-display/notch-card/notch-card.variants.d.ts +15 -0
  112. package/dist/components/data-display/notch-card/notch-card.variants.js +86 -0
  113. package/dist/components/feedback/hover-card/hover-card.d.ts +3 -1
  114. package/dist/components/feedback/hover-card/hover-card.js +28 -24
  115. package/dist/components/feedback/tooltip/overflow-tooltip.d.ts +1 -1
  116. package/dist/components/feedback/tooltip/overflow-tooltip.js +63 -57
  117. package/dist/components/feedback/tooltip/overflow-tooltip.types.d.ts +4 -0
  118. package/dist/components/feedback/tooltip/tab-tooltip-render.js +2 -3
  119. package/dist/components/flows/command-palette/shortcut-settings.js +10 -10
  120. package/dist/components/flows/filter-panel/filter-panel.js +4 -4
  121. package/dist/components/flows/filter-strip/index.d.ts +1 -0
  122. package/dist/components/flows/filter-strip/index.js +4 -2
  123. package/dist/components/flows/iris-chat/index.d.ts +10 -0
  124. package/dist/components/flows/iris-chat/index.js +55 -0
  125. package/dist/components/flows/iris-chat/iris-chat-artifact.d.ts +4 -0
  126. package/dist/components/flows/iris-chat/iris-chat-artifact.js +125 -0
  127. package/dist/components/flows/iris-chat/iris-chat-composer.d.ts +3 -0
  128. package/dist/components/flows/iris-chat/iris-chat-composer.js +297 -0
  129. package/dist/components/flows/iris-chat/iris-chat-context.d.ts +14 -0
  130. package/dist/components/flows/iris-chat/iris-chat-context.js +23 -0
  131. package/dist/components/flows/iris-chat/iris-chat-icons.d.ts +18 -0
  132. package/dist/components/flows/iris-chat/iris-chat-icons.js +176 -0
  133. package/dist/components/flows/iris-chat/iris-chat-markdown.d.ts +3 -0
  134. package/dist/components/flows/iris-chat/iris-chat-markdown.js +62 -0
  135. package/dist/components/flows/iris-chat/iris-chat-menu.d.ts +15 -0
  136. package/dist/components/flows/iris-chat/iris-chat-menu.js +259 -0
  137. package/dist/components/flows/iris-chat/iris-chat-prompt.d.ts +3 -0
  138. package/dist/components/flows/iris-chat/iris-chat-prompt.js +46 -0
  139. package/dist/components/flows/iris-chat/iris-chat-thinking.d.ts +12 -0
  140. package/dist/components/flows/iris-chat/iris-chat-thinking.js +202 -0
  141. package/dist/components/flows/iris-chat/iris-chat-thread.d.ts +37 -0
  142. package/dist/components/flows/iris-chat/iris-chat-thread.js +493 -0
  143. package/dist/components/flows/iris-chat/iris-chat.d.ts +43 -0
  144. package/dist/components/flows/iris-chat/iris-chat.js +336 -0
  145. package/dist/components/flows/iris-chat/iris-chat.types.d.ts +208 -0
  146. package/dist/components/flows/iris-chat/iris-chat.variants.d.ts +14 -0
  147. package/dist/components/flows/iris-chat/iris-chat.variants.js +78 -0
  148. package/dist/components/flows/iris-chat/read-iris-greeting-period.d.ts +4 -0
  149. package/dist/components/flows/iris-chat/read-iris-greeting-period.js +16 -0
  150. package/dist/components/flows/wizard/index.d.ts +2 -2
  151. package/dist/components/flows/wizard/index.js +17 -13
  152. package/dist/components/flows/wizard/wizard-context.d.ts +6 -1
  153. package/dist/components/flows/wizard/wizard-context.js +15 -7
  154. package/dist/components/flows/wizard/wizard.d.ts +22 -4
  155. package/dist/components/flows/wizard/wizard.js +278 -174
  156. package/dist/components/flows/wizard/wizard.types.d.ts +40 -0
  157. package/dist/components/forms/choice-card/assets/featured-backdrop-baked.webp.js +4 -0
  158. package/dist/components/forms/choice-card/assets/featured-noise.webp.js +4 -0
  159. package/dist/components/forms/choice-card/choice-card-featured-arcs.d.ts +4 -0
  160. package/dist/components/forms/choice-card/choice-card-featured-arcs.js +42 -0
  161. package/dist/components/forms/choice-card/choice-card-featured-backdrop.d.ts +4 -0
  162. package/dist/components/forms/choice-card/choice-card-featured-backdrop.js +45 -0
  163. package/dist/components/forms/choice-card/choice-card-indicator.variants.d.ts +8 -0
  164. package/dist/components/forms/choice-card/choice-card-indicator.variants.js +5 -0
  165. package/dist/components/forms/choice-card/choice-card-percent.d.ts +11 -0
  166. package/dist/components/forms/choice-card/choice-card-percent.js +80 -0
  167. package/dist/components/forms/choice-card/choice-card.d.ts +40 -3
  168. package/dist/components/forms/choice-card/choice-card.js +651 -170
  169. package/dist/components/forms/choice-card/choice-card.types.d.ts +40 -0
  170. package/dist/components/forms/choice-card/choice-card.variants.d.ts +7 -0
  171. package/dist/components/forms/choice-card/choice-card.variants.js +100 -0
  172. package/dist/components/forms/choice-card/index.d.ts +2 -1
  173. package/dist/components/forms/choice-card/index.js +27 -10
  174. package/dist/components/forms/select/components/SelectTriggerValue.js +2 -3
  175. package/dist/components/forms/select/components/Submenu.js +2 -3
  176. package/dist/components/layout/header/header.d.ts +3 -2
  177. package/dist/components/layout/header/header.js +67 -47
  178. package/dist/components/layout/header/header.types.d.ts +1 -0
  179. package/dist/components/primitives/iris/iris-agent-cursor.d.ts +3 -0
  180. package/dist/components/primitives/iris/iris-agent-cursor.js +89 -0
  181. package/dist/components/primitives/iris/iris-alan-gradient-icon.d.ts +5 -0
  182. package/dist/components/primitives/iris/iris-alan-gradient-icon.js +69 -0
  183. package/dist/components/primitives/iris/iris-control-context.d.ts +15 -0
  184. package/dist/components/primitives/iris/iris-control-context.js +44 -0
  185. package/dist/components/primitives/iris/iris-control-region.d.ts +10 -0
  186. package/dist/components/primitives/iris/iris-control-region.js +102 -0
  187. package/dist/components/primitives/iris/iris-control.types.d.ts +24 -0
  188. package/dist/components/primitives/iris/iris-control.variants.d.ts +4 -0
  189. package/dist/components/primitives/iris/iris-control.variants.js +20 -0
  190. package/dist/components/primitives/iris/iris.d.ts +24 -0
  191. package/dist/components/primitives/iris/iris.js +232 -0
  192. package/dist/components/primitives/iris/iris.types.d.ts +35 -0
  193. package/dist/components/primitives/iris/iris.variants.d.ts +30 -0
  194. package/dist/components/primitives/iris/iris.variants.js +120 -0
  195. package/dist/components/primitives/stepper/internals/pipeline-current-mark.d.ts +6 -0
  196. package/dist/components/primitives/stepper/internals/pipeline-current-mark.js +35 -0
  197. package/dist/components/primitives/stepper/internals/rail-status-dot.d.ts +13 -0
  198. package/dist/components/primitives/stepper/internals/rail-status-dot.js +70 -0
  199. package/dist/components/primitives/stepper/internals/step-hit-target.d.ts +15 -0
  200. package/dist/components/primitives/stepper/internals/step-hit-target.js +51 -0
  201. package/dist/components/primitives/stepper/internals/step-model.d.ts +3 -0
  202. package/dist/components/primitives/stepper/internals/step-model.js +10 -0
  203. package/dist/components/primitives/stepper/internals/stepper-compact.d.ts +5 -0
  204. package/dist/components/primitives/stepper/internals/stepper-compact.js +68 -0
  205. package/dist/components/primitives/stepper/internals/stepper-pipeline.d.ts +7 -0
  206. package/dist/components/primitives/stepper/internals/stepper-pipeline.js +87 -0
  207. package/dist/components/primitives/stepper/internals/stepper-rail.d.ts +5 -0
  208. package/dist/components/primitives/stepper/internals/stepper-rail.js +105 -0
  209. package/dist/components/primitives/stepper/internals/stepper-summary.d.ts +5 -0
  210. package/dist/components/primitives/stepper/internals/stepper-summary.js +103 -0
  211. package/dist/components/primitives/stepper/internals/stepper-track.d.ts +8 -0
  212. package/dist/components/primitives/stepper/internals/stepper-track.js +170 -0
  213. package/dist/components/primitives/stepper/stepper.d.ts +1 -0
  214. package/dist/components/primitives/stepper/stepper.js +134 -52
  215. package/dist/components/primitives/stepper/stepper.types.d.ts +17 -0
  216. package/dist/components/primitives/stepper/stepper.variants.d.ts +26 -0
  217. package/dist/components/primitives/stepper/stepper.variants.js +165 -5
  218. package/dist/components/primitives/tabs/tabs.d.ts +4 -1
  219. package/dist/components/primitives/tabs/tabs.js +131 -59
  220. package/dist/components/primitives/tabs/tabs.types.d.ts +5 -1
  221. package/dist/i18n/defaultMessages.d.ts +100 -0
  222. package/dist/i18n/defaultMessages.js +118 -21
  223. package/dist/i18n/index.d.ts +1 -1
  224. package/dist/i18n/locales/de.js +99 -2
  225. package/dist/i18n/locales/es.js +99 -2
  226. package/dist/i18n/locales/hi.js +99 -2
  227. package/dist/i18n/locales/kn.js +99 -2
  228. package/dist/impact-nova-components.css +972 -2
  229. package/dist/impact-nova-tokens.scss +109 -1
  230. package/dist/impact-nova.css +1 -1
  231. package/dist/index.d.ts +1 -1
  232. package/dist/index.js +585 -551
  233. package/dist/lib/virtualized/directional-range-extractor.d.ts +26 -0
  234. package/dist/lib/virtualized/directional-range-extractor.js +39 -0
  235. package/dist/lib/virtualized/index.d.ts +3 -0
  236. package/dist/lib/virtualized/index.js +35 -27
  237. package/dist/lib/virtualized/scroll-seek.d.ts +61 -0
  238. package/dist/lib/virtualized/scroll-seek.js +61 -0
  239. package/dist/lib/virtualized/usePaintedRangeVirtualizer.d.ts +19 -0
  240. package/dist/lib/virtualized/usePaintedRangeVirtualizer.js +30 -0
  241. package/dist/lib/virtualized/useResponsiveColumnCount.d.ts +35 -0
  242. package/dist/lib/virtualized/useResponsiveColumnCount.js +51 -0
  243. package/dist/lib/virtualized/useScrollSeekPaintedRange.d.ts +13 -0
  244. package/dist/lib/virtualized/useScrollSeekPaintedRange.js +45 -0
  245. package/dist/lib/virtualized/useVirtualizedList.d.ts +7 -0
  246. package/dist/lib/virtualized/useVirtualizedList.js +89 -87
  247. package/dist/lib/virtualized/useVirtualizedRows.d.ts +9 -2
  248. package/dist/lib/virtualized/useVirtualizedRows.js +15 -13
  249. package/dist/lib/virtualized/virtualized.types.d.ts +2 -0
  250. package/dist/llms/rules/installation.js +1 -1
  251. package/dist/llms/rules/requirements.js +1 -1
  252. package/dist/tailwind.config.js +3 -1
  253. package/dist/theme/tailwind-colors.js +2 -1
  254. package/package.json +39 -4
@@ -0,0 +1,69 @@
1
+ import { jsxs as t, jsx as C } from "react/jsx-runtime";
2
+ import * as l from "react";
3
+ import { cn as d } from "../../../lib/utils.js";
4
+ const e = "M7.91797 14.1602C8.27047 14.4325 8.6182 14.705 8.9707 14.9727C9.02243 15.0102 9.01277 15.0011 8.98926 15.0527C8.84352 15.3627 8.69359 15.6685 8.54785 15.9785C8.53855 15.9926 8.53808 16.0109 8.51465 15.9922L8.50977 15.9873C8.15261 15.7103 7.79075 15.4333 7.43359 15.1562C7.42427 15.1516 7.41422 15.1466 7.41406 15.1328C7.41406 15.1281 7.41913 15.1229 7.42383 15.1182C7.57428 14.8034 7.72455 14.4886 7.875 14.1738C7.88439 14.1504 7.88978 14.1367 7.91797 14.1602ZM13.9424 8.0332C13.994 8.10816 14.0502 8.17386 14.1064 8.24414L14.7607 9.08984L14.7744 9.10938C14.774 9.10979 14.772 9.1099 14.7705 9.11133L14.7842 9.12793L10.9658 10.96L10.6826 11.5459V11.5479C10.5416 11.8344 10.4049 12.1209 10.2686 12.4121L9.54004 13.9297C9.40837 14.2022 9.2762 14.4746 9.14453 14.7471C9.14453 14.7565 9.14008 14.7658 9.12598 14.7705H9.11621L9.09766 14.7568L8.25098 14.1035C8.18064 14.0473 8.11038 13.991 8.04004 13.9395C8.01767 13.9235 8.01252 13.9096 8.01465 13.8936L8.01172 13.8916L8.01855 13.877C8.01963 13.8744 8.01916 13.8709 8.02051 13.8682C8.07956 13.7465 8.13822 13.6246 8.19727 13.5029L9.26367 11.2842C9.35856 11.0856 9.45394 10.885 9.54883 10.6875C9.55037 10.6844 9.55323 10.6823 9.55469 10.6797L9.91699 9.91602L10.6611 9.56152C10.6641 9.55398 10.6736 9.54799 10.6875 9.54102C10.9225 9.42832 11.1625 9.31582 11.3975 9.20312C11.7407 9.03871 12.0845 8.87438 12.4277 8.70996C12.7522 8.55491 13.0818 8.39998 13.4062 8.24023C13.5613 8.16515 13.7161 8.09441 13.8711 8.01465C13.904 8.00055 13.9189 8.00031 13.9424 8.0332ZM3.75098 7.66113C3.83559 7.82083 3.91538 7.97605 4 8.13574L4.70605 9.46484L5.25098 10.499C5.27733 10.5517 5.30484 10.6037 5.33887 10.6641C5.39349 10.6914 5.4426 10.7158 5.49121 10.7441L6.52539 11.2891L7.85645 11.9941C8.01624 12.0787 8.17126 12.1586 8.33105 12.2432C8.34976 12.2525 8.35491 12.2617 8.3457 12.2803C8.07768 12.8346 7.81392 13.3939 7.5459 13.9482C7.43306 14.1784 7.32475 14.4134 7.21191 14.6436C7.21191 14.6576 7.20276 14.6674 7.19336 14.6768L5.31836 10.6641L1.31543 8.79785C1.31709 8.79662 1.3343 8.78392 1.34766 8.7793C1.57805 8.66655 1.81355 8.55336 2.04395 8.44531C2.59885 8.1775 3.15896 7.91429 3.71387 7.64648C3.73707 7.63723 3.74162 7.63776 3.75098 7.66113ZM15.1367 7.41309C15.1506 7.41319 15.1555 7.4223 15.1602 7.43164C15.4376 7.78869 15.7148 8.15076 15.9922 8.50781C16.0107 8.53104 15.9926 8.53538 15.9785 8.54004L15.9834 8.54492C15.6731 8.69523 15.3669 8.84072 15.0566 8.98633C15.0049 9.00982 15.0189 9.01946 14.9766 8.96777C14.7039 8.61555 14.4357 8.26824 14.1631 7.91602C14.1397 7.88793 14.1534 7.88238 14.1768 7.87305C14.4918 7.72272 14.807 7.57221 15.1221 7.42188C15.1268 7.42188 15.132 7.41778 15.1367 7.41309ZM1.02344 7.03125C1.29619 7.38363 1.56416 7.7316 1.83691 8.08398C1.86036 8.11211 1.84668 8.11661 1.82324 8.12598C1.50817 8.27633 1.193 8.4268 0.87793 8.57715C0.873388 8.57715 0.8688 8.58141 0.864258 8.58594C0.85015 8.58594 0.844546 8.57678 0.839844 8.56738C0.562482 8.21042 0.285175 7.84817 0.0078125 7.49121C-0.0105466 7.46801 0.00842122 7.46366 0.0224609 7.45898L0.0175781 7.4541C0.327745 7.30385 0.633194 7.15825 0.943359 7.0127C0.995051 6.98922 0.981226 6.97969 1.02344 7.03125ZM10.6797 5.33301L14.6846 7.20117C14.6826 7.20262 14.6656 7.21519 14.6523 7.21973C14.4219 7.33249 14.1865 7.44565 13.9561 7.55371C13.4013 7.82146 12.8419 8.08479 12.2871 8.35254C12.2637 8.36189 12.2583 8.36199 12.249 8.33887C12.1644 8.17924 12.0846 8.02388 12 7.86426L11.2949 6.53418L10.749 5.50098C10.7228 5.44852 10.6959 5.39596 10.6621 5.33594C10.6071 5.30837 10.5577 5.28436 10.5088 5.25586L9.47363 4.71094L8.14355 4.00586C7.98367 3.92129 7.82786 3.84141 7.66797 3.75684C7.64944 3.7475 7.64499 3.73837 7.6543 3.71973C7.9223 3.16541 8.18512 2.60608 8.45312 2.05176C8.56594 1.82163 8.6743 1.58658 8.78711 1.35645C8.78711 1.34235 8.79724 1.33264 8.80664 1.32324L10.6797 5.33301ZM6.90137 1.24316L7.74805 1.89648C7.81855 1.95284 7.88946 2.00888 7.95996 2.06055C7.97985 2.07474 7.98437 2.08769 7.98438 2.10156L7.99316 2.1084L6.46875 5.2793L6.46973 5.28027L6.08887 6.08301L5.32617 6.44629C5.32195 6.44917 5.31867 6.45493 5.3125 6.45801C5.07748 6.57072 4.83757 6.68319 4.60254 6.7959C4.25925 6.96034 3.91556 7.1256 3.57227 7.29004C3.24796 7.445 2.91903 7.60011 2.59473 7.75977C2.43954 7.83494 2.28409 7.90548 2.12891 7.98535C2.11831 7.98989 2.1092 7.99022 2.10156 7.99121L2.10059 7.99023C2.08497 7.99192 2.07423 7.98769 2.05859 7.96582C2.00689 7.89069 1.94996 7.82532 1.89355 7.75488L1.24023 6.90918L1.22559 6.89062C1.22559 6.89062 1.22806 6.88783 1.23145 6.88477L1.22168 6.87305L5.04004 5.04004L5.31641 4.46582C5.31701 4.46306 5.31607 4.45966 5.31738 4.45703V4.45215C5.45838 4.16571 5.59417 3.87903 5.73047 3.58789L6.45996 2.07031C6.59159 1.79791 6.72287 1.52534 6.85449 1.25293C6.85449 1.24362 6.85926 1.23424 6.87305 1.22949H6.88281L6.90137 1.24316ZM7.48438 0.0078125L7.48926 0.0126953C7.84659 0.289853 8.20907 0.566592 8.56641 0.84375C8.57571 0.8484 8.58477 0.853429 8.58496 0.867188C8.58496 0.871847 8.58084 0.877176 8.57617 0.881836C8.42569 1.19663 8.27451 1.51138 8.12402 1.82617C8.11467 1.84955 8.11017 1.86327 8.08203 1.83984C7.72939 1.56738 7.38096 1.29511 7.02832 1.02734C6.97685 0.989952 6.98629 0.998871 7.00977 0.947266C7.15552 0.637224 7.30639 0.331528 7.45215 0.0214844C7.46125 0.0074934 7.46135 -0.0104468 7.48438 0.0078125Z", n = (r) => /* @__PURE__ */ t(
5
+ "linearGradient",
6
+ {
7
+ id: r,
8
+ x1: "2.08",
9
+ y1: "1.84",
10
+ x2: "14",
11
+ y2: "14.32",
12
+ gradientUnits: "userSpaceOnUse",
13
+ children: [
14
+ /* @__PURE__ */ C("stop", { stopColor: "var(--color-header-bot-gradient-teal-hover)" }),
15
+ /* @__PURE__ */ C(
16
+ "stop",
17
+ {
18
+ offset: "0.485",
19
+ stopColor: "var(--color-header-bot-gradient-indigo-hover)"
20
+ }
21
+ ),
22
+ /* @__PURE__ */ C(
23
+ "stop",
24
+ {
25
+ offset: "1",
26
+ stopColor: "var(--color-header-bot-gradient-orange-hover)"
27
+ }
28
+ )
29
+ ]
30
+ }
31
+ ), p = ({
32
+ size: r,
33
+ className: a
34
+ }) => {
35
+ const o = l.useId().replace(/:/g, ""), L = `${o}-fill`, i = `${o}-stroke`, s = `${o}-mask`;
36
+ return /* @__PURE__ */ t(
37
+ "svg",
38
+ {
39
+ width: r,
40
+ height: r,
41
+ viewBox: "0 0 16 16",
42
+ fill: "none",
43
+ xmlns: "http://www.w3.org/2000/svg",
44
+ "aria-hidden": !0,
45
+ className: d("iris-alan-gradient-icon shrink-0", a),
46
+ children: [
47
+ /* @__PURE__ */ t("defs", { children: [
48
+ n(L),
49
+ n(i),
50
+ /* @__PURE__ */ C("mask", { id: s, fill: "white", children: /* @__PURE__ */ C("path", { d: e }) })
51
+ ] }),
52
+ /* @__PURE__ */ C("path", { d: e, fill: `url(#${L})` }),
53
+ /* @__PURE__ */ C(
54
+ "path",
55
+ {
56
+ d: e,
57
+ fill: "none",
58
+ stroke: `url(#${i})`,
59
+ strokeWidth: 1.08597,
60
+ mask: `url(#${s})`
61
+ }
62
+ )
63
+ ]
64
+ }
65
+ );
66
+ };
67
+ export {
68
+ p as IrisAlanGradientIcon
69
+ };
@@ -0,0 +1,15 @@
1
+ import * as React from "react";
2
+ export type IrisControlContextValue = {
3
+ active: boolean;
4
+ cursorLabel: string;
5
+ showCursor: boolean;
6
+ };
7
+ declare const IrisControlContext: React.Context<IrisControlContextValue | null>;
8
+ export declare function IrisControlProvider({ active, cursorLabel, showCursor, className, children, }: React.PropsWithChildren<{
9
+ active?: boolean;
10
+ cursorLabel?: string;
11
+ showCursor?: boolean;
12
+ className?: string;
13
+ }>): import("react/jsx-runtime").JSX.Element;
14
+ export declare function useIrisControl(): IrisControlContextValue;
15
+ export { IrisControlContext };
@@ -0,0 +1,44 @@
1
+ import { jsx as n } from "react/jsx-runtime";
2
+ import * as t from "react";
3
+ const s = t.createContext(
4
+ null
5
+ );
6
+ function a({
7
+ active: e = !1,
8
+ cursorLabel: o = "",
9
+ showCursor: r = !0,
10
+ className: i,
11
+ children: u
12
+ }) {
13
+ const l = t.useMemo(
14
+ () => ({
15
+ active: e,
16
+ cursorLabel: o,
17
+ showCursor: r && e
18
+ }),
19
+ [e, o, r]
20
+ );
21
+ return t.useEffect(() => {
22
+ if (e)
23
+ return document.documentElement.classList.add("iris-agent-session"), () => {
24
+ document.documentElement.classList.remove("iris-agent-session");
25
+ };
26
+ }, [e]), /* @__PURE__ */ n(s.Provider, { value: l, children: /* @__PURE__ */ n(
27
+ "div",
28
+ {
29
+ className: i,
30
+ "data-component": "iris-control-root",
31
+ "data-active": e ? "true" : "false",
32
+ children: u
33
+ }
34
+ ) });
35
+ }
36
+ function d() {
37
+ const e = t.useContext(s);
38
+ return e || { active: !1, cursorLabel: "", showCursor: !1 };
39
+ }
40
+ export {
41
+ s as IrisControlContext,
42
+ a as IrisControlProvider,
43
+ d as useIrisControl
44
+ };
@@ -0,0 +1,10 @@
1
+ import { IrisControlProviderProps } from './iris-control.types';
2
+ declare const IrisControlRegion: import('react').ForwardRefExoticComponent<import('react').HTMLAttributes<HTMLDivElement> & {
3
+ locked?: boolean;
4
+ variant?: import('./iris-control.types').IrisControlRegionVariant;
5
+ glowPhase?: import('./iris-control.types').IrisControlGlowPhase;
6
+ regionId?: string;
7
+ statusLabel?: string;
8
+ } & import('react').RefAttributes<HTMLDivElement>>;
9
+ declare function IrisControlProviderWithCursor({ active, cursorLabel, showCursor, className, children, }: IrisControlProviderProps): import("react/jsx-runtime").JSX.Element;
10
+ export { IrisControlProviderWithCursor as IrisControlProvider, IrisControlRegion };
@@ -0,0 +1,102 @@
1
+ import { jsxs as s, jsx as i, Fragment as _ } from "react/jsx-runtime";
2
+ import { createComponent as g } from "../../../lib/primitives/create-component.js";
3
+ import { cn as a } from "../../../lib/utils.js";
4
+ import { IrisAgentCursor as p } from "./iris-agent-cursor.js";
5
+ import { IrisControlProvider as v, useIrisControl as C } from "./iris-control-context.js";
6
+ import { irisControlRegionVariants as f } from "./iris-control.variants.js";
7
+ const N = "Iris is updating this area", E = g(
8
+ "IrisControlRegion",
9
+ ({
10
+ className: e,
11
+ children: t,
12
+ locked: r = !1,
13
+ variant: o = "stroke",
14
+ glowPhase: n = "cool",
15
+ regionId: l,
16
+ statusLabel: c,
17
+ ...d
18
+ }, m) => {
19
+ const { cursorLabel: u } = C(), h = c ?? u ?? N;
20
+ return /* @__PURE__ */ s(
21
+ "div",
22
+ {
23
+ ref: m,
24
+ "data-component": "iris-control-region",
25
+ "data-variant": o,
26
+ "data-locked": r ? "true" : "false",
27
+ "data-glow-phase": n,
28
+ ...l ? { "data-iris-control-region": l } : {},
29
+ className: a(
30
+ f({ variant: o, glowPhase: n }),
31
+ r && "iris-control-region--locked",
32
+ e
33
+ ),
34
+ "aria-busy": r ? !0 : void 0,
35
+ ...r ? { inert: !0 } : {},
36
+ ...d,
37
+ children: [
38
+ r && o === "stroke" ? /* @__PURE__ */ i(
39
+ "div",
40
+ {
41
+ className: "iris-control-region__chrome iris-control-region__chrome--stroke pointer-events-none absolute z-0 rounded-[inherit]",
42
+ "aria-hidden": !0
43
+ }
44
+ ) : null,
45
+ /* @__PURE__ */ i(
46
+ "div",
47
+ {
48
+ className: a(
49
+ "iris-control-region__content relative z-10 min-w-0 rounded-[inherit]",
50
+ r && o === "section" && "iris-control-region__content--section-locked"
51
+ ),
52
+ children: t
53
+ }
54
+ ),
55
+ r && o === "section" ? /* @__PURE__ */ i(
56
+ "div",
57
+ {
58
+ className: "iris-control-region__chrome iris-control-region__chrome--section pointer-events-none absolute rounded-[inherit]",
59
+ "aria-hidden": !0,
60
+ children: /* @__PURE__ */ i("div", { className: "iris-control-region__section-halo rounded-[inherit]", "aria-hidden": !0 })
61
+ }
62
+ ) : null,
63
+ r ? /* @__PURE__ */ s(_, { children: [
64
+ /* @__PURE__ */ i(
65
+ "div",
66
+ {
67
+ className: "iris-control-region__shield absolute inset-0 z-20 rounded-[inherit]",
68
+ "aria-hidden": !0
69
+ }
70
+ ),
71
+ /* @__PURE__ */ i("span", { className: "sr-only", "aria-live": "polite", children: h })
72
+ ] }) : null
73
+ ]
74
+ }
75
+ );
76
+ }
77
+ );
78
+ function R({
79
+ active: e = !1,
80
+ cursorLabel: t = "",
81
+ showCursor: r = !0,
82
+ className: o,
83
+ children: n
84
+ }) {
85
+ return /* @__PURE__ */ s(
86
+ v,
87
+ {
88
+ active: e,
89
+ cursorLabel: t,
90
+ showCursor: r,
91
+ className: a(e && "iris-control-root--active", o),
92
+ children: [
93
+ n,
94
+ /* @__PURE__ */ i(p, {})
95
+ ]
96
+ }
97
+ );
98
+ }
99
+ export {
100
+ R as IrisControlProvider,
101
+ E as IrisControlRegion
102
+ };
@@ -0,0 +1,24 @@
1
+ import type * as React from "react";
2
+ /** Reserved for future tuning; `section` glow always uses the combined agentic gradient. */
3
+ export type IrisControlGlowPhase = "cool" | "warm";
4
+ export type IrisControlRegionVariant = "stroke" | "section";
5
+ export type IrisControlProviderProps = {
6
+ /** Agent session active — enables custom cursor and `iris-control-root` styling. */
7
+ active?: boolean;
8
+ /** Label beside the agent pointer (Figma comment cursor). */
9
+ cursorLabel?: string;
10
+ /** Portalled follower cursor while `active` (default true). */
11
+ showCursor?: boolean;
12
+ className?: string;
13
+ children?: React.ReactNode;
14
+ };
15
+ export type IrisControlRegionProps = React.HTMLAttributes<HTMLDivElement> & {
16
+ /** Blocks interaction and shows glow chrome while Iris controls this subtree. */
17
+ locked?: boolean;
18
+ variant?: IrisControlRegionVariant;
19
+ glowPhase?: IrisControlGlowPhase;
20
+ /** Optional id for agent orchestration (`data-iris-control-region`). */
21
+ regionId?: string;
22
+ /** Accessible status while locked (defaults to cursor label or generic copy). */
23
+ statusLabel?: string;
24
+ };
@@ -0,0 +1,4 @@
1
+ export declare const irisControlRegionVariants: (props?: ({
2
+ variant?: "section" | "stroke" | null | undefined;
3
+ glowPhase?: "cool" | "warm" | null | undefined;
4
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
@@ -0,0 +1,20 @@
1
+ import { cva as o } from "class-variance-authority";
2
+ const i = o("iris-control-region min-w-0 rounded-md", {
3
+ variants: {
4
+ variant: {
5
+ stroke: "iris-control-region--stroke",
6
+ section: "iris-control-region--section"
7
+ },
8
+ glowPhase: {
9
+ cool: "iris-control-region--glow-cool",
10
+ warm: "iris-control-region--glow-warm"
11
+ }
12
+ },
13
+ defaultVariants: {
14
+ variant: "stroke",
15
+ glowPhase: "cool"
16
+ }
17
+ });
18
+ export {
19
+ i as irisControlRegionVariants
20
+ };
@@ -0,0 +1,24 @@
1
+ import { IrisButtonSize, IrisInsightProps } from './iris.types';
2
+ import * as React from "react";
3
+ declare const IrisButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & {
4
+ size?: IrisButtonSize;
5
+ shape?: import('./iris.types').IrisButtonShape;
6
+ } & React.RefAttributes<HTMLButtonElement>>;
7
+ declare const IrisIconButton: React.ForwardRefExoticComponent<React.ButtonHTMLAttributes<HTMLButtonElement> & {
8
+ appearance?: import('./iris.types').IrisIconButtonAppearance;
9
+ size?: import('./iris.types').IrisIconButtonSize;
10
+ shape?: import('./iris.types').IrisButtonShape;
11
+ "aria-label"?: string;
12
+ } & React.RefAttributes<HTMLButtonElement>>;
13
+ declare const IrisMenu: React.ForwardRefExoticComponent<React.HTMLAttributes<HTMLDivElement> & {
14
+ appearance?: import('./iris.types').IrisMenuAppearance;
15
+ onAskInChat?: () => void;
16
+ askInChatLabel?: string;
17
+ } & React.RefAttributes<HTMLDivElement>>;
18
+ declare const IrisInsight: React.ForwardRefExoticComponent<IrisInsightProps & React.RefAttributes<HTMLDivElement>>;
19
+ export { IrisControlProvider, IrisControlRegion, } from './iris-control-region';
20
+ export { IrisAgentCursor } from './iris-agent-cursor';
21
+ export { useIrisControl } from './iris-control-context';
22
+ export { IrisButton, IrisIconButton, IrisMenu, IrisInsight };
23
+ export type { IrisButtonProps, IrisIconButtonProps, IrisMenuProps, IrisInsightProps, } from './iris.types';
24
+ export type { IrisControlProviderProps, IrisControlRegionProps, IrisControlGlowPhase, IrisControlRegionVariant, } from './iris-control.types';
@@ -0,0 +1,232 @@
1
+ import { jsx as t, jsxs as g } from "react/jsx-runtime";
2
+ import * as x from "react";
3
+ import { Alan as C } from "impact-nova-icons";
4
+ import { Button as p } from "../button/button.js";
5
+ import { Popover as B, PopoverTrigger as z, PopoverContent as k } from "../../feedback/popover/popover.js";
6
+ import { OverflowTooltip as A } from "../../feedback/tooltip/overflow-tooltip.js";
7
+ import { createComponent as f } from "../../../lib/primitives/create-component.js";
8
+ import { cn as l } from "../../../lib/utils.js";
9
+ import { IrisAlanGradientIcon as I } from "./iris-alan-gradient-icon.js";
10
+ import { irisButtonToButtonSize as V, irisButtonVariants as O, irisChromeWrapperVariants as P, irisIconChromeWrapperVariants as T, irisIconFilledButtonVariants as S, irisIconButtonToButtonSize as j, irisIconButtonVariants as y, irisMenuVariants as M } from "./iris.variants.js";
11
+ import { IrisControlProvider as _, IrisControlRegion as $ } from "./iris-control-region.js";
12
+ import { IrisAgentCursor as ii } from "./iris-agent-cursor.js";
13
+ import { useIrisControl as ni } from "./iris-control-context.js";
14
+ const G = {
15
+ sm: 14,
16
+ md: 16,
17
+ lg: 16
18
+ }, U = f(
19
+ "IrisButton",
20
+ ({
21
+ className: n,
22
+ size: i = "md",
23
+ shape: o = "default",
24
+ children: e,
25
+ type: s = "button",
26
+ ...r
27
+ }, a) => /* @__PURE__ */ t("span", { className: P({ shape: o }), children: /* @__PURE__ */ g(
28
+ p,
29
+ {
30
+ ref: a,
31
+ type: s,
32
+ variant: "ghost",
33
+ size: V[i],
34
+ "data-component": "iris-button",
35
+ "data-size": i,
36
+ "data-shape": o,
37
+ className: l(O({ size: i }), n),
38
+ ...r,
39
+ children: [
40
+ /* @__PURE__ */ t(I, { size: G[i] }),
41
+ e ?? "Ask Iris"
42
+ ]
43
+ }
44
+ ) })
45
+ ), R = f(
46
+ "IrisIconButton",
47
+ ({
48
+ className: n,
49
+ appearance: i = "outline",
50
+ size: o = "md",
51
+ shape: e = "default",
52
+ type: s = "button",
53
+ "aria-label": r = "Ask Iris",
54
+ ...a
55
+ }, m) => {
56
+ const c = T({ appearance: i, shape: e }), d = i === "filled" ? /* @__PURE__ */ t(C, { size: 16, className: "text-brand-foreground" }) : /* @__PURE__ */ t(I, { size: 16 });
57
+ return i === "filled" ? /* @__PURE__ */ t("span", { className: c, children: /* @__PURE__ */ t(
58
+ "button",
59
+ {
60
+ ref: m,
61
+ type: s,
62
+ "data-component": "iris-icon-button",
63
+ "data-appearance": i,
64
+ "data-size": o,
65
+ "data-shape": e,
66
+ "aria-label": r,
67
+ className: l(S({ size: o }), n),
68
+ ...a,
69
+ children: d
70
+ }
71
+ ) }) : /* @__PURE__ */ t("span", { className: c, children: /* @__PURE__ */ t(
72
+ p,
73
+ {
74
+ ref: m,
75
+ type: s,
76
+ variant: "ghost",
77
+ size: j[o],
78
+ "data-component": "iris-icon-button",
79
+ "data-appearance": i,
80
+ "data-size": o,
81
+ "data-shape": e,
82
+ "aria-label": r,
83
+ className: l(y({ size: o }), n),
84
+ ...a,
85
+ children: d
86
+ }
87
+ ) });
88
+ }
89
+ ), N = f(
90
+ "IrisMenu",
91
+ ({
92
+ className: n,
93
+ appearance: i = "loading",
94
+ children: o,
95
+ onAskInChat: e,
96
+ askInChatLabel: s = "Ask in chat",
97
+ ...r
98
+ }, a) => {
99
+ const m = i === "loading" || i === "status", c = i === "card", d = /* @__PURE__ */ g(
100
+ "div",
101
+ {
102
+ ref: a,
103
+ "data-component": "iris-menu",
104
+ "data-appearance": i,
105
+ className: l(M({ appearance: i }), n),
106
+ ...r,
107
+ children: [
108
+ m && /* @__PURE__ */ t(
109
+ "span",
110
+ {
111
+ className: l(
112
+ "inline-flex shrink-0 items-center justify-center",
113
+ i === "status" ? "size-4" : "size-6"
114
+ ),
115
+ children: /* @__PURE__ */ t(I, { size: i === "status" ? 16 : 20 })
116
+ }
117
+ ),
118
+ /* @__PURE__ */ t(
119
+ "div",
120
+ {
121
+ className: l(
122
+ "min-w-0",
123
+ i === "wrap" && "w-[250px]",
124
+ i === "card" && "w-full text-sm leading-[25px]",
125
+ i === "status" && "min-w-0 flex-1 overflow-hidden",
126
+ i === "loading" && "whitespace-nowrap"
127
+ ),
128
+ children: i === "status" ? /* @__PURE__ */ t(
129
+ A,
130
+ {
131
+ triggerClassName: "block w-full min-w-0 truncate whitespace-nowrap normal-case",
132
+ contentClassName: "iris-menu-overflow-tooltip",
133
+ variant: "secondary",
134
+ side: "top",
135
+ sideOffset: 10,
136
+ children: o
137
+ }
138
+ ) : o
139
+ }
140
+ ),
141
+ c && e && /* @__PURE__ */ t(p, { variant: "outline", size: "sm", className: "max-h-7 capitalize", onClick: e, children: s })
142
+ ]
143
+ }
144
+ );
145
+ return i === "loading" || i === "status" || i === "wrap" ? /* @__PURE__ */ t(
146
+ "div",
147
+ {
148
+ className: l(
149
+ "iris-edge-wash-shell iris-edge-wash-shell--menu rounded-xl motion-reduce:animate-none",
150
+ i === "status" && "iris-edge-wash-shell--fluid iris-edge-wash-shell--menu-plain"
151
+ ),
152
+ children: d
153
+ }
154
+ ) : d;
155
+ }
156
+ ), X = f(
157
+ "IrisInsight",
158
+ ({
159
+ status: n = "idle",
160
+ iconSize: i = "md",
161
+ iconAppearance: o = "outline",
162
+ loadingLabel: e = "Gathering insights...",
163
+ onTriggerClick: s,
164
+ onAskInChat: r,
165
+ askInChatLabel: a,
166
+ className: m,
167
+ children: c
168
+ }, d) => {
169
+ const [w, v] = x.useState(!1), u = n === "loading" || n === "ready", b = n === "loading";
170
+ return x.useEffect(() => {
171
+ n === "loading" && v(!0);
172
+ }, [n]), /* @__PURE__ */ t(
173
+ "div",
174
+ {
175
+ ref: d,
176
+ "data-component": "iris",
177
+ "data-status": n,
178
+ className: l("relative inline-flex items-start", m),
179
+ children: /* @__PURE__ */ g(
180
+ B,
181
+ {
182
+ open: u ? w : !1,
183
+ onOpenChange: (h) => {
184
+ u && v(h);
185
+ },
186
+ children: [
187
+ /* @__PURE__ */ t(z, { asChild: !0, children: /* @__PURE__ */ t(
188
+ R,
189
+ {
190
+ size: i,
191
+ appearance: b ? "filled" : o,
192
+ "aria-expanded": w && u,
193
+ onClick: (h) => {
194
+ n === "idle" && (s?.(), h.preventDefault());
195
+ }
196
+ }
197
+ ) }),
198
+ u && /* @__PURE__ */ t(
199
+ k,
200
+ {
201
+ align: "end",
202
+ side: "bottom",
203
+ sideOffset: 7,
204
+ className: "w-auto border-0 bg-transparent p-0 shadow-none motion-reduce:animate-none",
205
+ children: n === "loading" ? /* @__PURE__ */ t(N, { appearance: "loading", children: e }) : /* @__PURE__ */ t(
206
+ N,
207
+ {
208
+ appearance: "card",
209
+ onAskInChat: r,
210
+ askInChatLabel: a,
211
+ children: c
212
+ }
213
+ )
214
+ }
215
+ )
216
+ ]
217
+ }
218
+ )
219
+ }
220
+ );
221
+ }
222
+ );
223
+ export {
224
+ ii as IrisAgentCursor,
225
+ U as IrisButton,
226
+ _ as IrisControlProvider,
227
+ $ as IrisControlRegion,
228
+ R as IrisIconButton,
229
+ X as IrisInsight,
230
+ N as IrisMenu,
231
+ ni as useIrisControl
232
+ };
@@ -0,0 +1,35 @@
1
+ import type * as React from "react";
2
+ export type IrisButtonSize = "sm" | "md" | "lg";
3
+ /** `default` matches `Button` (`rounded-md`); `pill` is fully rounded (Figma Chatbot). */
4
+ export type IrisButtonShape = "default" | "pill";
5
+ export type IrisButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
6
+ size?: IrisButtonSize;
7
+ shape?: IrisButtonShape;
8
+ };
9
+ export type IrisIconButtonAppearance = "outline" | "filled";
10
+ export type IrisIconButtonSize = "sm" | "md";
11
+ export type IrisIconButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
12
+ appearance?: IrisIconButtonAppearance;
13
+ size?: IrisIconButtonSize;
14
+ shape?: IrisButtonShape;
15
+ "aria-label"?: string;
16
+ };
17
+ export type IrisMenuAppearance = "loading" | "wrap" | "card" | "status";
18
+ export type IrisMenuProps = React.HTMLAttributes<HTMLDivElement> & {
19
+ appearance?: IrisMenuAppearance;
20
+ onAskInChat?: () => void;
21
+ askInChatLabel?: string;
22
+ };
23
+ export type IrisInsightStatus = "idle" | "loading" | "ready";
24
+ export type IrisInsightProps = {
25
+ status?: IrisInsightStatus;
26
+ iconSize?: IrisIconButtonSize;
27
+ iconAppearance?: IrisIconButtonAppearance;
28
+ loadingLabel?: string;
29
+ /** Fires on icon click while `status` is `idle` (e.g. start a loading → ready flow). */
30
+ onTriggerClick?: () => void;
31
+ onAskInChat?: () => void;
32
+ askInChatLabel?: string;
33
+ className?: string;
34
+ children?: React.ReactNode;
35
+ };
@@ -0,0 +1,30 @@
1
+ import { IrisButtonSize } from './iris.types';
2
+ export declare const irisButtonToButtonSize: Record<IrisButtonSize, "sm" | "default" | "lg">;
3
+ /** Animated border chrome — wraps `Button`, not on the button itself. */
4
+ export declare const irisChromeWrapperVariants: (props?: ({
5
+ shape?: "default" | "pill" | null | undefined;
6
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
7
+ /** Inner `Button` — white fill; no border/background tricks (those live on the wrapper). */
8
+ export declare const irisButtonVariants: (props?: ({
9
+ size?: "sm" | "md" | "lg" | null | undefined;
10
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
11
+ export declare const irisIconButtonToButtonSize: {
12
+ readonly sm: "iconSm";
13
+ readonly md: "icon";
14
+ };
15
+ /** Icon chrome — outline uses conic ring; filled is borderless (gradient on the button). */
16
+ export declare const irisIconChromeWrapperVariants: (props?: ({
17
+ appearance?: "outline" | "filled" | null | undefined;
18
+ shape?: "default" | "pill" | null | undefined;
19
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
20
+ /** Outline icon — inner `Button`. Filled uses `irisIconFilledButtonVariants` on a native `<button>`. */
21
+ export declare const irisIconButtonVariants: (props?: ({
22
+ size?: "sm" | "md" | null | undefined;
23
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
24
+ /** Pixel-parity with `HeaderBotButton` — no `Button` ghost `transition-colors`. */
25
+ export declare const irisIconFilledButtonVariants: (props?: ({
26
+ size?: "sm" | "md" | null | undefined;
27
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
28
+ export declare const irisMenuVariants: (props?: ({
29
+ appearance?: "status" | "wrap" | "loading" | "card" | null | undefined;
30
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;