@accelint/design-toolkit 9.12.0 → 10.0.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 (300) hide show
  1. package/catalog-info.yaml +1 -1
  2. package/dist/components/accordion/context.d.ts +2 -2
  3. package/dist/components/accordion/group.d.ts +2 -2
  4. package/dist/components/accordion/header.d.ts +2 -2
  5. package/dist/components/accordion/index.d.ts +2 -2
  6. package/dist/components/accordion/panel.d.ts +2 -2
  7. package/dist/components/accordion/trigger.d.ts +2 -2
  8. package/dist/components/action-bar/index.d.ts +2 -2
  9. package/dist/components/audio/index.d.ts +2 -2
  10. package/dist/components/avatar/context.d.ts +4 -4
  11. package/dist/components/avatar/index.d.ts +2 -2
  12. package/dist/components/badge/context.d.ts +4 -4
  13. package/dist/components/badge/index.d.ts +2 -2
  14. package/dist/components/breadcrumbs/index.d.ts +2 -2
  15. package/dist/components/breadcrumbs/item.d.ts +2 -2
  16. package/dist/components/button/context.d.ts +8 -8
  17. package/dist/components/button/index.d.ts +2 -2
  18. package/dist/components/button/link.d.ts +2 -2
  19. package/dist/components/button/toggle.d.ts +2 -2
  20. package/dist/components/carousel/context.d.ts +4 -4
  21. package/dist/components/carousel/gallery.d.ts +2 -2
  22. package/dist/components/carousel/index.d.ts +2 -2
  23. package/dist/components/carousel/navigation.d.ts +3 -3
  24. package/dist/components/carousel/position.d.ts +2 -2
  25. package/dist/components/carousel/select.d.ts +2 -2
  26. package/dist/components/carousel/viewer.d.ts +2 -2
  27. package/dist/components/checkbox/context.d.ts +3 -3
  28. package/dist/components/checkbox/group.d.ts +2 -2
  29. package/dist/components/checkbox/index.d.ts +2 -2
  30. package/dist/components/chip/context.d.ts +4 -4
  31. package/dist/components/chip/deletable.d.ts +2 -2
  32. package/dist/components/chip/index.d.ts +2 -2
  33. package/dist/components/chip/list.d.ts +4 -4
  34. package/dist/components/chip/selectable.d.ts +2 -2
  35. package/dist/components/classification-badge/context.d.ts +4 -4
  36. package/dist/components/classification-badge/index.d.ts +2 -2
  37. package/dist/components/classification-banner/context.d.ts +4 -4
  38. package/dist/components/classification-banner/index.d.ts +2 -2
  39. package/dist/components/clock/index.d.ts +2 -2
  40. package/dist/components/color-picker/index.d.ts +2 -2
  41. package/dist/components/combobox-field/context.d.ts +4 -4
  42. package/dist/components/combobox-field/index.d.ts +2 -2
  43. package/dist/components/coordinate-field/context.d.ts +6 -6
  44. package/dist/components/coordinate-field/index.d.ts +2 -2
  45. package/dist/components/coordinate-field/segment.d.ts +2 -2
  46. package/dist/components/date-field/index.d.ts +2 -2
  47. package/dist/components/deferred-collection/index.d.ts +2 -2
  48. package/dist/components/details-list/context.d.ts +4 -4
  49. package/dist/components/details-list/index.d.ts +2 -2
  50. package/dist/components/details-list/label.d.ts +2 -2
  51. package/dist/components/details-list/value.d.ts +2 -2
  52. package/dist/components/dialog/content.d.ts +2 -2
  53. package/dist/components/dialog/context.d.ts +2 -2
  54. package/dist/components/dialog/footer.d.ts +2 -2
  55. package/dist/components/dialog/index.d.ts +2 -2
  56. package/dist/components/dialog/title.d.ts +2 -2
  57. package/dist/components/divider/context.d.ts +4 -4
  58. package/dist/components/divider/index.d.ts +2 -2
  59. package/dist/components/drawer/back.d.ts +2 -2
  60. package/dist/components/drawer/close.d.ts +2 -2
  61. package/dist/components/drawer/content.d.ts +2 -2
  62. package/dist/components/drawer/footer.d.ts +2 -2
  63. package/dist/components/drawer/header-title.d.ts +2 -2
  64. package/dist/components/drawer/header.d.ts +2 -2
  65. package/dist/components/drawer/index.d.ts +2 -2
  66. package/dist/components/drawer/layout-main.d.ts +2 -2
  67. package/dist/components/drawer/layout.d.ts +2 -2
  68. package/dist/components/drawer/menu-item.d.ts +2 -2
  69. package/dist/components/drawer/menu.d.ts +2 -2
  70. package/dist/components/drawer/panel.d.ts +2 -2
  71. package/dist/components/drawer/trigger.d.ts +2 -2
  72. package/dist/components/drawer/view.d.ts +2 -2
  73. package/dist/components/flashcard/index.d.ts +9 -9
  74. package/dist/components/flashcard/index.js +1 -1
  75. package/dist/components/flashcard/index.js.map +1 -1
  76. package/dist/components/flashcard/styles.module.css +4 -0
  77. package/dist/components/floating-card/constants.d.ts +26 -0
  78. package/dist/components/floating-card/constants.js +40 -0
  79. package/dist/components/floating-card/constants.js.map +1 -0
  80. package/dist/components/floating-card/context.d.ts +38 -6
  81. package/dist/components/floating-card/context.js +24 -3
  82. package/dist/components/floating-card/context.js.map +1 -1
  83. package/dist/components/floating-card/hooks/use-card-layout.d.ts +36 -0
  84. package/dist/components/floating-card/hooks/use-card-layout.js +106 -0
  85. package/dist/components/floating-card/hooks/use-card-layout.js.map +1 -0
  86. package/dist/components/floating-card/hooks/use-drag.d.ts +62 -0
  87. package/dist/components/floating-card/hooks/use-drag.js +100 -0
  88. package/dist/components/floating-card/hooks/use-drag.js.map +1 -0
  89. package/dist/components/floating-card/hooks/use-mouse-interaction.d.ts +58 -0
  90. package/dist/components/floating-card/hooks/use-mouse-interaction.js +91 -0
  91. package/dist/components/floating-card/hooks/use-mouse-interaction.js.map +1 -0
  92. package/dist/components/floating-card/hooks/use-resize.d.ts +56 -0
  93. package/dist/components/floating-card/hooks/use-resize.js +98 -0
  94. package/dist/components/floating-card/hooks/use-resize.js.map +1 -0
  95. package/dist/components/floating-card/index.d.ts +6 -2
  96. package/dist/components/floating-card/index.js +24 -32
  97. package/dist/components/floating-card/index.js.map +1 -1
  98. package/dist/components/floating-card/panel.d.ts +69 -0
  99. package/dist/components/floating-card/panel.js +111 -0
  100. package/dist/components/floating-card/panel.js.map +1 -0
  101. package/dist/components/floating-card/provider.d.ts +10 -6
  102. package/dist/components/floating-card/provider.js +159 -153
  103. package/dist/components/floating-card/provider.js.map +1 -1
  104. package/dist/components/floating-card/styles.module.css +93 -39
  105. package/dist/components/floating-card/types.d.ts +51 -10
  106. package/dist/components/floating-card/utils.d.ts +8 -85
  107. package/dist/components/floating-card/utils.js +12 -38
  108. package/dist/components/floating-card/utils.js.map +1 -1
  109. package/dist/components/gantt/components/base-elements/range.d.ts +2 -2
  110. package/dist/components/gantt/components/containers/external/gantt-panel-container/index.d.ts +2 -2
  111. package/dist/components/gantt/components/containers/internal/index.d.ts +2 -2
  112. package/dist/components/gantt/components/containers/internal/layout-container/index.d.ts +2 -2
  113. package/dist/components/gantt/components/containers/internal/virtualized-content-height-container/index.d.ts +2 -2
  114. package/dist/components/gantt/components/content-row/block.d.ts +2 -2
  115. package/dist/components/gantt/components/content-row/bracket.d.ts +3 -3
  116. package/dist/components/gantt/components/content-row/icon-marker.d.ts +2 -2
  117. package/dist/components/gantt/components/content-row/index.d.ts +2 -2
  118. package/dist/components/gantt/components/content-row/marker.d.ts +2 -2
  119. package/dist/components/gantt/components/content-row/spacer.d.ts +2 -2
  120. package/dist/components/gantt/components/current-time/index.d.ts +2 -2
  121. package/dist/components/gantt/components/header/index.d.ts +3 -3
  122. package/dist/components/gantt/components/panel-row/index.d.ts +2 -2
  123. package/dist/components/gantt/components/rows-virtualizer/index.d.ts +3 -3
  124. package/dist/components/gantt/components/timeline/index.d.ts +2 -2
  125. package/dist/components/gantt/context/index.d.ts +4 -4
  126. package/dist/components/gantt/context/store/index.d.ts +4 -4
  127. package/dist/components/gantt/context/temporal-data/index.d.ts +4 -4
  128. package/dist/components/gantt/hooks/use-layout-subscription/index.js +8 -8
  129. package/dist/components/gantt/hooks/use-layout-subscription/index.js.map +1 -1
  130. package/dist/components/hero/context.d.ts +2 -2
  131. package/dist/components/hero/index.d.ts +2 -2
  132. package/dist/components/hero/subtitle.d.ts +3 -3
  133. package/dist/components/hotkey/context.d.ts +2 -2
  134. package/dist/components/hotkey/index.d.ts +2 -2
  135. package/dist/components/hotkey/set.d.ts +2 -2
  136. package/dist/components/icon/context.d.ts +4 -4
  137. package/dist/components/icon/index.d.ts +2 -2
  138. package/dist/components/input/context.d.ts +2 -2
  139. package/dist/components/input/index.d.ts +2 -2
  140. package/dist/components/kanban/card-body.d.ts +2 -2
  141. package/dist/components/kanban/card-header-actions.d.ts +2 -2
  142. package/dist/components/kanban/card-header-title.d.ts +2 -2
  143. package/dist/components/kanban/card-header.d.ts +2 -2
  144. package/dist/components/kanban/card.d.ts +2 -2
  145. package/dist/components/kanban/column-actions.d.ts +2 -2
  146. package/dist/components/kanban/column-container.d.ts +2 -2
  147. package/dist/components/kanban/column-content.d.ts +2 -2
  148. package/dist/components/kanban/column-header-actions.d.ts +2 -2
  149. package/dist/components/kanban/column-header-drag-handle.d.ts +2 -2
  150. package/dist/components/kanban/column-header-title.d.ts +2 -2
  151. package/dist/components/kanban/column-header.d.ts +2 -2
  152. package/dist/components/kanban/column.d.ts +2 -2
  153. package/dist/components/kanban/context.d.ts +2 -2
  154. package/dist/components/kanban/header-actions.d.ts +2 -2
  155. package/dist/components/kanban/header-search.d.ts +2 -2
  156. package/dist/components/kanban/header-title.d.ts +2 -2
  157. package/dist/components/kanban/header.d.ts +2 -2
  158. package/dist/components/kanban/kanban.d.ts +4 -4
  159. package/dist/components/label/context.d.ts +4 -4
  160. package/dist/components/label/index.d.ts +2 -2
  161. package/dist/components/lines/index.d.ts +2 -2
  162. package/dist/components/link/context.d.ts +2 -2
  163. package/dist/components/link/index.d.ts +2 -2
  164. package/dist/components/list/context.d.ts +2 -2
  165. package/dist/components/list/index.d.ts +2 -2
  166. package/dist/components/list/item-content.d.ts +2 -2
  167. package/dist/components/list/item-description.d.ts +2 -2
  168. package/dist/components/list/item-title.d.ts +2 -2
  169. package/dist/components/list/item.d.ts +2 -2
  170. package/dist/components/media-controls/context.d.ts +4 -4
  171. package/dist/components/media-controls/fullscreen-button.d.ts +2 -2
  172. package/dist/components/media-controls/index.d.ts +2 -2
  173. package/dist/components/media-controls/mute-button.d.ts +2 -2
  174. package/dist/components/media-controls/play-button.d.ts +2 -2
  175. package/dist/components/media-controls/playback-rate.d.ts +2 -2
  176. package/dist/components/media-controls/seek-button.d.ts +2 -2
  177. package/dist/components/media-controls/time-display.d.ts +2 -2
  178. package/dist/components/media-controls/time-range.d.ts +2 -2
  179. package/dist/components/media-controls/volume-slider.d.ts +2 -2
  180. package/dist/components/menu/context.d.ts +2 -2
  181. package/dist/components/menu/index.d.ts +2 -2
  182. package/dist/components/menu/item-description.d.ts +2 -2
  183. package/dist/components/menu/item-label.d.ts +2 -2
  184. package/dist/components/menu/item.d.ts +2 -2
  185. package/dist/components/menu/section.d.ts +2 -2
  186. package/dist/components/menu/separator.d.ts +2 -2
  187. package/dist/components/menu/submenu.d.ts +2 -2
  188. package/dist/components/notice/index.d.ts +3 -2
  189. package/dist/components/notice/index.js +3 -3
  190. package/dist/components/notice/index.js.map +1 -1
  191. package/dist/components/notice/list.d.ts +2 -2
  192. package/dist/components/notice/list.js +14 -5
  193. package/dist/components/notice/list.js.map +1 -1
  194. package/dist/components/notice/notice-icon.d.ts +2 -2
  195. package/dist/components/notice/types.d.ts +6 -5
  196. package/dist/components/notice/utils.d.ts +11 -1
  197. package/dist/components/notice/utils.js +16 -1
  198. package/dist/components/notice/utils.js.map +1 -1
  199. package/dist/components/options/context.d.ts +2 -2
  200. package/dist/components/options/index.d.ts +2 -2
  201. package/dist/components/options/item-content.d.ts +2 -2
  202. package/dist/components/options/item-description.d.ts +2 -2
  203. package/dist/components/options/item-label.d.ts +2 -2
  204. package/dist/components/options/item.d.ts +2 -2
  205. package/dist/components/options/section.d.ts +2 -2
  206. package/dist/components/pagination/context.d.ts +2 -2
  207. package/dist/components/pagination/index.d.ts +2 -2
  208. package/dist/components/pagination/next.d.ts +2 -2
  209. package/dist/components/pagination/pages.d.ts +2 -2
  210. package/dist/components/pagination/prev.d.ts +2 -2
  211. package/dist/components/popover/content.d.ts +2 -2
  212. package/dist/components/popover/footer.d.ts +2 -2
  213. package/dist/components/popover/index.d.ts +2 -2
  214. package/dist/components/popover/title.d.ts +2 -2
  215. package/dist/components/popover/trigger.d.ts +2 -2
  216. package/dist/components/query-builder/action-element.d.ts +2 -2
  217. package/dist/components/query-builder/actions.d.ts +4 -4
  218. package/dist/components/query-builder/combinator-selector.d.ts +2 -2
  219. package/dist/components/query-builder/index.d.ts +2 -2
  220. package/dist/components/query-builder/rule-group.d.ts +4 -4
  221. package/dist/components/query-builder/rule.d.ts +2 -2
  222. package/dist/components/query-builder/value-editor.d.ts +2 -2
  223. package/dist/components/query-builder/value-selector.d.ts +2 -2
  224. package/dist/components/radio/context.d.ts +3 -3
  225. package/dist/components/radio/group.d.ts +2 -2
  226. package/dist/components/radio/index.d.ts +2 -2
  227. package/dist/components/search-field/context.d.ts +4 -4
  228. package/dist/components/search-field/index.d.ts +2 -2
  229. package/dist/components/select-field/context.d.ts +4 -4
  230. package/dist/components/select-field/index.d.ts +2 -2
  231. package/dist/components/sidenav/avatar.d.ts +2 -2
  232. package/dist/components/sidenav/content.d.ts +2 -2
  233. package/dist/components/sidenav/context.d.ts +2 -2
  234. package/dist/components/sidenav/footer.d.ts +2 -2
  235. package/dist/components/sidenav/header.d.ts +2 -2
  236. package/dist/components/sidenav/index.d.ts +2 -2
  237. package/dist/components/sidenav/item.d.ts +2 -2
  238. package/dist/components/sidenav/link.d.ts +2 -2
  239. package/dist/components/sidenav/menu-item.d.ts +2 -2
  240. package/dist/components/sidenav/menu.d.ts +2 -2
  241. package/dist/components/sidenav/trigger.d.ts +2 -2
  242. package/dist/components/skeleton/index.d.ts +2 -2
  243. package/dist/components/slider/index.d.ts +2 -2
  244. package/dist/components/status-indicator/index.d.ts +2 -2
  245. package/dist/components/switch/context.d.ts +4 -4
  246. package/dist/components/switch/index.d.ts +2 -2
  247. package/dist/components/table/body.d.ts +4 -3
  248. package/dist/components/table/body.js.map +1 -1
  249. package/dist/components/table/cell.d.ts +4 -3
  250. package/dist/components/table/cell.js.map +1 -1
  251. package/dist/components/table/context.d.ts +2 -2
  252. package/dist/components/table/features.d.ts +80 -0
  253. package/dist/components/table/features.js +61 -0
  254. package/dist/components/table/features.js.map +1 -0
  255. package/dist/components/table/header-cell.d.ts +4 -3
  256. package/dist/components/table/header-cell.js.map +1 -1
  257. package/dist/components/table/header.d.ts +4 -3
  258. package/dist/components/table/header.js.map +1 -1
  259. package/dist/components/table/index.d.ts +2 -2
  260. package/dist/components/table/index.js +40 -49
  261. package/dist/components/table/index.js.map +1 -1
  262. package/dist/components/table/row-ordering-feature.d.ts +88 -0
  263. package/dist/components/table/row-ordering-feature.js +115 -0
  264. package/dist/components/table/row-ordering-feature.js.map +1 -0
  265. package/dist/components/table/row.d.ts +4 -3
  266. package/dist/components/table/row.js.map +1 -1
  267. package/dist/components/table/types.d.ts +15 -13
  268. package/dist/components/tabs/context.d.ts +6 -6
  269. package/dist/components/tabs/index.d.ts +2 -2
  270. package/dist/components/tabs/list.d.ts +2 -2
  271. package/dist/components/tabs/panel.d.ts +2 -2
  272. package/dist/components/tabs/tab.d.ts +2 -2
  273. package/dist/components/text-area-field/context.d.ts +4 -4
  274. package/dist/components/text-area-field/index.d.ts +2 -2
  275. package/dist/components/text-field/context.d.ts +4 -4
  276. package/dist/components/text-field/index.d.ts +2 -2
  277. package/dist/components/time-field/index.d.ts +2 -2
  278. package/dist/components/time-field/styles.module.css +4 -0
  279. package/dist/components/tooltip/context.d.ts +2 -2
  280. package/dist/components/tooltip/index.d.ts +2 -2
  281. package/dist/components/tooltip/trigger.d.ts +2 -2
  282. package/dist/components/tree/context.d.ts +3 -3
  283. package/dist/components/tree/index.d.ts +2 -2
  284. package/dist/components/tree/item-actions.d.ts +2 -2
  285. package/dist/components/tree/item-content.d.ts +2 -2
  286. package/dist/components/tree/item-description.d.ts +2 -2
  287. package/dist/components/tree/item-label.d.ts +2 -2
  288. package/dist/components/tree/item-prefix-icon.d.ts +2 -2
  289. package/dist/components/tree/item.d.ts +2 -2
  290. package/dist/components/tree/lines.d.ts +2 -2
  291. package/dist/components/video/index.d.ts +2 -2
  292. package/dist/components/view-stack/context.d.ts +2 -2
  293. package/dist/components/view-stack/index.d.ts +2 -2
  294. package/dist/components/view-stack/trigger.d.ts +2 -2
  295. package/dist/components/view-stack/view.d.ts +2 -2
  296. package/dist/index.d.ts +5 -3
  297. package/dist/index.js +4 -2
  298. package/dist/providers/portal.d.ts +2 -2
  299. package/dist/providers/theme-provider.d.ts +2 -2
  300. package/package.json +20 -14
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime34 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime59 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/content.d.ts
17
17
 
