@ojiepermana/angular 22.1.11 → 22.1.13

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 (340) hide show
  1. package/README.md +32 -26
  2. package/chart/README.md +272 -0
  3. package/component/README.md +89 -0
  4. package/component/accordion/README.md +195 -0
  5. package/component/alert/README.md +184 -0
  6. package/component/alert-dialog/README.md +255 -0
  7. package/component/aspect-ratio/README.md +116 -0
  8. package/component/avatar/README.md +182 -0
  9. package/component/badge/README.md +143 -0
  10. package/component/breadcrumb/README.md +223 -0
  11. package/component/button/README.md +141 -0
  12. package/component/button-group/README.md +214 -0
  13. package/component/calendar/README.md +137 -0
  14. package/component/card/README.md +232 -0
  15. package/component/carousel/README.md +276 -0
  16. package/component/checkbox/README.md +153 -0
  17. package/component/collapsible/README.md +216 -0
  18. package/component/combobox/README.md +202 -0
  19. package/component/command/README.md +287 -0
  20. package/component/composer/README.md +241 -0
  21. package/component/context-menu/README.md +268 -0
  22. package/component/date-picker/README.md +202 -0
  23. package/component/dialog/README.md +276 -0
  24. package/component/drawer/README.md +147 -0
  25. package/component/dropdown-menu/README.md +336 -0
  26. package/component/editor/README.md +152 -0
  27. package/component/empty/README.md +193 -0
  28. package/component/form/README.md +216 -0
  29. package/component/hover-card/README.md +150 -0
  30. package/component/icon/README.md +25 -0
  31. package/component/input/README.md +160 -0
  32. package/component/input-group/README.md +245 -0
  33. package/component/input-otp/README.md +331 -0
  34. package/component/item/README.md +254 -0
  35. package/component/kanban/README.md +81 -0
  36. package/component/kbd/README.md +141 -0
  37. package/component/label/README.md +137 -0
  38. package/component/menubar/README.md +270 -0
  39. package/component/native-select/README.md +176 -0
  40. package/component/navigation-menu/README.md +165 -0
  41. package/component/pagination/README.md +151 -0
  42. package/component/pillbox/README.md +68 -0
  43. package/component/popover/README.md +54 -0
  44. package/component/progress/README.md +160 -0
  45. package/component/radio/README.md +212 -0
  46. package/component/resizable/README.md +178 -0
  47. package/component/scroll-area/README.md +150 -0
  48. package/component/select/README.md +228 -0
  49. package/component/separator/README.md +175 -0
  50. package/component/sheet/README.md +190 -0
  51. package/component/skeleton/README.md +158 -0
  52. package/component/slider/README.md +207 -0
  53. package/component/spinner/README.md +160 -0
  54. package/component/switch/README.md +170 -0
  55. package/component/table/README.md +292 -0
  56. package/component/tabs/README.md +220 -0
  57. package/component/textarea/README.md +169 -0
  58. package/component/timeline/README.md +94 -0
  59. package/component/toast/README.md +173 -0
  60. package/component/toggle/README.md +133 -0
  61. package/component/toggle-group/README.md +234 -0
  62. package/component/tooltip/README.md +230 -0
  63. package/fesm2022/ojiepermana-angular-chart-area.mjs +289 -3
  64. package/fesm2022/ojiepermana-angular-chart-bar.mjs +722 -3
  65. package/fesm2022/ojiepermana-angular-chart-core.mjs +1482 -3
  66. package/fesm2022/ojiepermana-angular-chart-line.mjs +294 -3
  67. package/fesm2022/ojiepermana-angular-chart-pie.mjs +291 -3
  68. package/fesm2022/ojiepermana-angular-chart-primitives.mjs +1301 -3
  69. package/fesm2022/ojiepermana-angular-chart-radar.mjs +421 -3
  70. package/fesm2022/ojiepermana-angular-chart-radial.mjs +295 -3
  71. package/fesm2022/ojiepermana-angular-chart-scatter.mjs +306 -3
  72. package/fesm2022/ojiepermana-angular-chart.mjs +12 -3
  73. package/fesm2022/ojiepermana-angular-component-accordion.mjs +267 -3
  74. package/fesm2022/ojiepermana-angular-component-alert-dialog.mjs +359 -3
  75. package/fesm2022/ojiepermana-angular-component-alert.mjs +101 -3
  76. package/fesm2022/ojiepermana-angular-component-aspect-ratio.mjs +31 -3
  77. package/fesm2022/ojiepermana-angular-component-avatar.mjs +139 -3
  78. package/fesm2022/ojiepermana-angular-component-badge.mjs +57 -3
  79. package/fesm2022/ojiepermana-angular-component-breadcrumb.mjs +192 -3
  80. package/fesm2022/ojiepermana-angular-component-button-group.mjs +95 -3
  81. package/fesm2022/ojiepermana-angular-component-button.mjs +73 -3
  82. package/fesm2022/ojiepermana-angular-component-calendar.mjs +718 -3
  83. package/fesm2022/ojiepermana-angular-component-card.mjs +167 -3
  84. package/fesm2022/ojiepermana-angular-component-carousel.mjs +326 -3
  85. package/fesm2022/ojiepermana-angular-component-checkbox.mjs +190 -3
  86. package/fesm2022/ojiepermana-angular-component-collapsible.mjs +117 -3
  87. package/fesm2022/ojiepermana-angular-component-combobox.mjs +327 -3
  88. package/fesm2022/ojiepermana-angular-component-command.mjs +351 -3
  89. package/fesm2022/ojiepermana-angular-component-composer.mjs +359 -3
  90. package/fesm2022/ojiepermana-angular-component-context-menu.mjs +158 -3
  91. package/fesm2022/ojiepermana-angular-component-date-picker.mjs +482 -3
  92. package/fesm2022/ojiepermana-angular-component-dialog.mjs +400 -3
  93. package/fesm2022/ojiepermana-angular-component-drawer.mjs +1 -3
  94. package/fesm2022/ojiepermana-angular-component-dropdown-menu.mjs +689 -3
  95. package/fesm2022/ojiepermana-angular-component-editor.mjs +511 -3
  96. package/fesm2022/ojiepermana-angular-component-empty.mjs +134 -3
  97. package/fesm2022/ojiepermana-angular-component-form.mjs +438 -3
  98. package/fesm2022/ojiepermana-angular-component-hover-card.mjs +273 -3
  99. package/fesm2022/ojiepermana-angular-component-icon.mjs +139 -3
  100. package/fesm2022/ojiepermana-angular-component-input-group.mjs +176 -3
  101. package/fesm2022/ojiepermana-angular-component-input-otp.mjs +550 -3
  102. package/fesm2022/ojiepermana-angular-component-input.mjs +52 -3
  103. package/fesm2022/ojiepermana-angular-component-item.mjs +264 -3
  104. package/fesm2022/ojiepermana-angular-component-kanban.mjs +310 -3
  105. package/fesm2022/ojiepermana-angular-component-kbd.mjs +48 -3
  106. package/fesm2022/ojiepermana-angular-component-label.mjs +27 -3
  107. package/fesm2022/ojiepermana-angular-component-menubar.mjs +327 -3
  108. package/fesm2022/ojiepermana-angular-component-native-select.mjs +62 -3
  109. package/fesm2022/ojiepermana-angular-component-navigation-menu.mjs +378 -3
  110. package/fesm2022/ojiepermana-angular-component-pagination.mjs +238 -3
  111. package/fesm2022/ojiepermana-angular-component-pillbox.mjs +999 -3
  112. package/fesm2022/ojiepermana-angular-component-popover.mjs +201 -3
  113. package/fesm2022/ojiepermana-angular-component-progress.mjs +57 -3
  114. package/fesm2022/ojiepermana-angular-component-radio.mjs +180 -3
  115. package/fesm2022/ojiepermana-angular-component-resizable.mjs +493 -3
  116. package/fesm2022/ojiepermana-angular-component-scroll-area.mjs +51 -3
  117. package/fesm2022/ojiepermana-angular-component-segmented-control.mjs +227 -3
  118. package/fesm2022/ojiepermana-angular-component-select.mjs +609 -3
  119. package/fesm2022/ojiepermana-angular-component-separator.mjs +31 -3
  120. package/fesm2022/ojiepermana-angular-component-sheet.mjs +407 -3
  121. package/fesm2022/ojiepermana-angular-component-skeleton.mjs +25 -3
  122. package/fesm2022/ojiepermana-angular-component-slider.mjs +456 -3
  123. package/fesm2022/ojiepermana-angular-component-spinner.mjs +56 -3
  124. package/fesm2022/ojiepermana-angular-component-switch.mjs +145 -3
  125. package/fesm2022/ojiepermana-angular-component-table.mjs +155 -3
  126. package/fesm2022/ojiepermana-angular-component-tabs.mjs +315 -3
  127. package/fesm2022/ojiepermana-angular-component-textarea.mjs +46 -3
  128. package/fesm2022/ojiepermana-angular-component-timeline.mjs +237 -3
  129. package/fesm2022/ojiepermana-angular-component-toast.mjs +241 -3
  130. package/fesm2022/ojiepermana-angular-component-toggle-group.mjs +290 -3
  131. package/fesm2022/ojiepermana-angular-component-toggle.mjs +76 -3
  132. package/fesm2022/ojiepermana-angular-component-tooltip.mjs +519 -3
  133. package/fesm2022/ojiepermana-angular-component-utils-core.mjs +310 -3
  134. package/fesm2022/ojiepermana-angular-component-utils-overlay.mjs +62 -3
  135. package/fesm2022/ojiepermana-angular-component-utils-scale.mjs +34 -3
  136. package/fesm2022/ojiepermana-angular-component-utils.mjs +3 -2
  137. package/fesm2022/ojiepermana-angular-component.mjs +4 -4
  138. package/fesm2022/ojiepermana-angular-navigation-core.mjs +21 -3
  139. package/fesm2022/ojiepermana-angular-navigation-icon.mjs +20 -3
  140. package/fesm2022/ojiepermana-angular-navigation-navigation-badge-count.component-CDBxQ8rk.mjs +91 -0
  141. package/fesm2022/ojiepermana-angular-navigation-navigation-dockbar-menu.component-DBQHdvGa.mjs +512 -0
  142. package/fesm2022/ojiepermana-angular-navigation-navigation-entry-grid.component-Cd-jh6tg.mjs +623 -0
  143. package/fesm2022/ojiepermana-angular-navigation-navigation-flyout-menu.component-BCGvhoYj.mjs +404 -0
  144. package/fesm2022/ojiepermana-angular-navigation-navigation-horizontal.component-Dk_03e-6.mjs +466 -0
  145. package/fesm2022/ojiepermana-angular-navigation-ojiepermana-angular-navigation-DNKU6viC.mjs +2642 -0
  146. package/fesm2022/ojiepermana-angular-navigation-service.mjs +725 -3
  147. package/fesm2022/ojiepermana-angular-navigation-types.mjs +65 -4
  148. package/fesm2022/ojiepermana-angular-navigation.mjs +4 -10
  149. package/fesm2022/ojiepermana-angular-sdk.mjs +204 -4
  150. package/fesm2022/ojiepermana-angular-theme-component-settings.mjs +1387 -3
  151. package/fesm2022/ojiepermana-angular-theme-layout-services.mjs +331 -3
  152. package/fesm2022/ojiepermana-angular-theme-layout-types.mjs +45 -4
  153. package/fesm2022/ojiepermana-angular-theme-layout-wrapper.mjs +1044 -3
  154. package/fesm2022/ojiepermana-angular-theme-layout.mjs +729 -3
  155. package/fesm2022/ojiepermana-angular-theme-page-core.mjs +381 -3
  156. package/fesm2022/ojiepermana-angular-theme-page-filter.mjs +267 -3
  157. package/fesm2022/ojiepermana-angular-theme-page-root.mjs +361 -3
  158. package/fesm2022/ojiepermana-angular-theme-page-side.mjs +198 -3
  159. package/fesm2022/ojiepermana-angular-theme-page-slots.mjs +110 -3
  160. package/fesm2022/ojiepermana-angular-theme-page.mjs +7 -2
  161. package/fesm2022/ojiepermana-angular-theme-shell-services.mjs +338 -3
  162. package/fesm2022/ojiepermana-angular-theme-shell-types.mjs +160 -4
  163. package/fesm2022/ojiepermana-angular-theme-shell.mjs +811 -3
  164. package/fesm2022/ojiepermana-angular-theme-styles.mjs +783 -3
  165. package/fesm2022/ojiepermana-angular-theme.mjs +4 -4
  166. package/fesm2022/ojiepermana-angular.mjs +6 -11
  167. package/navigation/README.md +374 -0
  168. package/package.json +81 -20
  169. package/sdk/README.md +212 -0
  170. package/sdk/schematics/collection.json +20 -0
  171. package/sdk/schematics/init/index.js +83 -0
  172. package/sdk/schematics/init/schema.json +19 -0
  173. package/sdk/schematics/ng-add/index.js +147 -0
  174. package/sdk/schematics/ng-add/schema.json +14 -0
  175. package/sdk/schematics/package.json +3 -0
  176. package/sdk/schematics/sdk/index.js +175 -0
  177. package/sdk/schematics/sdk/schema.json +19 -0
  178. package/sdk/sdk.config.example.json +24 -0
  179. package/sdk/src/config/loader.js +43 -0
  180. package/sdk/src/config/schema.js +59 -0
  181. package/sdk/src/emit/client.js +251 -0
  182. package/sdk/src/emit/metadata.js +310 -0
  183. package/sdk/src/emit/models.js +104 -0
  184. package/sdk/src/emit/navigation.js +56 -0
  185. package/sdk/src/emit/operations.js +118 -0
  186. package/sdk/src/emit/public-api.js +54 -0
  187. package/sdk/src/emit/services.js +110 -0
  188. package/sdk/src/engine.js +67 -0
  189. package/sdk/src/layout/per-domain.js +360 -0
  190. package/sdk/src/package.json +3 -0
  191. package/sdk/src/parser/bundle.js +25 -0
  192. package/sdk/src/parser/ir.js +429 -0
  193. package/sdk/src/parser/types.js +7 -0
  194. package/sdk/src/render/template.js +152 -0
  195. package/sdk/src/writer/index.js +286 -0
  196. package/theme/README.md +126 -0
  197. package/theme/component/settings/README.md +135 -0
  198. package/theme/layout/README.md +539 -0
  199. package/theme/page/README.md +453 -0
  200. package/theme/shell/README.md +340 -0
  201. package/theme/styles/README.md +178 -0
  202. package/theme/styles/css/base/components.css +553 -0
  203. package/theme/styles/css/base/index.css +14 -0
  204. package/theme/styles/css/base/package.css +9 -0
  205. package/theme/styles/css/base/prefers-dark.css +86 -0
  206. package/theme/styles/css/base/print.css +62 -0
  207. package/theme/styles/css/base/status.css +38 -0
  208. package/theme/styles/css/base/tailwind.css +165 -0
  209. package/theme/styles/css/base/theme.css +374 -0
  210. package/theme/styles/css/base/tokens.css +361 -0
  211. package/theme/styles/css/color/amber.css +72 -0
  212. package/theme/styles/css/color/blue.css +72 -0
  213. package/theme/styles/css/color/brand.css +38 -0
  214. package/theme/styles/css/color/cyan.css +72 -0
  215. package/theme/styles/css/color/emerald.css +72 -0
  216. package/theme/styles/css/color/fuchsia.css +72 -0
  217. package/theme/styles/css/color/green.css +72 -0
  218. package/theme/styles/css/color/index.css +19 -0
  219. package/theme/styles/css/color/indigo.css +72 -0
  220. package/theme/styles/css/color/lime.css +72 -0
  221. package/theme/styles/css/color/orange.css +72 -0
  222. package/theme/styles/css/color/pink.css +72 -0
  223. package/theme/styles/css/color/purple.css +72 -0
  224. package/theme/styles/css/color/red.css +72 -0
  225. package/theme/styles/css/color/rose.css +72 -0
  226. package/theme/styles/css/color/sky.css +72 -0
  227. package/theme/styles/css/color/teal.css +72 -0
  228. package/theme/styles/css/color/violet.css +72 -0
  229. package/theme/styles/css/color/yellow.css +72 -0
  230. package/theme/styles/css/index.css +18 -0
  231. package/theme/styles/css/neutral/gray.css +63 -0
  232. package/theme/styles/css/neutral/index.css +11 -0
  233. package/theme/styles/css/neutral/mauve.css +63 -0
  234. package/theme/styles/css/neutral/mist.css +63 -0
  235. package/theme/styles/css/neutral/neutral.css +63 -0
  236. package/theme/styles/css/neutral/olive.css +63 -0
  237. package/theme/styles/css/neutral/slate.css +63 -0
  238. package/theme/styles/css/neutral/stone.css +63 -0
  239. package/theme/styles/css/neutral/taupe.css +63 -0
  240. package/theme/styles/css/neutral/zinc.css +63 -0
  241. package/theme/styles/css/radius/index.css +30 -0
  242. package/theme/styles/css/space/index.css +20 -0
  243. package/types/ojiepermana-angular-chart-area.d.ts +76 -1
  244. package/types/ojiepermana-angular-chart-bar.d.ts +201 -1
  245. package/types/ojiepermana-angular-chart-core.d.ts +811 -1
  246. package/types/ojiepermana-angular-chart-line.d.ts +75 -1
  247. package/types/ojiepermana-angular-chart-pie.d.ts +131 -1
  248. package/types/ojiepermana-angular-chart-primitives.d.ts +291 -1
  249. package/types/ojiepermana-angular-chart-radar.d.ts +116 -1
  250. package/types/ojiepermana-angular-chart-radial.d.ts +116 -1
  251. package/types/ojiepermana-angular-chart-scatter.d.ts +125 -1
  252. package/types/ojiepermana-angular-chart.d.ts +2 -1
  253. package/types/ojiepermana-angular-component-accordion.d.ts +85 -1
  254. package/types/ojiepermana-angular-component-alert-dialog.d.ts +140 -1
  255. package/types/ojiepermana-angular-component-alert.d.ts +42 -1
  256. package/types/ojiepermana-angular-component-aspect-ratio.d.ts +12 -1
  257. package/types/ojiepermana-angular-component-avatar.d.ts +56 -1
  258. package/types/ojiepermana-angular-component-badge.d.ts +24 -1
  259. package/types/ojiepermana-angular-component-breadcrumb.d.ts +46 -1
  260. package/types/ojiepermana-angular-component-button-group.d.ts +26 -1
  261. package/types/ojiepermana-angular-component-button.d.ts +27 -1
  262. package/types/ojiepermana-angular-component-calendar.d.ts +111 -1
  263. package/types/ojiepermana-angular-component-card.d.ts +69 -1
  264. package/types/ojiepermana-angular-component-carousel.d.ts +86 -1
  265. package/types/ojiepermana-angular-component-checkbox.d.ts +42 -1
  266. package/types/ojiepermana-angular-component-collapsible.d.ts +42 -1
  267. package/types/ojiepermana-angular-component-combobox.d.ts +60 -1
  268. package/types/ojiepermana-angular-component-command.d.ts +130 -1
  269. package/types/ojiepermana-angular-component-composer.d.ts +90 -1
  270. package/types/ojiepermana-angular-component-context-menu.d.ts +54 -1
  271. package/types/ojiepermana-angular-component-date-picker.d.ts +109 -1
  272. package/types/ojiepermana-angular-component-dialog.d.ts +136 -1
  273. package/types/ojiepermana-angular-component-drawer.d.ts +1 -1
  274. package/types/ojiepermana-angular-component-dropdown-menu.d.ts +248 -1
  275. package/types/ojiepermana-angular-component-editor.d.ts +135 -1
  276. package/types/ojiepermana-angular-component-empty.d.ts +50 -1
  277. package/types/ojiepermana-angular-component-form.d.ts +159 -1
  278. package/types/ojiepermana-angular-component-hover-card.d.ts +75 -1
  279. package/types/ojiepermana-angular-component-icon.d.ts +89 -1
  280. package/types/ojiepermana-angular-component-input-group.d.ts +51 -1
  281. package/types/ojiepermana-angular-component-input-otp.d.ts +155 -1
  282. package/types/ojiepermana-angular-component-input.d.ts +21 -1
  283. package/types/ojiepermana-angular-component-item.d.ts +93 -1
  284. package/types/ojiepermana-angular-component-kanban.d.ts +70 -1
  285. package/types/ojiepermana-angular-component-kbd.d.ts +16 -1
  286. package/types/ojiepermana-angular-component-label.d.ts +11 -1
  287. package/types/ojiepermana-angular-component-menubar.d.ts +93 -1
  288. package/types/ojiepermana-angular-component-native-select.d.ts +26 -1
  289. package/types/ojiepermana-angular-component-navigation-menu.d.ts +104 -1
  290. package/types/ojiepermana-angular-component-pagination.d.ts +33 -1
  291. package/types/ojiepermana-angular-component-pillbox.d.ts +222 -1
  292. package/types/ojiepermana-angular-component-popover.d.ts +66 -1
  293. package/types/ojiepermana-angular-component-progress.d.ts +17 -1
  294. package/types/ojiepermana-angular-component-radio.d.ts +60 -1
  295. package/types/ojiepermana-angular-component-resizable.d.ts +117 -1
  296. package/types/ojiepermana-angular-component-scroll-area.d.ts +19 -1
  297. package/types/ojiepermana-angular-component-segmented-control.d.ts +58 -1
  298. package/types/ojiepermana-angular-component-select.d.ts +122 -1
  299. package/types/ojiepermana-angular-component-separator.d.ts +14 -1
  300. package/types/ojiepermana-angular-component-sheet.d.ts +130 -1
  301. package/types/ojiepermana-angular-component-skeleton.d.ts +10 -1
  302. package/types/ojiepermana-angular-component-slider.d.ts +83 -1
  303. package/types/ojiepermana-angular-component-spinner.d.ts +13 -1
  304. package/types/ojiepermana-angular-component-switch.d.ts +44 -1
  305. package/types/ojiepermana-angular-component-table.d.ts +57 -1
  306. package/types/ojiepermana-angular-component-tabs.d.ts +124 -1
  307. package/types/ojiepermana-angular-component-textarea.d.ts +17 -1
  308. package/types/ojiepermana-angular-component-timeline.d.ts +64 -1
  309. package/types/ojiepermana-angular-component-toast.d.ts +64 -1
  310. package/types/ojiepermana-angular-component-toggle-group.d.ts +90 -1
  311. package/types/ojiepermana-angular-component-toggle.d.ts +25 -1
  312. package/types/ojiepermana-angular-component-tooltip.d.ts +143 -1
  313. package/types/ojiepermana-angular-component-utils-core.d.ts +184 -1
  314. package/types/ojiepermana-angular-component-utils-overlay.d.ts +21 -1
  315. package/types/ojiepermana-angular-component-utils-scale.d.ts +19 -1
  316. package/types/ojiepermana-angular-component-utils.d.ts +2 -1
  317. package/types/ojiepermana-angular-component.d.ts +2 -1
  318. package/types/ojiepermana-angular-navigation-core.d.ts +59 -1
  319. package/types/ojiepermana-angular-navigation-icon.d.ts +12 -1
  320. package/types/ojiepermana-angular-navigation-service.d.ts +116 -1
  321. package/types/ojiepermana-angular-navigation-types.d.ts +144 -1
  322. package/types/ojiepermana-angular-navigation.d.ts +507 -1
  323. package/types/ojiepermana-angular-sdk.d.ts +89 -1
  324. package/types/ojiepermana-angular-theme-component-settings.d.ts +154 -1
  325. package/types/ojiepermana-angular-theme-layout-services.d.ts +147 -1
  326. package/types/ojiepermana-angular-theme-layout-types.d.ts +40 -1
  327. package/types/ojiepermana-angular-theme-layout-wrapper.d.ts +299 -1
  328. package/types/ojiepermana-angular-theme-layout.d.ts +129 -1
  329. package/types/ojiepermana-angular-theme-page-core.d.ts +157 -1
  330. package/types/ojiepermana-angular-theme-page-filter.d.ts +77 -1
  331. package/types/ojiepermana-angular-theme-page-root.d.ts +88 -1
  332. package/types/ojiepermana-angular-theme-page-side.d.ts +50 -1
  333. package/types/ojiepermana-angular-theme-page-slots.d.ts +40 -1
  334. package/types/ojiepermana-angular-theme-page.d.ts +5 -1
  335. package/types/ojiepermana-angular-theme-shell-services.d.ts +193 -1
  336. package/types/ojiepermana-angular-theme-shell-types.d.ts +105 -1
  337. package/types/ojiepermana-angular-theme-shell.d.ts +100 -1
  338. package/types/ojiepermana-angular-theme-styles.d.ts +319 -1
  339. package/types/ojiepermana-angular-theme.d.ts +2 -1
  340. package/types/ojiepermana-angular.d.ts +5 -5
