@ojiepermana/angular 22.0.1 → 22.0.29

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 (513) hide show
  1. package/README.md +61 -311
  2. package/fesm2022/ojiepermana-angular-chart.mjs +10 -0
  3. package/fesm2022/ojiepermana-angular-component.mjs +10 -0
  4. package/fesm2022/ojiepermana-angular-navigation.mjs +10 -0
  5. package/fesm2022/ojiepermana-angular-sdk.mjs +10 -0
  6. package/fesm2022/ojiepermana-angular-theme.mjs +4 -384
  7. package/fesm2022/ojiepermana-angular.mjs +15 -16
  8. package/package.json +25 -425
  9. package/types/ojiepermana-angular-chart.d.ts +1 -0
  10. package/types/ojiepermana-angular-component.d.ts +1 -0
  11. package/types/ojiepermana-angular-navigation.d.ts +1 -0
  12. package/types/ojiepermana-angular-sdk.d.ts +1 -0
  13. package/types/ojiepermana-angular-theme.d.ts +1 -116
  14. package/types/ojiepermana-angular.d.ts +5 -3
  15. package/.npmignore +0 -2
  16. package/collection.json +0 -30
  17. package/component/accordion/README.md +0 -195
  18. package/component/accordion/package.json +0 -4
  19. package/component/alert/README.md +0 -182
  20. package/component/alert/package.json +0 -4
  21. package/component/alert-dialog/README.md +0 -239
  22. package/component/alert-dialog/package.json +0 -4
  23. package/component/aspect-ratio/README.md +0 -112
  24. package/component/aspect-ratio/package.json +0 -4
  25. package/component/avatar/README.md +0 -176
  26. package/component/avatar/package.json +0 -4
  27. package/component/badge/README.md +0 -133
  28. package/component/badge/package.json +0 -4
  29. package/component/breadcrumb/README.md +0 -216
  30. package/component/breadcrumb/package.json +0 -4
  31. package/component/button/README.md +0 -139
  32. package/component/button/package.json +0 -4
  33. package/component/button-group/README.md +0 -208
  34. package/component/button-group/package.json +0 -4
  35. package/component/calendar/README.md +0 -132
  36. package/component/calendar/package.json +0 -4
  37. package/component/card/README.md +0 -220
  38. package/component/card/package.json +0 -4
  39. package/component/carousel/README.md +0 -276
  40. package/component/carousel/package.json +0 -4
  41. package/component/chart/README.md +0 -249
  42. package/component/chart/area/package.json +0 -4
  43. package/component/chart/bar/package.json +0 -4
  44. package/component/chart/line/package.json +0 -4
  45. package/component/chart/package.json +0 -4
  46. package/component/chart/pie/package.json +0 -4
  47. package/component/chart/radar/package.json +0 -4
  48. package/component/chart/radial/package.json +0 -4
  49. package/component/chart/scatter/package.json +0 -4
  50. package/component/checkbox/README.md +0 -149
  51. package/component/checkbox/package.json +0 -4
  52. package/component/collapsible/README.md +0 -195
  53. package/component/collapsible/package.json +0 -4
  54. package/component/combobox/README.md +0 -198
  55. package/component/combobox/package.json +0 -4
  56. package/component/command/README.md +0 -275
  57. package/component/command/package.json +0 -4
  58. package/component/composer/README.md +0 -235
  59. package/component/composer/package.json +0 -4
  60. package/component/context-menu/README.md +0 -267
  61. package/component/context-menu/package.json +0 -4
  62. package/component/date-picker/README.md +0 -177
  63. package/component/date-picker/package.json +0 -4
  64. package/component/dialog/README.md +0 -237
  65. package/component/dialog/package.json +0 -4
  66. package/component/drawer/README.md +0 -145
  67. package/component/drawer/package.json +0 -4
  68. package/component/dropdown-menu/README.md +0 -311
  69. package/component/dropdown-menu/package.json +0 -4
  70. package/component/editor/README.md +0 -136
  71. package/component/editor/package.json +0 -4
  72. package/component/empty/README.md +0 -183
  73. package/component/empty/package.json +0 -4
  74. package/component/form/README.md +0 -210
  75. package/component/form/package.json +0 -4
  76. package/component/hover-card/README.md +0 -146
  77. package/component/hover-card/package.json +0 -4
  78. package/component/input/README.md +0 -159
  79. package/component/input/package.json +0 -4
  80. package/component/input-group/README.md +0 -239
  81. package/component/input-group/package.json +0 -4
  82. package/component/input-otp/README.md +0 -278
  83. package/component/input-otp/package.json +0 -4
  84. package/component/item/README.md +0 -247
  85. package/component/item/package.json +0 -4
  86. package/component/kanban/README.md +0 -81
  87. package/component/kanban/package.json +0 -4
  88. package/component/kbd/README.md +0 -139
  89. package/component/kbd/package.json +0 -4
  90. package/component/label/README.md +0 -136
  91. package/component/label/package.json +0 -4
  92. package/component/menubar/README.md +0 -269
  93. package/component/menubar/package.json +0 -4
  94. package/component/native-select/README.md +0 -176
  95. package/component/native-select/package.json +0 -4
  96. package/component/navigation-menu/README.md +0 -160
  97. package/component/navigation-menu/package.json +0 -4
  98. package/component/pagination/README.md +0 -144
  99. package/component/pagination/package.json +0 -4
  100. package/component/pillbox/README.md +0 -67
  101. package/component/pillbox/package.json +0 -4
  102. package/component/popover/README.md +0 -43
  103. package/component/popover/package.json +0 -4
  104. package/component/progress/README.md +0 -160
  105. package/component/progress/package.json +0 -4
  106. package/component/radio/README.md +0 -209
  107. package/component/radio/package.json +0 -4
  108. package/component/resizable/README.md +0 -168
  109. package/component/resizable/package.json +0 -4
  110. package/component/scroll-area/README.md +0 -143
  111. package/component/scroll-area/package.json +0 -4
  112. package/component/select/README.md +0 -174
  113. package/component/select/package.json +0 -4
  114. package/component/separator/README.md +0 -170
  115. package/component/separator/package.json +0 -4
  116. package/component/sheet/README.md +0 -183
  117. package/component/sheet/package.json +0 -4
  118. package/component/skeleton/README.md +0 -158
  119. package/component/skeleton/package.json +0 -4
  120. package/component/slider/README.md +0 -207
  121. package/component/slider/package.json +0 -4
  122. package/component/spinner/README.md +0 -160
  123. package/component/spinner/package.json +0 -4
  124. package/component/switch/README.md +0 -166
  125. package/component/switch/package.json +0 -4
  126. package/component/table/README.md +0 -291
  127. package/component/table/package.json +0 -4
  128. package/component/tabs/README.md +0 -219
  129. package/component/tabs/package.json +0 -4
  130. package/component/textarea/README.md +0 -154
  131. package/component/textarea/package.json +0 -4
  132. package/component/timeline/README.md +0 -94
  133. package/component/timeline/package.json +0 -4
  134. package/component/toast/README.md +0 -321
  135. package/component/toast/package.json +0 -4
  136. package/component/toggle/README.md +0 -131
  137. package/component/toggle/package.json +0 -4
  138. package/component/toggle-group/README.md +0 -206
  139. package/component/toggle-group/package.json +0 -4
  140. package/component/tooltip/README.md +0 -211
  141. package/component/tooltip/package.json +0 -4
  142. package/component/utils/package.json +0 -4
  143. package/fesm2022/ojiepermana-angular-component-accordion.mjs +0 -189
  144. package/fesm2022/ojiepermana-angular-component-accordion.mjs.map +0 -1
  145. package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +0 -276
  146. package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs.map +0 -1
  147. package/fesm2022/ojiepermana-angular-component-alert.mjs +0 -99
  148. package/fesm2022/ojiepermana-angular-component-alert.mjs.map +0 -1
  149. package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +0 -37
  150. package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs.map +0 -1
  151. package/fesm2022/ojiepermana-angular-component-avatar.mjs +0 -139
  152. package/fesm2022/ojiepermana-angular-component-avatar.mjs.map +0 -1
  153. package/fesm2022/ojiepermana-angular-component-badge.mjs +0 -50
  154. package/fesm2022/ojiepermana-angular-component-badge.mjs.map +0 -1
  155. package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +0 -200
  156. package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs.map +0 -1
  157. package/fesm2022/ojiepermana-angular-component-button-group.mjs +0 -103
  158. package/fesm2022/ojiepermana-angular-component-button-group.mjs.map +0 -1
  159. package/fesm2022/ojiepermana-angular-component-button.mjs +0 -68
  160. package/fesm2022/ojiepermana-angular-component-button.mjs.map +0 -1
  161. package/fesm2022/ojiepermana-angular-component-calendar.mjs +0 -88
  162. package/fesm2022/ojiepermana-angular-component-calendar.mjs.map +0 -1
  163. package/fesm2022/ojiepermana-angular-component-card.mjs +0 -152
  164. package/fesm2022/ojiepermana-angular-component-card.mjs.map +0 -1
  165. package/fesm2022/ojiepermana-angular-component-carousel.mjs +0 -334
  166. package/fesm2022/ojiepermana-angular-component-carousel.mjs.map +0 -1
  167. package/fesm2022/ojiepermana-angular-component-chart-area.mjs +0 -6
  168. package/fesm2022/ojiepermana-angular-component-chart-area.mjs.map +0 -1
  169. package/fesm2022/ojiepermana-angular-component-chart-bar.mjs +0 -6
  170. package/fesm2022/ojiepermana-angular-component-chart-bar.mjs.map +0 -1
  171. package/fesm2022/ojiepermana-angular-component-chart-line.mjs +0 -6
  172. package/fesm2022/ojiepermana-angular-component-chart-line.mjs.map +0 -1
  173. package/fesm2022/ojiepermana-angular-component-chart-pie.mjs +0 -6
  174. package/fesm2022/ojiepermana-angular-component-chart-pie.mjs.map +0 -1
  175. package/fesm2022/ojiepermana-angular-component-chart-radar.mjs +0 -6
  176. package/fesm2022/ojiepermana-angular-component-chart-radar.mjs.map +0 -1
  177. package/fesm2022/ojiepermana-angular-component-chart-radial.mjs +0 -6
  178. package/fesm2022/ojiepermana-angular-component-chart-radial.mjs.map +0 -1
  179. package/fesm2022/ojiepermana-angular-component-chart-scatter.mjs +0 -6
  180. package/fesm2022/ojiepermana-angular-component-chart-scatter.mjs.map +0 -1
  181. package/fesm2022/ojiepermana-angular-component-chart.mjs +0 -3925
  182. package/fesm2022/ojiepermana-angular-component-chart.mjs.map +0 -1
  183. package/fesm2022/ojiepermana-angular-component-checkbox.mjs +0 -114
  184. package/fesm2022/ojiepermana-angular-component-checkbox.mjs.map +0 -1
  185. package/fesm2022/ojiepermana-angular-component-collapsible.mjs +0 -124
  186. package/fesm2022/ojiepermana-angular-component-collapsible.mjs.map +0 -1
  187. package/fesm2022/ojiepermana-angular-component-combobox.mjs +0 -272
  188. package/fesm2022/ojiepermana-angular-component-combobox.mjs.map +0 -1
  189. package/fesm2022/ojiepermana-angular-component-command.mjs +0 -293
  190. package/fesm2022/ojiepermana-angular-component-command.mjs.map +0 -1
  191. package/fesm2022/ojiepermana-angular-component-composer.mjs +0 -352
  192. package/fesm2022/ojiepermana-angular-component-composer.mjs.map +0 -1
  193. package/fesm2022/ojiepermana-angular-component-context-menu.mjs +0 -103
  194. package/fesm2022/ojiepermana-angular-component-context-menu.mjs.map +0 -1
  195. package/fesm2022/ojiepermana-angular-component-date-picker.mjs +0 -170
  196. package/fesm2022/ojiepermana-angular-component-date-picker.mjs.map +0 -1
  197. package/fesm2022/ojiepermana-angular-component-dialog.mjs +0 -279
  198. package/fesm2022/ojiepermana-angular-component-dialog.mjs.map +0 -1
  199. package/fesm2022/ojiepermana-angular-component-drawer.mjs +0 -6
  200. package/fesm2022/ojiepermana-angular-component-drawer.mjs.map +0 -1
  201. package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +0 -492
  202. package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs.map +0 -1
  203. package/fesm2022/ojiepermana-angular-component-editor.mjs +0 -717
  204. package/fesm2022/ojiepermana-angular-component-editor.mjs.map +0 -1
  205. package/fesm2022/ojiepermana-angular-component-empty.mjs +0 -145
  206. package/fesm2022/ojiepermana-angular-component-empty.mjs.map +0 -1
  207. package/fesm2022/ojiepermana-angular-component-form.mjs +0 -366
  208. package/fesm2022/ojiepermana-angular-component-form.mjs.map +0 -1
  209. package/fesm2022/ojiepermana-angular-component-hover-card.mjs +0 -297
  210. package/fesm2022/ojiepermana-angular-component-hover-card.mjs.map +0 -1
  211. package/fesm2022/ojiepermana-angular-component-input-group.mjs +0 -179
  212. package/fesm2022/ojiepermana-angular-component-input-group.mjs.map +0 -1
  213. package/fesm2022/ojiepermana-angular-component-input-otp.mjs +0 -514
  214. package/fesm2022/ojiepermana-angular-component-input-otp.mjs.map +0 -1
  215. package/fesm2022/ojiepermana-angular-component-input.mjs +0 -45
  216. package/fesm2022/ojiepermana-angular-component-input.mjs.map +0 -1
  217. package/fesm2022/ojiepermana-angular-component-item.mjs +0 -264
  218. package/fesm2022/ojiepermana-angular-component-item.mjs.map +0 -1
  219. package/fesm2022/ojiepermana-angular-component-kanban.mjs +0 -314
  220. package/fesm2022/ojiepermana-angular-component-kanban.mjs.map +0 -1
  221. package/fesm2022/ojiepermana-angular-component-kbd.mjs +0 -55
  222. package/fesm2022/ojiepermana-angular-component-kbd.mjs.map +0 -1
  223. package/fesm2022/ojiepermana-angular-component-label.mjs +0 -33
  224. package/fesm2022/ojiepermana-angular-component-label.mjs.map +0 -1
  225. package/fesm2022/ojiepermana-angular-component-menubar.mjs +0 -308
  226. package/fesm2022/ojiepermana-angular-component-menubar.mjs.map +0 -1
  227. package/fesm2022/ojiepermana-angular-component-native-select.mjs +0 -67
  228. package/fesm2022/ojiepermana-angular-component-native-select.mjs.map +0 -1
  229. package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +0 -413
  230. package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs.map +0 -1
  231. package/fesm2022/ojiepermana-angular-component-pagination.mjs +0 -226
  232. package/fesm2022/ojiepermana-angular-component-pagination.mjs.map +0 -1
  233. package/fesm2022/ojiepermana-angular-component-pillbox.mjs +0 -812
  234. package/fesm2022/ojiepermana-angular-component-pillbox.mjs.map +0 -1
  235. package/fesm2022/ojiepermana-angular-component-popover.mjs +0 -169
  236. package/fesm2022/ojiepermana-angular-component-popover.mjs.map +0 -1
  237. package/fesm2022/ojiepermana-angular-component-progress.mjs +0 -60
  238. package/fesm2022/ojiepermana-angular-component-progress.mjs.map +0 -1
  239. package/fesm2022/ojiepermana-angular-component-radio.mjs +0 -122
  240. package/fesm2022/ojiepermana-angular-component-radio.mjs.map +0 -1
  241. package/fesm2022/ojiepermana-angular-component-resizable.mjs +0 -481
  242. package/fesm2022/ojiepermana-angular-component-resizable.mjs.map +0 -1
  243. package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +0 -54
  244. package/fesm2022/ojiepermana-angular-component-scroll-area.mjs.map +0 -1
  245. package/fesm2022/ojiepermana-angular-component-select.mjs +0 -176
  246. package/fesm2022/ojiepermana-angular-component-select.mjs.map +0 -1
  247. package/fesm2022/ojiepermana-angular-component-separator.mjs +0 -37
  248. package/fesm2022/ojiepermana-angular-component-separator.mjs.map +0 -1
  249. package/fesm2022/ojiepermana-angular-component-sheet.mjs +0 -284
  250. package/fesm2022/ojiepermana-angular-component-sheet.mjs.map +0 -1
  251. package/fesm2022/ojiepermana-angular-component-skeleton.mjs +0 -31
  252. package/fesm2022/ojiepermana-angular-component-skeleton.mjs.map +0 -1
  253. package/fesm2022/ojiepermana-angular-component-slider.mjs +0 -423
  254. package/fesm2022/ojiepermana-angular-component-slider.mjs.map +0 -1
  255. package/fesm2022/ojiepermana-angular-component-spinner.mjs +0 -60
  256. package/fesm2022/ojiepermana-angular-component-spinner.mjs.map +0 -1
  257. package/fesm2022/ojiepermana-angular-component-switch.mjs +0 -116
  258. package/fesm2022/ojiepermana-angular-component-switch.mjs.map +0 -1
  259. package/fesm2022/ojiepermana-angular-component-table.mjs +0 -155
  260. package/fesm2022/ojiepermana-angular-component-table.mjs.map +0 -1
  261. package/fesm2022/ojiepermana-angular-component-tabs.mjs +0 -272
  262. package/fesm2022/ojiepermana-angular-component-tabs.mjs.map +0 -1
  263. package/fesm2022/ojiepermana-angular-component-textarea.mjs +0 -39
  264. package/fesm2022/ojiepermana-angular-component-textarea.mjs.map +0 -1
  265. package/fesm2022/ojiepermana-angular-component-timeline.mjs +0 -237
  266. package/fesm2022/ojiepermana-angular-component-timeline.mjs.map +0 -1
  267. package/fesm2022/ojiepermana-angular-component-toast.mjs +0 -71
  268. package/fesm2022/ojiepermana-angular-component-toast.mjs.map +0 -1
  269. package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +0 -289
  270. package/fesm2022/ojiepermana-angular-component-toggle-group.mjs.map +0 -1
  271. package/fesm2022/ojiepermana-angular-component-toggle.mjs +0 -82
  272. package/fesm2022/ojiepermana-angular-component-toggle.mjs.map +0 -1
  273. package/fesm2022/ojiepermana-angular-component-tooltip.mjs +0 -354
  274. package/fesm2022/ojiepermana-angular-component-tooltip.mjs.map +0 -1
  275. package/fesm2022/ojiepermana-angular-component-utils.mjs +0 -13
  276. package/fesm2022/ojiepermana-angular-component-utils.mjs.map +0 -1
  277. package/fesm2022/ojiepermana-angular-generator-api.mjs +0 -68
  278. package/fesm2022/ojiepermana-angular-generator-api.mjs.map +0 -1
  279. package/fesm2022/ojiepermana-angular-layout-component.mjs +0 -602
  280. package/fesm2022/ojiepermana-angular-layout-component.mjs.map +0 -1
  281. package/fesm2022/ojiepermana-angular-layout-provider.mjs +0 -21
  282. package/fesm2022/ojiepermana-angular-layout-provider.mjs.map +0 -1
  283. package/fesm2022/ojiepermana-angular-layout-services.mjs +0 -116
  284. package/fesm2022/ojiepermana-angular-layout-services.mjs.map +0 -1
  285. package/fesm2022/ojiepermana-angular-layout-shell.mjs +0 -48
  286. package/fesm2022/ojiepermana-angular-layout-shell.mjs.map +0 -1
  287. package/fesm2022/ojiepermana-angular-layout-token-directive.mjs +0 -30
  288. package/fesm2022/ojiepermana-angular-layout-token-directive.mjs.map +0 -1
  289. package/fesm2022/ojiepermana-angular-layout-token.mjs +0 -33
  290. package/fesm2022/ojiepermana-angular-layout-token.mjs.map +0 -1
  291. package/fesm2022/ojiepermana-angular-layout-type-empty.mjs +0 -49
  292. package/fesm2022/ojiepermana-angular-layout-type-empty.mjs.map +0 -1
  293. package/fesm2022/ojiepermana-angular-layout-type-horizontal.mjs +0 -128
  294. package/fesm2022/ojiepermana-angular-layout-type-horizontal.mjs.map +0 -1
  295. package/fesm2022/ojiepermana-angular-layout-type-vertical.mjs +0 -123
  296. package/fesm2022/ojiepermana-angular-layout-type-vertical.mjs.map +0 -1
  297. package/fesm2022/ojiepermana-angular-layout.mjs +0 -485
  298. package/fesm2022/ojiepermana-angular-layout.mjs.map +0 -1
  299. package/fesm2022/ojiepermana-angular-navigation-demo-data.mjs +0 -334
  300. package/fesm2022/ojiepermana-angular-navigation-demo-data.mjs.map +0 -1
  301. package/fesm2022/ojiepermana-angular-navigation-icon.mjs +0 -63
  302. package/fesm2022/ojiepermana-angular-navigation-icon.mjs.map +0 -1
  303. package/fesm2022/ojiepermana-angular-navigation-item.mjs +0 -559
  304. package/fesm2022/ojiepermana-angular-navigation-item.mjs.map +0 -1
  305. package/fesm2022/ojiepermana-angular-navigation-service.mjs +0 -213
  306. package/fesm2022/ojiepermana-angular-navigation-service.mjs.map +0 -1
  307. package/fesm2022/ojiepermana-angular-navigation-sidebar.mjs +0 -401
  308. package/fesm2022/ojiepermana-angular-navigation-sidebar.mjs.map +0 -1
  309. package/fesm2022/ojiepermana-angular-navigation-topbar.mjs +0 -670
  310. package/fesm2022/ojiepermana-angular-navigation-topbar.mjs.map +0 -1
  311. package/fesm2022/ojiepermana-angular-navigation-types.mjs +0 -4
  312. package/fesm2022/ojiepermana-angular-navigation-types.mjs.map +0 -1
  313. package/fesm2022/ojiepermana-angular-theme-provider.mjs +0 -35
  314. package/fesm2022/ojiepermana-angular-theme-provider.mjs.map +0 -1
  315. package/fesm2022/ojiepermana-angular-theme-services.mjs +0 -294
  316. package/fesm2022/ojiepermana-angular-theme-services.mjs.map +0 -1
  317. package/fesm2022/ojiepermana-angular-theme-token.mjs +0 -56
  318. package/fesm2022/ojiepermana-angular-theme-token.mjs.map +0 -1
  319. package/fesm2022/ojiepermana-angular-theme.mjs.map +0 -1
  320. package/fesm2022/ojiepermana-angular.mjs.map +0 -1
  321. package/generator/api/README.md +0 -252
  322. package/generator/api/bin/package.json +0 -3
  323. package/generator/api/bin/schematics/init/index.js +0 -90
  324. package/generator/api/bin/schematics/ng-add/index.js +0 -131
  325. package/generator/api/bin/schematics/sdk/index.js +0 -76
  326. package/generator/api/bin/src/config/loader.js +0 -41
  327. package/generator/api/bin/src/config/schema.js +0 -57
  328. package/generator/api/bin/src/emit/client.js +0 -248
  329. package/generator/api/bin/src/emit/metadata.js +0 -295
  330. package/generator/api/bin/src/emit/models.js +0 -106
  331. package/generator/api/bin/src/emit/navigation.js +0 -56
  332. package/generator/api/bin/src/emit/operations.js +0 -122
  333. package/generator/api/bin/src/emit/public-api.js +0 -54
  334. package/generator/api/bin/src/emit/services.js +0 -87
  335. package/generator/api/bin/src/engine.js +0 -65
  336. package/generator/api/bin/src/layout/per-domain.js +0 -359
  337. package/generator/api/bin/src/parser/bundle.js +0 -25
  338. package/generator/api/bin/src/parser/ir.js +0 -320
  339. package/generator/api/bin/src/parser/types.js +0 -7
  340. package/generator/api/bin/src/render/template.js +0 -58
  341. package/generator/api/bin/src/writer/index.js +0 -278
  342. package/generator/api/package.json +0 -4
  343. package/generator/api/schematics/init/schema.json +0 -19
  344. package/generator/api/schematics/ng-add/schema.json +0 -14
  345. package/generator/api/schematics/sdk/schema.json +0 -19
  346. package/generator/api/sdk.config.example.json +0 -24
  347. package/generator/guide/README.md +0 -84
  348. package/generator/guide/bin/package.json +0 -3
  349. package/generator/guide/bin/schematics/build/index.js +0 -36
  350. package/generator/guide/bin/schematics/init/index.js +0 -70
  351. package/generator/guide/bin/src/config/loader.js +0 -50
  352. package/generator/guide/bin/src/config/schema.js +0 -12
  353. package/generator/guide/bin/src/engine/component.js +0 -74
  354. package/generator/guide/bin/src/engine/frontmatter.js +0 -42
  355. package/generator/guide/bin/src/engine/index.js +0 -42
  356. package/generator/guide/bin/src/engine/naming.js +0 -39
  357. package/generator/guide/bin/src/engine/render.js +0 -36
  358. package/generator/guide/bin/src/engine/routes.js +0 -106
  359. package/generator/guide/bin/src/engine/walk.js +0 -35
  360. package/generator/guide/guide.config.example.json +0 -9
  361. package/generator/guide/schematics/build/schema.json +0 -14
  362. package/generator/guide/schematics/init/schema.json +0 -19
  363. package/layout/component/package.json +0 -4
  364. package/layout/package.json +0 -4
  365. package/layout/provider/package.json +0 -4
  366. package/layout/services/package.json +0 -4
  367. package/layout/shell/package.json +0 -4
  368. package/layout/token/directive/package.json +0 -4
  369. package/layout/token/package.json +0 -4
  370. package/layout/type/empty/package.json +0 -4
  371. package/layout/type/horizontal/package.json +0 -4
  372. package/layout/type/vertical/package.json +0 -4
  373. package/navigation/demo-data/package.json +0 -4
  374. package/navigation/icon/package.json +0 -4
  375. package/navigation/item/package.json +0 -4
  376. package/navigation/service/package.json +0 -4
  377. package/navigation/sidebar/package.json +0 -4
  378. package/navigation/topbar/README.md +0 -196
  379. package/navigation/topbar/package.json +0 -4
  380. package/navigation/types/package.json +0 -4
  381. package/theme/README.md +0 -174
  382. package/theme/package.json +0 -4
  383. package/theme/provider/package.json +0 -4
  384. package/theme/services/package.json +0 -4
  385. package/theme/styles/foundation/components.css +0 -81
  386. package/theme/styles/foundation/layers.css +0 -15
  387. package/theme/styles/foundation/tokens.css +0 -55
  388. package/theme/styles/index.css +0 -37
  389. package/theme/styles/integrations/material/autocomplete.css +0 -178
  390. package/theme/styles/integrations/material/button.css +0 -468
  391. package/theme/styles/integrations/material/dialog.css +0 -152
  392. package/theme/styles/integrations/material/select.css +0 -175
  393. package/theme/styles/integrations/material/slide-toggle.css +0 -234
  394. package/theme/styles/integrations/material/slider.css +0 -194
  395. package/theme/styles/integrations/material/tabs.css +0 -229
  396. package/theme/styles/integrations/material.css +0 -264
  397. package/theme/styles/integrations/tailwind.css +0 -114
  398. package/theme/styles/variants/color/amber.css +0 -31
  399. package/theme/styles/variants/color/base.css +0 -36
  400. package/theme/styles/variants/color/blue.css +0 -31
  401. package/theme/styles/variants/color/cyan.css +0 -31
  402. package/theme/styles/variants/color/emerald.css +0 -31
  403. package/theme/styles/variants/color/fuchsia.css +0 -31
  404. package/theme/styles/variants/color/green.css +0 -31
  405. package/theme/styles/variants/color/index.css +0 -22
  406. package/theme/styles/variants/color/indigo.css +0 -31
  407. package/theme/styles/variants/color/lime.css +0 -31
  408. package/theme/styles/variants/color/orange.css +0 -31
  409. package/theme/styles/variants/color/pink.css +0 -31
  410. package/theme/styles/variants/color/purple.css +0 -31
  411. package/theme/styles/variants/color/red.css +0 -31
  412. package/theme/styles/variants/color/rose.css +0 -31
  413. package/theme/styles/variants/color/sky.css +0 -31
  414. package/theme/styles/variants/color/teal.css +0 -31
  415. package/theme/styles/variants/color/violet.css +0 -31
  416. package/theme/styles/variants/color/yellow.css +0 -31
  417. package/theme/styles/variants/mode/dark.css +0 -20
  418. package/theme/styles/variants/mode/index.css +0 -6
  419. package/theme/styles/variants/mode/light.css +0 -24
  420. package/theme/styles/variants/style/brutal.css +0 -50
  421. package/theme/styles/variants/style/default.css +0 -54
  422. package/theme/styles/variants/style/index.css +0 -8
  423. package/theme/styles/variants/style/sharp.css +0 -50
  424. package/theme/styles/variants/style/soft.css +0 -50
  425. package/theme/token/package.json +0 -4
  426. package/types/ojiepermana-angular-component-accordion.d.ts +0 -51
  427. package/types/ojiepermana-angular-component-alert-dialog.d.ts +0 -93
  428. package/types/ojiepermana-angular-component-alert.d.ts +0 -37
  429. package/types/ojiepermana-angular-component-aspect-ratio.d.ts +0 -12
  430. package/types/ojiepermana-angular-component-avatar.d.ts +0 -51
  431. package/types/ojiepermana-angular-component-badge.d.ts +0 -19
  432. package/types/ojiepermana-angular-component-breadcrumb.d.ts +0 -46
  433. package/types/ojiepermana-angular-component-button-group.d.ts +0 -26
  434. package/types/ojiepermana-angular-component-button.d.ts +0 -22
  435. package/types/ojiepermana-angular-component-calendar.d.ts +0 -33
  436. package/types/ojiepermana-angular-component-card.d.ts +0 -60
  437. package/types/ojiepermana-angular-component-carousel.d.ts +0 -86
  438. package/types/ojiepermana-angular-component-chart-area.d.ts +0 -1
  439. package/types/ojiepermana-angular-component-chart-bar.d.ts +0 -1
  440. package/types/ojiepermana-angular-component-chart-line.d.ts +0 -1
  441. package/types/ojiepermana-angular-component-chart-pie.d.ts +0 -1
  442. package/types/ojiepermana-angular-component-chart-radar.d.ts +0 -1
  443. package/types/ojiepermana-angular-component-chart-radial.d.ts +0 -1
  444. package/types/ojiepermana-angular-component-chart-scatter.d.ts +0 -1
  445. package/types/ojiepermana-angular-component-chart.d.ts +0 -1094
  446. package/types/ojiepermana-angular-component-checkbox.d.ts +0 -35
  447. package/types/ojiepermana-angular-component-collapsible.d.ts +0 -42
  448. package/types/ojiepermana-angular-component-combobox.d.ts +0 -50
  449. package/types/ojiepermana-angular-component-command.d.ts +0 -99
  450. package/types/ojiepermana-angular-component-composer.d.ts +0 -90
  451. package/types/ojiepermana-angular-component-context-menu.d.ts +0 -35
  452. package/types/ojiepermana-angular-component-date-picker.d.ts +0 -41
  453. package/types/ojiepermana-angular-component-dialog.d.ts +0 -87
  454. package/types/ojiepermana-angular-component-drawer.d.ts +0 -1
  455. package/types/ojiepermana-angular-component-dropdown-menu.d.ts +0 -137
  456. package/types/ojiepermana-angular-component-editor.d.ts +0 -123
  457. package/types/ojiepermana-angular-component-empty.d.ts +0 -50
  458. package/types/ojiepermana-angular-component-form.d.ts +0 -141
  459. package/types/ojiepermana-angular-component-hover-card.d.ts +0 -74
  460. package/types/ojiepermana-angular-component-input-group.d.ts +0 -51
  461. package/types/ojiepermana-angular-component-input-otp.d.ts +0 -136
  462. package/types/ojiepermana-angular-component-input.d.ts +0 -16
  463. package/types/ojiepermana-angular-component-item.d.ts +0 -88
  464. package/types/ojiepermana-angular-component-kanban.d.ts +0 -70
  465. package/types/ojiepermana-angular-component-kbd.d.ts +0 -16
  466. package/types/ojiepermana-angular-component-label.d.ts +0 -11
  467. package/types/ojiepermana-angular-component-menubar.d.ts +0 -67
  468. package/types/ojiepermana-angular-component-native-select.d.ts +0 -26
  469. package/types/ojiepermana-angular-component-navigation-menu.d.ts +0 -96
  470. package/types/ojiepermana-angular-component-pagination.d.ts +0 -33
  471. package/types/ojiepermana-angular-component-pillbox.d.ts +0 -157
  472. package/types/ojiepermana-angular-component-popover.d.ts +0 -43
  473. package/types/ojiepermana-angular-component-progress.d.ts +0 -17
  474. package/types/ojiepermana-angular-component-radio.d.ts +0 -40
  475. package/types/ojiepermana-angular-component-resizable.d.ts +0 -99
  476. package/types/ojiepermana-angular-component-scroll-area.d.ts +0 -19
  477. package/types/ojiepermana-angular-component-select.d.ts +0 -57
  478. package/types/ojiepermana-angular-component-separator.d.ts +0 -14
  479. package/types/ojiepermana-angular-component-sheet.d.ts +0 -76
  480. package/types/ojiepermana-angular-component-skeleton.d.ts +0 -10
  481. package/types/ojiepermana-angular-component-slider.d.ts +0 -74
  482. package/types/ojiepermana-angular-component-spinner.d.ts +0 -13
  483. package/types/ojiepermana-angular-component-switch.d.ts +0 -40
  484. package/types/ojiepermana-angular-component-table.d.ts +0 -52
  485. package/types/ojiepermana-angular-component-tabs.d.ts +0 -92
  486. package/types/ojiepermana-angular-component-textarea.d.ts +0 -12
  487. package/types/ojiepermana-angular-component-timeline.d.ts +0 -63
  488. package/types/ojiepermana-angular-component-toast.d.ts +0 -38
  489. package/types/ojiepermana-angular-component-toggle-group.d.ts +0 -89
  490. package/types/ojiepermana-angular-component-toggle.d.ts +0 -25
  491. package/types/ojiepermana-angular-component-tooltip.d.ts +0 -89
  492. package/types/ojiepermana-angular-component-utils.d.ts +0 -5
  493. package/types/ojiepermana-angular-generator-api.d.ts +0 -86
  494. package/types/ojiepermana-angular-layout-component.d.ts +0 -205
  495. package/types/ojiepermana-angular-layout-provider.d.ts +0 -6
  496. package/types/ojiepermana-angular-layout-services.d.ts +0 -25
  497. package/types/ojiepermana-angular-layout-shell.d.ts +0 -8
  498. package/types/ojiepermana-angular-layout-token-directive.d.ts +0 -13
  499. package/types/ojiepermana-angular-layout-token.d.ts +0 -36
  500. package/types/ojiepermana-angular-layout-type-empty.d.ts +0 -22
  501. package/types/ojiepermana-angular-layout-type-horizontal.d.ts +0 -36
  502. package/types/ojiepermana-angular-layout-type-vertical.d.ts +0 -38
  503. package/types/ojiepermana-angular-layout.d.ts +0 -164
  504. package/types/ojiepermana-angular-navigation-demo-data.d.ts +0 -5
  505. package/types/ojiepermana-angular-navigation-icon.d.ts +0 -17
  506. package/types/ojiepermana-angular-navigation-item.d.ts +0 -54
  507. package/types/ojiepermana-angular-navigation-service.d.ts +0 -77
  508. package/types/ojiepermana-angular-navigation-sidebar.d.ts +0 -75
  509. package/types/ojiepermana-angular-navigation-topbar.d.ts +0 -74
  510. package/types/ojiepermana-angular-navigation-types.d.ts +0 -135
  511. package/types/ojiepermana-angular-theme-provider.d.ts +0 -11
  512. package/types/ojiepermana-angular-theme-services.d.ts +0 -55
  513. package/types/ojiepermana-angular-theme-token.d.ts +0 -57
