@aotearoan/neon 22.5.2 → 23.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/feedback/alert/container/NeonAlertContainer.vue.cjs.js +1 -1
- package/dist/components/feedback/alert/container/NeonAlertContainer.vue.cjs.js.map +1 -1
- package/dist/components/feedback/alert/container/NeonAlertContainer.vue.es.js +30 -29
- package/dist/components/feedback/alert/container/NeonAlertContainer.vue.es.js.map +1 -1
- package/dist/components/layout/card-list/NeonCardList.vue.cjs.js +1 -1
- package/dist/components/layout/card-list/NeonCardList.vue.cjs.js.map +1 -1
- package/dist/components/layout/card-list/NeonCardList.vue.es.js +8 -6
- package/dist/components/layout/card-list/NeonCardList.vue.es.js.map +1 -1
- package/dist/components/navigation/link/NeonLink.cjs.js +1 -1
- package/dist/components/navigation/link/NeonLink.cjs.js.map +1 -1
- package/dist/components/navigation/link/NeonLink.es.js +6 -6
- package/dist/components/navigation/link/NeonLink.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 +2 -2
- package/dist/components/navigation/menu/NeonMenu.vue.es.js.map +1 -1
- package/dist/components/navigation/mobile-menu/NeonMobileMenu.vue.cjs.js +1 -1
- package/dist/components/navigation/mobile-menu/NeonMobileMenu.vue.cjs.js.map +1 -1
- package/dist/components/navigation/mobile-menu/NeonMobileMenu.vue.es.js +1 -1
- package/dist/components/navigation/mobile-menu/NeonMobileMenu.vue.es.js.map +1 -1
- package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.cjs.js +1 -1
- package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.cjs.js.map +1 -1
- package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.es.js +8 -7
- package/dist/components/navigation/tree-menu/NeonTreeMenu.vue.es.js.map +1 -1
- package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.cjs.js +1 -1
- package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.cjs.js.map +1 -1
- package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.es.js +1 -0
- package/dist/components/presentation/image-carousel/NeonImageCarousel.vue.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 +1 -0
- package/dist/components/user-input/button/NeonButton.vue.es.js.map +1 -1
- package/dist/components/user-input/filter-list/NeonFilterList.vue.cjs.js +1 -1
- package/dist/components/user-input/filter-list/NeonFilterList.vue.cjs.js.map +1 -1
- package/dist/components/user-input/filter-list/NeonFilterList.vue.es.js +1 -0
- package/dist/components/user-input/filter-list/NeonFilterList.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 +62 -69
- package/dist/components/user-input/input/NeonInput.es.js.map +1 -1
- package/dist/src/common/models/NeonAlertMessage.d.ts +4 -0
- package/dist/src/components/feedback/alert/NeonAlert.d.ts +8 -0
- package/dist/src/components/feedback/dialog/NeonDialog.d.ts +24 -8
- package/dist/src/components/feedback/note/NeonNote.d.ts +8 -8
- package/dist/src/components/layout/card-list/NeonCardList.d.ts +8 -2
- package/dist/src/components/navigation/dropdown-menu/NeonDropdownMenu.d.ts +33 -33
- package/dist/src/components/navigation/link/NeonLink.d.ts +4 -4
- package/dist/src/components/navigation/menu/NeonMenu.d.ts +33 -33
- package/dist/src/components/navigation/mobile-menu/NeonMobileMenu.d.ts +33 -33
- package/dist/src/components/presentation/badge/NeonBadge.d.ts +29 -67
- package/dist/src/components/presentation/dropdown/NeonDropdown.d.ts +49 -29
- package/dist/src/components/user-input/color/NeonColor.d.ts +3 -3
- package/dist/src/components/user-input/date-picker/NeonDatePicker.d.ts +38 -94
- package/dist/src/components/user-input/file/NeonFile.d.ts +29 -77
- package/dist/src/components/user-input/filter-list/NeonFilterList.d.ts +6 -0
- package/dist/src/components/user-input/input/NeonInput.d.ts +3 -3
- package/dist/src/components/user-input/number/NeonNumber.d.ts +15 -7
- package/dist/src/components/user-input/password/NeonPassword.d.ts +3 -3
- package/dist/src/components/user-input/search/NeonSearch.d.ts +218 -92
- package/dist/src/components/user-input/select/NeonSelect.d.ts +51 -213
- package/package.json +1 -1
- package/src/sass/components/_action-menu.scss +1 -0
- package/src/sass/components/_alert-container.scss +45 -48
- package/src/sass/components/_button.scss +10 -3
- package/src/sass/components/_card-list.scss +0 -11
- package/src/sass/components/_drawer.scss +2 -1
- package/src/sass/components/_dropdown.scss +1 -0
- package/src/sass/components/_field-group.scss +15 -4
- package/src/sass/components/_link.scss +36 -52
- package/src/sass/components/_number.scss +6 -6
- package/src/sass/components/_tabs.scss +2 -24
- package/src/sass/components/_toast-container.scss +15 -23
- package/src/sass/components/_toggle-chip.scss +7 -6
- package/src/sass/global/_base-html.scss +2 -30
- package/src/sass/includes/_outline.scss +6 -6
- package/src/sass/variables.scss +76 -34
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import { NeonInputType as
|
|
1
|
+
import { defineComponent as L, useAttrs as z, ref as m, computed as o } from "vue";
|
|
2
|
+
import { NeonInputType as D } from "../../../common/enums/NeonInputType.es.js";
|
|
3
3
|
import { NeonState as l } from "../../../common/enums/NeonState.es.js";
|
|
4
|
-
import { NeonSize as
|
|
5
|
-
import { NeonFunctionalColor as
|
|
6
|
-
import
|
|
7
|
-
import { NeonDebounceUtils as
|
|
4
|
+
import { NeonSize as F } from "../../../common/enums/NeonSize.es.js";
|
|
5
|
+
import { NeonFunctionalColor as i } from "../../../common/enums/NeonFunctionalColor.es.js";
|
|
6
|
+
import T from "../../presentation/icon/NeonIcon.vue.es.js";
|
|
7
|
+
import { NeonDebounceUtils as E } from "../../../common/utils/NeonDebounceUtils.es.js";
|
|
8
8
|
import { NeonInputMode as M } from "../../../common/enums/NeonInputMode.es.js";
|
|
9
|
-
const q =
|
|
9
|
+
const q = L({
|
|
10
10
|
name: "NeonInput",
|
|
11
11
|
components: {
|
|
12
|
-
NeonIcon:
|
|
12
|
+
NeonIcon: T
|
|
13
13
|
},
|
|
14
14
|
props: {
|
|
15
15
|
/**
|
|
@@ -25,7 +25,7 @@ const q = T({
|
|
|
25
25
|
* * file (use <a href="/user-input/file">NeonFile</a>)
|
|
26
26
|
* * password (use <a href="/user-input/password">NeonPassword</a>)
|
|
27
27
|
*/
|
|
28
|
-
type: { type: String, default:
|
|
28
|
+
type: { type: String, default: D.Text },
|
|
29
29
|
/**
|
|
30
30
|
* Placeholder text to display in the input
|
|
31
31
|
*/
|
|
@@ -33,11 +33,11 @@ const q = T({
|
|
|
33
33
|
/**
|
|
34
34
|
* Size of the input
|
|
35
35
|
*/
|
|
36
|
-
size: { type: String, default:
|
|
36
|
+
size: { type: String, default: F.Medium },
|
|
37
37
|
/**
|
|
38
38
|
* Color of the input
|
|
39
39
|
*/
|
|
40
|
-
color: { type: String, default:
|
|
40
|
+
color: { type: String, default: i.Primary },
|
|
41
41
|
/**
|
|
42
42
|
* The HTML input mode as specified <a href="https://developer.mozilla.org/en-US/docs/Web/HTML/Global_attributes/inputmode">here</a>.
|
|
43
43
|
*/
|
|
@@ -121,21 +121,22 @@ const q = T({
|
|
|
121
121
|
*/
|
|
122
122
|
"update:modelValue"
|
|
123
123
|
],
|
|
124
|
-
setup(e, { emit:
|
|
125
|
-
const
|
|
124
|
+
setup(e, { emit: u, expose: g }) {
|
|
125
|
+
const h = z(), c = m(null), r = m(!1), y = o(() => {
|
|
126
126
|
const {
|
|
127
127
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
128
128
|
onBlur: t,
|
|
129
129
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
130
130
|
onFocus: n,
|
|
131
131
|
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
132
|
-
onIconClick:
|
|
133
|
-
...
|
|
134
|
-
} =
|
|
135
|
-
return
|
|
136
|
-
}),
|
|
137
|
-
|
|
138
|
-
}, e.debounce),
|
|
132
|
+
onIconClick: a,
|
|
133
|
+
...w
|
|
134
|
+
} = h;
|
|
135
|
+
return w;
|
|
136
|
+
}), d = E.debounce((t) => {
|
|
137
|
+
u("update:modelValue", t);
|
|
138
|
+
}, e.debounce), s = o(() => {
|
|
139
|
+
var t;
|
|
139
140
|
switch (e.state) {
|
|
140
141
|
case l.Loading:
|
|
141
142
|
return "loading";
|
|
@@ -144,78 +145,70 @@ const q = T({
|
|
|
144
145
|
case l.Error:
|
|
145
146
|
return e.stateIcon ? "times" : void 0;
|
|
146
147
|
default:
|
|
147
|
-
return e.icon ? e.icon : e.modelValue && e.modelValue.length > 0 ? "times" : void 0;
|
|
148
|
+
return e.icon ? e.icon : e.modelValue && (((t = e.modelValue) == null ? void 0 : t.length) || 0) > 0 ? "times" : void 0;
|
|
148
149
|
}
|
|
149
|
-
}),
|
|
150
|
+
}), b = o(() => {
|
|
151
|
+
var t;
|
|
152
|
+
return s.value && !e.hideIcon && (e.state !== "ready" || e.icon || e.modelValue && !e.disabled && (((t = e.modelValue) == null ? void 0 : t.length) || 0) > 0);
|
|
153
|
+
}), S = o(() => {
|
|
150
154
|
switch (e.state) {
|
|
151
155
|
case l.Success:
|
|
152
|
-
return
|
|
156
|
+
return i.Success;
|
|
153
157
|
case l.Error:
|
|
154
|
-
return
|
|
158
|
+
return i.Error;
|
|
155
159
|
case l.Loading:
|
|
156
160
|
return e.color;
|
|
157
161
|
default:
|
|
158
|
-
return
|
|
162
|
+
return i.LowContrast;
|
|
159
163
|
}
|
|
160
|
-
}),
|
|
164
|
+
}), x = o(() => {
|
|
165
|
+
var t;
|
|
161
166
|
if (e.maxlength && e.maxlength > 0) {
|
|
162
|
-
const
|
|
163
|
-
switch (
|
|
167
|
+
const n = e.maxlengthLabel.split(" | "), a = e.maxlength - (((t = e.modelValue) == null ? void 0 : t.length) || 0);
|
|
168
|
+
switch (a) {
|
|
164
169
|
case 0:
|
|
165
|
-
return
|
|
170
|
+
return n[0];
|
|
166
171
|
case 1:
|
|
167
|
-
return
|
|
172
|
+
return n[1];
|
|
168
173
|
default:
|
|
169
|
-
return
|
|
174
|
+
return n[2].replace("{count}", `${a}`);
|
|
170
175
|
}
|
|
171
176
|
}
|
|
172
177
|
return null;
|
|
173
178
|
}), f = () => {
|
|
174
179
|
var t;
|
|
175
|
-
(t =
|
|
176
|
-
},
|
|
180
|
+
(t = c.value) == null || t.focus();
|
|
181
|
+
}, N = () => {
|
|
177
182
|
var t;
|
|
178
|
-
(t =
|
|
183
|
+
(t = c.value) == null || t.click();
|
|
184
|
+
}, V = () => {
|
|
185
|
+
r.value = !0, u("focus");
|
|
179
186
|
}, v = () => {
|
|
180
|
-
|
|
181
|
-
}, I = () => {
|
|
182
|
-
|
|
187
|
+
r.value = !1, u("blur");
|
|
188
|
+
}, I = (t) => {
|
|
189
|
+
e.disabled || (e.icon ? u("icon-click") : (d(""), setTimeout(f)), t.preventDefault(), t.stopPropagation());
|
|
183
190
|
}, k = (t) => {
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
const n = t.target.value, d = e.maxlength && n.length > e.maxlength ? n.substring(0, e.maxlength) : n;
|
|
187
|
-
e.modelValue !== d && s(d);
|
|
191
|
+
const n = t.target.value, a = e.maxlength && n.length > e.maxlength ? n.substring(0, e.maxlength) : n;
|
|
192
|
+
e.modelValue !== a && d(a);
|
|
188
193
|
}, B = (t) => {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
return "http://www.getskeleton.com";
|
|
200
|
-
default:
|
|
201
|
-
return "";
|
|
202
|
-
}
|
|
203
|
-
});
|
|
204
|
-
return h({ neonInput: u }), {
|
|
205
|
-
neonInput: u,
|
|
206
|
-
focused: i,
|
|
207
|
-
sanitizedAttributes: b,
|
|
208
|
-
iconVisible: S,
|
|
209
|
-
iconName: m,
|
|
210
|
-
iconColor: x,
|
|
194
|
+
var n;
|
|
195
|
+
t.key !== "Backspace" && e.maxlength && e.modelValue && (((n = e.modelValue) == null ? void 0 : n.length) || 0) >= e.maxlength && t.preventDefault();
|
|
196
|
+
}, C = o(() => e.placeholder || "");
|
|
197
|
+
return g({ neonInput: c }), {
|
|
198
|
+
neonInput: c,
|
|
199
|
+
focused: r,
|
|
200
|
+
sanitizedAttributes: y,
|
|
201
|
+
iconVisible: b,
|
|
202
|
+
iconName: s,
|
|
203
|
+
iconColor: S,
|
|
211
204
|
computedPlaceholder: C,
|
|
212
|
-
counterLabel:
|
|
205
|
+
counterLabel: x,
|
|
213
206
|
focus: f,
|
|
214
|
-
click:
|
|
215
|
-
onFocus:
|
|
216
|
-
onBlur:
|
|
217
|
-
iconClicked:
|
|
218
|
-
changeValue:
|
|
207
|
+
click: N,
|
|
208
|
+
onFocus: V,
|
|
209
|
+
onBlur: v,
|
|
210
|
+
iconClicked: I,
|
|
211
|
+
changeValue: k,
|
|
219
212
|
onKeyDown: B
|
|
220
213
|
};
|
|
221
214
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NeonInput.es.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 as () => NeonInputMode, 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 * The label template for the character limit. This is a string in the vue-i18n Pluralization format with a\n * <em>{count}</em> placeholder.\n */\n maxlengthLabel: { type: String, default: 'No characters left | 1 character left | {count} characters left' },\n /**\n * Debounce time in ms. If no value is provided, the default value set in NeonDebounceUtils is used (=0ms).\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 counterLabel = computed<string | null>(() => {\n if (props.maxlength && props.maxlength > 0) {\n const templates = props.maxlengthLabel.split(' | ');\n const remainingChars = props.maxlength - props.modelValue.length;\n switch (remainingChars) {\n case 0:\n return templates[0];\n case 1:\n return templates[1];\n default:\n return templates[2].replace('{count}', `${remainingChars}`);\n }\n }\n return null;\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: InputEvent) => {\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 counterLabel,\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","counterLabel","templates","remainingChars","focus","_a","click","iconClicked","$event","changeValue","event","val","v","onKeyDown","computedPlaceholder"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"NeonInput.es.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 * The label template for the character limit. This is a string in the vue-i18n Pluralization format with a\n * <em>{count}</em> placeholder.\n */\n maxlengthLabel: { type: String, default: 'No characters left | 1 character left | {count} characters left' },\n /**\n * Debounce time in ms. If no value is provided, the default value set in NeonDebounceUtils is used (=0ms).\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) > 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' ||\n props.icon ||\n (props.modelValue && !props.disabled && (props.modelValue?.length || 0) > 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 counterLabel = computed<string | null>(() => {\n if (props.maxlength && props.maxlength > 0) {\n const templates = props.maxlengthLabel.split(' | ');\n const remainingChars = props.maxlength - (props.modelValue?.length || 0);\n switch (remainingChars) {\n case 0:\n return templates[0];\n case 1:\n return templates[1];\n default:\n return templates[2].replace('{count}', `${remainingChars}`);\n }\n }\n return null;\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: InputEvent) => {\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 || 0) >= props.maxlength\n ) {\n event.preventDefault();\n }\n };\n\n const computedPlaceholder = computed(() => props.placeholder || '');\n\n expose({ neonInput });\n\n return {\n neonInput,\n focused,\n sanitizedAttributes,\n iconVisible,\n iconName,\n iconColor,\n computedPlaceholder,\n counterLabel,\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","_a","iconVisible","iconColor","counterLabel","templates","remainingChars","focus","click","iconClicked","$event","changeValue","event","val","v","onKeyDown","computedPlaceholder"],"mappings":"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"}
|
|
@@ -12,6 +12,10 @@ export interface NeonAlertMessage {
|
|
|
12
12
|
* Optional body message. NOTE: Either title or message needs to be provided.
|
|
13
13
|
*/
|
|
14
14
|
message?: string;
|
|
15
|
+
/**
|
|
16
|
+
* Optional display icon. Display the icon corresponding to the message severity. Defaults to false.
|
|
17
|
+
*/
|
|
18
|
+
showIcon?: boolean;
|
|
15
19
|
/**
|
|
16
20
|
* Placement of the message. Default is top-right.
|
|
17
21
|
*/
|
|
@@ -29,6 +29,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
29
29
|
level: NeonAlertLevel;
|
|
30
30
|
title?: string | undefined;
|
|
31
31
|
message?: string | undefined;
|
|
32
|
+
showIcon?: boolean | undefined;
|
|
32
33
|
placement?: NeonAlertPlacement | undefined;
|
|
33
34
|
duration?: number | undefined;
|
|
34
35
|
dismissible?: boolean | undefined;
|
|
@@ -45,6 +46,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
45
46
|
level: NeonAlertLevel;
|
|
46
47
|
title?: string | undefined;
|
|
47
48
|
message?: string | undefined;
|
|
49
|
+
showIcon?: boolean | undefined;
|
|
48
50
|
placement?: NeonAlertPlacement | undefined;
|
|
49
51
|
duration?: number | undefined;
|
|
50
52
|
dismissible?: boolean | undefined;
|
|
@@ -62,6 +64,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
62
64
|
level: NeonAlertLevel;
|
|
63
65
|
title?: string | undefined;
|
|
64
66
|
message?: string | undefined;
|
|
67
|
+
showIcon?: boolean | undefined;
|
|
65
68
|
placement?: NeonAlertPlacement | undefined;
|
|
66
69
|
duration?: number | undefined;
|
|
67
70
|
dismissible?: boolean | undefined;
|
|
@@ -78,6 +81,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
78
81
|
level: NeonAlertLevel;
|
|
79
82
|
title?: string | undefined;
|
|
80
83
|
message?: string | undefined;
|
|
84
|
+
showIcon?: boolean | undefined;
|
|
81
85
|
placement?: NeonAlertPlacement | undefined;
|
|
82
86
|
duration?: number | undefined;
|
|
83
87
|
dismissible?: boolean | undefined;
|
|
@@ -95,6 +99,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
95
99
|
level: NeonAlertLevel;
|
|
96
100
|
title?: string | undefined;
|
|
97
101
|
message?: string | undefined;
|
|
102
|
+
showIcon?: boolean | undefined;
|
|
98
103
|
placement?: NeonAlertPlacement | undefined;
|
|
99
104
|
duration?: number | undefined;
|
|
100
105
|
dismissible?: boolean | undefined;
|
|
@@ -111,6 +116,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
111
116
|
level: NeonAlertLevel;
|
|
112
117
|
title?: string | undefined;
|
|
113
118
|
message?: string | undefined;
|
|
119
|
+
showIcon?: boolean | undefined;
|
|
114
120
|
placement?: NeonAlertPlacement | undefined;
|
|
115
121
|
duration?: number | undefined;
|
|
116
122
|
dismissible?: boolean | undefined;
|
|
@@ -128,6 +134,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
128
134
|
level: NeonAlertLevel;
|
|
129
135
|
title?: string | undefined;
|
|
130
136
|
message?: string | undefined;
|
|
137
|
+
showIcon?: boolean | undefined;
|
|
131
138
|
placement?: NeonAlertPlacement | undefined;
|
|
132
139
|
duration?: number | undefined;
|
|
133
140
|
dismissible?: boolean | undefined;
|
|
@@ -144,6 +151,7 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
144
151
|
level: NeonAlertLevel;
|
|
145
152
|
title?: string | undefined;
|
|
146
153
|
message?: string | undefined;
|
|
154
|
+
showIcon?: boolean | undefined;
|
|
147
155
|
placement?: NeonAlertPlacement | undefined;
|
|
148
156
|
duration?: number | undefined;
|
|
149
157
|
dismissible?: boolean | undefined;
|
|
@@ -441,8 +441,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
441
441
|
};
|
|
442
442
|
externalIndicator: {
|
|
443
443
|
type: BooleanConstructor;
|
|
444
|
-
default: boolean;
|
|
445
|
-
|
|
444
|
+
default: boolean; /**
|
|
445
|
+
* The label of the button for the confirm (positive) action.
|
|
446
|
+
*/
|
|
447
|
+
}; /**
|
|
448
|
+
* The label of the button for the confirm (positive) action.
|
|
449
|
+
*/
|
|
446
450
|
}>, {
|
|
447
451
|
neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
|
|
448
452
|
routerUrl: import("vue").ComputedRef<string | undefined>;
|
|
@@ -468,8 +472,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
468
472
|
};
|
|
469
473
|
externalIndicator: {
|
|
470
474
|
type: BooleanConstructor;
|
|
471
|
-
default: boolean;
|
|
472
|
-
|
|
475
|
+
default: boolean; /**
|
|
476
|
+
* The label of the button for the confirm (positive) action.
|
|
477
|
+
*/
|
|
478
|
+
}; /**
|
|
479
|
+
* The label of the button for the confirm (positive) action.
|
|
480
|
+
*/
|
|
473
481
|
}>> & Readonly<{
|
|
474
482
|
onClick?: ((...args: any[]) => any) | undefined;
|
|
475
483
|
}>, {
|
|
@@ -961,8 +969,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
961
969
|
};
|
|
962
970
|
externalIndicator: {
|
|
963
971
|
type: BooleanConstructor;
|
|
964
|
-
default: boolean;
|
|
965
|
-
|
|
972
|
+
default: boolean; /**
|
|
973
|
+
* The label of the button for the confirm (positive) action.
|
|
974
|
+
*/
|
|
975
|
+
}; /**
|
|
976
|
+
* The label of the button for the confirm (positive) action.
|
|
977
|
+
*/
|
|
966
978
|
}>, {
|
|
967
979
|
neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
|
|
968
980
|
routerUrl: import("vue").ComputedRef<string | undefined>;
|
|
@@ -988,8 +1000,12 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
988
1000
|
};
|
|
989
1001
|
externalIndicator: {
|
|
990
1002
|
type: BooleanConstructor;
|
|
991
|
-
default: boolean;
|
|
992
|
-
|
|
1003
|
+
default: boolean; /**
|
|
1004
|
+
* The label of the button for the confirm (positive) action.
|
|
1005
|
+
*/
|
|
1006
|
+
}; /**
|
|
1007
|
+
* The label of the button for the confirm (positive) action.
|
|
1008
|
+
*/
|
|
993
1009
|
}>> & Readonly<{
|
|
994
1010
|
onClick?: ((...args: any[]) => any) | undefined;
|
|
995
1011
|
}>, {
|
|
@@ -388,14 +388,14 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
388
388
|
default: boolean;
|
|
389
389
|
};
|
|
390
390
|
outlineStyle: {
|
|
391
|
-
type: () => import("../../../neon").NeonOutlineStyle;
|
|
391
|
+
type: () => import("../../../neon").NeonOutlineStyle; /**
|
|
392
|
+
* Whether the note has a close button
|
|
393
|
+
*/
|
|
392
394
|
default: import("../../../neon").NeonOutlineStyle;
|
|
393
395
|
};
|
|
394
396
|
externalIndicator: {
|
|
395
397
|
type: BooleanConstructor;
|
|
396
|
-
default: boolean;
|
|
397
|
-
* Note close button aria label.
|
|
398
|
-
*/
|
|
398
|
+
default: boolean;
|
|
399
399
|
};
|
|
400
400
|
}>, {
|
|
401
401
|
neonLink: import("vue").Ref<HTMLAnchorElement | null, HTMLAnchorElement | null>;
|
|
@@ -417,14 +417,14 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
417
417
|
default: boolean;
|
|
418
418
|
};
|
|
419
419
|
outlineStyle: {
|
|
420
|
-
type: () => import("../../../neon").NeonOutlineStyle;
|
|
420
|
+
type: () => import("../../../neon").NeonOutlineStyle; /**
|
|
421
|
+
* Whether the note has a close button
|
|
422
|
+
*/
|
|
421
423
|
default: import("../../../neon").NeonOutlineStyle;
|
|
422
424
|
};
|
|
423
425
|
externalIndicator: {
|
|
424
426
|
type: BooleanConstructor;
|
|
425
|
-
default: boolean;
|
|
426
|
-
* Note close button aria label.
|
|
427
|
-
*/
|
|
427
|
+
default: boolean;
|
|
428
428
|
};
|
|
429
429
|
}>> & Readonly<{
|
|
430
430
|
onClick?: ((...args: any[]) => any) | undefined;
|
|
@@ -452,7 +452,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
452
452
|
sanitizedAttributes: import("vue").ComputedRef<{
|
|
453
453
|
[x: string]: unknown;
|
|
454
454
|
}>;
|
|
455
|
-
activeRoute: import("vue").ComputedRef<boolean | "">;
|
|
455
|
+
activeRoute: import("vue").ComputedRef<boolean | "">; /**
|
|
456
|
+
* Emitted when a cards are clickable & a card is clicked & not disabled.
|
|
457
|
+
* @type index {number}
|
|
458
|
+
*/
|
|
456
459
|
exactRoute: import("vue").ComputedRef<boolean | "">;
|
|
457
460
|
onClick: () => void;
|
|
458
461
|
onSpace: () => Promise<void>;
|
|
@@ -689,7 +692,10 @@ declare const _default: import("vue").DefineComponent<import("vue").ExtractPropT
|
|
|
689
692
|
sanitizedAttributes: import("vue").ComputedRef<{
|
|
690
693
|
[x: string]: unknown;
|
|
691
694
|
}>;
|
|
692
|
-
activeRoute: import("vue").ComputedRef<boolean | "">;
|
|
695
|
+
activeRoute: import("vue").ComputedRef<boolean | "">; /**
|
|
696
|
+
* Emitted when a cards are clickable & a card is clicked & not disabled.
|
|
697
|
+
* @type index {number}
|
|
698
|
+
*/
|
|
693
699
|
exactRoute: import("vue").ComputedRef<boolean | "">;
|
|
694
700
|
onClick: () => void;
|
|
695
701
|
onSpace: () => Promise<void>;
|