@amirjalili1374/ui-kit 1.2.0 → 1.2.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 (141) hide show
  1. package/README.md +10 -10
  2. package/package.json +1 -2
  3. package/src/assets/fonts/A Massir Spray.ttf +0 -0
  4. package/src/assets/fonts/BYekan.ttf +0 -0
  5. package/src/assets/fonts/BYekan.woff +0 -0
  6. package/src/assets/fonts/BYekan.woff2 +0 -0
  7. package/src/assets/fonts/Dima Shekasteh 2 Free.ttf +0 -0
  8. package/src/assets/fonts/Dima Shekasteh Free Regular.ttf +0 -0
  9. package/src/assets/fonts/IRANSansWeb.ts +0 -1
  10. package/src/assets/fonts/IRANSansWeb.ttf +0 -0
  11. package/src/assets/fonts/IRANSansXBlack.ttf +0 -0
  12. package/src/assets/fonts/IRANSansXBold.ttf +0 -0
  13. package/src/assets/fonts/IRANSansXDemiBold.ttf +0 -0
  14. package/src/assets/fonts/IRANSansXExtraBold.ttf +0 -0
  15. package/src/assets/fonts/IRANSansXLight.ttf +0 -0
  16. package/src/assets/fonts/IRANSansXMedium.ttf +0 -0
  17. package/src/assets/fonts/IRANSansXRegular.ttf +0 -0
  18. package/src/assets/fonts/IRANSansXThin.ttf +0 -0
  19. package/src/assets/fonts/IRANSansXUltraLight.ttf +0 -0
  20. package/src/assets/fonts/IranNastaliq.ttf +0 -0
  21. package/src/assets/fonts/Vazir-Medium-FD.ttf +0 -0
  22. package/src/assets/fonts/Vazir-Medium-FD.woff +0 -0
  23. package/src/assets/fonts/Vazir-Medium-FD.woff2 +0 -0
  24. package/src/assets/fonts/Vazir-Regular-FD.eot +0 -0
  25. package/src/assets/fonts/kalamehBold.woff +0 -0
  26. package/src/assets/fonts/kalamehBold.woff2 +0 -0
  27. package/src/assets/fonts/kalamehHeavy.woff +0 -0
  28. package/src/assets/fonts/kalamehHeavy.woff2 +0 -0
  29. package/src/assets/fonts/kalamehLight.woff +0 -0
  30. package/src/assets/fonts/kalamehLight.woff2 +0 -0
  31. package/src/assets/fonts/kalamehRegular.woff +0 -0
  32. package/src/assets/fonts/kalamehRegular.woff2 +0 -0
  33. package/src/assets/images/auth/social-google.svg +0 -6
  34. package/src/assets/images/favicon.svg +0 -18
  35. package/src/assets/images/icons/icon-card.svg +0 -5
  36. package/src/assets/images/logos/logo.svg +0 -12
  37. package/src/assets/images/logos/logolight.svg +0 -12
  38. package/src/assets/images/maintenance/img-error-bg.svg +0 -34
  39. package/src/assets/images/maintenance/img-error-blue.svg +0 -43
  40. package/src/assets/images/maintenance/img-error-purple.svg +0 -42
  41. package/src/assets/images/maintenance/img-error-text.svg +0 -27
  42. package/src/assets/images/profile/profile-user-account-svgrepo-com.svg +0 -12
  43. package/src/assets/images/profile/user-round.svg +0 -15
  44. package/src/assets/images/template/template-01.ts +0 -1
  45. package/src/assets/images/vectors/colorized-bg.svg +0 -40
  46. package/src/assets/images/vectors/logo_stroke_1px.svg +0 -26
  47. package/src/assets/images/vectors/logo_stroke_2px.svg +0 -26
  48. package/src/assets/scss/components/_approval-sections.scss +0 -75
  49. package/src/assets/styles/fonts.scss +0 -77
  50. package/src/components/Loading.vue +0 -88
  51. package/src/components/common/AppStepper.vue +0 -139
  52. package/src/components/shared/BaseBreadcrumb.vue +0 -55
  53. package/src/components/shared/BaseIcon.vue +0 -27
  54. package/src/components/shared/ConfirmDialog.vue +0 -72
  55. package/src/components/shared/CustomAutocomplete.vue +0 -306
  56. package/src/components/shared/CustomDataTable.vue +0 -1859
  57. package/src/components/shared/DescriptionInput.vue +0 -204
  58. package/src/components/shared/DownloadButton.vue +0 -169
  59. package/src/components/shared/MoneyInput.vue +0 -105
  60. package/src/components/shared/PdfViewer.vue +0 -645
  61. package/src/components/shared/ShamsiDatePicker.vue +0 -444
  62. package/src/components/shared/UiChildCard.vue +0 -17
  63. package/src/components/shared/UiParentCard.vue +0 -21
  64. package/src/components/shared/VPriceTextField.vue +0 -136
  65. package/src/composables/useDataTable.ts +0 -152
  66. package/src/composables/usePermissions.ts +0 -90
  67. package/src/composables/useRouteGuard.ts +0 -36
  68. package/src/composables/useTableActions.ts +0 -207
  69. package/src/composables/useTableHeaders.ts +0 -172
  70. package/src/composables/useTableSelection.ts +0 -201
  71. package/src/constants/enums/approval.ts +0 -13
  72. package/src/constants/enums/booleanEnum.ts +0 -11
  73. package/src/constants/enums/contractType.ts +0 -11
  74. package/src/constants/enums/lcProductType.ts +0 -21
  75. package/src/constants/enums/repaymentType.ts +0 -11
  76. package/src/directives/v-digit-limit.ts +0 -15
  77. package/src/directives/v-permission.ts +0 -31
  78. package/src/features/index.ts +0 -48
  79. package/src/index.ts +0 -119
  80. package/src/plugins/key-clock.ts +0 -39
  81. package/src/plugins/mdi-icon.ts +0 -31
  82. package/src/plugins/vuetify.ts +0 -74
  83. package/src/scss/_override.scss +0 -72
  84. package/src/scss/_variables.scss +0 -124
  85. package/src/scss/components/_VButtons.scss +0 -23
  86. package/src/scss/components/_VCard.scss +0 -20
  87. package/src/scss/components/_VCustomDataTable.scss +0 -282
  88. package/src/scss/components/_VField.scss +0 -9
  89. package/src/scss/components/_VInput.scss +0 -17
  90. package/src/scss/components/_VNavigationDrawer.scss +0 -3
  91. package/src/scss/components/_VShadow.scss +0 -3
  92. package/src/scss/components/_VStepper.scss +0 -235
  93. package/src/scss/components/_VTabs.scss +0 -11
  94. package/src/scss/components/_VTextField.scss +0 -40
  95. package/src/scss/components/_approval.scss +0 -128
  96. package/src/scss/layout/_container.scss +0 -147
  97. package/src/scss/layout/_sidebar.scss +0 -138
  98. package/src/scss/layout/_topbar.scss +0 -39
  99. package/src/scss/pages/_dashboards.scss +0 -97
  100. package/src/scss/style.scss +0 -21
  101. package/src/services/apiService.ts +0 -59
  102. package/src/services/axiosInstance.ts +0 -14
  103. package/src/stores/customizer.ts +0 -55
  104. package/src/stores/permissions.ts +0 -237
  105. package/src/theme/darkThemes/DarkModernTheme.ts +0 -54
  106. package/src/theme/darkThemes/DarkOrangeTheme.ts +0 -53
  107. package/src/theme/darkThemes/DarkPurpleTheme.ts +0 -54
  108. package/src/theme/darkThemes/DarkRedTheme.ts +0 -54
  109. package/src/theme/darkThemes/DarkSilverTheme.ts +0 -53
  110. package/src/theme/darkThemes/DarkSteelTealGreen.ts +0 -53
  111. package/src/theme/darkThemes/DarkTealTheme.ts +0 -52
  112. package/src/theme/lightThemes/ModernTheme.ts +0 -55
  113. package/src/theme/lightThemes/OrangeTheme.ts +0 -54
  114. package/src/theme/lightThemes/PurpleTheme.ts +0 -54
  115. package/src/theme/lightThemes/RedTheme.ts +0 -55
  116. package/src/theme/lightThemes/SilverTheme.ts +0 -55
  117. package/src/theme/lightThemes/SteelTealGreen.ts +0 -54
  118. package/src/theme/lightThemes/TealTheme.ts +0 -54
  119. package/src/types/approval/approvalType.ts +0 -473
  120. package/src/types/cartable/cartableTypes.ts +0 -169
  121. package/src/types/componentTypes/DataTableType.ts +0 -14
  122. package/src/types/componentTypes/DataTableTypes.ts +0 -130
  123. package/src/types/enums/global.ts +0 -267
  124. package/src/types/jalaali-js.d.ts +0 -6
  125. package/src/types/models/Base.ts +0 -4
  126. package/src/types/models/env.d.ts +0 -10
  127. package/src/types/models/person.ts +0 -13
  128. package/src/types/models/userInfo.ts +0 -29
  129. package/src/types/preApproval/preApprovalTypes.ts +0 -67
  130. package/src/types/shims-tabler-icons.d.ts +0 -58
  131. package/src/types/themeTypes/ThemeType.ts +0 -47
  132. package/src/types/vue-apexcharts.d.ts +0 -1
  133. package/src/types/vue3-print-nb.d.ts +0 -1
  134. package/src/types/vue_tabler_icon.d.ts +0 -10
  135. package/src/utils/NationalCodeValidator.ts +0 -33
  136. package/src/utils/date-convertor.ts +0 -40
  137. package/src/utils/greetingUtils.ts +0 -97
  138. package/src/utils/helpers/fake-backend.ts +0 -68
  139. package/src/utils/helpers/fetch-wrapper.ts +0 -86
  140. package/src/utils/number-formatter.ts +0 -33
  141. package/src/validators/nationalCodeRule.ts +0 -6
