@furystack/shades-common-components 8.2.3 → 10.0.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 (120) hide show
  1. package/esm/components/app-bar-link.d.ts +4 -4
  2. package/esm/components/app-bar-link.d.ts.map +1 -1
  3. package/esm/components/app-bar-link.js +1 -2
  4. package/esm/components/app-bar-link.js.map +1 -1
  5. package/esm/components/app-bar.d.ts +2 -2
  6. package/esm/components/app-bar.d.ts.map +1 -1
  7. package/esm/components/avatar.d.ts +3 -3
  8. package/esm/components/avatar.d.ts.map +1 -1
  9. package/esm/components/button.d.ts +4 -4
  10. package/esm/components/button.d.ts.map +1 -1
  11. package/esm/components/button.js +3 -8
  12. package/esm/components/button.js.map +1 -1
  13. package/esm/components/command-palette/command-palette-input.d.ts +2 -2
  14. package/esm/components/command-palette/command-palette-input.d.ts.map +1 -1
  15. package/esm/components/command-palette/command-palette-manager.d.ts +2 -2
  16. package/esm/components/command-palette/command-palette-manager.d.ts.map +1 -1
  17. package/esm/components/command-palette/command-palette-manager.js +6 -6
  18. package/esm/components/command-palette/command-palette-manager.js.map +1 -1
  19. package/esm/components/command-palette/command-palette-suggestion-list.d.ts +3 -3
  20. package/esm/components/command-palette/command-palette-suggestion-list.d.ts.map +1 -1
  21. package/esm/components/command-palette/index.d.ts +2 -2
  22. package/esm/components/command-palette/index.d.ts.map +1 -1
  23. package/esm/components/command-palette/index.js +3 -3
  24. package/esm/components/command-palette/index.js.map +1 -1
  25. package/esm/components/data-grid/body.d.ts +1 -1
  26. package/esm/components/data-grid/body.d.ts.map +1 -1
  27. package/esm/components/data-grid/body.js +2 -0
  28. package/esm/components/data-grid/body.js.map +1 -1
  29. package/esm/components/data-grid/footer.d.ts +2 -2
  30. package/esm/components/data-grid/footer.d.ts.map +1 -1
  31. package/esm/components/data-grid/header.d.ts +2 -2
  32. package/esm/components/data-grid/header.d.ts.map +1 -1
  33. package/esm/components/data-grid/header.js +3 -3
  34. package/esm/components/data-grid/header.js.map +1 -1
  35. package/esm/components/data-grid/selection-cell.d.ts +2 -2
  36. package/esm/components/data-grid/selection-cell.d.ts.map +1 -1
  37. package/esm/components/fab.d.ts +2 -2
  38. package/esm/components/fab.d.ts.map +1 -1
  39. package/esm/components/form.d.ts +2 -2
  40. package/esm/components/form.d.ts.map +1 -1
  41. package/esm/components/form.js +5 -6
  42. package/esm/components/form.js.map +1 -1
  43. package/esm/components/inputs/autocomplete.d.ts +5 -5
  44. package/esm/components/inputs/autocomplete.d.ts.map +1 -1
  45. package/esm/components/inputs/input.d.ts +2 -2
  46. package/esm/components/inputs/input.d.ts.map +1 -1
  47. package/esm/components/inputs/input.js +1 -1
  48. package/esm/components/inputs/input.js.map +1 -1
  49. package/esm/components/inputs/text-area.d.ts +2 -2
  50. package/esm/components/inputs/text-area.d.ts.map +1 -1
  51. package/esm/components/loader.d.ts +2 -2
  52. package/esm/components/loader.d.ts.map +1 -1
  53. package/esm/components/modal.d.ts +2 -2
  54. package/esm/components/modal.d.ts.map +1 -1
  55. package/esm/components/noty-list.d.ts +5 -5
  56. package/esm/components/noty-list.d.ts.map +1 -1
  57. package/esm/components/paper.d.ts +3 -3
  58. package/esm/components/paper.d.ts.map +1 -1
  59. package/esm/components/skeleton.d.ts +2 -2
  60. package/esm/components/skeleton.d.ts.map +1 -1
  61. package/esm/components/suggest/index.d.ts.map +1 -1
  62. package/esm/components/suggest/index.js +3 -3
  63. package/esm/components/suggest/index.js.map +1 -1
  64. package/esm/components/suggest/suggest-input.d.ts +2 -2
  65. package/esm/components/suggest/suggest-input.d.ts.map +1 -1
  66. package/esm/components/suggest/suggest-manager.d.ts +1 -2
  67. package/esm/components/suggest/suggest-manager.d.ts.map +1 -1
  68. package/esm/components/suggest/suggest-manager.js +7 -7
  69. package/esm/components/suggest/suggest-manager.js.map +1 -1
  70. package/esm/components/tabs.d.ts +5 -5
  71. package/esm/components/tabs.d.ts.map +1 -1
  72. package/esm/components/tabs.js +9 -10
  73. package/esm/components/tabs.js.map +1 -1
  74. package/esm/components/wizard/index.d.ts +2 -2
  75. package/esm/components/wizard/index.d.ts.map +1 -1
  76. package/esm/services/click-away-service.d.ts +1 -1
  77. package/esm/services/click-away-service.d.ts.map +1 -1
  78. package/esm/services/click-away-service.js +1 -1
  79. package/esm/services/click-away-service.js.map +1 -1
  80. package/esm/services/click-away-service.spec.js +3 -3
  81. package/esm/services/click-away-service.spec.js.map +1 -1
  82. package/esm/services/collection-service.d.ts +1 -2
  83. package/esm/services/collection-service.d.ts.map +1 -1
  84. package/esm/services/collection-service.js +6 -6
  85. package/esm/services/collection-service.js.map +1 -1
  86. package/esm/services/collection-service.spec.js +3 -3
  87. package/esm/services/collection-service.spec.js.map +1 -1
  88. package/esm/services/css-variable-theme.d.ts.map +1 -1
  89. package/esm/services/css-variable-theme.js +1 -0
  90. package/esm/services/css-variable-theme.js.map +1 -1
  91. package/esm/services/default-dark-theme.d.ts.map +1 -1
  92. package/esm/services/default-dark-theme.js +1 -0
  93. package/esm/services/default-dark-theme.js.map +1 -1
  94. package/esm/services/default-light-theme.d.ts.map +1 -1
  95. package/esm/services/default-light-theme.js +1 -0
  96. package/esm/services/default-light-theme.js.map +1 -1
  97. package/esm/services/theme-provider-service.d.ts +16 -4
  98. package/esm/services/theme-provider-service.d.ts.map +1 -1
  99. package/esm/services/theme-provider-service.js +18 -4
  100. package/esm/services/theme-provider-service.js.map +1 -1
  101. package/package.json +8 -8
  102. package/src/components/app-bar-link.tsx +3 -4
  103. package/src/components/button.tsx +5 -10
  104. package/src/components/command-palette/command-palette-manager.ts +7 -7
  105. package/src/components/command-palette/index.tsx +3 -3
  106. package/src/components/data-grid/body.tsx +4 -2
  107. package/src/components/data-grid/header.tsx +3 -3
  108. package/src/components/form.tsx +7 -8
  109. package/src/components/inputs/input.tsx +1 -1
  110. package/src/components/suggest/index.tsx +5 -4
  111. package/src/components/suggest/suggest-manager.ts +7 -8
  112. package/src/components/tabs.tsx +13 -20
  113. package/src/services/click-away-service.spec.ts +3 -3
  114. package/src/services/click-away-service.ts +1 -1
  115. package/src/services/collection-service.spec.ts +3 -3
  116. package/src/services/collection-service.ts +6 -7
  117. package/src/services/css-variable-theme.ts +1 -1
  118. package/src/services/default-dark-theme.ts +1 -0
  119. package/src/services/default-light-theme.ts +1 -0
  120. package/src/services/theme-provider-service.ts +21 -5
