@thatix.io/credit-ui 0.0.1

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 (213) hide show
  1. package/LICENSE +19 -0
  2. package/README.md +186 -0
  3. package/dist/components/atoms/Avatar/Avatar.stories.d.ts +11 -0
  4. package/dist/components/atoms/Avatar/Avatar.vue.d.ts +16 -0
  5. package/dist/components/atoms/Avatar/index.d.ts +2 -0
  6. package/dist/components/atoms/Badge/Badge.stories.d.ts +11 -0
  7. package/dist/components/atoms/Badge/Badge.vue.d.ts +40 -0
  8. package/dist/components/atoms/Badge/index.d.ts +2 -0
  9. package/dist/components/atoms/Button/Button.stories.d.ts +15 -0
  10. package/dist/components/atoms/Button/Button.vue.d.ts +47 -0
  11. package/dist/components/atoms/Button/index.d.ts +2 -0
  12. package/dist/components/atoms/Card/Card.stories.d.ts +9 -0
  13. package/dist/components/atoms/Card/Card.vue.d.ts +33 -0
  14. package/dist/components/atoms/Card/index.d.ts +2 -0
  15. package/dist/components/atoms/Checkbox/Checkbox.stories.d.ts +11 -0
  16. package/dist/components/atoms/Checkbox/Checkbox.vue.d.ts +28 -0
  17. package/dist/components/atoms/Checkbox/index.d.ts +2 -0
  18. package/dist/components/atoms/CurrencyDisplay/CurrencyDisplay.stories.d.ts +10 -0
  19. package/dist/components/atoms/CurrencyDisplay/CurrencyDisplay.vue.d.ts +26 -0
  20. package/dist/components/atoms/CurrencyDisplay/index.d.ts +2 -0
  21. package/dist/components/atoms/Divider/Divider.stories.d.ts +9 -0
  22. package/dist/components/atoms/Divider/Divider.vue.d.ts +11 -0
  23. package/dist/components/atoms/Divider/index.d.ts +2 -0
  24. package/dist/components/atoms/GradientMesh/GradientMesh.stories.d.ts +13 -0
  25. package/dist/components/atoms/GradientMesh/GradientMesh.vue.d.ts +43 -0
  26. package/dist/components/atoms/GradientMesh/index.d.ts +2 -0
  27. package/dist/components/atoms/Icon/Icon.stories.d.ts +11 -0
  28. package/dist/components/atoms/Icon/Icon.vue.d.ts +23 -0
  29. package/dist/components/atoms/Icon/index.d.ts +2 -0
  30. package/dist/components/atoms/Input/Input.stories.d.ts +13 -0
  31. package/dist/components/atoms/Input/Input.vue.d.ts +73 -0
  32. package/dist/components/atoms/Input/index.d.ts +2 -0
  33. package/dist/components/atoms/Label/Label.stories.d.ts +11 -0
  34. package/dist/components/atoms/Label/Label.vue.d.ts +28 -0
  35. package/dist/components/atoms/Label/index.d.ts +2 -0
  36. package/dist/components/atoms/Logo/Logo.stories.d.ts +10 -0
  37. package/dist/components/atoms/Logo/Logo.vue.d.ts +17 -0
  38. package/dist/components/atoms/Logo/index.d.ts +2 -0
  39. package/dist/components/atoms/Spinner/Spinner.stories.d.ts +11 -0
  40. package/dist/components/atoms/Spinner/Spinner.vue.d.ts +11 -0
  41. package/dist/components/atoms/Spinner/index.d.ts +2 -0
  42. package/dist/components/atoms/Typography/Typography.stories.d.ts +12 -0
  43. package/dist/components/atoms/Typography/Typography.vue.d.ts +32 -0
  44. package/dist/components/atoms/Typography/index.d.ts +2 -0
  45. package/dist/components/atoms/index.d.ts +14 -0
  46. package/dist/components/index.d.ts +14 -0
  47. package/dist/components/molecules/ActionButton/ActionButton.stories.d.ts +11 -0
  48. package/dist/components/molecules/ActionButton/ActionButton.vue.d.ts +31 -0
  49. package/dist/components/molecules/ActionButton/index.d.ts +2 -0
  50. package/dist/components/molecules/Alert/Alert.stories.d.ts +12 -0
  51. package/dist/components/molecules/Alert/Alert.vue.d.ts +20 -0
  52. package/dist/components/molecules/Alert/index.d.ts +2 -0
  53. package/dist/components/molecules/AnalysisStatus/AnalysisStatus.stories.d.ts +14 -0
  54. package/dist/components/molecules/AnalysisStatus/AnalysisStatus.vue.d.ts +16 -0
  55. package/dist/components/molecules/AnalysisStatus/index.d.ts +2 -0
  56. package/dist/components/molecules/ContractPaidCelebration/ContractPaidCelebration.stories.d.ts +9 -0
  57. package/dist/components/molecules/ContractPaidCelebration/ContractPaidCelebration.vue.d.ts +25 -0
  58. package/dist/components/molecules/ContractPaidCelebration/index.d.ts +2 -0
  59. package/dist/components/molecules/DocumentUpload/DocumentUpload.stories.d.ts +10 -0
  60. package/dist/components/molecules/DocumentUpload/DocumentUpload.vue.d.ts +40 -0
  61. package/dist/components/molecules/DocumentUpload/index.d.ts +2 -0
  62. package/dist/components/molecules/FilePreview/FilePreview.stories.d.ts +13 -0
  63. package/dist/components/molecules/FilePreview/FilePreview.vue.d.ts +32 -0
  64. package/dist/components/molecules/FilePreview/index.d.ts +2 -0
  65. package/dist/components/molecules/FormField/FormField.stories.d.ts +9 -0
  66. package/dist/components/molecules/FormField/FormField.vue.d.ts +39 -0
  67. package/dist/components/molecules/FormField/index.d.ts +2 -0
  68. package/dist/components/molecules/IdentifierInput/IdentifierInput.stories.d.ts +14 -0
  69. package/dist/components/molecules/IdentifierInput/IdentifierInput.vue.d.ts +29 -0
  70. package/dist/components/molecules/IdentifierInput/index.d.ts +2 -0
  71. package/dist/components/molecules/InfoCard/InfoCard.stories.d.ts +13 -0
  72. package/dist/components/molecules/InfoCard/InfoCard.vue.d.ts +53 -0
  73. package/dist/components/molecules/InfoCard/index.d.ts +2 -0
  74. package/dist/components/molecules/InputRangeMoney/InputRangeMoney.stories.d.ts +9 -0
  75. package/dist/components/molecules/InputRangeMoney/InputRangeMoney.vue.d.ts +19 -0
  76. package/dist/components/molecules/InputRangeMoney/index.d.ts +2 -0
  77. package/dist/components/molecules/InstallmentCard/InstallmentCard.stories.d.ts +9 -0
  78. package/dist/components/molecules/InstallmentCard/InstallmentCard.vue.d.ts +29 -0
  79. package/dist/components/molecules/InstallmentCard/index.d.ts +2 -0
  80. package/dist/components/molecules/InstallmentSelector/InstallmentSelector.stories.d.ts +10 -0
  81. package/dist/components/molecules/InstallmentSelector/InstallmentSelector.vue.d.ts +28 -0
  82. package/dist/components/molecules/InstallmentSelector/index.d.ts +2 -0
  83. package/dist/components/molecules/MarginIndicator/MarginIndicator.stories.d.ts +12 -0
  84. package/dist/components/molecules/MarginIndicator/MarginIndicator.vue.d.ts +18 -0
  85. package/dist/components/molecules/MarginIndicator/index.d.ts +2 -0
  86. package/dist/components/molecules/Modal/Modal.stories.d.ts +8 -0
  87. package/dist/components/molecules/Modal/Modal.vue.d.ts +38 -0
  88. package/dist/components/molecules/Modal/index.d.ts +2 -0
  89. package/dist/components/molecules/PasswordInput/PasswordInput.stories.d.ts +11 -0
  90. package/dist/components/molecules/PasswordInput/PasswordInput.vue.d.ts +30 -0
  91. package/dist/components/molecules/PasswordInput/index.d.ts +2 -0
  92. package/dist/components/molecules/PendingProposalBanner/PendingProposalBanner.stories.d.ts +10 -0
  93. package/dist/components/molecules/PendingProposalBanner/PendingProposalBanner.vue.d.ts +24 -0
  94. package/dist/components/molecules/PendingProposalBanner/index.d.ts +2 -0
  95. package/dist/components/molecules/PinInput/PinInput.stories.d.ts +13 -0
  96. package/dist/components/molecules/PinInput/PinInput.vue.d.ts +36 -0
  97. package/dist/components/molecules/PinInput/index.d.ts +2 -0
  98. package/dist/components/molecules/ProgressBar/ProgressBar.stories.d.ts +12 -0
  99. package/dist/components/molecules/ProgressBar/ProgressBar.vue.d.ts +24 -0
  100. package/dist/components/molecules/ProgressBar/index.d.ts +2 -0
  101. package/dist/components/molecules/SearchBar/SearchBar.stories.d.ts +11 -0
  102. package/dist/components/molecules/SearchBar/SearchBar.vue.d.ts +30 -0
  103. package/dist/components/molecules/SearchBar/index.d.ts +2 -0
  104. package/dist/components/molecules/SimulationLoading/SimulationLoading.stories.d.ts +10 -0
  105. package/dist/components/molecules/SimulationLoading/SimulationLoading.vue.d.ts +17 -0
  106. package/dist/components/molecules/SimulationLoading/index.d.ts +2 -0
  107. package/dist/components/molecules/StatusBadge/StatusBadge.stories.d.ts +12 -0
  108. package/dist/components/molecules/StatusBadge/StatusBadge.vue.d.ts +38 -0
  109. package/dist/components/molecules/StatusBadge/index.d.ts +2 -0
  110. package/dist/components/molecules/StepperProgress/StepperProgress.stories.d.ts +11 -0
  111. package/dist/components/molecules/StepperProgress/StepperProgress.vue.d.ts +22 -0
  112. package/dist/components/molecules/StepperProgress/index.d.ts +2 -0
  113. package/dist/components/molecules/WelcomeCard/WelcomeCard.stories.d.ts +11 -0
  114. package/dist/components/molecules/WelcomeCard/WelcomeCard.vue.d.ts +33 -0
  115. package/dist/components/molecules/WelcomeCard/index.d.ts +2 -0
  116. package/dist/components/molecules/index.d.ts +23 -0
  117. package/dist/components/organisms/AuthLayout/AuthLayout.stories.d.ts +10 -0
  118. package/dist/components/organisms/AuthLayout/AuthLayout.vue.d.ts +42 -0
  119. package/dist/components/organisms/AuthLayout/index.d.ts +2 -0
  120. package/dist/components/organisms/BottomNavigation/BottomNavigation.stories.d.ts +8 -0
  121. package/dist/components/organisms/BottomNavigation/BottomNavigation.vue.d.ts +38 -0
  122. package/dist/components/organisms/BottomNavigation/index.d.ts +2 -0
  123. package/dist/components/organisms/ConsentForm/ConsentForm.stories.d.ts +9 -0
  124. package/dist/components/organisms/ConsentForm/ConsentForm.vue.d.ts +45 -0
  125. package/dist/components/organisms/ConsentForm/TermModal.vue.d.ts +37 -0
  126. package/dist/components/organisms/ConsentForm/index.d.ts +4 -0
  127. package/dist/components/organisms/ContractCard/ContractCard.stories.d.ts +12 -0
  128. package/dist/components/organisms/ContractCard/ContractCard.vue.d.ts +41 -0
  129. package/dist/components/organisms/ContractCard/index.d.ts +2 -0
  130. package/dist/components/organisms/ContractDetails/ContractDetails.stories.d.ts +9 -0
  131. package/dist/components/organisms/ContractDetails/ContractDetails.vue.d.ts +53 -0
  132. package/dist/components/organisms/ContractDetails/index.d.ts +2 -0
  133. package/dist/components/organisms/CreatePasswordForm/CreatePasswordForm.stories.d.ts +12 -0
  134. package/dist/components/organisms/CreatePasswordForm/CreatePasswordForm.vue.d.ts +52 -0
  135. package/dist/components/organisms/CreatePasswordForm/index.d.ts +2 -0
  136. package/dist/components/organisms/DashboardHeader/DashboardHeader.stories.d.ts +8 -0
  137. package/dist/components/organisms/DashboardHeader/DashboardHeader.vue.d.ts +14 -0
  138. package/dist/components/organisms/DashboardHeader/index.d.ts +2 -0
  139. package/dist/components/organisms/DocumentUploadSection/DocumentUploadSection.stories.d.ts +10 -0
  140. package/dist/components/organisms/DocumentUploadSection/DocumentUploadSection.vue.d.ts +72 -0
  141. package/dist/components/organisms/DocumentUploadSection/index.d.ts +2 -0
  142. package/dist/components/organisms/Footer/Footer.stories.d.ts +10 -0
  143. package/dist/components/organisms/Footer/Footer.vue.d.ts +50 -0
  144. package/dist/components/organisms/Footer/index.d.ts +2 -0
  145. package/dist/components/organisms/ForgotPasswordForm/ForgotPasswordForm.stories.d.ts +12 -0
  146. package/dist/components/organisms/ForgotPasswordForm/ForgotPasswordForm.vue.d.ts +64 -0
  147. package/dist/components/organisms/ForgotPasswordForm/index.d.ts +2 -0
  148. package/dist/components/organisms/Header/Header.stories.d.ts +9 -0
  149. package/dist/components/organisms/Header/Header.vue.d.ts +36 -0
  150. package/dist/components/organisms/Header/index.d.ts +2 -0
  151. package/dist/components/organisms/InstallmentHistory/InstallmentHistory.stories.d.ts +10 -0
  152. package/dist/components/organisms/InstallmentHistory/InstallmentHistory.vue.d.ts +42 -0
  153. package/dist/components/organisms/InstallmentHistory/index.d.ts +2 -0
  154. package/dist/components/organisms/LoginForm/LoginForm.stories.d.ts +10 -0
  155. package/dist/components/organisms/LoginForm/LoginForm.vue.d.ts +51 -0
  156. package/dist/components/organisms/LoginForm/index.d.ts +2 -0
  157. package/dist/components/organisms/ManualInputModal/ManualInputModal.stories.d.ts +9 -0
  158. package/dist/components/organisms/ManualInputModal/ManualInputModal.vue.d.ts +41 -0
  159. package/dist/components/organisms/ManualInputModal/index.d.ts +2 -0
  160. package/dist/components/organisms/OfferCard/OfferCard.stories.d.ts +11 -0
  161. package/dist/components/organisms/OfferCard/OfferCard.vue.d.ts +39 -0
  162. package/dist/components/organisms/OfferCard/index.d.ts +2 -0
  163. package/dist/components/organisms/ProfileForm/ProfileForm.stories.d.ts +10 -0
  164. package/dist/components/organisms/ProfileForm/ProfileForm.vue.d.ts +62 -0
  165. package/dist/components/organisms/ProfileForm/index.d.ts +2 -0
  166. package/dist/components/organisms/QuickActions/QuickActions.stories.d.ts +9 -0
  167. package/dist/components/organisms/QuickActions/QuickActions.vue.d.ts +24 -0
  168. package/dist/components/organisms/QuickActions/index.d.ts +2 -0
  169. package/dist/components/organisms/ResetPasswordForm/ResetPasswordForm.stories.d.ts +12 -0
  170. package/dist/components/organisms/ResetPasswordForm/ResetPasswordForm.vue.d.ts +52 -0
  171. package/dist/components/organisms/ResetPasswordForm/index.d.ts +2 -0
  172. package/dist/components/organisms/SCRConsentModal/SCRConsentModal.stories.d.ts +8 -0
  173. package/dist/components/organisms/SCRConsentModal/SCRConsentModal.vue.d.ts +18 -0
  174. package/dist/components/organisms/SCRConsentModal/index.d.ts +2 -0
  175. package/dist/components/organisms/Sidebar/Sidebar.stories.d.ts +8 -0
  176. package/dist/components/organisms/Sidebar/Sidebar.vue.d.ts +78 -0
  177. package/dist/components/organisms/Sidebar/SidebarItem.vue.d.ts +28 -0
  178. package/dist/components/organisms/Sidebar/index.d.ts +4 -0
  179. package/dist/components/organisms/SimulationResult/SimulationResult.stories.d.ts +11 -0
  180. package/dist/components/organisms/SimulationResult/SimulationResult.vue.d.ts +44 -0
  181. package/dist/components/organisms/SimulationResult/index.d.ts +2 -0
  182. package/dist/components/organisms/TopNavigation/TopNavigation.stories.d.ts +8 -0
  183. package/dist/components/organisms/TopNavigation/TopNavigation.vue.d.ts +48 -0
  184. package/dist/components/organisms/TopNavigation/index.d.ts +2 -0
  185. package/dist/components/organisms/index.d.ts +26 -0
  186. package/dist/components/templates/FormLayout/FormLayout.stories.d.ts +65 -0
  187. package/dist/components/templates/FormLayout/FormLayout.vue.d.ts +84 -0
  188. package/dist/components/templates/FormLayout/index.d.ts +2 -0
  189. package/dist/components/templates/index.d.ts +1 -0
  190. package/dist/composables/index.d.ts +4 -0
  191. package/dist/composables/useTheme.d.ts +66 -0
  192. package/dist/credit-ui.cjs.js +90 -0
  193. package/dist/credit-ui.css +1 -0
  194. package/dist/credit-ui.es.js +8936 -0
  195. package/dist/images/auth-background.jpg +0 -0
  196. package/dist/index.d.ts +20 -0
  197. package/dist/logo.png +0 -0
  198. package/dist/nuxt/index.d.ts +5 -0
  199. package/dist/nuxt/module.d.ts +17 -0
  200. package/dist/nuxt.cjs.js +1 -0
  201. package/dist/nuxt.es.js +31 -0
  202. package/dist/themes/defaults.d.ts +96 -0
  203. package/dist/themes/index.d.ts +8 -0
  204. package/dist/themes/utils.d.ts +35 -0
  205. package/dist/themes.cjs.js +6 -0
  206. package/dist/themes.es.js +163 -0
  207. package/dist/tokens.css +124 -0
  208. package/dist/types/index.d.ts +6 -0
  209. package/dist/types/theme.d.ts +142 -0
  210. package/package.json +75 -0
  211. package/src/nuxt/runtime/composables/useTheme.ts +86 -0
  212. package/src/nuxt/runtime/plugin.server.ts +32 -0
  213. package/src/nuxt/runtime/plugin.ts +22 -0
