@accelint/design-toolkit 9.2.0 → 9.4.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 (733) hide show
  1. package/README.md +15 -22
  2. package/catalog-info.yaml +4 -4
  3. package/dist/components/accordion/context.d.ts +6 -0
  4. package/dist/components/accordion/context.js +6 -0
  5. package/dist/components/accordion/context.js.map +1 -1
  6. package/dist/components/accordion/group.d.ts +37 -2
  7. package/dist/components/accordion/group.js +34 -0
  8. package/dist/components/accordion/group.js.map +1 -1
  9. package/dist/components/accordion/header.d.ts +27 -2
  10. package/dist/components/accordion/header.js +25 -1
  11. package/dist/components/accordion/header.js.map +1 -1
  12. package/dist/components/accordion/index.d.ts +18 -4
  13. package/dist/components/accordion/index.js +16 -2
  14. package/dist/components/accordion/index.js.map +1 -1
  15. package/dist/components/accordion/panel.d.ts +29 -2
  16. package/dist/components/accordion/panel.js +26 -0
  17. package/dist/components/accordion/panel.js.map +1 -1
  18. package/dist/components/accordion/trigger.d.ts +25 -2
  19. package/dist/components/accordion/trigger.js +23 -1
  20. package/dist/components/accordion/trigger.js.map +1 -1
  21. package/dist/components/accordion/types.d.ts +33 -0
  22. package/dist/components/action-bar/index.d.ts +35 -6
  23. package/dist/components/action-bar/index.js +33 -5
  24. package/dist/components/action-bar/index.js.map +1 -1
  25. package/dist/components/action-bar/styles.module.css +9 -1
  26. package/dist/components/action-bar/types.d.ts +8 -0
  27. package/dist/components/avatar/context.d.ts +22 -4
  28. package/dist/components/avatar/context.js +18 -0
  29. package/dist/components/avatar/context.js.map +1 -1
  30. package/dist/components/avatar/index.d.ts +22 -15
  31. package/dist/components/avatar/index.js +21 -14
  32. package/dist/components/avatar/index.js.map +1 -1
  33. package/dist/components/avatar/types.d.ts +13 -0
  34. package/dist/components/badge/context.d.ts +22 -4
  35. package/dist/components/badge/context.js +18 -0
  36. package/dist/components/badge/context.js.map +1 -1
  37. package/dist/components/badge/index.d.ts +30 -16
  38. package/dist/components/badge/index.js +28 -14
  39. package/dist/components/badge/index.js.map +1 -1
  40. package/dist/components/badge/types.d.ts +9 -0
  41. package/dist/components/breadcrumbs/index.d.ts +10 -2
  42. package/dist/components/breadcrumbs/index.js +7 -0
  43. package/dist/components/breadcrumbs/index.js.map +1 -1
  44. package/dist/components/breadcrumbs/item.d.ts +25 -2
  45. package/dist/components/breadcrumbs/item.js +23 -1
  46. package/dist/components/breadcrumbs/item.js.map +1 -1
  47. package/dist/components/breadcrumbs/types.d.ts +17 -0
  48. package/dist/components/button/context.d.ts +62 -8
  49. package/dist/components/button/context.js +54 -0
  50. package/dist/components/button/context.js.map +1 -1
  51. package/dist/components/button/index.d.ts +21 -2
  52. package/dist/components/button/index.js +19 -0
  53. package/dist/components/button/index.js.map +1 -1
  54. package/dist/components/button/link.d.ts +22 -2
  55. package/dist/components/button/link.js +20 -0
  56. package/dist/components/button/link.js.map +1 -1
  57. package/dist/components/button/toggle.d.ts +23 -2
  58. package/dist/components/button/toggle.js +22 -1
  59. package/dist/components/button/toggle.js.map +1 -1
  60. package/dist/components/button/types.d.ts +26 -0
  61. package/dist/components/checkbox/context.d.ts +9 -3
  62. package/dist/components/checkbox/context.js +6 -0
  63. package/dist/components/checkbox/context.js.map +1 -1
  64. package/dist/components/checkbox/group.d.ts +31 -2
  65. package/dist/components/checkbox/group.js +28 -0
  66. package/dist/components/checkbox/group.js.map +1 -1
  67. package/dist/components/checkbox/index.d.ts +19 -2
  68. package/dist/components/checkbox/index.js +19 -1
  69. package/dist/components/checkbox/index.js.map +1 -1
  70. package/dist/components/checkbox/types.d.ts +19 -0
  71. package/dist/components/chip/context.d.ts +22 -4
  72. package/dist/components/chip/context.js +18 -0
  73. package/dist/components/chip/context.js.map +1 -1
  74. package/dist/components/chip/deletable.d.ts +38 -2
  75. package/dist/components/chip/deletable.js +36 -1
  76. package/dist/components/chip/deletable.js.map +1 -1
  77. package/dist/components/chip/index.d.ts +24 -2
  78. package/dist/components/chip/index.js +22 -0
  79. package/dist/components/chip/index.js.map +1 -1
  80. package/dist/components/chip/list.d.ts +49 -4
  81. package/dist/components/chip/list.js +45 -0
  82. package/dist/components/chip/list.js.map +1 -1
  83. package/dist/components/chip/selectable.d.ts +34 -2
  84. package/dist/components/chip/selectable.js +31 -0
  85. package/dist/components/chip/selectable.js.map +1 -1
  86. package/dist/components/chip/types.d.ts +27 -0
  87. package/dist/components/classification-badge/context.d.ts +20 -4
  88. package/dist/components/classification-badge/context.js +16 -0
  89. package/dist/components/classification-badge/context.js.map +1 -1
  90. package/dist/components/classification-badge/index.d.ts +28 -10
  91. package/dist/components/classification-badge/index.js +25 -8
  92. package/dist/components/classification-badge/index.js.map +1 -1
  93. package/dist/components/classification-badge/types.d.ts +4 -0
  94. package/dist/components/classification-banner/context.d.ts +20 -4
  95. package/dist/components/classification-banner/context.js +16 -0
  96. package/dist/components/classification-banner/context.js.map +1 -1
  97. package/dist/components/classification-banner/index.d.ts +12 -2
  98. package/dist/components/classification-banner/index.js +9 -0
  99. package/dist/components/classification-banner/index.js.map +1 -1
  100. package/dist/components/classification-banner/types.d.ts +4 -0
  101. package/dist/components/clock/index.d.ts +12 -2
  102. package/dist/components/clock/index.js +10 -0
  103. package/dist/components/clock/index.js.map +1 -1
  104. package/dist/components/clock/types.d.ts +4 -0
  105. package/dist/components/color-picker/index.d.ts +12 -10
  106. package/dist/components/color-picker/index.js +10 -8
  107. package/dist/components/color-picker/index.js.map +1 -1
  108. package/dist/components/color-picker/types.d.ts +8 -0
  109. package/dist/components/combobox-field/context.d.ts +20 -4
  110. package/dist/components/combobox-field/context.js +16 -0
  111. package/dist/components/combobox-field/context.js.map +1 -1
  112. package/dist/components/combobox-field/index.d.ts +15 -2
  113. package/dist/components/combobox-field/index.js +57 -38
  114. package/dist/components/combobox-field/index.js.map +1 -1
  115. package/dist/components/combobox-field/styles.module.css +5 -1
  116. package/dist/components/combobox-field/types.d.ts +19 -0
  117. package/dist/components/coordinate-field/context.d.ts +15 -6
  118. package/dist/components/coordinate-field/context.js +9 -0
  119. package/dist/components/coordinate-field/context.js.map +1 -1
  120. package/dist/components/coordinate-field/coordinate-utils.d.ts +8 -0
  121. package/dist/components/coordinate-field/coordinate-utils.js +8 -0
  122. package/dist/components/coordinate-field/coordinate-utils.js.map +1 -1
  123. package/dist/components/coordinate-field/index.d.ts +29 -2
  124. package/dist/components/coordinate-field/index.js +32 -4
  125. package/dist/components/coordinate-field/index.js.map +1 -1
  126. package/dist/components/coordinate-field/segment.d.ts +28 -2
  127. package/dist/components/coordinate-field/segment.js +28 -1
  128. package/dist/components/coordinate-field/segment.js.map +1 -1
  129. package/dist/components/coordinate-field/styles.module.css +19 -1
  130. package/dist/components/coordinate-field/types.d.ts +2 -0
  131. package/dist/components/coordinate-field/types.js.map +1 -1
  132. package/dist/components/date-field/index.d.ts +28 -2
  133. package/dist/components/date-field/index.js +29 -2
  134. package/dist/components/date-field/index.js.map +1 -1
  135. package/dist/components/date-field/styles.module.css +4 -0
  136. package/dist/components/date-field/types.d.ts +19 -3
  137. package/dist/components/deferred-collection/index.d.ts +51 -0
  138. package/dist/components/deferred-collection/index.js +52 -0
  139. package/dist/components/deferred-collection/index.js.map +1 -0
  140. package/dist/components/deferred-collection/types.d.ts +29 -0
  141. package/dist/components/deferred-collection/types.js +12 -0
  142. package/dist/components/details-list/context.d.ts +25 -4
  143. package/dist/components/details-list/context.js +21 -0
  144. package/dist/components/details-list/context.js.map +1 -1
  145. package/dist/components/details-list/index.d.ts +9 -2
  146. package/dist/components/details-list/index.js +7 -0
  147. package/dist/components/details-list/index.js.map +1 -1
  148. package/dist/components/details-list/label.d.ts +18 -2
  149. package/dist/components/details-list/label.js +16 -0
  150. package/dist/components/details-list/label.js.map +1 -1
  151. package/dist/components/details-list/types.d.ts +14 -0
  152. package/dist/components/details-list/value.d.ts +20 -2
  153. package/dist/components/details-list/value.js +17 -0
  154. package/dist/components/details-list/value.js.map +1 -1
  155. package/dist/components/dialog/content.d.ts +23 -2
  156. package/dist/components/dialog/content.js +20 -0
  157. package/dist/components/dialog/content.js.map +1 -1
  158. package/dist/components/dialog/context.d.ts +5 -2
  159. package/dist/components/dialog/context.js +3 -0
  160. package/dist/components/dialog/context.js.map +1 -1
  161. package/dist/components/dialog/footer.d.ts +26 -2
  162. package/dist/components/dialog/footer.js +23 -0
  163. package/dist/components/dialog/footer.js.map +1 -1
  164. package/dist/components/dialog/index.d.ts +12 -2
  165. package/dist/components/dialog/index.js +10 -0
  166. package/dist/components/dialog/index.js.map +1 -1
  167. package/dist/components/dialog/title.d.ts +21 -2
  168. package/dist/components/dialog/title.js +18 -0
  169. package/dist/components/dialog/title.js.map +1 -1
  170. package/dist/components/dialog/trigger.d.ts +18 -0
  171. package/dist/components/dialog/trigger.js +17 -0
  172. package/dist/components/dialog/trigger.js.map +1 -1
  173. package/dist/components/dialog/types.d.ts +12 -0
  174. package/dist/components/divider/context.d.ts +24 -4
  175. package/dist/components/divider/context.js +20 -0
  176. package/dist/components/divider/context.js.map +1 -1
  177. package/dist/components/divider/index.d.ts +13 -2
  178. package/dist/components/divider/index.js +10 -0
  179. package/dist/components/divider/index.js.map +1 -1
  180. package/dist/components/divider/types.d.ts +4 -4
  181. package/dist/components/drawer/back.d.ts +21 -2
  182. package/dist/components/drawer/back.js +19 -1
  183. package/dist/components/drawer/back.js.map +1 -1
  184. package/dist/components/drawer/close.d.ts +25 -2
  185. package/dist/components/drawer/close.js +28 -3
  186. package/dist/components/drawer/close.js.map +1 -1
  187. package/dist/components/drawer/content.d.ts +22 -2
  188. package/dist/components/drawer/content.js +19 -0
  189. package/dist/components/drawer/content.js.map +1 -1
  190. package/dist/components/drawer/context.d.ts +46 -4
  191. package/dist/components/drawer/context.js +45 -2
  192. package/dist/components/drawer/context.js.map +1 -1
  193. package/dist/components/drawer/events.d.ts +2 -0
  194. package/dist/components/drawer/events.js +2 -0
  195. package/dist/components/drawer/events.js.map +1 -1
  196. package/dist/components/drawer/footer.d.ts +24 -2
  197. package/dist/components/drawer/footer.js +21 -0
  198. package/dist/components/drawer/footer.js.map +1 -1
  199. package/dist/components/drawer/header-title.d.ts +22 -4
  200. package/dist/components/drawer/header-title.js +19 -2
  201. package/dist/components/drawer/header-title.js.map +1 -1
  202. package/dist/components/drawer/header.d.ts +34 -2
  203. package/dist/components/drawer/header.js +42 -2
  204. package/dist/components/drawer/header.js.map +1 -1
  205. package/dist/components/drawer/index.d.ts +14 -2
  206. package/dist/components/drawer/index.js +16 -0
  207. package/dist/components/drawer/index.js.map +1 -1
  208. package/dist/components/drawer/layout-main.d.ts +23 -2
  209. package/dist/components/drawer/layout-main.js +20 -0
  210. package/dist/components/drawer/layout-main.js.map +1 -1
  211. package/dist/components/drawer/layout.d.ts +25 -2
  212. package/dist/components/drawer/layout.js +22 -0
  213. package/dist/components/drawer/layout.js.map +1 -1
  214. package/dist/components/drawer/menu-item.d.ts +25 -2
  215. package/dist/components/drawer/menu-item.js +22 -0
  216. package/dist/components/drawer/menu-item.js.map +1 -1
  217. package/dist/components/drawer/menu.d.ts +22 -2
  218. package/dist/components/drawer/menu.js +19 -0
  219. package/dist/components/drawer/menu.js.map +1 -1
  220. package/dist/components/drawer/panel.d.ts +21 -2
  221. package/dist/components/drawer/panel.js +18 -0
  222. package/dist/components/drawer/panel.js.map +1 -1
  223. package/dist/components/drawer/styles.module.css +2 -2
  224. package/dist/components/drawer/trigger.d.ts +31 -2
  225. package/dist/components/drawer/trigger.js +29 -1
  226. package/dist/components/drawer/trigger.js.map +1 -1
  227. package/dist/components/drawer/types.d.ts +149 -2
  228. package/dist/components/drawer/view.d.ts +25 -2
  229. package/dist/components/drawer/view.js +22 -0
  230. package/dist/components/drawer/view.js.map +1 -1
  231. package/dist/components/flashcard/index.d.ts +129 -27
  232. package/dist/components/flashcard/index.js +120 -18
  233. package/dist/components/flashcard/index.js.map +1 -1
  234. package/dist/components/flashcard/styles.module.css +1 -1
  235. package/dist/components/flashcard/types.d.ts +12 -0
  236. package/dist/components/hero/context.d.ts +5 -2
  237. package/dist/components/hero/context.js +3 -0
  238. package/dist/components/hero/context.js.map +1 -1
  239. package/dist/components/hero/index.d.ts +9 -2
  240. package/dist/components/hero/index.js +7 -0
  241. package/dist/components/hero/index.js.map +1 -1
  242. package/dist/components/hero/subtitle.d.ts +17 -2
  243. package/dist/components/hero/subtitle.js +15 -0
  244. package/dist/components/hero/subtitle.js.map +1 -1
  245. package/dist/components/hero/title.d.ts +15 -2
  246. package/dist/components/hero/title.js +13 -0
  247. package/dist/components/hero/title.js.map +1 -1
  248. package/dist/components/hero/types.d.ts +9 -0
  249. package/dist/components/hotkey/context.d.ts +24 -4
  250. package/dist/components/hotkey/context.js +20 -0
  251. package/dist/components/hotkey/context.js.map +1 -1
  252. package/dist/components/hotkey/index.d.ts +17 -2
  253. package/dist/components/hotkey/index.js +15 -0
  254. package/dist/components/hotkey/index.js.map +1 -1
  255. package/dist/components/hotkey/set.d.ts +21 -2
  256. package/dist/components/hotkey/set.js +18 -0
  257. package/dist/components/hotkey/set.js.map +1 -1
  258. package/dist/components/hotkey/types.d.ts +4 -0
  259. package/dist/components/icon/context.d.ts +24 -4
  260. package/dist/components/icon/context.js +20 -0
  261. package/dist/components/icon/context.js.map +1 -1
  262. package/dist/components/icon/index.d.ts +15 -2
  263. package/dist/components/icon/index.js +13 -0
  264. package/dist/components/icon/index.js.map +1 -1
  265. package/dist/components/icon/types.d.ts +4 -0
  266. package/dist/components/input/context.d.ts +6 -2
  267. package/dist/components/input/context.js +4 -0
  268. package/dist/components/input/context.js.map +1 -1
  269. package/dist/components/input/index.d.ts +17 -2
  270. package/dist/components/input/index.js +19 -3
  271. package/dist/components/input/index.js.map +1 -1
  272. package/dist/components/input/styles.module.css +5 -1
  273. package/dist/components/input/types.d.ts +16 -0
  274. package/dist/components/kanban/card-body.d.ts +10 -2
  275. package/dist/components/kanban/card-body.js +8 -0
  276. package/dist/components/kanban/card-body.js.map +1 -1
  277. package/dist/components/kanban/card-header-actions.d.ts +10 -2
  278. package/dist/components/kanban/card-header-actions.js +8 -0
  279. package/dist/components/kanban/card-header-actions.js.map +1 -1
  280. package/dist/components/kanban/card-header-title.d.ts +10 -2
  281. package/dist/components/kanban/card-header-title.js +8 -0
  282. package/dist/components/kanban/card-header-title.js.map +1 -1
  283. package/dist/components/kanban/card-header.d.ts +12 -2
  284. package/dist/components/kanban/card-header.js +10 -0
  285. package/dist/components/kanban/card-header.js.map +1 -1
  286. package/dist/components/kanban/card.d.ts +26 -2
  287. package/dist/components/kanban/card.js +23 -0
  288. package/dist/components/kanban/card.js.map +1 -1
  289. package/dist/components/kanban/column-actions.d.ts +10 -2
  290. package/dist/components/kanban/column-actions.js +9 -1
  291. package/dist/components/kanban/column-actions.js.map +1 -1
  292. package/dist/components/kanban/column-container.d.ts +10 -2
  293. package/dist/components/kanban/column-container.js +8 -0
  294. package/dist/components/kanban/column-container.js.map +1 -1
  295. package/dist/components/kanban/column-content.d.ts +13 -2
  296. package/dist/components/kanban/column-content.js +11 -0
  297. package/dist/components/kanban/column-content.js.map +1 -1
  298. package/dist/components/kanban/column-header-actions.d.ts +13 -2
  299. package/dist/components/kanban/column-header-actions.js +11 -0
  300. package/dist/components/kanban/column-header-actions.js.map +1 -1
  301. package/dist/components/kanban/column-header-drag-handle.d.ts +7 -2
  302. package/dist/components/kanban/column-header-drag-handle.js +6 -1
  303. package/dist/components/kanban/column-header-drag-handle.js.map +1 -1
  304. package/dist/components/kanban/column-header-title.d.ts +10 -2
  305. package/dist/components/kanban/column-header-title.js +8 -0
  306. package/dist/components/kanban/column-header-title.js.map +1 -1
  307. package/dist/components/kanban/column-header.d.ts +12 -2
  308. package/dist/components/kanban/column-header.js +10 -0
  309. package/dist/components/kanban/column-header.js.map +1 -1
  310. package/dist/components/kanban/column.d.ts +22 -2
  311. package/dist/components/kanban/column.js +19 -0
  312. package/dist/components/kanban/column.js.map +1 -1
  313. package/dist/components/kanban/context.d.ts +49 -2
  314. package/dist/components/kanban/context.js +30 -0
  315. package/dist/components/kanban/context.js.map +1 -1
  316. package/dist/components/kanban/header-actions.d.ts +10 -2
  317. package/dist/components/kanban/header-actions.js +8 -0
  318. package/dist/components/kanban/header-actions.js.map +1 -1
  319. package/dist/components/kanban/header-search.d.ts +9 -2
  320. package/dist/components/kanban/header-search.js +7 -0
  321. package/dist/components/kanban/header-search.js.map +1 -1
  322. package/dist/components/kanban/header-title.d.ts +10 -2
  323. package/dist/components/kanban/header-title.js +8 -0
  324. package/dist/components/kanban/header-title.js.map +1 -1
  325. package/dist/components/kanban/header.d.ts +12 -2
  326. package/dist/components/kanban/header.js +10 -0
  327. package/dist/components/kanban/header.js.map +1 -1
  328. package/dist/components/kanban/kanban.d.ts +33 -4
  329. package/dist/components/kanban/kanban.js +29 -0
  330. package/dist/components/kanban/kanban.js.map +1 -1
  331. package/dist/components/kanban/types.d.ts +51 -0
  332. package/dist/components/label/context.d.ts +25 -4
  333. package/dist/components/label/context.js +21 -0
  334. package/dist/components/label/context.js.map +1 -1
  335. package/dist/components/label/index.d.ts +16 -2
  336. package/dist/components/label/index.js +14 -0
  337. package/dist/components/label/index.js.map +1 -1
  338. package/dist/components/label/types.d.ts +5 -0
  339. package/dist/components/lines/index.d.ts +12 -2
  340. package/dist/components/lines/index.js +9 -0
  341. package/dist/components/lines/index.js.map +1 -1
  342. package/dist/components/lines/types.d.ts +6 -0
  343. package/dist/components/link/context.d.ts +21 -2
  344. package/dist/components/link/context.js +18 -0
  345. package/dist/components/link/context.js.map +1 -1
  346. package/dist/components/link/index.d.ts +12 -2
  347. package/dist/components/link/index.js +9 -0
  348. package/dist/components/link/index.js.map +1 -1
  349. package/dist/components/link/types.d.ts +5 -0
  350. package/dist/components/list/context.d.ts +11 -2
  351. package/dist/components/list/context.js +9 -0
  352. package/dist/components/list/context.js.map +1 -1
  353. package/dist/components/list/index.d.ts +11 -2
  354. package/dist/components/list/index.js +9 -0
  355. package/dist/components/list/index.js.map +1 -1
  356. package/dist/components/list/item-content.d.ts +9 -2
  357. package/dist/components/list/item-content.js +6 -0
  358. package/dist/components/list/item-content.js.map +1 -1
  359. package/dist/components/list/item-description.d.ts +9 -2
  360. package/dist/components/list/item-description.js +7 -0
  361. package/dist/components/list/item-description.js.map +1 -1
  362. package/dist/components/list/item-title.d.ts +9 -2
  363. package/dist/components/list/item-title.js +7 -0
  364. package/dist/components/list/item-title.js.map +1 -1
  365. package/dist/components/list/item.d.ts +10 -2
  366. package/dist/components/list/item.js +8 -0
  367. package/dist/components/list/item.js.map +1 -1
  368. package/dist/components/list/types.d.ts +22 -0
  369. package/dist/components/menu/context.d.ts +6 -2
  370. package/dist/components/menu/context.js +4 -0
  371. package/dist/components/menu/context.js.map +1 -1
  372. package/dist/components/menu/index.d.ts +24 -3
  373. package/dist/components/menu/index.js +22 -1
  374. package/dist/components/menu/index.js.map +1 -1
  375. package/dist/components/menu/item-description.d.ts +17 -2
  376. package/dist/components/menu/item-description.js +15 -0
  377. package/dist/components/menu/item-description.js.map +1 -1
  378. package/dist/components/menu/item-label.d.ts +17 -2
  379. package/dist/components/menu/item-label.js +15 -0
  380. package/dist/components/menu/item-label.js.map +1 -1
  381. package/dist/components/menu/item.d.ts +23 -2
  382. package/dist/components/menu/item.js +21 -1
  383. package/dist/components/menu/item.js.map +1 -1
  384. package/dist/components/menu/section.d.ts +23 -2
  385. package/dist/components/menu/section.js +20 -0
  386. package/dist/components/menu/section.js.map +1 -1
  387. package/dist/components/menu/separator.d.ts +16 -2
  388. package/dist/components/menu/separator.js +14 -0
  389. package/dist/components/menu/separator.js.map +1 -1
  390. package/dist/components/menu/styles.module.css +62 -46
  391. package/dist/components/menu/submenu.d.ts +18 -2
  392. package/dist/components/menu/submenu.js +16 -0
  393. package/dist/components/menu/submenu.js.map +1 -1
  394. package/dist/components/menu/trigger.d.ts +15 -0
  395. package/dist/components/menu/trigger.js +15 -0
  396. package/dist/components/menu/trigger.js.map +1 -1
  397. package/dist/components/menu/types.d.ts +25 -0
  398. package/dist/components/notice/events.d.ts +9 -0
  399. package/dist/components/notice/events.js +9 -0
  400. package/dist/components/notice/events.js.map +1 -1
  401. package/dist/components/notice/index.d.ts +34 -2
  402. package/dist/components/notice/index.js +32 -1
  403. package/dist/components/notice/index.js.map +1 -1
  404. package/dist/components/notice/list.d.ts +31 -2
  405. package/dist/components/notice/list.js +28 -0
  406. package/dist/components/notice/list.js.map +1 -1
  407. package/dist/components/notice/notice-icon.d.ts +22 -2
  408. package/dist/components/notice/notice-icon.js +23 -1
  409. package/dist/components/notice/notice-icon.js.map +1 -1
  410. package/dist/components/notice/types.d.ts +60 -0
  411. package/dist/components/notice/utils.d.ts +8 -0
  412. package/dist/components/notice/utils.js +8 -0
  413. package/dist/components/notice/utils.js.map +1 -1
  414. package/dist/components/options/context.d.ts +3 -2
  415. package/dist/components/options/context.js +1 -0
  416. package/dist/components/options/context.js.map +1 -1
  417. package/dist/components/options/index.d.ts +15 -2
  418. package/dist/components/options/index.js +13 -0
  419. package/dist/components/options/index.js.map +1 -1
  420. package/dist/components/options/item-content.d.ts +22 -2
  421. package/dist/components/options/item-content.js +19 -0
  422. package/dist/components/options/item-content.js.map +1 -1
  423. package/dist/components/options/item-description.d.ts +14 -2
  424. package/dist/components/options/item-description.js +12 -0
  425. package/dist/components/options/item-description.js.map +1 -1
  426. package/dist/components/options/item-label.d.ts +14 -2
  427. package/dist/components/options/item-label.js +12 -0
  428. package/dist/components/options/item-label.js.map +1 -1
  429. package/dist/components/options/item.d.ts +22 -0
  430. package/dist/components/options/item.js +21 -0
  431. package/dist/components/options/item.js.map +1 -1
  432. package/dist/components/options/section.d.ts +21 -2
  433. package/dist/components/options/section.js +18 -0
  434. package/dist/components/options/section.js.map +1 -1
  435. package/dist/components/options/types.d.ts +24 -0
  436. package/dist/components/pagination/context.d.ts +3 -2
  437. package/dist/components/pagination/context.js +1 -0
  438. package/dist/components/pagination/context.js.map +1 -1
  439. package/dist/components/pagination/index.d.ts +18 -11
  440. package/dist/components/pagination/index.js +15 -9
  441. package/dist/components/pagination/index.js.map +1 -1
  442. package/dist/components/pagination/next.d.ts +17 -2
  443. package/dist/components/pagination/next.js +15 -0
  444. package/dist/components/pagination/next.js.map +1 -1
  445. package/dist/components/pagination/pages.d.ts +21 -2
  446. package/dist/components/pagination/pages.js +18 -0
  447. package/dist/components/pagination/pages.js.map +1 -1
  448. package/dist/components/pagination/prev.d.ts +17 -2
  449. package/dist/components/pagination/prev.js +16 -1
  450. package/dist/components/pagination/prev.js.map +1 -1
  451. package/dist/components/pagination/types.d.ts +32 -0
  452. package/dist/components/pagination/utils.d.ts +35 -0
  453. package/dist/components/pagination/utils.js +35 -0
  454. package/dist/components/pagination/utils.js.map +1 -1
  455. package/dist/components/popover/content.d.ts +20 -2
  456. package/dist/components/popover/content.js +17 -0
  457. package/dist/components/popover/content.js.map +1 -1
  458. package/dist/components/popover/footer.d.ts +22 -2
  459. package/dist/components/popover/footer.js +19 -0
  460. package/dist/components/popover/footer.js.map +1 -1
  461. package/dist/components/popover/index.d.ts +9 -2
  462. package/dist/components/popover/index.js +8 -1
  463. package/dist/components/popover/index.js.map +1 -1
  464. package/dist/components/popover/styles.module.css +6 -0
  465. package/dist/components/popover/title.d.ts +17 -2
  466. package/dist/components/popover/title.js +15 -0
  467. package/dist/components/popover/title.js.map +1 -1
  468. package/dist/components/popover/trigger.d.ts +24 -2
  469. package/dist/components/popover/trigger.js +21 -0
  470. package/dist/components/popover/trigger.js.map +1 -1
  471. package/dist/components/popover/types.d.ts +10 -0
  472. package/dist/components/query-builder/action-element.d.ts +20 -2
  473. package/dist/components/query-builder/action-element.js +17 -0
  474. package/dist/components/query-builder/action-element.js.map +1 -1
  475. package/dist/components/query-builder/actions.d.ts +37 -4
  476. package/dist/components/query-builder/actions.js +36 -1
  477. package/dist/components/query-builder/actions.js.map +1 -1
  478. package/dist/components/query-builder/combinator-selector.d.ts +10 -2
  479. package/dist/components/query-builder/combinator-selector.js +8 -0
  480. package/dist/components/query-builder/combinator-selector.js.map +1 -1
  481. package/dist/components/query-builder/constants.d.ts +1 -0
  482. package/dist/components/query-builder/constants.js +1 -0
  483. package/dist/components/query-builder/constants.js.map +1 -1
  484. package/dist/components/query-builder/index.d.ts +11 -2
  485. package/dist/components/query-builder/index.js +9 -0
  486. package/dist/components/query-builder/index.js.map +1 -1
  487. package/dist/components/query-builder/rule-group.d.ts +52 -4
  488. package/dist/components/query-builder/rule-group.js +47 -0
  489. package/dist/components/query-builder/rule-group.js.map +1 -1
  490. package/dist/components/query-builder/rule.d.ts +20 -2
  491. package/dist/components/query-builder/rule.js +18 -0
  492. package/dist/components/query-builder/rule.js.map +1 -1
  493. package/dist/components/query-builder/types.d.ts +9 -0
  494. package/dist/components/query-builder/utils.d.ts +15 -0
  495. package/dist/components/query-builder/utils.js +15 -0
  496. package/dist/components/query-builder/utils.js.map +1 -1
  497. package/dist/components/query-builder/value-editor.d.ts +23 -2
  498. package/dist/components/query-builder/value-editor.js +20 -0
  499. package/dist/components/query-builder/value-editor.js.map +1 -1
  500. package/dist/components/query-builder/value-selector.d.ts +23 -2
  501. package/dist/components/query-builder/value-selector.js +20 -0
  502. package/dist/components/query-builder/value-selector.js.map +1 -1
  503. package/dist/components/radio/context.d.ts +2 -2
  504. package/dist/components/radio/group.d.ts +19 -2
  505. package/dist/components/radio/group.js +16 -0
  506. package/dist/components/radio/group.js.map +1 -1
  507. package/dist/components/radio/index.d.ts +13 -26
  508. package/dist/components/radio/index.js +11 -24
  509. package/dist/components/radio/index.js.map +1 -1
  510. package/dist/components/radio/types.d.ts +16 -0
  511. package/dist/components/search-field/context.d.ts +7 -4
  512. package/dist/components/search-field/context.js +3 -0
  513. package/dist/components/search-field/context.js.map +1 -1
  514. package/dist/components/search-field/index.d.ts +15 -24
  515. package/dist/components/search-field/index.js +16 -23
  516. package/dist/components/search-field/index.js.map +1 -1
  517. package/dist/components/search-field/types.d.ts +13 -0
  518. package/dist/components/select-field/context.d.ts +11 -4
  519. package/dist/components/select-field/context.js +7 -0
  520. package/dist/components/select-field/context.js.map +1 -1
  521. package/dist/components/select-field/index.d.ts +19 -39
  522. package/dist/components/select-field/index.js +28 -42
  523. package/dist/components/select-field/index.js.map +1 -1
  524. package/dist/components/select-field/styles.module.css +12 -0
  525. package/dist/components/select-field/types.d.ts +19 -0
  526. package/dist/components/sidenav/avatar.d.ts +19 -2
  527. package/dist/components/sidenav/avatar.js +16 -0
  528. package/dist/components/sidenav/avatar.js.map +1 -1
  529. package/dist/components/sidenav/content.d.ts +23 -2
  530. package/dist/components/sidenav/content.js +20 -0
  531. package/dist/components/sidenav/content.js.map +1 -1
  532. package/dist/components/sidenav/context.d.ts +3 -2
  533. package/dist/components/sidenav/context.js +1 -0
  534. package/dist/components/sidenav/context.js.map +1 -1
  535. package/dist/components/sidenav/events.d.ts +2 -0
  536. package/dist/components/sidenav/events.js +2 -0
  537. package/dist/components/sidenav/events.js.map +1 -1
  538. package/dist/components/sidenav/footer.d.ts +16 -2
  539. package/dist/components/sidenav/footer.js +13 -0
  540. package/dist/components/sidenav/footer.js.map +1 -1
  541. package/dist/components/sidenav/header.d.ts +20 -2
  542. package/dist/components/sidenav/header.js +18 -1
  543. package/dist/components/sidenav/header.js.map +1 -1
  544. package/dist/components/sidenav/index.d.ts +11 -2
  545. package/dist/components/sidenav/index.js +9 -0
  546. package/dist/components/sidenav/index.js.map +1 -1
  547. package/dist/components/sidenav/item.d.ts +17 -2
  548. package/dist/components/sidenav/item.js +14 -0
  549. package/dist/components/sidenav/item.js.map +1 -1
  550. package/dist/components/sidenav/link.d.ts +17 -2
  551. package/dist/components/sidenav/link.js +15 -1
  552. package/dist/components/sidenav/link.js.map +1 -1
  553. package/dist/components/sidenav/menu-item.d.ts +16 -2
  554. package/dist/components/sidenav/menu-item.js +13 -0
  555. package/dist/components/sidenav/menu-item.js.map +1 -1
  556. package/dist/components/sidenav/menu.d.ts +19 -2
  557. package/dist/components/sidenav/menu.js +17 -1
  558. package/dist/components/sidenav/menu.js.map +1 -1
  559. package/dist/components/sidenav/trigger.d.ts +17 -2
  560. package/dist/components/sidenav/trigger.js +14 -0
  561. package/dist/components/sidenav/trigger.js.map +1 -1
  562. package/dist/components/sidenav/types.d.ts +53 -0
  563. package/dist/components/skeleton/index.d.ts +12 -27
  564. package/dist/components/skeleton/index.js +10 -24
  565. package/dist/components/skeleton/index.js.map +1 -1
  566. package/dist/components/skeleton/types.d.ts +4 -0
  567. package/dist/components/slider/index.d.ts +30 -29
  568. package/dist/components/slider/index.js +28 -27
  569. package/dist/components/slider/index.js.map +1 -1
  570. package/dist/components/slider/types.d.ts +18 -0
  571. package/dist/components/switch/context.d.ts +16 -10
  572. package/dist/components/switch/context.js +13 -7
  573. package/dist/components/switch/context.js.map +1 -1
  574. package/dist/components/switch/index.d.ts +14 -31
  575. package/dist/components/switch/index.js +12 -29
  576. package/dist/components/switch/index.js.map +1 -1
  577. package/dist/components/switch/types.d.ts +5 -0
  578. package/dist/components/table/body.d.ts +21 -2
  579. package/dist/components/table/body.js +18 -0
  580. package/dist/components/table/body.js.map +1 -1
  581. package/dist/components/table/cell.d.ts +22 -2
  582. package/dist/components/table/cell.js +19 -0
  583. package/dist/components/table/cell.js.map +1 -1
  584. package/dist/components/table/constants/table.d.ts +6 -0
  585. package/dist/components/table/constants/table.js +4 -0
  586. package/dist/components/table/constants/table.js.map +1 -1
  587. package/dist/components/table/context.d.ts +1 -0
  588. package/dist/components/table/context.js +1 -0
  589. package/dist/components/table/context.js.map +1 -1
  590. package/dist/components/table/header-cell.d.ts +24 -2
  591. package/dist/components/table/header-cell.js +24 -1
  592. package/dist/components/table/header-cell.js.map +1 -1
  593. package/dist/components/table/header.d.ts +22 -2
  594. package/dist/components/table/header.js +19 -0
  595. package/dist/components/table/header.js.map +1 -1
  596. package/dist/components/table/index.d.ts +28 -6
  597. package/dist/components/table/index.js +27 -5
  598. package/dist/components/table/index.js.map +1 -1
  599. package/dist/components/table/row.d.ts +26 -2
  600. package/dist/components/table/row.js +23 -0
  601. package/dist/components/table/row.js.map +1 -1
  602. package/dist/components/table/types.d.ts +3 -0
  603. package/dist/components/tabs/context.d.ts +20 -10
  604. package/dist/components/tabs/context.js +17 -7
  605. package/dist/components/tabs/context.js.map +1 -1
  606. package/dist/components/tabs/index.d.ts +17 -40
  607. package/dist/components/tabs/index.js +15 -38
  608. package/dist/components/tabs/index.js.map +1 -1
  609. package/dist/components/tabs/list.d.ts +20 -4
  610. package/dist/components/tabs/list.js +17 -2
  611. package/dist/components/tabs/list.js.map +1 -1
  612. package/dist/components/tabs/panel.d.ts +21 -4
  613. package/dist/components/tabs/panel.js +18 -2
  614. package/dist/components/tabs/panel.js.map +1 -1
  615. package/dist/components/tabs/tab.d.ts +17 -4
  616. package/dist/components/tabs/tab.js +14 -2
  617. package/dist/components/tabs/tab.js.map +1 -1
  618. package/dist/components/tabs/types.d.ts +3 -0
  619. package/dist/components/text-area-field/context.d.ts +20 -10
  620. package/dist/components/text-area-field/context.js +17 -7
  621. package/dist/components/text-area-field/context.js.map +1 -1
  622. package/dist/components/text-area-field/index.d.ts +20 -15
  623. package/dist/components/text-area-field/index.js +18 -13
  624. package/dist/components/text-area-field/index.js.map +1 -1
  625. package/dist/components/text-area-field/styles.module.css +5 -1
  626. package/dist/components/text-area-field/types.d.ts +9 -0
  627. package/dist/components/text-field/context.d.ts +24 -4
  628. package/dist/components/text-field/context.js +20 -0
  629. package/dist/components/text-field/context.js.map +1 -1
  630. package/dist/components/text-field/index.d.ts +17 -82
  631. package/dist/components/text-field/index.js +15 -80
  632. package/dist/components/text-field/index.js.map +1 -1
  633. package/dist/components/text-field/types.d.ts +9 -0
  634. package/dist/components/time-field/index.d.ts +24 -5
  635. package/dist/components/time-field/index.js +25 -6
  636. package/dist/components/time-field/index.js.map +1 -1
  637. package/dist/components/time-field/styles.module.css +5 -2
  638. package/dist/components/time-field/types.d.ts +9 -0
  639. package/dist/components/tooltip/context.d.ts +3 -2
  640. package/dist/components/tooltip/context.js +1 -0
  641. package/dist/components/tooltip/context.js.map +1 -1
  642. package/dist/components/tooltip/index.d.ts +15 -30
  643. package/dist/components/tooltip/index.js +13 -28
  644. package/dist/components/tooltip/index.js.map +1 -1
  645. package/dist/components/tooltip/trigger.d.ts +22 -2
  646. package/dist/components/tooltip/trigger.js +19 -0
  647. package/dist/components/tooltip/trigger.js.map +1 -1
  648. package/dist/components/tooltip/types.d.ts +7 -0
  649. package/dist/components/tree/context.d.ts +5 -9
  650. package/dist/components/tree/context.js +2 -6
  651. package/dist/components/tree/context.js.map +1 -1
  652. package/dist/components/tree/index.d.ts +30 -8
  653. package/dist/components/tree/index.js +28 -6
  654. package/dist/components/tree/index.js.map +1 -1
  655. package/dist/components/tree/item-actions.d.ts +19 -4
  656. package/dist/components/tree/item-actions.js +16 -2
  657. package/dist/components/tree/item-actions.js.map +1 -1
  658. package/dist/components/tree/item-content.d.ts +18 -4
  659. package/dist/components/tree/item-content.js +20 -3
  660. package/dist/components/tree/item-content.js.map +1 -1
  661. package/dist/components/tree/item-description.d.ts +15 -4
  662. package/dist/components/tree/item-description.js +13 -2
  663. package/dist/components/tree/item-description.js.map +1 -1
  664. package/dist/components/tree/item-label.d.ts +15 -4
  665. package/dist/components/tree/item-label.js +13 -2
  666. package/dist/components/tree/item-label.js.map +1 -1
  667. package/dist/components/tree/item-prefix-icon.d.ts +15 -4
  668. package/dist/components/tree/item-prefix-icon.js +13 -2
  669. package/dist/components/tree/item-prefix-icon.js.map +1 -1
  670. package/dist/components/tree/item.d.ts +24 -4
  671. package/dist/components/tree/item.js +21 -2
  672. package/dist/components/tree/item.js.map +1 -1
  673. package/dist/components/tree/lines.d.ts +10 -2
  674. package/dist/components/tree/lines.js +8 -0
  675. package/dist/components/tree/lines.js.map +1 -1
  676. package/dist/components/tree/types.d.ts +26 -0
  677. package/dist/components/view-stack/context.d.ts +20 -9
  678. package/dist/components/view-stack/context.js +18 -7
  679. package/dist/components/view-stack/context.js.map +1 -1
  680. package/dist/components/view-stack/events.d.ts +2 -0
  681. package/dist/components/view-stack/events.js +2 -0
  682. package/dist/components/view-stack/events.js.map +1 -1
  683. package/dist/components/view-stack/index.d.ts +16 -24
  684. package/dist/components/view-stack/index.js +14 -22
  685. package/dist/components/view-stack/index.js.map +1 -1
  686. package/dist/components/view-stack/trigger.d.ts +26 -4
  687. package/dist/components/view-stack/trigger.js +23 -2
  688. package/dist/components/view-stack/trigger.js.map +1 -1
  689. package/dist/components/view-stack/types.d.ts +29 -0
  690. package/dist/components/view-stack/view.d.ts +22 -2
  691. package/dist/components/view-stack/view.js +19 -0
  692. package/dist/components/view-stack/view.js.map +1 -1
  693. package/dist/hooks/coordinate-field/use-coordinate-copy.d.ts +44 -0
  694. package/dist/hooks/coordinate-field/use-coordinate-copy.js +35 -0
  695. package/dist/hooks/coordinate-field/use-coordinate-copy.js.map +1 -1
  696. package/dist/hooks/coordinate-field/use-coordinate-field-state.d.ts +69 -0
  697. package/dist/hooks/coordinate-field/use-coordinate-field-state.js +50 -0
  698. package/dist/hooks/coordinate-field/use-coordinate-field-state.js.map +1 -1
  699. package/dist/hooks/coordinate-field/use-coordinate-field.d.ts +61 -0
  700. package/dist/hooks/coordinate-field/use-coordinate-field.js +47 -0
  701. package/dist/hooks/coordinate-field/use-coordinate-field.js.map +1 -1
  702. package/dist/hooks/coordinate-field/use-coordinate-focus.d.ts +51 -0
  703. package/dist/hooks/coordinate-field/use-coordinate-focus.js +39 -0
  704. package/dist/hooks/coordinate-field/use-coordinate-focus.js.map +1 -1
  705. package/dist/hooks/coordinate-field/use-coordinate-paste.d.ts +63 -0
  706. package/dist/hooks/coordinate-field/use-coordinate-paste.js +51 -0
  707. package/dist/hooks/coordinate-field/use-coordinate-paste.js.map +1 -1
  708. package/dist/hooks/coordinate-field/use-timeout-cleanup.d.ts +32 -0
  709. package/dist/hooks/coordinate-field/use-timeout-cleanup.js +30 -0
  710. package/dist/hooks/coordinate-field/use-timeout-cleanup.js.map +1 -1
  711. package/dist/hooks/use-frame-delay/index.d.ts +43 -0
  712. package/dist/hooks/use-frame-delay/index.js +66 -0
  713. package/dist/hooks/use-frame-delay/index.js.map +1 -0
  714. package/dist/hooks/use-tree/actions/index.d.ts +4 -2
  715. package/dist/hooks/use-tree/actions/index.js +4 -2
  716. package/dist/hooks/use-tree/actions/index.js.map +1 -1
  717. package/dist/hooks/use-tree/state/index.d.ts +7 -0
  718. package/dist/hooks/use-tree/state/index.js +7 -0
  719. package/dist/hooks/use-tree/state/index.js.map +1 -1
  720. package/dist/hooks/use-tree/types.d.ts +22 -0
  721. package/dist/index.d.ts +7 -4
  722. package/dist/index.js +4 -2
  723. package/dist/lib/types.d.ts +17 -0
  724. package/dist/lib/utils.d.ts +15 -0
  725. package/dist/lib/utils.js +15 -0
  726. package/dist/lib/utils.js.map +1 -1
  727. package/dist/providers/portal.d.ts +11 -2
  728. package/dist/providers/portal.js +9 -0
  729. package/dist/providers/portal.js.map +1 -1
  730. package/dist/providers/theme-provider.d.ts +18 -2
  731. package/dist/providers/theme-provider.js +15 -0
  732. package/dist/providers/theme-provider.js.map +1 -1
  733. package/package.json +15 -12
