@ojiepermana/angular 22.0.1 → 22.0.27

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 (517) hide show
  1. package/README.md +16 -302
  2. package/fesm2022/ojiepermana-angular-chart.mjs +11 -0
  3. package/fesm2022/ojiepermana-angular-chart.mjs.map +1 -0
  4. package/fesm2022/ojiepermana-angular-component.mjs +11 -0
  5. package/fesm2022/ojiepermana-angular-component.mjs.map +1 -0
  6. package/fesm2022/ojiepermana-angular-navigation.mjs +11 -0
  7. package/fesm2022/ojiepermana-angular-navigation.mjs.map +1 -0
  8. package/fesm2022/ojiepermana-angular-sdk.mjs +11 -0
  9. package/fesm2022/ojiepermana-angular-sdk.mjs.map +1 -0
  10. package/fesm2022/ojiepermana-angular-theme.mjs +3 -382
  11. package/fesm2022/ojiepermana-angular-theme.mjs.map +1 -1
  12. package/fesm2022/ojiepermana-angular.mjs +14 -14
  13. package/fesm2022/ojiepermana-angular.mjs.map +1 -1
  14. package/package.json +25 -425
  15. package/types/ojiepermana-angular-chart.d.ts +1 -0
  16. package/types/ojiepermana-angular-component.d.ts +1 -0
  17. package/types/ojiepermana-angular-navigation.d.ts +1 -0
  18. package/types/ojiepermana-angular-sdk.d.ts +1 -0
  19. package/types/ojiepermana-angular-theme.d.ts +1 -116
  20. package/types/ojiepermana-angular.d.ts +5 -3
  21. package/.npmignore +0 -2
  22. package/collection.json +0 -30
  23. package/component/accordion/README.md +0 -195
  24. package/component/accordion/package.json +0 -4
  25. package/component/alert/README.md +0 -182
  26. package/component/alert/package.json +0 -4
  27. package/component/alert-dialog/README.md +0 -239
  28. package/component/alert-dialog/package.json +0 -4
  29. package/component/aspect-ratio/README.md +0 -112
  30. package/component/aspect-ratio/package.json +0 -4
  31. package/component/avatar/README.md +0 -176
  32. package/component/avatar/package.json +0 -4
  33. package/component/badge/README.md +0 -133
  34. package/component/badge/package.json +0 -4
  35. package/component/breadcrumb/README.md +0 -216
  36. package/component/breadcrumb/package.json +0 -4
  37. package/component/button/README.md +0 -139
  38. package/component/button/package.json +0 -4
  39. package/component/button-group/README.md +0 -208
  40. package/component/button-group/package.json +0 -4
  41. package/component/calendar/README.md +0 -132
  42. package/component/calendar/package.json +0 -4
  43. package/component/card/README.md +0 -220
  44. package/component/card/package.json +0 -4
  45. package/component/carousel/README.md +0 -276
  46. package/component/carousel/package.json +0 -4
  47. package/component/chart/README.md +0 -249
  48. package/component/chart/area/package.json +0 -4
  49. package/component/chart/bar/package.json +0 -4
  50. package/component/chart/line/package.json +0 -4
  51. package/component/chart/package.json +0 -4
  52. package/component/chart/pie/package.json +0 -4
  53. package/component/chart/radar/package.json +0 -4
  54. package/component/chart/radial/package.json +0 -4
  55. package/component/chart/scatter/package.json +0 -4
  56. package/component/checkbox/README.md +0 -149
  57. package/component/checkbox/package.json +0 -4
  58. package/component/collapsible/README.md +0 -195
  59. package/component/collapsible/package.json +0 -4
  60. package/component/combobox/README.md +0 -198
  61. package/component/combobox/package.json +0 -4
  62. package/component/command/README.md +0 -275
  63. package/component/command/package.json +0 -4
  64. package/component/composer/README.md +0 -235
  65. package/component/composer/package.json +0 -4
  66. package/component/context-menu/README.md +0 -267
  67. package/component/context-menu/package.json +0 -4
  68. package/component/date-picker/README.md +0 -177
  69. package/component/date-picker/package.json +0 -4
  70. package/component/dialog/README.md +0 -237
  71. package/component/dialog/package.json +0 -4
  72. package/component/drawer/README.md +0 -145
  73. package/component/drawer/package.json +0 -4
  74. package/component/dropdown-menu/README.md +0 -311
  75. package/component/dropdown-menu/package.json +0 -4
  76. package/component/editor/README.md +0 -136
  77. package/component/editor/package.json +0 -4
  78. package/component/empty/README.md +0 -183
  79. package/component/empty/package.json +0 -4
  80. package/component/form/README.md +0 -210
  81. package/component/form/package.json +0 -4
  82. package/component/hover-card/README.md +0 -146
  83. package/component/hover-card/package.json +0 -4
  84. package/component/input/README.md +0 -159
  85. package/component/input/package.json +0 -4
  86. package/component/input-group/README.md +0 -239
  87. package/component/input-group/package.json +0 -4
  88. package/component/input-otp/README.md +0 -278
  89. package/component/input-otp/package.json +0 -4
  90. package/component/item/README.md +0 -247
  91. package/component/item/package.json +0 -4
  92. package/component/kanban/README.md +0 -81
  93. package/component/kanban/package.json +0 -4
  94. package/component/kbd/README.md +0 -139
  95. package/component/kbd/package.json +0 -4
  96. package/component/label/README.md +0 -136
  97. package/component/label/package.json +0 -4
  98. package/component/menubar/README.md +0 -269
  99. package/component/menubar/package.json +0 -4
  100. package/component/native-select/README.md +0 -176
  101. package/component/native-select/package.json +0 -4
  102. package/component/navigation-menu/README.md +0 -160
  103. package/component/navigation-menu/package.json +0 -4
  104. package/component/pagination/README.md +0 -144
  105. package/component/pagination/package.json +0 -4
  106. package/component/pillbox/README.md +0 -67
  107. package/component/pillbox/package.json +0 -4
  108. package/component/popover/README.md +0 -43
  109. package/component/popover/package.json +0 -4
  110. package/component/progress/README.md +0 -160
  111. package/component/progress/package.json +0 -4
  112. package/component/radio/README.md +0 -209
  113. package/component/radio/package.json +0 -4
  114. package/component/resizable/README.md +0 -168
  115. package/component/resizable/package.json +0 -4
  116. package/component/scroll-area/README.md +0 -143
  117. package/component/scroll-area/package.json +0 -4
  118. package/component/select/README.md +0 -174
  119. package/component/select/package.json +0 -4
  120. package/component/separator/README.md +0 -170
  121. package/component/separator/package.json +0 -4
  122. package/component/sheet/README.md +0 -183
  123. package/component/sheet/package.json +0 -4
  124. package/component/skeleton/README.md +0 -158
  125. package/component/skeleton/package.json +0 -4
  126. package/component/slider/README.md +0 -207
  127. package/component/slider/package.json +0 -4
  128. package/component/spinner/README.md +0 -160
  129. package/component/spinner/package.json +0 -4
  130. package/component/switch/README.md +0 -166
  131. package/component/switch/package.json +0 -4
  132. package/component/table/README.md +0 -291
  133. package/component/table/package.json +0 -4
  134. package/component/tabs/README.md +0 -219
  135. package/component/tabs/package.json +0 -4
  136. package/component/textarea/README.md +0 -154
  137. package/component/textarea/package.json +0 -4
  138. package/component/timeline/README.md +0 -94
  139. package/component/timeline/package.json +0 -4
  140. package/component/toast/README.md +0 -321
  141. package/component/toast/package.json +0 -4
  142. package/component/toggle/README.md +0 -131
  143. package/component/toggle/package.json +0 -4
  144. package/component/toggle-group/README.md +0 -206
  145. package/component/toggle-group/package.json +0 -4
  146. package/component/tooltip/README.md +0 -211
  147. package/component/tooltip/package.json +0 -4
  148. package/component/utils/package.json +0 -4
  149. package/fesm2022/ojiepermana-angular-component-accordion.mjs +0 -189
  150. package/fesm2022/ojiepermana-angular-component-accordion.mjs.map +0 -1
  151. package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +0 -276
  152. package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs.map +0 -1
  153. package/fesm2022/ojiepermana-angular-component-alert.mjs +0 -99
  154. package/fesm2022/ojiepermana-angular-component-alert.mjs.map +0 -1
  155. package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +0 -37
  156. package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs.map +0 -1
  157. package/fesm2022/ojiepermana-angular-component-avatar.mjs +0 -139
  158. package/fesm2022/ojiepermana-angular-component-avatar.mjs.map +0 -1
  159. package/fesm2022/ojiepermana-angular-component-badge.mjs +0 -50
  160. package/fesm2022/ojiepermana-angular-component-badge.mjs.map +0 -1
  161. package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +0 -200
  162. package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs.map +0 -1
  163. package/fesm2022/ojiepermana-angular-component-button-group.mjs +0 -103
  164. package/fesm2022/ojiepermana-angular-component-button-group.mjs.map +0 -1
  165. package/fesm2022/ojiepermana-angular-component-button.mjs +0 -68
  166. package/fesm2022/ojiepermana-angular-component-button.mjs.map +0 -1
  167. package/fesm2022/ojiepermana-angular-component-calendar.mjs +0 -88
  168. package/fesm2022/ojiepermana-angular-component-calendar.mjs.map +0 -1
  169. package/fesm2022/ojiepermana-angular-component-card.mjs +0 -152
  170. package/fesm2022/ojiepermana-angular-component-card.mjs.map +0 -1
  171. package/fesm2022/ojiepermana-angular-component-carousel.mjs +0 -334
  172. package/fesm2022/ojiepermana-angular-component-carousel.mjs.map +0 -1
  173. package/fesm2022/ojiepermana-angular-component-chart-area.mjs +0 -6
  174. package/fesm2022/ojiepermana-angular-component-chart-area.mjs.map +0 -1
  175. package/fesm2022/ojiepermana-angular-component-chart-bar.mjs +0 -6
  176. package/fesm2022/ojiepermana-angular-component-chart-bar.mjs.map +0 -1
  177. package/fesm2022/ojiepermana-angular-component-chart-line.mjs +0 -6
  178. package/fesm2022/ojiepermana-angular-component-chart-line.mjs.map +0 -1
  179. package/fesm2022/ojiepermana-angular-component-chart-pie.mjs +0 -6
  180. package/fesm2022/ojiepermana-angular-component-chart-pie.mjs.map +0 -1
  181. package/fesm2022/ojiepermana-angular-component-chart-radar.mjs +0 -6
  182. package/fesm2022/ojiepermana-angular-component-chart-radar.mjs.map +0 -1
  183. package/fesm2022/ojiepermana-angular-component-chart-radial.mjs +0 -6
  184. package/fesm2022/ojiepermana-angular-component-chart-radial.mjs.map +0 -1
  185. package/fesm2022/ojiepermana-angular-component-chart-scatter.mjs +0 -6
  186. package/fesm2022/ojiepermana-angular-component-chart-scatter.mjs.map +0 -1
  187. package/fesm2022/ojiepermana-angular-component-chart.mjs +0 -3925
  188. package/fesm2022/ojiepermana-angular-component-chart.mjs.map +0 -1
  189. package/fesm2022/ojiepermana-angular-component-checkbox.mjs +0 -114
  190. package/fesm2022/ojiepermana-angular-component-checkbox.mjs.map +0 -1
  191. package/fesm2022/ojiepermana-angular-component-collapsible.mjs +0 -124
  192. package/fesm2022/ojiepermana-angular-component-collapsible.mjs.map +0 -1
  193. package/fesm2022/ojiepermana-angular-component-combobox.mjs +0 -272
  194. package/fesm2022/ojiepermana-angular-component-combobox.mjs.map +0 -1
  195. package/fesm2022/ojiepermana-angular-component-command.mjs +0 -293
  196. package/fesm2022/ojiepermana-angular-component-command.mjs.map +0 -1
  197. package/fesm2022/ojiepermana-angular-component-composer.mjs +0 -352
  198. package/fesm2022/ojiepermana-angular-component-composer.mjs.map +0 -1
  199. package/fesm2022/ojiepermana-angular-component-context-menu.mjs +0 -103
  200. package/fesm2022/ojiepermana-angular-component-context-menu.mjs.map +0 -1
  201. package/fesm2022/ojiepermana-angular-component-date-picker.mjs +0 -170
  202. package/fesm2022/ojiepermana-angular-component-date-picker.mjs.map +0 -1
  203. package/fesm2022/ojiepermana-angular-component-dialog.mjs +0 -279
  204. package/fesm2022/ojiepermana-angular-component-dialog.mjs.map +0 -1
  205. package/fesm2022/ojiepermana-angular-component-drawer.mjs +0 -6
  206. package/fesm2022/ojiepermana-angular-component-drawer.mjs.map +0 -1
  207. package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +0 -492
  208. package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs.map +0 -1
  209. package/fesm2022/ojiepermana-angular-component-editor.mjs +0 -717
  210. package/fesm2022/ojiepermana-angular-component-editor.mjs.map +0 -1
  211. package/fesm2022/ojiepermana-angular-component-empty.mjs +0 -145
  212. package/fesm2022/ojiepermana-angular-component-empty.mjs.map +0 -1
  213. package/fesm2022/ojiepermana-angular-component-form.mjs +0 -366
  214. package/fesm2022/ojiepermana-angular-component-form.mjs.map +0 -1
  215. package/fesm2022/ojiepermana-angular-component-hover-card.mjs +0 -297
  216. package/fesm2022/ojiepermana-angular-component-hover-card.mjs.map +0 -1
  217. package/fesm2022/ojiepermana-angular-component-input-group.mjs +0 -179
  218. package/fesm2022/ojiepermana-angular-component-input-group.mjs.map +0 -1
  219. package/fesm2022/ojiepermana-angular-component-input-otp.mjs +0 -514
  220. package/fesm2022/ojiepermana-angular-component-input-otp.mjs.map +0 -1
  221. package/fesm2022/ojiepermana-angular-component-input.mjs +0 -45
  222. package/fesm2022/ojiepermana-angular-component-input.mjs.map +0 -1
  223. package/fesm2022/ojiepermana-angular-component-item.mjs +0 -264
  224. package/fesm2022/ojiepermana-angular-component-item.mjs.map +0 -1
  225. package/fesm2022/ojiepermana-angular-component-kanban.mjs +0 -314
  226. package/fesm2022/ojiepermana-angular-component-kanban.mjs.map +0 -1
  227. package/fesm2022/ojiepermana-angular-component-kbd.mjs +0 -55
  228. package/fesm2022/ojiepermana-angular-component-kbd.mjs.map +0 -1
  229. package/fesm2022/ojiepermana-angular-component-label.mjs +0 -33
  230. package/fesm2022/ojiepermana-angular-component-label.mjs.map +0 -1
  231. package/fesm2022/ojiepermana-angular-component-menubar.mjs +0 -308
  232. package/fesm2022/ojiepermana-angular-component-menubar.mjs.map +0 -1
  233. package/fesm2022/ojiepermana-angular-component-native-select.mjs +0 -67
  234. package/fesm2022/ojiepermana-angular-component-native-select.mjs.map +0 -1
  235. package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +0 -413
  236. package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs.map +0 -1
  237. package/fesm2022/ojiepermana-angular-component-pagination.mjs +0 -226
  238. package/fesm2022/ojiepermana-angular-component-pagination.mjs.map +0 -1
  239. package/fesm2022/ojiepermana-angular-component-pillbox.mjs +0 -812
  240. package/fesm2022/ojiepermana-angular-component-pillbox.mjs.map +0 -1
  241. package/fesm2022/ojiepermana-angular-component-popover.mjs +0 -169
  242. package/fesm2022/ojiepermana-angular-component-popover.mjs.map +0 -1
  243. package/fesm2022/ojiepermana-angular-component-progress.mjs +0 -60
  244. package/fesm2022/ojiepermana-angular-component-progress.mjs.map +0 -1
  245. package/fesm2022/ojiepermana-angular-component-radio.mjs +0 -122
  246. package/fesm2022/ojiepermana-angular-component-radio.mjs.map +0 -1
  247. package/fesm2022/ojiepermana-angular-component-resizable.mjs +0 -481
  248. package/fesm2022/ojiepermana-angular-component-resizable.mjs.map +0 -1
  249. package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +0 -54
  250. package/fesm2022/ojiepermana-angular-component-scroll-area.mjs.map +0 -1
  251. package/fesm2022/ojiepermana-angular-component-select.mjs +0 -176
  252. package/fesm2022/ojiepermana-angular-component-select.mjs.map +0 -1
  253. package/fesm2022/ojiepermana-angular-component-separator.mjs +0 -37
  254. package/fesm2022/ojiepermana-angular-component-separator.mjs.map +0 -1
  255. package/fesm2022/ojiepermana-angular-component-sheet.mjs +0 -284
  256. package/fesm2022/ojiepermana-angular-component-sheet.mjs.map +0 -1
  257. package/fesm2022/ojiepermana-angular-component-skeleton.mjs +0 -31
  258. package/fesm2022/ojiepermana-angular-component-skeleton.mjs.map +0 -1
  259. package/fesm2022/ojiepermana-angular-component-slider.mjs +0 -423
  260. package/fesm2022/ojiepermana-angular-component-slider.mjs.map +0 -1
  261. package/fesm2022/ojiepermana-angular-component-spinner.mjs +0 -60
  262. package/fesm2022/ojiepermana-angular-component-spinner.mjs.map +0 -1
  263. package/fesm2022/ojiepermana-angular-component-switch.mjs +0 -116
  264. package/fesm2022/ojiepermana-angular-component-switch.mjs.map +0 -1
  265. package/fesm2022/ojiepermana-angular-component-table.mjs +0 -155
  266. package/fesm2022/ojiepermana-angular-component-table.mjs.map +0 -1
  267. package/fesm2022/ojiepermana-angular-component-tabs.mjs +0 -272
  268. package/fesm2022/ojiepermana-angular-component-tabs.mjs.map +0 -1
  269. package/fesm2022/ojiepermana-angular-component-textarea.mjs +0 -39
  270. package/fesm2022/ojiepermana-angular-component-textarea.mjs.map +0 -1
  271. package/fesm2022/ojiepermana-angular-component-timeline.mjs +0 -237
  272. package/fesm2022/ojiepermana-angular-component-timeline.mjs.map +0 -1
  273. package/fesm2022/ojiepermana-angular-component-toast.mjs +0 -71
  274. package/fesm2022/ojiepermana-angular-component-toast.mjs.map +0 -1
  275. package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +0 -289
  276. package/fesm2022/ojiepermana-angular-component-toggle-group.mjs.map +0 -1
  277. package/fesm2022/ojiepermana-angular-component-toggle.mjs +0 -82
  278. package/fesm2022/ojiepermana-angular-component-toggle.mjs.map +0 -1
  279. package/fesm2022/ojiepermana-angular-component-tooltip.mjs +0 -354
  280. package/fesm2022/ojiepermana-angular-component-tooltip.mjs.map +0 -1
  281. package/fesm2022/ojiepermana-angular-component-utils.mjs +0 -13
  282. package/fesm2022/ojiepermana-angular-component-utils.mjs.map +0 -1
  283. package/fesm2022/ojiepermana-angular-generator-api.mjs +0 -68
  284. package/fesm2022/ojiepermana-angular-generator-api.mjs.map +0 -1
  285. package/fesm2022/ojiepermana-angular-layout-component.mjs +0 -602
  286. package/fesm2022/ojiepermana-angular-layout-component.mjs.map +0 -1
  287. package/fesm2022/ojiepermana-angular-layout-provider.mjs +0 -21
  288. package/fesm2022/ojiepermana-angular-layout-provider.mjs.map +0 -1
  289. package/fesm2022/ojiepermana-angular-layout-services.mjs +0 -116
  290. package/fesm2022/ojiepermana-angular-layout-services.mjs.map +0 -1
  291. package/fesm2022/ojiepermana-angular-layout-shell.mjs +0 -48
  292. package/fesm2022/ojiepermana-angular-layout-shell.mjs.map +0 -1
  293. package/fesm2022/ojiepermana-angular-layout-token-directive.mjs +0 -30
  294. package/fesm2022/ojiepermana-angular-layout-token-directive.mjs.map +0 -1
  295. package/fesm2022/ojiepermana-angular-layout-token.mjs +0 -33
  296. package/fesm2022/ojiepermana-angular-layout-token.mjs.map +0 -1
  297. package/fesm2022/ojiepermana-angular-layout-type-empty.mjs +0 -49
  298. package/fesm2022/ojiepermana-angular-layout-type-empty.mjs.map +0 -1
  299. package/fesm2022/ojiepermana-angular-layout-type-horizontal.mjs +0 -128
  300. package/fesm2022/ojiepermana-angular-layout-type-horizontal.mjs.map +0 -1
  301. package/fesm2022/ojiepermana-angular-layout-type-vertical.mjs +0 -123
  302. package/fesm2022/ojiepermana-angular-layout-type-vertical.mjs.map +0 -1
  303. package/fesm2022/ojiepermana-angular-layout.mjs +0 -485
  304. package/fesm2022/ojiepermana-angular-layout.mjs.map +0 -1
  305. package/fesm2022/ojiepermana-angular-navigation-demo-data.mjs +0 -334
  306. package/fesm2022/ojiepermana-angular-navigation-demo-data.mjs.map +0 -1
  307. package/fesm2022/ojiepermana-angular-navigation-icon.mjs +0 -63
  308. package/fesm2022/ojiepermana-angular-navigation-icon.mjs.map +0 -1
  309. package/fesm2022/ojiepermana-angular-navigation-item.mjs +0 -559
  310. package/fesm2022/ojiepermana-angular-navigation-item.mjs.map +0 -1
  311. package/fesm2022/ojiepermana-angular-navigation-service.mjs +0 -213
  312. package/fesm2022/ojiepermana-angular-navigation-service.mjs.map +0 -1
  313. package/fesm2022/ojiepermana-angular-navigation-sidebar.mjs +0 -401
  314. package/fesm2022/ojiepermana-angular-navigation-sidebar.mjs.map +0 -1
  315. package/fesm2022/ojiepermana-angular-navigation-topbar.mjs +0 -670
  316. package/fesm2022/ojiepermana-angular-navigation-topbar.mjs.map +0 -1
  317. package/fesm2022/ojiepermana-angular-navigation-types.mjs +0 -4
  318. package/fesm2022/ojiepermana-angular-navigation-types.mjs.map +0 -1
  319. package/fesm2022/ojiepermana-angular-theme-provider.mjs +0 -35
  320. package/fesm2022/ojiepermana-angular-theme-provider.mjs.map +0 -1
  321. package/fesm2022/ojiepermana-angular-theme-services.mjs +0 -294
  322. package/fesm2022/ojiepermana-angular-theme-services.mjs.map +0 -1
  323. package/fesm2022/ojiepermana-angular-theme-token.mjs +0 -56
  324. package/fesm2022/ojiepermana-angular-theme-token.mjs.map +0 -1
  325. package/generator/api/README.md +0 -252
  326. package/generator/api/bin/package.json +0 -3
  327. package/generator/api/bin/schematics/init/index.js +0 -90
  328. package/generator/api/bin/schematics/ng-add/index.js +0 -131
  329. package/generator/api/bin/schematics/sdk/index.js +0 -76
  330. package/generator/api/bin/src/config/loader.js +0 -41
  331. package/generator/api/bin/src/config/schema.js +0 -57
  332. package/generator/api/bin/src/emit/client.js +0 -248
  333. package/generator/api/bin/src/emit/metadata.js +0 -295
  334. package/generator/api/bin/src/emit/models.js +0 -106
  335. package/generator/api/bin/src/emit/navigation.js +0 -56
  336. package/generator/api/bin/src/emit/operations.js +0 -122
  337. package/generator/api/bin/src/emit/public-api.js +0 -54
  338. package/generator/api/bin/src/emit/services.js +0 -87
  339. package/generator/api/bin/src/engine.js +0 -65
  340. package/generator/api/bin/src/layout/per-domain.js +0 -359
  341. package/generator/api/bin/src/parser/bundle.js +0 -25
  342. package/generator/api/bin/src/parser/ir.js +0 -320
  343. package/generator/api/bin/src/parser/types.js +0 -7
  344. package/generator/api/bin/src/render/template.js +0 -58
  345. package/generator/api/bin/src/writer/index.js +0 -278
  346. package/generator/api/package.json +0 -4
  347. package/generator/api/schematics/init/schema.json +0 -19
  348. package/generator/api/schematics/ng-add/schema.json +0 -14
  349. package/generator/api/schematics/sdk/schema.json +0 -19
  350. package/generator/api/sdk.config.example.json +0 -24
  351. package/generator/guide/README.md +0 -84
  352. package/generator/guide/bin/package.json +0 -3
  353. package/generator/guide/bin/schematics/build/index.js +0 -36
  354. package/generator/guide/bin/schematics/init/index.js +0 -70
  355. package/generator/guide/bin/src/config/loader.js +0 -50
  356. package/generator/guide/bin/src/config/schema.js +0 -12
  357. package/generator/guide/bin/src/engine/component.js +0 -74
  358. package/generator/guide/bin/src/engine/frontmatter.js +0 -42
  359. package/generator/guide/bin/src/engine/index.js +0 -42
  360. package/generator/guide/bin/src/engine/naming.js +0 -39
  361. package/generator/guide/bin/src/engine/render.js +0 -36
  362. package/generator/guide/bin/src/engine/routes.js +0 -106
  363. package/generator/guide/bin/src/engine/walk.js +0 -35
  364. package/generator/guide/guide.config.example.json +0 -9
  365. package/generator/guide/schematics/build/schema.json +0 -14
  366. package/generator/guide/schematics/init/schema.json +0 -19
  367. package/layout/component/package.json +0 -4
  368. package/layout/package.json +0 -4
  369. package/layout/provider/package.json +0 -4
  370. package/layout/services/package.json +0 -4
  371. package/layout/shell/package.json +0 -4
  372. package/layout/token/directive/package.json +0 -4
  373. package/layout/token/package.json +0 -4
  374. package/layout/type/empty/package.json +0 -4
  375. package/layout/type/horizontal/package.json +0 -4
  376. package/layout/type/vertical/package.json +0 -4
  377. package/navigation/demo-data/package.json +0 -4
  378. package/navigation/icon/package.json +0 -4
  379. package/navigation/item/package.json +0 -4
  380. package/navigation/service/package.json +0 -4
  381. package/navigation/sidebar/package.json +0 -4
  382. package/navigation/topbar/README.md +0 -196
  383. package/navigation/topbar/package.json +0 -4
  384. package/navigation/types/package.json +0 -4
  385. package/theme/README.md +0 -174
  386. package/theme/package.json +0 -4
  387. package/theme/provider/package.json +0 -4
  388. package/theme/services/package.json +0 -4
  389. package/theme/styles/foundation/components.css +0 -81
  390. package/theme/styles/foundation/layers.css +0 -15
  391. package/theme/styles/foundation/tokens.css +0 -55
  392. package/theme/styles/index.css +0 -37
  393. package/theme/styles/integrations/material/autocomplete.css +0 -178
  394. package/theme/styles/integrations/material/button.css +0 -468
  395. package/theme/styles/integrations/material/dialog.css +0 -152
  396. package/theme/styles/integrations/material/select.css +0 -175
  397. package/theme/styles/integrations/material/slide-toggle.css +0 -234
  398. package/theme/styles/integrations/material/slider.css +0 -194
  399. package/theme/styles/integrations/material/tabs.css +0 -229
  400. package/theme/styles/integrations/material.css +0 -264
  401. package/theme/styles/integrations/tailwind.css +0 -114
  402. package/theme/styles/variants/color/amber.css +0 -31
  403. package/theme/styles/variants/color/base.css +0 -36
  404. package/theme/styles/variants/color/blue.css +0 -31
  405. package/theme/styles/variants/color/cyan.css +0 -31
  406. package/theme/styles/variants/color/emerald.css +0 -31
  407. package/theme/styles/variants/color/fuchsia.css +0 -31
  408. package/theme/styles/variants/color/green.css +0 -31
  409. package/theme/styles/variants/color/index.css +0 -22
  410. package/theme/styles/variants/color/indigo.css +0 -31
  411. package/theme/styles/variants/color/lime.css +0 -31
  412. package/theme/styles/variants/color/orange.css +0 -31
  413. package/theme/styles/variants/color/pink.css +0 -31
  414. package/theme/styles/variants/color/purple.css +0 -31
  415. package/theme/styles/variants/color/red.css +0 -31
  416. package/theme/styles/variants/color/rose.css +0 -31
  417. package/theme/styles/variants/color/sky.css +0 -31
  418. package/theme/styles/variants/color/teal.css +0 -31
  419. package/theme/styles/variants/color/violet.css +0 -31
  420. package/theme/styles/variants/color/yellow.css +0 -31
  421. package/theme/styles/variants/mode/dark.css +0 -20
  422. package/theme/styles/variants/mode/index.css +0 -6
  423. package/theme/styles/variants/mode/light.css +0 -24
  424. package/theme/styles/variants/style/brutal.css +0 -50
  425. package/theme/styles/variants/style/default.css +0 -54
  426. package/theme/styles/variants/style/index.css +0 -8
  427. package/theme/styles/variants/style/sharp.css +0 -50
  428. package/theme/styles/variants/style/soft.css +0 -50
  429. package/theme/token/package.json +0 -4
  430. package/types/ojiepermana-angular-component-accordion.d.ts +0 -51
  431. package/types/ojiepermana-angular-component-alert-dialog.d.ts +0 -93
  432. package/types/ojiepermana-angular-component-alert.d.ts +0 -37
  433. package/types/ojiepermana-angular-component-aspect-ratio.d.ts +0 -12
  434. package/types/ojiepermana-angular-component-avatar.d.ts +0 -51
  435. package/types/ojiepermana-angular-component-badge.d.ts +0 -19
  436. package/types/ojiepermana-angular-component-breadcrumb.d.ts +0 -46
  437. package/types/ojiepermana-angular-component-button-group.d.ts +0 -26
  438. package/types/ojiepermana-angular-component-button.d.ts +0 -22
  439. package/types/ojiepermana-angular-component-calendar.d.ts +0 -33
  440. package/types/ojiepermana-angular-component-card.d.ts +0 -60
  441. package/types/ojiepermana-angular-component-carousel.d.ts +0 -86
  442. package/types/ojiepermana-angular-component-chart-area.d.ts +0 -1
  443. package/types/ojiepermana-angular-component-chart-bar.d.ts +0 -1
  444. package/types/ojiepermana-angular-component-chart-line.d.ts +0 -1
  445. package/types/ojiepermana-angular-component-chart-pie.d.ts +0 -1
  446. package/types/ojiepermana-angular-component-chart-radar.d.ts +0 -1
  447. package/types/ojiepermana-angular-component-chart-radial.d.ts +0 -1
  448. package/types/ojiepermana-angular-component-chart-scatter.d.ts +0 -1
  449. package/types/ojiepermana-angular-component-chart.d.ts +0 -1094
  450. package/types/ojiepermana-angular-component-checkbox.d.ts +0 -35
  451. package/types/ojiepermana-angular-component-collapsible.d.ts +0 -42
  452. package/types/ojiepermana-angular-component-combobox.d.ts +0 -50
  453. package/types/ojiepermana-angular-component-command.d.ts +0 -99
  454. package/types/ojiepermana-angular-component-composer.d.ts +0 -90
  455. package/types/ojiepermana-angular-component-context-menu.d.ts +0 -35
  456. package/types/ojiepermana-angular-component-date-picker.d.ts +0 -41
  457. package/types/ojiepermana-angular-component-dialog.d.ts +0 -87
  458. package/types/ojiepermana-angular-component-drawer.d.ts +0 -1
  459. package/types/ojiepermana-angular-component-dropdown-menu.d.ts +0 -137
  460. package/types/ojiepermana-angular-component-editor.d.ts +0 -123
  461. package/types/ojiepermana-angular-component-empty.d.ts +0 -50
  462. package/types/ojiepermana-angular-component-form.d.ts +0 -141
  463. package/types/ojiepermana-angular-component-hover-card.d.ts +0 -74
  464. package/types/ojiepermana-angular-component-input-group.d.ts +0 -51
  465. package/types/ojiepermana-angular-component-input-otp.d.ts +0 -136
  466. package/types/ojiepermana-angular-component-input.d.ts +0 -16
  467. package/types/ojiepermana-angular-component-item.d.ts +0 -88
  468. package/types/ojiepermana-angular-component-kanban.d.ts +0 -70
  469. package/types/ojiepermana-angular-component-kbd.d.ts +0 -16
  470. package/types/ojiepermana-angular-component-label.d.ts +0 -11
  471. package/types/ojiepermana-angular-component-menubar.d.ts +0 -67
  472. package/types/ojiepermana-angular-component-native-select.d.ts +0 -26
  473. package/types/ojiepermana-angular-component-navigation-menu.d.ts +0 -96
  474. package/types/ojiepermana-angular-component-pagination.d.ts +0 -33
  475. package/types/ojiepermana-angular-component-pillbox.d.ts +0 -157
  476. package/types/ojiepermana-angular-component-popover.d.ts +0 -43
  477. package/types/ojiepermana-angular-component-progress.d.ts +0 -17
  478. package/types/ojiepermana-angular-component-radio.d.ts +0 -40
  479. package/types/ojiepermana-angular-component-resizable.d.ts +0 -99
  480. package/types/ojiepermana-angular-component-scroll-area.d.ts +0 -19
  481. package/types/ojiepermana-angular-component-select.d.ts +0 -57
  482. package/types/ojiepermana-angular-component-separator.d.ts +0 -14
  483. package/types/ojiepermana-angular-component-sheet.d.ts +0 -76
  484. package/types/ojiepermana-angular-component-skeleton.d.ts +0 -10
  485. package/types/ojiepermana-angular-component-slider.d.ts +0 -74
  486. package/types/ojiepermana-angular-component-spinner.d.ts +0 -13
  487. package/types/ojiepermana-angular-component-switch.d.ts +0 -40
  488. package/types/ojiepermana-angular-component-table.d.ts +0 -52
  489. package/types/ojiepermana-angular-component-tabs.d.ts +0 -92
  490. package/types/ojiepermana-angular-component-textarea.d.ts +0 -12
  491. package/types/ojiepermana-angular-component-timeline.d.ts +0 -63
  492. package/types/ojiepermana-angular-component-toast.d.ts +0 -38
  493. package/types/ojiepermana-angular-component-toggle-group.d.ts +0 -89
  494. package/types/ojiepermana-angular-component-toggle.d.ts +0 -25
  495. package/types/ojiepermana-angular-component-tooltip.d.ts +0 -89
  496. package/types/ojiepermana-angular-component-utils.d.ts +0 -5
  497. package/types/ojiepermana-angular-generator-api.d.ts +0 -86
  498. package/types/ojiepermana-angular-layout-component.d.ts +0 -205
  499. package/types/ojiepermana-angular-layout-provider.d.ts +0 -6
  500. package/types/ojiepermana-angular-layout-services.d.ts +0 -25
  501. package/types/ojiepermana-angular-layout-shell.d.ts +0 -8
  502. package/types/ojiepermana-angular-layout-token-directive.d.ts +0 -13
  503. package/types/ojiepermana-angular-layout-token.d.ts +0 -36
  504. package/types/ojiepermana-angular-layout-type-empty.d.ts +0 -22
  505. package/types/ojiepermana-angular-layout-type-horizontal.d.ts +0 -36
  506. package/types/ojiepermana-angular-layout-type-vertical.d.ts +0 -38
  507. package/types/ojiepermana-angular-layout.d.ts +0 -164
  508. package/types/ojiepermana-angular-navigation-demo-data.d.ts +0 -5
  509. package/types/ojiepermana-angular-navigation-icon.d.ts +0 -17
  510. package/types/ojiepermana-angular-navigation-item.d.ts +0 -54
  511. package/types/ojiepermana-angular-navigation-service.d.ts +0 -77
  512. package/types/ojiepermana-angular-navigation-sidebar.d.ts +0 -75
  513. package/types/ojiepermana-angular-navigation-topbar.d.ts +0 -74
  514. package/types/ojiepermana-angular-navigation-types.d.ts +0 -135
  515. package/types/ojiepermana-angular-theme-provider.d.ts +0 -11
  516. package/types/ojiepermana-angular-theme-services.d.ts +0 -55
  517. package/types/ojiepermana-angular-theme-token.d.ts +0 -57
