@skdx/vue-blocks 0.1.0 → 0.35.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 (241) hide show
  1. package/dist/chat-composer/ChatComposer.vue.cjs +1 -0
  2. package/dist/chat-composer/ChatComposer.vue.d.cts +104 -0
  3. package/dist/chat-composer/ChatComposer.vue.d.ts +104 -0
  4. package/dist/chat-composer/ChatComposer.vue.js +1 -0
  5. package/dist/chat-composer/ChatComposer.vue_vue_type_script_setup_true_lang.cjs +1 -0
  6. package/dist/chat-composer/ChatComposer.vue_vue_type_script_setup_true_lang.js +1 -0
  7. package/dist/chat-composer/index.cjs +1 -0
  8. package/dist/chat-composer/index.d.cts +2 -0
  9. package/dist/chat-composer/index.d.ts +2 -0
  10. package/dist/chat-composer/index.js +1 -0
  11. package/dist/chat-composer/types.d.cts +7 -0
  12. package/dist/chat-composer/types.d.ts +7 -0
  13. package/dist/chat-message/ChatMessage.vue.cjs +1 -0
  14. package/dist/chat-message/ChatMessage.vue.d.cts +73 -0
  15. package/dist/chat-message/ChatMessage.vue.d.ts +73 -0
  16. package/dist/chat-message/ChatMessage.vue.js +1 -0
  17. package/dist/chat-message/ChatMessage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  18. package/dist/chat-message/ChatMessage.vue_vue_type_script_setup_true_lang.js +1 -0
  19. package/dist/chat-message/index.cjs +1 -0
  20. package/dist/chat-message/index.d.cts +1 -0
  21. package/dist/chat-message/index.d.ts +1 -0
  22. package/dist/chat-message/index.js +1 -0
  23. package/dist/chat-message/types.d.cts +0 -0
  24. package/dist/chat-message/types.d.ts +0 -0
  25. package/dist/comment/Comment.vue.cjs +1 -0
  26. package/dist/comment/Comment.vue.d.cts +65 -0
  27. package/dist/comment/Comment.vue.d.ts +65 -0
  28. package/dist/comment/Comment.vue.js +1 -0
  29. package/dist/comment/Comment.vue_vue_type_script_setup_true_lang.cjs +1 -0
  30. package/dist/comment/Comment.vue_vue_type_script_setup_true_lang.js +1 -0
  31. package/dist/comment/index.cjs +1 -0
  32. package/dist/comment/index.d.cts +1 -0
  33. package/dist/comment/index.d.ts +1 -0
  34. package/dist/comment/index.js +1 -0
  35. package/dist/comment/types.d.cts +0 -0
  36. package/dist/comment/types.d.ts +0 -0
  37. package/dist/comment-thread/CommentThread.vue.cjs +1 -0
  38. package/dist/comment-thread/CommentThread.vue.d.cts +65 -0
  39. package/dist/comment-thread/CommentThread.vue.d.ts +65 -0
  40. package/dist/comment-thread/CommentThread.vue.js +1 -0
  41. package/dist/comment-thread/CommentThread.vue_vue_type_script_setup_true_lang.cjs +1 -0
  42. package/dist/comment-thread/CommentThread.vue_vue_type_script_setup_true_lang.js +1 -0
  43. package/dist/comment-thread/index.cjs +1 -0
  44. package/dist/comment-thread/index.d.cts +1 -0
  45. package/dist/comment-thread/index.d.ts +1 -0
  46. package/dist/comment-thread/index.js +1 -0
  47. package/dist/comment-thread/types.d.cts +0 -0
  48. package/dist/comment-thread/types.d.ts +0 -0
  49. package/dist/confirm-dialog/ConfirmDialog.vue.cjs +1 -0
  50. package/dist/confirm-dialog/ConfirmDialog.vue.d.cts +114 -0
  51. package/dist/confirm-dialog/ConfirmDialog.vue.d.ts +114 -0
  52. package/dist/confirm-dialog/ConfirmDialog.vue.js +1 -0
  53. package/dist/confirm-dialog/ConfirmDialog.vue_vue_type_script_setup_true_lang.cjs +1 -0
  54. package/dist/confirm-dialog/ConfirmDialog.vue_vue_type_script_setup_true_lang.js +1 -0
  55. package/dist/confirm-dialog/index.cjs +1 -0
  56. package/dist/confirm-dialog/index.d.cts +2 -0
  57. package/dist/confirm-dialog/index.d.ts +2 -0
  58. package/dist/confirm-dialog/index.js +1 -0
  59. package/dist/confirm-dialog/types.d.cts +2 -0
  60. package/dist/confirm-dialog/types.d.ts +2 -0
  61. package/dist/conversation-list/ConversationList.vue.cjs +1 -0
  62. package/dist/conversation-list/ConversationList.vue.d.cts +86 -0
  63. package/dist/conversation-list/ConversationList.vue.d.ts +86 -0
  64. package/dist/conversation-list/ConversationList.vue.js +1 -0
  65. package/dist/conversation-list/ConversationList.vue_vue_type_script_setup_true_lang.cjs +1 -0
  66. package/dist/conversation-list/ConversationList.vue_vue_type_script_setup_true_lang.js +1 -0
  67. package/dist/conversation-list/index.cjs +1 -0
  68. package/dist/conversation-list/index.d.cts +2 -0
  69. package/dist/conversation-list/index.d.ts +2 -0
  70. package/dist/conversation-list/index.js +1 -0
  71. package/dist/conversation-list/types.d.cts +38 -0
  72. package/dist/conversation-list/types.d.ts +38 -0
  73. package/dist/dashboard-layout/DashboardNavList.vue_vue_type_script_setup_true_lang.cjs +1 -1
  74. package/dist/dashboard-layout/DashboardNavList.vue_vue_type_script_setup_true_lang.js +1 -1
  75. package/dist/empty-state/EmptyState.vue.cjs +1 -0
  76. package/dist/empty-state/EmptyState.vue.d.cts +57 -0
  77. package/dist/empty-state/EmptyState.vue.d.ts +57 -0
  78. package/dist/empty-state/EmptyState.vue.js +1 -0
  79. package/dist/empty-state/EmptyState.vue_vue_type_script_setup_true_lang.cjs +1 -0
  80. package/dist/empty-state/EmptyState.vue_vue_type_script_setup_true_lang.js +1 -0
  81. package/dist/empty-state/index.cjs +1 -0
  82. package/dist/empty-state/index.d.cts +2 -0
  83. package/dist/empty-state/index.d.ts +2 -0
  84. package/dist/empty-state/index.js +1 -0
  85. package/dist/empty-state/types.d.cts +6 -0
  86. package/dist/empty-state/types.d.ts +6 -0
  87. package/dist/filter-bar/FilterBar.vue.cjs +1 -0
  88. package/dist/filter-bar/FilterBar.vue.d.cts +97 -0
  89. package/dist/filter-bar/FilterBar.vue.d.ts +97 -0
  90. package/dist/filter-bar/FilterBar.vue.js +1 -0
  91. package/dist/filter-bar/FilterBar.vue_vue_type_script_setup_true_lang.cjs +1 -0
  92. package/dist/filter-bar/FilterBar.vue_vue_type_script_setup_true_lang.js +1 -0
  93. package/dist/filter-bar/index.cjs +1 -0
  94. package/dist/filter-bar/index.d.cts +2 -0
  95. package/dist/filter-bar/index.d.ts +2 -0
  96. package/dist/filter-bar/index.js +1 -0
  97. package/dist/filter-bar/types.d.cts +7 -0
  98. package/dist/filter-bar/types.d.ts +7 -0
  99. package/dist/forgot-password-page/ForgotPasswordPage.vue.cjs +1 -0
  100. package/dist/forgot-password-page/ForgotPasswordPage.vue.d.cts +76 -0
  101. package/dist/forgot-password-page/ForgotPasswordPage.vue.d.ts +76 -0
  102. package/dist/forgot-password-page/ForgotPasswordPage.vue.js +1 -0
  103. package/dist/forgot-password-page/ForgotPasswordPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  104. package/dist/forgot-password-page/ForgotPasswordPage.vue_vue_type_script_setup_true_lang.js +1 -0
  105. package/dist/forgot-password-page/index.cjs +1 -0
  106. package/dist/forgot-password-page/index.d.cts +2 -0
  107. package/dist/forgot-password-page/index.d.ts +2 -0
  108. package/dist/forgot-password-page/index.js +1 -0
  109. package/dist/forgot-password-page/types.d.cts +5 -0
  110. package/dist/forgot-password-page/types.d.ts +5 -0
  111. package/dist/form-section/FormSection.vue.cjs +1 -0
  112. package/dist/form-section/FormSection.vue.d.cts +49 -0
  113. package/dist/form-section/FormSection.vue.d.ts +49 -0
  114. package/dist/form-section/FormSection.vue.js +1 -0
  115. package/dist/form-section/FormSection.vue_vue_type_script_setup_true_lang.cjs +1 -0
  116. package/dist/form-section/FormSection.vue_vue_type_script_setup_true_lang.js +1 -0
  117. package/dist/form-section/index.cjs +1 -0
  118. package/dist/form-section/index.d.cts +2 -0
  119. package/dist/form-section/index.d.ts +2 -0
  120. package/dist/form-section/index.js +1 -0
  121. package/dist/form-section/types.d.cts +2 -0
  122. package/dist/form-section/types.d.ts +2 -0
  123. package/dist/index.cjs +1 -1
  124. package/dist/index.d.cts +19 -0
  125. package/dist/index.d.ts +19 -0
  126. package/dist/index.js +1 -1
  127. package/dist/notification-center/NotificationCenter.vue.cjs +1 -0
  128. package/dist/notification-center/NotificationCenter.vue.d.cts +111 -0
  129. package/dist/notification-center/NotificationCenter.vue.d.ts +111 -0
  130. package/dist/notification-center/NotificationCenter.vue.js +1 -0
  131. package/dist/notification-center/NotificationCenter.vue_vue_type_script_setup_true_lang.cjs +1 -0
  132. package/dist/notification-center/NotificationCenter.vue_vue_type_script_setup_true_lang.js +1 -0
  133. package/dist/notification-center/index.cjs +1 -0
  134. package/dist/notification-center/index.d.cts +2 -0
  135. package/dist/notification-center/index.d.ts +2 -0
  136. package/dist/notification-center/index.js +1 -0
  137. package/dist/notification-center/types.d.cts +23 -0
  138. package/dist/notification-center/types.d.ts +23 -0
  139. package/dist/onboarding-checklist/OnboardingChecklist.vue.cjs +1 -0
  140. package/dist/onboarding-checklist/OnboardingChecklist.vue.d.cts +59 -0
  141. package/dist/onboarding-checklist/OnboardingChecklist.vue.d.ts +59 -0
  142. package/dist/onboarding-checklist/OnboardingChecklist.vue.js +1 -0
  143. package/dist/onboarding-checklist/OnboardingChecklist.vue_vue_type_script_setup_true_lang.cjs +1 -0
  144. package/dist/onboarding-checklist/OnboardingChecklist.vue_vue_type_script_setup_true_lang.js +1 -0
  145. package/dist/onboarding-checklist/index.cjs +1 -0
  146. package/dist/onboarding-checklist/index.d.cts +3 -0
  147. package/dist/onboarding-checklist/index.d.ts +3 -0
  148. package/dist/onboarding-checklist/index.js +1 -0
  149. package/dist/onboarding-checklist/types.cjs +1 -0
  150. package/dist/onboarding-checklist/types.d.cts +31 -0
  151. package/dist/onboarding-checklist/types.d.ts +31 -0
  152. package/dist/onboarding-checklist/types.js +1 -0
  153. package/dist/reset-password-page/ResetPasswordPage.vue.cjs +1 -0
  154. package/dist/reset-password-page/ResetPasswordPage.vue.d.cts +85 -0
  155. package/dist/reset-password-page/ResetPasswordPage.vue.d.ts +85 -0
  156. package/dist/reset-password-page/ResetPasswordPage.vue.js +1 -0
  157. package/dist/reset-password-page/ResetPasswordPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  158. package/dist/reset-password-page/ResetPasswordPage.vue_vue_type_script_setup_true_lang.js +1 -0
  159. package/dist/reset-password-page/index.cjs +1 -0
  160. package/dist/reset-password-page/index.d.cts +2 -0
  161. package/dist/reset-password-page/index.d.ts +2 -0
  162. package/dist/reset-password-page/index.js +1 -0
  163. package/dist/reset-password-page/types.d.cts +5 -0
  164. package/dist/reset-password-page/types.d.ts +5 -0
  165. package/dist/sign-up-page/SignUpPage.vue.cjs +1 -0
  166. package/dist/sign-up-page/SignUpPage.vue.d.cts +105 -0
  167. package/dist/sign-up-page/SignUpPage.vue.d.ts +105 -0
  168. package/dist/sign-up-page/SignUpPage.vue.js +1 -0
  169. package/dist/sign-up-page/SignUpPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  170. package/dist/sign-up-page/SignUpPage.vue_vue_type_script_setup_true_lang.js +1 -0
  171. package/dist/sign-up-page/index.cjs +1 -0
  172. package/dist/sign-up-page/index.d.cts +2 -0
  173. package/dist/sign-up-page/index.d.ts +2 -0
  174. package/dist/sign-up-page/index.js +1 -0
  175. package/dist/sign-up-page/types.d.cts +25 -0
  176. package/dist/sign-up-page/types.d.ts +25 -0
  177. package/dist/stat-card/StatCard.vue.cjs +1 -0
  178. package/dist/stat-card/StatCard.vue.d.cts +80 -0
  179. package/dist/stat-card/StatCard.vue.d.ts +80 -0
  180. package/dist/stat-card/StatCard.vue.js +1 -0
  181. package/dist/stat-card/StatCard.vue_vue_type_script_setup_true_lang.cjs +1 -0
  182. package/dist/stat-card/StatCard.vue_vue_type_script_setup_true_lang.js +1 -0
  183. package/dist/stat-card/index.cjs +1 -0
  184. package/dist/stat-card/index.d.cts +2 -0
  185. package/dist/stat-card/index.d.ts +2 -0
  186. package/dist/stat-card/index.js +1 -0
  187. package/dist/stat-card/types.d.cts +4 -0
  188. package/dist/stat-card/types.d.ts +4 -0
  189. package/dist/usage-card/UsageCard.vue.cjs +1 -0
  190. package/dist/usage-card/UsageCard.vue.d.cts +66 -0
  191. package/dist/usage-card/UsageCard.vue.d.ts +66 -0
  192. package/dist/usage-card/UsageCard.vue.js +1 -0
  193. package/dist/usage-card/UsageCard.vue_vue_type_script_setup_true_lang.cjs +1 -0
  194. package/dist/usage-card/UsageCard.vue_vue_type_script_setup_true_lang.js +1 -0
  195. package/dist/usage-card/index.cjs +1 -0
  196. package/dist/usage-card/index.d.cts +2 -0
  197. package/dist/usage-card/index.d.ts +2 -0
  198. package/dist/usage-card/index.js +1 -0
  199. package/dist/usage-card/types.d.cts +2 -0
  200. package/dist/usage-card/types.d.ts +2 -0
  201. package/dist/usage-card/usage.cjs +1 -0
  202. package/dist/usage-card/usage.d.cts +18 -0
  203. package/dist/usage-card/usage.d.ts +18 -0
  204. package/dist/usage-card/usage.js +1 -0
  205. package/dist/user-menu/UserMenu.vue.cjs +1 -0
  206. package/dist/user-menu/UserMenu.vue.d.cts +97 -0
  207. package/dist/user-menu/UserMenu.vue.d.ts +97 -0
  208. package/dist/user-menu/UserMenu.vue.js +1 -0
  209. package/dist/user-menu/UserMenu.vue_vue_type_script_setup_true_lang.cjs +1 -0
  210. package/dist/user-menu/UserMenu.vue_vue_type_script_setup_true_lang.js +1 -0
  211. package/dist/user-menu/index.cjs +1 -0
  212. package/dist/user-menu/index.d.cts +2 -0
  213. package/dist/user-menu/index.d.ts +2 -0
  214. package/dist/user-menu/index.js +1 -0
  215. package/dist/user-menu/types.d.cts +2 -0
  216. package/dist/user-menu/types.d.ts +2 -0
  217. package/dist/verification-page/VerificationPage.vue.cjs +1 -0
  218. package/dist/verification-page/VerificationPage.vue.d.cts +112 -0
  219. package/dist/verification-page/VerificationPage.vue.d.ts +112 -0
  220. package/dist/verification-page/VerificationPage.vue.js +1 -0
  221. package/dist/verification-page/VerificationPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  222. package/dist/verification-page/VerificationPage.vue_vue_type_script_setup_true_lang.js +1 -0
  223. package/dist/verification-page/index.cjs +1 -0
  224. package/dist/verification-page/index.d.cts +2 -0
  225. package/dist/verification-page/index.d.ts +2 -0
  226. package/dist/verification-page/index.js +1 -0
  227. package/dist/verification-page/types.d.cts +5 -0
  228. package/dist/verification-page/types.d.ts +5 -0
  229. package/dist/workspace-switcher/WorkspaceSwitcher.vue.cjs +1 -0
  230. package/dist/workspace-switcher/WorkspaceSwitcher.vue.d.cts +135 -0
  231. package/dist/workspace-switcher/WorkspaceSwitcher.vue.d.ts +135 -0
  232. package/dist/workspace-switcher/WorkspaceSwitcher.vue.js +1 -0
  233. package/dist/workspace-switcher/WorkspaceSwitcher.vue_vue_type_script_setup_true_lang.cjs +1 -0
  234. package/dist/workspace-switcher/WorkspaceSwitcher.vue_vue_type_script_setup_true_lang.js +1 -0
  235. package/dist/workspace-switcher/index.cjs +1 -0
  236. package/dist/workspace-switcher/index.d.cts +2 -0
  237. package/dist/workspace-switcher/index.d.ts +2 -0
  238. package/dist/workspace-switcher/index.js +1 -0
  239. package/dist/workspace-switcher/types.d.cts +22 -0
  240. package/dist/workspace-switcher/types.d.ts +22 -0
  241. package/package.json +196 -6
