@privyid/persona 0.21.0 → 0.23.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/dist/components/accordion/Accordion.vue +5 -2
  2. package/dist/components/accordion/AccordionItem.vue +9 -7
  3. package/dist/components/avatar/Avatar.vue.d.ts +2 -2
  4. package/dist/components/badge/Badge.vue +21 -3
  5. package/dist/components/badge/Badge.vue.d.ts +1 -1
  6. package/dist/components/banner/Banner.vue +5 -0
  7. package/dist/components/banner/Banner.vue.d.ts +9 -0
  8. package/dist/components/button/Button.vue +18 -18
  9. package/dist/components/calendar/Calendar.vue.d.ts +2 -2
  10. package/dist/components/calendar/adapter/adapter.d.ts +1 -8
  11. package/dist/components/calendar/adapter/adapter.mjs +0 -10
  12. package/dist/components/calendar/adapter/date.mjs +2 -2
  13. package/dist/components/calendar/adapter/month.mjs +2 -2
  14. package/dist/components/camera/Camera.vue.d.ts +3 -3
  15. package/dist/components/card/Card.vue.d.ts +1 -1
  16. package/dist/components/card/CardSection.vue +1 -0
  17. package/dist/components/card/CardSection.vue.d.ts +1 -1
  18. package/dist/components/carousel/Carousel.vue.d.ts +8 -8
  19. package/dist/components/chart/ChartSet.vue.d.ts +2 -2
  20. package/dist/components/chart/ChartVal.vue.d.ts +4 -4
  21. package/dist/components/checkbox/Checkbox.vue +98 -112
  22. package/dist/components/checkbox/icon/IconCheckbox.vue +13 -0
  23. package/dist/components/checkbox/icon/IconInderteminate.vue +12 -0
  24. package/dist/components/contextual-bar/ContextualBar.vue +67 -19
  25. package/dist/components/contextual-bar/ContextualBar.vue.d.ts +4 -4
  26. package/dist/components/contextual-bar/index.d.ts +1 -1
  27. package/dist/components/cropper/Cropper.vue.d.ts +10 -10
  28. package/dist/components/datepicker/Datepicker.vue +2 -0
  29. package/dist/components/datepicker/Datepicker.vue.d.ts +3 -3
  30. package/dist/components/dialog/Dialog.vue +2 -0
  31. package/dist/components/dialog/index.d.ts +2 -0
  32. package/dist/components/divider/Divider.vue +1 -1
  33. package/dist/components/dot/Dot.vue.d.ts +1 -1
  34. package/dist/components/dropdown/Dropdown.vue +303 -222
  35. package/dist/components/dropdown/DropdownItem.vue +8 -8
  36. package/dist/components/dropdown-subitem/DropdownSubitem.vue.d.ts +1 -1
  37. package/dist/components/dropzone/Dropzone.vue.d.ts +5 -5
  38. package/dist/components/filterbar/pinned/PinnedDate.vue +2 -0
  39. package/dist/components/filterbar/pinned/PinnedDate.vue.d.ts +3 -3
  40. package/dist/components/filterbar/pinned/PinnedMultiselect.vue +10 -6
  41. package/dist/components/filterbar/pinned/PinnedMultiselect.vue.d.ts +1 -1
  42. package/dist/components/filterbar/pinned/PinnedSelect.vue +11 -7
  43. package/dist/components/filterbar/pinned/PinnedSelect.vue.d.ts +4 -4
  44. package/dist/components/filterbar/pinned/PinnedToggle.vue.d.ts +7 -7
  45. package/dist/components/global/store.d.ts +2 -1
  46. package/dist/components/input/Input.vue +16 -5
  47. package/dist/components/input/Input.vue.d.ts +6 -5
  48. package/dist/components/input/index.d.ts +1 -1
  49. package/dist/components/input-file/InputFile.vue.d.ts +5 -5
  50. package/dist/components/input-pin/InputPin.vue.d.ts +3 -3
  51. package/dist/components/input-range/InputRange.vue.d.ts +8 -8
  52. package/dist/components/label/Label.vue +31 -12
  53. package/dist/components/label/Label.vue.d.ts +2 -2
  54. package/dist/components/list-group/ListGroup.vue.d.ts +1 -1
  55. package/dist/components/list-group/ListGroupItem.vue +2 -2
  56. package/dist/components/main/Main.vue +4 -2
  57. package/dist/components/markdown/index.d.ts +6 -1
  58. package/dist/components/markdown/index.mjs +8 -2
  59. package/dist/components/meta.json +135 -0
  60. package/dist/components/modal/Modal.vue +215 -12
  61. package/dist/components/modal/Modal.vue.d.ts +56 -2
  62. package/dist/components/modal/index.d.ts +1 -1
  63. package/dist/components/nav/Nav.vue +5 -1
  64. package/dist/components/nav/Nav.vue.d.ts +1 -1
  65. package/dist/components/nav/NavItem.vue.d.ts +2 -2
  66. package/dist/components/nav/NavItemDropdown.vue.d.ts +3 -3
  67. package/dist/components/nav/NavSubItem.vue +6 -6
  68. package/dist/components/navbar/Navbar.vue.d.ts +1 -1
  69. package/dist/components/navbar/NavbarBrand.vue +1 -1
  70. package/dist/components/pagination/Pagination.vue +9 -0
  71. package/dist/components/pagination/Pagination.vue.d.ts +10 -0
  72. package/dist/components/pdf-helipad/PdfHelipad.vue +101 -85
  73. package/dist/components/pdf-helipad/utils/use-drag.d.ts +2 -7
  74. package/dist/components/pdf-helipad/utils/use-drag.mjs +1 -1
  75. package/dist/components/pdf-object/PdfObject.vue.d.ts +3 -3
  76. package/dist/components/pdf-object/index.d.ts +7 -0
  77. package/dist/components/pdf-object/utils/use-drag.d.ts +1 -0
  78. package/dist/components/pdf-object/utils/use-drag.mjs +1 -1
  79. package/dist/components/pdf-text/PdfText.vue.d.ts +4 -4
  80. package/dist/components/pdf-viewer/PdfViewer.vue.d.ts +6 -6
  81. package/dist/components/progress-indicator/ProgressIndicator.vue.d.ts +2 -2
  82. package/dist/components/progressbar/Progressbar.vue.d.ts +7 -7
  83. package/dist/components/radio/Radio.vue.d.ts +5 -5
  84. package/dist/components/ringbar/Ringbar.vue.d.ts +6 -6
  85. package/dist/components/select/Select.vue +402 -214
  86. package/dist/components/select/SelectInput.vue +102 -0
  87. package/dist/components/select/SelectTags.vue +57 -0
  88. package/dist/components/select/adapter/adapter.d.ts +1 -0
  89. package/dist/components/select/adapter/async-adapter.d.ts +13 -1
  90. package/dist/components/select/adapter/async-adapter.mjs +8 -15
  91. package/dist/components/select/index.d.ts +2 -0
  92. package/dist/components/select/index.mjs +4 -1
  93. package/dist/components/sheet/Sheet.vue +2 -3
  94. package/dist/components/sidebar/Sidebar.vue +101 -116
  95. package/dist/components/sidebar/SidebarBrand.vue +1 -1
  96. package/dist/components/sidebar/SidebarContent.vue +27 -0
  97. package/dist/components/sidebar/SidebarNav.vue +78 -87
  98. package/dist/components/sidebar-menu/SidebarMenu.vue +57 -204
  99. package/dist/components/sidebar-menu/SidebarMenuItem.vue +70 -0
  100. package/dist/components/signature-text/SignatureText.vue.d.ts +5 -5
  101. package/dist/components/steps/StepSlider.vue +2 -2
  102. package/dist/components/steps/Steps.vue.d.ts +2 -2
  103. package/dist/components/strengthbar/Strengthbar.vue.d.ts +9 -9
  104. package/dist/components/table/index.d.ts +5 -8
  105. package/dist/components/table-flex/TableFlex.vue +14 -11
  106. package/dist/components/table-static/TableStatic.vue +131 -119
  107. package/dist/components/table-static/TableStaticRoot.vue +42 -0
  108. package/dist/components/tabs/Tab.vue +13 -15
  109. package/dist/components/tabs/TabContent.vue +64 -23
  110. package/dist/components/tabs/Tabs.vue +93 -75
  111. package/dist/components/text/Text.vue +15 -7
  112. package/dist/components/text/Text.vue.d.ts +11 -2
  113. package/dist/components/text/index.d.ts +1 -0
  114. package/dist/components/textarea/Textarea.vue.d.ts +5 -5
  115. package/dist/components/toggle/Toggle.vue +12 -1
  116. package/dist/components/toggle/Toggle.vue.d.ts +16 -7
  117. package/dist/components/tooltip/index.mjs +1 -1
  118. package/dist/components/tooltip/utils/create-handler.mjs +1 -1
  119. package/dist/components/tour/TourDialog.vue +6 -0
  120. package/dist/components/truncate/Truncate.vue +1 -1
  121. package/dist/components/truncate/Truncate.vue.d.ts +2 -2
  122. package/dist/components/utils/date.d.ts +21 -0
  123. package/dist/components/utils/date.mjs +15 -0
  124. package/dist/components/utils/vnode.mjs +1 -1
  125. package/dist/core/index.d.ts +1 -0
  126. package/dist/core/index.mjs +4 -0
  127. package/dist/module.json +1 -1
  128. package/package.json +17 -17
  129. package/dist/components/checkbox/Checkbox.vue.d.ts +0 -84
  130. package/dist/components/dropdown/Dropdown.vue.d.ts +0 -147
  131. package/dist/components/pdf-helipad/PdfHelipad.vue.d.ts +0 -45
  132. package/dist/components/select/Select.vue.d.ts +0 -157
  133. package/dist/components/sidebar/Sidebar.vue.d.ts +0 -80
  134. package/dist/components/sidebar/SidebarNav.vue.d.ts +0 -66
  135. package/dist/components/sidebar-menu/SidebarMenu.vue.d.ts +0 -91
  136. package/dist/components/tabs/Tab.vue.d.ts +0 -23
  137. package/dist/components/tabs/TabContent.vue.d.ts +0 -14
  138. package/dist/components/tabs/Tabs.vue.d.ts +0 -80
