smoothly 1.0.0-alpha.18 → 1.0.0-alpha.19

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 (136) hide show
  1. package/dist/cjs/Notice-88ba4c70.js +95 -0
  2. package/dist/cjs/Notice-88ba4c70.js.map +1 -0
  3. package/dist/cjs/{getLanguage-430ecf04.js → getLanguage-4f0a45d5.js} +257 -42
  4. package/dist/cjs/getLanguage-4f0a45d5.js.map +1 -0
  5. package/dist/cjs/{index-8352a4e0.js → index-8adc5c1b.js} +10 -97
  6. package/dist/cjs/index-8adc5c1b.js.map +1 -0
  7. package/dist/cjs/index-d16d46f4.js +1224 -0
  8. package/dist/cjs/index-d16d46f4.js.map +1 -0
  9. package/dist/cjs/index.cjs.js +371 -10
  10. package/dist/cjs/index.cjs.js.map +1 -1
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/{smoothly-accordion_61.cjs.entry.js → smoothly-accordion_62.cjs.entry.js} +130 -51
  13. package/dist/cjs/smoothly-accordion_62.cjs.entry.js.map +1 -0
  14. package/dist/cjs/smoothly-address-display.cjs.entry.js +1 -1
  15. package/dist/cjs/smoothly-address.cjs.entry.js +1 -1
  16. package/dist/cjs/smoothly-addresses.cjs.entry.js +1 -1
  17. package/dist/cjs/smoothly-color.cjs.entry.js +1 -1
  18. package/dist/cjs/smoothly-country.cjs.entry.js +2 -2
  19. package/dist/cjs/smoothly-google-font.cjs.entry.js +1 -1
  20. package/dist/cjs/smoothly-radio-group.cjs.entry.js +1 -1
  21. package/dist/cjs/smoothly-reorder.cjs.entry.js +1 -1
  22. package/dist/cjs/smoothly-trigger-sink.cjs.entry.js +1 -1
  23. package/dist/cjs/smoothly-trigger-source.cjs.entry.js +1 -1
  24. package/dist/cjs/smoothly.cjs.js +2 -2
  25. package/dist/collection/collection-manifest.json +2 -1
  26. package/dist/collection/components/app/index.js +95 -13
  27. package/dist/collection/components/app/index.js.map +1 -1
  28. package/dist/collection/components/app/room/index.js +156 -0
  29. package/dist/collection/components/app/room/index.js.map +1 -0
  30. package/dist/collection/components/app/room/style.css +24 -0
  31. package/dist/collection/components/app/style.css +38 -98
  32. package/dist/collection/components/app-demo/index.js +1 -19
  33. package/dist/collection/components/app-demo/index.js.map +1 -1
  34. package/dist/collection/components/burger/index.js +128 -0
  35. package/dist/collection/components/burger/index.js.map +1 -0
  36. package/dist/collection/components/burger/style.css +19 -0
  37. package/dist/collection/components/frame/index.js +1 -2
  38. package/dist/collection/components/frame/index.js.map +1 -1
  39. package/dist/collection/components/icon-demo/style.css +1 -0
  40. package/dist/collection/components/input-date/style.css +1 -0
  41. package/dist/collection/index.js +0 -1
  42. package/dist/collection/index.js.map +1 -1
  43. package/dist/custom-elements/index.d.ts +12 -6
  44. package/dist/custom-elements/index.js +390 -496
  45. package/dist/custom-elements/index.js.map +1 -1
  46. package/dist/custom-elements/index2.js +1222 -0
  47. package/dist/custom-elements/index2.js.map +1 -0
  48. package/dist/esm/Notice-1fa17794.js +93 -0
  49. package/dist/esm/Notice-1fa17794.js.map +1 -0
  50. package/dist/esm/{getLanguage-cccb8418.js → getLanguage-ffacd7b7.js} +257 -42
  51. package/dist/esm/getLanguage-ffacd7b7.js.map +1 -0
  52. package/dist/esm/{index-7b57a52c.js → index-6ac4212d.js} +11 -96
  53. package/dist/esm/index-6ac4212d.js.map +1 -0
  54. package/dist/esm/index-d5330059.js +1222 -0
  55. package/dist/esm/index-d5330059.js.map +1 -0
  56. package/dist/esm/index.js +372 -3
  57. package/dist/esm/index.js.map +1 -1
  58. package/dist/esm/loader.js +3 -3
  59. package/dist/esm/{smoothly-accordion_61.entry.js → smoothly-accordion_62.entry.js} +125 -47
  60. package/dist/esm/smoothly-accordion_62.entry.js.map +1 -0
  61. package/dist/esm/smoothly-address-display.entry.js +1 -1
  62. package/dist/esm/smoothly-address.entry.js +1 -1
  63. package/dist/esm/smoothly-addresses.entry.js +1 -1
  64. package/dist/esm/smoothly-color.entry.js +1 -1
  65. package/dist/esm/smoothly-country.entry.js +2 -2
  66. package/dist/esm/smoothly-google-font.entry.js +1 -1
  67. package/dist/esm/smoothly-radio-group.entry.js +1 -1
  68. package/dist/esm/smoothly-reorder.entry.js +1 -1
  69. package/dist/esm/smoothly-trigger-sink.entry.js +1 -1
  70. package/dist/esm/smoothly-trigger-source.entry.js +1 -1
  71. package/dist/esm/smoothly.js +3 -3
  72. package/dist/smoothly/index.esm.js +1 -1
  73. package/dist/smoothly/index.esm.js.map +1 -1
  74. package/dist/smoothly/{p-c49d2094.entry.js → p-04fb45e1.entry.js} +2 -2
  75. package/dist/smoothly/{p-c49d2094.entry.js.map → p-04fb45e1.entry.js.map} +0 -0
  76. package/dist/smoothly/{p-79025273.entry.js → p-0fec28cc.entry.js} +2 -2
  77. package/dist/smoothly/{p-79025273.entry.js.map → p-0fec28cc.entry.js.map} +0 -0
  78. package/dist/smoothly/{p-d4182274.entry.js → p-16cba662.entry.js} +2 -2
  79. package/dist/smoothly/{p-d4182274.entry.js.map → p-16cba662.entry.js.map} +0 -0
  80. package/dist/smoothly/p-2c9c8244.entry.js +2 -0
  81. package/dist/smoothly/p-2c9c8244.entry.js.map +1 -0
  82. package/dist/smoothly/{p-712b362e.entry.js → p-3a6873ed.entry.js} +2 -2
  83. package/dist/smoothly/{p-712b362e.entry.js.map → p-3a6873ed.entry.js.map} +0 -0
  84. package/dist/smoothly/{p-be2ff772.entry.js → p-5629e452.entry.js} +2 -2
  85. package/dist/smoothly/{p-be2ff772.entry.js.map → p-5629e452.entry.js.map} +0 -0
  86. package/dist/smoothly/p-5e34795b.js +2 -0
  87. package/dist/smoothly/p-5e34795b.js.map +1 -0
  88. package/dist/smoothly/p-75373584.js +2 -0
  89. package/dist/smoothly/p-75373584.js.map +1 -0
  90. package/dist/smoothly/{p-5b6351f6.js → p-75452eb8.js} +2 -2
  91. package/dist/smoothly/p-75452eb8.js.map +1 -0
  92. package/dist/smoothly/{p-b49664d8.entry.js → p-ae33d7e1.entry.js} +2 -2
  93. package/dist/smoothly/{p-b49664d8.entry.js.map → p-ae33d7e1.entry.js.map} +0 -0
  94. package/dist/smoothly/{p-e136b93e.entry.js → p-ae467192.entry.js} +2 -2
  95. package/dist/smoothly/{p-e136b93e.entry.js.map → p-ae467192.entry.js.map} +0 -0
  96. package/dist/smoothly/{p-5b28795c.entry.js → p-b3eef141.entry.js} +2 -2
  97. package/dist/smoothly/{p-5b28795c.entry.js.map → p-b3eef141.entry.js.map} +0 -0
  98. package/dist/smoothly/p-b98cd447.js +3 -0
  99. package/dist/smoothly/p-b98cd447.js.map +1 -0
  100. package/dist/smoothly/{p-21341e18.entry.js → p-c109fc66.entry.js} +2 -2
  101. package/dist/smoothly/{p-21341e18.entry.js.map → p-c109fc66.entry.js.map} +0 -0
  102. package/dist/smoothly/p-f29cc9ff.entry.js +2 -0
  103. package/dist/smoothly/{p-940af6d3.entry.js.map → p-f29cc9ff.entry.js.map} +0 -0
  104. package/dist/smoothly/smoothly.esm.js +1 -1
  105. package/dist/smoothly/smoothly.esm.js.map +1 -1
  106. package/dist/types/components/app/index.d.ts +14 -2
  107. package/dist/types/components/app/room/index.d.ts +12 -0
  108. package/dist/types/components/burger/index.d.ts +10 -0
  109. package/dist/types/components/frame/index.d.ts +1 -1
  110. package/dist/types/components.d.ts +56 -23
  111. package/dist/types/index.d.ts +0 -1
  112. package/package.json +13 -13
  113. package/dist/cjs/getLanguage-430ecf04.js.map +0 -1
  114. package/dist/cjs/index-8352a4e0.js.map +0 -1
  115. package/dist/cjs/index-b282ee83.js +0 -865
  116. package/dist/cjs/index-b282ee83.js.map +0 -1
  117. package/dist/cjs/smoothly-accordion_61.cjs.entry.js.map +0 -1
  118. package/dist/collection/components/App.js +0 -71
  119. package/dist/collection/components/App.js.map +0 -1
  120. package/dist/collection/components/room/index.js +0 -90
  121. package/dist/collection/components/room/index.js.map +0 -1
  122. package/dist/esm/getLanguage-cccb8418.js.map +0 -1
  123. package/dist/esm/index-2e948fc3.js +0 -861
  124. package/dist/esm/index-2e948fc3.js.map +0 -1
  125. package/dist/esm/index-7b57a52c.js.map +0 -1
  126. package/dist/esm/smoothly-accordion_61.entry.js.map +0 -1
  127. package/dist/smoothly/p-0b5b0314.entry.js +0 -2
  128. package/dist/smoothly/p-0b5b0314.entry.js.map +0 -1
  129. package/dist/smoothly/p-5b6351f6.js.map +0 -1
  130. package/dist/smoothly/p-70280a11.js +0 -2
  131. package/dist/smoothly/p-70280a11.js.map +0 -1
  132. package/dist/smoothly/p-940af6d3.entry.js +0 -2
  133. package/dist/smoothly/p-c88ae468.js +0 -3
  134. package/dist/smoothly/p-c88ae468.js.map +0 -1
  135. package/dist/types/components/App.d.ts +0 -5
  136. package/dist/types/components/room/index.d.ts +0 -7
