obsidian-dev-utils 24.2.1-beta.4 → 24.2.1-beta.6
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/CHANGELOG.md +19 -0
- package/README.md +3 -3
- package/dist/lib/cjs/AsyncEvents.cjs +8 -1
- package/dist/lib/cjs/AsyncEvents.d.cts +10 -8
- package/dist/lib/cjs/Library.cjs +1 -1
- package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.cjs +53 -0
- package/dist/lib/cjs/obsidian/Components/AsyncEventsComponent.d.cts +25 -0
- package/dist/lib/cjs/obsidian/Components/SettingComponents/CheckboxComponent.cjs +109 -0
- package/dist/lib/cjs/obsidian/Components/{CheckboxComponent.d.cts → SettingComponents/CheckboxComponent.d.cts} +1 -1
- package/dist/lib/cjs/obsidian/Components/{DateComponent.cjs → SettingComponents/DateComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{DateTimeComponent.cjs → SettingComponents/DateTimeComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{EmailComponent.cjs → SettingComponents/EmailComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{FileComponent.cjs → SettingComponents/FileComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{MonthComponent.cjs → SettingComponents/MonthComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleDropdownComponent.cjs +122 -0
- package/dist/lib/cjs/obsidian/Components/{MultipleDropdownComponent.d.cts → SettingComponents/MultipleDropdownComponent.d.cts} +5 -5
- package/dist/lib/cjs/obsidian/Components/{MultipleEmailComponent.cjs → SettingComponents/MultipleEmailComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{MultipleEmailComponent.d.cts → SettingComponents/MultipleEmailComponent.d.cts} +3 -3
- package/dist/lib/cjs/obsidian/Components/{MultipleFileComponent.cjs → SettingComponents/MultipleFileComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{MultipleFileComponent.d.cts → SettingComponents/MultipleFileComponent.d.cts} +4 -4
- package/dist/lib/cjs/obsidian/Components/SettingComponents/MultipleTextComponent.cjs +135 -0
- package/dist/lib/cjs/obsidian/Components/{MultipleTextComponent.d.cts → SettingComponents/MultipleTextComponent.d.cts} +6 -6
- package/dist/lib/cjs/obsidian/Components/{NumberComponent.cjs → SettingComponents/NumberComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TextBasedComponent.cjs +65 -0
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TimeComponent.cjs +74 -0
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TriStateCheckboxComponent.cjs +110 -0
- package/dist/lib/cjs/obsidian/Components/{TriStateCheckboxComponent.d.cts → SettingComponents/TriStateCheckboxComponent.d.cts} +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedDropdownComponent.cjs +128 -0
- package/dist/lib/cjs/obsidian/Components/{TypedDropdownComponent.d.cts → SettingComponents/TypedDropdownComponent.d.cts} +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.cjs +130 -0
- package/dist/lib/cjs/obsidian/Components/{TypedMultipleDropdownComponent.d.cts → SettingComponents/TypedMultipleDropdownComponent.d.cts} +5 -5
- package/dist/lib/cjs/obsidian/Components/{TypedRangeTextComponent.cjs → SettingComponents/TypedRangeTextComponent.cjs} +1 -1
- package/dist/lib/cjs/obsidian/Components/SettingComponents/TypedTextComponent.cjs +155 -0
- package/dist/lib/cjs/obsidian/Components/{TypedTextComponent.d.cts → SettingComponents/TypedTextComponent.d.cts} +2 -2
- package/dist/lib/cjs/obsidian/Components/{UrlComponent.cjs → SettingComponents/UrlComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/{ValidatorComponent.cjs → SettingComponents/ValidatorComponent.cjs} +1 -1
- package/dist/lib/cjs/obsidian/Components/{ValidatorComponent.d.cts → SettingComponents/ValidatorComponent.d.cts} +1 -1
- package/dist/lib/cjs/obsidian/Components/{ValueComponentWithChangeTracking.cjs → SettingComponents/ValueComponentWithChangeTracking.cjs} +1 -1
- package/dist/lib/cjs/obsidian/Components/{WeekComponent.cjs → SettingComponents/WeekComponent.cjs} +2 -2
- package/dist/lib/cjs/obsidian/Components/SettingComponents/index.cjs +109 -0
- package/dist/lib/cjs/obsidian/Components/SettingComponents/index.d.cts +22 -0
- package/dist/lib/cjs/obsidian/Components/index.cjs +7 -67
- package/dist/lib/cjs/obsidian/Components/index.d.cts +2 -22
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.cjs +25 -31
- package/dist/lib/cjs/obsidian/Plugin/PluginBase.d.cts +15 -23
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.cjs +17 -4
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsManagerBase.d.cts +21 -1
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.cjs +62 -13
- package/dist/lib/cjs/obsidian/Plugin/PluginSettingsTabBase.d.cts +18 -5
- package/dist/lib/cjs/obsidian/SettingEx.cjs +18 -18
- package/dist/lib/cjs/obsidian/SettingEx.d.cts +17 -17
- package/dist/lib/esm/AsyncEvents.d.mts +10 -8
- package/dist/lib/esm/AsyncEvents.mjs +8 -1
- package/dist/lib/esm/Library.mjs +1 -1
- package/dist/lib/esm/obsidian/Components/AsyncEventsComponent.d.mts +25 -0
- package/dist/lib/esm/obsidian/Components/AsyncEventsComponent.mjs +28 -0
- package/dist/lib/esm/obsidian/Components/{CheckboxComponent.d.mts → SettingComponents/CheckboxComponent.d.mts} +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/CheckboxComponent.mjs +85 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/DateComponent.mjs +43 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/DateTimeComponent.mjs +43 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/EmailComponent.mjs +32 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/FileComponent.mjs +48 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/MonthComponent.mjs +51 -0
- package/dist/lib/esm/obsidian/Components/{MultipleDropdownComponent.d.mts → SettingComponents/MultipleDropdownComponent.d.mts} +5 -5
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleDropdownComponent.mjs +101 -0
- package/dist/lib/esm/obsidian/Components/{MultipleEmailComponent.d.mts → SettingComponents/MultipleEmailComponent.d.mts} +3 -3
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleEmailComponent.mjs +42 -0
- package/dist/lib/esm/obsidian/Components/{MultipleFileComponent.d.mts → SettingComponents/MultipleFileComponent.d.mts} +4 -4
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleFileComponent.mjs +49 -0
- package/dist/lib/esm/obsidian/Components/{MultipleTextComponent.d.mts → SettingComponents/MultipleTextComponent.d.mts} +6 -6
- package/dist/lib/esm/obsidian/Components/SettingComponents/MultipleTextComponent.mjs +114 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/NumberComponent.mjs +32 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/TextBasedComponent.mjs +41 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/TimeComponent.mjs +53 -0
- package/dist/lib/esm/obsidian/Components/{TriStateCheckboxComponent.d.mts → SettingComponents/TriStateCheckboxComponent.d.mts} +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TriStateCheckboxComponent.mjs +86 -0
- package/dist/lib/esm/obsidian/Components/{TypedDropdownComponent.d.mts → SettingComponents/TypedDropdownComponent.d.mts} +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedDropdownComponent.mjs +107 -0
- package/dist/lib/esm/obsidian/Components/{TypedMultipleDropdownComponent.d.mts → SettingComponents/TypedMultipleDropdownComponent.d.mts} +5 -5
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent.mjs +106 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedRangeTextComponent.mjs +44 -0
- package/dist/lib/esm/obsidian/Components/{TypedTextComponent.d.mts → SettingComponents/TypedTextComponent.d.mts} +2 -2
- package/dist/lib/esm/obsidian/Components/SettingComponents/TypedTextComponent.mjs +134 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/UrlComponent.mjs +32 -0
- package/dist/lib/esm/obsidian/Components/{ValidatorComponent.d.mts → SettingComponents/ValidatorComponent.d.mts} +1 -1
- package/dist/lib/esm/obsidian/Components/SettingComponents/ValidatorComponent.mjs +47 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/WeekComponent.mjs +51 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/index.d.mts +22 -0
- package/dist/lib/esm/obsidian/Components/SettingComponents/index.mjs +54 -0
- package/dist/lib/esm/obsidian/Components/index.d.mts +2 -22
- package/dist/lib/esm/obsidian/Components/index.mjs +5 -45
- package/dist/lib/esm/obsidian/Plugin/PluginBase.d.mts +15 -23
- package/dist/lib/esm/obsidian/Plugin/PluginBase.mjs +25 -31
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.d.mts +21 -1
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsManagerBase.mjs +17 -4
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.d.mts +18 -5
- package/dist/lib/esm/obsidian/Plugin/PluginSettingsTabBase.mjs +66 -14
- package/dist/lib/esm/obsidian/SettingEx.d.mts +17 -17
- package/dist/lib/esm/obsidian/SettingEx.mjs +18 -18
- package/obsidian/Components/AsyncEventsComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/CheckboxComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/DateComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/DateTimeComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/EmailComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/FileComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/MonthComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/MultipleDropdownComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/MultipleEmailComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/MultipleFileComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/MultipleTextComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/NumberComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TextBasedComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TimeComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TriStateCheckboxComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TypedDropdownComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TypedMultipleDropdownComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TypedRangeTextComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/TypedTextComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/UrlComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/ValidatorComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/ValueComponentWithChangeTracking/package.json +6 -0
- package/obsidian/Components/SettingComponents/WeekComponent/package.json +6 -0
- package/obsidian/Components/SettingComponents/index/package.json +6 -0
- package/obsidian/Components/SettingComponents/package.json +6 -0
- package/package.json +21 -1
- package/dist/lib/cjs/obsidian/Components/CheckboxComponent.cjs +0 -109
- package/dist/lib/cjs/obsidian/Components/MultipleDropdownComponent.cjs +0 -122
- package/dist/lib/cjs/obsidian/Components/MultipleTextComponent.cjs +0 -135
- package/dist/lib/cjs/obsidian/Components/TextBasedComponent.cjs +0 -65
- package/dist/lib/cjs/obsidian/Components/TimeComponent.cjs +0 -74
- package/dist/lib/cjs/obsidian/Components/TriStateCheckboxComponent.cjs +0 -110
- package/dist/lib/cjs/obsidian/Components/TypedDropdownComponent.cjs +0 -128
- package/dist/lib/cjs/obsidian/Components/TypedMultipleDropdownComponent.cjs +0 -130
- package/dist/lib/cjs/obsidian/Components/TypedTextComponent.cjs +0 -155
- package/dist/lib/esm/obsidian/Components/CheckboxComponent.mjs +0 -85
- package/dist/lib/esm/obsidian/Components/DateComponent.mjs +0 -43
- package/dist/lib/esm/obsidian/Components/DateTimeComponent.mjs +0 -43
- package/dist/lib/esm/obsidian/Components/EmailComponent.mjs +0 -32
- package/dist/lib/esm/obsidian/Components/FileComponent.mjs +0 -48
- package/dist/lib/esm/obsidian/Components/MonthComponent.mjs +0 -51
- package/dist/lib/esm/obsidian/Components/MultipleDropdownComponent.mjs +0 -101
- package/dist/lib/esm/obsidian/Components/MultipleEmailComponent.mjs +0 -42
- package/dist/lib/esm/obsidian/Components/MultipleFileComponent.mjs +0 -49
- package/dist/lib/esm/obsidian/Components/MultipleTextComponent.mjs +0 -114
- package/dist/lib/esm/obsidian/Components/NumberComponent.mjs +0 -32
- package/dist/lib/esm/obsidian/Components/TextBasedComponent.mjs +0 -41
- package/dist/lib/esm/obsidian/Components/TimeComponent.mjs +0 -53
- package/dist/lib/esm/obsidian/Components/TriStateCheckboxComponent.mjs +0 -86
- package/dist/lib/esm/obsidian/Components/TypedDropdownComponent.mjs +0 -107
- package/dist/lib/esm/obsidian/Components/TypedMultipleDropdownComponent.mjs +0 -106
- package/dist/lib/esm/obsidian/Components/TypedRangeTextComponent.mjs +0 -44
- package/dist/lib/esm/obsidian/Components/TypedTextComponent.mjs +0 -134
- package/dist/lib/esm/obsidian/Components/UrlComponent.mjs +0 -32
- package/dist/lib/esm/obsidian/Components/ValidatorComponent.mjs +0 -47
- package/dist/lib/esm/obsidian/Components/WeekComponent.mjs +0 -51
- package/obsidian/Components/CheckboxComponent/package.json +0 -6
- package/obsidian/Components/DateComponent/package.json +0 -6
- package/obsidian/Components/DateTimeComponent/package.json +0 -6
- package/obsidian/Components/EmailComponent/package.json +0 -6
- package/obsidian/Components/FileComponent/package.json +0 -6
- package/obsidian/Components/MonthComponent/package.json +0 -6
- package/obsidian/Components/MultipleDropdownComponent/package.json +0 -6
- package/obsidian/Components/MultipleEmailComponent/package.json +0 -6
- package/obsidian/Components/MultipleFileComponent/package.json +0 -6
- package/obsidian/Components/MultipleTextComponent/package.json +0 -6
- package/obsidian/Components/NumberComponent/package.json +0 -6
- package/obsidian/Components/TextBasedComponent/package.json +0 -6
- package/obsidian/Components/TimeComponent/package.json +0 -6
- package/obsidian/Components/TriStateCheckboxComponent/package.json +0 -6
- package/obsidian/Components/TypedDropdownComponent/package.json +0 -6
- package/obsidian/Components/TypedMultipleDropdownComponent/package.json +0 -6
- package/obsidian/Components/TypedRangeTextComponent/package.json +0 -6
- package/obsidian/Components/TypedTextComponent/package.json +0 -6
- package/obsidian/Components/UrlComponent/package.json +0 -6
- package/obsidian/Components/ValidatorComponent/package.json +0 -6
- package/obsidian/Components/ValueComponentWithChangeTracking/package.json +0 -6
- package/obsidian/Components/WeekComponent/package.json +0 -6
- /package/dist/lib/cjs/obsidian/Components/{DateComponent.d.cts → SettingComponents/DateComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{DateTimeComponent.d.cts → SettingComponents/DateTimeComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{EmailComponent.d.cts → SettingComponents/EmailComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{FileComponent.d.cts → SettingComponents/FileComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{MonthComponent.d.cts → SettingComponents/MonthComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{NumberComponent.d.cts → SettingComponents/NumberComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{TextBasedComponent.d.cts → SettingComponents/TextBasedComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{TimeComponent.d.cts → SettingComponents/TimeComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{TypedRangeTextComponent.d.cts → SettingComponents/TypedRangeTextComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{UrlComponent.d.cts → SettingComponents/UrlComponent.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{ValueComponentWithChangeTracking.d.cts → SettingComponents/ValueComponentWithChangeTracking.d.cts} +0 -0
- /package/dist/lib/cjs/obsidian/Components/{WeekComponent.d.cts → SettingComponents/WeekComponent.d.cts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{DateComponent.d.mts → SettingComponents/DateComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{DateTimeComponent.d.mts → SettingComponents/DateTimeComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{EmailComponent.d.mts → SettingComponents/EmailComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{FileComponent.d.mts → SettingComponents/FileComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{MonthComponent.d.mts → SettingComponents/MonthComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{NumberComponent.d.mts → SettingComponents/NumberComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{TextBasedComponent.d.mts → SettingComponents/TextBasedComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{TimeComponent.d.mts → SettingComponents/TimeComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{TypedRangeTextComponent.d.mts → SettingComponents/TypedRangeTextComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{UrlComponent.d.mts → SettingComponents/UrlComponent.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{ValueComponentWithChangeTracking.d.mts → SettingComponents/ValueComponentWithChangeTracking.d.mts} +0 -0
- /package/dist/lib/esm/obsidian/Components/{ValueComponentWithChangeTracking.mjs → SettingComponents/ValueComponentWithChangeTracking.mjs} +0 -0
- /package/dist/lib/esm/obsidian/Components/{WeekComponent.d.mts → SettingComponents/WeekComponent.d.mts} +0 -0
@@ -0,0 +1,86 @@
|
|
1
|
+
/*
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
4
|
+
*/
|
5
|
+
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
+
|
8
|
+
import { ValueComponent } from "obsidian";
|
9
|
+
import { CssClass } from "../../../CssClass.mjs";
|
10
|
+
import { getPluginId } from "../../Plugin/PluginId.mjs";
|
11
|
+
class TriStateCheckboxComponent extends ValueComponent {
|
12
|
+
/**
|
13
|
+
* The input element of the checkbox.
|
14
|
+
*/
|
15
|
+
inputEl;
|
16
|
+
/**
|
17
|
+
* The validator element of the checkbox.
|
18
|
+
*
|
19
|
+
* @returns The validator element.
|
20
|
+
*/
|
21
|
+
get validatorEl() {
|
22
|
+
return this.inputEl;
|
23
|
+
}
|
24
|
+
changeCallback;
|
25
|
+
/**
|
26
|
+
* Creates a new tri-state checkbox component.
|
27
|
+
*
|
28
|
+
* @param containerEl - The container element.
|
29
|
+
*/
|
30
|
+
constructor(containerEl) {
|
31
|
+
super();
|
32
|
+
containerEl.addClass(CssClass.LibraryName, getPluginId(), CssClass.TriStateCheckboxComponent);
|
33
|
+
this.inputEl = containerEl.createEl("input", { type: "checkbox" });
|
34
|
+
this.inputEl.addEventListener("change", this.onChanged.bind(this));
|
35
|
+
}
|
36
|
+
/**
|
37
|
+
* Gets the value of the checkbox.
|
38
|
+
*
|
39
|
+
* @returns The value of the checkbox.
|
40
|
+
*/
|
41
|
+
getValue() {
|
42
|
+
return this.inputEl.indeterminate ? null : this.inputEl.checked;
|
43
|
+
}
|
44
|
+
/**
|
45
|
+
* Sets the callback to be called when the checkbox is changed.
|
46
|
+
*
|
47
|
+
* @param callback - The callback to be called when the checkbox is changed.
|
48
|
+
* @returns The component.
|
49
|
+
*/
|
50
|
+
onChange(callback) {
|
51
|
+
this.changeCallback = callback;
|
52
|
+
return this;
|
53
|
+
}
|
54
|
+
/**
|
55
|
+
* Called when the checkbox is changed.
|
56
|
+
*/
|
57
|
+
onChanged() {
|
58
|
+
this.changeCallback?.(this.getValue());
|
59
|
+
}
|
60
|
+
/**
|
61
|
+
* Sets the disabled state of the checkbox.
|
62
|
+
*
|
63
|
+
* @param disabled - The disabled state of the checkbox.
|
64
|
+
* @returns The component.
|
65
|
+
*/
|
66
|
+
setDisabled(disabled) {
|
67
|
+
super.setDisabled(disabled);
|
68
|
+
this.inputEl.disabled = disabled;
|
69
|
+
return this;
|
70
|
+
}
|
71
|
+
/**
|
72
|
+
* Sets the value of the checkbox.
|
73
|
+
*
|
74
|
+
* @param value - The value to set the checkbox to.
|
75
|
+
* @returns The component.
|
76
|
+
*/
|
77
|
+
setValue(value) {
|
78
|
+
this.inputEl.indeterminate = value === null;
|
79
|
+
this.inputEl.checked = value ?? false;
|
80
|
+
return this;
|
81
|
+
}
|
82
|
+
}
|
83
|
+
export {
|
84
|
+
TriStateCheckboxComponent
|
85
|
+
};
|
86
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVHJpU3RhdGVDaGVja2JveENvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBUcmktc3RhdGUgY2hlY2tib3ggY29tcG9uZW50LlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7IFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9IVE1MRWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi8uLi9TZXR0aW5nRXgudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JDb21wb25lbnQgfSBmcm9tICcuL1ZhbGlkYXRvckNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi9WYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vLi4vQ3NzQ2xhc3MudHMnO1xuaW1wb3J0IHsgZ2V0UGx1Z2luSWQgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luSWQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYSB0cmktc3RhdGUgY2hlY2tib3guXG4gKlxuICogWW91IGNhbiBhZGQgdGhpcyBjb21wb25lbnQgdXNpbmcge0BsaW5rIFNldHRpbmdFeC5hZGRUcmlTdGF0ZUNoZWNrYm94fS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKi9cbmV4cG9ydCBjbGFzcyBUcmlTdGF0ZUNoZWNrYm94Q29tcG9uZW50IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8Ym9vbGVhbiB8IG51bGw+IGltcGxlbWVudHMgVmFsaWRhdG9yQ29tcG9uZW50LCBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxib29sZWFuIHwgbnVsbD4ge1xuICAvKipcbiAgICogVGhlIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNoZWNrYm94LlxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGlucHV0RWw6IEhUTUxJbnB1dEVsZW1lbnQ7XG4gIC8qKlxuICAgKiBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNoZWNrYm94LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsaWRhdG9yIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWw7XG4gIH1cblxuICBwcml2YXRlIGNoYW5nZUNhbGxiYWNrPzogKG5ld1ZhbHVlOiBib29sZWFuIHwgbnVsbCkgPT4gUHJvbWlzYWJsZTx2b2lkPjtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyB0cmktc3RhdGUgY2hlY2tib3ggY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICBjb250YWluZXJFbC5hZGRDbGFzcyhDc3NDbGFzcy5MaWJyYXJ5TmFtZSwgZ2V0UGx1Z2luSWQoKSwgQ3NzQ2xhc3MuVHJpU3RhdGVDaGVja2JveENvbXBvbmVudCk7XG4gICAgdGhpcy5pbnB1dEVsID0gY29udGFpbmVyRWwuY3JlYXRlRWwoJ2lucHV0JywgeyB0eXBlOiAnY2hlY2tib3gnIH0pO1xuICAgIHRoaXMuaW5wdXRFbC5hZGRFdmVudExpc3RlbmVyKCdjaGFuZ2UnLCB0aGlzLm9uQ2hhbmdlZC5iaW5kKHRoaXMpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY2hlY2tib3guXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY2hlY2tib3guXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VmFsdWUoKTogYm9vbGVhbiB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmlucHV0RWwuaW5kZXRlcm1pbmF0ZSA/IG51bGwgOiB0aGlzLmlucHV0RWwuY2hlY2tlZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY2hlY2tib3ggaXMgY2hhbmdlZC5cbiAgICpcbiAgICogQHBhcmFtIGNhbGxiYWNrIC0gVGhlIGNhbGxiYWNrIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBjaGFuZ2VkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG9uQ2hhbmdlKGNhbGxiYWNrOiAobmV3VmFsdWU6IGJvb2xlYW4gfCBudWxsKSA9PiBQcm9taXNhYmxlPHZvaWQ+KTogdGhpcyB7XG4gICAgdGhpcy5jaGFuZ2VDYWxsYmFjayA9IGNhbGxiYWNrO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbGxlZCB3aGVuIHRoZSBjaGVja2JveCBpcyBjaGFuZ2VkLlxuICAgKi9cbiAgcHVibGljIG9uQ2hhbmdlZCgpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZUNhbGxiYWNrPy4odGhpcy5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY2hlY2tib3guXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy5pbnB1dEVsLmRpc2FibGVkID0gZGlzYWJsZWQ7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNoZWNrYm94LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0IHRoZSBjaGVja2JveCB0by5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRWYWx1ZSh2YWx1ZTogYm9vbGVhbiB8IG51bGwpOiB0aGlzIHtcbiAgICB0aGlzLmlucHV0RWwuaW5kZXRlcm1pbmF0ZSA9IHZhbHVlID09PSBudWxsO1xuICAgIHRoaXMuaW5wdXRFbC5jaGVja2VkID0gdmFsdWUgPz8gZmFsc2U7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFRQSxTQUFTLHNCQUFzQjtBQVUvQixTQUFTLGdCQUFnQjtBQUN6QixTQUFTLG1CQUFtQjtBQVdyQixNQUFNLGtDQUFrQyxlQUErRztBQUFBO0FBQUE7QUFBQTtBQUFBLEVBSTVJO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTWhCLElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLO0FBQUEsRUFDZDtBQUFBLEVBRVE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPRCxZQUFZLGFBQTBCO0FBQzNDLFVBQU07QUFDTixnQkFBWSxTQUFTLFNBQVMsYUFBYSxZQUFZLEdBQUcsU0FBUyx5QkFBeUI7QUFDNUYsU0FBSyxVQUFVLFlBQVksU0FBUyxTQUFTLEVBQUUsTUFBTSxXQUFXLENBQUM7QUFDakUsU0FBSyxRQUFRLGlCQUFpQixVQUFVLEtBQUssVUFBVSxLQUFLLElBQUksQ0FBQztBQUFBLEVBQ25FO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT2dCLFdBQTJCO0FBQ3pDLFdBQU8sS0FBSyxRQUFRLGdCQUFnQixPQUFPLEtBQUssUUFBUTtBQUFBLEVBQzFEO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLFVBQWdFO0FBQzlFLFNBQUssaUJBQWlCO0FBQ3RCLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFLTyxZQUFrQjtBQUN2QixTQUFLLGlCQUFpQixLQUFLLFNBQVMsQ0FBQztBQUFBLEVBQ3ZDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsWUFBWSxVQUF5QjtBQUNuRCxVQUFNLFlBQVksUUFBUTtBQUMxQixTQUFLLFFBQVEsV0FBVztBQUN4QixXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFNBQVMsT0FBNkI7QUFDcEQsU0FBSyxRQUFRLGdCQUFnQixVQUFVO0FBQ3ZDLFNBQUssUUFBUSxVQUFVLFNBQVM7QUFDaEMsV0FBTztBQUFBLEVBQ1Q7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
@@ -5,7 +5,7 @@
|
|
5
5
|
*/
|
6
6
|
import type { Promisable } from 'type-fest';
|
7
7
|
import { ValueComponent } from 'obsidian';
|
8
|
-
import type { ValidatorElement } from '
|
8
|
+
import type { ValidatorElement } from '../../../HTMLElement.mjs';
|
9
9
|
import type { ValueComponentWithChangeTracking } from './ValueComponentWithChangeTracking.mjs';
|
10
10
|
/**
|
11
11
|
* A dropdown component that can be used to select a value from a list.
|
@@ -0,0 +1,107 @@
|
|
1
|
+
/*
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
4
|
+
*/
|
5
|
+
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
+
|
8
|
+
import {
|
9
|
+
DropdownComponent,
|
10
|
+
ValueComponent
|
11
|
+
} from "obsidian";
|
12
|
+
import { CssClass } from "../../../CssClass.mjs";
|
13
|
+
import { getPluginId } from "../../Plugin/PluginId.mjs";
|
14
|
+
class TypedDropdownComponent extends ValueComponent {
|
15
|
+
/**
|
16
|
+
* The validator element of the component.
|
17
|
+
*
|
18
|
+
* @returns The validator element.
|
19
|
+
*/
|
20
|
+
get validatorEl() {
|
21
|
+
return this.dropdownComponent.selectEl;
|
22
|
+
}
|
23
|
+
dropdownComponent;
|
24
|
+
values = [];
|
25
|
+
/**
|
26
|
+
* Creates a new multiple dropdown component.
|
27
|
+
*
|
28
|
+
* @param containerEl - The container element of the component.
|
29
|
+
*/
|
30
|
+
constructor(containerEl) {
|
31
|
+
super();
|
32
|
+
this.dropdownComponent = new DropdownComponent(containerEl);
|
33
|
+
containerEl.addClass(CssClass.LibraryName, getPluginId(), CssClass.TypedDropdownComponent);
|
34
|
+
}
|
35
|
+
/**
|
36
|
+
* Adds an option to the dropdown.
|
37
|
+
*
|
38
|
+
* @param value - The value of the option.
|
39
|
+
* @param display - The display text of the option.
|
40
|
+
* @returns The component.
|
41
|
+
*/
|
42
|
+
addOption(value, display) {
|
43
|
+
let index = this.values.indexOf(value);
|
44
|
+
if (index === -1) {
|
45
|
+
this.values.push(value);
|
46
|
+
index = this.values.length - 1;
|
47
|
+
}
|
48
|
+
this.dropdownComponent.addOption(index.toString(), display);
|
49
|
+
return this;
|
50
|
+
}
|
51
|
+
/**
|
52
|
+
* Adds multiple options to the dropdown.
|
53
|
+
*
|
54
|
+
* @param options - The options to add.
|
55
|
+
* @returns The component.
|
56
|
+
*/
|
57
|
+
addOptions(options) {
|
58
|
+
for (const [value, display] of options.entries()) {
|
59
|
+
this.addOption(value, display);
|
60
|
+
}
|
61
|
+
return this;
|
62
|
+
}
|
63
|
+
/**
|
64
|
+
* Gets the value of the component.
|
65
|
+
*
|
66
|
+
* @returns The value of the component.
|
67
|
+
*/
|
68
|
+
getValue() {
|
69
|
+
return this.values[this.dropdownComponent.selectEl.selectedIndex] ?? null;
|
70
|
+
}
|
71
|
+
/**
|
72
|
+
* Sets the callback function to be called when the component is changed.
|
73
|
+
*
|
74
|
+
* @param callback - The callback function to be called when the component is changed.
|
75
|
+
* @returns The component.
|
76
|
+
*/
|
77
|
+
onChange(callback) {
|
78
|
+
this.dropdownComponent.onChange(() => callback(this.getValue()));
|
79
|
+
return this;
|
80
|
+
}
|
81
|
+
/**
|
82
|
+
* Sets the disabled state of the component.
|
83
|
+
*
|
84
|
+
* @param disabled - The disabled state to set.
|
85
|
+
* @returns The component.
|
86
|
+
*/
|
87
|
+
setDisabled(disabled) {
|
88
|
+
super.setDisabled(disabled);
|
89
|
+
this.dropdownComponent.setDisabled(disabled);
|
90
|
+
return this;
|
91
|
+
}
|
92
|
+
/**
|
93
|
+
* Sets the value of the component.
|
94
|
+
*
|
95
|
+
* @param value - The value to set.
|
96
|
+
* @returns The component.
|
97
|
+
*/
|
98
|
+
setValue(value) {
|
99
|
+
const index = value === null ? -1 : this.values.indexOf(value);
|
100
|
+
this.dropdownComponent.selectEl.selectedIndex = index;
|
101
|
+
return this;
|
102
|
+
}
|
103
|
+
}
|
104
|
+
export {
|
105
|
+
TypedDropdownComponent
|
106
|
+
};
|
107
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVHlwZWREcm9wZG93bkNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb25cbiAqXG4gKiBUeXBlZCBkcm9wZG93biBjb21wb25lbnQuXG4gKi9cblxuaW1wb3J0IHR5cGUgeyBQcm9taXNhYmxlIH0gZnJvbSAndHlwZS1mZXN0JztcblxuaW1wb3J0IHtcbiAgRHJvcGRvd25Db21wb25lbnQsXG4gIFZhbHVlQ29tcG9uZW50XG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JFbGVtZW50IH0gZnJvbSAnLi4vLi4vLi4vSFRNTEVsZW1lbnQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuaW1wb3J0IHR5cGUgeyBpbml0UGx1Z2luQ29udGV4dCB9IGZyb20gJy4uLy4uL1BsdWdpbi9QbHVnaW5Db250ZXh0LnRzJztcbi8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tdW51c2VkLXZhcnNcbmltcG9ydCB0eXBlIHsgU2V0dGluZ0V4IH0gZnJvbSAnLi4vLi4vU2V0dGluZ0V4LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL1ZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nLnRzJztcblxuaW1wb3J0IHsgQ3NzQ2xhc3MgfSBmcm9tICcuLi8uLi8uLi9Dc3NDbGFzcy50cyc7XG5pbXBvcnQgeyBnZXRQbHVnaW5JZCB9IGZyb20gJy4uLy4uL1BsdWdpbi9QbHVnaW5JZC50cyc7XG5cbi8qKlxuICogQSBkcm9wZG93biBjb21wb25lbnQgdGhhdCBjYW4gYmUgdXNlZCB0byBzZWxlY3QgYSB2YWx1ZSBmcm9tIGEgbGlzdC5cbiAqXG4gKiBZb3UgY2FuIGFkZCB0aGlzIGNvbXBvbmVudCB1c2luZyB7QGxpbmsgU2V0dGluZ0V4LmFkZFR5cGVkRHJvcGRvd259LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgdG8gc2VsZWN0LlxuICovXG5leHBvcnQgY2xhc3MgVHlwZWREcm9wZG93bkNvbXBvbmVudDxUPiBleHRlbmRzIFZhbHVlQ29tcG9uZW50PG51bGwgfCBUPiBpbXBsZW1lbnRzIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPG51bGwgfCBUPiB7XG4gIC8qKlxuICAgKiBUaGUgdmFsaWRhdG9yIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbGlkYXRvciBlbGVtZW50LlxuICAgKi9cbiAgcHVibGljIGdldCB2YWxpZGF0b3JFbCgpOiBWYWxpZGF0b3JFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZWxlY3RFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgZHJvcGRvd25Db21wb25lbnQ6IERyb3Bkb3duQ29tcG9uZW50O1xuXG4gIHByaXZhdGUgdmFsdWVzOiBUW10gPSBbXTtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBtdWx0aXBsZSBkcm9wZG93biBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudCA9IG5ldyBEcm9wZG93bkNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgY29udGFpbmVyRWwuYWRkQ2xhc3MoQ3NzQ2xhc3MuTGlicmFyeU5hbWUsIGdldFBsdWdpbklkKCksIENzc0NsYXNzLlR5cGVkRHJvcGRvd25Db21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3B0aW9uIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNwbGF5IC0gVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbih2YWx1ZTogVCwgZGlzcGxheTogc3RyaW5nKTogdGhpcyB7XG4gICAgbGV0IGluZGV4ID0gdGhpcy52YWx1ZXMuaW5kZXhPZih2YWx1ZSk7XG4gICAgaWYgKGluZGV4ID09PSAtMSkge1xuICAgICAgdGhpcy52YWx1ZXMucHVzaCh2YWx1ZSk7XG4gICAgICBpbmRleCA9IHRoaXMudmFsdWVzLmxlbmd0aCAtIDE7XG4gICAgfVxuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuYWRkT3B0aW9uKGluZGV4LnRvU3RyaW5nKCksIGRpc3BsYXkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgbXVsdGlwbGUgb3B0aW9ucyB0byB0aGUgZHJvcGRvd24uXG4gICAqXG4gICAqIEBwYXJhbSBvcHRpb25zIC0gVGhlIG9wdGlvbnMgdG8gYWRkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbnMob3B0aW9uczogTWFwPFQsIHN0cmluZz4pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IFt2YWx1ZSwgZGlzcGxheV0gb2Ygb3B0aW9ucy5lbnRyaWVzKCkpIHtcbiAgICAgIHRoaXMuYWRkT3B0aW9uKHZhbHVlLCBkaXNwbGF5KTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0VmFsdWUoKTogbnVsbCB8IFQge1xuICAgIHJldHVybiB0aGlzLnZhbHVlc1t0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLnNlbGVjdGVkSW5kZXhdID8/IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBjaGFuZ2VkLlxuICAgKlxuICAgKiBAcGFyYW0gY2FsbGJhY2sgLSBUaGUgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIGNvbXBvbmVudCBpcyBjaGFuZ2VkLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG9uQ2hhbmdlKGNhbGxiYWNrOiAodmFsdWU6IG51bGwgfCBUKSA9PiBQcm9taXNhYmxlPHZvaWQ+KTogdGhpcyB7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5vbkNoYW5nZSgoKSA9PiBjYWxsYmFjayh0aGlzLmdldFZhbHVlKCkpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBUaGUgZGlzYWJsZWQgc3RhdGUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHNldERpc2FibGVkKGRpc2FibGVkOiBib29sZWFuKTogdGhpcyB7XG4gICAgc3VwZXIuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2V0RGlzYWJsZWQoZGlzYWJsZWQpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSB2YWx1ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0VmFsdWUodmFsdWU6IG51bGwgfCBUKTogdGhpcyB7XG4gICAgY29uc3QgaW5kZXggPSB2YWx1ZSA9PT0gbnVsbCA/IC0xIDogdGhpcy52YWx1ZXMuaW5kZXhPZih2YWx1ZSk7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5zZWxlY3RFbC5zZWxlY3RlZEluZGV4ID0gaW5kZXg7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFRQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQVNQLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsbUJBQW1CO0FBYXJCLE1BQU0sK0JBQWtDLGVBQStFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTVILElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLLGtCQUFrQjtBQUFBLEVBQ2hDO0FBQUEsRUFFaUI7QUFBQSxFQUVULFNBQWMsQ0FBQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9oQixZQUFZLGFBQTBCO0FBQzNDLFVBQU07QUFDTixTQUFLLG9CQUFvQixJQUFJLGtCQUFrQixXQUFXO0FBQzFELGdCQUFZLFNBQVMsU0FBUyxhQUFhLFlBQVksR0FBRyxTQUFTLHNCQUFzQjtBQUFBLEVBQzNGO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNPLFVBQVUsT0FBVSxTQUF1QjtBQUNoRCxRQUFJLFFBQVEsS0FBSyxPQUFPLFFBQVEsS0FBSztBQUNyQyxRQUFJLFVBQVUsSUFBSTtBQUNoQixXQUFLLE9BQU8sS0FBSyxLQUFLO0FBQ3RCLGNBQVEsS0FBSyxPQUFPLFNBQVM7QUFBQSxJQUMvQjtBQUNBLFNBQUssa0JBQWtCLFVBQVUsTUFBTSxTQUFTLEdBQUcsT0FBTztBQUMxRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sV0FBVyxTQUErQjtBQUMvQyxlQUFXLENBQUMsT0FBTyxPQUFPLEtBQUssUUFBUSxRQUFRLEdBQUc7QUFDaEQsV0FBSyxVQUFVLE9BQU8sT0FBTztBQUFBLElBQy9CO0FBQ0EsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxXQUFxQjtBQUMxQixXQUFPLEtBQUssT0FBTyxLQUFLLGtCQUFrQixTQUFTLGFBQWEsS0FBSztBQUFBLEVBQ3ZFO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLFVBQXVEO0FBQ3JFLFNBQUssa0JBQWtCLFNBQVMsTUFBTSxTQUFTLEtBQUssU0FBUyxDQUFDLENBQUM7QUFDL0QsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixZQUFZLFVBQXlCO0FBQ25ELFVBQU0sWUFBWSxRQUFRO0FBQzFCLFNBQUssa0JBQWtCLFlBQVksUUFBUTtBQUMzQyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUF1QjtBQUNyQyxVQUFNLFFBQVEsVUFBVSxPQUFPLEtBQUssS0FBSyxPQUFPLFFBQVEsS0FBSztBQUM3RCxTQUFLLGtCQUFrQixTQUFTLGdCQUFnQjtBQUNoRCxXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
@@ -5,7 +5,7 @@
|
|
5
5
|
*/
|
6
6
|
import type { Promisable } from 'type-fest';
|
7
7
|
import { ValueComponent } from 'obsidian';
|
8
|
-
import type { ValidatorElement } from '
|
8
|
+
import type { ValidatorElement } from '../../../HTMLElement.mjs';
|
9
9
|
import type { ValidatorComponent } from './ValidatorComponent.mjs';
|
10
10
|
import type { ValueComponentWithChangeTracking } from './ValueComponentWithChangeTracking.mjs';
|
11
11
|
/**
|
@@ -19,7 +19,7 @@ import type { ValueComponentWithChangeTracking } from './ValueComponentWithChang
|
|
19
19
|
*
|
20
20
|
* @typeParam T - The type of the value to select.
|
21
21
|
*/
|
22
|
-
export declare class TypedMultipleDropdownComponent<T> extends ValueComponent<T[]> implements ValidatorComponent, ValueComponentWithChangeTracking<T[]> {
|
22
|
+
export declare class TypedMultipleDropdownComponent<T> extends ValueComponent<readonly T[]> implements ValidatorComponent, ValueComponentWithChangeTracking<readonly T[]> {
|
23
23
|
/**
|
24
24
|
* The validator element of the component.
|
25
25
|
*
|
@@ -54,14 +54,14 @@ export declare class TypedMultipleDropdownComponent<T> extends ValueComponent<T[
|
|
54
54
|
*
|
55
55
|
* @returns The value of the component.
|
56
56
|
*/
|
57
|
-
getValue(): T[];
|
57
|
+
getValue(): readonly T[];
|
58
58
|
/**
|
59
59
|
* Sets the callback function to be called when the component is changed.
|
60
60
|
*
|
61
61
|
* @param callback - The callback function to be called when the component is changed.
|
62
62
|
* @returns The component.
|
63
63
|
*/
|
64
|
-
onChange(callback: (value: T[]) => Promisable<void>): this;
|
64
|
+
onChange(callback: (value: readonly T[]) => Promisable<void>): this;
|
65
65
|
/**
|
66
66
|
* Sets the disabled state of the component.
|
67
67
|
*
|
@@ -75,5 +75,5 @@ export declare class TypedMultipleDropdownComponent<T> extends ValueComponent<T[
|
|
75
75
|
* @param value - The value to set.
|
76
76
|
* @returns The component.
|
77
77
|
*/
|
78
|
-
setValue(value: T[]): this;
|
78
|
+
setValue(value: readonly T[]): this;
|
79
79
|
}
|
@@ -0,0 +1,106 @@
|
|
1
|
+
/*
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
4
|
+
*/
|
5
|
+
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
+
|
8
|
+
import { ValueComponent } from "obsidian";
|
9
|
+
import { CssClass } from "../../../CssClass.mjs";
|
10
|
+
import { getPluginId } from "../../Plugin/PluginId.mjs";
|
11
|
+
import { MultipleDropdownComponent } from "./MultipleDropdownComponent.mjs";
|
12
|
+
class TypedMultipleDropdownComponent extends ValueComponent {
|
13
|
+
/**
|
14
|
+
* The validator element of the component.
|
15
|
+
*
|
16
|
+
* @returns The validator element.
|
17
|
+
*/
|
18
|
+
get validatorEl() {
|
19
|
+
return this.multipleDropdownComponent.validatorEl;
|
20
|
+
}
|
21
|
+
multipleDropdownComponent;
|
22
|
+
values = [];
|
23
|
+
/**
|
24
|
+
* Creates a new multiple dropdown component.
|
25
|
+
*
|
26
|
+
* @param containerEl - The container element of the component.
|
27
|
+
*/
|
28
|
+
constructor(containerEl) {
|
29
|
+
super();
|
30
|
+
this.multipleDropdownComponent = new MultipleDropdownComponent(containerEl);
|
31
|
+
containerEl.addClass(CssClass.LibraryName, getPluginId(), CssClass.TypedMultipleDropdownComponent);
|
32
|
+
}
|
33
|
+
/**
|
34
|
+
* Adds an option to the dropdown.
|
35
|
+
*
|
36
|
+
* @param value - The value of the option.
|
37
|
+
* @param display - The display text of the option.
|
38
|
+
* @returns The component.
|
39
|
+
*/
|
40
|
+
addOption(value, display) {
|
41
|
+
let index = this.values.indexOf(value);
|
42
|
+
if (index === -1) {
|
43
|
+
this.values.push(value);
|
44
|
+
index = this.values.length - 1;
|
45
|
+
}
|
46
|
+
this.multipleDropdownComponent.addOption(index.toString(), display);
|
47
|
+
return this;
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* Adds multiple options to the dropdown.
|
51
|
+
*
|
52
|
+
* @param options - The options to add.
|
53
|
+
* @returns The component.
|
54
|
+
*/
|
55
|
+
addOptions(options) {
|
56
|
+
for (const [value, display] of options.entries()) {
|
57
|
+
this.addOption(value, display);
|
58
|
+
}
|
59
|
+
return this;
|
60
|
+
}
|
61
|
+
/**
|
62
|
+
* Gets the value of the component.
|
63
|
+
*
|
64
|
+
* @returns The value of the component.
|
65
|
+
*/
|
66
|
+
getValue() {
|
67
|
+
const indices = this.multipleDropdownComponent.getValue().map((str) => parseInt(str, 10));
|
68
|
+
return indices.map((index) => this.values[index]).filter((value) => value !== void 0);
|
69
|
+
}
|
70
|
+
/**
|
71
|
+
* Sets the callback function to be called when the component is changed.
|
72
|
+
*
|
73
|
+
* @param callback - The callback function to be called when the component is changed.
|
74
|
+
* @returns The component.
|
75
|
+
*/
|
76
|
+
onChange(callback) {
|
77
|
+
this.multipleDropdownComponent.onChange(() => callback(this.getValue()));
|
78
|
+
return this;
|
79
|
+
}
|
80
|
+
/**
|
81
|
+
* Sets the disabled state of the component.
|
82
|
+
*
|
83
|
+
* @param disabled - The disabled state to set.
|
84
|
+
* @returns The component.
|
85
|
+
*/
|
86
|
+
setDisabled(disabled) {
|
87
|
+
super.setDisabled(disabled);
|
88
|
+
this.multipleDropdownComponent.setDisabled(disabled);
|
89
|
+
return this;
|
90
|
+
}
|
91
|
+
/**
|
92
|
+
* Sets the value of the component.
|
93
|
+
*
|
94
|
+
* @param value - The value to set.
|
95
|
+
* @returns The component.
|
96
|
+
*/
|
97
|
+
setValue(value) {
|
98
|
+
const indices = value.map((v) => this.values.indexOf(v)).filter((index) => index !== -1);
|
99
|
+
this.multipleDropdownComponent.setValue(indices.map((index) => index.toString()));
|
100
|
+
return this;
|
101
|
+
}
|
102
|
+
}
|
103
|
+
export {
|
104
|
+
TypedMultipleDropdownComponent
|
105
|
+
};
|
106
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVHlwZWRNdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGEgbXVsdGktc2VsZWN0IGRyb3Bkb3duLlxuICovXG5cbmltcG9ydCB0eXBlIHsgUHJvbWlzYWJsZSB9IGZyb20gJ3R5cGUtZmVzdCc7XG5cbmltcG9ydCB7IFZhbHVlQ29tcG9uZW50IH0gZnJvbSAnb2JzaWRpYW4nO1xuXG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi8uLi9IVE1MRWxlbWVudC50cyc7XG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi8uLi9TZXR0aW5nRXgudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JDb21wb25lbnQgfSBmcm9tICcuL1ZhbGlkYXRvckNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi9WYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vLi4vQ3NzQ2xhc3MudHMnO1xuaW1wb3J0IHsgZ2V0UGx1Z2luSWQgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luSWQudHMnO1xuaW1wb3J0IHsgTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudCB9IGZyb20gJy4vTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBtdWx0aS1zZWxlY3QgZHJvcGRvd24gY29tcG9uZW50LlxuICpcbiAqIFlvdSBjYW4gYWRkIHRoaXMgY29tcG9uZW50IHVzaW5nIHtAbGluayBTZXR0aW5nRXguYWRkVHlwZWRNdWx0aXBsZURyb3Bkb3dufS5cbiAqXG4gKiBJbiBvcmRlciB0byBhZGQgdGhlIHN0eWxlcyBmb3IgdGhlIGNvbXBvbmVudCwgdXNlIHtAbGluayBpbml0UGx1Z2luQ29udGV4dH0gaW4geW91ciBwbHVnaW4ncyBgb25sb2FkKClgIGZ1bmN0aW9uLlxuICpcbiAqIEFsdGVybmF0aXZlbHksIHlvdSBjYW4gY29weSBzdHlsZXMgZnJvbSB7QGxpbmsgaHR0cHM6Ly9naXRodWIuY29tL21uYW91bW92L29ic2lkaWFuLWRldi11dGlscy9yZWxlYXNlcy9sYXRlc3QvZG93bmxvYWQvc3R5bGVzLmNzc30uXG4gKlxuICogQHR5cGVQYXJhbSBUIC0gVGhlIHR5cGUgb2YgdGhlIHZhbHVlIHRvIHNlbGVjdC5cbiAqL1xuZXhwb3J0IGNsYXNzIFR5cGVkTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDxUPiBleHRlbmRzIFZhbHVlQ29tcG9uZW50PHJlYWRvbmx5IFRbXT5cbiAgaW1wbGVtZW50cyBWYWxpZGF0b3JDb21wb25lbnQsIFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nPHJlYWRvbmx5IFRbXT4ge1xuICAvKipcbiAgICogVGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWxpZGF0b3IgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMubXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC52YWxpZGF0b3JFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgbXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDogTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudDtcbiAgcHJpdmF0ZSB2YWx1ZXM6IFRbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG11bHRpcGxlIGRyb3Bkb3duIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLm11bHRpcGxlRHJvcGRvd25Db21wb25lbnQgPSBuZXcgTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgY29udGFpbmVyRWwuYWRkQ2xhc3MoQ3NzQ2xhc3MuTGlicmFyeU5hbWUsIGdldFBsdWdpbklkKCksIENzc0NsYXNzLlR5cGVkTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudCk7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBhbiBvcHRpb24gdG8gdGhlIGRyb3Bkb3duLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgb2YgdGhlIG9wdGlvbi5cbiAgICogQHBhcmFtIGRpc3BsYXkgLSBUaGUgZGlzcGxheSB0ZXh0IG9mIHRoZSBvcHRpb24uXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9uKHZhbHVlOiBULCBkaXNwbGF5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICBsZXQgaW5kZXggPSB0aGlzLnZhbHVlcy5pbmRleE9mKHZhbHVlKTtcbiAgICBpZiAoaW5kZXggPT09IC0xKSB7XG4gICAgICB0aGlzLnZhbHVlcy5wdXNoKHZhbHVlKTtcbiAgICAgIGluZGV4ID0gdGhpcy52YWx1ZXMubGVuZ3RoIC0gMTtcbiAgICB9XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LmFkZE9wdGlvbihpbmRleC50b1N0cmluZygpLCBkaXNwbGF5KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGRzIG11bHRpcGxlIG9wdGlvbnMgdG8gdGhlIGRyb3Bkb3duLlxuICAgKlxuICAgKiBAcGFyYW0gb3B0aW9ucyAtIFRoZSBvcHRpb25zIHRvIGFkZC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBhZGRPcHRpb25zKG9wdGlvbnM6IE1hcDxULCBzdHJpbmc+KTogdGhpcyB7XG4gICAgZm9yIChjb25zdCBbdmFsdWUsIGRpc3BsYXldIG9mIG9wdGlvbnMuZW50cmllcygpKSB7XG4gICAgICB0aGlzLmFkZE9wdGlvbih2YWx1ZSwgZGlzcGxheSk7XG4gICAgfVxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldFZhbHVlKCk6IHJlYWRvbmx5IFRbXSB7XG4gICAgY29uc3QgaW5kaWNlcyA9IHRoaXMubXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC5nZXRWYWx1ZSgpLm1hcCgoc3RyKSA9PiBwYXJzZUludChzdHIsIDEwKSk7XG4gICAgcmV0dXJuIGluZGljZXMubWFwKChpbmRleCkgPT4gdGhpcy52YWx1ZXNbaW5kZXhdKS5maWx0ZXIoKHZhbHVlKTogdmFsdWUgaXMgVCA9PiB2YWx1ZSAhPT0gdW5kZWZpbmVkKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogcmVhZG9ubHkgVFtdKSA9PiBQcm9taXNhYmxlPHZvaWQ+KTogdGhpcyB7XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50Lm9uQ2hhbmdlKCgpID0+IGNhbGxiYWNrKHRoaXMuZ2V0VmFsdWUoKSkpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBkaXNhYmxlZCAtIFRoZSBkaXNhYmxlZCBzdGF0ZSB0byBzZXQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy5tdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgdmFsdWUgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFZhbHVlKHZhbHVlOiByZWFkb25seSBUW10pOiB0aGlzIHtcbiAgICBjb25zdCBpbmRpY2VzID0gdmFsdWUubWFwKCh2KSA9PiB0aGlzLnZhbHVlcy5pbmRleE9mKHYpKS5maWx0ZXIoKGluZGV4KSA9PiBpbmRleCAhPT0gLTEpO1xuICAgIHRoaXMubXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC5zZXRWYWx1ZShpbmRpY2VzLm1hcCgoaW5kZXgpID0+IGluZGV4LnRvU3RyaW5nKCkpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7OztBQVFBLFNBQVMsc0JBQXNCO0FBVS9CLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsbUJBQW1CO0FBQzVCLFNBQVMsaUNBQWlDO0FBYW5DLE1BQU0sdUNBQTBDLGVBQ3lCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTlFLElBQVcsY0FBZ0M7QUFDekMsV0FBTyxLQUFLLDBCQUEwQjtBQUFBLEVBQ3hDO0FBQUEsRUFFaUI7QUFBQSxFQUNULFNBQWMsQ0FBQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9oQixZQUFZLGFBQTBCO0FBQzNDLFVBQU07QUFDTixTQUFLLDRCQUE0QixJQUFJLDBCQUEwQixXQUFXO0FBQzFFLGdCQUFZLFNBQVMsU0FBUyxhQUFhLFlBQVksR0FBRyxTQUFTLDhCQUE4QjtBQUFBLEVBQ25HO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVNPLFVBQVUsT0FBVSxTQUF1QjtBQUNoRCxRQUFJLFFBQVEsS0FBSyxPQUFPLFFBQVEsS0FBSztBQUNyQyxRQUFJLFVBQVUsSUFBSTtBQUNoQixXQUFLLE9BQU8sS0FBSyxLQUFLO0FBQ3RCLGNBQVEsS0FBSyxPQUFPLFNBQVM7QUFBQSxJQUMvQjtBQUNBLFNBQUssMEJBQTBCLFVBQVUsTUFBTSxTQUFTLEdBQUcsT0FBTztBQUNsRSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sV0FBVyxTQUErQjtBQUMvQyxlQUFXLENBQUMsT0FBTyxPQUFPLEtBQUssUUFBUSxRQUFRLEdBQUc7QUFDaEQsV0FBSyxVQUFVLE9BQU8sT0FBTztBQUFBLElBQy9CO0FBQ0EsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxXQUF5QjtBQUM5QixVQUFNLFVBQVUsS0FBSywwQkFBMEIsU0FBUyxFQUFFLElBQUksQ0FBQyxRQUFRLFNBQVMsS0FBSyxFQUFFLENBQUM7QUFDeEYsV0FBTyxRQUFRLElBQUksQ0FBQyxVQUFVLEtBQUssT0FBTyxLQUFLLENBQUMsRUFBRSxPQUFPLENBQUMsVUFBc0IsVUFBVSxNQUFTO0FBQUEsRUFDckc7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBMkQ7QUFDekUsU0FBSywwQkFBMEIsU0FBUyxNQUFNLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQztBQUN2RSxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFlBQVksVUFBeUI7QUFDbkQsVUFBTSxZQUFZLFFBQVE7QUFDMUIsU0FBSywwQkFBMEIsWUFBWSxRQUFRO0FBQ25ELFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxTQUFTLE9BQTJCO0FBQ3pDLFVBQU0sVUFBVSxNQUFNLElBQUksQ0FBQyxNQUFNLEtBQUssT0FBTyxRQUFRLENBQUMsQ0FBQyxFQUFFLE9BQU8sQ0FBQyxVQUFVLFVBQVUsRUFBRTtBQUN2RixTQUFLLDBCQUEwQixTQUFTLFFBQVEsSUFBSSxDQUFDLFVBQVUsTUFBTSxTQUFTLENBQUMsQ0FBQztBQUNoRixXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|
@@ -0,0 +1,44 @@
|
|
1
|
+
/*
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
4
|
+
*/
|
5
|
+
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
+
|
8
|
+
import { TypedTextComponent } from "./TypedTextComponent.mjs";
|
9
|
+
class TypedRangeTextComponent extends TypedTextComponent {
|
10
|
+
/**
|
11
|
+
* Sets the maximum value of the component.
|
12
|
+
*
|
13
|
+
* @param max - The maximum value.
|
14
|
+
* @returns The component.
|
15
|
+
*/
|
16
|
+
setMax(max) {
|
17
|
+
this.inputEl.max = this.valueToString(max);
|
18
|
+
return this;
|
19
|
+
}
|
20
|
+
/**
|
21
|
+
* Sets the minimum value of the component.
|
22
|
+
*
|
23
|
+
* @param min - The minimum value.
|
24
|
+
* @returns The component.
|
25
|
+
*/
|
26
|
+
setMin(min) {
|
27
|
+
this.inputEl.min = this.valueToString(min);
|
28
|
+
return this;
|
29
|
+
}
|
30
|
+
/**
|
31
|
+
* Sets the step value of the component.
|
32
|
+
*
|
33
|
+
* @param step - The step value.
|
34
|
+
* @returns The component.
|
35
|
+
*/
|
36
|
+
setStep(step) {
|
37
|
+
this.inputEl.step = step.toString();
|
38
|
+
return this;
|
39
|
+
}
|
40
|
+
}
|
41
|
+
export {
|
42
|
+
TypedRangeTextComponent
|
43
|
+
};
|
44
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVHlwZWRSYW5nZVRleHRDb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uXG4gKlxuICogQ29udGFpbnMgYSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSB0ZXh0LWJhc2VkIHZhbHVlIHdpdGggYSByYW5nZS5cbiAqL1xuXG5pbXBvcnQgeyBUeXBlZFRleHRDb21wb25lbnQgfSBmcm9tICcuL1R5cGVkVGV4dENvbXBvbmVudC50cyc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSB0ZXh0LWJhc2VkIHZhbHVlIHdpdGggYSByYW5nZS5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgdG8gc2V0LlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHlwZWRSYW5nZVRleHRDb21wb25lbnQ8VD4gZXh0ZW5kcyBUeXBlZFRleHRDb21wb25lbnQ8VD4ge1xuICAvKipcbiAgICogU2V0cyB0aGUgbWF4aW11bSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gbWF4IC0gVGhlIG1heGltdW0gdmFsdWUuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgc2V0TWF4KG1heDogVCk6IHRoaXMge1xuICAgIHRoaXMuaW5wdXRFbC5tYXggPSB0aGlzLnZhbHVlVG9TdHJpbmcobWF4KTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBtaW5pbXVtIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBtaW4gLSBUaGUgbWluaW11bSB2YWx1ZS5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRNaW4obWluOiBUKTogdGhpcyB7XG4gICAgdGhpcy5pbnB1dEVsLm1pbiA9IHRoaXMudmFsdWVUb1N0cmluZyhtaW4pO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHN0ZXAgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHN0ZXAgLSBUaGUgc3RlcCB2YWx1ZS5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRTdGVwKHN0ZXA6IG51bWJlcik6IHRoaXMge1xuICAgIHRoaXMuaW5wdXRFbC5zdGVwID0gc3RlcC50b1N0cmluZygpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7O0FBTUEsU0FBUywwQkFBMEI7QUFPNUIsTUFBZSxnQ0FBbUMsbUJBQXNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPdEUsT0FBTyxLQUFjO0FBQzFCLFNBQUssUUFBUSxNQUFNLEtBQUssY0FBYyxHQUFHO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxPQUFPLEtBQWM7QUFDMUIsU0FBSyxRQUFRLE1BQU0sS0FBSyxjQUFjLEdBQUc7QUFDekMsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFFBQVEsTUFBb0I7QUFDakMsU0FBSyxRQUFRLE9BQU8sS0FBSyxTQUFTO0FBQ2xDLFdBQU87QUFBQSxFQUNUO0FBQ0Y7IiwKICAibmFtZXMiOiBbXQp9Cg==
|
@@ -5,11 +5,11 @@
|
|
5
5
|
*/
|
6
6
|
import type { Promisable } from 'type-fest';
|
7
7
|
import { ValueComponent } from 'obsidian';
|
8
|
-
import type { ValidatorElement } from '
|
8
|
+
import type { ValidatorElement } from '../../../HTMLElement.mjs';
|
9
9
|
import type { TextBasedComponent } from './TextBasedComponent.mjs';
|
10
10
|
import type { ValidatorComponent } from './ValidatorComponent.mjs';
|
11
11
|
import type { ValueComponentWithChangeTracking } from './ValueComponentWithChangeTracking.mjs';
|
12
|
-
import { CssClass } from '
|
12
|
+
import { CssClass } from '../../../CssClass.mjs';
|
13
13
|
/**
|
14
14
|
* A component that displays and edits a text-based value.
|
15
15
|
*
|
@@ -0,0 +1,134 @@
|
|
1
|
+
/*
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
4
|
+
*/
|
5
|
+
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
+
|
8
|
+
import {
|
9
|
+
TextComponent,
|
10
|
+
ValueComponent
|
11
|
+
} from "obsidian";
|
12
|
+
import { CssClass } from "../../../CssClass.mjs";
|
13
|
+
import { getPluginId } from "../../Plugin/PluginId.mjs";
|
14
|
+
class TypedTextComponent extends ValueComponent {
|
15
|
+
/**
|
16
|
+
* The input element of the component.
|
17
|
+
*/
|
18
|
+
inputEl;
|
19
|
+
/**
|
20
|
+
* The validator element of the component.
|
21
|
+
*
|
22
|
+
* @returns The validator element.
|
23
|
+
*/
|
24
|
+
get validatorEl() {
|
25
|
+
return this.inputEl;
|
26
|
+
}
|
27
|
+
textComponent;
|
28
|
+
/**
|
29
|
+
* Creates a new typed text component.
|
30
|
+
*
|
31
|
+
* @param containerEl - The container element of the component.
|
32
|
+
* @param type - The type of the input element.
|
33
|
+
* @param cssClass - The CSS class of the component.
|
34
|
+
*/
|
35
|
+
constructor(containerEl, type, cssClass) {
|
36
|
+
super();
|
37
|
+
this.textComponent = new TextComponent(containerEl);
|
38
|
+
this.inputEl = this.textComponent.inputEl;
|
39
|
+
this.inputEl.type = type;
|
40
|
+
containerEl.addClass(CssClass.LibraryName, getPluginId(), cssClass);
|
41
|
+
}
|
42
|
+
/**
|
43
|
+
* Empties the component.
|
44
|
+
*/
|
45
|
+
empty() {
|
46
|
+
this.textComponent.setValue("");
|
47
|
+
}
|
48
|
+
/**
|
49
|
+
* Gets the value of the component.
|
50
|
+
*
|
51
|
+
* @returns The value of the component.
|
52
|
+
*/
|
53
|
+
getValue() {
|
54
|
+
return this.valueFromString(this.textComponent.getValue());
|
55
|
+
}
|
56
|
+
/**
|
57
|
+
* Checks if the component is empty.
|
58
|
+
*
|
59
|
+
* @returns `true` if the component is empty, `false` otherwise.
|
60
|
+
*/
|
61
|
+
isEmpty() {
|
62
|
+
return this.textComponent.getValue() === "";
|
63
|
+
}
|
64
|
+
/**
|
65
|
+
* Sets the callback function to be called when the component is changed.
|
66
|
+
*
|
67
|
+
* @param callback - The callback function to be called when the component is changed.
|
68
|
+
* @returns The component.
|
69
|
+
*/
|
70
|
+
onChange(callback) {
|
71
|
+
this.textComponent.onChange(() => callback(this.getValue()));
|
72
|
+
return this;
|
73
|
+
}
|
74
|
+
/**
|
75
|
+
* Called when the component is changed.
|
76
|
+
*/
|
77
|
+
onChanged() {
|
78
|
+
this.textComponent.onChanged();
|
79
|
+
}
|
80
|
+
/**
|
81
|
+
* Sets the disabled state of the component.
|
82
|
+
*
|
83
|
+
* @param disabled - Whether the component is disabled.
|
84
|
+
* @returns The component.
|
85
|
+
*/
|
86
|
+
setDisabled(disabled) {
|
87
|
+
super.setDisabled(disabled);
|
88
|
+
this.textComponent.setDisabled(disabled);
|
89
|
+
return this;
|
90
|
+
}
|
91
|
+
/**
|
92
|
+
* Sets the placeholder of the component.
|
93
|
+
*
|
94
|
+
* @param placeholder - The placeholder to set.
|
95
|
+
* @returns The component.
|
96
|
+
*/
|
97
|
+
setPlaceholder(placeholder) {
|
98
|
+
this.textComponent.setPlaceholder(placeholder);
|
99
|
+
return this;
|
100
|
+
}
|
101
|
+
/**
|
102
|
+
* Sets the placeholder value of the component.
|
103
|
+
*
|
104
|
+
* @param placeholderValue - The placeholder value to set.
|
105
|
+
* @returns The component.
|
106
|
+
*/
|
107
|
+
setPlaceholderValue(placeholderValue) {
|
108
|
+
this.setPlaceholder(this.valueToString(placeholderValue));
|
109
|
+
return this;
|
110
|
+
}
|
111
|
+
/**
|
112
|
+
* Sets the value of the component.
|
113
|
+
*
|
114
|
+
* @param value - The value to set.
|
115
|
+
* @returns The component.
|
116
|
+
*/
|
117
|
+
setValue(value) {
|
118
|
+
this.textComponent.setValue(this.valueToString(value));
|
119
|
+
return this;
|
120
|
+
}
|
121
|
+
/**
|
122
|
+
* Converts a value to a string.
|
123
|
+
*
|
124
|
+
* @param value - The value to convert.
|
125
|
+
* @returns The string.
|
126
|
+
*/
|
127
|
+
valueToString(value) {
|
128
|
+
return String(value);
|
129
|
+
}
|
130
|
+
}
|
131
|
+
export {
|
132
|
+
TypedTextComponent
|
133
|
+
};
|
134
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVHlwZWRUZXh0Q29tcG9uZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGEgdGV4dC1iYXNlZCB2YWx1ZS5cbiAqL1xuXG5pbXBvcnQgdHlwZSB7IFByb21pc2FibGUgfSBmcm9tICd0eXBlLWZlc3QnO1xuXG5pbXBvcnQge1xuICBUZXh0Q29tcG9uZW50LFxuICBWYWx1ZUNvbXBvbmVudFxufSBmcm9tICdvYnNpZGlhbic7XG5cbmltcG9ydCB0eXBlIHsgVmFsaWRhdG9yRWxlbWVudCB9IGZyb20gJy4uLy4uLy4uL0hUTUxFbGVtZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVGV4dEJhc2VkQ29tcG9uZW50IH0gZnJvbSAnLi9UZXh0QmFzZWRDb21wb25lbnQudHMnO1xuaW1wb3J0IHR5cGUgeyBWYWxpZGF0b3JDb21wb25lbnQgfSBmcm9tICcuL1ZhbGlkYXRvckNvbXBvbmVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nIH0gZnJvbSAnLi9WYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZy50cyc7XG5cbmltcG9ydCB7IENzc0NsYXNzIH0gZnJvbSAnLi4vLi4vLi4vQ3NzQ2xhc3MudHMnO1xuaW1wb3J0IHsgZ2V0UGx1Z2luSWQgfSBmcm9tICcuLi8uLi9QbHVnaW4vUGx1Z2luSWQudHMnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGEgdGV4dC1iYXNlZCB2YWx1ZS5cbiAqXG4gKiBAdHlwZVBhcmFtIFQgLSBUaGUgdHlwZSBvZiB0aGUgdmFsdWUgdG8gc2V0LlxuICovXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHlwZWRUZXh0Q29tcG9uZW50PFQ+IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8VD5cbiAgaW1wbGVtZW50cyBUZXh0QmFzZWRDb21wb25lbnQ8VD4sIFZhbGlkYXRvckNvbXBvbmVudCwgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmc8VD4ge1xuICAvKipcbiAgICogVGhlIGlucHV0IGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBpbnB1dEVsOiBIVE1MSW5wdXRFbGVtZW50O1xuICAvKipcbiAgICogVGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWxpZGF0b3IgZWxlbWVudC5cbiAgICovXG4gIHB1YmxpYyBnZXQgdmFsaWRhdG9yRWwoKTogVmFsaWRhdG9yRWxlbWVudCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbDtcbiAgfVxuXG4gIHByaXZhdGUgcmVhZG9ubHkgdGV4dENvbXBvbmVudDogVGV4dENvbXBvbmVudDtcblxuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyB0eXBlZCB0ZXh0IGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqIEBwYXJhbSB0eXBlIC0gVGhlIHR5cGUgb2YgdGhlIGlucHV0IGVsZW1lbnQuXG4gICAqIEBwYXJhbSBjc3NDbGFzcyAtIFRoZSBDU1MgY2xhc3Mgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQsIHR5cGU6IHN0cmluZywgY3NzQ2xhc3M6IENzc0NsYXNzKSB7XG4gICAgc3VwZXIoKTtcbiAgICB0aGlzLnRleHRDb21wb25lbnQgPSBuZXcgVGV4dENvbXBvbmVudChjb250YWluZXJFbCk7XG4gICAgdGhpcy5pbnB1dEVsID0gdGhpcy50ZXh0Q29tcG9uZW50LmlucHV0RWw7XG4gICAgdGhpcy5pbnB1dEVsLnR5cGUgPSB0eXBlO1xuICAgIGNvbnRhaW5lckVsLmFkZENsYXNzKENzc0NsYXNzLkxpYnJhcnlOYW1lLCBnZXRQbHVnaW5JZCgpLCBjc3NDbGFzcyk7XG4gIH1cblxuICAvKipcbiAgICogRW1wdGllcyB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGVtcHR5KCk6IHZvaWQge1xuICAgIHRoaXMudGV4dENvbXBvbmVudC5zZXRWYWx1ZSgnJyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHJldHVybnMgVGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgZ2V0VmFsdWUoKTogVCB7XG4gICAgcmV0dXJuIHRoaXMudmFsdWVGcm9tU3RyaW5nKHRoaXMudGV4dENvbXBvbmVudC5nZXRWYWx1ZSgpKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDaGVja3MgaWYgdGhlIGNvbXBvbmVudCBpcyBlbXB0eS5cbiAgICpcbiAgICogQHJldHVybnMgYHRydWVgIGlmIHRoZSBjb21wb25lbnQgaXMgZW1wdHksIGBmYWxzZWAgb3RoZXJ3aXNlLlxuICAgKi9cbiAgcHVibGljIGlzRW1wdHkoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMudGV4dENvbXBvbmVudC5nZXRWYWx1ZSgpID09PSAnJztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogVCkgPT4gUHJvbWlzYWJsZTx2b2lkPik6IHRoaXMge1xuICAgIHRoaXMudGV4dENvbXBvbmVudC5vbkNoYW5nZSgoKSA9PiBjYWxsYmFjayh0aGlzLmdldFZhbHVlKCkpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2VkKCk6IHZvaWQge1xuICAgIHRoaXMudGV4dENvbXBvbmVudC5vbkNoYW5nZWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gZGlzYWJsZWQgLSBXaGV0aGVyIHRoZSBjb21wb25lbnQgaXMgZGlzYWJsZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgc2V0RGlzYWJsZWQoZGlzYWJsZWQ6IGJvb2xlYW4pOiB0aGlzIHtcbiAgICBzdXBlci5zZXREaXNhYmxlZChkaXNhYmxlZCk7XG4gICAgdGhpcy50ZXh0Q29tcG9uZW50LnNldERpc2FibGVkKGRpc2FibGVkKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBwbGFjZWhvbGRlciBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gcGxhY2Vob2xkZXIgLSBUaGUgcGxhY2Vob2xkZXIgdG8gc2V0LlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIHNldFBsYWNlaG9sZGVyKHBsYWNlaG9sZGVyOiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLnRleHRDb21wb25lbnQuc2V0UGxhY2Vob2xkZXIocGxhY2Vob2xkZXIpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIHBsYWNlaG9sZGVyIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBwbGFjZWhvbGRlclZhbHVlIC0gVGhlIHBsYWNlaG9sZGVyIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRQbGFjZWhvbGRlclZhbHVlKHBsYWNlaG9sZGVyVmFsdWU6IFQpOiB0aGlzIHtcbiAgICB0aGlzLnNldFBsYWNlaG9sZGVyKHRoaXMudmFsdWVUb1N0cmluZyhwbGFjZWhvbGRlclZhbHVlKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBzZXRWYWx1ZSh2YWx1ZTogVCk6IHRoaXMge1xuICAgIHRoaXMudGV4dENvbXBvbmVudC5zZXRWYWx1ZSh0aGlzLnZhbHVlVG9TdHJpbmcodmFsdWUpKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhIHN0cmluZyB0byBhIHZhbHVlLlxuICAgKlxuICAgKiBAcGFyYW0gc3RyIC0gVGhlIHN0cmluZyB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgYWJzdHJhY3QgdmFsdWVGcm9tU3RyaW5nKHN0cjogc3RyaW5nKTogVDtcblxuICAvKipcbiAgICogQ29udmVydHMgYSB2YWx1ZSB0byBhIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBzdHJpbmcuXG4gICAqL1xuICBwdWJsaWMgdmFsdWVUb1N0cmluZyh2YWx1ZTogVCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFN0cmluZyh2YWx1ZSk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFRQTtBQUFBLEVBQ0U7QUFBQSxFQUNBO0FBQUEsT0FDSztBQU9QLFNBQVMsZ0JBQWdCO0FBQ3pCLFNBQVMsbUJBQW1CO0FBT3JCLE1BQWUsMkJBQThCLGVBQ3dDO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFJMUU7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNaEIsSUFBVyxjQUFnQztBQUN6QyxXQUFPLEtBQUs7QUFBQSxFQUNkO0FBQUEsRUFFaUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBU1YsWUFBWSxhQUEwQixNQUFjLFVBQW9CO0FBQzdFLFVBQU07QUFDTixTQUFLLGdCQUFnQixJQUFJLGNBQWMsV0FBVztBQUNsRCxTQUFLLFVBQVUsS0FBSyxjQUFjO0FBQ2xDLFNBQUssUUFBUSxPQUFPO0FBQ3BCLGdCQUFZLFNBQVMsU0FBUyxhQUFhLFlBQVksR0FBRyxRQUFRO0FBQUEsRUFDcEU7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUtPLFFBQWM7QUFDbkIsU0FBSyxjQUFjLFNBQVMsRUFBRTtBQUFBLEVBQ2hDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT2dCLFdBQWM7QUFDNUIsV0FBTyxLQUFLLGdCQUFnQixLQUFLLGNBQWMsU0FBUyxDQUFDO0FBQUEsRUFDM0Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPTyxVQUFtQjtBQUN4QixXQUFPLEtBQUssY0FBYyxTQUFTLE1BQU07QUFBQSxFQUMzQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxVQUFnRDtBQUM5RCxTQUFLLGNBQWMsU0FBUyxNQUFNLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQztBQUMzRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBS08sWUFBa0I7QUFDdkIsU0FBSyxjQUFjLFVBQVU7QUFBQSxFQUMvQjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLFlBQVksVUFBeUI7QUFDbkQsVUFBTSxZQUFZLFFBQVE7QUFDMUIsU0FBSyxjQUFjLFlBQVksUUFBUTtBQUN2QyxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sZUFBZSxhQUEyQjtBQUMvQyxTQUFLLGNBQWMsZUFBZSxXQUFXO0FBQzdDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRTyxvQkFBb0Isa0JBQTJCO0FBQ3BELFNBQUssZUFBZSxLQUFLLGNBQWMsZ0JBQWdCLENBQUM7QUFDeEQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixTQUFTLE9BQWdCO0FBQ3ZDLFNBQUssY0FBYyxTQUFTLEtBQUssY0FBYyxLQUFLLENBQUM7QUFDckQsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQWdCTyxjQUFjLE9BQWtCO0FBQ3JDLFdBQU8sT0FBTyxLQUFLO0FBQUEsRUFDckI7QUFDRjsiLAogICJuYW1lcyI6IFtdCn0K
|
@@ -0,0 +1,32 @@
|
|
1
|
+
/*
|
2
|
+
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
|
3
|
+
if you want to view the source, please visit the github repository of this plugin
|
4
|
+
*/
|
5
|
+
|
6
|
+
(function initEsm(){if(globalThis.process){return}const browserProcess={browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"};globalThis.process=browserProcess})();
|
7
|
+
|
8
|
+
import { CssClass } from "../../../CssClass.mjs";
|
9
|
+
import { TypedTextComponent } from "./TypedTextComponent.mjs";
|
10
|
+
class UrlComponent extends TypedTextComponent {
|
11
|
+
/**
|
12
|
+
* Creates a new Url component.
|
13
|
+
*
|
14
|
+
* @param containerEl - The container element of the component.
|
15
|
+
*/
|
16
|
+
constructor(containerEl) {
|
17
|
+
super(containerEl, "url", CssClass.UrlComponent);
|
18
|
+
}
|
19
|
+
/**
|
20
|
+
* Converts a string to an url.
|
21
|
+
*
|
22
|
+
* @param str - The string to convert.
|
23
|
+
* @returns The url.
|
24
|
+
*/
|
25
|
+
valueFromString(str) {
|
26
|
+
return str;
|
27
|
+
}
|
28
|
+
}
|
29
|
+
export {
|
30
|
+
UrlComponent
|
31
|
+
};
|
32
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvU2V0dGluZ0NvbXBvbmVudHMvVXJsQ29tcG9uZW50LnRzIl0sCiAgInNvdXJjZXNDb250ZW50IjogWyIvKipcbiAqIEBwYWNrYWdlRG9jdW1lbnRhdGlvblxuICpcbiAqIENvbnRhaW5zIGEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGFuIHVybC5cbiAqL1xuXG4vLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzXG5pbXBvcnQgdHlwZSB7IGluaXRQbHVnaW5Db250ZXh0IH0gZnJvbSAnLi4vLi4vUGx1Z2luL1BsdWdpbkNvbnRleHQudHMnO1xuLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby11bnVzZWQtdmFyc1xuaW1wb3J0IHR5cGUgeyBTZXR0aW5nRXggfSBmcm9tICcuLi8uLi9TZXR0aW5nRXgudHMnO1xuXG5pbXBvcnQgeyBDc3NDbGFzcyB9IGZyb20gJy4uLy4uLy4uL0Nzc0NsYXNzLnRzJztcbmltcG9ydCB7IFR5cGVkVGV4dENvbXBvbmVudCB9IGZyb20gJy4vVHlwZWRUZXh0Q29tcG9uZW50LnRzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhbiB1cmwuXG4gKlxuICogWW91IGNhbiBhZGQgdGhpcyBjb21wb25lbnQgdXNpbmcge0BsaW5rIFNldHRpbmdFeC5hZGRVcmx9LlxuICpcbiAqIEluIG9yZGVyIHRvIGFkZCB0aGUgc3R5bGVzIGZvciB0aGUgY29tcG9uZW50LCB1c2Uge0BsaW5rIGluaXRQbHVnaW5Db250ZXh0fSBpbiB5b3VyIHBsdWdpbidzIGBvbmxvYWQoKWAgZnVuY3Rpb24uXG4gKlxuICogQWx0ZXJuYXRpdmVseSwgeW91IGNhbiBjb3B5IHN0eWxlcyBmcm9tIHtAbGluayBodHRwczovL2dpdGh1Yi5jb20vbW5hb3Vtb3Yvb2JzaWRpYW4tZGV2LXV0aWxzL3JlbGVhc2VzL2xhdGVzdC9kb3dubG9hZC9zdHlsZXMuY3NzfS5cbiAqL1xuZXhwb3J0IGNsYXNzIFVybENvbXBvbmVudCBleHRlbmRzIFR5cGVkVGV4dENvbXBvbmVudDxzdHJpbmc+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgVXJsIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoY29udGFpbmVyRWwsICd1cmwnLCBDc3NDbGFzcy5VcmxDb21wb25lbnQpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGFuIHVybC5cbiAgICpcbiAgICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIHVybC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZUZyb21TdHJpbmcoc3RyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBzdHI7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7QUFXQSxTQUFTLGdCQUFnQjtBQUN6QixTQUFTLDBCQUEwQjtBQVc1QixNQUFNLHFCQUFxQixtQkFBMkI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNcEQsWUFBWSxhQUEwQjtBQUMzQyxVQUFNLGFBQWEsT0FBTyxTQUFTLFlBQVk7QUFBQSxFQUNqRDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGdCQUFnQixLQUFxQjtBQUNuRCxXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
|