@skdx/vue-blocks 0.34.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 (239) 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/empty-state/EmptyState.vue.cjs +1 -0
  74. package/dist/empty-state/EmptyState.vue.d.cts +57 -0
  75. package/dist/empty-state/EmptyState.vue.d.ts +57 -0
  76. package/dist/empty-state/EmptyState.vue.js +1 -0
  77. package/dist/empty-state/EmptyState.vue_vue_type_script_setup_true_lang.cjs +1 -0
  78. package/dist/empty-state/EmptyState.vue_vue_type_script_setup_true_lang.js +1 -0
  79. package/dist/empty-state/index.cjs +1 -0
  80. package/dist/empty-state/index.d.cts +2 -0
  81. package/dist/empty-state/index.d.ts +2 -0
  82. package/dist/empty-state/index.js +1 -0
  83. package/dist/empty-state/types.d.cts +6 -0
  84. package/dist/empty-state/types.d.ts +6 -0
  85. package/dist/filter-bar/FilterBar.vue.cjs +1 -0
  86. package/dist/filter-bar/FilterBar.vue.d.cts +97 -0
  87. package/dist/filter-bar/FilterBar.vue.d.ts +97 -0
  88. package/dist/filter-bar/FilterBar.vue.js +1 -0
  89. package/dist/filter-bar/FilterBar.vue_vue_type_script_setup_true_lang.cjs +1 -0
  90. package/dist/filter-bar/FilterBar.vue_vue_type_script_setup_true_lang.js +1 -0
  91. package/dist/filter-bar/index.cjs +1 -0
  92. package/dist/filter-bar/index.d.cts +2 -0
  93. package/dist/filter-bar/index.d.ts +2 -0
  94. package/dist/filter-bar/index.js +1 -0
  95. package/dist/filter-bar/types.d.cts +7 -0
  96. package/dist/filter-bar/types.d.ts +7 -0
  97. package/dist/forgot-password-page/ForgotPasswordPage.vue.cjs +1 -0
  98. package/dist/forgot-password-page/ForgotPasswordPage.vue.d.cts +76 -0
  99. package/dist/forgot-password-page/ForgotPasswordPage.vue.d.ts +76 -0
  100. package/dist/forgot-password-page/ForgotPasswordPage.vue.js +1 -0
  101. package/dist/forgot-password-page/ForgotPasswordPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  102. package/dist/forgot-password-page/ForgotPasswordPage.vue_vue_type_script_setup_true_lang.js +1 -0
  103. package/dist/forgot-password-page/index.cjs +1 -0
  104. package/dist/forgot-password-page/index.d.cts +2 -0
  105. package/dist/forgot-password-page/index.d.ts +2 -0
  106. package/dist/forgot-password-page/index.js +1 -0
  107. package/dist/forgot-password-page/types.d.cts +5 -0
  108. package/dist/forgot-password-page/types.d.ts +5 -0
  109. package/dist/form-section/FormSection.vue.cjs +1 -0
  110. package/dist/form-section/FormSection.vue.d.cts +49 -0
  111. package/dist/form-section/FormSection.vue.d.ts +49 -0
  112. package/dist/form-section/FormSection.vue.js +1 -0
  113. package/dist/form-section/FormSection.vue_vue_type_script_setup_true_lang.cjs +1 -0
  114. package/dist/form-section/FormSection.vue_vue_type_script_setup_true_lang.js +1 -0
  115. package/dist/form-section/index.cjs +1 -0
  116. package/dist/form-section/index.d.cts +2 -0
  117. package/dist/form-section/index.d.ts +2 -0
  118. package/dist/form-section/index.js +1 -0
  119. package/dist/form-section/types.d.cts +2 -0
  120. package/dist/form-section/types.d.ts +2 -0
  121. package/dist/index.cjs +1 -1
  122. package/dist/index.d.cts +19 -0
  123. package/dist/index.d.ts +19 -0
  124. package/dist/index.js +1 -1
  125. package/dist/notification-center/NotificationCenter.vue.cjs +1 -0
  126. package/dist/notification-center/NotificationCenter.vue.d.cts +111 -0
  127. package/dist/notification-center/NotificationCenter.vue.d.ts +111 -0
  128. package/dist/notification-center/NotificationCenter.vue.js +1 -0
  129. package/dist/notification-center/NotificationCenter.vue_vue_type_script_setup_true_lang.cjs +1 -0
  130. package/dist/notification-center/NotificationCenter.vue_vue_type_script_setup_true_lang.js +1 -0
  131. package/dist/notification-center/index.cjs +1 -0
  132. package/dist/notification-center/index.d.cts +2 -0
  133. package/dist/notification-center/index.d.ts +2 -0
  134. package/dist/notification-center/index.js +1 -0
  135. package/dist/notification-center/types.d.cts +23 -0
  136. package/dist/notification-center/types.d.ts +23 -0
  137. package/dist/onboarding-checklist/OnboardingChecklist.vue.cjs +1 -0
  138. package/dist/onboarding-checklist/OnboardingChecklist.vue.d.cts +59 -0
  139. package/dist/onboarding-checklist/OnboardingChecklist.vue.d.ts +59 -0
  140. package/dist/onboarding-checklist/OnboardingChecklist.vue.js +1 -0
  141. package/dist/onboarding-checklist/OnboardingChecklist.vue_vue_type_script_setup_true_lang.cjs +1 -0
  142. package/dist/onboarding-checklist/OnboardingChecklist.vue_vue_type_script_setup_true_lang.js +1 -0
  143. package/dist/onboarding-checklist/index.cjs +1 -0
  144. package/dist/onboarding-checklist/index.d.cts +3 -0
  145. package/dist/onboarding-checklist/index.d.ts +3 -0
  146. package/dist/onboarding-checklist/index.js +1 -0
  147. package/dist/onboarding-checklist/types.cjs +1 -0
  148. package/dist/onboarding-checklist/types.d.cts +31 -0
  149. package/dist/onboarding-checklist/types.d.ts +31 -0
  150. package/dist/onboarding-checklist/types.js +1 -0
  151. package/dist/reset-password-page/ResetPasswordPage.vue.cjs +1 -0
  152. package/dist/reset-password-page/ResetPasswordPage.vue.d.cts +85 -0
  153. package/dist/reset-password-page/ResetPasswordPage.vue.d.ts +85 -0
  154. package/dist/reset-password-page/ResetPasswordPage.vue.js +1 -0
  155. package/dist/reset-password-page/ResetPasswordPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  156. package/dist/reset-password-page/ResetPasswordPage.vue_vue_type_script_setup_true_lang.js +1 -0
  157. package/dist/reset-password-page/index.cjs +1 -0
  158. package/dist/reset-password-page/index.d.cts +2 -0
  159. package/dist/reset-password-page/index.d.ts +2 -0
  160. package/dist/reset-password-page/index.js +1 -0
  161. package/dist/reset-password-page/types.d.cts +5 -0
  162. package/dist/reset-password-page/types.d.ts +5 -0
  163. package/dist/sign-up-page/SignUpPage.vue.cjs +1 -0
  164. package/dist/sign-up-page/SignUpPage.vue.d.cts +105 -0
  165. package/dist/sign-up-page/SignUpPage.vue.d.ts +105 -0
  166. package/dist/sign-up-page/SignUpPage.vue.js +1 -0
  167. package/dist/sign-up-page/SignUpPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  168. package/dist/sign-up-page/SignUpPage.vue_vue_type_script_setup_true_lang.js +1 -0
  169. package/dist/sign-up-page/index.cjs +1 -0
  170. package/dist/sign-up-page/index.d.cts +2 -0
  171. package/dist/sign-up-page/index.d.ts +2 -0
  172. package/dist/sign-up-page/index.js +1 -0
  173. package/dist/sign-up-page/types.d.cts +25 -0
  174. package/dist/sign-up-page/types.d.ts +25 -0
  175. package/dist/stat-card/StatCard.vue.cjs +1 -0
  176. package/dist/stat-card/StatCard.vue.d.cts +80 -0
  177. package/dist/stat-card/StatCard.vue.d.ts +80 -0
  178. package/dist/stat-card/StatCard.vue.js +1 -0
  179. package/dist/stat-card/StatCard.vue_vue_type_script_setup_true_lang.cjs +1 -0
  180. package/dist/stat-card/StatCard.vue_vue_type_script_setup_true_lang.js +1 -0
  181. package/dist/stat-card/index.cjs +1 -0
  182. package/dist/stat-card/index.d.cts +2 -0
  183. package/dist/stat-card/index.d.ts +2 -0
  184. package/dist/stat-card/index.js +1 -0
  185. package/dist/stat-card/types.d.cts +4 -0
  186. package/dist/stat-card/types.d.ts +4 -0
  187. package/dist/usage-card/UsageCard.vue.cjs +1 -0
  188. package/dist/usage-card/UsageCard.vue.d.cts +66 -0
  189. package/dist/usage-card/UsageCard.vue.d.ts +66 -0
  190. package/dist/usage-card/UsageCard.vue.js +1 -0
  191. package/dist/usage-card/UsageCard.vue_vue_type_script_setup_true_lang.cjs +1 -0
  192. package/dist/usage-card/UsageCard.vue_vue_type_script_setup_true_lang.js +1 -0
  193. package/dist/usage-card/index.cjs +1 -0
  194. package/dist/usage-card/index.d.cts +2 -0
  195. package/dist/usage-card/index.d.ts +2 -0
  196. package/dist/usage-card/index.js +1 -0
  197. package/dist/usage-card/types.d.cts +2 -0
  198. package/dist/usage-card/types.d.ts +2 -0
  199. package/dist/usage-card/usage.cjs +1 -0
  200. package/dist/usage-card/usage.d.cts +18 -0
  201. package/dist/usage-card/usage.d.ts +18 -0
  202. package/dist/usage-card/usage.js +1 -0
  203. package/dist/user-menu/UserMenu.vue.cjs +1 -0
  204. package/dist/user-menu/UserMenu.vue.d.cts +97 -0
  205. package/dist/user-menu/UserMenu.vue.d.ts +97 -0
  206. package/dist/user-menu/UserMenu.vue.js +1 -0
  207. package/dist/user-menu/UserMenu.vue_vue_type_script_setup_true_lang.cjs +1 -0
  208. package/dist/user-menu/UserMenu.vue_vue_type_script_setup_true_lang.js +1 -0
  209. package/dist/user-menu/index.cjs +1 -0
  210. package/dist/user-menu/index.d.cts +2 -0
  211. package/dist/user-menu/index.d.ts +2 -0
  212. package/dist/user-menu/index.js +1 -0
  213. package/dist/user-menu/types.d.cts +2 -0
  214. package/dist/user-menu/types.d.ts +2 -0
  215. package/dist/verification-page/VerificationPage.vue.cjs +1 -0
  216. package/dist/verification-page/VerificationPage.vue.d.cts +112 -0
  217. package/dist/verification-page/VerificationPage.vue.d.ts +112 -0
  218. package/dist/verification-page/VerificationPage.vue.js +1 -0
  219. package/dist/verification-page/VerificationPage.vue_vue_type_script_setup_true_lang.cjs +1 -0
  220. package/dist/verification-page/VerificationPage.vue_vue_type_script_setup_true_lang.js +1 -0
  221. package/dist/verification-page/index.cjs +1 -0
  222. package/dist/verification-page/index.d.cts +2 -0
  223. package/dist/verification-page/index.d.ts +2 -0
  224. package/dist/verification-page/index.js +1 -0
  225. package/dist/verification-page/types.d.cts +5 -0
  226. package/dist/verification-page/types.d.ts +5 -0
  227. package/dist/workspace-switcher/WorkspaceSwitcher.vue.cjs +1 -0
  228. package/dist/workspace-switcher/WorkspaceSwitcher.vue.d.cts +135 -0
  229. package/dist/workspace-switcher/WorkspaceSwitcher.vue.d.ts +135 -0
  230. package/dist/workspace-switcher/WorkspaceSwitcher.vue.js +1 -0
  231. package/dist/workspace-switcher/WorkspaceSwitcher.vue_vue_type_script_setup_true_lang.cjs +1 -0
  232. package/dist/workspace-switcher/WorkspaceSwitcher.vue_vue_type_script_setup_true_lang.js +1 -0
  233. package/dist/workspace-switcher/index.cjs +1 -0
  234. package/dist/workspace-switcher/index.d.cts +2 -0
  235. package/dist/workspace-switcher/index.d.ts +2 -0
  236. package/dist/workspace-switcher/index.js +1 -0
  237. package/dist/workspace-switcher/types.d.cts +22 -0
  238. package/dist/workspace-switcher/types.d.ts +22 -0
  239. package/package.json +193 -3