@@ -1,269 +0,0 @@
1
- # Menubar
2
-
3
- Persistent desktop-style command strip with horizontal roving focus for top-level triggers and explicit projected menu content.
4
-
5
- This Angular implementation follows the shadcn Menubar information architecture while intentionally reusing the existing dropdown-menu content primitives for rows, checkbox items, radio groups, labels, shortcuts, and nested submenu triggers.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import {
11
- MenubarComponent,
12
- MenubarContentDirective,
13
- MenubarMenuComponent,
14
- MenubarTriggerDirective,
15
- } from '@ojiepermana/angular/component/menubar';
16
- import {
17
- MenuCheckboxItemComponent,
18
- MenuContentDirective,
19
- MenuGroupComponent,
20
- MenuItemComponent,
21
- MenuLabelComponent,
22
- MenuRadioGroupComponent,
23
- MenuRadioItemComponent,
24
- MenuSeparatorComponent,
25
- MenuShortcutComponent,
26
- MenuSurfaceComponent,
27
- MenuTriggerDirective,
28
- } from '@ojiepermana/angular/component/dropdown-menu';
29
- ```
30
-
31
- ## Structure
32
-
33
- ```text
34
- ui-menubar
35
- ├── ui-menubar-menu
36
- │ ├── button[uiMenubarTrigger]
37
- │ └── ng-template[uiMenubarContent]
38
- │ └── ui-menu-surface
39
- │ ├── ui-menu-group
40
- │ │ ├── button[ui-menu-item]
41
- │ │ └── button[ui-menu-item][uiMenuTrigger]
42
- │ │ └── ng-template[uiMenuContent]
43
- │ │ └── ui-menu-surface
44
- │ ├── ui-menu-separator
45
- │ ├── button[ui-menu-checkbox-item]
46
- │ └── ui-menu-radio-group
47
- │ └── button[ui-menu-radio-item]
48
- └── ui-menubar-menu
49
- ├── button[uiMenubarTrigger]
50
- └── ng-template[uiMenubarContent]
51
- ```
52
-
53
- ## Basic usage
54
-
55
- ```html
56
- <ui-menubar>
57
- <ui-menubar-menu>
58
- <button type="button" [uiMenubarTrigger]="fileMenu">File</button>
59
- <ng-template uiMenubarContent #fileMenu="uiMenubarContent">
60
- <ui-menu-surface class="w-56">
61
- <ui-menu-group>
62
- <button ui-menu-item type="button">
63
- New Tab
64
- <span ui-menu-shortcut>⌘T</span>
65
- </button>
66
- <button ui-menu-item type="button" [uiMenuTrigger]="shareMenu" side="right" align="start">
67
- Share
68
- <span class="ml-auto text-xs text-muted-foreground">›</span>
69
- </button>
70
- </ui-menu-group>
71
- </ui-menu-surface>
72
- </ng-template>
73
- </ui-menubar-menu>
74
- </ui-menubar>
75
- ```
76
-
77
- ## Common patterns
78
-
79
- ### Basic command strip
80
-
81
- Use one `ui-menubar-menu` per top-level trigger. The root owns horizontal roving focus, so only one trigger participates in tab order at a time.
82
-
83
- ```html
84
- <ui-menubar>
85
- <ui-menubar-menu>
86
- <button type="button" [uiMenubarTrigger]="basicFileMenu">File</button>
87
- <ng-template uiMenubarContent #basicFileMenu="uiMenubarContent">
88
- <ui-menu-surface class="w-48">
89
- <button ui-menu-item type="button">New Tab</button>
90
- <button ui-menu-item type="button">Open Recent</button>
91
- <button ui-menu-item type="button" [disabled]="true">Import from iCloud</button>
92
- </ui-menu-surface>
93
- </ng-template>
94
- </ui-menubar-menu>
95
- </ui-menubar>
96
- ```
97
-
98
- ### Checkbox and radio rows
99
-
100
- The top-level strip stays on `menubar`, while toggleable content rows remain on the dropdown-menu primitives that already own those semantics.
101
-
102
- ```ts
103
- const showSidebar = signal(true);
104
- const editorTheme = signal<'light' | 'dark' | 'system'>('system');
105
- ```
106
-
107
- ```html
108
- <ui-menubar>
109
- <ui-menubar-menu>
110
- <button type="button" [uiMenubarTrigger]="viewMenu">View</button>
111
- <ng-template uiMenubarContent #viewMenu="uiMenubarContent">
112
- <ui-menu-surface class="w-56">
113
- <ui-menu-group>
114
- <button ui-menu-checkbox-item type="button" [(checked)]="showSidebar">Sidebar</button>
115
- </ui-menu-group>
116
- <ui-menu-separator />
117
- <ui-menu-label [inset]="true">Theme</ui-menu-label>
118
- <ui-menu-radio-group [(value)]="editorTheme">
119
- <button ui-menu-radio-item type="button" value="light">Light</button>
120
- <button ui-menu-radio-item type="button" value="dark">Dark</button>
121
- <button ui-menu-radio-item type="button" value="system">System</button>
122
- </ui-menu-radio-group>
123
- </ui-menu-surface>
124
- </ng-template>
125
- </ui-menubar-menu>
126
- </ui-menubar>
127
- ```
128
-
129
- ### Submenus
130
-
131
- Map shadcn `MenubarSub` to `[uiMenuTrigger]` on a `button[ui-menu-item]`. This keeps overlay ownership explicit and lets the shared menu trigger keep submenu keyboard behavior in one place.
132
-
133
- ```html
134
- <ng-template uiMenuContent #findMenu="uiMenuContent">
135
- <ui-menu-surface class="w-44">
136
- <button ui-menu-item type="button">Search the web</button>
137
- <button ui-menu-item type="button">Find...</button>
138
- <button ui-menu-item type="button">Find Next</button>
139
- </ui-menu-surface>
140
- </ng-template>
141
-
142
- <ui-menubar>
143
- <ui-menubar-menu>
144
- <button type="button" [uiMenubarTrigger]="editMenu">Edit</button>
145
- <ng-template uiMenubarContent #editMenu="uiMenubarContent">
146
- <ui-menu-surface class="w-56">
147
- <button ui-menu-item type="button" [uiMenuTrigger]="findMenu" side="right" align="start">
148
- Find
149
- <span class="ml-auto text-xs text-muted-foreground">›</span>
150
- </button>
151
- </ui-menu-surface>
152
- </ng-template>
153
- </ui-menubar-menu>
154
- </ui-menubar>
155
- ```
156
-
157
- ### Icons and shortcuts
158
-
159
- Project inline icons and shortcut hints directly into the row content.
160
-
161
- ```html
162
- <ui-menu-surface class="w-56">
163
- <button ui-menu-item type="button">
164
- <ui-nav-icon name="description" [size]="16" class="text-muted-foreground" />
165
- New File
166
- <span ui-menu-shortcut>⌘N</span>
167
- </button>
168
- <button ui-menu-item type="button" variant="destructive">
169
- <ui-nav-icon name="delete" [size]="16" class="text-current" />
170
- Delete
171
- </button>
172
- </ui-menu-surface>
173
- ```
174
-
175
- ### RTL
176
-
177
- The root menubar respects computed direction for left and right movement. Apply `dir="rtl"` directly to the projected menu surface when the content itself should render right-to-left.
178
-
179
- ```html
180
- <section dir="rtl" lang="ar" class="text-right">
181
- <ui-menubar>
182
- <ui-menubar-menu>
183
- <button type="button" [uiMenubarTrigger]="rtlFileMenu">ملف</button>
184
- <ng-template uiMenubarContent #rtlFileMenu="uiMenubarContent">
185
- <ui-menu-surface dir="rtl" lang="ar" class="w-56 text-right">
186
- <button ui-menu-item type="button">تبويب جديد <span ui-menu-shortcut>⌘T</span></button>
187
- <button ui-menu-item type="button">نافذة جديدة <span ui-menu-shortcut>⌘N</span></button>
188
- </ui-menu-surface>
189
- </ng-template>
190
- </ui-menubar-menu>
191
- </ui-menubar>
192
- </section>
193
- ```
194
-
195
- ## API Reference
196
-
197
- ### `MenubarComponent`
198
-
199
- | Input | Type | Default |
200
- | ------- | --------- | ------- |
201
- | `class` | `string` | `''` |
202
- | `loop` | `boolean` | `true` |
203
-
204
- Role: `menubar`.
205
-
206
- ### `MenubarMenuComponent`
207
-
208
- Structural wrapper for one top-level trigger plus its `uiMenubarContent` template.
209
-
210
- ### `MenubarTriggerDirective`
211
-
212
- | Input | Type | Default |
213
- | ------------------ | ------------------------------ | --------- |
214
- | `uiMenubarTrigger` | `MenubarContentDirective` | required |
215
- | `align` | `'start' \| 'center' \| 'end'` | `'start'` |
216
- | `disabled` | `boolean` | `false` |
217
-
218
- Output: `openedChange: boolean`.
219
-
220
- Methods: `open()`, `close()`, `toggle()`, `focus()`.
221
-
222
- ### `MenubarContentDirective`
223
-
224
- Projected overlay template for a top-level menubar trigger.
225
-
226
- ### Dropdown-menu parts reused in content
227
-
228
- Import these from `@ojiepermana/angular/component/dropdown-menu`:
229
-
230
- - `MenuSurfaceComponent`
231
- - `MenuItemComponent`
232
- - `MenuCheckboxItemComponent`
233
- - `MenuRadioGroupComponent`
234
- - `MenuRadioItemComponent`
235
- - `MenuLabelComponent`
236
- - `MenuSeparatorComponent`
237
- - `MenuShortcutComponent`
238
- - `MenuTriggerDirective`
239
- - `MenuContentDirective`
240
-
241
- ## Styling and theming
242
-
243
- - Pass `class` to `ui-menubar` when the root needs width, border, or layout changes.
244
- - Style content surfaces on `ui-menu-surface`, not on the root menubar strip.
245
- - Use shared theme tokens such as `border-border`, `bg-background`, `bg-accent`, and `text-muted-foreground` for visual consistency.
246
-
247
- ## Accessibility
248
-
249
- - Top-level triggers expose `role="menuitem"`, `aria-haspopup="menu"`, and `aria-expanded`.
250
- - The root menubar keeps one active tab stop, matching desktop menubar behavior.
251
- - Projected content rows keep the accessible menu, checkbox, and radio roles from dropdown-menu.
252
- - Disabled rows stay visible, announce their disabled state, and are skipped by roving focus.
253
-
254
- ## Keyboard interactions
255
-
256
- - `ArrowLeft` and `ArrowRight` move across top-level triggers.
257
- - `Home` and `End` jump to the first and last top-level trigger.
258
- - `ArrowDown` opens the active menu and focuses its first enabled item.
259
- - `ArrowRight` opens right-side submenu rows built with `[uiMenuTrigger] side="right"`.
260
-
261
- ## Angular Notes
262
-
263
- - Menubar is intentionally split across two entrypoints: `menubar` for the persistent strip, `dropdown-menu` for the shared content rows.
264
- - This avoids duplicating the same menu item semantics in two packages while still exposing a dedicated shadcn-style top-level component.
265
- - Use native buttons for triggers so keyboard activation and disabled behavior stay predictable.
266
-
267
- ## Source parity
268
-
269
- This slice keeps the shadcn Menubar command patterns, examples, keyboard expectations, and RTL guidance while making Angular overlay ownership explicit through `uiMenubarContent` and the existing dropdown-menu primitives.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-menubar.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-menubar.d.ts"
4
- }
@@ -1,176 +0,0 @@
1
- # Native Select
2
-
3
- Styled native HTML select for browser-native dropdown behavior, mobile-friendly pickers, and lightweight form integrations.
4
-
5
- Use Native Select when you want the platform select interaction rather than the custom overlay behavior of `ui-select`.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import {
11
- NativeSelectComponent,
12
- NativeSelectOptGroupDirective,
13
- NativeSelectOptionDirective,
14
- } from '@ojiepermana/angular/component/native-select';
15
- import {
16
- FormControlDirective,
17
- FormDescriptionComponent,
18
- FormFieldComponent,
19
- FormLabelComponent,
20
- FormMessageComponent,
21
- } from '@ojiepermana/angular/component/form';
22
- ```
23
-
24
- ## Composition
25
-
26
- The Angular structure keeps the native `<select>`, `<option>`, and `<optgroup>` elements in the DOM while adding shadcn-style design tokens.
27
-
28
- ```text
29
- select[ui-native-select]
30
- ├── option[ui-native-select-option]
31
- ├── option[ui-native-select-option]
32
- └── optgroup[ui-native-select-opt-group]
33
- ├── option[ui-native-select-option]
34
- └── option[ui-native-select-option]
35
- ```
36
-
37
- ## Basic usage
38
-
39
- Use the directive on a real `<select>` so Angular forms continue to work through the native control.
40
-
41
- ```html
42
- <label ui-label for="status-select">Status</label>
43
- <select id="status-select" ui-native-select [(ngModel)]="status">
44
- <option ui-native-select-option value="">Select status</option>
45
- <option ui-native-select-option value="todo">Todo</option>
46
- <option ui-native-select-option value="in-progress">In progress</option>
47
- <option ui-native-select-option value="done">Done</option>
48
- </select>
49
- ```
50
-
51
- ## Common patterns
52
-
53
- ### Grouped options
54
-
55
- Use `optgroup[ui-native-select-opt-group]` when the options belong to clear categories.
56
-
57
- ```html
58
- <select ui-native-select [(ngModel)]="department">
59
- <option ui-native-select-option value="">Select department</option>
60
-
61
- <optgroup ui-native-select-opt-group label="Engineering">
62
- <option ui-native-select-option value="frontend">Frontend</option>
63
- <option ui-native-select-option value="backend">Backend</option>
64
- </optgroup>
65
-
66
- <optgroup ui-native-select-opt-group label="Operations">
67
- <option ui-native-select-option value="support">Support</option>
68
- <option ui-native-select-option value="product">Product</option>
69
- </optgroup>
70
- </select>
71
- ```
72
-
73
- ### Form-field integration
74
-
75
- When you want label, helper text, and invalid state wiring similar to the newer shadcn `Field` examples, compose the native select with the existing form primitives.
76
-
77
- ```html
78
- <ui-form-field>
79
- <ui-form-label>Timezone</ui-form-label>
80
- <select ui-native-select uiFormControl [(ngModel)]="timezone">
81
- <option ui-native-select-option value="">Select timezone</option>
82
- <option ui-native-select-option value="utc">UTC</option>
83
- <option ui-native-select-option value="gmt-plus-7">GMT+7</option>
84
- </select>
85
- <ui-form-description>Used for scheduling and invoice timestamps.</ui-form-description>
86
- </ui-form-field>
87
- ```
88
-
89
- ### Invalid state
90
-
91
- Forward `aria-invalid="true"` when validation is managed outside Angular forms, or let `uiFormControl` mirror the state from `NgControl`.
92
-
93
- ```html
94
- <ui-form-field invalid>
95
- <ui-form-label>Department</ui-form-label>
96
- <select ui-native-select uiFormControl aria-invalid="true">
97
- <option ui-native-select-option value="">Choose department</option>
98
- <option ui-native-select-option value="engineering">Engineering</option>
99
- <option ui-native-select-option value="sales">Sales</option>
100
- </select>
101
- <ui-form-message>Select a department before continuing.</ui-form-message>
102
- </ui-form-field>
103
- ```
104
-
105
- ### Disabled and RTL
106
-
107
- Disabled state stays fully native, and right-to-left layouts only need a wrapping `dir="rtl"` container or a direct `dir` attribute on the select.
108
-
109
- ```html
110
- <section dir="rtl" lang="ar" class="max-w-sm text-right">
111
- <select ui-native-select disabled>
112
- <option ui-native-select-option value="">اختر الحالة</option>
113
- <option ui-native-select-option value="todo">مهام</option>
114
- <option ui-native-select-option value="done">منجز</option>
115
- </select>
116
- </section>
117
- ```
118
-
119
- ## API reference
120
-
121
- ### `NativeSelectComponent`
122
-
123
- | Input | Type | Default |
124
- | ------- | -------- | ------- |
125
- | `class` | `string` | `''` |
126
-
127
- Public methods:
128
-
129
- - `focus()` focuses the underlying native select element.
130
-
131
- All native `<select>` attributes and Angular form bindings such as `name`, `required`, `disabled`, `multiple`, `[(ngModel)]`, and `formControlName` pass through unchanged.
132
-
133
- ### `NativeSelectOptionDirective`
134
-
135
- | Input | Type | Default |
136
- | ------- | -------- | ------- |
137
- | `class` | `string` | `''` |
138
-
139
- All native `<option>` attributes such as `value`, `disabled`, and `selected` pass through unchanged.
140
-
141
- ### `NativeSelectOptGroupDirective`
142
-
143
- | Input | Type | Default |
144
- | ------- | -------- | ------- |
145
- | `class` | `string` | `''` |
146
-
147
- All native `<optgroup>` attributes such as `label` and `disabled` pass through unchanged.
148
-
149
- ## Styling and theming
150
-
151
- The control uses the shared border, ring, foreground, muted, and destructive theme tokens so it matches the rest of the library. The chevron is decorative and hidden automatically for multi-select or listbox-style `size` configurations.
152
-
153
- Pass `class` when a layout needs custom width, margin, or grid placement utilities around the native select.
154
-
155
- ## Accessibility
156
-
157
- - Prefer a visible label or another accessible name source for every select.
158
- - Use grouped options only when the categories help people scan the choices faster.
159
- - Keep the placeholder option descriptive when the empty value is a valid initial state.
160
- - `uiFormControl` can synchronize `id`, `aria-describedby`, and invalid state when the select lives inside `ui-form-field`.
161
-
162
- ## Keyboard interactions
163
-
164
- - Native browser select keyboard interactions stay intact.
165
- - Closed single selects open and cycle according to the platform behavior.
166
- - Multi-select and `size` listbox modes keep the browser's built-in selection model.
167
-
168
- ## Angular notes
169
-
170
- - `select[ui-native-select]` works with template-driven and reactive forms without a custom value accessor.
171
- - The directive is the Angular mapping for upstream `NativeSelect`; the local API intentionally keeps the real HTML elements instead of wrapping them in another component tree.
172
- - Use `ui-select` when you need the Material-backed custom panel rather than the native browser picker.
173
-
174
- ## Source parity
175
-
176
- This Angular entrypoint follows the shadcn Native Select information architecture while staying honest about local differences: the runtime surface is a styled native `<select>`, and the upstream `Field` examples map to the existing form primitives instead of a new field package.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-native-select.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-native-select.d.ts"
4
- }
@@ -1,160 +0,0 @@
1
- # Navigation Menu
2
-
3
- Horizontal website navigation primitive with top-level triggers, direct links, and explicit Angular content templates.
4
-
5
- This implementation follows the shadcn Navigation Menu information architecture while keeping the panel layout owned by the consuming template through `ng-template[uiNavigationMenuContent]`.
6
-
7
- ## Import
8
-
9
- ```ts
10
- import {
11
- NavigationMenuComponent,
12
- NavigationMenuContentDirective,
13
- NavigationMenuItemComponent,
14
- NavigationMenuLinkDirective,
15
- NavigationMenuListComponent,
16
- NavigationMenuTriggerDirective,
17
- } from '@ojiepermana/angular/component/navigation-menu';
18
- ```
19
-
20
- ## Composition
21
-
22
- ```text
23
- ui-navigation-menu
24
- └── ui-navigation-menu-list
25
- ├── ui-navigation-menu-item
26
- │ ├── button[uiNavigationMenuTrigger]
27
- │ └── ng-template[uiNavigationMenuContent]
28
- │ └── custom panel markup with a[uiNavigationMenuLink]
29
- └── ui-navigation-menu-item
30
- └── a[uiNavigationMenuLink] variant="trigger"
31
- ```
32
-
33
- ## Basic usage
34
-
35
- ```html
36
- <ui-navigation-menu ariaLabel="Primary documentation navigation">
37
- <ui-navigation-menu-list>
38
- <ui-navigation-menu-item>
39
- <button type="button" [uiNavigationMenuTrigger]="gettingStartedMenu">Getting started</button>
40
- <ng-template uiNavigationMenuContent #gettingStartedMenu="uiNavigationMenuContent">
41
- <div class="w-[540px] rounded-xl border border-border bg-popover p-4 shadow-md">
42
- <div class="grid gap-3 md:grid-cols-[1.05fr_1.25fr]">
43
- <a
44
- uiNavigationMenuLink
45
- href="/docs/introduction"
46
- class="flex min-h-[220px] flex-col justify-end rounded-lg bg-gradient-to-b from-muted/80 to-muted/40 p-6">
47
- <span class="text-sm font-semibold text-foreground">Acme UI</span>
48
- <p class="text-sm leading-5 text-muted-foreground">
49
- Build consistent interfaces with Angular-first primitives and theme tokens.
50
- </p>
51
- </a>
52
- <div class="grid gap-2">
53
- <a uiNavigationMenuLink href="/docs/getting-started/installation">
54
- <div class="text-sm font-medium">Installation</div>
55
- <p class="text-sm leading-5 text-muted-foreground">Set up the package, providers, and theme layer.</p>
56
- </a>
57
- <a uiNavigationMenuLink href="/docs/components/shadcn/navigation-menu">
58
- <div class="text-sm font-medium">Navigation Menu docs</div>
59
- <p class="text-sm leading-5 text-muted-foreground">
60
- Learn the Angular composition and API surface of this entrypoint.
61
- </p>
62
- </a>
63
- </div>
64
- </div>
65
- </div>
66
- </ng-template>
67
- </ui-navigation-menu-item>
68
-
69
- <ui-navigation-menu-item>
70
- <a uiNavigationMenuLink variant="trigger" href="/docs/introduction">Docs</a>
71
- </ui-navigation-menu-item>
72
- </ui-navigation-menu-list>
73
- </ui-navigation-menu>
74
- ```
75
-
76
- ## Common patterns
77
-
78
- ### Dropdown groups
79
-
80
- Use `uiNavigationMenuTrigger` for top-level items that should open a content panel. The panel layout is just template markup, so you can mix hero cards, compact lists, grids, and external links without a rigid viewport component.
81
-
82
- ### Direct links
83
-
84
- Use `a[uiNavigationMenuLink] variant="trigger"` when a top-level item should navigate immediately instead of opening a panel.
85
-
86
- ### RTL
87
-
88
- Wrap the root in `dir="rtl"` when the page runs in a right-to-left language. The root uses computed direction to reverse left and right keyboard movement.
89
-
90
- ## API reference
91
-
92
- ### `NavigationMenuComponent`
93
-
94
- | Input | Type | Default |
95
- | ----------- | --------- | ------------------- |
96
- | `class` | `string` | `''` |
97
- | `ariaLabel` | `string` | `'Main navigation'` |
98
- | `loop` | `boolean` | `true` |
99
-
100
- Role: `navigation`.
101
-
102
- ### `NavigationMenuListComponent`
103
-
104
- Top-level row wrapper with `role="menubar"`.
105
-
106
- ### `NavigationMenuItemComponent`
107
-
108
- Structural wrapper for one trigger or direct-link item.
109
-
110
- ### `NavigationMenuTriggerDirective`
111
-
112
- | Input | Type | Default |
113
- | ------------------------- | -------------------------------- | --------- |
114
- | `uiNavigationMenuTrigger` | `NavigationMenuContentDirective` | required |
115
- | `align` | `'start' \| 'center' \| 'end'` | `'start'` |
116
- | `class` | `string` | `''` |
117
- | `disabled` | `boolean` | `false` |
118
-
119
- Output: `openedChange: boolean`.
120
-
121
- Methods: `open()`, `close()`, `toggle()`.
122
-
123
- ### `NavigationMenuContentDirective`
124
-
125
- Template hook for dropdown panel markup.
126
-
127
- ### `NavigationMenuLinkDirective`
128
-
129
- | Input | Type | Default |
130
- | ---------- | ------------------------ | ----------- |
131
- | `variant` | `'trigger' \| 'content'` | `'content'` |
132
- | `class` | `string` | `''` |
133
- | `disabled` | `boolean` | `false` |
134
-
135
- Use the default content variant for panel cards and `variant="trigger"` for top-level direct links.
136
-
137
- ## Styling and theming
138
-
139
- - Pass `class` to the root, list, item, trigger, or link primitives when the layout needs local adjustments.
140
- - Style panel width, grid, and card composition inside the `ng-template` block.
141
- - Use shared tokens such as `border-border`, `bg-popover`, and `text-muted-foreground` inside panel cards.
142
-
143
- ## Accessibility
144
-
145
- - Set `ariaLabel` when the page contains more than one navigation landmark.
146
- - Use real anchors for destinations so browser and assistive-technology link semantics stay intact.
147
- - Keep panel cards concise and descriptive so trigger-to-content relationships stay understandable.
148
-
149
- ## Keyboard interactions
150
-
151
- - `ArrowLeft` and `ArrowRight` move focus across the top-level items.
152
- - `Home` and `End` jump to the first and last top-level item.
153
- - `ArrowDown` opens the active trigger and moves focus into the first focusable panel item.
154
- - `Escape` closes the active panel and returns focus to the trigger.
155
-
156
- ## Angular notes
157
-
158
- - The Angular surface uses `ng-template[uiNavigationMenuContent]` instead of a JSX-style child component so overlay ownership stays explicit.
159
- - There is no `asChild` prop. Compose anchors and buttons directly with the provided directives.
160
- - Use `variant="trigger"` on `uiNavigationMenuLink` when the top-level item should navigate immediately.
@@ -1,4 +0,0 @@
1
- {
2
- "module": "../../fesm2022/ojiepermana-angular-component-navigation-menu.mjs",
3
- "typings": "../../types/ojiepermana-angular-component-navigation-menu.d.ts"
4
- }