@@ -1,5 +1,5 @@
1
1
  import { Injectable } from '@furystack/inject'
2
- import type { DeepPartial } from '@furystack/utils'
2
+ import { EventHub, type DeepPartial } from '@furystack/utils'
3
3
  import { cssVariableTheme, getCssVariable, useThemeCssVariables } from './css-variable-theme.js'
4
4
 
5
5
  export type Color = string // `#${string}` | `rgba(${number},${number},${number},${number})` |
@@ -39,6 +39,7 @@ export interface Background {
39
39
  }
40
40
 
41
41
  export interface Theme {
42
+ name: string
42
43
  palette: Palette
43
44
  text: Text
44
45
  button: ButtonColor
@@ -68,7 +69,7 @@ export class RgbColor {
68
69
  * Service class for theme-related operations
69
70
  */
70
71
  @Injectable({ lifetime: 'singleton' })
71
- export class ThemeProviderService {
72
+ export class ThemeProviderService extends EventHub<{ themeChanged: DeepPartial<Theme> }> {
72
73
  /**
73
74
  * @deprecated does not respect CSS vars
74
75
  * @param color The background color
@@ -124,11 +125,26 @@ export class ThemeProviderService {
124
125
 
125
126
  public readonly theme = cssVariableTheme
126
127
 
127
- public set(change: DeepPartial<Theme>) {
128
- useThemeCssVariables(change)
128
+ private _assignedTheme: DeepPartial<Theme> = cssVariableTheme
129
+
130
+ /**
131
+ * Returns the last assigned theme object
132
+ */
133
+ public getAssignedTheme(): DeepPartial<Theme> {
134
+ return this._assignedTheme
135
+ }
136
+
137
+ /**
138
+ *
139
+ * @param v The Theme instance
140
+ */
141
+ public setAssignedTheme(theme: DeepPartial<Theme>) {
142
+ this._assignedTheme = theme
143
+ useThemeCssVariables(theme)
144
+ this.emit('themeChanged', theme)
129
145
  }
130
146
 
131
- public dispose() {
147
+ public [Symbol.dispose]() {
132
148
  /** */
133
149
  }
134
150
  }