@onereach/ui-components 3.0.4-beta.2497.0 → 3.0.4-beta.2502.0

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 (119) hide show
  1. package/dist/bundled/v2/OrDatePicker-19e467e2.js +330 -0
  2. package/dist/bundled/v2/OrDateTimePicker-1011dc69.js +440 -0
  3. package/dist/bundled/v2/OrDateTimePickerMonthSelect-9e64d257.js +408 -0
  4. package/dist/bundled/v2/OrDateTimePickerPopoverHeader-c8672c0d.js +239 -0
  5. package/dist/bundled/v2/OrDateTimePickerTimeSelect-158d717b.js +179 -0
  6. package/dist/bundled/v2/OrTimePicker-1b3a758a.js +318 -0
  7. package/dist/bundled/v2/components/index.d.ts +2 -0
  8. package/dist/bundled/v2/components/index.js +7 -2
  9. package/dist/bundled/v2/components/or-date-picker-v3/OrDatePicker.vue.d.ts +183 -0
  10. package/dist/bundled/v2/components/or-date-picker-v3/index.d.ts +2 -0
  11. package/dist/bundled/v2/components/or-date-picker-v3/index.js +31 -0
  12. package/dist/bundled/v2/components/or-date-picker-v3/props.d.ts +1 -0
  13. package/dist/bundled/v2/components/or-date-picker-v3/styles.d.ts +2 -0
  14. package/dist/bundled/v2/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +11 -0
  15. package/dist/bundled/v2/components/or-date-time-picker-v3/index.js +7 -5
  16. package/dist/bundled/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
  17. package/dist/bundled/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
  18. package/dist/bundled/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
  19. package/dist/bundled/v2/components/or-time-picker-v3/OrTimePicker.vue.d.ts +183 -0
  20. package/dist/bundled/v2/components/or-time-picker-v3/index.d.ts +2 -0
  21. package/dist/bundled/v2/components/or-time-picker-v3/index.js +29 -0
  22. package/dist/bundled/v2/components/or-time-picker-v3/props.d.ts +1 -0
  23. package/dist/bundled/v2/components/or-time-picker-v3/styles.d.ts +2 -0
  24. package/dist/bundled/v2/index.js +8 -3
  25. package/dist/bundled/v3/OrDatePicker.vue_vue_type_script_lang-8eafbe6b.js +177 -0
  26. package/dist/bundled/v3/OrDateTimePicker.vue_vue_type_script_lang-b2a9ef8d.js +226 -0
  27. package/dist/bundled/v3/OrDateTimePickerMonthSelect-8989be5a.js +341 -0
  28. package/dist/bundled/v3/OrDateTimePickerPopoverHeader-caffcc00.js +162 -0
  29. package/dist/bundled/v3/OrDateTimePickerTimeSelect-e3a89bed.js +148 -0
  30. package/dist/bundled/v3/OrTimePicker.vue_vue_type_script_lang-f46eb37f.js +176 -0
  31. package/dist/bundled/v3/components/index.d.ts +2 -0
  32. package/dist/bundled/v3/components/index.js +8 -3
  33. package/dist/bundled/v3/components/or-date-picker-v3/OrDatePicker.vue.d.ts +183 -0
  34. package/dist/bundled/v3/components/or-date-picker-v3/index.d.ts +2 -0
  35. package/dist/bundled/v3/components/or-date-picker-v3/index.js +37 -0
  36. package/dist/bundled/v3/components/or-date-picker-v3/props.d.ts +1 -0
  37. package/dist/bundled/v3/components/or-date-picker-v3/styles.d.ts +2 -0
  38. package/dist/bundled/v3/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +11 -0
  39. package/dist/bundled/v3/components/or-date-time-picker-v3/index.js +7 -4
  40. package/dist/bundled/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
  41. package/dist/bundled/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
  42. package/dist/bundled/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
  43. package/dist/bundled/v3/components/or-time-picker-v3/OrTimePicker.vue.d.ts +183 -0
  44. package/dist/bundled/v3/components/or-time-picker-v3/index.d.ts +2 -0
  45. package/dist/bundled/v3/components/or-time-picker-v3/index.js +33 -0
  46. package/dist/bundled/v3/components/or-time-picker-v3/props.d.ts +1 -0
  47. package/dist/bundled/v3/components/or-time-picker-v3/styles.d.ts +2 -0
  48. package/dist/bundled/v3/index.js +638 -408
  49. package/dist/esm/v2/OrDatePicker-454f5267.js +329 -0
  50. package/dist/esm/v2/OrDateTimePicker-3f533d0c.js +439 -0
  51. package/dist/esm/v2/OrDateTimePickerMonthSelect-380d9c90.js +406 -0
  52. package/dist/esm/v2/OrDateTimePickerPopoverHeader-e11d3222.js +235 -0
  53. package/dist/esm/v2/OrDateTimePickerTimeSelect-83dd1e81.js +177 -0
  54. package/dist/esm/v2/OrTimePicker-f23c8577.js +317 -0
  55. package/dist/esm/v2/components/index.d.ts +2 -0
  56. package/dist/esm/v2/components/index.js +8 -3
  57. package/dist/esm/v2/components/or-date-picker-v3/OrDatePicker.vue.d.ts +183 -0
  58. package/dist/esm/v2/components/or-date-picker-v3/index.d.ts +2 -0
  59. package/dist/esm/v2/components/or-date-picker-v3/index.js +29 -0
  60. package/dist/esm/v2/components/or-date-picker-v3/props.d.ts +1 -0
  61. package/dist/esm/v2/components/or-date-picker-v3/styles.d.ts +2 -0
  62. package/dist/esm/v2/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +11 -0
  63. package/dist/esm/v2/components/or-date-time-picker-v3/index.js +4 -2
  64. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
  65. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
  66. package/dist/esm/v2/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
  67. package/dist/esm/v2/components/or-time-picker-v3/OrTimePicker.vue.d.ts +183 -0
  68. package/dist/esm/v2/components/or-time-picker-v3/index.d.ts +2 -0
  69. package/dist/esm/v2/components/or-time-picker-v3/index.js +27 -0
  70. package/dist/esm/v2/components/or-time-picker-v3/props.d.ts +1 -0
  71. package/dist/esm/v2/components/or-time-picker-v3/styles.d.ts +2 -0
  72. package/dist/esm/v2/index.js +8 -3
  73. package/dist/esm/v3/OrDatePicker-390f7f11.js +288 -0
  74. package/dist/esm/v3/OrDateTimePicker-54db4170.js +390 -0
  75. package/dist/esm/v3/OrDateTimePickerMonthSelect-709b673d.js +338 -0
  76. package/dist/esm/v3/OrDateTimePickerPopoverHeader-c771a251.js +161 -0
  77. package/dist/esm/v3/OrDateTimePickerTimeSelect-2c8a7f9c.js +148 -0
  78. package/dist/esm/v3/OrTimePicker-362ca566.js +282 -0
  79. package/dist/esm/v3/components/index.d.ts +2 -0
  80. package/dist/esm/v3/components/index.js +7 -2
  81. package/dist/esm/v3/components/or-date-picker-v3/OrDatePicker.vue.d.ts +183 -0
  82. package/dist/esm/v3/components/or-date-picker-v3/index.d.ts +2 -0
  83. package/dist/esm/v3/components/or-date-picker-v3/index.js +27 -0
  84. package/dist/esm/v3/components/or-date-picker-v3/props.d.ts +1 -0
  85. package/dist/esm/v3/components/or-date-picker-v3/styles.d.ts +2 -0
  86. package/dist/esm/v3/components/or-date-time-picker-v3/OrDateTimePicker.vue.d.ts +11 -0
  87. package/dist/esm/v3/components/or-date-time-picker-v3/index.js +4 -2
  88. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue.d.ts +12 -0
  89. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue.d.ts +12 -0
  90. package/dist/esm/v3/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue.d.ts +12 -0
  91. package/dist/esm/v3/components/or-time-picker-v3/OrTimePicker.vue.d.ts +183 -0
  92. package/dist/esm/v3/components/or-time-picker-v3/index.d.ts +2 -0
  93. package/dist/esm/v3/components/or-time-picker-v3/index.js +25 -0
  94. package/dist/esm/v3/components/or-time-picker-v3/props.d.ts +1 -0
  95. package/dist/esm/v3/components/or-time-picker-v3/styles.d.ts +2 -0
  96. package/dist/esm/v3/index.js +7 -2
  97. package/package.json +2 -2
  98. package/src/components/index.ts +2 -0
  99. package/src/components/or-date-picker-v3/OrDatePicker.docs.mdx +7 -0
  100. package/src/components/or-date-picker-v3/OrDatePicker.stories3.ts +160 -0
  101. package/src/components/or-date-picker-v3/OrDatePicker.vue +308 -0
  102. package/src/components/or-date-picker-v3/index.ts +2 -0
  103. package/src/components/or-date-picker-v3/props.ts +1 -0
  104. package/src/components/or-date-picker-v3/styles.ts +12 -0
  105. package/src/components/or-date-time-picker-v3/OrDateTimePicker.stories3.ts +4 -0
  106. package/src/components/or-date-time-picker-v3/OrDateTimePicker.vue +17 -37
  107. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue +7 -1
  108. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue +8 -1
  109. package/src/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue +8 -1
  110. package/src/components/or-time-picker-v3/OrTimePicker.docs.mdx +7 -0
  111. package/src/components/or-time-picker-v3/OrTimePicker.stories3.ts +160 -0
  112. package/src/components/or-time-picker-v3/OrTimePicker.vue +302 -0
  113. package/src/components/or-time-picker-v3/index.ts +2 -0
  114. package/src/components/or-time-picker-v3/props.ts +1 -0
  115. package/src/components/or-time-picker-v3/styles.ts +12 -0
  116. package/dist/bundled/v2/OrDateTimePicker-d6f327ad.js +0 -1215
  117. package/dist/bundled/v3/OrDateTimePicker.vue_vue_type_script_lang-ba3ac4fb.js +0 -834
  118. package/dist/esm/v2/OrDateTimePicker-57094f24.js +0 -1208
  119. package/dist/esm/v3/OrDateTimePicker-a8247a84.js +0 -997