@@ -0,0 +1,95 @@
1
+ 'use strict';
2
+
3
+ class Notice {
4
+ get state() {
5
+ return this.stateValue;
6
+ }
7
+ set state(value) {
8
+ if (this.stateValue != value) {
9
+ this.stateValue = value;
10
+ this.emit();
11
+ }
12
+ }
13
+ get message() {
14
+ return this.messageValue;
15
+ }
16
+ set message(value) {
17
+ if (this.messageValue != value) {
18
+ this.messageValue = value;
19
+ this.emit();
20
+ }
21
+ }
22
+ constructor(stateValue, messageValue, task) {
23
+ this.stateValue = stateValue;
24
+ this.messageValue = messageValue;
25
+ this.task = task;
26
+ this.listeners = [];
27
+ switch (stateValue) {
28
+ case "delayed":
29
+ this.timer = window.setTimeout(() => this.execute(), 5000);
30
+ break;
31
+ case "executing":
32
+ this.execute();
33
+ break;
34
+ case "success":
35
+ case "warning":
36
+ case "failed":
37
+ this.startCloseTimer();
38
+ break;
39
+ }
40
+ }
41
+ listen(listener) {
42
+ this.listeners.push(listener);
43
+ }
44
+ unlisten(listener) {
45
+ this.listeners.filter(l => l != listener);
46
+ }
47
+ emit() {
48
+ this.listeners.forEach(l => l(this));
49
+ }
50
+ execute() {
51
+ this.clearTimer();
52
+ if (this.task) {
53
+ this.state = "executing";
54
+ this.task(this).then(r => {
55
+ this.messageValue = r[1];
56
+ this.state = r[0] ? "success" : "failed";
57
+ this.startCloseTimer();
58
+ });
59
+ }
60
+ else
61
+ this.state = "failed";
62
+ }
63
+ startCloseTimer() {
64
+ this.timer = window.setTimeout(() => this.close(), 15000);
65
+ }
66
+ close() {
67
+ this.clearTimer();
68
+ this.state = "closed";
69
+ }
70
+ clearTimer() {
71
+ if (this.timer) {
72
+ window.clearTimeout(this.timer);
73
+ this.timer = undefined;
74
+ }
75
+ }
76
+ static delay(message, task) {
77
+ return new Notice("delayed", message, task);
78
+ }
79
+ static execute(message, task) {
80
+ return new Notice("executing", message, task);
81
+ }
82
+ static succeded(message) {
83
+ return new Notice("success", message);
84
+ }
85
+ static failed(message) {
86
+ return new Notice("failed", message);
87
+ }
88
+ static warn(message) {
89
+ return new Notice("warning", message);
90
+ }
91
+ }
92
+
93
+ exports.Notice = Notice;
94
+
95
+ //# sourceMappingURL=Notice-88ba4c70.js.map
@@ -0,0 +1 @@
1
+ {"file":"Notice-88ba4c70.js","mappings":"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","names":[],"sources":["./src/model/Notice.ts"],"sourcesContent":["export class Notice {\n\tprivate timer?: number\n\tget state(): Notice.State {\n\t\treturn this.stateValue\n\t}\n\tset state(value: Notice.State) {\n\t\tif (this.stateValue != value) {\n\t\t\tthis.stateValue = value\n\t\t\tthis.emit()\n\t\t}\n\t}\n\n\tprivate listeners: Notice.Listener[] = []\n\tget message(): string {\n\t\treturn this.messageValue\n\t}\n\tset message(value: string) {\n\t\tif (this.messageValue != value) {\n\t\t\tthis.messageValue = value\n\t\t\tthis.emit()\n\t\t}\n\t}\n\tprivate constructor(private stateValue: Notice.State, private messageValue: string, private task?: Notice.Task) {\n\t\tswitch (stateValue) {\n\t\t\tcase \"delayed\":\n\t\t\t\tthis.timer = window.setTimeout(() => this.execute(), 5000)\n\t\t\t\tbreak\n\t\t\tcase \"executing\":\n\t\t\t\tthis.execute()\n\t\t\t\tbreak\n\t\t\tcase \"success\":\n\t\t\tcase \"warning\":\n\t\t\tcase \"failed\":\n\t\t\t\tthis.startCloseTimer()\n\t\t\t\tbreak\n\t\t\tdefault:\n\t\t\t\tbreak\n\t\t}\n\t}\n\tlisten(listener: Notice.Listener) {\n\t\tthis.listeners.push(listener)\n\t}\n\tunlisten(listener: Notice.Listener) {\n\t\tthis.listeners.filter(l => l != listener)\n\t}\n\tprivate emit() {\n\t\tthis.listeners.forEach(l => l(this))\n\t}\n\tprivate execute() {\n\t\tthis.clearTimer()\n\t\tif (this.task) {\n\t\t\tthis.state = \"executing\"\n\t\t\tthis.task(this).then(r => {\n\t\t\t\tthis.messageValue = r[1] // emit is triggered by the state change below\n\t\t\t\tthis.state = r[0] ? \"success\" : \"failed\"\n\t\t\t\tthis.startCloseTimer()\n\t\t\t})\n\t\t} else\n\t\t\tthis.state = \"failed\"\n\t}\n\tprivate startCloseTimer() {\n\t\tthis.timer = window.setTimeout(() => this.close(), 15000)\n\t}\n\n\tclose() {\n\t\tthis.clearTimer()\n\t\tthis.state = \"closed\"\n\t}\n\tprivate clearTimer() {\n\t\tif (this.timer) {\n\t\t\twindow.clearTimeout(this.timer)\n\t\t\tthis.timer = undefined\n\t\t}\n\t}\n\n\tstatic delay(message: string, task: Notice.Task): Notice {\n\t\treturn new Notice(\"delayed\", message, task)\n\t}\n\tstatic execute(message: string, task: Notice.Task): Notice {\n\t\treturn new Notice(\"executing\", message, task)\n\t}\n\tstatic succeded(message: string): Notice {\n\t\treturn new Notice(\"success\", message)\n\t}\n\tstatic failed(message: string): Notice {\n\t\treturn new Notice(\"failed\", message)\n\t}\n\tstatic warn(message: string): Notice {\n\t\treturn new Notice(\"warning\", message)\n\t}\n}\nexport namespace Notice {\n\texport type State = \"delayed\" | \"executing\" | \"success\" | \"warning\" | \"failed\" | \"closed\"\n\texport type Listener = (notice: Notice) => void\n\texport type Task = (notice: Notice) => Promise<[boolean, string]>\n}\n"],"version":3}
@@ -3930,7 +3930,7 @@ var DateSpan$1;
3930
3930
  DateSpan.is = is;
