@ojiepermana/angular 22.1.14 → 22.2.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 (252) hide show
  1. package/README.md +8 -6
  2. package/SUPPORT.md +3 -3
  3. package/chart/README.md +1 -1
  4. package/component/README.md +2 -2
  5. package/component/calendar/README.md +3 -15
  6. package/component/drawer/README.md +1 -2
  7. package/fesm2022/ojiepermana-angular-chart-area.mjs +352 -137
  8. package/fesm2022/ojiepermana-angular-chart-bar.mjs +744 -524
  9. package/fesm2022/ojiepermana-angular-chart-core.mjs +1140 -1344
  10. package/fesm2022/ojiepermana-angular-chart-line.mjs +393 -147
  11. package/fesm2022/ojiepermana-angular-chart-pie.mjs +408 -179
  12. package/fesm2022/ojiepermana-angular-chart-primitives.mjs +1262 -920
  13. package/fesm2022/ojiepermana-angular-chart-radar.mjs +473 -205
  14. package/fesm2022/ojiepermana-angular-chart-radial.mjs +425 -182
  15. package/fesm2022/ojiepermana-angular-chart-scatter.mjs +386 -210
  16. package/fesm2022/ojiepermana-angular-chart.mjs +3 -19
  17. package/fesm2022/ojiepermana-angular-component-accordion.mjs +485 -243
  18. package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +963 -325
  19. package/fesm2022/ojiepermana-angular-component-alert.mjs +266 -103
  20. package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +80 -35
  21. package/fesm2022/ojiepermana-angular-component-avatar.mjs +402 -135
  22. package/fesm2022/ojiepermana-angular-component-badge.mjs +109 -59
  23. package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +410 -142
  24. package/fesm2022/ojiepermana-angular-component-button-group.mjs +249 -96
  25. package/fesm2022/ojiepermana-angular-component-button.mjs +153 -75
  26. package/fesm2022/ojiepermana-angular-component-calendar.mjs +531 -418
  27. package/fesm2022/ojiepermana-angular-component-card.mjs +457 -171
  28. package/fesm2022/ojiepermana-angular-component-carousel.mjs +642 -272
  29. package/fesm2022/ojiepermana-angular-component-checkbox.mjs +312 -108
  30. package/fesm2022/ojiepermana-angular-component-collapsible.mjs +299 -115
  31. package/fesm2022/ojiepermana-angular-component-combobox.mjs +396 -183
  32. package/fesm2022/ojiepermana-angular-component-command.mjs +807 -347
  33. package/fesm2022/ojiepermana-angular-component-composer.mjs +807 -330
  34. package/fesm2022/ojiepermana-angular-component-context-menu.mjs +196 -161
  35. package/fesm2022/ojiepermana-angular-component-date-picker.mjs +650 -338
  36. package/fesm2022/ojiepermana-angular-component-dialog.mjs +710 -316
  37. package/fesm2022/ojiepermana-angular-component-drawer.mjs +2 -5
  38. package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +1212 -646
  39. package/fesm2022/ojiepermana-angular-component-editor.mjs +987 -502
  40. package/fesm2022/ojiepermana-angular-component-empty.mjs +350 -137
  41. package/fesm2022/ojiepermana-angular-component-form.mjs +813 -434
  42. package/fesm2022/ojiepermana-angular-component-hover-card.mjs +486 -277
  43. package/fesm2022/ojiepermana-angular-component-icon.mjs +241 -140
  44. package/fesm2022/ojiepermana-angular-component-input-group.mjs +449 -176
  45. package/fesm2022/ojiepermana-angular-component-input-otp.mjs +891 -488
  46. package/fesm2022/ojiepermana-angular-component-input.mjs +86 -55
  47. package/fesm2022/ojiepermana-angular-component-item.mjs +713 -261
  48. package/fesm2022/ojiepermana-angular-component-kanban.mjs +714 -216
  49. package/fesm2022/ojiepermana-angular-component-kbd.mjs +124 -52
  50. package/fesm2022/ojiepermana-angular-component-label.mjs +82 -31
  51. package/fesm2022/ojiepermana-angular-component-menubar.mjs +479 -329
  52. package/fesm2022/ojiepermana-angular-component-native-select.mjs +167 -65
  53. package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +683 -380
  54. package/fesm2022/ojiepermana-angular-component-pagination.mjs +277 -94
  55. package/fesm2022/ojiepermana-angular-component-pillbox.mjs +1283 -607
  56. package/fesm2022/ojiepermana-angular-component-popover.mjs +291 -204
  57. package/fesm2022/ojiepermana-angular-component-progress.mjs +176 -53
  58. package/fesm2022/ojiepermana-angular-component-radio.mjs +449 -142
  59. package/fesm2022/ojiepermana-angular-component-resizable.mjs +659 -453
  60. package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +117 -39
  61. package/fesm2022/ojiepermana-angular-component-segmented-control.mjs +351 -172
  62. package/fesm2022/ojiepermana-angular-component-select.mjs +475 -345
  63. package/fesm2022/ojiepermana-angular-component-separator.mjs +102 -35
  64. package/fesm2022/ojiepermana-angular-component-sheet.mjs +797 -347
  65. package/fesm2022/ojiepermana-angular-component-skeleton.mjs +62 -29
  66. package/fesm2022/ojiepermana-angular-component-slider.mjs +592 -376
  67. package/fesm2022/ojiepermana-angular-component-spinner.mjs +135 -38
  68. package/fesm2022/ojiepermana-angular-component-switch.mjs +315 -103
  69. package/fesm2022/ojiepermana-angular-component-table.mjs +440 -153
  70. package/fesm2022/ojiepermana-angular-component-tabs.mjs +590 -317
  71. package/fesm2022/ojiepermana-angular-component-textarea.mjs +85 -50
  72. package/fesm2022/ojiepermana-angular-component-timeline.mjs +609 -231
  73. package/fesm2022/ojiepermana-angular-component-toast.mjs +229 -243
  74. package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +573 -288
  75. package/fesm2022/ojiepermana-angular-component-toggle.mjs +187 -78
  76. package/fesm2022/ojiepermana-angular-component-tooltip.mjs +798 -517
  77. package/fesm2022/ojiepermana-angular-component-utils-core.mjs +159 -292
  78. package/fesm2022/ojiepermana-angular-component-utils-overlay.mjs +46 -58
  79. package/fesm2022/ojiepermana-angular-component-utils-scale.mjs +76 -38
  80. package/fesm2022/ojiepermana-angular-component-utils.mjs +2 -8
  81. package/fesm2022/ojiepermana-angular-component.mjs +0 -10
  82. package/fesm2022/ojiepermana-angular-navigation-core.mjs +13 -23
  83. package/fesm2022/ojiepermana-angular-navigation-icon.mjs +35 -24
  84. package/fesm2022/ojiepermana-angular-navigation-navigation-badge-count.component-BKCeWzml.mjs +129 -0
  85. package/fesm2022/ojiepermana-angular-navigation-navigation-dockbar-menu.component-DFEJK2jD.mjs +811 -0
  86. package/fesm2022/{ojiepermana-angular-navigation-navigation-entry-grid.component-COQ-60DS.mjs → ojiepermana-angular-navigation-navigation-entry-grid.component-mpK9Ar08.mjs} +387 -183
  87. package/fesm2022/ojiepermana-angular-navigation-navigation-flyout-menu.component-BPgH7FJk.mjs +650 -0
  88. package/fesm2022/ojiepermana-angular-navigation-navigation-horizontal.component-DMpYcD9t.mjs +662 -0
  89. package/fesm2022/ojiepermana-angular-navigation-navigation-item.component-Basp5SIk.mjs +1228 -0
  90. package/fesm2022/ojiepermana-angular-navigation-navigation-list.component-YUzHI9Pj.mjs +311 -0
  91. package/fesm2022/ojiepermana-angular-navigation-service.mjs +542 -724
  92. package/fesm2022/ojiepermana-angular-navigation-types.mjs +27 -56
  93. package/fesm2022/ojiepermana-angular-navigation.mjs +3052 -4
  94. package/fesm2022/ojiepermana-angular-sdk.mjs +91 -201
  95. package/fesm2022/ojiepermana-angular-theme-component-settings.mjs +1115 -737
  96. package/fesm2022/ojiepermana-angular-theme-layout-services.mjs +245 -328
  97. package/fesm2022/ojiepermana-angular-theme-layout-types.mjs +35 -38
  98. package/fesm2022/ojiepermana-angular-theme-layout-wrapper.mjs +1719 -552
  99. package/fesm2022/ojiepermana-angular-theme-layout.mjs +847 -496
  100. package/fesm2022/ojiepermana-angular-theme-page-core.mjs +288 -358
  101. package/fesm2022/ojiepermana-angular-theme-page-filter.mjs +362 -224
  102. package/fesm2022/ojiepermana-angular-theme-page-overview.mjs +88 -0
  103. package/fesm2022/ojiepermana-angular-theme-page-root.mjs +576 -254
  104. package/fesm2022/ojiepermana-angular-theme-page-side.mjs +317 -177
  105. package/fesm2022/ojiepermana-angular-theme-page-slots.mjs +256 -112
  106. package/fesm2022/ojiepermana-angular-theme-page.mjs +7 -12
  107. package/fesm2022/ojiepermana-angular-theme-shell-services.mjs +215 -326
  108. package/fesm2022/ojiepermana-angular-theme-shell-types.mjs +68 -129
  109. package/fesm2022/ojiepermana-angular-theme-shell.mjs +907 -378
  110. package/fesm2022/ojiepermana-angular-theme-styles.mjs +521 -720
  111. package/fesm2022/ojiepermana-angular-theme.mjs +0 -10
  112. package/fesm2022/ojiepermana-angular.mjs +5 -24
  113. package/navigation/README.md +1 -1
  114. package/package.json +16 -12
  115. package/sdk/README.md +1 -1
  116. package/sdk/src/writer/index.js +2 -2
  117. package/theme/README.md +1 -1
  118. package/theme/layout/README.md +2 -4
  119. package/theme/page/README.md +50 -0
  120. package/theme/styles/README.md +10 -10
  121. package/theme/styles/css/base/prefers-dark.css +1 -1
  122. package/theme/styles/css/base/status.css +1 -1
  123. package/theme/styles/css/color/amber.css +1 -1
  124. package/theme/styles/css/color/blue.css +1 -1
  125. package/theme/styles/css/color/cyan.css +1 -1
  126. package/theme/styles/css/color/emerald.css +1 -1
  127. package/theme/styles/css/color/fuchsia.css +1 -1
  128. package/theme/styles/css/color/green.css +1 -1
  129. package/theme/styles/css/color/indigo.css +1 -1
  130. package/theme/styles/css/color/lime.css +1 -1
  131. package/theme/styles/css/color/orange.css +1 -1
  132. package/theme/styles/css/color/pink.css +1 -1
  133. package/theme/styles/css/color/purple.css +1 -1
  134. package/theme/styles/css/color/red.css +1 -1
  135. package/theme/styles/css/color/rose.css +1 -1
  136. package/theme/styles/css/color/sky.css +1 -1
  137. package/theme/styles/css/color/teal.css +1 -1
  138. package/theme/styles/css/color/violet.css +1 -1
  139. package/theme/styles/css/color/yellow.css +1 -1
  140. package/theme/styles/css/neutral/gray.css +1 -1
  141. package/theme/styles/css/neutral/mauve.css +1 -1
  142. package/theme/styles/css/neutral/mist.css +1 -1
  143. package/theme/styles/css/neutral/neutral.css +1 -1
  144. package/theme/styles/css/neutral/olive.css +1 -1
  145. package/theme/styles/css/neutral/slate.css +1 -1
  146. package/theme/styles/css/neutral/stone.css +1 -1
  147. package/theme/styles/css/neutral/taupe.css +1 -1
  148. package/theme/styles/css/neutral/zinc.css +1 -1
  149. package/types/ojiepermana-angular-chart-area.d.ts +126 -63
  150. package/types/ojiepermana-angular-chart-bar.d.ts +244 -154
  151. package/types/ojiepermana-angular-chart-core.d.ts +409 -398
  152. package/types/ojiepermana-angular-chart-line.d.ts +141 -68
  153. package/types/ojiepermana-angular-chart-pie.d.ts +192 -121
  154. package/types/ojiepermana-angular-chart-primitives.d.ts +283 -214
  155. package/types/ojiepermana-angular-chart-radar.d.ts +189 -108
  156. package/types/ojiepermana-angular-chart-radial.d.ts +177 -106
  157. package/types/ojiepermana-angular-chart-scatter.d.ts +166 -110
  158. package/types/ojiepermana-angular-chart.d.ts +3 -2
  159. package/types/ojiepermana-angular-component-accordion.d.ts +135 -81
  160. package/types/ojiepermana-angular-component-alert-dialog.d.ts +271 -123
  161. package/types/ojiepermana-angular-component-alert.d.ts +69 -39
  162. package/types/ojiepermana-angular-component-aspect-ratio.d.ts +20 -12
  163. package/types/ojiepermana-angular-component-avatar.d.ts +103 -49
  164. package/types/ojiepermana-angular-component-badge.d.ts +36 -24
  165. package/types/ojiepermana-angular-component-breadcrumb.d.ts +79 -40
  166. package/types/ojiepermana-angular-component-button-group.d.ts +48 -24
  167. package/types/ojiepermana-angular-component-button.d.ts +44 -27
  168. package/types/ojiepermana-angular-component-calendar.d.ts +145 -107
  169. package/types/ojiepermana-angular-component-card.d.ts +112 -63
  170. package/types/ojiepermana-angular-component-carousel.d.ts +150 -81
  171. package/types/ojiepermana-angular-component-checkbox.d.ts +96 -38
  172. package/types/ojiepermana-angular-component-collapsible.d.ts +65 -39
  173. package/types/ojiepermana-angular-component-combobox.d.ts +100 -55
  174. package/types/ojiepermana-angular-component-command.d.ts +206 -121
  175. package/types/ojiepermana-angular-component-composer.d.ts +184 -84
  176. package/types/ojiepermana-angular-component-context-menu.d.ts +51 -41
  177. package/types/ojiepermana-angular-component-date-picker.d.ts +199 -109
  178. package/types/ojiepermana-angular-component-dialog.d.ts +200 -105
  179. package/types/ojiepermana-angular-component-drawer.d.ts +2 -1
  180. package/types/ojiepermana-angular-component-dropdown-menu.d.ts +324 -202
  181. package/types/ojiepermana-angular-component-editor.d.ts +215 -117
  182. package/types/ojiepermana-angular-component-empty.d.ts +80 -45
  183. package/types/ojiepermana-angular-component-form.d.ts +185 -121
  184. package/types/ojiepermana-angular-component-hover-card.d.ts +130 -72
  185. package/types/ojiepermana-angular-component-icon.d.ts +87 -57
  186. package/types/ojiepermana-angular-component-input-group.d.ts +93 -46
  187. package/types/ojiepermana-angular-component-input-otp.d.ts +243 -150
  188. package/types/ojiepermana-angular-component-input.d.ts +27 -17
  189. package/types/ojiepermana-angular-component-item.d.ts +160 -84
  190. package/types/ojiepermana-angular-component-kanban.d.ts +157 -62
  191. package/types/ojiepermana-angular-component-kbd.d.ts +24 -15
  192. package/types/ojiepermana-angular-component-label.d.ts +19 -11
  193. package/types/ojiepermana-angular-component-menubar.d.ts +120 -90
  194. package/types/ojiepermana-angular-component-native-select.d.ts +37 -24
  195. package/types/ojiepermana-angular-component-navigation-menu.d.ts +157 -98
  196. package/types/ojiepermana-angular-component-pagination.d.ts +78 -28
  197. package/types/ojiepermana-angular-component-pillbox.d.ts +361 -204
  198. package/types/ojiepermana-angular-component-popover.d.ts +94 -64
  199. package/types/ojiepermana-angular-component-progress.d.ts +45 -17
  200. package/types/ojiepermana-angular-component-radio.d.ts +129 -53
  201. package/types/ojiepermana-angular-component-resizable.d.ts +160 -112
  202. package/types/ojiepermana-angular-component-scroll-area.d.ts +33 -15
  203. package/types/ojiepermana-angular-component-segmented-control.d.ts +94 -50
  204. package/types/ojiepermana-angular-component-select.d.ts +94 -77
  205. package/types/ojiepermana-angular-component-separator.d.ts +26 -14
  206. package/types/ojiepermana-angular-component-sheet.d.ts +226 -116
  207. package/types/ojiepermana-angular-component-skeleton.d.ts +13 -10
  208. package/types/ojiepermana-angular-component-slider.d.ts +140 -75
  209. package/types/ojiepermana-angular-component-spinner.d.ts +31 -13
  210. package/types/ojiepermana-angular-component-switch.d.ts +97 -40
  211. package/types/ojiepermana-angular-component-table.d.ts +102 -50
  212. package/types/ojiepermana-angular-component-tabs.d.ts +174 -115
  213. package/types/ojiepermana-angular-component-textarea.d.ts +27 -17
  214. package/types/ojiepermana-angular-component-timeline.d.ts +141 -59
  215. package/types/ojiepermana-angular-component-toast.d.ts +51 -55
  216. package/types/ojiepermana-angular-component-toggle-group.d.ts +159 -88
  217. package/types/ojiepermana-angular-component-toggle.d.ts +47 -25
  218. package/types/ojiepermana-angular-component-tooltip.d.ts +222 -132
  219. package/types/ojiepermana-angular-component-utils-core.d.ts +81 -90
  220. package/types/ojiepermana-angular-component-utils-overlay.d.ts +7 -11
  221. package/types/ojiepermana-angular-component-utils-scale.d.ts +20 -12
  222. package/types/ojiepermana-angular-component-utils.d.ts +2 -2
  223. package/types/ojiepermana-angular-component.d.ts +1 -2
  224. package/types/ojiepermana-angular-navigation-core.d.ts +46 -50
  225. package/types/ojiepermana-angular-navigation-icon.d.ts +9 -12
  226. package/types/ojiepermana-angular-navigation-service.d.ts +112 -115
  227. package/types/ojiepermana-angular-navigation-types.d.ts +121 -125
  228. package/types/ojiepermana-angular-navigation.d.ts +663 -374
  229. package/types/ojiepermana-angular-sdk.d.ts +69 -71
  230. package/types/ojiepermana-angular-theme-component-settings.d.ts +115 -83
  231. package/types/ojiepermana-angular-theme-layout-services.d.ts +119 -124
  232. package/types/ojiepermana-angular-theme-layout-types.d.ts +27 -31
  233. package/types/ojiepermana-angular-theme-layout-wrapper.d.ts +399 -187
  234. package/types/ojiepermana-angular-theme-layout.d.ts +201 -113
  235. package/types/ojiepermana-angular-theme-page-core.d.ts +136 -142
  236. package/types/ojiepermana-angular-theme-page-filter.d.ts +112 -62
  237. package/types/ojiepermana-angular-theme-page-overview.d.ts +28 -0
  238. package/types/ojiepermana-angular-theme-page-root.d.ts +172 -88
  239. package/types/ojiepermana-angular-theme-page-side.d.ts +89 -49
  240. package/types/ojiepermana-angular-theme-page-slots.d.ts +58 -37
  241. package/types/ojiepermana-angular-theme-page.d.ts +7 -5
  242. package/types/ojiepermana-angular-theme-shell-services.d.ts +119 -125
  243. package/types/ojiepermana-angular-theme-shell-types.d.ts +38 -41
  244. package/types/ojiepermana-angular-theme-shell.d.ts +139 -61
  245. package/types/ojiepermana-angular-theme-styles.d.ts +184 -196
  246. package/types/ojiepermana-angular-theme.d.ts +1 -2
  247. package/types/ojiepermana-angular.d.ts +5 -5
  248. package/fesm2022/ojiepermana-angular-navigation-navigation-badge-count.component-Be3IqzG4.mjs +0 -91
  249. package/fesm2022/ojiepermana-angular-navigation-navigation-dockbar-menu.component-Bc7DWK3R.mjs +0 -522
  250. package/fesm2022/ojiepermana-angular-navigation-navigation-flyout-menu.component-DA8VPEn7.mjs +0 -404
  251. package/fesm2022/ojiepermana-angular-navigation-navigation-horizontal.component-U2TJTzlW.mjs +0 -466
  252. package/fesm2022/ojiepermana-angular-navigation-ojiepermana-angular-navigation-CIUhmytH.mjs +0 -2668
