@radix-ng/primitives 0.12.0 → 0.12.2

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 (492) hide show
  1. package/README.md +6 -2
  2. package/accordion/src/accordion-content.directive.d.ts +11 -0
  3. package/accordion/src/accordion-header.directive.d.ts +7 -0
  4. package/accordion/src/accordion-item.directive.d.ts +82 -0
  5. package/accordion/src/accordion-root.directive.d.ts +93 -0
  6. package/accordion/src/accordion-trigger.directive.d.ts +15 -0
  7. package/alert-dialog/{index.ts → index.d.ts} +0 -1
  8. package/alert-dialog/src/alert-dialog-cancel.directive.d.ts +7 -0
  9. package/alert-dialog/src/alert-dialog-content.directive.d.ts +9 -0
  10. package/alert-dialog/src/alert-dialog-root.directive.d.ts +9 -0
  11. package/alert-dialog/src/alert-dialog-title.directive.d.ts +5 -0
  12. package/alert-dialog/src/alert-dialog-trigger.directive.d.ts +7 -0
  13. package/alert-dialog/src/alert-dialog.service.d.ts +14 -0
  14. package/avatar/src/avatar-fallback.directive.d.ts +28 -0
  15. package/avatar/src/avatar-image.directive.d.ts +21 -0
  16. package/avatar/src/avatar-root.directive.d.ts +21 -0
  17. package/avatar/src/avatar.config.d.ts +13 -0
  18. package/checkbox/src/checkbox-button.directive.d.ts +8 -0
  19. package/checkbox/src/checkbox-indicator.directive.d.ts +6 -0
  20. package/checkbox/src/checkbox-input.directive.d.ts +9 -0
  21. package/checkbox/src/checkbox.directive.d.ts +75 -0
  22. package/checkbox/src/checkbox.token.d.ts +4 -0
  23. package/collapsible/src/collapsible-content.directive.d.ts +17 -0
  24. package/collapsible/src/collapsible-content.token.d.ts +3 -0
  25. package/collapsible/src/collapsible-root.directive.d.ts +55 -0
  26. package/collapsible/src/collapsible-trigger.directive.d.ts +26 -0
  27. package/compodoc/documentation.json +13895 -0
  28. package/context-menu/src/context-menu-content.directive.d.ts +15 -0
  29. package/context-menu/src/context-menu-item-checkbox.directive.d.ts +9 -0
  30. package/context-menu/src/context-menu-item-indicator.directive.d.ts +7 -0
  31. package/context-menu/src/context-menu-item-radio-group.directive.d.ts +12 -0
  32. package/context-menu/src/context-menu-item-radio.directive.d.ts +19 -0
  33. package/context-menu/src/context-menu-item-selectable.d.ts +12 -0
  34. package/context-menu/src/context-menu-item.directive.d.ts +17 -0
  35. package/context-menu/src/context-menu-label.directive.d.ts +5 -0
  36. package/context-menu/src/context-menu-separator.directive.d.ts +6 -0
  37. package/context-menu/src/context-menu-trigger.directive.d.ts +31 -0
  38. package/dialog/index.d.ts +23 -0
  39. package/dialog/src/dialog-close.directive.d.ts +7 -0
  40. package/dialog/src/dialog-content.directive.d.ts +21 -0
  41. package/dialog/src/dialog-description.directive.d.ts +5 -0
  42. package/dialog/src/dialog-dismiss.directive.d.ts +7 -0
  43. package/dialog/src/dialog-ref.d.ts +37 -0
  44. package/dialog/src/dialog-title.directive.d.ts +5 -0
  45. package/dialog/src/dialog-trigger.directive.d.ts +16 -0
  46. package/dialog/src/{dialog.config.ts → dialog.config.d.ts} +17 -33
  47. package/dialog/src/dialog.injectors.d.ts +4 -0
  48. package/dialog/src/{dialog.providers.ts → dialog.providers.d.ts} +3 -11
  49. package/dialog/src/dialog.service.d.ts +26 -0
  50. package/dropdown-menu/src/dropdown-menu-content.directive.d.ts +15 -0
  51. package/dropdown-menu/src/dropdown-menu-item-checkbox.directive.d.ts +9 -0
  52. package/dropdown-menu/src/dropdown-menu-item-indicator.directive.d.ts +7 -0
  53. package/dropdown-menu/src/dropdown-menu-item-radio-group.directive.d.ts +12 -0
  54. package/dropdown-menu/src/dropdown-menu-item-radio.directive.d.ts +19 -0
  55. package/dropdown-menu/src/dropdown-menu-item-selectable.d.ts +12 -0
  56. package/dropdown-menu/src/dropdown-menu-item.directive.d.ts +17 -0
  57. package/dropdown-menu/src/dropdown-menu-label.directive.d.ts +5 -0
  58. package/dropdown-menu/src/dropdown-menu-separator.directive.d.ts +6 -0
  59. package/dropdown-menu/src/dropdown-menu-trigger.directive.d.ts +46 -0
  60. package/esm2022/accordion/index.mjs +6 -0
  61. package/esm2022/accordion/radix-ng-primitives-accordion.mjs +5 -0
  62. package/esm2022/accordion/src/accordion-content.directive.mjs +42 -0
  63. package/esm2022/accordion/src/accordion-header.directive.mjs +23 -0
  64. package/esm2022/accordion/src/accordion-item.directive.mjs +187 -0
  65. package/esm2022/accordion/src/accordion-root.directive.mjs +172 -0
  66. package/esm2022/accordion/src/accordion-trigger.directive.mjs +42 -0
  67. package/esm2022/alert-dialog/index.mjs +7 -0
  68. package/esm2022/alert-dialog/radix-ng-primitives-alert-dialog.mjs +5 -0
  69. package/esm2022/alert-dialog/src/alert-dialog-cancel.directive.mjs +24 -0
  70. package/esm2022/alert-dialog/src/alert-dialog-content.directive.mjs +34 -0
  71. package/esm2022/alert-dialog/src/alert-dialog-root.directive.mjs +24 -0
  72. package/esm2022/alert-dialog/src/alert-dialog-title.directive.mjs +14 -0
  73. package/esm2022/alert-dialog/src/alert-dialog-trigger.directive.mjs +24 -0
  74. package/esm2022/alert-dialog/src/alert-dialog.service.mjs +46 -0
  75. package/esm2022/avatar/index.mjs +5 -0
  76. package/esm2022/avatar/radix-ng-primitives-avatar.mjs +5 -0
  77. package/esm2022/avatar/src/avatar-fallback.directive.mjs +60 -0
  78. package/esm2022/avatar/src/avatar-image.directive.mjs +52 -0
  79. package/esm2022/avatar/src/avatar-root.directive.mjs +38 -0
  80. package/esm2022/avatar/src/avatar.config.mjs +17 -0
  81. package/esm2022/checkbox/index.mjs +6 -0
  82. package/esm2022/checkbox/radix-ng-primitives-checkbox.mjs +5 -0
  83. package/esm2022/checkbox/src/checkbox-button.directive.mjs +33 -0
  84. package/esm2022/checkbox/src/checkbox-indicator.directive.mjs +24 -0
  85. package/esm2022/checkbox/src/checkbox-input.directive.mjs +41 -0
  86. package/esm2022/checkbox/src/checkbox.directive.mjs +141 -0
  87. package/esm2022/checkbox/src/checkbox.token.mjs +6 -0
  88. package/esm2022/collapsible/index.mjs +4 -0
  89. package/esm2022/collapsible/radix-ng-primitives-collapsible.mjs +5 -0
  90. package/esm2022/collapsible/src/collapsible-content.directive.mjs +45 -0
  91. package/esm2022/collapsible/src/collapsible-content.token.mjs +3 -0
  92. package/esm2022/collapsible/src/collapsible-root.directive.mjs +118 -0
  93. package/esm2022/collapsible/src/collapsible-trigger.directive.mjs +49 -0
  94. package/esm2022/context-menu/index.mjs +11 -0
  95. package/esm2022/context-menu/radix-ng-primitives-context-menu.mjs +5 -0
  96. package/esm2022/context-menu/src/context-menu-content.directive.mjs +56 -0
  97. package/esm2022/context-menu/src/context-menu-item-checkbox.directive.mjs +39 -0
  98. package/esm2022/context-menu/src/context-menu-item-indicator.directive.mjs +22 -0
  99. package/esm2022/context-menu/src/context-menu-item-radio-group.directive.mjs +37 -0
  100. package/esm2022/context-menu/src/context-menu-item-radio.directive.mjs +67 -0
  101. package/esm2022/context-menu/src/context-menu-item-selectable.mjs +31 -0
  102. package/esm2022/context-menu/src/context-menu-item.directive.mjs +70 -0
  103. package/esm2022/context-menu/src/context-menu-label.directive.mjs +14 -0
  104. package/esm2022/context-menu/src/context-menu-separator.directive.mjs +21 -0
  105. package/esm2022/context-menu/src/context-menu-trigger.directive.mjs +92 -0
  106. package/esm2022/dialog/index.mjs +47 -0
  107. package/esm2022/dialog/radix-ng-primitives-dialog.mjs +5 -0
  108. package/esm2022/dialog/src/dialog-close.directive.mjs +25 -0
  109. package/esm2022/dialog/src/dialog-content.directive.mjs +46 -0
  110. package/esm2022/dialog/src/dialog-description.directive.mjs +14 -0
  111. package/esm2022/dialog/src/dialog-dismiss.directive.mjs +25 -0
  112. package/esm2022/dialog/src/dialog-ref.mjs +46 -0
  113. package/esm2022/dialog/src/dialog-title.directive.mjs +14 -0
  114. package/esm2022/dialog/src/dialog-trigger.directive.mjs +54 -0
  115. package/esm2022/dialog/src/dialog.config.mjs +6 -0
  116. package/esm2022/dialog/src/dialog.injectors.mjs +10 -0
  117. package/esm2022/dialog/src/dialog.providers.mjs +26 -0
  118. package/esm2022/dialog/src/dialog.service.mjs +87 -0
  119. package/esm2022/dropdown-menu/index.mjs +11 -0
  120. package/esm2022/dropdown-menu/radix-ng-primitives-dropdown-menu.mjs +5 -0
  121. package/esm2022/dropdown-menu/src/dropdown-menu-content.directive.mjs +56 -0
  122. package/esm2022/dropdown-menu/src/dropdown-menu-item-checkbox.directive.mjs +39 -0
  123. package/esm2022/dropdown-menu/src/dropdown-menu-item-indicator.directive.mjs +22 -0
  124. package/esm2022/dropdown-menu/src/dropdown-menu-item-radio-group.directive.mjs +37 -0
  125. package/esm2022/dropdown-menu/src/dropdown-menu-item-radio.directive.mjs +67 -0
  126. package/esm2022/dropdown-menu/src/dropdown-menu-item-selectable.mjs +31 -0
  127. package/esm2022/dropdown-menu/src/dropdown-menu-item.directive.mjs +71 -0
  128. package/esm2022/dropdown-menu/src/dropdown-menu-label.directive.mjs +14 -0
  129. package/esm2022/dropdown-menu/src/dropdown-menu-separator.directive.mjs +21 -0
  130. package/esm2022/dropdown-menu/src/dropdown-menu-trigger.directive.mjs +179 -0
  131. package/esm2022/index.mjs +2 -0
  132. package/esm2022/label/index.mjs +2 -0
  133. package/esm2022/label/radix-ng-primitives-label.mjs +5 -0
  134. package/esm2022/label/src/label.directive.mjs +59 -0
  135. package/esm2022/menu/index.mjs +45 -0
  136. package/esm2022/menu/radix-ng-primitives-menu.mjs +5 -0
  137. package/esm2022/menu/src/menu-content.directive.mjs +17 -0
  138. package/esm2022/menu/src/menu-directive.mjs +18 -0
  139. package/esm2022/menu/src/menu-group.directive.mjs +20 -0
  140. package/esm2022/menu/src/menu-item.directive.mjs +46 -0
  141. package/esm2022/menu/src/menu-label.directive.mjs +14 -0
  142. package/esm2022/menu/src/menu-separator.directive.mjs +21 -0
  143. package/esm2022/menubar/index.mjs +60 -0
  144. package/esm2022/menubar/radix-ng-primitives-menubar.mjs +5 -0
  145. package/esm2022/menubar/src/menubar-content.directive.mjs +17 -0
  146. package/esm2022/menubar/src/menubar-item-checkbox.directive.mjs +34 -0
  147. package/esm2022/menubar/src/menubar-item-indicator.directive.mjs +17 -0
  148. package/esm2022/menubar/src/menubar-item-radio.directive.mjs +35 -0
  149. package/esm2022/menubar/src/menubar-item.directive.mjs +20 -0
  150. package/esm2022/menubar/src/menubar-radio-group.directive.mjs +17 -0
  151. package/esm2022/menubar/src/menubar-root.directive.mjs +24 -0
  152. package/esm2022/menubar/src/menubar-separator.directive.mjs +17 -0
  153. package/esm2022/menubar/src/menubar-trigger.directive.mjs +45 -0
  154. package/esm2022/progress/index.mjs +3 -0
  155. package/esm2022/progress/radix-ng-primitives-progress.mjs +5 -0
  156. package/esm2022/progress/src/progress-indicator.directive.mjs +34 -0
  157. package/esm2022/progress/src/progress-root.directive.mjs +127 -0
  158. package/esm2022/radio/index.mjs +4 -0
  159. package/esm2022/radio/radix-ng-primitives-radio.mjs +5 -0
  160. package/esm2022/radio/src/radio-indicator.directive.mjs +25 -0
  161. package/esm2022/radio/src/radio-item.directive.mjs +70 -0
  162. package/esm2022/radio/src/radio-root.directive.mjs +194 -0
  163. package/esm2022/radio/src/radio-tokens.mjs +3 -0
  164. package/esm2022/radix-ng-primitives.mjs +5 -0
  165. package/esm2022/separator/index.mjs +2 -0
  166. package/esm2022/separator/radix-ng-primitives-separator.mjs +5 -0
  167. package/esm2022/separator/src/separator.directive.mjs +32 -0
  168. package/esm2022/switch/index.mjs +30 -0
  169. package/esm2022/switch/radix-ng-primitives-switch.mjs +5 -0
  170. package/esm2022/switch/src/switch-input.directive.mjs +32 -0
  171. package/esm2022/switch/src/switch-root.directive.mjs +95 -0
  172. package/esm2022/switch/src/switch-thumb.directive.mjs +23 -0
  173. package/esm2022/tabs/index.mjs +38 -0
  174. package/esm2022/tabs/radix-ng-primitives-tabs.mjs +5 -0
  175. package/esm2022/tabs/src/tabs-content.directive.mjs +29 -0
  176. package/esm2022/tabs/src/tabs-context.service.mjs +43 -0
  177. package/esm2022/tabs/src/tabs-list.directive.mjs +23 -0
  178. package/esm2022/tabs/src/tabs-root.directive.mjs +54 -0
  179. package/esm2022/tabs/src/tabs-trigger.directive.mjs +52 -0
  180. package/esm2022/toggle/index.mjs +2 -0
  181. package/esm2022/toggle/radix-ng-primitives-toggle.mjs +5 -0
  182. package/esm2022/toggle/src/toggle.directive.mjs +39 -0
  183. package/esm2022/toggle-group/index.mjs +6 -0
  184. package/esm2022/toggle-group/radix-ng-primitives-toggle-group.mjs +5 -0
  185. package/esm2022/toggle-group/src/toggle-group-button.directive.mjs +75 -0
  186. package/esm2022/toggle-group/src/toggle-group-button.token.mjs +6 -0
  187. package/esm2022/toggle-group/src/toggle-group-multi.directive.mjs +143 -0
  188. package/esm2022/toggle-group/src/toggle-group.directive.mjs +134 -0
  189. package/esm2022/toggle-group/src/toggle-group.token.mjs +6 -0
  190. package/fesm2022/radix-ng-primitives-accordion.mjs +455 -0
  191. package/fesm2022/radix-ng-primitives-accordion.mjs.map +1 -0
  192. package/fesm2022/radix-ng-primitives-alert-dialog.mjs +159 -0
  193. package/fesm2022/radix-ng-primitives-alert-dialog.mjs.map +1 -0
  194. package/fesm2022/radix-ng-primitives-avatar.mjs +166 -0
  195. package/fesm2022/radix-ng-primitives-avatar.mjs.map +1 -0
  196. package/fesm2022/radix-ng-primitives-checkbox.mjs +241 -0
  197. package/fesm2022/radix-ng-primitives-checkbox.mjs.map +1 -0
  198. package/fesm2022/radix-ng-primitives-collapsible.mjs +213 -0
  199. package/fesm2022/radix-ng-primitives-collapsible.mjs.map +1 -0
  200. package/fesm2022/radix-ng-primitives-context-menu.mjs +420 -0
  201. package/fesm2022/radix-ng-primitives-context-menu.mjs.map +1 -0
  202. package/fesm2022/radix-ng-primitives-dialog.mjs +361 -0
  203. package/fesm2022/radix-ng-primitives-dialog.mjs.map +1 -0
  204. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs +509 -0
  205. package/fesm2022/radix-ng-primitives-dropdown-menu.mjs.map +1 -0
  206. package/fesm2022/radix-ng-primitives-label.mjs +66 -0
  207. package/fesm2022/radix-ng-primitives-label.mjs.map +1 -0
  208. package/fesm2022/radix-ng-primitives-menu.mjs +158 -0
  209. package/fesm2022/radix-ng-primitives-menu.mjs.map +1 -0
  210. package/fesm2022/radix-ng-primitives-menubar.mjs +245 -0
  211. package/fesm2022/radix-ng-primitives-menubar.mjs.map +1 -0
  212. package/fesm2022/radix-ng-primitives-progress.mjs +165 -0
  213. package/fesm2022/radix-ng-primitives-progress.mjs.map +1 -0
  214. package/fesm2022/radix-ng-primitives-radio.mjs +289 -0
  215. package/fesm2022/radix-ng-primitives-radio.mjs.map +1 -0
  216. package/fesm2022/radix-ng-primitives-separator.mjs +39 -0
  217. package/fesm2022/radix-ng-primitives-separator.mjs.map +1 -0
  218. package/fesm2022/radix-ng-primitives-switch.mjs +173 -0
  219. package/fesm2022/radix-ng-primitives-switch.mjs.map +1 -0
  220. package/fesm2022/radix-ng-primitives-tabs.mjs +222 -0
  221. package/fesm2022/radix-ng-primitives-tabs.mjs.map +1 -0
  222. package/fesm2022/radix-ng-primitives-toggle-group.mjs +358 -0
  223. package/fesm2022/radix-ng-primitives-toggle-group.mjs.map +1 -0
  224. package/fesm2022/radix-ng-primitives-toggle.mjs +46 -0
  225. package/fesm2022/radix-ng-primitives-toggle.mjs.map +1 -0
  226. package/fesm2022/radix-ng-primitives.mjs +4 -0
  227. package/fesm2022/radix-ng-primitives.mjs.map +1 -0
  228. package/label/src/label.directive.d.ts +29 -0
  229. package/menu/index.d.ts +18 -0
  230. package/menu/src/menu-content.directive.d.ts +6 -0
  231. package/menu/src/menu-directive.d.ts +6 -0
  232. package/menu/src/menu-group.directive.d.ts +6 -0
  233. package/menu/src/menu-item.directive.d.ts +12 -0
  234. package/menu/src/menu-label.directive.d.ts +5 -0
  235. package/menu/src/menu-separator.directive.d.ts +6 -0
  236. package/menubar/index.d.ts +24 -0
  237. package/menubar/src/menubar-content.directive.d.ts +6 -0
  238. package/menubar/src/menubar-item-checkbox.directive.d.ts +14 -0
  239. package/menubar/src/menubar-item-indicator.directive.d.ts +5 -0
  240. package/menubar/src/menubar-item-radio.directive.d.ts +14 -0
  241. package/menubar/src/menubar-item.directive.d.ts +8 -0
  242. package/menubar/src/menubar-radio-group.directive.d.ts +6 -0
  243. package/menubar/src/menubar-root.directive.d.ts +7 -0
  244. package/menubar/src/menubar-separator.directive.d.ts +6 -0
  245. package/menubar/src/menubar-trigger.directive.d.ts +11 -0
  246. package/package.json +124 -4
  247. package/progress/{index.ts → index.d.ts} +0 -1
  248. package/progress/src/progress-indicator.directive.d.ts +16 -0
  249. package/progress/src/progress-root.directive.d.ts +63 -0
  250. package/radio/{index.ts → index.d.ts} +0 -1
  251. package/radio/src/radio-indicator.directive.d.ts +9 -0
  252. package/radio/src/radio-item.directive.d.ts +21 -0
  253. package/radio/src/radio-root.directive.d.ts +72 -0
  254. package/radio/src/{radio-tokens.ts → radio-tokens.d.ts} +1 -5
  255. package/separator/src/separator.directive.d.ts +22 -0
  256. package/switch/index.d.ts +13 -0
  257. package/switch/src/switch-input.directive.d.ts +6 -0
  258. package/switch/src/switch-root.directive.d.ts +51 -0
  259. package/switch/src/switch-thumb.directive.d.ts +6 -0
  260. package/tabs/index.d.ts +15 -0
  261. package/tabs/src/tabs-content.directive.d.ts +8 -0
  262. package/tabs/src/tabs-context.service.d.ts +22 -0
  263. package/tabs/src/tabs-list.directive.d.ts +6 -0
  264. package/tabs/src/tabs-root.directive.d.ts +37 -0
  265. package/tabs/src/tabs-trigger.directive.d.ts +19 -0
  266. package/toggle/src/toggle.directive.d.ts +30 -0
  267. package/toggle-group/src/toggle-group-button.directive.d.ts +39 -0
  268. package/toggle-group/src/toggle-group-button.token.d.ts +4 -0
  269. package/toggle-group/src/toggle-group-multi.directive.d.ts +93 -0
  270. package/toggle-group/src/toggle-group.directive.d.ts +84 -0
  271. package/toggle-group/src/toggle-group.token.d.ts +5 -0
  272. package/.compodocrc.json +0 -12
  273. package/CHANGELOG.md +0 -182
  274. package/accordion/__tests__/accordion-content.directive.spec.ts +0 -8
  275. package/accordion/__tests__/accordion-header.directive.spec.ts +0 -8
  276. package/accordion/__tests__/accordion-item.directive.spec.ts +0 -8
  277. package/accordion/__tests__/accordion-root.directive.spec.ts +0 -8
  278. package/accordion/__tests__/accordion-trigger.directive.spec.ts +0 -8
  279. package/accordion/ng-package.json +0 -5
  280. package/accordion/src/accordion-content.directive.ts +0 -46
  281. package/accordion/src/accordion-header.directive.ts +0 -15
  282. package/accordion/src/accordion-item.directive.ts +0 -216
  283. package/accordion/src/accordion-root.directive.ts +0 -205
  284. package/accordion/src/accordion-trigger.directive.ts +0 -37
  285. package/accordion/stories/accordion.docs.mdx +0 -77
  286. package/accordion/stories/accordion.stories.ts +0 -340
  287. package/alert-dialog/ng-package.json +0 -5
  288. package/alert-dialog/src/alert-dialog-cancel.directive.ts +0 -17
  289. package/alert-dialog/src/alert-dialog-content.directive.ts +0 -24
  290. package/alert-dialog/src/alert-dialog-root.directive.ts +0 -15
  291. package/alert-dialog/src/alert-dialog-title.directive.ts +0 -7
  292. package/alert-dialog/src/alert-dialog-trigger.directive.ts +0 -17
  293. package/alert-dialog/src/alert-dialog.service.ts +0 -51
  294. package/alert-dialog/stories/alert-dialog.stories.ts +0 -139
  295. package/avatar/__tests__/avatar-fallback.directive.spec.ts +0 -31
  296. package/avatar/__tests__/avatar-image.directive.spec.ts +0 -36
  297. package/avatar/ng-package.json +0 -5
  298. package/avatar/src/avatar-fallback.directive.ts +0 -62
  299. package/avatar/src/avatar-image.directive.ts +0 -55
  300. package/avatar/src/avatar-root.directive.ts +0 -35
  301. package/avatar/src/avatar.config.ts +0 -29
  302. package/avatar/stories/avatar.docs.mdx +0 -37
  303. package/avatar/stories/avatar.stories.ts +0 -87
  304. package/button/__tests__/.gitkeep +0 -0
  305. package/button/src/button-abstract.directive.ts +0 -46
  306. package/checkbox/ng-package.json +0 -5
  307. package/checkbox/src/checkbox-button.directive.ts +0 -26
  308. package/checkbox/src/checkbox-indicator.directive.ts +0 -16
  309. package/checkbox/src/checkbox-input.directive.ts +0 -36
  310. package/checkbox/src/checkbox.directive.ts +0 -146
  311. package/checkbox/src/checkbox.token.ts +0 -8
  312. package/checkbox/stories/checkbox-group.component.ts +0 -87
  313. package/checkbox/stories/checkbox-group.styles.scss +0 -49
  314. package/checkbox/stories/checkbox-indeterminate.component.ts +0 -52
  315. package/checkbox/stories/checkbox.docs.mdx +0 -58
  316. package/checkbox/stories/checkbox.stories.ts +0 -105
  317. package/collapsible/__tests__/collapsible-content.directive.spec.ts +0 -30
  318. package/collapsible/__tests__/collapsible-root.directive.spec.ts +0 -27
  319. package/collapsible/__tests__/collapsible-trigger.directive.spec.ts +0 -30
  320. package/collapsible/ng-package.json +0 -5
  321. package/collapsible/src/collapsible-content.directive.ts +0 -34
  322. package/collapsible/src/collapsible-content.token.ts +0 -6
  323. package/collapsible/src/collapsible-root.directive.ts +0 -120
  324. package/collapsible/src/collapsible-trigger.directive.ts +0 -44
  325. package/collapsible/stories/collapsible-animation.component.ts +0 -116
  326. package/collapsible/stories/collapsible-external-triggering.component.ts +0 -86
  327. package/collapsible/stories/collapsible.docs.mdx +0 -53
  328. package/collapsible/stories/collapsible.stories.ts +0 -151
  329. package/context-menu/ng-package.json +0 -5
  330. package/context-menu/src/context-menu-content.directive.ts +0 -47
  331. package/context-menu/src/context-menu-item-checkbox.directive.ts +0 -30
  332. package/context-menu/src/context-menu-item-indicator.directive.ts +0 -14
  333. package/context-menu/src/context-menu-item-radio-group.directive.ts +0 -31
  334. package/context-menu/src/context-menu-item-radio.directive.ts +0 -69
  335. package/context-menu/src/context-menu-item-selectable.ts +0 -18
  336. package/context-menu/src/context-menu-item.directive.ts +0 -65
  337. package/context-menu/src/context-menu-label.directive.ts +0 -7
  338. package/context-menu/src/context-menu-separator.directive.ts +0 -13
  339. package/context-menu/src/context-menu-trigger.directive.ts +0 -82
  340. package/context-menu/stories/context-menu.docs.mdx +0 -23
  341. package/context-menu/stories/context-menu.stories.ts +0 -253
  342. package/core/index.ts +0 -3
  343. package/core/src/accessor/provide-value-accessor.ts +0 -20
  344. package/core/src/auto-focus.directive.ts +0 -81
  345. package/core/src/inject-ng-control.ts +0 -28
  346. package/core/src/mount.ts +0 -27
  347. package/dialog/__tests__/dialog-content.directive.spec.ts +0 -77
  348. package/dialog/__tests__/dialog-trigger.directive.spec.ts +0 -85
  349. package/dialog/index.ts +0 -31
  350. package/dialog/ng-package.json +0 -5
  351. package/dialog/src/dialog-close.directive.ts +0 -18
  352. package/dialog/src/dialog-content.directive.ts +0 -45
  353. package/dialog/src/dialog-description.directive.ts +0 -7
  354. package/dialog/src/dialog-dismiss.directive.ts +0 -18
  355. package/dialog/src/dialog-ref.ts +0 -70
  356. package/dialog/src/dialog-title.directive.ts +0 -7
  357. package/dialog/src/dialog-trigger.directive.ts +0 -52
  358. package/dialog/src/dialog.injectors.ts +0 -12
  359. package/dialog/src/dialog.service.ts +0 -94
  360. package/dialog/stories/dialog.docs.mdx +0 -32
  361. package/dialog/stories/dialog.stories.ts +0 -233
  362. package/dropdown-menu/ng-package.json +0 -5
  363. package/dropdown-menu/src/dropdown-menu-content.directive.ts +0 -47
  364. package/dropdown-menu/src/dropdown-menu-item-checkbox.directive.ts +0 -30
  365. package/dropdown-menu/src/dropdown-menu-item-indicator.directive.ts +0 -14
  366. package/dropdown-menu/src/dropdown-menu-item-radio-group.directive.ts +0 -31
  367. package/dropdown-menu/src/dropdown-menu-item-radio.directive.ts +0 -72
  368. package/dropdown-menu/src/dropdown-menu-item-selectable.ts +0 -18
  369. package/dropdown-menu/src/dropdown-menu-item.directive.ts +0 -66
  370. package/dropdown-menu/src/dropdown-menu-label.directive.ts +0 -7
  371. package/dropdown-menu/src/dropdown-menu-separator.directive.ts +0 -13
  372. package/dropdown-menu/src/dropdown-menu-trigger.directive.ts +0 -185
  373. package/dropdown-menu/stories/dropdown-menu-item-checkbox.component.ts +0 -104
  374. package/dropdown-menu/stories/dropdown-menu-item-checkbox.styles.scss +0 -106
  375. package/dropdown-menu/stories/dropdown-menu-item-radio.component.ts +0 -95
  376. package/dropdown-menu/stories/dropdown-menu-item-radio.styles.scss +0 -106
  377. package/dropdown-menu/stories/dropdown.docs.mdx +0 -27
  378. package/dropdown-menu/stories/dropdown.stories.ts +0 -212
  379. package/form-field/index.ts +0 -1
  380. package/form-field/src/.gitkeep +0 -0
  381. package/jest.config.ts +0 -21
  382. package/label/__tests__/label-root.directive.spec.ts +0 -99
  383. package/label/ng-package.json +0 -5
  384. package/label/src/label.directive.ts +0 -58
  385. package/label/stories/label.docs.mdx +0 -40
  386. package/label/stories/label.stories.ts +0 -76
  387. package/menu/index.ts +0 -29
  388. package/menu/ng-package.json +0 -5
  389. package/menu/src/menu-content.directive.ts +0 -9
  390. package/menu/src/menu-directive.ts +0 -10
  391. package/menu/src/menu-group.directive.ts +0 -12
  392. package/menu/src/menu-item.directive.ts +0 -44
  393. package/menu/src/menu-label.directive.ts +0 -7
  394. package/menu/src/menu-separator.directive.ts +0 -13
  395. package/menubar/index.ts +0 -38
  396. package/menubar/ng-package.json +0 -5
  397. package/menubar/src/menubar-content.directive.ts +0 -9
  398. package/menubar/src/menubar-item-checkbox.directive.ts +0 -32
  399. package/menubar/src/menubar-item-indicator.directive.ts +0 -10
  400. package/menubar/src/menubar-item-radio.directive.ts +0 -33
  401. package/menubar/src/menubar-item.directive.ts +0 -12
  402. package/menubar/src/menubar-radio-group.directive.ts +0 -9
  403. package/menubar/src/menubar-root.directive.ts +0 -15
  404. package/menubar/src/menubar-separator.directive.ts +0 -9
  405. package/menubar/src/menubar-trigger.directive.ts +0 -40
  406. package/menubar/stories/menubar.stories.ts +0 -229
  407. package/ng-package.json +0 -8
  408. package/portal/stories/portal.docs.mdx +0 -85
  409. package/presence/__test__/presence-test.component.ts +0 -51
  410. package/presence/__test__/presence.spec.ts +0 -50
  411. package/presence/index.ts +0 -4
  412. package/presence/src/presence.ts +0 -119
  413. package/presence/src/transitions/transition.collapse.ts +0 -99
  414. package/presence/src/transitions/transition.toast.ts +0 -27
  415. package/presence/src/types.ts +0 -20
  416. package/presence/src/utils.ts +0 -63
  417. package/presence/stories/presence-story.componen.ts +0 -69
  418. package/presence/stories/presence.docs.mdx +0 -40
  419. package/presence/stories/presence.stories.ts +0 -29
  420. package/progress/__test__/progress.spec.ts +0 -55
  421. package/progress/ng-package.json +0 -5
  422. package/progress/src/progress-indicator.directive.ts +0 -26
  423. package/progress/src/progress-root.directive.ts +0 -134
  424. package/progress/stories/progress.docs.mdx +0 -65
  425. package/progress/stories/progress.stories.ts +0 -66
  426. package/project.json +0 -39
  427. package/radio/ng-package.json +0 -5
  428. package/radio/src/radio-indicator.directive.ts +0 -17
  429. package/radio/src/radio-item.directive.ts +0 -68
  430. package/radio/src/radio-root.directive.ts +0 -207
  431. package/radio/stories/radio-group.component.ts +0 -39
  432. package/radio/stories/radio-group.styles.scss +0 -70
  433. package/radio/stories/radio.docs.mdx +0 -68
  434. package/radio/stories/radio.stories.ts +0 -155
  435. package/separator/__tests__/separator.directive.spec.ts +0 -58
  436. package/separator/ng-package.json +0 -5
  437. package/separator/src/separator.directive.ts +0 -35
  438. package/separator/stories/separator.docs.mdx +0 -37
  439. package/separator/stories/separator.stories.ts +0 -82
  440. package/slider/src/slider-input.directive.ts +0 -0
  441. package/slider/src/slider-thumb.directives.ts +0 -60
  442. package/slider/src/slider-track.directive.ts +0 -11
  443. package/slider/src/slider.directive.ts +0 -59
  444. package/slider/src/slider.types.ts +0 -4
  445. package/switch/index.ts +0 -22
  446. package/switch/ng-package.json +0 -5
  447. package/switch/src/switch-input.directive.ts +0 -24
  448. package/switch/src/switch-root.directive.ts +0 -127
  449. package/switch/src/switch-thumb.directive.ts +0 -15
  450. package/switch/stories/switch.docs.mdx +0 -83
  451. package/switch/stories/switch.stories.ts +0 -149
  452. package/tabs/__tests__/tabs-context.service.spec.ts +0 -35
  453. package/tabs/index.ts +0 -26
  454. package/tabs/ng-package.json +0 -5
  455. package/tabs/src/tabs-content.directive.ts +0 -23
  456. package/tabs/src/tabs-context.service.ts +0 -43
  457. package/tabs/src/tabs-list.directive.ts +0 -21
  458. package/tabs/src/tabs-root.directive.ts +0 -70
  459. package/tabs/src/tabs-trigger.directive.ts +0 -55
  460. package/tabs/stories/tabs.stories.ts +0 -213
  461. package/test-setup.ts +0 -1
  462. package/toggle/__tests__/toggle.directive.spec.ts +0 -87
  463. package/toggle/ng-package.json +0 -5
  464. package/toggle/src/toggle.directive.ts +0 -49
  465. package/toggle/stories/toggle.docs.mdx +0 -60
  466. package/toggle/stories/toggle.stories.ts +0 -84
  467. package/toggle-group/ng-package.json +0 -5
  468. package/toggle-group/src/toggle-group-button.directive.ts +0 -73
  469. package/toggle-group/src/toggle-group-button.token.ts +0 -8
  470. package/toggle-group/src/toggle-group-multi.directive.ts +0 -158
  471. package/toggle-group/src/toggle-group.directive.ts +0 -148
  472. package/toggle-group/src/toggle-group.token.ts +0 -11
  473. package/toggle-group/stories/toggle-group.docs.mdx +0 -87
  474. package/toggle-group/stories/toggle-group.stories.ts +0 -95
  475. package/tsconfig.doc.json +0 -11
  476. package/tsconfig.json +0 -29
  477. package/tsconfig.lib.json +0 -19
  478. package/tsconfig.lib.prod.json +0 -12
  479. package/tsconfig.spec.json +0 -11
  480. package/visually-hidden/README.md +0 -3
  481. package/visually-hidden/stories/visually-hidden.docs.mdx +0 -36
  482. /package/accordion/{index.ts → index.d.ts} +0 -0
  483. /package/avatar/{index.ts → index.d.ts} +0 -0
  484. /package/checkbox/{index.ts → index.d.ts} +0 -0
  485. /package/collapsible/{index.ts → index.d.ts} +0 -0
  486. /package/context-menu/{index.ts → index.d.ts} +0 -0
  487. /package/dropdown-menu/{index.ts → index.d.ts} +0 -0
  488. /package/{index.ts → index.d.ts} +0 -0
  489. /package/label/{index.ts → index.d.ts} +0 -0
  490. /package/separator/{index.ts → index.d.ts} +0 -0
  491. /package/toggle/{index.ts → index.d.ts} +0 -0
  492. /package/toggle-group/{index.ts → index.d.ts} +0 -0
