@progress/kendo-react-dateinputs 7.2.4-develop.3 → 7.3.0-develop.1

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 (200) hide show
  1. package/calendar/components/Calendar.js +12 -0
  2. package/calendar/components/Calendar.mjs +328 -0
  3. package/calendar/components/CalendarCell.js +8 -0
  4. package/calendar/components/CalendarCell.mjs +101 -0
  5. package/calendar/components/CalendarHeaderTitle.js +8 -0
  6. package/calendar/components/CalendarHeaderTitle.mjs +23 -0
  7. package/calendar/components/CalendarNavigationItem.js +8 -0
  8. package/calendar/components/CalendarNavigationItem.mjs +29 -0
  9. package/calendar/components/CalendarWeekCell.js +8 -0
  10. package/calendar/components/CalendarWeekCell.mjs +23 -0
  11. package/calendar/components/Header.js +8 -0
  12. package/calendar/components/Header.mjs +78 -0
  13. package/calendar/components/HorizontalViewList.js +8 -0
  14. package/calendar/components/HorizontalViewList.mjs +120 -0
  15. package/calendar/components/MultiViewCalendar.js +8 -0
  16. package/calendar/components/MultiViewCalendar.mjs +428 -0
  17. package/calendar/components/Navigation.js +8 -0
  18. package/calendar/components/Navigation.mjs +117 -0
  19. package/calendar/components/TodayCommand.js +8 -0
  20. package/calendar/components/TodayCommand.mjs +74 -0
  21. package/calendar/components/View.js +8 -0
  22. package/calendar/components/View.mjs +153 -0
  23. package/calendar/components/ViewList.js +8 -0
  24. package/calendar/components/ViewList.mjs +228 -0
  25. package/calendar/models/CalendarViewEnum.js +8 -0
  26. package/calendar/models/CalendarViewEnum.mjs +12 -0
  27. package/calendar/models/NavigationAction.js +8 -0
  28. package/calendar/models/NavigationAction.mjs +12 -0
  29. package/calendar/models/SelectionRange.js +8 -0
  30. package/calendar/models/SelectionRange.mjs +12 -0
  31. package/calendar/services/BusViewService.js +8 -0
  32. package/calendar/services/BusViewService.mjs +58 -0
  33. package/calendar/services/CenturyViewService.js +8 -0
  34. package/calendar/services/CenturyViewService.mjs +126 -0
  35. package/calendar/services/DOMService.js +14 -0
  36. package/calendar/services/DOMService.mjs +124 -0
  37. package/calendar/services/DecadeViewService.js +8 -0
  38. package/calendar/services/DecadeViewService.mjs +126 -0
  39. package/calendar/services/MonthViewService.js +8 -0
  40. package/calendar/services/MonthViewService.mjs +139 -0
  41. package/calendar/services/NavigationService.js +8 -0
  42. package/calendar/services/NavigationService.mjs +36 -0
  43. package/calendar/services/ScrollSyncService.js +8 -0
  44. package/calendar/services/ScrollSyncService.mjs +50 -0
  45. package/calendar/services/WeekNamesService.js +8 -0
  46. package/calendar/services/WeekNamesService.mjs +24 -0
  47. package/calendar/services/YearViewService.js +8 -0
  48. package/calendar/services/YearViewService.mjs +135 -0
  49. package/common/AdaptiveMode.js +8 -0
  50. package/common/AdaptiveMode.mjs +73 -0
  51. package/common/PickerWrap.js +8 -0
  52. package/common/PickerWrap.mjs +32 -0
  53. package/common/constants.js +8 -0
  54. package/common/constants.mjs +12 -0
  55. package/dateinput/DateInput.js +8 -0
  56. package/dateinput/DateInput.mjs +503 -0
  57. package/dateinput/models/kendo-date.js +8 -0
  58. package/dateinput/models/kendo-date.mjs +233 -0
  59. package/dateinput/models/mask.js +8 -0
  60. package/dateinput/models/mask.mjs +16 -0
  61. package/dateinput/utils.js +8 -0
  62. package/dateinput/utils.mjs +38 -0
  63. package/datepicker/DatePicker.js +8 -0
  64. package/datepicker/DatePicker.mjs +462 -0
  65. package/datepicker/ToggleButton.js +8 -0
  66. package/datepicker/ToggleButton.mjs +13 -0
  67. package/daterangepicker/DateRangePicker.js +8 -0
  68. package/daterangepicker/DateRangePicker.mjs +426 -0
  69. package/datetimepicker/DateTimePicker.js +8 -0
  70. package/datetimepicker/DateTimePicker.mjs +475 -0
  71. package/datetimepicker/DateTimeSelector.js +8 -0
  72. package/datetimepicker/DateTimeSelector.mjs +275 -0
  73. package/dist/cdn/js/kendo-react-dateinputs.js +8 -21
  74. package/hooks/usePickerFloatingLabel.js +8 -0
  75. package/hooks/usePickerFloatingLabel.mjs +31 -0
  76. package/index.d.mts +4528 -5
  77. package/index.d.ts +4528 -39
  78. package/index.js +8 -21
  79. package/index.mjs +114 -6540
  80. package/messages/index.js +8 -0
  81. package/messages/index.mjs +59 -0
  82. package/package-metadata.js +8 -0
  83. package/package-metadata.mjs +19 -0
  84. package/package.json +7 -7
  85. package/timepicker/TimeList.js +14 -0
  86. package/timepicker/TimeList.mjs +230 -0
  87. package/timepicker/TimePart.js +8 -0
  88. package/timepicker/TimePart.mjs +267 -0
  89. package/timepicker/TimePicker.js +8 -0
  90. package/timepicker/TimePicker.mjs +479 -0
  91. package/timepicker/TimeSelector.js +8 -0
  92. package/timepicker/TimeSelector.mjs +250 -0
  93. package/timepicker/models/TimePart.js +8 -0
  94. package/timepicker/models/TimePart.mjs +18 -0
  95. package/timepicker/services/DOMService.js +8 -0
  96. package/timepicker/services/DOMService.mjs +34 -0
  97. package/timepicker/services/DayPeriodService.js +8 -0
  98. package/timepicker/services/DayPeriodService.mjs +89 -0
  99. package/timepicker/services/HoursService.js +8 -0
  100. package/timepicker/services/HoursService.mjs +92 -0
  101. package/timepicker/services/MinutesService.js +8 -0
  102. package/timepicker/services/MinutesService.mjs +91 -0
  103. package/timepicker/services/SecondsService.js +8 -0
  104. package/timepicker/services/SecondsService.mjs +91 -0
  105. package/timepicker/utils.js +8 -0
  106. package/timepicker/utils.mjs +91 -0
  107. package/utils.js +8 -0
  108. package/utils.mjs +111 -0
  109. package/virtualization/Virtualization.js +8 -0
  110. package/virtualization/Virtualization.mjs +204 -0
  111. package/virtualization/services/RowHeightService.js +8 -0
  112. package/virtualization/services/RowHeightService.mjs +50 -0
  113. package/virtualization/services/ScrollerService.js +8 -0
  114. package/virtualization/services/ScrollerService.mjs +52 -0
  115. package/PopupSettings.d.ts +0 -18
  116. package/calendar/components/Calendar.d.ts +0 -191
  117. package/calendar/components/CalendarCell.d.ts +0 -39
  118. package/calendar/components/CalendarHeaderTitle.d.ts +0 -32
  119. package/calendar/components/CalendarNavigationItem.d.ts +0 -31
  120. package/calendar/components/CalendarWeekCell.d.ts +0 -29
  121. package/calendar/components/Header.d.ts +0 -58
  122. package/calendar/components/HorizontalViewList.d.ts +0 -71
  123. package/calendar/components/MultiViewCalendar.d.ts +0 -212
  124. package/calendar/components/Navigation.d.ts +0 -80
  125. package/calendar/components/TodayCommand.d.ts +0 -35
  126. package/calendar/components/View.d.ts +0 -89
  127. package/calendar/components/ViewList.d.ts +0 -115
  128. package/calendar/models/ActiveView.d.ts +0 -8
  129. package/calendar/models/CalendarSettings.d.ts +0 -106
  130. package/calendar/models/CalendarViewEnum.d.ts +0 -13
  131. package/calendar/models/CellContext.d.ts +0 -23
  132. package/calendar/models/MultiViewCalendarMode.d.ts +0 -13
  133. package/calendar/models/MultiViewCalendarSettings.d.ts +0 -115
  134. package/calendar/models/NavigationAction.d.ts +0 -19
  135. package/calendar/models/SelectionRange.d.ts +0 -21
  136. package/calendar/models/SelectionRangeEnd.d.ts +0 -8
  137. package/calendar/models/ViewService.d.ts +0 -29
  138. package/calendar/models/index.d.ts +0 -15
  139. package/calendar/services/BusViewService.d.ts +0 -25
  140. package/calendar/services/CenturyViewService.d.ts +0 -29
  141. package/calendar/services/DOMService.d.ts +0 -33
  142. package/calendar/services/DecadeViewService.d.ts +0 -31
  143. package/calendar/services/MonthViewService.d.ts +0 -37
  144. package/calendar/services/NavigationService.d.ts +0 -18
  145. package/calendar/services/ScrollSyncService.d.ts +0 -25
  146. package/calendar/services/WeekNamesService.d.ts +0 -13
  147. package/calendar/services/YearViewService.d.ts +0 -35
  148. package/calendar/services/index.d.ts +0 -14
  149. package/common/AdaptiveMode.d.ts +0 -25
  150. package/common/PickerWrap.d.ts +0 -22
  151. package/common/constants.d.ts +0 -8
  152. package/dateinput/DateInput.d.ts +0 -355
  153. package/dateinput/models/DateInputSettings.d.ts +0 -103
  154. package/dateinput/models/format-placeholder.d.ts +0 -43
  155. package/dateinput/models/incremental-steps.d.ts +0 -15
  156. package/dateinput/models/index.d.ts +0 -11
  157. package/dateinput/models/kendo-date.d.ts +0 -57
  158. package/dateinput/models/mask.d.ts +0 -11
  159. package/dateinput/models/selection.d.ts +0 -11
  160. package/dateinput/utils.d.ts +0 -34
  161. package/datepicker/DatePicker.d.ts +0 -358
  162. package/datepicker/ToggleButton.d.ts +0 -14
  163. package/datepicker/models/DatePickerSettings.d.ts +0 -141
  164. package/datepicker/models/index.d.ts +0 -6
  165. package/daterangepicker/DateRangePicker.d.ts +0 -354
  166. package/daterangepicker/models/DateRangePickerCalendarSettings.d.ts +0 -10
  167. package/daterangepicker/models/DateRangePickerDateInputSettings.d.ts +0 -10
  168. package/daterangepicker/models/DateRangePickerPopupSettings.d.ts +0 -10
  169. package/daterangepicker/models/DateRangePickerSettings.d.ts +0 -126
  170. package/daterangepicker/models/index.d.ts +0 -9
  171. package/datetimepicker/DateTimePicker.d.ts +0 -342
  172. package/datetimepicker/DateTimeSelector.d.ts +0 -106
  173. package/datetimepicker/models/DateTimePickerSettings.d.ts +0 -144
  174. package/datetimepicker/models/index.d.ts +0 -6
  175. package/hooks/usePickerFloatingLabel.d.ts +0 -24
  176. package/messages/index.d.ts +0 -124
  177. package/package-metadata.d.ts +0 -9
  178. package/timepicker/TimeList.d.ts +0 -91
  179. package/timepicker/TimePart.d.ts +0 -141
  180. package/timepicker/TimePicker.d.ts +0 -355
  181. package/timepicker/TimeSelector.d.ts +0 -144
  182. package/timepicker/models/IncrementalSteps.d.ts +0 -12
  183. package/timepicker/models/ListItem.d.ts +0 -11
  184. package/timepicker/models/ListService.d.ts +0 -19
  185. package/timepicker/models/ListServiceSettings.d.ts +0 -16
  186. package/timepicker/models/TimePart.d.ts +0 -14
  187. package/timepicker/models/TimePickerSettings.d.ts +0 -133
  188. package/timepicker/models/index.d.ts +0 -11
  189. package/timepicker/services/DOMService.d.ts +0 -14
  190. package/timepicker/services/DayPeriodService.d.ts +0 -51
  191. package/timepicker/services/HoursService.d.ts +0 -37
  192. package/timepicker/services/MinutesService.d.ts +0 -36
  193. package/timepicker/services/SecondsService.d.ts +0 -36
  194. package/timepicker/services/index.d.ts +0 -10
  195. package/timepicker/utils.d.ts +0 -60
  196. package/utils.d.ts +0 -100
  197. package/virtualization/Virtualization.d.ts +0 -120
  198. package/virtualization/services/RowHeightService.d.ts +0 -22
  199. package/virtualization/services/ScrollerService.d.ts +0 -53
  200. package/virtualization/services/index.d.ts +0 -7
