obsidian-dev-utils 17.8.1-beta.3 → 17.8.1-beta.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/dist/lib/Library.cjs +1 -1
  2. package/dist/lib/obsidian/Components/DateComponent.cjs +3 -3
  3. package/dist/lib/obsidian/Components/DateComponent.d.ts +5 -5
  4. package/dist/lib/obsidian/Components/DateTimeComponent.cjs +76 -0
  5. package/dist/lib/obsidian/Components/DateTimeComponent.d.ts +30 -0
  6. package/dist/lib/obsidian/Components/EmailComponent.cjs +55 -0
  7. package/dist/lib/obsidian/Components/EmailComponent.d.ts +23 -0
  8. package/dist/lib/obsidian/Components/FileComponent.cjs +71 -0
  9. package/dist/lib/obsidian/Components/FileComponent.d.ts +35 -0
  10. package/dist/lib/obsidian/Components/MonthComponent.cjs +84 -0
  11. package/dist/lib/obsidian/Components/MonthComponent.d.ts +43 -0
  12. package/dist/lib/obsidian/Components/MultipleDropdownComponent.cjs +106 -0
  13. package/dist/lib/obsidian/Components/MultipleDropdownComponent.d.ts +60 -0
  14. package/dist/lib/obsidian/Components/MultipleEmailComponent.cjs +65 -0
  15. package/dist/lib/obsidian/Components/MultipleEmailComponent.d.ts +30 -0
  16. package/dist/lib/obsidian/Components/MultipleFileComponent.cjs +72 -0
  17. package/dist/lib/obsidian/Components/MultipleFileComponent.d.ts +35 -0
  18. package/dist/lib/obsidian/Components/NumberComponent.cjs +3 -12
  19. package/dist/lib/obsidian/Components/NumberComponent.d.ts +2 -9
  20. package/dist/lib/obsidian/Components/TimeComponent.cjs +55 -0
  21. package/dist/lib/obsidian/Components/TimeComponent.d.ts +23 -0
  22. package/dist/lib/obsidian/Components/TypedRangeTextComponent.cjs +68 -0
  23. package/dist/lib/obsidian/Components/TypedRangeTextComponent.d.ts +31 -0
  24. package/dist/lib/obsidian/Components/TypedTextComponent.cjs +12 -33
  25. package/dist/lib/obsidian/Components/TypedTextComponent.d.ts +2 -23
  26. package/dist/lib/obsidian/Components/UrlComponent.cjs +55 -0
  27. package/dist/lib/obsidian/Components/UrlComponent.d.ts +23 -0
  28. package/dist/lib/obsidian/Components/ValidatorComponent.cjs +30 -14
  29. package/dist/lib/obsidian/Components/ValidatorComponent.d.ts +4 -4
  30. package/dist/lib/obsidian/Components/WeekComponent.cjs +84 -0
  31. package/dist/lib/obsidian/Components/WeekComponent.d.ts +43 -0
  32. package/dist/lib/obsidian/Components/index.cjs +36 -3
  33. package/dist/lib/obsidian/Components/index.d.ts +11 -0
  34. package/dist/lib/obsidian/Modals/Alert.cjs +73 -0
  35. package/dist/lib/obsidian/Modals/Confirm.cjs +86 -0
  36. package/dist/lib/obsidian/Modals/Prompt.cjs +117 -0
  37. package/dist/lib/obsidian/Modals/SelectItem.cjs +72 -0
  38. package/dist/lib/obsidian/{Modal → Modals}/index.cjs +4 -4
  39. package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.cjs +13 -15
  40. package/dist/lib/obsidian/Plugin/PluginSettingsTabBase.d.ts +3 -3
  41. package/dist/lib/obsidian/SettingEx.cjs +172 -0
  42. package/dist/lib/obsidian/SettingEx.d.ts +116 -0
  43. package/dist/lib/obsidian/index.cjs +7 -4
  44. package/dist/lib/obsidian/index.d.ts +2 -1
  45. package/dist/lib/scripts/version.cjs +6 -3
  46. package/package.json +13 -13
  47. package/dist/lib/obsidian/Modal/Alert.cjs +0 -73
  48. package/dist/lib/obsidian/Modal/Confirm.cjs +0 -86
  49. package/dist/lib/obsidian/Modal/Prompt.cjs +0 -117
  50. package/dist/lib/obsidian/Modal/SelectItem.cjs +0 -72
  51. /package/dist/lib/obsidian/{Modal → Modals}/Alert.d.ts +0 -0
  52. /package/dist/lib/obsidian/{Modal → Modals}/Confirm.d.ts +0 -0
  53. /package/dist/lib/obsidian/{Modal → Modals}/Prompt.d.ts +0 -0
  54. /package/dist/lib/obsidian/{Modal → Modals}/SelectItem.d.ts +0 -0
  55. /package/dist/lib/obsidian/{Modal → Modals}/index.d.ts +0 -0
@@ -30,7 +30,7 @@ __export(Library_exports, {
30
30
  LIBRARY_VERSION: () => LIBRARY_VERSION
31
31
  });
32
32
  module.exports = __toCommonJS(Library_exports);
33
- const LIBRARY_VERSION = "17.8.1-beta.3";
33
+ const LIBRARY_VERSION = "17.8.1-beta.5";
34
34
  const LIBRARY_NAME = "obsidian-dev-utils";
35
35
  const LIBRARY_STYLES = ".obsidian-dev-utils {\n /* default styles */\n}\n\n.obsidian-dev-utils.alert-modal {\n /* default styles */\n}\n\n.obsidian-dev-utils.confirm-modal {\n /* default styles */\n}\n\n.obsidian-dev-utils.plugin-settings-tab {\n /* default styles */\n}\n\n.obsidian-dev-utils :invalid {\n box-shadow: 0 0 0 2px var(--text-error);\n}\n\n.obsidian-dev-utils.prompt-modal {\n /* default styles */\n}\n\n.obsidian-dev-utils.select-item-modal {\n /* default styles */\n}\n";
36
36
  // Annotate the CommonJS export names for ESM import in node:
@@ -39,9 +39,9 @@ __export(DateComponent_exports, {
39
39
  });
40
40
  module.exports = __toCommonJS(DateComponent_exports);
41
41
  var import_moment = __toESM(__extractDefault(require('moment')), 1);
42
- var import_TypedTextComponent = require('./TypedTextComponent.cjs');
42
+ var import_TypedRangeTextComponent = require('./TypedRangeTextComponent.cjs');
43
43
  const DATE_FORMAT = "YYYY-MM-DD";