@@ -1,91 +1,189 @@
1
- import * as i0 from '@angular/core';
2
- import { input, booleanAttribute, output, viewChild, signal, computed, forwardRef, Component } from '@angular/core';
3
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
4
- import { injectUniqueId, cn } from '@ojiepermana/angular/component/utils/core';
5
-
6
- /**
7
- * Checkbox built on a native `<input type="checkbox">` (shadcn pattern) — no
8
- * Material dependency. Projected content renders as the clickable label.
9
- */
10
- class CheckboxComponent {
11
- id = input(injectUniqueId('Checkbox'), /* @ts-ignore */
12
- ...(ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []));
13
- name = input(null, /* @ts-ignore */
14
- ...(ngDevMode ? [{ debugName: "name" }] : /* istanbul ignore next */ []));
15
- disabled = input(false, { ...(ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {}), transform: booleanAttribute });
16
- indeterminate = input(false, /* @ts-ignore */
17
- ...(ngDevMode ? [{ debugName: "indeterminate" }] : /* istanbul ignore next */ []));
18
- required = input(false, /* @ts-ignore */
19
- ...(ngDevMode ? [{ debugName: "required" }] : /* istanbul ignore next */ []));
20
- ariaLabel = input(null, { ...(ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {}), alias: 'aria-label' });
21
- ariaDescribedby = input(null, { ...(ngDevMode ? { debugName: "ariaDescribedby" } : /* istanbul ignore next */ {}), alias: 'aria-describedby' });
22
- ariaLabelledby = input(null, { ...(ngDevMode ? { debugName: "ariaLabelledby" } : /* istanbul ignore next */ {}), alias: 'aria-labelledby' });
23
- ariaInvalid = input(null, { ...(ngDevMode ? { debugName: "ariaInvalid" } : /* istanbul ignore next */ {}), alias: 'aria-invalid' });
24
- class = input('', /* @ts-ignore */
25
- ...(ngDevMode ? [{ debugName: "class" }] : /* istanbul ignore next */ []));
26
- checkedChange = output();
27
- ref = viewChild.required('ref', /* @ts-ignore */
28
- ...(ngDevMode ? [{ debugName: "ref" }] : /* istanbul ignore next */ []));
29
- checked = signal(false, /* @ts-ignore */
30
- ...(ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []));
31
- disabledState = signal(false, /* @ts-ignore */
32
- ...(ngDevMode ? [{ debugName: "disabledState" }] : /* istanbul ignore next */ []));
33
- ariaInvalidAttr = computed(() => {
34
- const value = this.ariaInvalid();
35
- if (value === false || value === 'false' || value == null) {
36
- return null;
37
- }
38
- return value === true || value === '' ? 'true' : `${value}`;
39
- }, /* @ts-ignore */
40
- ...(ngDevMode ? [{ debugName: "ariaInvalidAttr" }] : /* istanbul ignore next */ []));
41
- isDisabled = computed(() => this.disabled() || this.disabledState(), /* @ts-ignore */
42
- ...(ngDevMode ? [{ debugName: "isDisabled" }] : /* istanbul ignore next */ []));
43
- hostClasses = computed(() => cn('Checkbox inline-flex', this.class()), /* @ts-ignore */
44
- ...(ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []));
45
- labelClasses = computed(() => cn('inline-flex select-none items-center gap-2 text-sm font-medium leading-none', this.isDisabled() ? 'cursor-not-allowed opacity-50' : 'cursor-pointer'), /* @ts-ignore */
46
- ...(ngDevMode ? [{ debugName: "labelClasses" }] : /* istanbul ignore next */ []));
47
- boxClasses = computed(() => cn('inline-flex size-4 shrink-0 items-center justify-center rounded-sm border shadow-sm transition-colors', 'peer-focus-visible:ring-2 peer-focus-visible:ring-ring peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-background', this.invalid()
48
- ? 'border-destructive'
49
- : this.checked() || this.indeterminate()
50
- ? 'border-primary'
51
- : 'border-input', this.checked() || this.indeterminate()
52
- ? this.invalid()
53
- ? 'bg-destructive text-destructive-foreground'
54
- : 'bg-primary text-primary-foreground'
55
- : 'bg-background'), /* @ts-ignore */
56
- ...(ngDevMode ? [{ debugName: "boxClasses" }] : /* istanbul ignore next */ []));
57
- invalid = computed(() => this.ariaInvalidAttr() === 'true', /* @ts-ignore */
58
- ...(ngDevMode ? [{ debugName: "invalid" }] : /* istanbul ignore next */ []));
59
- onChange = () => { };
60
- onTouched = () => { };
61
- handleChange(event) {
62
- const next = event.target.checked;
63
- this.checked.set(next);
64
- this.onChange(next);
65
- this.checkedChange.emit(next);
66
- }
67
- handleBlur() {
68
- this.onTouched();
69
- }
70
- focus() {
71
- this.ref().nativeElement.focus();
72
- }
73
- writeValue(v) {
74
- this.checked.set(!!v);
75
- }
76
- registerOnChange(fn) {
77
- this.onChange = fn;
78
- }
79
- registerOnTouched(fn) {
80
- this.onTouched = fn;
81
- }
82
- setDisabledState(d) {
83
- this.disabledState.set(d);
84
- }
85
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: CheckboxComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
86
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.6", type: CheckboxComponent, isStandalone: true, selector: "Checkbox", inputs: { id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null }, indeterminate: { classPropertyName: "indeterminate", publicName: "indeterminate", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedby: { classPropertyName: "ariaDescribedby", publicName: "aria-describedby", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledby: { classPropertyName: "ariaLabelledby", publicName: "aria-labelledby", isSignal: true, isRequired: false, transformFunction: null }, ariaInvalid: { classPropertyName: "ariaInvalid", publicName: "aria-invalid", isSignal: true, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checkedChange: "checkedChange" }, host: { properties: { "class": "hostClasses()" } }, providers: [
87
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => CheckboxComponent), multi: true },
88
- ], viewQueries: [{ propertyName: "ref", first: true, predicate: ["ref"], descendants: true, isSignal: true }], ngImport: i0, template: `
1
+ import * as i0 from "@angular/core";
2
+ import { Component, booleanAttribute, computed, forwardRef, input, model, output, signal, viewChild } from "@angular/core";
3
+ import { NG_VALUE_ACCESSOR } from "@angular/forms";
4
+ import { cn, injectUniqueId } from "@ojiepermana/angular/component/utils/core";
5
+ var CheckboxComponent = class CheckboxComponent {
6
+ id = input(injectUniqueId("Checkbox"), ...ngDevMode ? [{ debugName: "id" }] : /* istanbul ignore next */ []);
7
+ name = input("", {
8
+ ...ngDevMode ? { debugName: "name" } : /* istanbul ignore next */ {},
9
+ transform: (value) => value == null ? "" : String(value)
10
+ });
11
+ disabled = input(false, {
12
+ ...ngDevMode ? { debugName: "disabled" } : /* istanbul ignore next */ {},
13
+ transform: booleanAttribute
14
+ });
15
+ indeterminate = input(false, ...ngDevMode ? [{ debugName: "indeterminate" }] : /* istanbul ignore next */ []);
16
+ required = input(false, ...ngDevMode ? [{ debugName: "required" }] : /* istanbul ignore next */ []);
17
+ ariaLabel = input(null, {
18
+ ...ngDevMode ? { debugName: "ariaLabel" } : /* istanbul ignore next */ {},
19
+ alias: "aria-label"
20
+ });
21
+ ariaDescribedby = input(null, {
22
+ ...ngDevMode ? { debugName: "ariaDescribedby" } : /* istanbul ignore next */ {},
23
+ alias: "aria-describedby"
24
+ });
25
+ ariaLabelledby = input(null, {
26
+ ...ngDevMode ? { debugName: "ariaLabelledby" } : /* istanbul ignore next */ {},
27
+ alias: "aria-labelledby"
28
+ });
29
+ ariaInvalid = input(null, {
30
+ ...ngDevMode ? { debugName: "ariaInvalid" } : /* istanbul ignore next */ {},
31
+ alias: "aria-invalid"
32
+ });
33
+ class = input("", ...ngDevMode ? [{ debugName: "class" }] : /* istanbul ignore next */ []);
34
+ checked = model(false, ...ngDevMode ? [{ debugName: "checked" }] : /* istanbul ignore next */ []);
35
+ checkedChange = this.checked;
36
+ touch = output();
37
+ ref = viewChild.required("ref", ...ngDevMode ? [{ debugName: "ref" }] : /* istanbul ignore next */ []);
38
+ disabledState = signal(false, ...ngDevMode ? [{ debugName: "disabledState" }] : /* istanbul ignore next */ []);
39
+ ariaInvalidAttr = computed(() => {
40
+ const value = this.ariaInvalid();
41
+ if (value === false || value === "false" || value == null) return null;
42
+ return value === true || value === "" ? "true" : `${value}`;
43
+ }, ...ngDevMode ? [{ debugName: "ariaInvalidAttr" }] : /* istanbul ignore next */ []);
44
+ isDisabled = computed(() => this.disabled() || this.disabledState(), ...ngDevMode ? [{ debugName: "isDisabled" }] : /* istanbul ignore next */ []);
45
+ hostClasses = computed(() => cn("Checkbox inline-flex", this.class()), ...ngDevMode ? [{ debugName: "hostClasses" }] : /* istanbul ignore next */ []);
46
+ labelClasses = computed(() => cn("inline-flex select-none items-center gap-2 text-sm font-medium leading-none", this.isDisabled() ? "cursor-not-allowed opacity-50" : "cursor-pointer"), ...ngDevMode ? [{ debugName: "labelClasses" }] : /* istanbul ignore next */ []);
47
+ boxClasses = computed(() => cn("inline-flex size-4 shrink-0 items-center justify-center rounded-sm border shadow-sm transition-colors", "peer-focus-visible:ring-2 peer-focus-visible:ring-ring peer-focus-visible:ring-offset-2 peer-focus-visible:ring-offset-background", this.isInvalid() ? "border-destructive" : this.checked() || this.indeterminate() ? "border-primary" : "border-input", this.checked() || this.indeterminate() ? this.isInvalid() ? "bg-destructive text-destructive-foreground" : "bg-primary text-primary-foreground" : "bg-background"), ...ngDevMode ? [{ debugName: "boxClasses" }] : /* istanbul ignore next */ []);
48
+ isInvalid = computed(() => this.ariaInvalidAttr() === "true", ...ngDevMode ? [{ debugName: "isInvalid" }] : /* istanbul ignore next */ []);
49
+ onChange = () => {};
50
+ onTouched = () => {};
51
+ handleChange(event) {
52
+ const next = event.target.checked;
53
+ this.checked.set(next);
54
+ this.onChange(next);
55
+ }
56
+ handleBlur() {
57
+ this.onTouched();
58
+ this.touch.emit();
59
+ }
60
+ focus() {
61
+ this.ref().nativeElement.focus();
62
+ }
63
+ writeValue(v) {
64
+ this.checked.set(!!v);
65
+ }
66
+ registerOnChange(fn) {
67
+ this.onChange = fn;
68
+ }
69
+ registerOnTouched(fn) {
70
+ this.onTouched = fn;
71
+ }
72
+ setDisabledState(d) {
73
+ this.disabledState.set(d);
74
+ }
75
+ static ɵfac = i0.ɵɵngDeclareFactory({
76
+ minVersion: "12.0.0",
77
+ version: "22.2.0",
78
+ ngImport: i0,
79
+ type: CheckboxComponent,
80
+ deps: [],
81
+ target: i0.ɵɵFactoryTarget.Component
82
+ });
83
+ static ɵcmp = i0.ɵɵngDeclareComponent({
84
+ minVersion: "17.0.0",
85
+ version: "22.2.0",
86
+ type: CheckboxComponent,
87
+ isStandalone: true,
88
+ selector: "Checkbox",
89
+ inputs: {
90
+ id: {
91
+ classPropertyName: "id",
92
+ publicName: "id",
93
+ isSignal: true,
94
+ isRequired: false,
95
+ transformFunction: null
96
+ },
97
+ name: {
98
+ classPropertyName: "name",
99
+ publicName: "name",
100
+ isSignal: true,
101
+ isRequired: false,
102
+ transformFunction: null
103
+ },
104
+ disabled: {
105
+ classPropertyName: "disabled",
106
+ publicName: "disabled",
107
+ isSignal: true,
108
+ isRequired: false,
109
+ transformFunction: null
110
+ },
111
+ indeterminate: {
112
+ classPropertyName: "indeterminate",
113
+ publicName: "indeterminate",
114
+ isSignal: true,
115
+ isRequired: false,
116
+ transformFunction: null
117
+ },
118
+ required: {
119
+ classPropertyName: "required",
120
+ publicName: "required",
121
+ isSignal: true,
122
+ isRequired: false,
123
+ transformFunction: null
124
+ },
125
+ ariaLabel: {
126
+ classPropertyName: "ariaLabel",
127
+ publicName: "aria-label",
128
+ isSignal: true,
129
+ isRequired: false,
130
+ transformFunction: null
131
+ },
132
+ ariaDescribedby: {
133
+ classPropertyName: "ariaDescribedby",
134
+ publicName: "aria-describedby",
135
+ isSignal: true,
136
+ isRequired: false,
137
+ transformFunction: null
138
+ },
139
+ ariaLabelledby: {
140
+ classPropertyName: "ariaLabelledby",
141
+ publicName: "aria-labelledby",
142
+ isSignal: true,
143
+ isRequired: false,
144
+ transformFunction: null
145
+ },
146
+ ariaInvalid: {
147
+ classPropertyName: "ariaInvalid",
148
+ publicName: "aria-invalid",
149
+ isSignal: true,
150
+ isRequired: false,
151
+ transformFunction: null
152
+ },
153
+ class: {
154
+ classPropertyName: "class",
155
+ publicName: "class",
156
+ isSignal: true,
157
+ isRequired: false,
158
+ transformFunction: null
159
+ },
160
+ checked: {
161
+ classPropertyName: "checked",
162
+ publicName: "checked",
163
+ isSignal: true,
164
+ isRequired: false,
165
+ transformFunction: null
166
+ }
167
+ },
168
+ outputs: {
169
+ checked: "checkedChange",
170
+ touch: "touch"
171
+ },
172
+ host: { properties: { "class": "hostClasses()" } },
173
+ providers: [{
174
+ provide: NG_VALUE_ACCESSOR,
175
+ useExisting: forwardRef(() => CheckboxComponent),
176
+ multi: true
177
+ }],
178
+ viewQueries: [{
179
+ propertyName: "ref",
180
+ first: true,
181
+ predicate: ["ref"],
182
+ descendants: true,
183
+ isSignal: true
184
+ }],
185
+ ngImport: i0,
186
+ template: `
89
187
  <label [class]="labelClasses()" [attr.for]="id()">