@@ -21,25 +21,68 @@ import { Broadcast } from "@accelint/bus";
21
21
  import { useEmit } from "@accelint/bus/react";
22
22
 
23
23
  //#region src/components/drawer/context.tsx
24
+ /**
25
+ * Context for sharing Drawer state across child components.
26
+ *
27
+ * @example
28
+ * ```tsx
29
+ * const { register, unregister, placement } = useContext(DrawerContext);
30
+ * ```
31
+ */
24
32
  const DrawerContext = createContext({
25
33
  register: () => void 0,
26
34
  unregister: () => void 0,
27
35
  placement: "left"
28
36
  });
37
+ /**
38
+ * Event bus instance for drawer-related events.
39
+ *
40
+ * @example
41
+ * ```tsx
42
+ * import { bus } from './context';
43
+ * bus.on('Drawer:open', (event) => console.log(event));
44
+ * ```
45
+ */
29
46
  const bus = Broadcast.getInstance();
47
+ /**
48
+ * Event handlers for controlling drawer state programmatically.
49
+ *
50
+ * @example
51
+ * ```tsx
52
+ * import { DrawerEventHandlers } from './context';
53
+ *
54
+ * DrawerEventHandlers.open(viewId);
55
+ * DrawerEventHandlers.toggle(viewId);
56
+ * DrawerEventHandlers.close(viewId);
57
+ * ```
58
+ */
30
59
  const DrawerEventHandlers = {
31
60
  ...ViewStackEventHandlers,
32
- close: ViewStackEventHandlers.clear,
61
+ close: (view) => bus.emit(DrawerEventTypes.close, { view }),
33
62
  open: (view) => bus.emit(DrawerEventTypes.open, { view }),
34
63
  toggle: (view) => bus.emit(DrawerEventTypes.toggle, { view })
35
64
  };