@@ -0,0 +1,22 @@
1
+ import { IconName } from '../../atoms/Icon/Icon.vue';
2
+ /**
3
+ * StepperProgress - Indicador de progresso para fluxo multi-step
4
+ *
5
+ * Exibe o progresso do usuário em um fluxo de múltiplas etapas.
6
+ */
7
+ export interface Step {
8
+ /** ID único da etapa */
9
+ id: number;
10
+ /** Label exibido abaixo do círculo */
11
+ label: string;
12
+ /** Nome do ícone */
13
+ icon: IconName;
14
+ }
15
+ export interface StepperProgressProps {
16
+ /** Etapa atual (1-indexed) */
17
+ currentStep: number;
18
+ /** Array de etapas */
19
+ steps: Step[];
20
+ }
21
+ declare const _default: import('vue').DefineComponent<StepperProgressProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<StepperProgressProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
22
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as StepperProgress } from './StepperProgress.vue';
2
+ export type { StepperProgressProps, Step } from './StepperProgress.vue';
@@ -0,0 +1,11 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as WelcomeCard } from './WelcomeCard.vue';
3
+ declare const meta: Meta<typeof WelcomeCard>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const WithCustomSubtitle: Story;
8
+ export declare const WithCustomGreeting: Story;
9
+ export declare const WithAvatarImage: Story;
10
+ export declare const WithoutAvatar: Story;
11
+ export declare const WithActions: Story;
@@ -0,0 +1,33 @@
1
+ export interface WelcomeCardProps {
2
+ /** Nome do usuário */
3
+ userName: string;
4
+ /** Sobrenome ou nome completo para avatar */
5
+ userFullName?: string;
6
+ /** URL da imagem do avatar */
7
+ avatarUrl?: string;
8
+ /** Mensagem ou subtítulo customizado */
9
+ subtitle?: string;
10
+ /** Saudação customizada (sobrescreve automática) */
11
+ greeting?: string;
12
+ /** Mostrar avatar */
13
+ showAvatar?: boolean;
14
+ }
15
+ declare function __VLS_template(): {
16
+ attrs: Partial<{}>;
17
+ slots: {
18
+ actions?(_: {}): any;
19
+ };
20
+ refs: {};
21
+ rootEl: HTMLDivElement;
22
+ };
23
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
24
+ declare const __VLS_component: import('vue').DefineComponent<WelcomeCardProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<WelcomeCardProps> & Readonly<{}>, {
25
+ showAvatar: boolean;
26
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
27
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
28
+ export default _default;
29
+ type __VLS_WithTemplateSlots<T, S> = T & {
30
+ new (): {
31
+ $slots: S;
32
+ };
33
+ };
@@ -0,0 +1,2 @@
1
+ export { default as WelcomeCard } from './WelcomeCard.vue';
2
+ export type { WelcomeCardProps } from './WelcomeCard.vue';
@@ -0,0 +1,23 @@
1
+ export * from './ActionButton';
2
+ export * from './Alert';
3
+ export * from './AnalysisStatus';
4
+ export * from './ContractPaidCelebration';
5
+ export * from './DocumentUpload';
6
+ export * from './FilePreview';
7
+ export * from './FormField';
8
+ export * from './IdentifierInput';
9
+ export * from './InfoCard';
10
+ export * from './InputRangeMoney';
11
+ export * from './InstallmentCard';
12
+ export * from './InstallmentSelector';
13
+ export * from './MarginIndicator';
14
+ export * from './Modal';
15
+ export * from './PasswordInput';
16
+ export * from './PendingProposalBanner';
17
+ export * from './PinInput';
18
+ export * from './ProgressBar';
19
+ export * from './SearchBar';
20
+ export * from './SimulationLoading';
21
+ export * from './StatusBadge';
22
+ export * from './StepperProgress';
23
+ export * from './WelcomeCard';
@@ -0,0 +1,10 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as AuthLayout } from './AuthLayout.vue';
3
+ declare const meta: Meta<typeof AuthLayout>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const GiroCredito: Story;
8
+ export declare const WithBackgroundImage: Story;
9
+ export declare const WithoutLogo: Story;
10
+ export declare const WithCustomFooter: Story;
@@ -0,0 +1,42 @@
1
+ export interface AuthLayoutProps {
2
+ /** Título do layout */
3
+ title?: string;
4
+ /** Subtítulo do layout */
5
+ subtitle?: string;
6
+ /** Mostrar logo */
7
+ showLogo?: boolean;
8
+ /** URL do logo */
9
+ logoSrc?: string;
10
+ /** Alt text do logo */
11
+ logoAlt?: string;
12
+ /** URL da imagem de fundo */
13
+ backgroundImage?: string;
14
+ /** Posição da imagem de fundo */
15
+ backgroundPosition?: string;
16
+ }
17
+ declare function __VLS_template(): {
18
+ attrs: Partial<{}>;
19
+ slots: {
20
+ default?(_: {}): any;
21
+ footer?(_: {}): any;
22
+ };
23
+ refs: {};
24
+ rootEl: HTMLDivElement;
25
+ };
26
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
27
+ declare const __VLS_component: import('vue').DefineComponent<AuthLayoutProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<AuthLayoutProps> & Readonly<{}>, {
28
+ title: string;
29
+ subtitle: string;
30
+ showLogo: boolean;
31
+ logoSrc: string;
32
+ logoAlt: string;
33
+ backgroundImage: string;
34
+ backgroundPosition: string;
35
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
36
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
37
+ export default _default;
38
+ type __VLS_WithTemplateSlots<T, S> = T & {
39
+ new (): {
40
+ $slots: S;
41
+ };
42
+ };
@@ -0,0 +1,2 @@
1
+ export { default as AuthLayout } from './AuthLayout.vue';
2
+ export type { AuthLayoutProps } from './AuthLayout.vue';
@@ -0,0 +1,8 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as BottomNavigation } from './BottomNavigation.vue';
3
+ declare const meta: Meta<typeof BottomNavigation>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const SimulationActive: Story;
8
+ export declare const ContractsActive: Story;
@@ -0,0 +1,38 @@
1
+ import { IconName } from '../../atoms';
2
+ /**
3
+ * BottomNavigation - Organism de navegação mobile
4
+ *
5
+ * Exibe navegação fixa no rodapé com ícones e labels para telas < 768px.
6
+ * Oculto em desktop, onde TopNavigation assume.
7
+ *
8
+ * @example
9
+ * ```vue
10
+ * <BottomNavigation
11
+ * :items="navItems"
12
+ * :current-path="currentRoute"
13
+ * @navigate="handleNav"
14
+ * />
15
+ * ```
16
+ */
17
+ export interface NavigationItem {
18
+ /** Label do item */
19
+ label: string;
20
+ /** Rota/path do item */
21
+ to: string;
22
+ /** Nome do ícone */
23
+ icon: IconName;
24
+ }
25
+ export interface BottomNavigationProps {
26
+ /** Itens de navegação */
27
+ items: NavigationItem[];
28
+ /** Path atual para highlight */
29
+ currentPath?: string;
30
+ }
31
+ declare const _default: import('vue').DefineComponent<BottomNavigationProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
32
+ navigate: (to: string) => any;
33
+ }, string, import('vue').PublicProps, Readonly<BottomNavigationProps> & Readonly<{
34
+ onNavigate?: ((to: string) => any) | undefined;
35
+ }>, {
36
+ currentPath: string;
37
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLElement>;
38
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as BottomNavigation } from './BottomNavigation.vue';
2
+ export type { BottomNavigationProps, NavigationItem } from './BottomNavigation.vue';
@@ -0,0 +1,9 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as ConsentForm } from './ConsentForm.vue';
3
+ declare const meta: Meta<typeof ConsentForm>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const Loading: Story;
8
+ export declare const SingleTerm: Story;
9
+ export declare const OptionalTerms: Story;
@@ -0,0 +1,45 @@
1
+ import { Term } from './TermModal.vue';
2
+ /**
3
+ * ConsentForm Component
4
+ *
5
+ * Componente reutilizável (Organism) para coleta de consentimento de termos legais.
6
+ * Garante conformidade com LGPD e suporta customização.
7
+ *
8
+ * @example
9
+ * ```vue
10
+ * <ConsentForm
11
+ * :terms="[
12
+ * { id: '1', type: 'lgpd', label: 'LGPD', required: true },
13
+ * { id: '2', type: 'scr', label: 'SCR', required: true }
14
+ * ]"
15
+ * :loading="false"
16
+ * @update:is-valid="handleValidChange"
17
+ * />
18
+ * ```
19
+ */
20
+ export interface ConsentTerm extends Term {
21
+ /** Se o termo é obrigatório */
22
+ required?: boolean;
23
+ }
24
+ export interface ConsentFormProps {
25
+ /** Array de termos a serem aceitos */
26
+ terms: ConsentTerm[];
27
+ /** Estado de loading */
28
+ loading?: boolean;
29
+ }
30
+ declare function getAcceptedTerms(): {
31
+ id: string;
32
+ type: string;
33
+ acceptedAt: Date;
34
+ }[];
35
+ declare const _default: import('vue').DefineComponent<ConsentFormProps, {
36
+ isFormValid: boolean;
37
+ getAcceptedTerms: typeof getAcceptedTerms;
38
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
39
+ "update:isValid": (isValid: boolean) => any;
40
+ }, string, import('vue').PublicProps, Readonly<ConsentFormProps> & Readonly<{
41
+ "onUpdate:isValid"?: ((isValid: boolean) => any) | undefined;
42
+ }>, {
43
+ loading: boolean;
44
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
45
+ export default _default;
@@ -0,0 +1,37 @@
1
+ /**
2
+ * TermModal Component
3
+ *
4
+ * Modal específico para exibir conteúdo de termos legais.
5
+ * Exibe conteúdo padrão estruturado baseado no tipo do termo.
6
+ *
7
+ * @example
8
+ * ```vue
9
+ * <TermModal
10
+ * :open="isOpen"
11
+ * :term="{ id: '1', type: 'lgpd', label: 'LGPD', url: '...' }"
12
+ * @close="isOpen = false"
13
+ * />
14
+ * ```
15
+ */
16
+ export interface Term {
17
+ /** ID único do termo */
18
+ id: string;
19
+ /** Tipo do termo (lgpd, scr, termos-uso, etc.) */
20
+ type: string;
21
+ /** Label do termo */
22
+ label: string;
23
+ /** URL do conteúdo (opcional) */
24
+ url?: string;
25
+ }
26
+ export interface TermModalProps {
27
+ /** Estado de abertura do modal */
28
+ open: boolean;
29
+ /** Objeto do termo a ser exibido */
30
+ term: Term | null;
31
+ }
32
+ declare const _default: import('vue').DefineComponent<TermModalProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
33
+ close: () => any;
34
+ }, string, import('vue').PublicProps, Readonly<TermModalProps> & Readonly<{
35
+ onClose?: (() => any) | undefined;
36
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
37
+ export default _default;
@@ -0,0 +1,4 @@
1
+ export { default as ConsentForm } from './ConsentForm.vue';
2
+ export { default as TermModal } from './TermModal.vue';
3
+ export type { ConsentFormProps, ConsentTerm } from './ConsentForm.vue';
4
+ export type { TermModalProps, Term } from './TermModal.vue';
@@ -0,0 +1,12 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as ContractCard } from './ContractCard.vue';
3
+ declare const meta: Meta<typeof ContractCard>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const FullyPaid: Story;
8
+ export declare const Overdue: Story;
9
+ export declare const Cancelled: Story;
10
+ export declare const HighProgress: Story;
11
+ export declare const LowProgress: Story;
12
+ export declare const HighValue: Story;
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Status do contrato
3
+ */
4
+ export type ContractStatus = 'ACTIVE' | 'PAID' | 'CANCELLED' | 'DEFAULTED';
5
+ /**
6
+ * Status da parcela
7
+ */
8
+ export type InstallmentStatus = 'PENDING' | 'PAID' | 'OVERDUE';
9
+ /**
10
+ * Próxima parcela
11
+ */
12
+ export interface NextInstallment {
13
+ dueDate: string;
14
+ amount: number;
15
+ status: InstallmentStatus;
16
+ }
17
+ /**
18
+ * Resumo do contrato
19
+ */
20
+ export interface ContractSummary {
21
+ id: string;
22
+ contractNumber: string;
23
+ status: ContractStatus;
24
+ contractedAmount: number;
25
+ installmentsPaid: number;
26
+ totalInstallments: number;
27
+ balanceDue: number;
28
+ nextInstallment?: NextInstallment;
29
+ }
30
+ export interface ContractCardProps {
31
+ /** Dados do contrato */
32
+ contract: ContractSummary;
33
+ }
34
+ declare const _default: import('vue').DefineComponent<ContractCardProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
35
+ "view-details": (contractId: string) => any;
36
+ "view-installments": (contractId: string) => any;
37
+ }, string, import('vue').PublicProps, Readonly<ContractCardProps> & Readonly<{
38
+ "onView-details"?: ((contractId: string) => any) | undefined;
39
+ "onView-installments"?: ((contractId: string) => any) | undefined;
40
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
41
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as ContractCard } from './ContractCard.vue';
2
+ export type { ContractCardProps, ContractSummary, ContractStatus, InstallmentStatus, NextInstallment, } from './ContractCard.vue';
@@ -0,0 +1,9 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as ContractDetails } from './ContractDetails.vue';
3
+ declare const meta: Meta<typeof ContractDetails>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Active: Story;
7
+ export declare const Paid: Story;
8
+ export declare const WithoutActions: Story;
9
+ export declare const Overdue: Story;
@@ -0,0 +1,53 @@
1
+ /**
2
+ * ContractDetails - Componente Organism
3
+ *
4
+ * Exibe detalhes expandidos de um contrato, compondo componentes Atoms e Molecules.
5
+ * Componente puro que recebe dados via props e emite eventos para ações.
6
+ *
7
+ * @example
8
+ * ```vue
9
+ * <ContractDetails
10
+ * :contract="activeContract"
11
+ * @download-ccb="handleDownloadCCB"
12
+ * @download-boleto="handleDownloadBoleto"
13
+ * @view-history="handleViewHistory"
14
+ * />
15
+ * ```
16
+ */
17
+ export interface NextInstallment {
18
+ number: number;
19
+ amount: number;
20
+ dueDate: string;
21
+ status: string;
22
+ }
23
+ export interface ContractSummary {
24
+ id: string;
25
+ contractNumber: string;
26
+ status: string;
27
+ contractedAmount: number;
28
+ balanceDue?: number;
29
+ totalInstallments?: number;
30
+ installmentsPaid?: number;
31
+ nextInstallment?: NextInstallment;
32
+ }
33
+ export interface ContractDetailsProps {
34
+ /** Dados do contrato */
35
+ contract: ContractSummary;
36
+ /** Permite colapsar/expandir o componente (futuro) */
37
+ collapsible?: boolean;
38
+ /** Exibir botões de ação */
39
+ showActions?: boolean;
40
+ }
41
+ declare const _default: import('vue').DefineComponent<ContractDetailsProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
42
+ "download-ccb": (contractId: string) => any;
43
+ "download-boleto": (contractId: string) => any;
44
+ "view-history": (contractId: string) => any;
45
+ }, string, import('vue').PublicProps, Readonly<ContractDetailsProps> & Readonly<{
46
+ "onDownload-ccb"?: ((contractId: string) => any) | undefined;
47
+ "onDownload-boleto"?: ((contractId: string) => any) | undefined;
48
+ "onView-history"?: ((contractId: string) => any) | undefined;
49
+ }>, {
50
+ showActions: boolean;
51
+ collapsible: boolean;
52
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
53
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as ContractDetails } from './ContractDetails.vue';
2
+ export type { ContractDetailsProps, ContractSummary, NextInstallment } from './ContractDetails.vue';
@@ -0,0 +1,12 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as CreatePasswordForm } from './CreatePasswordForm.vue';
3
+ declare const meta: Meta<typeof CreatePasswordForm>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const WithError: Story;
8
+ export declare const WithPasswordMismatch: Story;
9
+ export declare const Loading: Story;
10
+ export declare const WithServerError: Story;
11
+ export declare const WithSuccess: Story;
12
+ export declare const InAuthLayout: Story;
@@ -0,0 +1,52 @@
1
+ export interface CreatePasswordFormData {
2
+ newPassword: string;
3
+ }
4
+ export interface CreatePasswordFormErrors {
5
+ newPassword?: string;
6
+ confirmPassword?: string;
7
+ }
8
+ export interface CreatePasswordFormProps {
9
+ /** Estado de carregamento */
10
+ loading?: boolean;
11
+ /** Mensagem de erro do servidor */
12
+ errorMessage?: string;
13
+ /** Mensagem de sucesso */
14
+ successMessage?: string;
15
+ /** Erros de validação dos campos */
16
+ errors?: CreatePasswordFormErrors;
17
+ /** Texto do botão de submit */
18
+ submitText?: string;
19
+ /** Texto do botão de submit quando loading */
20
+ loadingText?: string;
21
+ }
22
+ declare function __VLS_template(): {
23
+ attrs: Partial<{}>;
24
+ slots: {
25
+ default?(_: {}): any;
26
+ };
27
+ refs: {};
28
+ rootEl: HTMLFormElement;
29
+ };
30
+ type __VLS_TemplateResult = ReturnType<typeof __VLS_template>;
31
+ declare const __VLS_component: import('vue').DefineComponent<CreatePasswordFormProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
32
+ submit: (data: CreatePasswordFormData & {
33
+ confirmPassword: string;
34
+ }) => any;
35
+ }, string, import('vue').PublicProps, Readonly<CreatePasswordFormProps> & Readonly<{
36
+ onSubmit?: ((data: CreatePasswordFormData & {
37
+ confirmPassword: string;
38
+ }) => any) | undefined;
39
+ }>, {
40
+ loading: boolean;
41
+ errorMessage: string;
42
+ successMessage: string;
43
+ submitText: string;
44
+ loadingText: string;
45
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLFormElement>;
46
+ declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
47
+ export default _default;
48
+ type __VLS_WithTemplateSlots<T, S> = T & {
49
+ new (): {
50
+ $slots: S;
51
+ };
52
+ };
@@ -0,0 +1,2 @@
1
+ export { default as CreatePasswordForm } from './CreatePasswordForm.vue';
2
+ export type { CreatePasswordFormProps, CreatePasswordFormData, CreatePasswordFormErrors, } from './CreatePasswordForm.vue';
@@ -0,0 +1,8 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as DashboardHeader } from './DashboardHeader.vue';
3
+ declare const meta: Meta<typeof DashboardHeader>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const WithoutAvatar: Story;
8
+ export declare const DefaultUser: Story;
@@ -0,0 +1,14 @@
1
+ export interface DashboardHeaderProps {
2
+ /** Nome do usuário */
3
+ userName?: string;
4
+ /** CPF do usuário (será mascarado) */
5
+ userCpf?: string;
6
+ /** Mostrar avatar */
7
+ showAvatar?: boolean;
8
+ }
9
+ declare const _default: import('vue').DefineComponent<DashboardHeaderProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<DashboardHeaderProps> & Readonly<{}>, {
10
+ userName: string;
11
+ showAvatar: boolean;
12
+ userCpf: string;
13
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
14
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as DashboardHeader } from './DashboardHeader.vue';
2
+ export type { DashboardHeaderProps } from './DashboardHeader.vue';
@@ -0,0 +1,10 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as DocumentUploadSection } from './DocumentUploadSection.vue';
3
+ declare const meta: Meta<typeof DocumentUploadSection>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const Disabled: Story;
8
+ export declare const WithoutPreview: Story;
9
+ export declare const WithoutContinueButton: Story;
10
+ export declare const SingleDocument: Story;
@@ -0,0 +1,72 @@
1
+ /**
2
+ * DocumentUploadSection - Organism para gerenciamento de múltiplos uploads de documentos
3
+ *
4
+ * Agrupa e coordena múltiplos componentes DocumentUpload para gerenciar upload de todos
5
+ * os documentos necessários. Valida completude dos documentos obrigatórios
6
+ * e fornece feedback visual unificado.
7
+ *
8
+ * @example
9
+ * <DocumentUploadSection
10
+ * :documents="requiredDocuments"
11
+ * :show-preview="true"
12
+ * @complete="handleComplete"
13
+ * @document-uploaded="handleDocumentUploaded"
14
+ * @error="handleError"
15
+ * />
16
+ */
17
+ export interface DocumentType {
18
+ /** Identificador único (ex: 'rg', 'cnh', 'residence') */
19
+ id: string;
20
+ /** Label exibido (ex: 'RG', 'CNH', 'Comprovante de Residência') */
21
+ label: string;
22
+ /** Se é obrigatório */
23
+ required: boolean;
24
+ /** Tipos MIME aceitos */
25
+ accept?: string;
26
+ /** Tamanho máximo em bytes */
27
+ maxSize?: number;
28
+ /** Máximo de arquivos */
29
+ maxFiles?: number;
30
+ }
31
+ export interface DocumentState {
32
+ /** ID do documento */
33
+ id: string;
34
+ /** Status do documento */
35
+ status: 'pending' | 'uploaded' | 'approved' | 'rejected';
36
+ /** Arquivos enviados */
37
+ files: File[];
38
+ /** Mensagem de erro (se houver) */
39
+ error?: string;
40
+ }
41
+ export interface DocumentUploadSectionProps {
42
+ /** Array de tipos de documentos necessários */
43
+ documents: DocumentType[];
44
+ /** Desabilita toda a seção */
45
+ disabled?: boolean;
46
+ /** Mostra preview dos arquivos enviados */
47
+ showPreview?: boolean;
48
+ /** Oculta o botão Continuar */
49
+ hideContinueButton?: boolean;
50
+ }
51
+ declare const _default: import('vue').DefineComponent<DocumentUploadSectionProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
52
+ error: (error: {
53
+ documentId: string;
54
+ message: string;
55
+ }) => any;
56
+ complete: (documents: DocumentState[]) => any;
57
+ "document-uploaded": (documentId: string, files: File[]) => any;
58
+ "document-removed": (documentId: string) => any;
59
+ }, string, import('vue').PublicProps, Readonly<DocumentUploadSectionProps> & Readonly<{
60
+ onError?: ((error: {
61
+ documentId: string;
62
+ message: string;
63
+ }) => any) | undefined;
64
+ onComplete?: ((documents: DocumentState[]) => any) | undefined;
65
+ "onDocument-uploaded"?: ((documentId: string, files: File[]) => any) | undefined;
66
+ "onDocument-removed"?: ((documentId: string) => any) | undefined;
67
+ }>, {
68
+ disabled: boolean;
69
+ showPreview: boolean;
70
+ hideContinueButton: boolean;
71
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
72
+ export default _default;
@@ -0,0 +1,2 @@
1
+ export { default as DocumentUploadSection } from './DocumentUploadSection.vue';
2
+ export type { DocumentUploadSectionProps, DocumentType, DocumentState } from './DocumentUploadSection.vue';
@@ -0,0 +1,10 @@
1
+ import { Meta, StoryObj } from '@storybook/vue3';
2
+ import { default as Footer } from './Footer.vue';
3
+ declare const meta: Meta<typeof Footer>;
4
+ export default meta;
5
+ type Story = StoryObj<typeof meta>;
6
+ export declare const Default: Story;
7
+ export declare const WithExternalLinks: Story;
8
+ export declare const Minimal: Story;
9
+ export declare const CustomTitles: Story;
10
+ export declare const InPage: Story;