@tekus/design-system 5.37.0 → 5.39.0

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 (69) hide show
  1. package/assets/readme-images/tk-data-list-anatomy.png +0 -0
  2. package/assets/readme-images/tk-data-list-grid.png +0 -0
  3. package/assets/readme-images/tk-data-list-list.png +0 -0
  4. package/assets/tokens/tk-foundations.json +4 -0
  5. package/fesm2022/tekus-design-system-components-autocomplete.mjs +7 -17
  6. package/fesm2022/tekus-design-system-components-autocomplete.mjs.map +1 -1
  7. package/fesm2022/tekus-design-system-components-avatar.mjs +120 -0
  8. package/fesm2022/tekus-design-system-components-avatar.mjs.map +1 -0
  9. package/fesm2022/tekus-design-system-components-button.mjs +2 -2
  10. package/fesm2022/tekus-design-system-components-button.mjs.map +1 -1
  11. package/fesm2022/tekus-design-system-components-card.mjs +1 -1
  12. package/fesm2022/tekus-design-system-components-card.mjs.map +1 -1
  13. package/fesm2022/tekus-design-system-components-checkbox.mjs +9 -3
  14. package/fesm2022/tekus-design-system-components-checkbox.mjs.map +1 -1
  15. package/fesm2022/tekus-design-system-components-data-list.mjs +185 -0
  16. package/fesm2022/tekus-design-system-components-data-list.mjs.map +1 -0
  17. package/fesm2022/tekus-design-system-components-date-picker.mjs +16 -3
  18. package/fesm2022/tekus-design-system-components-date-picker.mjs.map +1 -1
  19. package/fesm2022/tekus-design-system-components-input-number.mjs +37 -3
  20. package/fesm2022/tekus-design-system-components-input-number.mjs.map +1 -1
  21. package/fesm2022/tekus-design-system-components-input-text.mjs +2 -2
  22. package/fesm2022/tekus-design-system-components-input-text.mjs.map +1 -1
  23. package/fesm2022/tekus-design-system-components-menu.mjs +2 -2
  24. package/fesm2022/tekus-design-system-components-menu.mjs.map +1 -1
  25. package/fesm2022/tekus-design-system-components-multiselect.mjs +2 -2
  26. package/fesm2022/tekus-design-system-components-multiselect.mjs.map +1 -1
  27. package/fesm2022/tekus-design-system-components-panel-menu.mjs +2 -2
  28. package/fesm2022/tekus-design-system-components-panel-menu.mjs.map +1 -1
  29. package/fesm2022/tekus-design-system-components-radio-button.mjs +9 -3
  30. package/fesm2022/tekus-design-system-components-radio-button.mjs.map +1 -1
  31. package/fesm2022/tekus-design-system-components-select.mjs +37 -32
  32. package/fesm2022/tekus-design-system-components-select.mjs.map +1 -1
  33. package/fesm2022/tekus-design-system-components-sidebar-layout.mjs +2 -2
  34. package/fesm2022/tekus-design-system-components-sidebar-layout.mjs.map +1 -1
  35. package/fesm2022/tekus-design-system-components-stat.mjs +193 -0
  36. package/fesm2022/tekus-design-system-components-stat.mjs.map +1 -0
  37. package/fesm2022/tekus-design-system-components-table.mjs +1 -1
  38. package/fesm2022/tekus-design-system-components-table.mjs.map +1 -1
  39. package/fesm2022/tekus-design-system-components-tabs.mjs +2 -2
  40. package/fesm2022/tekus-design-system-components-tabs.mjs.map +1 -1
  41. package/fesm2022/tekus-design-system-components-textarea.mjs +2 -2
  42. package/fesm2022/tekus-design-system-components-textarea.mjs.map +1 -1
  43. package/fesm2022/tekus-design-system-components-time-picker.mjs +13 -3
  44. package/fesm2022/tekus-design-system-components-time-picker.mjs.map +1 -1
  45. package/fesm2022/tekus-design-system-components-toggle.mjs +4 -3
  46. package/fesm2022/tekus-design-system-components-toggle.mjs.map +1 -1
  47. package/fesm2022/tekus-design-system-components-toolbar.mjs +2 -2
  48. package/fesm2022/tekus-design-system-components-toolbar.mjs.map +1 -1
  49. package/fesm2022/tekus-design-system-components-topbar.mjs +2 -2
  50. package/fesm2022/tekus-design-system-components-topbar.mjs.map +1 -1
  51. package/fesm2022/tekus-design-system-core-types.mjs +4 -3
  52. package/fesm2022/tekus-design-system-core-types.mjs.map +1 -1
  53. package/fesm2022/tekus-design-system-core.mjs +4 -3
  54. package/fesm2022/tekus-design-system-core.mjs.map +1 -1
  55. package/package.json +13 -1
  56. package/scss/_config.scss +242 -0
  57. package/scss/tk-bundle.scss +105 -0
  58. package/styles/variables.css +1 -0
  59. package/types/tekus-design-system-components-autocomplete.d.ts +3 -12
  60. package/types/tekus-design-system-components-avatar.d.ts +104 -0
  61. package/types/tekus-design-system-components-checkbox.d.ts +7 -1
  62. package/types/tekus-design-system-components-data-list.d.ts +193 -0
  63. package/types/tekus-design-system-components-date-picker.d.ts +11 -1
  64. package/types/tekus-design-system-components-input-number.d.ts +35 -1
  65. package/types/tekus-design-system-components-radio-button.d.ts +7 -1
  66. package/types/tekus-design-system-components-select.d.ts +2 -6
  67. package/types/tekus-design-system-components-stat.d.ts +161 -0
  68. package/types/tekus-design-system-components-time-picker.d.ts +8 -1
  69. package/types/tekus-design-system-components-toggle.d.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"tekus-design-system-core.mjs","sources":["../../../projects/design-system/core/types/src/grids/grid.enum.ts","../../../projects/design-system/core/types/src/breakpoints/breakpoints.ts","../../../projects/design-system/core/types/src/theme/tk-preset.ts","../../../projects/design-system/core/types/src/theme/theme.provider.ts","../../../projects/design-system/core/types/src/interception/dialog-ref.ts","../../../projects/design-system/core/tekus-design-system-core.ts"],"sourcesContent":["enum GapGutter {\n normal = 'var(--tk-spacing-gap-l, 1.5rem)',\n small = 'var(--tk-spacing-gap-m, 1rem)',\n large = 'var(--tk-spacing-base-200, 2rem)',\n extraLarge = 'var(--tk-spacing-gap-xl, 2.5rem)',\n}\n\nenum PaddingGridContainer {\n large = 'var(--tk-spacing-base-200, 2rem)',\n medium = 'var(--tk-spacing-padding-xl, 1.5rem)',\n small = 'var(--tk-spacing-padding-m, 1rem)'\n}\n\nenum Gutter {\n normal = 'normal',\n small = 'small',\n large = 'large',\n extraLarge = 'extraLarge',\n\n}\n\nexport {\n Gutter,\n GapGutter,\n PaddingGridContainer\n}","export const Breakpoints = {\n // Covers all devices with a width less than or equal to 360px.\n mobileSmall: '(max-width: 360px)',\n\n // For small phones (e.g., most modern cell phones)\n mobile: '(min-width: 361px) and (max-width: 424px)',\n\n // For large phones (e.g., Google Pixel, iPhone Plus/Max)\n mobileLarge: '(min-width: 425px) and (max-width: 575px)',\n\n // Vertical tablets and medium-sized devices\n tabletVertical: '(min-width: 576px) and (max-width: 767px)',\n\n // Tablets in landscape mode\n tabletHorizontal: '(min-width: 768px) and (max-width: 991px)',\n\n // Laptops and small desktops\n desktopSmall: '(min-width: 992px) and (max-width: 1199px)',\n\n // Large desks\n desktop: '(min-width: 1200px) and (max-width: 1399px)',\n\n // Ultra-wide screens\n desktopLarge: '(min-width: 1400px)',\n}","import { definePreset } from '@primeuix/themes';\nimport type { Preset } from '@primeuix/themes/types';\nimport Aura from '@primeuix/themes/aura';\n\nconst tkOverrides = {\n semantic: {\n primary: {\n 50: 'var(--tk-color-base-primary-50)',\n 100: 'var(--tk-color-base-primary-100)',\n 200: 'var(--tk-color-base-primary-200)',\n 300: 'var(--tk-color-base-primary-300)',\n 400: 'var(--tk-color-base-primary-400)',\n 500: 'var(--tk-color-base-primary-500)',\n 600: 'var(--tk-color-base-primary-600)',\n 700: 'var(--tk-color-base-primary-700)',\n 800: 'var(--tk-color-base-primary-800)',\n 900: 'var(--tk-color-base-primary-900)',\n 950: 'var(--tk-color-base-primary-950)',\n },\n red: {\n 50: 'var(--tk-color-base-red-50)',\n 100: 'var(--tk-color-base-red-100)',\n 200: 'var(--tk-color-base-red-200)',\n 300: 'var(--tk-color-base-red-300)',\n 400: 'var(--tk-color-base-red-400)',\n 500: 'var(--tk-color-base-red-500)',\n 600: 'var(--tk-color-base-red-600)',\n 700: 'var(--tk-color-base-red-700)',\n 800: 'var(--tk-color-base-red-800)',\n 900: 'var(--tk-color-base-red-900)',\n 950: 'var(--tk-color-base-red-950)',\n },\n surface: {\n 0: 'var(--tk-color-base-surface-0)',\n 50: 'var(--tk-color-base-surface-50)',\n 100: 'var(--tk-color-base-surface-100)',\n 200: 'var(--tk-color-base-surface-200)',\n 300: 'var(--tk-color-base-surface-300)',\n 400: 'var(--tk-color-base-surface-400)',\n 500: 'var(--tk-color-base-surface-500)',\n 600: 'var(--tk-color-base-surface-600)',\n 700: 'var(--tk-color-base-surface-700)',\n 800: 'var(--tk-color-base-surface-800)',\n 900: 'var(--tk-color-base-surface-900)',\n 950: 'var(--tk-color-base-surface-950)',\n },\n sky:{\n 50: 'var(--tk-color-base-sky-50)',\n 100: 'var(--tk-color-base-sky-100)',\n 200: 'var(--tk-color-base-sky-200)',\n 300: 'var(--tk-color-base-sky-300)',\n 400: 'var(--tk-color-base-sky-400)',\n 500: 'var(--tk-color-base-sky-500)',\n 600: 'var(--tk-color-base-sky-600)',\n 700: 'var(--tk-color-base-sky-700)',\n 800: 'var(--tk-color-base-sky-800)',\n 900: 'var(--tk-color-base-sky-900)',\n 950: 'var(--tk-color-base-sky-950)',\n },\n orange:{\n 50: 'var(--tk-color-base-yellow-50)',\n 100: 'var(--tk-color-base-yellow-100)',\n 200: 'var(--tk-color-base-yellow-200)',\n 300: 'var(--tk-color-base-yellow-300)',\n 400: 'var(--tk-color-base-yellow-400)',\n 500: 'var(--tk-color-base-yellow-500)',\n 600: 'var(--tk-color-base-yellow-600)',\n 700: 'var(--tk-color-base-yellow-700)',\n 800: 'var(--tk-color-base-yellow-800)',\n 900: 'var(--tk-color-base-yellow-900)',\n 950: 'var(--tk-color-base-yellow-950)',\n },\n },\n font: {\n family: 'var(--tk-font-family)',\n },\n\n components: {\n button: {\n root: {\n outline: 'none',\n boxShadow: 'none',\n border: 'none',\n focusBoxShadow: 'none',\n },\n label: {\n color: 'inherit',\n },\n colorScheme: {\n light: {\n root: {\n primary: {\n hoverBackground: 'var(--tk-color-base-primary-400)',\n activeBackground: 'var(--tk-color-base-primary-400)',\n hoverBorderColor: 'transparent',\n activeBorderColor: 'transparent',\n },\n secondary: {\n background: 'var(--tk-color-base-surface-100)',\n hoverBackground: 'var(--tk-color-base-surface-400)',\n },\n },\n text: {\n secondary: {\n hoverBackground: 'var(--tk-color-base-surface-200)',\n activeBackground: 'var(--tk-color-base-surface-200)',\n },\n },\n outlined: {\n secondary: {\n hoverBackground: 'var(--tk-color-base-surface-200)',\n activeBackground: 'var(--tk-color-base-surface-200)',\n borderColor: 'var(--tk-color-base-surface-200)',\n },\n },\n }\n },\n },\n tag: {\n root: {\n fontWeight: 'var(--tk-font-weight-400)',\n borderRadius: 'var(--tk-borderRadius-full)',\n },\n colorScheme: {\n light: {\n secondary:{\n color: 'var(--tk-color-base-surface-950)',\n }\n },\n },\n },\n message: {\n text: {\n fontWeight: '400',\n fontSize: 'var(--tk-font-size-paragraph-s)',\n },\n colorScheme: {\n light: {\n info: {\n background: 'var(--tk-color-feedback-info-muted)',\n borderColor: 'var(--tk-color-feedback-info-default)',\n color: 'var(--tk-color-feedback-info-strong)',\n shadow: 'none',\n },\n success: {\n background: 'var(--tk-color-feedback-success-muted)',\n borderColor: 'var(--tk-color-feedback-success-default)',\n color: 'var(--tk-color-feedback-success-strong)',\n shadow: 'none',\n },\n warn: {\n background: 'var(--tk-color-feedback-warn-muted)',\n borderColor: 'var(--tk-color-feedback-warn-default)',\n color: 'var(--tk-color-feedback-warn-strong)',\n shadow: 'none',\n },\n error: {\n background: 'var(--tk-color-feedback-danger-muted)',\n borderColor: 'var(--tk-color-feedback-danger-default)',\n color: 'var(--tk-color-feedback-danger-strong)',\n shadow: 'none',\n },\n secondary: {\n color: 'var(--tk-color-base-surface-600)',\n simple: {\n color: 'var(--tk-color-base-surface-600)',\n },\n },\n },\n },\n },\n tooltip: {\n colorScheme: {\n light: {\n root: {\n background: 'var(--tk-color-base-surface-700)',\n }\n }\n }\n },\n checkbox: {\n colorScheme: {\n light: {\n root: {\n borderColor: 'var(--tk-color-base-surface-400)',\n checkedBackground: 'var(--tk-color-base-primary-500)',\n checkedBorderColor: 'var(--tk-color-base-primary-500)',\n checkedHoverBackground: 'var(--tk-color-base-primary-600)',\n checkedHoverBorderColor: 'var(--tk-color-base-primary-600)',\n disabledBackground: 'var(--tk-color-base-surface-100)',\n disabledBorderColor: 'var(--tk-color-base-surface-300)',\n checkedDisabledBorderColor: 'var(--tk-color-base-surface-300)',\n }\n }\n }\n },\n radiobutton: {\n colorScheme: {\n light: {\n root: {\n borderColor: 'var(--tk-color-base-surface-400)',\n checkedBackground: 'var(--tk-color-base-primary-500)',\n checkedBorderColor: 'var(--tk-color-base-primary-500)',\n checkedHoverBackground: 'var(--tk-color-base-primary-600)',\n checkedHoverBorderColor: 'var(--tk-color-base-primary-600)',\n disabledBackground: 'var(--tk-color-base-surface-100)',\n disabledBorderColor: 'var(--tk-color-base-surface-300)',\n checkedDisabledBackground: 'var(--tk-color-base-surface-100)',\n checkedDisabledBorderColor: 'var(--tk-color-base-surface-300)',\n }\n }\n }\n },\n panel: {\n root: {\n background: 'var(--tk-color-background-soft)',\n borderRadius: 'var(--tk-borderRadius-s)',\n borderColor: 'var(--tk-color-transparent)',\n },\n header: {\n background: 'transparent',\n color: 'var(--tk-color-text-default)',\n borderColor: 'var(--tk-color-transparent)',\n borderWidth: '0',\n padding: 'var(--tk-spacing-padding-m)',\n fontWeight: 'var(--tk-font-weight-600)',\n fontSize: 'var(--tk-font-size-paragraph-m)',\n },\n toggleableHeader: {\n padding: 'var(--tk-spacing-padding-s) var(--tk-spacing-padding-m)',\n },\n content: {\n padding: 'var(--tk-spacing-padding-l)',\n },\n },\n drawer: {\n header: {\n padding: 'var(--tk-spacing-padding-m)',\n },\n content: {\n padding: 'var(--tk-spacing-padding-m)',\n },\n },\n toast: {\n info: {\n background: 'var(--tk-color-base-sky-100)',\n borderColor: 'var(--tk-color-base-sky-500)',\n color: 'var(--tk-color-base-sky-700)',\n detailColor: 'var(--tk-color-base-surface-700)',\n closeButton: {\n hoverBackground: 'var(--tk-color-base-sky-100)',\n focusRing: {\n color: 'var(--tk-color-base-sky-600)',\n shadow: 'none'\n }\n }\n },\n success: {\n background: 'var(--tk-color-base-green-100)',\n borderColor: 'var(--tk-color-base-green-500)',\n color: 'var(--tk-color-base-green-700)',\n detailColor: 'var(--tk-color-base-surface-700)',\n closeButton: {\n hoverBackground: 'var(--tk-color-base-green-100)',\n focusRing: {\n color: 'var(--tk-color-base-green-600)',\n shadow: 'none'\n }\n }\n },\n error: {\n background: 'var(--tk-color-base-red-100)',\n borderColor: 'var(--tk-color-base-red-500)',\n color: 'var(--tk-color-base-red-700)',\n detailColor: 'var(--tk-color-base-surface-700)',\n closeButton: {\n hoverBackground: 'var(--tk-color-base-red-100)',\n focusRing: {\n color: 'var(--tk-color-base-red-600)',\n shadow: 'none'\n }\n }\n }\n },\n menu: {\n root: {\n background: 'transparent',\n borderColor: 'transparent',\n borderRadius: 'var(--tk-borderRadius-s)',\n padding: 'var(--tk-spacing-base-50)',\n color: 'var(--tk-color-base-surface-950)',\n },\n list: {\n padding: '0',\n gap: 'var(--tk-spacing-base-25)',\n },\n item: {\n focusBackground: 'transparent',\n activeBackground: 'transparent',\n hoverBackground: 'transparent',\n padding: 'var(--tk-spacing-base-75) var(--tk-spacing-base-100)',\n borderRadius: 'var(--tk-borderRadius-s)',\n gap: 'var(--tk-spacing-base-75)',\n color: 'var(--tk-color-base-surface-950)',\n },\n submenuLabel: {\n padding: 'var(--tk-spacing-base-100) var(--tk-spacing-base-50) var(--tk-spacing-base-50)',\n fontWeight: 'var(--tk-font-weight-600)',\n color: 'var(--tk-color-base-surface-950)',\n },\n separator: {\n margin: 'var(--tk-spacing-base-75) 0',\n borderColor: 'var(--tk-color-base-surface-100)',\n },\n },\n popover: {\n root: {\n background: 'var(--tk-color-base-surface-0)',\n borderColor: 'var(--tk-color-base-surface-200)',\n borderRadius: 'var(--tk-borderRadius-s)',\n shadow: '0 4px 12px rgba(0, 0, 0, 0.08)',\n },\n content: {\n padding: '0',\n },\n },\n panelMenu: {\n root: {\n background: 'transparent',\n borderColor: 'transparent',\n gap: 'var(--tk-spacing-base-50)',\n },\n panel: {\n background: 'transparent',\n borderColor: 'transparent',\n borderWidth: '0',\n padding: '0',\n borderRadius: 'var(--tk-borderRadius-s)',\n first: { borderWidth: '0' },\n last: { borderWidth: '0' },\n },\n item: {\n focusBackground: 'transparent',\n activeBackground: 'transparent',\n hoverBackground: 'transparent',\n padding: '0',\n gap: '0',\n borderRadius: 'var(--tk-borderRadius-s)',\n },\n submenu: {\n indent: '0',\n },\n submenuIcon: {\n color: 'transparent',\n focusColor: 'transparent',\n },\n },\n stepper: {\n colorScheme: {\n light: {\n separator: {\n background: 'var(--tk-color-base-surface-200)',\n activeBackground: 'var(--tk-color-base-primary-500)',\n },\n stepTitle: {\n color: 'var(--tk-color-text-muted)',\n activeColor: 'var(--tk-color-base-primary-500)',\n },\n stepNumber: {\n background: 'var(--tk-color-base-surface-0)',\n activeBackground: 'var(--tk-color-base-surface-0)',\n borderColor: 'var(--tk-color-base-surface-300)',\n activeBorderColor: 'var(--tk-color-base-primary-500)',\n color: 'var(--tk-color-text-muted)',\n activeColor: 'var(--tk-color-base-primary-500)',\n shadow: 'none',\n },\n }\n }\n },\n chip: {\n root: {\n borderRadius: 'var(--tk-borderRadius-full, 62.4375rem)',\n paddingX: '0.5rem',\n paddingY: '0.25rem',\n gap: '0.375rem',\n background: 'var(--tk-color-background-soft, #f2f1f1)',\n color: 'var(--tk-color-base-surface-700, #424243)',\n },\n image: {\n width: '1.5rem',\n height: '1.5rem',\n },\n icon: {\n size: '0.875rem',\n color: 'var(--tk-color-base-surface-700, #424243)',\n },\n removeIcon: {\n size: '1.125rem',\n color: 'var(--tk-color-base-surface-700, #424243)',\n focusRing: {\n width: '0',\n style: 'none',\n color: 'transparent',\n offset: '0',\n shadow: 'none',\n },\n },\n },\n treetable: {\n root: {\n borderColor: 'var(--tk-color-base-surface-200)',\n background: 'var(--tk-color-base-surface-0)',\n },\n header: {\n background: 'transparent',\n borderColor: 'transparent',\n },\n row: {\n background: 'var(--tk-color-base-surface-0)',\n borderColor: 'var(--tk-color-base-surface-100)',\n hoverBackground: 'var(--tk-color-base-surface-50)',\n },\n },\n },\n};\n\nexport const TkPreset: Preset = definePreset(Aura, tkOverrides as Preset);\n","import { inject, provideAppInitializer, DOCUMENT } from '@angular/core';\n\nimport { PrimeNG } from 'primeng/config';\nimport { TkPreset } from './tk-preset';\n\nfunction themeFactory(config: PrimeNG, document: Document): () => void {\n return () => {\n const fontLink = document.createElement('link');\n fontLink.rel = 'stylesheet';\n fontLink.href =\n 'https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap';\n document.head.appendChild(fontLink);\n\n const style = document.createElement('style');\n style.innerHTML = `\n body {\n font-family: 'Poppins', sans-serif;\n }\n `;\n document.head.appendChild(style);\n\n config.theme.set({\n preset: TkPreset,\n options: {\n prefix: 'tk',\n darkMode: false,\n darkModeSelector: false\n },\n });\n\n // Ensure PrimeNG overlays appear above Material Dialogs (Z-Index 1000)\n config.zIndex.modal = 1100;\n config.zIndex.overlay = 12000;\n config.zIndex.menu = 1100;\n config.zIndex.tooltip = 1100;\n };\n}\n\nexport function provideTkTheme() {\n return provideAppInitializer(() => {\n const config = inject(PrimeNG);\n const document = inject(DOCUMENT);\n return themeFactory(config, document)();\n });\n}\n","import { ComponentRef, signal, Injectable } from '@angular/core';\nimport { Subject, PartialObserver, Subscription } from 'rxjs';\n\n/**\n * Reference to a dialog/drawer opened via a service.\n * Supports both Observable-style subscription and Signal-based state.\n */\n@Injectable()\nexport class TkDialogRef<T, R = unknown> {\n private readonly closedSubject = new Subject<R | undefined>();\n private readonly resultSignal = signal<R | undefined>(undefined);\n private readonly isClosedSignal = signal<boolean>(false);\n\n /**\n * Signal that holds the result of the dialog after it closes.\n */\n readonly result = this.resultSignal.asReadonly();\n\n /**\n * Signal that indicates if the dialog has been closed.\n */\n readonly isClosed = this.isClosedSignal.asReadonly();\n\n // eslint-disable-next-line @angular-eslint/prefer-inject\n constructor(public readonly componentRef: ComponentRef<T>) {}\n\n /**\n * The instance of the component opened in the dialog.\n */\n get componentInstance(): T {\n return this.componentRef.instance;\n }\n\n /**\n * Closes the dialog, optionally passing a result back.\n * Internal implementation calls the component's tryClose to respect guards.\n */\n close(result?: R): void {\n const instance = this.componentRef.instance as unknown as {\n tryClose?: (result?: R) => void;\n };\n if (instance && typeof instance.tryClose === 'function') {\n instance.tryClose(result);\n }\n }\n\n /**\n * Subscribes to the closure event.\n * This maintains compatibility with existing service.open(...).subscribe() patterns\n * using the modern RxJS signature.\n */\n subscribe(\n nextOrObserver?:\n | ((value: R | undefined) => void)\n | PartialObserver<R | undefined>\n ): Subscription {\n if (typeof nextOrObserver === 'function') {\n return this.closedSubject.subscribe({ next: nextOrObserver });\n }\n return this.closedSubject.subscribe(nextOrObserver);\n }\n\n /**\n * Supports RxJS operators on the closure event.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n pipe(...args: any[]): any {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (this.closedSubject.pipe as any)(...args);\n }\n\n /**\n * Returns an Observable that emits when the dialog is closed.\n */\n afterClosed(): Subject<R | undefined> {\n return this.closedSubject;\n }\n\n /**\n * Internal method to emit the result and update reactive state.\n * Not intended for public use outside the opening service.\n */\n emitClose(result?: R): void {\n if (this.isClosedSignal()) {\n return;\n }\n this.resultSignal.set(result === null ? undefined : result);\n this.isClosedSignal.set(true);\n this.closedSubject.next(result === null ? undefined : result);\n this.closedSubject.complete();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tekus-design-system-core.mjs","sources":["../../../projects/design-system/core/types/src/grids/grid.enum.ts","../../../projects/design-system/core/types/src/breakpoints/breakpoints.ts","../../../projects/design-system/core/types/src/theme/tk-preset.ts","../../../projects/design-system/core/types/src/theme/theme.provider.ts","../../../projects/design-system/core/types/src/interception/dialog-ref.ts","../../../projects/design-system/core/tekus-design-system-core.ts"],"sourcesContent":["enum GapGutter {\n normal = 'var(--tk-spacing-gap-l, 1.5rem)',\n small = 'var(--tk-spacing-gap-m, 1rem)',\n large = 'var(--tk-spacing-base-200, 2rem)',\n extraLarge = 'var(--tk-spacing-gap-xl, 2.5rem)',\n}\n\nenum PaddingGridContainer {\n large = 'var(--tk-spacing-base-200, 2rem)',\n medium = 'var(--tk-spacing-padding-xl, 1.5rem)',\n small = 'var(--tk-spacing-padding-m, 1rem)'\n}\n\nenum Gutter {\n normal = 'normal',\n small = 'small',\n large = 'large',\n extraLarge = 'extraLarge',\n\n}\n\nexport {\n Gutter,\n GapGutter,\n PaddingGridContainer\n}","export const Breakpoints = {\n // Covers all devices with a width less than or equal to 360px.\n mobileSmall: '(max-width: 360px)',\n\n // For small phones (e.g., most modern cell phones)\n mobile: '(min-width: 361px) and (max-width: 424px)',\n\n // For large phones (e.g., Google Pixel, iPhone Plus/Max)\n mobileLarge: '(min-width: 425px) and (max-width: 575px)',\n\n // Vertical tablets and medium-sized devices\n tabletVertical: '(min-width: 576px) and (max-width: 767px)',\n\n // Tablets in landscape mode\n tabletHorizontal: '(min-width: 768px) and (max-width: 991px)',\n\n // Laptops and small desktops\n desktopSmall: '(min-width: 992px) and (max-width: 1199px)',\n\n // Large desks\n desktop: '(min-width: 1200px) and (max-width: 1399px)',\n\n // Ultra-wide screens\n desktopLarge: '(min-width: 1400px)',\n}","import { definePreset } from '@primeuix/themes';\nimport type { Preset } from '@primeuix/themes/types';\nimport Aura from '@primeuix/themes/aura';\n\nconst tkOverrides = {\n semantic: {\n primary: {\n 50: 'var(--tk-color-base-primary-50)',\n 100: 'var(--tk-color-base-primary-100)',\n 200: 'var(--tk-color-base-primary-200)',\n 300: 'var(--tk-color-base-primary-300)',\n 400: 'var(--tk-color-base-primary-400)',\n 500: 'var(--tk-color-base-primary-500)',\n 600: 'var(--tk-color-base-primary-600)',\n 700: 'var(--tk-color-base-primary-700)',\n 800: 'var(--tk-color-base-primary-800)',\n 900: 'var(--tk-color-base-primary-900)',\n 950: 'var(--tk-color-base-primary-950)',\n },\n red: {\n 50: 'var(--tk-color-base-red-50)',\n 100: 'var(--tk-color-base-red-100)',\n 200: 'var(--tk-color-base-red-200)',\n 300: 'var(--tk-color-base-red-300)',\n 400: 'var(--tk-color-base-red-400)',\n 500: 'var(--tk-color-base-red-500)',\n 600: 'var(--tk-color-base-red-600)',\n 700: 'var(--tk-color-base-red-700)',\n 800: 'var(--tk-color-base-red-800)',\n 900: 'var(--tk-color-base-red-900)',\n 950: 'var(--tk-color-base-red-950)',\n },\n surface: {\n 0: 'var(--tk-color-base-surface-0)',\n 50: 'var(--tk-color-base-surface-50)',\n 100: 'var(--tk-color-base-surface-100)',\n 200: 'var(--tk-color-base-surface-200)',\n 300: 'var(--tk-color-base-surface-300)',\n 400: 'var(--tk-color-base-surface-400)',\n 500: 'var(--tk-color-base-surface-500)',\n 600: 'var(--tk-color-base-surface-600)',\n 700: 'var(--tk-color-base-surface-700)',\n 800: 'var(--tk-color-base-surface-800)',\n 900: 'var(--tk-color-base-surface-900)',\n 950: 'var(--tk-color-base-surface-950)',\n },\n sky:{\n 50: 'var(--tk-color-base-sky-50)',\n 100: 'var(--tk-color-base-sky-100)',\n 200: 'var(--tk-color-base-sky-200)',\n 300: 'var(--tk-color-base-sky-300)',\n 400: 'var(--tk-color-base-sky-400)',\n 500: 'var(--tk-color-base-sky-500)',\n 600: 'var(--tk-color-base-sky-600)',\n 700: 'var(--tk-color-base-sky-700)',\n 800: 'var(--tk-color-base-sky-800)',\n 900: 'var(--tk-color-base-sky-900)',\n 950: 'var(--tk-color-base-sky-950)',\n },\n orange:{\n 50: 'var(--tk-color-base-yellow-50)',\n 100: 'var(--tk-color-base-yellow-100)',\n 200: 'var(--tk-color-base-yellow-200)',\n 300: 'var(--tk-color-base-yellow-300)',\n 400: 'var(--tk-color-base-yellow-400)',\n 500: 'var(--tk-color-base-yellow-500)',\n 600: 'var(--tk-color-base-yellow-600)',\n 700: 'var(--tk-color-base-yellow-700)',\n 800: 'var(--tk-color-base-yellow-800)',\n 900: 'var(--tk-color-base-yellow-900)',\n 950: 'var(--tk-color-base-yellow-950)',\n },\n },\n font: {\n family: 'var(--tk-font-family)',\n },\n\n components: {\n button: {\n root: {\n outline: 'none',\n boxShadow: 'none',\n border: 'none',\n focusBoxShadow: 'none',\n borderRadius: 'var(--tk-borderRadius-theme-s, var(--tk-borderRadius-s))',\n },\n label: {\n color: 'inherit',\n },\n colorScheme: {\n light: {\n root: {\n primary: {\n hoverBackground: 'var(--tk-color-base-primary-400)',\n activeBackground: 'var(--tk-color-base-primary-400)',\n hoverBorderColor: 'transparent',\n activeBorderColor: 'transparent',\n },\n secondary: {\n background: 'var(--tk-color-base-surface-100)',\n hoverBackground: 'var(--tk-color-base-surface-400)',\n },\n },\n text: {\n secondary: {\n hoverBackground: 'var(--tk-color-base-surface-200)',\n activeBackground: 'var(--tk-color-base-surface-200)',\n },\n },\n outlined: {\n secondary: {\n hoverBackground: 'var(--tk-color-base-surface-200)',\n activeBackground: 'var(--tk-color-base-surface-200)',\n borderColor: 'var(--tk-color-base-surface-200)',\n },\n },\n }\n },\n },\n tag: {\n root: {\n fontWeight: 'var(--tk-font-weight-400)',\n borderRadius: 'var(--tk-borderRadius-theme-l, var(--tk-borderRadius-full))',\n },\n colorScheme: {\n light: {\n secondary:{\n color: 'var(--tk-color-base-surface-950)',\n }\n },\n },\n },\n message: {\n text: {\n fontWeight: '400',\n fontSize: 'var(--tk-font-size-paragraph-s)',\n },\n colorScheme: {\n light: {\n info: {\n background: 'var(--tk-color-feedback-info-muted)',\n borderColor: 'var(--tk-color-feedback-info-default)',\n color: 'var(--tk-color-feedback-info-strong)',\n shadow: 'none',\n },\n success: {\n background: 'var(--tk-color-feedback-success-muted)',\n borderColor: 'var(--tk-color-feedback-success-default)',\n color: 'var(--tk-color-feedback-success-strong)',\n shadow: 'none',\n },\n warn: {\n background: 'var(--tk-color-feedback-warn-muted)',\n borderColor: 'var(--tk-color-feedback-warn-default)',\n color: 'var(--tk-color-feedback-warn-strong)',\n shadow: 'none',\n },\n error: {\n background: 'var(--tk-color-feedback-danger-muted)',\n borderColor: 'var(--tk-color-feedback-danger-default)',\n color: 'var(--tk-color-feedback-danger-strong)',\n shadow: 'none',\n },\n secondary: {\n color: 'var(--tk-color-base-surface-600)',\n simple: {\n color: 'var(--tk-color-base-surface-600)',\n },\n },\n },\n },\n },\n tooltip: {\n colorScheme: {\n light: {\n root: {\n background: 'var(--tk-color-base-surface-700)',\n }\n }\n }\n },\n checkbox: {\n colorScheme: {\n light: {\n root: {\n borderColor: 'var(--tk-color-base-surface-400)',\n checkedBackground: 'var(--tk-color-base-primary-500)',\n checkedBorderColor: 'var(--tk-color-base-primary-500)',\n checkedHoverBackground: 'var(--tk-color-base-primary-600)',\n checkedHoverBorderColor: 'var(--tk-color-base-primary-600)',\n disabledBackground: 'var(--tk-color-base-surface-100)',\n disabledBorderColor: 'var(--tk-color-base-surface-300)',\n checkedDisabledBorderColor: 'var(--tk-color-base-surface-300)',\n }\n }\n }\n },\n radiobutton: {\n colorScheme: {\n light: {\n root: {\n borderColor: 'var(--tk-color-base-surface-400)',\n checkedBackground: 'var(--tk-color-base-primary-500)',\n checkedBorderColor: 'var(--tk-color-base-primary-500)',\n checkedHoverBackground: 'var(--tk-color-base-primary-600)',\n checkedHoverBorderColor: 'var(--tk-color-base-primary-600)',\n disabledBackground: 'var(--tk-color-base-surface-100)',\n disabledBorderColor: 'var(--tk-color-base-surface-300)',\n checkedDisabledBackground: 'var(--tk-color-base-surface-100)',\n checkedDisabledBorderColor: 'var(--tk-color-base-surface-300)',\n }\n }\n }\n },\n panel: {\n root: {\n background: 'var(--tk-color-background-soft)',\n borderRadius: 'var(--tk-borderRadius-s)',\n borderColor: 'var(--tk-color-transparent)',\n },\n header: {\n background: 'transparent',\n color: 'var(--tk-color-text-default)',\n borderColor: 'var(--tk-color-transparent)',\n borderWidth: '0',\n padding: 'var(--tk-spacing-padding-m)',\n fontWeight: 'var(--tk-font-weight-600)',\n fontSize: 'var(--tk-font-size-paragraph-m)',\n },\n toggleableHeader: {\n padding: 'var(--tk-spacing-padding-s) var(--tk-spacing-padding-m)',\n },\n content: {\n padding: 'var(--tk-spacing-padding-l)',\n },\n },\n drawer: {\n header: {\n padding: 'var(--tk-spacing-padding-m)',\n },\n content: {\n padding: 'var(--tk-spacing-padding-m)',\n },\n },\n toast: {\n info: {\n background: 'var(--tk-color-base-sky-100)',\n borderColor: 'var(--tk-color-base-sky-500)',\n color: 'var(--tk-color-base-sky-700)',\n detailColor: 'var(--tk-color-base-surface-700)',\n closeButton: {\n hoverBackground: 'var(--tk-color-base-sky-100)',\n focusRing: {\n color: 'var(--tk-color-base-sky-600)',\n shadow: 'none'\n }\n }\n },\n success: {\n background: 'var(--tk-color-base-green-100)',\n borderColor: 'var(--tk-color-base-green-500)',\n color: 'var(--tk-color-base-green-700)',\n detailColor: 'var(--tk-color-base-surface-700)',\n closeButton: {\n hoverBackground: 'var(--tk-color-base-green-100)',\n focusRing: {\n color: 'var(--tk-color-base-green-600)',\n shadow: 'none'\n }\n }\n },\n error: {\n background: 'var(--tk-color-base-red-100)',\n borderColor: 'var(--tk-color-base-red-500)',\n color: 'var(--tk-color-base-red-700)',\n detailColor: 'var(--tk-color-base-surface-700)',\n closeButton: {\n hoverBackground: 'var(--tk-color-base-red-100)',\n focusRing: {\n color: 'var(--tk-color-base-red-600)',\n shadow: 'none'\n }\n }\n }\n },\n menu: {\n root: {\n background: 'transparent',\n borderColor: 'transparent',\n borderRadius: 'var(--tk-borderRadius-s)',\n padding: 'var(--tk-spacing-base-50)',\n color: 'var(--tk-color-base-surface-950)',\n },\n list: {\n padding: '0',\n gap: 'var(--tk-spacing-base-25)',\n },\n item: {\n focusBackground: 'transparent',\n activeBackground: 'transparent',\n hoverBackground: 'transparent',\n padding: 'var(--tk-spacing-base-75) var(--tk-spacing-base-100)',\n borderRadius: 'var(--tk-borderRadius-theme-s, var(--tk-borderRadius-s))',\n gap: 'var(--tk-spacing-base-75)',\n color: 'var(--tk-color-base-surface-950)',\n },\n submenuLabel: {\n padding: 'var(--tk-spacing-base-100) var(--tk-spacing-base-50) var(--tk-spacing-base-50)',\n fontWeight: 'var(--tk-font-weight-600)',\n color: 'var(--tk-color-base-surface-950)',\n },\n separator: {\n margin: 'var(--tk-spacing-base-75) 0',\n borderColor: 'var(--tk-color-base-surface-100)',\n },\n },\n popover: {\n root: {\n background: 'var(--tk-color-base-surface-0)',\n borderColor: 'var(--tk-color-base-surface-200)',\n borderRadius: 'var(--tk-borderRadius-s)',\n shadow: '0 4px 12px rgba(0, 0, 0, 0.08)',\n },\n content: {\n padding: '0',\n },\n },\n panelMenu: {\n root: {\n background: 'transparent',\n borderColor: 'transparent',\n gap: 'var(--tk-spacing-base-50)',\n },\n panel: {\n background: 'transparent',\n borderColor: 'transparent',\n borderWidth: '0',\n padding: '0',\n borderRadius: 'var(--tk-borderRadius-s)',\n first: { borderWidth: '0' },\n last: { borderWidth: '0' },\n },\n item: {\n focusBackground: 'transparent',\n activeBackground: 'transparent',\n hoverBackground: 'transparent',\n padding: '0',\n gap: '0',\n borderRadius: 'var(--tk-borderRadius-theme-s, var(--tk-borderRadius-s))',\n },\n submenu: {\n indent: '0',\n },\n submenuIcon: {\n color: 'transparent',\n focusColor: 'transparent',\n },\n },\n stepper: {\n colorScheme: {\n light: {\n separator: {\n background: 'var(--tk-color-base-surface-200)',\n activeBackground: 'var(--tk-color-base-primary-500)',\n },\n stepTitle: {\n color: 'var(--tk-color-text-muted)',\n activeColor: 'var(--tk-color-base-primary-500)',\n },\n stepNumber: {\n background: 'var(--tk-color-base-surface-0)',\n activeBackground: 'var(--tk-color-base-surface-0)',\n borderColor: 'var(--tk-color-base-surface-300)',\n activeBorderColor: 'var(--tk-color-base-primary-500)',\n color: 'var(--tk-color-text-muted)',\n activeColor: 'var(--tk-color-base-primary-500)',\n shadow: 'none',\n },\n }\n }\n },\n chip: {\n root: {\n borderRadius: 'var(--tk-borderRadius-full, 62.4375rem)',\n paddingX: '0.5rem',\n paddingY: '0.25rem',\n gap: '0.375rem',\n background: 'var(--tk-color-background-soft, #f2f1f1)',\n color: 'var(--tk-color-base-surface-700, #424243)',\n },\n image: {\n width: '1.5rem',\n height: '1.5rem',\n },\n icon: {\n size: '0.875rem',\n color: 'var(--tk-color-base-surface-700, #424243)',\n },\n removeIcon: {\n size: '1.125rem',\n color: 'var(--tk-color-base-surface-700, #424243)',\n focusRing: {\n width: '0',\n style: 'none',\n color: 'transparent',\n offset: '0',\n shadow: 'none',\n },\n },\n },\n treetable: {\n root: {\n borderColor: 'var(--tk-color-base-surface-200)',\n background: 'var(--tk-color-base-surface-0)',\n },\n header: {\n background: 'transparent',\n borderColor: 'transparent',\n },\n row: {\n background: 'var(--tk-color-base-surface-0)',\n borderColor: 'var(--tk-color-base-surface-100)',\n hoverBackground: 'var(--tk-color-base-surface-50)',\n },\n },\n },\n};\n\nexport const TkPreset: Preset = definePreset(Aura, tkOverrides as Preset);\n","import { inject, provideAppInitializer, DOCUMENT } from '@angular/core';\n\nimport { PrimeNG } from 'primeng/config';\nimport { TkPreset } from './tk-preset';\n\nfunction themeFactory(config: PrimeNG, document: Document): () => void {\n return () => {\n const fontLink = document.createElement('link');\n fontLink.rel = 'stylesheet';\n fontLink.href =\n 'https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap';\n document.head.appendChild(fontLink);\n\n const style = document.createElement('style');\n style.innerHTML = `\n body {\n font-family: 'Poppins', sans-serif;\n }\n `;\n document.head.appendChild(style);\n\n config.theme.set({\n preset: TkPreset,\n options: {\n prefix: 'tk',\n darkMode: false,\n darkModeSelector: false\n },\n });\n\n // Ensure PrimeNG overlays appear above Material Dialogs (Z-Index 1000)\n config.zIndex.modal = 1100;\n config.zIndex.overlay = 12000;\n config.zIndex.menu = 1100;\n config.zIndex.tooltip = 1100;\n };\n}\n\nexport function provideTkTheme() {\n return provideAppInitializer(() => {\n const config = inject(PrimeNG);\n const document = inject(DOCUMENT);\n return themeFactory(config, document)();\n });\n}\n","import { ComponentRef, signal, Injectable } from '@angular/core';\nimport { Subject, PartialObserver, Subscription } from 'rxjs';\n\n/**\n * Reference to a dialog/drawer opened via a service.\n * Supports both Observable-style subscription and Signal-based state.\n */\n@Injectable()\nexport class TkDialogRef<T, R = unknown> {\n private readonly closedSubject = new Subject<R | undefined>();\n private readonly resultSignal = signal<R | undefined>(undefined);\n private readonly isClosedSignal = signal<boolean>(false);\n\n /**\n * Signal that holds the result of the dialog after it closes.\n */\n readonly result = this.resultSignal.asReadonly();\n\n /**\n * Signal that indicates if the dialog has been closed.\n */\n readonly isClosed = this.isClosedSignal.asReadonly();\n\n // eslint-disable-next-line @angular-eslint/prefer-inject\n constructor(public readonly componentRef: ComponentRef<T>) {}\n\n /**\n * The instance of the component opened in the dialog.\n */\n get componentInstance(): T {\n return this.componentRef.instance;\n }\n\n /**\n * Closes the dialog, optionally passing a result back.\n * Internal implementation calls the component's tryClose to respect guards.\n */\n close(result?: R): void {\n const instance = this.componentRef.instance as unknown as {\n tryClose?: (result?: R) => void;\n };\n if (instance && typeof instance.tryClose === 'function') {\n instance.tryClose(result);\n }\n }\n\n /**\n * Subscribes to the closure event.\n * This maintains compatibility with existing service.open(...).subscribe() patterns\n * using the modern RxJS signature.\n */\n subscribe(\n nextOrObserver?:\n | ((value: R | undefined) => void)\n | PartialObserver<R | undefined>\n ): Subscription {\n if (typeof nextOrObserver === 'function') {\n return this.closedSubject.subscribe({ next: nextOrObserver });\n }\n return this.closedSubject.subscribe(nextOrObserver);\n }\n\n /**\n * Supports RxJS operators on the closure event.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n pipe(...args: any[]): any {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (this.closedSubject.pipe as any)(...args);\n }\n\n /**\n * Returns an Observable that emits when the dialog is closed.\n */\n afterClosed(): Subject<R | undefined> {\n return this.closedSubject;\n }\n\n /**\n * Internal method to emit the result and update reactive state.\n * Not intended for public use outside the opening service.\n */\n emitClose(result?: R): void {\n if (this.isClosedSignal()) {\n return;\n }\n this.resultSignal.set(result === null ? undefined : result);\n this.isClosedSignal.set(true);\n this.closedSubject.next(result === null ? undefined : result);\n this.closedSubject.complete();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@tekus/design-system",
3
3
  "description": "Tekus design system library",
4
- "version": "5.37.0",
4
+ "version": "5.39.0",
5
5
  "license": "UNLICENSED",
6
6
  "peerDependencies": {
7
7
  "@angular/core": "^21.0.0",
@@ -48,6 +48,10 @@
48
48
  "types": "./types/tekus-design-system-components-autocomplete.d.ts",
49
49
  "default": "./fesm2022/tekus-design-system-components-autocomplete.mjs"
50
50
  },
51
+ "./components/avatar": {
52
+ "types": "./types/tekus-design-system-components-avatar.d.ts",
53
+ "default": "./fesm2022/tekus-design-system-components-avatar.mjs"
54
+ },
51
55
  "./components/badge": {
52
56
  "types": "./types/tekus-design-system-components-badge.d.ts",
53
57
  "default": "./fesm2022/tekus-design-system-components-badge.mjs"
@@ -84,6 +88,10 @@
84
88
  "types": "./types/tekus-design-system-components-color-picker.d.ts",
85
89
  "default": "./fesm2022/tekus-design-system-components-color-picker.mjs"
86
90
  },
91
+ "./components/data-list": {
92
+ "types": "./types/tekus-design-system-components-data-list.d.ts",
93
+ "default": "./fesm2022/tekus-design-system-components-data-list.mjs"
94
+ },
87
95
  "./components/date-picker": {
88
96
  "types": "./types/tekus-design-system-components-date-picker.d.ts",
89
97
  "default": "./fesm2022/tekus-design-system-components-date-picker.mjs"
@@ -172,6 +180,10 @@
172
180
  "types": "./types/tekus-design-system-components-sidebar-layout.d.ts",
173
181
  "default": "./fesm2022/tekus-design-system-components-sidebar-layout.mjs"
174
182
  },
183
+ "./components/stat": {
184
+ "types": "./types/tekus-design-system-components-stat.d.ts",
185
+ "default": "./fesm2022/tekus-design-system-components-stat.mjs"
186
+ },
175
187
  "./components/status-bar": {
176
188
  "types": "./types/tekus-design-system-components-status-bar.d.ts",
177
189
  "default": "./fesm2022/tekus-design-system-components-status-bar.mjs"
@@ -0,0 +1,242 @@
1
+ // Internal configuration module — not for direct consumer import.
2
+ // All default color values match tk-foundations.json exactly.
3
+
4
+ @use 'sass:color';
5
+ @use 'sass:math';
6
+
7
+ // ── Configurable API ──────────────────────────────────────────────────────────
8
+ $config-brand: 'default' !default; // 'default' | 'brand-a' | 'brand-b'
9
+ $config-scale: null !default; // html font-size multiplier — overrides the brand's suggested scale
10
+ $config-primary: null !default; // hex color — auto-generates 11-step primary palette
11
+ $config-secondary: null !default; // hex color — auto-generates 11-step secondary palette
12
+ $config-accent: null !default; // hex color — auto-generates 11-step accent palette
13
+ $config-border-radius: null !default; // 'rounded' | 'pill' | 'square' — overrides the brand's default radius style
14
+
15
+ // ── Palette generation ────────────────────────────────────────────────────────
16
+ // Places $base at step 500; steps 50-400 mix toward white, steps 600-950 toward black.
17
+ // Components are rounded so Sass emits clean hex values instead of rgb() decimals.
18
+ @function _tk-palette-step($base, $step) {
19
+ $mixed: $base;
20
+ @if $step == 50 { $mixed: color.mix(white, $base, 91%); }
21
+ @else if $step == 100 { $mixed: color.mix(white, $base, 83%); }
22
+ @else if $step == 200 { $mixed: color.mix(white, $base, 67%); }
23
+ @else if $step == 300 { $mixed: color.mix(white, $base, 48%); }
24
+ @else if $step == 400 { $mixed: color.mix(white, $base, 28%); }
25
+ @else if $step == 600 { $mixed: color.mix($base, black, 85%); }
26
+ @else if $step == 700 { $mixed: color.mix($base, black, 70%); }
27
+ @else if $step == 800 { $mixed: color.mix($base, black, 52%); }
28
+ @else if $step == 900 { $mixed: color.mix($base, black, 35%); }
29
+ @else if $step == 950 { $mixed: color.mix($base, black, 20%); }
30
+ // Round components and return as a legacy sRGB color so Sass serializes to hex
31
+ @return color.change($mixed,
32
+ $red: math.round(color.channel($mixed, "red", $space: rgb)),
33
+ $green: math.round(color.channel($mixed, "green", $space: rgb)),
34
+ $blue: math.round(color.channel($mixed, "blue", $space: rgb))
35
+ );
36
+ }
37
+
38
+ // ── Default brand palettes ────────────────────────────────────────────────────
39
+ // Primary and accent are null for the default brand — variables.css already
40
+ // defines these values, so there's no need to duplicate them here.
41
+ // They are populated only when a brand preset or $config-primary/$config-accent is set.
42
+ $brand-primary-50: null;
43
+ $brand-primary-100: null;
44
+ $brand-primary-200: null;
45
+ $brand-primary-300: null;
46
+ $brand-primary-400: null;
47
+ $brand-primary-500: null;
48
+ $brand-primary-600: null;
49
+ $brand-primary-700: null;
50
+ $brand-primary-800: null;
51
+ $brand-primary-900: null;
52
+ $brand-primary-950: null;
53
+
54
+ $brand-accent-50: null;
55
+ $brand-accent-100: null;
56
+ $brand-accent-200: null;
57
+ $brand-accent-300: null;
58
+ $brand-accent-400: null;
59
+ $brand-accent-500: null;
60
+ $brand-accent-600: null;
61
+ $brand-accent-700: null;
62
+ $brand-accent-800: null;
63
+ $brand-accent-900: null;
64
+ $brand-accent-950: null;
65
+
66
+ // Secondary palette — defaults to the surface palette tokens from variables.css.
67
+ // Using var() cross-references so secondary tracks surface automatically.
68
+ // Override with $config-secondary: #hex to generate a fully custom palette.
69
+ $brand-secondary-50: var(--tk-color-base-surface-50);
70
+ $brand-secondary-100: var(--tk-color-base-surface-100);
71
+ $brand-secondary-200: var(--tk-color-base-surface-200);
72
+ $brand-secondary-300: var(--tk-color-base-surface-300);
73
+ $brand-secondary-400: var(--tk-color-base-surface-400);
74
+ $brand-secondary-500: var(--tk-color-base-surface-500);
75
+ $brand-secondary-600: var(--tk-color-base-surface-600);
76
+ $brand-secondary-700: var(--tk-color-base-surface-700);
77
+ $brand-secondary-800: var(--tk-color-base-surface-800);
78
+ $brand-secondary-900: var(--tk-color-base-surface-900);
79
+ $brand-secondary-950: var(--tk-color-base-surface-950);
80
+
81
+ // Typography
82
+ $brand-font-family: 'Poppins', sans-serif;
83
+
84
+ // Border radius style suggested by the brand — overridden by an explicit
85
+ // $config-border-radius. 'default' (rounded) | 'sharp' | 'soft' | 'pill'
86
+ $brand-radius-style: 'default';
87
+
88
+ // Rem scale suggested by the brand — overridden by an explicit $config-scale,
89
+ // same precedence as $brand-radius-style above.
90
+ $brand-scale: 1;
91
+
92
+ // ── Brand overrides ───────────────────────────────────────────────────────────
93
+ // Each brand declares all 11 primary + 11 accent shades so no shade leaks
94
+ // in from the default brand.
95
+
96
+ @if $config-brand == 'brand-a' {
97
+ // Primary: warm red
98
+ $brand-primary-50: #ffe8ec;
99
+ $brand-primary-100: #ffc1cc;
100
+ $brand-primary-200: #ff96a8;
101
+ $brand-primary-300: #ff6b83;
102
+ $brand-primary-400: #f5395c;
103
+ $brand-primary-500: #e40040;
104
+ $brand-primary-600: #c90039;
105
+ $brand-primary-700: #ad0031;
106
+ $brand-primary-800: #8a0027;
107
+ $brand-primary-900: #66001d;
108
+ $brand-primary-950: #3d0011;
109
+
110
+ // Accent: same hue (monochromatic brand)
111
+ $brand-accent-50: #ffe8ec;
112
+ $brand-accent-100: #ffc1cc;
113
+ $brand-accent-200: #ff96a8;
114
+ $brand-accent-300: #ff6b83;
115
+ $brand-accent-400: #f5395c;
116
+ $brand-accent-500: #e40040;
117
+ $brand-accent-600: #c90039;
118
+ $brand-accent-700: #ad0031;
119
+ $brand-accent-800: #8a0027;
120
+ $brand-accent-900: #66001d;
121
+ $brand-accent-950: #3d0011;
122
+
123
+ $brand-font-family: 'Inter', sans-serif;
124
+ $brand-radius-style: 'pill';
125
+ }
126
+
127
+ @else if $config-brand == 'brand-b' {
128
+ // Primary: corporate blue
129
+ $brand-primary-50: #e0f1fb;
130
+ $brand-primary-100: #b3d9f5;
131
+ $brand-primary-200: #80bfed;
132
+ $brand-primary-300: #4da5e5;
133
+ $brand-primary-400: #2691db;
134
+ $brand-primary-500: #007bc4;
135
+ $brand-primary-600: #006cb0;
136
+ $brand-primary-700: #005a96;
137
+ $brand-primary-800: #00477a;
138
+ $brand-primary-900: #003460;
139
+ $brand-primary-950: #001e3a;
140
+
141
+ // Accent: complementary teal
142
+ $brand-accent-50: #e0f7f4;
143
+ $brand-accent-100: #b3ece4;
144
+ $brand-accent-200: #80ded2;
145
+ $brand-accent-300: #4dd0bf;
146
+ $brand-accent-400: #26c5b0;
147
+ $brand-accent-500: #00b8a0;
148
+ $brand-accent-600: #00a390;
149
+ $brand-accent-700: #008a7a;
150
+ $brand-accent-800: #006e61;
151
+ $brand-accent-900: #005249;
152
+ $brand-accent-950: #003330;
153
+
154
+ $brand-font-family: 'Poppins', sans-serif;
155
+ $brand-radius-style: 'soft';
156
+ $brand-scale: 0.95;
157
+ }
158
+
159
+ // ── Resolved scale ────────────────────────────────────────────────────────────
160
+ // An explicit $config-scale always wins over the brand's suggested scale;
161
+ // $brand-scale applies only when the consumer left it unset.
162
+ $scale: if($config-scale, $config-scale, $brand-scale);
163
+
164
+ // ── Border radius (scale handled separately by html font-size) ────────────────
165
+ // $config-border-radius, when set, overrides the brand's suggested style —
166
+ // same precedence as $config-primary/$config-secondary/$config-accent.
167
+ $radius-style: if($config-border-radius, $config-border-radius, $brand-radius-style);
168
+
169
+ $radius-xs: var(--tk-borderRadius-xs);
170
+ $radius-s: var(--tk-borderRadius-s);
171
+ $radius-m: var(--tk-borderRadius-m);
172
+ // The `l` slot is the "fully rounded" step: it is consumed only by pill-shaped
173
+ // surfaces (tag, multiselect chip, autocomplete chip), which were `full` before
174
+ // this theming layer existed. Basing it on --tk-borderRadius-l would silently
175
+ // shrink them from 62.4375rem to 1.5rem under the default/soft styles.
176
+ $radius-l: var(--tk-borderRadius-full);
177
+ // The `xl` slot is the *actual* adaptive counterpart of --tk-borderRadius-l
178
+ // (1.5rem), consumed by large decorative surfaces such as the avatar in its
179
+ // `l`/`xl` sizes. It exists as a separate slot because the `l` name above was
180
+ // already taken by the fully-rounded/pill step.
181
+ $radius-xl: var(--tk-borderRadius-l);
182
+
183
+ @if $radius-style == 'sharp' or $radius-style == 'square' {
184
+ $radius-xs: var(--tk-borderRadius-null);
185
+ $radius-s: var(--tk-borderRadius-null);
186
+ $radius-m: var(--tk-borderRadius-null);
187
+ $radius-l: var(--tk-borderRadius-null);
188
+ $radius-xl: var(--tk-borderRadius-null);
189
+ } @else if $radius-style == 'pill' {
190
+ $radius-xs: var(--tk-borderRadius-full);
191
+ $radius-s: var(--tk-borderRadius-full);
192
+ $radius-m: var(--tk-borderRadius-full);
193
+ $radius-l: var(--tk-borderRadius-full);
194
+ $radius-xl: var(--tk-borderRadius-full);
195
+ } @else if $radius-style == 'soft' {
196
+ $radius-m: 0.75rem;
197
+ }
198
+ // 'default' / 'rounded' → no override; keep the base values above as-is.
199
+
200
+ // ── Custom palette overrides (applied after brand presets) ────────────────────
201
+ // Custom colors override brand preset colors. Custom override at step 500 = the exact input hex.
202
+ @if $config-primary {
203
+ $brand-primary-50: _tk-palette-step($config-primary, 50);
204
+ $brand-primary-100: _tk-palette-step($config-primary, 100);
205
+ $brand-primary-200: _tk-palette-step($config-primary, 200);
206
+ $brand-primary-300: _tk-palette-step($config-primary, 300);
207
+ $brand-primary-400: _tk-palette-step($config-primary, 400);
208
+ $brand-primary-500: _tk-palette-step($config-primary, 500);
209
+ $brand-primary-600: _tk-palette-step($config-primary, 600);
210
+ $brand-primary-700: _tk-palette-step($config-primary, 700);
211
+ $brand-primary-800: _tk-palette-step($config-primary, 800);
212
+ $brand-primary-900: _tk-palette-step($config-primary, 900);
213
+ $brand-primary-950: _tk-palette-step($config-primary, 950);
214
+ }
215
+
216
+ @if $config-secondary {
217
+ $brand-secondary-50: _tk-palette-step($config-secondary, 50);
218
+ $brand-secondary-100: _tk-palette-step($config-secondary, 100);
219
+ $brand-secondary-200: _tk-palette-step($config-secondary, 200);
220
+ $brand-secondary-300: _tk-palette-step($config-secondary, 300);
221
+ $brand-secondary-400: _tk-palette-step($config-secondary, 400);
222
+ $brand-secondary-500: _tk-palette-step($config-secondary, 500);
223
+ $brand-secondary-600: _tk-palette-step($config-secondary, 600);
224
+ $brand-secondary-700: _tk-palette-step($config-secondary, 700);
225
+ $brand-secondary-800: _tk-palette-step($config-secondary, 800);
226
+ $brand-secondary-900: _tk-palette-step($config-secondary, 900);
227
+ $brand-secondary-950: _tk-palette-step($config-secondary, 950);
228
+ }
229
+
230
+ @if $config-accent {
231
+ $brand-accent-50: _tk-palette-step($config-accent, 50);
232
+ $brand-accent-100: _tk-palette-step($config-accent, 100);
233
+ $brand-accent-200: _tk-palette-step($config-accent, 200);
234
+ $brand-accent-300: _tk-palette-step($config-accent, 300);
235
+ $brand-accent-400: _tk-palette-step($config-accent, 400);
236
+ $brand-accent-500: _tk-palette-step($config-accent, 500);
237
+ $brand-accent-600: _tk-palette-step($config-accent, 600);
238
+ $brand-accent-700: _tk-palette-step($config-accent, 700);
239
+ $brand-accent-800: _tk-palette-step($config-accent, 800);
240
+ $brand-accent-900: _tk-palette-step($config-accent, 900);
241
+ $brand-accent-950: _tk-palette-step($config-accent, 950);
242
+ }
@@ -0,0 +1,105 @@
1
+ // Public entry point for the configurable token bundle.
2
+ //
3
+ // Consumer usage (in end-project global stylesheet):
4
+ // @use '@tekus/design-system/scss/tk-bundle' with (
5
+ // $config-brand: 'brand-a', // preset brand (optional)
6
+ // $config-scale: 1.1, // rem scale multiplier (optional)
7
+ // $config-primary: #e40040, // custom primary hex → auto-generates 11-step palette
8
+ // $config-secondary: #007bc4, // custom secondary hex → emits --tk-color-base-secondary-*
9
+ // $config-accent: #00b8a0, // custom accent hex → overrides brand accent palette
10
+ // $config-border-radius: 'pill', // 'rounded' | 'pill' | 'square' (optional)
11
+ // );
12
+ //
13
+ // Scale is applied as an html font-size multiplier so ALL rem-based tokens
14
+ // (spacing, typography, radius, component sizes) scale uniformly without
15
+ // enumerating individual tokens.
16
+ //
17
+ // Brand sets preset primary/accent palettes, font-family, and border-radius style.
18
+ // Custom color params override those presets (or generate new palettes for secondary).
19
+ // Omitted params fall back to brand preset values.
20
+ //
21
+ // Border radius has 3 styles: 'rounded' (default — current token values, unchanged),
22
+ // 'pill' (fully rounded m/l radii, e.g. buttons/chips), and 'square' (no radius at all).
23
+ // When set, it overrides whatever radius style the selected brand suggests.
24
+
25
+ $config-brand: 'default' !default;
26
+ $config-scale: null !default;
27
+ $config-primary: null !default;
28
+ $config-secondary: null !default;
29
+ $config-accent: null !default;
30
+ $config-border-radius: null !default;
31
+
32
+ @use 'config' as cfg with (
33
+ $config-brand: $config-brand,
34
+ $config-scale: $config-scale,
35
+ $config-primary: $config-primary,
36
+ $config-secondary: $config-secondary,
37
+ $config-accent: $config-accent,
38
+ $config-border-radius: $config-border-radius
39
+ );
40
+
41
+ html {
42
+ font-size: calc(100% * #{cfg.$scale});
43
+ }
44
+
45
+ :root {
46
+ // ── Primary palette (only when brand or $config-primary is active) ─────────
47
+ // Default brand skips this block — variables.css defines primary values and
48
+ // re-emitting them as var() self-references would create an invalid CSS cycle.
49
+ @if cfg.$brand-primary-50 {
50
+ --tk-color-base-primary-50: #{cfg.$brand-primary-50};
51
+ --tk-color-base-primary-100: #{cfg.$brand-primary-100};
52
+ --tk-color-base-primary-200: #{cfg.$brand-primary-200};
53
+ --tk-color-base-primary-300: #{cfg.$brand-primary-300};
54
+ --tk-color-base-primary-400: #{cfg.$brand-primary-400};
55
+ --tk-color-base-primary-500: #{cfg.$brand-primary-500};
56
+ --tk-color-base-primary-600: #{cfg.$brand-primary-600};
57
+ --tk-color-base-primary-700: #{cfg.$brand-primary-700};
58
+ --tk-color-base-primary-800: #{cfg.$brand-primary-800};
59
+ --tk-color-base-primary-900: #{cfg.$brand-primary-900};
60
+ --tk-color-base-primary-950: #{cfg.$brand-primary-950};
61
+ }
62
+
63
+ // ── Accent palette (only when brand or $config-accent is active) ───────────
64
+ @if cfg.$brand-accent-50 {
65
+ --tk-color-base-accent-50: #{cfg.$brand-accent-50};
66
+ --tk-color-base-accent-100: #{cfg.$brand-accent-100};
67
+ --tk-color-base-accent-200: #{cfg.$brand-accent-200};
68
+ --tk-color-base-accent-300: #{cfg.$brand-accent-300};
69
+ --tk-color-base-accent-400: #{cfg.$brand-accent-400};
70
+ --tk-color-base-accent-500: #{cfg.$brand-accent-500};
71
+ --tk-color-base-accent-600: #{cfg.$brand-accent-600};
72
+ --tk-color-base-accent-700: #{cfg.$brand-accent-700};
73
+ --tk-color-base-accent-800: #{cfg.$brand-accent-800};
74
+ --tk-color-base-accent-900: #{cfg.$brand-accent-900};
75
+ --tk-color-base-accent-950: #{cfg.$brand-accent-950};
76
+ }
77
+
78
+ // ── Secondary palette (always emitted; defaults to surface palette) ─────────
79
+ --tk-color-base-secondary-50: #{cfg.$brand-secondary-50};
80
+ --tk-color-base-secondary-100: #{cfg.$brand-secondary-100};
81
+ --tk-color-base-secondary-200: #{cfg.$brand-secondary-200};
82
+ --tk-color-base-secondary-300: #{cfg.$brand-secondary-300};
83
+ --tk-color-base-secondary-400: #{cfg.$brand-secondary-400};
84
+ --tk-color-base-secondary-500: #{cfg.$brand-secondary-500};
85
+ --tk-color-base-secondary-600: #{cfg.$brand-secondary-600};
86
+ --tk-color-base-secondary-700: #{cfg.$brand-secondary-700};
87
+ --tk-color-base-secondary-800: #{cfg.$brand-secondary-800};
88
+ --tk-color-base-secondary-900: #{cfg.$brand-secondary-900};
89
+ --tk-color-base-secondary-950: #{cfg.$brand-secondary-950};
90
+
91
+ // ── Typography ─────────────────────────────────────────────────────────────
92
+ --tk-font-family: #{cfg.$brand-font-family};
93
+
94
+ // ── Brand-adaptive border radius ───────────────────────────────────────────
95
+ // Use these tokens where you want brand-style adaptation (buttons, inputs, cards).
96
+ // Keep --tk-borderRadius-xs/s/m/l for strict, non-adaptive values.
97
+ // Note: the `theme-l` step is the pill/fully-rounded slot — it resolves to
98
+ // --tk-borderRadius-full under every style except 'square'/'sharp'. It is NOT
99
+ // the adaptive counterpart of --tk-borderRadius-l; that one is `theme-xl`.
100
+ --tk-borderRadius-theme-xs: #{cfg.$radius-xs};
101
+ --tk-borderRadius-theme-s: #{cfg.$radius-s};
102
+ --tk-borderRadius-theme-m: #{cfg.$radius-m};
103
+ --tk-borderRadius-theme-l: #{cfg.$radius-l};
104
+ --tk-borderRadius-theme-xl: #{cfg.$radius-xl};
105
+ }
@@ -177,6 +177,7 @@
177
177
  --tk-size-base-100: 1rem;
178
178
  --tk-size-base-150: 1.5rem;
179
179
  --tk-size-base-200: 2rem;
180
+ --tk-size-base-250: 2.5rem;
180
181
  --tk-size-base-500: 5rem;
181
182
  --tk-size-base-1000: 10rem;
182
183
  --tk-size-base-2000: 20rem;
@@ -68,16 +68,6 @@ declare class AutocompleteComponent<T = unknown> implements ControlValueAccessor
68
68
  * Allows usage with the syntax: `[(model)]="myValue"`.
69
69
  */
70
70
  model: _angular_core.ModelSignal<AutocompleteValue<T> | undefined>;
71
- /**
72
- * @event modelChange
73
- * @description
74
- * Emits whenever the value changes.
75
- * Payload: the selected item(s) of type `AutocompleteValue<T>`.
76
- *
77
- * @example
78
- * <tk-autocomplete (modelChange)="onChange($event)"></tk-autocomplete>
79
- */
80
- modelChange: _angular_core.OutputEmitterRef<AutocompleteValue<T>>;
81
71
  private onChangeFn;
82
72
  private onTouchedFn;
83
73
  private readonly init;
@@ -121,7 +111,8 @@ declare class AutocompleteComponent<T = unknown> implements ControlValueAccessor
121
111
  * @method handleChange
122
112
  * @description
123
113
  * Handles value changes from the autocomplete component.
124
- * Updates Angular Forms, Signals, and emits the modelChange event.
114
+ * Updates Angular Forms and Signals. `model.set()` emits the model's
115
+ * auto-generated `modelChange` output — no separate emit needed.
125
116
  *
126
117
  * @param {AutocompleteValue<T>} value - The new selected value(s).
127
118
  */
@@ -150,7 +141,7 @@ declare class AutocompleteComponent<T = unknown> implements ControlValueAccessor
150
141
  */
151
142
  get effectiveControl(): FormControl | undefined;
152
143
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AutocompleteComponent<any>, never>;
153
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AutocompleteComponent<any>, "tk-autocomplete", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "control": { "alias": "control"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "model": { "alias": "model"; "required": false; "isSignal": true; }; }, { "model": "modelChange"; "modelChange": "modelChange"; }, never, never, true, never>;
144
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AutocompleteComponent<any>, "tk-autocomplete", never, { "id": { "alias": "id"; "required": false; "isSignal": true; }; "icon": { "alias": "icon"; "required": false; "isSignal": true; }; "control": { "alias": "control"; "required": false; "isSignal": true; }; "label": { "alias": "label"; "required": false; "isSignal": true; }; "disabled": { "alias": "disabled"; "required": false; "isSignal": true; }; "errorMessage": { "alias": "errorMessage"; "required": false; "isSignal": true; }; "hint": { "alias": "hint"; "required": false; "isSignal": true; }; "model": { "alias": "model"; "required": false; "isSignal": true; }; }, { "model": "modelChange"; }, never, never, true, never>;
154
145
  }
155
146
 
156
147
  export { AutocompleteComponent };