@@ -21,7 +21,10 @@
21
21
  data-testid="tab"
22
22
  :disabled="tab.disabled"
23
23
  :active="i === active"
24
- :class="{ 'nav__item--no-icon' : (!tab.slots.icon), 'nav__item--no-label' : (!tab.title && !tab.slots.title) }"
24
+ :class="{
25
+ 'nav__item--no-icon' : (!tab.slots.icon),
26
+ 'nav__item--no-label': (!tab.title && !tab.slots.title)
27
+ }"
25
28
  @click="selectTab(i, tab)">
26
29
  <template #icon>
27
30
  <template v-if="tab.slots.icon">
@@ -39,90 +42,105 @@
39
42
  </nav>
40
43
 
41
44
  <div class="tabs__content">
42
- <tab-content :active="active">
45
+ <tab-content
46
+ :active="active"
47
+ :vertical="vertical"
48
+ :keep-alive="keepAlive">
43
49
  <slot />
44
50
  </tab-content>
45
51
  </div>
46
52
  </div>
47
53
  </template>
48
54
 
49
- <script>
55
+ <script lang="ts" setup>
56
+ import {
57
+ VNode,
58
+ PropType,
59
+ computed,
60
+ Slots,
61
+ } from 'vue-demi'
62
+ import Nav from '../nav/Nav.vue'
50
63
  import {
51
- defineComponent,
52
- computed
53
- } from "vue-demi";
54
- import Nav from "../nav/Nav.vue";
55
- import NavItem from "../nav/NavItem.vue";
56
- import TabContent from "./TabContent.vue";
57
- import { useVModel } from "../input";
58
- import { findAllChildren, toBoolean } from "../utils/vnode";
59
- export default defineComponent({
60
- components: {
61
- Nav,
62
- NavItem,
63
- TabContent
64
+ StyleVariant as TabsStyleVariant,
65
+ AlignVariant as TabsAlignVariant,
66
+ } from '../nav'
67
+ import NavItem from '../nav/NavItem.vue'
68
+ import TabContent from './TabContent.vue'
69
+ import { useVModel } from '../input'
70
+ import { findAllChildren, toBoolean } from '../utils/vnode'
71
+
72
+ interface TabContext {
73
+ title: string,
74
+ disabled: boolean,
75
+ slots: Slots,
76
+ }
77
+
78
+ const props = defineProps({
79
+ variant: {
80
+ type : String as PropType<TabsStyleVariant>,
81
+ default: 'tabs',
64
82
  },
65
- props: {
66
- variant: {
67
- type: String,
68
- default: "tabs"
69
- },
70
- align: {
71
- type: String,
72
- default: "left"
73
- },
74
- vertical: {
75
- type: Boolean,
76
- default: false
77
- },
78
- fill: {
79
- type: Boolean,
80
- default: false
81
- },
82
- justified: {
83
- type: Boolean,
84
- default: false
85
- },
86
- navWrapperClass: {
87
- type: String,
88
- default: void 0
89
- },
90
- modelValue: {
91
- type: Number,
92
- default: 0
93
- }
83
+ align: {
84
+ type : String as PropType<TabsAlignVariant>,
85
+ default: 'left',
94
86
  },
95
- setup(props, { slots }) {
96
- const classNames = computed(() => {
97
- const result = [];
98
- if (props.vertical && props.align)
99
- result.push(`tabs--vertical-align-${props.align}`);
100
- return result;
101
- });
102
- const active = useVModel(props);
103
- const tabs = computed(() => {
104
- const vnodes = slots.default ? slots.default() : [];
105
- const tabs2 = findAllChildren(vnodes, "Tab");
106
- return tabs2.map((vnode) => {
107
- return {
108
- title: vnode.props?.title,
109
- disabled: toBoolean(vnode.props?.disabled),
110
- slots: vnode.children
111
- };
112
- });
113
- });
114
- function selectTab(index, tab) {
115
- if (!tab.disabled)
116
- active.value = index;
117
- }
87
+ vertical: {
88
+ type : Boolean,
89
+ default: false,
90
+ },
91
+ fill: {
92
+ type : Boolean,
93
+ default: false,
94
+ },
95
+ justified: {
96
+ type : Boolean,
97
+ default: false,
98
+ },
99
+ navWrapperClass: {
100
+ type : String,
101
+ default: undefined,
102
+ },
103
+ modelValue: {
104
+ type : Number,
105
+ default: 0,
106
+ },
107
+ keepAlive: {
108
+ type : Boolean,
109
+ default: false,
110
+ },
111
+ })
112
+
113
+ const classNames = computed(() => {
114
+ const result: string[] = []
115
+
116
+ if (props.vertical && props.align)
117
+ result.push(`tabs--vertical-align-${props.align}`)
118
+
119
+ return result
120
+ })
121
+
122
+ const slots = defineSlots<{
123
+ default:() => VNode[],
124
+ }>()
125
+
126
+ const active = useVModel(props)
127
+ const tabs = computed<TabContext[]>(() => {
128
+ const vnodes = slots.default ? slots.default() : []
129
+ const tabs = findAllChildren(vnodes, 'Tab')
130
+
131
+ return tabs.map((vnode) => {
118
132
  return {
119
- classNames,
120
- active,
121
- tabs,
122
- selectTab
123
- };
124
- }
125
- });
133
+ title : vnode.props?.title,
134
+ disabled: toBoolean(vnode.props?.disabled),
135
+ slots : vnode.children as Slots,
136
+ }
137
+ })
138
+ })
139
+
140
+ function selectTab (index: number, tab: TabContext) {
141
+ if (!tab.disabled)
142
+ active.value = index
143
+ }
126
144
  </script>
