domma-js 0.55.0 → 0.57.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.
- package/assets/types/generated/public/assets/flags/africa.d.ts +6 -0
- package/assets/types/generated/public/assets/flags/americas.d.ts +6 -0
- package/assets/types/generated/public/assets/flags/asia.d.ts +6 -0
- package/assets/types/generated/public/assets/flags/europe.d.ts +9 -0
- package/assets/types/generated/public/assets/flags/index.d.ts +11 -0
- package/assets/types/generated/public/assets/flags/oceania.d.ts +2 -0
- package/assets/types/generated/public/assets/icons/buildings.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/code.d.ts +2 -0
- package/assets/types/generated/public/assets/icons/commerce.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/communication.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/devices.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/emojis.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/files.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/finance.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/forms.d.ts +5 -0
- package/assets/types/generated/public/assets/icons/health.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/index.d.ts +24 -0
- package/assets/types/generated/public/assets/icons/media.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/navigation.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/seasonal.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/social.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/sport.d.ts +6 -0
- package/assets/types/generated/public/assets/icons/status.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/transport.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/ui.d.ts +7 -0
- package/assets/types/generated/public/assets/icons/weather.d.ts +6 -0
- package/assets/types/generated/src/auth.d.ts +424 -0
- package/assets/types/generated/src/avatar.d.ts +270 -0
- package/assets/types/generated/src/binding-source.d.ts +58 -0
- package/assets/types/generated/src/butterfly-drawing.d.ts +2 -0
- package/assets/types/generated/src/component-factory.d.ts +150 -0
- package/assets/types/generated/src/component.d.ts +162 -0
- package/assets/types/generated/src/components/back-to-top.d.ts +150 -0
- package/assets/types/generated/src/components/badge.d.ts +208 -0
- package/assets/types/generated/src/components/card.d.ts +189 -0
- package/assets/types/generated/src/components/command-palette.d.ts +352 -0
- package/assets/types/generated/src/components/dropzone.d.ts +342 -0
- package/assets/types/generated/src/components/focus-trap.d.ts +238 -0
- package/assets/types/generated/src/components/loader.d.ts +133 -0
- package/assets/types/generated/src/components/modal.d.ts +341 -0
- package/assets/types/generated/src/components/range-slider.d.ts +267 -0
- package/assets/types/generated/src/components/shared.d.ts +91 -0
- package/assets/types/generated/src/components/split-pane.d.ts +239 -0
- package/assets/types/generated/src/components/toast.d.ts +284 -0
- package/assets/types/generated/src/components/tooltip.d.ts +200 -0
- package/assets/types/generated/src/components/virtual-list.d.ts +340 -0
- package/assets/types/generated/src/config.d.ts +193 -0
- package/assets/types/generated/src/context-cursor.d.ts +69 -0
- package/assets/types/generated/src/context-menu.d.ts +596 -0
- package/assets/types/generated/src/dates.d.ts +367 -0
- package/assets/types/generated/src/dom.d.ts +1221 -0
- package/assets/types/generated/src/effects.d.ts +1281 -0
- package/assets/types/generated/src/elements.d.ts +4996 -0
- package/assets/types/generated/src/escape.d.ts +5 -0
- package/assets/types/generated/src/flags-bundle.d.ts +4 -0
- package/assets/types/generated/src/flags.d.ts +338 -0
- package/assets/types/generated/src/forms.d.ts +1060 -0
- package/assets/types/generated/src/globals.d.ts +45 -0
- package/assets/types/generated/src/http.d.ts +131 -0
- package/assets/types/generated/src/i18n.d.ts +261 -0
- package/assets/types/generated/src/icons.d.ts +213 -0
- package/assets/types/generated/src/index.d.ts +249 -0
- package/assets/types/generated/src/input-group.d.ts +135 -0
- package/assets/types/generated/src/models.d.ts +968 -0
- package/assets/types/generated/src/popover.d.ts +412 -0
- package/assets/types/generated/src/router.d.ts +344 -0
- package/assets/types/generated/src/safe-url.d.ts +10 -0
- package/assets/types/generated/src/sanitize.d.ts +97 -0
- package/assets/types/generated/src/schema-builder.d.ts +420 -0
- package/assets/types/generated/src/skeleton.d.ts +135 -0
- package/assets/types/generated/src/smooth-caret.d.ts +61 -0
- package/assets/types/generated/src/sortable.d.ts +369 -0
- package/assets/types/generated/src/storage.d.ts +93 -0
- package/assets/types/generated/src/tables.d.ts +901 -0
- package/assets/types/generated/src/theme.d.ts +277 -0
- package/assets/types/generated/src/ticker-tape-drawing.d.ts +2 -0
- package/assets/types/generated/src/treeview.d.ts +504 -0
- package/assets/types/generated/src/utils.d.ts +1667 -0
- package/assets/types/generated/src/web-components/base/domma-element.d.ts +134 -0
- package/assets/types/generated/src/web-components/index.d.ts +14 -0
- package/assets/types/generated/vendor/domma-reactive.d.ts +587 -0
- package/assets/types/index.d.ts +104 -216
- package/package.json +5 -2
- package/public/dist/bundles/domma-complete.css +1084 -14
- package/public/dist/bundles/domma-data-focused.css +1084 -14
- package/public/dist/bundles/domma-essentials.css +1084 -14
- package/public/dist/bundles/domma-full.css +1084 -14
- package/public/dist/bundles/domma-minimal.css +8 -8
- package/public/dist/domma-flags.esm.js +3 -3
- package/public/dist/domma-flags.esm.js.map +1 -1
- package/public/dist/domma-flags.min.js +3 -3
- package/public/dist/domma-flags.min.js.map +1 -1
- package/public/dist/domma-syntax.min.js +3 -3
- package/public/dist/domma.css +3 -3
- package/public/dist/domma.esm.js +5 -5
- package/public/dist/domma.esm.js.map +1 -1
- package/public/dist/domma.min.js +5 -5
- package/public/dist/domma.min.js.map +1 -1
- package/public/dist/elements.css +1073 -3
- package/public/dist/grid.css +3 -3
- package/public/dist/syntax.css +3 -3
- package/public/dist/themes/domma-themes.css +3 -3
- package/templates/kickstart/frontend/types/domma.d.ts +2 -1
- package/assets/types/config.d.ts +0 -136
- package/assets/types/dates.d.ts +0 -209
- package/assets/types/dom.d.ts +0 -448
- package/assets/types/elements.d.ts +0 -682
- package/assets/types/flags.d.ts +0 -130
- package/assets/types/http.d.ts +0 -97
- package/assets/types/icons.d.ts +0 -147
- package/assets/types/models.d.ts +0 -260
- package/assets/types/smooth-caret.d.ts +0 -12
- package/assets/types/storage.d.ts +0 -93
- package/assets/types/tables.d.ts +0 -327
- package/assets/types/theme.d.ts +0 -137
- package/assets/types/utils.d.ts +0 -675
|
@@ -0,0 +1,277 @@
|
|
|
1
|
+
export { themeEngine as theme };
|
|
2
|
+
export default themeEngine;
|
|
3
|
+
/**
|
|
4
|
+
* Light/dark mode - the final segment of a standard theme name.
|
|
5
|
+
*/
|
|
6
|
+
export type ThemeMode = "light" | "dark";
|
|
7
|
+
/**
|
|
8
|
+
* Colour base of a theme (the name before the final segment), as listed by `listBases()`
|
|
9
|
+
* (`core` is the base of `core-light`).
|
|
10
|
+
*/
|
|
11
|
+
export type ThemeVariant = "ocean" | "forest" | "sunset" | "royal" | "lemon" | "silver" | "charcoal" | "christmas" | "unicorn" | "dreamy" | "grayve" | "mint" | "wedding" | "core" | "corporate" | "admin-smooth" | "admin-sharp" | "admin-slate";
|
|
12
|
+
/**
|
|
13
|
+
* Standalone Admin family (no light/dark) - finish-accent full names.
|
|
14
|
+
*/
|
|
15
|
+
export type AdminTheme = "admin-smooth-steel" | "admin-smooth-indigo" | "admin-smooth-teal" | "admin-sharp-steel" | "admin-sharp-indigo" | "admin-sharp-teal" | "admin-slate-steel" | "admin-slate-indigo" | "admin-slate-teal";
|
|
16
|
+
/**
|
|
17
|
+
* A full theme name, e.g. 'ocean-dark' or 'admin-sharp-steel'.
|
|
18
|
+
*/
|
|
19
|
+
export type ThemeName = `${"ocean" | "forest" | "sunset" | "royal" | "lemon" | "silver" | "charcoal" | "christmas" | "unicorn" | "dreamy" | "grayve" | "mint" | "wedding" | "corporate"}-${ThemeMode}` | "core-light" | AdminTheme;
|
|
20
|
+
/**
|
|
21
|
+
* What `getConfig()` returns.
|
|
22
|
+
*/
|
|
23
|
+
export type ThemeConfig = {
|
|
24
|
+
/**
|
|
25
|
+
* Current full theme name
|
|
26
|
+
*/
|
|
27
|
+
theme: ThemeName;
|
|
28
|
+
/**
|
|
29
|
+
* Colour base (see `getBase()`)
|
|
30
|
+
*/
|
|
31
|
+
base: ThemeVariant;
|
|
32
|
+
/**
|
|
33
|
+
* Final segment (see `getMode()`)
|
|
34
|
+
*/
|
|
35
|
+
mode: ThemeMode | "steel" | "indigo" | "teal";
|
|
36
|
+
/**
|
|
37
|
+
* Whether the system preference is followed
|
|
38
|
+
*/
|
|
39
|
+
autoDetect: boolean;
|
|
40
|
+
/**
|
|
41
|
+
* Whether the choice is saved to localStorage (undefined before init)
|
|
42
|
+
*/
|
|
43
|
+
persist: boolean | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* Whether theming is disabled
|
|
46
|
+
*/
|
|
47
|
+
disabled: boolean;
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* Called with the previous and the new theme name when the theme changes.
|
|
51
|
+
*/
|
|
52
|
+
export type ThemeChangeCallback = (oldTheme: ThemeName, newTheme: ThemeName) => void;
|
|
53
|
+
/**
|
|
54
|
+
* Options for `init()`.
|
|
55
|
+
*/
|
|
56
|
+
export type ThemeOptions = {
|
|
57
|
+
/**
|
|
58
|
+
* Initial theme (e.g., 'ocean-dark', 'forest-light')
|
|
59
|
+
*/
|
|
60
|
+
theme?: ThemeName;
|
|
61
|
+
/**
|
|
62
|
+
* Respect system preference (maps to light/dark variants)
|
|
63
|
+
*/
|
|
64
|
+
autoDetect?: boolean;
|
|
65
|
+
/**
|
|
66
|
+
* Save to localStorage
|
|
67
|
+
*/
|
|
68
|
+
persist?: boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Disable theming entirely (no classes applied)
|
|
71
|
+
*/
|
|
72
|
+
disabled?: boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Target element
|
|
75
|
+
*/
|
|
76
|
+
target?: HTMLElement | string;
|
|
77
|
+
};
|
|
78
|
+
export type Theme = ThemeEngine;
|
|
79
|
+
declare const themeEngine: ThemeEngine;
|
|
80
|
+
/**
|
|
81
|
+
* Light/dark mode - the final segment of a standard theme name.
|
|
82
|
+
* @typedef {'light'|'dark'} ThemeMode
|
|
83
|
+
*/
|
|
84
|
+
/**
|
|
85
|
+
* Colour base of a theme (the name before the final segment), as listed by `listBases()`
|
|
86
|
+
* (`core` is the base of `core-light`).
|
|
87
|
+
* @typedef {'ocean'|'forest'|'sunset'|'royal'|'lemon'|'silver'|'charcoal'|'christmas'|'unicorn'|'dreamy'|'grayve'|'mint'|'wedding'|'core'|'corporate'|'admin-smooth'|'admin-sharp'|'admin-slate'} ThemeVariant
|
|
88
|
+
*/
|
|
89
|
+
/**
|
|
90
|
+
* Standalone Admin family (no light/dark) - finish-accent full names.
|
|
91
|
+
* @typedef {'admin-smooth-steel'|'admin-smooth-indigo'|'admin-smooth-teal'|'admin-sharp-steel'|'admin-sharp-indigo'|'admin-sharp-teal'|'admin-slate-steel'|'admin-slate-indigo'|'admin-slate-teal'} AdminTheme
|
|
92
|
+
*/
|
|
93
|
+
/**
|
|
94
|
+
* A full theme name, e.g. 'ocean-dark' or 'admin-sharp-steel'.
|
|
95
|
+
* @typedef {`${'ocean'|'forest'|'sunset'|'royal'|'lemon'|'silver'|'charcoal'|'christmas'|'unicorn'|'dreamy'|'grayve'|'mint'|'wedding'|'corporate'}-${ThemeMode}`|'core-light'|AdminTheme} ThemeName
|
|
96
|
+
*/
|
|
97
|
+
/**
|
|
98
|
+
* What `getConfig()` returns.
|
|
99
|
+
* @typedef {object} ThemeConfig
|
|
100
|
+
* @property {ThemeName} theme Current full theme name
|
|
101
|
+
* @property {ThemeVariant} base Colour base (see `getBase()`)
|
|
102
|
+
* @property {ThemeMode|'steel'|'indigo'|'teal'} mode Final segment (see `getMode()`)
|
|
103
|
+
* @property {boolean} autoDetect Whether the system preference is followed
|
|
104
|
+
* @property {boolean|undefined} persist Whether the choice is saved to localStorage (undefined before init)
|
|
105
|
+
* @property {boolean} disabled Whether theming is disabled
|
|
106
|
+
*/
|
|
107
|
+
/**
|
|
108
|
+
* Called with the previous and the new theme name when the theme changes.
|
|
109
|
+
* @callback ThemeChangeCallback
|
|
110
|
+
* @param {ThemeName} oldTheme
|
|
111
|
+
* @param {ThemeName} newTheme
|
|
112
|
+
* @returns {void}
|
|
113
|
+
*/
|
|
114
|
+
/**
|
|
115
|
+
* Options for `init()`.
|
|
116
|
+
* @typedef {object} ThemeOptions
|
|
117
|
+
* @property {ThemeName} [theme] Initial theme (e.g., 'ocean-dark', 'forest-light')
|
|
118
|
+
* @property {boolean} [autoDetect=false] Respect system preference (maps to light/dark variants)
|
|
119
|
+
* @property {boolean} [persist=true] Save to localStorage
|
|
120
|
+
* @property {boolean} [disabled=false] Disable theming entirely (no classes applied)
|
|
121
|
+
* @property {HTMLElement|string} [target=document.body] Target element
|
|
122
|
+
*/
|
|
123
|
+
/** @typedef {ThemeEngine} Theme */
|
|
124
|
+
declare class ThemeEngine {
|
|
125
|
+
_theme: string;
|
|
126
|
+
_listeners: any[];
|
|
127
|
+
_target: HTMLElement | Element;
|
|
128
|
+
_initialised: boolean;
|
|
129
|
+
_systemMediaQuery: MediaQueryList;
|
|
130
|
+
_autoDetect: boolean;
|
|
131
|
+
_disabled: boolean;
|
|
132
|
+
/**
|
|
133
|
+
* Initialise the theme engine
|
|
134
|
+
* @param {ThemeOptions} [options] - Configuration options
|
|
135
|
+
* @returns {this}
|
|
136
|
+
*/
|
|
137
|
+
init(options?: ThemeOptions): this;
|
|
138
|
+
_persist: boolean;
|
|
139
|
+
/**
|
|
140
|
+
* Get the current theme (full name, e.g., 'ocean-dark')
|
|
141
|
+
* @returns {ThemeName}
|
|
142
|
+
*/
|
|
143
|
+
get(): ThemeName;
|
|
144
|
+
/**
|
|
145
|
+
* Get the theme base colour (everything before the final '-' segment).
|
|
146
|
+
* For standard themes this is the colour name (e.g., 'ocean' from 'ocean-dark').
|
|
147
|
+
* For Admin themes the base is the finish (e.g., 'admin-sharp' from 'admin-sharp-steel').
|
|
148
|
+
* @returns {ThemeVariant}
|
|
149
|
+
*/
|
|
150
|
+
getBase(): ThemeVariant;
|
|
151
|
+
/**
|
|
152
|
+
* Get the final '-' segment of the theme name.
|
|
153
|
+
* For standard themes this is the light/dark mode (e.g., 'dark' from 'ocean-dark',
|
|
154
|
+
* 'light' from 'forest-light'). Admin themes have no light/dark mode, so this
|
|
155
|
+
* returns the accent name instead (e.g., 'steel', 'indigo', or 'teal').
|
|
156
|
+
* @returns {ThemeMode|'steel'|'indigo'|'teal'}
|
|
157
|
+
*/
|
|
158
|
+
getMode(): ThemeMode | "steel" | "indigo" | "teal";
|
|
159
|
+
/**
|
|
160
|
+
* Check if dark mode is active
|
|
161
|
+
* @returns {boolean}
|
|
162
|
+
*/
|
|
163
|
+
isDark(): boolean;
|
|
164
|
+
/**
|
|
165
|
+
* Check if light mode is active
|
|
166
|
+
* @returns {boolean}
|
|
167
|
+
*/
|
|
168
|
+
isLight(): boolean;
|
|
169
|
+
/**
|
|
170
|
+
* Set the theme (e.g., 'ocean-dark', 'forest-light')
|
|
171
|
+
* @param {ThemeName} theme - Full theme name
|
|
172
|
+
* @returns {this}
|
|
173
|
+
*/
|
|
174
|
+
set(theme: ThemeName): this;
|
|
175
|
+
/**
|
|
176
|
+
* @deprecated Use set() with full theme name instead (e.g., set('ocean-dark'))
|
|
177
|
+
* @returns {this}
|
|
178
|
+
*/
|
|
179
|
+
setVariant(): this;
|
|
180
|
+
/**
|
|
181
|
+
* @deprecated No longer applicable with unified theme system. Use variant selector UI instead.
|
|
182
|
+
* @returns {this}
|
|
183
|
+
*/
|
|
184
|
+
toggle(): this;
|
|
185
|
+
/**
|
|
186
|
+
* Register a callback for theme changes
|
|
187
|
+
* @param {ThemeChangeCallback} callback - Callback function(oldTheme, newTheme)
|
|
188
|
+
* @returns {() => void} Unsubscribe function
|
|
189
|
+
*/
|
|
190
|
+
onChange(callback: ThemeChangeCallback): () => void;
|
|
191
|
+
/**
|
|
192
|
+
* Preview a theme temporarily without saving
|
|
193
|
+
* @param {ThemeName} theme - Theme to preview (e.g., 'ocean-dark')
|
|
194
|
+
* @returns {() => void} Restore function
|
|
195
|
+
*/
|
|
196
|
+
preview(theme: ThemeName): () => void;
|
|
197
|
+
/**
|
|
198
|
+
* List all available themes
|
|
199
|
+
* @returns {ThemeName[]} Array of all 33 theme names
|
|
200
|
+
*/
|
|
201
|
+
listThemes(): ThemeName[];
|
|
202
|
+
/**
|
|
203
|
+
* List available colour bases (without mode suffix)
|
|
204
|
+
* @returns {ThemeVariant[]}
|
|
205
|
+
*/
|
|
206
|
+
listBases(): ThemeVariant[];
|
|
207
|
+
/**
|
|
208
|
+
* @deprecated Use listThemes() instead. Kept for backward compatibility.
|
|
209
|
+
* @returns {ThemeVariant[]}
|
|
210
|
+
*/
|
|
211
|
+
listVariants(): ThemeVariant[];
|
|
212
|
+
/**
|
|
213
|
+
* Get current theme configuration
|
|
214
|
+
* @returns {ThemeConfig}
|
|
215
|
+
*/
|
|
216
|
+
getConfig(): ThemeConfig;
|
|
217
|
+
/**
|
|
218
|
+
* Update the meta theme-color for mobile browsers
|
|
219
|
+
* @private
|
|
220
|
+
*/
|
|
221
|
+
private _updateMetaThemeColor;
|
|
222
|
+
/**
|
|
223
|
+
* Check if theming is disabled
|
|
224
|
+
* @returns {boolean}
|
|
225
|
+
*/
|
|
226
|
+
isDisabled(): boolean;
|
|
227
|
+
/**
|
|
228
|
+
* Enable theming (if previously disabled)
|
|
229
|
+
* @returns {this}
|
|
230
|
+
*/
|
|
231
|
+
enable(): this;
|
|
232
|
+
/**
|
|
233
|
+
* Disable theming (remove all theme classes)
|
|
234
|
+
* @returns {this}
|
|
235
|
+
*/
|
|
236
|
+
disable(): this;
|
|
237
|
+
/**
|
|
238
|
+
* Apply the current theme to the target element
|
|
239
|
+
* @param {boolean} [updateMeta=true] - Whether to update meta theme-color
|
|
240
|
+
* @private
|
|
241
|
+
*/
|
|
242
|
+
private _applyTheme;
|
|
243
|
+
/**
|
|
244
|
+
* Save theme to localStorage
|
|
245
|
+
* @private
|
|
246
|
+
*/
|
|
247
|
+
private _saveToStorage;
|
|
248
|
+
/**
|
|
249
|
+
* Load theme from localStorage with automatic migration from old format
|
|
250
|
+
* @returns {string|null}
|
|
251
|
+
* @private
|
|
252
|
+
*/
|
|
253
|
+
private _loadFromStorage;
|
|
254
|
+
/**
|
|
255
|
+
* Get system colour scheme preference
|
|
256
|
+
* @returns {string}
|
|
257
|
+
* @private
|
|
258
|
+
*/
|
|
259
|
+
private _getSystemPreference;
|
|
260
|
+
/**
|
|
261
|
+
* Setup listener for system preference changes
|
|
262
|
+
* @private
|
|
263
|
+
*/
|
|
264
|
+
private _setupSystemListener;
|
|
265
|
+
/**
|
|
266
|
+
* Notify all registered listeners of theme change
|
|
267
|
+
* @param {string} oldTheme - Previous theme
|
|
268
|
+
* @param {string} newTheme - New theme
|
|
269
|
+
* @private
|
|
270
|
+
*/
|
|
271
|
+
private _notifyListeners;
|
|
272
|
+
/**
|
|
273
|
+
* Cleanup and destroy the theme engine
|
|
274
|
+
* @returns {void}
|
|
275
|
+
*/
|
|
276
|
+
destroy(): void;
|
|
277
|
+
}
|