bitboss-ui 0.1.59 → 0.1.60
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/BaseButton/BaseButton.vue.d.ts +1 -1
- package/dist/components/BaseDatePickerInput/BaseDatePickerInput.vue.d.ts +6 -16
- package/dist/components/BaseDialog/BaseDialog.vue.d.ts +21 -21
- package/dist/components/BaseSelect/BaseSelect.vue.d.ts +2 -2
- package/dist/components/BbDropdown/BbDropdown.vue.d.ts +1 -1
- package/dist/components/BbOffCanvas/BbOffCanvas.vue.d.ts +3 -3
- package/dist/components/BbPopover/BbPopover.vue.d.ts +1 -1
- package/dist/components/BbSelect/BbSelect.vue.d.ts +1 -1
- package/dist/components/BbSmoothHeight/BbSmoothHeight.vue.d.ts +1 -1
- package/dist/components/BbTooltip/BbTooltip.vue.d.ts +1 -1
- package/dist/index106.js +1 -1
- package/dist/index111.js +1 -1
- package/dist/index112.js +1 -1
- package/dist/index113.js +1 -1
- package/dist/index114.js +1 -1
- package/dist/index116.js +1 -1
- package/dist/index118.js +1 -1
- package/dist/index12.js +7 -7
- package/dist/index14.js +36 -36
- package/dist/index14.js.map +1 -1
- package/dist/index16.js +8 -8
- package/dist/index16.js.map +1 -1
- package/dist/index18.js +2 -2
- package/dist/index185.js +2 -350
- package/dist/index185.js.map +1 -1
- package/dist/index186.js +2 -134
- package/dist/index186.js.map +1 -1
- package/dist/index187.js +2 -5
- package/dist/index187.js.map +1 -1
- package/dist/index188.js +348 -17
- package/dist/index188.js.map +1 -1
- package/dist/index189.js +2 -2
- package/dist/index189.js.map +1 -1
- package/dist/index191.js +6 -186
- package/dist/index191.js.map +1 -1
- package/dist/index192.js +4 -23
- package/dist/index192.js.map +1 -1
- package/dist/index193.js +1 -1
- package/dist/index194.js +3 -2
- package/dist/index194.js.map +1 -1
- package/dist/index195.js +3 -2
- package/dist/index195.js.map +1 -1
- package/dist/index196.js +8 -3
- package/dist/index196.js.map +1 -1
- package/dist/index197.js +5 -3
- package/dist/index197.js.map +1 -1
- package/dist/index198.js +19 -4
- package/dist/index198.js.map +1 -1
- package/dist/index199.js +20 -2
- package/dist/index199.js.map +1 -1
- package/dist/index20.js +1 -1
- package/dist/index200.js +29 -6
- package/dist/index200.js.map +1 -1
- package/dist/index201.js +16 -8
- package/dist/index201.js.map +1 -1
- package/dist/index202.js +13 -17
- package/dist/index202.js.map +1 -1
- package/dist/index203.js +130 -25
- package/dist/index203.js.map +1 -1
- package/dist/index204.js +2 -16
- package/dist/index204.js.map +1 -1
- package/dist/index205.js +184 -14
- package/dist/index205.js.map +1 -1
- package/dist/index206.js +23 -3
- package/dist/index206.js.map +1 -1
- package/dist/index207.js +3 -35
- package/dist/index207.js.map +1 -1
- package/dist/index208.js +35 -2
- package/dist/index208.js.map +1 -1
- package/dist/index209.js +1 -1
- package/dist/index211.js +2 -2
- package/dist/index212.js +1 -1
- package/dist/index214.js +1 -1
- package/dist/index215.js +223 -5
- package/dist/index215.js.map +1 -1
- package/dist/index216.js +258 -2
- package/dist/index216.js.map +1 -1
- package/dist/index217.js +116 -294
- package/dist/index217.js.map +1 -1
- package/dist/index218.js +106 -2
- package/dist/index218.js.map +1 -1
- package/dist/index219.js +4 -2
- package/dist/index219.js.map +1 -1
- package/dist/index22.js +2 -2
- package/dist/index220.js +5 -116
- package/dist/index220.js.map +1 -1
- package/dist/index221.js +2 -106
- package/dist/index221.js.map +1 -1
- package/dist/index222.js +294 -223
- package/dist/index222.js.map +1 -1
- package/dist/index223.js +2 -258
- package/dist/index223.js.map +1 -1
- package/dist/index224.js +2 -4
- package/dist/index224.js.map +1 -1
- package/dist/index229.js +11 -2
- package/dist/index229.js.map +1 -1
- package/dist/index230.js +434 -8
- package/dist/index230.js.map +1 -1
- package/dist/index231.js +8 -5
- package/dist/index231.js.map +1 -1
- package/dist/index232.js +88 -10
- package/dist/index232.js.map +1 -1
- package/dist/index233.js +189 -424
- package/dist/index233.js.map +1 -1
- package/dist/index234.js +2 -9
- package/dist/index234.js.map +1 -1
- package/dist/index235.js +7 -87
- package/dist/index235.js.map +1 -1
- package/dist/index236.js +6 -200
- package/dist/index236.js.map +1 -1
- package/dist/index26.js +2 -2
- package/dist/index28.js +4 -4
- package/dist/index30.js +2 -2
- package/dist/index32.js +2 -2
- package/dist/index44.js +1 -1
- package/dist/index46.js +1 -1
- package/dist/index58.js +6 -6
- package/dist/index58.js.map +1 -1
- package/dist/index6.js.map +1 -1
- package/dist/index60.js +5 -5
- package/dist/index60.js.map +1 -1
- package/dist/index62.js +2 -2
- package/dist/index69.js +1 -1
- package/dist/index72.js +1 -1
- package/dist/index76.js +2 -2
- package/dist/index78.js +1 -1
- package/dist/index8.js +2 -2
- package/dist/index96.js +2 -2
- package/dist/index98.js +3 -3
- package/dist/style.css +1 -1
- package/dist/types/CommonProps.d.ts +77 -16
- package/package.json +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { CommonProps, NonVoidElementTag } from '../../types/CommonProps';
|
|
2
2
|
import type { InertiaLinkProps } from "@inertiajs/vue3";
|
|
3
3
|
import type { RouterLinkProps } from "vue-router";
|
|
4
|
-
export type BaseButtonProps = Pick<CommonProps, "block" | "disabled" | "text"> & NonVoidElementTag & Partial<Pick<RouterLinkProps, "activeClass" | "ariaCurrentValue" | "exactActiveClass" | "replace" | "to">> & Pick<InertiaLinkProps, "data" | "headers" | "method" | "onBefore" | "onCancel" | "onCancelToken" | "onFinish" | "only" | "onProgress" | "onStart" | "onSuccess" | "preserveScroll" | "preserveState" | "queryStringArrayFormat"
|
|
4
|
+
export type BaseButtonProps = Pick<CommonProps, "block" | "disabled" | "text"> & NonVoidElementTag & Partial<Pick<RouterLinkProps, "activeClass" | "ariaCurrentValue" | "exactActiveClass" | "replace" | "to">> & Partial<Pick<InertiaLinkProps, "data" | "headers" | "method" | "onBefore" | "onCancel" | "onCancelToken" | "onFinish" | "only" | "onProgress" | "onStart" | "onSuccess" | "preserveScroll" | "preserveState" | "queryStringArrayFormat">> & Partial<{
|
|
5
5
|
/**
|
|
6
6
|
* Gets the classification and default behavior of the button
|
|
7
7
|
*/
|
|
@@ -1,14 +1,7 @@
|
|
|
1
1
|
import { default as dayjs } from "dayjs";
|
|
2
2
|
import { type BaseDatePickerProps } from "../BaseDatePicker/BaseDatePicker.vue";
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
autocomplete?: string;
|
|
6
|
-
autofocus?: boolean;
|
|
7
|
-
hasErrors?: boolean;
|
|
8
|
-
id?: string;
|
|
9
|
-
name?: string;
|
|
10
|
-
placeholder?: string;
|
|
11
|
-
};
|
|
3
|
+
import { CommonProps } from '../../types/CommonProps';
|
|
4
|
+
export type BaseDatePickerInputProps = Omit<BaseDatePickerProps, "multiple"> & Pick<CommonProps, "allowWriting" | "autocomplete" | "autofocus" | "hasErrors" | "id" | "name" | "placeholder">;
|
|
12
5
|
export type BaseDatePickerInputEvents = {
|
|
13
6
|
(e: "update:modelValue", value: BaseDatePickerInputProps["modelValue"]): void;
|
|
14
7
|
(e: "inactive"): void;
|
|
@@ -31,19 +24,16 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
31
24
|
"onUpdate:modelValue"?: ((value: string | string[] | null) => any) | undefined;
|
|
32
25
|
onInactive?: (() => any) | undefined;
|
|
33
26
|
}, {
|
|
34
|
-
width: string | number;
|
|
35
|
-
allowWriting: boolean;
|
|
36
27
|
autocomplete: string;
|
|
28
|
+
allowWriting: boolean;
|
|
29
|
+
width: string | number;
|
|
37
30
|
}, {}>, Readonly<{
|
|
38
|
-
|
|
31
|
+
"prepend-outer"?: ((props: {}) => any) | undefined;
|
|
39
32
|
prepend?: ((props: {}) => any) | undefined;
|
|
40
33
|
append?: ((props: {}) => any) | undefined;
|
|
41
|
-
|
|
34
|
+
"append-outer"?: ((props: {}) => any) | undefined;
|
|
42
35
|
} & {
|
|
43
36
|
day?: ((props: {
|
|
44
|
-
/**
|
|
45
|
-
* These events are just propagated
|
|
46
|
-
*/
|
|
47
37
|
first: boolean;
|
|
48
38
|
highlighted: boolean;
|
|
49
39
|
item: dayjs.Dayjs;
|
|
@@ -1,41 +1,39 @@
|
|
|
1
1
|
import type { Classes } from '../../types/Classes';
|
|
2
|
+
import { CommonProps, Size } from '../../types/CommonProps';
|
|
2
3
|
export type Sizes = {
|
|
3
4
|
sm: number;
|
|
4
5
|
md: number;
|
|
5
6
|
lg: number;
|
|
6
7
|
};
|
|
7
|
-
export
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
export type BaseDialogProps = Pick<CommonProps, "closeLabel" | "compact" | "disabled" | "eager" | "panelClasses" | "overlayClasses" | "persistent" | "showClose" | "title" | "transition" | "transitionDuration"> & Size<Sizes> & {
|
|
9
|
+
/**
|
|
10
|
+
* Description of the content of the modal. Extremely useful for accessibility reasons.
|
|
11
|
+
*/
|
|
10
12
|
description?: string;
|
|
11
|
-
|
|
12
|
-
|
|
13
|
+
/**
|
|
14
|
+
* Displays the modala s fulscreen with no margin to the page
|
|
15
|
+
*/
|
|
13
16
|
fullscreen?: boolean;
|
|
17
|
+
/**
|
|
18
|
+
* Defines the state open / clpsed of the modal.
|
|
19
|
+
*/
|
|
14
20
|
modelValue?: boolean | null;
|
|
15
|
-
|
|
16
|
-
overlayClasses?: Classes;
|
|
17
|
-
persistent?: boolean;
|
|
18
|
-
showClose?: boolean;
|
|
19
|
-
size?: keyof Sizes | string | number;
|
|
20
|
-
title?: string;
|
|
21
|
-
transition?: string;
|
|
22
|
-
transitionDuration?: number;
|
|
23
|
-
}
|
|
21
|
+
};
|
|
24
22
|
export type BaseDialogSlots = {
|
|
25
23
|
header?: (props: {
|
|
26
24
|
titleId: typeof titleId;
|
|
27
25
|
close: typeof onCloseClick;
|
|
28
|
-
title: BaseDialogProps[
|
|
26
|
+
title: BaseDialogProps["title"];
|
|
29
27
|
}) => any;
|
|
30
28
|
title?: (props: {
|
|
31
|
-
text: BaseDialogProps[
|
|
29
|
+
text: BaseDialogProps["title"];
|
|
32
30
|
}) => any;
|
|
33
31
|
close?: (props: {
|
|
34
|
-
text: BaseDialogProps[
|
|
32
|
+
text: BaseDialogProps["closeLabel"];
|
|
35
33
|
}) => any;
|
|
36
34
|
description?: (props: {
|
|
37
35
|
descriptionId: typeof descriptionId;
|
|
38
|
-
text: BaseDialogProps[
|
|
36
|
+
text: BaseDialogProps["description"];
|
|
39
37
|
}) => any;
|
|
40
38
|
default?: (props: {}) => any;
|
|
41
39
|
footer?: (props: {}) => any;
|
|
@@ -76,13 +74,15 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
76
74
|
onHidden?: (() => any) | undefined;
|
|
77
75
|
onShown?: (() => any) | undefined;
|
|
78
76
|
}, {
|
|
79
|
-
transition: string;
|
|
80
77
|
closeLabel: string;
|
|
81
|
-
panelClasses: Classes;
|
|
82
78
|
overlayClasses: Classes;
|
|
79
|
+
panelClasses: Classes;
|
|
83
80
|
showClose: boolean;
|
|
84
|
-
|
|
81
|
+
transition: string;
|
|
85
82
|
transitionDuration: number;
|
|
83
|
+
size: number | ({
|
|
84
|
+
size?: any;
|
|
85
|
+
} & string) | keyof Sizes;
|
|
86
86
|
}, {}>, Readonly<BaseDialogSlots>>;
|
|
87
87
|
export default _default;
|
|
88
88
|
type __VLS_NonUndefinedable<T> = T extends undefined ? never : T;
|
|
@@ -131,13 +131,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
131
131
|
"onUpdate:modelValue"?: ((value: any) => any) | undefined;
|
|
132
132
|
onInactive?: (() => any) | undefined;
|
|
133
133
|
}, {
|
|
134
|
+
allowWriting: boolean;
|
|
134
135
|
depsDebounceTime: number;
|
|
135
136
|
loadingText: string;
|
|
136
137
|
modelValueDebounceTime: number;
|
|
137
138
|
noDataText: string;
|
|
138
|
-
prefill: boolean | "focus";
|
|
139
|
-
allowWriting: boolean;
|
|
140
139
|
transitionDuration: number;
|
|
140
|
+
prefill: boolean | "focus";
|
|
141
141
|
filterBy: string | false | string[] | ((value: any, item: any) => boolean) | null;
|
|
142
142
|
queryDebounceTime: number;
|
|
143
143
|
updateOnAnimationFrame: boolean;
|
|
@@ -29,9 +29,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
29
29
|
theme: string;
|
|
30
30
|
width: number;
|
|
31
31
|
}>>>, {
|
|
32
|
+
transitionDuration: number;
|
|
32
33
|
width: number;
|
|
33
34
|
placement: "top" | "right" | "bottom" | "left" | "top-start" | "top-end" | "right-start" | "right-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end";
|
|
34
|
-
transitionDuration: number;
|
|
35
35
|
theme: string;
|
|
36
36
|
}, {}>, Readonly<{
|
|
37
37
|
activator?: ((props: {
|
|
@@ -82,13 +82,13 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
82
82
|
onHidden?: (() => any) | undefined;
|
|
83
83
|
onShown?: (() => any) | undefined;
|
|
84
84
|
}, {
|
|
85
|
-
transition: string;
|
|
86
85
|
closeLabel: string;
|
|
87
|
-
panelClasses: Classes;
|
|
88
86
|
overlayClasses: Classes;
|
|
87
|
+
panelClasses: Classes;
|
|
89
88
|
showClose: boolean;
|
|
90
|
-
|
|
89
|
+
transition: string;
|
|
91
90
|
transitionDuration: number;
|
|
91
|
+
size: string | number;
|
|
92
92
|
position: "top" | "right" | "bottom" | "left";
|
|
93
93
|
}, {}>, Readonly<BbOffCanvasSlots>>;
|
|
94
94
|
export default _default;
|
|
@@ -29,9 +29,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
29
29
|
onHidden?: (() => any) | undefined;
|
|
30
30
|
onShown?: (() => any) | undefined;
|
|
31
31
|
}, {
|
|
32
|
-
placement: "top" | "right" | "bottom" | "left" | "top-start" | "top-end" | "right-start" | "right-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end";
|
|
33
32
|
showClose: boolean;
|
|
34
33
|
transitionDuration: number;
|
|
34
|
+
placement: "top" | "right" | "bottom" | "left" | "top-start" | "top-end" | "right-start" | "right-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end";
|
|
35
35
|
theme: string;
|
|
36
36
|
}, {}>, Readonly<{
|
|
37
37
|
activator?: ((props: {
|
|
@@ -63,8 +63,8 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
63
63
|
"onUpdate:modelValue"?: ((value: any) => any) | undefined;
|
|
64
64
|
onInactive?: (() => any) | undefined;
|
|
65
65
|
}, {
|
|
66
|
-
prefill: boolean | "focus";
|
|
67
66
|
allowWriting: boolean;
|
|
67
|
+
prefill: boolean | "focus";
|
|
68
68
|
}, {}>, Readonly<{
|
|
69
69
|
"prepend-outer"?: ((props: {}) => any) | undefined;
|
|
70
70
|
prepend?: ((props: {}) => any) | undefined;
|
|
@@ -24,9 +24,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
24
24
|
};
|
|
25
25
|
tag: string;
|
|
26
26
|
}>>>, {
|
|
27
|
+
transitionDuration: number;
|
|
27
28
|
tag: "" | "object" | "a" | "abbr" | "address" | "article" | "aside" | "audio" | "b" | "bdi" | "bdo" | "blockquote" | "body" | "button" | "canvas" | "caption" | "cite" | "code" | "colgroup" | "data" | "datalist" | "dd" | "del" | "details" | "dfn" | "dialog" | "div" | "dl" | "dt" | "em" | "fieldset" | "figcaption" | "figure" | "footer" | "form" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "html" | "i" | "iframe" | "ins" | "kbd" | "label" | "legend" | "li" | "main" | "map" | "mark" | "menu" | "meter" | "nav" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "s" | "samp" | "script" | "search" | "section" | "select" | "slot" | "small" | "span" | "strong" | "style" | "sub" | "summary" | "sup" | "table" | "tbody" | "td" | "template" | "textarea" | "tfoot" | "th" | "thead" | "time" | "title" | "tr" | "u" | "ul" | "var" | "video";
|
|
28
29
|
strategy: "resize" | "mutation";
|
|
29
|
-
transitionDuration: number;
|
|
30
30
|
mutationOptions: MutationObserverInit;
|
|
31
31
|
}, {}>, Readonly<BbSmoothHeightSlots>>;
|
|
32
32
|
export default _default;
|
|
@@ -42,9 +42,9 @@ declare const _default: __VLS_WithTemplateSlots<import("vue").DefineComponent<__
|
|
|
42
42
|
theme: string;
|
|
43
43
|
transitionDuration: number;
|
|
44
44
|
}>>>, {
|
|
45
|
-
placement: "top" | "right" | "bottom" | "left" | "top-start" | "top-end" | "right-start" | "right-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end";
|
|
46
45
|
showClose: boolean;
|
|
47
46
|
transitionDuration: number;
|
|
47
|
+
placement: "top" | "right" | "bottom" | "left" | "top-start" | "top-end" | "right-start" | "right-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end";
|
|
48
48
|
theme: string;
|
|
49
49
|
padding: number;
|
|
50
50
|
}, {}>, Readonly<BbTooltipSlots>>;
|
package/dist/index106.js
CHANGED
|
@@ -4,7 +4,7 @@ import { useId as j } from "./index118.js";
|
|
|
4
4
|
import { wait as C } from "./index117.js";
|
|
5
5
|
import q from "./index6.js";
|
|
6
6
|
import "./index7.js";
|
|
7
|
-
import { autoUpdate as A } from "./
|
|
7
|
+
import { autoUpdate as A } from "./index188.js";
|
|
8
8
|
import { flip as G, shift as J } from "./index193.js";
|
|
9
9
|
const K = /* @__PURE__ */ l("span", { class: "bb-tooltip__arrow" }, null, -1), Q = { class: "bb-tooltip__bubble" }, W = /* @__PURE__ */ l("svg", {
|
|
10
10
|
viewBox: "0 0 24 24",
|
package/dist/index111.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { defineComponent as i, ref as a, watch as s, computed as u, openBlock as c, createElementBlock as p, normalizeProps as d, guardReactiveProps as m, createElementVNode as b, renderSlot as v, createCommentVNode as f } from "vue";
|
|
2
2
|
import { wait as V } from "./index117.js";
|
|
3
|
-
import { throttle as _ } from "./
|
|
3
|
+
import { throttle as _ } from "./index207.js";
|
|
4
4
|
const h = { class: "bb-collapsible__content" }, k = /* @__PURE__ */ i({
|
|
5
5
|
__name: "BbCollapsible",
|
|
6
6
|
props: {
|
package/dist/index112.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent as d, getCurrentInstance as m, inject as x, computed as l, ref as y, watchEffect as _, openBlock as h, createElementBlock as w, mergeProps as b } from "vue";
|
|
2
|
-
import { isCssColor as z } from "./
|
|
2
|
+
import { isCssColor as z } from "./index187.js";
|
|
3
3
|
const g = ["innerHTML"], $ = /* @__PURE__ */ d({
|
|
4
4
|
__name: "BbIcon",
|
|
5
5
|
props: {
|
package/dist/index113.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent as v, ref as r, onMounted as p, onBeforeUnmount as h, openBlock as i, createBlock as l, resolveDynamicComponent as u, normalizeStyle as m, withCtx as f, renderSlot as d } from "vue";
|
|
2
|
-
import { throttle as g } from "./
|
|
2
|
+
import { throttle as g } from "./index207.js";
|
|
3
3
|
const O = /* @__PURE__ */ v({
|
|
4
4
|
__name: "BbSmoothHeight",
|
|
5
5
|
props: {
|
package/dist/index114.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { defineComponent as m, computed as r, openBlock as a, createElementBlock as d, normalizeProps as u, guardReactiveProps as z, createElementVNode as c } from "vue";
|
|
2
|
-
import { isCssColor as f } from "./
|
|
2
|
+
import { isCssColor as f } from "./index187.js";
|
|
3
3
|
const _ = /* @__PURE__ */ c("svg", {
|
|
4
4
|
xmlns: "http://www.w3.org/2000/svg",
|
|
5
5
|
viewBox: "0 0 512 512"
|
package/dist/index116.js
CHANGED
package/dist/index118.js
CHANGED
package/dist/index12.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { defineComponent as de, ref as k, computed as h, watch as ue, openBlock as d, createElementBlock as u, mergeProps as ce, createElementVNode as i, createTextVNode as be, toDisplayString as f, unref as p, withDirectives as L, createVNode as g, Transition as V, withCtx as w, vShow as z, createCommentVNode as A, normalizeClass as x, Fragment as O, renderList as S, renderSlot as R, nextTick as me } from "vue";
|
|
2
|
-
import { groupBy as W } from "./
|
|
2
|
+
import { groupBy as W } from "./index196.js";
|
|
3
3
|
import { isNil as fe } from "./index115.js";
|
|
4
4
|
import { last as $ } from "./index190.js";
|
|
5
|
-
import c from "./
|
|
6
|
-
import pe from "./
|
|
7
|
-
import he from "./
|
|
8
|
-
import ye from "./
|
|
9
|
-
import _e from "./
|
|
10
|
-
import ve from "./
|
|
5
|
+
import c from "./index197.js";
|
|
6
|
+
import pe from "./index198.js";
|
|
7
|
+
import he from "./index199.js";
|
|
8
|
+
import ye from "./index200.js";
|
|
9
|
+
import _e from "./index201.js";
|
|
10
|
+
import ve from "./index202.js";
|
|
11
11
|
const ke = { class: "bb-base-date-picker__header" }, ge = ["disabled"], Ve = /* @__PURE__ */ i("span", null, null, -1), we = {
|
|
12
12
|
class: "bb-base-date-picker__selected-day-label",
|
|
13
13
|
"aria-live": "polite"
|
package/dist/index14.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { defineComponent as R, ref as l, computed as Y, watch as J, onMounted as Q, onBeforeUnmount as X, openBlock as B, createElementBlock as Z, normalizeClass as C, renderSlot as u, createElementVNode as g, withDirectives as x, mergeProps as T, unref as d, toDisplayString as ee, createBlock as ae, Teleport as te, createVNode as
|
|
2
|
-
import { autoUpdate as ue, computePosition as de } from "./
|
|
3
|
-
import ce from "./
|
|
4
|
-
import c from "./
|
|
5
|
-
import fe from "./
|
|
6
|
-
import { identity as pe } from "./
|
|
1
|
+
import { defineComponent as R, ref as l, computed as Y, watch as J, onMounted as Q, onBeforeUnmount as X, openBlock as B, createElementBlock as Z, normalizeClass as C, renderSlot as u, createElementVNode as g, withDirectives as x, mergeProps as T, unref as d, toDisplayString as ee, createBlock as ae, Teleport as te, createVNode as ne, createSlots as oe, renderList as le, withCtx as ie, normalizeProps as re, guardReactiveProps as se } from "vue";
|
|
2
|
+
import { autoUpdate as ue, computePosition as de } from "./index188.js";
|
|
3
|
+
import ce from "./index203.js";
|
|
4
|
+
import c from "./index197.js";
|
|
5
|
+
import fe from "./index198.js";
|
|
6
|
+
import { identity as pe } from "./index204.js";
|
|
7
7
|
import { last as me } from "./index190.js";
|
|
8
|
-
import { vMaska as be } from "./
|
|
8
|
+
import { vMaska as be } from "./index205.js";
|
|
9
9
|
import { wait as I } from "./index117.js";
|
|
10
10
|
import ve from "./index12.js";
|
|
11
11
|
import "./index13.js";
|
|
12
|
-
import O from "./
|
|
12
|
+
import O from "./index206.js";
|
|
13
13
|
import { useId as ye } from "./index118.js";
|
|
14
14
|
import { offset as ge, flip as he, shift as ke } from "./index193.js";
|
|
15
15
|
const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name", "placeholder", "readonly", "value", "aria-describedby"], Ee = ["id"], Pe = /* @__PURE__ */ R({
|
|
@@ -26,7 +26,7 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
26
26
|
width: { default: 290 },
|
|
27
27
|
allowWriting: { type: Boolean, default: !0 },
|
|
28
28
|
autocomplete: { default: "off" },
|
|
29
|
-
autofocus: {
|
|
29
|
+
autofocus: {},
|
|
30
30
|
hasErrors: { type: Boolean },
|
|
31
31
|
id: {},
|
|
32
32
|
name: {},
|
|
@@ -35,14 +35,14 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
35
35
|
emits: ["update:modelValue", "inactive", "error"],
|
|
36
36
|
setup(P, { emit: W }) {
|
|
37
37
|
c.extend(ce), c.locale(fe);
|
|
38
|
-
const
|
|
38
|
+
const o = P, r = W, t = l(null), h = l(null), s = l(null), A = l(null), f = l(null), k = l(), p = o.id || `bdpi_${ye().id.value}`, F = Y(() => ({
|
|
39
39
|
"bb-base-date-picker-input": !0,
|
|
40
|
-
"bb-base-date-picker-input--errors":
|
|
41
|
-
"bb-base-date-picker-input--readonly":
|
|
42
|
-
"bb-base-date-picker-input--disabled":
|
|
40
|
+
"bb-base-date-picker-input--errors": o.hasErrors,
|
|
41
|
+
"bb-base-date-picker-input--readonly": o.readonly,
|
|
42
|
+
"bb-base-date-picker-input--disabled": o.disabled
|
|
43
43
|
})), G = {
|
|
44
44
|
onInput: (e) => {
|
|
45
|
-
if (console.log(e), !
|
|
45
|
+
if (console.log(e), !o.range && e.target instanceof HTMLInputElement)
|
|
46
46
|
if (f.value = e.target.value, /\d{2}\/\d{2}\/\d{4}/.test(e.target.value)) {
|
|
47
47
|
const a = c(e.target.value, "DD/MM/YYYY");
|
|
48
48
|
k.value.isDateDisabled(a) ? r("error", "invalid_date_typed") : r("update:modelValue", a.toISOString());
|
|
@@ -52,14 +52,14 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
52
52
|
}, w = l(!1), L = (e) => {
|
|
53
53
|
if (e)
|
|
54
54
|
if (Array.isArray(e)) {
|
|
55
|
-
let a,
|
|
56
|
-
return e.length && (a = e[0]), e.length > 1 && (
|
|
55
|
+
let a, n;
|
|
56
|
+
return e.length && (a = e[0]), e.length > 1 && (n = me(e)), [a, n].filter(pe).map((i) => c(i).format("DD/MM/YYYY")).join(" - ");
|
|
57
57
|
} else
|
|
58
58
|
return c(e).format("DD/MM/YYYY");
|
|
59
59
|
return null;
|
|
60
|
-
}, H = Y(() => f.value ? f.value : L(
|
|
60
|
+
}, H = Y(() => f.value ? f.value : L(o.modelValue));
|
|
61
61
|
J(
|
|
62
|
-
() =>
|
|
62
|
+
() => o.modelValue,
|
|
63
63
|
(e) => {
|
|
64
64
|
f.value = L(e);
|
|
65
65
|
}
|
|
@@ -70,10 +70,10 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
70
70
|
middleware: [ge(6), he(), ke()]
|
|
71
71
|
}).then((e) => {
|
|
72
72
|
var a;
|
|
73
|
-
t.value && (t.value.style.left = `${e.x}px`, t.value.style.top = `${e.y}px`, typeof
|
|
73
|
+
t.value && (t.value.style.left = `${e.x}px`, t.value.style.top = `${e.y}px`, typeof o.width == "string" && (Number(o.width) ? t.value.style.width = `${Math.max(
|
|
74
74
|
((a = s.value) == null ? void 0 : a.offsetWidth) ?? 0,
|
|
75
|
-
+
|
|
76
|
-
)}px` : t.value.style.width =
|
|
75
|
+
+o.width
|
|
76
|
+
)}px` : t.value.style.width = o.width));
|
|
77
77
|
});
|
|
78
78
|
};
|
|
79
79
|
let V;
|
|
@@ -93,23 +93,23 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
93
93
|
m.value = !1, M.value = !0, await I(500), M.value = !1, m.value = !1, b.value = !0, (e = k.value) == null || e.setSelectionModeToDay();
|
|
94
94
|
}, j = (e) => {
|
|
95
95
|
if (e.key === "Tab" && !e.shiftKey && (e.preventDefault(), t.value)) {
|
|
96
|
-
const
|
|
96
|
+
const n = t.value.querySelectorAll(
|
|
97
97
|
O.join()
|
|
98
98
|
)[0];
|
|
99
|
-
|
|
99
|
+
n instanceof HTMLElement && n.focus();
|
|
100
100
|
}
|
|
101
101
|
}, q = (e) => {
|
|
102
102
|
var a;
|
|
103
103
|
if (e.key === "Tab" && t.value) {
|
|
104
|
-
const
|
|
105
|
-
|
|
104
|
+
const n = O.join(", "), i = t.value.querySelectorAll(
|
|
105
|
+
n
|
|
106
106
|
);
|
|
107
107
|
if (e.target === i[i.length - 1]) {
|
|
108
108
|
e.preventDefault();
|
|
109
109
|
const v = Array.from(
|
|
110
|
-
document.body.querySelectorAll(
|
|
110
|
+
document.body.querySelectorAll(n)
|
|
111
111
|
), S = v.findIndex(
|
|
112
|
-
(y) => y.id ===
|
|
112
|
+
(y) => y.id === o.id
|
|
113
113
|
);
|
|
114
114
|
if (S > -1) {
|
|
115
115
|
const y = v[S + 1];
|
|
@@ -121,11 +121,11 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
121
121
|
}, N = () => {
|
|
122
122
|
U(), document.addEventListener("focusin", D), document.addEventListener("click", _);
|
|
123
123
|
}, D = (e) => {
|
|
124
|
-
var a,
|
|
125
|
-
e.target instanceof HTMLElement && ((a = h.value) != null && a.contains(e.target) || (
|
|
124
|
+
var a, n;
|
|
125
|
+
e.target instanceof HTMLElement && ((a = h.value) != null && a.contains(e.target) || (n = t.value) != null && n.contains(e.target) || ($(), w.value = !1, document.removeEventListener("click", _), document.removeEventListener("focusin", D), r("inactive")));
|
|
126
126
|
}, _ = (e) => {
|
|
127
|
-
var a,
|
|
128
|
-
e.target instanceof HTMLElement && ((a = h.value) != null && a.contains(e.target) || (
|
|
127
|
+
var a, n;
|
|
128
|
+
e.target instanceof HTMLElement && ((a = h.value) != null && a.contains(e.target) || (n = t.value) != null && n.contains(e.target) || ($(), w.value = !1, document.removeEventListener("click", _), document.removeEventListener("focusin", D), r("inactive")));
|
|
129
129
|
}, z = {
|
|
130
130
|
"onUpdate:modelValue": (e) => r("update:modelValue", e)
|
|
131
131
|
};
|
|
@@ -144,7 +144,7 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
144
144
|
x(g("input", T({
|
|
145
145
|
autocomplete: e.autocomplete,
|
|
146
146
|
autofocus: e.autofocus,
|
|
147
|
-
"data-maska":
|
|
147
|
+
"data-maska": o.range ? "##/##/#### - ##/##/####" : "##/##/####",
|
|
148
148
|
disabled: e.disabled,
|
|
149
149
|
id: d(p),
|
|
150
150
|
name: e.name,
|
|
@@ -164,7 +164,7 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
164
164
|
g("span", {
|
|
165
165
|
class: "bb-base-date-picker-input__accessible-description",
|
|
166
166
|
id: `bdpi_description_${d(p)}`
|
|
167
|
-
}, "Formato della data " + ee(
|
|
167
|
+
}, "Formato della data " + ee(o.range ? "GG/MM/AAAA - GG/MM/AAAA" : "GG/MM/AAAA"), 9, Ee)
|
|
168
168
|
], 512),
|
|
169
169
|
u(e.$slots, "append-outer"),
|
|
170
170
|
(B(), ae(te, { to: "body" }, [
|
|
@@ -180,7 +180,7 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
180
180
|
ref: t,
|
|
181
181
|
onKeydown: q
|
|
182
182
|
}, [
|
|
183
|
-
|
|
183
|
+
ne(ve, T({
|
|
184
184
|
disabled: e.disabled,
|
|
185
185
|
firstDayOfWeek: e.firstDayOfWeek,
|
|
186
186
|
id: d(p),
|
|
@@ -194,8 +194,8 @@ const we = ["autocomplete", "autofocus", "data-maska", "disabled", "id", "name",
|
|
|
194
194
|
}, z, {
|
|
195
195
|
ref_key: "basedatepicker",
|
|
196
196
|
ref: k
|
|
197
|
-
}),
|
|
198
|
-
le(e.$slots, (
|
|
197
|
+
}), oe({ _: 2 }, [
|
|
198
|
+
le(e.$slots, (n, i) => ({
|
|
199
199
|
name: i,
|
|
200
200
|
fn: ie((v) => [
|
|
201
201
|
u(e.$slots, i, re(se(v)))
|
package/dist/index14.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index14.js","sources":["../src/components/BaseDatePickerInput/BaseDatePickerInput.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, unref as _unref, mergeProps as _mergeProps, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, normalizeProps as _normalizeProps, guardReactiveProps as _guardReactiveProps, withCtx as _withCtx, renderList as _renderList, createSlots as _createSlots, createVNode as _createVNode, normalizeClass as _normalizeClass, Teleport as _Teleport, openBlock as _openBlock, createBlock as _createBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"autocomplete\", \"autofocus\", \"data-maska\", \"disabled\", \"id\", \"name\", \"placeholder\", \"readonly\", \"value\", \"aria-describedby\"]\nconst _hoisted_2 = [\"id\"]\n\nimport {\n autoUpdate,\n computePosition,\n flip,\n offset,\n shift,\n} from \"@floating-ui/dom\";\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from \"vue\";\nimport { default as customParseFormat } from \"dayjs/plugin/customParseFormat\";\nimport { default as dayjs } from \"dayjs\";\nimport { default as it } from \"dayjs/locale/it\";\nimport { identity } from \"@/utilities/functions/identity\";\nimport { last } from \"@/utilities/functions/last\";\nimport { vMaska } from \"maska\";\nimport { wait } from \"@/utilities/functions/wait\";\nimport BaseDatePicker, {\n type BaseDatePickerSlots,\n type BaseDatePickerProps,\n} from \"../BaseDatePicker/BaseDatePicker.vue\";\nimport focusableSelectors from \"focusable-selectors\";\nimport selectors from \"focusable-selectors\";\nimport { useId } from \"@/composables/useId\";\n\nexport type BaseDatePickerInputProps = Omit<BaseDatePickerProps, \"multiple\"> & {\n allowWriting?: boolean;\n autocomplete?: string;\n autofocus?: boolean;\n hasErrors?: boolean;\n id?: string;\n name?: string;\n placeholder?: string;\n};\n\nexport type BaseDatePickerInputEvents = {\n (e: \"update:modelValue\", value: BaseDatePickerInputProps[\"modelValue\"]): void;\n (e: \"inactive\"): void;\n (e: \"error\", message: string): void;\n};\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BaseDatePickerInput',\n props: {\n disabled: { type: Boolean },\n readonly: {},\n firstDayOfWeek: {},\n max: {},\n min: {},\n modelValue: {},\n range: { type: Boolean },\n selectable: {},\n width: { default: 290 },\n allowWriting: { type: Boolean, default: true },\n autocomplete: { default: \"off\" },\n autofocus: { type: Boolean },\n hasErrors: { type: Boolean },\n id: {},\n name: {},\n placeholder: {}\n },\n emits: [\"update:modelValue\", \"inactive\", \"error\"],\n setup(__props: any, { emit: __emit }) {\n\ndayjs.extend(customParseFormat);\ndayjs.locale(it);\nconst props = __props;\n\nconst emit = __emit;\n\n\n\nconst calendar = ref<HTMLElement | null>(null);\nconst outerContainer = ref<HTMLElement | null>(null);\nconst innerContainer = ref<HTMLElement | null>(null);\nconst input = ref<HTMLElement | null>(null);\nconst inputValue = ref<string | null>(null);\nconst basedatepicker = ref();\nconst id = props.id || `bdpi_${useId().id.value}`;\n\nconst classes = computed(() => ({\n \"bb-base-date-picker-input\": true,\n \"bb-base-date-picker-input--errors\": props.hasErrors,\n \"bb-base-date-picker-input--readonly\": props.readonly,\n \"bb-base-date-picker-input--disabled\": props.disabled,\n}));\n\n/**\n * These events are just propagated\n */\nconst eventListeners = {\n onInput: (event: Event) => {\n console.log(event);\n if (props.range) return;\n if (event.target instanceof HTMLInputElement) {\n inputValue.value = event.target.value;\n if (/\\d{2}\\/\\d{2}\\/\\d{4}/.test(event.target.value)) {\n const date = dayjs(event.target.value, \"DD/MM/YYYY\");\n if (!basedatepicker.value.isDateDisabled(date)) {\n emit(\"update:modelValue\", date.toISOString());\n } else {\n emit(\"error\", \"invalid_date_typed\");\n }\n } else if (event.target.value === \"\") {\n emit(\"update:modelValue\", null);\n }\n }\n },\n};\n\n/**\n * Applies a class when the user is inside this whole component.\n * We cannot use focus within as it doesn't work for elements that are teleported.\n * Also we cannot use the <input/> if we phisically move focus to the calendar so\n * we track it manually.\n */\nconst active = ref(false);\n\nconst getStringFromModelValue = (value: typeof props.modelValue) => {\n if (value) {\n if (Array.isArray(value)) {\n let head;\n let tail;\n if (value.length) head = value[0];\n if (value.length > 1) tail = last(value);\n return [head, tail]\n .filter(identity)\n .map((el) => dayjs(el).format(\"DD/MM/YYYY\"))\n .join(\" - \");\n } else {\n return dayjs(value).format(\"DD/MM/YYYY\");\n }\n }\n return null;\n};\n\nconst displayValue = computed(() => {\n if (inputValue.value) return inputValue.value;\n return getStringFromModelValue(props.modelValue);\n});\n\nwatch(\n () => props.modelValue,\n (value) => {\n inputValue.value = getStringFromModelValue(value);\n }\n);\n\n/**\n * This is used to position the calendar container.\n * When the linked item (outerContainer) updates its position\n * this is rerun by floating-UI\n */\nconst displayOptions = () => {\n if (innerContainer.value && calendar.value) {\n computePosition(innerContainer.value, calendar.value, {\n placement: \"bottom-start\",\n middleware: [offset(6), flip(), shift()],\n }).then((data) => {\n if (calendar.value) {\n calendar.value.style.left = `${data.x}px`;\n calendar.value.style.top = `${data.y}px`;\n if (typeof props.width === \"string\") {\n if (Number(props.width)) {\n calendar.value.style.width = `${Math.max(\n innerContainer.value?.offsetWidth ?? 0,\n +props.width\n )}px`;\n } else {\n calendar.value.style.width = props.width;\n }\n }\n }\n });\n }\n};\n\nlet cleanUpPositioning: () => void;\n\nonMounted(async () => {\n if (innerContainer.value && calendar.value) {\n cleanUpPositioning = autoUpdate(\n innerContainer.value,\n calendar.value,\n displayOptions\n );\n }\n});\nonBeforeUnmount(() => {\n cleanUpPositioning();\n});\n\n/**\n * We need the transitions because elements must be hidden and shown\n * to accessibility tools when they are fully closed or fully open,\n * while still being animated for sighted users.\n */\n\n// Option panel is open\nconst shown = ref(false);\n// Option panel is opening\nconst showing = ref(false);\n// option panel is closing\nconst hiding = ref(false);\n// Option panel il closed\nconst hidden = ref(true);\n\nconst open = async () => {\n hidden.value = false;\n showing.value = true;\n await wait(500);\n showing.value = false;\n\n hidden.value = false;\n shown.value = true;\n};\n\nconst close = async () => {\n shown.value = false;\n hiding.value = true;\n await wait(500);\n hiding.value = false;\n shown.value = false;\n hidden.value = true;\n basedatepicker.value?.setSelectionModeToDay();\n};\n\nconst onKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Tab\") {\n if (!event.shiftKey) {\n event.preventDefault();\n if (calendar.value) {\n const focusableElements = calendar.value.querySelectorAll(\n selectors.join()\n );\n const firstFocusableElement = focusableElements[0];\n if (firstFocusableElement instanceof HTMLElement) {\n firstFocusableElement.focus();\n }\n }\n }\n }\n};\n\nconst onCalendarKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Tab\") {\n if (calendar.value) {\n const focusableSelectorsString = focusableSelectors.join(\", \");\n const focusableElements = calendar.value.querySelectorAll(\n focusableSelectorsString\n );\n /* When the user tabs on the last tabbable elem */\n if (event.target === focusableElements[focusableElements.length - 1]) {\n event.preventDefault();\n const focusableElements = Array.from(\n document.body.querySelectorAll(focusableSelectorsString)\n );\n const indexOfInput = focusableElements.findIndex(\n (el) => el.id === props.id\n );\n if (indexOfInput > -1) {\n const nextElement = focusableElements[indexOfInput + 1];\n if (nextElement instanceof HTMLElement) {\n nextElement.focus();\n }\n }\n } else if (event.target === focusableElements[0]) {\n if (event.shiftKey) {\n event.preventDefault();\n input.value?.focus();\n }\n }\n }\n }\n};\n\nconst onFocus = () => {\n open();\n document.addEventListener(\"focusin\", onDocumentFocus);\n document.addEventListener(\"click\", onDocumentClick);\n};\n\nconst onDocumentFocus = (event: FocusEvent) => {\n if (event.target instanceof HTMLElement) {\n if (\n !(\n outerContainer.value?.contains(event.target) ||\n calendar.value?.contains(event.target)\n )\n ) {\n close();\n active.value = false;\n document.removeEventListener(\"click\", onDocumentClick);\n document.removeEventListener(\"focusin\", onDocumentFocus);\n emit(\"inactive\");\n }\n }\n};\n\nconst onDocumentClick = (event: MouseEvent) => {\n if (event.target instanceof HTMLElement) {\n if (\n !(\n outerContainer.value?.contains(event.target) ||\n calendar.value?.contains(event.target)\n )\n ) {\n close();\n active.value = false;\n document.removeEventListener(\"click\", onDocumentClick);\n document.removeEventListener(\"focusin\", onDocumentFocus);\n emit(\"inactive\");\n }\n }\n};\n\n/**\n * These events are just propagated\n */\nconst calendarEventListeners = {\n \"onUpdate:modelValue\": (value: string | string[] | null) =>\n emit(\"update:modelValue\", value),\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n class: _normalizeClass([classes.value, \"bb-base-date-picker-input__container\"]),\n ref_key: \"outerContainer\",\n ref: outerContainer\n }, [\n _renderSlot(_ctx.$slots, \"prepend-outer\"),\n _createElementVNode(\"span\", {\n class: \"bb-base-date-picker-input__inner-container\",\n ref_key: \"innerContainer\",\n ref: innerContainer\n }, [\n _renderSlot(_ctx.$slots, \"prepend\"),\n _withDirectives(_createElementVNode(\"input\", _mergeProps({\n autocomplete: _ctx.autocomplete,\n autofocus: _ctx.autofocus,\n \"data-maska\": props.range ? '##/##/#### - ##/##/####' : '##/##/####',\n disabled: _ctx.disabled,\n id: _unref(id),\n name: _ctx.name,\n placeholder: _ctx.placeholder,\n readonly: _ctx.readonly || _ctx.range || !_ctx.allowWriting,\n type: 'text',\n value: displayValue.value,\n onFocus: onFocus,\n onKeydown: onKeydown,\n \"aria-describedby\": `bdpi_description_${_unref(id)}`,\n ref_key: \"input\",\n ref: input\n }, eventListeners), null, 16, _hoisted_1), [\n [_unref(vMaska)]\n ]),\n _renderSlot(_ctx.$slots, \"append\"),\n _createElementVNode(\"span\", {\n class: \"bb-base-date-picker-input__accessible-description\",\n id: `bdpi_description_${_unref(id)}`\n }, \"Formato della data \" + _toDisplayString(props.range ? \"GG/MM/AAAA - GG/MM/AAAA\" : \"GG/MM/AAAA\"), 9, _hoisted_2)\n ], 512),\n _renderSlot(_ctx.$slots, \"append-outer\"),\n (_openBlock(), _createBlock(_Teleport, { to: \"body\" }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"bb-base-date-picker-input__calendar\", {\n 'bb-base-date-picker-input__calendar--active': active.value,\n 'bb-base-date-picker-input__calendar--shown': shown.value,\n 'bb-base-date-picker-input__calendar--showing': showing.value,\n 'bb-base-date-picker-input__calendar--hiding': hiding.value,\n 'bb-base-date-picker-input__calendar--hidden': hidden.value,\n }]),\n ref_key: \"calendar\",\n ref: calendar,\n onKeydown: onCalendarKeydown\n }, [\n _createVNode(BaseDatePicker, _mergeProps({\n disabled: _ctx.disabled,\n firstDayOfWeek: _ctx.firstDayOfWeek,\n id: _unref(id),\n max: _ctx.max,\n min: _ctx.min,\n \"model-value\": _ctx.modelValue,\n range: _ctx.range,\n readonly: _ctx.readonly,\n selectable: _ctx.selectable,\n width: _ctx.width\n }, calendarEventListeners, {\n ref_key: \"basedatepicker\",\n ref: basedatepicker\n }), _createSlots({ _: 2 }, [\n _renderList(_ctx.$slots, (_, name) => {\n return {\n name: name,\n fn: _withCtx((data) => [\n _renderSlot(_ctx.$slots, name, _normalizeProps(_guardReactiveProps(data)))\n ])\n }\n })\n ]), 1040, [\"disabled\", \"firstDayOfWeek\", \"id\", \"max\", \"min\", \"model-value\", \"range\", \"readonly\", \"selectable\", \"width\"])\n ], 34)\n ]))\n ], 2))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","__emit","dayjs","customParseFormat","it","props","emit","calendar","ref","outerContainer","innerContainer","input","inputValue","basedatepicker","id","useId","classes","computed","eventListeners","event","date","active","getStringFromModelValue","value","head","tail","last","identity","el","displayValue","watch","displayOptions","computePosition","offset","flip","shift","data","_a","cleanUpPositioning","onMounted","autoUpdate","onBeforeUnmount","shown","showing","hiding","hidden","open","wait","close","onKeydown","firstFocusableElement","selectors","onCalendarKeydown","focusableSelectorsString","focusableSelectors","focusableElements","indexOfInput","nextElement","onFocus","onDocumentFocus","onDocumentClick","_b","calendarEventListeners","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_renderSlot","_createElementVNode","_withDirectives","_mergeProps","_unref","vMaska","_toDisplayString","_createBlock","_Teleport","_createVNode","BaseDatePicker","_createSlots","_renderList","_","name","_withCtx","_normalizeProps","_guardReactiveProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index14.js","sources":["../src/components/BaseDatePickerInput/BaseDatePickerInput.vue?vue&type=script&setup=true&lang.ts"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { renderSlot as _renderSlot, unref as _unref, mergeProps as _mergeProps, createElementVNode as _createElementVNode, withDirectives as _withDirectives, toDisplayString as _toDisplayString, normalizeProps as _normalizeProps, guardReactiveProps as _guardReactiveProps, withCtx as _withCtx, renderList as _renderList, createSlots as _createSlots, createVNode as _createVNode, normalizeClass as _normalizeClass, Teleport as _Teleport, openBlock as _openBlock, createBlock as _createBlock, createElementBlock as _createElementBlock } from \"vue\"\n\nconst _hoisted_1 = [\"autocomplete\", \"autofocus\", \"data-maska\", \"disabled\", \"id\", \"name\", \"placeholder\", \"readonly\", \"value\", \"aria-describedby\"]\nconst _hoisted_2 = [\"id\"]\n\nimport {\n autoUpdate,\n computePosition,\n flip,\n offset,\n shift,\n} from \"@floating-ui/dom\";\nimport { computed, onBeforeUnmount, onMounted, ref, watch } from \"vue\";\nimport { default as customParseFormat } from \"dayjs/plugin/customParseFormat\";\nimport { default as dayjs } from \"dayjs\";\nimport { default as it } from \"dayjs/locale/it\";\nimport { identity } from \"@/utilities/functions/identity\";\nimport { last } from \"@/utilities/functions/last\";\nimport { vMaska } from \"maska\";\nimport { wait } from \"@/utilities/functions/wait\";\nimport BaseDatePicker, {\n type BaseDatePickerSlots,\n type BaseDatePickerProps,\n} from \"../BaseDatePicker/BaseDatePicker.vue\";\nimport focusableSelectors from \"focusable-selectors\";\nimport selectors from \"focusable-selectors\";\nimport { useId } from \"@/composables/useId\";\nimport { CommonProps } from \"@/types/CommonProps\";\n\nexport type BaseDatePickerInputProps = Omit<BaseDatePickerProps, \"multiple\"> &\n Pick<\n CommonProps,\n | \"allowWriting\"\n | \"autocomplete\"\n | \"autofocus\"\n | \"hasErrors\"\n | \"id\"\n | \"name\"\n | \"placeholder\"\n >;\n\nexport type BaseDatePickerInputEvents = {\n (e: \"update:modelValue\", value: BaseDatePickerInputProps[\"modelValue\"]): void;\n (e: \"inactive\"): void;\n (e: \"error\", message: string): void;\n};\n\n\nexport default /*#__PURE__*/_defineComponent({\n __name: 'BaseDatePickerInput',\n props: {\n disabled: { type: Boolean },\n readonly: {},\n firstDayOfWeek: {},\n max: {},\n min: {},\n modelValue: {},\n range: { type: Boolean },\n selectable: {},\n width: { default: 290 },\n allowWriting: { type: Boolean, default: true },\n autocomplete: { default: \"off\" },\n autofocus: {},\n hasErrors: { type: Boolean },\n id: {},\n name: {},\n placeholder: {}\n },\n emits: [\"update:modelValue\", \"inactive\", \"error\"],\n setup(__props: any, { emit: __emit }) {\n\ndayjs.extend(customParseFormat);\ndayjs.locale(it);\nconst props = __props;\n\nconst emit = __emit;\n\n\n\nconst calendar = ref<HTMLElement | null>(null);\nconst outerContainer = ref<HTMLElement | null>(null);\nconst innerContainer = ref<HTMLElement | null>(null);\nconst input = ref<HTMLElement | null>(null);\nconst inputValue = ref<string | null>(null);\nconst basedatepicker = ref();\nconst id = props.id || `bdpi_${useId().id.value}`;\n\nconst classes = computed(() => ({\n \"bb-base-date-picker-input\": true,\n \"bb-base-date-picker-input--errors\": props.hasErrors,\n \"bb-base-date-picker-input--readonly\": props.readonly,\n \"bb-base-date-picker-input--disabled\": props.disabled,\n}));\n\n/**\n * These events are just propagated\n */\nconst eventListeners = {\n onInput: (event: Event) => {\n console.log(event);\n if (props.range) return;\n if (event.target instanceof HTMLInputElement) {\n inputValue.value = event.target.value;\n if (/\\d{2}\\/\\d{2}\\/\\d{4}/.test(event.target.value)) {\n const date = dayjs(event.target.value, \"DD/MM/YYYY\");\n if (!basedatepicker.value.isDateDisabled(date)) {\n emit(\"update:modelValue\", date.toISOString());\n } else {\n emit(\"error\", \"invalid_date_typed\");\n }\n } else if (event.target.value === \"\") {\n emit(\"update:modelValue\", null);\n }\n }\n },\n};\n\n/**\n * Applies a class when the user is inside this whole component.\n * We cannot use focus within as it doesn't work for elements that are teleported.\n * Also we cannot use the <input/> if we phisically move focus to the calendar so\n * we track it manually.\n */\nconst active = ref(false);\n\nconst getStringFromModelValue = (value: typeof props.modelValue) => {\n if (value) {\n if (Array.isArray(value)) {\n let head;\n let tail;\n if (value.length) head = value[0];\n if (value.length > 1) tail = last(value);\n return [head, tail]\n .filter(identity)\n .map((el) => dayjs(el).format(\"DD/MM/YYYY\"))\n .join(\" - \");\n } else {\n return dayjs(value).format(\"DD/MM/YYYY\");\n }\n }\n return null;\n};\n\nconst displayValue = computed(() => {\n if (inputValue.value) return inputValue.value;\n return getStringFromModelValue(props.modelValue);\n});\n\nwatch(\n () => props.modelValue,\n (value) => {\n inputValue.value = getStringFromModelValue(value);\n }\n);\n\n/**\n * This is used to position the calendar container.\n * When the linked item (outerContainer) updates its position\n * this is rerun by floating-UI\n */\nconst displayOptions = () => {\n if (innerContainer.value && calendar.value) {\n computePosition(innerContainer.value, calendar.value, {\n placement: \"bottom-start\",\n middleware: [offset(6), flip(), shift()],\n }).then((data) => {\n if (calendar.value) {\n calendar.value.style.left = `${data.x}px`;\n calendar.value.style.top = `${data.y}px`;\n if (typeof props.width === \"string\") {\n if (Number(props.width)) {\n calendar.value.style.width = `${Math.max(\n innerContainer.value?.offsetWidth ?? 0,\n +props.width\n )}px`;\n } else {\n calendar.value.style.width = props.width;\n }\n }\n }\n });\n }\n};\n\nlet cleanUpPositioning: () => void;\n\nonMounted(async () => {\n if (innerContainer.value && calendar.value) {\n cleanUpPositioning = autoUpdate(\n innerContainer.value,\n calendar.value,\n displayOptions\n );\n }\n});\nonBeforeUnmount(() => {\n cleanUpPositioning();\n});\n\n/**\n * We need the transitions because elements must be hidden and shown\n * to accessibility tools when they are fully closed or fully open,\n * while still being animated for sighted users.\n */\n\n// Option panel is open\nconst shown = ref(false);\n// Option panel is opening\nconst showing = ref(false);\n// option panel is closing\nconst hiding = ref(false);\n// Option panel il closed\nconst hidden = ref(true);\n\nconst open = async () => {\n hidden.value = false;\n showing.value = true;\n await wait(500);\n showing.value = false;\n\n hidden.value = false;\n shown.value = true;\n};\n\nconst close = async () => {\n shown.value = false;\n hiding.value = true;\n await wait(500);\n hiding.value = false;\n shown.value = false;\n hidden.value = true;\n basedatepicker.value?.setSelectionModeToDay();\n};\n\nconst onKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Tab\") {\n if (!event.shiftKey) {\n event.preventDefault();\n if (calendar.value) {\n const focusableElements = calendar.value.querySelectorAll(\n selectors.join()\n );\n const firstFocusableElement = focusableElements[0];\n if (firstFocusableElement instanceof HTMLElement) {\n firstFocusableElement.focus();\n }\n }\n }\n }\n};\n\nconst onCalendarKeydown = (event: KeyboardEvent) => {\n if (event.key === \"Tab\") {\n if (calendar.value) {\n const focusableSelectorsString = focusableSelectors.join(\", \");\n const focusableElements = calendar.value.querySelectorAll(\n focusableSelectorsString\n );\n /* When the user tabs on the last tabbable elem */\n if (event.target === focusableElements[focusableElements.length - 1]) {\n event.preventDefault();\n const focusableElements = Array.from(\n document.body.querySelectorAll(focusableSelectorsString)\n );\n const indexOfInput = focusableElements.findIndex(\n (el) => el.id === props.id\n );\n if (indexOfInput > -1) {\n const nextElement = focusableElements[indexOfInput + 1];\n if (nextElement instanceof HTMLElement) {\n nextElement.focus();\n }\n }\n } else if (event.target === focusableElements[0]) {\n if (event.shiftKey) {\n event.preventDefault();\n input.value?.focus();\n }\n }\n }\n }\n};\n\nconst onFocus = () => {\n open();\n document.addEventListener(\"focusin\", onDocumentFocus);\n document.addEventListener(\"click\", onDocumentClick);\n};\n\nconst onDocumentFocus = (event: FocusEvent) => {\n if (event.target instanceof HTMLElement) {\n if (\n !(\n outerContainer.value?.contains(event.target) ||\n calendar.value?.contains(event.target)\n )\n ) {\n close();\n active.value = false;\n document.removeEventListener(\"click\", onDocumentClick);\n document.removeEventListener(\"focusin\", onDocumentFocus);\n emit(\"inactive\");\n }\n }\n};\n\nconst onDocumentClick = (event: MouseEvent) => {\n if (event.target instanceof HTMLElement) {\n if (\n !(\n outerContainer.value?.contains(event.target) ||\n calendar.value?.contains(event.target)\n )\n ) {\n close();\n active.value = false;\n document.removeEventListener(\"click\", onDocumentClick);\n document.removeEventListener(\"focusin\", onDocumentFocus);\n emit(\"inactive\");\n }\n }\n};\n\n/**\n * These events are just propagated\n */\nconst calendarEventListeners = {\n \"onUpdate:modelValue\": (value: string | string[] | null) =>\n emit(\"update:modelValue\", value),\n};\n\nreturn (_ctx: any,_cache: any) => {\n return (_openBlock(), _createElementBlock(\"span\", {\n class: _normalizeClass([classes.value, \"bb-base-date-picker-input__container\"]),\n ref_key: \"outerContainer\",\n ref: outerContainer\n }, [\n _renderSlot(_ctx.$slots, \"prepend-outer\"),\n _createElementVNode(\"span\", {\n class: \"bb-base-date-picker-input__inner-container\",\n ref_key: \"innerContainer\",\n ref: innerContainer\n }, [\n _renderSlot(_ctx.$slots, \"prepend\"),\n _withDirectives(_createElementVNode(\"input\", _mergeProps({\n autocomplete: _ctx.autocomplete,\n autofocus: _ctx.autofocus,\n \"data-maska\": props.range ? '##/##/#### - ##/##/####' : '##/##/####',\n disabled: _ctx.disabled,\n id: _unref(id),\n name: _ctx.name,\n placeholder: _ctx.placeholder,\n readonly: _ctx.readonly || _ctx.range || !_ctx.allowWriting,\n type: 'text',\n value: displayValue.value,\n onFocus: onFocus,\n onKeydown: onKeydown,\n \"aria-describedby\": `bdpi_description_${_unref(id)}`,\n ref_key: \"input\",\n ref: input\n }, eventListeners), null, 16, _hoisted_1), [\n [_unref(vMaska)]\n ]),\n _renderSlot(_ctx.$slots, \"append\"),\n _createElementVNode(\"span\", {\n class: \"bb-base-date-picker-input__accessible-description\",\n id: `bdpi_description_${_unref(id)}`\n }, \"Formato della data \" + _toDisplayString(props.range ? \"GG/MM/AAAA - GG/MM/AAAA\" : \"GG/MM/AAAA\"), 9, _hoisted_2)\n ], 512),\n _renderSlot(_ctx.$slots, \"append-outer\"),\n (_openBlock(), _createBlock(_Teleport, { to: \"body\" }, [\n _createElementVNode(\"span\", {\n class: _normalizeClass([\"bb-base-date-picker-input__calendar\", {\n 'bb-base-date-picker-input__calendar--active': active.value,\n 'bb-base-date-picker-input__calendar--shown': shown.value,\n 'bb-base-date-picker-input__calendar--showing': showing.value,\n 'bb-base-date-picker-input__calendar--hiding': hiding.value,\n 'bb-base-date-picker-input__calendar--hidden': hidden.value,\n }]),\n ref_key: \"calendar\",\n ref: calendar,\n onKeydown: onCalendarKeydown\n }, [\n _createVNode(BaseDatePicker, _mergeProps({\n disabled: _ctx.disabled,\n firstDayOfWeek: _ctx.firstDayOfWeek,\n id: _unref(id),\n max: _ctx.max,\n min: _ctx.min,\n \"model-value\": _ctx.modelValue,\n range: _ctx.range,\n readonly: _ctx.readonly,\n selectable: _ctx.selectable,\n width: _ctx.width\n }, calendarEventListeners, {\n ref_key: \"basedatepicker\",\n ref: basedatepicker\n }), _createSlots({ _: 2 }, [\n _renderList(_ctx.$slots, (_, name) => {\n return {\n name: name,\n fn: _withCtx((data) => [\n _renderSlot(_ctx.$slots, name, _normalizeProps(_guardReactiveProps(data)))\n ])\n }\n })\n ]), 1040, [\"disabled\", \"firstDayOfWeek\", \"id\", \"max\", \"min\", \"model-value\", \"range\", \"readonly\", \"selectable\", \"width\"])\n ], 34)\n ]))\n ], 2))\n}\n}\n\n})"],"names":["_hoisted_1","_hoisted_2","_sfc_main","_defineComponent","__props","__emit","dayjs","customParseFormat","it","props","emit","calendar","ref","outerContainer","innerContainer","input","inputValue","basedatepicker","id","useId","classes","computed","eventListeners","event","date","active","getStringFromModelValue","value","head","tail","last","identity","el","displayValue","watch","displayOptions","computePosition","offset","flip","shift","data","_a","cleanUpPositioning","onMounted","autoUpdate","onBeforeUnmount","shown","showing","hiding","hidden","open","wait","close","onKeydown","firstFocusableElement","selectors","onCalendarKeydown","focusableSelectorsString","focusableSelectors","focusableElements","indexOfInput","nextElement","onFocus","onDocumentFocus","onDocumentClick","_b","calendarEventListeners","_ctx","_cache","_openBlock","_createElementBlock","_normalizeClass","_renderSlot","_createElementVNode","_withDirectives","_mergeProps","_unref","vMaska","_toDisplayString","_createBlock","_Teleport","_createVNode","BaseDatePicker","_createSlots","_renderList","_","name","_withCtx","_normalizeProps","_guardReactiveProps"],"mappings":"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"}
|