3931
3931
  })(DateSpan$1 || (DateSpan$1 = {}));
3932
3932
 
3933
- var TimeZone;
3933
+ var TimeZone$1;
3934
3934
  (function (TimeZone) {
3935
3935
  TimeZone.values = [
3936
3936
  "-12:00",
@@ -3976,7 +3976,7 @@ var TimeZone;
3976
3976
  return typeof value == "string" && TimeZone.values.includes(value);
3977
3977
  }
3978
3978
  TimeZone.is = is;
3979
- })(TimeZone || (TimeZone = {}));
3979
+ })(TimeZone$1 || (TimeZone$1 = {}));
3980
3980
 
3981
3981
  exports.DateTime = void 0;
3982
3982
  (function (DateTime) {
@@ -3997,21 +3997,21 @@ exports.DateTime = void 0;
3997
3997
  value[10] == "T" &&
3998
3998
  isHours(value.substring(11, 13)) &&
3999
3999
  (value.length == 13 ||
4000
- TimeZone.is(value.substring(13)) ||
4000
+ TimeZone$1.is(value.substring(13)) ||
4001
4001
  (value[13] == ":" &&
4002
4002
  value.length >= 16 &&
4003
4003
  isMinutes(value.substring(14, 16)) &&
4004
4004
  (value.length == 16 ||
4005
- TimeZone.is(value.substring(16)) ||
4005
+ TimeZone$1.is(value.substring(16)) ||
4006
4006
  (value[16] == ":" &&
4007
4007
  value.length >= 19 &&
4008
4008
  isSeconds(value.substring(17, 19)) &&
4009
4009
  (value.length == 19 ||
4010
- TimeZone.is(value.substring(19)) ||
4010
+ TimeZone$1.is(value.substring(19)) ||
4011
4011
  (value[19] == "." &&
4012
4012
  value.length >= 23 &&
4013
4013
  [...value.substring(20, 23)].every(c => c >= "0" && c <= "9") &&
4014
- (value.length == 23 || TimeZone.is(value.substring(23))))))))));
4014
+ (value.length == 23 || TimeZone$1.is(value.substring(23))))))))));
4015
4015
  }