@@ -0,0 +1,76 @@
1
+ import type { ForgotPasswordDetail } from './types.js';
2
+ /**
3
+ * A password-recovery panel: one email field whose address is reported as a `request-reset` event, replaced by a success Alert once the consumer accepts it.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxForgotPasswordPage
8
+ * description="We will email you a link to choose a new password."
9
+ * :success="sent ? 'Check your inbox.' : undefined"
10
+ * @request-reset="({ email }) => requestReset(email)"
11
+ * />
12
+ * ```
13
+ */
14
+ type __VLS_Props = {
15
+ /**
16
+ * Heading text, rendered into a derived `<h1>` that names the section.
17
+ * @default 'Reset your password'
18
+ */
19
+ title?: string;
20
+ /**
21
+ * Supporting copy rendered below the title, explaining what the reset link does.
22
+ * @default undefined — no description region renders.
23
+ */
24
+ description?: string | undefined;
25
+ /**
26
+ * Message rendered into a derived error Alert; the block never clears it, the consumer does.
27
+ * @default undefined — no error region renders.
28
+ */
29
+ error?: string | undefined;
30
+ /**
31
+ * Confirmation rendered into a derived success Alert that replaces the form entirely.
32
+ * @default undefined — the form renders instead.
33
+ */
34
+ success?: string | undefined;
35
+ /**
36
+ * Marks the request in flight, making the submit button busy while the email field stays editable.
37
+ * @default false
38
+ */
39
+ pending?: boolean;
40
+ /**
41
+ * Label of the email field the reset link is requested for.
42
+ * @default 'Email'
43
+ */
44
+ emailLabel?: string;
45
+ /**
46
+ * Text of the form's submit button.
47
+ * @default 'Send reset link'
48
+ */
49
+ submitLabel?: string;
50
+ };
51
+ type __VLS_Slots = {
52
+ /** Extra fields rendered inside the form, above the submit button. */
53
+ default?(): unknown;
54
+ /** Navigation below the form, such as a link back to the sign-in page. */
55
+ footer?(): unknown;
56
+ };
57
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
58
+ "request-reset": (detail: ForgotPasswordDetail) => any;
59
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
60
+ "onRequest-reset"?: (detail: ForgotPasswordDetail) => any;
61
+ }>, {
62
+ title: string;
63
+ error: string | undefined;
64
+ emailLabel: string;
65
+ submitLabel: string;
66
+ description: string | undefined;
67
+ success: string | undefined;
68
+ pending: boolean;
69
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
70
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
71
+ export default _default;
72
+ type __VLS_WithSlots<T, S> = T & {
73
+ new (): {
74
+ $slots: S;
75
+ };
76
+ };
@@ -0,0 +1 @@
1
+ import e from"./ForgotPasswordPage.vue_vue_type_script_setup_true_lang.js";var r=e;export{r as default};
@@ -0,0 +1 @@
1
+ const r=require("../internal/part.cjs");let e=require("vue"),a=require("@skdx/vue"),n=require("@skdx/vue/primitives/text-field");var f=["aria-labelledby"],c=(0,e.defineComponent)({__name:"ForgotPasswordPage",props:{title:{default:"Reset your password"},description:{default:void 0},error:{default:void 0},success:{default:void 0},pending:{type:Boolean,default:!1},emailLabel:{default:"Email"},submitLabel:{default:"Send reset link"}},emits:["request-reset"],setup(t,{emit:l}){const i=l,s=(0,e.useId)();function u(o){o.preventDefault();const d=new FormData(o.target).get("email");i("request-reset",{email:typeof d=="string"?d:""})}return(o,d)=>((0,e.openBlock)(),(0,e.createElementBlock)("section",(0,e.mergeProps)((0,e.unref)(r.skdxPart)("forgot-password-page","root"),{"aria-labelledby":(0,e.unref)(s)}),[(0,e.createElementVNode)("div",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(r.skdxPart)("forgot-password-page","panel"))),[(0,e.createVNode)((0,e.unref)(a.SkdxHeading),(0,e.mergeProps)({id:(0,e.unref)(s)},(0,e.unref)(r.skdxPart)("forgot-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)(a.SkdxAlert),(0,e.mergeProps)({key:0},(0,e.unref)(r.skdxPart)("forgot-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.description?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(a.SkdxText),(0,e.mergeProps)({key:1},(0,e.unref)(r.skdxPart)("forgot-password-page","description"),{as:"p",tone:"muted"}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.description),1)]),_:1},16)):(0,e.createCommentVNode)("",!0),t.success?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(a.SkdxAlert),(0,e.mergeProps)({key:2},(0,e.unref)(r.skdxPart)("forgot-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)(a.SkdxForm),(0,e.mergeProps)({key:3},(0,e.unref)(r.skdxPart)("forgot-password-page","form"),{onSubmit:u}),{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(a.SkdxField),(0,e.mergeProps)((0,e.unref)(r.skdxPart)("forgot-password-page","field"),{label:t.emailLabel,required:""}),{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(a.SkdxTextField),{name:"email",required:""},{default:(0,e.withCtx)(()=>[(0,e.createVNode)((0,e.unref)(n.SkdxTextFieldInput),{type:"email",autocomplete:"email"})]),_:1})]),_:1},16,["label"]),(0,e.renderSlot)(o.$slots,"default"),(0,e.createVNode)((0,e.unref)(a.SkdxButton),(0,e.mergeProps)((0,e.unref)(r.skdxPart)("forgot-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)),o.$slots.footer?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.normalizeProps)((0,e.mergeProps)({key:4},(0,e.unref)(r.skdxPart)("forgot-password-page","footer"))),[(0,e.renderSlot)(o.$slots,"footer")],16)):(0,e.createCommentVNode)("",!0)],16)],16,f))}});exports.default=c;
@@ -0,0 +1 @@
1
+ import{skdxPart as e}from"../internal/part.js";import{createBlock as a,createCommentVNode as t,createElementBlock as s,createElementVNode as o,createTextVNode as r,createVNode as d,defineComponent as l,guardReactiveProps as i,mergeProps as p,normalizeProps as u,openBlock as n,renderSlot as f,toDisplayString as m,unref as g,useId as c,withCtx as k}from"vue";import{SkdxAlert as x,SkdxButton as b,SkdxField as w,SkdxForm as y,SkdxHeading as v,SkdxText as S,SkdxTextField as _}from"@skdx/vue";import{SkdxTextFieldInput as F}from"@skdx/vue/primitives/text-field";var P=["aria-labelledby"],B=/* @__PURE__ */l({__name:"ForgotPasswordPage",props:{title:{default:"Reset your password"},description:{default:void 0},error:{default:void 0},success:{default:void 0},pending:{type:Boolean,default:!1},emailLabel:{default:"Email"},submitLabel:{default:"Send reset link"}},emits:["request-reset"],setup(l,{emit:B}){const q=B,L=c();function N(e){e.preventDefault();const a=new FormData(e.target).get("email");q("request-reset",{email:"string"==typeof a?a:""})}return(c,B)=>(n(),s("section",p(g(e)("forgot-password-page","root"),{"aria-labelledby":g(L)}),[o("div",u(i(g(e)("forgot-password-page","panel"))),[d(g(v),p({id:g(L)},g(e)("forgot-password-page","title"),{as:"h1"}),{default:k(()=>[r(m(l.title),1)]),_:1},16,["id"]),l.error?(n(),a(g(x),p({key:0},g(e)("forgot-password-page","error"),{status:"danger"}),{default:k(()=>[r(m(l.error),1)]),_:1},16)):t("",!0),l.description?(n(),a(g(S),p({key:1},g(e)("forgot-password-page","description"),{as:"p",tone:"muted"}),{default:k(()=>[r(m(l.description),1)]),_:1},16)):t("",!0),l.success?(n(),a(g(x),p({key:2},g(e)("forgot-password-page","success"),{status:"success"}),{default:k(()=>[r(m(l.success),1)]),_:1},16)):(n(),a(g(y),p({key:3},g(e)("forgot-password-page","form"),{onSubmit:N}),{default:k(()=>[d(g(w),p(g(e)("forgot-password-page","field"),{label:l.emailLabel,required:""}),{default:k(()=>[d(g(_),{name:"email",required:""},{default:k(()=>[d(g(F),{type:"email",autocomplete:"email"})]),_:1})]),_:1},16,["label"]),f(c.$slots,"default"),d(g(b),p(g(e)("forgot-password-page","submit"),{type:"submit",loading:l.pending??!1,disabled:l.pending??!1}),{default:k(()=>[r(m(l.submitLabel),1)]),_:1},16,["loading","disabled"])]),_:3},16)),c.$slots.footer?(n(),s("div",u(p({key:4},g(e)("forgot-password-page","footer"))),[f(c.$slots,"footer")],16)):t("",!0)],16)],16,P))}});export{B as default};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./ForgotPasswordPage.vue.cjs");exports.SkdxForgotPasswordPage=e.default;
@@ -0,0 +1,2 @@
1
+ export { default as SkdxForgotPasswordPage } from './ForgotPasswordPage.vue.cjs';
2
+ export type { ForgotPasswordDetail } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ export { default as SkdxForgotPasswordPage } from './ForgotPasswordPage.vue.js';
2
+ export type { ForgotPasswordDetail } from './types.js';
@@ -0,0 +1 @@
1
+ import o from"./ForgotPasswordPage.vue.js";export{o as SkdxForgotPasswordPage};
@@ -0,0 +1,5 @@
1
+ /** The payload a `SkdxForgotPasswordPage` reports when its form is submitted. */
2
+ export interface ForgotPasswordDetail {
3
+ /** The address the reset link should be sent to, as typed. */
4
+ email: string;
5
+ }
@@ -0,0 +1,5 @@
1
+ /** The payload a `SkdxForgotPasswordPage` reports when its form is submitted. */
2
+ export interface ForgotPasswordDetail {
3
+ /** The address the reset link should be sent to, as typed. */
4
+ email: string;
5
+ }
@@ -0,0 +1 @@
1
+ const e=require("./FormSection.vue_vue_type_script_setup_true_lang.cjs");var t=e.default;exports.default=t;
@@ -0,0 +1,49 @@
1
+ import type { FormSectionVariant } from './types.cjs';
2
+ /**
3
+ * Titled group inside a larger form: a heading, supporting text, the group's fields and a footer for the group's own actions, composing Heading and Text around consumer-supplied fields.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxFormSection title="Billing address" description="Used for invoices and receipts.">
8
+ * <SkdxTextField label="Street" />
9
+ * <template #actions><SkdxButton type="submit">Save</SkdxButton></template>
10
+ * </SkdxFormSection>
11
+ * ```
12
+ */
13
+ type __VLS_Props = {
14
+ /** Heading text naming the group, rendered into a derived Heading that names the section. */
15
+ title: string;
16
+ /**
17
+ * Supporting copy rendered below the title, explaining the group's fields.
18
+ * @default undefined — no description region renders and aria-describedby is omitted.
19
+ */
20
+ description?: string | undefined;
21
+ /**
22
+ * Outline level of the derived title heading, from 1 down to 6 inside a larger form outline.
23
+ * @default 2
24
+ */
25
+ headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
26
+ /**
27
+ * Layout rung mirrored to data-variant; bordered draws a bounded panel and split places the header beside the content on wide viewports.
28
+ * @default undefined — plain, stacked layout.
29
+ */
30
+ variant?: FormSectionVariant | undefined;
31
+ };
32
+ type __VLS_Slots = {
33
+ /** The group's fields, rendered into the content region. */
34
+ default?(): unknown;
35
+ /** The group's own footer controls, rendered below the fields. */
36
+ actions?(): unknown;
37
+ };
38
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
39
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
40
+ variant: FormSectionVariant | undefined;
41
+ description: string | undefined;
42
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
43
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
44
+ export default _default;
45
+ type __VLS_WithSlots<T, S> = T & {
46
+ new (): {
47
+ $slots: S;
48
+ };
49
+ };
@@ -0,0 +1,49 @@
1
+ import type { FormSectionVariant } from './types.js';
2
+ /**
3
+ * Titled group inside a larger form: a heading, supporting text, the group's fields and a footer for the group's own actions, composing Heading and Text around consumer-supplied fields.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxFormSection title="Billing address" description="Used for invoices and receipts.">
8
+ * <SkdxTextField label="Street" />
9
+ * <template #actions><SkdxButton type="submit">Save</SkdxButton></template>
10
+ * </SkdxFormSection>
11
+ * ```
12
+ */
13
+ type __VLS_Props = {
14
+ /** Heading text naming the group, rendered into a derived Heading that names the section. */
15
+ title: string;
16
+ /**
17
+ * Supporting copy rendered below the title, explaining the group's fields.
18
+ * @default undefined — no description region renders and aria-describedby is omitted.
19
+ */
20
+ description?: string | undefined;
21
+ /**
22
+ * Outline level of the derived title heading, from 1 down to 6 inside a larger form outline.
23
+ * @default 2
24
+ */
25
+ headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
26
+ /**
27
+ * Layout rung mirrored to data-variant; bordered draws a bounded panel and split places the header beside the content on wide viewports.
28
+ * @default undefined — plain, stacked layout.
29
+ */
30
+ variant?: FormSectionVariant | undefined;
31
+ };
32
+ type __VLS_Slots = {
33
+ /** The group's fields, rendered into the content region. */
34
+ default?(): unknown;
35
+ /** The group's own footer controls, rendered below the fields. */
36
+ actions?(): unknown;
37
+ };
38
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
39
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
40
+ variant: FormSectionVariant | undefined;
41
+ description: string | undefined;
42
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
43
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
44
+ export default _default;
45
+ type __VLS_WithSlots<T, S> = T & {
46
+ new (): {
47
+ $slots: S;
48
+ };
49
+ };
@@ -0,0 +1 @@
1
+ import e from"./FormSection.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");let e=require("vue"),n=require("@skdx/vue");var c=["data-variant","aria-labelledby","aria-describedby"],l=(0,e.defineComponent)({__name:"FormSection",props:{title:{},description:{default:void 0},headingLevel:{default:2},variant:{default:void 0}},setup(t){const d=t,a=(0,e.useId)(),i=(0,e.useId)(),s=(0,e.computed)(()=>`h${d.headingLevel}`);return(o,u)=>((0,e.openBlock)(),(0,e.createElementBlock)("section",(0,e.mergeProps)((0,e.unref)(r.skdxPart)("form-section","root"),{"data-variant":t.variant,"aria-labelledby":(0,e.unref)(a),"aria-describedby":t.description?(0,e.unref)(i):void 0}),[(0,e.createElementVNode)("div",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(r.skdxPart)("form-section","header"))),[(0,e.createVNode)((0,e.unref)(n.SkdxHeading),(0,e.mergeProps)({id:(0,e.unref)(a)},(0,e.unref)(r.skdxPart)("form-section","title"),{as:s.value}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.title),1)]),_:1},16,["id","as"]),t.description?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.SkdxText),(0,e.mergeProps)({key:0,id:(0,e.unref)(i),as:"p",tone:"muted"},(0,e.unref)(r.skdxPart)("form-section","description")),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(t.description),1)]),_:1},16,["id"])):(0,e.createCommentVNode)("",!0)],16),(0,e.createElementVNode)("div",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(r.skdxPart)("form-section","content"))),[(0,e.renderSlot)(o.$slots,"default")],16),o.$slots.actions?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.normalizeProps)((0,e.mergeProps)({key:0},(0,e.unref)(r.skdxPart)("form-section","footer"))),[(0,e.renderSlot)(o.$slots,"actions")],16)):(0,e.createCommentVNode)("",!0)],16,c))}});exports.default=l;
@@ -0,0 +1 @@
1
+ import{skdxPart as e}from"../internal/part.js";import{computed as a,createBlock as t,createCommentVNode as o,createElementBlock as s,createElementVNode as i,createTextVNode as r,createVNode as d,defineComponent as n,guardReactiveProps as l,mergeProps as c,normalizeProps as m,openBlock as p,renderSlot as f,toDisplayString as u,unref as v,useId as k,withCtx as b}from"vue";import{SkdxHeading as x,SkdxText as y}from"@skdx/vue";var g=["data-variant","aria-labelledby","aria-describedby"],h=/* @__PURE__ */n({__name:"FormSection",props:{title:{},description:{default:void 0},headingLevel:{default:2},variant:{default:void 0}},setup(n){const h=n,S=k(),N=k(),P=a(()=>`h${h.headingLevel}`);return(a,k)=>(p(),s("section",c(v(e)("form-section","root"),{"data-variant":n.variant,"aria-labelledby":v(S),"aria-describedby":n.description?v(N):void 0}),[i("div",m(l(v(e)("form-section","header"))),[d(v(x),c({id:v(S)},v(e)("form-section","title"),{as:P.value}),{default:b(()=>[r(u(n.title),1)]),_:1},16,["id","as"]),n.description?(p(),t(v(y),c({key:0,id:v(N),as:"p",tone:"muted"},v(e)("form-section","description")),{default:b(()=>[r(u(n.description),1)]),_:1},16,["id"])):o("",!0)],16),i("div",m(l(v(e)("form-section","content"))),[f(a.$slots,"default")],16),a.$slots.actions?(p(),s("div",m(c({key:0},v(e)("form-section","footer"))),[f(a.$slots,"actions")],16)):o("",!0)],16,g))}});export{h as default};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./FormSection.vue.cjs");exports.SkdxFormSection=e.default;
@@ -0,0 +1,2 @@
1
+ export { default as SkdxFormSection } from './FormSection.vue.cjs';
2
+ export type { FormSectionVariant } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ export { default as SkdxFormSection } from './FormSection.vue.js';
2
+ export type { FormSectionVariant } from './types.js';
@@ -0,0 +1 @@
1
+ import o from"./FormSection.vue.js";export{o as SkdxFormSection};
@@ -0,0 +1,2 @@
1
+ /** Layout rung of a `SkdxFormSection`, mirrored to `data-variant` on the root. */
2
+ export type FormSectionVariant = 'bordered' | 'split' | (string & {});
@@ -0,0 +1,2 @@
1
+ /** Layout rung of a `SkdxFormSection`, mirrored to `data-variant` on the root. */
2
+ export type FormSectionVariant = 'bordered' | 'split' | (string & {});
package/dist/index.cjs CHANGED
@@ -1 +1 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./page-container/PageContainer.vue.cjs"),r=require("./dashboard-layout/DashboardLayout.vue.cjs"),a=require("./sign-in-page/types.cjs"),t=require("./sign-in-page/SignInPage.vue.cjs");exports.SkdxDashboardLayout=r.default;exports.SkdxPageContainer=e.default;exports.SkdxSignInPage=t.default;exports.defaultProviderLabel=a.defaultProviderLabel;
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./page-container/PageContainer.vue.cjs"),r=require("./dashboard-layout/DashboardLayout.vue.cjs"),t=require("./sign-in-page/types.cjs"),i=require("./sign-in-page/SignInPage.vue.cjs"),a=require("./empty-state/EmptyState.vue.cjs"),u=require("./stat-card/StatCard.vue.cjs"),o=require("./confirm-dialog/ConfirmDialog.vue.cjs"),d=require("./form-section/FormSection.vue.cjs"),n=require("./usage-card/UsageCard.vue.cjs"),s=require("./onboarding-checklist/OnboardingChecklist.vue.cjs"),q=require("./filter-bar/FilterBar.vue.cjs"),c=require("./comment/Comment.vue.cjs"),S=require("./comment-thread/CommentThread.vue.cjs"),l=require("./notification-center/NotificationCenter.vue.cjs"),f=require("./conversation-list/ConversationList.vue.cjs"),g=require("./chat-message/ChatMessage.vue.cjs"),k=require("./user-menu/UserMenu.vue.cjs"),C=require("./workspace-switcher/WorkspaceSwitcher.vue.cjs"),_=require("./chat-composer/ChatComposer.vue.cjs"),x=require("./sign-up-page/SignUpPage.vue.cjs"),P=require("./forgot-password-page/ForgotPasswordPage.vue.cjs"),m=require("./reset-password-page/ResetPasswordPage.vue.cjs"),h=require("./verification-page/VerificationPage.vue.cjs");exports.SkdxChatComposer=_.default;exports.SkdxChatMessage=g.default;exports.SkdxComment=c.default;exports.SkdxCommentThread=S.default;exports.SkdxConfirmDialog=o.default;exports.SkdxConversationList=f.default;exports.SkdxDashboardLayout=r.default;exports.SkdxEmptyState=a.default;exports.SkdxFilterBar=q.default;exports.SkdxForgotPasswordPage=P.default;exports.SkdxFormSection=d.default;exports.SkdxNotificationCenter=l.default;exports.SkdxOnboardingChecklist=s.default;exports.SkdxPageContainer=e.default;exports.SkdxResetPasswordPage=m.default;exports.SkdxSignInPage=i.default;exports.SkdxSignUpPage=x.default;exports.SkdxStatCard=u.default;exports.SkdxUsageCard=n.default;exports.SkdxUserMenu=k.default;exports.SkdxVerificationPage=h.default;exports.SkdxWorkspaceSwitcher=C.default;exports.defaultProviderLabel=t.defaultProviderLabel;
package/dist/index.d.cts CHANGED
@@ -2,3 +2,22 @@ export { SkdxPageContainer } from './page-container/index.cjs';
2
2
  export { SkdxDashboardLayout, type DashboardNavigationItem } from './dashboard-layout/index.cjs';
