ch3chi-commons-vue 0.1.14 → 1.2.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 (39) hide show
  1. package/README.md +138 -5
  2. package/dist/api/ApiService.d.ts +109 -2
  3. package/dist/auth/AuthorizationService.d.ts +1 -2
  4. package/dist/auth/PermissionDescriptor.d.ts +37 -0
  5. package/dist/components/CAlertDefine.d.ts +2 -0
  6. package/dist/components/CGlobalSpinner.vue.d.ts +3 -0
  7. package/dist/components/CTable.vue.d.ts +24 -0
  8. package/dist/components/CTableDefine.d.ts +76 -0
  9. package/dist/components/CTableTD.vue.d.ts +7 -0
  10. package/dist/components/form/CChangePasswordFormField.vue.d.ts +14 -0
  11. package/dist/components/form/CCheckBoxFormField.vue.d.ts +30 -0
  12. package/dist/components/form/CDateFormField.vue.d.ts +17 -0
  13. package/dist/components/form/CDateQueryField.vue.d.ts +16 -0
  14. package/dist/components/form/CDateRangeFormField.vue.d.ts +17 -0
  15. package/dist/components/form/CFilePickerFormField.vue.d.ts +28 -0
  16. package/dist/components/form/CRadioFormField.vue.d.ts +30 -0
  17. package/dist/components/form/CSelectFormField.vue.d.ts +18 -0
  18. package/dist/components/form/CTextAreaFormField.vue.d.ts +16 -0
  19. package/dist/components/form/CTextInputFormField.vue.d.ts +22 -0
  20. package/dist/directive/CFTurnstileDirective.d.ts +6 -0
  21. package/dist/directive/PermissionDirective.d.ts +15 -0
  22. package/dist/index.cjs.js +16001 -2940
  23. package/dist/index.d.ts +38 -1
  24. package/dist/index.es.js +15961 -2901
  25. package/dist/model/BSFieldStyleConfig.d.ts +121 -0
  26. package/dist/model/BaseDictionary.d.ts +34 -0
  27. package/dist/model/BaseFormDataModel.d.ts +4 -0
  28. package/dist/model/BaseListViewModel.d.ts +21 -0
  29. package/dist/model/CMenuItem.d.ts +2 -0
  30. package/dist/model/FormOptions.d.ts +8 -3
  31. package/dist/model/LoginDataModel.d.ts +1 -0
  32. package/dist/model/QueryParameter.d.ts +3 -5
  33. package/dist/model/SessionUser.d.ts +17 -2
  34. package/dist/model/ShowMessageDataModel.d.ts +44 -0
  35. package/dist/model/TokenUser.d.ts +50 -0
  36. package/dist/stores/ViewStore.d.ts +314 -180
  37. package/dist/style.css +223 -0
  38. package/dist/utils/CToolUtils.d.ts +12 -0
  39. package/package.json +24 -4
