@aotearoan/neon 21.0.0 → 21.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/common/enums/NeonBadgeSize.cjs.js +2 -0
- package/dist/common/enums/NeonBadgeSize.cjs.js.map +1 -0
- package/dist/common/enums/NeonBadgeSize.es.js +5 -0
- package/dist/common/enums/NeonBadgeSize.es.js.map +1 -0
- package/dist/common/utils/NeonDateUtils.cjs.js +1 -1
- package/dist/common/utils/NeonDateUtils.cjs.js.map +1 -1
- package/dist/common/utils/NeonDateUtils.es.js +52 -48
- package/dist/common/utils/NeonDateUtils.es.js.map +1 -1
- package/dist/components/navigation/link/NeonLink.vue.cjs.js +1 -1
- package/dist/components/navigation/link/NeonLink.vue.cjs.js.map +1 -1
- package/dist/components/navigation/link/NeonLink.vue.es.js +27 -33
- package/dist/components/navigation/link/NeonLink.vue.es.js.map +1 -1
- package/dist/components/navigation/menu/NeonMenu.vue.cjs.js +1 -1
- package/dist/components/navigation/menu/NeonMenu.vue.cjs.js.map +1 -1
- package/dist/components/navigation/menu/NeonMenu.vue.es.js +15 -15
- package/dist/components/navigation/menu/NeonMenu.vue.es.js.map +1 -1
- package/dist/components/presentation/badge/NeonBadge.cjs.js +1 -1
- package/dist/components/presentation/badge/NeonBadge.cjs.js.map +1 -1
- package/dist/components/presentation/badge/NeonBadge.es.js +8 -8
- package/dist/components/presentation/badge/NeonBadge.es.js.map +1 -1
- package/dist/components/presentation/dropdown/NeonDropdown.cjs.js +1 -1
- package/dist/components/presentation/dropdown/NeonDropdown.cjs.js.map +1 -1
- package/dist/components/presentation/dropdown/NeonDropdown.es.js +28 -24
- package/dist/components/presentation/dropdown/NeonDropdown.es.js.map +1 -1
- package/dist/components/presentation/dropdown/NeonDropdown.vue.cjs.js +1 -1
- package/dist/components/presentation/dropdown/NeonDropdown.vue.cjs.js.map +1 -1
- package/dist/components/presentation/dropdown/NeonDropdown.vue.es.js +23 -21
- package/dist/components/presentation/dropdown/NeonDropdown.vue.es.js.map +1 -1
- package/dist/components/user-input/button/NeonButton.cjs.js +1 -1
- package/dist/components/user-input/button/NeonButton.cjs.js.map +1 -1
- package/dist/components/user-input/button/NeonButton.es.js +26 -22
- package/dist/components/user-input/button/NeonButton.es.js.map +1 -1
- package/dist/components/user-input/button/NeonButton.vue.cjs.js +1 -1
- package/dist/components/user-input/button/NeonButton.vue.cjs.js.map +1 -1
- package/dist/components/user-input/button/NeonButton.vue.es.js +11 -10
- package/dist/components/user-input/button/NeonButton.vue.es.js.map +1 -1
- package/dist/components/user-input/date-picker/NeonDatePicker.cjs.js +1 -1
- package/dist/components/user-input/date-picker/NeonDatePicker.cjs.js.map +1 -1
- package/dist/components/user-input/date-picker/NeonDatePicker.es.js +27 -23
- package/dist/components/user-input/date-picker/NeonDatePicker.es.js.map +1 -1
- package/dist/components/user-input/date-picker/NeonDatePicker.vue.cjs.js +1 -1
- package/dist/components/user-input/date-picker/NeonDatePicker.vue.cjs.js.map +1 -1
- package/dist/components/user-input/date-picker/NeonDatePicker.vue.es.js +99 -114
- package/dist/components/user-input/date-picker/NeonDatePicker.vue.es.js.map +1 -1
- package/dist/components/user-input/input/NeonInput.cjs.js +1 -1
- package/dist/components/user-input/input/NeonInput.cjs.js.map +1 -1
- package/dist/components/user-input/input/NeonInput.es.js +30 -30
- package/dist/components/user-input/input/NeonInput.es.js.map +1 -1
- package/dist/neon.cjs.js +1 -1
- package/dist/neon.es.js +93 -91
- package/dist/neon.es.js.map +1 -1
- package/dist/src/common/enums/NeonBadgeSize.d.ts +15 -0
- package/dist/src/common/models/NeonCalendarConfig.d.ts +10 -0
- package/dist/src/common/utils/NeonDateUtils.d.ts +4 -2
- package/dist/src/components/feedback/dialog/NeonDialog.d.ts +12 -0
- package/dist/src/components/feedback/note/NeonNote.d.ts +6 -0
- package/dist/src/components/layout/card-list/NeonCardList.d.ts +20 -4
- package/dist/src/components/layout/modal/NeonModal.d.ts +6 -0
- package/dist/src/components/navigation/dropdown-menu/NeonDropdownMenu.d.ts +123 -39
- package/dist/src/components/navigation/menu/NeonMenu.d.ts +99 -27
- package/dist/src/components/navigation/mobile-menu/NeonMobileMenu.d.ts +57 -39
- package/dist/src/components/presentation/badge/NeonBadge.d.ts +12 -20
- package/dist/src/components/presentation/dropdown/NeonDropdown.d.ts +45 -23
- package/dist/src/components/presentation/image-carousel/NeonImageCarousel.d.ts +6 -0
- package/dist/src/components/user-input/button/NeonButton.d.ts +15 -1
- package/dist/src/components/user-input/date-picker/NeonDatePicker.d.ts +144 -116
- package/dist/src/components/user-input/file/NeonFile.d.ts +16 -14
- package/dist/src/components/user-input/input/NeonInput.d.ts +5 -9
- package/dist/src/components/user-input/number/NeonNumber.d.ts +20 -46
- package/dist/src/components/user-input/search/NeonSearch.d.ts +165 -165
- package/dist/src/components/user-input/select/NeonSelect.d.ts +261 -81
- package/dist/src/neon.d.ts +1 -0
- package/package.json +1 -1
- package/src/sass/components/_action-menu.scss +2 -7
- package/src/sass/components/_badge.scss +16 -42
- package/src/sass/components/_button.scss +0 -6
- package/src/sass/components/_card-list.scss +1 -6
- package/src/sass/components/_date-picker.scss +20 -0
- package/src/sass/components/_link.scss +3 -5
- package/src/sass/components/_search.scss +12 -0
- package/src/sass/components/_tree-menu.scss +1 -0
- package/src/sass/variables.scss +7 -1
|
@@ -1,19 +1,19 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { resolveComponent as m, openBlock as
|
|
3
|
-
import
|
|
4
|
-
const
|
|
1
|
+
import w from "./NeonDatePicker.es.js";
|
|
2
|
+
import { resolveComponent as m, openBlock as r, createElementBlock as t, normalizeClass as k, createVNode as u, withCtx as Y, createElementVNode as l, Fragment as b, toDisplayString as y, withKeys as i, withModifiers as o, renderList as c, createBlock as v, createCommentVNode as h, mergeProps as z } from "vue";
|
|
3
|
+
import f from "../../../_virtual/_plugin-vue_export-helper.es.js";
|
|
4
|
+
const M = {
|
|
5
5
|
ref: "calendarRef",
|
|
6
6
|
class: "neon-date-picker__calendar"
|
|
7
|
-
}, N = { class: "neon-date-picker__calendar-header" },
|
|
7
|
+
}, N = { class: "neon-date-picker__calendar-header" }, K = { class: "neon-date-picker__calendar-title-readonly" }, L = { class: "neon-date-picker__calendar-header-actions" }, S = { class: "neon-date-picker__calendar-options" }, V = { class: "neon-date-picker__calendar-header" }, P = {
|
|
8
8
|
key: 0,
|
|
9
9
|
class: "neon-date-picker__calendar-title-readonly"
|
|
10
|
-
},
|
|
10
|
+
}, O = { class: "neon-date-picker__calendar-header-actions" }, U = { class: "neon-date-picker__calendar-options" }, B = { class: "neon-date-picker__calendar-header" }, E = {
|
|
11
11
|
key: 0,
|
|
12
12
|
class: "neon-date-picker__calendar-title-readonly"
|
|
13
|
-
},
|
|
14
|
-
function
|
|
15
|
-
const
|
|
16
|
-
return
|
|
13
|
+
}, F = { class: "neon-date-picker__calendar-header-actions" }, R = { class: "neon-date-picker__calendar-dows" }, j = ["title"], q = { class: "neon-button-group" };
|
|
14
|
+
function A(e, a, G, H, I, J) {
|
|
15
|
+
const s = m("neon-button"), C = m("neon-dropdown"), D = m("neon-input");
|
|
16
|
+
return r(), t("div", {
|
|
17
17
|
class: k([[
|
|
18
18
|
`neon-date-picker--${e.size}`,
|
|
19
19
|
`neon-date-picker--${e.color}`,
|
|
@@ -23,47 +23,30 @@ function q(e, a, A, G, H, I) {
|
|
|
23
23
|
}
|
|
24
24
|
], "neon-date-picker"])
|
|
25
25
|
}, [
|
|
26
|
-
u(
|
|
26
|
+
u(C, {
|
|
27
|
+
id: e.id,
|
|
27
28
|
ref: "dropdown",
|
|
28
29
|
modelValue: e.calendarOpen,
|
|
29
30
|
"onUpdate:modelValue": [
|
|
30
|
-
a[
|
|
31
|
-
|
|
31
|
+
a[20] || (a[20] = (n) => e.calendarOpen = n),
|
|
32
|
+
e.toggleCalendar
|
|
32
33
|
],
|
|
33
34
|
color: e.color,
|
|
34
|
-
|
|
35
|
+
disabled: e.disabled,
|
|
36
|
+
"icon-aria-label": e.openCalendarLabel,
|
|
37
|
+
indicator: !1,
|
|
38
|
+
label: e.formattedValue,
|
|
39
|
+
placement: e.placement,
|
|
40
|
+
size: e.size,
|
|
41
|
+
"dropdown-style": "input",
|
|
42
|
+
icon: "calendar"
|
|
35
43
|
}, {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
placeholder: e.placeholder,
|
|
43
|
-
size: e.size,
|
|
44
|
-
tabindex: -1,
|
|
45
|
-
class: "neon-date-picker__button",
|
|
46
|
-
icon: "calendar",
|
|
47
|
-
type: "text"
|
|
48
|
-
}, null, 8, ["color", "disabled", "model-value", "placeholder", "size"]),
|
|
49
|
-
r("div", {
|
|
50
|
-
"aria-label": e.openCalendarLabel,
|
|
51
|
-
tabindex: e.disabled ? -1 : 0,
|
|
52
|
-
class: "neon-date-picker__button-click-capture",
|
|
53
|
-
role: "button",
|
|
54
|
-
onClickCapture: a[0] || (a[0] = o((n) => !e.disabled && e.openCalendar(), ["stop", "prevent"])),
|
|
55
|
-
onKeydownCapture: [
|
|
56
|
-
a[1] || (a[1] = d(o((n) => e.openCalendar(), ["stop", "prevent"]), ["enter"])),
|
|
57
|
-
a[2] || (a[2] = d(o((n) => e.openCalendar(), ["stop", "prevent"]), ["space"]))
|
|
58
|
-
]
|
|
59
|
-
}, null, 40, f)
|
|
60
|
-
]),
|
|
61
|
-
default: $(() => [
|
|
62
|
-
r("div", K, [
|
|
63
|
-
e.yearSelectionOpen ? (l(), t(b, { key: 0 }, [
|
|
64
|
-
r("div", N, [
|
|
65
|
-
r("span", L, y(`${e.calendar.pageDecadeStart}–${e.calendar.pageDecadeStart + 9}`), 1),
|
|
66
|
-
r("div", S, [
|
|
44
|
+
default: Y(() => [
|
|
45
|
+
l("div", M, [
|
|
46
|
+
e.yearSelectionOpen ? (r(), t(b, { key: 0 }, [
|
|
47
|
+
l("div", N, [
|
|
48
|
+
l("span", K, y(`${e.calendar.pageDecadeStart}–${e.calendar.pageDecadeStart + 9}`), 1),
|
|
49
|
+
l("div", L, [
|
|
67
50
|
u(s, {
|
|
68
51
|
"aria-label": e.previousDecadeLabel,
|
|
69
52
|
circular: !0,
|
|
@@ -71,10 +54,10 @@ function q(e, a, A, G, H, I) {
|
|
|
71
54
|
disabled: e.isPreviousDecadeDisabled,
|
|
72
55
|
"button-style": "text",
|
|
73
56
|
class: "neon-date-picker__previous-button",
|
|
74
|
-
icon: "
|
|
57
|
+
icon: "arrow-left-1",
|
|
75
58
|
size: "m",
|
|
76
|
-
onClickCapture: a[
|
|
77
|
-
onKeydownCapture: a[
|
|
59
|
+
onClickCapture: a[0] || (a[0] = o((n) => e.onPreviousDecade(), ["stop", "prevent"])),
|
|
60
|
+
onKeydownCapture: a[1] || (a[1] = i(o((n) => e.onPreviousDecade(), ["stop", "prevent"]), ["enter"]))
|
|
78
61
|
}, null, 8, ["aria-label", "color", "disabled"]),
|
|
79
62
|
u(s, {
|
|
80
63
|
"aria-label": e.nextDecadeLabel,
|
|
@@ -83,16 +66,16 @@ function q(e, a, A, G, H, I) {
|
|
|
83
66
|
disabled: e.isNextDecadeDisabled,
|
|
84
67
|
"button-style": "text",
|
|
85
68
|
class: "neon-date-picker__next-button",
|
|
86
|
-
icon: "
|
|
69
|
+
icon: "arrow-right-1",
|
|
87
70
|
size: "m",
|
|
88
|
-
onClickCapture: a[
|
|
89
|
-
onKeydownCapture: a[
|
|
71
|
+
onClickCapture: a[2] || (a[2] = o((n) => e.onNextDecade(), ["stop", "prevent"])),
|
|
72
|
+
onKeydownCapture: a[3] || (a[3] = i(o((n) => e.onNextDecade(), ["stop", "prevent"]), ["enter"]))
|
|
90
73
|
}, null, 8, ["aria-label", "color", "disabled"])
|
|
91
74
|
])
|
|
92
75
|
]),
|
|
93
|
-
a[
|
|
94
|
-
|
|
95
|
-
(
|
|
76
|
+
a[21] || (a[21] = l("hr", null, null, -1)),
|
|
77
|
+
l("div", S, [
|
|
78
|
+
(r(), t(b, null, c(10, (n) => u(s, {
|
|
96
79
|
key: n,
|
|
97
80
|
class: k([{
|
|
98
81
|
"neon-date-picker__calendar-option--selected": e.calendar.pageYear === e.calendar.pageDecadeStart + n - 1,
|
|
@@ -105,26 +88,26 @@ function q(e, a, A, G, H, I) {
|
|
|
105
88
|
label: `${e.calendar.pageDecadeStart + n - 1}`,
|
|
106
89
|
"button-style": "text",
|
|
107
90
|
size: "s",
|
|
108
|
-
onClickCapture: o((
|
|
109
|
-
onKeydownCapture:
|
|
91
|
+
onClickCapture: o((d) => e.selectYear(e.calendar.pageDecadeStart + n - 1), ["stop", "prevent"]),
|
|
92
|
+
onKeydownCapture: i(o((d) => e.selectYear(e.calendar.pageDecadeStart + n - 1), ["stop", "prevent"]), ["enter"])
|
|
110
93
|
}, null, 8, ["class", "color", "disabled", "label", "onClickCapture", "onKeydownCapture"])), 64))
|
|
111
94
|
])
|
|
112
|
-
], 64)) : e.monthSelectionOpen ? (
|
|
113
|
-
|
|
114
|
-
e.isChangeYearDisabled ? (
|
|
95
|
+
], 64)) : e.monthSelectionOpen ? (r(), t(b, { key: 1 }, [
|
|
96
|
+
l("div", V, [
|
|
97
|
+
e.isChangeYearDisabled ? (r(), t("span", P, y(e.calendar.pageYear), 1)) : (r(), v(s, {
|
|
115
98
|
key: 1,
|
|
116
99
|
"aria-label": e.changeYearLabel,
|
|
117
100
|
label: `${e.calendar.pageYear}`,
|
|
118
101
|
"button-style": "text",
|
|
119
102
|
class: "neon-date-picker__calendar-header-title",
|
|
120
103
|
color: "high-contrast",
|
|
121
|
-
icon: "
|
|
104
|
+
icon: "data-transfer-horizontal",
|
|
122
105
|
"icon-position": "right",
|
|
123
106
|
size: "m",
|
|
124
|
-
onClickCapture: a[
|
|
125
|
-
onKeydownCapture: a[
|
|
107
|
+
onClickCapture: a[4] || (a[4] = o((n) => e.changeYear(), ["stop", "prevent"])),
|
|
108
|
+
onKeydownCapture: a[5] || (a[5] = i(o((n) => e.changeYear(), ["stop", "prevent"]), ["enter"]))
|
|
126
109
|
}, null, 8, ["aria-label", "label"])),
|
|
127
|
-
|
|
110
|
+
l("div", O, [
|
|
128
111
|
u(s, {
|
|
129
112
|
"aria-label": e.previousYearLabel,
|
|
130
113
|
circular: !0,
|
|
@@ -132,10 +115,10 @@ function q(e, a, A, G, H, I) {
|
|
|
132
115
|
disabled: e.isPreviousYearDisabled,
|
|
133
116
|
"button-style": "text",
|
|
134
117
|
class: "neon-date-picker__previous-button",
|
|
135
|
-
icon: "
|
|
118
|
+
icon: "arrow-left-1",
|
|
136
119
|
size: "m",
|
|
137
|
-
onClickCapture: a[
|
|
138
|
-
onKeydownCapture: a[
|
|
120
|
+
onClickCapture: a[6] || (a[6] = o((n) => e.onPreviousYear(), ["stop", "prevent"])),
|
|
121
|
+
onKeydownCapture: a[7] || (a[7] = i(o((n) => e.onPreviousYear(), ["stop", "prevent"]), ["enter"]))
|
|
139
122
|
}, null, 8, ["aria-label", "color", "disabled"]),
|
|
140
123
|
u(s, {
|
|
141
124
|
"aria-label": e.nextYearLabel,
|
|
@@ -144,48 +127,49 @@ function q(e, a, A, G, H, I) {
|
|
|
144
127
|
disabled: e.isNextYearDisabled,
|
|
145
128
|
"button-style": "text",
|
|
146
129
|
class: "neon-date-picker__next-button",
|
|
147
|
-
icon: "
|
|
130
|
+
icon: "arrow-right-1",
|
|
148
131
|
size: "m",
|
|
149
|
-
onClickCapture: a[
|
|
150
|
-
onKeydownCapture: a[
|
|
132
|
+
onClickCapture: a[8] || (a[8] = o((n) => e.onNextYear(), ["stop", "prevent"])),
|
|
133
|
+
onKeydownCapture: a[9] || (a[9] = i(o((n) => e.onNextYear(), ["stop", "prevent"]), ["enter"]))
|
|
151
134
|
}, null, 8, ["aria-label", "color", "disabled"])
|
|
152
135
|
])
|
|
153
136
|
]),
|
|
154
|
-
a[
|
|
155
|
-
|
|
156
|
-
(
|
|
157
|
-
key:
|
|
137
|
+
a[22] || (a[22] = l("hr", null, null, -1)),
|
|
138
|
+
l("div", U, [
|
|
139
|
+
(r(!0), t(b, null, c(e.calendar.months, (n, d) => (r(), v(s, {
|
|
140
|
+
key: d,
|
|
158
141
|
class: k([{
|
|
159
|
-
"neon-date-picker__calendar-option--selected":
|
|
160
|
-
"neon-date-picker__calendar-option--today":
|
|
161
|
-
"neon-date-picker__calendar-option--disabled": e.isMonthDisabled(e.calendar.pageYear,
|
|
142
|
+
"neon-date-picker__calendar-option--selected": d + 1 === e.calendar.pageMonth,
|
|
143
|
+
"neon-date-picker__calendar-option--today": d + 1 === e.calendar.today.month && e.calendar.today.year === e.calendar.pageYear,
|
|
144
|
+
"neon-date-picker__calendar-option--disabled": e.isMonthDisabled(e.calendar.pageYear, d + 1)
|
|
162
145
|
}, "neon-date-picker__calendar-option"]),
|
|
163
146
|
color: e.color,
|
|
164
|
-
disabled: e.isMonthDisabled(e.calendar.pageYear,
|
|
147
|
+
disabled: e.isMonthDisabled(e.calendar.pageYear, d + 1),
|
|
165
148
|
"full-width": !0,
|
|
166
149
|
label: n,
|
|
150
|
+
title: e.calendar.monthLongNames[d],
|
|
167
151
|
"button-style": "text",
|
|
168
152
|
size: "s",
|
|
169
|
-
onClickCapture: o((p) => e.selectMonth(
|
|
170
|
-
onKeydownCapture:
|
|
171
|
-
}, null, 8, ["class", "color", "disabled", "label", "onClickCapture", "onKeydownCapture"]))), 128))
|
|
153
|
+
onClickCapture: o((p) => e.selectMonth(d + 1), ["stop", "prevent"]),
|
|
154
|
+
onKeydownCapture: i(o((p) => e.selectMonth(d + 1), ["stop", "prevent"]), ["enter"])
|
|
155
|
+
}, null, 8, ["class", "color", "disabled", "label", "title", "onClickCapture", "onKeydownCapture"]))), 128))
|
|
172
156
|
])
|
|
173
|
-
], 64)) : (
|
|
174
|
-
|
|
175
|
-
e.isChangeDateDisabled ? (
|
|
157
|
+
], 64)) : (r(), t(b, { key: 2 }, [
|
|
158
|
+
l("div", B, [
|
|
159
|
+
e.isChangeDateDisabled ? (r(), t("span", E, y(`${e.calendar.pageMonthName} ${e.calendar.pageYear}`), 1)) : (r(), v(s, {
|
|
176
160
|
key: 1,
|
|
177
161
|
"aria-label": e.changeMonthLabel,
|
|
178
162
|
label: `${e.calendar.pageMonthName} ${e.calendar.pageYear}`,
|
|
179
163
|
"button-style": "text",
|
|
180
164
|
class: "neon-date-picker__calendar-header-title",
|
|
181
165
|
color: "high-contrast",
|
|
182
|
-
icon: "
|
|
166
|
+
icon: "data-transfer-horizontal",
|
|
183
167
|
"icon-position": "right",
|
|
184
168
|
size: "m",
|
|
185
|
-
onClickCapture: a[
|
|
186
|
-
onKeydownCapture: a[
|
|
169
|
+
onClickCapture: a[10] || (a[10] = o((n) => e.changeMonth(), ["stop", "prevent"])),
|
|
170
|
+
onKeydownCapture: a[11] || (a[11] = i(o((n) => e.changeMonth(), ["stop", "prevent"]), ["enter"]))
|
|
187
171
|
}, null, 8, ["aria-label", "label"])),
|
|
188
|
-
|
|
172
|
+
l("div", F, [
|
|
189
173
|
u(s, {
|
|
190
174
|
"aria-label": e.previousMonthLabel,
|
|
191
175
|
circular: !0,
|
|
@@ -193,10 +177,10 @@ function q(e, a, A, G, H, I) {
|
|
|
193
177
|
disabled: e.isPreviousDisabled,
|
|
194
178
|
"button-style": "text",
|
|
195
179
|
class: "neon-date-picker__previous-button",
|
|
196
|
-
icon: "
|
|
180
|
+
icon: "arrow-left-1",
|
|
197
181
|
size: "m",
|
|
198
|
-
onClickCapture: a[
|
|
199
|
-
onKeydownCapture: a[
|
|
182
|
+
onClickCapture: a[12] || (a[12] = o((n) => e.onPrevious(), ["stop", "prevent"])),
|
|
183
|
+
onKeydownCapture: a[13] || (a[13] = i(o((n) => e.onPrevious(), ["stop", "prevent"]), ["enter"]))
|
|
200
184
|
}, null, 8, ["aria-label", "color", "disabled"]),
|
|
201
185
|
u(s, {
|
|
202
186
|
"aria-label": e.nextMonthLabel,
|
|
@@ -205,26 +189,27 @@ function q(e, a, A, G, H, I) {
|
|
|
205
189
|
disabled: e.isNextDisabled,
|
|
206
190
|
"button-style": "text",
|
|
207
191
|
class: "neon-date-picker__next-button",
|
|
208
|
-
icon: "
|
|
192
|
+
icon: "arrow-right-1",
|
|
209
193
|
size: "m",
|
|
210
|
-
onClickCapture: a[
|
|
211
|
-
onKeydownCapture: a[
|
|
194
|
+
onClickCapture: a[14] || (a[14] = o((n) => e.onNext(), ["stop", "prevent"])),
|
|
195
|
+
onKeydownCapture: a[15] || (a[15] = i(o((n) => e.onNext(), ["stop", "prevent"]), ["enter"]))
|
|
212
196
|
}, null, 8, ["aria-label", "color", "disabled"])
|
|
213
197
|
])
|
|
214
198
|
]),
|
|
215
|
-
|
|
216
|
-
(
|
|
199
|
+
l("div", R, [
|
|
200
|
+
(r(!0), t(b, null, c(e.calendar.dowNames, (n, d) => (r(), t("abbr", {
|
|
217
201
|
key: n,
|
|
202
|
+
title: e.calendar.dowLongNames[d],
|
|
218
203
|
class: "neon-date-picker__calendar-dow"
|
|
219
|
-
}, y(n),
|
|
204
|
+
}, y(n), 9, j))), 128))
|
|
220
205
|
]),
|
|
221
|
-
a[
|
|
222
|
-
(
|
|
223
|
-
key:
|
|
206
|
+
a[23] || (a[23] = l("hr", null, null, -1)),
|
|
207
|
+
(r(!0), t(b, null, c(e.calendar.dates, (n, d) => (r(), t("div", {
|
|
208
|
+
key: d,
|
|
224
209
|
class: "neon-date-picker__calendar-dates"
|
|
225
210
|
}, [
|
|
226
|
-
(
|
|
227
|
-
p ? (
|
|
211
|
+
(r(!0), t(b, null, c(n, (p, g) => (r(), t(b, null, [
|
|
212
|
+
p ? (r(), v(s, {
|
|
228
213
|
key: g,
|
|
229
214
|
circular: !0,
|
|
230
215
|
class: k([{
|
|
@@ -241,26 +226,26 @@ function q(e, a, A, G, H, I) {
|
|
|
241
226
|
transparent: !0,
|
|
242
227
|
"button-style": "text",
|
|
243
228
|
size: "m",
|
|
244
|
-
onClickCapture: o((
|
|
245
|
-
onKeydownCapture:
|
|
246
|
-
}, null, 8, ["class", "color", "disabled", "label", "tabindex", "onClickCapture", "onKeydownCapture"])) : (
|
|
229
|
+
onClickCapture: o(($) => e.emitDate(e.isoDate(p, e.calendar.pageMonth, e.calendar.pageYear)), ["stop", "prevent"]),
|
|
230
|
+
onKeydownCapture: i(o(($) => e.emitDate(e.isoDate(p, e.calendar.pageMonth, e.calendar.pageYear)), ["stop", "prevent"]), ["enter"])
|
|
231
|
+
}, null, 8, ["class", "color", "disabled", "label", "tabindex", "onClickCapture", "onKeydownCapture"])) : (r(), t("div", {
|
|
247
232
|
key: `${g}-empty`,
|
|
248
233
|
class: "neon-date-picker__calendar-date neon-date-picker__calendar-date--empty"
|
|
249
234
|
}))
|
|
250
235
|
], 64))), 256))
|
|
251
236
|
]))), 128))
|
|
252
237
|
], 64)),
|
|
253
|
-
a[
|
|
254
|
-
|
|
255
|
-
e.optional ? (
|
|
238
|
+
a[24] || (a[24] = l("hr", null, null, -1)),
|
|
239
|
+
l("div", q, [
|
|
240
|
+
e.optional ? (r(), v(s, {
|
|
256
241
|
key: 0,
|
|
257
242
|
label: e.clearLabel,
|
|
258
243
|
"button-style": "text",
|
|
259
244
|
class: "neon-date-picker__calendar-clear-button",
|
|
260
245
|
color: "low-contrast",
|
|
261
246
|
size: "s",
|
|
262
|
-
onClickCapture: a[
|
|
263
|
-
onKeydownCapture: a[
|
|
247
|
+
onClickCapture: a[16] || (a[16] = o((n) => e.clear(), ["stop", "prevent"])),
|
|
248
|
+
onKeydownCapture: a[17] || (a[17] = i(o((n) => e.clear(), ["stop", "prevent"]), ["enter"]))
|
|
264
249
|
}, null, 8, ["label"])) : h("", !0),
|
|
265
250
|
u(s, {
|
|
266
251
|
color: e.color,
|
|
@@ -268,15 +253,15 @@ function q(e, a, A, G, H, I) {
|
|
|
268
253
|
"button-style": "text",
|
|
269
254
|
class: "neon-date-picker__calendar-done-button",
|
|
270
255
|
size: "s",
|
|
271
|
-
onClickCapture: a[
|
|
272
|
-
onKeydownCapture: a[
|
|
256
|
+
onClickCapture: a[18] || (a[18] = o((n) => e.done(), ["stop", "prevent"])),
|
|
257
|
+
onKeydownCapture: a[19] || (a[19] = i(o((n) => e.done(), ["stop", "prevent"]), ["enter"]))
|
|
273
258
|
}, null, 8, ["color", "label"])
|
|
274
259
|
])
|
|
275
260
|
], 512)
|
|
276
261
|
]),
|
|
277
262
|
_: 1
|
|
278
|
-
}, 8, ["modelValue", "color", "placement"]),
|
|
279
|
-
u(
|
|
263
|
+
}, 8, ["id", "modelValue", "color", "disabled", "icon-aria-label", "label", "placement", "size", "onUpdate:modelValue"]),
|
|
264
|
+
u(D, z({
|
|
280
265
|
color: e.color,
|
|
281
266
|
disabled: e.disabled,
|
|
282
267
|
"hide-icon": !0,
|
|
@@ -290,7 +275,7 @@ function q(e, a, A, G, H, I) {
|
|
|
290
275
|
}, e.attrs, { "onUpdate:modelValue": e.emitDate }), null, 16, ["color", "disabled", "max", "min", "model-value", "size", "onUpdate:modelValue"])
|
|
291
276
|
], 2);
|
|
292
277
|
}
|
|
293
|
-
const X = /* @__PURE__ */
|
|
278
|
+
const X = /* @__PURE__ */ f(w, [["render", A]]);
|
|
294
279
|
export {
|
|
295
280
|
X as default
|
|
296
281
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonDatePicker.vue.es.js","sources":["../../../../src/components/user-input/date-picker/NeonDatePicker.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n `neon-date-picker--${size}`,\n `neon-date-picker--${color}`,\n {\n 'neon-date-picker--disabled': disabled,\n 'neon-date-picker--open': calendarOpen,\n },\n ]\"\n class=\"neon-date-picker\"\n >\n <neon-dropdown\n ref=\"dropdown\"\n v-model=\"calendarOpen\"\n :color=\"color\"\n :placement=\"placement\"\n @update:modelValue=\"resetToCalendar()\"\n >\n <template #dropdown-button>\n <neon-input\n :color=\"color\"\n :disabled=\"disabled\"\n :icon-readonly=\"true\"\n :model-value=\"formattedValue\"\n :placeholder=\"placeholder\"\n :size=\"size\"\n :tabindex=\"-1\"\n class=\"neon-date-picker__button\"\n icon=\"calendar\"\n type=\"text\"\n />\n <div\n :aria-label=\"openCalendarLabel\"\n :tabindex=\"disabled ? -1 : 0\"\n class=\"neon-date-picker__button-click-capture\"\n role=\"button\"\n @click.stop.prevent.capture=\"!disabled && openCalendar()\"\n @keydown.enter.stop.prevent.capture=\"openCalendar()\"\n @keydown.space.stop.prevent.capture=\"openCalendar()\"\n ></div>\n </template>\n <template #default>\n <div ref=\"calendarRef\" class=\"neon-date-picker__calendar\">\n <template v-if=\"yearSelectionOpen\">\n <div class=\"neon-date-picker__calendar-header\">\n <span class=\"neon-date-picker__calendar-title-readonly\">\n {{ `${calendar.pageDecadeStart}–${calendar.pageDecadeStart + 9}` }}\n </span>\n <div class=\"neon-date-picker__calendar-header-actions\">\n <neon-button\n :aria-label=\"previousDecadeLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isPreviousDecadeDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__previous-button\"\n icon=\"chevron-left\"\n size=\"m\"\n @click.stop.prevent.capture=\"onPreviousDecade()\"\n @keydown.enter.stop.prevent.capture=\"onPreviousDecade()\"\n />\n <neon-button\n :aria-label=\"nextDecadeLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isNextDecadeDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__next-button\"\n icon=\"chevron-right\"\n size=\"m\"\n @click.stop.prevent.capture=\"onNextDecade()\"\n @keydown.enter.stop.prevent.capture=\"onNextDecade()\"\n />\n </div>\n </div>\n <hr />\n <div class=\"neon-date-picker__calendar-options\">\n <neon-button\n v-for=\"index in 10\"\n :key=\"index\"\n :class=\"{\n 'neon-date-picker__calendar-option--selected':\n calendar.pageYear === calendar.pageDecadeStart + index - 1,\n 'neon-date-picker__calendar-option--today':\n calendar.today.year === calendar.pageDecadeStart + index - 1,\n 'neon-date-picker__calendar-option--disabled': isYearDisabled(calendar.pageDecadeStart + index - 1),\n }\"\n :color=\"color\"\n :disabled=\"isYearDisabled(calendar.pageDecadeStart + index - 1)\"\n :full-width=\"true\"\n :label=\"`${calendar.pageDecadeStart + index - 1}`\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-option\"\n size=\"s\"\n @click.stop.prevent.capture=\"selectYear(calendar.pageDecadeStart + index - 1)\"\n @keydown.enter.stop.prevent.capture=\"selectYear(calendar.pageDecadeStart + index - 1)\"\n />\n </div>\n </template>\n <template v-else-if=\"monthSelectionOpen\">\n <div class=\"neon-date-picker__calendar-header\">\n <span v-if=\"isChangeYearDisabled\" class=\"neon-date-picker__calendar-title-readonly\">\n {{ calendar.pageYear }}\n </span>\n <neon-button\n v-else\n :aria-label=\"changeYearLabel\"\n :label=\"`${calendar.pageYear}`\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-header-title\"\n color=\"high-contrast\"\n icon=\"switch\"\n icon-position=\"right\"\n size=\"m\"\n @click.stop.prevent.capture=\"changeYear()\"\n @keydown.enter.stop.prevent.capture=\"changeYear()\"\n />\n <div class=\"neon-date-picker__calendar-header-actions\">\n <neon-button\n :aria-label=\"previousYearLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isPreviousYearDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__previous-button\"\n icon=\"chevron-left\"\n size=\"m\"\n @click.stop.prevent.capture=\"onPreviousYear()\"\n @keydown.enter.stop.prevent.capture=\"onPreviousYear()\"\n />\n <neon-button\n :aria-label=\"nextYearLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isNextYearDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__next-button\"\n icon=\"chevron-right\"\n size=\"m\"\n @click.stop.prevent.capture=\"onNextYear()\"\n @keydown.enter.stop.prevent.capture=\"onNextYear()\"\n />\n </div>\n </div>\n <hr />\n <div class=\"neon-date-picker__calendar-options\">\n <neon-button\n v-for=\"(month, index) in calendar.months\"\n :key=\"index\"\n :class=\"{\n 'neon-date-picker__calendar-option--selected': index + 1 === calendar.pageMonth,\n 'neon-date-picker__calendar-option--today':\n index + 1 === calendar.today.month && calendar.today.year === calendar.pageYear,\n 'neon-date-picker__calendar-option--disabled': isMonthDisabled(calendar.pageYear, index + 1),\n }\"\n :color=\"color\"\n :disabled=\"isMonthDisabled(calendar.pageYear, index + 1)\"\n :full-width=\"true\"\n :label=\"month\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-option\"\n size=\"s\"\n @click.stop.prevent.capture=\"selectMonth(index + 1)\"\n @keydown.enter.stop.prevent.capture=\"selectMonth(index + 1)\"\n />\n </div>\n </template>\n <template v-else>\n <div class=\"neon-date-picker__calendar-header\">\n <span v-if=\"isChangeDateDisabled\" class=\"neon-date-picker__calendar-title-readonly\">\n {{ `${calendar.pageMonthName} ${calendar.pageYear}` }}\n </span>\n <neon-button\n v-else\n :aria-label=\"changeMonthLabel\"\n :label=\"`${calendar.pageMonthName} ${calendar.pageYear}`\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-header-title\"\n color=\"high-contrast\"\n icon=\"switch\"\n icon-position=\"right\"\n size=\"m\"\n @click.stop.prevent.capture=\"changeMonth()\"\n @keydown.enter.stop.prevent.capture=\"changeMonth()\"\n />\n <div class=\"neon-date-picker__calendar-header-actions\">\n <neon-button\n :aria-label=\"previousMonthLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isPreviousDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__previous-button\"\n icon=\"chevron-left\"\n size=\"m\"\n @click.stop.prevent.capture=\"onPrevious()\"\n @keydown.enter.stop.prevent.capture=\"onPrevious()\"\n />\n <neon-button\n :aria-label=\"nextMonthLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isNextDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__next-button\"\n icon=\"chevron-right\"\n size=\"m\"\n @click.stop.prevent.capture=\"onNext()\"\n @keydown.enter.stop.prevent.capture=\"onNext()\"\n />\n </div>\n </div>\n <div class=\"neon-date-picker__calendar-dows\">\n <div v-for=\"dow in calendar.dowNames\" :key=\"dow\" class=\"neon-date-picker__calendar-dow\">{{ dow }}</div>\n </div>\n <hr />\n <div v-for=\"(dateRow, index) in calendar.dates\" :key=\"index\" class=\"neon-date-picker__calendar-dates\">\n <template v-for=\"(dateCol, index) in dateRow\">\n <neon-button\n v-if=\"dateCol\"\n :key=\"index\"\n :circular=\"true\"\n :class=\"{\n 'neon-date-picker__calendar-date--selected':\n modelValue === isoDate(dateCol, calendar.pageMonth, calendar.pageYear),\n 'neon-date-picker__calendar-date--today':\n today === isoDate(dateCol, calendar.pageMonth, calendar.pageYear),\n 'neon-date-picker__calendar-date--disabled': isDisabled(\n isoDate(dateCol, calendar.pageMonth, calendar.pageYear),\n ),\n }\"\n :color=\"color\"\n :disabled=\"isDisabled(isoDate(dateCol, calendar.pageMonth, calendar.pageYear))\"\n :label=\"`${dateCol}`\"\n :tabindex=\"isDisabled(isoDate(dateCol, calendar.pageMonth, calendar.pageYear)) ? -1 : 0\"\n :transparent=\"true\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-date\"\n size=\"m\"\n @click.stop.prevent.capture=\"emitDate(isoDate(dateCol, calendar.pageMonth, calendar.pageYear))\"\n @keydown.enter.stop.prevent.capture=\"\n emitDate(isoDate(dateCol, calendar.pageMonth, calendar.pageYear))\n \"\n />\n <div\n v-else\n :key=\"`${index}-empty`\"\n class=\"neon-date-picker__calendar-date neon-date-picker__calendar-date--empty\"\n />\n </template>\n </div>\n </template>\n <hr />\n <div class=\"neon-button-group\">\n <neon-button\n v-if=\"optional\"\n :label=\"clearLabel\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-clear-button\"\n color=\"low-contrast\"\n size=\"s\"\n @click.stop.prevent.capture=\"clear()\"\n @keydown.enter.stop.prevent.capture=\"clear()\"\n />\n <neon-button\n :color=\"color\"\n :label=\"doneLabel\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-done-button\"\n size=\"s\"\n @click.stop.prevent.capture=\"done()\"\n @keydown.enter.stop.prevent.capture=\"done()\"\n />\n </div>\n </div>\n </template>\n </neon-dropdown>\n <neon-input\n :color=\"color\"\n :disabled=\"disabled\"\n :hide-icon=\"true\"\n :max=\"max\"\n :min=\"min\"\n :model-value=\"modelValue\"\n :size=\"size\"\n :tabindex=\"-1\"\n class=\"neon-date-picker__native-input\"\n type=\"date\"\n v-bind=\"attrs\"\n @update:modelValue=\"emitDate\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonDatePicker.ts\"></script>\n"],"names":["_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_7","_hoisted_9","_hoisted_10","_hoisted_11","_hoisted_13","_hoisted_14","_hoisted_15","_createElementBlock","_normalizeClass","_ctx","_createVNode","_component_neon_dropdown","$event","_component_neon_input","_createElementVNode","_cache","_withModifiers","_hoisted_2","_Fragment","_toDisplayString","_component_neon_button","_renderList","index","_withKeys","_openBlock","_hoisted_8","_createBlock","month","_hoisted_12","dow","dateRow","dateCol","_mergeProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeonDatePicker.vue.es.js","sources":["../../../../src/components/user-input/date-picker/NeonDatePicker.vue"],"sourcesContent":["<template>\n <div\n :class=\"[\n `neon-date-picker--${size}`,\n `neon-date-picker--${color}`,\n {\n 'neon-date-picker--disabled': disabled,\n 'neon-date-picker--open': calendarOpen,\n },\n ]\"\n class=\"neon-date-picker\"\n >\n <neon-dropdown\n :id=\"id\"\n ref=\"dropdown\"\n v-model=\"calendarOpen\"\n :color=\"color\"\n :disabled=\"disabled\"\n :icon-aria-label=\"openCalendarLabel\"\n :indicator=\"false\"\n :label=\"formattedValue\"\n :placement=\"placement\"\n :size=\"size\"\n dropdown-style=\"input\"\n icon=\"calendar\"\n @update:modelValue=\"toggleCalendar\"\n >\n <div ref=\"calendarRef\" class=\"neon-date-picker__calendar\">\n <template v-if=\"yearSelectionOpen\">\n <div class=\"neon-date-picker__calendar-header\">\n <span class=\"neon-date-picker__calendar-title-readonly\">\n {{ `${calendar.pageDecadeStart}–${calendar.pageDecadeStart + 9}` }}\n </span>\n <div class=\"neon-date-picker__calendar-header-actions\">\n <neon-button\n :aria-label=\"previousDecadeLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isPreviousDecadeDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__previous-button\"\n icon=\"arrow-left-1\"\n size=\"m\"\n @click.stop.prevent.capture=\"onPreviousDecade()\"\n @keydown.enter.stop.prevent.capture=\"onPreviousDecade()\"\n />\n <neon-button\n :aria-label=\"nextDecadeLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isNextDecadeDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__next-button\"\n icon=\"arrow-right-1\"\n size=\"m\"\n @click.stop.prevent.capture=\"onNextDecade()\"\n @keydown.enter.stop.prevent.capture=\"onNextDecade()\"\n />\n </div>\n </div>\n <hr />\n <div class=\"neon-date-picker__calendar-options\">\n <neon-button\n v-for=\"index in 10\"\n :key=\"index\"\n :class=\"{\n 'neon-date-picker__calendar-option--selected':\n calendar.pageYear === calendar.pageDecadeStart + index - 1,\n 'neon-date-picker__calendar-option--today':\n calendar.today.year === calendar.pageDecadeStart + index - 1,\n 'neon-date-picker__calendar-option--disabled': isYearDisabled(calendar.pageDecadeStart + index - 1),\n }\"\n :color=\"color\"\n :disabled=\"isYearDisabled(calendar.pageDecadeStart + index - 1)\"\n :full-width=\"true\"\n :label=\"`${calendar.pageDecadeStart + index - 1}`\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-option\"\n size=\"s\"\n @click.stop.prevent.capture=\"selectYear(calendar.pageDecadeStart + index - 1)\"\n @keydown.enter.stop.prevent.capture=\"selectYear(calendar.pageDecadeStart + index - 1)\"\n />\n </div>\n </template>\n <template v-else-if=\"monthSelectionOpen\">\n <div class=\"neon-date-picker__calendar-header\">\n <span v-if=\"isChangeYearDisabled\" class=\"neon-date-picker__calendar-title-readonly\">\n {{ calendar.pageYear }}\n </span>\n <neon-button\n v-else\n :aria-label=\"changeYearLabel\"\n :label=\"`${calendar.pageYear}`\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-header-title\"\n color=\"high-contrast\"\n icon=\"data-transfer-horizontal\"\n icon-position=\"right\"\n size=\"m\"\n @click.stop.prevent.capture=\"changeYear()\"\n @keydown.enter.stop.prevent.capture=\"changeYear()\"\n />\n <div class=\"neon-date-picker__calendar-header-actions\">\n <neon-button\n :aria-label=\"previousYearLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isPreviousYearDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__previous-button\"\n icon=\"arrow-left-1\"\n size=\"m\"\n @click.stop.prevent.capture=\"onPreviousYear()\"\n @keydown.enter.stop.prevent.capture=\"onPreviousYear()\"\n />\n <neon-button\n :aria-label=\"nextYearLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isNextYearDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__next-button\"\n icon=\"arrow-right-1\"\n size=\"m\"\n @click.stop.prevent.capture=\"onNextYear()\"\n @keydown.enter.stop.prevent.capture=\"onNextYear()\"\n />\n </div>\n </div>\n <hr />\n <div class=\"neon-date-picker__calendar-options\">\n <neon-button\n v-for=\"(month, index) in calendar.months\"\n :key=\"index\"\n :class=\"{\n 'neon-date-picker__calendar-option--selected': index + 1 === calendar.pageMonth,\n 'neon-date-picker__calendar-option--today':\n index + 1 === calendar.today.month && calendar.today.year === calendar.pageYear,\n 'neon-date-picker__calendar-option--disabled': isMonthDisabled(calendar.pageYear, index + 1),\n }\"\n :color=\"color\"\n :disabled=\"isMonthDisabled(calendar.pageYear, index + 1)\"\n :full-width=\"true\"\n :label=\"month\"\n :title=\"calendar.monthLongNames[index]\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-option\"\n size=\"s\"\n @click.stop.prevent.capture=\"selectMonth(index + 1)\"\n @keydown.enter.stop.prevent.capture=\"selectMonth(index + 1)\"\n />\n </div>\n </template>\n <template v-else>\n <div class=\"neon-date-picker__calendar-header\">\n <span v-if=\"isChangeDateDisabled\" class=\"neon-date-picker__calendar-title-readonly\">\n {{ `${calendar.pageMonthName} ${calendar.pageYear}` }}\n </span>\n <neon-button\n v-else\n :aria-label=\"changeMonthLabel\"\n :label=\"`${calendar.pageMonthName} ${calendar.pageYear}`\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-header-title\"\n color=\"high-contrast\"\n icon=\"data-transfer-horizontal\"\n icon-position=\"right\"\n size=\"m\"\n @click.stop.prevent.capture=\"changeMonth()\"\n @keydown.enter.stop.prevent.capture=\"changeMonth()\"\n />\n <div class=\"neon-date-picker__calendar-header-actions\">\n <neon-button\n :aria-label=\"previousMonthLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isPreviousDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__previous-button\"\n icon=\"arrow-left-1\"\n size=\"m\"\n @click.stop.prevent.capture=\"onPrevious()\"\n @keydown.enter.stop.prevent.capture=\"onPrevious()\"\n />\n <neon-button\n :aria-label=\"nextMonthLabel\"\n :circular=\"true\"\n :color=\"color\"\n :disabled=\"isNextDisabled\"\n button-style=\"text\"\n class=\"neon-date-picker__next-button\"\n icon=\"arrow-right-1\"\n size=\"m\"\n @click.stop.prevent.capture=\"onNext()\"\n @keydown.enter.stop.prevent.capture=\"onNext()\"\n />\n </div>\n </div>\n <div class=\"neon-date-picker__calendar-dows\">\n <abbr\n v-for=\"(dow, index) in calendar.dowNames\"\n :key=\"dow\"\n :title=\"calendar.dowLongNames[index]\"\n class=\"neon-date-picker__calendar-dow\"\n >\n {{ dow }}\n </abbr>\n </div>\n <hr />\n <div v-for=\"(dateRow, index) in calendar.dates\" :key=\"index\" class=\"neon-date-picker__calendar-dates\">\n <template v-for=\"(dateCol, index) in dateRow\">\n <neon-button\n v-if=\"dateCol\"\n :key=\"index\"\n :circular=\"true\"\n :class=\"{\n 'neon-date-picker__calendar-date--selected':\n modelValue === isoDate(dateCol, calendar.pageMonth, calendar.pageYear),\n 'neon-date-picker__calendar-date--today':\n today === isoDate(dateCol, calendar.pageMonth, calendar.pageYear),\n 'neon-date-picker__calendar-date--disabled': isDisabled(\n isoDate(dateCol, calendar.pageMonth, calendar.pageYear),\n ),\n }\"\n :color=\"color\"\n :disabled=\"isDisabled(isoDate(dateCol, calendar.pageMonth, calendar.pageYear))\"\n :label=\"`${dateCol}`\"\n :tabindex=\"isDisabled(isoDate(dateCol, calendar.pageMonth, calendar.pageYear)) ? -1 : 0\"\n :transparent=\"true\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-date\"\n size=\"m\"\n @click.stop.prevent.capture=\"emitDate(isoDate(dateCol, calendar.pageMonth, calendar.pageYear))\"\n @keydown.enter.stop.prevent.capture=\"emitDate(isoDate(dateCol, calendar.pageMonth, calendar.pageYear))\"\n />\n <div\n v-else\n :key=\"`${index}-empty`\"\n class=\"neon-date-picker__calendar-date neon-date-picker__calendar-date--empty\"\n />\n </template>\n </div>\n </template>\n <hr />\n <div class=\"neon-button-group\">\n <neon-button\n v-if=\"optional\"\n :label=\"clearLabel\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-clear-button\"\n color=\"low-contrast\"\n size=\"s\"\n @click.stop.prevent.capture=\"clear()\"\n @keydown.enter.stop.prevent.capture=\"clear()\"\n />\n <neon-button\n :color=\"color\"\n :label=\"doneLabel\"\n button-style=\"text\"\n class=\"neon-date-picker__calendar-done-button\"\n size=\"s\"\n @click.stop.prevent.capture=\"done()\"\n @keydown.enter.stop.prevent.capture=\"done()\"\n />\n </div>\n </div>\n </neon-dropdown>\n <neon-input\n :color=\"color\"\n :disabled=\"disabled\"\n :hide-icon=\"true\"\n :max=\"max\"\n :min=\"min\"\n :model-value=\"modelValue\"\n :size=\"size\"\n :tabindex=\"-1\"\n class=\"neon-date-picker__native-input\"\n type=\"date\"\n v-bind=\"attrs\"\n @update:modelValue=\"emitDate\"\n />\n </div>\n</template>\n\n<script lang=\"ts\" src=\"./NeonDatePicker.ts\"></script>\n"],"names":["_hoisted_2","_hoisted_3","_hoisted_4","_hoisted_5","_hoisted_6","_hoisted_8","_hoisted_9","_hoisted_10","_hoisted_12","_hoisted_13","_hoisted_15","_createElementBlock","_normalizeClass","_ctx","_createVNode","_component_neon_dropdown","$event","_createElementVNode","_hoisted_1","_Fragment","_toDisplayString","_component_neon_button","_renderList","index","_withModifiers","_withKeys","_openBlock","_hoisted_7","_createBlock","month","_hoisted_11","dow","_hoisted_14","dateRow","dateCol","_component_neon_input","_mergeProps"],"mappings":"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"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";const n=require("vue"),c=require("../../../common/enums/NeonInputType.cjs.js"),o=require("../../../common/enums/NeonState.cjs.js"),
|
|
1
|
+
"use strict";const n=require("vue"),c=require("../../../common/enums/NeonInputType.cjs.js"),o=require("../../../common/enums/NeonState.cjs.js"),B=require("../../../common/enums/NeonSize.cjs.js"),i=require("../../../common/enums/NeonFunctionalColor.cjs.js"),T=require("../../presentation/icon/NeonIcon.vue.cjs.js"),q=require("../../../common/utils/NeonDebounceUtils.cjs.js"),F=require("../../../common/enums/NeonInputMode.cjs.js"),z=n.defineComponent({name:"NeonInput",components:{NeonIcon:T},props:{id:{type:String,default:null},modelValue:{type:String,default:null},type:{type:String,default:c.NeonInputType.Text},placeholder:{type:String,default:null},size:{type:String,default:B.NeonSize.Medium},color:{type:String,default:i.NeonFunctionalColor.Primary},inputmode:{type:String,default:F.NeonInputMode.Text},autocomplete:{type:String,default:"on"},state:{type:String,default:o.NeonState.Ready},rows:{type:Number,default:null},icon:{type:String,default:null},iconReadonly:{type:Boolean,default:!1},hideIcon:{type:Boolean,default:!1},tabindex:{type:Number,default:0},disabled:{type:Boolean,default:!1},stateHighlight:{type:Boolean,default:!0},stateIcon:{type:Boolean,default:!0},maxlength:{type:Number,default:null},debounce:{type:Number,default:void 0}},emits:["focus","blur","icon-click","update:modelValue"],setup(e,{emit:l,expose:y}){const g=n.useAttrs(),u=n.ref(null),r=n.ref(!1),N=n.computed(()=>{const{onBlur:t,onFocus:a,onIconClick:d,...w}=g;return w}),s=q.NeonDebounceUtils.debounce(t=>{l("update:modelValue",t)},e.debounce),f=n.computed(()=>{switch(e.state){case o.NeonState.Loading:return"loading";case o.NeonState.Success:return e.stateIcon?"check":void 0;case o.NeonState.Error:return e.stateIcon?"times":void 0;default:return e.icon?e.icon:e.modelValue&&e.modelValue.length>0?"times":void 0}}),h=n.computed(()=>f.value&&!e.hideIcon&&(e.state!=="ready"||e.icon||e.modelValue&&!e.disabled&&e.modelValue.length>0)),S=n.computed(()=>{switch(e.state){case o.NeonState.Success:return i.NeonFunctionalColor.Success;case o.NeonState.Error:return i.NeonFunctionalColor.Error;case o.NeonState.Loading:return e.color;default:return i.NeonFunctionalColor.LowContrast}}),m=()=>{var t;(t=u.value)==null||t.focus()},b=()=>{var t;(t=u.value)==null||t.click()},I=()=>{r.value=!0,l("focus")},v=()=>{r.value=!1,l("blur")},V=t=>{e.disabled||(e.icon?l("icon-click"):(s(""),setTimeout(m)),t.preventDefault(),t.stopPropagation())},k=t=>{const a=t.target.value,d=e.maxlength&&a.length>e.maxlength?a.substring(0,e.maxlength):a;e.modelValue!==d&&s(d)},x=t=>{t.key!=="Backspace"&&e.maxlength&&e.modelValue&&e.modelValue.length>=e.maxlength&&t.preventDefault()},C=n.computed(()=>{if(e.placeholder)return e.placeholder;switch(e.type){case c.NeonInputType.Email:return"gbelson@hooli.com";case c.NeonInputType.Tel:return"+41785551234";case c.NeonInputType.Url:return"http://www.getskeleton.com";default:return""}});return y({neonInput:u}),{neonInput:u,focused:r,sanitizedAttributes:N,iconVisible:h,iconName:f,iconColor:S,computedPlaceholder:C,focus:m,click:b,onFocus:I,onBlur:v,iconClicked:V,changeValue:k,onKeyDown:x}}});module.exports=z;
|
|
2
2
|
//# sourceMappingURL=NeonInput.cjs.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonInput.cjs.js","sources":["../../../../src/components/user-input/input/NeonInput.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { computed, defineComponent, defineExpose, ref, useAttrs } from 'vue';\nimport { NeonInputType } from '@/common/enums/NeonInputType';\nimport { NeonState } from '@/common/enums/NeonState';\nimport { NeonSize } from '@/common/enums/NeonSize';\nimport { NeonFunctionalColor } from '@/common/enums/NeonFunctionalColor';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport { NeonDebounceUtils } from '@/common/utils/NeonDebounceUtils';\nimport { NeonInputMode } from '@/common/enums/NeonInputMode';\n\n/**\n * Equivalent of, and wrapper around, an HTML input. Also supports <strong>textarea</strong>.\n */\nexport default defineComponent({\n name: 'NeonInput',\n components: {\n NeonIcon,\n },\n props: {\n /**\n * The id the input\n */\n id: { type: String, default: null },\n /**\n * The value of the input\n */\n modelValue: { type: String, default: null },\n /**\n * The type of input this is. NOTE: Neon provides custom components as alternatives in the following cases:\n * * file (use <a href=\"/user-input/file\">NeonFile</a>)\n * * password (use <a href=\"/user-input/password\">NeonPassword</a>)\n */\n type: { type: String as () => NeonInputType, default: NeonInputType.Text },\n /**\n * Placeholder text to display in the input\n */\n placeholder: { type: String, default: null },\n /**\n * Size of the input\n */\n size: { type: String as () => NeonSize, default: NeonSize.Medium },\n /**\n * Color of the input\n */\n color: { type: String as () => NeonFunctionalColor, default: NeonFunctionalColor.Primary },\n /**\n * The HTML input mode as specified <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode\">here</a>.\n */\n inputmode: { type: String as () => NeonInputMode, default: NeonInputMode.Text },\n /**\n * The HTML autocomplete mode as specified <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values\">here</a>.\n * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.\n */\n autocomplete: { type: String, default: 'on' },\n /**\n * The state of the input\n */\n state: { type: String as () => NeonState, default: NeonState.Ready },\n /**\n * The number of rows to display in the case of a textarea\n */\n rows: { type: Number, default: null },\n /**\n * The name of a clickable icon to display inside the input. This is used for clearing contents or e.g. in the case of\n * NeonPassword toggle showing/hiding the password. Defaults to <em>times</em> (for clearing the input's contents).\n */\n icon: { type: String, default: null },\n /**\n * Make the input field icon read-only, i.e. it will not emit events or be treated as a focusable button.\n */\n iconReadonly: { type: Boolean, default: false },\n /**\n * Hide the icon button, e.g. the X button to clear the input's contents.\n */\n hideIcon: { type: Boolean, default: false },\n /**\n * Tabindex to assign to the input.\n */\n tabindex: { type: Number, default: 0 },\n /**\n * The disabled state of the input\n */\n disabled: { type: Boolean, default: false },\n /**\n * When the state is success or error, display the field with the state color indicator, e.g. border or background\n * color.\n */\n stateHighlight: { type: Boolean, default: true },\n /**\n * When the state is success or error, display the state icon.\n */\n stateIcon: { type: Boolean, default: true },\n /**\n * The character limit for a textarea.\n */\n maxlength: { type: Number, default: null },\n /**\n * Debounce time in ms, if no value is provided the default value set in NeonDebounceUtils is used (=300ms).\n * Set to 0 to disable debounce.\n */\n debounce: { type: Number, default: undefined },\n },\n emits: [\n /**\n * Emitted when the input has gained focus\n * @type {void}\n */\n 'focus',\n /**\n * Emitted when the input has lost focus\n * @type {void}\n */\n 'blur',\n /**\n * Emitted when the icon is clicked\n * @type {void}\n */\n 'icon-click',\n /**\n * Emitted when the input value is changed, NOTE: is not triggered if input is over the textarea length limit\n * @type {string} the contents of the input\n */\n 'update:modelValue',\n ],\n setup(props, { emit }) {\n const attrs = useAttrs();\n const neonInput = ref<HTMLElement | null>(null);\n const focused = ref(false);\n\n const sanitizedAttributes = computed(() => {\n const {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onBlur,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onFocus,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onIconClick,\n ...sanitized\n } = attrs;\n\n return sanitized;\n });\n\n const emitModelValue = NeonDebounceUtils.debounce((value: string) => {\n emit('update:modelValue', value);\n }, props.debounce);\n\n const iconName = computed(() => {\n switch (props.state) {\n case NeonState.Loading:\n return 'loading';\n case NeonState.Success:\n return props.stateIcon ? 'check' : undefined;\n case NeonState.Error:\n return props.stateIcon ? 'times' : undefined;\n default:\n if (props.icon) {\n return props.icon;\n } else if (props.modelValue && props.modelValue.length > 0) {\n return 'times';\n }\n\n return undefined;\n }\n });\n\n const iconVisible = computed(() => {\n return (\n iconName.value &&\n !props.hideIcon &&\n (props.state !== 'ready' || props.icon || (props.modelValue && !props.disabled && props.modelValue.length > 0))\n );\n });\n\n const iconColor = computed(() => {\n switch (props.state) {\n case NeonState.Success:\n return NeonFunctionalColor.Success;\n case NeonState.Error:\n return NeonFunctionalColor.Error;\n case NeonState.Loading:\n return props.color;\n default:\n return NeonFunctionalColor.LowContrast;\n }\n });\n\n const focus = () => {\n neonInput.value?.focus();\n };\n\n const click = () => {\n neonInput.value?.click();\n };\n\n const onFocus = () => {\n focused.value = true;\n emit('focus');\n };\n\n const onBlur = () => {\n focused.value = false;\n emit('blur');\n };\n\n const iconClicked = ($event: Event) => {\n if (!props.disabled) {\n if (props.icon) {\n emit('icon-click');\n } else {\n emitModelValue('');\n setTimeout(focus);\n }\n $event.preventDefault();\n $event.stopPropagation();\n }\n };\n\n const changeValue = (event: Event) => {\n const val = (event.target as HTMLInputElement).value;\n const v = props.maxlength && val.length > props.maxlength ? val.substring(0, props.maxlength) : val;\n if (props.modelValue !== v) {\n emitModelValue(v);\n }\n };\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (\n event.key !== 'Backspace' &&\n props.maxlength &&\n props.modelValue &&\n props.modelValue.length >= props.maxlength\n ) {\n event.preventDefault();\n }\n };\n\n const computedPlaceholder = computed(() => {\n if (props.placeholder) {\n return props.placeholder;\n } else {\n switch (props.type) {\n case NeonInputType.Email:\n return 'gbelson@hooli.com';\n case NeonInputType.Tel:\n return '+41785551234';\n case NeonInputType.Url:\n return 'http://www.getskeleton.com';\n default:\n return '';\n }\n }\n });\n\n defineExpose({ neonInput });\n\n return {\n neonInput,\n focused,\n sanitizedAttributes,\n iconVisible,\n iconName,\n iconColor,\n computedPlaceholder,\n focus,\n click,\n onFocus,\n onBlur,\n iconClicked,\n changeValue,\n onKeyDown,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonIcon","NeonInputType","NeonSize","NeonFunctionalColor","NeonInputMode","NeonState","props","emit","attrs","useAttrs","neonInput","ref","focused","sanitizedAttributes","computed","onBlur","onFocus","onIconClick","sanitized","emitModelValue","NeonDebounceUtils","value","iconName","iconVisible","iconColor","focus","_a","click","iconClicked","$event","changeValue","event","val","v","onKeyDown","computedPlaceholder","defineExpose"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeonInput.cjs.js","sources":["../../../../src/components/user-input/input/NeonInput.ts?vue&type=script&src=true&lang.ts"],"sourcesContent":["import { computed, defineComponent, ref, useAttrs } from 'vue';\nimport { NeonInputType } from '@/common/enums/NeonInputType';\nimport { NeonState } from '@/common/enums/NeonState';\nimport { NeonSize } from '@/common/enums/NeonSize';\nimport { NeonFunctionalColor } from '@/common/enums/NeonFunctionalColor';\nimport NeonIcon from '@/components/presentation/icon/NeonIcon.vue';\nimport { NeonDebounceUtils } from '@/common/utils/NeonDebounceUtils';\nimport { NeonInputMode } from '@/common/enums/NeonInputMode';\n\n/**\n * Equivalent of, and wrapper around, an HTML input. Also supports <strong>textarea</strong>.\n */\nexport default defineComponent({\n name: 'NeonInput',\n components: {\n NeonIcon,\n },\n props: {\n /**\n * The id the input\n */\n id: { type: String, default: null },\n /**\n * The value of the input\n */\n modelValue: { type: String, default: null },\n /**\n * The type of input this is. NOTE: Neon provides custom components as alternatives in the following cases:\n * * file (use <a href=\"/user-input/file\">NeonFile</a>)\n * * password (use <a href=\"/user-input/password\">NeonPassword</a>)\n */\n type: { type: String as () => NeonInputType, default: NeonInputType.Text },\n /**\n * Placeholder text to display in the input\n */\n placeholder: { type: String, default: null },\n /**\n * Size of the input\n */\n size: { type: String as () => NeonSize, default: NeonSize.Medium },\n /**\n * Color of the input\n */\n color: { type: String as () => NeonFunctionalColor, default: NeonFunctionalColor.Primary },\n /**\n * The HTML input mode as specified <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode\">here</a>.\n */\n inputmode: { type: String as () => NeonInputMode, default: NeonInputMode.Text },\n /**\n * The HTML autocomplete mode as specified <a href=\"https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/autocomplete#values\">here</a>.\n * NOTE: No enum is provided in Neon as some values can be used in combination, please refer to the full list of values in the preceding link.\n */\n autocomplete: { type: String, default: 'on' },\n /**\n * The state of the input\n */\n state: { type: String as () => NeonState, default: NeonState.Ready },\n /**\n * The number of rows to display in the case of a textarea\n */\n rows: { type: Number, default: null },\n /**\n * The name of a clickable icon to display inside the input. This is used for clearing contents or e.g. in the case of\n * NeonPassword toggle showing/hiding the password. Defaults to <em>times</em> (for clearing the input's contents).\n */\n icon: { type: String, default: null },\n /**\n * Make the input field icon read-only, i.e. it will not emit events or be treated as a focusable button.\n */\n iconReadonly: { type: Boolean, default: false },\n /**\n * Hide the icon button, e.g. the X button to clear the input's contents.\n */\n hideIcon: { type: Boolean, default: false },\n /**\n * Tabindex to assign to the input.\n */\n tabindex: { type: Number, default: 0 },\n /**\n * The disabled state of the input\n */\n disabled: { type: Boolean, default: false },\n /**\n * When the state is success or error, display the field with the state color indicator, e.g. border or background\n * color.\n */\n stateHighlight: { type: Boolean, default: true },\n /**\n * When the state is success or error, display the state icon.\n */\n stateIcon: { type: Boolean, default: true },\n /**\n * The character limit for a textarea.\n */\n maxlength: { type: Number, default: null },\n /**\n * Debounce time in ms, if no value is provided the default value set in NeonDebounceUtils is used (=300ms).\n * Set to 0 to disable debounce.\n */\n debounce: { type: Number, default: undefined },\n },\n emits: [\n /**\n * Emitted when the input has gained focus\n * @type {void}\n */\n 'focus',\n /**\n * Emitted when the input has lost focus\n * @type {void}\n */\n 'blur',\n /**\n * Emitted when the icon is clicked\n * @type {void}\n */\n 'icon-click',\n /**\n * Emitted when the input value is changed, NOTE: is not triggered if input is over the textarea length limit\n * @type {string} the contents of the input\n */\n 'update:modelValue',\n ],\n setup(props, { emit, expose }) {\n const attrs = useAttrs();\n const neonInput = ref<HTMLElement | null>(null);\n const focused = ref(false);\n\n const sanitizedAttributes = computed(() => {\n const {\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onBlur,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onFocus,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onIconClick,\n ...sanitized\n } = attrs;\n\n return sanitized;\n });\n\n const emitModelValue = NeonDebounceUtils.debounce((value: string) => {\n emit('update:modelValue', value);\n }, props.debounce);\n\n const iconName = computed(() => {\n switch (props.state) {\n case NeonState.Loading:\n return 'loading';\n case NeonState.Success:\n return props.stateIcon ? 'check' : undefined;\n case NeonState.Error:\n return props.stateIcon ? 'times' : undefined;\n default:\n if (props.icon) {\n return props.icon;\n } else if (props.modelValue && props.modelValue.length > 0) {\n return 'times';\n }\n\n return undefined;\n }\n });\n\n const iconVisible = computed(() => {\n return (\n iconName.value &&\n !props.hideIcon &&\n (props.state !== 'ready' || props.icon || (props.modelValue && !props.disabled && props.modelValue.length > 0))\n );\n });\n\n const iconColor = computed(() => {\n switch (props.state) {\n case NeonState.Success:\n return NeonFunctionalColor.Success;\n case NeonState.Error:\n return NeonFunctionalColor.Error;\n case NeonState.Loading:\n return props.color;\n default:\n return NeonFunctionalColor.LowContrast;\n }\n });\n\n const focus = () => {\n neonInput.value?.focus();\n };\n\n const click = () => {\n neonInput.value?.click();\n };\n\n const onFocus = () => {\n focused.value = true;\n emit('focus');\n };\n\n const onBlur = () => {\n focused.value = false;\n emit('blur');\n };\n\n const iconClicked = ($event: Event) => {\n if (!props.disabled) {\n if (props.icon) {\n emit('icon-click');\n } else {\n emitModelValue('');\n setTimeout(focus);\n }\n $event.preventDefault();\n $event.stopPropagation();\n }\n };\n\n const changeValue = (event: Event) => {\n const val = (event.target as HTMLInputElement).value;\n const v = props.maxlength && val.length > props.maxlength ? val.substring(0, props.maxlength) : val;\n if (props.modelValue !== v) {\n emitModelValue(v);\n }\n };\n\n const onKeyDown = (event: KeyboardEvent) => {\n if (\n event.key !== 'Backspace' &&\n props.maxlength &&\n props.modelValue &&\n props.modelValue.length >= props.maxlength\n ) {\n event.preventDefault();\n }\n };\n\n const computedPlaceholder = computed(() => {\n if (props.placeholder) {\n return props.placeholder;\n } else {\n switch (props.type) {\n case NeonInputType.Email:\n return 'gbelson@hooli.com';\n case NeonInputType.Tel:\n return '+41785551234';\n case NeonInputType.Url:\n return 'http://www.getskeleton.com';\n default:\n return '';\n }\n }\n });\n\n expose({ neonInput });\n\n return {\n neonInput,\n focused,\n sanitizedAttributes,\n iconVisible,\n iconName,\n iconColor,\n computedPlaceholder,\n focus,\n click,\n onFocus,\n onBlur,\n iconClicked,\n changeValue,\n onKeyDown,\n };\n },\n});\n"],"names":["_sfc_main","defineComponent","NeonIcon","NeonInputType","NeonSize","NeonFunctionalColor","NeonInputMode","NeonState","props","emit","expose","attrs","useAttrs","neonInput","ref","focused","sanitizedAttributes","computed","onBlur","onFocus","onIconClick","sanitized","emitModelValue","NeonDebounceUtils","value","iconName","iconVisible","iconColor","focus","_a","click","iconClicked","$event","changeValue","event","val","v","onKeyDown","computedPlaceholder"],"mappings":"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"}
|