@@ -37,7 +37,7 @@ import * as react_jsx_runtime34 from "react/jsx-runtime";
37
37
  declare function DrawerContent({
38
38
  className,
39
39
  ...rest
40
- }: ComponentPropsWithRef<'div'>): react_jsx_runtime34.JSX.Element;
40
+ }: ComponentPropsWithRef<'div'>): react_jsx_runtime59.JSX.Element;
41
41
  //#endregion
42
42
  export { DrawerContent };
43
43
  //# sourceMappingURL=content.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime39 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime62 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/footer.d.ts
17
17
 
@@ -39,7 +39,7 @@ import * as react_jsx_runtime39 from "react/jsx-runtime";
39
39
  declare function DrawerFooter({
40
40
  className,
41
41
  ...rest
42
- }: ComponentPropsWithRef<'footer'>): react_jsx_runtime39.JSX.Element;
42
+ }: ComponentPropsWithRef<'footer'>): react_jsx_runtime62.JSX.Element;
43
43
  //#endregion
44
44
  export { DrawerFooter };
45
45
  //# sourceMappingURL=footer.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DrawerTitleProps } from "./types.js";
14
- import * as react_jsx_runtime40 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime64 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/header-title.d.ts
17
17
 
@@ -41,7 +41,7 @@ declare function DrawerHeaderTitle({
41
41
  className,
42
42
  level,
43
43
  ...rest
44
- }: DrawerTitleProps): react_jsx_runtime40.JSX.Element;
44
+ }: DrawerTitleProps): react_jsx_runtime64.JSX.Element;
45
45
  //#endregion
