@furystack/shades-common-components 5.0.9 → 5.0.11
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/esm/components/command-palette/command-palette-manager.js +38 -35
- package/esm/components/command-palette/command-palette-manager.js.map +1 -1
- package/esm/components/form.js +10 -11
- package/esm/components/form.js.map +1 -1
- package/esm/components/suggest/suggest-manager.js +41 -36
- package/esm/components/suggest/suggest-manager.js.map +1 -1
- package/esm/services/click-away-service.js +7 -5
- package/esm/services/click-away-service.js.map +1 -1
- package/esm/services/collection-service.js +21 -18
- package/esm/services/collection-service.js.map +1 -1
- package/esm/services/noty-service.js +13 -14
- package/esm/services/noty-service.js.map +1 -1
- package/esm/services/theme-provider-service.js +7 -4
- package/esm/services/theme-provider-service.js.map +1 -1
- package/package.json +7 -7
|
@@ -9,7 +9,22 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { Injectable } from '@furystack/inject';
|
|
11
11
|
import { debounce, ObservableValue } from '@furystack/utils';
|
|
12
|
-
|
|
12
|
+
let CommandPaletteManager = class CommandPaletteManager {
|
|
13
|
+
commandProviders;
|
|
14
|
+
isOpened = new ObservableValue(false);
|
|
15
|
+
isLoading = new ObservableValue(false);
|
|
16
|
+
term = new ObservableValue('');
|
|
17
|
+
selectedIndex = new ObservableValue(0);
|
|
18
|
+
currentSuggestions = new ObservableValue([]);
|
|
19
|
+
keyPressListener = ((ev) => {
|
|
20
|
+
if (ev.key && ev.key.toLowerCase() === 'p' && ev.ctrlKey) {
|
|
21
|
+
this.isOpened.setValue(true);
|
|
22
|
+
this.currentSuggestions.setValue([]);
|
|
23
|
+
}
|
|
24
|
+
if (ev.key === 'Escape') {
|
|
25
|
+
this.isOpened.setValue(false);
|
|
26
|
+
}
|
|
27
|
+
}).bind(this);
|
|
13
28
|
dispose() {
|
|
14
29
|
window.removeEventListener('keyup', this.keyPressListener);
|
|
15
30
|
this.isOpened.dispose();
|
|
@@ -23,42 +38,29 @@ export let CommandPaletteManager = class CommandPaletteManager {
|
|
|
23
38
|
this.isOpened.setValue(false);
|
|
24
39
|
selectedSuggestion.onSelected({ injector });
|
|
25
40
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
this.selectedIndex = new ObservableValue(0);
|
|
32
|
-
this.currentSuggestions = new ObservableValue([]);
|
|
33
|
-
this.keyPressListener = ((ev) => {
|
|
34
|
-
if (ev.key && ev.key.toLowerCase() === 'p' && ev.ctrlKey) {
|
|
35
|
-
this.isOpened.setValue(true);
|
|
36
|
-
this.currentSuggestions.setValue([]);
|
|
41
|
+
lastGetSuggestionOptions;
|
|
42
|
+
getSuggestion = debounce(async (options) => {
|
|
43
|
+
try {
|
|
44
|
+
if (this.lastGetSuggestionOptions?.term === options.term) {
|
|
45
|
+
return;
|
|
37
46
|
}
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
if (this.lastGetSuggestionOptions
|
|
45
|
-
|
|
47
|
+
this.isLoading.setValue(true);
|
|
48
|
+
this.lastGetSuggestionOptions = options;
|
|
49
|
+
this.currentSuggestions.setValue([]);
|
|
50
|
+
this.selectedIndex.setValue(0);
|
|
51
|
+
await Promise.all(this.commandProviders.map(async (cp) => {
|
|
52
|
+
const value = await cp(options);
|
|
53
|
+
if (this.lastGetSuggestionOptions === options) {
|
|
54
|
+
this.currentSuggestions.setValue([...this.currentSuggestions.getValue(), ...value].sortBy('score'));
|
|
46
55
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
}));
|
|
57
|
-
}
|
|
58
|
-
finally {
|
|
59
|
-
this.isLoading.setValue(false);
|
|
60
|
-
}
|
|
61
|
-
}, 250);
|
|
56
|
+
}));
|
|
57
|
+
}
|
|
58
|
+
finally {
|
|
59
|
+
this.isLoading.setValue(false);
|
|
60
|
+
}
|
|
61
|
+
}, 250);
|
|
62
|
+
constructor(commandProviders) {
|
|
63
|
+
this.commandProviders = commandProviders;
|
|
62
64
|
window.addEventListener('keyup', this.keyPressListener, true);
|
|
63
65
|
}
|
|
64
66
|
};
|
|
@@ -66,4 +68,5 @@ CommandPaletteManager = __decorate([
|
|
|
66
68
|
Injectable({ lifetime: 'singleton' }),
|
|
67
69
|
__metadata("design:paramtypes", [Array])
|
|
68
70
|
], CommandPaletteManager);
|
|
71
|
+
export { CommandPaletteManager };
|
|
69
72
|
//# sourceMappingURL=command-palette-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-palette-manager.js","sourceRoot":"","sources":["../../../src/components/command-palette/command-palette-manager.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAIrD,
|
|
1
|
+
{"version":3,"file":"command-palette-manager.js","sourceRoot":"","sources":["../../../src/components/command-palette/command-palette-manager.ts"],"names":[],"mappings":"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"}
|
package/esm/components/form.js
CHANGED
|
@@ -8,17 +8,15 @@ import { attachProps } from '@furystack/shades';
|
|
|
8
8
|
import { Shade, createComponent } from '@furystack/shades';
|
|
9
9
|
import { Injectable } from '@furystack/inject';
|
|
10
10
|
import { ObservableValue } from '@furystack/utils';
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
this.
|
|
19
|
-
|
|
20
|
-
};
|
|
21
|
-
}
|
|
11
|
+
let FormService = class FormService {
|
|
12
|
+
validatedFormData = new ObservableValue(null);
|
|
13
|
+
rawFormData = new ObservableValue(null);
|
|
14
|
+
validationResult = new ObservableValue({ isValid: null });
|
|
15
|
+
fieldErrors = new ObservableValue({});
|
|
16
|
+
inputs = new Set();
|
|
17
|
+
setFieldState = (key, validationResult, validity) => {
|
|
18
|
+
this.fieldErrors.setValue({ ...this.fieldErrors.getValue(), [key]: { validationResult, validity } });
|
|
19
|
+
};
|
|
22
20
|
dispose() {
|
|
23
21
|
this.validatedFormData.dispose();
|
|
24
22
|
this.rawFormData.dispose();
|
|
@@ -28,6 +26,7 @@ export let FormService = class FormService {
|
|
|
28
26
|
FormService = __decorate([
|
|
29
27
|
Injectable({ lifetime: 'scoped' })
|
|
30
28
|
], FormService);
|
|
29
|
+
export { FormService };
|
|
31
30
|
export const Form = Shade({
|
|
32
31
|
shadowDomName: 'shade-form',
|
|
33
32
|
elementBase: HTMLFormElement,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../src/components/form.tsx"],"names":[],"mappings":";;;;;;AACA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAC/C,OAAO,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAc3C,
|
|
1
|
+
{"version":3,"file":"form.js","sourceRoot":"","sources":["../../src/components/form.tsx"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,28 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
9
9
|
};
|
|
10
10
|
import { Injectable } from '@furystack/inject';
|
|
11
11
|
import { debounce, ObservableValue } from '@furystack/utils';
|
|
12
|
-
|
|
12
|
+
let SuggestManager = class SuggestManager {
|
|
13
|
+
getEntries;
|
|
14
|
+
getSuggestionEntry;
|
|
15
|
+
isOpened = new ObservableValue(false);
|
|
16
|
+
isLoading = new ObservableValue(false);
|
|
17
|
+
term = new ObservableValue('');
|
|
18
|
+
selectedIndex = new ObservableValue(0);
|
|
19
|
+
currentSuggestions = new ObservableValue([]);
|
|
20
|
+
onSelectSuggestion = new ObservableValue();
|
|
21
|
+
keyPressListener = ((ev) => {
|
|
22
|
+
if (ev.key === 'Escape') {
|
|
23
|
+
this.isOpened.setValue(false);
|
|
24
|
+
}
|
|
25
|
+
}).bind(this);
|
|
26
|
+
element;
|
|
27
|
+
clickOutsideListener = ((ev) => {
|
|
28
|
+
if (this.element &&
|
|
29
|
+
this.isOpened.getValue() &&
|
|
30
|
+
ev.target.closest(this.element.tagName) !== this.element) {
|
|
31
|
+
this.isOpened.setValue(false);
|
|
32
|
+
}
|
|
33
|
+
}).bind(this);
|
|
13
34
|
dispose() {
|
|
14
35
|
window.removeEventListener('keyup', this.keyPressListener);
|
|
15
36
|
window.removeEventListener('click', this.clickOutsideListener);
|
|
@@ -25,44 +46,27 @@ export let SuggestManager = class SuggestManager {
|
|
|
25
46
|
this.isOpened.setValue(false);
|
|
26
47
|
this.onSelectSuggestion.setValue(selectedSuggestion.entry);
|
|
27
48
|
}
|
|
49
|
+
lastGetSuggestionOptions;
|
|
50
|
+
getSuggestion = debounce(async (options) => {
|
|
51
|
+
try {
|
|
52
|
+
if (this.lastGetSuggestionOptions?.term === options.term) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
const lastSelectedSuggestion = JSON.stringify(this.currentSuggestions.getValue()[this.selectedIndex.getValue()]);
|
|
56
|
+
this.isLoading.setValue(true);
|
|
57
|
+
this.lastGetSuggestionOptions = options;
|
|
58
|
+
const newEntries = await this.getEntries(options.term);
|
|
59
|
+
this.isOpened.setValue(true);
|
|
60
|
+
this.currentSuggestions.setValue(newEntries.map((e) => ({ entry: e, suggestion: this.getSuggestionEntry(e) })));
|
|
61
|
+
this.selectedIndex.setValue(Math.max(0, this.currentSuggestions.getValue().findIndex((e) => JSON.stringify(e) === lastSelectedSuggestion)));
|
|
62
|
+
}
|
|
63
|
+
finally {
|
|
64
|
+
this.isLoading.setValue(false);
|
|
65
|
+
}
|
|
66
|
+
}, 250);
|
|
28
67
|
constructor(getEntries, getSuggestionEntry) {
|
|
29
68
|
this.getEntries = getEntries;
|
|
30
69
|
this.getSuggestionEntry = getSuggestionEntry;
|
|
31
|
-
this.isOpened = new ObservableValue(false);
|
|
32
|
-
this.isLoading = new ObservableValue(false);
|
|
33
|
-
this.term = new ObservableValue('');
|
|
34
|
-
this.selectedIndex = new ObservableValue(0);
|
|
35
|
-
this.currentSuggestions = new ObservableValue([]);
|
|
36
|
-
this.onSelectSuggestion = new ObservableValue();
|
|
37
|
-
this.keyPressListener = ((ev) => {
|
|
38
|
-
if (ev.key === 'Escape') {
|
|
39
|
-
this.isOpened.setValue(false);
|
|
40
|
-
}
|
|
41
|
-
}).bind(this);
|
|
42
|
-
this.clickOutsideListener = ((ev) => {
|
|
43
|
-
if (this.element &&
|
|
44
|
-
this.isOpened.getValue() &&
|
|
45
|
-
ev.target.closest(this.element.tagName) !== this.element) {
|
|
46
|
-
this.isOpened.setValue(false);
|
|
47
|
-
}
|
|
48
|
-
}).bind(this);
|
|
49
|
-
this.getSuggestion = debounce(async (options) => {
|
|
50
|
-
try {
|
|
51
|
-
if (this.lastGetSuggestionOptions?.term === options.term) {
|
|
52
|
-
return;
|
|
53
|
-
}
|
|
54
|
-
const lastSelectedSuggestion = JSON.stringify(this.currentSuggestions.getValue()[this.selectedIndex.getValue()]);
|
|
55
|
-
this.isLoading.setValue(true);
|
|
56
|
-
this.lastGetSuggestionOptions = options;
|
|
57
|
-
const newEntries = await this.getEntries(options.term);
|
|
58
|
-
this.isOpened.setValue(true);
|
|
59
|
-
this.currentSuggestions.setValue(newEntries.map((e) => ({ entry: e, suggestion: this.getSuggestionEntry(e) })));
|
|
60
|
-
this.selectedIndex.setValue(Math.max(0, this.currentSuggestions.getValue().findIndex((e) => JSON.stringify(e) === lastSelectedSuggestion)));
|
|
61
|
-
}
|
|
62
|
-
finally {
|
|
63
|
-
this.isLoading.setValue(false);
|
|
64
|
-
}
|
|
65
|
-
}, 250);
|
|
66
70
|
window.addEventListener('keyup', this.keyPressListener, true);
|
|
67
71
|
window.addEventListener('click', this.clickOutsideListener, true);
|
|
68
72
|
}
|
|
@@ -71,4 +75,5 @@ SuggestManager = __decorate([
|
|
|
71
75
|
Injectable({ lifetime: 'singleton' }),
|
|
72
76
|
__metadata("design:paramtypes", [Function, Function])
|
|
73
77
|
], SuggestManager);
|
|
78
|
+
export { SuggestManager };
|
|
74
79
|
//# sourceMappingURL=suggest-manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"suggest-manager.js","sourceRoot":"","sources":["../../../src/components/suggest/suggest-manager.ts"],"names":[],"mappings":";;;;;;;;;AACA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAIrD,
|
|
1
|
+
{"version":3,"file":"suggest-manager.js","sourceRoot":"","sources":["../../../src/components/suggest/suggest-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
1
|
export class ClickAwayService {
|
|
2
|
+
element;
|
|
3
|
+
onClickAway;
|
|
2
4
|
dispose() {
|
|
3
5
|
window.removeEventListener('click', this.clickOutsideListener, true);
|
|
4
6
|
}
|
|
7
|
+
clickOutsideListener = ((ev) => {
|
|
8
|
+
if (ev.target && !this.element.contains(ev.target)) {
|
|
9
|
+
this.onClickAway();
|
|
10
|
+
}
|
|
11
|
+
}).bind(this);
|
|
5
12
|
constructor(element, onClickAway) {
|
|
6
13
|
this.element = element;
|
|
7
14
|
this.onClickAway = onClickAway;
|
|
8
|
-
this.clickOutsideListener = ((ev) => {
|
|
9
|
-
if (ev.target && !this.element.contains(ev.target)) {
|
|
10
|
-
this.onClickAway();
|
|
11
|
-
}
|
|
12
|
-
}).bind(this);
|
|
13
15
|
window.addEventListener('click', this.clickOutsideListener, true);
|
|
14
16
|
}
|
|
15
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"click-away-service.js","sourceRoot":"","sources":["../../src/services/click-away-service.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,gBAAgB;
|
|
1
|
+
{"version":3,"file":"click-away-service.js","sourceRoot":"","sources":["../../src/services/click-away-service.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,gBAAgB;IAYR;IACA;IAZZ,OAAO;QACZ,MAAM,CAAC,mBAAmB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAA;IACtE,CAAC;IAEM,oBAAoB,GAAG,CAAC,CAAC,EAAc,EAAE,EAAE;QAChD,IAAI,EAAE,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC,MAAqB,CAAC,EAAE;YACjE,IAAI,CAAC,WAAW,EAAE,CAAA;SACnB;IACH,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,YACmB,OAAU,EACV,WAAuB;QADvB,YAAO,GAAP,OAAO,CAAG;QACV,gBAAW,GAAX,WAAW,CAAY;QAExC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,oBAAoB,EAAE,IAAI,CAAC,CAAA;IACnE,CAAC;CACF"}
|
|
@@ -1,12 +1,33 @@
|
|
|
1
1
|
import { Lock } from 'semaphore-async-await';
|
|
2
2
|
import { debounce, ObservableValue } from '@furystack/utils';
|
|
3
3
|
export class CollectionService {
|
|
4
|
+
options;
|
|
4
5
|
dispose() {
|
|
5
6
|
this.querySettings.dispose();
|
|
6
7
|
this.data.dispose();
|
|
7
8
|
this.error.dispose();
|
|
8
9
|
this.isLoading.dispose();
|
|
9
10
|
}
|
|
11
|
+
isSelected = (entry) => this.selection.getValue().includes(entry);
|
|
12
|
+
addToSelection = (entry) => {
|
|
13
|
+
this.selection.setValue([...this.selection.getValue(), entry]);
|
|
14
|
+
};
|
|
15
|
+
removeFromSelection = (entry) => {
|
|
16
|
+
this.selection.setValue(this.selection.getValue().filter((e) => e !== entry));
|
|
17
|
+
};
|
|
18
|
+
toggleSelection = (entry) => {
|
|
19
|
+
this.isSelected(entry) ? this.removeFromSelection(entry) : this.addToSelection(entry);
|
|
20
|
+
};
|
|
21
|
+
loadLock = new Lock();
|
|
22
|
+
getEntries;
|
|
23
|
+
data = new ObservableValue({ count: 0, entries: [] });
|
|
24
|
+
error = new ObservableValue(undefined);
|
|
25
|
+
isLoading = new ObservableValue(false);
|
|
26
|
+
querySettings;
|
|
27
|
+
focusedEntry = new ObservableValue();
|
|
28
|
+
selection = new ObservableValue([]);
|
|
29
|
+
searchTerm = new ObservableValue('');
|
|
30
|
+
hasFocus = new ObservableValue(false);
|
|
10
31
|
handleKeyDown(ev) {
|
|
11
32
|
const { entries } = this.data.getValue();
|
|
12
33
|
const hasFocus = this.hasFocus.getValue();
|
|
@@ -106,24 +127,6 @@ export class CollectionService {
|
|
|
106
127
|
}
|
|
107
128
|
constructor(options) {
|
|
108
129
|
this.options = options;
|
|
109
|
-
this.isSelected = (entry) => this.selection.getValue().includes(entry);
|
|
110
|
-
this.addToSelection = (entry) => {
|
|
111
|
-
this.selection.setValue([...this.selection.getValue(), entry]);
|
|
112
|
-
};
|
|
113
|
-
this.removeFromSelection = (entry) => {
|
|
114
|
-
this.selection.setValue(this.selection.getValue().filter((e) => e !== entry));
|
|
115
|
-
};
|
|
116
|
-
this.toggleSelection = (entry) => {
|
|
117
|
-
this.isSelected(entry) ? this.removeFromSelection(entry) : this.addToSelection(entry);
|
|
118
|
-
};
|
|
119
|
-
this.loadLock = new Lock();
|
|
120
|
-
this.data = new ObservableValue({ count: 0, entries: [] });
|
|
121
|
-
this.error = new ObservableValue(undefined);
|
|
122
|
-
this.isLoading = new ObservableValue(false);
|
|
123
|
-
this.focusedEntry = new ObservableValue();
|
|
124
|
-
this.selection = new ObservableValue([]);
|
|
125
|
-
this.searchTerm = new ObservableValue('');
|
|
126
|
-
this.hasFocus = new ObservableValue(false);
|
|
127
130
|
this.querySettings = new ObservableValue(this.options.defaultSettings);
|
|
128
131
|
const loader = this.options.debounceMs
|
|
129
132
|
? debounce(this.options.loader, this.options.debounceMs)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"collection-service.js","sourceRoot":"","sources":["../../src/services/collection-service.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAA;AAE5C,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AA4C5D,MAAM,OAAO,iBAAiB;
|
|
1
|
+
{"version":3,"file":"collection-service.js","sourceRoot":"","sources":["../../src/services/collection-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,22 +6,21 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
6
6
|
};
|
|
7
7
|
import { ObservableValue } from '@furystack/utils';
|
|
8
8
|
import { Injectable } from '@furystack/inject';
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
this.
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
this.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
};
|
|
22
|
-
}
|
|
9
|
+
let NotyService = class NotyService {
|
|
10
|
+
onNotyAdded = new ObservableValue();
|
|
11
|
+
onNotyRemoved = new ObservableValue();
|
|
12
|
+
notys = new ObservableValue([]);
|
|
13
|
+
addNoty = (noty) => {
|
|
14
|
+
this.onNotyAdded.setValue(noty);
|
|
15
|
+
this.notys.setValue([...this.notys.getValue(), noty]);
|
|
16
|
+
};
|
|
17
|
+
removeNoty = (noty) => {
|
|
18
|
+
this.onNotyRemoved.setValue(noty);
|
|
19
|
+
this.notys.setValue(this.notys.getValue().filter((n) => n !== noty));
|
|
20
|
+
};
|
|
23
21
|
};
|
|
24
22
|
NotyService = __decorate([
|
|
25
23
|
Injectable({ lifetime: 'singleton' })
|
|
26
24
|
], NotyService);
|
|
25
|
+
export { NotyService };
|
|
27
26
|
//# sourceMappingURL=noty-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"noty-service.js","sourceRoot":"","sources":["../../src/services/noty-service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAUvC,
|
|
1
|
+
{"version":3,"file":"noty-service.js","sourceRoot":"","sources":["../../src/services/noty-service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAA;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAUvC,IAAM,WAAW,GAAjB,MAAM,WAAW;IACf,WAAW,GAAG,IAAI,eAAe,EAAa,CAAA;IAC9C,aAAa,GAAG,IAAI,eAAe,EAAa,CAAA;IAEhD,KAAK,GAAG,IAAI,eAAe,CAAc,EAAE,CAAC,CAAA;IAE5C,OAAO,GAAG,CAAC,IAAe,EAAE,EAAE;QACnC,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC/B,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,IAAI,CAAC,CAAC,CAAA;IACvD,CAAC,CAAA;IAEM,UAAU,GAAG,CAAC,IAAe,EAAE,EAAE;QACtC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;QACjC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,CAAA;IACtE,CAAC,CAAA;CACF,CAAA;AAfY,WAAW;IADvB,UAAU,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;GACzB,WAAW,CAevB"}
|
|
@@ -7,6 +7,10 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
7
7
|
import { Injectable } from '@furystack/inject';
|
|
8
8
|
import { defaultVariableTheme, getCssVariable, useThemeCssVariables } from './default-variable-theme.js';
|
|
9
9
|
export class RgbColor {
|
|
10
|
+
r;
|
|
11
|
+
g;
|
|
12
|
+
b;
|
|
13
|
+
a;
|
|
10
14
|
constructor(r, g, b, a = 1) {
|
|
11
15
|
this.r = r;
|
|
12
16
|
this.g = g;
|
|
@@ -24,10 +28,7 @@ export class RgbColor {
|
|
|
24
28
|
/**
|
|
25
29
|
* Service class for theme-related operations
|
|
26
30
|
*/
|
|
27
|
-
|
|
28
|
-
constructor() {
|
|
29
|
-
this.theme = defaultVariableTheme;
|
|
30
|
-
}
|
|
31
|
+
let ThemeProviderService = class ThemeProviderService {
|
|
31
32
|
/**
|
|
32
33
|
* @deprecated does not respect CSS vars
|
|
33
34
|
* @param color The background color
|
|
@@ -71,6 +72,7 @@ export let ThemeProviderService = class ThemeProviderService {
|
|
|
71
72
|
}
|
|
72
73
|
throw Error(`Color format '${color}' is not supported.'`);
|
|
73
74
|
}
|
|
75
|
+
theme = defaultVariableTheme;
|
|
74
76
|
set(change) {
|
|
75
77
|
useThemeCssVariables(change);
|
|
76
78
|
}
|
|
@@ -81,4 +83,5 @@ export let ThemeProviderService = class ThemeProviderService {
|
|
|
81
83
|
ThemeProviderService = __decorate([
|
|
82
84
|
Injectable({ lifetime: 'singleton' })
|
|
83
85
|
], ThemeProviderService);
|
|
86
|
+
export { ThemeProviderService };
|
|
84
87
|
//# sourceMappingURL=theme-provider-service.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme-provider-service.js","sourceRoot":"","sources":["../../src/services/theme-provider-service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AA8CxG,MAAM,OAAO,QAAQ;
|
|
1
|
+
{"version":3,"file":"theme-provider-service.js","sourceRoot":"","sources":["../../src/services/theme-provider-service.ts"],"names":[],"mappings":";;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAA;AAE9C,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAA;AA8CxG,MAAM,OAAO,QAAQ;IAEV;IACA;IACA;IACA;IAJT,YACS,CAAS,EACT,CAAS,EACT,CAAS,EACT,IAAY,CAAC;QAHb,MAAC,GAAD,CAAC,CAAQ;QACT,MAAC,GAAD,CAAC,CAAQ;QACT,MAAC,GAAD,CAAC,CAAQ;QACT,MAAC,GAAD,CAAC,CAAY;IACnB,CAAC;IAEG,MAAM,CAAC,GAA0B,EAAE,KAAa;QACrD,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAA;QACjB,OAAO,IAAI,CAAA;IACb,CAAC;IAEM,QAAQ;QACb,OAAO,QAAQ,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,GAAG,CAAA;IACxD,CAAC;CACF;AAED;;GAEG;AAEI,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC/B;;;;;;OAMG;IACI,YAAY,CAAC,KAAa,EAAE,MAAM,GAAG,SAAS,EAAE,IAAI,GAAG,SAAS;QACrE,MAAM,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAA;QACrD,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,GAAG,IAAI,CAAA;QAChD,OAAO,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAA;IACnC,CAAC;IAED;;;;OAIG;IACI,qBAAqB,CAAC,KAAa;QACxC,IAAI,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC9B,OAAO,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAA;SACzD;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;YACzB,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtB,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC1C,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;aAC7B;YACD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE;gBACtB,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC/D,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC/D,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;gBAC/D,OAAO,IAAI,QAAQ,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;aAC7B;SACF;QACD,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC7B,MAAM,MAAM,GAAG,IAAI,MAAM,CACvB,kGAAkG,CACnG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YACb,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE;gBAC3B,OAAO,IAAI,QAAQ,CACjB,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,EAC/B,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,EACjC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC,EAChC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAClC,CAAA;aACF;SACF;QACD,MAAM,KAAK,CAAC,iBAAiB,KAAK,sBAAsB,CAAC,CAAA;IAC3D,CAAC;IAEe,KAAK,GAAG,oBAAoB,CAAA;IAErC,GAAG,CAAC,MAA0B;QACnC,oBAAoB,CAAC,MAAM,CAAC,CAAA;IAC9B,CAAC;IAEM,OAAO;QACZ,MAAM;IACR,CAAC;CACF,CAAA;AA/DY,oBAAoB;IADhC,UAAU,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC;GACzB,oBAAoB,CA+DhC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@furystack/shades-common-components",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.11",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"scripts": {
|
|
@@ -31,14 +31,14 @@
|
|
|
31
31
|
"author": "gallay.lajos@gmail.com",
|
|
32
32
|
"license": "GPL-2.0",
|
|
33
33
|
"devDependencies": {
|
|
34
|
-
"typescript": "^5.
|
|
35
|
-
"vitest": "^0.34.
|
|
34
|
+
"typescript": "^5.2.2",
|
|
35
|
+
"vitest": "^0.34.3"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@furystack/core": "^12.0.
|
|
39
|
-
"@furystack/inject": "^8.0
|
|
40
|
-
"@furystack/shades": "^8.0.
|
|
41
|
-
"@furystack/utils": "^4.0.
|
|
38
|
+
"@furystack/core": "^12.0.10",
|
|
39
|
+
"@furystack/inject": "^8.1.0",
|
|
40
|
+
"@furystack/shades": "^8.0.11",
|
|
41
|
+
"@furystack/utils": "^4.0.9",
|
|
42
42
|
"path-to-regexp": "^6.2.1",
|
|
43
43
|
"semaphore-async-await": "^1.5.1"
|
|
44
44
|
},
|