90
188
  <input
91
189
  #ref
@@ -129,17 +227,26 @@ class CheckboxComponent {
129
227
  </span>
130
228
  <ng-content />
131
229
  </label>
132
- `, isInline: true });
133
- }
134
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImport: i0, type: CheckboxComponent, decorators: [{
135
- type: Component,
136
- args: [{
137
- selector: 'Checkbox',
138
- providers: [
139
- { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => CheckboxComponent), multi: true },
140
- ],
141
- host: { '[class]': 'hostClasses()' },
142
- template: `
230
+ `,
231
+ isInline: true
232
+ });
233
+ };
234
+ i0.ɵɵngDeclareClassMetadata({
235
+ minVersion: "12.0.0",
236
+ version: "22.2.0",
237
+ ngImport: i0,
238
+ type: CheckboxComponent,
239
+ decorators: [{
240
+ type: Component,
241
+ args: [{
242
+ selector: "Checkbox",
243
+ providers: [{
244
+ provide: NG_VALUE_ACCESSOR,
245
+ useExisting: forwardRef(() => CheckboxComponent),
246
+ multi: true
247
+ }],
248
+ host: { "[class]": "hostClasses()" },
249
+ template: `
143
250
  <label [class]="labelClasses()" [attr.for]="id()">
144
251
  <input
145
252
  #ref
@@ -183,12 +290,109 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.6", ngImpor
183
290
  </span>
184
291
  <ng-content />
185
292
  </label>
186
- `,
187
- }]
188
- }], propDecorators: { id: [{ type: i0.Input, args: [{ isSignal: true, alias: "id", required: false }] }], name: [{ type: i0.Input, args: [{ isSignal: true, alias: "name", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], indeterminate: [{ type: i0.Input, args: [{ isSignal: true, alias: "indeterminate", required: false }] }], required: [{ type: i0.Input, args: [{ isSignal: true, alias: "required", required: false }] }], ariaLabel: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-label", required: false }] }], ariaDescribedby: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-describedby", required: false }] }], ariaLabelledby: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-labelledby", required: false }] }], ariaInvalid: [{ type: i0.Input, args: [{ isSignal: true, alias: "aria-invalid", required: false }] }], class: [{ type: i0.Input, args: [{ isSignal: true, alias: "class", required: false }] }], checkedChange: [{ type: i0.Output, args: ["checkedChange"] }], ref: [{ type: i0.ViewChild, args: ['ref', { isSignal: true }] }] } });
189
-
190
- /**
191
- * Generated bundle index. Do not edit.
192
- */
193
-
194
- export { CheckboxComponent };
293
+ `
294
+ }]
295
+ }],
296
+ propDecorators: {
297
+ id: [{
298
+ type: i0.Input,
299
+ args: [{
300
+ isSignal: true,
301
+ alias: "id",
302
+ required: false
303
+ }]
304
+ }],
305
+ name: [{
306
+ type: i0.Input,
307
+ args: [{
308
+ isSignal: true,
309
+ alias: "name",
310
+ required: false
311
+ }]
312
+ }],
313
+ disabled: [{
314
+ type: i0.Input,
315
+ args: [{
316
+ isSignal: true,
317
+ alias: "disabled",
318
+ required: false
319
+ }]
320
+ }],
321
+ indeterminate: [{
322
+ type: i0.Input,
323
+ args: [{
324
+ isSignal: true,
325
+ alias: "indeterminate",
326
+ required: false
327
+ }]
328
+ }],
329
+ required: [{
330
+ type: i0.Input,
331
+ args: [{
332
+ isSignal: true,
333
+ alias: "required",
334
+ required: false
335
+ }]
336
+ }],
337
+ ariaLabel: [{
338
+ type: i0.Input,
339
+ args: [{
340
+ isSignal: true,
341
+ alias: "aria-label",
342
+ required: false
343
+ }]
344
+ }],
345
+ ariaDescribedby: [{
346
+ type: i0.Input,
347
+ args: [{
348
+ isSignal: true,
349
+ alias: "aria-describedby",
350
+ required: false
351
+ }]
352
+ }],
353
+ ariaLabelledby: [{
354
+ type: i0.Input,
355
+ args: [{
356
+ isSignal: true,
357
+ alias: "aria-labelledby",
358
+ required: false
359
+ }]
360
+ }],
361
+ ariaInvalid: [{
362
+ type: i0.Input,
363
+ args: [{
364
+ isSignal: true,
365
+ alias: "aria-invalid",
366
+ required: false
367
+ }]
368
+ }],
369
+ class: [{
370
+ type: i0.Input,
371
+ args: [{
372
+ isSignal: true,
373
+ alias: "class",
374
+ required: false
375
+ }]
376
+ }],
377
+ checked: [{
378
+ type: i0.Input,
379
+ args: [{
380
+ isSignal: true,
381
+ alias: "checked",
382
+ required: false
383
+ }]
384
+ }, {
385
+ type: i0.Output,
386
+ args: ["checkedChange"]
387
+ }],
388
+ touch: [{
389
+ type: i0.Output,
390
+ args: ["touch"]
391
+ }],
392
+ ref: [{
393
+ type: i0.ViewChild,
394
+ args: ["ref", { isSignal: true }]
395
+ }]
396
+ }
397
+ });
398
+ export { CheckboxComponent };