3
3
  export { SkdxSignInPage, defaultProviderLabel } from './sign-in-page/index.cjs';
4
4
  export type { SignInDetail, SignInProvider } from './sign-in-page/index.cjs';
5
+ export { SkdxEmptyState, type EmptyStateAlign, type EmptyStateHeadingLevel, type EmptyStateSize, } from './empty-state/index.cjs';
6
+ export { SkdxStatCard, type StatCardSentiment, type StatCardTrend } from './stat-card/index.cjs';
7
+ export { SkdxConfirmDialog, type ConfirmDialogSize } from './confirm-dialog/index.cjs';
8
+ export { SkdxFormSection, type FormSectionVariant } from './form-section/index.cjs';
9
+ export { SkdxUsageCard, type UsageCardStatus } from './usage-card/index.cjs';
10
+ export { SkdxOnboardingChecklist, type OnboardingChecklistItem, type OnboardingChecklistItemState, } from './onboarding-checklist/index.cjs';
11
+ export { SkdxFilterBar, type FilterBarFilter } from './filter-bar/index.cjs';
12
+ export { SkdxComment } from './comment/index.cjs';
13
+ export { SkdxCommentThread } from './comment-thread/index.cjs';
14
+ export { SkdxNotificationCenter, type NotificationCenterItem } from './notification-center/index.cjs';
15
+ export { SkdxConversationList, type ConversationListItem } from './conversation-list/index.cjs';
16
+ export { SkdxChatMessage } from './chat-message/index.cjs';
17
+ export { SkdxUserMenu, type UserMenuVariant } from './user-menu/index.cjs';
18
+ export { SkdxWorkspaceSwitcher, type WorkspaceSwitcherItem } from './workspace-switcher/index.cjs';
19
+ export { SkdxChatComposer, type ChatComposerSendDetail, type ChatComposerSubmitKey, } from './chat-composer/index.cjs';
20
+ export { SkdxSignUpPage, type SignUpDetail } from './sign-up-page/index.cjs';
21
+ export { SkdxForgotPasswordPage, type ForgotPasswordDetail } from './forgot-password-page/index.cjs';
22
+ export { SkdxResetPasswordPage, type ResetPasswordDetail } from './reset-password-page/index.cjs';
23
+ export { SkdxVerificationPage, type VerificationDetail } from './verification-page/index.cjs';
package/dist/index.d.ts CHANGED
@@ -2,3 +2,22 @@ export { SkdxPageContainer } from './page-container/index.js';
2
2
  export { SkdxDashboardLayout, type DashboardNavigationItem } from './dashboard-layout/index.js';