@@ -0,0 +1,241 @@
1
+ import * as i0 from '@angular/core';
2
+ import { InjectionToken, inject, input, computed, Directive, EventEmitter, booleanAttribute, Input, Output } from '@angular/core';
3
+ import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
+
5
+ const RdxCheckboxToken = new InjectionToken('RdxCheckboxToken');
6
+ function injectCheckbox() {
7
+ return inject(RdxCheckboxToken);
8
+ }
9
+
10
+ class RdxCheckboxButtonDirective {
11
+ constructor() {
12
+ this.checkbox = injectCheckbox();
13
+ this.id = input(null);
14
+ this.elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxButtonDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
17
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.1", type: RdxCheckboxButtonDirective, isStandalone: true, selector: "button[CheckboxButton]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "type": "button", "role": "checkbox", "tabindex": "-1" }, properties: { "checked": "checkbox.checked", "disabled": "checkbox.disabled", "required": "checkbox.required", "attr.id": "elementId()", "attr.aria-checked": "checkbox.indeterminate ? \"mixed\" : checkbox.checked", "attr.aria-required": "checkbox.required ? \"\" : null", "attr.data-state": "checkbox.state", "attr.data-disabled": "checkbox.disabled ? \"\" : null" } }, ngImport: i0 }); }
18
+ }
19
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxButtonDirective, decorators: [{
20
+ type: Directive,
21
+ args: [{
22
+ standalone: true,
23
+ selector: 'button[CheckboxButton]',
24
+ host: {
25
+ type: 'button',
26
+ role: 'checkbox',
27
+ tabindex: '-1',
28
+ '[checked]': 'checkbox.checked',
29
+ '[disabled]': 'checkbox.disabled',
30
+ '[required]': 'checkbox.required',
31
+ '[attr.id]': 'elementId()',
32
+ '[attr.aria-checked]': 'checkbox.indeterminate ? "mixed" : checkbox.checked',
33
+ '[attr.aria-required]': 'checkbox.required ? "" : null',
34
+ '[attr.data-state]': 'checkbox.state',
35
+ '[attr.data-disabled]': 'checkbox.disabled ? "" : null'
36
+ }
37
+ }]
38
+ }] });
39
+
40
+ class RdxCheckboxIndicatorDirective {
41
+ constructor() {
42
+ this.checkbox = injectCheckbox();
43
+ }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxIndicatorDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
45
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxCheckboxIndicatorDirective, isStandalone: true, selector: "[CheckboxIndicator]", host: { properties: { "style.pointer-events": "\"none\"", "attr.aria-checked": "checkbox.indeterminate ? \"mixed\" : checkbox.checked", "attr.data-state": "checkbox.state", "attr.data-disabled": "checkbox.disabled ? \"\" : null" } }, ngImport: i0 }); }
46
+ }
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxIndicatorDirective, decorators: [{
48
+ type: Directive,
49
+ args: [{
50
+ selector: '[CheckboxIndicator]',
51
+ standalone: true,
52
+ host: {
53
+ '[style.pointer-events]': '"none"',
54
+ '[attr.aria-checked]': 'checkbox.indeterminate ? "mixed" : checkbox.checked',
55
+ '[attr.data-state]': 'checkbox.state',
56
+ '[attr.data-disabled]': 'checkbox.disabled ? "" : null'
57
+ }
58
+ }]
59
+ }] });
60
+
61
+ class RdxCheckboxInputDirective {
62
+ constructor() {
63
+ this.checkbox = injectCheckbox();
64
+ this.id = input();
65
+ this.elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));
66
+ this.value = computed(() => {
67
+ const state = this.checkbox.state;
68
+ if (state === 'indeterminate') {
69
+ return '';
70
+ }
71
+ return state ? 'on' : 'off';
72
+ });
73
+ }
74
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxInputDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
75
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "18.2.1", type: RdxCheckboxInputDirective, isStandalone: true, selector: "input[CheckboxInput]", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null } }, host: { attributes: { "type": "checkbox", "tabindex": "-1" }, properties: { "checked": "checkbox.checked", "disabled": "checkbox.disabled", "required": "checkbox.required", "attr.id": "elementId()", "attr.aria-hidden": "true", "attr.aria-checked": "checkbox.indeterminate ? \"mixed\" : checkbox.checked", "attr.aria-required": "checkbox.required ? \"\" : null", "attr.data-state": "checkbox.state", "attr.data-disabled": "checkbox.disabled ? \"\" : null", "attr.value": "value()" } }, ngImport: i0 }); }
76
+ }
77
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxInputDirective, decorators: [{
78
+ type: Directive,
79
+ args: [{
80
+ standalone: true,
81
+ selector: 'input[CheckboxInput]',
82
+ host: {
83
+ type: 'checkbox',
84
+ tabindex: '-1',
85
+ '[checked]': 'checkbox.checked',
86
+ '[disabled]': 'checkbox.disabled',
87
+ '[required]': 'checkbox.required',
88
+ '[attr.id]': 'elementId()',
89
+ '[attr.aria-hidden]': 'true',
90
+ '[attr.aria-checked]': 'checkbox.indeterminate ? "mixed" : checkbox.checked',
91
+ '[attr.aria-required]': 'checkbox.required ? "" : null',
92
+ '[attr.data-state]': 'checkbox.state',
93
+ '[attr.data-disabled]': 'checkbox.disabled ? "" : null',
94
+ '[attr.value]': 'value()'
95
+ }
96
+ }]
97
+ }] });
98
+
99
+ class RdxCheckboxDirective {
100
+ constructor() {
101
+ /**
102
+ * The controlled checked state of the checkbox. Must be used in conjunction with onCheckedChange.
103
+ */
104
+ this.checked = false;
105
+ /**
106
+ * Defines whether the checkbox is indeterminate.
107
+ */
108
+ this.indeterminate = false;
109
+ /**
110
+ * Defines whether the checkbox is disabled.
111
+ */
112
+ this.disabled = false;
113
+ this.required = false;
114
+ /**
115
+ * Event emitted when the checkbox checked state changes.
116
+ */
117
+ this.checkedChange = new EventEmitter();
118
+ /**
119
+ * Event emitted when the indeterminate state changes.
120
+ */
121
+ this.indeterminateChange = new EventEmitter();
122
+ }
123
+ /**
124
+ * Determine the state
125
+ */
126
+ get state() {
127
+ if (this.indeterminate) {
128
+ return 'indeterminate';
129
+ }
130
+ return this.checked ? 'checked' : 'unchecked';
131
+ }
132
+ onKeyDown(event) {
133
+ // According to WAI ARIA, Checkboxes don't activate on enter keypress
134
+ if (event.key === 'Enter') {
135
+ event.preventDefault();
136
+ }
137
+ }
138
+ onClick($event) {
139
+ if (this.disabled) {
140
+ return;
141
+ }
142
+ this.checked = this.indeterminate ? true : !this.checked;
143
+ this.checkedChange.emit(this.checked);
144
+ this.onChange?.(this.checked);
145
+ if (this.indeterminate) {
146
+ this.indeterminate = false;
147
+ this.indeterminateChange.emit(this.indeterminate);
148
+ }
149
+ $event.preventDefault();
150
+ }
151
+ onBlur() {
152
+ this.onTouched?.();
153
+ }
154
+ ngOnChanges(changes) {
155
+ if (changes['checked'] && !changes['checked'].isFirstChange()) {
156
+ this.checkedChange.emit(this.checked);
157
+ }
158
+ if (changes['indeterminate'] && !changes['indeterminate'].isFirstChange()) {
159
+ this.indeterminateChange.emit(this.indeterminate);
160
+ }
161
+ }
162
+ /**
163
+ * Sets the checked state of the checkbox.
164
+ * @param checked The checked state of the checkbox.
165
+ * @internal
166
+ */
167
+ writeValue(checked) {
168
+ this.checked = checked;
169
+ }
170
+ /**
171
+ * Registers a callback function that should be called when the checkbox checked state changes.
172
+ * @param fn The callback function.
173
+ * @internal
174
+ */
175
+ registerOnChange(fn) {
176
+ this.onChange = fn;
177
+ }
178
+ /**
179
+ * Registers a callback function that should be called when the checkbox is blurred.
180
+ * @param fn The callback function.
181
+ * @internal
182
+ */
183
+ registerOnTouched(fn) {
184
+ this.onTouched = fn;
185
+ }
186
+ /**
187
+ * Sets the disabled state of the checkbox.
188
+ * @param isDisabled The disabled state of the checkbox.
189
+ * @internal
190
+ */
191
+ setDisabledState(isDisabled) {
192
+ this.disabled = isDisabled;
193
+ }
194
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
195
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "16.1.0", version: "18.2.1", type: RdxCheckboxDirective, isStandalone: true, selector: "[CheckboxRoot]", inputs: { checked: ["checked", "checked", booleanAttribute], indeterminate: ["indeterminate", "indeterminate", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute], required: ["required", "required", booleanAttribute] }, outputs: { checkedChange: "checkedChange", indeterminateChange: "indeterminateChange" }, host: { listeners: { "keydown": "onKeyDown($event)", "click": "onClick($event)", "blur": "onBlur()" }, properties: { "disabled": "disabled", "attr.data-disabled": "disabled ? \"\" : null", "attr.data-state": "state" } }, providers: [
196
+ { provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },
197
+ { provide: NG_VALUE_ACCESSOR, useExisting: RdxCheckboxDirective, multi: true }
198
+ ], usesOnChanges: true, ngImport: i0 }); }
199
+ }
200
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCheckboxDirective, decorators: [{
201
+ type: Directive,
202
+ args: [{
203
+ selector: '[CheckboxRoot]',
204
+ standalone: true,
205
+ providers: [
206
+ { provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },
207
+ { provide: NG_VALUE_ACCESSOR, useExisting: RdxCheckboxDirective, multi: true }
208
+ ],
209
+ host: {
210
+ '[disabled]': 'disabled',
211
+ '[attr.data-disabled]': 'disabled ? "" : null',
212
+ '[attr.data-state]': 'state',
213
+ '(keydown)': 'onKeyDown($event)',
214
+ '(click)': 'onClick($event)',
215
+ '(blur)': 'onBlur()'
216
+ }
217
+ }]
218
+ }], propDecorators: { checked: [{
219
+ type: Input,
220
+ args: [{ transform: booleanAttribute }]
221
+ }], indeterminate: [{
222
+ type: Input,
223
+ args: [{ transform: booleanAttribute }]
224
+ }], disabled: [{
225
+ type: Input,
226
+ args: [{ transform: booleanAttribute }]
227
+ }], required: [{
228
+ type: Input,
229
+ args: [{ transform: booleanAttribute }]
230
+ }], checkedChange: [{
231
+ type: Output
232
+ }], indeterminateChange: [{
233
+ type: Output
234
+ }] } });
235
+
236
+ /**
237
+ * Generated bundle index. Do not edit.
238
+ */
239
+
240
+ export { RdxCheckboxButtonDirective, RdxCheckboxDirective, RdxCheckboxIndicatorDirective, RdxCheckboxInputDirective, RdxCheckboxToken, injectCheckbox };
241
+ //# sourceMappingURL=radix-ng-primitives-checkbox.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radix-ng-primitives-checkbox.mjs","sources":["../../../packages/primitives/checkbox/src/checkbox.token.ts","../../../packages/primitives/checkbox/src/checkbox-button.directive.ts","../../../packages/primitives/checkbox/src/checkbox-indicator.directive.ts","../../../packages/primitives/checkbox/src/checkbox-input.directive.ts","../../../packages/primitives/checkbox/src/checkbox.directive.ts","../../../packages/primitives/checkbox/radix-ng-primitives-checkbox.ts"],"sourcesContent":["import { inject, InjectionToken } from '@angular/core';\nimport type { RdxCheckboxDirective } from './checkbox.directive';\n\nexport const RdxCheckboxToken = new InjectionToken<RdxCheckboxDirective>('RdxCheckboxToken');\n\nexport function injectCheckbox(): RdxCheckboxDirective {\n return inject(RdxCheckboxToken);\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n standalone: true,\n selector: 'button[CheckboxButton]',\n host: {\n type: 'button',\n role: 'checkbox',\n tabindex: '-1',\n '[checked]': 'checkbox.checked',\n '[disabled]': 'checkbox.disabled',\n '[required]': 'checkbox.required',\n '[attr.id]': 'elementId()',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.aria-required]': 'checkbox.required ? \"\" : null',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null'\n }\n})\nexport class RdxCheckboxButtonDirective {\n protected readonly checkbox = injectCheckbox();\n\n readonly id = input<string | null>(null);\n protected readonly elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));\n}\n","import { Directive } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n selector: '[CheckboxIndicator]',\n standalone: true,\n host: {\n '[style.pointer-events]': '\"none\"',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null'\n }\n})\nexport class RdxCheckboxIndicatorDirective {\n protected readonly checkbox = injectCheckbox();\n}\n","import { computed, Directive, input } from '@angular/core';\nimport { injectCheckbox } from './checkbox.token';\n\n@Directive({\n standalone: true,\n selector: 'input[CheckboxInput]',\n host: {\n type: 'checkbox',\n tabindex: '-1',\n '[checked]': 'checkbox.checked',\n '[disabled]': 'checkbox.disabled',\n '[required]': 'checkbox.required',\n '[attr.id]': 'elementId()',\n '[attr.aria-hidden]': 'true',\n '[attr.aria-checked]': 'checkbox.indeterminate ? \"mixed\" : checkbox.checked',\n '[attr.aria-required]': 'checkbox.required ? \"\" : null',\n '[attr.data-state]': 'checkbox.state',\n '[attr.data-disabled]': 'checkbox.disabled ? \"\" : null',\n '[attr.value]': 'value()'\n }\n})\nexport class RdxCheckboxInputDirective {\n protected readonly checkbox = injectCheckbox();\n\n readonly id = input<string>();\n protected readonly elementId = computed(() => (this.id() ? this.id() : `rdx-checkbox-${this.id()}`));\n\n protected readonly value = computed(() => {\n const state = this.checkbox.state;\n if (state === 'indeterminate') {\n return '';\n }\n\n return state ? 'on' : 'off';\n });\n}\n","import { booleanAttribute, Directive, EventEmitter, Input, OnChanges, Output, SimpleChanges } from '@angular/core';\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { RdxCheckboxToken } from './checkbox.token';\n\nexport type CheckboxState = 'unchecked' | 'checked' | 'indeterminate';\n\n@Directive({\n selector: '[CheckboxRoot]',\n standalone: true,\n providers: [\n { provide: RdxCheckboxToken, useExisting: RdxCheckboxDirective },\n { provide: NG_VALUE_ACCESSOR, useExisting: RdxCheckboxDirective, multi: true }\n ],\n host: {\n '[disabled]': 'disabled',\n '[attr.data-disabled]': 'disabled ? \"\" : null',\n '[attr.data-state]': 'state',\n\n '(keydown)': 'onKeyDown($event)',\n '(click)': 'onClick($event)',\n '(blur)': 'onBlur()'\n }\n})\nexport class RdxCheckboxDirective implements ControlValueAccessor, OnChanges {\n /**\n * The controlled checked state of the checkbox. Must be used in conjunction with onCheckedChange.\n */\n @Input({ transform: booleanAttribute }) checked = false;\n\n /**\n * Defines whether the checkbox is indeterminate.\n */\n @Input({ transform: booleanAttribute }) indeterminate = false;\n\n /**\n * Defines whether the checkbox is disabled.\n */\n @Input({ transform: booleanAttribute }) disabled = false;\n\n @Input({ transform: booleanAttribute }) required = false;\n\n /**\n * Event emitted when the checkbox checked state changes.\n */\n @Output() readonly checkedChange = new EventEmitter<boolean>();\n\n /**\n * Event emitted when the indeterminate state changes.\n */\n @Output() readonly indeterminateChange = new EventEmitter<boolean>();\n\n /**\n * Determine the state\n */\n get state(): CheckboxState {\n if (this.indeterminate) {\n return 'indeterminate';\n }\n return this.checked ? 'checked' : 'unchecked';\n }\n\n /**\n * Store the callback function that should be called when the checkbox checked state changes.\n * @internal\n */\n private onChange?: (checked: boolean) => void;\n\n /**\n * Store the callback function that should be called when the checkbox is blurred.\n * @internal\n */\n private onTouched?: () => void;\n\n protected onKeyDown(event: KeyboardEvent): void {\n // According to WAI ARIA, Checkboxes don't activate on enter keypress\n if (event.key === 'Enter') {\n event.preventDefault();\n }\n }\n\n protected onClick($event: MouseEvent): void {\n if (this.disabled) {\n return;\n }\n\n this.checked = this.indeterminate ? true : !this.checked;\n this.checkedChange.emit(this.checked);\n this.onChange?.(this.checked);\n\n if (this.indeterminate) {\n this.indeterminate = false;\n this.indeterminateChange.emit(this.indeterminate);\n }\n\n $event.preventDefault();\n }\n\n protected onBlur(): void {\n this.onTouched?.();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes['checked'] && !changes['checked'].isFirstChange()) {\n this.checkedChange.emit(this.checked);\n }\n if (changes['indeterminate'] && !changes['indeterminate'].isFirstChange()) {\n this.indeterminateChange.emit(this.indeterminate);\n }\n }\n\n /**\n * Sets the checked state of the checkbox.\n * @param checked The checked state of the checkbox.\n * @internal\n */\n writeValue(checked: boolean): void {\n this.checked = checked;\n }\n\n /**\n * Registers a callback function that should be called when the checkbox checked state changes.\n * @param fn The callback function.\n * @internal\n */\n registerOnChange(fn: (checked: boolean) => void): void {\n this.onChange = fn;\n }\n\n /**\n * Registers a callback function that should be called when the checkbox is blurred.\n * @param fn The callback function.\n * @internal\n */\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n /**\n * Sets the disabled state of the checkbox.\n * @param isDisabled The disabled state of the checkbox.\n * @internal\n */\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,213 @@
1
+ import * as i0 from '@angular/core';
2
+ import { InjectionToken, inject, contentChild, EventEmitter, Directive, Input, Output, ElementRef } from '@angular/core';
3
+ import { asyncScheduler } from 'rxjs';
4
+
5
+ const RdxCollapsibleContentToken = new InjectionToken('RdxCollapsibleContentToken');
6
+
7
+ const RdxCollapsibleRootToken = new InjectionToken('RdxCollapsibleRootToken');
8
+ function injectCollapsible() {
9
+ return inject(RdxCollapsibleRootDirective);
10
+ }
11
+ class RdxCollapsibleRootDirective {
12
+ constructor() {
13
+ /**
14
+ * Reference to RdxCollapsibleContent directive
15
+ * @private
16
+ * @ignore
17
+ */
18
+ this.contentDirective = contentChild.required(RdxCollapsibleContentToken);
19
+ /**
20
+ * Stores collapsible state
21
+ * @private
22
+ * @ignore
23
+ */
24
+ this._open = false;
25
+ /**
26
+ * Determines whether a directive is available for interaction.
27
+ * When true, prevents the user from interacting with the collapsible.
28
+ */
29
+ this.disabled = false;
30
+ /**
31
+ * Emitted with new value when directive state changed.
32
+ * Event handler called when the open state of the collapsible changes.
33
+ */
34
+ this.onOpenChange = new EventEmitter();
35
+ }
36
+ /**
37
+ * The controlled open state of the collapsible.
38
+ * Sets the state of the directive. `true` - expanded, `false` - collapsed
39
+ * @param {boolean} value
40
+ */
41
+ set open(value) {
42
+ if (value !== this._open) {
43
+ this.onOpenChange.emit(value);
44
+ }
45
+ this._open = value;
46
+ this.setPresence();
47
+ }
48
+ /**
49
+ * Allows to change directive state
50
+ * @param {boolean | undefined} value
51
+ */
52
+ setOpen(value) {
53
+ if (this.disabled) {
54
+ return;
55
+ }
56
+ if (value === undefined) {
57
+ this.open = !this._open;
58
+ }
59
+ else {
60
+ this.open = value;
61
+ }
62
+ this.setPresence();
63
+ }
64
+ /**
65
+ * Returns directive state (open | closed)
66
+ */
67
+ getState() {
68
+ return this._open ? 'open' : 'closed';
69
+ }
70
+ /**
71
+ * Returns current directive state
72
+ */
73
+ isOpen() {
74
+ return this._open;
75
+ }
76
+ /**
77
+ * Controls visibility of content
78
+ * @private
79
+ * @ignore
80
+ */
81
+ setPresence() {
82
+ if (!this.contentDirective) {
83
+ return;
84
+ }
85
+ this.contentDirective().elementRef.nativeElement.setAttribute('data-state', this.getState());
86
+ if (this.isOpen()) {
87
+ this.contentDirective().elementRef.nativeElement.removeAttribute('hidden');
88
+ }
89
+ else {
90
+ asyncScheduler.schedule(() => {
91
+ const animations = this.contentDirective().elementRef.nativeElement.getAnimations();
92
+ if (animations === undefined || animations.length === 0) {
93
+ this.contentDirective().elementRef.nativeElement.setAttribute('hidden', '');
94
+ }
95
+ });
96
+ }
97
+ }
98
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCollapsibleRootDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
99
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.2.0", version: "18.2.1", type: RdxCollapsibleRootDirective, isStandalone: true, selector: "[rdxCollapsibleRoot]", inputs: { disabled: "disabled", open: "open" }, outputs: { onOpenChange: "onOpenChange" }, host: { properties: { "attr.data-state": "getState()", "attr.data-disabled": "disabled ? \"\" : undefined" } }, providers: [{ provide: RdxCollapsibleRootToken, useExisting: RdxCollapsibleRootDirective }], queries: [{ propertyName: "contentDirective", first: true, predicate: RdxCollapsibleContentToken, descendants: true, isSignal: true }], exportAs: ["collapsibleRoot"], ngImport: i0 }); }
100
+ }
101
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCollapsibleRootDirective, decorators: [{
102
+ type: Directive,
103
+ args: [{
104
+ selector: '[rdxCollapsibleRoot]',
105
+ standalone: true,
106
+ exportAs: 'collapsibleRoot',
107
+ providers: [{ provide: RdxCollapsibleRootToken, useExisting: RdxCollapsibleRootDirective }],
108
+ host: {
109
+ '[attr.data-state]': 'getState()',
110
+ '[attr.data-disabled]': 'disabled ? "" : undefined'
111
+ }
112
+ }]
113
+ }], propDecorators: { disabled: [{
114
+ type: Input
115
+ }], open: [{
116
+ type: Input
117
+ }], onOpenChange: [{
118
+ type: Output
119
+ }] } });
120
+
121
+ class RdxCollapsibleContentDirective {
122
+ constructor() {
123
+ /**
124
+ * @ignore
125
+ */
126
+ this.collapsible = inject(RdxCollapsibleRootDirective);
127
+ /**
128
+ * Reference to CollapsibleContent host element
129
+ * @ignore
130
+ */
131
+ this.elementRef = inject(ElementRef);
132
+ }
133
+ getDisabled() {
134
+ return this.collapsible.disabled ? 'disabled' : undefined;
135
+ }
136
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCollapsibleContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
137
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxCollapsibleContentDirective, isStandalone: true, selector: "[rdxCollapsibleContent]", host: { properties: { "attr.data-state": "collapsible.getState()", "attr.data-disabled": "getDisabled()" } }, providers: [
138
+ {
139
+ provide: RdxCollapsibleContentToken,
140
+ useExisting: RdxCollapsibleContentDirective
141
+ }
142
+ ], ngImport: i0 }); }
143
+ }
144
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCollapsibleContentDirective, decorators: [{
145
+ type: Directive,
146
+ args: [{
147
+ selector: '[rdxCollapsibleContent]',
148
+ standalone: true,
149
+ providers: [
150
+ {
151
+ provide: RdxCollapsibleContentToken,
152
+ useExisting: RdxCollapsibleContentDirective
153
+ }
154
+ ],
155
+ host: {
156
+ '[attr.data-state]': 'collapsible.getState()',
157
+ '[attr.data-disabled]': 'getDisabled()'
158
+ }
159
+ }]
160
+ }] });
161
+
162
+ class RdxCollapsibleTriggerDirective {
163
+ constructor() {
164
+ /**
165
+ * Reference to CollapsibleRoot
166
+ * @private
167
+ * @ignore
168
+ */
169
+ this.collapsible = injectCollapsible();
170
+ }
171
+ /**
172
+ * Called on trigger clicked
173
+ */
174
+ onOpenToggle() {
175
+ this.collapsible.setOpen();
176
+ }
177
+ /**
178
+ * Returns current directive state (open | closed)
179
+ * @ignore
180
+ */
181
+ getState() {
182
+ return this.collapsible.getState();
183
+ }
184
+ /**
185
+ * Returns current trigger state
186
+ * @ignore
187
+ */
188
+ getDisabled() {
189
+ return this.collapsible.disabled ? 'disabled' : undefined;
190
+ }
191
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCollapsibleTriggerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
192
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.1", type: RdxCollapsibleTriggerDirective, isStandalone: true, selector: "[rdxCollapsibleTrigger]", host: { listeners: { "click": "onOpenToggle()" }, properties: { "attr.data-state": "getState()", "attr.aria-expanded": "getState() === \"open\" ? \"true\" : \"false\"", "disabled": "getDisabled()" } }, ngImport: i0 }); }
193
+ }
194
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.1", ngImport: i0, type: RdxCollapsibleTriggerDirective, decorators: [{
195
+ type: Directive,
196
+ args: [{
197
+ selector: '[rdxCollapsibleTrigger]',
198
+ standalone: true,
199
+ host: {
200
+ '(click)': 'onOpenToggle()',
201
+ '[attr.data-state]': 'getState()',
202
+ '[attr.aria-expanded]': 'getState() === "open" ? "true" : "false"',
203
+ '[disabled]': 'getDisabled()'
204
+ }
205
+ }]
206
+ }] });
207
+
208
+ /**
209
+ * Generated bundle index. Do not edit.
210
+ */
211
+
212
+ export { RdxCollapsibleContentDirective, RdxCollapsibleRootDirective, RdxCollapsibleTriggerDirective, injectCollapsible };
213
+ //# sourceMappingURL=radix-ng-primitives-collapsible.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"radix-ng-primitives-collapsible.mjs","sources":["../../../packages/primitives/collapsible/src/collapsible-content.token.ts","../../../packages/primitives/collapsible/src/collapsible-root.directive.ts","../../../packages/primitives/collapsible/src/collapsible-content.directive.ts","../../../packages/primitives/collapsible/src/collapsible-trigger.directive.ts","../../../packages/primitives/collapsible/radix-ng-primitives-collapsible.ts"],"sourcesContent":["import { InjectionToken } from '@angular/core';\nimport { RdxCollapsibleContentDirective } from './collapsible-content.directive';\n\nexport const RdxCollapsibleContentToken = new InjectionToken<RdxCollapsibleContentDirective>(\n 'RdxCollapsibleContentToken'\n);\n","import { contentChild, Directive, EventEmitter, inject, InjectionToken, Input, Output } from '@angular/core';\nimport { asyncScheduler } from 'rxjs';\nimport { RdxCollapsibleContentToken } from './collapsible-content.token';\n\nconst RdxCollapsibleRootToken = new InjectionToken<RdxCollapsibleRootDirective>('RdxCollapsibleRootToken');\n\nexport function injectCollapsible(): RdxCollapsibleRootDirective {\n return inject(RdxCollapsibleRootDirective);\n}\n\nexport type RdxCollapsibleState = 'open' | 'closed';\n\n@Directive({\n selector: '[rdxCollapsibleRoot]',\n standalone: true,\n exportAs: 'collapsibleRoot',\n providers: [{ provide: RdxCollapsibleRootToken, useExisting: RdxCollapsibleRootDirective }],\n host: {\n '[attr.data-state]': 'getState()',\n '[attr.data-disabled]': 'disabled ? \"\" : undefined'\n }\n})\nexport class RdxCollapsibleRootDirective {\n /**\n * Reference to RdxCollapsibleContent directive\n * @private\n * @ignore\n */\n private readonly contentDirective = contentChild.required(RdxCollapsibleContentToken);\n\n /**\n * Stores collapsible state\n * @private\n * @ignore\n */\n private _open = false;\n\n /**\n * Determines whether a directive is available for interaction.\n * When true, prevents the user from interacting with the collapsible.\n */\n @Input() disabled = false;\n\n /**\n * The controlled open state of the collapsible.\n * Sets the state of the directive. `true` - expanded, `false` - collapsed\n * @param {boolean} value\n */\n @Input() set open(value: boolean) {\n if (value !== this._open) {\n this.onOpenChange.emit(value);\n }\n\n this._open = value;\n this.setPresence();\n }\n\n /**\n * Emitted with new value when directive state changed.\n * Event handler called when the open state of the collapsible changes.\n */\n @Output() onOpenChange = new EventEmitter<boolean>();\n\n /**\n * Allows to change directive state\n * @param {boolean | undefined} value\n */\n setOpen(value?: boolean) {\n if (this.disabled) {\n return;\n }\n\n if (value === undefined) {\n this.open = !this._open;\n } else {\n this.open = value;\n }\n\n this.setPresence();\n }\n\n /**\n * Returns directive state (open | closed)\n */\n getState(): RdxCollapsibleState {\n return this._open ? 'open' : 'closed';\n }\n\n /**\n * Returns current directive state\n */\n isOpen(): boolean {\n return this._open;\n }\n\n /**\n * Controls visibility of content\n * @private\n * @ignore\n */\n private setPresence(): void {\n if (!this.contentDirective) {\n return;\n }\n\n this.contentDirective().elementRef.nativeElement.setAttribute('data-state', this.getState());\n\n if (this.isOpen()) {\n this.contentDirective().elementRef.nativeElement.removeAttribute('hidden');\n } else {\n asyncScheduler.schedule(() => {\n const animations = this.contentDirective().elementRef.nativeElement.getAnimations();\n\n if (animations === undefined || animations.length === 0) {\n this.contentDirective().elementRef.nativeElement.setAttribute('hidden', '');\n }\n });\n }\n }\n}\n","import { Directive, ElementRef, inject } from '@angular/core';\nimport { RdxCollapsibleContentToken } from './collapsible-content.token';\nimport { RdxCollapsibleRootDirective } from './collapsible-root.directive';\n\n@Directive({\n selector: '[rdxCollapsibleContent]',\n standalone: true,\n providers: [\n {\n provide: RdxCollapsibleContentToken,\n useExisting: RdxCollapsibleContentDirective\n }\n ],\n host: {\n '[attr.data-state]': 'collapsible.getState()',\n '[attr.data-disabled]': 'getDisabled()'\n }\n})\nexport class RdxCollapsibleContentDirective {\n /**\n * @ignore\n */\n protected readonly collapsible = inject(RdxCollapsibleRootDirective);\n\n /**\n * Reference to CollapsibleContent host element\n * @ignore\n */\n elementRef = inject<ElementRef<HTMLElement>>(ElementRef);\n\n getDisabled(): string | undefined {\n return this.collapsible.disabled ? 'disabled' : undefined;\n }\n}\n","import { Directive } from '@angular/core';\nimport { injectCollapsible, RdxCollapsibleState } from './collapsible-root.directive';\n\n@Directive({\n selector: '[rdxCollapsibleTrigger]',\n standalone: true,\n host: {\n '(click)': 'onOpenToggle()',\n '[attr.data-state]': 'getState()',\n '[attr.aria-expanded]': 'getState() === \"open\" ? \"true\" : \"false\"',\n '[disabled]': 'getDisabled()'\n }\n})\nexport class RdxCollapsibleTriggerDirective {\n /**\n * Reference to CollapsibleRoot\n * @private\n * @ignore\n */\n private readonly collapsible = injectCollapsible();\n\n /**\n * Called on trigger clicked\n */\n onOpenToggle(): void {\n this.collapsible.setOpen();\n }\n\n /**\n * Returns current directive state (open | closed)\n * @ignore\n */\n getState(): RdxCollapsibleState {\n return this.collapsible.getState();\n }\n\n /**\n * Returns current trigger state\n * @ignore\n */\n getDisabled(): string | undefined {\n return this.collapsible.disabled ? 'disabled' : undefined;\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}