@@ -1,130 +0,0 @@
1
- /**
2
- * Enhanced type definitions for CustomDataTable component
3
- * Replaces all 'any' types with proper TypeScript types
4
- */
5
- import type { Ref } from 'vue';
6
-
7
- export interface TableItem {
8
- id?: string | number | null;
9
- [key: string]: unknown;
10
- }
11
-
12
- export interface Header {
13
- title: string;
14
- key: string;
15
- align?: 'start' | 'center' | 'end';
16
- sortable?: boolean;
17
- editable?: boolean;
18
- filterable?: boolean;
19
- width?: number;
20
- hidden?: boolean;
21
- defaultValue?: unknown;
22
- isDate?: boolean;
23
- style?: Record<string, string>;
24
- translate?: boolean;
25
- options?: Array<{ title: string; value: string | number | boolean }>;
26
- conditionalStyle?: (value: unknown, item: TableItem) => Record<string, string>;
27
- nestedKey?: string;
28
- customRenderer?: (item: TableItem) => string | number | boolean;
29
- formatter?: (value: unknown, item: TableItem) => string;
30
- type?: string;
31
- autocompleteItems?: any[] | Ref<any[] | undefined> | ((context?: Record<string, any>) => any[] | undefined);
32
- autocompleteItemTitle?: string;
33
- autocompleteItemValue?: string;
34
- autocompleteReturnObject?: boolean;
35
- autocompleteMultiple?: boolean;
36
- }
37
-
38
- export interface CustomAction {
39
- title: string;
40
- component: any; // Vue component - keeping as any for Vue component types
41
- condition?: (item: TableItem) => boolean;
42
- }
43
-
44
- export interface CustomButtonAction {
45
- label: string;
46
- color?: string;
47
- onClick: (item: TableItem) => void;
48
- disabled?: boolean;
49
- }
50
-
51
- export interface PaginationConfig {
52
- page: number;
53
- size: number;
54
- totalElements: number;
55
- totalPages: number;
56
- }
57
-
58
- export interface TableRoutes {
59
- [key: string]: string;
60
- }
61
-
62
- export interface TableQueryParams {
63
- [key: string]: unknown;
64
- }
65
-
66
- export interface DownloadLink {
67
- [key: string]: string;
68
- }
69
-
70
- export interface DataTableProps {
71
- apiResource: string;
72
- headers: Header[];
73
- actions?: ('create' | 'edit' | 'delete' | 'view')[];
74
- routes?: TableRoutes | ((item: TableItem) => TableRoutes);
75
- downloadLink?: DownloadLink;
76
- formComponent?: any; // Vue component
77
- customActions?: CustomAction[];
78
- customButtons?: CustomButtonAction[];
79
- customButtonsFn?: (item: TableItem) => CustomButtonAction[];
80
- filterComponent?: any; // Vue component
81
- autoFetch?: boolean;
82
- queryParams?: TableQueryParams;
83
- showPagination?: boolean;
84
- height: number;
85
- pagination?: PaginationConfig | boolean;
86
- showRefreshButton?: boolean;
87
- title?: string;
88
- selectable?: boolean;
89
- multiSelect?: boolean;
90
- selectedItems?: TableItem[];
91
- uniqueKey?: string | ((item: TableItem) => string | number);
92
- pageSize?: number;
93
- groupBy?: string | ((item: TableItem) => string | number);
94
- groupHeaderTemplate?: (groupKey: string | number, groupItems: TableItem[]) => string;
95
- defaultExpanded?: boolean;
96
- defaultSelected?: string;
97
- dateWithTimezone?: boolean;
98
- bulkMode?: boolean;
99
- }
100
-
101
- export interface ApiResponse<T = TableItem> {
102
- data: {
103
- content: T[];
104
- page: {
105
- totalElements: number;
106
- totalPages: number;
107
- number: number;
108
- size: number;
109
- };
110
- };
111
- }
112
-
113
- export interface FilterModel {
114
- [key: string]: unknown;
115
- }
116
-
117
- export interface SortConfig {
118
- key: string;
119
- order: 'asc' | 'desc';
120
- }
121
-
122
- export interface GroupedItems {
123
- [key: string]: TableItem[];
124
- }
125
-
126
- export interface SelectionState {
127
- selectedItems: TableItem[];
128
- isAllSelected: boolean;
129
- isIndeterminate: boolean;
130
- }
@@ -1,267 +0,0 @@
1
- // boolean status
2
- export const Global = {
3
- TRUE: true,
4
- FALSE: false
5
- } as const;
6
-
7
- export type BooleanStatus = (typeof Global)[keyof typeof Global];
8
-
9
- export const BooleanEnumOptions = [
10
- { title: '✅', value: Global.TRUE },
11
- { title: '❌', value: Global.FALSE }
12
- ];
13
-
14
- // request type status
15
- export const requestTypeStatusEnum = [
16
- { title: 'LOAN', value: 'LOAN' },
17
- { title: 'LC', value: 'LC' },
18
- { title: 'OBLIGATION', value: 'OBLIGATION' }
19
- ] as const;
20
-
21
- export type requestTypeStatus = typeof requestTypeStatusEnum[number]['value'];
22
-
23
- export const RequestTypeStatusOptions = [
24
- { title: 'تسهیلات', value: 'LOAN' },
25
- { title: 'اعتبار اسنادی', value: 'LC' },
26
- { title: 'ضمانت نامه', value: 'OBLIGATION' }
27
- ];
28
-
29
- // relation type
30
-
31
- export const RelationTypeEnum = {
32
- ASKER: 'ASKER',
33
- GUARANTOR: 'GUARANTOR'
34
- } as const;
35
-
36
- export type RelationType = (typeof RelationTypeEnum)[keyof typeof RelationTypeEnum];
37
-
38
- export const RelationTypeOptions = [
39
- { title: 'متقاضی', value: RelationTypeEnum.ASKER },
40
- { title: 'ضامن', value: RelationTypeEnum.GUARANTOR },
41
- ];
42
-
43
- // action type
44
-
45
- export const ActionTypeEnum = {
46
- APPROVED:'APPROVED',
47
- REJECTED:'REJECTED',
48
- REFERRED:'REFERRED',
49
- CORRECTED:'CORRECTED',
50
- CREATED:'CREATED',
51
- CLOSED:'CLOSED',
52
- PASSED:'PASSED',
53
- REFERRED_FOR_SIGNED:'REFERRED_FOR_SIGNED',
54
- } as const;
55
-
56
- export type ActionType = (typeof ActionTypeEnum)[keyof typeof ActionTypeEnum];
57
-
58
- export const ActionTypeOptions = [
59
- { title: 'تایید', value: ActionTypeEnum.APPROVED },
60
- { title: 'رد', value: ActionTypeEnum.REJECTED },
61
- { title: 'ارجاع', value: ActionTypeEnum.REFERRED },
62
- { title: 'اصلاح', value: ActionTypeEnum.CORRECTED },
63
- { title: 'ایجاد', value: ActionTypeEnum.CREATED },
64
- { title: 'اتمام', value: ActionTypeEnum.CLOSED },
65
- { title: 'ارسال برای ابلاغ', value: ActionTypeEnum.PASSED },
66
- { title: 'ارجاع برای امضا', value: ActionTypeEnum.REFERRED_FOR_SIGNED },
67
- ];
68
-
69
- // loan request status
70
- export const LoanRequestStatusEnum = {
71
- TEMPORARY_REGISTRATION:'TEMPORARY_REGISTRATION',
72
- APPROVED:'APPROVED',
73
- REJECTED:'REJECTED',
74
- AWAITING_START_CARTABLE:'AWAITING_START_CARTABLE',
75
- CORRECT_FROM_REGION:'CORRECT_FROM_REGION',
76
- CORRECT_FROM_BRANCH:'CORRECT_FROM_BRANCH',
77
- } as const;
78
-
79
- export type LoanRequestStatus = (typeof LoanRequestStatusEnum)[keyof typeof LoanRequestStatusEnum];
80
-
81
- export const LoanRequestStatusOptions = [
82
- { title: 'ثبت موقت', value: LoanRequestStatusEnum.TEMPORARY_REGISTRATION },
83
- { title: 'تایید شده', value: LoanRequestStatusEnum.APPROVED },
84
- { title: 'رد شده', value: LoanRequestStatusEnum.REJECTED },
85
- { title: 'انتظار برای شروع فرایند', value: LoanRequestStatusEnum.AWAITING_START_CARTABLE },
86
- { title: 'اصلاح از منطقه', value: LoanRequestStatusEnum.CORRECT_FROM_REGION },
87
- { title: 'اصلاح از شعبه', value: LoanRequestStatusEnum.CORRECT_FROM_BRANCH },
88
- ];
89
-
90
- // file type
91
-
92
- export const FileTypeEnum = {
93
- NATIONAL_CARD:'NATIONAL_CARD',
94
- IDENTITY_CERTIFICATE:'IDENTITY_CERTIFICATE',
95
- DECLARATION:'DECLARATION',
96
- BUSINESS_LICENSE:'BUSINESS_LICENSE',
97
- EMPLOYMENT_CERTIFICATE:'EMPLOYMENT_CERTIFICATE',
98
- DEDUCTION_FROM_SALARY:'DEDUCTION_FROM_SALARY',
99
- PROOF_IF_RESIDENCE:'PROOF_IF_RESIDENCE',
100
- CONFIRM_POST_OFFICE:'CONFIRM_POST_OFFICE',
101
- } as const;
102
-
103
- export type fileType = (typeof FileTypeEnum)[keyof typeof FileTypeEnum];
104
-
105
- export const FileTypeOptions = [
106
- { title: 'کارت ملی', value: FileTypeEnum.NATIONAL_CARD },
107
- { title: 'شناسنامه', value: FileTypeEnum.IDENTITY_CERTIFICATE },
108
- { title: 'اساسنامه حقوقی', value: FileTypeEnum.DECLARATION },
109
- { title: 'جواز کسب', value: FileTypeEnum.BUSINESS_LICENSE },
110
- { title: 'گواهی اشتغال به کار', value: FileTypeEnum.EMPLOYMENT_CERTIFICATE },
111
- { title: 'کسر ار حقوق', value: FileTypeEnum.DEDUCTION_FROM_SALARY },
112
- { title: 'مدارک محل سکونت', value: FileTypeEnum.PROOF_IF_RESIDENCE },
113
- { title: 'تاییده پست', value: FileTypeEnum.CONFIRM_POST_OFFICE },
114
- ];
115
-
116
- // credit type
117
-
118
- export const CreditTypeEnum = {
119
- SIGHT_PAYMENT: 'SIGHT_PAYMENT',
120
- DEFERRED_PAYMENT: 'DEFERRED_PAYMENT'
121
- } as const;
122
-
123
- export type CreditType = (typeof CreditTypeEnum)[keyof typeof CreditTypeEnum];
124
-
125
- export const CreditTypeOptions = [
126
- { title: 'دیداری', value: CreditTypeEnum.SIGHT_PAYMENT },
127
- { title: 'مدت دار', value: CreditTypeEnum.DEFERRED_PAYMENT },
128
- ];
129
-
130
- // lc type
131
-
132
- export const LcTypeEnum = {
133
- EXPORT: 'EXPORT',
134
- IMPORT: 'IMPORT'
135
- } as const;
136
-
137
- export type LcType = (typeof LcTypeEnum)[keyof typeof LcTypeEnum];
138
-
139
- export const LcTypeOptions = [
140
- { title: 'داخلی', value: LcTypeEnum.EXPORT },
141
- { title: 'وارداتی', value: LcTypeEnum.IMPORT },
142
- ];
143
-
144
- // lc type
145
- export const CartableStatusTypeEnum = {
146
- IN_PROGRESS: 'IN_PROGRESS',
147
- ACCEPTED: 'ACCEPTED',
148
- REJECTED: 'REJECTED',
149
- CLOSED: 'CLOSED'
150
- } as const;
151
-
152
- export type CartableStatusType = (typeof CartableStatusTypeEnum)[keyof typeof CartableStatusTypeEnum];
153
-
154
- export const CartableStatusTypeOptions = [
155
- { title: 'در حال بررسی', value: CartableStatusTypeEnum.IN_PROGRESS },
156
- { title: 'تایید شده', value: CartableStatusTypeEnum.ACCEPTED },
157
- { title: 'رد شده', value: CartableStatusTypeEnum.REJECTED },
158
- { title: 'بسته شده', value: CartableStatusTypeEnum.CLOSED },
159
- ];
160
-
161
- // Credit Contract Type
162
-
163
- export const CreditContractTypeEnum = {
164
- SIGHT_PAYMENT: 'SIGHT_PAYMENT',
165
- SIGHT_PAYMENT_EXPORT: 'SIGHT_PAYMENT_EXPORT',
166
- DEFERRED_PAYMENT: 'DEFERRED_PAYMENT',
167
- DEFERRED_PAYMENT_EXPORT: 'DEFERRED_PAYMENT_EXPORT'
168
- } as const;
169
-
170
- export type CreditContractType = (typeof CreditContractTypeEnum)[keyof typeof CreditContractTypeEnum];
171
-
172
- export const CreditContractTypeOptions = [
173
- { title: 'داخلی دیداری', value: CreditContractTypeEnum.SIGHT_PAYMENT },
174
- { title: 'دیداری وارداتی', value: CreditContractTypeEnum.SIGHT_PAYMENT_EXPORT },
175
- { title: 'داخلی مدت دار', value: CreditContractTypeEnum.DEFERRED_PAYMENT },
176
- { title: 'وارداتی مدت دار', value: CreditContractTypeEnum.DEFERRED_PAYMENT_EXPORT },
177
- ];
178
-
179
-
180
- // department type
181
- export const DepartmentypeEnum = {
182
- BRANCH : 'BRANCH',
183
- HEADQUARTERS: 'HEADQUARTERS',
184
- CORPBANKINGORREGION: 'CORPBANKINGORREGION',
185
- } as const;
186
-
187
- export type DepartmentType = (typeof DepartmentypeEnum)[keyof typeof DepartmentypeEnum];
188
-
189
- export const DepartmentTypeOptions = [
190
- { title: 'شعبه', value: DepartmentypeEnum.BRANCH},
191
- { title: 'ستاد', value: DepartmentypeEnum.HEADQUARTERS },
192
- { title: 'منطقه', value: DepartmentypeEnum.CORPBANKINGORREGION },
193
- ];
194
-
195
- // customer type enum
196
- export const CustomerTypeEnum = {
197
- Corporate : 'Corporate',
198
- Individual: 'Individual',
199
- } as const;
200
-
201
- export type CustomerType = (typeof CustomerTypeEnum)[keyof typeof CustomerTypeEnum];
202
-
203
- export const CustomerTypeOptions = [
204
- { title: 'حقوقی', value: CustomerTypeEnum.Corporate},
205
- { title: 'حقیقی', value: CustomerTypeEnum.Individual },
206
- ];
207
-
208
-
209
-
210
- // customer type enum
211
- export const RoleTypeEnum = {
212
- SMPUSER : 'SMPUSER',
213
- SMPUSERREGION : 'SMPUSERREGION',
214
- SMPADMIN: 'SMPADMIN',
215
- SMPSIGNER: 'SMPSIGNER',
216
- SMPCOORDINATOR: 'SMPCOORDINATOR',
217
- SMPSIGNERCC: 'SMPSIGNERCC',
218
- SMPCOORDINATORCC: 'SMPCOORDINATORCC',
219
- SMPSIGNERSC: 'SMPSIGNERSC',
220
- SMPCOORDINATORSC: 'SMPCOORDINATORSC',
221
- SMPSIGNEREC: 'SMPSIGNEREC',
222
- SMPCOORDINATOREC: 'SMPCOORDINATOREC',
223
- SMPSIGNERBC: 'SMPSIGNERBC',
224
- SMPCOORDINATORBC: 'SMPCOORDINATORBC',
225
- SMPUSERCM: 'SMPUSERCM',
226
- SMPCOORDINATORCM: 'SMPCOORDINATORCM',
227
- SMPALTSIGNERCC: 'SMPALTSIGNERCC',
228
- SMPALTCOORDINATORCC: 'SMPALTCOORDINATORCC',
229
- SMPCOORDINATORREGION: 'SMPCOORDINATORREGION',
230
- SMPCOORDINATORPLANCC: 'SMPCOORDINATORPLANCC',
231
- SMPCOORDINATORKBCC: 'SMPCOORDINATORKBCC',
232
- SMPCOORDINATORCORPCC: 'SMPCOORDINATORCORPCC',
233
- SMPCOORDINATORRETAILCC: 'SMPCOORDINATORRETAILCC',
234
- SMPCMSIGNERMEMBER: 'SMPCMSIGNERMEMBER',
235
- SMPREGIONSIGNERMEMBER: 'SMPREGIONSIGNERMEMBER',
236
- SMPBRANCHSIGNERMEMBER: 'SMPBRANCHSIGNERMEMBER',
237
- } as const;
238
-
239
- export type RoleType = (typeof RoleTypeEnum)[keyof typeof RoleTypeEnum];
240
-
241
- export const RoleTypeOptions = [
242
- { title: 'کارشناس سماپ-شعبه', value: RoleTypeEnum.SMPUSER},
243
- { title: 'کارشناس سماپ-منطقه', value: RoleTypeEnum.SMPUSERREGION},
244
- { title: 'ادمین سامانه سماپ', value: RoleTypeEnum.SMPADMIN },
245
- { title: 'امضادار سماپ-شعبه', value: RoleTypeEnum.SMPSIGNER },
246
- { title: 'دبیر سامانه سماپ-شعبه', value: RoleTypeEnum.SMPCOORDINATOR },
247
- { title: 'امضادار سماپ-کمیته مرکزی', value: RoleTypeEnum.SMPSIGNERCC },
248
- { title: 'دبیر سماپ-کمیته مرکزی', value: RoleTypeEnum.SMPCOORDINATORCC },
249
- { title: 'امضادار سماپ-کمیته عالی', value: RoleTypeEnum.SMPSIGNERSC },
250
- { title: 'دبیر سماپ-کمیته عالی', value: RoleTypeEnum.SMPCOORDINATORSC },
251
- { title: 'امضادار سماپ-کمیته هیات عامل', value: RoleTypeEnum.SMPSIGNEREC },
252
- { title: 'دبیر سماپ-کمیته هیات عامل', value: RoleTypeEnum.SMPCOORDINATOREC },
253
- { title: 'امضادار سماپ-کمیته هیات مدیره', value: RoleTypeEnum.SMPSIGNERBC },
254
- { title: 'دبیر سماپ-کمیته هیات مدیره', value: RoleTypeEnum.SMPCOORDINATORBC },
255
- { title: 'کارشناس سماپ-مدیریت اعتبارات', value: RoleTypeEnum.SMPUSERCM },
256
- { title: 'دبیر سماپ-مدیریت اعتبارات', value: RoleTypeEnum.SMPCOORDINATORCM },
257
- { title: 'جانشین امضادار سماپ-کمیته مرکزی', value: RoleTypeEnum.SMPALTSIGNERCC },
258
- { title: 'جانشین دبیر سماپ-کمیته مرکزی', value: RoleTypeEnum.SMPALTCOORDINATORCC },
259
- { title: 'دبیر سامانه سماپ-منطقه', value: RoleTypeEnum.SMPCOORDINATORREGION },
260
- { title: 'دبیر سماپ-کمیته مرکز-اداره طرح', value: RoleTypeEnum.SMPCOORDINATORPLANCC },
261
- { title: 'دبیر سماپ-کمیته مرکز-اداره دانش بنیان', value: RoleTypeEnum.SMPCOORDINATORKBCC },
262
- { title: 'دبیر سماپ-کمیته مرکز-اداره کلان', value: RoleTypeEnum.SMPCOORDINATORCORPCC },
263
- { title: 'دبیر سماپ- کمیته مرکز-اداره خرد', value: RoleTypeEnum.SMPCOORDINATORRETAILCC },
264
- { title: 'عضو امضادار مدیریت اعتبارات', value: RoleTypeEnum.SMPCMSIGNERMEMBER },
265
- { title: 'عضو امضادار منطقه', value: RoleTypeEnum.SMPREGIONSIGNERMEMBER },
266
- { title: 'عضو امضادار شعیه', value: RoleTypeEnum.SMPBRANCHSIGNERMEMBER },
267
- ];
@@ -1,6 +0,0 @@
1
- // src/types/jalaali-js.d.ts
2
- declare module 'jalaali-js' {
3
- export function toJalaali(gy: number, gm: number, gd: number): { jy: number; jm: number; jd: number };
4
- export function toGregorian(jy: number, jm: number, jd: number): { gy: number; gm: number; gd: number };
5
- }
6
-
@@ -1,4 +0,0 @@
1
- export interface BaseDto {
2
- id: string;
3
- name: string;
4
- }
@@ -1,10 +0,0 @@
1
- export type AuthMode = 'keycloak' | 'initializer' | 'dev' | 'jwt';
2
-
3
- export interface EnvConfig {
4
- PORT: number;
5
- API_BASE_URL: string;
6
- BASE_URL: string;
7
- APP_TITLE: string;
8
- ENVIRONMENT: string;
9
- AUTH_MODE?: AuthMode;
10
- }
@@ -1,13 +0,0 @@
1
- export interface PersonDTO {
2
- id: string;
3
- name: string;
4
- }
5
-
6
- export interface CustomizerDTO {
7
- fontTheme: string,
8
- inputBg: boolean,
9
- layoutType: string,
10
- actTheme: string,
11
- themeMode: string,
12
- menuOrientation: string
13
- }
@@ -1,29 +0,0 @@
1
- import type { CustomizerDTO } from '@/types/models/person';
2
-
3
- export interface UserInfoResponse {
4
- name: string;
5
- sub: string;
6
- emailVerified: boolean;
7
- issuer: string | null;
8
- branchName: string;
9
- preferredUsername: string;
10
- nonce: string;
11
- sid: string;
12
- branchCode: string;
13
- audience: string[];
14
- acr: string;
15
- azp: string;
16
- authTime: string;
17
- fullName: string;
18
- position: string;
19
- expiration: string;
20
- sessionState: string;
21
- issuedAt: string;
22
- jti: string;
23
- authorities: string[];
24
- username: string;
25
- email: string | null;
26
- roles: string[];
27
- lotusRoles: string[];
28
- customizer: CustomizerDTO
29
- }
@@ -1,67 +0,0 @@
1
- // Types for the store
2
- export interface CreditApprovalFinancialSummaryDTO {
3
- createdAt: string | null;
4
- updatedAt: string | null;
5
- createdBy: string | null;
6
- updatedBy: string | null;
7
- id: number | null;
8
- cartableId: number | null;
9
- employmentCount: number;
10
- exportValue: number;
11
- operatingRevenue: number;
12
- operatingCosts: number;
13
- goodsPurchased: number;
14
- operatingProfit: number;
15
- netProfit: number;
16
- currentRatio: number;
17
- otherRatio: number;
18
- tradeReceivables: number;
19
- inventoryValue: number;
20
- totalAssets: number;
21
- shareholdersEquity: number;
22
- retainedEarnings: number;
23
- debtRatio: number;
24
- hasReturnedChecks: boolean;
25
- guaranteeOutstanding: number;
26
- creditOutstanding: number;
27
- debtOutstanding: number;
28
- lastVisit: string;
29
- }
30
-
31
- export interface ApplicantRequestDTO {
32
- letterNo: string;
33
- letterDate: string;
34
- reqDescription: string;
35
- }
36
- export interface ConditionsDTO {
37
- otherConditionsAndObservations: string
38
- }
39
- export interface CreditApprovalLastDecisionDTO {
40
- createdAt: string | null;
41
- updatedAt: string | null;
42
- createdBy: string | null;
43
- updatedBy: string | null;
44
- id: number | null;
45
- cartableId: number | null;
46
- finalApprovalReference: string;
47
- attachedByLetterNo: string;
48
- attachedByLetterNoDate: string;
49
- regionOrCorpBankingSuggestion: string;
50
- }
51
-
52
- export interface PreApprovalState {
53
- creditApprovalFinancialSummaryDTO: CreditApprovalFinancialSummaryDTO | null;
54
- creditApprovalLastDecisionDTO: CreditApprovalLastDecisionDTO | null;
55
- loading: boolean;
56
- error: string | null;
57
- }
58
-
59
- export interface CreditSuggestionData {
60
- templateBody: string;
61
- conditions: string;
62
- }
63
-
64
- export interface CreditSuggestionDescriptionData {
65
- description: string;
66
- cartableId: number;
67
- }
@@ -1,58 +0,0 @@
1
- declare module '@tabler/icons-vue' {
2
- import { DefineComponent } from 'vue'
3
- export const IconAlertCircle: DefineComponent
4
- export const IconSquareRoundedCheckFilled: DefineComponent
5
- export const IconChevronUp: DefineComponent
6
- export const IconChevronDown: DefineComponent
7
- export const IconChevronRight: DefineComponent
8
- export const IconArrowBadgeLeft : DefineComponent
9
- export const IconChevronLeft: DefineComponent
10
- export const IconArchive: DefineComponent
11
- export const IconCopy: DefineComponent
12
- export const IconDownload: DefineComponent
13
- export const IconFileExport: DefineComponent
14
- export const IconRefresh: DefineComponent
15
- export const IconBell: DefineComponent
16
- export const IconSettings: DefineComponent
17
- export const IconSearch: DefineComponent
18
- export const IconMenu2: DefineComponent
19
- export const IconAdjustmentsHorizontal: DefineComponent
20
- export const IconX: DefineComponent
21
- export const IconLogout: DefineComponent
22
- export const IconUser: DefineComponent
23
- export const IconBuildingStore: DefineComponent
24
- export const IconSend: DefineComponent
25
- export const IconMailbox: DefineComponent
26
- export const IconPhoto: DefineComponent
27
- export const IconBookmarkEdit: DefineComponent
28
- export const IconClipboardData: DefineComponent
29
- export const IconDatabase: DefineComponent
30
- export const IconFileSymlink: DefineComponent
31
- export const IconHome: DefineComponent
32
- export const IconPencilPlus: DefineComponent
33
- export const IconTableShare : DefineComponent
34
- export const IconCheck : DefineComponent
35
- export const IconPencil : DefineComponent
36
- export const IconClock : DefineComponent
37
- export const IconTrash : DefineComponent
38
- export const IconChevronsUp : DefineComponent
39
- export const IconChevronsDown : DefineComponent
40
- export const IconMessageQuestion : DefineComponent
41
- export const IconShieldCancel : DefineComponent
42
- export const IconSquareChevronRight : DefineComponent
43
- export const IconMinus: DefineComponent
44
- export const IconPlus: DefineComponent
45
- export const IconPrinter: DefineComponent
46
- export const IconMaximize: DefineComponent
47
- export const IconMinimize: DefineComponent
48
- export const IconFileText: DefineComponent
49
- export const IconDeviceFloppy: DefineComponent
50
- export const IconUserCircle: DefineComponent
51
- export const IconCalendar: DefineComponent
52
- export const IconCircleCheck: DefineComponent
53
- export const IconRefresh: DefineComponent
54
- export const IconSun: DefineComponent
55
- export const IconMoon: DefineComponent
56
- export const IconPalette : DefineComponent
57
- export const IconCheckupList : DefineComponent
58
- }
@@ -1,47 +0,0 @@
1
- export type ThemeTypes = {
2
- name: string;
3
- dark: boolean;
4
- variables?: object;
5
- colors: {
6
- primary?: string;
7
- secondary?: string;
8
- info?: string;
9
- success?: string;
10
- accent?: string;
11
- warning?: string;
12
- error?: string;
13
- lightprimary?: string;
14
- lightsecondary?: string;
15
- lightsuccess?: string;
16
- lighterror?: string;
17
- lightwarning?: string;
18
- darkprimary?: string;
19
- darksecondary?: string;
20
- darkText?: string;
21
- lightText?: string;
22
- borderLight?: string;
23
- inputBorder?: string;
24
- containerBg?: string;
25
- surface?: string;
26
- background?: string;
27
- 'on-surface-variant'?: string;
28
- facebook?: string;
29
- twitter?: string;
30
- linkedin?: string;
31
- gray100?: string;
32
- primary200?: string;
33
- secondary200?: string;
34
- white?: string;
35
- // Additional color variations
36
- primary300?: string;
37
- primary400?: string;
38
- primary500?: string;
39
- primary600?: string;
40
- primary700?: string;
41
- primary800: string;
42
- primary900: string;
43
- secondary400?: string;
44
- secondary600?: string;
45
- secondary800?: string;
46
- };
47
- };
@@ -1 +0,0 @@
1
- declare module 'vue3-apexcharts';
@@ -1 +0,0 @@
1
- declare module 'vue3-print-nb';
@@ -1,10 +0,0 @@
1
- import { VNodeChild } from 'vue';
2
- declare module '@vue/runtime-dom' {
3
- export interface HTMLAttributes {
4
- $children?: VNodeChild;
5
- }
6
- export interface SVGAttributes {
7
- $children?: VNodeChild;
8
- strokeWidth?: string | number;
9
- }
10
- }
@@ -1,33 +0,0 @@
1
- export class NationalCodeValidator {
2
- static isValid(nationalCode: string, customerType: 'Real' | 'Legal'): boolean {
3
- // Check length based on customer type
4
- if (customerType === 'Real' && !/^\d{10}$/.test(nationalCode)) return false;
5
- if (customerType === 'Legal' && !/^\d{11}$/.test(nationalCode)) return false;
6
-
7
- // For Legal customers, we only check the length and invalid patterns
8
- if (customerType === 'Legal') {
9
- const invalidCodes = [
10
- '00000000000', '11111111111', '22222222222', '33333333333',
11
- '44444444444', '55555555555', '66666666666', '77777777777',
12
- '88888888888', '99999999999'
13
- ];
14
- return !invalidCodes.includes(nationalCode);
15
- }
16
-
17
- // For Real customers, we do the full validation
18
- const invalidCodes = [
19
- '0000000000', '1111111111', '2222222222', '3333333333',
20
- '4444444444', '5555555555', '6666666666', '7777777777',
21
- '8888888888', '9999999999'
22
- ];
23
- if (invalidCodes.includes(nationalCode)) return false;
24
-
25
- // Calculate checksum for Real customers
26
- const digits = nationalCode.split('').map(Number);
27
- const check = digits[9];
28
- const sum = digits.slice(0, 9).reduce((acc, digit, index) => acc + digit * (10 - index), 0);
29
- const remainder = sum % 11;
30
-
31
- return (remainder < 2 && check === remainder) || (remainder >= 2 && check === 11 - remainder);
32
- }
33
- }