4016
4016
  DateTime.is = is;
4017
4017
  function parse(value) {
@@ -4062,7 +4062,7 @@ exports.DateTime = void 0;
4062
4062
  DateTime.localize = localize;
4063
4063
  function timeZone(value) {
4064
4064
  const result = value[value.length - 1] == "Z" ? "Z" : value.substring(value.length - 6);
4065
- return TimeZone.is(result) ? result : "";
4065
+ return TimeZone$1.is(result) ? result : "";
4066
4066
  }
4067
4067
  DateTime.timeZone = timeZone;
4068
4068
  function timeZoneShort(value) {
@@ -6060,7 +6060,7 @@ var TimeSpan$1;
6060
6060
  }
6061
6061
  TimeSpan.is = is;
6062
6062
  function toHours(value, round) {
6063
- const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 60 * 1000) +
6063
+ const result = (dateToMilliseconds$1(value) + (value.milliseconds ?? 0)) / (60 * 60 * 1000) +
6064
6064
  (value.seconds ?? 0) / (60 * 60) +
6065
6065
  (value.minutes ?? 0) / 60 +
6066
6066
  (value.hours ?? 0);
@@ -6068,7 +6068,7 @@ var TimeSpan$1;
6068
6068
  }
6069
6069
  TimeSpan.toHours = toHours;
