@dataengineeringformachinelearning/viking-ui 1.0.2 → 3.0.0-alpha.4

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 (366) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +217 -38
  3. package/dist/core/brand-icons.d.ts +29 -0
  4. package/dist/core/icons.d.ts +132 -0
  5. package/dist/core/integration-brand-icons.d.ts +18 -0
  6. package/dist/core/lucide-paths.generated.d.ts +90 -0
  7. package/dist/core/types.d.ts +56 -0
  8. package/dist/core/uid.d.ts +2 -0
  9. package/dist/deml-components.css +1122 -0
  10. package/dist/design-tokens.css +688 -0
  11. package/dist/elements/button/viking-button.d.ts +14 -0
  12. package/dist/elements/card/viking-card.d.ts +8 -0
  13. package/dist/elements/core/dom.d.ts +4 -0
  14. package/dist/elements/core/styles.d.ts +2 -0
  15. package/dist/elements/modal/viking-modal.d.ts +15 -0
  16. package/dist/fonts/inter/InterVariable-Italic.woff2 +0 -0
  17. package/dist/fonts/inter/InterVariable.woff2 +0 -0
  18. package/dist/index.d.ts +1 -0
  19. package/dist/index.js +4051 -0
  20. package/dist/lib/accordion/accordion.d.ts +19 -0
  21. package/dist/lib/app-header/app-header.d.ts +8 -0
  22. package/dist/lib/app-sidebar/app-sidebar.d.ts +10 -0
  23. package/dist/lib/auth-panel/auth-panel.d.ts +13 -0
  24. package/dist/lib/autocomplete/autocomplete.d.ts +25 -0
  25. package/dist/lib/avatar/avatar.d.ts +14 -0
  26. package/dist/lib/badge/badge.d.ts +16 -0
  27. package/dist/lib/bar/bar.d.ts +4 -0
  28. package/dist/lib/brand/brand.d.ts +8 -0
  29. package/dist/lib/breadcrumbs/breadcrumbs.d.ts +10 -0
  30. package/dist/lib/button/button-group.d.ts +6 -0
  31. package/dist/lib/button/button.d.ts +25 -0
  32. package/dist/lib/calendar/calendar.d.ts +22 -0
  33. package/dist/lib/callout/callout.d.ts +14 -0
  34. package/dist/lib/card/card-title.d.ts +12 -0
  35. package/dist/lib/card/card.d.ts +19 -0
  36. package/dist/lib/carousel/carousel.d.ts +13 -0
  37. package/dist/lib/chart/chart-zoom.d.ts +14 -0
  38. package/dist/lib/chart/chart.d.ts +119 -0
  39. package/dist/lib/chart-card-header/chart-card-header.d.ts +10 -0
  40. package/dist/lib/chart-empty-state/chart-empty-state.d.ts +13 -0
  41. package/dist/lib/chart-panel/chart-panel.d.ts +10 -0
  42. package/dist/lib/checkbox/checkbox.d.ts +13 -0
  43. package/dist/lib/color-picker/color-picker.d.ts +16 -0
  44. package/dist/lib/command/command.d.ts +23 -0
  45. package/dist/lib/composer/composer.d.ts +15 -0
  46. package/dist/lib/confirm-dialog/confirm-dialog.d.ts +18 -0
  47. package/dist/lib/confirm-dialog/dialog.service.d.ts +28 -0
  48. package/dist/lib/context/context.d.ts +17 -0
  49. package/dist/lib/core/brand-icons.d.ts +29 -0
  50. package/dist/lib/core/cva.d.ts +15 -0
  51. package/dist/lib/core/icons.d.ts +132 -0
  52. package/dist/lib/core/integration-brand-icons.d.ts +18 -0
  53. package/dist/lib/core/lucide-paths.generated.d.ts +90 -0
  54. package/dist/lib/date-picker/date-picker.d.ts +18 -0
  55. package/dist/lib/dropdown/dropdown.d.ts +29 -0
  56. package/dist/lib/editor/editor.d.ts +26 -0
  57. package/dist/lib/empty-state/empty-state.d.ts +9 -0
  58. package/dist/lib/fab/fab.d.ts +9 -0
  59. package/dist/lib/field/field.d.ts +14 -0
  60. package/dist/lib/file-upload/file-upload.d.ts +19 -0
  61. package/dist/lib/footer/footer.d.ts +6 -0
  62. package/dist/lib/form-section/form-section.d.ts +15 -0
  63. package/dist/lib/gauge-arc/gauge-arc.d.ts +8 -0
  64. package/dist/lib/hud-panel/hud-panel.d.ts +5 -0
  65. package/dist/lib/icon/icon.d.ts +44 -0
  66. package/dist/lib/icon-badge/icon-badge.d.ts +14 -0
  67. package/dist/lib/icon-heading/icon-heading.d.ts +9 -0
  68. package/dist/lib/icon-text/icon-text.d.ts +12 -0
  69. package/dist/lib/input/input.d.ts +23 -0
  70. package/dist/lib/kanban/kanban.d.ts +16 -0
  71. package/dist/lib/kbd/kbd.d.ts +5 -0
  72. package/dist/lib/label/label.d.ts +7 -0
  73. package/dist/lib/loading-overlay/loading-overlay.d.ts +10 -0
  74. package/dist/lib/menubar/menubar.d.ts +10 -0
  75. package/dist/lib/metric-card/metric-card.d.ts +9 -0
  76. package/dist/lib/modal/modal.d.ts +13 -0
  77. package/dist/lib/native-select/native-select.d.ts +17 -0
  78. package/dist/lib/navbar/navbar.d.ts +13 -0
  79. package/dist/lib/navigation-menu/navigation-menu.d.ts +13 -0
  80. package/dist/lib/otp-input/otp-input.d.ts +23 -0
  81. package/dist/lib/page-back-link/page-back-link.d.ts +11 -0
  82. package/dist/lib/page-header/page-header.d.ts +15 -0
  83. package/dist/lib/pagination/pagination.d.ts +10 -0
  84. package/dist/lib/pillbox/pillbox.d.ts +15 -0
  85. package/dist/lib/popover/popover.d.ts +15 -0
  86. package/dist/lib/profile/profile.d.ts +11 -0
  87. package/dist/lib/progress/progress.d.ts +12 -0
  88. package/dist/lib/radio/radio.d.ts +16 -0
  89. package/dist/lib/ring-gauge/ring-gauge.d.ts +8 -0
  90. package/dist/lib/scroll-area/scroll-area.d.ts +7 -0
  91. package/dist/lib/search-palette/search-palette.d.ts +16 -0
  92. package/dist/lib/select/select.d.ts +26 -0
  93. package/dist/lib/separator/separator.d.ts +8 -0
  94. package/dist/lib/sheet/sheet.d.ts +13 -0
  95. package/dist/lib/sidebar-nav/sidebar-nav.d.ts +46 -0
  96. package/dist/lib/site-drakkar/site-drakkar.config.d.ts +50 -0
  97. package/dist/lib/site-drakkar/site-footer.d.ts +18 -0
  98. package/dist/lib/site-drakkar/site-navbar.d.ts +25 -0
  99. package/dist/lib/site-drakkar/suite-search-items.d.ts +17 -0
  100. package/dist/lib/skeleton/skeleton.d.ts +8 -0
  101. package/dist/lib/slider/slider.d.ts +17 -0
  102. package/dist/lib/spinner/spinner.d.ts +7 -0
  103. package/dist/lib/status-metric-row/status-metric-row.d.ts +9 -0
  104. package/dist/lib/suite-search-palette/suite-search-palette.d.ts +25 -0
  105. package/dist/lib/switch/switch.d.ts +12 -0
  106. package/dist/lib/table/table.d.ts +10 -0
  107. package/dist/lib/tabs/tab-panel.d.ts +12 -0
  108. package/dist/lib/tabs/tab.d.ts +14 -0
  109. package/dist/lib/tabs/tabs.d.ts +10 -0
  110. package/dist/lib/textarea/textarea.d.ts +16 -0
  111. package/dist/lib/theme-toggle/theme-toggle.d.ts +9 -0
  112. package/dist/lib/time-picker/time-picker.d.ts +21 -0
  113. package/dist/lib/timeline/timeline.d.ts +14 -0
  114. package/dist/lib/toast/toast.d.ts +21 -0
  115. package/dist/lib/toggle/toggle-group.d.ts +9 -0
  116. package/dist/lib/toggle/toggle.d.ts +15 -0
  117. package/dist/lib/tooltip/tooltip.d.ts +20 -0
  118. package/dist/lib/typography/heading.d.ts +9 -0
  119. package/dist/lib/typography/text.d.ts +11 -0
  120. package/dist/lib/uptime-bar/uptime-bar.d.ts +6 -0
  121. package/dist/lib/verification-code-field/verification-code-field.d.ts +19 -0
  122. package/dist/lib/whitepaper-cta/whitepaper-cta.d.ts +15 -0
  123. package/dist/lib/wizard/wizard.d.ts +13 -0
  124. package/dist/public-api.d.ts +109 -0
  125. package/dist/tokens/series-presets.d.ts +4 -0
  126. package/dist/viking-components.css +1837 -0
  127. package/dist/viking-tokens.json +318 -0
  128. package/dist/viking-ui-elements.js +1750 -0
  129. package/dist/viking-ui.css +1 -0
  130. package/dist/web/badge/viking-badge-wc.d.ts +28 -0
  131. package/dist/web/button/viking-button-wc.d.ts +28 -0
  132. package/dist/web/callout/viking-callout-wc.d.ts +27 -0
  133. package/dist/web/card/viking-card-wc.d.ts +29 -0
  134. package/dist/web/core/base.d.ts +12 -0
  135. package/dist/web/core/dom.d.ts +11 -0
  136. package/dist/web/core/icons-inline.d.ts +7 -0
  137. package/dist/web/core/styles.d.ts +12 -0
  138. package/dist/web/core/types.d.ts +10 -0
  139. package/dist/web/field/viking-field-wc.d.ts +32 -0
  140. package/dist/web/index.d.ts +15 -0
  141. package/dist/web/input/viking-input-wc.d.ts +32 -0
  142. package/dist/web/modal/viking-modal-wc.d.ts +50 -0
  143. package/dist/web/search-palette/viking-search-palette-wc.d.ts +64 -0
  144. package/dist/web/select/viking-select-wc.d.ts +48 -0
  145. package/dist/web/suite-header/viking-suite-header-wc.d.ts +36 -0
  146. package/dist/web/suite-search-palette/viking-suite-search-palette-wc.d.ts +39 -0
  147. package/dist/web/theme-toggle/viking-theme-toggle-wc.d.ts +19 -0
  148. package/dist/web/types.d.ts +40 -0
  149. package/dist/web-components/index.d.ts +1 -0
  150. package/dist/web-components.js +1750 -0
  151. package/dist/widget.js +1182 -0
  152. package/package.json +89 -30
  153. package/src/assets/drakkar-favicon.svg +17 -0
  154. package/src/assets/fonts/inter/InterVariable-Italic.woff2 +0 -0
  155. package/src/assets/fonts/inter/InterVariable.woff2 +0 -0
  156. package/src/core/brand/deml-lockup.svg +5 -0
  157. package/src/core/brand/deml-mark-compact.svg +4 -0
  158. package/src/core/brand/deml-mark-filled.svg +3 -0
  159. package/src/core/brand/deml-mark-outline.svg +4 -0
  160. package/src/core/brand-icons.ts +62 -0
  161. package/src/core/icons.spec.ts +52 -0
  162. package/src/core/icons.ts +206 -0
  163. package/src/core/integration-brand-icons.ts +77 -0
  164. package/src/core/lucide-paths.generated.ts +130 -0
  165. package/src/core/types.ts +85 -0
  166. package/src/core/uid.ts +7 -0
  167. package/src/elements/button/viking-button.ts +201 -0
  168. package/src/elements/card/viking-card.ts +60 -0
  169. package/src/elements/core/dom.ts +33 -0
  170. package/src/elements/core/styles.ts +28 -0
  171. package/src/elements/modal/viking-modal.ts +154 -0
  172. package/src/index.ts +1 -0
  173. package/src/lib/accordion/accordion.ts +126 -0
  174. package/src/lib/app-header/app-header.scss +274 -0
  175. package/src/lib/app-header/app-header.ts +43 -0
  176. package/src/lib/app-sidebar/app-sidebar.scss +415 -0
  177. package/src/lib/app-sidebar/app-sidebar.ts +29 -0
  178. package/src/lib/auth-panel/auth-panel.spec.ts +132 -0
  179. package/src/lib/auth-panel/auth-panel.ts +228 -0
  180. package/src/lib/autocomplete/autocomplete.ts +223 -0
  181. package/src/lib/avatar/avatar.ts +126 -0
  182. package/src/lib/badge/badge.ts +182 -0
  183. package/src/lib/bar/bar.ts +31 -0
  184. package/src/lib/brand/brand.ts +60 -0
  185. package/src/lib/breadcrumbs/breadcrumbs.ts +81 -0
  186. package/src/lib/button/button-group.ts +40 -0
  187. package/src/lib/button/button.scss +96 -0
  188. package/src/lib/button/button.ts +98 -0
  189. package/src/lib/calendar/calendar.ts +253 -0
  190. package/src/lib/callout/callout.ts +211 -0
  191. package/src/lib/card/card-title.spec.ts +27 -0
  192. package/src/lib/card/card-title.ts +50 -0
  193. package/src/lib/card/card.ts +170 -0
  194. package/src/lib/carousel/carousel.ts +206 -0
  195. package/src/lib/chart/chart-zoom.spec.ts +65 -0
  196. package/src/lib/chart/chart-zoom.ts +71 -0
  197. package/src/lib/chart/chart.ts +1257 -0
  198. package/src/lib/chart-card-header/chart-card-header.ts +80 -0
  199. package/src/lib/chart-empty-state/chart-empty-state.ts +146 -0
  200. package/src/lib/chart-panel/chart-panel.ts +133 -0
  201. package/src/lib/checkbox/checkbox.ts +139 -0
  202. package/src/lib/color-picker/color-picker.ts +148 -0
  203. package/src/lib/command/command.ts +260 -0
  204. package/src/lib/composer/composer.ts +180 -0
  205. package/src/lib/confirm-dialog/confirm-dialog.ts +163 -0
  206. package/src/lib/confirm-dialog/dialog.service.ts +79 -0
  207. package/src/lib/context/context.ts +75 -0
  208. package/src/lib/core/brand-icons.ts +62 -0
  209. package/src/lib/core/cva.ts +33 -0
  210. package/src/lib/core/icons.ts +206 -0
  211. package/src/lib/core/integration-brand-icons.ts +77 -0
  212. package/src/lib/core/lucide-paths.generated.ts +130 -0
  213. package/src/lib/date-picker/date-picker.ts +139 -0
  214. package/src/lib/dropdown/dropdown.ts +188 -0
  215. package/src/lib/editor/editor.ts +170 -0
  216. package/src/lib/empty-state/empty-state.ts +100 -0
  217. package/src/lib/fab/fab.ts +76 -0
  218. package/src/lib/field/field.ts +111 -0
  219. package/src/lib/file-upload/file-upload.ts +208 -0
  220. package/src/lib/footer/footer.scss +155 -0
  221. package/src/lib/footer/footer.ts +28 -0
  222. package/src/lib/form-section/form-section.ts +200 -0
  223. package/src/lib/forms.spec.ts +92 -0
  224. package/src/lib/gauge-arc/gauge-arc.ts +85 -0
  225. package/src/lib/hud-panel/hud-panel.ts +27 -0
  226. package/src/lib/icon/icon.ts +284 -0
  227. package/src/lib/icon-badge/icon-badge.ts +87 -0
  228. package/src/lib/icon-heading/icon-heading.spec.ts +32 -0
  229. package/src/lib/icon-heading/icon-heading.ts +38 -0
  230. package/src/lib/icon-text/icon-text.ts +120 -0
  231. package/src/lib/input/input.ts +119 -0
  232. package/src/lib/kanban/kanban.ts +211 -0
  233. package/src/lib/kbd/kbd.ts +32 -0
  234. package/src/lib/label/label.ts +39 -0
  235. package/src/lib/loading-overlay/loading-overlay.ts +80 -0
  236. package/src/lib/menubar/menubar.ts +77 -0
  237. package/src/lib/metric-card/metric-card.ts +33 -0
  238. package/src/lib/modal/modal.ts +207 -0
  239. package/src/lib/native-select/native-select.ts +124 -0
  240. package/src/lib/navbar/navbar.ts +124 -0
  241. package/src/lib/navigation-menu/navigation-menu.ts +116 -0
  242. package/src/lib/otp-input/otp-input.ts +164 -0
  243. package/src/lib/page-back-link/page-back-link.ts +74 -0
  244. package/src/lib/page-header/page-header.ts +70 -0
  245. package/src/lib/pagination/pagination.ts +157 -0
  246. package/src/lib/pillbox/pillbox.ts +157 -0
  247. package/src/lib/popover/popover.ts +92 -0
  248. package/src/lib/profile/profile.ts +73 -0
  249. package/src/lib/progress/progress.ts +123 -0
  250. package/src/lib/radio/radio.ts +132 -0
  251. package/src/lib/ring-gauge/ring-gauge.ts +75 -0
  252. package/src/lib/scroll-area/scroll-area.ts +57 -0
  253. package/src/lib/search-palette/search-palette.scss +288 -0
  254. package/src/lib/search-palette/search-palette.ts +114 -0
  255. package/src/lib/select/select.ts +292 -0
  256. package/src/lib/separator/separator.ts +59 -0
  257. package/src/lib/sheet/sheet.ts +192 -0
  258. package/src/lib/sidebar-nav/sidebar-nav.scss +218 -0
  259. package/src/lib/sidebar-nav/sidebar-nav.ts +158 -0
  260. package/src/lib/site-drakkar/site-drakkar.config.ts +295 -0
  261. package/src/lib/site-drakkar/site-footer.ts +129 -0
  262. package/src/lib/site-drakkar/site-navbar.scss +2 -0
  263. package/src/lib/site-drakkar/site-navbar.ts +267 -0
  264. package/src/lib/site-drakkar/suite-search-items.spec.ts +61 -0
  265. package/src/lib/site-drakkar/suite-search-items.ts +246 -0
  266. package/src/lib/skeleton/skeleton.ts +51 -0
  267. package/src/lib/slider/slider.ts +133 -0
  268. package/src/lib/spinner/spinner.ts +75 -0
  269. package/src/lib/status-metric-row/status-metric-row.ts +74 -0
  270. package/src/lib/suite-search-palette/suite-search-palette.ts +95 -0
  271. package/src/lib/switch/switch.ts +131 -0
  272. package/src/lib/table/table.ts +137 -0
  273. package/src/lib/tabs/tab-panel.ts +61 -0
  274. package/src/lib/tabs/tab.ts +107 -0
  275. package/src/lib/tabs/tabs.ts +109 -0
  276. package/src/lib/textarea/textarea.ts +103 -0
  277. package/src/lib/theme-toggle/theme-toggle.spec.ts +40 -0
  278. package/src/lib/theme-toggle/theme-toggle.ts +39 -0
  279. package/src/lib/time-picker/time-picker.ts +197 -0
  280. package/src/lib/timeline/timeline.ts +152 -0
  281. package/src/lib/toast/toast.ts +196 -0
  282. package/src/lib/toggle/toggle-group.ts +60 -0
  283. package/src/lib/toggle/toggle.ts +101 -0
  284. package/src/lib/tooltip/tooltip.ts +119 -0
  285. package/src/lib/typography/heading.ts +52 -0
  286. package/src/lib/typography/text.ts +51 -0
  287. package/src/lib/uptime-bar/uptime-bar.ts +55 -0
  288. package/src/lib/verification-code-field/verification-code-field.ts +149 -0
  289. package/src/lib/whitepaper-cta/whitepaper-cta.scss +130 -0
  290. package/src/lib/whitepaper-cta/whitepaper-cta.ts +78 -0
  291. package/src/lib/wizard/wizard.ts +80 -0
  292. package/src/public-api.ts +172 -0
  293. package/src/styles/_buttons.scss +301 -0
  294. package/src/styles/_component-primitives.scss +183 -0
  295. package/src/styles/_drakkar-buttons.scss +85 -0
  296. package/src/styles/_fonts.scss +22 -0
  297. package/src/styles/_forms.scss +66 -0
  298. package/src/styles/_input.scss +106 -0
  299. package/src/styles/_layout-enforcement.scss +166 -0
  300. package/src/styles/_layout-rhythm.scss +158 -0
  301. package/src/styles/_legacy-aliases.scss +212 -0
  302. package/src/styles/_series-colors.scss +24 -0
  303. package/src/styles/_static-primitives.scss +857 -0
  304. package/src/styles/_typography.scss +87 -0
  305. package/src/styles/_variables.scss +527 -0
  306. package/src/styles/components/a11y.scss +90 -0
  307. package/src/styles/components/badges.scss +102 -0
  308. package/src/styles/components/extracted-utilities.scss +459 -0
  309. package/src/styles/components/footer.scss +155 -0
  310. package/src/styles/components/icon-heading.scss +47 -0
  311. package/src/styles/components/icon-inline.scss +78 -0
  312. package/src/styles/components/layout.scss +59 -0
  313. package/src/styles/components/utilities.scss +131 -0
  314. package/src/styles/components/viking-inspired.scss +204 -0
  315. package/src/styles/components/whitepaper-cta.scss +130 -0
  316. package/src/styles/components-bundle.scss +9 -0
  317. package/src/styles/components.scss +175 -0
  318. package/src/styles/deml-components.scss +10 -0
  319. package/src/styles/index.scss +8 -0
  320. package/src/styles/layout-shell.scss +39 -11
  321. package/src/styles/page-shell.scss +663 -33
  322. package/src/styles/static-navbar.scss +862 -146
  323. package/src/styles/surfaces/backend.scss +142 -0
  324. package/src/styles/surfaces/docs-global.scss +73 -0
  325. package/src/styles/surfaces/docs-shell.scss +412 -0
  326. package/src/styles/surfaces/docs-showcase.scss +1051 -0
  327. package/src/styles/surfaces/marketing-cta.scss +62 -0
  328. package/src/styles/surfaces/marketing-docs-bento.scss +67 -0
  329. package/src/styles/surfaces/marketing-global.scss +748 -0
  330. package/src/styles/surfaces/marketing-landing.scss +1260 -0
  331. package/src/styles/surfaces/marketing-publication.scss +535 -0
  332. package/src/styles/surfaces/marketing-theme.scss +14 -0
  333. package/src/styles/surfaces/swagger-ui.scss +921 -0
  334. package/src/styles/tokens-export.scss +18 -0
  335. package/src/styles/tokens.scss +5 -0
  336. package/src/styles/viking-ui-bundle.scss +20 -2
  337. package/src/styles/viking-ui.scss +213 -51
  338. package/src/tokens/series-presets.ts +15 -0
  339. package/src/tokens/tailwind.preset.js +209 -0
  340. package/src/tokens/viking-tokens.json +318 -0
  341. package/src/viking-ui.spec.ts +416 -0
  342. package/src/web/badge/viking-badge-wc.ts +116 -0
  343. package/src/web/button/viking-button-wc.ts +165 -0
  344. package/src/web/callout/viking-callout-wc.ts +105 -0
  345. package/src/web/card/viking-card-wc.ts +66 -0
  346. package/src/web/core/base.ts +56 -0
  347. package/src/web/core/dom.ts +53 -0
  348. package/src/web/core/icons-inline.ts +44 -0
  349. package/src/web/core/styles.ts +1138 -0
  350. package/src/web/core/types.ts +19 -0
  351. package/src/web/field/viking-field-wc.ts +154 -0
  352. package/src/web/index.ts +73 -0
  353. package/src/web/input/viking-input-wc.ts +211 -0
  354. package/src/web/modal/viking-modal-wc.ts +187 -0
  355. package/src/web/search-palette/viking-search-palette-wc.ts +494 -0
  356. package/src/web/select/viking-select-wc.ts +218 -0
  357. package/src/web/suite-header/viking-suite-header-wc.ts +714 -0
  358. package/src/web/suite-search-palette/viking-suite-search-palette-wc.ts +234 -0
  359. package/src/web/theme-toggle/viking-theme-toggle-wc.ts +139 -0
  360. package/src/web/types.ts +37 -0
  361. package/src/web/web-components.spec.ts +297 -0
  362. package/src/web-components/index.ts +1 -0
  363. package/fesm2022/dataengineeringformachinelearning-viking-ui.mjs +0 -6114
  364. package/fesm2022/dataengineeringformachinelearning-viking-ui.mjs.map +0 -1
  365. package/types/dataengineeringformachinelearning-viking-ui.d.ts +0 -1397
  366. package/viking.manifest.json +0 -238