@@ -0,0 +1,23 @@
1
+ import type { DateInput } from '@skdx/vue';
2
+ /** One entry of a `SkdxNotificationCenter`'s `notifications` — a single notification. */
3
+ export interface NotificationCenterItem {
4
+ /** Identifier reported back through every event and used as the list item's key. */
5
+ id: string;
6
+ /** Headline text rendered as the notification's title. */
7
+ title: string;
8
+ /**
9
+ * Supporting copy rendered below the title.
10
+ * @default undefined — no description renders for this item.
11
+ */
12
+ description?: string | undefined;
13
+ /**
14
+ * Instant the notification occurred, rendered into a derived Time.
15
+ * @default undefined — no timestamp renders for this item.
16
+ */
17
+ timestamp?: DateInput | undefined;
18
+ /**
19
+ * Whether the notification has been read, driving data-read and the read-toggle label.
20
+ * @default undefined — treated as unread.
21
+ */
22
+ read?: boolean | undefined;
23
+ }
@@ -0,0 +1,23 @@
1
+ import type { DateInput } from '@skdx/vue';
2
+ /** One entry of a `SkdxNotificationCenter`'s `notifications` — a single notification. */
3
+ export interface NotificationCenterItem {
4
+ /** Identifier reported back through every event and used as the list item's key. */
5
+ id: string;
6
+ /** Headline text rendered as the notification's title. */
7
+ title: string;
8
+ /**
9
+ * Supporting copy rendered below the title.
10
+ * @default undefined — no description renders for this item.
11
+ */
12
+ description?: string | undefined;
13
+ /**
14
+ * Instant the notification occurred, rendered into a derived Time.
15
+ * @default undefined — no timestamp renders for this item.
16
+ */
17
+ timestamp?: DateInput | undefined;
18
+ /**
19
+ * Whether the notification has been read, driving data-read and the read-toggle label.
20
+ * @default undefined — treated as unread.
21
+ */
22
+ read?: boolean | undefined;
23
+ }
@@ -0,0 +1 @@
1
+ const e=require("./OnboardingChecklist.vue_vue_type_script_setup_true_lang.cjs");var t=e.default;exports.default=t;
@@ -0,0 +1,59 @@
1
+ import { type OnboardingChecklistItem } from './types.cjs';
2
+ /**
3
+ * Progress checklist block: a header naming the checklist with an overall Progress meter, above an ordered list of tasks each carrying its own completion state and an optional action.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxOnboardingChecklist
8
+ * title="Get started"
9
+ * :items="[
10
+ * { id: 'profile', label: 'Complete your profile', state: 'complete' },
11
+ * { id: 'invite', label: 'Invite a teammate', state: 'active', actionLabel: 'Invite' },
12
+ * ]"
13
+ * @action="(item) => open(item.id)"
14
+ * />
15
+ * ```
16
+ */
17
+ type __VLS_Props = {
18
+ /** Heading text naming the checklist, rendered into a derived Heading. */
19
+ title: string;
20
+ /**
21
+ * Supporting copy rendered below the title, explaining what the checklist covers.
22
+ * @default undefined — no description region renders.
23
+ */
24
+ description?: string | undefined;
25
+ /**
26
+ * Outline level of the derived title heading, from 1 down to 6.
27
+ * @default 2
28
+ */
29
+ headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
30
+ /** The tasks to complete, in render order. */
31
+ items: readonly OnboardingChecklistItem[];
32
+ /**
33
+ * Formats the progress meter's readout from the completed and total item counts.
34
+ * @default defaultGetProgressLabel — reads "1/3".
35
+ */
36
+ getProgressLabel?: (complete: number, total: number) => string;
37
+ /**
38
+ * Visually hidden text appended after a completed item's title, announcing its completion.
39
+ * @default 'Completed'
40
+ */
41
+ completeLabel?: string;
42
+ /**
43
+ * Text rendered beside an optional item's title.
44
+ * @default 'Optional'
45
+ */
46
+ optionalLabel?: string;
47
+ };
48
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
49
+ action: (item: OnboardingChecklistItem) => any;
50
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
51
+ onAction?: (item: OnboardingChecklistItem) => any;
52
+ }>, {
53
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
54
+ description: string | undefined;
55
+ getProgressLabel: (complete: number, total: number) => string;
56
+ completeLabel: string;
57
+ optionalLabel: string;
58
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
59
+ export default _default;
@@ -0,0 +1,59 @@
1
+ import { type OnboardingChecklistItem } from './types.js';
2
+ /**
3
+ * Progress checklist block: a header naming the checklist with an overall Progress meter, above an ordered list of tasks each carrying its own completion state and an optional action.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxOnboardingChecklist
8
+ * title="Get started"
9
+ * :items="[
10
+ * { id: 'profile', label: 'Complete your profile', state: 'complete' },
11
+ * { id: 'invite', label: 'Invite a teammate', state: 'active', actionLabel: 'Invite' },
12
+ * ]"
13
+ * @action="(item) => open(item.id)"
14
+ * />
15
+ * ```
16
+ */
17
+ type __VLS_Props = {
18
+ /** Heading text naming the checklist, rendered into a derived Heading. */
19
+ title: string;
20
+ /**
21
+ * Supporting copy rendered below the title, explaining what the checklist covers.
22
+ * @default undefined — no description region renders.
23
+ */
24
+ description?: string | undefined;
25
+ /**
26
+ * Outline level of the derived title heading, from 1 down to 6.
27
+ * @default 2
28
+ */
29
+ headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
30
+ /** The tasks to complete, in render order. */
31
+ items: readonly OnboardingChecklistItem[];
32
+ /**
33
+ * Formats the progress meter's readout from the completed and total item counts.
34
+ * @default defaultGetProgressLabel — reads "1/3".
35
+ */
36
+ getProgressLabel?: (complete: number, total: number) => string;
37
+ /**
38
+ * Visually hidden text appended after a completed item's title, announcing its completion.
39
+ * @default 'Completed'
40
+ */
41
+ completeLabel?: string;
42
+ /**
43
+ * Text rendered beside an optional item's title.
44
+ * @default 'Optional'
45
+ */
46
+ optionalLabel?: string;
47
+ };
48
+ declare const _default: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
49
+ action: (item: OnboardingChecklistItem) => any;
50
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
51
+ onAction?: (item: OnboardingChecklistItem) => any;
52
+ }>, {
53
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
54
+ description: string | undefined;
55
+ getProgressLabel: (complete: number, total: number) => string;
56
+ completeLabel: string;
57
+ optionalLabel: string;
58
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
59
+ export default _default;
@@ -0,0 +1 @@
1
+ import e from"./OnboardingChecklist.vue_vue_type_script_setup_true_lang.js";var t=e;export{t as default};
@@ -0,0 +1 @@
1
+ const r=require("../internal/part.cjs"),f=require("./types.cjs");let e=require("vue"),l=require("@skdx/vue");var m=["aria-labelledby"],b=["data-state","aria-current"],x=(0,e.defineComponent)({__name:"OnboardingChecklist",props:{title:{},description:{default:void 0},headingLevel:{default:2},items:{},getProgressLabel:{type:Function,default:f.defaultGetProgressLabel},completeLabel:{default:"Completed"},optionalLabel:{default:"Optional"}},emits:["action"],setup(a,{emit:d}){const i=a,s=d,c=(0,e.useId)(),u=(0,e.computed)(()=>`h${i.headingLevel}`),k=(0,e.computed)(()=>i.items.filter(n=>o(n)==="complete").length);function o(n){return n.state??"pending"}function p(n,g,t){return i.getProgressLabel(n,t)}return(n,g)=>((0,e.openBlock)(),(0,e.createElementBlock)("section",(0,e.mergeProps)((0,e.unref)(r.skdxPart)("onboarding-checklist","root"),{"aria-labelledby":(0,e.unref)(c)}),[(0,e.createElementVNode)("div",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(r.skdxPart)("onboarding-checklist","header"))),[(0,e.createVNode)((0,e.unref)(l.SkdxHeading),(0,e.mergeProps)({id:(0,e.unref)(c)},(0,e.unref)(r.skdxPart)("onboarding-checklist","title"),{as:u.value}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(a.title),1)]),_:1},16,["id","as"]),a.description?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(l.SkdxText),(0,e.mergeProps)({key:0,as:"p",tone:"muted"},(0,e.unref)(r.skdxPart)("onboarding-checklist","description")),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(a.description),1)]),_:1},16)):(0,e.createCommentVNode)("",!0),a.items.length>0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(l.SkdxProgress),(0,e.mergeProps)({key:1,value:k.value,max:a.items.length,"aria-labelledby":(0,e.unref)(c),"get-value-label":p},(0,e.unref)(r.skdxPart)("onboarding-checklist","progress")),null,16,["value","max","aria-labelledby"])):(0,e.createCommentVNode)("",!0)],16),(0,e.createElementVNode)("ol",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(r.skdxPart)("onboarding-checklist","list"))),[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(a.items,t=>((0,e.openBlock)(),(0,e.createElementBlock)("li",(0,e.mergeProps)({key:t.id,"data-state":o(t),"aria-current":o(t)==="active"?"step":void 0},{ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","item")),[(0,e.createElementVNode)("span",(0,e.mergeProps)({"aria-hidden":"true"},{ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","indicator")),null,16),(0,e.createElementVNode)("div",(0,e.mergeProps)({ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","body")),[(0,e.createElementVNode)("span",(0,e.mergeProps)({ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","item-title")),[(0,e.createTextVNode)((0,e.toDisplayString)(t.label)+" ",1),o(t)==="complete"?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(l.SkdxVisuallyHidden),{key:0},{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(a.completeLabel),1)]),_:1})):(0,e.createCommentVNode)("",!0)],16),t.optional?((0,e.openBlock)(),(0,e.createElementBlock)("span",(0,e.mergeProps)({key:0,ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","optional")),(0,e.toDisplayString)(a.optionalLabel),17)):(0,e.createCommentVNode)("",!0),t.description?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(l.SkdxText),(0,e.mergeProps)({key:1,as:"p",tone:"muted"},{ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","item-description")),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.description),1)]),_:2},1040)):(0,e.createCommentVNode)("",!0)],16),t.actionLabel&&o(t)!=="complete"?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(l.SkdxButton),(0,e.mergeProps)({key:0,size:"sm",variant:o(t)==="active"?"primary":"secondary",disabled:o(t)==="disabled"},{ref_for:!0},(0,e.unref)(r.skdxPart)("onboarding-checklist","action"),{onClick:h=>s("action",t)}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.actionLabel),1)]),_:2},1040,["variant","disabled","onClick"])):(0,e.createCommentVNode)("",!0)],16,b))),128))],16)],16,m))}});exports.default=x;
@@ -0,0 +1 @@
1
+ import{skdxPart as e}from"../internal/part.js";import{defaultGetProgressLabel as a}from"./types.js";import{Fragment as t,computed as i,createBlock as o,createCommentVNode as r,createElementBlock as l,createElementVNode as n,createTextVNode as s,createVNode as d,defineComponent as c,guardReactiveProps as p,mergeProps as m,normalizeProps as u,openBlock as b,renderList as f,toDisplayString as g,unref as k,useId as h,withCtx as v}from"vue";import{SkdxButton as y,SkdxHeading as _,SkdxProgress as x,SkdxText as L,SkdxVisuallyHidden as P}from"@skdx/vue";var C=["aria-labelledby"],S=["data-state","aria-current"],V=/* @__PURE__ */c({__name:"OnboardingChecklist",props:{title:{},description:{default:void 0},headingLevel:{default:2},items:{},getProgressLabel:{type:Function,default:a},completeLabel:{default:"Completed"},optionalLabel:{default:"Optional"}},emits:["action"],setup(a,{emit:c}){const V=a,B=c,N=h(),j=i(()=>`h${V.headingLevel}`),z=i(()=>V.items.filter(e=>"complete"===E(e)).length);function E(e){return e.state??"pending"}function F(e,a,t){return V.getProgressLabel(e,t)}return(i,c)=>(b(),l("section",m(k(e)("onboarding-checklist","root"),{"aria-labelledby":k(N)}),[n("div",u(p(k(e)("onboarding-checklist","header"))),[d(k(_),m({id:k(N)},k(e)("onboarding-checklist","title"),{as:j.value}),{default:v(()=>[s(g(a.title),1)]),_:1},16,["id","as"]),a.description?(b(),o(k(L),m({key:0,as:"p",tone:"muted"},k(e)("onboarding-checklist","description")),{default:v(()=>[s(g(a.description),1)]),_:1},16)):r("",!0),a.items.length>0?(b(),o(k(x),m({key:1,value:z.value,max:a.items.length,"aria-labelledby":k(N),"get-value-label":F},k(e)("onboarding-checklist","progress")),null,16,["value","max","aria-labelledby"])):r("",!0)],16),n("ol",u(p(k(e)("onboarding-checklist","list"))),[(b(!0),l(t,null,f(a.items,t=>(b(),l("li",m({key:t.id,"data-state":E(t),"aria-current":"active"===E(t)?"step":void 0},{ref_for:!0},k(e)("onboarding-checklist","item")),[n("span",m({"aria-hidden":"true"},{ref_for:!0},k(e)("onboarding-checklist","indicator")),null,16),n("div",m({ref_for:!0},k(e)("onboarding-checklist","body")),[n("span",m({ref_for:!0},k(e)("onboarding-checklist","item-title")),[s(g(t.label)+" ",1),"complete"===E(t)?(b(),o(k(P),{key:0},{default:v(()=>[s(g(a.completeLabel),1)]),_:1})):r("",!0)],16),t.optional?(b(),l("span",m({key:0,ref_for:!0},k(e)("onboarding-checklist","optional")),g(a.optionalLabel),17)):r("",!0),t.description?(b(),o(k(L),m({key:1,as:"p",tone:"muted"},{ref_for:!0},k(e)("onboarding-checklist","item-description")),{default:v(()=>[s(g(t.description),1)]),_:2},1040)):r("",!0)],16),t.actionLabel&&"complete"!==E(t)?(b(),o(k(y),m({key:0,size:"sm",variant:"active"===E(t)?"primary":"secondary",disabled:"disabled"===E(t)},{ref_for:!0},k(e)("onboarding-checklist","action"),{onClick:e=>B("action",t)}),{default:v(()=>[s(g(t.actionLabel),1)]),_:2},1040,["variant","disabled","onClick"])):r("",!0)],16,S))),128))],16)],16,C))}});export{V as default};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./types.cjs"),r=require("./OnboardingChecklist.vue.cjs");exports.SkdxOnboardingChecklist=r.default;exports.defaultGetProgressLabel=e.defaultGetProgressLabel;
@@ -0,0 +1,3 @@
1
+ export { default as SkdxOnboardingChecklist } from './OnboardingChecklist.vue.cjs';
2
+ export { defaultGetProgressLabel } from './types.cjs';
3
+ export type { OnboardingChecklistItem, OnboardingChecklistItemState } from './types.cjs';
@@ -0,0 +1,3 @@
1
+ export { default as SkdxOnboardingChecklist } from './OnboardingChecklist.vue.js';
2
+ export { defaultGetProgressLabel } from './types.js';
3
+ export type { OnboardingChecklistItem, OnboardingChecklistItemState } from './types.js';
@@ -0,0 +1 @@
1
+ import{defaultGetProgressLabel as e}from"./types.js";import s from"./OnboardingChecklist.vue.js";export{s as SkdxOnboardingChecklist,e as defaultGetProgressLabel};
@@ -0,0 +1 @@
1
+ function t(e,r){return`${e}/${r}`}exports.defaultGetProgressLabel=t;
@@ -0,0 +1,31 @@
1
+ /** Completion state of one `OnboardingChecklistItem`, mirrored to `data-state`. */
2
+ export type OnboardingChecklistItemState = 'pending' | 'active' | 'complete' | 'disabled';
3
+ /** One entry of a `SkdxOnboardingChecklist`'s `items` — a single setup, launch or configuration task. */
4
+ export interface OnboardingChecklistItem {
5
+ /** Stable identifier reported back through the `action` event. */
6
+ id: string;
7
+ /** Text naming the task, rendered as the item's title. */
8
+ label: string;
9
+ /**
10
+ * Supporting copy rendered below the label, explaining the task in more detail.
11
+ * @default undefined — no item description renders.
12
+ */
13
+ description?: string | undefined;
14
+ /**
15
+ * Completion state of the item, mirrored to data-state and driving the indicator glyph.
16
+ * @default 'pending'
17
+ */
18
+ state?: OnboardingChecklistItemState | undefined;
19
+ /**
20
+ * Marks the task as skippable, rendering the optional label beside its title.
21
+ * @default false
22
+ */
23
+ optional?: boolean | undefined;
24
+ /**
25
+ * Text of the item's action button; the button renders only alongside a non-complete state.
26
+ * @default undefined — no action button renders.
27
+ */
28
+ actionLabel?: string | undefined;
29
+ }
30
+ /** Default progress readout for a `SkdxOnboardingChecklist`, reading "1/3". */
31
+ export declare function defaultGetProgressLabel(complete: number, total: number): string;
@@ -0,0 +1,31 @@
1
+ /** Completion state of one `OnboardingChecklistItem`, mirrored to `data-state`. */
2
+ export type OnboardingChecklistItemState = 'pending' | 'active' | 'complete' | 'disabled';
3
+ /** One entry of a `SkdxOnboardingChecklist`'s `items` — a single setup, launch or configuration task. */
4
+ export interface OnboardingChecklistItem {
5
+ /** Stable identifier reported back through the `action` event. */
6
+ id: string;
7
+ /** Text naming the task, rendered as the item's title. */
8
+ label: string;
9
+ /**
10
+ * Supporting copy rendered below the label, explaining the task in more detail.
11
+ * @default undefined — no item description renders.
12
+ */
13
+ description?: string | undefined;
14
+ /**
15
+ * Completion state of the item, mirrored to data-state and driving the indicator glyph.
16
+ * @default 'pending'
17
+ */
18
+ state?: OnboardingChecklistItemState | undefined;
19
+ /**
20
+ * Marks the task as skippable, rendering the optional label beside its title.
21
+ * @default false
22
+ */
23
+ optional?: boolean | undefined;
24
+ /**
25
+ * Text of the item's action button; the button renders only alongside a non-complete state.
26
+ * @default undefined — no action button renders.
27
+ */
28
+ actionLabel?: string | undefined;
29
+ }
30
+ /** Default progress readout for a `SkdxOnboardingChecklist`, reading "1/3". */
31
+ export declare function defaultGetProgressLabel(complete: number, total: number): string;
@@ -0,0 +1 @@
1
+ function e(e,r){return`${e}/${r}`}export{e as defaultGetProgressLabel};
@@ -0,0 +1 @@
1
+ const e=require("./ResetPasswordPage.vue_vue_type_script_setup_true_lang.cjs");var t=e.default;exports.default=t;
@@ -0,0 +1,85 @@
1
+ import type { ResetPasswordDetail } from './types.cjs';
2
+ /**
3
+ * A password-change panel: a new-password field with its rules, an optional confirmation matched against it, and a `reset-password` event carrying the new password.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxResetPasswordPage
8
+ * confirm-password-label="Confirm new password"
9
+ * @reset-password="({ password }) => updatePassword(password)"
10
+ * >
11
+ * <template #requirements>At least 12 characters.</template>
12
+ * </SkdxResetPasswordPage>
13
+ * ```
14
+ */
15
+ type __VLS_Props = {
16
+ /**
17
+ * Heading text, rendered into a derived `<h1>` that names the section.
18
+ * @default 'Choose a new password'
19
+ */
20
+ title?: string;
21
+ /**
22
+ * Message rendered into a derived error Alert; the block never clears it, the consumer does.
23
+ * @default undefined — no error region renders.
24
+ */
25
+ error?: string | undefined;
26
+ /**
27
+ * Confirmation rendered into a derived success Alert that replaces the form entirely.
28
+ * @default undefined — the form renders instead.
29
+ */
30
+ success?: string | undefined;
31
+ /**
32
+ * Marks the request in flight, making the submit button busy while both fields stay editable.
33
+ * @default false
34
+ */
35
+ pending?: boolean;
36
+ /**
37
+ * Label of the field where the new password is typed.
38
+ * @default 'New password'
39
+ */
40
+ passwordLabel?: string;
41
+ /**
42
+ * Label of the confirmation field; supplying it is what turns password matching on.
43
+ * @default undefined — no confirmation field renders and no matching is done.
44
+ */
45
+ confirmPasswordLabel?: string | undefined;
46
+ /**
47
+ * Validation message pushed onto the confirmation field when the two passwords differ.
48
+ * @default 'Passwords do not match'
49
+ */
50
+ passwordMismatchMessage?: string;
51
+ /**
52
+ * Text of the form's submit button.
53
+ * @default 'Update password'
54
+ */
55
+ submitLabel?: string;
56
+ };
57
+ type __VLS_Slots = {
58
+ /** Extra fields rendered inside the form, above the submit button. */
59
+ default?(): unknown;
60
+ /** Password rules used as the new-password field's description, announced with it. */
61
+ requirements?(): unknown;
62
+ /** Navigation below the form, such as a link back to the sign-in page. */
63
+ footer?(): unknown;
64
+ };
65
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
66
+ "reset-password": (detail: ResetPasswordDetail) => any;
67
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
68
+ "onReset-password"?: (detail: ResetPasswordDetail) => any;
69
+ }>, {
70
+ title: string;
71
+ error: string | undefined;
72
+ passwordLabel: string;
73
+ submitLabel: string;
74
+ success: string | undefined;
75
+ pending: boolean;
76
+ confirmPasswordLabel: string | undefined;
77
+ passwordMismatchMessage: string;
78
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
79
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
80
+ export default _default;
81
+ type __VLS_WithSlots<T, S> = T & {
82
+ new (): {
83
+ $slots: S;
84
+ };
85
+ };
@@ -0,0 +1,85 @@
1
+ import type { ResetPasswordDetail } from './types.js';
2
+ /**
3
+ * A password-change panel: a new-password field with its rules, an optional confirmation matched against it, and a `reset-password` event carrying the new password.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxResetPasswordPage
8
+ * confirm-password-label="Confirm new password"
9
+ * @reset-password="({ password }) => updatePassword(password)"
10
+ * >
11
+ * <template #requirements>At least 12 characters.</template>
12
+ * </SkdxResetPasswordPage>
13
+ * ```
14
+ */
15
+ type __VLS_Props = {
16
+ /**
17
+ * Heading text, rendered into a derived `<h1>` that names the section.
18
+ * @default 'Choose a new password'
19
+ */
20
+ title?: string;
21
+ /**
22
+ * Message rendered into a derived error Alert; the block never clears it, the consumer does.
23
+ * @default undefined — no error region renders.
24
+ */
25
+ error?: string | undefined;
26
+ /**
27
+ * Confirmation rendered into a derived success Alert that replaces the form entirely.
28
+ * @default undefined — the form renders instead.
29
+ */
30
+ success?: string | undefined;
31
+ /**
32
+ * Marks the request in flight, making the submit button busy while both fields stay editable.
33
+ * @default false
34
+ */
35
+ pending?: boolean;
36
+ /**
37
+ * Label of the field where the new password is typed.
38
+ * @default 'New password'
39
+ */
40
+ passwordLabel?: string;
41
+ /**
42
+ * Label of the confirmation field; supplying it is what turns password matching on.
43
+ * @default undefined — no confirmation field renders and no matching is done.
44
+ */
45
+ confirmPasswordLabel?: string | undefined;
46
+ /**
47
+ * Validation message pushed onto the confirmation field when the two passwords differ.
48
+ * @default 'Passwords do not match'
49
+ */
50
+ passwordMismatchMessage?: string;
51
+ /**
52
+ * Text of the form's submit button.
53
+ * @default 'Update password'
54
+ */
55
+ submitLabel?: string;
56
+ };
57
+ type __VLS_Slots = {
58
+ /** Extra fields rendered inside the form, above the submit button. */
59
+ default?(): unknown;
60
+ /** Password rules used as the new-password field's description, announced with it. */
61
+ requirements?(): unknown;
62
+ /** Navigation below the form, such as a link back to the sign-in page. */
63
+ footer?(): unknown;
64
+ };
65
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
66
+ "reset-password": (detail: ResetPasswordDetail) => any;
67
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
68
+ "onReset-password"?: (detail: ResetPasswordDetail) => any;
69
+ }>, {
70
+ title: string;
71
+ error: string | undefined;
72
+ passwordLabel: string;
73
+ submitLabel: string;
74
+ success: string | undefined;
75
+ pending: boolean;
76
+ confirmPasswordLabel: string | undefined;
77
+ passwordMismatchMessage: string;
78
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
79
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
80
+ export default _default;
81
+ type __VLS_WithSlots<T, S> = T & {
82
+ new (): {
83
+ $slots: S;
84
+ };
85
+ };
@@ -0,0 +1 @@
1
+ import e from"./ResetPasswordPage.vue_vue_type_script_setup_true_lang.js";var t=e;export{t as default};
@@ -0,0 +1 @@
1
+ const a=require("../internal/part.cjs");let e=require("vue"),o=require("@skdx/vue"),P=require("@skdx/vue/primitives/field"),d=require("@skdx/vue/primitives/password-input");var x=["aria-labelledby"],l="confirmPassword",b=(0,e.defineComponent)({__name:"ResetPasswordPage",props:{title:{default:"Choose a new password"},error:{default:void 0},success:{default:void 0},pending:{type:Boolean,default:!1},passwordLabel:{default:"New password"},confirmPasswordLabel:{default:void 0},passwordMismatchMessage:{default:"Passwords do not match"},submitLabel:{default:"Update password"}},emits:["reset-password"],setup(t,{emit:p}){const u=t,m=p,i=(0,e.useId)();function w(r){const s=r.elements.namedItem(l);return s instanceof HTMLInputElement?s:null}function k(r){r.preventDefault();const s=r.target,c=new FormData(s).get("password"),f=typeof c=="string"?c:"",n=u.confirmPasswordLabel===void 0?null:w(s);if(n&&n.value!==f){n.setCustomValidity(u.passwordMismatchMessage),s.reportValidity();return}m("reset-password",{password:f})}function g(r){const s=r.target;s instanceof HTMLInputElement&&s.name===l&&s.setCustomValidity("")}return(r,s)=>((0,e.openBlock)(),(0,e.createElementBlock)("section",(0,e.mergeProps)((0,e.unref)(a.skdxPart)("reset-password-page","root"),{"aria-labelledby":(0,e.unref)(i)}),[(0,e.createElementVNode)("div",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(a.skdxPart)("reset-password-page","panel"))),[(0,e.createVNode)((0,e.unref)(o.SkdxHeading),(0,e.mergeProps)({id:(0,e.unref)(i)},(0,e.unref)(a.skdxPart)("reset-password-page","title"),{as:"h1"}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.title),1)]),_:1},16,["id"]),t.error?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(o.SkdxAlert),(0,e.mergeProps)({key:0},(0,e.unref)(a.skdxPart)("reset-password-page","error"),{status:"danger"}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.error),1)]),_:1},16)):(0,e.createCommentVNode)("",!0),t.success?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(o.SkdxAlert),(0,e.mergeProps)({key:1},(0,e.unref)(a.skdxPart)("reset-password-page","success"),{status:"success"}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.success),1)]),_:1},16)):((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(o.SkdxForm),(0,e.mergeProps)({key:2},(0,e.unref)(a.skdxPart)("reset-password-page","form"),{onSubmit:k,onInput:g}),{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(o.SkdxField),(0,e.mergeProps)((0,e.unref)(a.skdxPart)("reset-password-page","field"),{label:t.passwordLabel,required:""}),{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(o.SkdxPasswordInput),{name:"password",required:""},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(d.SkdxPasswordInputField),{autocomplete:"new-password"}),(0,e.createVNode)((0,e.unref)(d.SkdxPasswordInputToggle))]),_:1}),r.$slots.requirements?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(P.SkdxFieldDescription),(0,e.normalizeProps)((0,e.mergeProps)({key:0},(0,e.unref)(a.skdxPart)("reset-password-page","requirements"))),{default:(0,e.withCtx)(()=>[(0,e.renderSlot)(r.$slots,"requirements")]),_:3},16)):(0,e.createCommentVNode)("",!0)]),_:3},16,["label"]),t.confirmPasswordLabel!==void 0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(o.SkdxField),(0,e.mergeProps)({key:0},(0,e.unref)(a.skdxPart)("reset-password-page","field"),{label:t.confirmPasswordLabel,required:""}),{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(o.SkdxPasswordInput),{name:l,required:""},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(d.SkdxPasswordInputField),{autocomplete:"new-password"}),(0,e.createVNode)((0,e.unref)(d.SkdxPasswordInputToggle))]),_:1})]),_:1},16,["label"])):(0,e.createCommentVNode)("",!0),(0,e.renderSlot)(r.$slots,"default"),(0,e.createVNode)((0,e.unref)(o.SkdxButton),(0,e.mergeProps)((0,e.unref)(a.skdxPart)("reset-password-page","submit"),{type:"submit",loading:t.pending??!1,disabled:t.pending??!1}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.submitLabel),1)]),_:1},16,["loading","disabled"])]),_:3},16)),r.$slots.footer?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.normalizeProps)((0,e.mergeProps)({key:3},(0,e.unref)(a.skdxPart)("reset-password-page","footer"))),[(0,e.renderSlot)(r.$slots,"footer")],16)):(0,e.createCommentVNode)("",!0)],16)],16,x))}});exports.default=b;
@@ -0,0 +1 @@
1
+ import{skdxPart as e}from"../internal/part.js";import{createBlock as s,createCommentVNode as a,createElementBlock as t,createElementVNode as r,createTextVNode as o,createVNode as d,defineComponent as l,guardReactiveProps as i,mergeProps as n,normalizeProps as p,openBlock as u,renderSlot as m,toDisplayString as f,unref as w,useId as c,withCtx as g}from"vue";import{SkdxAlert as b,SkdxButton as k,SkdxField as v,SkdxForm as x,SkdxHeading as y,SkdxPasswordInput as P}from"@skdx/vue";import{SkdxFieldDescription as S}from"@skdx/vue/primitives/field";import{SkdxPasswordInputField as _,SkdxPasswordInputToggle as L}from"@skdx/vue/primitives/password-input";var I=["aria-labelledby"],q="confirmPassword",V=/* @__PURE__ */l({__name:"ResetPasswordPage",props:{title:{default:"Choose a new password"},error:{default:void 0},success:{default:void 0},pending:{type:Boolean,default:!1},passwordLabel:{default:"New password"},confirmPasswordLabel:{default:void 0},passwordMismatchMessage:{default:"Passwords do not match"},submitLabel:{default:"Update password"}},emits:["reset-password"],setup(l,{emit:V}){const h=l,C=V,M=c();function B(e){e.preventDefault();const s=e.target,a=new FormData(s).get("password"),t="string"==typeof a?a:"",r=void 0===h.confirmPasswordLabel?null:function(e){const s=e.elements.namedItem(q);return s instanceof HTMLInputElement?s:null}(s);if(r&&r.value!==t)return r.setCustomValidity(h.passwordMismatchMessage),void s.reportValidity();C("reset-password",{password:t})}function F(e){const s=e.target;s instanceof HTMLInputElement&&s.name===q&&s.setCustomValidity("")}return(c,V)=>(u(),t("section",n(w(e)("reset-password-page","root"),{"aria-labelledby":w(M)}),[r("div",p(i(w(e)("reset-password-page","panel"))),[d(w(y),n({id:w(M)},w(e)("reset-password-page","title"),{as:"h1"}),{default:g(()=>[o(f(l.title),1)]),_:1},16,["id"]),l.error?(u(),s(w(b),n({key:0},w(e)("reset-password-page","error"),{status:"danger"}),{default:g(()=>[o(f(l.error),1)]),_:1},16)):a("",!0),l.success?(u(),s(w(b),n({key:1},w(e)("reset-password-page","success"),{status:"success"}),{default:g(()=>[o(f(l.success),1)]),_:1},16)):(u(),s(w(x),n({key:2},w(e)("reset-password-page","form"),{onSubmit:B,onInput:F}),{default:g(()=>[d(w(v),n(w(e)("reset-password-page","field"),{label:l.passwordLabel,required:""}),{default:g(()=>[d(w(P),{name:"password",required:""},{default:g(()=>[d(w(_),{autocomplete:"new-password"}),d(w(L))]),_:1}),c.$slots.requirements?(u(),s(w(S),p(n({key:0},w(e)("reset-password-page","requirements"))),{default:g(()=>[m(c.$slots,"requirements")]),_:3},16)):a("",!0)]),_:3},16,["label"]),void 0!==l.confirmPasswordLabel?(u(),s(w(v),n({key:0},w(e)("reset-password-page","field"),{label:l.confirmPasswordLabel,required:""}),{default:g(()=>[d(w(P),{name:q,required:""},{default:g(()=>[d(w(_),{autocomplete:"new-password"}),d(w(L))]),_:1})]),_:1},16,["label"])):a("",!0),m(c.$slots,"default"),d(w(k),n(w(e)("reset-password-page","submit"),{type:"submit",loading:l.pending??!1,disabled:l.pending??!1}),{default:g(()=>[o(f(l.submitLabel),1)]),_:1},16,["loading","disabled"])]),_:3},16)),c.$slots.footer?(u(),t("div",p(n({key:3},w(e)("reset-password-page","footer"))),[m(c.$slots,"footer")],16)):a("",!0)],16)],16,I))}});export{V as default};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ResetPasswordPage.vue.cjs");exports.SkdxResetPasswordPage=e.default;
@@ -0,0 +1,2 @@
1
+ export { default as SkdxResetPasswordPage } from './ResetPasswordPage.vue.cjs';
2
+ export type { ResetPasswordDetail } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ export { default as SkdxResetPasswordPage } from './ResetPasswordPage.vue.js';
2
+ export type { ResetPasswordDetail } from './types.js';
@@ -0,0 +1 @@
1
+ import e from"./ResetPasswordPage.vue.js";export{e as SkdxResetPasswordPage};
@@ -0,0 +1,5 @@
1
+ /** The payload a `SkdxResetPasswordPage` reports when its form is submitted. */
2
+ export interface ResetPasswordDetail {
3
+ /** The new password, already matched against the confirmation when one renders. */
4
+ password: string;
5
+ }
@@ -0,0 +1,5 @@
1
+ /** The payload a `SkdxResetPasswordPage` reports when its form is submitted. */
2
+ export interface ResetPasswordDetail {
3
+ /** The new password, already matched against the confirmation when one renders. */
4
+ password: string;
5
+ }
@@ -0,0 +1 @@
1
+ const e=require("./SignUpPage.vue_vue_type_script_setup_true_lang.cjs");var u=e.default;exports.default=u;
@@ -0,0 +1,105 @@
1
+ import { type SignInProvider } from '../sign-in-page/types.cjs';
2
+ import type { SignUpDetail } from './types.cjs';
3
+ /**
4
+ * A registration panel: one button per third-party provider and a credentials form — name, email, password, confirmation and terms — reporting through one `sign-up` event.
5
+ *
6
+ * @example
7
+ * ```vue
8
+ * <SkdxSignUpPage
9
+ * confirm-password-label="Confirm password"
10
+ * :error="error"
11
+ * @sign-up="register"
12
+ * >
13
+ * <template #terms>I accept the <a href="/terms">terms</a>.</template>
14
+ * </SkdxSignUpPage>
15
+ * ```
16
+ */
17
+ type __VLS_Props = {
18
+ /**
19
+ * Heading text, rendered into a derived `<h1>` that names the section.
20
+ * @default 'Create account'
21
+ */
22
+ title?: string;
23
+ /**
24
+ * Third-party providers, in render order, each rendering one button above the credentials form.
25
+ * @default [] — no provider region and no divider render.
26
+ */
27
+ providers?: readonly SignInProvider[];
28
+ /**
29
+ * Message rendered into a derived error Alert; the block never clears it, the consumer does.
30
+ * @default undefined — no error region renders.
31
+ */
32
+ error?: string | undefined;
33
+ /**
34
+ * Marks the request in flight, making the submit button busy while every field stays editable.
35
+ * @default false
36
+ */
37
+ pending?: boolean;
38
+ /**
39
+ * Label of the name field; supplying it is what makes that field render at all.
40
+ * @default undefined — no name field renders.
41
+ */
42
+ nameLabel?: string | undefined;
43
+ /**
44
+ * Label of the email field in the credentials form.
45
+ * @default 'Email'
46
+ */
47
+ emailLabel?: string;
48
+ /**
49
+ * Label of the password field in the credentials form.
50
+ * @default 'Password'
51
+ */
52
+ passwordLabel?: string;
53
+ /**
54
+ * Label of the confirmation field; supplying it is what turns password matching on.
55
+ * @default undefined — no confirmation field renders and no matching is done.
56
+ */
57
+ confirmPasswordLabel?: string | undefined;
58
+ /**
59
+ * Validation message pushed onto the confirmation field when the two passwords differ.
60
+ * @default 'Passwords do not match'
61
+ */
62
+ passwordMismatchMessage?: string;
63
+ /**
64
+ * Text of the credentials form's submit button.
65
+ * @default 'Create account'
66
+ */
67
+ submitLabel?: string;
68
+ /**
69
+ * Formats a provider button's text from its entry, for wording or translation.
70
+ * @default defaultProviderLabel — reads "Sign in with Google".
71
+ */
72
+ getProviderLabel?: (provider: SignInProvider) => string;
73
+ };
74
+ type __VLS_Slots = {
75
+ /** Extra fields rendered inside the form, above the terms and the submit button. */
76
+ default?(): unknown;
77
+ /** Terms copy and links used as the label of the required terms checkbox. */
78
+ terms?(): unknown;
79
+ /** Navigation below the form, such as a link back to the sign-in page. */
80
+ footer?(): unknown;
81
+ };
82
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
83
+ "sign-up": (detail: SignUpDetail) => any;
84
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
85
+ "onSign-up"?: (detail: SignUpDetail) => any;
86
+ }>, {
87
+ title: string;
88
+ providers: readonly SignInProvider[];
89
+ error: string | undefined;
90
+ emailLabel: string;
91
+ passwordLabel: string;
92
+ submitLabel: string;
93
+ getProviderLabel: (provider: SignInProvider) => string;
94
+ pending: boolean;
95
+ nameLabel: string | undefined;
96
+ confirmPasswordLabel: string | undefined;
97
+ passwordMismatchMessage: string;
98
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
99
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
100
+ export default _default;
101
+ type __VLS_WithSlots<T, S> = T & {
102
+ new (): {
103
+ $slots: S;
104
+ };
105
+ };