@@ -0,0 +1,338 @@
1
+ import { defineComponent, ref, computed } from 'vue-demi';
2
+ import { s as script$2 } from './OrButton-5a850657.js';
3
+ import { u as useDefaultYear, c as useDefaultMonth, d as useDefaultDate, e as useDefaultHours, f as useDefaultMinutes } from './OrDateTimePickerPopoverHeader-c771a251.js';
4
+ import { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, Fragment, renderList, createBlock, withModifiers, withCtx, createTextVNode, toDisplayString, createVNode } from 'vue';
5
+ import { s as script$4 } from './OrIconButton-e3f4d060.js';
6
+ import { s as script$3 } from './OrIcon-62793572.js';
7
+ import { s as script$6 } from './OrMenuItem-dbee450f.js';
8
+ import { s as script$5 } from './OrMenu-70cee836.js';
9
+ import './OrPopover-3ac8f589.js';
10
+
11
+ const DateTimePickerDaySelect = [
12
+ // Layout
13
+ 'layout-column',
14
+ // Spacing
15
+ 'px-md', 'py-md', 'gap-sm'];
16
+ const DateTimePickerDaySelectButtonGroup = [
17
+ // Layout
18
+ 'grid', 'grid-cols-7',
19
+ // Spacing
20
+ 'gap-xs'];
21
+ const DateTimePickerDaySelectButtonGroupItem = [
22
+ // Box
23
+ 'min-w-fit',
24
+ // Spacing
25
+ '!px-sm', '!py-sm',
26
+ // Typography
27
+ 'typography-caption-regular'];
28
+
29
+ var script$1 = defineComponent({
30
+ name: 'OrDateTimePickerDaySelect',
31
+ components: {
32
+ OrButton: script$2
33
+ },
34
+ model: {
35
+ prop: 'modelValue',
36
+ event: 'update:modelValue'
37
+ },
38
+ props: {
39
+ modelValue: {
40
+ type: Date,
41
+ default: undefined
42
+ },
43
+ filter: {
44
+ type: Function,
45
+ default: undefined
46
+ }
47
+ },
48
+ emits: ['update:modelValue'],
49
+ expose: ['root'],
50
+ setup(props, context) {
51
+ // Refs
52
+ const root = ref();
53
+ // Styles
54
+ const rootStyles = computed(() => ['or-date-time-picker-day-select', ...DateTimePickerDaySelect]);
55
+ const buttonGroupStyles = computed(() => [...DateTimePickerDaySelectButtonGroup]);
56
+ const buttonGroupItemStyles = computed(() => [...DateTimePickerDaySelectButtonGroupItem]);
57
+ // State
58
+ const proxyModelValue = computed({
59
+ get: () => {
60
+ var _a;
61
+ return (_a = props.modelValue) !== null && _a !== void 0 ? _a : new Date(Date.UTC(useDefaultYear(), useDefaultMonth(), useDefaultDate(), useDefaultHours(), useDefaultMinutes()));
62
+ },
63
+ set: value => {
64
+ context.emit('update:modelValue', value);
65
+ }
66
+ });
67
+ const dayOptions = computed(() => {
68
+ const monthStartDate = new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), proxyModelValue.value.getUTCMonth(), 1, proxyModelValue.value.getUTCHours(), proxyModelValue.value.getUTCMinutes()));
69
+ const monthEndDate = new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), proxyModelValue.value.getUTCMonth() + 1, 0, proxyModelValue.value.getUTCHours(), proxyModelValue.value.getUTCMinutes()));
70
+ const calendarStartDate = new Date(Date.UTC(monthStartDate.getUTCFullYear(), monthStartDate.getUTCMonth(), 1 - (monthStartDate.getUTCDay() + 6) % 7, monthStartDate.getUTCHours(), monthStartDate.getUTCMinutes()));
71
+ const calendarEndDate = new Date(Date.UTC(monthEndDate.getUTCFullYear(), monthEndDate.getUTCMonth() + 1, (7 - monthEndDate.getUTCDay()) % 7, monthEndDate.getUTCHours(), monthEndDate.getUTCMinutes()));
72
+ return (() => {
73
+ let options = [],
74
+ value = calendarStartDate;
75
+ while (Number(value) !== Number(calendarEndDate)) {
76
+ options = [...options, value];
77
+ value = new Date(Date.UTC(value.getUTCFullYear(), value.getUTCMonth(), value.getUTCDate() + 1, value.getUTCHours(), value.getUTCMinutes()));
78
+ }
79
+ return options;
80
+ })();
81
+ });
82
+ // Methods
83
+ function formatDay(value) {
84
+ return value.toLocaleString('default', {
85
+ day: 'numeric',
86
+ timeZone: 'UTC'
87
+ });
88
+ }
89
+ return {
90
+ root,
91
+ rootStyles,
92
+ buttonGroupStyles,
93
+ buttonGroupItemStyles,
94
+ proxyModelValue,
95
+ dayOptions,
96
+ formatDay
97
+ };
98
+ }
99
+ });
100
+
101
+ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
102
+ const _component_OrButton = resolveComponent("OrButton");
103
+ return openBlock(), createElementBlock("div", {
104
+ ref: "root",
105
+ class: normalizeClass(_ctx.rootStyles)
106
+ }, [createElementVNode("div", {
107
+ class: normalizeClass(_ctx.buttonGroupStyles)
108
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.dayOptions, value => {
109
+ return openBlock(), createBlock(_component_OrButton, {
110
+ key: Number(value),
111
+ class: normalizeClass(_ctx.buttonGroupItemStyles),
112
+ variant: Number(value) === Number(_ctx.proxyModelValue) ? 'contained' : 'text',
113
+ color: Number(value) === Number(_ctx.proxyModelValue) ? 'primary' : 'inherit',
114
+ disabled: _ctx.filter && !_ctx.filter(value),
115
+ onClick: withModifiers($event => _ctx.proxyModelValue = value, ["stop"])
116
+ }, {
117
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatDay(value)), 1 /* TEXT */)]),
118
+
119
+ _: 2 /* DYNAMIC */
120
+ }, 1032 /* PROPS, DYNAMIC_SLOTS */, ["class", "variant", "color", "disabled", "onClick"]);
121
+ }), 128 /* KEYED_FRAGMENT */))], 2 /* CLASS */)], 2 /* CLASS */);
122
+ }
123
+
124
+ script$1.render = render$1;
125
+ script$1.__file = "src/components/or-date-time-picker-v3/partials/or-date-time-picker-day-select/OrDateTimePickerDaySelect.vue";
126
+
127
+ const DateTimePickerMonthSelect = [
128
+ // Layout
129
+ 'layout-row justify-between',
130
+ // Spacing
131
+ 'px-md', 'py-md', 'gap-md'];
132
+
133
+ var script = defineComponent({
134
+ name: 'OrDateTimePickerMonthSelect',
135
+ components: {
136
+ OrButton: script$2,
137
+ OrIcon: script$3,
138
+ OrIconButton: script$4,
139
+ OrMenu: script$5,
140
+ OrMenuItem: script$6
141
+ },
142
+ model: {
143
+ prop: 'modelValue',
144
+ event: 'update:modelValue'
145
+ },
146
+ props: {
147
+ modelValue: {
148
+ type: Date,
149
+ default: undefined
150
+ },
151
+ filter: {
152
+ type: Function,
153
+ default: undefined
154
+ }
155
+ },
156
+ emits: ['update:modelValue'],
157
+ expose: ['root'],
158
+ setup(props, context) {
159
+ // Refs
160
+ const root = ref();
161
+ const yearButton = ref();
162
+ const monthButton = ref();
163
+ const yearButtonRoot = computed(() => {
164
+ var _a;
165
+ return (_a = yearButton.value) === null || _a === void 0 ? void 0 : _a.root;
166
+ });
167
+ const monthButtonRoot = computed(() => {
168
+ var _a;
169
+ return (_a = monthButton.value) === null || _a === void 0 ? void 0 : _a.root;
170
+ });
171
+ const yearMenu = ref();
172
+ const monthMenu = ref();
173
+ const yearMenuState = computed(() => {
174
+ var _a;
175
+ return (_a = yearMenu.value) === null || _a === void 0 ? void 0 : _a.state;
176
+ });
177
+ const monthMenuState = computed(() => {
178
+ var _a;
179
+ return (_a = monthMenu.value) === null || _a === void 0 ? void 0 : _a.state;
180
+ });
181
+ // Styles
182
+ const rootStyles = computed(() => ['or-date-time-picker-month-select', ...DateTimePickerMonthSelect]);
183
+ // State
184
+ const proxyModelValue = computed({
185
+ get: () => {
186
+ var _a;
187
+ return (_a = props.modelValue) !== null && _a !== void 0 ? _a : new Date(Date.UTC(useDefaultYear(), useDefaultMonth(), useDefaultDate(), useDefaultHours(), useDefaultMinutes()));
188
+ },
189
+ set: value => {
190
+ context.emit('update:modelValue', value);
191
+ }
192
+ });
193
+ const yearOptions = computed(() => {
194
+ return Array.from({
195
+ length: 11
196
+ }).map((_value, index, {
197
+ length
198
+ }) => {
199
+ const value = proxyModelValue.value.getUTCFullYear() - Math.floor(length / 2) + index;
200
+ return new Date(Date.UTC(value, proxyModelValue.value.getUTCMonth(), proxyModelValue.value.getUTCDate(), proxyModelValue.value.getUTCHours(), proxyModelValue.value.getUTCMinutes()));
201
+ });
202
+ });
203
+ const monthOptions = computed(() => {
204
+ return Array.from({
205
+ length: 12
206
+ }, (_value, index) => {
207
+ const value = index;
208
+ return new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), value, proxyModelValue.value.getUTCDate(), proxyModelValue.value.getUTCHours(), proxyModelValue.value.getUTCMinutes()));
209
+ });
210
+ });
211
+ // Methods
212
+ function goToNextMonth() {
213
+ proxyModelValue.value = new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), proxyModelValue.value.getUTCMonth() + 1, proxyModelValue.value.getUTCDate(), proxyModelValue.value.getUTCHours(), proxyModelValue.value.getUTCMinutes()));
214
+ }
215
+ function goToPreviousMonth() {
216
+ proxyModelValue.value = new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), proxyModelValue.value.getUTCMonth() - 1, proxyModelValue.value.getUTCDate(), proxyModelValue.value.getUTCHours(), proxyModelValue.value.getUTCMinutes()));
217
+ }
218
+ function formatYear(value) {
219
+ return value.toLocaleString('default', {
220
+ year: 'numeric',
221
+ timeZone: 'UTC'
222
+ });
223
+ }
224
+ function formatMonth(value) {
225
+ return value.toLocaleString('default', {
226
+ month: 'long',
227
+ timeZone: 'UTC'
228
+ });
229
+ }
230
+ return {
231
+ root,
232
+ yearButton,
233
+ monthButton,
234
+ yearButtonRoot,
235
+ monthButtonRoot,
236
+ yearMenu,
237
+ monthMenu,
238
+ yearMenuState,
239
+ monthMenuState,
240
+ rootStyles,
241
+ proxyModelValue,
242
+ yearOptions,
243
+ monthOptions,
244
+ goToNextMonth,
245
+ goToPreviousMonth,
246
+ formatYear,
247
+ formatMonth
248
+ };
249
+ }
250
+ });
251
+
252
+ const _hoisted_1 = {
253
+ class: /*#__PURE__*/normalizeClass(['layout-row-reverse', 'gap-md'])
254
+ };
255
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
256
+ const _component_OrIconButton = resolveComponent("OrIconButton");
257
+ const _component_OrIcon = resolveComponent("OrIcon");
258
+ const _component_OrButton = resolveComponent("OrButton");
259
+ const _component_OrMenuItem = resolveComponent("OrMenuItem");
260
+ const _component_OrMenu = resolveComponent("OrMenu");
261
+ return openBlock(), createElementBlock("div", {
262
+ ref: "root",
263
+ class: normalizeClass(_ctx.rootStyles)
264
+ }, [createVNode(_component_OrIconButton, {
265
+ icon: 'chevron_left',
266
+ onClick: _cache[0] || (_cache[0] = withModifiers($event => _ctx.goToPreviousMonth(), ["stop"]))
267
+ }), createElementVNode("div", _hoisted_1, [createVNode(_component_OrButton, {
268
+ ref: "yearButton",
269
+ variant: 'link',
270
+ color: 'inherit',
271
+ onClick: _cache[1] || (_cache[1] = withModifiers($event => _ctx.yearMenu.open(), ["stop"]))
272
+ }, {
273
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatYear(_ctx.proxyModelValue)) + " ", 1 /* TEXT */), createVNode(_component_OrIcon, {
274
+ icon: _ctx.yearMenuState === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'
275
+ }, null, 8 /* PROPS */, ["icon"])]),
276
+ _: 1 /* STABLE */
277
+ }, 512 /* NEED_PATCH */), createVNode(_component_OrButton, {
278
+ ref: "monthButton",
279
+ variant: 'link',
280
+ color: 'inherit',
281
+ onClick: _cache[2] || (_cache[2] = withModifiers($event => _ctx.monthMenu.open(), ["stop"]))
282
+ }, {
283
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatMonth(_ctx.proxyModelValue)) + " ", 1 /* TEXT */), createVNode(_component_OrIcon, {
284
+ icon: _ctx.monthMenuState === 'open' ? 'arrow_drop_up' : 'arrow_drop_down'
285
+ }, null, 8 /* PROPS */, ["icon"])]),
286
+ _: 1 /* STABLE */
287
+ }, 512 /* NEED_PATCH */), createVNode(_component_OrMenu, {
288
+ ref: "yearMenu",
289
+ trigger: _ctx.yearButtonRoot
290
+ }, {
291
+ default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.yearOptions, value => {
292
+ return openBlock(), createBlock(_component_OrMenuItem, {
293
+ key: Number(value),
294
+ selected: Number(value) === Number(_ctx.proxyModelValue),
295
+ disabled: _ctx.filter && !_ctx.filter(value),
296
+ onClick: withModifiers($event => {
297
+ _ctx.proxyModelValue = value;
298
+ _ctx.yearMenu.close();
299
+ }, ["stop"])
300
+ }, {
301
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatYear(value)), 1 /* TEXT */)]),
302
+
303
+ _: 2 /* DYNAMIC */
304
+ }, 1032 /* PROPS, DYNAMIC_SLOTS */, ["selected", "disabled", "onClick"]);
305
+ }), 128 /* KEYED_FRAGMENT */))]),
306
+
307
+ _: 1 /* STABLE */
308
+ }, 8 /* PROPS */, ["trigger"]), createVNode(_component_OrMenu, {
309
+ ref: "monthMenu",
310
+ trigger: _ctx.monthButtonRoot
311
+ }, {
312
+ default: withCtx(() => [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.monthOptions, value => {
313
+ return openBlock(), createBlock(_component_OrMenuItem, {
314
+ key: Number(value),
315
+ selected: Number(value) === Number(_ctx.proxyModelValue),
316
+ disabled: _ctx.filter && !_ctx.filter(value),
317
+ onClick: withModifiers($event => {
318
+ _ctx.proxyModelValue = value;
319
+ _ctx.monthMenu.close();
320
+ }, ["stop"])
321
+ }, {
322
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatMonth(value)), 1 /* TEXT */)]),
323
+
324
+ _: 2 /* DYNAMIC */
325
+ }, 1032 /* PROPS, DYNAMIC_SLOTS */, ["selected", "disabled", "onClick"]);
326
+ }), 128 /* KEYED_FRAGMENT */))]),
327
+
328
+ _: 1 /* STABLE */
329
+ }, 8 /* PROPS */, ["trigger"])]), createVNode(_component_OrIconButton, {
330
+ icon: 'chevron_right',
331
+ onClick: _cache[3] || (_cache[3] = withModifiers($event => _ctx.goToNextMonth(), ["stop"]))
332
+ })], 2 /* CLASS */);
333
+ }
334
+
335
+ script.render = render;
336
+ script.__file = "src/components/or-date-time-picker-v3/partials/or-date-time-picker-month-select/OrDateTimePickerMonthSelect.vue";
337
+
338
+ export { script as a, script$1 as s };
@@ -0,0 +1,161 @@
1
+ import { defineComponent, ref, computed } from 'vue-demi';
2
+ import { s as script$3 } from './OrLabel-4da56db0.js';
3
+ import { resolveComponent, openBlock, createElementBlock, normalizeClass, createVNode, withCtx, createTextVNode, toDisplayString, createElementVNode, renderSlot, withModifiers } from 'vue';
4
+ import { s as script$4 } from './OrButton-5a850657.js';
5
+
6
+ function useDefaultDate() {
7
+ return new Date().getUTCDate();
8
+ }
9
+
10
+ function useDefaultHours() {
11
+ return 0;
12
+ }
13
+
14
+ function useDefaultMinutes() {
15
+ return 0;
16
+ }
17
+
18
+ function useDefaultMonth() {
19
+ return new Date().getUTCMonth();
20
+ }
21
+
22
+ function useDefaultYear() {
23
+ return new Date().getUTCFullYear();
24
+ }
25
+
26
+ const DateTimePickerMobileControl = [
27
+ // Layout
28
+ 'layout-column',
29
+ // Spacing
30
+ 'gap-xs'];
31
+ const DateTimePickerMobileControlContent = [
32
+ // Typography
33
+ 'typography-headline-1',
34
+ // Theme
35
+ 'theme-foreground-outline', 'dark:theme-foreground-outline-dark'];
36
+
37
+ var script$2 = defineComponent({
38
+ name: 'OrDateTimePickerMobileControl',
39
+ components: {
40
+ OrLabel: script$3
41
+ },
42
+ props: {
43
+ label: {
44
+ type: String,
45
+ required: true
46
+ }
47
+ },
48
+ expose: ['root'],
49
+ setup() {
50
+ // Refs
51
+ const root = ref();
52
+ // Styles
53
+ const rootStyles = computed(() => ['or-date-time-picker-mobile-control', ...DateTimePickerMobileControl]);
54
+ const contentStyles = computed(() => [...DateTimePickerMobileControlContent]);
55
+ return {
56
+ root,
57
+ rootStyles,
58
+ contentStyles
59
+ };
60
+ }
61
+ });
62
+
63
+ function render$2(_ctx, _cache, $props, $setup, $data, $options) {
64
+ const _component_OrLabel = resolveComponent("OrLabel");
65
+ return openBlock(), createElementBlock("div", {
66
+ ref: "root",
67
+ class: normalizeClass(_ctx.rootStyles)
68
+ }, [createVNode(_component_OrLabel, null, {
69
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.label), 1 /* TEXT */)]),
70
+
71
+ _: 1 /* STABLE */
72
+ }), createElementVNode("div", {
73
+ class: normalizeClass(_ctx.contentStyles)
74
+ }, [renderSlot(_ctx.$slots, "default")], 2 /* CLASS */)], 2 /* CLASS */);
75
+ }
76
+
77
+ script$2.render = render$2;
78
+ script$2.__file = "src/components/or-date-time-picker-v3/partials/or-date-time-picker-mobile-control/OrDateTimePickerMobileControl.vue";
79
+
80
+ const DateTimePickerPopoverFooter = [
81
+ // Layout
82
+ 'layout-row-reverse',
83
+ // Layout (children)
84
+ 'children:grow',
85
+ // Spacing
86
+ 'px-md md:px-sm', 'py-md md:py-sm', 'gap-md md:gap-sm'];
87
+
88
+ var script$1 = defineComponent({
89
+ name: 'OrDateTimePickerPopoverFooter',
90
+ components: {
91
+ OrButton: script$4
92
+ },
93
+ emits: ['resolve', 'reject'],
94
+ expose: ['root'],
95
+ setup() {
96
+ // Refs
97
+ const root = ref();
98
+ // Styles
99
+ const rootStyles = computed(() => ['or-date-time-picker-popover-footer', ...DateTimePickerPopoverFooter]);
100
+ return {
101
+ root,
102
+ rootStyles
103
+ };
104
+ }
105
+ });
106
+
107
+ function render$1(_ctx, _cache, $props, $setup, $data, $options) {
108
+ const _component_OrButton = resolveComponent("OrButton");
109
+ return openBlock(), createElementBlock("footer", {
110
+ ref: "root",
111
+ class: normalizeClass(_ctx.rootStyles)
112
+ }, [createVNode(_component_OrButton, {
113
+ variant: 'outlined',
114
+ onClick: _cache[0] || (_cache[0] = withModifiers($event => _ctx.$emit('resolve'), ["stop"]))
115
+ }, {
116
+ default: withCtx(() => [createTextVNode(" Done ")]),
117
+ _: 1 /* STABLE */
118
+ }), createVNode(_component_OrButton, {
119
+ variant: 'text',
120
+ onClick: _cache[1] || (_cache[1] = withModifiers($event => _ctx.$emit('reject'), ["stop"]))
121
+ }, {
122
+ default: withCtx(() => [createTextVNode(" Cancel ")]),
123
+ _: 1 /* STABLE */
124
+ })], 2 /* CLASS */);
125
+ }
126
+
127
+ script$1.render = render$1;
128
+ script$1.__file = "src/components/or-date-time-picker-v3/partials/or-date-time-picker-popover-footer/OrDateTimePickerPopoverFooter.vue";
129
+
130
+ const DateTimePickerPopoverHeader = [
131
+ // Layout
132
+ 'layout-row md:hidden',
133
+ // Spacing
134
+ 'px-md', 'py-md', 'gap-xl'];
135
+
136
+ var script = defineComponent({
137
+ name: 'OrDateTimePickerPopoverHeader',
138
+ expose: ['root'],
139
+ setup() {
140
+ // Refs
141
+ const root = ref();
142
+ // Styles
143
+ const rootStyles = computed(() => ['or-date-time-picker-popover-header', ...DateTimePickerPopoverHeader]);
144
+ return {
145
+ root,
146
+ rootStyles
147
+ };
148
+ }
149
+ });
150
+
151
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
152
+ return openBlock(), createElementBlock("header", {
153
+ ref: "root",
154
+ class: normalizeClass(_ctx.rootStyles)
155
+ }, [renderSlot(_ctx.$slots, "default")], 2 /* CLASS */);
156
+ }
157
+
158
+ script.render = render;
159
+ script.__file = "src/components/or-date-time-picker-v3/partials/or-date-time-picker-popover-header/OrDateTimePickerPopoverHeader.vue";
160
+
161
+ export { script$1 as a, script as b, useDefaultMonth as c, useDefaultDate as d, useDefaultHours as e, useDefaultMinutes as f, script$2 as s, useDefaultYear as u };
@@ -0,0 +1,148 @@
1
+ import { defineComponent, ref, computed } from 'vue-demi';
2
+ import { s as script$1 } from './OrButton-5a850657.js';
3
+ import { u as useDefaultYear, c as useDefaultMonth, d as useDefaultDate, e as useDefaultHours, f as useDefaultMinutes } from './OrDateTimePickerPopoverHeader-c771a251.js';
4
+ import { resolveComponent, openBlock, createElementBlock, normalizeClass, createElementVNode, Fragment, renderList, createBlock, withModifiers, withCtx, createTextVNode, toDisplayString } from 'vue';
5
+
6
+ const DateTimePickerTimeSelect = [
7
+ // Layout
8
+ 'layout-row justify-center',
9
+ // Spacing
10
+ 'px-md', 'py-md', 'gap-sm',
11
+ // Typography
12
+ 'typography-body-2-regular',
13
+ // Theme
14
+ 'theme-foreground-default', 'dark:theme-foreground-default-dark'];
15
+ const DateTimePickerTimeSelectButtonGroup = [
16
+ // Layout
17
+ 'layout-column',
18
+ // Box
19
+ 'max-h-[224px]',
20
+ // Overflow
21
+ 'overflow-x-hidden', 'overflow-y-auto'];
22
+ const DateTimePickerTimeSelectButtonGroupItem = [
23
+ // Typography
24
+ 'typography-caption-regular'];
25
+
26
+ var script = defineComponent({
27
+ name: 'OrDateTimePickerTimeSelect',
28
+ components: {
29
+ OrButton: script$1
30
+ },
31
+ model: {
32
+ prop: 'modelValue',
33
+ event: 'update:modelValue'
34
+ },
35
+ props: {
36
+ modelValue: {
37
+ type: Date,
38
+ default: undefined
39
+ },
40
+ filter: {
41
+ type: Function,
42
+ default: undefined
43
+ }
44
+ },
45
+ emits: ['update:modelValue'],
46
+ expose: ['root'],
47
+ setup(props, context) {
48
+ // Refs
49
+ const root = ref();
50
+ // Styles
51
+ const rootStyles = computed(() => ['or-date-time-picker-time-select', ...DateTimePickerTimeSelect]);
52
+ const buttonGroupStyles = computed(() => [...DateTimePickerTimeSelectButtonGroup]);
53
+ const buttonGroupItemStyles = computed(() => [...DateTimePickerTimeSelectButtonGroupItem]);
54
+ // State
55
+ const proxyModelValue = computed({
56
+ get: () => {
57
+ var _a;
58
+ return (_a = props.modelValue) !== null && _a !== void 0 ? _a : new Date(Date.UTC(useDefaultYear(), useDefaultMonth(), useDefaultDate(), useDefaultHours(), useDefaultMinutes()));
59
+ },
60
+ set: value => {
61
+ context.emit('update:modelValue', value);
62
+ }
63
+ });
64
+ const hoursOptions = computed(() => {
65
+ return Array.from({
66
+ length: 24
67
+ }, (_value, index) => {
68
+ const value = index;
69
+ return new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), proxyModelValue.value.getUTCMonth(), proxyModelValue.value.getUTCDate(), value, proxyModelValue.value.getUTCMinutes()));
70
+ });
71
+ });
72
+ const minutesOptions = computed(() => {
73
+ return Array.from({
74
+ length: 60
75
+ }, (_value, index) => {
76
+ const value = index;
77
+ return new Date(Date.UTC(proxyModelValue.value.getUTCFullYear(), proxyModelValue.value.getUTCMonth(), proxyModelValue.value.getUTCDate(), proxyModelValue.value.getUTCHours(), value));
78
+ });
79
+ });
80
+ // Methods
81
+ function formatHours(value) {
82
+ return value.toLocaleString('default', {
83
+ hour: '2-digit',
84
+ timeZone: 'UTC'
85
+ });
86
+ }
87
+ function formatMinutes(value) {
88
+ return value.toLocaleString('default', {
89
+ minute: '2-digit',
90
+ timeZone: 'UTC'
91
+ });
92
+ }
93
+ return {
94
+ root,
95
+ rootStyles,
96
+ buttonGroupStyles,
97
+ buttonGroupItemStyles,
98
+ proxyModelValue,
99
+ hoursOptions,
100
+ minutesOptions,
101
+ formatHours,
102
+ formatMinutes
103
+ };
104
+ }
105
+ });
106
+
107
+ function render(_ctx, _cache, $props, $setup, $data, $options) {
108
+ const _component_OrButton = resolveComponent("OrButton");
109
+ return openBlock(), createElementBlock("div", {
110
+ ref: "root",
111
+ class: normalizeClass(_ctx.rootStyles)
112
+ }, [createElementVNode("div", {
113
+ class: normalizeClass(_ctx.buttonGroupStyles)
114
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.hoursOptions, value => {
115
+ return openBlock(), createBlock(_component_OrButton, {
116
+ key: Number(value),
117
+ class: normalizeClass(_ctx.buttonGroupItemStyles),
118
+ variant: Number(value) === Number(_ctx.proxyModelValue) ? 'contained' : 'text',
119
+ color: Number(value) === Number(_ctx.proxyModelValue) ? 'primary' : 'inherit',
120
+ disabled: _ctx.filter && !_ctx.filter(value),
121
+ onClick: withModifiers($event => _ctx.proxyModelValue = value, ["stop"])
122
+ }, {
123
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatHours(value)), 1 /* TEXT */)]),
124
+
125
+ _: 2 /* DYNAMIC */
126
+ }, 1032 /* PROPS, DYNAMIC_SLOTS */, ["class", "variant", "color", "disabled", "onClick"]);
127
+ }), 128 /* KEYED_FRAGMENT */))], 2 /* CLASS */), createTextVNode(" : "), createElementVNode("div", {
128
+ class: normalizeClass(_ctx.buttonGroupStyles)
129
+ }, [(openBlock(true), createElementBlock(Fragment, null, renderList(_ctx.minutesOptions, value => {
130
+ return openBlock(), createBlock(_component_OrButton, {
131
+ key: Number(value),
132
+ class: normalizeClass(_ctx.buttonGroupItemStyles),
133
+ variant: Number(value) === Number(_ctx.proxyModelValue) ? 'contained' : 'text',
134
+ color: Number(value) === Number(_ctx.proxyModelValue) ? 'primary' : 'inherit',
135
+ disabled: _ctx.filter && !_ctx.filter(value),
136
+ onClick: withModifiers($event => _ctx.proxyModelValue = value, ["stop"])
137
+ }, {
138
+ default: withCtx(() => [createTextVNode(toDisplayString(_ctx.formatMinutes(value)), 1 /* TEXT */)]),
139
+
140
+ _: 2 /* DYNAMIC */
141
+ }, 1032 /* PROPS, DYNAMIC_SLOTS */, ["class", "variant", "color", "disabled", "onClick"]);
142
+ }), 128 /* KEYED_FRAGMENT */))], 2 /* CLASS */)], 2 /* CLASS */);
143
+ }
144
+
145
+ script.render = render;
146
+ script.__file = "src/components/or-date-time-picker-v3/partials/or-date-time-picker-time-select/OrDateTimePickerTimeSelect.vue";
147
+
148
+ export { script as s };