@@ -0,0 +1,30 @@
1
+ import { COptionItem } from '../../model/FormOptions';
2
+ import { IBSFieldStyleConfig } from '../../model/BSFieldStyleConfig';
3
+ type __VLS_Props = {
4
+ /**
5
+ * Radio 欄位的標籤文字
6
+ */
7
+ label?: string;
8
+ /**
9
+ * Radio 欄位是否為必填
10
+ */
11
+ required?: boolean;
12
+ /**
13
+ * Radio 欄位的名稱,為 form field 的 name 屬性
14
+ */
15
+ name: string;
16
+ /**
17
+ * Radio 選項集
18
+ */
19
+ optionList: COptionItem[];
20
+ /**
21
+ * 是否為閱讀模式,若為 true 則只顯示選項文字,不顯示 Radio 按鈕
22
+ */
23
+ readMode?: boolean;
24
+ /**
25
+ * BS 欄位樣式設定
26
+ */
27
+ styleConfig?: IBSFieldStyleConfig;
28
+ };
29
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
30
+ export default _default;
@@ -0,0 +1,18 @@
1
+ import { COptionItem } from '../../model/FormOptions';
2
+ import { IBSFieldStyleConfig } from '../../model/BSFieldStyleConfig';
3
+ type __VLS_Props = {
4
+ id?: string;
5
+ label?: string;
6
+ required?: boolean;
7
+ placeholder?: string;
8
+ name: string;
9
+ optionList?: COptionItem[] | Promise<COptionItem[]>;
10
+ readMode?: boolean;
11
+ dependentField?: string;
12
+ fetchOptions?: (linkedValue: any) => Promise<COptionItem[]>;
13
+ styleConfig?: IBSFieldStyleConfig;
14
+ };
15
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
16
+ placeholder: string;
17
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
18
+ export default _default;
@@ -0,0 +1,16 @@
1
+ import { ComputedRef } from 'vue';
2
+ import { IBSFieldStyleConfig } from '../../model/BSFieldStyleConfig';
3
+ type __VLS_Props = {
4
+ id?: string;
5
+ label?: string;
6
+ name: string;
7
+ required?: boolean;
8
+ placeholder?: string;
9
+ rows?: number;
10
+ maxlength?: number;
11
+ disabledState?: ComputedRef<boolean>;
12
+ readMode?: boolean;
13
+ styleConfig?: IBSFieldStyleConfig;
14
+ };
15
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
16
+ export default _default;
@@ -0,0 +1,22 @@
1
+ import { InputHTMLAttributes } from '@vue/runtime-dom';
2
+ import { ComputedRef } from 'vue';
3
+ import { IBSFieldStyleConfig } from '../../model/BSFieldStyleConfig';
4
+ type __VLS_Props = Partial</* @vue-ignore */ InputHTMLAttributes> & {
5
+ id?: string;
6
+ label?: string;
7
+ name: string;
8
+ type?: string;
9
+ required?: boolean;
10
+ placeholder?: string;
11
+ autocomplete?: string;
12
+ disabledState?: ComputedRef<boolean>;
13
+ readMode?: boolean;
14
+ min?: number;
15
+ max?: number;
16
+ styleConfig?: IBSFieldStyleConfig;
17
+ };
18
+ declare function setIsRequired(value: boolean): void;
19
+ declare const _default: import('vue').DefineComponent<__VLS_Props, {
20
+ setIsRequired: typeof setIsRequired;
21
+ }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, HTMLDivElement>;
22
+ export default _default;
@@ -3,7 +3,13 @@ import { Directive } from 'vue';
3
3
  * v-cf-turnstile 指令
4
4
  * 用於在表單中嵌入 Cloudflare Turnstile 驗證碼
5
5
  * 使用方式:
6
+ * <pre>
6
7
  * <div v-cf-turnstile="fieldContext"></div>
7
8
  * 其中 fieldContext 為 vee-validate 的 FieldContext,用於接收驗證碼 token
9
+ * </pre>
10
+ * 需要在全域變數中定義 Cloudflare Turnstile 的 site key:
11
+ * <pre>
12
+ * (window as any).__CLOUDFLARE_TURNSTILE_SITE_KEY__ = 'your-site-key-here';
13
+ * </pre>
8
14
  */
9
15
  export declare const CFTurnstileDirective: Directive;
@@ -0,0 +1,15 @@
1
+ import { Directive } from 'vue';
2
+ /**
3
+ * 此指令用於根據使用者權限來控制元素的顯示與否。
4
+ * 使用方式:v-permission="{need: ['PERMISSION_1', 'PERMISSION_2'], granted: userPermissionsArray, enableVisible: true}"
5
+ * 當使用者擁有其中一個權限時,元素將會顯示,否則隱藏。
6
+ * 根據 enableVisible 參數決定是隱藏元素還是移除元素,true 為隱藏 (使用 d-none),false 為移除元素。
7
+ */
8
+ export declare const PermissionDirective: Directive;
9
+ /**
10
+ * 此指令用於根據使用者權限來控制元素的顯示與否,使用 UserSessionActions 來檢查權限。
11
+ * 使用方式:v-store-permission="{sessionStore: userSessionStore, need: ['PERMISSION_1', 'PERMISSION_2'], enableVisible: true}"
12
+ * 當使用者擁有其中一個權限時,元素將會顯示,否則隱藏。
13
+ * 根據 enableVisible 參數決定是隱藏元素還是移除元素,true 為隱藏 (使用 d-none),false 為移除元素。
14
+ */
15
+ export declare const StorePermissionDirective: Directive;