44
- class DateComponent extends import_TypedTextComponent.TypedTextComponent {
44
+ class DateComponent extends import_TypedRangeTextComponent.TypedRangeTextComponent {
45
45
  /**
46
46
  * Creates a new date component.
47
47
  *
@@ -73,4 +73,4 @@ class DateComponent extends import_TypedTextComponent.TypedTextComponent {
73
73
  0 && (module.exports = {
74
74
  DateComponent
75
75
  });
76
- //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvRGF0ZUNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gTnVtYmVyQ29tcG9uZW50XG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG51bWJlci5cbiAqL1xuXG5pbXBvcnQgbW9tZW50IGZyb20gJ21vbWVudCc7XG5cbmltcG9ydCB7IFR5cGVkVGV4dENvbXBvbmVudCB9IGZyb20gJy4vVHlwZWRUZXh0Q29tcG9uZW50LnRzJztcblxuY29uc3QgREFURV9GT1JNQVQgPSAnWVlZWS1NTS1ERCc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBudW1iZXIuXG4gKi9cbmV4cG9ydCBjbGFzcyBEYXRlQ29tcG9uZW50IGV4dGVuZHMgVHlwZWRUZXh0Q29tcG9uZW50PERhdGU+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKGNvbnRhaW5lckVsLCAnZGF0ZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgZGF0ZS5cbiAgICpcbiAgICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIGRhdGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVGcm9tU3RyaW5nKHN0cjogc3RyaW5nKTogRGF0ZSB7XG4gICAgcmV0dXJuIG1vbWVudChzdHIsIERBVEVfRk9STUFUKS50b0RhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhIGRhdGUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBkYXRlIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBzdHJpbmcuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVUb1N0cmluZyh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG1vbWVudCh2YWx1ZSkuZm9ybWF0KERBVEVfRk9STUFUKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0Esb0JBQW1CO0FBRW5CLGdDQUFtQztBQUVuQyxNQUFNLGNBQWM7QUFLYixNQUFNLHNCQUFzQiw2Q0FBeUI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNbkQsWUFBWSxhQUEwQjtBQUMzQyxVQUFNLGFBQWEsTUFBTTtBQUFBLEVBQzNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZ0JBQWdCLEtBQW1CO0FBQ2pELGVBQU8sY0FBQUEsU0FBTyxLQUFLLFdBQVcsRUFBRSxPQUFPO0FBQUEsRUFDekM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixjQUFjLE9BQXFCO0FBQ2pELGVBQU8sY0FBQUEsU0FBTyxLQUFLLEVBQUUsT0FBTyxXQUFXO0FBQUEsRUFDekM7QUFDRjsiLAogICJuYW1lcyI6IFsibW9tZW50Il0KfQo=
76
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvRGF0ZUNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gRGF0ZUNvbXBvbmVudFxuICogQ29udGFpbnMgYSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBkYXRlLlxuICovXG5cbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcblxuaW1wb3J0IHsgVHlwZWRSYW5nZVRleHRDb21wb25lbnQgfSBmcm9tICcuL1R5cGVkUmFuZ2VUZXh0Q29tcG9uZW50LnRzJztcblxuY29uc3QgREFURV9GT1JNQVQgPSAnWVlZWS1NTS1ERCc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBkYXRlLlxuICovXG5leHBvcnQgY2xhc3MgRGF0ZUNvbXBvbmVudCBleHRlbmRzIFR5cGVkUmFuZ2VUZXh0Q29tcG9uZW50PERhdGU+IHtcbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgZGF0ZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEBwYXJhbSBjb250YWluZXJFbCAtIFRoZSBjb250YWluZXIgZWxlbWVudCBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGNvbnN0cnVjdG9yKGNvbnRhaW5lckVsOiBIVE1MRWxlbWVudCkge1xuICAgIHN1cGVyKGNvbnRhaW5lckVsLCAnZGF0ZScpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgZGF0ZS5cbiAgICpcbiAgICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIGRhdGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVGcm9tU3RyaW5nKHN0cjogc3RyaW5nKTogRGF0ZSB7XG4gICAgcmV0dXJuIG1vbWVudChzdHIsIERBVEVfRk9STUFUKS50b0RhdGUoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhIGRhdGUgdG8gYSBzdHJpbmcuXG4gICAqXG4gICAqIEBwYXJhbSB2YWx1ZSAtIFRoZSBkYXRlIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBzdHJpbmcuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVUb1N0cmluZyh2YWx1ZTogRGF0ZSk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG1vbWVudCh2YWx1ZSkuZm9ybWF0KERBVEVfRk9STUFUKTtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0Esb0JBQW1CO0FBRW5CLHFDQUF3QztBQUV4QyxNQUFNLGNBQWM7QUFLYixNQUFNLHNCQUFzQix1REFBOEI7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNeEQsWUFBWSxhQUEwQjtBQUMzQyxVQUFNLGFBQWEsTUFBTTtBQUFBLEVBQzNCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZ0JBQWdCLEtBQW1CO0FBQ2pELGVBQU8sY0FBQUEsU0FBTyxLQUFLLFdBQVcsRUFBRSxPQUFPO0FBQUEsRUFDekM7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFnQixjQUFjLE9BQXFCO0FBQ2pELGVBQU8sY0FBQUEsU0FBTyxLQUFLLEVBQUUsT0FBTyxXQUFXO0FBQUEsRUFDekM7QUFDRjsiLAogICJuYW1lcyI6IFsibW9tZW50Il0KfQo=
@@ -1,12 +1,12 @@
1
1
  /**
2
- * @packageDocumentation NumberComponent
3
- * Contains a component that displays and edits a number.
2
+ * @packageDocumentation DateComponent
3
+ * Contains a component that displays and edits a date.
4
4
  */
5
- import { TypedTextComponent } from './TypedTextComponent.ts';
5
+ import { TypedRangeTextComponent } from './TypedRangeTextComponent.ts';
6
6
  /**
7
- * A component that displays and edits a number.
7
+ * A component that displays and edits a date.
8
8
  */
9
- export declare class DateComponent extends TypedTextComponent<Date> {
9
+ export declare class DateComponent extends TypedRangeTextComponent<Date> {
10
10
  /**
11
11
  * Creates a new date component.
12
12
  *
@@ -0,0 +1,76 @@
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 init(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;if(!require.__isPatched){const originalRequire=require;require=Object.assign(id=>requirePatched(id,originalRequire),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault:__name(()=>extractDefault,"__extractDefault"),process:__name(()=>({browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"}),"process")};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&module.default?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id,originalRequire){const module=originalRequire(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})()
7
+
8
+ "use strict";
9
+ var __create = Object.create;
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __getProtoOf = Object.getPrototypeOf;
14
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
15
+ var __export = (target, all) => {
16
+ for (var name in all)
17
+ __defProp(target, name, { get: all[name], enumerable: true });
18
+ };
19
+ var __copyProps = (to, from, except, desc) => {
20
+ if (from && typeof from === "object" || typeof from === "function") {
21
+ for (let key of __getOwnPropNames(from))
22
+ if (!__hasOwnProp.call(to, key) && key !== except)
23
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
24
+ }
25
+ return to;
26
+ };
27
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
28
+ // If the importer is in node compatibility mode or this is not an ESM
29
+ // file that has been converted to a CommonJS file using a Babel-
30
+ // compatible transform (i.e. "__esModule" has not been set), then set
31
+ // "default" to the CommonJS "module.exports" for node compatibility.
32
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
33
+ mod
34
+ ));
35
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
36
+ var DateTimeComponent_exports = {};
37
+ __export(DateTimeComponent_exports, {
38
+ DateTimeComponent: () => DateTimeComponent
39
+ });
40
+ module.exports = __toCommonJS(DateTimeComponent_exports);
41
+ var import_moment = __toESM(__extractDefault(require('moment')), 1);
42
+ var import_TypedRangeTextComponent = require('./TypedRangeTextComponent.cjs');
43
+ const DATE_TIME_FORMAT = "YYYY-MM-DDTHH:mm";
44
+ class DateTimeComponent extends import_TypedRangeTextComponent.TypedRangeTextComponent {
45
+ /**
46
+ * Creates a new date and time component.
47
+ *
48
+ * @param containerEl - The container element of the component.
49
+ */
50
+ constructor(containerEl) {
51
+ super(containerEl, "datetime-local");
52
+ }
53
+ /**
54
+ * Converts a string to a date.
55
+ *
56
+ * @param str - The string to convert.
57
+ * @returns The date.
58
+ */
59
+ valueFromString(str) {
60
+ return (0, import_moment.default)(str, DATE_TIME_FORMAT).toDate();
61
+ }
62
+ /**
63
+ * Converts a date to a string.
64
+ *
65
+ * @param value - The date to convert.
66
+ * @returns The string.
67
+ */
68
+ valueToString(value) {
69
+ return (0, import_moment.default)(value).format(DATE_TIME_FORMAT);
70
+ }
71
+ }
72
+ // Annotate the CommonJS export names for ESM import in node:
73
+ 0 && (module.exports = {
74
+ DateTimeComponent
75
+ });
76
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvRGF0ZVRpbWVDb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIERhdGVUaW1lQ29tcG9uZW50XG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIGRhdGUgYW5kIHRpbWUuXG4gKi9cblxuaW1wb3J0IG1vbWVudCBmcm9tICdtb21lbnQnO1xuXG5pbXBvcnQgeyBUeXBlZFJhbmdlVGV4dENvbXBvbmVudCB9IGZyb20gJy4vVHlwZWRSYW5nZVRleHRDb21wb25lbnQudHMnO1xuXG5jb25zdCBEQVRFX1RJTUVfRk9STUFUID0gJ1lZWVktTU0tRERUSEg6bW0nO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGEgZGF0ZSBhbmQgdGltZS5cbiAqL1xuZXhwb3J0IGNsYXNzIERhdGVUaW1lQ29tcG9uZW50IGV4dGVuZHMgVHlwZWRSYW5nZVRleHRDb21wb25lbnQ8RGF0ZT4ge1xuICAvKipcbiAgICogQ3JlYXRlcyBhIG5ldyBkYXRlIGFuZCB0aW1lIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoY29udGFpbmVyRWwsICdkYXRldGltZS1sb2NhbCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgZGF0ZS5cbiAgICpcbiAgICogQHBhcmFtIHN0ciAtIFRoZSBzdHJpbmcgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIGRhdGUuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVGcm9tU3RyaW5nKHN0cjogc3RyaW5nKTogRGF0ZSB7XG4gICAgcmV0dXJuIG1vbWVudChzdHIsIERBVEVfVElNRV9GT1JNQVQpLnRvRGF0ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgZGF0ZSB0byBhIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIGRhdGUgdG8gY29udmVydC5cbiAgICogQHJldHVybnMgVGhlIHN0cmluZy5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZVRvU3RyaW5nKHZhbHVlOiBEYXRlKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbW9tZW50KHZhbHVlKS5mb3JtYXQoREFURV9USU1FX0ZPUk1BVCk7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUtBLG9CQUFtQjtBQUVuQixxQ0FBd0M7QUFFeEMsTUFBTSxtQkFBbUI7QUFLbEIsTUFBTSwwQkFBMEIsdURBQThCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTTVELFlBQVksYUFBMEI7QUFDM0MsVUFBTSxhQUFhLGdCQUFnQjtBQUFBLEVBQ3JDO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZ0JBQWdCLEtBQW1CO0FBQ2pELGVBQU8sY0FBQUEsU0FBTyxLQUFLLGdCQUFnQixFQUFFLE9BQU87QUFBQSxFQUM5QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGNBQWMsT0FBcUI7QUFDakQsZUFBTyxjQUFBQSxTQUFPLEtBQUssRUFBRSxPQUFPLGdCQUFnQjtBQUFBLEVBQzlDO0FBQ0Y7IiwKICAibmFtZXMiOiBbIm1vbWVudCJdCn0K
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @packageDocumentation DateTimeComponent
3
+ * Contains a component that displays and edits a date and time.
4
+ */
5
+ import { TypedRangeTextComponent } from './TypedRangeTextComponent.ts';
6
+ /**
7
+ * A component that displays and edits a date and time.
8
+ */
9
+ export declare class DateTimeComponent extends TypedRangeTextComponent<Date> {
10
+ /**
11
+ * Creates a new date and time component.
12
+ *
13
+ * @param containerEl - The container element of the component.
14
+ */
15
+ constructor(containerEl: HTMLElement);
16
+ /**
17
+ * Converts a string to a date.
18
+ *
19
+ * @param str - The string to convert.
20
+ * @returns The date.
21
+ */
22
+ valueFromString(str: string): Date;
23
+ /**
24
+ * Converts a date to a string.
25
+ *
26
+ * @param value - The date to convert.
27
+ * @returns The string.
28
+ */
29
+ valueToString(value: Date): string;
30
+ }
@@ -0,0 +1,55 @@
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 init(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;if(!require.__isPatched){const originalRequire=require;require=Object.assign(id=>requirePatched(id,originalRequire),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault:__name(()=>extractDefault,"__extractDefault"),process:__name(()=>({browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"}),"process")};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&module.default?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id,originalRequire){const module=originalRequire(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})()
7
+
8
+ "use strict";
9
+ var __defProp = Object.defineProperty;
10
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11
+ var __getOwnPropNames = Object.getOwnPropertyNames;
12
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13
+ var __export = (target, all) => {
14
+ for (var name in all)
15
+ __defProp(target, name, { get: all[name], enumerable: true });
16
+ };
17
+ var __copyProps = (to, from, except, desc) => {
18
+ if (from && typeof from === "object" || typeof from === "function") {
19
+ for (let key of __getOwnPropNames(from))
20
+ if (!__hasOwnProp.call(to, key) && key !== except)
21
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
22
+ }
23
+ return to;
24
+ };
25
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
26
+ var EmailComponent_exports = {};
27
+ __export(EmailComponent_exports, {
28
+ EmailComponent: () => EmailComponent
29
+ });
30
+ module.exports = __toCommonJS(EmailComponent_exports);
31
+ var import_TypedTextComponent = require('./TypedTextComponent.cjs');
32
+ class EmailComponent extends import_TypedTextComponent.TypedTextComponent {
33
+ /**
34
+ * Creates a new email component.
35
+ *
36
+ * @param containerEl - The container element of the component.
37
+ */
38
+ constructor(containerEl) {
39
+ super(containerEl, "email");
40
+ }
41
+ /**
42
+ * Converts a string to an email address.
43
+ *
44
+ * @param str - The string to convert.
45
+ * @returns The email address.
46
+ */
47
+ valueFromString(str) {
48
+ return str;
49
+ }
50
+ }
51
+ // Annotate the CommonJS export names for ESM import in node:
52
+ 0 && (module.exports = {
53
+ EmailComponent
54
+ });
55
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvRW1haWxDb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIEVtYWlsQ29tcG9uZW50XG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhbiBlbWFpbCBhZGRyZXNzLlxuICovXG5cbmltcG9ydCB7IFR5cGVkVGV4dENvbXBvbmVudCB9IGZyb20gJy4vVHlwZWRUZXh0Q29tcG9uZW50LnRzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhbiBlbWFpbCBhZGRyZXNzLlxuICovXG5leHBvcnQgY2xhc3MgRW1haWxDb21wb25lbnQgZXh0ZW5kcyBUeXBlZFRleHRDb21wb25lbnQ8c3RyaW5nPiB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGVtYWlsIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoY29udGFpbmVyRWwsICdlbWFpbCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGFuIGVtYWlsIGFkZHJlc3MuXG4gICAqXG4gICAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBlbWFpbCBhZGRyZXNzLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHZhbHVlRnJvbVN0cmluZyhzdHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHN0cjtcbiAgfVxufVxuIl0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQSxnQ0FBbUM7QUFLNUIsTUFBTSx1QkFBdUIsNkNBQTJCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBTXRELFlBQVksYUFBMEI7QUFDM0MsVUFBTSxhQUFhLE9BQU87QUFBQSxFQUM1QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGdCQUFnQixLQUFxQjtBQUNuRCxXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,23 @@
1
+ /**
2
+ * @packageDocumentation EmailComponent
3
+ * Contains a component that displays and edits an email address.
4
+ */
5
+ import { TypedTextComponent } from './TypedTextComponent.ts';
6
+ /**
7
+ * A component that displays and edits an email address.
8
+ */
9
+ export declare class EmailComponent extends TypedTextComponent<string> {
10
+ /**
11
+ * Creates a new email component.
12
+ *
13
+ * @param containerEl - The container element of the component.
14
+ */
15
+ constructor(containerEl: HTMLElement);
16
+ /**
17
+ * Converts a string to an email address.
18
+ *
19
+ * @param str - The string to convert.
20
+ * @returns The email address.
21
+ */
22
+ valueFromString(str: string): string;
23
+ }
@@ -0,0 +1,71 @@
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 init(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;if(!require.__isPatched){const originalRequire=require;require=Object.assign(id=>requirePatched(id,originalRequire),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault:__name(()=>extractDefault,"__extractDefault"),process:__name(()=>({browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"}),"process")};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&module.default?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id,originalRequire){const module=originalRequire(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})()
7
+
8
+ "use strict";
9
+ var __defProp = Object.defineProperty;
10
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11
+ var __getOwnPropNames = Object.getOwnPropertyNames;
12
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13
+ var __export = (target, all) => {
14
+ for (var name in all)
15
+ __defProp(target, name, { get: all[name], enumerable: true });
16
+ };
17
+ var __copyProps = (to, from, except, desc) => {
18
+ if (from && typeof from === "object" || typeof from === "function") {
19
+ for (let key of __getOwnPropNames(from))
20
+ if (!__hasOwnProp.call(to, key) && key !== except)
21
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
22
+ }
23
+ return to;
24
+ };
25
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
26
+ var FileComponent_exports = {};
27
+ __export(FileComponent_exports, {
28
+ FileComponent: () => FileComponent
29
+ });
30
+ module.exports = __toCommonJS(FileComponent_exports);
31
+ var import_TypedTextComponent = require('./TypedTextComponent.cjs');
32
+ class FileComponent extends import_TypedTextComponent.TypedTextComponent {
33
+ /**
34
+ * Creates a new file component.
35
+ *
36
+ * @param containerEl - The container element of the component.
37
+ */
38
+ constructor(containerEl) {
39
+ super(containerEl, "file");
40
+ }
41
+ /**
42
+ * Gets the value of the component.
43
+ *
44
+ * @returns The value of the component.
45
+ */
46
+ getValue() {
47
+ return this.inputEl.files?.[0] ?? null;
48
+ }
49
+ /**
50
+ * Converts a string to a file.
51
+ *
52
+ * @returns The file.
53
+ */
54
+ valueFromString() {
55
+ return this.getValue();
56
+ }
57
+ /**
58
+ * Converts a file to a string.
59
+ *
60
+ * @param value - The file to convert.
61
+ * @returns The string.
62
+ */
63
+ valueToString(value) {
64
+ return value?.name ?? "";
65
+ }
66
+ }
67
+ // Annotate the CommonJS export names for ESM import in node:
68
+ 0 && (module.exports = {
69
+ FileComponent
70
+ });
71
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvRmlsZUNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gRmlsZUNvbXBvbmVudFxuICogQ29udGFpbnMgYSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBmaWxlLlxuICovXG5cbmltcG9ydCB7IFR5cGVkVGV4dENvbXBvbmVudCB9IGZyb20gJy4vVHlwZWRUZXh0Q29tcG9uZW50LnRzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIGZpbGUuXG4gKi9cbmV4cG9ydCBjbGFzcyBGaWxlQ29tcG9uZW50IGV4dGVuZHMgVHlwZWRUZXh0Q29tcG9uZW50PEZpbGUgfCBudWxsPiB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IGZpbGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcihjb250YWluZXJFbCwgJ2ZpbGUnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXRzIHRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSBnZXRWYWx1ZSgpOiBGaWxlIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuaW5wdXRFbC5maWxlcz8uWzBdID8/IG51bGw7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYSBzdHJpbmcgdG8gYSBmaWxlLlxuICAgKlxuICAgKiBAcmV0dXJucyBUaGUgZmlsZS5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZUZyb21TdHJpbmcoKTogRmlsZSB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLmdldFZhbHVlKCk7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYSBmaWxlIHRvIGEgc3RyaW5nLlxuICAgKlxuICAgKiBAcGFyYW0gdmFsdWUgLSBUaGUgZmlsZSB0byBjb252ZXJ0LlxuICAgKiBAcmV0dXJucyBUaGUgc3RyaW5nLlxuICAgKi9cbiAgcHVibGljIG92ZXJyaWRlIHZhbHVlVG9TdHJpbmcodmFsdWU6IEZpbGUgfCBudWxsKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdmFsdWU/Lm5hbWUgPz8gJyc7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0EsZ0NBQW1DO0FBSzVCLE1BQU0sc0JBQXNCLDZDQUFnQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU0xRCxZQUFZLGFBQTBCO0FBQzNDLFVBQU0sYUFBYSxNQUFNO0FBQUEsRUFDM0I7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFPZ0IsV0FBd0I7QUFDdEMsV0FBTyxLQUFLLFFBQVEsUUFBUSxDQUFDLEtBQUs7QUFBQSxFQUNwQztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQU9nQixrQkFBK0I7QUFDN0MsV0FBTyxLQUFLLFNBQVM7QUFBQSxFQUN2QjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGNBQWMsT0FBNEI7QUFDeEQsV0FBTyxPQUFPLFFBQVE7QUFBQSxFQUN4QjtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=
@@ -0,0 +1,35 @@
1
+ /**
2
+ * @packageDocumentation FileComponent
3
+ * Contains a component that displays and edits a file.
4
+ */
5
+ import { TypedTextComponent } from './TypedTextComponent.ts';
6
+ /**
7
+ * A component that displays and edits a file.
8
+ */
9
+ export declare class FileComponent extends TypedTextComponent<File | null> {
10
+ /**
11
+ * Creates a new file component.
12
+ *
13
+ * @param containerEl - The container element of the component.
14
+ */
15
+ constructor(containerEl: HTMLElement);
16
+ /**
17
+ * Gets the value of the component.
18
+ *
19
+ * @returns The value of the component.
20
+ */
21
+ getValue(): File | null;
22
+ /**
23
+ * Converts a string to a file.
24
+ *
25
+ * @returns The file.
26
+ */
27
+ valueFromString(): File | null;
28
+ /**
29
+ * Converts a file to a string.
30
+ *
31
+ * @param value - The file to convert.
32
+ * @returns The string.
33
+ */
34
+ valueToString(value: File | null): string;
35
+ }
@@ -0,0 +1,84 @@
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 init(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;if(!require.__isPatched){const originalRequire=require;require=Object.assign(id=>requirePatched(id,originalRequire),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault:__name(()=>extractDefault,"__extractDefault"),process:__name(()=>({browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"}),"process")};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&module.default?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id,originalRequire){const module=originalRequire(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})()
7
+
8
+ "use strict";
9
+ var __create = Object.create;
10
+ var __defProp = Object.defineProperty;
11
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
12
+ var __getOwnPropNames = Object.getOwnPropertyNames;
13
+ var __getProtoOf = Object.getPrototypeOf;
14
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
15
+ var __export = (target, all) => {
16
+ for (var name in all)
17
+ __defProp(target, name, { get: all[name], enumerable: true });
18
+ };
19
+ var __copyProps = (to, from, except, desc) => {
20
+ if (from && typeof from === "object" || typeof from === "function") {
21
+ for (let key of __getOwnPropNames(from))
22
+ if (!__hasOwnProp.call(to, key) && key !== except)
23
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
24
+ }
25
+ return to;
26
+ };
27
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
28
+ // If the importer is in node compatibility mode or this is not an ESM
29
+ // file that has been converted to a CommonJS file using a Babel-
30
+ // compatible transform (i.e. "__esModule" has not been set), then set
31
+ // "default" to the CommonJS "module.exports" for node compatibility.
32
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
33
+ mod
34
+ ));
35
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
36
+ var MonthComponent_exports = {};
37
+ __export(MonthComponent_exports, {
38
+ MonthComponent: () => MonthComponent
39
+ });
40
+ module.exports = __toCommonJS(MonthComponent_exports);
41
+ var import_moment = __toESM(__extractDefault(require('moment')), 1);
42
+ var import_TypedRangeTextComponent = require('./TypedRangeTextComponent.cjs');
43
+ const DATE_FORMAT = "YYYY-MM";
44
+ class MonthComponent extends import_TypedRangeTextComponent.TypedRangeTextComponent {
45
+ /**
46
+ * Creates a new month component.
47
+ *
48
+ * @param containerEl - The container element of the component.
49
+ */
50
+ constructor(containerEl) {
51
+ super(containerEl, "month");
52
+ }
53
+ /**
54
+ * Converts a string to a month.
55
+ *
56
+ * @param str - The string to convert.
57
+ * @returns The month.
58
+ */
59
+ valueFromString(str) {
60
+ const parsed = (0, import_moment.default)(str, DATE_FORMAT);
61
+ if (!parsed.isValid()) {
62
+ throw new Error("Invalid month");
63
+ }
64
+ return {
65
+ month: parsed.month(),
66
+ year: parsed.year()
67
+ };
68
+ }
69
+ /**
70
+ * Converts a month to a string.
71
+ *
72
+ * @param value - The month to convert.
73
+ * @returns The string.
74
+ */
75
+ valueToString(value) {
76
+ const date = (0, import_moment.default)().year(value.year).month(value.month);
77
+ return date.format(DATE_FORMAT);
78
+ }
79
+ }
80
+ // Annotate the CommonJS export names for ESM import in node:
81
+ 0 && (module.exports = {
82
+ MonthComponent
83
+ });
84
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvTW9udGhDb21wb25lbnQudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbIi8qKlxuICogQHBhY2thZ2VEb2N1bWVudGF0aW9uIE1vbnRoQ29tcG9uZW50XG4gKiBDb250YWlucyBhIGNvbXBvbmVudCB0aGF0IGRpc3BsYXlzIGFuZCBlZGl0cyBhIG1vbnRoLlxuICovXG5cbmltcG9ydCBtb21lbnQgZnJvbSAnbW9tZW50JztcblxuaW1wb3J0IHsgVHlwZWRSYW5nZVRleHRDb21wb25lbnQgfSBmcm9tICcuL1R5cGVkUmFuZ2VUZXh0Q29tcG9uZW50LnRzJztcblxuY29uc3QgREFURV9GT1JNQVQgPSAnWVlZWS1NTSc7XG5cbi8qKlxuICogQW4gSVNPIDg2MDEgbW9udGguXG4gKi9cbmV4cG9ydCBpbnRlcmZhY2UgSXNvTW9udGgge1xuICAvKipcbiAgICogVGhlIG1vbnRoLlxuICAgKi9cbiAgbW9udGg6IG51bWJlcjtcbiAgLyoqXG4gICAqIFRoZSB5ZWFyLlxuICAgKi9cbiAgeWVhcjogbnVtYmVyO1xufVxuXG4vKipcbiAqIEEgY29tcG9uZW50IHRoYXQgZGlzcGxheXMgYW5kIGVkaXRzIGEgbW9udGguXG4gKi9cbmV4cG9ydCBjbGFzcyBNb250aENvbXBvbmVudCBleHRlbmRzIFR5cGVkUmFuZ2VUZXh0Q29tcG9uZW50PElzb01vbnRoPiB7XG4gIC8qKlxuICAgKiBDcmVhdGVzIGEgbmV3IG1vbnRoIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIGNvbnRhaW5lckVsIC0gVGhlIGNvbnRhaW5lciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgY29uc3RydWN0b3IoY29udGFpbmVyRWw6IEhUTUxFbGVtZW50KSB7XG4gICAgc3VwZXIoY29udGFpbmVyRWwsICdtb250aCcpO1xuICB9XG5cbiAgLyoqXG4gICAqIENvbnZlcnRzIGEgc3RyaW5nIHRvIGEgbW9udGguXG4gICAqXG4gICAqIEBwYXJhbSBzdHIgLSBUaGUgc3RyaW5nIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBtb250aC5cbiAgICovXG4gIHB1YmxpYyBvdmVycmlkZSB2YWx1ZUZyb21TdHJpbmcoc3RyOiBzdHJpbmcpOiBJc29Nb250aCB7XG4gICAgY29uc3QgcGFyc2VkID0gbW9tZW50KHN0ciwgREFURV9GT1JNQVQpO1xuXG4gICAgaWYgKCFwYXJzZWQuaXNWYWxpZCgpKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgbW9udGgnKTtcbiAgICB9XG5cbiAgICByZXR1cm4ge1xuICAgICAgbW9udGg6IHBhcnNlZC5tb250aCgpLFxuICAgICAgeWVhcjogcGFyc2VkLnllYXIoKVxuICAgIH07XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYSBtb250aCB0byBhIHN0cmluZy5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIG1vbnRoIHRvIGNvbnZlcnQuXG4gICAqIEByZXR1cm5zIFRoZSBzdHJpbmcuXG4gICAqL1xuICBwdWJsaWMgb3ZlcnJpZGUgdmFsdWVUb1N0cmluZyh2YWx1ZTogSXNvTW9udGgpOiBzdHJpbmcge1xuICAgIGNvbnN0IGRhdGUgPSBtb21lbnQoKS55ZWFyKHZhbHVlLnllYXIpLm1vbnRoKHZhbHVlLm1vbnRoKTtcbiAgICByZXR1cm4gZGF0ZS5mb3JtYXQoREFURV9GT1JNQVQpO1xuICB9XG59XG4iXSwKICAibWFwcGluZ3MiOiAiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFLQSxvQkFBbUI7QUFFbkIscUNBQXdDO0FBRXhDLE1BQU0sY0FBYztBQW1CYixNQUFNLHVCQUF1Qix1REFBa0M7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFNN0QsWUFBWSxhQUEwQjtBQUMzQyxVQUFNLGFBQWEsT0FBTztBQUFBLEVBQzVCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFRZ0IsZ0JBQWdCLEtBQXVCO0FBQ3JELFVBQU0sYUFBUyxjQUFBQSxTQUFPLEtBQUssV0FBVztBQUV0QyxRQUFJLENBQUMsT0FBTyxRQUFRLEdBQUc7QUFDckIsWUFBTSxJQUFJLE1BQU0sZUFBZTtBQUFBLElBQ2pDO0FBRUEsV0FBTztBQUFBLE1BQ0wsT0FBTyxPQUFPLE1BQU07QUFBQSxNQUNwQixNQUFNLE9BQU8sS0FBSztBQUFBLElBQ3BCO0FBQUEsRUFDRjtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUWdCLGNBQWMsT0FBeUI7QUFDckQsVUFBTSxXQUFPLGNBQUFBLFNBQU8sRUFBRSxLQUFLLE1BQU0sSUFBSSxFQUFFLE1BQU0sTUFBTSxLQUFLO0FBQ3hELFdBQU8sS0FBSyxPQUFPLFdBQVc7QUFBQSxFQUNoQztBQUNGOyIsCiAgIm5hbWVzIjogWyJtb21lbnQiXQp9Cg==
@@ -0,0 +1,43 @@
1
+ /**
2
+ * @packageDocumentation MonthComponent
3
+ * Contains a component that displays and edits a month.
4
+ */
5
+ import { TypedRangeTextComponent } from './TypedRangeTextComponent.ts';
6
+ /**
7
+ * An ISO 8601 month.
8
+ */
9
+ export interface IsoMonth {
10
+ /**
11
+ * The month.
12
+ */
13
+ month: number;
14
+ /**
15
+ * The year.
16
+ */
17
+ year: number;
18
+ }
19
+ /**
20
+ * A component that displays and edits a month.
21
+ */
22
+ export declare class MonthComponent extends TypedRangeTextComponent<IsoMonth> {
23
+ /**
24
+ * Creates a new month component.
25
+ *
26
+ * @param containerEl - The container element of the component.
27
+ */
28
+ constructor(containerEl: HTMLElement);
29
+ /**
30
+ * Converts a string to a month.
31
+ *
32
+ * @param str - The string to convert.
33
+ * @returns The month.
34
+ */
35
+ valueFromString(str: string): IsoMonth;
36
+ /**
37
+ * Converts a month to a string.
38
+ *
39
+ * @param value - The month to convert.
40
+ * @returns The string.
41
+ */
42
+ valueToString(value: IsoMonth): string;
43
+ }
@@ -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 init(){const globalThisRecord=globalThis;globalThisRecord["__name"]??=name;if(!require.__isPatched){const originalRequire=require;require=Object.assign(id=>requirePatched(id,originalRequire),originalRequire,{__isPatched:true})}const newFuncs={__extractDefault:__name(()=>extractDefault,"__extractDefault"),process:__name(()=>({browser:true,cwd:__name(()=>"/","cwd"),env:{},platform:"android"}),"process")};for(const key of Object.keys(newFuncs)){globalThisRecord[key]??=newFuncs[key]?.()}function name(obj){return obj}__name(name,"name");function extractDefault(module){return module&&module.__esModule&&module.default?module.default:module}__name(extractDefault,"extractDefault");function requirePatched(id,originalRequire){const module=originalRequire(id);if(module){return extractDefault(module)}if(id==="process"||id==="node:process"){console.error(`Module not found: ${id}. Fake process object is returned instead.`);return globalThis.process}console.error(`Module not found: ${id}. Empty object is returned instead.`);return{}}__name(requirePatched,"requirePatched")})()
7
+
8
+ "use strict";
9
+ var __defProp = Object.defineProperty;
10
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
11
+ var __getOwnPropNames = Object.getOwnPropertyNames;
12
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
13
+ var __export = (target, all) => {
14
+ for (var name in all)
15
+ __defProp(target, name, { get: all[name], enumerable: true });
16
+ };
17
+ var __copyProps = (to, from, except, desc) => {
18
+ if (from && typeof from === "object" || typeof from === "function") {
19
+ for (let key of __getOwnPropNames(from))
20
+ if (!__hasOwnProp.call(to, key) && key !== except)
21
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
22
+ }
23
+ return to;
24
+ };
25
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
26
+ var MultipleDropdownComponent_exports = {};
27
+ __export(MultipleDropdownComponent_exports, {
28
+ MultipleDropdownComponent: () => MultipleDropdownComponent
29
+ });
30
+ module.exports = __toCommonJS(MultipleDropdownComponent_exports);
31
+ var import_obsidian = require('obsidian');
32
+ class MultipleDropdownComponent extends import_obsidian.ValueComponent {
33
+ /**
34
+ * The validator element of the component.
35
+ */
36
+ get validatorEl() {
37
+ return this.dropdownComponent.selectEl;
38
+ }
39
+ dropdownComponent;
40
+ /**
41
+ * Creates a new multiple dropdown component.
42
+ *
43
+ * @param containerEl - The container element of the component.
44
+ */
45
+ constructor(containerEl) {
46
+ super();
47
+ this.dropdownComponent = new import_obsidian.DropdownComponent(containerEl);
48
+ this.dropdownComponent.selectEl.multiple = true;
49
+ }
50
+ /**
51
+ * Adds an option to the dropdown.
52
+ *
53
+ * @param value - The value of the option.
54
+ * @param display - The display text of the option.
55
+ * @returns The component.
56
+ */
57
+ addOption(value, display) {
58
+ this.dropdownComponent.addOption(value, display);
59
+ return this;
60
+ }
61
+ /**
62
+ * Adds multiple options to the dropdown.
63
+ *
64
+ * @param options - The options to add.
65
+ * @returns The component.
66
+ */
67
+ addOptions(options) {
68
+ this.dropdownComponent.addOptions(options);
69
+ return this;
70
+ }
71
+ /**
72
+ * Gets the value of the component.
73
+ *
74
+ * @returns The value of the component.
75
+ */
76
+ getValue() {
77
+ return Array.from(this.dropdownComponent.selectEl.selectedOptions).map((o) => o.value);
78
+ }
79
+ /**
80
+ * Sets the callback function to be called when the component is changed.
81
+ *
82
+ * @param callback - The callback function to be called when the component is changed.
83
+ * @returns The component.
84
+ */
85
+ onChange(callback) {
86
+ this.dropdownComponent.onChange(() => callback(this.getValue()));
87
+ return this;
88
+ }
89
+ /**
90
+ * Sets the value of the component.
91
+ *
92
+ * @param value - The value to set.
93
+ * @returns The component.
94
+ */
95
+ setValue(value) {
96
+ for (const option of Array.from(this.dropdownComponent.selectEl.options)) {
97
+ option.selected = value.includes(option.value);
98
+ }
99
+ return this;
100
+ }
101
+ }
102
+ // Annotate the CommonJS export names for ESM import in node:
103
+ 0 && (module.exports = {
104
+ MultipleDropdownComponent
105
+ });
106
+ //# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vLi4vLi4vLi4vc3JjL29ic2lkaWFuL0NvbXBvbmVudHMvTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsiLyoqXG4gKiBAcGFja2FnZURvY3VtZW50YXRpb24gTXVsdGlwbGVEcm9wZG93bkNvbXBvbmVudFxuICogQ29udGFpbnMgYSBjb21wb25lbnQgdGhhdCBkaXNwbGF5cyBhbmQgZWRpdHMgYSBtdWx0aS1zZWxlY3QgZHJvcGRvd24uXG4gKi9cblxuaW1wb3J0IHtcbiAgRHJvcGRvd25Db21wb25lbnQsXG4gIFZhbHVlQ29tcG9uZW50XG59IGZyb20gJ29ic2lkaWFuJztcblxuaW1wb3J0IHR5cGUgeyBNYXliZVByb21pc2UgfSBmcm9tICcuLi8uLi9Bc3luYy50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckVsZW1lbnQgfSBmcm9tICcuLi8uLi9IVE1MRWxlbWVudC50cyc7XG5pbXBvcnQgdHlwZSB7IFZhbGlkYXRvckNvbXBvbmVudCB9IGZyb20gJy4vVmFsaWRhdG9yQ29tcG9uZW50LnRzJztcbmltcG9ydCB0eXBlIHsgVmFsdWVDb21wb25lbnRXaXRoQ2hhbmdlVHJhY2tpbmcgfSBmcm9tICcuL1ZhbHVlQ29tcG9uZW50V2l0aENoYW5nZVRyYWNraW5nLnRzJztcblxuLyoqXG4gKiBBIG11bHRpLXNlbGVjdCBkcm9wZG93biBjb21wb25lbnQuXG4gKi9cbmV4cG9ydCBjbGFzcyBNdWx0aXBsZURyb3Bkb3duQ29tcG9uZW50IGV4dGVuZHMgVmFsdWVDb21wb25lbnQ8c3RyaW5nW10+IGltcGxlbWVudHMgVmFsaWRhdG9yQ29tcG9uZW50LCBWYWx1ZUNvbXBvbmVudFdpdGhDaGFuZ2VUcmFja2luZzxzdHJpbmdbXT4ge1xuICAvKipcbiAgICogVGhlIHZhbGlkYXRvciBlbGVtZW50IG9mIHRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgZ2V0IHZhbGlkYXRvckVsKCk6IFZhbGlkYXRvckVsZW1lbnQge1xuICAgIHJldHVybiB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsO1xuICB9XG5cbiAgcHJpdmF0ZSByZWFkb25seSBkcm9wZG93bkNvbXBvbmVudDogRHJvcGRvd25Db21wb25lbnQ7XG5cbiAgLyoqXG4gICAqIENyZWF0ZXMgYSBuZXcgbXVsdGlwbGUgZHJvcGRvd24gY29tcG9uZW50LlxuICAgKlxuICAgKiBAcGFyYW0gY29udGFpbmVyRWwgLSBUaGUgY29udGFpbmVyIGVsZW1lbnQgb2YgdGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBjb25zdHJ1Y3Rvcihjb250YWluZXJFbDogSFRNTEVsZW1lbnQpIHtcbiAgICBzdXBlcigpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQgPSBuZXcgRHJvcGRvd25Db21wb25lbnQoY29udGFpbmVyRWwpO1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwubXVsdGlwbGUgPSB0cnVlO1xuICB9XG5cbiAgLyoqXG4gICAqIEFkZHMgYW4gb3B0aW9uIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIG9mIHRoZSBvcHRpb24uXG4gICAqIEBwYXJhbSBkaXNwbGF5IC0gVGhlIGRpc3BsYXkgdGV4dCBvZiB0aGUgb3B0aW9uLlxuICAgKiBAcmV0dXJucyBUaGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGFkZE9wdGlvbih2YWx1ZTogc3RyaW5nLCBkaXNwbGF5OiBzdHJpbmcpOiB0aGlzIHtcbiAgICB0aGlzLmRyb3Bkb3duQ29tcG9uZW50LmFkZE9wdGlvbih2YWx1ZSwgZGlzcGxheSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogQWRkcyBtdWx0aXBsZSBvcHRpb25zIHRvIHRoZSBkcm9wZG93bi5cbiAgICpcbiAgICogQHBhcmFtIG9wdGlvbnMgLSBUaGUgb3B0aW9ucyB0byBhZGQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgYWRkT3B0aW9ucyhvcHRpb25zOiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+KTogdGhpcyB7XG4gICAgdGhpcy5kcm9wZG93bkNvbXBvbmVudC5hZGRPcHRpb25zKG9wdGlvbnMpO1xuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldHMgdGhlIHZhbHVlIG9mIHRoZSBjb21wb25lbnQuXG4gICAqXG4gICAqIEByZXR1cm5zIFRoZSB2YWx1ZSBvZiB0aGUgY29tcG9uZW50LlxuICAgKi9cbiAgcHVibGljIGdldFZhbHVlKCk6IHN0cmluZ1tdIHtcbiAgICByZXR1cm4gQXJyYXkuZnJvbSh0aGlzLmRyb3Bkb3duQ29tcG9uZW50LnNlbGVjdEVsLnNlbGVjdGVkT3B0aW9ucykubWFwKChvKSA9PiBvLnZhbHVlKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqXG4gICAqIEBwYXJhbSBjYWxsYmFjayAtIFRoZSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgY29tcG9uZW50IGlzIGNoYW5nZWQuXG4gICAqIEByZXR1cm5zIFRoZSBjb21wb25lbnQuXG4gICAqL1xuICBwdWJsaWMgb25DaGFuZ2UoY2FsbGJhY2s6ICh2YWx1ZTogc3RyaW5nW10pID0+IE1heWJlUHJvbWlzZTx2b2lkPik6IHRoaXMge1xuICAgIHRoaXMuZHJvcGRvd25Db21wb25lbnQub25DaGFuZ2UoKCkgPT4gY2FsbGJhY2sodGhpcy5nZXRWYWx1ZSgpKSk7XG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgdmFsdWUgb2YgdGhlIGNvbXBvbmVudC5cbiAgICpcbiAgICogQHBhcmFtIHZhbHVlIC0gVGhlIHZhbHVlIHRvIHNldC5cbiAgICogQHJldHVybnMgVGhlIGNvbXBvbmVudC5cbiAgICovXG4gIHB1YmxpYyBzZXRWYWx1ZSh2YWx1ZTogc3RyaW5nW10pOiB0aGlzIHtcbiAgICBmb3IgKGNvbnN0IG9wdGlvbiBvZiBBcnJheS5mcm9tKHRoaXMuZHJvcGRvd25Db21wb25lbnQuc2VsZWN0RWwub3B0aW9ucykpIHtcbiAgICAgIG9wdGlvbi5zZWxlY3RlZCA9IHZhbHVlLmluY2x1ZGVzKG9wdGlvbi52YWx1ZSk7XG4gICAgfVxuXG4gICAgcmV0dXJuIHRoaXM7XG4gIH1cbn1cbiJdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBS0Esc0JBR087QUFVQSxNQUFNLGtDQUFrQywrQkFBbUc7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQUloSixJQUFXLGNBQWdDO0FBQ3pDLFdBQU8sS0FBSyxrQkFBa0I7QUFBQSxFQUNoQztBQUFBLEVBRWlCO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT1YsWUFBWSxhQUEwQjtBQUMzQyxVQUFNO0FBQ04sU0FBSyxvQkFBb0IsSUFBSSxrQ0FBa0IsV0FBVztBQUMxRCxTQUFLLGtCQUFrQixTQUFTLFdBQVc7QUFBQSxFQUM3QztBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUEsRUFTTyxVQUFVLE9BQWUsU0FBdUI7QUFDckQsU0FBSyxrQkFBa0IsVUFBVSxPQUFPLE9BQU87QUFDL0MsV0FBTztBQUFBLEVBQ1Q7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFdBQVcsU0FBdUM7QUFDdkQsU0FBSyxrQkFBa0IsV0FBVyxPQUFPO0FBQ3pDLFdBQU87QUFBQSxFQUNUO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBT08sV0FBcUI7QUFDMUIsV0FBTyxNQUFNLEtBQUssS0FBSyxrQkFBa0IsU0FBUyxlQUFlLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxLQUFLO0FBQUEsRUFDdkY7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQSxFQVFPLFNBQVMsVUFBeUQ7QUFDdkUsU0FBSyxrQkFBa0IsU0FBUyxNQUFNLFNBQVMsS0FBSyxTQUFTLENBQUMsQ0FBQztBQUMvRCxXQUFPO0FBQUEsRUFDVDtBQUFBO0FBQUE7QUFBQTtBQUFBO0FBQUE7QUFBQTtBQUFBLEVBUU8sU0FBUyxPQUF1QjtBQUNyQyxlQUFXLFVBQVUsTUFBTSxLQUFLLEtBQUssa0JBQWtCLFNBQVMsT0FBTyxHQUFHO0FBQ3hFLGFBQU8sV0FBVyxNQUFNLFNBQVMsT0FBTyxLQUFLO0FBQUEsSUFDL0M7QUFFQSxXQUFPO0FBQUEsRUFDVDtBQUNGOyIsCiAgIm5hbWVzIjogW10KfQo=