@@ -0,0 +1,250 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import * as a from "react";
10
+ import t from "prop-types";
11
+ import { cloneDate as c } from "@progress/kendo-date-math";
12
+ import { Keys as h, classNames as E, getActiveElement as T } from "@progress/kendo-react-common";
13
+ import { provideIntlService as _, provideLocalizationService as I, registerForIntl as S, registerForLocalization as x } from "@progress/kendo-react-intl";
14
+ import { timePickerCancel as v, messages as g, timePickerSet as w } from "../messages/index.mjs";
15
+ import { MIDNIGHT_DATE as A, MIN_TIME as K, MAX_TIME as M } from "../utils.mjs";
16
+ import { getNow as d, valueMerger as R, generateGetters as F } from "./utils.mjs";
17
+ import { TimePart as L } from "./TimePart.mjs";
18
+ import { Button as b } from "@progress/kendo-react-buttons";
19
+ const r = class r extends a.Component {
20
+ constructor(i) {
21
+ super(i), this._element = null, this._cancelButton = null, this._acceptButton = null, this.timePart = null, this.focusActiveList = () => {
22
+ this.timePart && this.timePart.focus({ preventScroll: !0 });
23
+ }, this.handleKeyDown = (e) => {
24
+ const { keyCode: n } = e;
25
+ switch (n) {
26
+ case h.enter:
27
+ this.hasActiveButton() || this.handleAccept(e);
28
+ return;
29
+ default:
30
+ return;
31
+ }
32
+ }, this.revertToNowButton = (e) => {
33
+ const { keyCode: n, shiftKey: o } = e;
34
+ !o && n === h.tab && (e.preventDefault(), this.props.nowButton !== !1 ? this.timePart && this.timePart.focus({ preventScroll: !0 }, !0) : this.timePart && this.timePart.focus({ preventScroll: !0 }));
35
+ }, this.handleNowKeyDown = (e) => {
36
+ var l;
37
+ const { keyCode: n, shiftKey: o } = e;
38
+ o && n === h.tab ? (e.preventDefault(), this._acceptButton && ((l = this._acceptButton.element) == null || l.focus({ preventScroll: !0 }))) : n === h.enter && (e.stopPropagation(), this.handleNowClick(e));
39
+ }, this.handleAccept = (e) => {
40
+ const n = this.mergeValue(
41
+ c(this.value || d()),
42
+ this.timePart ? this.timePart.value : this.current
43
+ );
44
+ this.setState({ value: n }), this.valueDuringOnChange = n;
45
+ const { onChange: o } = this.props;
46
+ o && o.call(void 0, {
47
+ syntheticEvent: e,
48
+ nativeEvent: e.nativeEvent,
49
+ value: this.value,
50
+ target: this
51
+ }), this.valueDuringOnChange = void 0;
52
+ }, this.handleReject = (e) => {
53
+ this.setState({ current: this.value });
54
+ const { onReject: n } = this.props;
55
+ n && n.call(void 0, e);
56
+ }, this.handleNowClick = (e) => {
57
+ const n = this.mergeValue(
58
+ c(this.value || d()),
59
+ d()
60
+ );
61
+ this.setState({
62
+ current: n,
63
+ value: n
64
+ }), this.valueDuringOnChange = n;
65
+ const { onChange: o } = this.props;
66
+ o && o.call(void 0, {
67
+ syntheticEvent: e,
68
+ nativeEvent: e.nativeEvent,
69
+ value: this.value,
70
+ target: this
71
+ }), this.valueDuringOnChange = void 0;
72
+ }, this.handleChange = (e) => {
73
+ this.setState({ current: e });
74
+ const { handleTimeChange: n } = this.props;
75
+ n && n.call(void 0, {
76
+ time: e
77
+ });
78
+ }, this.dateFormatParts = this.intl.splitDateFormat(this.props.format || r.defaultProps.format), this.mergeValue = R(F(this.dateFormatParts)), this.hasActiveButton = this.hasActiveButton.bind(this), this.state = {
79
+ current: this.props.value || A,
80
+ value: this.props.value || r.defaultProps.value
81
+ };
82
+ }
83
+ /**
84
+ * @hidden
85
+ */
86
+ get element() {
87
+ return this._element;
88
+ }
89
+ get value() {
90
+ const i = this.valueDuringOnChange !== void 0 ? this.valueDuringOnChange : this.props.value !== void 0 ? this.props.value : this.state.value;
91
+ return i !== null ? c(i) : null;
92
+ }
93
+ get intl() {
94
+ return _(this);
95
+ }
96
+ get current() {
97
+ return this.state.current !== null ? c(this.state.current) : null;
98
+ }
99
+ /**
100
+ * @hidden
101
+ */
102
+ componentWillUnmount() {
103
+ clearTimeout(this.nextTickId);
104
+ }
105
+ /**
106
+ * @hidden
107
+ */
108
+ render() {
109
+ const {
110
+ format: i,
111
+ cancelButton: e,
112
+ disabled: n,
113
+ tabIndex: o,
114
+ className: l,
115
+ smoothScroll: B,
116
+ min: k,
117
+ max: y,
118
+ boundRange: C,
119
+ nowButton: D,
120
+ steps: O,
121
+ show: N,
122
+ mobileMode: P
123
+ } = this.props, f = I(this), m = f.toLanguageString(v, g[v]), p = f.toLanguageString(w, g[w]);
124
+ return /* @__PURE__ */ a.createElement(
125
+ "div",
126
+ {
127
+ ref: (s) => {
128
+ this._element = s;
129
+ },
130
+ tabIndex: n ? void 0 : o || 0,
131
+ className: E("k-timeselector", l, {
132
+ "k-disabled": n
133
+ }),
134
+ onKeyDown: this.handleKeyDown
135
+ },
136
+ /* @__PURE__ */ a.createElement(
137
+ L,
138
+ {
139
+ ref: (s) => {
140
+ this.timePart = s;
141
+ },
142
+ value: this.current,
143
+ onChange: this.handleChange,
144
+ onNowClick: this.handleNowClick,
145
+ format: i,
146
+ smoothScroll: B,
147
+ min: k,
148
+ max: y,
149
+ boundRange: C,
150
+ disabled: n,
151
+ nowButton: D,
152
+ steps: O,
153
+ show: N,
154
+ mobileMode: P,
155
+ onNowKeyDown: this.handleNowKeyDown
156
+ }
157
+ ),
158
+ this.props.footer && /* @__PURE__ */ a.createElement("div", { className: "k-time-footer k-actions k-actions-stretched" }, e && /* @__PURE__ */ a.createElement(
159
+ b,
160
+ {
161
+ type: "button",
162
+ ref: (s) => {
163
+ this._cancelButton = s;
164
+ },
165
+ className: "k-time-cancel",
166
+ onClick: this.handleReject,
167
+ title: m,
168
+ "aria-label": m
169
+ },
170
+ m
171
+ ), /* @__PURE__ */ a.createElement(
172
+ b,
173
+ {
174
+ type: "button",
175
+ ref: (s) => {
176
+ this._acceptButton = s;
177
+ },
178
+ className: "k-time-accept",
179
+ themeColor: "primary",
180
+ onClick: this.handleAccept,
181
+ onKeyDown: this.revertToNowButton,
182
+ title: p,
183
+ "aria-label": p
184
+ },
185
+ p
186
+ ))
187
+ );
188
+ }
189
+ nextTick(i) {
190
+ clearTimeout(this.nextTickId), this.nextTickId = window.setTimeout(() => i());
191
+ }
192
+ hasActiveButton() {
193
+ if (!this._acceptButton || !this._acceptButton.element)
194
+ return !1;
195
+ const i = T(document);
196
+ return this._acceptButton && i === this._acceptButton.element || this._cancelButton && i === this._cancelButton.element;
197
+ }
198
+ };
199
+ r.propTypes = {
200
+ cancelButton: t.bool,
201
+ className: t.string,
202
+ disabled: t.bool,
203
+ format: t.oneOfType([
204
+ t.string,
205
+ t.shape({
206
+ skeleton: t.string,
207
+ pattern: t.string,
208
+ date: t.oneOf(["short", "medium", "long", "full"]),
209
+ time: t.oneOf(["short", "medium", "long", "full"]),
210
+ datetime: t.oneOf(["short", "medium", "long", "full"]),
211
+ era: t.oneOf(["narrow", "short", "long"]),
212
+ year: t.oneOf(["numeric", "2-digit"]),
213
+ month: t.oneOf(["numeric", "2-digit", "narrow", "short", "long"]),
214
+ day: t.oneOf(["numeric", "2-digit"]),
215
+ weekday: t.oneOf(["narrow", "short", "long"]),
216
+ hour: t.oneOf(["numeric", "2-digit"]),
217
+ hour12: t.bool,
218
+ minute: t.oneOf(["numeric", "2-digit"]),
219
+ second: t.oneOf(["numeric", "2-digit"]),
220
+ timeZoneName: t.oneOf(["short", "long"])
221
+ })
222
+ ]),
223
+ max: t.instanceOf(Date),
224
+ min: t.instanceOf(Date),
225
+ nowButton: t.bool,
226
+ steps: t.shape({
227
+ hour: t.number,
228
+ minute: t.number,
229
+ second: t.number
230
+ }),
231
+ smoothScroll: t.bool,
232
+ tabIndex: t.number,
233
+ value: t.instanceOf(Date),
234
+ show: t.bool
235
+ }, r.defaultProps = {
236
+ value: null,
237
+ disabled: !1,
238
+ cancelButton: !0,
239
+ format: "t",
240
+ min: K,
241
+ max: M,
242
+ boundRange: !1,
243
+ footer: !0
244
+ };
245
+ let u = r;
246
+ S(u);
247
+ x(u);
248
+ export {
249
+ u as TimeSelector
250
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e={dayperiod:"dayperiod",hour:"hour",millisecond:"millisecond",minute:"minute",second:"second"};exports.TIME_PART=e;
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ const e = {
10
+ dayperiod: "dayperiod",
11
+ hour: "hour",
12
+ millisecond: "millisecond",
13
+ minute: "minute",
14
+ second: "second"
15
+ };
16
+ export {
17
+ e as TIME_PART
18
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const t=require("../../utils.js"),h=require("@progress/kendo-react-common");class d{constructor(){this.itemHeight=0,this.timeListHeight=0,this.didCalculate=!1}ensureHeights(){this.timeListHeight===void 0&&this.calculateHeights()}calculateHeights(s){if(!h.canUseDOM)return;const e=t.domContainerFactory("div"),r=t.domContainerFactory("span"),n=t.domContainerFactory("ul"),c=t.domContainerFactory("li"),l=()=>c("<span>02</span>","k-item"),a=()=>n([l()],"k-reset"),u=()=>e([a()],"k-content k-scrollable k-time-container"),m=e([r("minute","k-title"),e([u()],"k-time-list")],"k-time-list-wrapper",{left:"-10000px",position:"absolute"}),o=s&&s.querySelector(".k-time-container")||document.body,i=o.appendChild(m);this.timeListHeight=i.querySelector(".k-scrollable").offsetHeight,this.itemHeight=i.querySelector("li").offsetHeight,o.removeChild(i),this.didCalculate=!0}}exports.DOMService=d;
@@ -0,0 +1,34 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import { domContainerFactory as t } from "../../utils.mjs";
10
+ import { canUseDOM as p } from "@progress/kendo-react-common";
11
+ class H {
12
+ constructor() {
13
+ this.itemHeight = 0, this.timeListHeight = 0, this.didCalculate = !1;
14
+ }
15
+ ensureHeights() {
16
+ this.timeListHeight === void 0 && this.calculateHeights();
17
+ }
18
+ calculateHeights(s) {
19
+ if (!p)
20
+ return;
21
+ const e = t("div"), r = t("span"), l = t("ul"), n = t("li"), c = () => n("<span>02</span>", "k-item"), a = () => l([c()], "k-reset"), m = () => e([a()], "k-content k-scrollable k-time-container"), h = e(
22
+ [
23
+ r("minute", "k-title"),
24
+ e([m()], "k-time-list")
25
+ ],
26
+ "k-time-list-wrapper",
27
+ { left: "-10000px", position: "absolute" }
28
+ ), o = s && s.querySelector(".k-time-container") || document.body, i = o.appendChild(h);
29
+ this.timeListHeight = i.querySelector(".k-scrollable").offsetHeight, this.itemHeight = i.querySelector("li").offsetHeight, o.removeChild(i), this.didCalculate = !0;
30
+ }
31
+ }
32
+ export {
33
+ H as DOMService
34
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const c=require("@progress/kendo-date-math"),o=(s,t)=>{const n=c.cloneDate(s);return n.setHours(t),n},h=s=>s!==null&&s<12,l=s=>s!==null&&(!s||s>11),g=(s,t,n)=>!t&&!n||s>=t&&s<=n,d=(s,t,n)=>!t&&!n||s>=t||s<=n;class x{constructor(t){this.intl=t,this.min=null,this.max=null,this.part=null}apply(t,n){const e=t.getHours(),i=h(e),r=h(n.getHours());if(i&&r||!i&&!r)return t;const[a,m=24]=this.normalizedRange(),u=e+(r?-12:12);return o(t,Math.min(Math.max(a,u),m||24))}configure(t){const{min:n=this.min,max:e=this.max,part:i=this.part}=t;this.min=n,this.max=e,this.part=i}data(t){const n=this.part&&this.part.names;if(!n||!this.min)return[];const e=[],[i,r]=this.normalizedRange(),a=this.intl.dateFormatNames(n);return h(i)&&e.push({text:a.am,value:o(this.min,i)}),l(r)&&e.push({text:a.pm,value:o(this.min,Math.max(12,r))}),this.min.getHours()!==i?e.reverse():e}isRangeChanged(t,n){return!1}limitRange(t,n,e){return[t,n]}total(){const[t,n]=this.normalizedRange();return!t&&!n?2:t>11||n<12?1:2}selectedIndex(t){if(!this.valueInList(t)||!this.min)return-1;const n=Math.floor(t.getHours()/12);return this.min.getHours()===this.normalizedRange()[0]?n:n===0?1:0}valueInList(t){return!this.min||!this.max?!1:(this.min.getHours()!==this.normalizedRange()[0]?d:g)(t.getHours(),this.min.getHours(),this.max.getHours())}normalizedRange(){const t=this.min.getHours(),n=this.max.getHours();return[Math.min(t,n),Math.max(t,n)]}}exports.DayPeriodService=x;
@@ -0,0 +1,89 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import { cloneDate as c } from "@progress/kendo-date-math";
10
+ const o = (s, t) => {
11
+ const n = c(s);
12
+ return n.setHours(t), n;
13
+ }, m = (s) => s !== null && s < 12, l = (s) => s !== null && (!s || s > 11), g = (s, t, n) => !t && !n || s >= t && s <= n, d = (s, t, n) => !t && !n || s >= t || s <= n;
14
+ class H {
15
+ constructor(t) {
16
+ this.intl = t, this.min = null, this.max = null, this.part = null;
17
+ }
18
+ /**
19
+ * @hidden
20
+ */
21
+ apply(t, n) {
22
+ const i = t.getHours(), e = m(i), r = m(n.getHours());
23
+ if (e && r || !e && !r)
24
+ return t;
25
+ const [a, h = 24] = this.normalizedRange(), u = i + (r ? -12 : 12);
26
+ return o(t, Math.min(Math.max(a, u), h || 24));
27
+ }
28
+ /**
29
+ * @hidden
30
+ */
31
+ configure(t) {
32
+ const { min: n = this.min, max: i = this.max, part: e = this.part } = t;
33
+ this.min = n, this.max = i, this.part = e;
34
+ }
35
+ /**
36
+ * @hidden
37
+ */
38
+ data(t) {
39
+ const n = this.part && this.part.names;
40
+ if (!n || !this.min)
41
+ return [];
42
+ const i = [], [e, r] = this.normalizedRange(), a = this.intl.dateFormatNames(n);
43
+ return m(e) && i.push({ text: a.am, value: o(this.min, e) }), l(r) && i.push({ text: a.pm, value: o(this.min, Math.max(12, r)) }), this.min.getHours() !== e ? i.reverse() : i;
44
+ }
45
+ /**
46
+ * @hidden
47
+ */
48
+ isRangeChanged(t, n) {
49
+ return !1;
50
+ }
51
+ /**
52
+ * @hidden
53
+ */
54
+ limitRange(t, n, i) {
55
+ return [t, n];
56
+ }
57
+ /**
58
+ * @hidden
59
+ */
60
+ total() {
61
+ const [t, n] = this.normalizedRange();
62
+ return !t && !n ? 2 : t > 11 || n < 12 ? 1 : 2;
63
+ }
64
+ /**
65
+ * @hidden
66
+ */
67
+ selectedIndex(t) {
68
+ if (!this.valueInList(t) || !this.min)
69
+ return -1;
70
+ const n = Math.floor(t.getHours() / 12);
71
+ return this.min.getHours() === this.normalizedRange()[0] ? n : n === 0 ? 1 : 0;
72
+ }
73
+ /**
74
+ * @hidden
75
+ */
76
+ valueInList(t) {
77
+ return !this.min || !this.max ? !1 : (this.min.getHours() !== this.normalizedRange()[0] ? d : g)(t.getHours(), this.min.getHours(), this.max.getHours());
78
+ }
79
+ normalizedRange() {
80
+ const t = this.min.getHours(), n = this.max.getHours();
81
+ return [
82
+ Math.min(t, n),
83
+ Math.max(t, n)
84
+ ];
85
+ }
86
+ }
87
+ export {
88
+ H as DayPeriodService
89
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const o=require("@progress/kendo-date-math"),p=require("../../utils.js"),r=require("../utils.js"),u=24,x=n=>t=>t%n,c=x(u),H=(n,t)=>s=>c(n+s*t),d=(n,t)=>c(u+n-t),g=n=>(t,s)=>!s||o.getDate(t).getTime()===o.getDate(s).getTime()?t:r.setHours(t,n),I=g(0),f=g(u-1);class L{constructor(t){this.intl=t,this.boundRange=!1,this.insertUndividedMax=!1,this.min=null,this.max=null,this.step=0,this.toListItem=null}apply(t,s){return r.setHours(t,s.getHours())}configure(t){const{boundRange:s=this.boundRange,insertUndividedMax:i=this.insertUndividedMax,min:h=this.min,max:e=this.max,part:a,step:l=this.step}=t;this.boundRange=s,this.insertUndividedMax=i,this.toListItem=M=>{const m=r.setHours(p.MIDNIGHT_DATE,M);return{text:this.intl.formatDate(m,a.pattern),value:m}},this.min=h,this.max=e,this.step=l}data(t){const[s]=this.range(t),i=H(s,this.step),h=a=>this.toListItem&&this.toListItem(i(a)),e=r.range(0,this.countFromMin(t)).map(h);return this.addLast(e),t&&this.addMissing(e,t),e}isRangeChanged(t,s){return!this.min||!this.max?!1:!o.isEqual(this.min,t)||!o.isEqual(this.max,s)}limitRange(t,s,i){return this.boundRange?[I(t,i),f(s,i)]:[t,s]}total(t){const s=this.insertUndividedMax&&this.isLastMissing(t)?1:0,i=this.isMissing(t)?1:0;return this.countFromMin(t)+i+s}selectedIndex(t){return Math.ceil(this.divideByStep(t))}valueInList(t){return t?this.insertUndividedMax&&this.lastHour(t)===t.getHours()||!this.isMissing(t):!0}addLast(t,s){return this.insertUndividedMax&&this.isLastMissing(s)&&this.toListItem&&t.push(this.toListItem(this.lastHour(s))),t}addMissing(t,s){if(this.valueInList(s))return t;if(this.toListItem){const i=this.toListItem(s.getHours());t.splice(this.selectedIndex(s),0,i)}return t}countFromMin(t){const[s,i]=this.range(t);return Math.floor(d(i,s)/this.step)+1}isMissing(t){return t?this.selectedIndex(t)!==this.divideByStep(t):!1}isLastMissing(t){return this.max!==null&&this.isMissing(r.setHours(this.max,this.lastHour(t)))}divideByStep(t){return d(t.getHours(),this.min.getHours())/this.step}lastHour(t){return this.range(t)[1]}range(t){const[s,i]=this.limitRange(this.min,this.max,t);return[s.getHours(),i.getHours()]}}exports.HoursService=L;
@@ -0,0 +1,92 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import { isEqual as d, getDate as u } from "@progress/kendo-date-math";
10
+ import { MIDNIGHT_DATE as l } from "../../utils.mjs";
11
+ import { setHours as r, range as I } from "../utils.mjs";
12
+ const a = 24, f = (n) => (t) => t % n, g = f(a), H = (n, t) => (i) => g(n + i * t), c = (n, t) => g(a + n - t), p = (n) => (t, i) => !i || u(t).getTime() === u(i).getTime() ? t : r(t, n), L = p(0), R = p(a - 1);
13
+ class B {
14
+ constructor(t) {
15
+ this.intl = t, this.boundRange = !1, this.insertUndividedMax = !1, this.min = null, this.max = null, this.step = 0, this.toListItem = null;
16
+ }
17
+ apply(t, i) {
18
+ return r(t, i.getHours());
19
+ }
20
+ configure(t) {
21
+ const {
22
+ boundRange: i = this.boundRange,
23
+ insertUndividedMax: s = this.insertUndividedMax,
24
+ min: o = this.min,
25
+ max: e = this.max,
26
+ part: h,
27
+ step: M = this.step
28
+ } = t;
29
+ this.boundRange = i, this.insertUndividedMax = s, this.toListItem = (x) => {
30
+ const m = r(l, x);
31
+ return {
32
+ text: this.intl.formatDate(m, h.pattern),
33
+ value: m
34
+ };
35
+ }, this.min = o, this.max = e, this.step = M;
36
+ }
37
+ data(t) {
38
+ const [i] = this.range(t), s = H(i, this.step), o = (h) => this.toListItem && this.toListItem(s(h)), e = I(0, this.countFromMin(t)).map(o);
39
+ return this.addLast(e), t && this.addMissing(e, t), e;
40
+ }
41
+ isRangeChanged(t, i) {
42
+ return !this.min || !this.max ? !1 : !d(this.min, t) || !d(this.max, i);
43
+ }
44
+ limitRange(t, i, s) {
45
+ return this.boundRange ? [L(t, s), R(i, s)] : [t, i];
46
+ }
47
+ total(t) {
48
+ const i = this.insertUndividedMax && this.isLastMissing(t) ? 1 : 0, s = this.isMissing(t) ? 1 : 0;
49
+ return this.countFromMin(t) + s + i;
50
+ }
51
+ selectedIndex(t) {
52
+ return Math.ceil(this.divideByStep(t));
53
+ }
54
+ valueInList(t) {
55
+ return t ? this.insertUndividedMax && this.lastHour(t) === t.getHours() || !this.isMissing(t) : !0;
56
+ }
57
+ addLast(t, i) {
58
+ return this.insertUndividedMax && this.isLastMissing(i) && this.toListItem && t.push(this.toListItem(this.lastHour(i))), t;
59
+ }
60
+ addMissing(t, i) {
61
+ if (this.valueInList(i))
62
+ return t;
63
+ if (this.toListItem) {
64
+ const s = this.toListItem(i.getHours());
65
+ t.splice(this.selectedIndex(i), 0, s);
66
+ }
67
+ return t;
68
+ }
69
+ countFromMin(t) {
70
+ const [i, s] = this.range(t);
71
+ return Math.floor(c(s, i) / this.step) + 1;
72
+ }
73
+ isMissing(t) {
74
+ return t ? this.selectedIndex(t) !== this.divideByStep(t) : !1;
75
+ }
76
+ isLastMissing(t) {
77
+ return this.max !== null && this.isMissing(r(this.max, this.lastHour(t)));
78
+ }
79
+ divideByStep(t) {
80
+ return c(t.getHours(), this.min.getHours()) / this.step;
81
+ }
82
+ lastHour(t) {
83
+ return this.range(t)[1];
84
+ }
85
+ range(t) {
86
+ const [i, s] = this.limitRange(this.min, this.max, t);
87
+ return [i.getHours(), s.getHours()];
88
+ }
89
+ }
90
+ export {
91
+ B as HoursService
92
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const m=require("@progress/kendo-date-math"),l=require("../../utils.js"),r=require("../utils.js"),a=60,x=n=>t=>t%n,c=x(a),p=(n,t)=>i=>c(n+i*t),M=(n,t)=>c(a+n-t),d=n=>(t,i)=>!i||t.getHours()===i.getHours()?t:r.setMinutes(t,n),I=d(0),L=d(a-1);class f{constructor(t){this.intl=t,this.toListItem=null,this.min=null,this.max=null,this.step=0,this.insertUndividedMax=!1}apply(t,i){return r.setMinutes(t,i.getMinutes())}configure(t){const{insertUndividedMax:i=this.insertUndividedMax,min:s=this.min,max:h=this.max,part:e,step:o=this.step}=t;this.insertUndividedMax=i,this.toListItem=g=>{const u=r.setMinutes(l.MIDNIGHT_DATE,g);return{text:this.intl.formatDate(u,e.pattern),value:u}},this.min=s,this.max=h,this.step=o}data(t){const[i]=this.range(t),s=p(i,this.step),h=o=>this.toListItem&&this.toListItem(s(o)),e=r.range(0,this.countFromMin(t)).map(h);return this.addLast(e),t&&this.addMissing(e,t),e}isRangeChanged(t,i){return this.min!==null&&this.max!==null&&(!m.isEqual(this.min,t)||!m.isEqual(this.max,i))}limitRange(t,i,s){return[I(t,s),L(i,s)]}total(t){const i=this.insertUndividedMax&&this.isLastMissing(t)?1:0,s=this.isMissing(t)?1:0;return this.countFromMin(t)+s+i}selectedIndex(t){return Math.ceil(this.divideByStep(t))}valueInList(t){return t?this.insertUndividedMax&&this.lastMinute(t)===t.getMinutes()||!this.isMissing(t):!0}addLast(t,i){return this.insertUndividedMax&&this.isLastMissing(i)&&this.toListItem&&t.push(this.toListItem(this.lastMinute(i))),t}addMissing(t,i){if(this.valueInList(i))return t;if(this.toListItem){const s=this.toListItem(i.getMinutes());t.splice(this.selectedIndex(i),0,s)}return t}countFromMin(t){const[i,s]=this.range(t);return Math.floor(M(s,i)/this.step)+1}isMissing(t){return t?this.selectedIndex(t)!==this.divideByStep(t):!1}isLastMissing(t){return this.max!==null&&this.isMissing(r.setMinutes(this.max,this.lastMinute(t)))}divideByStep(t){return M(t.getMinutes(),this.min.getMinutes())/this.step}lastMinute(t){return this.range(t)[1]}range(t){const[i,s]=this.limitRange(this.min,this.max,t);return[i.getMinutes(),s.getMinutes()]}}exports.MinutesService=f;
@@ -0,0 +1,91 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";
9
+ import { isEqual as u } from "@progress/kendo-date-math";
10
+ import { MIDNIGHT_DATE as p } from "../../utils.mjs";
11
+ import { setMinutes as r, range as x } from "../utils.mjs";
12
+ const m = 60, l = (n) => (t) => t % n, M = l(m), I = (n, t) => (i) => M(n + i * t), d = (n, t) => M(m + n - t), c = (n) => (t, i) => !i || t.getHours() === i.getHours() ? t : r(t, n), L = c(0), f = c(m - 1);
13
+ class S {
14
+ constructor(t) {
15
+ this.intl = t, this.toListItem = null, this.min = null, this.max = null, this.step = 0, this.insertUndividedMax = !1;
16
+ }
17
+ apply(t, i) {
18
+ return r(t, i.getMinutes());
19
+ }
20
+ configure(t) {
21
+ const {
22
+ insertUndividedMax: i = this.insertUndividedMax,
23
+ min: s = this.min,
24
+ max: h = this.max,
25
+ part: e,
26
+ step: o = this.step
27
+ } = t;
28
+ this.insertUndividedMax = i, this.toListItem = (g) => {
29
+ const a = r(p, g);
30
+ return {
31
+ text: this.intl.formatDate(a, e.pattern),
32
+ value: a
33
+ };
34
+ }, this.min = s, this.max = h, this.step = o;
35
+ }
36
+ data(t) {
37
+ const [i] = this.range(t), s = I(i, this.step), h = (o) => this.toListItem && this.toListItem(s(o)), e = x(0, this.countFromMin(t)).map(h);
38
+ return this.addLast(e), t && this.addMissing(e, t), e;
39
+ }
40
+ isRangeChanged(t, i) {
41
+ return this.min !== null && this.max !== null && (!u(this.min, t) || !u(this.max, i));
42
+ }
43
+ limitRange(t, i, s) {
44
+ return [L(t, s), f(i, s)];
45
+ }
46
+ total(t) {
47
+ const i = this.insertUndividedMax && this.isLastMissing(t) ? 1 : 0, s = this.isMissing(t) ? 1 : 0;
48
+ return this.countFromMin(t) + s + i;
49
+ }
50
+ selectedIndex(t) {
51
+ return Math.ceil(this.divideByStep(t));
52
+ }
53
+ valueInList(t) {
54
+ return t ? this.insertUndividedMax && this.lastMinute(t) === t.getMinutes() || !this.isMissing(t) : !0;
55
+ }
56
+ addLast(t, i) {
57
+ return this.insertUndividedMax && this.isLastMissing(i) && this.toListItem && t.push(this.toListItem(this.lastMinute(i))), t;
58
+ }
59
+ addMissing(t, i) {
60
+ if (this.valueInList(i))
61
+ return t;
62
+ if (this.toListItem) {
63
+ const s = this.toListItem(i.getMinutes());
64
+ t.splice(this.selectedIndex(i), 0, s);
65
+ }
66
+ return t;
67
+ }
68
+ countFromMin(t) {
69
+ const [i, s] = this.range(t);
70
+ return Math.floor(d(s, i) / this.step) + 1;
71
+ }
72
+ isMissing(t) {
73
+ return t ? this.selectedIndex(t) !== this.divideByStep(t) : !1;
74
+ }
75
+ isLastMissing(t) {
76
+ return this.max !== null && this.isMissing(r(this.max, this.lastMinute(t)));
77
+ }
78
+ divideByStep(t) {
79
+ return d(t.getMinutes(), this.min.getMinutes()) / this.step;
80
+ }
81
+ lastMinute(t) {
82
+ return this.range(t)[1];
83
+ }
84
+ range(t) {
85
+ const [i, s] = this.limitRange(this.min, this.max, t);
86
+ return [i.getMinutes(), s.getMinutes()];
87
+ }
88
+ }
89
+ export {
90
+ S as MinutesService
91
+ };
@@ -0,0 +1,8 @@
1
+ /**
2
+ * @license
3
+ *-------------------------------------------------------------------------------------------
4
+ * Copyright © 2024 Progress Software Corporation. All rights reserved.
5
+ * Licensed under commercial license. See LICENSE.md in the package root for more information
6
+ *-------------------------------------------------------------------------------------------
7
+ */
8
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const a=require("@progress/kendo-date-math"),M=require("../../utils.js"),r=require("../utils.js"),c=60,S=n=>t=>t%n,u=S(c),x=(n,t)=>s=>u(n+s*t),m=(n,t)=>u(c+n-t),g=n=>(t,s)=>!s||t.getMinutes()===s.getMinutes()&&t.getHours()===s.getHours()?t:r.setSeconds(t,n),p=g(0),I=g(c-1);class L{constructor(t){this.intl=t,this.toListItem=null,this.min=null,this.max=null,this.step=0,this.insertUndividedMax=!1}apply(t,s){return r.setSeconds(t,s.getSeconds())}configure(t){const{insertUndividedMax:s=this.insertUndividedMax,min:i=this.min,max:o=this.max,part:e,step:h=this.step}=t;this.insertUndividedMax=s,this.toListItem=l=>{const d=r.setSeconds(M.MIDNIGHT_DATE,l);return{text:this.intl.formatDate(d,e.pattern),value:d}},this.min=i,this.max=o,this.step=h}data(t){const[s]=this.range(t),i=x(s,this.step),o=h=>this.toListItem&&this.toListItem(i(h)),e=r.range(0,this.countFromMin(t)).map(o);return this.addLast(e),t&&this.addMissing(e,t),e}isRangeChanged(t,s){return this.min!==null&&this.max!==null&&(!a.isEqual(this.min,t)||!a.isEqual(this.max,s))}limitRange(t,s,i){return[p(t,i),I(s,i)]}total(t){const s=this.insertUndividedMax&&this.isLastMissing(t)?1:0,i=this.isMissing(t)?1:0;return this.countFromMin(t)+i+s}selectedIndex(t){return Math.ceil(this.divideByStep(t))}valueInList(t){return t?this.insertUndividedMax&&this.lastSecond(t)===t.getSeconds()||!this.isMissing(t):!0}divideByStep(t){return m(t.getSeconds(),this.min.getSeconds())/this.step}addLast(t,s){return this.insertUndividedMax&&this.isLastMissing(s)&&this.toListItem&&t.push(this.toListItem(this.lastSecond(s))),t}addMissing(t,s){if(this.valueInList(s))return t;if(this.toListItem){const i=this.toListItem(s.getSeconds());t.splice(this.selectedIndex(s),0,i)}return t}countFromMin(t){const[s,i]=this.range(t);return Math.floor(m(i,s)/this.step)+1}isMissing(t){return t?this.selectedIndex(t)!==this.divideByStep(t):!1}isLastMissing(t){return this.max!==null&&this.isMissing(r.setSeconds(this.max,this.lastSecond(t)))}lastSecond(t){return this.range(t)[1]}range(t){const[s,i]=this.limitRange(this.min,this.max,t);return[s.getSeconds(),i.getSeconds()]}}exports.SecondsService=L;