@@ -0,0 +1,19 @@
1
+ /**
2
+ * viking-accordion — collapsible content panels.
3
+ * Set exclusive to allow only one open item at a time.
4
+ */
5
+ export declare class VikingAccordion {
6
+ readonly exclusive: import("@angular/core").InputSignal<boolean>;
7
+ private openItem;
8
+ /** Called by items when they open, to enforce exclusive mode. */
9
+ readonly notifyOpened: (item: VikingAccordionItem) => void;
10
+ }
11
+ /** A single expandable section within viking-accordion. */
12
+ export declare class VikingAccordionItem {
13
+ private readonly accordion;
14
+ constructor(accordion: VikingAccordion | null);
15
+ readonly heading: import("@angular/core").InputSignal<string>;
16
+ readonly expanded: import("@angular/core").ModelSignal<boolean>;
17
+ protected readonly panelId: string;
18
+ protected toggle: () => void;
19
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * viking-app-header — sticky application header with brand, nav, actions, and mobile menu slots.
3
+ * Styles live in the component library so all apps share one navbar implementation.
4
+ */
5
+ export declare class VikingAppHeader {
6
+ readonly mobileMenuOpen: import("@angular/core").InputSignal<boolean>;
7
+ readonly mobileMenuLabel: import("@angular/core").InputSignal<string>;
8
+ }
@@ -0,0 +1,10 @@
1
+ /**
2
+ * viking-app-sidebar — dashboard sidebar shell styles (project nav markup inside).
3
+ * Width is driven by the `--viking-sidebar-width` CSS variable on the host.
4
+ */
5
+ export declare class VikingAppSidebar {
6
+ readonly collapsed: import("@angular/core").InputSignal<boolean>;
7
+ readonly dragging: import("@angular/core").InputSignal<boolean>;
8
+ readonly width: import("@angular/core").InputSignal<number>;
9
+ readonly resizeStart: import("@angular/core").OutputEmitterRef<MouseEvent>;
10
+ }
@@ -0,0 +1,13 @@
1
+ /**
2
+ * viking-auth-panel — access portal / sign-in layout template.
3
+ * Full-width stacked actions, Google + Apple OAuth row, WCAG-friendly structure.
4
+ */
5
+ export declare class VikingAuthPanel {
6
+ readonly tag: import("@angular/core").InputSignal<string>;
7
+ readonly title: import("@angular/core").InputSignal<string>;
8
+ readonly subtitle: import("@angular/core").InputSignal<string>;
9
+ readonly showSocial: import("@angular/core").InputSignal<boolean>;
10
+ readonly socialLoading: import("@angular/core").InputSignal<boolean>;
11
+ readonly googleSignIn: import("@angular/core").OutputEmitterRef<void>;
12
+ readonly appleSignIn: import("@angular/core").OutputEmitterRef<void>;
13
+ }
@@ -0,0 +1,25 @@
1
+ import { ElementRef } from "@angular/core";
2
+ import { VikingControl } from "../core/cva";
3
+ /**
4
+ * viking-autocomplete — text input with filtered suggestions
5
+ *. ControlValueAccessor-compatible.
6
+ */
7
+ export declare class VikingAutocomplete extends VikingControl<string> {
8
+ private readonly host;
9
+ readonly suggestions: import("@angular/core").InputSignal<string[]>;
10
+ readonly value: import("@angular/core").ModelSignal<string>;
11
+ readonly placeholder: import("@angular/core").InputSignal<string>;
12
+ readonly label: import("@angular/core").InputSignal<string>;
13
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
14
+ readonly selected: import("@angular/core").OutputEmitterRef<string>;
15
+ constructor(host: ElementRef<HTMLElement>);
16
+ protected readonly open: import("@angular/core").WritableSignal<boolean>;
17
+ protected readonly activeIndex: import("@angular/core").WritableSignal<number>;
18
+ protected readonly panelId: string;
19
+ protected readonly filtered: import("@angular/core").Signal<string[]>;
20
+ writeValue(value: string): void;
21
+ protected onInput: (event: Event) => void;
22
+ protected pick: (item: string) => void;
23
+ protected onKeydown: (event: KeyboardEvent) => void;
24
+ protected onDocumentClick: (event: Event) => void;
25
+ }
@@ -0,0 +1,14 @@
1
+ import { VikingTone } from "../../core/types";
2
+ /**
3
+ * viking-avatar — image or initials avatar with optional status indicator
4
+ *.
5
+ */
6
+ export declare class VikingAvatar {
7
+ readonly src: import("@angular/core").InputSignal<string>;
8
+ readonly name: import("@angular/core").InputSignal<string>;
9
+ readonly size: import("@angular/core").InputSignal<number>;
10
+ readonly square: import("@angular/core").InputSignal<boolean>;
11
+ readonly status: import("@angular/core").InputSignal<VikingTone>;
12
+ protected readonly imageFailed: import("@angular/core").WritableSignal<boolean>;
13
+ protected readonly initials: import("@angular/core").Signal<string>;
14
+ }
@@ -0,0 +1,16 @@
1
+ import { VikingSize, VikingTone } from "../../core/types";
2
+ /**
3
+ * viking-badge — status pill.
4
+ * Tones map to THEME.md semantic colors only.
5
+ */
6
+ export declare class VikingBadge {
7
+ readonly tone: import("@angular/core").InputSignal<VikingTone | "neutral">;
8
+ readonly size: import("@angular/core").InputSignal<VikingSize>;
9
+ readonly icon: import("@angular/core").InputSignal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
10
+ readonly removable: import("@angular/core").InputSignal<boolean>;
11
+ readonly removed: import("@angular/core").OutputEmitterRef<void>;
12
+ protected readonly hostClass: import("@angular/core").Signal<{
13
+ [x: string]: boolean;
14
+ "viking-badge-sm": boolean;
15
+ }>;
16
+ }
@@ -0,0 +1,4 @@
1
+ /** viking-bar — vertical bar for mock charts and decorative grids. */
2
+ export declare class VikingBar {
3
+ readonly height: import("@angular/core").InputSignal<number>;
4
+ }
@@ -0,0 +1,8 @@
1
+ /**
2
+ * viking-brand — logo + wordmark lockup.
3
+ * Project a custom logo (img/svg) or fall back to a monogram tile.
4
+ */
5
+ export declare class VikingBrand {
6
+ readonly name: import("@angular/core").InputSignal<string>;
7
+ readonly logoSrc: import("@angular/core").InputSignal<string>;
8
+ }
@@ -0,0 +1,10 @@
1
+ export interface VikingBreadcrumb {
2
+ label: string;
3
+ href?: string;
4
+ }
5
+ /**
6
+ * viking-breadcrumbs — hierarchy navigation.
7
+ */
8
+ export declare class VikingBreadcrumbs {
9
+ readonly items: import("@angular/core").InputSignal<VikingBreadcrumb[]>;
10
+ }
@@ -0,0 +1,6 @@
1
+ /**
2
+ * viking-button-group — fuses buttons with shared borders
3
+ *.
4
+ */
5
+ export declare class VikingButtonGroup {
6
+ }
@@ -0,0 +1,25 @@
1
+ import { VikingSize } from "../../core/types";
2
+ export type VikingButtonVariant = "outline" | "primary" | "secondary" | "filled" | "danger" | "ghost" | "subtle";
3
+ /**
4
+ * viking-button — thin Angular wrapper around `viking-button-wc`.
5
+ * Variants: outline (default), primary, filled, danger, ghost, subtle.
6
+ */
7
+ export declare class VikingButton {
8
+ readonly variant: import("@angular/core").InputSignal<VikingButtonVariant>;
9
+ readonly size: import("@angular/core").InputSignal<VikingSize>;
10
+ readonly type: import("@angular/core").InputSignal<"button" | "submit">;
11
+ readonly icon: import("@angular/core").InputSignal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
12
+ readonly iconTrailing: import("@angular/core").InputSignal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
13
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
14
+ readonly loading: import("@angular/core").InputSignal<boolean>;
15
+ readonly square: import("@angular/core").InputSignal<boolean>;
16
+ readonly fullWidth: import("@angular/core").InputSignal<boolean>;
17
+ readonly compact: import("@angular/core").InputSignal<boolean>;
18
+ readonly href: import("@angular/core").InputSignal<string>;
19
+ readonly target: import("@angular/core").InputSignal<string>;
20
+ readonly kbd: import("@angular/core").InputSignal<string>;
21
+ readonly label: import("@angular/core").InputSignal<string>;
22
+ readonly pressed: import("@angular/core").OutputEmitterRef<MouseEvent>;
23
+ protected readonly iconSize: import("@angular/core").Signal<22 | 18>;
24
+ protected onPress: (event: Event) => void;
25
+ }
@@ -0,0 +1,22 @@
1
+ import { VikingControl } from "../core/cva";
2
+ interface CalendarDay {
3
+ iso: string;
4
+ day: number;
5
+ inMonth: boolean;
6
+ isToday: boolean;
7
+ }
8
+ /**
9
+ * viking-calendar — month-grid date selection.
10
+ * Value is an ISO date string (YYYY-MM-DD). ControlValueAccessor-compatible.
11
+ */
12
+ export declare class VikingCalendar extends VikingControl<string | null> {
13
+ readonly value: import("@angular/core").ModelSignal<string>;
14
+ protected readonly weekdays: string[];
15
+ protected readonly viewDate: import("@angular/core").WritableSignal<Date>;
16
+ protected readonly title: import("@angular/core").Signal<string>;
17
+ protected readonly days: import("@angular/core").Signal<CalendarDay[]>;
18
+ writeValue(value: string | null): void;
19
+ protected move: (delta: number) => void;
20
+ protected pick: (day: CalendarDay) => void;
21
+ }
22
+ export {};
@@ -0,0 +1,14 @@
1
+ import { VikingTone } from "../../core/types";
2
+ /**
3
+ * viking-callout — highlighted message block.
4
+ */
5
+ export declare class VikingCallout {
6
+ readonly tone: import("@angular/core").InputSignal<VikingTone>;
7
+ readonly heading: import("@angular/core").InputSignal<string>;
8
+ readonly icon: import("@angular/core").InputSignal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
9
+ readonly dismissible: import("@angular/core").InputSignal<boolean>;
10
+ readonly closed: import("@angular/core").OutputEmitterRef<void>;
11
+ protected readonly dismissed: import("@angular/core").WritableSignal<boolean>;
12
+ protected readonly resolvedIcon: import("@angular/core").Signal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
13
+ protected dismiss: () => void;
14
+ }
@@ -0,0 +1,12 @@
1
+ import { VikingIconBadgeTone } from "../icon-badge/icon-badge";
2
+ /**
3
+ * viking-card-title — card header title row with tokenized icon badge + heading.
4
+ * Compose inside viking-card-header for premium, consistent section titles.
5
+ */
6
+ export declare class VikingCardTitle {
7
+ readonly icon: import("@angular/core").InputSignal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
8
+ readonly tone: import("@angular/core").InputSignal<VikingIconBadgeTone>;
9
+ readonly level: import("@angular/core").InputSignal<2 | 1 | 4 | 3>;
10
+ readonly size: import("@angular/core").InputSignal<"base" | "sm" | "lg" | "xl">;
11
+ readonly iconSize: import("@angular/core").InputSignal<number>;
12
+ }
@@ -0,0 +1,19 @@
1
+ import { ElementRef } from "@angular/core";
2
+ /**
3
+ * viking-card — surface container.
4
+ * Compose with viking-card-header / viking-card-footer for structured layouts.
5
+ */
6
+ export declare class VikingCard {
7
+ private readonly host;
8
+ readonly interactive: import("@angular/core").InputSignal<boolean>;
9
+ readonly loading: import("@angular/core").InputSignal<boolean>;
10
+ readonly compact: import("@angular/core").InputSignal<boolean>;
11
+ constructor(host: ElementRef<HTMLElement>);
12
+ protected onActivate: (event: Event) => void;
13
+ }
14
+ /** Header row for viking-card. */
15
+ export declare class VikingCardHeader {
16
+ }
17
+ /** Footer row for viking-card. */
18
+ export declare class VikingCardFooter {
19
+ }
@@ -0,0 +1,13 @@
1
+ /** A single slide inside viking-carousel. */
2
+ export declare class VikingCarouselSlide {
3
+ }
4
+ /**
5
+ * viking-carousel — scroll-snap slideshow.
6
+ */
7
+ export declare class VikingCarousel {
8
+ private readonly viewport;
9
+ protected readonly slides: import("@angular/core").Signal<readonly VikingCarouselSlide[]>;
10
+ protected readonly index: import("@angular/core").WritableSignal<number>;
11
+ protected goTo: (target: number) => void;
12
+ protected onScroll: () => void;
13
+ }
@@ -0,0 +1,14 @@
1
+ /** Visible index window for chart zoom/pan (inclusive start, exclusive end). */
2
+ export interface ChartZoomWindow {
3
+ start: number;
4
+ end: number;
5
+ }
6
+ export declare const fullChartWindow: (count: number) => ChartZoomWindow;
7
+ /** Clamp zoom window to valid bounds with a minimum visible span. */
8
+ export declare const clampChartWindow: (window: ChartZoomWindow, count: number, minSpan?: number) => ChartZoomWindow;
9
+ /** Wheel delta → narrower/wider window centered on cursor fraction (0–1). */
10
+ export declare const zoomChartWindow: (current: ChartZoomWindow, count: number, cursorFraction: number, deltaY: number, minSpan?: number) => ChartZoomWindow;
11
+ /** Drag delta in data points → pan window. */
12
+ export declare const panChartWindow: (current: ChartZoomWindow, count: number, deltaPoints: number, minSpan?: number) => ChartZoomWindow;
13
+ /** Slice series rows and category labels for the active window. */
14
+ export declare const sliceChartData: <T>(values: T[], window: ChartZoomWindow) => T[];
@@ -0,0 +1,119 @@
1
+ import { VikingChartCurve, VikingChartKind, VikingChartSeries, VikingDonutSegment, VikingTone } from "../../core/types";
2
+ import { ChartZoomWindow } from "./chart-zoom";
3
+ interface ChartPath {
4
+ name: string;
5
+ tone: VikingTone;
6
+ line: string;
7
+ area: string;
8
+ }
9
+ interface ChartPoint {
10
+ x: number;
11
+ y: number;
12
+ tone: VikingTone;
13
+ }
14
+ interface BarRect {
15
+ x: number;
16
+ y: number;
17
+ width: number;
18
+ height: number;
19
+ tone: VikingTone;
20
+ radiusTop: boolean;
21
+ }
22
+ interface DonutSlice {
23
+ label: string;
24
+ tone: VikingTone;
25
+ path: string;
26
+ }
27
+ interface AxisLabel {
28
+ x: number;
29
+ y: number;
30
+ text: string;
31
+ anchor: "start" | "middle" | "end";
32
+ }
33
+ interface TickMark {
34
+ x: number;
35
+ y1: number;
36
+ y2: number;
37
+ }
38
+ interface Gutter {
39
+ top: number;
40
+ right: number;
41
+ bottom: number;
42
+ left: number;
43
+ }
44
+ /**
45
+ * viking-chart — zero-dependency native SVG charts styled after Viking UI.
46
+ */
47
+ export declare class VikingChart {
48
+ protected readonly chartId: string;
49
+ readonly kind: import("@angular/core").InputSignal<VikingChartKind>;
50
+ readonly series: import("@angular/core").InputSignal<VikingChartSeries[]>;
51
+ readonly categories: import("@angular/core").InputSignal<string[]>;
52
+ readonly segments: import("@angular/core").InputSignal<VikingDonutSegment[]>;
53
+ readonly label: import("@angular/core").InputSignal<string>;
54
+ readonly showArea: import("@angular/core").InputSignal<boolean>;
55
+ readonly compact: import("@angular/core").InputSignal<boolean>;
56
+ readonly fill: import("@angular/core").InputSignal<boolean>;
57
+ readonly curve: import("@angular/core").InputSignal<VikingChartCurve>;
58
+ readonly showPoints: import("@angular/core").InputSignal<boolean>;
59
+ readonly pointRadius: import("@angular/core").InputSignal<number>;
60
+ readonly barWidth: import("@angular/core").InputSignal<number>;
61
+ readonly barRadius: import("@angular/core").InputSignal<number>;
62
+ readonly barMinHeight: import("@angular/core").InputSignal<number>;
63
+ readonly gutter: import("@angular/core").InputSignal<string | number>;
64
+ readonly tickCount: import("@angular/core").InputSignal<number>;
65
+ readonly showLegend: import("@angular/core").InputSignal<boolean>;
66
+ readonly summary: import("@angular/core").InputSignal<string>;
67
+ /** Enable wheel zoom + drag pan on line/bar charts (Flux-style interaction). */
68
+ readonly zoomable: import("@angular/core").InputSignal<boolean>;
69
+ private readonly zoomWindow;
70
+ private panStartX;
71
+ private panStartWindow;
72
+ constructor();
73
+ /** Slice series/categories to the active zoom window. */
74
+ protected readonly dataWindow: import("@angular/core").Signal<ChartZoomWindow>;
75
+ protected readonly effectiveSeries: import("@angular/core").Signal<{
76
+ data: number[];
77
+ name: string;
78
+ tone?: VikingTone;
79
+ }[]>;
80
+ protected readonly effectiveCategories: import("@angular/core").Signal<string[]>;
81
+ protected readonly zoomActive: import("@angular/core").Signal<boolean>;
82
+ protected resetZoom: () => void;
83
+ protected onWheel: (event: WheelEvent) => void;
84
+ protected onPanStart: (event: PointerEvent) => void;
85
+ protected onPanMove: (event: PointerEvent) => void;
86
+ protected onPanEnd: () => void;
87
+ protected readonly width = 720;
88
+ protected readonly isSparkline: import("@angular/core").Signal<boolean>;
89
+ protected readonly resolvedGutter: import("@angular/core").Signal<Gutter>;
90
+ protected readonly legendVisible: import("@angular/core").Signal<boolean>;
91
+ protected readonly height: import("@angular/core").Signal<720 | 240 | 200 | 400 | 48>;
92
+ protected readonly preserveAspectRatio: import("@angular/core").Signal<string>;
93
+ protected readonly plotBottom: import("@angular/core").Signal<number>;
94
+ protected readonly plotTop: import("@angular/core").Signal<number>;
95
+ protected readonly plotCy: import("@angular/core").Signal<number>;
96
+ protected readonly donutInnerRadius: import("@angular/core").Signal<number>;
97
+ protected readonly isBarKind: import("@angular/core").Signal<boolean>;
98
+ protected readonly isLineKind: import("@angular/core").Signal<boolean>;
99
+ protected readonly renderArea: import("@angular/core").Signal<boolean>;
100
+ protected readonly renderPoints: import("@angular/core").Signal<boolean>;
101
+ protected toneVar: (tone: VikingTone) => string;
102
+ protected readonly valueRange: import("@angular/core").Signal<{
103
+ min: number;
104
+ max: number;
105
+ }>;
106
+ protected readonly gridLines: import("@angular/core").Signal<number[]>;
107
+ protected readonly yAxisLabels: import("@angular/core").Signal<AxisLabel[]>;
108
+ protected readonly xAxisLabels: import("@angular/core").Signal<AxisLabel[]>;
109
+ protected readonly xTickMarks: import("@angular/core").Signal<TickMark[]>;
110
+ protected readonly paths: import("@angular/core").Signal<ChartPath[]>;
111
+ protected readonly linePoints: import("@angular/core").Signal<ChartPoint[]>;
112
+ protected readonly barRects: import("@angular/core").Signal<BarRect[]>;
113
+ private readonly singleBarRects;
114
+ private readonly groupedBarRects;
115
+ private readonly stackedBarRects;
116
+ protected readonly donutTotalLabel: import("@angular/core").Signal<string>;
117
+ protected readonly donutSlices: import("@angular/core").Signal<DonutSlice[]>;
118
+ }
119
+ export {};
@@ -0,0 +1,10 @@
1
+ /**
2
+ * viking-chart-card-header — shared label / value / trend header for analytics chart cards.
3
+ */
4
+ export declare class VikingChartCardHeader {
5
+ readonly title: import("@angular/core").InputSignal<string>;
6
+ readonly value: import("@angular/core").InputSignal<string>;
7
+ readonly emptyLabel: import("@angular/core").InputSignal<string>;
8
+ readonly trend: import("@angular/core").InputSignal<string>;
9
+ readonly hasData: import("@angular/core").InputSignal<boolean>;
10
+ }
@@ -0,0 +1,13 @@
1
+ export type VikingChartEmptyTone = "default" | "secure";
2
+ export type VikingChartEmptyLayout = "fill" | "overlay" | "compact" | "inline";
3
+ /**
4
+ * viking-chart-empty-state — standardized dashed “waiting for data” overlay for chart panels.
5
+ * Fills its parent chart body by default; use layout="overlay" for map/canvas stacks.
6
+ */
7
+ export declare class VikingChartEmptyState {
8
+ readonly title: import("@angular/core").InputSignal<string>;
9
+ readonly description: import("@angular/core").InputSignal<string>;
10
+ readonly icon: import("@angular/core").InputSignal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
11
+ readonly tone: import("@angular/core").InputSignal<VikingChartEmptyTone>;
12
+ readonly layout: import("@angular/core").InputSignal<VikingChartEmptyLayout>;
13
+ }
@@ -0,0 +1,10 @@
1
+ export type VikingChartPanelSize = "large" | "medium";
2
+ export type VikingChartPanelBody = "default" | "origin-map";
3
+ /**
4
+ * viking-chart-panel — outlined analytics card shell with consistent header/body rhythm.
5
+ */
6
+ export declare class VikingChartPanel {
7
+ readonly size: import("@angular/core").InputSignal<VikingChartPanelSize>;
8
+ readonly body: import("@angular/core").InputSignal<VikingChartPanelBody>;
9
+ protected readonly bodyClasses: import("@angular/core").Signal<string>;
10
+ }
@@ -0,0 +1,13 @@
1
+ import { VikingControl } from "../core/cva";
2
+ /**
3
+ * viking-checkbox — custom checkbox.
4
+ * ControlValueAccessor-compatible.
5
+ */
6
+ export declare class VikingCheckbox extends VikingControl<boolean> {
7
+ readonly checked: import("@angular/core").ModelSignal<boolean>;
8
+ readonly indeterminate: import("@angular/core").InputSignal<boolean>;
9
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
10
+ readonly description: import("@angular/core").InputSignal<string>;
11
+ writeValue(value: boolean): void;
12
+ protected toggle: (event: Event) => void;
13
+ }
@@ -0,0 +1,16 @@
1
+ import { VikingControl } from "../core/cva";
2
+ /**
3
+ * viking-color-picker — swatch presets + custom color input
4
+ *. ControlValueAccessor-compatible.
5
+ * Default presets are the THEME.md palette.
6
+ */
7
+ export declare class VikingColorPicker extends VikingControl<string> {
8
+ readonly value: import("@angular/core").ModelSignal<string>;
9
+ readonly label: import("@angular/core").InputSignal<string>;
10
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
11
+ /** Preset swatches — THEME.md Series color palette (premium charcoal / teal / crimson). */
12
+ readonly presets: import("@angular/core").InputSignal<string[]>;
13
+ writeValue(value: string): void;
14
+ protected pick: (color: string) => void;
15
+ protected onInput: (event: Event) => void;
16
+ }
@@ -0,0 +1,23 @@
1
+ import { VikingCommandItem } from "../../core/types";
2
+ /**
3
+ * viking-command — command palette.
4
+ * Toggle with the `open` model; emits `executed` when an item is chosen.
5
+ */
6
+ export declare class VikingCommand {
7
+ readonly items: import("@angular/core").InputSignal<VikingCommandItem[]>;
8
+ readonly open: import("@angular/core").ModelSignal<boolean>;
9
+ readonly placeholder: import("@angular/core").InputSignal<string>;
10
+ readonly executed: import("@angular/core").OutputEmitterRef<VikingCommandItem>;
11
+ private readonly queryInput;
12
+ protected readonly query: import("@angular/core").WritableSignal<string>;
13
+ protected readonly activeId: import("@angular/core").WritableSignal<string>;
14
+ constructor();
15
+ protected readonly filtered: import("@angular/core").Signal<VikingCommandItem[]>;
16
+ protected readonly groups: import("@angular/core").Signal<{
17
+ name: string;
18
+ items: VikingCommandItem[];
19
+ }[]>;
20
+ protected onQuery: (event: Event) => void;
21
+ protected run: (item: VikingCommandItem) => void;
22
+ protected onKeydown: (event: KeyboardEvent) => void;
23
+ }
@@ -0,0 +1,15 @@
1
+ /**
2
+ * viking-composer — message composer with attachments and send action
3
+ *.
4
+ */
5
+ export declare class VikingComposer {
6
+ readonly value: import("@angular/core").ModelSignal<string>;
7
+ readonly placeholder: import("@angular/core").InputSignal<string>;
8
+ readonly disabled: import("@angular/core").InputSignal<boolean>;
9
+ readonly allowAttachments: import("@angular/core").InputSignal<boolean>;
10
+ readonly sent: import("@angular/core").OutputEmitterRef<string>;
11
+ readonly attach: import("@angular/core").OutputEmitterRef<void>;
12
+ protected onInput: (event: Event) => void;
13
+ protected onKeydown: (event: KeyboardEvent) => void;
14
+ protected send: () => void;
15
+ }
@@ -0,0 +1,18 @@
1
+ import { VikingConfirmDialogData, VikingDialogService } from "./dialog.service";
2
+ /**
3
+ * viking-confirm-dialog — alert / confirm / prompt modal wired to VikingDialogService.
4
+ */
5
+ export declare class VikingConfirmDialog {
6
+ private readonly vikingDialog;
7
+ constructor(vikingDialog: VikingDialogService);
8
+ protected readonly inputValue: import("@angular/core").WritableSignal<string>;
9
+ protected readonly data: import("@angular/core").Signal<VikingConfirmDialogData>;
10
+ protected readonly open: import("@angular/core").Signal<boolean>;
11
+ protected readonly heading: import("@angular/core").Signal<string>;
12
+ protected readonly iconName: import("@angular/core").Signal<"link" | "menu" | "search" | "deml" | "deml-compact" | "deml-lockup" | "drakkar" | "drakkar-compact" | "drakkar-lockup" | "kubernetes" | "tensorflow" | "pytorch" | "apache-spark" | "databricks" | "aws-redshift" | "info" | "hub" | "model" | "google" | "apple" | "alert-circle" | "alert-triangle" | "arrow-left" | "arrow-right" | "arrow-up-right" | "bar-chart" | "bell" | "bold" | "bolt" | "brain" | "bug" | "building" | "calendar" | "check" | "check-circle" | "chevron-down" | "chevron-left" | "chevron-right" | "chevron-up" | "chip" | "clock" | "cloud" | "cookie" | "copy" | "dots-horizontal" | "dots-vertical" | "download" | "external" | "eye" | "eye-off" | "file" | "filter" | "fingerprint" | "folder" | "globe" | "grip-vertical" | "heart" | "home" | "image" | "insights" | "italic" | "key" | "list" | "list-ordered" | "loader" | "lock" | "log-in" | "log-out" | "mail" | "minus" | "moon" | "network" | "paperclip" | "pencil" | "phone" | "play" | "plus" | "policy" | "refresh" | "rocket" | "search-off" | "send" | "server" | "settings" | "shield" | "ship" | "sparkle" | "speed" | "star" | "sun" | "terminal" | "trash" | "trending-up" | "underline" | "upload" | "user" | "user-shield" | "x">;
13
+ protected readonly isValid: import("@angular/core").Signal<boolean>;
14
+ protected onCancel: () => void;
15
+ protected onConfirm: () => void;
16
+ protected onOpenChange: (next: boolean) => void;
17
+ }
18
+ export type { VikingConfirmDialogData };
@@ -0,0 +1,28 @@
1
+ export type VikingDialogKind = "confirm" | "search" | "onboarding";
2
+ export interface VikingConfirmDialogData {
3
+ title?: string;
4
+ message: string;
5
+ type?: "alert" | "confirm" | "prompt";
6
+ confirmText?: string;
7
+ confirmBtnText?: string;
8
+ confirmBtnColor?: "primary" | "warn" | "accent";
9
+ }
10
+ export interface VikingDialogState {
11
+ kind: VikingDialogKind;
12
+ data?: VikingConfirmDialogData & {
13
+ force?: boolean;
14
+ };
15
+ }
16
+ /** Programmatic confirm / prompt / overlay orchestration for Viking-UI modals. */
17
+ export declare class VikingDialogService {
18
+ readonly active: import("@angular/core").WritableSignal<VikingDialogState>;
19
+ private confirmResolver;
20
+ private onboardingResolver;
21
+ openConfirm(data: VikingConfirmDialogData): Promise<boolean>;
22
+ resolveConfirm(result: boolean): void;
23
+ openSearch(): void;
24
+ closeSearch(): void;
25
+ openOnboarding(force?: boolean): Promise<boolean | undefined>;
26
+ resolveOnboarding(result?: boolean): void;
27
+ closeActive(cancelPending?: boolean): void;
28
+ }
@@ -0,0 +1,17 @@
1
+ import { ElementRef } from "@angular/core";
2
+ /**
3
+ * viking-context — right-click context menu.
4
+ * Wrap the target content and project menu content with the `vikingMenu` attribute
5
+ * (typically viking-menu-item elements).
6
+ */
7
+ export declare class VikingContext {
8
+ private readonly host;
9
+ protected readonly open: import("@angular/core").WritableSignal<boolean>;
10
+ protected readonly position: import("@angular/core").WritableSignal<{
11
+ x: number;
12
+ y: number;
13
+ }>;
14
+ constructor(host: ElementRef<HTMLElement>);
15
+ protected onContextMenu: (event: MouseEvent) => void;
16
+ protected closed: () => void;
17
+ }