46
46
  export { DrawerHeaderTitle };
47
47
  //# sourceMappingURL=header-title.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentPropsWithRef } from "react";
15
- import * as react_jsx_runtime42 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime66 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/header.d.ts
18
18
 
@@ -52,7 +52,7 @@ declare function DrawerHeader({
52
52
  title,
53
53
  children,
54
54
  ...rest
55
- }: ComponentPropsWithRef<'header'>): react_jsx_runtime42.JSX.Element;
55
+ }: ComponentPropsWithRef<'header'>): react_jsx_runtime66.JSX.Element;
56
56
  //#endregion
57
57
  export { DrawerHeader };
58
58
  //# sourceMappingURL=header.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime43 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime68 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/index.d.ts
18
18
 
@@ -63,7 +63,7 @@ declare function Drawer({
63
63
  size,
64
64
  onChange,
65
65
  ...rest
66
- }: DrawerProps): react_jsx_runtime43.JSX.Element;
66
+ }: DrawerProps): react_jsx_runtime68.JSX.Element;
67
67
  //#endregion
68
68
  export { Drawer };
69
69
  //# sourceMappingURL=index.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime44 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime70 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/layout-main.d.ts
17
17
 
@@ -38,7 +38,7 @@ import * as react_jsx_runtime44 from "react/jsx-runtime";
38
38
  declare function DrawerLayoutMain({
39
39
  className,
40
40
  ...rest
41
- }: ComponentPropsWithRef<'main'>): react_jsx_runtime44.JSX.Element;
41
+ }: ComponentPropsWithRef<'main'>): react_jsx_runtime70.JSX.Element;
42
42
  //#endregion
43
43
  export { DrawerLayoutMain };
44
44
  //# sourceMappingURL=layout-main.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DrawerLayoutProps } from "./types.js";
14
- import * as react_jsx_runtime114 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime71 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/layout.d.ts
17
17
 
@@ -42,7 +42,7 @@ declare function DrawerLayout({
42
42
  extend,
43
43
  push,
44
44
  ...rest
45
- }: DrawerLayoutProps): react_jsx_runtime114.JSX.Element;
45
+ }: DrawerLayoutProps): react_jsx_runtime71.JSX.Element;
46
46
  //#endregion
47
47
  export { DrawerLayout };
48
48
  //# sourceMappingURL=layout.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerMenuItemProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime135 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime72 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/menu-item.d.ts
18
18
 
@@ -45,7 +45,7 @@ declare function DrawerMenuItem({
45
45
  toggle,
46
46
  textValue,
47
47
  ...rest
48
- }: DrawerMenuItemProps): react_jsx_runtime135.JSX.Element | null;
48
+ }: DrawerMenuItemProps): react_jsx_runtime72.JSX.Element | null;
49
49
  //#endregion
50
50
  export { DrawerMenuItem };
51
51
  //# sourceMappingURL=menu-item.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { DrawerMenuProps } from "./types.js";
14
- import * as react_jsx_runtime130 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime74 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/menu.d.ts
17
17
 
@@ -39,7 +39,7 @@ declare function DrawerMenu({
39
39
  position,
40
40
  children,
41
41
  ...rest
42
- }: DrawerMenuProps): react_jsx_runtime130.JSX.Element;
42
+ }: DrawerMenuProps): react_jsx_runtime74.JSX.Element;
43
43
  //#endregion
44
44
  export { DrawerMenu };
45
45
  //# sourceMappingURL=menu.d.ts.map
@@ -11,7 +11,7 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime132 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime76 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/panel.d.ts
17
17
 