6070
6070
  function toMinutes(value, round) {
6071
- const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 1000) +
6071
+ const result = (dateToMilliseconds$1(value) + (value.milliseconds ?? 0)) / (60 * 1000) +
6072
6072
  (value.seconds ?? 0) / 60 +
6073
6073
  (value.minutes ?? 0) +
6074
6074
  (value.hours ?? 0) * 60;
@@ -6076,7 +6076,7 @@ var TimeSpan$1;
6076
6076
  }
6077
6077
  TimeSpan.toMinutes = toMinutes;
6078
6078
  function toSeconds(value, round) {
6079
- const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / 1000 +
6079
+ const result = (dateToMilliseconds$1(value) + (value.milliseconds ?? 0)) / 1000 +
6080
6080
  (value.seconds ?? 0) +
6081
6081
  (value.minutes ?? 0) * 60 +
6082
6082
  (value.hours ?? 0) * 60 * 60;
@@ -6084,7 +6084,7 @@ var TimeSpan$1;
6084
6084
  }
6085
6085
  TimeSpan.toSeconds = toSeconds;
6086
6086
  function toMilliseconds(value, round) {
6087
- const result = dateToMilliseconds(value) +
6087
+ const result = dateToMilliseconds$1(value) +
6088
6088
  (value.milliseconds ?? 0) +
6089
6089
  (value.seconds ?? 0) * 1000 +
6090
6090
  (value.minutes ?? 0) * 60 * 1000 +
@@ -6093,7 +6093,7 @@ var TimeSpan$1;
6093
6093
  }
6094
6094
  TimeSpan.toMilliseconds = toMilliseconds;
6095
6095
  })(TimeSpan$1 || (TimeSpan$1 = {}));
