@privyid/persona 0.19.0 → 0.21.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/accordion/Accordion.vue +118 -0
- package/dist/components/accordion/AccordionItem.vue +184 -0
- package/dist/components/accordion/index.d.ts +14 -0
- package/dist/components/accordion/index.mjs +10 -0
- package/dist/components/avatar/Avatar.vue.d.ts +2 -2
- package/dist/components/badge/Badge.vue.d.ts +1 -1
- package/dist/components/breadcrumbs/BreadcrumbItem.vue +3 -2
- package/dist/components/button/Button.vue +102 -65
- package/dist/components/calendar/Calendar.vue.d.ts +2 -2
- package/dist/components/calendar/adapter/adapter.mjs +1 -1
- package/dist/components/camera/Camera.vue.d.ts +4 -4
- package/dist/components/caption/Caption.vue +30 -2
- package/dist/components/card/Card.vue +9 -1
- package/dist/components/card/Card.vue.d.ts +1 -1
- package/dist/components/card/CardSection.vue.d.ts +1 -1
- package/dist/components/checkbox/Checkbox.vue.d.ts +6 -6
- package/dist/components/contextual-bar/ContextualBar.vue.d.ts +1 -1
- package/dist/components/cropper/Cropper.vue.d.ts +2 -2
- package/dist/components/datepicker/Datepicker.vue.d.ts +2 -2
- package/dist/components/dialog/index.d.ts +1 -1
- package/dist/components/dot/Dot.vue.d.ts +1 -1
- package/dist/components/dropdown/Dropdown.vue +5 -0
- package/dist/components/dropdown/Dropdown.vue.d.ts +6 -6
- package/dist/components/dropdown/DropdownItem.vue +1 -1
- package/dist/components/dropdown/index.d.ts +1 -1
- package/dist/components/dropdown-subitem/DropdownSubitem.vue.d.ts +1 -1
- package/dist/components/dropzone/Dropzone.vue.d.ts +2 -2
- package/dist/components/filterbar/pinned/PinnedDate.vue.d.ts +2 -2
- package/dist/components/filterbar/pinned/PinnedSelect.vue.d.ts +2 -2
- package/dist/components/filterbar/pinned/PinnedToggle.vue.d.ts +6 -6
- package/dist/components/form-group/FormGroup.vue +92 -65
- package/dist/components/global/store.d.ts +27 -0
- package/dist/components/global/store.mjs +31 -0
- package/dist/components/global/utils/queue.mjs +2 -0
- package/dist/components/heading/Heading.vue +26 -2
- package/dist/components/heading/index.d.ts +1 -1
- package/dist/components/input/Input.vue.d.ts +2 -2
- package/dist/components/input/utils/accept.d.ts +19 -19
- package/dist/components/input-file/InputFile.vue.d.ts +2 -2
- package/dist/components/input-password/InputPassword.vue.d.ts +1 -3
- package/dist/components/input-pin/InputPin.vue.d.ts +1 -1
- package/dist/components/input-range/InputRange.vue.d.ts +1 -1
- package/dist/components/label/Label.vue.d.ts +1 -1
- package/dist/components/list-group/ListGroupItem.vue +1 -1
- package/dist/components/main/Main.vue +47 -44
- package/dist/components/modal/Modal.vue +1 -1
- package/dist/components/modal/Modal.vue.d.ts +2 -2
- package/dist/components/modal/index.d.ts +1 -0
- package/dist/components/modal/index.mjs +0 -0
- package/dist/components/nav/Nav.vue +6 -4
- package/dist/components/nav/NavItem.vue +1 -1
- package/dist/components/nav/NavItem.vue.d.ts +2 -2
- package/dist/components/nav/NavItemDropdown.vue.d.ts +2 -2
- package/dist/components/navbar/NavbarBrand.vue +1 -1
- package/dist/components/navbar-menu/NavbarNavMenu.vue +1 -1
- package/dist/components/navbar-menu/NavbarNavMenu.vue.d.ts +3 -3
- package/dist/components/pagination/index.mjs +3 -1
- package/dist/components/pdf-object/PdfObject.vue +1 -1
- package/dist/components/pdf-text/PdfText.vue +6 -2
- package/dist/components/pdf-text/PdfText.vue.d.ts +3 -2
- package/dist/components/pdf-text/utils/text-to-image.d.ts +1 -1
- package/dist/components/pdf-text/utils/text-to-image.mjs +19 -17
- package/dist/components/pdf-viewer/PdfError.vue +12 -7
- package/dist/components/pdf-viewer/PdfError.vue.d.ts +3 -11
- package/dist/components/pdf-viewer/PdfNavigation.vue +5 -13
- package/dist/components/pdf-viewer/PdfNavigation.vue.d.ts +4 -4
- package/dist/components/pdf-viewer/PdfViewer.vue +42 -5
- package/dist/components/pdf-viewer/PdfViewer.vue.d.ts +4 -1
- package/dist/components/pdf-viewer/index.d.ts +8 -0
- package/dist/components/pdf-viewer/index.mjs +6 -1
- package/dist/components/pdf-viewer/utils/pdfjs.d.ts +8 -0
- package/dist/components/pdf-viewer/utils/pdfjs.mjs +40 -0
- package/dist/components/pdf-viewer/utils/use-sticky.mjs +7 -3
- package/dist/components/pdf-viewer/utils/use-viewer.d.ts +0 -2
- package/dist/components/pdf-viewer/utils/use-viewer.mjs +12 -18
- package/dist/components/progressbar/Progressbar.vue +110 -0
- package/dist/components/progressbar/Progressbar.vue.d.ts +63 -0
- package/dist/components/progressbar/index.d.ts +7 -0
- package/dist/components/progressbar/index.mjs +11 -0
- package/dist/components/radio/Radio.vue.d.ts +4 -4
- package/dist/components/ringbar/Ringbar.vue +148 -0
- package/dist/components/ringbar/Ringbar.vue.d.ts +66 -0
- package/dist/components/select/Select.vue.d.ts +3 -3
- package/dist/components/sheet/Sheet.vue +231 -0
- package/dist/components/sidebar/SidebarBrand.vue +1 -1
- package/dist/components/sidebar/SidebarNav.vue +6 -4
- package/dist/components/signature-draw/SignatureDrawMobile.vue +6 -1
- package/dist/components/signature-draw/utils/canvas.d.ts +1 -1
- package/dist/components/signature-draw/utils/canvas.mjs +5 -3
- package/dist/components/signature-draw/utils/smooth-line.d.ts +1 -1
- package/dist/components/signature-draw/utils/smooth-line.mjs +6 -1
- package/dist/components/signature-draw/utils/straight-line.mjs +2 -0
- package/dist/components/signature-text/SignatureText.vue +10 -7
- package/dist/components/signature-text/SignatureText.vue.d.ts +1 -0
- package/dist/components/signature-text/utils/generate-text.d.ts +1 -1
- package/dist/components/signature-text/utils/generate-text.mjs +3 -8
- package/dist/components/spread/Spread.vue +1 -1
- package/dist/components/spread/Spread.vue.d.ts +2 -2
- package/dist/components/steps/utils/hook.mjs +1 -0
- package/dist/components/subheading/Subheading.vue +36 -2
- package/dist/components/table/Table.vue +53 -9
- package/dist/components/table/Table.vue.d.ts +21 -3
- package/dist/components/table/index.d.ts +23 -6
- package/dist/components/table/index.mjs +18 -1
- package/dist/components/table-flex/TableFlex.vue +334 -0
- package/dist/components/table-static/TableStatic.vue +333 -0
- package/dist/components/tabs/Tab.vue.d.ts +1 -1
- package/dist/components/text/Text.vue +46 -13
- package/dist/components/text/Text.vue.d.ts +2 -2
- package/dist/components/toggle/Toggle.vue.d.ts +7 -7
- package/dist/components/tour/Tour.vue.d.ts +2 -4
- package/dist/components/tour/core/base.mjs +11 -0
- package/dist/components/tour/core/step/conditional.mjs +1 -0
- package/dist/components/tour/core/step/visit.mjs +1 -4
- package/dist/components/tour/core/step.mjs +1 -4
- package/dist/components/tour/core/tour.mjs +4 -0
- package/dist/components/utils/base64.mjs +3 -3
- package/dist/core/index.d.ts +5 -1
- package/dist/core/index.mjs +20 -3
- package/dist/module.d.mts +17 -0
- package/dist/module.d.ts +1 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +0 -1
- package/dist/runtime/plugin.mjs +10 -3
- package/dist/types.d.mts +15 -0
- package/package.json +21 -21
- package/dist/components/button/Button.vue.d.ts +0 -74
- package/dist/components/form-group/FormGroup.vue.d.ts +0 -61
- package/dist/components/global/context.d.ts +0 -24
- package/dist/components/global/context.mjs +0 -18
|
@@ -1,24 +1,24 @@
|
|
|
1
1
|
import { LiteralUnion } from 'type-fest';
|
|
2
2
|
export declare const AcceptPresets: {
|
|
3
|
-
readonly num:
|
|
4
|
-
readonly numeric:
|
|
5
|
-
readonly digit:
|
|
6
|
-
readonly alpha:
|
|
7
|
-
readonly 'alpha-num':
|
|
8
|
-
readonly 'alpha-num-space':
|
|
9
|
-
readonly 'alpha-num-space-symbol':
|
|
10
|
-
readonly 'alpha-numeric':
|
|
11
|
-
readonly 'alpha-numeric-space':
|
|
12
|
-
readonly 'alpha-numeric-space-symbol':
|
|
13
|
-
readonly 'alpha-space':
|
|
14
|
-
readonly 'alpha-space-symbol':
|
|
15
|
-
readonly 'num-space':
|
|
16
|
-
readonly 'num-space-symbol':
|
|
17
|
-
readonly 'numeric-space':
|
|
18
|
-
readonly 'numeric-space-symbol':
|
|
19
|
-
readonly 'non-numeric':
|
|
20
|
-
readonly 'non-alpha':
|
|
21
|
-
readonly text:
|
|
3
|
+
readonly num: "\\d";
|
|
4
|
+
readonly numeric: "\\d";
|
|
5
|
+
readonly digit: "\\d";
|
|
6
|
+
readonly alpha: "A-Za-z";
|
|
7
|
+
readonly 'alpha-num': "A-Za-z\\d";
|
|
8
|
+
readonly 'alpha-num-space': "A-Za-z\\d\\s";
|
|
9
|
+
readonly 'alpha-num-space-symbol': "A-Za-z\\d\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
10
|
+
readonly 'alpha-numeric': "A-Za-z\\d";
|
|
11
|
+
readonly 'alpha-numeric-space': "A-Za-z\\d\\s";
|
|
12
|
+
readonly 'alpha-numeric-space-symbol': "A-Za-z\\d\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
13
|
+
readonly 'alpha-space': "A-Za-z\\s";
|
|
14
|
+
readonly 'alpha-space-symbol': "A-Za-z\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
15
|
+
readonly 'num-space': "\\d\\s";
|
|
16
|
+
readonly 'num-space-symbol': "\\d\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
17
|
+
readonly 'numeric-space': "\\d\\s";
|
|
18
|
+
readonly 'numeric-space-symbol': "\\d\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
19
|
+
readonly 'non-numeric': "A-Za-z\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
20
|
+
readonly 'non-alpha': "\\d\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
21
|
+
readonly text: "A-Za-z\\d\\s!\"#$%&'()*+,./:;<=>?@[\\\\\\]^_`{|}~-";
|
|
22
22
|
};
|
|
23
23
|
export type AcceptVariant = LiteralUnion<keyof typeof AcceptPresets, string>;
|
|
24
24
|
export declare function isAccepted(accept: AcceptVariant | undefined, text: string): boolean;
|
|
@@ -113,17 +113,17 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
113
113
|
default: string;
|
|
114
114
|
};
|
|
115
115
|
}>> & {
|
|
116
|
+
onCancel?: ((...args: any[]) => any) | undefined;
|
|
116
117
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
117
118
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
118
|
-
onCancel?: ((...args: any[]) => any) | undefined;
|
|
119
119
|
onClear?: ((...args: any[]) => any) | undefined;
|
|
120
120
|
}, {
|
|
121
121
|
error: boolean;
|
|
122
122
|
size: SizeVariant;
|
|
123
123
|
modelValue: string | string[] | File | File[];
|
|
124
|
+
modelModifiers: ModelModifier;
|
|
124
125
|
disabled: boolean;
|
|
125
126
|
readonly: boolean;
|
|
126
|
-
modelModifiers: ModelModifier;
|
|
127
127
|
multiple: boolean | MultipleType;
|
|
128
128
|
placeholder: string;
|
|
129
129
|
maxlength: string | number;
|
|
@@ -3,7 +3,5 @@ type Bindings = {
|
|
|
3
3
|
isShow: Ref<boolean>;
|
|
4
4
|
toggle: () => void;
|
|
5
5
|
};
|
|
6
|
-
declare const _default: import("vue-demi").DefineComponent<any, Bindings, {}, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").VNodeProps & import("vue-demi").AllowedComponentProps & import("vue-demi").ComponentCustomProps,
|
|
7
|
-
[x: string]: any;
|
|
8
|
-
}, {}>;
|
|
6
|
+
declare const _default: import("vue-demi").DefineComponent<any, Bindings, {}, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").VNodeProps & import("vue-demi").AllowedComponentProps & import("vue-demi").ComponentCustomProps, any, any, {}>;
|
|
9
7
|
export default _default;
|
|
@@ -72,8 +72,8 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
72
72
|
onChange?: ((...args: any[]) => any) | undefined;
|
|
73
73
|
"onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
|
|
74
74
|
}, {
|
|
75
|
-
error: boolean;
|
|
76
75
|
length: string | number;
|
|
76
|
+
error: boolean;
|
|
77
77
|
size: SizeVariant;
|
|
78
78
|
modelValue: string;
|
|
79
79
|
disabled: boolean;
|
|
@@ -95,11 +95,11 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
95
95
|
"onUpdate:end"?: ((...args: any[]) => any) | undefined;
|
|
96
96
|
}, {
|
|
97
97
|
error: boolean;
|
|
98
|
+
modelValue: number | [number, number];
|
|
98
99
|
start: number;
|
|
99
100
|
end: number;
|
|
100
101
|
min: string | number;
|
|
101
102
|
max: string | number;
|
|
102
|
-
modelValue: number | [number, number];
|
|
103
103
|
disabled: boolean;
|
|
104
104
|
readonly: boolean;
|
|
105
105
|
step: string | number;
|
|
@@ -42,9 +42,9 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
42
42
|
}>> & {
|
|
43
43
|
onDismissed?: ((...args: any[]) => any) | undefined;
|
|
44
44
|
}, {
|
|
45
|
+
color: ColorVariant;
|
|
45
46
|
variant: StyleVariant;
|
|
46
47
|
size: SizeVariant;
|
|
47
|
-
color: ColorVariant;
|
|
48
48
|
dismissable: boolean;
|
|
49
49
|
}, {}>;
|
|
50
50
|
export default _default;
|
|
@@ -76,7 +76,7 @@ export default defineComponent({
|
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
a& {
|
|
79
|
-
@apply cursor-pointer text-default hover:bg-default-alpha;
|
|
79
|
+
@apply no-underline hover:no-underline cursor-pointer text-default hover:bg-default-alpha;
|
|
80
80
|
@apply dark:text-dark-default dark:hover:bg-dark-default-alpha;
|
|
81
81
|
}
|
|
82
82
|
|
|
@@ -5,56 +5,59 @@
|
|
|
5
5
|
</template>
|
|
6
6
|
|
|
7
7
|
<style lang="postcss">
|
|
8
|
-
|
|
8
|
+
.main {
|
|
9
9
|
--p-spacer: 1rem;
|
|
10
|
-
}
|
|
11
10
|
|
|
12
|
-
/**
|
|
13
|
-
* Heading
|
|
14
|
-
*/
|
|
15
|
-
h1, h2, h3, h4, h5, h6 {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
}
|
|
11
|
+
/**
|
|
12
|
+
* Heading
|
|
13
|
+
*/
|
|
14
|
+
h1, h2, h3, h4, h5, h6 {
|
|
15
|
+
--p-heading-margin-bottom: calc(var(--p-spacer) * .5);
|
|
16
|
+
@apply mb-[var(--p-heading-margin-bottom)];
|
|
17
|
+
}
|
|
19
18
|
|
|
20
|
-
/**
|
|
21
|
-
* Permalink
|
|
22
|
-
*/
|
|
23
|
-
a {
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
19
|
+
/**
|
|
20
|
+
* Permalink
|
|
21
|
+
*/
|
|
22
|
+
a {
|
|
23
|
+
&:not(.navbar__brand, .sidebar__brand, .dropdown__item, .list-group__item, .btn, .nav__link, .breadcrumbs__item__link) {
|
|
24
|
+
--p-color-link-hover: darken(theme(textColor.link), 5%);
|
|
25
|
+
--p-color-dark-link-hover: darken(theme(textColor.link), 5%);
|
|
26
|
+
@apply underline text-link hover:text-[color:var(--p-color-link-hover)];
|
|
27
|
+
@apply dark:text-dark-link hover:dark:text-[color:var(--p-color-dark-link-hover)];
|
|
28
|
+
}
|
|
29
|
+
}
|
|
29
30
|
|
|
30
|
-
/**
|
|
31
|
-
* Paragraph
|
|
32
|
-
*/
|
|
33
|
-
p {
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
}
|
|
31
|
+
/**
|
|
32
|
+
* Paragraph
|
|
33
|
+
*/
|
|
34
|
+
p {
|
|
35
|
+
--p-paragraph-margin-bottom: var(--p-spacer);
|
|
36
|
+
@apply mt-0 mb-[var(--p-paragraph-margin-bottom)] text-base text-default;
|
|
37
|
+
@apply dark:text-dark-default;
|
|
38
|
+
}
|
|
38
39
|
|
|
39
|
-
/**
|
|
40
|
-
* Small
|
|
41
|
-
*/
|
|
42
|
-
small {
|
|
43
|
-
|
|
44
|
-
}
|
|
40
|
+
/**
|
|
41
|
+
* Small
|
|
42
|
+
*/
|
|
43
|
+
small {
|
|
44
|
+
@apply text-tn;
|
|
45
|
+
}
|
|
45
46
|
|
|
46
|
-
/**
|
|
47
|
-
* Strong
|
|
48
|
-
*/
|
|
49
|
-
strong {
|
|
50
|
-
|
|
51
|
-
}
|
|
47
|
+
/**
|
|
48
|
+
* Strong
|
|
49
|
+
*/
|
|
50
|
+
strong {
|
|
51
|
+
@apply font-bold;
|
|
52
|
+
}
|
|
52
53
|
|
|
53
|
-
/**
|
|
54
|
-
* Caption
|
|
55
|
-
*/
|
|
56
|
-
caption {
|
|
57
|
-
|
|
58
|
-
|
|
54
|
+
/**
|
|
55
|
+
* Caption
|
|
56
|
+
*/
|
|
57
|
+
caption {
|
|
58
|
+
@apply text-xs text-muted;
|
|
59
|
+
@apply dark:text-dark-muted;
|
|
60
|
+
}
|
|
59
61
|
}
|
|
62
|
+
|
|
60
63
|
</style>
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { PropType } from 'vue-demi';
|
|
2
|
-
|
|
2
|
+
import { SizeVariant } from '.';
|
|
3
3
|
declare const _default: import("vue-demi").DefineComponent<{
|
|
4
4
|
title: {
|
|
5
5
|
type: StringConstructor;
|
|
@@ -95,9 +95,9 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
95
95
|
dismissable: boolean;
|
|
96
96
|
banner: boolean;
|
|
97
97
|
text: string;
|
|
98
|
-
modelValue: boolean;
|
|
99
98
|
title: string;
|
|
100
99
|
centered: boolean;
|
|
100
|
+
modelValue: boolean;
|
|
101
101
|
noCloseOnEsc: boolean;
|
|
102
102
|
noCloseOnBackdrop: boolean;
|
|
103
103
|
modalBodyScrollable: boolean;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export type SizeVariant = 'sm' | 'md' | 'lg' | 'xl';
|
|
File without changes
|
|
@@ -3,10 +3,12 @@
|
|
|
3
3
|
data-testid="nav"
|
|
4
4
|
:class="classNames">
|
|
5
5
|
<li
|
|
6
|
-
v-if="title"
|
|
7
6
|
class="nav__title">
|
|
8
|
-
<span
|
|
7
|
+
<span
|
|
8
|
+
class="nav__title__item"
|
|
9
|
+
:class="[ (!title && titleActionLabel) ? 'justify-end' : 'justify-between' ]">
|
|
9
10
|
<Caption
|
|
11
|
+
v-if="title"
|
|
10
12
|
weight="bold"
|
|
11
13
|
transform="capitalize">
|
|
12
14
|
{{ title }}
|
|
@@ -84,7 +86,7 @@ export default defineComponent({
|
|
|
84
86
|
result.push(`nav--align-${props.align}`);
|
|
85
87
|
if (props.vertical)
|
|
86
88
|
result.push("nav--vertical");
|
|
87
|
-
if (props.title)
|
|
89
|
+
if (props.title || props.titleActionLabel)
|
|
88
90
|
result.push("nav--has-title");
|
|
89
91
|
if (props.condensed)
|
|
90
92
|
result.push("nav--condensed");
|
|
@@ -385,7 +387,7 @@ export default defineComponent({
|
|
|
385
387
|
@apply absolute left-5 top-0 text-base w-[calc(100%-1.75rem)]; /* 1.25rem + 0.75rem (padding) */
|
|
386
388
|
|
|
387
389
|
&__item {
|
|
388
|
-
@apply flex items-center w-full
|
|
390
|
+
@apply flex items-center w-full space-x-2;
|
|
389
391
|
}
|
|
390
392
|
|
|
391
393
|
.caption {
|
|
@@ -118,7 +118,7 @@ export default defineComponent({
|
|
|
118
118
|
}
|
|
119
119
|
|
|
120
120
|
&__link {
|
|
121
|
-
@apply block relative py-[10px] px-3 -mb-[1px] border border-transparent rounded-t text-base font-normal cursor-pointer hover:no-underline text-subtle hover:text-default;
|
|
121
|
+
@apply block relative py-[10px] px-3 -mb-[1px] border border-transparent rounded-t text-base font-normal cursor-pointer no-underline hover:no-underline text-subtle hover:text-default;
|
|
122
122
|
@apply dark:text-dark-subtle hover:dark:text-dark-default;
|
|
123
123
|
|
|
124
124
|
&&--active {
|
|
@@ -18,7 +18,7 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
18
18
|
default: string;
|
|
19
19
|
};
|
|
20
20
|
linkClass: {
|
|
21
|
-
type: (StringConstructor |
|
|
21
|
+
type: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
|
|
22
22
|
default: undefined;
|
|
23
23
|
};
|
|
24
24
|
exact: {
|
|
@@ -47,7 +47,7 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
47
47
|
default: string;
|
|
48
48
|
};
|
|
49
49
|
linkClass: {
|
|
50
|
-
type: (StringConstructor |
|
|
50
|
+
type: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
|
|
51
51
|
default: undefined;
|
|
52
52
|
};
|
|
53
53
|
exact: {
|
|
@@ -32,7 +32,7 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
32
32
|
default: string;
|
|
33
33
|
};
|
|
34
34
|
menuClass: {
|
|
35
|
-
type: (StringConstructor |
|
|
35
|
+
type: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
|
|
36
36
|
default: undefined;
|
|
37
37
|
};
|
|
38
38
|
menuSize: {
|
|
@@ -75,7 +75,7 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
75
75
|
default: string;
|
|
76
76
|
};
|
|
77
77
|
menuClass: {
|
|
78
|
-
type: (StringConstructor |
|
|
78
|
+
type: (StringConstructor | ObjectConstructor | ArrayConstructor)[];
|
|
79
79
|
default: undefined;
|
|
80
80
|
};
|
|
81
81
|
menuSize: {
|
|
@@ -22,7 +22,7 @@ export default defineComponent({
|
|
|
22
22
|
<style lang="postcss">
|
|
23
23
|
.navbar {
|
|
24
24
|
&__brand {
|
|
25
|
-
@apply inline-block mr-4 text-xl py-1 font-medium text-default;
|
|
25
|
+
@apply inline-block mr-4 text-xl py-1 font-medium text-default no-underline cursor-pointer hover:no-underline;
|
|
26
26
|
@apply dark:text-dark-default;
|
|
27
27
|
|
|
28
28
|
img {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { PropType } from 'vue';
|
|
1
|
+
import { PropType } from 'vue-demi';
|
|
2
2
|
import { Menu } from '../sidebar-menu';
|
|
3
|
-
declare const _default: import("vue").DefineComponent<{
|
|
3
|
+
declare const _default: import("vue-demi").DefineComponent<{
|
|
4
4
|
menus: {
|
|
5
5
|
type: PropType<Menu[]>;
|
|
6
6
|
default: () => Menu[];
|
|
7
7
|
};
|
|
8
|
-
}, void, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<import("vue").ExtractPropTypes<{
|
|
8
|
+
}, void, unknown, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").VNodeProps & import("vue-demi").AllowedComponentProps & import("vue-demi").ComponentCustomProps, Readonly<import("vue-demi").ExtractPropTypes<{
|
|
9
9
|
menus: {
|
|
10
10
|
type: PropType<Menu[]>;
|
|
11
11
|
default: () => Menu[];
|
|
@@ -13,7 +13,9 @@ export function usePagination(props) {
|
|
|
13
13
|
return total.value <= 0 ? 0 : Math.ceil(total.value / perPage.value);
|
|
14
14
|
});
|
|
15
15
|
const rowRange = computed(() => {
|
|
16
|
-
|
|
16
|
+
const start = Math.max((page.value - 1) * perPage.value + 1, 0);
|
|
17
|
+
const end = Math.min(page.value * perPage.value, total.value);
|
|
18
|
+
return [start, end];
|
|
17
19
|
});
|
|
18
20
|
const pageItems = computed(() => {
|
|
19
21
|
if (totalPageCount.value === 0 || displayLimit.value < PAGE_PADDING)
|
|
@@ -216,7 +216,7 @@ export default defineComponent({
|
|
|
216
216
|
object.value.style.position = "absolute";
|
|
217
217
|
object.value.style.transform = `translate(${left}px, ${top}px) scale(${scale.value})`;
|
|
218
218
|
object.value.style.zIndex = "10";
|
|
219
|
-
}, { ancestorScroll: false });
|
|
219
|
+
}, { ancestorScroll: false, animationFrame: true });
|
|
220
220
|
onCleanup(cleanup);
|
|
221
221
|
}
|
|
222
222
|
} else
|
|
@@ -4,13 +4,15 @@
|
|
|
4
4
|
:width="width"
|
|
5
5
|
:height="height"
|
|
6
6
|
:src="preview"
|
|
7
|
+
:srcset="srcset"
|
|
7
8
|
:alt="text">
|
|
8
9
|
</template>
|
|
9
10
|
|
|
10
11
|
<script>
|
|
11
12
|
import {
|
|
12
13
|
defineComponent,
|
|
13
|
-
onMounted
|
|
14
|
+
onMounted,
|
|
15
|
+
ref
|
|
14
16
|
} from "vue-demi";
|
|
15
17
|
import { createSpinner } from "../avatar/utils/create-image";
|
|
16
18
|
import { usePreview } from "../cropper";
|
|
@@ -92,6 +94,7 @@ export default defineComponent({
|
|
|
92
94
|
setup(props) {
|
|
93
95
|
const model = useVModel(props);
|
|
94
96
|
const preview = usePreview(model, createSpinner(props.width, props.height));
|
|
97
|
+
const srcset = ref("");
|
|
95
98
|
watchDebounced(() => [
|
|
96
99
|
props.text,
|
|
97
100
|
props.width,
|
|
@@ -116,8 +119,9 @@ export default defineComponent({
|
|
|
116
119
|
const result = await generate(props);
|
|
117
120
|
const value = props.modelModifiers.base64 ? result : fromBase64(result);
|
|
118
121
|
model.value = value;
|
|
122
|
+
srcset.value = `${await generate(props, 2)} 2x`;
|
|
119
123
|
}
|
|
120
|
-
return { preview };
|
|
124
|
+
return { preview, srcset };
|
|
121
125
|
}
|
|
122
126
|
});
|
|
123
127
|
</script>
|
|
@@ -74,6 +74,7 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
74
74
|
};
|
|
75
75
|
}, {
|
|
76
76
|
preview: import("vue-demi").Ref<string>;
|
|
77
|
+
srcset: import("vue-demi").Ref<string>;
|
|
77
78
|
}, unknown, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").VNodeProps & import("vue-demi").AllowedComponentProps & import("vue-demi").ComponentCustomProps, Readonly<import("vue-demi").ExtractPropTypes<{
|
|
78
79
|
modelValue: {
|
|
79
80
|
type: (StringConstructor | {
|
|
@@ -147,11 +148,11 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
147
148
|
default: number;
|
|
148
149
|
};
|
|
149
150
|
}>>, {
|
|
150
|
-
size: number;
|
|
151
151
|
color: string;
|
|
152
|
+
size: number;
|
|
152
153
|
text: string;
|
|
153
|
-
modelValue: string | File;
|
|
154
154
|
label: string;
|
|
155
|
+
modelValue: string | File;
|
|
155
156
|
modelModifiers: ModelModifier;
|
|
156
157
|
width: number;
|
|
157
158
|
height: number;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createCanvas } from "../../signature-draw/utils/canvas.mjs";
|
|
2
2
|
import loadFont from "../../signature-text/utils/load-font.mjs";
|
|
3
3
|
import { clamp } from "lodash-es";
|
|
4
|
-
function wrapText(context, text, fontSize,
|
|
4
|
+
function wrapText(context, text, fontSize, fontFamily, maxWidth) {
|
|
5
5
|
const lines = [];
|
|
6
6
|
context.font = `${fontSize}px ${JSON.stringify(fontFamily)}`;
|
|
7
7
|
context.textBaseline = "top";
|
|
@@ -35,7 +35,7 @@ function wrapText(context, text, fontSize, lineHeight, fontFamily, maxWidth) {
|
|
|
35
35
|
}
|
|
36
36
|
return lines;
|
|
37
37
|
}
|
|
38
|
-
export default async function generate(options) {
|
|
38
|
+
export default async function generate(options, dpi = 1) {
|
|
39
39
|
const {
|
|
40
40
|
text,
|
|
41
41
|
color,
|
|
@@ -47,33 +47,41 @@ export default async function generate(options) {
|
|
|
47
47
|
minSize,
|
|
48
48
|
maxSize,
|
|
49
49
|
fixedSize,
|
|
50
|
-
label
|
|
50
|
+
label,
|
|
51
|
+
lineHeight
|
|
51
52
|
} = options;
|
|
52
53
|
await loadFont(font);
|
|
53
|
-
const canvas = options.canvas ?? createCanvas(width, height);
|
|
54
|
+
const canvas = options.canvas ?? createCanvas(width, height, dpi);
|
|
54
55
|
const context = canvas.getContext("2d");
|
|
56
|
+
const maxWidth = width - padding * 2;
|
|
55
57
|
let y = padding;
|
|
56
58
|
if (label) {
|
|
57
59
|
const labelSize = options.labelSize ?? size;
|
|
58
60
|
const labelFont = options.labelFont ?? font;
|
|
59
61
|
const labelColor = options.labelColor ?? color;
|
|
62
|
+
const labelLines = wrapText(
|
|
63
|
+
context,
|
|
64
|
+
label,
|
|
65
|
+
labelSize,
|
|
66
|
+
labelFont,
|
|
67
|
+
maxWidth
|
|
68
|
+
);
|
|
60
69
|
context.font = `${labelSize}px ${JSON.stringify(labelFont)}`;
|
|
61
70
|
context.textBaseline = "top";
|
|
62
71
|
context.textAlign = "start";
|
|
63
72
|
context.fillStyle = labelColor;
|
|
64
|
-
|
|
65
|
-
|
|
73
|
+
for (const line of labelLines) {
|
|
74
|
+
context.fillText(line, padding, y);
|
|
75
|
+
y += labelSize * lineHeight;
|
|
76
|
+
}
|
|
66
77
|
}
|
|
67
78
|
if (text) {
|
|
68
|
-
const maxWidth = width - padding * 2;
|
|
69
79
|
const maxHeight = height - (y + padding);
|
|
70
80
|
let fontSize = size;
|
|
71
|
-
let lineHeight = fontSize * options.lineHeight;
|
|
72
81
|
let lines = wrapText(
|
|
73
82
|
context,
|
|
74
83
|
text,
|
|
75
84
|
fontSize,
|
|
76
|
-
lineHeight,
|
|
77
85
|
font,
|
|
78
86
|
maxWidth
|
|
79
87
|
);
|
|
@@ -89,29 +97,23 @@ export default async function generate(options) {
|
|
|
89
97
|
if (newFontSize === fontSize)
|
|
90
98
|
break;
|
|
91
99
|
fontSize = newFontSize;
|
|
92
|
-
lineHeight = fontSize * options.lineHeight;
|
|
93
100
|
lines = wrapText(
|
|
94
101
|
context,
|
|
95
102
|
text,
|
|
96
103
|
fontSize,
|
|
97
|
-
lineHeight,
|
|
98
104
|
font,
|
|
99
105
|
maxWidth
|
|
100
106
|
);
|
|
101
|
-
textHeight = lines.length * lineHeight;
|
|
107
|
+
textHeight = lines.length * lineHeight * fontSize;
|
|
102
108
|
} while (textHeight > maxHeight && ++count < 5);
|
|
103
109
|
}
|
|
104
110
|
context.font = `${fontSize}px ${JSON.stringify(font)}`;
|
|
105
111
|
context.textBaseline = "top";
|
|
106
112
|
context.textAlign = "start";
|
|
107
113
|
context.fillStyle = color;
|
|
108
|
-
context.font = `${fontSize}px ${JSON.stringify(font)}`;
|
|
109
|
-
context.textBaseline = "top";
|
|
110
|
-
context.textAlign = "start";
|
|
111
|
-
context.fillStyle = color;
|
|
112
114
|
for (const line of lines) {
|
|
113
115
|
context.fillText(line, padding, y);
|
|
114
|
-
y += lineHeight;
|
|
116
|
+
y += fontSize * lineHeight;
|
|
115
117
|
}
|
|
116
118
|
}
|
|
117
119
|
return canvas.toDataURL("image/png");
|
|
@@ -22,15 +22,20 @@
|
|
|
22
22
|
<dt>
|
|
23
23
|
PDFJS Version:
|
|
24
24
|
</dt>
|
|
25
|
-
<dd><code>{{
|
|
25
|
+
<dd><code>{{ version }}</code></dd>
|
|
26
26
|
</dl>
|
|
27
27
|
</div>
|
|
28
28
|
</template>
|
|
29
29
|
|
|
30
30
|
<script>
|
|
31
31
|
import { pAspectRatio } from "../aspect-ratio";
|
|
32
|
-
import {
|
|
32
|
+
import {
|
|
33
|
+
defineComponent,
|
|
34
|
+
onMounted,
|
|
35
|
+
ref
|
|
36
|
+
} from "vue-demi";
|
|
33
37
|
import Heading from "../heading/Heading.vue";
|
|
38
|
+
import { getVersion } from "./utils/pdfjs";
|
|
34
39
|
export default defineComponent({
|
|
35
40
|
directives: { pAspectRatio },
|
|
36
41
|
components: { Heading },
|
|
@@ -39,17 +44,17 @@ export default defineComponent({
|
|
|
39
44
|
type: String,
|
|
40
45
|
default: ""
|
|
41
46
|
},
|
|
42
|
-
pdfJs: {
|
|
43
|
-
type: Object,
|
|
44
|
-
default: () => ({})
|
|
45
|
-
},
|
|
46
47
|
error: {
|
|
47
48
|
type: Object,
|
|
48
49
|
default: () => ({})
|
|
49
50
|
}
|
|
50
51
|
},
|
|
51
52
|
setup() {
|
|
52
|
-
|
|
53
|
+
const version = ref("");
|
|
54
|
+
onMounted(async () => {
|
|
55
|
+
version.value = await getVersion();
|
|
56
|
+
});
|
|
57
|
+
return { version };
|
|
53
58
|
}
|
|
54
59
|
});
|
|
55
60
|
</script>
|
|
@@ -1,27 +1,20 @@
|
|
|
1
|
-
import type * as PDFJS from 'pdfjs-dist';
|
|
2
1
|
import { PropType } from 'vue-demi';
|
|
3
2
|
declare const _default: import("vue-demi").DefineComponent<{
|
|
4
3
|
url: {
|
|
5
4
|
type: StringConstructor;
|
|
6
5
|
default: string;
|
|
7
6
|
};
|
|
8
|
-
pdfJs: {
|
|
9
|
-
type: PropType<typeof PDFJS>;
|
|
10
|
-
default: () => {};
|
|
11
|
-
};
|
|
12
7
|
error: {
|
|
13
8
|
type: PropType<Error>;
|
|
14
9
|
default: () => Error;
|
|
15
10
|
};
|
|
16
|
-
}, {
|
|
11
|
+
}, {
|
|
12
|
+
version: import("vue-demi").Ref<string>;
|
|
13
|
+
}, unknown, {}, {}, import("vue-demi").ComponentOptionsMixin, import("vue-demi").ComponentOptionsMixin, {}, string, import("vue-demi").VNodeProps & import("vue-demi").AllowedComponentProps & import("vue-demi").ComponentCustomProps, Readonly<import("vue-demi").ExtractPropTypes<{
|
|
17
14
|
url: {
|
|
18
15
|
type: StringConstructor;
|
|
19
16
|
default: string;
|
|
20
17
|
};
|
|
21
|
-
pdfJs: {
|
|
22
|
-
type: PropType<typeof PDFJS>;
|
|
23
|
-
default: () => {};
|
|
24
|
-
};
|
|
25
18
|
error: {
|
|
26
19
|
type: PropType<Error>;
|
|
27
20
|
default: () => Error;
|
|
@@ -29,6 +22,5 @@ declare const _default: import("vue-demi").DefineComponent<{
|
|
|
29
22
|
}>>, {
|
|
30
23
|
error: Error;
|
|
31
24
|
url: string;
|
|
32
|
-
pdfJs: typeof PDFJS;
|
|
33
25
|
}, {}>;
|
|
34
26
|
export default _default;
|