@@ -36,7 +36,7 @@ import * as react_jsx_runtime132 from "react/jsx-runtime";
36
36
  declare function DrawerPanel({
37
37
  className,
38
38
  ...rest
39
- }: ComponentPropsWithRef<'div'>): react_jsx_runtime132.JSX.Element;
39
+ }: ComponentPropsWithRef<'div'>): react_jsx_runtime76.JSX.Element;
40
40
  //#endregion
41
41
  export { DrawerPanel };
42
42
  //# sourceMappingURL=panel.d.ts.map
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerTriggerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime133 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime78 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/trigger.d.ts
18
18
 
@@ -47,7 +47,7 @@ import * as react_jsx_runtime133 from "react/jsx-runtime";
47
47
  declare function DrawerTrigger({
48
48
  for: events,
49
49
  ...rest
50
- }: DrawerTriggerProps): react_jsx_runtime133.JSX.Element;
50
+ }: DrawerTriggerProps): react_jsx_runtime78.JSX.Element;
51
51
  //#endregion
52
52
  export { DrawerTrigger };
53
53
  //# sourceMappingURL=trigger.d.ts.map
@@ -13,7 +13,7 @@
13
13
  import { ViewStackViewProps } from "../view-stack/types.js";
14
14
  import "client-only";
15
15
  import { ComponentPropsWithRef } from "react";
16
- import * as react_jsx_runtime58 from "react/jsx-runtime";
16
+ import * as react_jsx_runtime85 from "react/jsx-runtime";
17
17
 
18
18
  //#region src/components/drawer/view.d.ts
19
19
 
@@ -44,7 +44,7 @@ declare function DrawerView({
44
44
  children,
45
45
  className,
46
46
  ...rest
47
- }: ViewStackViewProps & ComponentPropsWithRef<'div'>): react_jsx_runtime58.JSX.Element;
47
+ }: ViewStackViewProps & ComponentPropsWithRef<'div'>): react_jsx_runtime85.JSX.Element;
48
48
  //#endregion
49
49
  export { DrawerView };
50
50
  //# sourceMappingURL=view.d.ts.map
@@ -12,14 +12,14 @@
12
12
 