@@ -1,139 +0,0 @@
1
- # Button
2
-
3
- Displays a native button or anchor that looks like a shadcn-style button, translated to Angular attribute selectors and standalone imports.
4
-
5
- Use Button for primary actions, secondary actions, icon-only controls, and semantic links that should share the same visual language.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import { ButtonComponent } from '@ojiepermana/angular/component/button';
11
- ```
12
-
13
- ## Usage
14
-
15
- ```html
16
- <button ui-button type="button" variant="default">Save</button>
17
- <button ui-button variant="outline" size="sm">Cancel</button>
18
- <a ui-button variant="link" href="/learn-more">Learn more</a>
19
- ```
20
-
21
- Choose the correct native host for the job: `<button>` for actions and `<a>` for navigation.
22
-
23
- ## Common patterns
24
-
25
- ### Variants
26
-
27
- Use `variant` for emphasis: `default`, `secondary`, `destructive`, `outline`, `ghost`, or `link`.
28
-
29
- ```html
30
- <button ui-button variant="default">Save</button>
31
- <button ui-button variant="secondary">Duplicate</button>
32
- <button ui-button variant="destructive">Delete</button>
33
- <button ui-button variant="outline">Outline</button>
34
- <button ui-button variant="ghost">Ghost</button>
35
- <a ui-button variant="link" href="/learn-more">Learn more</a>
36
- ```
37
-
38
- ### Sizes
39
-
40
- Use `size` for compact or icon-only controls: `xs`, `sm`, `default`, `lg`, `icon-xs`, `icon-sm`, `icon`, `icon-lg`.
41
-
42
- ```html
43
- <button ui-button size="xs" variant="outline">Extra small</button>
44
- <button ui-button size="sm" variant="outline">Small</button>
45
- <button ui-button size="default" variant="outline">Default</button>
46
- <button ui-button size="lg" variant="outline">Large</button>
47
- <button ui-button size="icon-xs" variant="outline" aria-label="Extra small icon button">+</button>
48
- <button ui-button size="icon-sm" variant="outline" aria-label="Small icon button">+</button>
49
- <button ui-button size="icon" variant="outline" aria-label="Default icon button">+</button>
50
- <button ui-button size="icon-lg" variant="outline" aria-label="Large icon button">+</button>
51
- ```
52
-
53
- ### Rounded buttons
54
-
55
- Pass `class="rounded-full"` when you want a pill or circular button without changing the base API.
56
-
57
- ```html
58
- <button ui-button variant="outline" class="rounded-full px-5">Invite teammate</button>
59
- <button ui-button variant="outline" size="icon" class="rounded-full" aria-label="Scroll to top">
60
- <svg aria-hidden="true" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.5">
61
- <path d="m12 19 0-14" />
62
- <path d="m5 12 7-7 7 7" />
63
- </svg>
64
- </button>
65
- ```
66
-
67
- ### Loading and disabled states
68
-
69
- Project a spinner element into the button and set `disabled` while async work is pending.
70
-
71
- ```html
72
- <button ui-button variant="outline" disabled>
73
- <span
74
- aria-hidden="true"
75
- class="inline-block h-3.5 w-3.5 animate-spin rounded-full border-2 border-current border-t-transparent"></span>
76
- Generating
77
- </button>
78
- ```
79
-
80
- ### Semantic host mapping
81
-
82
- React's `asChild` pattern maps to choosing the right native host directly in Angular templates.
83
-
84
- ```html
85
- <button ui-button type="button">Save changes</button> <a ui-button href="/account" variant="link">Go to account</a>
86
- ```
87
-
88
- ## API reference
89
-
90
- | Input | Type | Default |
91
- | --------- | ------------------------------------------------------------------------------------ | ----------- |
92
- | `variant` | `'default' \| 'secondary' \| 'destructive' \| 'outline' \| 'ghost' \| 'link'` | `'default'` |
93
- | `size` | `'xs' \| 'sm' \| 'default' \| 'lg' \| 'icon-xs' \| 'icon-sm' \| 'icon' \| 'icon-lg'` | `'default'` |
94
- | `class` | `string` | `''` |
95
-
96
- The selected variant + size are also exposed via `data-variant` / `data-size`
97
- attributes on the host for styling overrides.
98
-
99
- Hosts: `button[ui-button]` and `a[ui-button]`.
100
-
101
- Re-exports: `buttonVariants`, `ButtonVariant`, `ButtonSize`.
102
-
103
- ## Styling and theming
104
-
105
- Tokens: `--primary`, `--primary-foreground`, `--secondary`, `--destructive`,
106
- `--border`, `--accent`, `--ring`.
107
-
108
- Every state (hover, focus-visible, active, disabled) is covered by the variants.
109
- Focus-visible uses a 2px `ring-ring` outline for keyboard users.
110
-
111
- Pass `class` to layer width, shape, and spacing overrides such as `rounded-full`, `w-full`, or responsive layout utilities.
112
-
113
- The local primitive already opts into `cursor-pointer` for interactive hosts, so you do not need an extra Tailwind base-layer override to restore button cursors.
114
-
115
- ## Accessibility
116
-
117
- Attribute selectors force you to pick a real semantic element:
118
-
119
- - Use `<button ui-button>` for actions that don't navigate.
120
- - Use `<a ui-button href="…">` for navigation.
121
- - Add an `aria-label` to icon-only buttons.
122
- - Use `type="button"` inside forms unless the button should submit.
123
-
124
- Avoid faking buttons with `<div>` — keyboard and screen-reader support depend on
125
- the native element.
126
-
127
- ## Keyboard interactions
128
-
129
- - Native buttons support Tab, Enter, and Space automatically.
130
- - Anchors with `href` participate in normal link focus and Enter activation.
131
-
132
- ## Angular notes
133
-
134
- - Import `ButtonComponent` into the standalone component that renders the host element.
135
- - There is no Angular `asChild` input; pick the semantic host element directly.
136
-
137
- ## Source parity
138
-
139
- This Angular version follows the shadcn Button information architecture while translating examples to native hosts, standalone imports, and Angular-friendly template patterns.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-button.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-button.d.ts"
4
- }
@@ -1,208 +0,0 @@
1
- # Button Group
2
-
3
- Groups related action buttons, text pills, inputs, and nested control clusters into a single visual control boundary.
4
-
5
- Use Button Group for toolbars, split actions, search bars, and compact action clusters where neighboring controls should read as one control family rather than isolated buttons.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import { ButtonComponent } from '@ojiepermana/angular/component/button';
11
- import {
12
- ButtonGroupComponent,
13
- ButtonGroupSeparatorComponent,
14
- ButtonGroupTextComponent,
15
- } from '@ojiepermana/angular/component/button-group';
16
- import { InputComponent } from '@ojiepermana/angular/component/input';
17
- import {
18
- InputGroupAddonComponent,
19
- InputGroupComponent,
20
- InputGroupInputComponent,
21
- InputGroupTextComponent,
22
- } from '@ojiepermana/angular/component/input-group';
23
- ```
24
-
25
- ## Composition
26
-
27
- The Angular structure mirrors the shadcn composition while translating `asChild` to normal Angular content projection.
28
-
29
- ```text
30
- ui-button-group
31
- ├── button[ui-button] or a[ui-button]
32
- ├── input[ui-input] or textarea[ui-textarea]
33
- ├── ui-button-group-text
34
- ├── ui-button-group-separator
35
- └── ui-button-group
36
- ```
37
-
38
- ## Basic usage
39
-
40
- Label the group with `aria-label` or `aria-labelledby` whenever the buttons act as a single tool cluster.
41
-
42
- ```html
43
- <ui-button-group aria-label="Search actions" class="w-full max-w-md">
44
- <input ui-input placeholder="Search..." />
45
- <button ui-button type="button" variant="outline" aria-label="Run search">Search</button>
46
- </ui-button-group>
47
- ```
48
-
49
- ## Common patterns
50
-
51
- ### Orientation
52
-
53
- Use `orientation="vertical"` when the group should stack actions instead of lining them up horizontally.
54
-
55
- ```html
56
- <ui-button-group orientation="vertical" aria-label="Zoom controls" class="h-fit">
57
- <button ui-button type="button" variant="outline" size="icon">+</button>
58
- <button ui-button type="button" variant="outline" size="icon">-</button>
59
- </ui-button-group>
60
- ```
61
-
62
- ### Text and field pairing
63
-
64
- `ui-button-group-text` is the Angular translation of shadcn's `ButtonGroupText`. Project any semantic content inside it, including a native label.
65
-
66
- ```html
67
- <ui-button-group class="w-full max-w-lg">
68
- <ui-button-group-text>
69
- <label for="project-name">Project</label>
70
- </ui-button-group-text>
71
- <input ui-input id="project-name" placeholder="Type a name..." />
72
- </ui-button-group>
73
- ```
74
-
75
- ### Separator
76
-
77
- Use `ui-button-group-separator` when filled or secondary buttons still need a visible division.
78
-
79
- ```html
80
- <ui-button-group aria-label="Clipboard actions">
81
- <button ui-button type="button" variant="secondary" size="sm">Copy</button>
82
- <ui-button-group-separator />
83
- <button ui-button type="button" variant="secondary" size="sm">Paste</button>
84
- </ui-button-group>
85
- ```
86
-
87
- ### Split action
88
-
89
- Split buttons are just two neighboring buttons with a separator between the primary action and the disclosure or icon action.
90
-
91
- ```html
92
- <ui-button-group aria-label="Create actions">
93
- <button ui-button type="button" variant="secondary">Create</button>
94
- <ui-button-group-separator />
95
- <button ui-button type="button" variant="secondary" size="icon" aria-label="Open create menu">+</button>
96
- </ui-button-group>
97
- ```
98
-
99
- ### Search input
100
-
101
- Button Group works directly with the local `ui-input` primitive because both controls own their border on the host element.
102
-
103
- ```html
104
- <ui-button-group aria-label="Repository search" class="w-full max-w-lg">
105
- <input ui-input placeholder="Search repositories..." />
106
- <button ui-button type="button" variant="outline" aria-label="Search">Search</button>
107
- </ui-button-group>
108
- ```
109
-
110
- ### Nested groups
111
-
112
- Nest `ui-button-group` when you want separate clusters with spacing between them while keeping each inner cluster visually fused.
113
-
114
- ```html
115
- <ui-button-group aria-label="Message composer" class="w-full max-w-xl">
116
- <ui-button-group>
117
- <button ui-button type="button" variant="outline" size="icon" aria-label="Add attachment">+</button>
118
- </ui-button-group>
119
-
120
- <ui-button-group class="min-w-0 flex-1">
121
- <ui-input-group>
122
- <input ui-input-group-input placeholder="Send a message..." />
123
- <ui-input-group-addon align="inline-end">
124
- <ui-input-group-text>⌘↵</ui-input-group-text>
125
- </ui-input-group-addon>
126
- </ui-input-group>
127
- </ui-button-group>
128
- </ui-button-group>
129
- ```
130
-
131
- ### Popover companion
132
-
133
- Use a neighboring popover trigger when the primary button opens a short follow-up form or assistant prompt.
134
-
135
- ```html
136
- <ui-button-group aria-label="Copilot actions">
137
- <button ui-button type="button" variant="outline">Copilot</button>
138
- <button ui-button type="button" variant="outline" size="icon" aria-label="Open Copilot options">⋯</button>
139
- </ui-button-group>
140
- ```
141
-
142
- ## API reference
143
-
144
- ### `ButtonGroupComponent`
145
-
146
- | Input | Type | Default |
147
- | ------------- | ---------------------------- | -------------- |
148
- | `orientation` | `'horizontal' \| 'vertical'` | `'horizontal'` |
149
- | `class` | `string` | `''` |
150
-
151
- Host behavior:
152
-
153
- - Renders `role="group"`.
154
- - Adds `data-orientation` and `data-slot="button-group"`.
155
- - Collapses adjoining corner radius and internal border width with RTL-safe logical properties.
156
-
157
- ### `ButtonGroupSeparatorComponent`
158
-
159
- | Input | Type | Default |
160
- | ------------- | ---------------------------- | ------------ |
161
- | `orientation` | `'horizontal' \| 'vertical'` | `'vertical'` |
162
- | `class` | `string` | `''` |
163
-
164
- ### `ButtonGroupTextComponent`
165
-
166
- | Input | Type | Default |
167
- | ------- | -------- | ------- |
168
- | `class` | `string` | `''` |
169
-
170
- Angular mapping note: there is no `asChild` input. Project the semantic element you need, such as `<label>` or `<span>`, inside `ui-button-group-text`.
171
-
172
- ## Styling and theming
173
-
174
- - The root collapses adjacent corners and borders with logical start/end utilities so the same component works in LTR and RTL layouts.
175
- - Nested `ui-button-group` children automatically create spacing between groups while preserving the fused inner boundaries of each nested group.
176
- - `ui-button-group-text` uses `border-border`, `bg-muted`, and shared radius tokens so it matches the rest of the component package.
177
- - `ui-input` and `ui-input-group` compose cleanly inside Button Group because their border and radius live on the visible host. The current Material-backed `ui-select` does not expose the same host-level border contract yet, so the upstream Select example is intentionally not shipped as a parity demo.
178
-
179
- ## Accessibility
180
-
181
- - `ui-button-group` renders with `role="group"`; provide an accessible name with `aria-label` or `aria-labelledby` when the controls act as one tool cluster.
182
- - Button Group is for actions. If the clustered controls represent pressed or selected state, use a toggle-group style pattern instead.
183
- - Add `aria-label` to icon-only buttons inside the group.
184
- - `ui-button-group-text` is non-interactive content. Keep labels, helper text, or status copy inside it and leave action handling to the actual button or input controls.
185
-
186
- ## Keyboard interactions
187
-
188
- - Tab order follows the DOM order of the projected controls.
189
- - Native buttons keep their built-in Enter and Space activation behavior.
190
- - Inputs and textareas keep their native editing behavior.
191
- - Popover and menu triggers inside a group keep the keyboard behavior of their own directives; the group container does not intercept those interactions.
192
-
193
- ## Button Group vs Toggle Group
194
-
195
- - Use Button Group when each item performs an immediate action.
196
- - Use Toggle Group when each item represents persistent pressed, selected, or filter state.
197
-
198
- ## Angular notes
199
-
200
- - Import `ButtonGroupComponent` plus only the child primitives you render on the page.
201
- - There is no React-style `asChild` prop. Angular templates already let you choose the semantic element directly.
202
- - Use nested `ui-button-group` elements for spacing between related clusters rather than adding gap utilities to a single fused group.
203
-
204
- ## Source parity
205
-
206
- This Angular implementation follows the shadcn Button Group surface with a grouped root, text pill, separator, nested-group spacing, dropdown and popover composition, and RTL-friendly border collapsing.
207
-
208
- The main documented deviation is the upstream Select example: the local `ui-select` remains Material-backed, so it is better composed next to the group in surrounding layout for now instead of being presented as a fused host-level group item.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-button-group.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-button-group.d.ts"
4
- }
@@ -1,132 +0,0 @@
1
- # Calendar
2
-
3
- Inline single-date calendar built on Angular Material `MatCalendar` and wrapped with shadcn-style theme tokens.
4
-
5
- Use Calendar when the date grid should stay visible in the page. Use `DatePickerComponent` when the same selection should live behind an input and popover trigger.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import { CalendarComponent } from '@ojiepermana/angular/component/calendar';
11
- ```
12
-
13
- ## Requires a date adapter
14
-
15
- The consumer app must provide an Angular Material date adapter. The demo app uses the native adapter:
16
-
17
- ```ts
18
- // app.config.ts
19
- import { provideNativeDateAdapter } from '@angular/material/core';
20
-
21
- export const appConfig = {
22
- providers: [provideNativeDateAdapter()],
23
- };
24
- ```
25
-
26
- ## Usage
27
-
28
- Bind `[(value)]` to a `Date | null` signal or component field. Use `startAt` when the first visible month should differ from the selected value.
29
-
30
- ```html
31
- <ui-calendar [(value)]="selectedDate" [startAt]="selectedDate()" />
32
- ```
33
-
34
- ```ts
35
- protected readonly selectedDate = signal<Date | null>(new Date(2026, 4, 22));
36
- ```
37
-
38
- ## Common patterns
39
-
40
- ### Constrained range
41
-
42
- Use `min` and `max` to disable dates outside an allowed window.
43
-
44
- ```html
45
- <ui-calendar [(value)]="billingDate" [min]="minDate" [max]="maxDate" [startAt]="billingDate()" />
46
- ```
47
-
48
- ```ts
49
- protected readonly billingDate = signal<Date | null>(new Date(2026, 4, 15));
50
- protected readonly minDate = new Date(2026, 4, 5);
51
- protected readonly maxDate = new Date(2026, 4, 25);
52
- ```
53
-
54
- ### Disabled or booked dates
55
-
56
- Pass a `dateFilter` function. Angular Material expects the function to return `true` for selectable dates and `false` for disabled dates.
57
-
58
- ```html
59
- <ui-calendar [(value)]="visitDate" [dateFilter]="availableDateFilter" [startAt]="visitDate()" />
60
- ```
61
-
62
- ```ts
63
- protected readonly bookedDates = [new Date(2026, 1, 12), new Date(2026, 1, 13)];
64
-
65
- protected readonly availableDateFilter = (candidate: Date | null): boolean =>
66
- !!candidate && !this.bookedDates.some((bookedDate) => this.isSameDay(bookedDate, candidate));
67
- ```
68
-
69
- ### Presets
70
-
71
- Compose preset buttons around the calendar and update the same `value` model.
72
-
73
- ```html
74
- <ui-calendar [(value)]="presetDate" [startAt]="presetDate()" class="border-0" />
75
-
76
- <button ui-button type="button" variant="outline" size="sm" (click)="selectPreset(7)">In a week</button>
77
- ```
78
-
79
- ### Date and time
80
-
81
- Calendar owns the date. Native time inputs or `InputGroupComponent` can own the time value next to it.
82
-
83
- ```html
84
- <ui-calendar [(value)]="meetingDate" [startAt]="meetingDate()" />
85
-
86
- <ui-input-group>
87
- <input ui-input-group-input type="time" [value]="startTime()" (input)="updateStartTime($event)" />
88
- </ui-input-group>
89
- ```
90
-
91
- ## API reference
92
-
93
- | Input / Model | Type | Default |
94
- | ------------- | ----------------------------------- | --------- |
95
- | `value` | `Date \| null` | `null` |
96
- | `min` | `Date \| null` | `null` |
97
- | `max` | `Date \| null` | `null` |
98
- | `startAt` | `Date \| null` | `null` |
99
- | `startView` | `'month' \| 'year' \| 'multi-year'` | `'month'` |
100
- | `dateFilter` | `(date: Date \| null) => boolean` | `null` |
101
- | `disabled` | `boolean` | `false` |
102
- | `class` | `string` | `''` |
103
-
104
- Implements `ControlValueAccessor` — usable with `[(ngModel)]` and reactive forms.
105
-
106
- ## Styling and theming
107
-
108
- The host uses `--border`, `--background`, `--foreground`, and `--radius`. Pass `class` for layout utilities such as `shadow-sm`, `border-0`, or `[--ui-calendar-width:20rem]`.
109
-
110
- The inner Material calendar keeps Angular Material's a11y and navigation behavior while sitting inside the shadcn token wrapper. Use `DatePickerComponent` for popover input flows; this primitive intentionally stays inline.
111
-
112
- ## Accessibility
113
-
114
- `MatCalendar` supplies the ARIA grid semantics, focus management, active date state, and disabled date handling. Provide a visible label or surrounding section heading when the calendar appears in a form-like surface.
115
-
116
- ## Keyboard interactions
117
-
118
- - Arrow keys move between dates.
119
- - Page Up and Page Down move by month.
120
- - Home and End move to the start or end of the row.
121
- - Enter selects the focused date.
122
-
123
- ## Angular notes
124
-
125
- - Provide a date adapter once at app bootstrap.
126
- - `dateFilter` returns `true` for enabled dates, unlike some predicate APIs that return `true` for blocked dates.
127
- - `disabled` marks the host as inert and updates the CVA disabled state.
128
- - This component is a single-date primitive. Range selection is best modeled as a separate range primitive or by composing two calendars with application state.
129
-
130
- ## Source parity
131
-
132
- The shadcn Calendar is built on React DayPicker. This Angular implementation maps the same inline calendar concept to `MatCalendar`, standalone imports, signal-friendly `[(value)]` binding, `min` and `max` constraints, `dateFilter` disabled dates, preset composition, and RTL-friendly container usage.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-calendar.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-calendar.d.ts"
4
- }