6096
- function dateToMilliseconds(span) {
6096
+ function dateToMilliseconds$1(span) {
6097
6097
  const now = Date.UTC(0, 0);
6098
6098
  const date = new Date(now);
6099
6099
  const future = Date.UTC(date.getUTCFullYear() + (span.years ?? 0), date.getUTCMonth() + (span.months ?? 0), date.getUTCDate() + (span.days ?? 0), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
@@ -9840,7 +9840,8 @@ var Date$1;
9840
9840
  function is(value) {
9841
9841
  return (typeof value == "string" &&
9842
9842
  value.length == 10 &&
9843
- /^(\d{4}-[01]\d-[0-3]\d)|(\d{4}-[01]\d-[0-3]\d)|(\d{4}-[01]\d-[0-3]\d)$/.test(value));
9843
+ new globalThis.Date(value).toString() != "Invalid Date" &&
9844
+ create(new globalThis.Date(value)) == value);
9844
9845
  }
9845
9846
  Date.is = is;
9846
9847
  function parse(value, time) {
@@ -9951,22 +9952,49 @@ var Date$1;
9951
9952
  return Date.create(result);
9952
9953
  }
9953
9954
  Date.lastOfWeek = lastOfWeek;
9954
- function getYear(time) {
9955
- return Number.parseInt(time.substring(0, 4));
9955
+ function getYear(date) {
9956
+ return Number.parseInt(date.substring(0, 4));
9956
9957
  }
9957
9958
  Date.getYear = getYear;
9958
- function getMonth(time) {
9959
- return Number.parseInt(time.substring(5, 7));
9959
+ function getMonth(date) {
9960
+ return Number.parseInt(date.substring(5, 7));
9960
9961
  }
9961
9962
  Date.getMonth = getMonth;
9962
- function getDay(time) {
9963
- return Number.parseInt(time.substring(8, 10));
9963
+ function getDay(date) {
9964
+ return Number.parseInt(date.substring(8, 10));
9964
9965
  }
9965
9966
  Date.getDay = getDay;
9966
- function getWeekDay(time) {
9967
- return new globalThis.Date(time).getDay();
9967
+ function getWeekDay(date) {
9968
+ return new globalThis.Date(date).getDay();
9968
9969
  }
9969
9970
  Date.getWeekDay = getWeekDay;
9971
+ function nextWeekday(date, days = 1, holidays = []) {
9972
+ const holidaySet = new Set(holidays);
9973
+ let result = next(date, days);
9974
+ let weekday = getWeekDay(result);
9975
+ while (weekday == 6 || weekday == 0 || holidaySet.has(result)) {
9976
+ result = next(result, weekday == 6 ? 2 : 1);
9977
+ weekday = getWeekDay(result);
9978
+ }
9979
+ return result;
9980
+ }
9981
+ Date.nextWeekday = nextWeekday;
9982
+ function span(date, relative) {
9983
+ return {
9984
+ years: getYear(date) - getYear(relative),
9985
+ months: getMonth(date) - getMonth(relative),
9986
+ days: getDay(date) - getDay(relative),
9987
+ };
9988
+ }
9989
+ Date.span = span;
9990
+ Date.epochStart = "0000-01-01";
9991
+ Date.epochEnd = "9999-12-31";
9992
+ function invert(date) {
9993
+ return `${(9999 - getYear(date)).toFixed(0).padStart(4, "0")}-${(13 - getMonth(date))
9994
+ .toFixed(0)
9995
+ .padStart(2, "0")}-${(32 - getDay(date)).toFixed(0).padStart(2, "0")}`;
9996
+ }
9997
+ Date.invert = invert;
9970
9998
  })(Date$1 || (Date$1 = {}));
9971
9999
 
9972
10000
  var DateRange;
@@ -10004,15 +10032,92 @@ var DateSpan;
10004
10032
  DateSpan.is = is;
10005
10033
  })(DateSpan || (DateSpan = {}));
10006
10034
 
10035
+ var TimeZone;
10036
+ (function (TimeZone) {
10037
+ TimeZone.values = [
10038
+ "-12:00",
10039
+ "-11:00",
10040
+ "-10:00",
10041
+ "-09:30",
10042
+ "-09:00",
10043
+ "-08:00",
10044
+ "-07:00",
10045
+ "-06:00",
10046
+ "-05:00",
10047
+ "-04:00",
10048
+ "-03:30",
10049
+ "-03:00",
10050
+ "-02:00",
10051
+ "-01:00",
10052
+ "Z",
10053
+ "+01:00",
10054
+ "+02:00",
10055
+ "+03:00",
10056
+ "+03:30",
10057
+ "+04:00",
10058
+ "+04:30",
10059
+ "+05:00",
10060
+ "+05:30",
10061
+ "+05:45",
10062
+ "+06:00",
10063
+ "+06:30",
10064
+ "+07:00",
10065
+ "+08:00",
10066
+ "+08:45",
10067
+ "+09:00",
10068
+ "+09:30",
10069
+ "+10:00",
10070
+ "+10:30",
10071
+ "+11:00",
10072
+ "+12:00",
10073
+ "+12:45",
10074
+ "+13:00",
10075
+ "+14:00",
10076
+ ];
10077
+ function is(value) {
10078
+ return typeof value == "string" && TimeZone.values.includes(value);
10079
+ }
10080
+ TimeZone.is = is;
10081
+ })(TimeZone || (TimeZone = {}));
10082
+
10007
10083
  var DateTime;
10008
10084
  (function (DateTime) {
10085
+ function isHours(v) {
10086
+ return (v[0] >= "0" && v[0] <= "1" && v[1] >= "0" && v[1] <= "9") || (v[0] == "2" && v[1] >= "0" && v[1] <= "3");
10087
+ }
10088
+ function isMinutes(v) {
10089
+ return v[0] >= "0" && v[0] <= "5" && v[1] >= "0" && v[1] <= "9";
10090
+ }
10091
+ function isSeconds(v) {
10092
+ return (v[0] >= "0" && v[0] <= "5" && v[1] >= "0" && v[1] <= "9") || v == "60" || v == "61";
10093
+ }
10009
10094
  function is(value) {
10010
10095
  return (typeof value == "string" &&
10011
- /^(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d)|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d)$/.test(value));
10096
+ value.length >= 13 &&
10097
+ value.length <= 29 &&
10098
+ Date$1.is(value.substring(0, 10)) &&
10099
+ value[10] == "T" &&
10100
+ isHours(value.substring(11, 13)) &&
10101
+ (value.length == 13 ||
10102
+ TimeZone.is(value.substring(13)) ||
10103
+ (value[13] == ":" &&
10104
+ value.length >= 16 &&
10105
+ isMinutes(value.substring(14, 16)) &&
10106
+ (value.length == 16 ||
10107
+ TimeZone.is(value.substring(16)) ||
10108
+ (value[16] == ":" &&
10109
+ value.length >= 19 &&
10110
+ isSeconds(value.substring(17, 19)) &&
10111
+ (value.length == 19 ||
10112
+ TimeZone.is(value.substring(19)) ||
10113
+ (value[19] == "." &&
10114
+ value.length >= 23 &&
10115
+ [...value.substring(20, 23)].every(c => c >= "0" && c <= "9") &&
10116
+ (value.length == 23 || TimeZone.is(value.substring(23))))))))));
10012
10117
  }
10013
10118
  DateTime.is = is;
10014
10119
  function parse(value) {
10015
- return new globalThis.Date(value);
10120
+ return new globalThis.Date(DateTime.truncate(value, "milliseconds"));
10016
10121
  }
10017
10122
  DateTime.parse = parse;
10018
10123
  function create(value, resolution = "seconds") {
@@ -10036,19 +10141,91 @@ var DateTime;
10036
10141
  return create(new globalThis.Date());
10037
10142
  }
10038
10143
  DateTime.now = now;
10039
- function localize(value, locale, timezone) {
10040
- const localeString = locale ? locale : Intl.DateTimeFormat().resolvedOptions().locale;
10041
- return (is(value) ? parse(value) : value).toLocaleString(localeString, {
10042
- year: "numeric",
10043
- month: "2-digit",
10044
- day: "2-digit",
10045
- hour: "2-digit",
10046
- minute: "2-digit",
10047
- second: "2-digit",
10048
- timeZone: timezone ?? Intl.DateTimeFormat().resolvedOptions().timeZone,
10049
- });
10144
+ function localize(value, locale, timeZone) {
10145
+ let result;
10146
+ if (typeof locale == "object") {
10147
+ const localeString = timeZone ? timeZone : Intl.DateTimeFormat().resolvedOptions().locale;
10148
+ result = (is(value) ? parse(value) : value).toLocaleString(localeString, locale);
10149
+ }
10150
+ else {
10151
+ const precision = is(value) ? DateTime.precision(value) : "milliseconds";
10152
+ result = localize(value, {
10153
+ year: "numeric",
10154
+ month: "2-digit",
10155
+ day: "2-digit",
10156
+ hour: "2-digit",
10157
+ minute: precision == "minutes" || precision == "seconds" || precision == "milliseconds" ? "2-digit" : undefined,
10158
+ second: precision == "seconds" || precision == "milliseconds" ? "2-digit" : undefined,
10159
+ timeZone: timeZone,
10160
+ }, locale);
10161
+ }
10162
+ return result;
10050
10163
  }
10051
10164
  DateTime.localize = localize;
10165
+ function timeZone(value) {
10166
+ const result = value[value.length - 1] == "Z" ? "Z" : value.substring(value.length - 6);
10167
+ return TimeZone.is(result) ? result : "";
10168
+ }
10169
+ DateTime.timeZone = timeZone;
10170
+ function timeZoneShort(value) {
10171
+ return parse(value).getTimezoneOffset();
10172
+ }
10173
+ DateTime.timeZoneShort = timeZoneShort;
10174
+ function precision(value) {
10175
+ const zone = timeZone(value);
10176
+ const time = value.substring(0, value.length - zone.length).split("T", 2)[1];
10177
+ let result;
10178
+ switch (time.length) {
10179
+ case 2:
10180
+ result = "hours";
10181
+ break;
10182
+ case 5:
10183
+ result = "minutes";
10184
+ break;
10185
+ case 8:
10186
+ result = "seconds";
10187
+ break;
10188
+ default:
10189
+ case 12:
10190
+ result = "milliseconds";
10191
+ break;
10192
+ }
10193
+ return result;
10194
+ }
10195
+ DateTime.precision = precision;
10196
+ function truncate(value, precision) {
10197
+ const zone = timeZone(value);
10198
+ let [date, time] = value.split("T", 2);
10199
+ time = time.substring(0, time.length - zone.length);
10200
+ switch (time.length) {
10201
+ case 2:
10202
+ time += ":00:00.000";
10203
+ break;
10204
+ case 5:
10205
+ time += ":00.000";
10206
+ break;
10207
+ case 8:
10208
+ time += ".000";
10209
+ break;
10210
+ }
10211
+ let result;
10212
+ switch (precision) {
10213
+ case "hours":
10214
+ result = time.substring(0, 2);
10215
+ break;
10216
+ case "minutes":
10217
+ result = time.substring(0, 5);
10218
+ break;
10219
+ case "seconds":
10220
+ result = time.substring(0, 8);
10221
+ break;
10222
+ case "milliseconds":
10223
+ result = time.substring(0, 12);
10224
+ break;
10225
+ }
10226
+ return date + "T" + result + zone;
10227
+ }
10228
+ DateTime.truncate = truncate;
10052
10229
  function epoch(value, resolution = "seconds") {
10053
10230
  let result = (typeof value == "string" ? parse(value) : value).getTime();
10054
10231
  switch (resolution) {
@@ -10118,8 +10295,8 @@ var DateTime;
10118
10295
  return DateTime.create(result);
10119
10296
  }
10120
10297
  DateTime.nextMillisecond = nextMillisecond;
10121
- function previousMillisecond(time, seconds = 1) {
10122
- return nextMillisecond(time, -seconds);
10298
+ function previousMillisecond(time, milliseconds = 1) {
10299
+ return nextMillisecond(time, -milliseconds);
10123
10300
  }
10124
10301
  DateTime.previousMillisecond = previousMillisecond;
10125
10302
  function nextSecond(time, seconds = 1) {
@@ -10154,7 +10331,9 @@ var DateTime;
10154
10331
  DateTime.previousHour = previousHour;
10155
10332
  function nextDay(time, days = 1) {
10156
10333
  const result = parse(time);
10334
+ const offset = result.getTimezoneOffset();
10157
10335
  result.setDate(result.getDate() + days);
10336
+ result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset());
10158
10337
  return DateTime.create(result);
10159
10338
  }
10160
10339
  DateTime.nextDay = nextDay;
@@ -10164,7 +10343,9 @@ var DateTime;
10164
10343
  DateTime.previousDay = previousDay;
10165
10344
  function nextMonth(time, months = 1) {
10166
10345
  const result = parse(time);
10346
+ const offset = result.getTimezoneOffset();
10167
10347
  result.setMonth(result.getMonth() + months);
10348
+ result.setMinutes(result.getMinutes() + offset - result.getTimezoneOffset());
10168
10349
  return DateTime.create(result);
10169
10350
  }
10170
10351
  DateTime.nextMonth = nextMonth;
@@ -10214,6 +10395,30 @@ var DateTime;
10214
10395
  return Number.parseInt(time.substring(17, 19));
10215
10396
  }
10216
10397
  DateTime.getSecond = getSecond;
10398
+ function getMillisecond(time) {
10399
+ return Number.parseInt(time.substring(20, 23));
10400
+ }
10401
+ DateTime.getMillisecond = getMillisecond;
10402
+ function span(time, relative) {
10403
+ return {
10404
+ ...Date$1.span(time, relative),
10405
+ hours: getHour(time) - getHour(relative),
10406
+ minutes: getMinute(time) - getMinute(relative),
10407
+ seconds: getSecond(time) - getSecond(relative),
10408
+ milliseconds: getMillisecond(time) - getMillisecond(relative),
10409
+ };
10410
+ }
10411
+ DateTime.span = span;
10412
+ DateTime.epochStart = "0000-01-01T00:00:00.000Z";
10413
+ DateTime.epochEnd = "9999-12-31T23:59:59.999Z";
10414
+ function invert(time) {
10415
+ return `${Date$1.invert(getDate(time))}T${(24 - getHour(time)).toFixed(0).padStart(2, "0")}:${(60 - getMinute(time))
10416
+ .toFixed(0)
10417
+ .padStart(2, "0")}:${(60 - getSecond(time)).toFixed(0).padStart(2, "0")}.${(999 - getMillisecond(time))
10418
+ .toFixed(0)
10419
+ .padStart(3, "0")}Z`;
10420
+ }
10421
+ DateTime.invert = invert;
10217
10422
  })(DateTime || (DateTime = {}));
10218
10423
 
10219
10424
  class Transcoder {
@@ -11957,7 +12162,7 @@ var TimeSpan;
11957
12162
  }
11958
12163
  TimeSpan.is = is;
11959
12164
  function toHours(value, round) {
11960
- const result = (value.milliseconds ?? 0) / (60 * 60 * 1000) +
12165
+ const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 60 * 1000) +
11961
12166
  (value.seconds ?? 0) / (60 * 60) +
11962
12167
  (value.minutes ?? 0) / 60 +
11963
12168
  (value.hours ?? 0);
@@ -11965,7 +12170,7 @@ var TimeSpan;
11965
12170
  }
11966
12171
  TimeSpan.toHours = toHours;
11967
12172
  function toMinutes(value, round) {
11968
- const result = (value.milliseconds ?? 0) / (60 * 1000) +
12173
+ const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / (60 * 1000) +
11969
12174
  (value.seconds ?? 0) / 60 +
11970
12175
  (value.minutes ?? 0) +
11971
12176
  (value.hours ?? 0) * 60;
@@ -11973,12 +12178,16 @@ var TimeSpan;
11973
12178
  }
11974
12179
  TimeSpan.toMinutes = toMinutes;
11975
12180
  function toSeconds(value, round) {
11976
- const result = (value.milliseconds ?? 0) / 1000 + (value.seconds ?? 0) + (value.minutes ?? 0) * 60 + (value.hours ?? 0) * 60 * 60;
12181
+ const result = (dateToMilliseconds(value) + (value.milliseconds ?? 0)) / 1000 +
12182
+ (value.seconds ?? 0) +
12183
+ (value.minutes ?? 0) * 60 +
12184
+ (value.hours ?? 0) * 60 * 60;
11977
12185
  return performRound(result, round);
11978
12186
  }
11979
12187
  TimeSpan.toSeconds = toSeconds;
11980
12188
  function toMilliseconds(value, round) {
11981
- const result = (value.milliseconds ?? 0) +
12189
+ const result = dateToMilliseconds(value) +
12190
+ (value.milliseconds ?? 0) +
11982
12191
  (value.seconds ?? 0) * 1000 +
11983
12192
  (value.minutes ?? 0) * 60 * 1000 +
11984
12193
  (value.hours ?? 0) * 60 * 60 * 1000;
@@ -11986,6 +12195,12 @@ var TimeSpan;
11986
12195
  }
11987
12196
  TimeSpan.toMilliseconds = toMilliseconds;
11988
12197
  })(TimeSpan || (TimeSpan = {}));
12198
+ function dateToMilliseconds(span) {
12199
+ const now = Date.UTC(0, 0);
12200
+ const date = new Date(now);
12201
+ const future = Date.UTC(date.getUTCFullYear() + (span.years ?? 0), date.getUTCMonth() + (span.months ?? 0), date.getUTCDate() + (span.days ?? 0), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());
12202
+ return future.valueOf() - date.valueOf();
12203
+ }
11989
12204
  function performRound(value, round) {
11990
12205
  return !round
11991
12206
  ? value
@@ -12003,10 +12218,10 @@ function getLanguage(element) {
12003
12218
  }
12004
12219
  function convert(language) {
12005
12220
  if (language && language != "unknown" && language.length >= 2)
12006
- language = language.substr(0, 2);
12221
+ language = language.substring(0, 2);
12007
12222
  return exports.Language.is(language) ? language : undefined;
12008
12223
  }
12009
12224
 
12010
12225
  exports.getLanguage = getLanguage;
12011
12226
 
12012
- //# sourceMappingURL=getLanguage-430ecf04.js.map
12227
+ //# sourceMappingURL=getLanguage-4f0a45d5.js.map