13
13
  import { FlashcardComponentProps, FlashcardDetailsListProps, FlashcardProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react13 from "react";
16
- import * as react_jsx_runtime60 from "react/jsx-runtime";
15
+ import * as react15 from "react";
16
+ import * as react_jsx_runtime90 from "react/jsx-runtime";
17
17
 
18
18
  //#region src/components/flashcard/index.d.ts
19
19
  /**
20
20
  * Context for sharing Flashcard state across child components.
21
21
  */
22
- declare const FlashcardContext: react13.Context<FlashcardProps>;
22
+ declare const FlashcardContext: react15.Context<FlashcardProps>;
23
23
  /**
24
24
  * Flashcard - A quick visual identifier for map entity data.
25
25
  *
@@ -46,7 +46,7 @@ declare const FlashcardContext: react13.Context<FlashcardProps>;
46
46
  * </Flashcard>
47
47
  * ```
48
48
  */
49
- declare function Flashcard(props: FlashcardProps): react_jsx_runtime60.JSX.Element;
49
+ declare function Flashcard(props: FlashcardProps): react_jsx_runtime90.JSX.Element;
50
50
  declare namespace Flashcard {
51
51
  var displayName: string;
52
52
  }
@@ -68,7 +68,7 @@ declare namespace Flashcard {
68
68
  * </Flashcard>
69
69
  * ```
70
70
  */
71
- declare function FlashcardHero(props: FlashcardComponentProps): react_jsx_runtime60.JSX.Element;
71
+ declare function FlashcardHero(props: FlashcardComponentProps): react_jsx_runtime90.JSX.Element;
72
72
  declare namespace FlashcardHero {
73
73
  var displayName: string;
74
74
  }
@@ -92,7 +92,7 @@ declare namespace FlashcardHero {
92
92
  * </Flashcard>
93
93
  * ```
94
94
  */
95
- declare function FlashcardAdditionalData(props: FlashcardComponentProps): react_jsx_runtime60.JSX.Element | null;
95
+ declare function FlashcardAdditionalData(props: FlashcardComponentProps): react_jsx_runtime90.JSX.Element | null;
96
96
  declare namespace FlashcardAdditionalData {
97
97
  var displayName: string;
98
98
  }
@@ -119,7 +119,7 @@ declare namespace FlashcardAdditionalData {
119
119
  * </Flashcard>
120
120
  * ```
121
121
  */
122
- declare function FlashcardDetailsList(props: FlashcardDetailsListProps): react_jsx_runtime60.JSX.Element;
122
+ declare function FlashcardDetailsList(props: FlashcardDetailsListProps): react_jsx_runtime90.JSX.Element;
123
123
  declare namespace FlashcardDetailsList {
124
124
  var displayName: string;
125
125
  }
@@ -141,7 +141,7 @@ declare namespace FlashcardDetailsList {
141
141
  * </FlashcardDetailsList>
142
142
  * ```
143
143
  */
144
- declare function FlashcardDetailsLabel(props: FlashcardComponentProps): react_jsx_runtime60.JSX.Element;
144
+ declare function FlashcardDetailsLabel(props: FlashcardComponentProps): react_jsx_runtime90.JSX.Element;
145
145
  declare namespace FlashcardDetailsLabel {
146
146
  var displayName: string;
147
147
  }
@@ -163,7 +163,7 @@ declare namespace FlashcardDetailsLabel {
163
163
  * </FlashcardDetailsList>
164
164
  * ```
165
165
  */
166
- declare function FlashcardDetailsValue(props: FlashcardComponentProps): react_jsx_runtime60.JSX.Element;
166
+ declare function FlashcardDetailsValue(props: FlashcardComponentProps): react_jsx_runtime90.JSX.Element;
167
167
  declare namespace FlashcardDetailsValue {
168
168
  var displayName: string;
169
169
  }
@@ -99,7 +99,7 @@ function FlashcardHero(props) {
99
99
  const { isLoading, header, subheader } = useContext(FlashcardContext);
100
100
  if (isLoading) return /* @__PURE__ */ jsxs("div", {
101
101
  ...rest,
102
- className: clsx(styles.hero, className, "gap-s"),
102
+ className: clsx(styles.loading, className),
103
103
  children: [/* @__PURE__ */ jsx(Skeleton, {
104
104
  className: styles.skeleton,
105
105
  "data-testid": "hero-skeleton"
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/flashcard/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport 'client-only';\nimport { createContext, useContext } from 'react';\nimport { Heading } from 'react-aria-components/Heading';\nimport { Text } from 'react-aria-components/Text';\nimport { DetailsList } from '../details-list';\nimport { DetailsListLabel } from '../details-list/label';\nimport { DetailsListValue } from '../details-list/value';\nimport { Skeleton } from '../skeleton';\nimport styles from './styles.module.css';\nimport type {\n FlashcardComponentProps,\n FlashcardDetailsListProps,\n FlashcardProps,\n} from './types';\n\n/**\n * Context for sharing Flashcard state across child components.\n */\nexport const FlashcardContext = createContext<FlashcardProps>({\n isLoading: false,\n header: '',\n subheader: '',\n});\n\n/**\n * Flashcard - A quick visual identifier for map entity data.\n *\n * Container component that provides loading state and header/subheader\n * to child components via context.\n *\n * @param props - {@link FlashcardProps}\n * @param props.isLoading - Whether the flashcard is in a loading state.\n * @param props.header - Primary header text.\n * @param props.subheader - Secondary text below the header.\n * @param props.children - Child components to render.\n * @param props.className - Optional CSS class name.\n * @returns The rendered Flashcard component.\n *\n * @example\n * ```tsx\n * <Flashcard isLoading={false} header=\"Identifier\" subheader=\"DATA\">\n * <FlashcardHero />\n * <FlashcardAdditionalData>Secondary info</FlashcardAdditionalData>\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Status</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Active</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * </Flashcard>\n * ```\n */\nexport function Flashcard(props: FlashcardProps) {\n const { isLoading, header, subheader, children, className, ...rest } = props;\n\n return (\n <FlashcardContext.Provider value={{ isLoading, header, subheader }}>\n <div {...rest} className={clsx(styles.container, className)}>\n {children}\n </div>\n </FlashcardContext.Provider>\n );\n}\nFlashcard.displayName = 'Flashcard';\n\n/**\n * FlashcardHero - Upper section displaying header and subheader.\n *\n * Reads header and subheader from Flashcard context. Shows skeleton\n * placeholders when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Optional child content.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardHero component.\n *\n * @example\n * ```tsx\n * <Flashcard header=\"Entity Name\" subheader=\"Type\">\n * <FlashcardHero />\n * </Flashcard>\n * ```\n */\nexport function FlashcardHero(props: FlashcardComponentProps) {\n const { children, className, ...rest } = props;\n const { isLoading, header, subheader } = useContext(FlashcardContext);\n\n if (isLoading) {\n return (\n <div {...rest} className={clsx(styles.hero, className, 'gap-s')}>\n <Skeleton className={styles.skeleton} data-testid='hero-skeleton' />\n <Skeleton className={clsx(styles.skeleton, styles.half)} />\n </div>\n );\n }\n\n return (\n <div {...rest} className={clsx(styles.hero, className)}>\n <FlashcardHeader className={styles.header}>{header}</FlashcardHeader>\n <FlashcardSubheader className={styles.subheader}>\n {subheader}\n </FlashcardSubheader>\n </div>\n );\n}\nFlashcardHero.displayName = 'FlashcardHero';\n\nconst FlashcardHeader = Heading;\nconst FlashcardSubheader = Text;\n\n/**\n * FlashcardAdditionalData - Secondary data section below the hero.\n *\n * Hidden when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Content to display in the section.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardAdditionalData component, or null if loading.\n *\n * @example\n * ```tsx\n * <Flashcard header=\"Entity\" subheader=\"Data\">\n * <FlashcardHero />\n * <FlashcardAdditionalData>\n * Last updated: 2024-01-15\n * </FlashcardAdditionalData>\n * </Flashcard>\n * ```\n */\nexport function FlashcardAdditionalData(props: FlashcardComponentProps) {\n const { children, className, ...rest } = props;\n const { isLoading } = useContext(FlashcardContext);\n\n // While loading, don't display.\n if (isLoading) {\n return null;\n }\n\n return (\n <div {...rest} className={clsx(styles.data, className)}>\n {children}\n </div>\n );\n}\nFlashcardAdditionalData.displayName = 'FlashcardAdditionalData';\n\n/**\n * FlashcardDetailsList - Wrapper for key-value detail pairs.\n *\n * Wraps DetailsList with justify alignment for flashcard styling.\n *\n * @param props - {@link FlashcardDetailsListProps}\n * @param props.children - FlashcardDetailsLabel and FlashcardDetailsValue pairs.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardDetailsList component.\n *\n * @example\n * ```tsx\n * <Flashcard header=\"Aircraft\" subheader=\"Entity\">\n * <FlashcardHero />\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Status</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Active</FlashcardDetailsValue>\n * <FlashcardDetailsLabel>Speed</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>450 kts</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * </Flashcard>\n * ```\n */\nexport function FlashcardDetailsList(props: FlashcardDetailsListProps) {\n const { children, className, ...rest } = props;\n return (\n <DetailsList\n {...rest}\n align='justify'\n classNames={{ list: clsx(styles['details-list'], className) }}\n >\n {children}\n </DetailsList>\n );\n}\nFlashcardDetailsList.displayName = 'FlashcardDetailsList';\n\n/**\n * FlashcardDetailsLabel - Label for detail items.\n *\n * Shows skeleton placeholder when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Label text content.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardDetailsLabel component.\n *\n * @example\n * ```tsx\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Status</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Active</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * ```\n */\nexport function FlashcardDetailsLabel(props: FlashcardComponentProps) {\n const { isLoading } = useContext(FlashcardContext);\n const { className, children, ...rest } = props;\n return (\n <DetailsListLabel\n {...rest}\n className={clsx(styles['details-label'], className)}\n >\n {isLoading ? (\n <Skeleton className={clsx(styles.skeleton, styles.smaller)} />\n ) : (\n children\n )}\n </DetailsListLabel>\n );\n}\nFlashcardDetailsLabel.displayName = 'FlashcardDetailsLabel';\n\n/**\n * FlashcardDetailsValue - Value for detail items.\n *\n * Shows skeleton placeholder when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Value text content.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardDetailsValue component.\n *\n * @example\n * ```tsx\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Type</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Aircraft</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * ```\n */\nexport function FlashcardDetailsValue(props: FlashcardComponentProps) {\n const { isLoading } = useContext(FlashcardContext);\n const { className, children, ...rest } = props;\n return (\n <DetailsListValue\n {...rest}\n className={clsx(styles['details-value'], className)}\n >\n {isLoading ? (\n <Skeleton className={clsx(styles.skeleton, styles.smaller)} />\n ) : (\n children\n )}\n </DetailsListValue>\n );\n}\nFlashcardDetailsValue.displayName = 'FlashcardDetailsValue';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,MAAa,mBAAmB,cAA8B;CAC5D,WAAW;CACX,QAAQ;CACR,WAAW;CACZ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BF,SAAgB,UAAU,OAAuB;CAC/C,MAAM,EAAE,WAAW,QAAQ,WAAW,UAAU,WAAW,GAAG,SAAS;AAEvE,QACE,oBAAC,iBAAiB;EAAS,OAAO;GAAE;GAAW;GAAQ;GAAW;YAChE,oBAAC;GAAI,GAAI;GAAM,WAAW,KAAK,OAAO,WAAW,UAAU;GACxD;IACG;GACoB;;AAGhC,UAAU,cAAc;;;;;;;;;;;;;;;;;;;AAoBxB,SAAgB,cAAc,OAAgC;CAC5D,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;CACzC,MAAM,EAAE,WAAW,QAAQ,cAAc,WAAW,iBAAiB;AAErE,KAAI,UACF,QACE,qBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,WAAW,QAAQ;aAC7D,oBAAC;GAAS,WAAW,OAAO;GAAU,eAAY;IAAkB,EACpE,oBAAC,YAAS,WAAW,KAAK,OAAO,UAAU,OAAO,KAAK,GAAI;GACvD;AAIV,QACE,qBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,UAAU;aACpD,oBAAC;GAAgB,WAAW,OAAO;aAAS;IAAyB,EACrE,oBAAC;GAAmB,WAAW,OAAO;aACnC;IACkB;GACjB;;AAGV,cAAc,cAAc;AAE5B,MAAM,kBAAkB;AACxB,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;AAsB3B,SAAgB,wBAAwB,OAAgC;CACtE,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;CACzC,MAAM,EAAE,cAAc,WAAW,iBAAiB;AAGlD,KAAI,UACF,QAAO;AAGT,QACE,oBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,UAAU;EACnD;GACG;;AAGV,wBAAwB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;AAyBtC,SAAgB,qBAAqB,OAAkC;CACrE,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;AACzC,QACE,oBAAC;EACC,GAAI;EACJ,OAAM;EACN,YAAY,EAAE,MAAM,KAAK,OAAO,iBAAiB,UAAU,EAAE;EAE5D;GACW;;AAGlB,qBAAqB,cAAc;;;;;;;;;;;;;;;;;;;AAoBnC,SAAgB,sBAAsB,OAAgC;CACpE,MAAM,EAAE,cAAc,WAAW,iBAAiB;CAClD,MAAM,EAAE,WAAW,UAAU,GAAG,SAAS;AACzC,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,KAAK,OAAO,kBAAkB,UAAU;YAElD,YACC,oBAAC,YAAS,WAAW,KAAK,OAAO,UAAU,OAAO,QAAQ,GAAI,GAE9D;GAEe;;AAGvB,sBAAsB,cAAc;;;;;;;;;;;;;;;;;;;AAoBpC,SAAgB,sBAAsB,OAAgC;CACpE,MAAM,EAAE,cAAc,WAAW,iBAAiB;CAClD,MAAM,EAAE,WAAW,UAAU,GAAG,SAAS;AACzC,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,KAAK,OAAO,kBAAkB,UAAU;YAElD,YACC,oBAAC,YAAS,WAAW,KAAK,OAAO,UAAU,OAAO,QAAQ,GAAI,GAE9D;GAEe;;AAGvB,sBAAsB,cAAc"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/flashcard/index.tsx"],"sourcesContent":["/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n'use client';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport 'client-only';\nimport { createContext, useContext } from 'react';\nimport { Heading } from 'react-aria-components/Heading';\nimport { Text } from 'react-aria-components/Text';\nimport { DetailsList } from '../details-list';\nimport { DetailsListLabel } from '../details-list/label';\nimport { DetailsListValue } from '../details-list/value';\nimport { Skeleton } from '../skeleton';\nimport styles from './styles.module.css';\nimport type {\n FlashcardComponentProps,\n FlashcardDetailsListProps,\n FlashcardProps,\n} from './types';\n\n/**\n * Context for sharing Flashcard state across child components.\n */\nexport const FlashcardContext = createContext<FlashcardProps>({\n isLoading: false,\n header: '',\n subheader: '',\n});\n\n/**\n * Flashcard - A quick visual identifier for map entity data.\n *\n * Container component that provides loading state and header/subheader\n * to child components via context.\n *\n * @param props - {@link FlashcardProps}\n * @param props.isLoading - Whether the flashcard is in a loading state.\n * @param props.header - Primary header text.\n * @param props.subheader - Secondary text below the header.\n * @param props.children - Child components to render.\n * @param props.className - Optional CSS class name.\n * @returns The rendered Flashcard component.\n *\n * @example\n * ```tsx\n * <Flashcard isLoading={false} header=\"Identifier\" subheader=\"DATA\">\n * <FlashcardHero />\n * <FlashcardAdditionalData>Secondary info</FlashcardAdditionalData>\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Status</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Active</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * </Flashcard>\n * ```\n */\nexport function Flashcard(props: FlashcardProps) {\n const { isLoading, header, subheader, children, className, ...rest } = props;\n\n return (\n <FlashcardContext.Provider value={{ isLoading, header, subheader }}>\n <div {...rest} className={clsx(styles.container, className)}>\n {children}\n </div>\n </FlashcardContext.Provider>\n );\n}\nFlashcard.displayName = 'Flashcard';\n\n/**\n * FlashcardHero - Upper section displaying header and subheader.\n *\n * Reads header and subheader from Flashcard context. Shows skeleton\n * placeholders when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Optional child content.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardHero component.\n *\n * @example\n * ```tsx\n * <Flashcard header=\"Entity Name\" subheader=\"Type\">\n * <FlashcardHero />\n * </Flashcard>\n * ```\n */\nexport function FlashcardHero(props: FlashcardComponentProps) {\n const { children, className, ...rest } = props;\n const { isLoading, header, subheader } = useContext(FlashcardContext);\n\n if (isLoading) {\n return (\n <div {...rest} className={clsx(styles.loading, className)}>\n <Skeleton className={styles.skeleton} data-testid='hero-skeleton' />\n <Skeleton className={clsx(styles.skeleton, styles.half)} />\n </div>\n );\n }\n\n return (\n <div {...rest} className={clsx(styles.hero, className)}>\n <FlashcardHeader className={styles.header}>{header}</FlashcardHeader>\n <FlashcardSubheader className={styles.subheader}>\n {subheader}\n </FlashcardSubheader>\n </div>\n );\n}\nFlashcardHero.displayName = 'FlashcardHero';\n\nconst FlashcardHeader = Heading;\nconst FlashcardSubheader = Text;\n\n/**\n * FlashcardAdditionalData - Secondary data section below the hero.\n *\n * Hidden when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Content to display in the section.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardAdditionalData component, or null if loading.\n *\n * @example\n * ```tsx\n * <Flashcard header=\"Entity\" subheader=\"Data\">\n * <FlashcardHero />\n * <FlashcardAdditionalData>\n * Last updated: 2024-01-15\n * </FlashcardAdditionalData>\n * </Flashcard>\n * ```\n */\nexport function FlashcardAdditionalData(props: FlashcardComponentProps) {\n const { children, className, ...rest } = props;\n const { isLoading } = useContext(FlashcardContext);\n\n // While loading, don't display.\n if (isLoading) {\n return null;\n }\n\n return (\n <div {...rest} className={clsx(styles.data, className)}>\n {children}\n </div>\n );\n}\nFlashcardAdditionalData.displayName = 'FlashcardAdditionalData';\n\n/**\n * FlashcardDetailsList - Wrapper for key-value detail pairs.\n *\n * Wraps DetailsList with justify alignment for flashcard styling.\n *\n * @param props - {@link FlashcardDetailsListProps}\n * @param props.children - FlashcardDetailsLabel and FlashcardDetailsValue pairs.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardDetailsList component.\n *\n * @example\n * ```tsx\n * <Flashcard header=\"Aircraft\" subheader=\"Entity\">\n * <FlashcardHero />\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Status</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Active</FlashcardDetailsValue>\n * <FlashcardDetailsLabel>Speed</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>450 kts</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * </Flashcard>\n * ```\n */\nexport function FlashcardDetailsList(props: FlashcardDetailsListProps) {\n const { children, className, ...rest } = props;\n return (\n <DetailsList\n {...rest}\n align='justify'\n classNames={{ list: clsx(styles['details-list'], className) }}\n >\n {children}\n </DetailsList>\n );\n}\nFlashcardDetailsList.displayName = 'FlashcardDetailsList';\n\n/**\n * FlashcardDetailsLabel - Label for detail items.\n *\n * Shows skeleton placeholder when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Label text content.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardDetailsLabel component.\n *\n * @example\n * ```tsx\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Status</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Active</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * ```\n */\nexport function FlashcardDetailsLabel(props: FlashcardComponentProps) {\n const { isLoading } = useContext(FlashcardContext);\n const { className, children, ...rest } = props;\n return (\n <DetailsListLabel\n {...rest}\n className={clsx(styles['details-label'], className)}\n >\n {isLoading ? (\n <Skeleton className={clsx(styles.skeleton, styles.smaller)} />\n ) : (\n children\n )}\n </DetailsListLabel>\n );\n}\nFlashcardDetailsLabel.displayName = 'FlashcardDetailsLabel';\n\n/**\n * FlashcardDetailsValue - Value for detail items.\n *\n * Shows skeleton placeholder when the parent Flashcard has isLoading=true.\n *\n * @param props - {@link FlashcardComponentProps}\n * @param props.children - Value text content.\n * @param props.className - Optional CSS class name.\n * @returns The rendered FlashcardDetailsValue component.\n *\n * @example\n * ```tsx\n * <FlashcardDetailsList>\n * <FlashcardDetailsLabel>Type</FlashcardDetailsLabel>\n * <FlashcardDetailsValue>Aircraft</FlashcardDetailsValue>\n * </FlashcardDetailsList>\n * ```\n */\nexport function FlashcardDetailsValue(props: FlashcardComponentProps) {\n const { isLoading } = useContext(FlashcardContext);\n const { className, children, ...rest } = props;\n return (\n <DetailsListValue\n {...rest}\n className={clsx(styles['details-value'], className)}\n >\n {isLoading ? (\n <Skeleton className={clsx(styles.skeleton, styles.smaller)} />\n ) : (\n children\n )}\n </DetailsListValue>\n );\n}\nFlashcardDetailsValue.displayName = 'FlashcardDetailsValue';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCA,MAAa,mBAAmB,cAA8B;CAC5D,WAAW;CACX,QAAQ;CACR,WAAW;CACZ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;AA4BF,SAAgB,UAAU,OAAuB;CAC/C,MAAM,EAAE,WAAW,QAAQ,WAAW,UAAU,WAAW,GAAG,SAAS;AAEvE,QACE,oBAAC,iBAAiB;EAAS,OAAO;GAAE;GAAW;GAAQ;GAAW;YAChE,oBAAC;GAAI,GAAI;GAAM,WAAW,KAAK,OAAO,WAAW,UAAU;GACxD;IACG;GACoB;;AAGhC,UAAU,cAAc;;;;;;;;;;;;;;;;;;;AAoBxB,SAAgB,cAAc,OAAgC;CAC5D,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;CACzC,MAAM,EAAE,WAAW,QAAQ,cAAc,WAAW,iBAAiB;AAErE,KAAI,UACF,QACE,qBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,SAAS,UAAU;aACvD,oBAAC;GAAS,WAAW,OAAO;GAAU,eAAY;IAAkB,EACpE,oBAAC,YAAS,WAAW,KAAK,OAAO,UAAU,OAAO,KAAK,GAAI;GACvD;AAIV,QACE,qBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,UAAU;aACpD,oBAAC;GAAgB,WAAW,OAAO;aAAS;IAAyB,EACrE,oBAAC;GAAmB,WAAW,OAAO;aACnC;IACkB;GACjB;;AAGV,cAAc,cAAc;AAE5B,MAAM,kBAAkB;AACxB,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;AAsB3B,SAAgB,wBAAwB,OAAgC;CACtE,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;CACzC,MAAM,EAAE,cAAc,WAAW,iBAAiB;AAGlD,KAAI,UACF,QAAO;AAGT,QACE,oBAAC;EAAI,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,UAAU;EACnD;GACG;;AAGV,wBAAwB,cAAc;;;;;;;;;;;;;;;;;;;;;;;;AAyBtC,SAAgB,qBAAqB,OAAkC;CACrE,MAAM,EAAE,UAAU,WAAW,GAAG,SAAS;AACzC,QACE,oBAAC;EACC,GAAI;EACJ,OAAM;EACN,YAAY,EAAE,MAAM,KAAK,OAAO,iBAAiB,UAAU,EAAE;EAE5D;GACW;;AAGlB,qBAAqB,cAAc;;;;;;;;;;;;;;;;;;;AAoBnC,SAAgB,sBAAsB,OAAgC;CACpE,MAAM,EAAE,cAAc,WAAW,iBAAiB;CAClD,MAAM,EAAE,WAAW,UAAU,GAAG,SAAS;AACzC,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,KAAK,OAAO,kBAAkB,UAAU;YAElD,YACC,oBAAC,YAAS,WAAW,KAAK,OAAO,UAAU,OAAO,QAAQ,GAAI,GAE9D;GAEe;;AAGvB,sBAAsB,cAAc;;;;;;;;;;;;;;;;;;;AAoBpC,SAAgB,sBAAsB,OAAgC;CACpE,MAAM,EAAE,cAAc,WAAW,iBAAiB;CAClD,MAAM,EAAE,WAAW,UAAU,GAAG,SAAS;AACzC,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,KAAK,OAAO,kBAAkB,UAAU;YAElD,YACC,oBAAC,YAAS,WAAW,KAAK,OAAO,UAAU,OAAO,QAAQ,GAAI,GAE9D;GAEe;;AAGvB,sBAAsB,cAAc"}
@@ -23,6 +23,10 @@
23
23
  @apply mb-s bg-surface-muted p-s flex flex-col;
24
24
  }
25
25
 
26
+ .loading {
27
+ @apply mb-s bg-surface-muted p-s gap-s flex flex-col;
28
+ }
29
+
26
30
  .header {
27
31
  @apply fg-primary-bold text-body-m;
28
32
  }
@@ -0,0 +1,26 @@
1
+ //#region src/components/floating-card/constants.d.ts
2
+ /** Size a card opens at when `initialDimensions` is omitted. */
3
+ declare const DEFAULT_DIMENSIONS: {
4
+ readonly width: 300;
5
+ readonly height: 400;
6
+ };
7
+ /** Position a card opens at when `initialPosition` is omitted. */
8
+ declare const DEFAULT_POSITION: {
9
+ readonly x: 100;
10
+ readonly y: 100;
11
+ };
12
+ /** Smallest size a card can be resized to. */
13
+ declare const MIN_DIMENSIONS: {
14
+ readonly width: 150;
15
+ readonly height: 100;
16
+ };
17
+ /**
18
+ * Pointer travel, in pixels, before a press on the header becomes a drag.
19
+ * Keeps a click from nudging the card.
20
+ */
21
+ declare const DRAG_THRESHOLD = 5;
22
+ /** Stacking order the first card in a provider receives. */
23
+ declare const BASE_Z_INDEX = 1;
24
+ //#endregion
25
+ export { BASE_Z_INDEX, DEFAULT_DIMENSIONS, DEFAULT_POSITION, DRAG_THRESHOLD, MIN_DIMENSIONS };
26
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1,40 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+
14
+ //#region src/components/floating-card/constants.ts
15
+ /** Size a card opens at when `initialDimensions` is omitted. */
16
+ const DEFAULT_DIMENSIONS = {
17
+ width: 300,
18
+ height: 400
19
+ };
20
+ /** Position a card opens at when `initialPosition` is omitted. */
21
+ const DEFAULT_POSITION = {
22
+ x: 100,
23
+ y: 100
24
+ };
25
+ /** Smallest size a card can be resized to. */
26
+ const MIN_DIMENSIONS = {
27
+ width: 150,
28
+ height: 100
29
+ };
30
+ /**
31
+ * Pointer travel, in pixels, before a press on the header becomes a drag.
32
+ * Keeps a click from nudging the card.
33
+ */
34
+ const DRAG_THRESHOLD = 5;
35
+ /** Stacking order the first card in a provider receives. */
36
+ const BASE_Z_INDEX = 1;
37
+
38
+ //#endregion
39
+ export { BASE_Z_INDEX, DEFAULT_DIMENSIONS, DEFAULT_POSITION, DRAG_THRESHOLD, MIN_DIMENSIONS };
40
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","names":[],"sources":["../../../src/components/floating-card/constants.ts"],"sourcesContent":["// __private-exports\n/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\n/** Size a card opens at when `initialDimensions` is omitted. */\nexport const DEFAULT_DIMENSIONS = { width: 300, height: 400 } as const;\n\n/** Position a card opens at when `initialPosition` is omitted. */\nexport const DEFAULT_POSITION = { x: 100, y: 100 } as const;\n\n/** Smallest size a card can be resized to. */\nexport const MIN_DIMENSIONS = { width: 150, height: 100 } as const;\n\n/**\n * Pointer travel, in pixels, before a press on the header becomes a drag.\n * Keeps a click from nudging the card.\n */\nexport const DRAG_THRESHOLD = 5;\n\n/** Stacking order the first card in a provider receives. */\nexport const BASE_Z_INDEX = 1;\n"],"mappings":";;;;;;;;;;;;;;;AAcA,MAAa,qBAAqB;CAAE,OAAO;CAAK,QAAQ;CAAK;;AAG7D,MAAa,mBAAmB;CAAE,GAAG;CAAK,GAAG;CAAK;;AAGlD,MAAa,iBAAiB;CAAE,OAAO;CAAK,QAAQ;CAAK;;;;;AAMzD,MAAa,iBAAiB;;AAG9B,MAAa,eAAe"}
@@ -10,16 +10,48 @@
10
10
  * governing permissions and limitations under the License.
11
11
  */
12
12
 
13
- import { FloatingCardContextValue } from "./types.js";
14
- import * as react7 from "react";
13
+ import { Dimensions, FloatingCardContextValue, Position } from "./types.js";
14
+ import * as react16 from "react";
15
+ import { UniqueId } from "@accelint/core/utility/uuid";
15
16
 
16
17
  //#region src/components/floating-card/context.d.ts
17
- declare const FloatingCardContext: react7.Context<FloatingCardContextValue | null>;
18
+ /**
19
+ * How a `FloatingCard` attaches itself to its provider.
20
+ *
21
+ * @remarks
22
+ * Internal wiring rather than application API, so it is declared here rather
23
+ * than alongside the public types. Every member is stable for the provider's
24
+ * lifetime.
25
+ */
26
+ type FloatingCardRegistryValue = {
27
+ /** Registers a card with the provider so it renders as a panel */
28
+ openCard: (id: UniqueId, title: string | undefined, position: Position, dimensions: Dimensions) => void;
29
+ /** Registers the DOM node a card's children portal into */
30
+ addRef: (id: UniqueId, ref: HTMLDivElement | null) => void;
31
+ };
32
+ declare const FloatingCardContext: react16.Context<FloatingCardContextValue | null>;
33
+ /**
34
+ * Wiring between `FloatingCard` and its provider.
35
+ *
36
+ * @remarks
37
+ * Deliberately separate from {@link FloatingCardContext}: registering a card is
38
+ * an internal detail, so it stays off the value applications consume. Its
39
+ * members are stable for the provider's lifetime, so reading it never causes a
40
+ * re-render.
41
+ */
42
+ declare const FloatingCardRegistryContext: react16.Context<FloatingCardRegistryValue | null>;
43
+ /**
44
+ * Reads the registration channel a `FloatingCard` uses to attach itself.
45
+ *
46
+ * @returns The provider's registration callbacks.
47
+ * @throws {Error} If used outside of a FloatingCardProvider.
48
+ */
49
+ declare function useFloatingCardRegistry(): FloatingCardRegistryValue;
18
50
  /**
19
51
  * Hook to access floating card management functionality.
20
52
  *
21
- * Provides access to card registry, ref management, and programmatic control
22
- * over opening, closing, and pinning floating cards.
53
+ * Provides the card registry and programmatic control over closing and pinning
54
+ * floating cards.
23
55
  *
24
56
  * @returns Context value with card management methods and state.
25
57
  * @throws {Error} If used outside of a FloatingCardProvider.
@@ -39,5 +71,5 @@ declare const FloatingCardContext: react7.Context<FloatingCardContextValue | nul
39
71
  */
40
72
  declare function useFloatingCard(): FloatingCardContextValue;
41
73
  //#endregion
42
- export { FloatingCardContext, useFloatingCard };
74
+ export { FloatingCardContext, FloatingCardRegistryContext, FloatingCardRegistryValue, useFloatingCard, useFloatingCardRegistry };
43
75
  //# sourceMappingURL=context.d.ts.map
@@ -16,10 +16,31 @@ import { createContext, useContext } from "react";
16
16
  //#region src/components/floating-card/context.tsx
17
17
  const FloatingCardContext = createContext(null);
18
18
  /**
19
+ * Wiring between `FloatingCard` and its provider.
20
+ *
21
+ * @remarks
22
+ * Deliberately separate from {@link FloatingCardContext}: registering a card is
23
+ * an internal detail, so it stays off the value applications consume. Its
24
+ * members are stable for the provider's lifetime, so reading it never causes a
25
+ * re-render.
26
+ */
27
+ const FloatingCardRegistryContext = createContext(null);
28
+ /**
29
+ * Reads the registration channel a `FloatingCard` uses to attach itself.
30
+ *
31
+ * @returns The provider's registration callbacks.
32
+ * @throws {Error} If used outside of a FloatingCardProvider.
33
+ */
34
+ function useFloatingCardRegistry() {
35
+ const context = useContext(FloatingCardRegistryContext);
36
+ if (!context) throw new Error("FloatingCard must be rendered within a FloatingCardProvider.");
37
+ return context;
38
+ }
39
+ /**
19
40
  * Hook to access floating card management functionality.
20
41
  *
21
- * Provides access to card registry, ref management, and programmatic control
22
- * over opening, closing, and pinning floating cards.
42
+ * Provides the card registry and programmatic control over closing and pinning
43
+ * floating cards.
23
44
  *
24
45
  * @returns Context value with card management methods and state.
25
46
  * @throws {Error} If used outside of a FloatingCardProvider.
@@ -44,5 +65,5 @@ function useFloatingCard() {
44
65
  }
45
66
 
46
67
  //#endregion
47
- export { FloatingCardContext, useFloatingCard };
68
+ export { FloatingCardContext, FloatingCardRegistryContext, useFloatingCard, useFloatingCardRegistry };
48
69
  //# sourceMappingURL=context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/floating-card/context.tsx"],"sourcesContent":["// __private-exports\n/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { createContext, useContext } from 'react';\nimport type { FloatingCardContextValue } from './types';\n\nexport const FloatingCardContext =\n createContext<FloatingCardContextValue | null>(null);\n/**\n * Hook to access floating card management functionality.\n *\n * Provides access to card registry, ref management, and programmatic control\n * over opening, closing, and pinning floating cards.\n *\n * @returns Context value with card management methods and state.\n * @throws {Error} If used outside of a FloatingCardProvider.\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const { closeCard, togglePinCard } = useFloatingCard();\n *\n * return (\n * <button onClick={() => closeCard('my-card-id' as UniqueId)}>\n * Close Card\n * </button>\n * );\n * }\n * ```\n */\nexport function useFloatingCard(): FloatingCardContextValue {\n const context = useContext(FloatingCardContext);\n if (!context) {\n throw new Error(\n 'useFloatingCard must be used within a FloatingCardProvider.',\n );\n }\n return context;\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAgBA,MAAa,sBACX,cAA+C,KAAK;;;;;;;;;;;;;;;;;;;;;;;AAuBtD,SAAgB,kBAA4C;CAC1D,MAAM,UAAU,WAAW,oBAAoB;AAC/C,KAAI,CAAC,QACH,OAAM,IAAI,MACR,8DACD;AAEH,QAAO"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/floating-card/context.tsx"],"sourcesContent":["// __private-exports\n/*\n * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */\n\nimport { createContext, useContext } from 'react';\nimport type { UniqueId } from '@accelint/core/utility/uuid';\nimport type { Dimensions, FloatingCardContextValue, Position } from './types';\n\n/**\n * How a `FloatingCard` attaches itself to its provider.\n *\n * @remarks\n * Internal wiring rather than application API, so it is declared here rather\n * than alongside the public types. Every member is stable for the provider's\n * lifetime.\n */\nexport type FloatingCardRegistryValue = {\n /** Registers a card with the provider so it renders as a panel */\n openCard: (\n id: UniqueId,\n title: string | undefined,\n position: Position,\n dimensions: Dimensions,\n ) => void;\n\n /** Registers the DOM node a card's children portal into */\n addRef: (id: UniqueId, ref: HTMLDivElement | null) => void;\n};\n\nexport const FloatingCardContext =\n createContext<FloatingCardContextValue | null>(null);\n\n/**\n * Wiring between `FloatingCard` and its provider.\n *\n * @remarks\n * Deliberately separate from {@link FloatingCardContext}: registering a card is\n * an internal detail, so it stays off the value applications consume. Its\n * members are stable for the provider's lifetime, so reading it never causes a\n * re-render.\n */\nexport const FloatingCardRegistryContext =\n createContext<FloatingCardRegistryValue | null>(null);\n\n/**\n * Reads the registration channel a `FloatingCard` uses to attach itself.\n *\n * @returns The provider's registration callbacks.\n * @throws {Error} If used outside of a FloatingCardProvider.\n */\nexport function useFloatingCardRegistry(): FloatingCardRegistryValue {\n const context = useContext(FloatingCardRegistryContext);\n\n if (!context) {\n // Only FloatingCard reads this, so name that rather than the internal hook.\n throw new Error(\n 'FloatingCard must be rendered within a FloatingCardProvider.',\n );\n }\n\n return context;\n}\n\n/**\n * Hook to access floating card management functionality.\n *\n * Provides the card registry and programmatic control over closing and pinning\n * floating cards.\n *\n * @returns Context value with card management methods and state.\n * @throws {Error} If used outside of a FloatingCardProvider.\n *\n * @example\n * ```tsx\n * function MyComponent() {\n * const { closeCard, togglePinCard } = useFloatingCard();\n *\n * return (\n * <button onClick={() => closeCard('my-card-id' as UniqueId)}>\n * Close Card\n * </button>\n * );\n * }\n * ```\n */\nexport function useFloatingCard(): FloatingCardContextValue {\n const context = useContext(FloatingCardContext);\n if (!context) {\n throw new Error(\n 'useFloatingCard must be used within a FloatingCardProvider.',\n );\n }\n return context;\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAsCA,MAAa,sBACX,cAA+C,KAAK;;;;;;;;;;AAWtD,MAAa,8BACX,cAAgD,KAAK;;;;;;;AAQvD,SAAgB,0BAAqD;CACnE,MAAM,UAAU,WAAW,4BAA4B;AAEvD,KAAI,CAAC,QAEH,OAAM,IAAI,MACR,+DACD;AAGH,QAAO;;;;;;;;;;;;;;;;;;;;;;;;AAyBT,SAAgB,kBAA4C;CAC1D,MAAM,UAAU,WAAW,oBAAoB;AAC/C,KAAI,CAAC,QACH,OAAM,IAAI,MACR,8DACD;AAEH,QAAO"}
@@ -0,0 +1,36 @@
1
+ /*
2
+ * Copyright 2026 Hypergiant Galactic Systems Inc. All rights reserved.
3
+ * This file is licensed to you under the Apache License, Version 2.0 (the "License");
4
+ * you may not use this file except in compliance with the License. You may obtain a copy
5
+ * of the License at https://www.apache.org/licenses/LICENSE-2.0
6
+ *
7
+ * Unless required by applicable law or agreed to in writing, software distributed under
8
+ * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS
9
+ * OF ANY KIND, either express or implied. See the License for the specific language
10
+ * governing permissions and limitations under the License.
11
+ */
12
+
13
+ import { Dimensions, FloatingCardLayout, Position } from "../types.js";
14
+ import { UniqueId } from "@accelint/core/utility/uuid";
15
+
16
+ //#region src/components/floating-card/hooks/use-card-layout.d.ts
17
+ /**
18
+ * Tracks position, size, and stacking order for the cards in one provider.
19
+ *
20
+ * @returns The layout registry and the operations that mutate it.
21
+ *
22
+ * @remarks
23
+ * State is per-provider rather than module-level so two providers on a page
24
+ * keep independent stacking orders.
25
+ */
26
+ declare function useCardLayout(): {
27
+ layouts: Record<UniqueId, FloatingCardLayout>;
28
+ registerCard: (id: UniqueId, title: string | undefined, position: Position, dimensions: Dimensions) => void;
29
+ unregisterCard: (id: UniqueId) => void;
30
+ moveCard: (id: UniqueId, position: Position) => void;
31
+ resizeCard: (id: UniqueId, dimensions: Dimensions, position: Position) => void;
32
+ bringToFront: (id: UniqueId) => void;
33
+ };
34
+ //#endregion
35
+ export { useCardLayout };
36
+ //# sourceMappingURL=use-card-layout.d.ts.map