@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,210 +0,0 @@
1
- # Form primitives
2
-
3
- The shadcn `Field` family maps to this entrypoint. Use it to compose labels,
4
- descriptions, grouped sections, separators, validation messages, and responsive
5
- field rows around the existing `input`, `textarea`, `select`, `checkbox`,
6
- `radio`, `switch`, and `button` primitives.
7
-
8
- ## Import
9
-
10
- ```ts
11
- import {
12
- FormContentComponent,
13
- FormControlDirective,
14
- FormDescriptionComponent,
15
- FormFieldComponent,
16
- FormFieldsetComponent,
17
- FormGroupComponent,
18
- FormLabelComponent,
19
- FormLegendComponent,
20
- FormMessageComponent,
21
- FormSeparatorComponent,
22
- FormTitleComponent,
23
- } from '@ojiepermana/angular/component/form';
24
- ```
25
-
26
- ## Composition
27
-
28
- Use the primitives in these roles:
29
-
30
- | Upstream concept | Local Angular surface |
31
- | ------------------ | ------------------------------------------------------------------------------------------------------ |
32
- | `Field` | `ui-form-field` |
33
- | `FieldSet` | `fieldset[ui-form-fieldset]` |
34
- | `FieldLegend` | `legend[ui-form-legend]` |
35
- | `FieldGroup` | `ui-form-group` |
36
- | `FieldContent` | `ui-form-content` |
37
- | `FieldLabel` | `label[ui-form-label]` for native controls, `label[ui-label]` wrappers for checkbox/radio/switch cards |
38
- | `FieldTitle` | `ui-form-title` |
39
- | `FieldDescription` | `p[ui-form-description]` |
40
- | `FieldSeparator` | `ui-form-separator` |
41
- | `FieldError` | `p[ui-form-message]` |
42
-
43
- ## Basic Usage
44
-
45
- For native inputs and textareas, pair `label[ui-form-label]` with
46
- `[uiFormControl]` so ids and helper text stay synchronized.
47
-
48
- ```html
49
- <ui-form-field>
50
- <label ui-form-label>Email</label>
51
- <input ui-input uiFormControl type="email" placeholder="you@example.com" />
52
- <p ui-form-description>We'll only use this address for account updates.</p>
53
- <p ui-form-message>Enter a valid email address.</p>
54
- </ui-form-field>
55
- ```
56
-
57
- ## Common Patterns
58
-
59
- ### Grouped sections
60
-
61
- Use semantic fieldsets and legends when several controls belong to the same
62
- question or form section.
63
-
64
- ```html
65
- <fieldset ui-form-fieldset>
66
- <legend ui-form-legend>Address information</legend>
67
- <p ui-form-description>We need your address to deliver your order.</p>
68
-
69
- <ui-form-group>
70
- <ui-form-field>
71
- <label ui-form-label>Street address</label>
72
- <input ui-input uiFormControl placeholder="123 Main St" />
73
- </ui-form-field>
74
-
75
- <div class="grid gap-4 sm:grid-cols-2">
76
- <ui-form-field>
77
- <label ui-form-label>City</label>
78
- <input ui-input uiFormControl placeholder="New York" />
79
- </ui-form-field>
80
-
81
- <ui-form-field>
82
- <label ui-form-label>Postal code</label>
83
- <input ui-input uiFormControl placeholder="10001" />
84
- </ui-form-field>
85
- </div>
86
- </ui-form-group>
87
- </fieldset>
88
- ```
89
-
90
- ### Horizontal checkbox, radio, and switch rows
91
-
92
- For grouped controls, wrap the row in `label[ui-label]` so the entire card can
93
- toggle the control, then use `ui-form-content` for the title and helper copy.
94
-
95
- ```html
96
- <label ui-label class="block rounded-xl border border-border p-4">
97
- <ui-form-field orientation="horizontal" class="gap-4">
98
- <ui-checkbox [(ngModel)]="syncDesktop" aria-label="Sync Desktop and Documents folders" />
99
- <ui-form-content>
100
- <ui-form-title>Sync Desktop & Documents folders</ui-form-title>
101
- <p ui-form-description>Your Desktop & Documents folders are being synced with iCloud Drive.</p>
102
- </ui-form-content>
103
- </ui-form-field>
104
- </label>
105
- ```
106
-
107
- ### Select rows
108
-
109
- Select keeps its own trigger and listbox behavior. Use `ui-form-title` and
110
- `p[ui-form-description]` around it instead of relying on a generated `for`
111
- relationship.
112
-
113
- ```html
114
- <ui-form-field>
115
- <ui-form-title>Department</ui-form-title>
116
- <ui-select aria-label="Department" class="block w-full" placeholder="Choose department">
117
- <ui-option value="engineering">Engineering</ui-option>
118
- <ui-option value="design">Design</ui-option>
119
- <ui-option value="marketing">Marketing</ui-option>
120
- </ui-select>
121
- <p ui-form-description>Select your department or area of work.</p>
122
- </ui-form-field>
123
- ```
124
-
125
- ### Responsive layout
126
-
127
- Set `orientation="responsive"` on `ui-form-field` when the label and content
128
- should stack on narrow widths and move into columns on wider screens.
129
-
130
- ```html
131
- <ui-form-field orientation="responsive">
132
- <ui-form-content>
133
- <label ui-form-label>Display name</label>
134
- <p ui-form-description>Provide the public name shown in comments and invoices.</p>
135
- </ui-form-content>
136
- <input ui-input uiFormControl placeholder="Evil Rabbit" />
137
- </ui-form-field>
138
- ```
139
-
140
- ### Validation and errors
141
-
142
- `[uiFormControl]` will reflect Angular form state automatically. For external
143
- validation flows or static examples, use the `invalid` input on
144
- `ui-form-field`.
145
-
146
- ```html
147
- <ui-form-field invalid>
148
- <label ui-form-label>Email</label>
149
- <input ui-input uiFormControl type="email" aria-invalid="true" placeholder="name@example.com" />
150
- <p ui-form-message>Enter a valid email address.</p>
151
- </ui-form-field>
152
- ```
153
-
154
- ## API Reference
155
-
156
- | Primitive | Selector | Inputs | Notes |
157
- | -------------------------- | --------------------------------------------- | --------------------------------- | -------------------------------------------------------------------------------------- |
158
- | `FormFieldComponent` | `ui-form-field` | `class`, `orientation`, `invalid` | Core field wrapper. `orientation` supports `vertical`, `horizontal`, and `responsive`. |
159
- | `FormFieldsetComponent` | `fieldset[ui-form-fieldset]` | `class` | Semantic fieldset reset with spacing presets. |
160
- | `FormLegendComponent` | `legend[ui-form-legend]` | `class`, `variant` | Uses either standard legend sizing or label-sized copy. |
161
- | `FormGroupComponent` | `ui-form-group` | `class` | Stacks related fields and separators. |
162
- | `FormContentComponent` | `ui-form-content` | `class` | Secondary text column for horizontal fields and card layouts. |
163
- | `FormLabelComponent` | `ui-form-label, label[ui-form-label]` | `class` | Visible label tied to the generated control id inside a field. |
164
- | `FormTitleComponent` | `ui-form-title` | `class` | Non-label heading for grouped controls. |
165
- | `FormDescriptionComponent` | `ui-form-description, p[ui-form-description]` | `class` | Helper text inside a field or at the fieldset level. |
166
- | `FormSeparatorComponent` | `ui-form-separator` | `class` | Divider between stacked sections. |
167
- | `FormMessageComponent` | `ui-form-message, p[ui-form-message]` | `class` | Error text shown when the field is invalid. |
168
- | `FormControlDirective` | `[uiFormControl]` | none | Auto-wires `id`, `aria-describedby`, and invalid state for native controls. |
169
-
170
- ## Styling and Theming
171
-
172
- - Field primitives use the same design tokens as the rest of the library:
173
- `border-border`, `text-foreground`, `text-muted-foreground`, `ring-ring`,
174
- and `text-destructive`.
175
- - Pass `class` to widen or tighten the layout around a specific field.
176
- - `ui-form-separator` uses the border token rather than current text color so
177
- dividers remain consistent across themes.
178
-
179
- ## Accessibility
180
-
181
- - Prefer real `fieldset` and `legend` elements for grouped questions.
182
- - Keep native controls on `[uiFormControl]` when they need synchronized labels,
183
- descriptions, and message ids.
184
- - Use `label[ui-label]` wrappers when the entire checkbox, radio, or switch row
185
- should toggle the control.
186
- - `p[ui-form-message]` emits `role="alert"` and `aria-live="polite"`.
187
-
188
- ## Keyboard Interactions
189
-
190
- - Input and textarea fields preserve browser-native editing behavior.
191
- - Select, checkbox, radio, and switch rows keep the interaction model of their
192
- own entrypoints.
193
- - Field wrappers add structure and semantics but do not create extra tab stops.
194
-
195
- ## Angular Notes
196
-
197
- - `ui-form-label` is best for native controls that participate in
198
- `[uiFormControl]`.
199
- - Use `ui-form-title` when the primary text is descriptive rather than a direct
200
- form label.
201
- - The local `responsive` orientation uses breakpoint-based layout instead of the
202
- upstream container-query API.
203
-
204
- ## Source Parity
205
-
206
- This package is the durable Angular-first mapping for the shadcn `Field`
207
- documentation. It mirrors the same information architecture while staying
208
- honest about local differences: there is no dedicated `field` entrypoint, and
209
- grouped controls continue to use the runtime behavior of the existing input,
210
- textarea, select, checkbox, radio, switch, and button packages.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-form.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-form.d.ts"
4
- }
@@ -1,146 +0,0 @@
1
- # Hover Card
2
-
3
- Preview additional context on hover or keyboard focus without forcing a full click-to-open interaction.
4
-
5
- The Angular hover card follows the shadcn composition model with a root container for shared defaults, a trigger directive on the interactive host, and a template-backed content surface rendered through the CDK overlay.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import {
11
- HoverCardComponent,
12
- HoverCardContentDirective,
13
- HoverCardTriggerDirective,
14
- } from '@your-scope/angular/component/hover-card';
15
- import { ButtonComponent } from '@your-scope/angular/component/button';
16
- ```
17
-
18
- ## Composition
19
-
20
- ```text
21
- ui-hover-card
22
- ├── [uiHoverCardTrigger]
23
- └── ng-template[uiHoverCardContent]
24
- ```
25
-
26
- ## Basic usage
27
-
28
- ```html
29
- <ui-hover-card [openDelay]="100" [closeDelay]="150">
30
- <button ui-button variant="link" [uiHoverCardTrigger]="profileCard">@nextjs</button>
31
-
32
- <ng-template uiHoverCardContent #profileCard="uiHoverCardContent">
33
- <div
34
- class="flex w-72 flex-col gap-1 rounded-lg border border-border bg-popover p-4 text-popover-foreground shadow-md">
35
- <div class="font-semibold">@nextjs</div>
36
- <p class="text-sm text-muted-foreground">The React Framework - created and maintained by @vercel.</p>
37
- <p class="text-xs text-muted-foreground">Joined December 2021</p>
38
- </div>
39
- </ng-template>
40
- </ui-hover-card>
41
- ```
42
-
43
- ## Common patterns
44
-
45
- ### Trigger delays
46
-
47
- Use the root or trigger inputs to control when the preview opens and closes.
48
-
49
- ```html
50
- <ui-hover-card [openDelay]="150" [closeDelay]="200">
51
- <a href="/profiles/vercel" [uiHoverCardTrigger]="card">Hover profile</a>
52
- <ng-template uiHoverCardContent #card="uiHoverCardContent">...</ng-template>
53
- </ui-hover-card>
54
- ```
55
-
56
- ### Positioning
57
-
58
- Set `side`, `align`, and `sideOffset` on the root for shared defaults or override them on an individual trigger.
59
-
60
- ```html
61
- <ui-hover-card side="top" align="start" [sideOffset]="12">
62
- <button ui-button variant="outline" [uiHoverCardTrigger]="card">Top start</button>
63
- <ng-template uiHoverCardContent #card="uiHoverCardContent">...</ng-template>
64
- </ui-hover-card>
65
- ```
66
-
67
- ### Interactive content
68
-
69
- The overlay remains open while either the trigger or the rendered content is hovered or focused, so links and buttons inside the card remain usable.
70
-
71
- ```html
72
- <ui-hover-card>
73
- <a href="/products/headphones" [uiHoverCardTrigger]="productCard">Wireless Headphones</a>
74
- <ng-template uiHoverCardContent #productCard="uiHoverCardContent">
75
- <div
76
- class="flex w-64 flex-col gap-3 rounded-lg border border-border bg-popover p-4 text-popover-foreground shadow-md">
77
- <div>
78
- <div class="font-semibold">Wireless Headphones</div>
79
- <p class="text-sm text-muted-foreground">Noise cancelling with 30-hour battery life.</p>
80
- </div>
81
- <a ui-button href="/products/headphones" size="sm">View product</a>
82
- </div>
83
- </ng-template>
84
- </ui-hover-card>
85
- ```
86
-
87
- ## API reference
88
-
89
- ### `HoverCardComponent`
90
-
91
- | Input | Type | Default |
92
- | ------------ | ---------------------------------------- | ---------- |
93
- | `side` | `'top' \| 'right' \| 'bottom' \| 'left'` | `'bottom'` |
94
- | `align` | `'start' \| 'center' \| 'end'` | `'center'` |
95
- | `sideOffset` | `number` | `8` |
96
- | `openDelay` | `number` | `100` |
97
- | `closeDelay` | `number` | `100` |
98
-
99
- ### `HoverCardTriggerDirective` (`[uiHoverCardTrigger]`)
100
-
101
- | Input | Type | Default |
102
- | -------------------- | ---------------------------------------- | ------------------- |
103
- | `uiHoverCardTrigger` | `HoverCardContentDirective` | - |
104
- | `side` | `'top' \| 'right' \| 'bottom' \| 'left'` | Inherited from root |
105
- | `align` | `'start' \| 'center' \| 'end'` | Inherited from root |
106
- | `sideOffset` | `number` | Inherited from root |
107
- | `openDelay` | `number` | Inherited from root |
108
- | `closeDelay` | `number` | Inherited from root |
109
- | `disabled` | `boolean` | `false` |
110
-
111
- Exposes `isOpen()` and `openedChange`. The host reflects `aria-expanded` and `aria-haspopup="dialog"`.
112
-
113
- ### `HoverCardContentDirective`
114
-
115
- Use `ng-template[uiHoverCardContent]` with `exportAs="uiHoverCardContent"` to provide the overlay body.
116
-
117
- ## Styling and theming
118
-
119
- The hover card does not force a panel shell. Apply width, border, background, radius, and elevation classes inside the projected template so the content can match compact profile cards, product previews, or custom dashboards.
120
-
121
- Use `border-border` for visible borders and `bg-popover text-popover-foreground` for the body shell to stay aligned with the theme tokens used across the library.
122
-
123
- ## Accessibility
124
-
125
- - Open the card from a real interactive host such as `<button>`, `<a>`, or another focusable control.
126
- - The card opens on hover and keyboard focus, then remains available while the trigger or overlay content stays hovered or focused.
127
- - Press `Escape` while the trigger or overlay is focused to dismiss the preview.
128
- - Keep essential actions available outside the hover card as well; hover cards are best for supplemental context, not critical flows.
129
-
130
- ## Keyboard interactions
131
-
132
- - `Tab` moves focus to the trigger and opens the card after the configured `openDelay`.
133
- - `Tab` continues into focusable content inside the overlay without forcing an immediate close.
134
- - `Shift+Tab` back to the trigger keeps the preview open.
135
- - `Escape` closes the preview.
136
-
137
- ## Angular notes
138
-
139
- - The root `ui-hover-card` provides shared defaults. Override placement or timing on an individual trigger only when one example needs different behavior.
140
- - The content stays template-backed instead of adding a dedicated content component so the overlay body can remain fully custom.
141
- - Because the content renders through the CDK overlay container, set `dir` on the projected body when an individual card needs RTL behavior independent of the application shell.
142
- - If you need click-to-open behavior instead of hover and focus, use the Popover primitive instead.
143
-
144
- ## Source parity
145
-
146
- This implementation preserves the shadcn structure, trigger delay inputs, side and alignment controls, and interactive hover path between trigger and content, while adapting the API to Angular selectors and CDK overlay primitives.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-hover-card.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-hover-card.d.ts"
4
- }
@@ -1,159 +0,0 @@
1
- # Input
2
-
3
- Text input for forms and user data entry with shadcn-style visual states and Angular-friendly composition.
4
-
5
- The input itself stays a native `<input>` element. When the current shadcn docs mention `Field`, `FieldLabel`, or
6
- `FieldDescription`, the local Angular mapping is the existing form primitives rather than a separate runtime `Form`
7
- component.
8
-
9
- ## Import
10
-
11
- For the simplest standalone field:
12
-
13
- ```ts
14
- import { InputComponent } from '@ojiepermana/angular/component/input';
15
- import { LabelComponent } from '@ojiepermana/angular/component/label';
16
- ```
17
-
18
- For the richer field composition used throughout the shadcn Input docs:
19
-
20
- ```ts
21
- import {
22
- FormControlDirective,
23
- FormDescriptionComponent,
24
- FormFieldComponent,
25
- FormLabelComponent,
26
- FormMessageComponent,
27
- } from '@ojiepermana/angular/component/form';
28
- import { InputComponent } from '@ojiepermana/angular/component/input';
29
- ```
30
-
31
- ## Usage
32
-
33
- ### Standalone input
34
-
35
- ```html
36
- <label ui-label for="email">Email</label> <input id="email" ui-input type="email" placeholder="you@example.com" />
37
- ```
38
-
39
- ### Field mapping
40
-
41
- Use the local form primitives when you need the label, helper text, and invalid-state wiring shown in the upstream
42
- shadcn examples:
43
-
44
- ```html
45
- <ui-form-field>
46
- <ui-form-label>Email</ui-form-label>
47
- <input ui-input uiFormControl type="email" placeholder="you@example.com" />
48
- <ui-form-description>We'll only use this address for account updates.</ui-form-description>
49
- <ui-form-message>Enter a valid email address.</ui-form-message>
50
- </ui-form-field>
51
- ```
52
-
53
- ## Common Patterns
54
-
55
- ### Reactive forms
56
-
57
- `ui-input` keeps Angular's standard `DefaultValueAccessor`, so reactive forms and `formControlName` work without a
58
- wrapper component.
59
-
60
- ```ts
61
- readonly profileForm = new FormGroup({
62
- email: new FormControl('', {
63
- nonNullable: true,
64
- validators: [Validators.required, Validators.email],
65
- }),
66
- });
67
- ```
68
-
69
- ```html
70
- <ui-form-field>
71
- <ui-form-label>Email</ui-form-label>
72
- <input ui-input uiFormControl formControlName="email" type="email" placeholder="john@example.com" />
73
- <ui-form-description>We'll never share your email with anyone.</ui-form-description>
74
- <ui-form-message>Enter a valid email address.</ui-form-message>
75
- </ui-form-field>
76
- ```
77
-
78
- ### Invalid state without Angular forms
79
-
80
- If the field participates in a validation flow outside Angular forms, forward `aria-invalid="true"` manually.
81
-
82
- ```html
83
- <input ui-input aria-invalid="true" placeholder="Error" />
84
- ```
85
-
86
- ### File input
87
-
88
- The same directive styles file inputs while preserving the browser-native file picker.
89
-
90
- ```html
91
- <ui-form-field>
92
- <ui-form-label>Picture</ui-form-label>
93
- <input ui-input uiFormControl type="file" />
94
- <ui-form-description>Select a picture to upload.</ui-form-description>
95
- </ui-form-field>
96
- ```
97
-
98
- ### Inline actions
99
-
100
- For search bars or quick actions, compose the input with `ui-button` instead of inventing a synthetic group API.
101
-
102
- ```html
103
- <div class="flex max-w-md items-center gap-2">
104
- <input ui-input type="search" placeholder="Search..." class="flex-1" />
105
- <button ui-button type="button">Search</button>
106
- </div>
107
- ```
108
-
109
- ## API Reference
110
-
111
- ### `InputComponent`
112
-
113
- | Input | Type | Default |
114
- | ------- | -------- | ------- |
115
- | `class` | `string` | `''` |
116
-
117
- All native `<input>` attributes such as `type`, `placeholder`, `required`, `disabled`, `autocomplete`, and `value`
118
- continue to work as usual.
119
-
120
- ### Field Mapping
121
-
122
- - `Field` maps to `ui-form-field`.
123
- - `FieldLabel` maps to `ui-form-label`.
124
- - `FieldDescription` maps to `ui-form-description`.
125
- - Invalid and helper-text wiring come from `[uiFormControl]` plus `ui-form-message`.
126
-
127
- ## Styling and Theming
128
-
129
- Theme tokens used by the input styles include `--border`, `--input`, `--foreground`, `--muted-foreground`, `--ring`,
130
- and `--destructive`.
131
-
132
- When `aria-invalid="true"` is present, the border and focus ring switch to the destructive treatment. Pass `class`
133
- for layout utilities such as width, flex growth, or spacing around the native control.
134
-
135
- ## Accessibility
136
-
137
- - Pair every input with a visible label or another accessible name source.
138
- - Use `uiFormControl` inside `ui-form-field` when the control should auto-wire `id`, `aria-describedby`, and invalid
139
- state.
140
- - Keep helper text and validation messages adjacent to the field so screen readers announce the full context.
141
- - Do not remove the focus ring; the component keeps a visible keyboard-only focus treatment.
142
-
143
- ## Keyboard Interactions
144
-
145
- - The component preserves the browser-native keyboard behavior of the underlying input element.
146
- - File, search, email, password, and text variants continue to use the interactions defined by their native type.
147
- - Any adjacent action button, such as a search trigger, remains a separate Tab stop.
148
-
149
- ## Angular Notes
150
-
151
- - `ui-input` is an attribute selector on the native `<input>` element.
152
- - It works with both `ngModel` and reactive forms because Angular still sees the underlying native control.
153
- - `uiFormControl` is optional; use it when the field participates in the local form-primitive composition.
154
-
155
- ## Source Parity
156
-
157
- This Angular implementation follows the current shadcn Input information architecture while translating `Field` to the
158
- local form primitives. Upstream `Input Group` and `Button Group` examples are intentionally left to their own planned
159
- components instead of being faked inside the input API.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-input.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-input.d.ts"
4
- }