127
145
 
128
146
  <style lang="postcss">
@@ -1,6 +1,6 @@
1
1
  <template>
2
2
  <component
3
- :is="hyperlink"
3
+ :is="elementNames"
4
4
  data-testid="freetext"
5
5
  class="freetext"
6
6
  :class="classNames"
@@ -31,11 +31,15 @@ export default defineComponent({
31
31
  transform: {
32
32
  type: String,
33
33
  default: "normalcase"
34
+ },
35
+ element: {
36
+ type: String,
37
+ default: "span"
34
38
  }
35
39
  },
36
40
  setup(props) {
37
- const hyperlink = computed(() => {
38
- return props.href ? "a" : "span";
41
+ const elementNames = computed(() => {
42
+ return props.href ? "a" : props.element;
39
43
  });
40
44
  const classNames = computed(() => {
41
45
  const result = [""];
@@ -52,8 +56,8 @@ export default defineComponent({
52
56
  return result;
53
57
  });
54
58
  return {
55
- hyperlink,
56
- classNames
59
+ classNames,
60
+ elementNames
57
61
  };
58
62
  }
59
63
  });
@@ -125,8 +129,12 @@ export default defineComponent({
125
129
  * Hyperlink style
126
130
  */
127
131
  &--hyperlink {
128
- @apply underline decoration-solid text-info;
129
- @apply dark:text-dark-info;
132
+ @apply underline decoration-solid;
133
+
134
+ &:not([class^='text-'], [class*='text-']) {
135
+ @apply text-link;
136
+ @apply dark:text-dark-link;
137
+ }
130
138
  }
131
139
 
132
140
  /**
@@ -1,5 +1,5 @@
1
1
  import { PropType } from 'vue-demi';
2
- import { StyleVariant } from '.';
2
+ import { StyleVariant, ElementVariant } from '.';
3
3
  import { WeightVariant, TransformVariant } from '../heading';
4
4
  declare const _default: import("vue-demi").DefineComponent<{
5
5
  variant: {
@@ -18,9 +18,13 @@ declare const _default: import("vue-demi").DefineComponent<{
18
18
  type: PropType<TransformVariant>;
19
19
  default: string;
20
20
  };
21
+ element: {
22
+ type: PropType<ElementVariant>;
23
+ default: string;
24
+ };
21
25
  }, {
22
- hyperlink: import("vue-demi").ComputedRef<"a" | "span">;
23
26
  classNames: import("vue-demi").ComputedRef<string[]>;
27
+ elementNames: import("vue-demi").ComputedRef<ElementVariant>;
24
28
  }, 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<{
25
29
  variant: {
26
30
  type: PropType<StyleVariant>;
@@ -38,10 +42,15 @@ declare const _default: import("vue-demi").DefineComponent<{
38
42
  type: PropType<TransformVariant>;
39
43
  default: string;
40
44
  };
45
+ element: {
46
+ type: PropType<ElementVariant>;
47
+ default: string;
48
+ };
41
49
  }>>, {
42
50
  variant: StyleVariant;
43
51
  href: string;
44
52
  weight: WeightVariant;
45
53
  transform: TransformVariant;
54
+ element: ElementVariant;
46
55
  }, {}>;
47
56
  export default _default;
@@ -1 +1,2 @@
1
1
  export type StyleVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'subheading' | 'subheading2' | 'body' | 'body2' | 'btn' | 'btn2' | 'caption' | 'caption2' | 'formlabel' | 'formlabel2' | 'overline';
2
+ export type ElementVariant = 'h1' | 'h2' | 'h3' | 'h4' | 'h5' | 'h6' | 'span' | 'p' | 'a' | 'label';
@@ -34,11 +34,11 @@ declare const _default: import("vue-demi").DefineComponent<{
34
34
  default: boolean;
35
35
  };
36
36
  rows: {
37
- type: (NumberConstructor | StringConstructor)[];
37
+ type: (StringConstructor | NumberConstructor)[];
38
38
  default: number;
39
39
  };
40
40
  maxlength: {
41
- type: (NumberConstructor | StringConstructor)[];
41
+ type: (StringConstructor | NumberConstructor)[];
42
42
  default: undefined;
43
43
  };
44
44
  accept: {
@@ -46,7 +46,7 @@ declare const _default: import("vue-demi").DefineComponent<{
46
46
  default: undefined;
47
47
  };
48
48
  }, {
49
- model: import("vue-demi").Ref<string | undefined>;
49
+ model: import("vue-demi").Ref<string>;
50
50
  classNames: import("vue-demi").ComputedRef<string[]>;
51
51
  handleInput: () => void;
52
52
  checkOnInput: typeof checkOnInput;
@@ -86,11 +86,11 @@ declare const _default: import("vue-demi").DefineComponent<{
86
86
  default: boolean;
87
87
  };
88
88
  rows: {
89
- type: (NumberConstructor | StringConstructor)[];
89
+ type: (StringConstructor | NumberConstructor)[];
90
90
  default: number;
91
91
  };
92
92
  maxlength: {
93
- type: (NumberConstructor | StringConstructor)[];
93
+ type: (StringConstructor | NumberConstructor)[];
94
94
  default: undefined;
95
95
  };
96
96
  accept: {
@@ -4,7 +4,10 @@
4
4
  class="toggle"
5
5
  :class="classNames"
6
6
  @click.prevent="toggle">
7
- <div class="toggle__switch">
7
+ <div
8
+ class="toggle__switch"
9
+ data-testid="toggle-switch"
10
+ :class="switchClass">
8
11
  <span
9
12
  v-if="noLabel === false"
10
13
  class="toggle__label toggle__checked-label">
@@ -98,6 +101,14 @@ export default defineComponent({
98
101
  disabled: {
99
102
  type: Boolean,
100
103
  default: false
104
+ },
105
+ switchClass: {
106
+ type: [
107
+ String,
108
+ Array,
109
+ Object
110
+ ],
111
+ default: void 0
101
112
  }
102
113
  },
103
114
  models: {
@@ -6,15 +6,15 @@ declare const _default: import("vue-demi").DefineComponent<{
6
6
  default: string;
7
7
  };
8
8
  modelValue: {
9
- type: (NumberConstructor | StringConstructor | BooleanConstructor | ObjectConstructor | DateConstructor | ArrayConstructor)[];
9
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | DateConstructor | NumberConstructor)[];
10
10
  default: boolean;
11
11
  };
12
12
  value: {
13
- type: (NumberConstructor | StringConstructor | BooleanConstructor | ObjectConstructor | DateConstructor | ArrayConstructor)[];
13
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | DateConstructor | NumberConstructor)[];
14
14
  default: boolean;
15
15
  };
16
16
  uncheckedValue: {
17
- type: (NumberConstructor | StringConstructor | BooleanConstructor | ObjectConstructor | DateConstructor | ArrayConstructor)[];
17
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | DateConstructor | NumberConstructor)[];
18
18
  default: boolean;
19
19
  };
20
20
  checked: {
@@ -41,6 +41,10 @@ declare const _default: import("vue-demi").DefineComponent<{
41
41
  type: BooleanConstructor;
42
42
  default: boolean;
43
43
  };
44
+ switchClass: {
45
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor)[];
46
+ default: undefined;
47
+ };
44
48
  }, {
45
49
  classNames: import("vue-demi").ComputedRef<string[]>;
46
50
  model: import("vue-demi").Ref<boolean>;
@@ -51,15 +55,15 @@ declare const _default: import("vue-demi").DefineComponent<{
51
55
  default: string;
52
56
  };
53
57
  modelValue: {
54
- type: (NumberConstructor | StringConstructor | BooleanConstructor | ObjectConstructor | DateConstructor | ArrayConstructor)[];
58
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | DateConstructor | NumberConstructor)[];
55
59
  default: boolean;
56
60
  };
57
61
  value: {
58
- type: (NumberConstructor | StringConstructor | BooleanConstructor | ObjectConstructor | DateConstructor | ArrayConstructor)[];
62
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | DateConstructor | NumberConstructor)[];
59
63
  default: boolean;
60
64
  };
61
65
  uncheckedValue: {
62
- type: (NumberConstructor | StringConstructor | BooleanConstructor | ObjectConstructor | DateConstructor | ArrayConstructor)[];
66
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor | BooleanConstructor | DateConstructor | NumberConstructor)[];
63
67
  default: boolean;
64
68
  };
65
69
  checked: {
@@ -86,6 +90,10 @@ declare const _default: import("vue-demi").DefineComponent<{
86
90
  type: BooleanConstructor;
87
91
  default: boolean;
88
92
  };
93
+ switchClass: {
94
+ type: (StringConstructor | ArrayConstructor | ObjectConstructor)[];
95
+ default: undefined;
96
+ };
89
97
  }>> & {
90
98
  onChange?: ((...args: any[]) => any) | undefined;
91
99
  "onUpdate:modelValue"?: ((...args: any[]) => any) | undefined;
@@ -95,10 +103,11 @@ declare const _default: import("vue-demi").DefineComponent<{
95
103
  modelValue: string | number | boolean | Record<string, any> | unknown[] | Date;
96
104
  disabled: boolean;
97
105
  readonly: boolean;
98
- uncheckedValue: string | number | boolean | Record<string, any> | unknown[] | Date;
99
106
  checked: boolean;
107
+ uncheckedValue: string | number | boolean | Record<string, any> | unknown[] | Date;
100
108
  noLabel: boolean;
101
109
  checkedLabel: string;
102
110
  uncheckedLabel: string;
111
+ switchClass: string | Record<string, any> | unknown[];
103
112
  }, {}>;
104
113
  export default _default;
@@ -64,7 +64,7 @@ export const pTooltip = {
64
64
  tooltip.hide(id);
65
65
  el.removeAttribute("title");
66
66
  },
67
- async beforeUnmount(el, bindings) {
67
+ async unmounted(el, bindings) {
68
68
  const { default: TooltipContainer } = await import("./TooltipContainer.vue");
69
69
  const tooltip = await useSingleton(TooltipContainer);
70
70
  const id = el.dataset.tooltipId;
@@ -7,7 +7,7 @@ export default function createHandler(eventName, tooltipAction, prevent = false)
7
7
  const id = target.dataset.tooltipId;
8
8
  const enable = target.dataset.tooltipEnable !== "false";
9
9
  const action = target.dataset.tooltipAction;
10
- if (enable && action.includes(eventName)) {
10
+ if (id && enable && action.includes(eventName)) {
11
11
  tooltip[tooltipAction](id);
12
12
  if (prevent)
13
13
  event.preventDefault();
@@ -21,6 +21,7 @@
21
21
  <div class="tour__body">
22
22
  <p-subheading
23
23
  v-if="title"
24
+ class="tour__title"
24
25
  size="sm">
25
26
  <span
26
27
  v-p-md.inline="title"
@@ -170,6 +171,11 @@ export default defineComponent({
170
171
  &__body {
171
172
  @apply p-4 space-y-3;
172
173
 
174
+ .tour__title {
175
+ @apply text-on-emphasis;
176
+ @apply dark:text-dark-on-emphasis;
177
+ }
178
+
173
179
  > * {
174
180
  @apply text-on-emphasis;
175
181
  @apply dark:text-dark-on-emphasis;
@@ -13,7 +13,7 @@
13
13
  <a
14
14
  data-testid="truncate-expand"
15
15
  href="#"
16
- @click.prevent="toggle">
16
+ @click.stop.prevent="toggle">
17
17
  {{ expand ? showLessText : showMoreText }}
18
18
  </a>
19
19
  </template>
@@ -4,7 +4,7 @@ declare const _default: import("vue-demi").DefineComponent<{
4
4
  default: string;
5
5
  };
6
6
  length: {
7
- type: (NumberConstructor | StringConstructor)[];
7
+ type: (StringConstructor | NumberConstructor)[];
8
8
  default: number;
9
9
  };
10
10
  omission: {
@@ -38,7 +38,7 @@ declare const _default: import("vue-demi").DefineComponent<{
38
38
  default: string;
39
39
  };
40
40
  length: {
41
- type: (NumberConstructor | StringConstructor)[];
41
+ type: (StringConstructor | NumberConstructor)[];
42
42
  default: number;
43
43
  };
44
44
  omission: {
@@ -0,0 +1,21 @@
1
+ import { format, Locale } from 'date-fns';
2
+ /**
3
+ * Format date using date-fns/format,
4
+ * Automatically switch local following global lang setting.
5
+ * @param date Date
6
+ * @param formatStr date format
7
+ */
8
+ export declare function formatDate(...args: Parameters<typeof format>): string;
9
+ /**
10
+ * Install locale pack
11
+ * @param name Language name, ex: `fr`
12
+ * @param locale Language Pack Object
13
+ */
14
+ export declare function installLocale(name: string, locale: Locale): void;
15
+ /**
16
+ * Get locale pack
17
+ * @param name language name, ex: 'fr'
18
+ */
19
+ export declare function getLocale(name?: "id" | "en" | (string & {
20
+ _?: undefined;
21
+ })): any;
@@ -0,0 +1,15 @@
1
+ import id from "date-fns/locale/id/index";
2
+ import en from "date-fns/locale/en-US/index";
3
+ import { getLang } from "../global/store.mjs";
4
+ import { format } from "date-fns";
5
+ import defu from "defu";
6
+ const localePacks = { en, id };
7
+ export function formatDate(...args) {
8
+ return format(args[0], args[1], defu(args[2], { locale: getLocale() }));
9
+ }
10
+ export function installLocale(name, locale) {
11
+ localePacks[name] = locale;
12
+ }
13
+ export function getLocale(name = getLang()) {
14
+ return localePacks[name];
15
+ }
@@ -11,7 +11,7 @@ export function findAllChildren(vnodes, ...names) {
11
11
  const vnode = scan.shift();
12
12
  if (vnode.type === Fragment && Array.isArray(vnode.children))
13
13
  scan.push(...vnode.children);
14
- else if (vnode.type && names.includes(vnode.type.name))
14
+ else if (names[0] === "*" || vnode.type && names.includes(vnode.type.name))
15
15
  result.push(vnode);
16
16
  }
17
17
  return result;
@@ -27,3 +27,4 @@ export type { PdfHelipadResult, } from '../components/pdf-helipad';
27
27
  export { useStep, } from '../components/steps';
28
28
  export { defineAccordion, } from '../components/accordion';
29
29
  export { useVModel, } from '../components/input';
30
+ export { installLocale, formatDate, } from '../components/utils/date';
@@ -94,3 +94,7 @@ export {
94
94
  export {
95
95
  useVModel
96
96
  } from "../components/input";
97
+ export {
98
+ installLocale,
99
+ formatDate
100
+ } from "../components/utils/date";
package/dist/module.json CHANGED
@@ -4,5 +4,5 @@
4
4
  "compatibility": {
5
5
  "nuxt": ">=3.0.0"
6
6
  },
7
- "version": "0.21.0"
7
+ "version": "0.23.0"
8
8
  }
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@privyid/persona",
3
3
  "description": "Persona core package",
4
- "version": "0.21.0",
4
+ "version": "0.23.0",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "url": "https://github.com/privy-open-source/design-system.git",
@@ -58,31 +58,31 @@
58
58
  "dev:prepare": "nuxt-module-build --stub && nuxi prepare playground"
59
59
  },
60
60
  "dependencies": {
61
- "@floating-ui/dom": "1.5.1",
61
+ "@floating-ui/dom": "1.5.3",
62
62
  "@juggle/resize-observer": "3.4.0",
63
- "@nuxt/kit": "3.7.1",
63
+ "@nuxt/kit": "3.7.4",
64
64
  "@splidejs/splide": "4.1.4",
65
- "@testing-library/dom": "9.3.1",
66
- "@testing-library/user-event": "14.4.3",
65
+ "@testing-library/dom": "9.3.3",
66
+ "@testing-library/user-event": "14.5.1",
67
67
  "@vueuse/core": "10.3.0",
68
68
  "@vueuse/math": "10.3.0",
69
69
  "@zxing/browser": "0.1.4",
70
70
  "@zxing/library": "0.20.0",
71
- "chart.js": "4.3.3",
71
+ "chart.js": "4.4.0",
72
72
  "core-js": "3",
73
73
  "date-fns": "2.30.0",
74
74
  "defu": "6.1.2",
75
75
  "fast-equals": "^5.0.0",
76
76
  "fuse.js": "6.6.2",
77
- "interactjs": "1.10.18",
77
+ "interactjs": "1.10.19",
78
78
  "lodash-es": "4.17.21",
79
- "marked": "5.0.0",
79
+ "marked": "5.1.2",
80
80
  "nanodelay": "2.0.2",
81
- "pdfjs-dist": "3.2.146",
82
- "sanitize-html": "2.8.1",
81
+ "pdfjs-dist": "3.11.174",
82
+ "sanitize-html": "2.11.0",
83
83
  "scroll-into-view": "1.16.2",
84
84
  "tabbable": "6.2.0",
85
- "vue-collapsed": "1.2.7",
85
+ "vue-collapsed": "1.2.8",
86
86
  "vue-demi": "0.14.6",
87
87
  "vuedraggable": "next",
88
88
  "webfontloader": "1.6.28",
@@ -92,8 +92,8 @@
92
92
  "extends @privyid/browserslist-config"
93
93
  ],
94
94
  "peerDependencies": {
95
- "@privyid/browserslist-config": "^0.21.0",
96
- "@privyid/tailwind-preset": "^0.21.0",
95
+ "@privyid/browserslist-config": "^0.23.0",
96
+ "@privyid/tailwind-preset": "^0.23.0",
97
97
  "postcss-custom-properties": "^12.1.11 || ^13.0.0",
98
98
  "postcss-hexrgba": "^2.1.0",
99
99
  "postcss-lighten-darken": "^0.9.0",
@@ -102,13 +102,13 @@
102
102
  },
103
103
  "devDependencies": {
104
104
  "@nuxt/module-builder": "^0.5.0",
105
- "@nuxt/schema": "3.7.1",
105
+ "@nuxt/schema": "3.7.4",
106
106
  "@nuxtjs/tailwindcss": "^6.2.0",
107
- "@privyid/browserslist-config": "^0.21.0",
108
- "@privyid/tailwind-preset": "^0.21.0",
107
+ "@privyid/browserslist-config": "^0.23.0",
108
+ "@privyid/tailwind-preset": "^0.23.0",
109
109
  "@types/sanitize-html": "^2",
110
110
  "browserslist-to-esbuild": "^1.2.0",
111
- "nuxt": "3.7.1",
111
+ "nuxt": "3.7.4",
112
112
  "postcss-custom-properties": "^13.0.0",
113
113
  "postcss-hexrgba": "^2.1.0",
114
114
  "postcss-lighten-darken": "^0.9.0",