65
+ /**
66
+ * Hook for emitting drawer events (open, close, toggle, push, pop, clear).
67
+ *
68
+ * @returns Object with methods to emit drawer events.
69
+ *
70
+ * @example
71
+ * ```tsx
72
+ * const emit = useDrawerEmit();
73
+ * emit.open(viewId);
74
+ * emit.toggle(viewId);
75
+ * emit.close();
76
+ * ```
77
+ */
36
78
  function useDrawerEmit() {
37
79
  const viewStackEmit = useViewStackEmit();
80
+ const emitClose = useEmit(DrawerEventTypes.close);
38
81
  const emitOpen = useEmit(DrawerEventTypes.open);
39
82
  const emitToggle = useEmit(DrawerEventTypes.toggle);
40
83
  return {
41
84
  ...viewStackEmit,
42
- close: viewStackEmit.clear,
85
+ close: (view) => emitClose({ view }),
43
86
  open: (view) => emitOpen({ view }),
44
87
  toggle: (view) => emitToggle({ view })
45
88
  };
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/drawer/context.tsx"],"sourcesContent":["/*\n * Copyright 2025 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'use client';\n\nimport { Broadcast } from '@accelint/bus';\nimport { useEmit } from '@accelint/bus/react';\nimport type { UniqueId } from '@accelint/core';\nimport 'client-only';\nimport { createContext } from 'react';\nimport {\n useViewStackEmit,\n ViewStackEventHandlers,\n} from '../view-stack/context';\nimport { DrawerEventTypes } from './events';\nimport type { DrawerContextValue, DrawerEvent } from './types';\n\nexport const DrawerContext = createContext<DrawerContextValue>({\n register: () => undefined,\n unregister: () => undefined,\n placement: 'left',\n});\n\nexport const bus = Broadcast.getInstance<DrawerEvent>();\n\nexport const DrawerEventHandlers = {\n ...ViewStackEventHandlers,\n close: ViewStackEventHandlers.clear,\n open: (view: UniqueId) => bus.emit(DrawerEventTypes.open, { view }),\n toggle: (view: UniqueId) => bus.emit(DrawerEventTypes.toggle, { view }),\n} as const;\n\nexport function useDrawerEmit() {\n const viewStackEmit = useViewStackEmit();\n const emitOpen = useEmit<DrawerEvent>(DrawerEventTypes.open);\n const emitToggle = useEmit<DrawerEvent>(DrawerEventTypes.toggle);\n\n return {\n ...viewStackEmit,\n close: viewStackEmit.clear,\n open: (view: UniqueId) => emitOpen({ view }),\n toggle: (view: UniqueId) => emitToggle({ view }),\n } as const;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAyBA,MAAa,gBAAgB,cAAkC;CAC7D,gBAAgB;CAChB,kBAAkB;CAClB,WAAW;CACZ,CAAC;AAEF,MAAa,MAAM,UAAU,aAA0B;AAEvD,MAAa,sBAAsB;CACjC,GAAG;CACH,OAAO,uBAAuB;CAC9B,OAAO,SAAmB,IAAI,KAAK,iBAAiB,MAAM,EAAE,MAAM,CAAC;CACnE,SAAS,SAAmB,IAAI,KAAK,iBAAiB,QAAQ,EAAE,MAAM,CAAC;CACxE;AAED,SAAgB,gBAAgB;CAC9B,MAAM,gBAAgB,kBAAkB;CACxC,MAAM,WAAW,QAAqB,iBAAiB,KAAK;CAC5D,MAAM,aAAa,QAAqB,iBAAiB,OAAO;AAEhE,QAAO;EACL,GAAG;EACH,OAAO,cAAc;EACrB,OAAO,SAAmB,SAAS,EAAE,MAAM,CAAC;EAC5C,SAAS,SAAmB,WAAW,EAAE,MAAM,CAAC;EACjD"}
1
+ {"version":3,"file":"context.js","names":[],"sources":["../../../src/components/drawer/context.tsx"],"sourcesContent":["/*\n * Copyright 2025 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'use client';\n\nimport { Broadcast } from '@accelint/bus';\nimport { useEmit } from '@accelint/bus/react';\nimport type { UniqueId } from '@accelint/core';\nimport 'client-only';\nimport { createContext } from 'react';\nimport {\n useViewStackEmit,\n ViewStackEventHandlers,\n} from '../view-stack/context';\nimport { DrawerEventTypes } from './events';\nimport type { DrawerContextValue, DrawerEvent } from './types';\n\n/**\n * Context for sharing Drawer state across child components.\n *\n * @example\n * ```tsx\n * const { register, unregister, placement } = useContext(DrawerContext);\n * ```\n */\nexport const DrawerContext = createContext<DrawerContextValue>({\n register: () => undefined,\n unregister: () => undefined,\n placement: 'left',\n});\n\n/**\n * Event bus instance for drawer-related events.\n *\n * @example\n * ```tsx\n * import { bus } from './context';\n * bus.on('Drawer:open', (event) => console.log(event));\n * ```\n */\nexport const bus = Broadcast.getInstance<DrawerEvent>();\n\n/**\n * Event handlers for controlling drawer state programmatically.\n *\n * @example\n * ```tsx\n * import { DrawerEventHandlers } from './context';\n *\n * DrawerEventHandlers.open(viewId);\n * DrawerEventHandlers.toggle(viewId);\n * DrawerEventHandlers.close(viewId);\n * ```\n */\nexport const DrawerEventHandlers = {\n ...ViewStackEventHandlers,\n close: (view: UniqueId) => bus.emit(DrawerEventTypes.close, { view }),\n open: (view: UniqueId) => bus.emit(DrawerEventTypes.open, { view }),\n toggle: (view: UniqueId) => bus.emit(DrawerEventTypes.toggle, { view }),\n} as const;\n\n/**\n * Hook for emitting drawer events (open, close, toggle, push, pop, clear).\n *\n * @returns Object with methods to emit drawer events.\n *\n * @example\n * ```tsx\n * const emit = useDrawerEmit();\n * emit.open(viewId);\n * emit.toggle(viewId);\n * emit.close();\n * ```\n */\nexport function useDrawerEmit() {\n const viewStackEmit = useViewStackEmit();\n const emitClose = useEmit<DrawerEvent>(DrawerEventTypes.close);\n const emitOpen = useEmit<DrawerEvent>(DrawerEventTypes.open);\n const emitToggle = useEmit<DrawerEvent>(DrawerEventTypes.toggle);\n\n return {\n ...viewStackEmit,\n close: (view: UniqueId) => emitClose({ view }),\n open: (view: UniqueId) => emitOpen({ view }),\n toggle: (view: UniqueId) => emitToggle({ view }),\n } as const;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiCA,MAAa,gBAAgB,cAAkC;CAC7D,gBAAgB;CAChB,kBAAkB;CAClB,WAAW;CACZ,CAAC;;;;;;;;;;AAWF,MAAa,MAAM,UAAU,aAA0B;;;;;;;;;;;;;AAcvD,MAAa,sBAAsB;CACjC,GAAG;CACH,QAAQ,SAAmB,IAAI,KAAK,iBAAiB,OAAO,EAAE,MAAM,CAAC;CACrE,OAAO,SAAmB,IAAI,KAAK,iBAAiB,MAAM,EAAE,MAAM,CAAC;CACnE,SAAS,SAAmB,IAAI,KAAK,iBAAiB,QAAQ,EAAE,MAAM,CAAC;CACxE;;;;;;;;;;;;;;AAeD,SAAgB,gBAAgB;CAC9B,MAAM,gBAAgB,kBAAkB;CACxC,MAAM,YAAY,QAAqB,iBAAiB,MAAM;CAC9D,MAAM,WAAW,QAAqB,iBAAiB,KAAK;CAC5D,MAAM,aAAa,QAAqB,iBAAiB,OAAO;AAEhE,QAAO;EACL,GAAG;EACH,QAAQ,SAAmB,UAAU,EAAE,MAAM,CAAC;EAC9C,OAAO,SAAmB,SAAS,EAAE,MAAM,CAAC;EAC5C,SAAS,SAAmB,WAAW,EAAE,MAAM,CAAC;EACjD"}
@@ -1,5 +1,7 @@
1
1
  //#region src/components/drawer/events.d.ts
2
+ /** Namespace for drawer-related events. */
2
3
  declare const DrawerEventNamespace = "Drawer";
4
+ /** Event type constants for drawer actions. */
3
5
  declare const DrawerEventTypes: {
4
6
  readonly close: "Drawer:close";
5
7
  readonly open: "Drawer:open";
@@ -12,7 +12,9 @@
12
12
 
13
13
 
14
14
  //#region src/components/drawer/events.ts
15
+ /** Namespace for drawer-related events. */
15
16
  const DrawerEventNamespace = "Drawer";
17
+ /** Event type constants for drawer actions. */
16
18
  const DrawerEventTypes = {
17
19
  close: `${DrawerEventNamespace}:close`,
18
20
  open: `${DrawerEventNamespace}:open`,
@@ -1 +1 @@
1
- {"version":3,"file":"events.js","names":[],"sources":["../../../src/components/drawer/events.ts"],"sourcesContent":["/*\n * Copyright 2025 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\nexport const DrawerEventNamespace = 'Drawer';\n\nexport const DrawerEventTypes = {\n close: `${DrawerEventNamespace}:close`,\n open: `${DrawerEventNamespace}:open`,\n toggle: `${DrawerEventNamespace}:toggle`,\n} as const;\n"],"mappings":";;;;;;;;;;;;;;AAYA,MAAa,uBAAuB;AAEpC,MAAa,mBAAmB;CAC9B,OAAO,GAAG,qBAAqB;CAC/B,MAAM,GAAG,qBAAqB;CAC9B,QAAQ,GAAG,qBAAqB;CACjC"}
1
+ {"version":3,"file":"events.js","names":[],"sources":["../../../src/components/drawer/events.ts"],"sourcesContent":["/*\n * Copyright 2025 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/** Namespace for drawer-related events. */\nexport const DrawerEventNamespace = 'Drawer';\n\n/** Event type constants for drawer actions. */\nexport const DrawerEventTypes = {\n close: `${DrawerEventNamespace}:close`,\n open: `${DrawerEventNamespace}:open`,\n toggle: `${DrawerEventNamespace}:toggle`,\n} as const;\n"],"mappings":";;;;;;;;;;;;;;;AAaA,MAAa,uBAAuB;;AAGpC,MAAa,mBAAmB;CAC9B,OAAO,GAAG,qBAAqB;CAC/B,MAAM,GAAG,qBAAqB;CAC9B,QAAQ,GAAG,qBAAqB;CACjC"}
@@ -11,13 +11,35 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime187 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime100 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/footer.d.ts
17
+
18
+ /**
19
+ * DrawerFooter - Footer region within a DrawerView.
20
+ *
21
+ * Typically used for action buttons or supplementary information.
22
+ * Renders as a semantic `<footer>` element.
23
+ *
24
+ * @param props - ComponentPropsWithRef<'footer'>
25
+ * @param props.className - Optional CSS class name.
26
+ * @returns The rendered DrawerFooter component.
27
+ *
28
+ * @example
29
+ * ```tsx
30
+ * <DrawerView id={viewId}>
31
+ * <DrawerHeader title="Settings" />
32
+ * <DrawerContent>Content here</DrawerContent>
33
+ * <DrawerFooter>
34
+ * <Button>Save</Button>
35
+ * </DrawerFooter>
36
+ * </DrawerView>
37
+ * ```
38
+ */
17
39
  declare function DrawerFooter({
18
40
  className,
19
41
  ...rest
20
- }: ComponentPropsWithRef<'footer'>): react_jsx_runtime187.JSX.Element;
42
+ }: ComponentPropsWithRef<'footer'>): react_jsx_runtime100.JSX.Element;
21
43
  //#endregion
22
44
  export { DrawerFooter };
23
45
  //# sourceMappingURL=footer.d.ts.map
@@ -16,6 +16,27 @@ import { jsx } from "react/jsx-runtime";
16
16
  import styles from "./styles.module.css";
17
17
 
18
18
  //#region src/components/drawer/footer.tsx
19
+ /**
20
+ * DrawerFooter - Footer region within a DrawerView.
21
+ *
22
+ * Typically used for action buttons or supplementary information.
23
+ * Renders as a semantic `<footer>` element.
24
+ *
25
+ * @param props - ComponentPropsWithRef<'footer'>
26
+ * @param props.className - Optional CSS class name.
27
+ * @returns The rendered DrawerFooter component.
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * <DrawerView id={viewId}>
32
+ * <DrawerHeader title="Settings" />
33
+ * <DrawerContent>Content here</DrawerContent>
34
+ * <DrawerFooter>
35
+ * <Button>Save</Button>
36
+ * </DrawerFooter>
37
+ * </DrawerView>
38
+ * ```
39
+ */
19
40
  function DrawerFooter({ className, ...rest }) {
20
41
  return /* @__PURE__ */ jsx("footer", {
21
42
  ...rest,
@@ -1 +1 @@
1
- {"version":3,"file":"footer.js","names":[],"sources":["../../../src/components/drawer/footer.tsx"],"sourcesContent":["/*\n * Copyright 2025 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 */\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport styles from './styles.module.css';\nimport type { ComponentPropsWithRef } from 'react';\n\nexport function DrawerFooter({\n className,\n ...rest\n}: ComponentPropsWithRef<'footer'>) {\n return <footer {...rest} className={clsx(styles.footer, className)} />;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAeA,SAAgB,aAAa,EAC3B,WACA,GAAG,QAC+B;AAClC,QAAO,oBAAC;EAAO,GAAI;EAAM,WAAW,KAAK,OAAO,QAAQ,UAAU;GAAI"}
1
+ {"version":3,"file":"footer.js","names":[],"sources":["../../../src/components/drawer/footer.tsx"],"sourcesContent":["/*\n * Copyright 2025 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 */\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport styles from './styles.module.css';\nimport type { ComponentPropsWithRef } from 'react';\n\n/**\n * DrawerFooter - Footer region within a DrawerView.\n *\n * Typically used for action buttons or supplementary information.\n * Renders as a semantic `<footer>` element.\n *\n * @param props - ComponentPropsWithRef<'footer'>\n * @param props.className - Optional CSS class name.\n * @returns The rendered DrawerFooter component.\n *\n * @example\n * ```tsx\n * <DrawerView id={viewId}>\n * <DrawerHeader title=\"Settings\" />\n * <DrawerContent>Content here</DrawerContent>\n * <DrawerFooter>\n * <Button>Save</Button>\n * </DrawerFooter>\n * </DrawerView>\n * ```\n */\nexport function DrawerFooter({\n className,\n ...rest\n}: ComponentPropsWithRef<'footer'>) {\n return <footer {...rest} className={clsx(styles.footer, className)} />;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoCA,SAAgB,aAAa,EAC3B,WACA,GAAG,QAC+B;AAClC,QAAO,oBAAC;EAAO,GAAI;EAAM,WAAW,KAAK,OAAO,QAAQ,UAAU;GAAI"}
@@ -11,19 +11,37 @@
11
11
  */
12
12
 
13
13
  import { DrawerTitleProps } from "./types.js";
14
- import * as react_jsx_runtime186 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime47 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/header-title.d.ts
17
+
17
18
  /**
18
- * To change size of title, use the `level` prop: `1`-`3` (large), `4`-`6` (medium).
19
+ * DrawerHeaderTitle - Semantic heading for drawer headers.
20
+ *
21
+ * The `level` prop controls both visual size and semantic heading level:
22
+ * - Levels 1-3: Large text size (renders as h1-h3)
23
+ * - Levels 4-6: Medium text size (renders as h4-h6)
24
+ *
25
+ * @param props - {@link DrawerTitleProps}
26
+ * @param props.className - Optional CSS class name.
27
+ * @param props.level - Heading level (1-6).
28
+ * @returns The rendered DrawerHeaderTitle component.
29
+ *
30
+ * @default level 2
19
31
  *
20
- * `level` also changes the semantic heading tag number `h1`-`h6`
32
+ * @example
33
+ * ```tsx
34
+ * <DrawerHeader>
35
+ * <DrawerHeaderTitle level={2}>Settings</DrawerHeaderTitle>
36
+ * <DrawerClose />
37
+ * </DrawerHeader>
38
+ * ```
21
39
  */
22
40
  declare function DrawerHeaderTitle({
23
41
  className,
24
42
  level,
25
43
  ...rest
26
- }: DrawerTitleProps): react_jsx_runtime186.JSX.Element;
44
+ }: DrawerTitleProps): react_jsx_runtime47.JSX.Element;
27
45
  //#endregion
28
46
  export { DrawerHeaderTitle };
29
47
  //# sourceMappingURL=header-title.d.ts.map
@@ -18,9 +18,26 @@ import styles from "./styles.module.css";
18
18
 
19
19
  //#region src/components/drawer/header-title.tsx
20
20
  /**
21
- * To change size of title, use the `level` prop: `1`-`3` (large), `4`-`6` (medium).
21
+ * DrawerHeaderTitle - Semantic heading for drawer headers.
22
22
  *
23
- * `level` also changes the semantic heading tag number `h1`-`h6`
23
+ * The `level` prop controls both visual size and semantic heading level:
24
+ * - Levels 1-3: Large text size (renders as h1-h3)
25
+ * - Levels 4-6: Medium text size (renders as h4-h6)
26
+ *
27
+ * @param props - {@link DrawerTitleProps}
28
+ * @param props.className - Optional CSS class name.
29
+ * @param props.level - Heading level (1-6).
30
+ * @returns The rendered DrawerHeaderTitle component.
31
+ *
32
+ * @default level 2
33
+ *
34
+ * @example
35
+ * ```tsx
36
+ * <DrawerHeader>
37
+ * <DrawerHeaderTitle level={2}>Settings</DrawerHeaderTitle>
38
+ * <DrawerClose />
39
+ * </DrawerHeader>
40
+ * ```
24
41
  */
25
42
  function DrawerHeaderTitle({ className, level = 2, ...rest }) {
26
43
  return /* @__PURE__ */ jsx(Heading, {
@@ -1 +1 @@
1
- {"version":3,"file":"header-title.js","names":[],"sources":["../../../src/components/drawer/header-title.tsx"],"sourcesContent":["/*\n * Copyright 2025 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 { clsx } from '@accelint/design-foundation/lib/utils';\nimport { Heading } from 'react-aria-components';\nimport styles from './styles.module.css';\nimport type { DrawerTitleProps } from './types';\n\n/**\n * To change size of title, use the `level` prop: `1`-`3` (large), `4`-`6` (medium).\n *\n * `level` also changes the semantic heading tag number `h1`-`h6`\n */\nexport function DrawerHeaderTitle({\n className,\n level = 2,\n ...rest\n}: DrawerTitleProps) {\n return (\n <Heading\n {...rest}\n className={clsx(\n styles.title,\n level <= 3 ? styles.large : styles.medium,\n className,\n )}\n level={level}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAsBA,SAAgB,kBAAkB,EAChC,WACA,QAAQ,GACR,GAAG,QACgB;AACnB,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,KACT,OAAO,OACP,SAAS,IAAI,OAAO,QAAQ,OAAO,QACnC,UACD;EACM;GACP"}
1
+ {"version":3,"file":"header-title.js","names":[],"sources":["../../../src/components/drawer/header-title.tsx"],"sourcesContent":["/*\n * Copyright 2025 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 { clsx } from '@accelint/design-foundation/lib/utils';\nimport { Heading } from 'react-aria-components';\nimport styles from './styles.module.css';\nimport type { DrawerTitleProps } from './types';\n\n/**\n * DrawerHeaderTitle - Semantic heading for drawer headers.\n *\n * The `level` prop controls both visual size and semantic heading level:\n * - Levels 1-3: Large text size (renders as h1-h3)\n * - Levels 4-6: Medium text size (renders as h4-h6)\n *\n * @param props - {@link DrawerTitleProps}\n * @param props.className - Optional CSS class name.\n * @param props.level - Heading level (1-6).\n * @returns The rendered DrawerHeaderTitle component.\n *\n * @default level 2\n *\n * @example\n * ```tsx\n * <DrawerHeader>\n * <DrawerHeaderTitle level={2}>Settings</DrawerHeaderTitle>\n * <DrawerClose />\n * </DrawerHeader>\n * ```\n */\nexport function DrawerHeaderTitle({\n className,\n level = 2,\n ...rest\n}: DrawerTitleProps) {\n return (\n <Heading\n {...rest}\n className={clsx(\n styles.title,\n level <= 3 ? styles.large : styles.medium,\n className,\n )}\n level={level}\n />\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAuCA,SAAgB,kBAAkB,EAChC,WACA,QAAQ,GACR,GAAG,QACgB;AACnB,QACE,oBAAC;EACC,GAAI;EACJ,WAAW,KACT,OAAO,OACP,SAAS,IAAI,OAAO,QAAQ,OAAO,QACnC,UACD;EACM;GACP"}
@@ -12,15 +12,47 @@
12
12
 
13
13
  import "client-only";
14
14
  import { ComponentPropsWithRef } from "react";
15
- import * as react_jsx_runtime20 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime50 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/header.d.ts
18
+
19
+ /**
20
+ * DrawerHeader - Header region within a DrawerView.
21
+ *
22
+ * Supports two usage patterns:
23
+ * - Use `title` prop for automatic layout with back/close buttons
24
+ * - Use `children` for custom header content
25
+ *
26
+ * Heading level automatically adjusts based on view stack depth
27
+ * (h2 for root view, h4 for nested views).
28
+ *
29
+ * @param props - ComponentPropsWithRef<'header'>
30
+ * @param props.className - Optional CSS class name.
31
+ * @param props.title - Title text for the header.
32
+ * @param props.children - Custom header content (overrides title).
33
+ * @returns The rendered DrawerHeader component.
34
+ *
35
+ * @example
36
+ * ```tsx
37
+ * // Simplified with title prop
38
+ * <DrawerHeader title="Settings" />
39
+ * ```
40
+ *
41
+ * @example
42
+ * ```tsx
43
+ * // Custom layout
44
+ * <DrawerHeader>
45
+ * <DrawerHeaderTitle level={2}>Settings</DrawerHeaderTitle>
46
+ * <DrawerClose />
47
+ * </DrawerHeader>
48
+ *```
49
+ */
18
50
  declare function DrawerHeader({
19
51
  className,
20
52
  title,
21
53
  children,
22
54
  ...rest
23
- }: ComponentPropsWithRef<'header'>): react_jsx_runtime20.JSX.Element;
55
+ }: ComponentPropsWithRef<'header'>): react_jsx_runtime50.JSX.Element;
24
56
  //#endregion
25
57
  export { DrawerHeader };
26
58
  //# sourceMappingURL=header.d.ts.map
@@ -13,9 +13,11 @@
13
13
 
14
14
  'use client';
15
15
 
16
+ import { Icon } from "../icon/index.js";
17
+ import { Button as Button$1 } from "../button/index.js";
16
18
  import { ViewStackContext } from "../view-stack/context.js";
19
+ import { DrawerTrigger } from "./trigger.js";
17
20
  import { DrawerBack } from "./back.js";
18
- import { DrawerClose } from "./close.js";
19
21
  import { DrawerHeaderTitle } from "./header-title.js";
20
22
  import "client-only";
21
23
  import { useContext } from "react";
@@ -23,8 +25,40 @@ import { clsx } from "@accelint/design-foundation/lib/utils";
23
25
  import { Header } from "react-aria-components";
24
26
  import { Fragment as Fragment$1, jsx, jsxs } from "react/jsx-runtime";
25
27
  import styles from "./styles.module.css";
28
+ import { Cancel } from "@accelint/icons";
26
29
 
27
30
  //#region src/components/drawer/header.tsx
31
+ /**
32
+ * DrawerHeader - Header region within a DrawerView.
33
+ *
34
+ * Supports two usage patterns:
35
+ * - Use `title` prop for automatic layout with back/close buttons
36
+ * - Use `children` for custom header content
37
+ *
38
+ * Heading level automatically adjusts based on view stack depth
39
+ * (h2 for root view, h4 for nested views).
40
+ *
41
+ * @param props - ComponentPropsWithRef<'header'>
42
+ * @param props.className - Optional CSS class name.
43
+ * @param props.title - Title text for the header.
44
+ * @param props.children - Custom header content (overrides title).
45
+ * @returns The rendered DrawerHeader component.
46
+ *
47
+ * @example
48
+ * ```tsx
49
+ * // Simplified with title prop
50
+ * <DrawerHeader title="Settings" />
51
+ * ```
52
+ *
53
+ * @example
54
+ * ```tsx
55
+ * // Custom layout
56
+ * <DrawerHeader>
57
+ * <DrawerHeaderTitle level={2}>Settings</DrawerHeaderTitle>
58
+ * <DrawerClose />
59
+ * </DrawerHeader>
60
+ *```
61
+ */
28
62
  function DrawerHeader({ className, title, children, ...rest }) {
29
63
  const { stack } = useContext(ViewStackContext);
30
64
  const level = stack.length > 1 ? 4 : 2;
@@ -37,7 +71,13 @@ function DrawerHeader({ className, title, children, ...rest }) {
37
71
  level,
38
72
  children: title
39
73
  }),
40
- /* @__PURE__ */ jsx(DrawerClose, {})
74
+ /* @__PURE__ */ jsx(DrawerTrigger, {
75
+ for: "clear",
76
+ children: /* @__PURE__ */ jsx(Button$1, {
77
+ variant: "icon",
78
+ children: /* @__PURE__ */ jsx(Icon, { children: /* @__PURE__ */ jsx(Cancel, {}) })
79
+ })
80
+ })
41
81
  ] }) : children
42
82
  });
43
83
  }
@@ -1 +1 @@
1
- {"version":3,"file":"header.js","names":[],"sources":["../../../src/components/drawer/header.tsx"],"sourcesContent":["/*\n * Copyright 2025 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'use client';\n\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { type ComponentPropsWithRef, useContext } from 'react';\nimport { Header } from 'react-aria-components';\nimport { ViewStackContext } from '../view-stack/context';\nimport { DrawerBack } from './back';\nimport { DrawerClose } from './close';\nimport { DrawerHeaderTitle } from './header-title';\nimport styles from './styles.module.css';\n\nexport function DrawerHeader({\n className,\n title,\n children,\n ...rest\n}: ComponentPropsWithRef<'header'>) {\n const { stack } = useContext(ViewStackContext);\n const level = stack.length > 1 ? 4 : 2;\n\n return (\n <Header {...rest} className={clsx(styles.header, className)}>\n {children == null ? (\n <>\n <DrawerBack />\n <DrawerHeaderTitle level={level}>{title}</DrawerHeaderTitle>\n <DrawerClose />\n </>\n ) : (\n children\n )}\n </Header>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAuBA,SAAgB,aAAa,EAC3B,WACA,OACA,UACA,GAAG,QAC+B;CAClC,MAAM,EAAE,UAAU,WAAW,iBAAiB;CAC9C,MAAM,QAAQ,MAAM,SAAS,IAAI,IAAI;AAErC,QACE,oBAAC;EAAO,GAAI;EAAM,WAAW,KAAK,OAAO,QAAQ,UAAU;YACxD,YAAY,OACX;GACE,oBAAC,eAAa;GACd,oBAAC;IAAyB;cAAQ;KAA0B;GAC5D,oBAAC,gBAAc;MACd,GAEH;GAEK"}
1
+ {"version":3,"file":"header.js","names":["Button"],"sources":["../../../src/components/drawer/header.tsx"],"sourcesContent":["/*\n * Copyright 2025 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'use client';\n\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { Cancel } from '@accelint/icons';\nimport 'client-only';\nimport { type ComponentPropsWithRef, useContext } from 'react';\nimport { Header } from 'react-aria-components';\nimport { Button } from '../button';\nimport { Icon } from '../icon';\nimport { ViewStackContext } from '../view-stack/context';\nimport { DrawerBack } from './back';\nimport { DrawerHeaderTitle } from './header-title';\nimport styles from './styles.module.css';\nimport { DrawerTrigger } from './trigger';\n\n/**\n * DrawerHeader - Header region within a DrawerView.\n *\n * Supports two usage patterns:\n * - Use `title` prop for automatic layout with back/close buttons\n * - Use `children` for custom header content\n *\n * Heading level automatically adjusts based on view stack depth\n * (h2 for root view, h4 for nested views).\n *\n * @param props - ComponentPropsWithRef<'header'>\n * @param props.className - Optional CSS class name.\n * @param props.title - Title text for the header.\n * @param props.children - Custom header content (overrides title).\n * @returns The rendered DrawerHeader component.\n *\n * @example\n * ```tsx\n * // Simplified with title prop\n * <DrawerHeader title=\"Settings\" />\n * ```\n *\n * @example\n * ```tsx\n * // Custom layout\n * <DrawerHeader>\n * <DrawerHeaderTitle level={2}>Settings</DrawerHeaderTitle>\n * <DrawerClose />\n * </DrawerHeader>\n *```\n */\nexport function DrawerHeader({\n className,\n title,\n children,\n ...rest\n}: ComponentPropsWithRef<'header'>) {\n const { stack } = useContext(ViewStackContext);\n const level = stack.length > 1 ? 4 : 2;\n\n return (\n <Header {...rest} className={clsx(styles.header, className)}>\n {children == null ? (\n <>\n <DrawerBack />\n <DrawerHeaderTitle level={level}>{title}</DrawerHeaderTitle>\n <DrawerTrigger for='clear'>\n <Button variant='icon'>\n <Icon>\n <Cancel />\n </Icon>\n </Button>\n </DrawerTrigger>\n </>\n ) : (\n children\n )}\n </Header>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAyDA,SAAgB,aAAa,EAC3B,WACA,OACA,UACA,GAAG,QAC+B;CAClC,MAAM,EAAE,UAAU,WAAW,iBAAiB;CAC9C,MAAM,QAAQ,MAAM,SAAS,IAAI,IAAI;AAErC,QACE,oBAAC;EAAO,GAAI;EAAM,WAAW,KAAK,OAAO,QAAQ,UAAU;YACxD,YAAY,OACX;GACE,oBAAC,eAAa;GACd,oBAAC;IAAyB;cAAQ;KAA0B;GAC5D,oBAAC;IAAc,KAAI;cACjB,oBAACA;KAAO,SAAQ;eACd,oBAAC,kBACC,oBAAC,WAAS,GACL;MACA;KACK;MACf,GAEH;GAEK"}
@@ -12,7 +12,7 @@
12
12
 
13
13
  import { DrawerProps } from "./types.js";
14
14
  import "client-only";
15
- import * as react_jsx_runtime7 from "react/jsx-runtime";
15
+ import * as react_jsx_runtime51 from "react/jsx-runtime";
16
16
 
17
17
  //#region src/components/drawer/index.d.ts
18
18
 
@@ -22,7 +22,18 @@ import * as react_jsx_runtime7 from "react/jsx-runtime";
22
22
  * A flexible panel that slides in from the viewport edge and supports
23
23
  * stacked views, headers, footers, and programmatic triggers.
24
24
  *
25
+ * @param props - {@link DrawerProps}
26
+ * @param props.id - Unique identifier for the drawer.
27
+ * @param props.children - Content to render inside the drawer.
28
+ * @param props.className - Optional CSS class name.
29
+ * @param props.defaultView - ID of the view to display initially.
30
+ * @param props.placement - Edge of the viewport the drawer slides from.
31
+ * @param props.size - Size of the drawer panel.
32
+ * @param props.onChange - Callback when the active view changes.
33
+ * @returns The rendered Drawer component.
34
+ *
25
35
  * @example
36
+ * ```tsx
26
37
  * const ids = { drawer: uuid(), a: uuid() };
27
38
  *
28
39
  * <DrawerLayout push="left">
@@ -41,6 +52,7 @@ import * as react_jsx_runtime7 from "react/jsx-runtime";
41
52
  * </DrawerPanel>
42
53
  * </Drawer>
43
54
  * </DrawerLayout>
55
+ * ```
44
56
  */
45
57
  declare function Drawer({
46
58
  id,
@@ -51,7 +63,7 @@ declare function Drawer({
51
63
  size,
52
64
  onChange,
53
65
  ...rest
54
- }: DrawerProps): react_jsx_runtime7.JSX.Element;
66
+ }: DrawerProps): react_jsx_runtime51.JSX.Element;
55
67
  //#endregion
56
68
  export { Drawer };
57
69
  //# sourceMappingURL=index.d.ts.map
@@ -31,7 +31,18 @@ import styles from "./styles.module.css";
31
31
  * A flexible panel that slides in from the viewport edge and supports
32
32
  * stacked views, headers, footers, and programmatic triggers.
33
33
  *
34
+ * @param props - {@link DrawerProps}
35
+ * @param props.id - Unique identifier for the drawer.
36
+ * @param props.children - Content to render inside the drawer.
37
+ * @param props.className - Optional CSS class name.
38
+ * @param props.defaultView - ID of the view to display initially.
39
+ * @param props.placement - Edge of the viewport the drawer slides from.
40
+ * @param props.size - Size of the drawer panel.
41
+ * @param props.onChange - Callback when the active view changes.
42
+ * @returns The rendered Drawer component.
43
+ *
34
44
  * @example
45
+ * ```tsx
35
46
  * const ids = { drawer: uuid(), a: uuid() };
36
47
  *
37
48
  * <DrawerLayout push="left">
@@ -50,11 +61,15 @@ import styles from "./styles.module.css";
50
61
  * </DrawerPanel>
51
62
  * </Drawer>
52
63
  * </DrawerLayout>
64
+ * ```
53
65
  */
54
66
  function Drawer({ id, children, className, defaultView, placement = "left", size = "medium", onChange, ...rest }) {
55
67
  const views = useRef(/* @__PURE__ */ new Set());
56
68
  const [activeView, setActiveView] = useState(defaultView || null);
57
69
  const viewStackEmit = useViewStackEmit();
70
+ const handleClose = useCallback((data) => {
71
+ if (views.current.has(data?.payload?.view) || data?.payload?.view === id) viewStackEmit.clear(id);
72
+ }, [viewStackEmit.clear, id]);
58
73
  const handleOpen = useCallback((data) => {
59
74
  if (views.current.has(data?.payload?.view)) {
60
75
  viewStackEmit.clear(id);
@@ -76,6 +91,7 @@ function Drawer({ id, children, className, defaultView, placement = "left", size
76
91
  viewStackEmit.clear,
77
92
  viewStackEmit.push
78
93
  ]);
94
+ useOn(DrawerEventTypes.close, handleClose);
79
95
  useOn(DrawerEventTypes.open, handleOpen);
80
96
  useOn(DrawerEventTypes.toggle, handleToggle);
81
97
  return /* @__PURE__ */ jsx(DrawerContext.Provider, {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/drawer/index.tsx"],"sourcesContent":["/*\n * Copyright 2025 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'use client';\n\nimport { useOn } from '@accelint/bus/react';\nimport type { UniqueId } from '@accelint/core';\nimport 'client-only';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport { useCallback, useRef, useState } from 'react';\nimport { ViewStack } from '../view-stack';\nimport { useViewStackEmit } from '../view-stack/context';\nimport { DrawerContext } from './context';\nimport { DrawerEventTypes } from './events';\nimport styles from './styles.module.css';\nimport type { DrawerOpenEvent, DrawerProps, DrawerToggleEvent } from './types';\n\n/**\n * Drawer - Slide-in panel for navigation or contextual content\n *\n * A flexible panel that slides in from the viewport edge and supports\n * stacked views, headers, footers, and programmatic triggers.\n *\n * @example\n * const ids = { drawer: uuid(), a: uuid() };\n *\n * <DrawerLayout push=\"left\">\n * <DrawerLayoutMain>\n * <DrawerTrigger for={`open:${ids.a}`}>\n * <Button variant=\"icon\">Open</Button>\n * </DrawerTrigger>\n * </DrawerLayoutMain>\n *\n * <Drawer id={ids.drawer} defaultView={ids.a}>\n * <DrawerPanel>\n * <DrawerView id={ids.a}>\n * <DrawerHeader title=\"Title A\" />\n * <DrawerContent>Content for View A</DrawerContent>\n * </DrawerView>\n * </DrawerPanel>\n * </Drawer>\n * </DrawerLayout>\n */\nexport function Drawer({\n id,\n children,\n className,\n defaultView,\n placement = 'left',\n size = 'medium',\n onChange,\n ...rest\n}: DrawerProps) {\n const views = useRef(new Set<UniqueId>());\n const [activeView, setActiveView] = useState<UniqueId | null>(\n defaultView || null,\n );\n\n const viewStackEmit = useViewStackEmit();\n\n const handleOpen = useCallback(\n (data: DrawerOpenEvent) => {\n if (views.current.has(data?.payload?.view)) {\n viewStackEmit.clear(id);\n viewStackEmit.push(data.payload.view);\n }\n },\n [id, viewStackEmit.clear, viewStackEmit.push],\n );\n const handleToggle = useCallback(\n (data: DrawerToggleEvent) => {\n if (views.current.has(data?.payload?.view)) {\n viewStackEmit.clear(id);\n if (activeView !== data?.payload?.view) {\n viewStackEmit.push(data.payload.view);\n }\n }\n },\n [id, activeView, viewStackEmit.clear, viewStackEmit.push],\n );\n\n useOn(DrawerEventTypes.open, handleOpen);\n useOn(DrawerEventTypes.toggle, handleToggle);\n\n return (\n <DrawerContext.Provider\n value={{\n register: (view: UniqueId) => views.current.add(view),\n unregister: (view: UniqueId) => views.current.delete(view),\n placement,\n }}\n >\n <ViewStack\n id={id}\n defaultView={defaultView}\n onChange={(view) => {\n setActiveView(view);\n onChange?.(view);\n }}\n >\n <div\n {...rest}\n className={clsx('group/drawer', styles.drawer, className)}\n data-open={!!activeView || null}\n data-placement={placement}\n data-size={size}\n >\n {children}\n </div>\n </ViewStack>\n </DrawerContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmDA,SAAgB,OAAO,EACrB,IACA,UACA,WACA,aACA,YAAY,QACZ,OAAO,UACP,UACA,GAAG,QACW;CACd,MAAM,QAAQ,uBAAO,IAAI,KAAe,CAAC;CACzC,MAAM,CAAC,YAAY,iBAAiB,SAClC,eAAe,KAChB;CAED,MAAM,gBAAgB,kBAAkB;CAExC,MAAM,aAAa,aAChB,SAA0B;AACzB,MAAI,MAAM,QAAQ,IAAI,MAAM,SAAS,KAAK,EAAE;AAC1C,iBAAc,MAAM,GAAG;AACvB,iBAAc,KAAK,KAAK,QAAQ,KAAK;;IAGzC;EAAC;EAAI,cAAc;EAAO,cAAc;EAAK,CAC9C;CACD,MAAM,eAAe,aAClB,SAA4B;AAC3B,MAAI,MAAM,QAAQ,IAAI,MAAM,SAAS,KAAK,EAAE;AAC1C,iBAAc,MAAM,GAAG;AACvB,OAAI,eAAe,MAAM,SAAS,KAChC,eAAc,KAAK,KAAK,QAAQ,KAAK;;IAI3C;EAAC;EAAI;EAAY,cAAc;EAAO,cAAc;EAAK,CAC1D;AAED,OAAM,iBAAiB,MAAM,WAAW;AACxC,OAAM,iBAAiB,QAAQ,aAAa;AAE5C,QACE,oBAAC,cAAc;EACb,OAAO;GACL,WAAW,SAAmB,MAAM,QAAQ,IAAI,KAAK;GACrD,aAAa,SAAmB,MAAM,QAAQ,OAAO,KAAK;GAC1D;GACD;YAED,oBAAC;GACK;GACS;GACb,WAAW,SAAS;AAClB,kBAAc,KAAK;AACnB,eAAW,KAAK;;aAGlB,oBAAC;IACC,GAAI;IACJ,WAAW,KAAK,gBAAgB,OAAO,QAAQ,UAAU;IACzD,aAAW,CAAC,CAAC,cAAc;IAC3B,kBAAgB;IAChB,aAAW;IAEV;KACG;IACI;GACW"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/drawer/index.tsx"],"sourcesContent":["/*\n * Copyright 2025 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'use client';\n\nimport { useOn } from '@accelint/bus/react';\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport type { UniqueId } from '@accelint/core';\nimport 'client-only';\nimport { useCallback, useRef, useState } from 'react';\nimport { ViewStack } from '../view-stack';\nimport { useViewStackEmit } from '../view-stack/context';\nimport { DrawerContext } from './context';\nimport { DrawerEventTypes } from './events';\nimport styles from './styles.module.css';\nimport type {\n DrawerCloseEvent,\n DrawerOpenEvent,\n DrawerProps,\n DrawerToggleEvent,\n} from './types';\n\n/**\n * Drawer - Slide-in panel for navigation or contextual content\n *\n * A flexible panel that slides in from the viewport edge and supports\n * stacked views, headers, footers, and programmatic triggers.\n *\n * @param props - {@link DrawerProps}\n * @param props.id - Unique identifier for the drawer.\n * @param props.children - Content to render inside the drawer.\n * @param props.className - Optional CSS class name.\n * @param props.defaultView - ID of the view to display initially.\n * @param props.placement - Edge of the viewport the drawer slides from.\n * @param props.size - Size of the drawer panel.\n * @param props.onChange - Callback when the active view changes.\n * @returns The rendered Drawer component.\n *\n * @example\n * ```tsx\n * const ids = { drawer: uuid(), a: uuid() };\n *\n * <DrawerLayout push=\"left\">\n * <DrawerLayoutMain>\n * <DrawerTrigger for={`open:${ids.a}`}>\n * <Button variant=\"icon\">Open</Button>\n * </DrawerTrigger>\n * </DrawerLayoutMain>\n *\n * <Drawer id={ids.drawer} defaultView={ids.a}>\n * <DrawerPanel>\n * <DrawerView id={ids.a}>\n * <DrawerHeader title=\"Title A\" />\n * <DrawerContent>Content for View A</DrawerContent>\n * </DrawerView>\n * </DrawerPanel>\n * </Drawer>\n * </DrawerLayout>\n * ```\n */\nexport function Drawer({\n id,\n children,\n className,\n defaultView,\n placement = 'left',\n size = 'medium',\n onChange,\n ...rest\n}: DrawerProps) {\n const views = useRef(new Set<UniqueId>());\n const [activeView, setActiveView] = useState<UniqueId | null>(\n defaultView || null,\n );\n\n const viewStackEmit = useViewStackEmit();\n\n const handleClose = useCallback(\n (data: DrawerCloseEvent) => {\n if (\n views.current.has(data?.payload?.view) ||\n data?.payload?.view === id\n ) {\n viewStackEmit.clear(id);\n }\n },\n [viewStackEmit.clear, id],\n );\n const handleOpen = useCallback(\n (data: DrawerOpenEvent) => {\n if (views.current.has(data?.payload?.view)) {\n viewStackEmit.clear(id);\n viewStackEmit.push(data.payload.view);\n }\n },\n [id, viewStackEmit.clear, viewStackEmit.push],\n );\n const handleToggle = useCallback(\n (data: DrawerToggleEvent) => {\n if (views.current.has(data?.payload?.view)) {\n viewStackEmit.clear(id);\n if (activeView !== data?.payload?.view) {\n viewStackEmit.push(data.payload.view);\n }\n }\n },\n [id, activeView, viewStackEmit.clear, viewStackEmit.push],\n );\n\n useOn(DrawerEventTypes.close, handleClose);\n useOn(DrawerEventTypes.open, handleOpen);\n useOn(DrawerEventTypes.toggle, handleToggle);\n\n return (\n <DrawerContext.Provider\n value={{\n register: (view: UniqueId) => views.current.add(view),\n unregister: (view: UniqueId) => views.current.delete(view),\n placement,\n }}\n >\n <ViewStack\n id={id}\n defaultView={defaultView}\n onChange={(view) => {\n setActiveView(view);\n onChange?.(view);\n }}\n >\n <div\n {...rest}\n className={clsx('group/drawer', styles.drawer, className)}\n data-open={!!activeView || null}\n data-placement={placement}\n data-size={size}\n >\n {children}\n </div>\n </ViewStack>\n </DrawerContext.Provider>\n );\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoEA,SAAgB,OAAO,EACrB,IACA,UACA,WACA,aACA,YAAY,QACZ,OAAO,UACP,UACA,GAAG,QACW;CACd,MAAM,QAAQ,uBAAO,IAAI,KAAe,CAAC;CACzC,MAAM,CAAC,YAAY,iBAAiB,SAClC,eAAe,KAChB;CAED,MAAM,gBAAgB,kBAAkB;CAExC,MAAM,cAAc,aACjB,SAA2B;AAC1B,MACE,MAAM,QAAQ,IAAI,MAAM,SAAS,KAAK,IACtC,MAAM,SAAS,SAAS,GAExB,eAAc,MAAM,GAAG;IAG3B,CAAC,cAAc,OAAO,GAAG,CAC1B;CACD,MAAM,aAAa,aAChB,SAA0B;AACzB,MAAI,MAAM,QAAQ,IAAI,MAAM,SAAS,KAAK,EAAE;AAC1C,iBAAc,MAAM,GAAG;AACvB,iBAAc,KAAK,KAAK,QAAQ,KAAK;;IAGzC;EAAC;EAAI,cAAc;EAAO,cAAc;EAAK,CAC9C;CACD,MAAM,eAAe,aAClB,SAA4B;AAC3B,MAAI,MAAM,QAAQ,IAAI,MAAM,SAAS,KAAK,EAAE;AAC1C,iBAAc,MAAM,GAAG;AACvB,OAAI,eAAe,MAAM,SAAS,KAChC,eAAc,KAAK,KAAK,QAAQ,KAAK;;IAI3C;EAAC;EAAI;EAAY,cAAc;EAAO,cAAc;EAAK,CAC1D;AAED,OAAM,iBAAiB,OAAO,YAAY;AAC1C,OAAM,iBAAiB,MAAM,WAAW;AACxC,OAAM,iBAAiB,QAAQ,aAAa;AAE5C,QACE,oBAAC,cAAc;EACb,OAAO;GACL,WAAW,SAAmB,MAAM,QAAQ,IAAI,KAAK;GACrD,aAAa,SAAmB,MAAM,QAAQ,OAAO,KAAK;GAC1D;GACD;YAED,oBAAC;GACK;GACS;GACb,WAAW,SAAS;AAClB,kBAAc,KAAK;AACnB,eAAW,KAAK;;aAGlB,oBAAC;IACC,GAAI;IACJ,WAAW,KAAK,gBAAgB,OAAO,QAAQ,UAAU;IACzD,aAAW,CAAC,CAAC,cAAc;IAC3B,kBAAgB;IAChB,aAAW;IAEV;KACG;IACI;GACW"}
@@ -11,13 +11,34 @@
11
11
  */
12
12
 
13
13
  import { ComponentPropsWithRef } from "react";
14
- import * as react_jsx_runtime9 from "react/jsx-runtime";
14
+ import * as react_jsx_runtime54 from "react/jsx-runtime";
15
15
 
16
16
  //#region src/components/drawer/layout-main.d.ts
17
+
18
+ /**
19
+ * DrawerLayoutMain - Main content area within DrawerLayout.
20
+ *
21
+ * Responds to panel open/close states, adjusting layout based on
22
+ * the parent DrawerLayout's `push` configuration.
23
+ *
24
+ * @param props - ComponentPropsWithRef<'main'>
25
+ * @param props.className - Optional CSS class name.
26
+ * @returns The rendered DrawerLayoutMain component.
27
+ *
28
+ * @example
29
+ * ```tsx
30
+ * <DrawerLayout push="left">
31
+ * <DrawerLayoutMain>
32
+ * Main content here
33
+ * </DrawerLayoutMain>
34
+ * <Drawer placement="left">...</Drawer>
35
+ * </DrawerLayout>
36
+ * ```
37
+ */
17
38
  declare function DrawerLayoutMain({
18
39
  className,
19
40
  ...rest
20
- }: ComponentPropsWithRef<'main'>): react_jsx_runtime9.JSX.Element;
41
+ }: ComponentPropsWithRef<'main'>): react_jsx_runtime54.JSX.Element;
21
42
  //#endregion
22
43
  export { DrawerLayoutMain };
23
44
  //# sourceMappingURL=layout-main.d.ts.map
@@ -16,6 +16,26 @@ import { jsx } from "react/jsx-runtime";
16
16
  import styles from "./styles.module.css";
17
17
 
18
18
  //#region src/components/drawer/layout-main.tsx
19
+ /**
20
+ * DrawerLayoutMain - Main content area within DrawerLayout.
21
+ *
22
+ * Responds to panel open/close states, adjusting layout based on
23
+ * the parent DrawerLayout's `push` configuration.
24
+ *
25
+ * @param props - ComponentPropsWithRef<'main'>
26
+ * @param props.className - Optional CSS class name.
27
+ * @returns The rendered DrawerLayoutMain component.
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * <DrawerLayout push="left">
32
+ * <DrawerLayoutMain>
33
+ * Main content here
34
+ * </DrawerLayoutMain>
35
+ * <Drawer placement="left">...</Drawer>
36
+ * </DrawerLayout>
37
+ * ```
38
+ */
19
39
  function DrawerLayoutMain({ className, ...rest }) {
20
40
  return /* @__PURE__ */ jsx("main", {
21
41
  ...rest,
@@ -1 +1 @@
1
- {"version":3,"file":"layout-main.js","names":[],"sources":["../../../src/components/drawer/layout-main.tsx"],"sourcesContent":["/*\n * Copyright 2025 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 */\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport styles from './styles.module.css';\nimport type { ComponentPropsWithRef } from 'react';\n\nexport function DrawerLayoutMain({\n className,\n ...rest\n}: ComponentPropsWithRef<'main'>) {\n return <main {...rest} className={clsx(styles.main, className)} />;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAeA,SAAgB,iBAAiB,EAC/B,WACA,GAAG,QAC6B;AAChC,QAAO,oBAAC;EAAK,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,UAAU;GAAI"}
1
+ {"version":3,"file":"layout-main.js","names":[],"sources":["../../../src/components/drawer/layout-main.tsx"],"sourcesContent":["/*\n * Copyright 2025 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 */\nimport { clsx } from '@accelint/design-foundation/lib/utils';\nimport styles from './styles.module.css';\nimport type { ComponentPropsWithRef } from 'react';\n\n/**\n * DrawerLayoutMain - Main content area within DrawerLayout.\n *\n * Responds to panel open/close states, adjusting layout based on\n * the parent DrawerLayout's `push` configuration.\n *\n * @param props - ComponentPropsWithRef<'main'>\n * @param props.className - Optional CSS class name.\n * @returns The rendered DrawerLayoutMain component.\n *\n * @example\n * ```tsx\n * <DrawerLayout push=\"left\">\n * <DrawerLayoutMain>\n * Main content here\n * </DrawerLayoutMain>\n * <Drawer placement=\"left\">...</Drawer>\n * </DrawerLayout>\n * ```\n */\nexport function DrawerLayoutMain({\n className,\n ...rest\n}: ComponentPropsWithRef<'main'>) {\n return <main {...rest} className={clsx(styles.main, className)} />;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmCA,SAAgB,iBAAiB,EAC/B,WACA,GAAG,QAC6B;AAChC,QAAO,oBAAC;EAAK,GAAI;EAAM,WAAW,KAAK,OAAO,MAAM,UAAU;GAAI"}