3
3
  export { SkdxSignInPage, defaultProviderLabel } from './sign-in-page/index.js';
4
4
  export type { SignInDetail, SignInProvider } from './sign-in-page/index.js';
5
+ export { SkdxEmptyState, type EmptyStateAlign, type EmptyStateHeadingLevel, type EmptyStateSize, } from './empty-state/index.js';
6
+ export { SkdxStatCard, type StatCardSentiment, type StatCardTrend } from './stat-card/index.js';
7
+ export { SkdxConfirmDialog, type ConfirmDialogSize } from './confirm-dialog/index.js';
8
+ export { SkdxFormSection, type FormSectionVariant } from './form-section/index.js';
9
+ export { SkdxUsageCard, type UsageCardStatus } from './usage-card/index.js';
10
+ export { SkdxOnboardingChecklist, type OnboardingChecklistItem, type OnboardingChecklistItemState, } from './onboarding-checklist/index.js';
11
+ export { SkdxFilterBar, type FilterBarFilter } from './filter-bar/index.js';
12
+ export { SkdxComment } from './comment/index.js';
13
+ export { SkdxCommentThread } from './comment-thread/index.js';
14
+ export { SkdxNotificationCenter, type NotificationCenterItem } from './notification-center/index.js';
15
+ export { SkdxConversationList, type ConversationListItem } from './conversation-list/index.js';
16
+ export { SkdxChatMessage } from './chat-message/index.js';
17
+ export { SkdxUserMenu, type UserMenuVariant } from './user-menu/index.js';
18
+ export { SkdxWorkspaceSwitcher, type WorkspaceSwitcherItem } from './workspace-switcher/index.js';
19
+ export { SkdxChatComposer, type ChatComposerSendDetail, type ChatComposerSubmitKey, } from './chat-composer/index.js';
20
+ export { SkdxSignUpPage, type SignUpDetail } from './sign-up-page/index.js';
21
+ export { SkdxForgotPasswordPage, type ForgotPasswordDetail } from './forgot-password-page/index.js';
22
+ export { SkdxResetPasswordPage, type ResetPasswordDetail } from './reset-password-page/index.js';
23
+ export { SkdxVerificationPage, type VerificationDetail } from './verification-page/index.js';
package/dist/index.js CHANGED
@@ -1 +1 @@
1
- import a from"./page-container/PageContainer.vue.js";import e from"./dashboard-layout/DashboardLayout.vue.js";import{defaultProviderLabel as o}from"./sign-in-page/types.js";import r from"./sign-in-page/SignInPage.vue.js";export{e as SkdxDashboardLayout,a as SkdxPageContainer,r as SkdxSignInPage,o as defaultProviderLabel};
1
+ import e from"./page-container/PageContainer.vue.js";import o from"./dashboard-layout/DashboardLayout.vue.js";import{defaultProviderLabel as a}from"./sign-in-page/types.js";import r from"./sign-in-page/SignInPage.vue.js";import s from"./empty-state/EmptyState.vue.js";import t from"./stat-card/StatCard.vue.js";import i from"./confirm-dialog/ConfirmDialog.vue.js";import m from"./form-section/FormSection.vue.js";import n from"./usage-card/UsageCard.vue.js";import d from"./onboarding-checklist/OnboardingChecklist.vue.js";import p from"./filter-bar/FilterBar.vue.js";import g from"./comment/Comment.vue.js";import f from"./comment-thread/CommentThread.vue.js";import S from"./notification-center/NotificationCenter.vue.js";import u from"./conversation-list/ConversationList.vue.js";import c from"./chat-message/ChatMessage.vue.js";import k from"./user-menu/UserMenu.vue.js";import v from"./workspace-switcher/WorkspaceSwitcher.vue.js";import C from"./chat-composer/ChatComposer.vue.js";import j from"./sign-up-page/SignUpPage.vue.js";import x from"./forgot-password-page/ForgotPasswordPage.vue.js";import h from"./reset-password-page/ResetPasswordPage.vue.js";import P from"./verification-page/VerificationPage.vue.js";export{C as SkdxChatComposer,c as SkdxChatMessage,g as SkdxComment,f as SkdxCommentThread,i as SkdxConfirmDialog,u as SkdxConversationList,o as SkdxDashboardLayout,s as SkdxEmptyState,p as SkdxFilterBar,x as SkdxForgotPasswordPage,m as SkdxFormSection,S as SkdxNotificationCenter,d as SkdxOnboardingChecklist,e as SkdxPageContainer,h as SkdxResetPasswordPage,r as SkdxSignInPage,j as SkdxSignUpPage,t as SkdxStatCard,n as SkdxUsageCard,k as SkdxUserMenu,P as SkdxVerificationPage,v as SkdxWorkspaceSwitcher,a as defaultProviderLabel};
@@ -0,0 +1 @@
1
+ const e=require("./NotificationCenter.vue_vue_type_script_setup_true_lang.cjs");var t=e.default;exports.default=t;
@@ -0,0 +1,111 @@
1
+ import type { NotificationCenterItem } from './types.cjs';
2
+ /**
3
+ * Notification list block: read/unread state, timestamps, a leading visual and per-item and mark-all-read actions, rendered as panel content for a Popover, Drawer, Dialog or page.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxNotificationCenter
8
+ * :notifications="notifications"
9
+ * @select="(detail) => open(detail.item)"
10
+ * @read-change="(detail) => markRead(detail.item.id, detail.read)"
11
+ * @mark-all-read="markAllRead"
12
+ * />
13
+ * ```
14
+ */
15
+ type __VLS_Props = {
16
+ /** The notifications to list, in render order. */
17
+ notifications: readonly NotificationCenterItem[];
18
+ /**
19
+ * Heading text, rendered into a derived Heading that names the section.
20
+ * @default 'Notifications'
21
+ */
22
+ title?: string;
23
+ /**
24
+ * Outline level of the derived title heading, from 1 down to 6.
25
+ * @default 2
26
+ */
27
+ headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
28
+ /**
29
+ * Text of the mark-all-read button, rendered only when a mark-all-read listener is given.
30
+ * @default 'Mark all as read'
31
+ */
32
+ markAllReadLabel?: string;
33
+ /**
34
+ * Text of a per-item toggle while that notification is unread.
35
+ * @default 'Mark as read'
36
+ */
37
+ markReadLabel?: string;
38
+ /**
39
+ * Text of a per-item toggle while that notification is read.
40
+ * @default 'Mark as unread'
41
+ */
42
+ markUnreadLabel?: string;
43
+ /**
44
+ * Heading text of the derived EmptyState shown when notifications is empty.
45
+ * @default 'No notifications'
46
+ */
47
+ emptyTitle?: string;
48
+ /**
49
+ * Supporting copy of the derived EmptyState shown when notifications is empty.
50
+ * @default undefined — the empty state renders with no description.
51
+ */
52
+ emptyDescription?: string | undefined;
53
+ /**
54
+ * Shows a skeleton region instead of the list while notifications are still loading.
55
+ * @default false
56
+ */
57
+ loading?: boolean;
58
+ /**
59
+ * Reference instant every item's relative timestamp is measured from.
60
+ * @default undefined — each Time reads the instant once at render.
61
+ */
62
+ now?: Date | number | undefined;
63
+ };
64
+ type __VLS_Slots = {
65
+ /** Header controls rendered beside the mark-all-read button. */
66
+ actions?(): unknown;
67
+ /** Decorative avatar or icon beside one notification, always aria-hidden. */
68
+ leading?(props: {
69
+ item: NotificationCenterItem;
70
+ }): unknown;
71
+ /** Extra controls beside one notification's read/unread toggle. */
72
+ 'item-actions'?(props: {
73
+ item: NotificationCenterItem;
74
+ }): unknown;
75
+ };
76
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
77
+ select: (detail: {
78
+ item: NotificationCenterItem;
79
+ }) => any;
80
+ "read-change": (detail: {
81
+ item: NotificationCenterItem;
82
+ read: boolean;
83
+ }) => any;
84
+ "mark-all-read": () => any;
85
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
86
+ onSelect?: (detail: {
87
+ item: NotificationCenterItem;
88
+ }) => any;
89
+ "onRead-change"?: (detail: {
90
+ item: NotificationCenterItem;
91
+ read: boolean;
92
+ }) => any;
93
+ "onMark-all-read"?: () => any;
94
+ }>, {
95
+ title: string;
96
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
97
+ loading: boolean;
98
+ now: Date | number | undefined;
99
+ markAllReadLabel: string;
100
+ markReadLabel: string;
101
+ markUnreadLabel: string;
102
+ emptyTitle: string;
103
+ emptyDescription: string | undefined;
104
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
105
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
106
+ export default _default;
107
+ type __VLS_WithSlots<T, S> = T & {
108
+ new (): {
109
+ $slots: S;
110
+ };
111
+ };
@@ -0,0 +1,111 @@
1
+ import type { NotificationCenterItem } from './types.js';
2
+ /**
3
+ * Notification list block: read/unread state, timestamps, a leading visual and per-item and mark-all-read actions, rendered as panel content for a Popover, Drawer, Dialog or page.
4
+ *
5
+ * @example
6
+ * ```vue
7
+ * <SkdxNotificationCenter
8
+ * :notifications="notifications"
9
+ * @select="(detail) => open(detail.item)"
10
+ * @read-change="(detail) => markRead(detail.item.id, detail.read)"
11
+ * @mark-all-read="markAllRead"
12
+ * />
13
+ * ```
14
+ */
15
+ type __VLS_Props = {
16
+ /** The notifications to list, in render order. */
17
+ notifications: readonly NotificationCenterItem[];
18
+ /**
19
+ * Heading text, rendered into a derived Heading that names the section.
20
+ * @default 'Notifications'
21
+ */
22
+ title?: string;
23
+ /**
24
+ * Outline level of the derived title heading, from 1 down to 6.
25
+ * @default 2
26
+ */
27
+ headingLevel?: 1 | 2 | 3 | 4 | 5 | 6;
28
+ /**
29
+ * Text of the mark-all-read button, rendered only when a mark-all-read listener is given.
30
+ * @default 'Mark all as read'
31
+ */
32
+ markAllReadLabel?: string;
33
+ /**
34
+ * Text of a per-item toggle while that notification is unread.
35
+ * @default 'Mark as read'
36
+ */
37
+ markReadLabel?: string;
38
+ /**
39
+ * Text of a per-item toggle while that notification is read.
40
+ * @default 'Mark as unread'
41
+ */
42
+ markUnreadLabel?: string;
43
+ /**
44
+ * Heading text of the derived EmptyState shown when notifications is empty.
45
+ * @default 'No notifications'
46
+ */
47
+ emptyTitle?: string;
48
+ /**
49
+ * Supporting copy of the derived EmptyState shown when notifications is empty.
50
+ * @default undefined — the empty state renders with no description.
51
+ */
52
+ emptyDescription?: string | undefined;
53
+ /**
54
+ * Shows a skeleton region instead of the list while notifications are still loading.
55
+ * @default false
56
+ */
57
+ loading?: boolean;
58
+ /**
59
+ * Reference instant every item's relative timestamp is measured from.
60
+ * @default undefined — each Time reads the instant once at render.
61
+ */
62
+ now?: Date | number | undefined;
63
+ };
64
+ type __VLS_Slots = {
65
+ /** Header controls rendered beside the mark-all-read button. */
66
+ actions?(): unknown;
67
+ /** Decorative avatar or icon beside one notification, always aria-hidden. */
68
+ leading?(props: {
69
+ item: NotificationCenterItem;
70
+ }): unknown;
71
+ /** Extra controls beside one notification's read/unread toggle. */
72
+ 'item-actions'?(props: {
73
+ item: NotificationCenterItem;
74
+ }): unknown;
75
+ };
76
+ declare const __VLS_component: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
77
+ select: (detail: {
78
+ item: NotificationCenterItem;
79
+ }) => any;
80
+ "read-change": (detail: {
81
+ item: NotificationCenterItem;
82
+ read: boolean;
83
+ }) => any;
84
+ "mark-all-read": () => any;
85
+ }, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
86
+ onSelect?: (detail: {
87
+ item: NotificationCenterItem;
88
+ }) => any;
89
+ "onRead-change"?: (detail: {
90
+ item: NotificationCenterItem;
91
+ read: boolean;
92
+ }) => any;
93
+ "onMark-all-read"?: () => any;
94
+ }>, {
95
+ title: string;
96
+ headingLevel: 1 | 2 | 3 | 4 | 5 | 6;
97
+ loading: boolean;
98
+ now: Date | number | undefined;
99
+ markAllReadLabel: string;
100
+ markReadLabel: string;
101
+ markUnreadLabel: string;
102
+ emptyTitle: string;
103
+ emptyDescription: string | undefined;
104
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
105
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
106
+ export default _default;
107
+ type __VLS_WithSlots<T, S> = T & {
108
+ new (): {
109
+ $slots: S;
110
+ };
111
+ };
@@ -0,0 +1 @@
1
+ import t from"./NotificationCenter.vue_vue_type_script_setup_true_lang.js";var e=t;export{e as default};
@@ -0,0 +1 @@
1
+ const t=require("../internal/part.cjs"),B=require("../empty-state/EmptyState.vue.cjs");let e=require("vue"),a=require("@skdx/vue");var h=["aria-labelledby","aria-busy"],x=["data-read"],C=(0,e.defineComponent)({__name:"NotificationCenter",props:{notifications:{},title:{default:"Notifications"},headingLevel:{default:2},markAllReadLabel:{default:"Mark all as read"},markReadLabel:{default:"Mark as read"},markUnreadLabel:{default:"Mark as unread"},emptyTitle:{default:"No notifications"},emptyDescription:{default:void 0},loading:{type:Boolean,default:!1},now:{default:void 0}},emits:["select","read-change","mark-all-read"],setup(o,{emit:m}){const i=o,l=m,u=(0,e.useId)(),p=(0,e.computed)(()=>`h${i.headingLevel}`),g=(0,e.computed)(()=>i.notifications.filter(r=>!r.read).length),d=(0,e.getCurrentInstance)(),c=()=>d?.vnode.props?.onSelect!=null,s=()=>d?.vnode.props?.onReadChange!=null,f=()=>d?.vnode.props?.onMarkAllRead!=null;function v(r){c()&&l("select",{item:r})}function P(r){s()&&l("read-change",{item:r,read:!r.read})}return(r,k)=>((0,e.openBlock)(),(0,e.createElementBlock)("section",(0,e.mergeProps)((0,e.unref)(t.skdxPart)("notification-center","root"),{"aria-labelledby":(0,e.unref)(u),"aria-busy":o.loading?"true":"false"}),[(0,e.createElementVNode)("div",(0,e.normalizeProps)((0,e.guardReactiveProps)((0,e.unref)(t.skdxPart)("notification-center","header"))),[(0,e.createVNode)((0,e.unref)(a.SkdxHeading),(0,e.mergeProps)({id:(0,e.unref)(u)},(0,e.unref)(t.skdxPart)("notification-center","title"),{as:p.value}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(o.title),1)]),_:1},16,["id","as"]),r.$slots.actions||f()?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.normalizeProps)((0,e.mergeProps)({key:0},(0,e.unref)(t.skdxPart)("notification-center","actions"))),[(0,e.renderSlot)(r.$slots,"actions"),f()?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(a.SkdxButton),(0,e.mergeProps)({key:0},(0,e.unref)(t.skdxPart)("notification-center","mark-all-read"),{size:"sm",variant:"ghost",disabled:g.value===0,onClick:k[0]||(k[0]=n=>l("mark-all-read"))}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(o.markAllReadLabel),1)]),_:1},16,["disabled"])):(0,e.createCommentVNode)("",!0)],16)):(0,e.createCommentVNode)("",!0)],16),o.loading?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.mergeProps)({key:0,"aria-hidden":"true"},(0,e.unref)(t.skdxPart)("notification-center","loading")),[(0,e.createVNode)((0,e.unref)(a.SkdxSkeleton),{shape:"line"}),(0,e.createVNode)((0,e.unref)(a.SkdxSkeleton),{shape:"line"}),(0,e.createVNode)((0,e.unref)(a.SkdxSkeleton),{shape:"line"})],16)):o.notifications.length===0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(B.default),(0,e.mergeProps)({key:1},(0,e.unref)(t.skdxPart)("notification-center","empty"),{title:i.emptyTitle,description:o.emptyDescription,size:"sm"}),null,16,["title","description"])):((0,e.openBlock)(),(0,e.createElementBlock)("ul",(0,e.normalizeProps)((0,e.mergeProps)({key:2},(0,e.unref)(t.skdxPart)("notification-center","list"))),[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(o.notifications,n=>((0,e.openBlock)(),(0,e.createElementBlock)("li",(0,e.mergeProps)({key:n.id,"data-read":n.read?"":void 0},{ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","item")),[r.$slots.leading?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.mergeProps)({key:0,"aria-hidden":"true"},{ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","leading")),[(0,e.renderSlot)(r.$slots,"leading",{item:n})],16)):(0,e.createCommentVNode)("",!0),((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(c()?"button":"div"),(0,e.mergeProps)({type:c()?"button":void 0},{ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","body"),{onClick:y=>v(n)}),{default:(0,e.withCtx)(()=>[(0,e.createElementVNode)("span",(0,e.mergeProps)({ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","item-title")),(0,e.toDisplayString)(n.title),17),n.description?((0,e.openBlock)(),(0,e.createElementBlock)("span",(0,e.mergeProps)({key:0,ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","description")),(0,e.toDisplayString)(n.description),17)):(0,e.createCommentVNode)("",!0),n.timestamp!==void 0?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(a.SkdxTime),(0,e.mergeProps)({key:1,ref_for:!0},{...(0,e.unref)(t.skdxPart)("notification-center","time"),...o.now===void 0?{}:{now:o.now}},{value:n.timestamp,relative:""}),null,16,["value"])):(0,e.createCommentVNode)("",!0)]),_:2},1040,["type","onClick"])),r.$slots["item-actions"]||s()?((0,e.openBlock)(),(0,e.createElementBlock)("div",(0,e.mergeProps)({key:1,ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","item-actions")),[(0,e.renderSlot)(r.$slots,"item-actions",{item:n}),s()?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(a.SkdxButton),(0,e.mergeProps)({key:0,ref_for:!0},(0,e.unref)(t.skdxPart)("notification-center","read-toggle"),{size:"sm",variant:"ghost",onClick:y=>P(n)}),{default:(0,e.withCtx)(()=>[(0,e.createTextVNode)((0,e.toDisplayString)(n.read?o.markUnreadLabel:o.markReadLabel),1)]),_:2},1040,["onClick"])):(0,e.createCommentVNode)("",!0)],16)):(0,e.createCommentVNode)("",!0)],16,x))),128))],16))],16,h))}});exports.default=C;
@@ -0,0 +1 @@
1
+ import{skdxPart as e}from"../internal/part.js";import t from"../empty-state/EmptyState.vue.js";import{Fragment as a,computed as i,createBlock as n,createCommentVNode as o,createElementBlock as r,createElementVNode as l,createTextVNode as s,createVNode as d,defineComponent as c,getCurrentInstance as f,guardReactiveProps as m,mergeProps as p,normalizeProps as u,openBlock as k,renderList as v,renderSlot as y,resolveDynamicComponent as g,toDisplayString as b,unref as h,useId as _,withCtx as C}from"vue";import{SkdxButton as x,SkdxHeading as L,SkdxSkeleton as S,SkdxTime as N}from"@skdx/vue";var R=["aria-labelledby","aria-busy"],$=["data-read"],w=/* @__PURE__ */c({__name:"NotificationCenter",props:{notifications:{},title:{default:"Notifications"},headingLevel:{default:2},markAllReadLabel:{default:"Mark all as read"},markReadLabel:{default:"Mark as read"},markUnreadLabel:{default:"Mark as unread"},emptyTitle:{default:"No notifications"},emptyDescription:{default:void 0},loading:{type:Boolean,default:!1},now:{default:void 0}},emits:["select","read-change","mark-all-read"],setup(c,{emit:w}){const B=c,z=w,D=_(),M=i(()=>`h${B.headingLevel}`),P=i(()=>B.notifications.filter(e=>!e.read).length),T=f(),V=()=>null!=T?.vnode.props?.onSelect,A=()=>null!=T?.vnode.props?.onReadChange,E=()=>null!=T?.vnode.props?.onMarkAllRead;return(i,f)=>(k(),r("section",p(h(e)("notification-center","root"),{"aria-labelledby":h(D),"aria-busy":c.loading?"true":"false"}),[l("div",u(m(h(e)("notification-center","header"))),[d(h(L),p({id:h(D)},h(e)("notification-center","title"),{as:M.value}),{default:C(()=>[s(b(c.title),1)]),_:1},16,["id","as"]),i.$slots.actions||E()?(k(),r("div",u(p({key:0},h(e)("notification-center","actions"))),[y(i.$slots,"actions"),E()?(k(),n(h(x),p({key:0},h(e)("notification-center","mark-all-read"),{size:"sm",variant:"ghost",disabled:0===P.value,onClick:f[0]||(f[0]=e=>z("mark-all-read"))}),{default:C(()=>[s(b(c.markAllReadLabel),1)]),_:1},16,["disabled"])):o("",!0)],16)):o("",!0)],16),c.loading?(k(),r("div",p({key:0,"aria-hidden":"true"},h(e)("notification-center","loading")),[d(h(S),{shape:"line"}),d(h(S),{shape:"line"}),d(h(S),{shape:"line"})],16)):0===c.notifications.length?(k(),n(h(t),p({key:1},h(e)("notification-center","empty"),{title:B.emptyTitle,description:c.emptyDescription,size:"sm"}),null,16,["title","description"])):(k(),r("ul",u(p({key:2},h(e)("notification-center","list"))),[(k(!0),r(a,null,v(c.notifications,t=>(k(),r("li",p({key:t.id,"data-read":t.read?"":void 0},{ref_for:!0},h(e)("notification-center","item")),[i.$slots.leading?(k(),r("div",p({key:0,"aria-hidden":"true"},{ref_for:!0},h(e)("notification-center","leading")),[y(i.$slots,"leading",{item:t})],16)):o("",!0),(k(),n(g(V()?"button":"div"),p({type:V()?"button":void 0},{ref_for:!0},h(e)("notification-center","body"),{onClick:e=>function(e){V()&&z("select",{item:e})}(t)}),{default:C(()=>[l("span",p({ref_for:!0},h(e)("notification-center","item-title")),b(t.title),17),t.description?(k(),r("span",p({key:0,ref_for:!0},h(e)("notification-center","description")),b(t.description),17)):o("",!0),void 0!==t.timestamp?(k(),n(h(N),p({key:1,ref_for:!0},{...h(e)("notification-center","time"),...void 0===c.now?{}:{now:c.now}},{value:t.timestamp,relative:""}),null,16,["value"])):o("",!0)]),_:2},1040,["type","onClick"])),i.$slots["item-actions"]||A()?(k(),r("div",p({key:1,ref_for:!0},h(e)("notification-center","item-actions")),[y(i.$slots,"item-actions",{item:t}),A()?(k(),n(h(x),p({key:0,ref_for:!0},h(e)("notification-center","read-toggle"),{size:"sm",variant:"ghost",onClick:e=>function(e){A()&&z("read-change",{item:e,read:!e.read})}(t)}),{default:C(()=>[s(b(t.read?c.markUnreadLabel:c.markReadLabel),1)]),_:2},1040,["onClick"])):o("",!0)],16)):o("",!0)],16,$))),128))],16))],16,R))}});export{w as default};
@@ -0,0 +1 @@
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./NotificationCenter.vue.cjs");exports.SkdxNotificationCenter=e.default;
@@ -0,0 +1,2 @@
1
+ export { default as SkdxNotificationCenter } from './NotificationCenter.vue.cjs';
2
+ export type { NotificationCenterItem } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ export { default as SkdxNotificationCenter } from './NotificationCenter.vue.js';
2
+ export type { NotificationCenterItem } from './types.js';
@@ -0,0 +1 @@
1
+ import t from"./NotificationCenter.vue.js";export{t as SkdxNotificationCenter};