@@ -1 +1,129 @@
1
- export * from '@ojiepermana/angular-theme/layout';
1
+ import * as _angular_core from '@angular/core';
2
+ import { LayoutService, LayoutLoadingService } from '@ojiepermana/angular/theme/layout/services';
3
+ export { LAYOUT_LOADING_HIDE_DELAY_MS, LAYOUT_LOADING_INITIAL_PROGRESS, LAYOUT_LOADING_SKIP, LAYOUT_LOADING_TRICKLE_CEILING, LAYOUT_LOADING_TRICKLE_INTERVAL_MS, LayoutLoadingService, LayoutService, layoutLoadingInterceptor } from '@ojiepermana/angular/theme/layout/services';
4
+ export { LAYOUT_APPEARANCES, LAYOUT_APPEARANCE_STORAGE_KEY, LAYOUT_DEFAULT_APPEARANCE, LAYOUT_DEFAULT_SURFACE, LAYOUT_DEFAULT_TYPE, LAYOUT_DEFAULT_WIDTH, LAYOUT_LOCKED_WIDTH, LAYOUT_SURFACES, LAYOUT_SURFACE_STORAGE_KEY, LAYOUT_TYPES, LAYOUT_TYPE_STORAGE_KEY, LAYOUT_WIDTHS, LAYOUT_WIDTH_STORAGE_KEY, LayoutAppearance, LayoutContextValue, LayoutSurface, LayoutType, LayoutWidth, isUiLayoutAppearance, isUiLayoutSurface, isUiLayoutType, isUiLayoutWidth } from '@ojiepermana/angular/theme/layout/types';
5
+
6
+ declare class LayoutComponent {
7
+ protected readonly layout: LayoutService;
8
+ readonly surface: _angular_core.InputSignal<"flat" | "grid" | "grid-line" | "honeycomb" | "matrix" | "circuit" | "line-vertical" | "line-horizontal" | null>;
9
+ readonly appearance: _angular_core.InputSignal<"flat" | "border-rail" | null>;
10
+ readonly layoutAppearanceAttribute: _angular_core.InputSignal<"flat" | "border-rail" | null>;
11
+ readonly width: _angular_core.InputSignal<"full" | "wide" | "container" | "fluid" | null>;
12
+ /**
13
+ * Layout type (`vertical` | `horizontal` | `empty` | `fluid`). When set it is the
14
+ * source of truth and overrides the projected `Layout*` variant; `null` leaves the
15
+ * variant in charge.
16
+ */
17
+ readonly type: _angular_core.InputSignal<"fluid" | "vertical" | "horizontal" | "empty" | null>;
18
+ readonly class: _angular_core.InputSignal<string>;
19
+ protected readonly appearanceInput: _angular_core.Signal<"flat" | "border-rail" | null>;
20
+ protected readonly resolvedSurface: _angular_core.Signal<"flat" | "grid" | "grid-line" | "honeycomb" | "matrix" | "circuit" | "line-vertical" | "line-horizontal">;
21
+ protected readonly resolvedAppearance: _angular_core.Signal<"flat" | "border-rail">;
22
+ protected readonly resolvedWidth: _angular_core.Signal<"full" | "wide" | "container" | "fluid">;
23
+ protected readonly resolvedType: _angular_core.Signal<"fluid" | "vertical" | "horizontal" | "empty">;
24
+ protected readonly isBorderRail: _angular_core.Signal<boolean>;
25
+ protected readonly isFluidFrame: _angular_core.Signal<boolean>;
26
+ protected readonly isFullFlat: _angular_core.Signal<boolean>;
27
+ protected readonly isGridLineSurface: _angular_core.Signal<boolean>;
28
+ protected readonly showsInsetRails: _angular_core.Signal<boolean>;
29
+ protected readonly frameStageClasses: _angular_core.Signal<string>;
30
+ protected readonly railAnchorClasses: _angular_core.Signal<string>;
31
+ protected readonly contentShellClasses: _angular_core.Signal<string>;
32
+ protected readonly hostClasses: _angular_core.Signal<string>;
33
+ protected readonly frameClasses: _angular_core.Signal<string>;
34
+ protected readonly frameLayerClasses: _angular_core.Signal<string>;
35
+ constructor();
36
+ private surfaceClasses;
37
+ private widthPaddingClasses;
38
+ private frameSizeClasses;
39
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutComponent, never>;
40
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutComponent, "Layout", never, { "surface": { "alias": "surface"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "layoutAppearanceAttribute": { "alias": "layout-appearance"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "type": { "alias": "layout-type"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
41
+ }
42
+
43
+ declare class LayoutVerticalComponent {
44
+ private readonly layout;
45
+ readonly class: _angular_core.InputSignal<string>;
46
+ protected readonly classes: _angular_core.Signal<string>;
47
+ constructor();
48
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutVerticalComponent, never>;
49
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutVerticalComponent, "LayoutVertical", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
50
+ }
51
+
52
+ declare class LayoutHorizontalComponent {
53
+ private readonly layout;
54
+ readonly class: _angular_core.InputSignal<string>;
55
+ protected readonly classes: _angular_core.Signal<string>;
56
+ constructor();
57
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutHorizontalComponent, never>;
58
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutHorizontalComponent, "LayoutHorizontal", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
59
+ }
60
+
61
+ declare class LayoutEmptyComponent {
62
+ private readonly layout;
63
+ readonly class: _angular_core.InputSignal<string>;
64
+ protected readonly classes: _angular_core.Signal<string>;
65
+ constructor();
66
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutEmptyComponent, never>;
67
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutEmptyComponent, "LayoutEmpty", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
68
+ }
69
+
70
+ declare class LayoutFluidComponent {
71
+ private readonly layout;
72
+ readonly class: _angular_core.InputSignal<string>;
73
+ protected readonly classes: _angular_core.Signal<string>;
74
+ constructor();
75
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutFluidComponent, never>;
76
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutFluidComponent, "LayoutFluid", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
77
+ }
78
+
79
+ declare class LayoutNavigationComponent {
80
+ protected readonly layout: LayoutService;
81
+ readonly ariaLabel: _angular_core.InputSignal<string>;
82
+ /** Turn off when the child `<Navigation>` is already the semantic navigation landmark. */
83
+ readonly landmark: _angular_core.InputSignalWithTransform<boolean, unknown>;
84
+ readonly class: _angular_core.InputSignal<string>;
85
+ protected readonly classes: _angular_core.Signal<string>;
86
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutNavigationComponent, never>;
87
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutNavigationComponent, "LayoutNavigation", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "landmark": { "alias": "landmark"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
88
+ }
89
+
90
+ declare class LayoutContentComponent {
91
+ protected readonly layout: LayoutService;
92
+ private readonly document;
93
+ private readonly host;
94
+ private readonly router;
95
+ readonly class: _angular_core.InputSignal<string>;
96
+ /** Stable target for the skip link. */
97
+ readonly contentId: _angular_core.InputSignal<string>;
98
+ /** Move focus to the main landmark after NavigationEnd (opt-in). */
99
+ readonly focusOnNavigation: _angular_core.InputSignal<boolean>;
100
+ protected readonly classes: _angular_core.Signal<string>;
101
+ constructor();
102
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutContentComponent, never>;
103
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutContentComponent, "LayoutContent", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "contentId": { "alias": "content-id"; "required": false; "isSignal": true; }; "focusOnNavigation": { "alias": "focus-on-navigation"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
104
+ }
105
+
106
+ /**
107
+ * A thin progress line along the top edge of the viewport, running left to right.
108
+ * `Layout` renders it automatically and `LayoutLoadingService` drives it, so it
109
+ * turns itself on while a route navigation or a data load is in flight.
110
+ *
111
+ * It can also be placed at the application root, so the bar is already up during
112
+ * the first navigation; any extra instance inside `Layout` goes inert on its own,
113
+ * and the line is never drawn twice.
114
+ */
115
+ declare class LayoutLoadingComponent {
116
+ protected readonly loading: LayoutLoadingService;
117
+ private readonly hostId;
118
+ readonly class: _angular_core.InputSignal<string>;
119
+ readonly ariaLabel: _angular_core.InputSignal<string>;
120
+ protected readonly isPrimary: _angular_core.Signal<boolean>;
121
+ protected readonly state: _angular_core.Signal<"inert" | "active" | "idle">;
122
+ protected readonly hostClasses: _angular_core.Signal<string>;
123
+ protected readonly roundedProgress: _angular_core.Signal<number>;
124
+ constructor();
125
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<LayoutLoadingComponent, never>;
126
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<LayoutLoadingComponent, "LayoutLoading", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
127
+ }
128
+
129
+ export { LayoutComponent, LayoutContentComponent, LayoutEmptyComponent, LayoutFluidComponent, LayoutHorizontalComponent, LayoutLoadingComponent, LayoutNavigationComponent, LayoutVerticalComponent };
@@ -1 +1,157 @@
1
- export * from '@ojiepermana/angular-theme/page/core';
1
+ import * as _angular_core from '@angular/core';
2
+ import { Signal } from '@angular/core';
3
+
4
+ declare const PAGE_VARIANTS: readonly ["stacked", "side"];
5
+ declare const PAGE_SIDE_POSITIONS: readonly ["left", "right"];
6
+ declare const PAGE_SIDE_MODES: readonly ["sticky", "drawer", "overlay"];
7
+ declare const PAGE_SCROLL_VALUES: readonly ["content", "page"];
8
+ declare const PAGE_HEIGHT_VALUES: readonly ["auto", "fix"];
9
+ /** Visual appearance shared with the layout/navigation axes — unifies borders. */
10
+ declare const PAGE_APPEARANCES: readonly ["flat", "border-rail"];
11
+ /** `PageFilter` placement: `stacked` = a bar between header and content; `side` = a column beside content. */
12
+ declare const PAGE_FILTER_PLACEMENTS: readonly ["stacked", "side"];
13
+ type PageVariant = (typeof PAGE_VARIANTS)[number];
14
+ type PageSidePosition = (typeof PAGE_SIDE_POSITIONS)[number];
15
+ type PageSideMode = (typeof PAGE_SIDE_MODES)[number];
16
+ type PageScroll = (typeof PAGE_SCROLL_VALUES)[number];
17
+ type PageHeight = (typeof PAGE_HEIGHT_VALUES)[number];
18
+ type PageAppearance = (typeof PAGE_APPEARANCES)[number];
19
+ type PageFilterPlacement = (typeof PAGE_FILTER_PLACEMENTS)[number];
20
+ declare const PAGE_DEFAULT_VARIANT: PageVariant;
21
+ declare const PAGE_DEFAULT_SIDE_POSITION: PageSidePosition;
22
+ declare const PAGE_DEFAULT_SIDE_MODE: PageSideMode;
23
+ declare const PAGE_DEFAULT_SCROLL: PageScroll;
24
+ declare const PAGE_DEFAULT_HEIGHT: PageHeight;
25
+ declare const PAGE_DEFAULT_APPEARANCE: PageAppearance;
26
+ declare const PAGE_DEFAULT_SIDE_WIDTH = "16rem";
27
+ /** Placement default `PageFilter`. */
28
+ declare const PAGE_DEFAULT_FILTER_PLACEMENT: PageFilterPlacement;
29
+ /** Default `PageFilter` mode under `placement="side"`; `stacked` always behaves as `sticky`. */
30
+ declare const PAGE_DEFAULT_FILTER_MODE: PageSideMode;
31
+ /** Default position of the `PageFilter` column under `placement="side"`. */
32
+ declare const PAGE_DEFAULT_FILTER_POSITION: PageSidePosition;
33
+ /** Default width of the `PageFilter` column under `placement="side"` (sticky/drawer/overlay). */
34
+ declare const PAGE_DEFAULT_FILTER_WIDTH = "18rem";
35
+ declare function isUiPageVariant(value: string | null): value is PageVariant;
36
+ declare function isUiPageSidePosition(value: string | null): value is PageSidePosition;
37
+ declare function isUiPageSideMode(value: string | null): value is PageSideMode;
38
+ declare function isUiPageScroll(value: string | null): value is PageScroll;
39
+ declare function isUiPageHeight(value: string | null): value is PageHeight;
40
+ declare function isUiPageAppearance(value: string | null): value is PageAppearance;
41
+ declare function isUiPageFilterPlacement(value: string | null): value is PageFilterPlacement;
42
+
43
+ declare class PageStateService {
44
+ private readonly variantState;
45
+ private readonly heightState;
46
+ private readonly scrollState;
47
+ private readonly appearanceState;
48
+ private readonly positionState;
49
+ private readonly sideModeState;
50
+ private readonly internalSideOpenState;
51
+ private readonly controlledSideOpenState;
52
+ private readonly sideWidthState;
53
+ private readonly sideIdState;
54
+ private readonly sideOpenRequestState;
55
+ private readonly sideOpenRequestVersionState;
56
+ private sideReturnFocus;
57
+ /** Aktif saat apps-launcher mengambang di atas `PageHeader`; header memesan ruang kanan agar isinya tidak tertimpa. */
58
+ private readonly appsLauncherReserveState;
59
+ private readonly filterPlacementState;
60
+ private readonly filterModeState;
61
+ private readonly filterPositionState;
62
+ private readonly filterWidthState;
63
+ private readonly filterIdState;
64
+ private readonly internalFilterOpenState;
65
+ private readonly controlledFilterOpenState;
66
+ private readonly filterOpenRequestState;
67
+ private readonly filterOpenRequestVersionState;
68
+ private filterReturnFocus;
69
+ readonly variant: _angular_core.Signal<"stacked" | "side">;
70
+ readonly height: _angular_core.Signal<"auto" | "fix">;
71
+ readonly scroll: _angular_core.Signal<"content" | "page">;
72
+ readonly appearance: _angular_core.Signal<"flat" | "border-rail">;
73
+ readonly position: _angular_core.Signal<"left" | "right">;
74
+ readonly sideMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
75
+ readonly sideWidth: _angular_core.Signal<string>;
76
+ readonly sideId: _angular_core.Signal<string | null>;
77
+ readonly sideOpenRequest: _angular_core.Signal<boolean | null>;
78
+ readonly sideOpenRequestVersion: _angular_core.Signal<number>;
79
+ readonly appsLauncherReserve: _angular_core.Signal<boolean>;
80
+ readonly sideOpen: _angular_core.Signal<boolean>;
81
+ readonly isSideInteractive: _angular_core.Signal<boolean>;
82
+ readonly isSideVisible: _angular_core.Signal<boolean>;
83
+ readonly filterPlacement: _angular_core.Signal<"stacked" | "side">;
84
+ readonly filterMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
85
+ readonly filterPosition: _angular_core.Signal<"left" | "right">;
86
+ readonly filterWidth: _angular_core.Signal<string>;
87
+ readonly filterId: _angular_core.Signal<string | null>;
88
+ readonly filterOpenRequest: _angular_core.Signal<boolean | null>;
89
+ readonly filterOpenRequestVersion: _angular_core.Signal<number>;
90
+ readonly filterOpen: _angular_core.Signal<boolean>;
91
+ readonly isFilterInteractive: _angular_core.Signal<boolean>;
92
+ readonly isFilterVisible: _angular_core.Signal<boolean>;
93
+ registerRoot(config: {
94
+ variant: PageVariant;
95
+ height: PageHeight;
96
+ scroll: PageScroll;
97
+ appearance: PageAppearance;
98
+ position: PageSidePosition;
99
+ sideMode: PageSideMode;
100
+ sideWidth: string;
101
+ }): void;
102
+ registerSide(config: {
103
+ mode: PageSideMode;
104
+ position: PageSidePosition;
105
+ width: string;
106
+ id: string;
107
+ }): void;
108
+ setAppsLauncherReserve(reserve: boolean): void;
109
+ setControlledSideOpen(open: boolean | null): void;
110
+ setSideOpen(open: boolean): void;
111
+ openSide(): boolean;
112
+ closeSide(): boolean;
113
+ toggleSide(): boolean;
114
+ /** Stores the concrete trigger before opening so restoration is not browser-timing dependent. */
115
+ setSideReturnFocus(element: HTMLElement): void;
116
+ takeSideReturnFocus(): HTMLElement | null;
117
+ private requestSideOpenChange;
118
+ registerFilter(config: {
119
+ placement: PageFilterPlacement;
120
+ mode: PageSideMode;
121
+ position: PageSidePosition;
122
+ width: string;
123
+ id: string;
124
+ }): void;
125
+ setControlledFilterOpen(open: boolean | null): void;
126
+ setFilterOpen(open: boolean): void;
127
+ openFilter(): boolean;
128
+ closeFilter(): boolean;
129
+ toggleFilter(): boolean;
130
+ /** Mirrors side focus ownership for filter drawer/overlay triggers. */
131
+ setFilterReturnFocus(element: HTMLElement): void;
132
+ takeFilterReturnFocus(): HTMLElement | null;
133
+ private requestFilterOpenChange;
134
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageStateService, never>;
135
+ static ɵprov: _angular_core.ɵɵInjectableDeclaration<PageStateService>;
136
+ }
137
+
138
+ /**
139
+ * Accessibility management for the Page panels.
140
+ *
141
+ * A drawer only gets initial focus and focus restoration. An overlay is a modal dialog:
142
+ * focus is trapped, the background is made inert, and document scrolling is locked until
143
+ * the panel closes. Must be called from an injection context, because it uses `effect`.
144
+ */
145
+ /** @internal */
146
+ declare function ɵsetupOverlayFocusManagement(config: {
147
+ document: Document | null;
148
+ host: HTMLElement;
149
+ isOpen: Signal<boolean>;
150
+ isInteractive: Signal<boolean>;
151
+ isModal: Signal<boolean>;
152
+ /** Optional trigger captured at the open gesture, before a modal makes it inert. */
153
+ takeReturnFocus?: () => HTMLElement | null;
154
+ }): void;
155
+
156
+ export { PAGE_APPEARANCES, PAGE_DEFAULT_APPEARANCE, PAGE_DEFAULT_FILTER_MODE, PAGE_DEFAULT_FILTER_PLACEMENT, PAGE_DEFAULT_FILTER_POSITION, PAGE_DEFAULT_FILTER_WIDTH, PAGE_DEFAULT_HEIGHT, PAGE_DEFAULT_SCROLL, PAGE_DEFAULT_SIDE_MODE, PAGE_DEFAULT_SIDE_POSITION, PAGE_DEFAULT_SIDE_WIDTH, PAGE_DEFAULT_VARIANT, PAGE_FILTER_PLACEMENTS, PAGE_HEIGHT_VALUES, PAGE_SCROLL_VALUES, PAGE_SIDE_MODES, PAGE_SIDE_POSITIONS, PAGE_VARIANTS, PageStateService, isUiPageAppearance, isUiPageFilterPlacement, isUiPageHeight, isUiPageScroll, isUiPageSideMode, isUiPageSidePosition, isUiPageVariant, ɵsetupOverlayFocusManagement };
157
+ export type { PageAppearance, PageFilterPlacement, PageHeight, PageScroll, PageSideMode, PageSidePosition, PageVariant };
@@ -1 +1,77 @@
1
- export * from '@ojiepermana/angular-theme/page/filter';
1
+ import * as _angular_core from '@angular/core';
2
+ import { PageStateService } from '@ojiepermana/angular/theme/page/core';
3
+
4
+ /**
5
+ * `PageFilter` — the filter slot between `PageHeader` and `PageContent`
6
+ * (`placement="stacked"`) or beside `PageContent` (`placement="side"`). Stacked, the
7
+ * filter pushes content down and content takes the remaining height. Side, it pushes
8
+ * content across, in `sticky | drawer | overlay` mode, following the `PageSide` pattern.
9
+ *
10
+ * `placement="stacked"` always behaves as `sticky` — `drawer` and `overlay` apply to
11
+ * `side` only.
12
+ */
13
+ declare class PageFilterComponent {
14
+ private readonly document;
15
+ private readonly host;
16
+ protected readonly page: PageStateService;
17
+ protected readonly resolvedId: string;
18
+ readonly placement: _angular_core.InputSignal<"stacked" | "side">;
19
+ readonly mode: _angular_core.InputSignal<"sticky" | "drawer" | "overlay">;
20
+ readonly position: _angular_core.InputSignal<"left" | "right" | null>;
21
+ readonly width: _angular_core.InputSignal<string | null>;
22
+ readonly closeOnEsc: _angular_core.InputSignal<boolean>;
23
+ /**
24
+ * `placement="stacked"` only: let `PageFilterToggle` open and close the bar (closed by
25
+ * default). Closed, the bar is hidden and content reclaims its space. Ignored under
26
+ * `placement="side"` — use `mode="drawer"` or `mode="overlay"` for a dismissible side.
27
+ */
28
+ readonly collapsible: _angular_core.InputSignalWithTransform<boolean, unknown>;
29
+ /** Accessible name for the panel in `drawer`/`overlay` mode (set as the dialog's `aria-label`). */
30
+ readonly ariaLabel: _angular_core.InputSignal<string>;
31
+ readonly class: _angular_core.InputSignal<string>;
32
+ protected readonly resolvedPlacement: _angular_core.Signal<"stacked" | "side">;
33
+ /** `stacked` adalah bar horizontal — tidak punya drawer/overlay, jadi mode efektifnya selalu `sticky`. */
34
+ protected readonly effectiveMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
35
+ protected readonly resolvedPosition: _angular_core.Signal<"left" | "right">;
36
+ protected readonly resolvedWidth: _angular_core.Signal<string>;
37
+ protected readonly resolvedScroll: _angular_core.Signal<"content" | "page">;
38
+ protected readonly isStacked: _angular_core.Signal<boolean>;
39
+ /** Bar stacked yang dapat ditutup dan sedang tertutup → disembunyikan dari layout. */
40
+ protected readonly isCollapsedStacked: _angular_core.Signal<boolean>;
41
+ protected readonly isSticky: _angular_core.Signal<boolean>;
42
+ protected readonly isDrawer: _angular_core.Signal<boolean>;
43
+ protected readonly isOverlay: _angular_core.Signal<boolean>;
44
+ /** Mode mengambang (drawer/overlay) — bersifat dialog dan butuh manajemen fokus + `inert` saat tertutup. */
45
+ protected readonly isInteractive: _angular_core.Signal<boolean>;
46
+ /** Drawer/overlay yang tertutup disembunyikan dari pohon aksesibilitas. */
47
+ protected readonly ariaHidden: _angular_core.Signal<"true" | null>;
48
+ /** Saat panel mengambang tertutup, `inert` mengeluarkan isinya dari tab order & pohon aksesibilitas (AXE). */
49
+ protected readonly inertWhenClosed: _angular_core.Signal<"" | null>;
50
+ protected readonly dialogRole: _angular_core.Signal<"dialog" | null>;
51
+ protected readonly ariaModal: _angular_core.Signal<"true" | null>;
52
+ protected readonly dialogLabel: _angular_core.Signal<string | null>;
53
+ protected readonly dialogTabindex: _angular_core.Signal<"-1" | null>;
54
+ protected readonly classes: _angular_core.Signal<string>;
55
+ constructor();
56
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageFilterComponent, never>;
57
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageFilterComponent, "PageFilter", never, { "placement": { "alias": "placement"; "required": false; "isSignal": true; }; "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "closeOnEsc": { "alias": "closeOnEsc"; "required": false; "isSignal": true; }; "collapsible": { "alias": "collapsible"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
58
+ }
59
+
60
+ /**
61
+ * `PageFilterToggle` — the button that opens and closes a `PageFilter` in `drawer` or
62
+ * `overlay` mode. Projected content replaces the label or icon; the fallback is the
63
+ * built-in funnel icon.
64
+ */
65
+ declare class PageFilterToggleComponent {
66
+ protected readonly page: PageStateService;
67
+ readonly ariaLabel: _angular_core.InputSignal<string>;
68
+ readonly class: _angular_core.InputSignal<string>;
69
+ readonly toggled: _angular_core.OutputEmitterRef<boolean>;
70
+ protected readonly hostClasses: _angular_core.Signal<string>;
71
+ protected readonly buttonClasses: _angular_core.Signal<string>;
72
+ protected handleClick(event: MouseEvent): void;
73
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageFilterToggleComponent, never>;
74
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageFilterToggleComponent, "PageFilterToggle", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "toggled": "toggled"; }, never, ["*"], true, never>;
75
+ }
76
+
77
+ export { PageFilterComponent, PageFilterToggleComponent };
@@ -1 +1,88 @@
1
- export * from '@ojiepermana/angular-theme/page/root';
1
+ import * as _ojiepermana_angular_theme_layout_wrapper from '@ojiepermana/angular/theme/layout/wrapper';
2
+ import * as _angular_core from '@angular/core';
3
+ import { NavigationItem } from '@ojiepermana/angular/navigation/types';
4
+ import { PageFilterComponent } from '@ojiepermana/angular/theme/page/filter';
5
+ import { PageHeaderComponent } from '@ojiepermana/angular/theme/page/slots';
6
+ import { PageSideComponent } from '@ojiepermana/angular/theme/page/side';
7
+ import { PageStateService } from '@ojiepermana/angular/theme/page/core';
8
+
9
+ declare class PageComponent {
10
+ protected readonly page: PageStateService;
11
+ private readonly layout;
12
+ private readonly navigation;
13
+ private readonly identity;
14
+ protected readonly projectedSide: _angular_core.Signal<PageSideComponent | undefined>;
15
+ protected readonly projectedHeader: _angular_core.Signal<PageHeaderComponent | undefined>;
16
+ protected readonly projectedFilter: _angular_core.Signal<PageFilterComponent | undefined>;
17
+ readonly variant: _angular_core.InputSignal<"stacked" | "side">;
18
+ readonly height: _angular_core.InputSignal<"auto" | "fix">;
19
+ readonly scroll: _angular_core.InputSignal<"content" | "page">;
20
+ /** Visual appearance shared with the layout (`flat | border-rail`); unifies header/footer borders. */
21
+ readonly appearance: _angular_core.InputSignal<"flat" | "border-rail">;
22
+ readonly position: _angular_core.InputSignal<"left" | "right">;
23
+ readonly sideMode: _angular_core.InputSignal<"sticky" | "drawer" | "overlay">;
24
+ readonly sideOpen: _angular_core.InputSignal<boolean | null>;
25
+ readonly sideWidth: _angular_core.InputSignal<string>;
26
+ /** Controlled state for a drawer/overlay `PageFilter`. `null` is uncontrolled — the toggle, backdrop, and Esc drive it. */
27
+ readonly filterOpen: _angular_core.InputSignal<boolean | null>;
28
+ readonly class: _angular_core.InputSignal<string>;
29
+ readonly sideOpenChange: _angular_core.OutputEmitterRef<boolean>;
30
+ readonly filterOpenChange: _angular_core.OutputEmitterRef<boolean>;
31
+ /** Under the `empty` layout, show the apps button (a flyout of the main navigation) in the top-right corner. `false` turns it off. */
32
+ readonly appsLauncher: _angular_core.InputSignalWithTransform<boolean, unknown>;
33
+ /** Id of the navigation the apps launcher surfaces (`main` by default). */
34
+ readonly appsNavId: _angular_core.InputSignal<string>;
35
+ /** Material symbol for the apps launcher button. */
36
+ readonly appsIcon: _angular_core.InputSignal<string>;
37
+ /** Label and `aria-label` for the icon-only apps launcher button. */
38
+ readonly appsLabel: _angular_core.InputSignal<string>;
39
+ /** Accessible name for the backdrop button that dismisses an open overlay panel. */
40
+ readonly overlayCloseLabel: _angular_core.InputSignal<string>;
41
+ /** Id unik untuk instance `<Navigation>` apps-launcher; tak boleh memakai id `main` (akan bentrok `claimId`). */
42
+ protected readonly launcherNavId: string;
43
+ protected readonly resolvedPosition: _angular_core.Signal<"left" | "right">;
44
+ protected readonly resolvedSideMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
45
+ protected readonly isLeftSide: _angular_core.Signal<boolean>;
46
+ protected readonly isRightSide: _angular_core.Signal<boolean>;
47
+ protected readonly hasFilter: _angular_core.Signal<boolean>;
48
+ protected readonly filterPlacement: _angular_core.Signal<"stacked" | "side">;
49
+ /** Mode efektif: `stacked` selalu `sticky`; `side` memakai mode pada `PageFilter`. */
50
+ protected readonly filterMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
51
+ protected readonly filterPosition: _angular_core.Signal<"left" | "right">;
52
+ protected readonly filterWidthVar: _angular_core.Signal<string>;
53
+ protected readonly showsSideOverlayBackdrop: _angular_core.Signal<boolean>;
54
+ protected readonly showsFilterOverlayBackdrop: _angular_core.Signal<boolean>;
55
+ protected readonly showsOverlayBackdrop: _angular_core.Signal<boolean>;
56
+ /** Signal data untuk id yang dipilih; di-recompute hanya saat `appsNavId` berubah. */
57
+ private readonly appsNavSource;
58
+ protected readonly appsNavData: _angular_core.Signal<readonly NavigationItem[]>;
59
+ /** Apps-launcher hanya muncul di layout `empty`, saat diaktifkan, dan saat nav target punya data. */
60
+ protected readonly showsAppsLauncher: _angular_core.Signal<boolean>;
61
+ /**
62
+ * Host `<Navigation>` launcher di-absolute ke pojok kanan-atas (hanya membungkus tombol trigger;
63
+ * panel flyout tetap membentang selebar `Page` lewat pengukuran container). Saat ada `PageHeader`,
64
+ * tombol menyatu di dalam pita header (offset rapat); tanpa header, mengambang di atas konten.
65
+ */
66
+ protected readonly appsLauncherHostClass: _angular_core.Signal<string>;
67
+ /** Appearance flyout mengikuti layout (seperti shell flyout); fallback ke appearance `Page`. */
68
+ protected readonly appsLauncherAppearance: _angular_core.Signal<"flat" | "border-rail">;
69
+ /** Brand/user untuk header & footer flyout — sama seperti shell flyout; `null` saat tak ada shell. */
70
+ protected readonly appsBrand: _angular_core.Signal<_ojiepermana_angular_theme_layout_wrapper.BrandIdentity | null>;
71
+ protected readonly appsUser: _angular_core.Signal<_ojiepermana_angular_theme_layout_wrapper.UserIdentity | null>;
72
+ protected readonly hostClasses: _angular_core.Signal<string>;
73
+ protected readonly shellClasses: _angular_core.Signal<string>;
74
+ protected readonly bodyClasses: _angular_core.Signal<string>;
75
+ /**
76
+ * Wrapper di sekitar `PageFilter` + `PageContent`. Tanpa filter, memakai `display: contents`
77
+ * agar transparan (perilaku body lama dipertahankan persis). Dengan filter, menjadi grid/flex
78
+ * yang menata filter (baris untuk `stacked`, kolom untuk `side`); drawer/overlay menjadikannya
79
+ * `relative` sebagai positioning context untuk panel yang mengambang.
80
+ */
81
+ protected readonly contentRegionClasses: _angular_core.Signal<string>;
82
+ constructor();
83
+ protected handleBackdropClick(): void;
84
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageComponent, never>;
85
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageComponent, "Page", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "scroll": { "alias": "scroll"; "required": false; "isSignal": true; }; "appearance": { "alias": "appearance"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "sideMode": { "alias": "sideMode"; "required": false; "isSignal": true; }; "sideOpen": { "alias": "sideOpen"; "required": false; "isSignal": true; }; "sideWidth": { "alias": "sideWidth"; "required": false; "isSignal": true; }; "filterOpen": { "alias": "filterOpen"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; "appsLauncher": { "alias": "appsLauncher"; "required": false; "isSignal": true; }; "appsNavId": { "alias": "appsNavId"; "required": false; "isSignal": true; }; "appsIcon": { "alias": "appsIcon"; "required": false; "isSignal": true; }; "appsLabel": { "alias": "appsLabel"; "required": false; "isSignal": true; }; "overlayCloseLabel": { "alias": "overlayCloseLabel"; "required": false; "isSignal": true; }; }, { "sideOpenChange": "sideOpenChange"; "filterOpenChange": "filterOpenChange"; }, ["projectedSide", "projectedHeader", "projectedFilter"], ["PageHeader", "PageSideToggle, PageFilterToggle", "PageSide", "PageFilter", "PageContent, PageDashboard", "PageFooter"], true, never>;
86
+ }
87
+
88
+ export { PageComponent };
@@ -1 +1,50 @@
1
- export * from '@ojiepermana/angular-theme/page/side';
1
+ import * as _angular_core from '@angular/core';
2
+ import { PageStateService } from '@ojiepermana/angular/theme/page/core';
3
+
4
+ declare class PageSideComponent {
5
+ private readonly document;
6
+ private readonly host;
7
+ protected readonly page: PageStateService;
8
+ protected readonly resolvedId: string;
9
+ readonly mode: _angular_core.InputSignal<"sticky" | "drawer" | "overlay" | null>;
10
+ readonly position: _angular_core.InputSignal<"left" | "right" | null>;
11
+ readonly width: _angular_core.InputSignal<string | null>;
12
+ readonly closeOnEsc: _angular_core.InputSignal<boolean>;
13
+ /** Accessible name for the panel in `drawer`/`overlay` mode (set as the dialog's `aria-label`). */
14
+ readonly ariaLabel: _angular_core.InputSignal<string>;
15
+ readonly class: _angular_core.InputSignal<string>;
16
+ protected readonly resolvedMode: _angular_core.Signal<"sticky" | "drawer" | "overlay">;
17
+ protected readonly resolvedPosition: _angular_core.Signal<"left" | "right">;
18
+ protected readonly resolvedWidth: _angular_core.Signal<string>;
19
+ protected readonly isSticky: _angular_core.Signal<boolean>;
20
+ protected readonly isDrawer: _angular_core.Signal<boolean>;
21
+ protected readonly isOverlay: _angular_core.Signal<boolean>;
22
+ /** Mode mengambang (drawer/overlay) — bersifat dialog dan butuh manajemen fokus + `inert` saat tertutup. */
23
+ protected readonly isInteractive: _angular_core.Signal<boolean>;
24
+ protected readonly resolvedScroll: _angular_core.Signal<"content" | "page">;
25
+ protected readonly ariaHidden: _angular_core.Signal<"true" | null>;
26
+ /** Saat panel mengambang tertutup, `inert` mengeluarkan isinya dari tab order & pohon aksesibilitas (AXE). */
27
+ protected readonly inertWhenClosed: _angular_core.Signal<"" | null>;
28
+ protected readonly dialogRole: _angular_core.Signal<"dialog" | null>;
29
+ protected readonly ariaModal: _angular_core.Signal<"true" | null>;
30
+ protected readonly dialogLabel: _angular_core.Signal<string | null>;
31
+ protected readonly dialogTabindex: _angular_core.Signal<"-1" | null>;
32
+ protected readonly classes: _angular_core.Signal<string>;
33
+ constructor();
34
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageSideComponent, never>;
35
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageSideComponent, "PageSide", never, { "mode": { "alias": "mode"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "width": { "alias": "width"; "required": false; "isSignal": true; }; "closeOnEsc": { "alias": "closeOnEsc"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
36
+ }
37
+
38
+ declare class PageSideToggleComponent {
39
+ protected readonly page: PageStateService;
40
+ readonly ariaLabel: _angular_core.InputSignal<string>;
41
+ readonly class: _angular_core.InputSignal<string>;
42
+ readonly toggled: _angular_core.OutputEmitterRef<boolean>;
43
+ protected readonly hostClasses: _angular_core.Signal<string>;
44
+ protected readonly buttonClasses: _angular_core.Signal<string>;
45
+ protected handleClick(event: MouseEvent): void;
46
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageSideToggleComponent, never>;
47
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageSideToggleComponent, "PageSideToggle", never, { "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "class": { "alias": "class"; "required": false; "isSignal": true; }; }, { "toggled": "toggled"; }, never, ["*"], true, never>;
48
+ }
49
+
50
+ export { PageSideComponent, PageSideToggleComponent };
@@ -1 +1,40 @@
1
- export * from '@ojiepermana/angular-theme/page/slots';
1
+ import * as _angular_core from '@angular/core';
2
+
3
+ declare class PageHeaderComponent {
4
+ private readonly page;
5
+ readonly class: _angular_core.InputSignal<string>;
6
+ protected readonly resolvedHeight: _angular_core.Signal<"auto" | "fix">;
7
+ /** Saat tombol apps mengambang di atas header, sisakan ruang kanan agar isi header tidak tertimpa. */
8
+ protected readonly reservesAppsLauncher: _angular_core.Signal<boolean>;
9
+ /** Lebar tombol apps (h-9 w-9 = 36px) + offset kanan (right-2 = 8px) + jarak aman; `null` = tak memesan. */
10
+ protected readonly appsLauncherReservePadding: _angular_core.Signal<"3.5rem" | null>;
11
+ protected readonly classes: _angular_core.Signal<string>;
12
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageHeaderComponent, never>;
13
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageHeaderComponent, "PageHeader", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
14
+ }
15
+ declare class PageContentComponent {
16
+ private readonly page;
17
+ readonly class: _angular_core.InputSignal<string>;
18
+ protected readonly resolvedScroll: _angular_core.Signal<"content" | "page">;
19
+ protected readonly classes: _angular_core.Signal<string>;
20
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageContentComponent, never>;
21
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageContentComponent, "PageContent", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
22
+ }
23
+ declare class PageDashboardComponent {
24
+ private readonly page;
25
+ readonly class: _angular_core.InputSignal<string>;
26
+ protected readonly resolvedScroll: _angular_core.Signal<"content" | "page">;
27
+ protected readonly classes: _angular_core.Signal<string>;
28
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageDashboardComponent, never>;
29
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageDashboardComponent, "PageDashboard", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
30
+ }
31
+ declare class PageFooterComponent {
32
+ private readonly page;
33
+ readonly class: _angular_core.InputSignal<string>;
34
+ protected readonly resolvedHeight: _angular_core.Signal<"auto" | "fix">;
35
+ protected readonly classes: _angular_core.Signal<string>;
36
+ static ɵfac: _angular_core.ɵɵFactoryDeclaration<PageFooterComponent, never>;
37
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<PageFooterComponent, "PageFooter", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; }, {}, never, ["*"], true, never>;
38
+ }
39
+
40
+ export { PageContentComponent, PageDashboardComponent, PageFooterComponent, PageHeaderComponent };
@@ -1 +1,5 @@
1
- export * from '@ojiepermana/angular-theme/page';
1
+ export { PAGE_APPEARANCES, PAGE_DEFAULT_APPEARANCE, PAGE_DEFAULT_FILTER_MODE, PAGE_DEFAULT_FILTER_PLACEMENT, PAGE_DEFAULT_FILTER_POSITION, PAGE_DEFAULT_FILTER_WIDTH, PAGE_DEFAULT_HEIGHT, PAGE_DEFAULT_SCROLL, PAGE_DEFAULT_SIDE_MODE, PAGE_DEFAULT_SIDE_POSITION, PAGE_DEFAULT_SIDE_WIDTH, PAGE_DEFAULT_VARIANT, PAGE_FILTER_PLACEMENTS, PAGE_HEIGHT_VALUES, PAGE_SCROLL_VALUES, PAGE_SIDE_MODES, PAGE_SIDE_POSITIONS, PAGE_VARIANTS, PageAppearance, PageFilterPlacement, PageHeight, PageScroll, PageSideMode, PageSidePosition, PageVariant, isUiPageAppearance, isUiPageFilterPlacement, isUiPageHeight, isUiPageScroll, isUiPageSideMode, isUiPageSidePosition, isUiPageVariant } from '@ojiepermana/angular/theme/page/core';
2
+ export { PageFilterComponent, PageFilterToggleComponent } from '@ojiepermana/angular/theme/page/filter';
3
+ export { PageComponent } from '@ojiepermana/angular/theme/page/root';
4
+ export { PageSideComponent, PageSideToggleComponent } from '@ojiepermana/angular/theme/page/side';
5
+ export { PageContentComponent, PageDashboardComponent, PageFooterComponent, PageHeaderComponent } from '@ojiepermana/angular/theme/page/slots';