easybill-ui 1.4.0 → 1.4.2
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.
- package/dist/_virtual/_plugin-vue_export-helper.js +9 -0
- package/dist/assets/easybill-ui.css +1 -0
- package/dist/components/ConstantStatus/index.d.ts +24 -0
- package/dist/components/ConstantStatus/index.js +7 -0
- package/dist/components/ConstantStatus/src/ConstantStatus.vue.d.ts +25 -0
- package/dist/components/ConstantStatus/src/ConstantStatus.vue.js +76 -0
- package/dist/components/ConstantStatus/src/ConstantStatus.vue2.js +4 -0
- package/dist/components/ConstantStatus/src/index.d.ts +3 -0
- package/dist/components/ConstantStatus/src/index.js +5 -0
- package/dist/components/ConstantStatus/src/types.d.ts +18 -0
- package/dist/components/CurdForm/index.d.ts +9 -0
- package/dist/components/CurdForm/index.js +9 -0
- package/dist/components/CurdForm/src/CurdForm.vue.js +7 -0
- package/dist/components/CurdForm/src/CurdForm.vue2.js +326 -0
- package/dist/components/CurdForm/src/CurdFormItem.vue.d.ts +37 -0
- package/dist/components/CurdForm/src/CurdFormItem.vue.js +55 -0
- package/dist/components/CurdForm/src/CurdFormItem.vue2.js +4 -0
- package/dist/components/CurdForm/src/FormItem.vue.d.ts +44 -0
- package/dist/components/CurdForm/src/FormItem.vue.js +128 -0
- package/dist/components/CurdForm/src/FormItem.vue2.js +4 -0
- package/dist/components/CurdForm/src/FormTooltip.vue.d.ts +33 -0
- package/dist/components/CurdForm/src/FormTooltip.vue.js +63 -0
- package/dist/components/CurdForm/src/FormTooltip.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/index.d.ts +10 -0
- package/dist/components/CurdForm/src/components/index.js +38 -0
- package/dist/components/CurdForm/src/components/schema-form-autocomplete.vue.d.ts +56 -0
- package/dist/components/CurdForm/src/components/schema-form-autocomplete.vue.js +39 -0
- package/dist/components/CurdForm/src/components/schema-form-autocomplete.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-cascader.vue.d.ts +56 -0
- package/dist/components/CurdForm/src/components/schema-form-cascader.vue.js +32 -0
- package/dist/components/CurdForm/src/components/schema-form-cascader.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-checkbox.vue.d.ts +59 -0
- package/dist/components/CurdForm/src/components/schema-form-checkbox.vue.js +86 -0
- package/dist/components/CurdForm/src/components/schema-form-checkbox.vue2.js +33 -0
- package/dist/components/CurdForm/src/components/schema-form-choose.vue.js +217 -0
- package/dist/components/CurdForm/src/components/schema-form-choose.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-color-picker.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-color-picker.vue.js +15 -0
- package/dist/components/CurdForm/src/components/schema-form-color-picker.vue2.js +19 -0
- package/dist/components/CurdForm/src/components/schema-form-date-picker.vue.d.ts +56 -0
- package/dist/components/CurdForm/src/components/schema-form-date-picker.vue.js +32 -0
- package/dist/components/CurdForm/src/components/schema-form-date-picker.vue2.js +27 -0
- package/dist/components/CurdForm/src/components/schema-form-input-number.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-input-number.vue.js +39 -0
- package/dist/components/CurdForm/src/components/schema-form-input-number.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-input.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-input.vue.js +44 -0
- package/dist/components/CurdForm/src/components/schema-form-input.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-radio.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-radio.vue.js +114 -0
- package/dist/components/CurdForm/src/components/schema-form-radio.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-select-v2.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-select-v2.vue.js +69 -0
- package/dist/components/CurdForm/src/components/schema-form-select-v2.vue2.js +4 -0
- package/dist/components/CurdForm/src/components/schema-form-select.vue.js +65 -0
- package/dist/components/CurdForm/src/components/schema-form-select.vue2.js +66 -0
- package/dist/components/CurdForm/src/components/schema-form-switch.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-switch.vue.js +14 -0
- package/dist/components/CurdForm/src/components/schema-form-switch.vue2.js +25 -0
- package/dist/components/CurdForm/src/components/schema-form-time-picker.vue.d.ts +57 -0
- package/dist/components/CurdForm/src/components/schema-form-time-picker.vue.js +29 -0
- package/dist/components/CurdForm/src/components/schema-form-time-picker.vue2.js +30 -0
- package/dist/components/CurdForm/src/components/schema-form-tree-select.vue.d.ts +58 -0
- package/dist/components/CurdForm/src/components/schema-form-tree-select.vue.js +55 -0
- package/dist/components/CurdForm/src/components/schema-form-tree-select.vue2.js +31 -0
- package/dist/components/CurdForm/src/components/schema-form-value.vue.d.ts +54 -0
- package/dist/components/CurdForm/src/components/schema-form-value.vue.js +11 -0
- package/dist/components/CurdForm/src/components/schema-form-value.vue2.js +21 -0
- package/dist/components/CurdForm/src/directive/index.d.ts +12 -0
- package/dist/components/CurdForm/src/directive/index.js +32 -0
- package/dist/components/CurdForm/src/hooks/index.d.ts +4 -0
- package/dist/components/CurdForm/src/hooks/index.js +7 -0
- package/dist/components/CurdForm/src/types.d.ts +136 -0
- package/dist/components/CurdForm/src/types.js +27 -0
- package/dist/components/CurdForm/src/utils/ajax.d.ts +25 -0
- package/dist/components/CurdForm/src/utils/common.d.ts +1 -0
- package/dist/components/CurdForm/src/utils/common.js +13 -0
- package/dist/components/CurdGroupForm/index.d.ts +2 -0
- package/dist/components/CurdGroupForm/src/CurdGroupForm.vue.d.ts +36 -0
- package/dist/components/CurdGroupForm/src/CurdGroupForm.vue.js +113 -0
- package/dist/components/CurdGroupForm/src/CurdGroupForm.vue2.js +4 -0
- package/dist/components/CurdGroupForm/src/components/CurdFormGroup.vue.d.ts +52 -0
- package/dist/components/CurdGroupForm/src/components/CurdFormGroup.vue.js +64 -0
- package/dist/components/CurdGroupForm/src/components/CurdFormGroup.vue2.js +4 -0
- package/dist/components/CurdGroupForm/src/hooks/useFormHook.d.ts +12 -0
- package/dist/components/CurdGroupForm/src/hooks/useFormHook.js +32 -0
- package/dist/components/CurdGroupForm/types.d.ts +33 -0
- package/dist/components/CurdTable/index.d.ts +13 -0
- package/dist/components/CurdTable/index.js +7 -0
- package/dist/components/CurdTable/src/CurdTable.vue.js +562 -0
- package/dist/components/CurdTable/src/CurdTable.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableColumnControl.vue.d.ts +21 -0
- package/dist/components/CurdTable/src/STableColumnControl.vue.js +132 -0
- package/dist/components/CurdTable/src/STableColumnControl.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableDetail.vue.d.ts +9 -0
- package/dist/components/CurdTable/src/STableDetail.vue.js +53 -0
- package/dist/components/CurdTable/src/STableDetail.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableFilter.vue.d.ts +28 -0
- package/dist/components/CurdTable/src/STableFilter.vue.js +40 -0
- package/dist/components/CurdTable/src/STableFilter.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableItem.vue.d.ts +127 -0
- package/dist/components/CurdTable/src/STableItem.vue.js +147 -0
- package/dist/components/CurdTable/src/STableItem.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableItemFilter.vue.d.ts +34 -0
- package/dist/components/CurdTable/src/STableItemFilter.vue.js +71 -0
- package/dist/components/CurdTable/src/STableItemFilter.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableItemFormatter.vue.d.ts +38 -0
- package/dist/components/CurdTable/src/STableItemFormatter.vue.js +34 -0
- package/dist/components/CurdTable/src/STableItemFormatter.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableItemHeader.vue.d.ts +16 -0
- package/dist/components/CurdTable/src/STableItemHeader.vue.js +24 -0
- package/dist/components/CurdTable/src/STableItemHeader.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableItemHeaderTooltip.vue.d.ts +14 -0
- package/dist/components/CurdTable/src/STableItemHeaderTooltip.vue.js +48 -0
- package/dist/components/CurdTable/src/STableItemHeaderTooltip.vue2.js +4 -0
- package/dist/components/CurdTable/src/STableMenu.vue.d.ts +20 -0
- package/dist/components/CurdTable/src/STableMenu.vue.js +120 -0
- package/dist/components/CurdTable/src/STableMenu.vue2.js +4 -0
- package/dist/components/CurdTable/src/hooks/useColumnHook.d.ts +9 -0
- package/dist/components/CurdTable/src/hooks/useColumnHook.js +45 -0
- package/dist/components/CurdTable/src/types.d.ts +178 -0
- package/dist/components/CurdTable/utils/common.d.ts +5 -0
- package/dist/components/CurdTable/utils/common.js +18 -0
- package/dist/components/CurdTable/utils/tabelToExcel.d.ts +4 -0
- package/dist/components/CurdTable/utils/tabelToExcel.js +23 -0
- package/dist/components/DetailInfo/index.d.ts +147 -0
- package/dist/components/DetailInfo/index.js +7 -0
- package/dist/components/DetailInfo/src/DetailInfo.vue.d.ts +77 -0
- package/dist/components/DetailInfo/src/DetailInfo.vue.js +144 -0
- package/dist/components/DetailInfo/src/DetailInfo.vue2.js +4 -0
- package/dist/components/DetailInfo/src/DetailInfoContent.vue.d.ts +16 -0
- package/dist/components/DetailInfo/src/DetailInfoContent.vue.js +43 -0
- package/dist/components/DetailInfo/src/DetailInfoContent.vue2.js +4 -0
- package/dist/components/DetailInfo/src/DetailInfoTooltip.vue.d.ts +15 -0
- package/dist/components/DetailInfo/src/DetailInfoTooltip.vue.js +48 -0
- package/dist/components/DetailInfo/src/DetailInfoTooltip.vue2.js +4 -0
- package/dist/components/DetailInfo/src/types.d.ts +22 -0
- package/dist/components/FormDialog/index.d.ts +7 -0
- package/dist/components/FormDialog/index.js +6 -0
- package/dist/components/FormDialog/src/FormDialog.vue.d.ts +247 -0
- package/dist/components/FormDialog/src/FormDialog.vue.js +117 -0
- package/dist/components/FormDialog/src/FormDialog.vue2.js +191 -0
- package/dist/components/FormDialog/src/hooks/index.d.ts +2 -0
- package/dist/components/FormDialog/src/hooks/useStepList.d.ts +14 -0
- package/dist/components/FormDialog/src/hooks/useStepList.js +27 -0
- package/dist/components/FormDialog/src/hooks/useStepNavigation.d.ts +75 -0
- package/dist/components/FormDialog/src/hooks/useStepNavigation.js +34 -0
- package/dist/components/FormDialog/src/index.d.ts +13 -0
- package/dist/components/FormDialog/src/index.js +23 -0
- package/dist/components/FormDialog/src/types.d.ts +63 -0
- package/dist/components/TableFilter/index.d.ts +6 -0
- package/dist/components/TableFilter/index.js +7 -0
- package/dist/components/TableFilter/src/FilterExternal/FilterExternal.vue.js +91 -0
- package/dist/components/TableFilter/src/FilterExternal/FilterExternal.vue2.js +4 -0
- package/dist/components/TableFilter/src/FilterSearchBox.vue.d.ts +33 -0
- package/dist/components/TableFilter/src/FilterSearchBox.vue.js +71 -0
- package/dist/components/TableFilter/src/FilterSearchBox.vue2.js +4 -0
- package/dist/components/TableFilter/src/TableFilter.vue.js +180 -0
- package/dist/components/TableFilter/src/TableFilter.vue2.js +4 -0
- package/dist/components/TableFilter/src/components/FilterItem.vue.d.ts +37 -0
- package/dist/components/TableFilter/src/components/FilterItem.vue.js +63 -0
- package/dist/components/TableFilter/src/components/FilterItem.vue2.js +4 -0
- package/dist/components/TableFilter/src/components/FilterTags.vue.d.ts +114 -0
- package/dist/components/TableFilter/src/components/FilterTags.vue.js +142 -0
- package/dist/components/TableFilter/src/components/FilterTags.vue2.js +4 -0
- package/dist/components/TableFilter/src/components/FilterToggle.vue.d.ts +29 -0
- package/dist/components/TableFilter/src/components/FilterToggle.vue.js +70 -0
- package/dist/components/TableFilter/src/components/FilterToggle.vue2.js +4 -0
- package/dist/components/TableFilter/src/components/FilterType.vue.d.ts +30 -0
- package/dist/components/TableFilter/src/components/FilterType.vue.js +62 -0
- package/dist/components/TableFilter/src/components/FilterType.vue2.js +4 -0
- package/dist/components/TableFilter/src/components/containers/TagsSelect.vue.d.ts +42 -0
- package/dist/components/TableFilter/src/components/containers/TagsSelect.vue.js +99 -0
- package/dist/components/TableFilter/src/components/containers/TagsSelect.vue2.js +4 -0
- package/dist/components/TableFilter/types.d.ts +34 -0
- package/dist/index.d.ts +22 -0
- package/dist/index.js +35 -0
- package/dist/locale/index.d.ts +9 -0
- package/dist/locale/index.js +6 -0
- package/dist/locale/lang/en.d.ts +49 -0
- package/{locale/lang/en.ts → dist/locale/lang/en.js} +10 -7
- package/dist/locale/lang/zh-cn.d.ts +49 -0
- package/{locale/lang/zh-cn.ts → dist/locale/lang/zh-cn.js} +10 -7
- package/dist/utils/common/index.d.ts +8 -0
- package/dist/utils/common/index.js +13 -0
- package/dist/utils/hooks/useGlobalConfig.d.ts +13 -0
- package/dist/utils/hooks/useGlobalConfig.js +22 -0
- package/dist/utils/hooks/useLocal.d.ts +15 -0
- package/dist/utils/hooks/useLocal.js +33 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.js +6 -0
- package/dist/utils/vue/index.d.ts +2 -0
- package/dist/utils/vue/index.js +4 -0
- package/dist/utils/vue/install.d.ts +2 -0
- package/dist/utils/vue/install.js +14 -0
- package/dist/utils/vue/make-installer.d.ts +5 -0
- package/dist/utils/vue/make-installer.js +9 -0
- package/dist/utils/vue/typescript.d.ts +5 -0
- package/package.json +61 -32
- package/components/ConstantStatus/index.ts +0 -5
- package/components/ConstantStatus/src/ConstantStatus.vue +0 -69
- package/components/ConstantStatus/src/index.ts +0 -3
- package/components/ConstantStatus/src/types.ts +0 -18
- package/components/CurdForm/index.ts +0 -9
- package/components/CurdForm/src/CurdForm.vue +0 -500
- package/components/CurdForm/src/CurdFormItem.vue +0 -70
- package/components/CurdForm/src/FormItem.vue +0 -105
- package/components/CurdForm/src/FormTooltip.vue +0 -54
- package/components/CurdForm/src/components/index.ts +0 -52
- package/components/CurdForm/src/components/schema-form-autocomplete.vue +0 -25
- package/components/CurdForm/src/components/schema-form-cascader.vue +0 -24
- package/components/CurdForm/src/components/schema-form-checkbox.vue +0 -53
- package/components/CurdForm/src/components/schema-form-choose.vue +0 -225
- package/components/CurdForm/src/components/schema-form-color-picker.vue +0 -23
- package/components/CurdForm/src/components/schema-form-date-picker.vue +0 -34
- package/components/CurdForm/src/components/schema-form-input-number.vue +0 -12
- package/components/CurdForm/src/components/schema-form-input.vue +0 -21
- package/components/CurdForm/src/components/schema-form-radio.vue +0 -59
- package/components/CurdForm/src/components/schema-form-select-v2.vue +0 -60
- package/components/CurdForm/src/components/schema-form-select.vue +0 -93
- package/components/CurdForm/src/components/schema-form-switch.vue +0 -29
- package/components/CurdForm/src/components/schema-form-time-picker.vue +0 -37
- package/components/CurdForm/src/components/schema-form-tree-select.vue +0 -45
- package/components/CurdForm/src/components/schema-form-value.vue +0 -25
- package/components/CurdForm/src/directive/index.ts +0 -60
- package/components/CurdForm/src/hooks/index.ts +0 -6
- package/components/CurdForm/src/types.ts +0 -146
- package/components/CurdForm/src/utils/ajax.ts +0 -125
- package/components/CurdForm/src/utils/common.ts +0 -17
- package/components/CurdGroupForm/index.ts +0 -2
- package/components/CurdGroupForm/src/CurdGroupForm.vue +0 -93
- package/components/CurdGroupForm/src/components/CurdFormGroup.vue +0 -39
- package/components/CurdGroupForm/src/hooks/useFormHook.ts +0 -55
- package/components/CurdGroupForm/types.ts +0 -22
- package/components/CurdTable/index.ts +0 -5
- package/components/CurdTable/src/CurdTable.vue +0 -470
- package/components/CurdTable/src/STableColumnControl.vue +0 -88
- package/components/CurdTable/src/STableDetail.vue +0 -52
- package/components/CurdTable/src/STableFilter.vue +0 -50
- package/components/CurdTable/src/STableItem.vue +0 -119
- package/components/CurdTable/src/STableItemFilter.vue +0 -53
- package/components/CurdTable/src/STableItemFormatter.vue +0 -35
- package/components/CurdTable/src/STableItemHeader.vue +0 -33
- package/components/CurdTable/src/STableItemHeaderTooltip.vue +0 -32
- package/components/CurdTable/src/STableMenu.vue +0 -77
- package/components/CurdTable/src/hooks/useColumnHook.ts +0 -77
- package/components/CurdTable/src/types.ts +0 -163
- package/components/CurdTable/utils/common.ts +0 -33
- package/components/CurdTable/utils/tabelToExcel.ts +0 -68
- package/components/DetailInfo/index.ts +0 -5
- package/components/DetailInfo/src/DetailInfo.vue +0 -108
- package/components/DetailInfo/src/DetailInfoContent.vue +0 -27
- package/components/DetailInfo/src/DetailInfoTooltip.vue +0 -33
- package/components/DetailInfo/src/types.ts +0 -23
- package/components/FormDialog/index.ts +0 -3
- package/components/FormDialog/src/FormDialog.vue +0 -276
- package/components/FormDialog/src/hooks/index.ts +0 -2
- package/components/FormDialog/src/hooks/useStepList.ts +0 -49
- package/components/FormDialog/src/hooks/useStepNavigation.ts +0 -74
- package/components/FormDialog/src/index.ts +0 -39
- package/components/FormDialog/src/types.ts +0 -51
- package/components/TableFilter/index.ts +0 -6
- package/components/TableFilter/src/FilterExternal/FilterExternal.vue +0 -121
- package/components/TableFilter/src/FilterSearchBox.vue +0 -65
- package/components/TableFilter/src/TableFilter.vue +0 -236
- package/components/TableFilter/src/components/FilterItem.vue +0 -76
- package/components/TableFilter/src/components/FilterTags.vue +0 -132
- package/components/TableFilter/src/components/FilterToggle.vue +0 -40
- package/components/TableFilter/src/components/FilterType.vue +0 -78
- package/components/TableFilter/src/components/containers/TagsSelect.vue +0 -89
- package/components/TableFilter/types.ts +0 -36
- package/index.ts +0 -25
- package/locale/index.ts +0 -11
- package/utils/common/index.ts +0 -24
- package/utils/hooks/useGlobalConfig.ts +0 -39
- package/utils/hooks/useLocal.ts +0 -61
- package/utils/index.ts +0 -2
- package/utils/vue/index.ts +0 -3
- package/utils/vue/install.ts +0 -18
- package/utils/vue/make-installer.ts +0 -16
- package/utils/vue/typescript.ts +0 -7
package/index.ts
DELETED
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { Plugin } from "vue"
|
|
2
|
-
import ConstantStatus from "./components/ConstantStatus"
|
|
3
|
-
import CurdForm from "./components/CurdForm"
|
|
4
|
-
import CurdFormItem from "./components/CurdForm/src/CurdFormItem.vue"
|
|
5
|
-
import { CurdGroupForm } from "./components/CurdGroupForm"
|
|
6
|
-
import CurdTable from "./components/CurdTable"
|
|
7
|
-
import DetailInfo from "./components/DetailInfo"
|
|
8
|
-
import FormDialog from "./components/FormDialog"
|
|
9
|
-
import TableFilter from "./components/TableFilter"
|
|
10
|
-
import { makeInstaller } from "./utils/vue/make-installer"
|
|
11
|
-
|
|
12
|
-
const Components = [ConstantStatus, CurdForm, TableFilter, DetailInfo, CurdFormItem, CurdTable, FormDialog, CurdGroupForm] as Plugin[]
|
|
13
|
-
export * from "./components/ConstantStatus/src/types"
|
|
14
|
-
export * from "./components/CurdForm"
|
|
15
|
-
export * from "./components/CurdGroupForm/types"
|
|
16
|
-
export * from "./components/CurdTable/src/types"
|
|
17
|
-
export * from "./components/DetailInfo/src/types"
|
|
18
|
-
export * from "./components/FormDialog/src/types"
|
|
19
|
-
export * from "./components/TableFilter/types"
|
|
20
|
-
export * from "./utils/hooks/useGlobalConfig"
|
|
21
|
-
export * from "./utils/hooks/useLocal"
|
|
22
|
-
|
|
23
|
-
export { ConstantStatus, CurdForm, CurdFormItem, CurdGroupForm, CurdTable, DetailInfo, FormDialog, TableFilter }
|
|
24
|
-
|
|
25
|
-
export default makeInstaller([...Components])
|
package/locale/index.ts
DELETED
package/utils/common/index.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @description 对象深拷贝
|
|
3
|
-
*
|
|
4
|
-
* @param { source:Object } source为需要拷贝的源对象
|
|
5
|
-
* @return { Object } 返回拷贝后的新的对象
|
|
6
|
-
*
|
|
7
|
-
* */
|
|
8
|
-
export function deepClone<T extends Array<T> | unknown>(sourceData: T): T {
|
|
9
|
-
if (Array.isArray(sourceData)) {
|
|
10
|
-
return sourceData.map((item) => deepClone(item)) as T
|
|
11
|
-
}
|
|
12
|
-
if (typeof sourceData !== "object" || sourceData === null || sourceData instanceof Function || sourceData instanceof Date || sourceData instanceof File || sourceData instanceof Symbol) {
|
|
13
|
-
return sourceData
|
|
14
|
-
}
|
|
15
|
-
const obj: T = {} as T
|
|
16
|
-
for (const key in sourceData) {
|
|
17
|
-
if ((typeof sourceData[key] === "object" || sourceData[key] instanceof Date || sourceData[key] instanceof File) && sourceData[key] !== null) {
|
|
18
|
-
obj[key] = deepClone(sourceData[key])
|
|
19
|
-
} else {
|
|
20
|
-
obj[key] = sourceData[key]
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
return obj
|
|
24
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import { ref, type Ref, unref } from "vue"
|
|
2
|
-
import type { Language } from "../../locale"
|
|
3
|
-
const globalConfig: Ref<GlobalConfig> = ref({} as GlobalConfig)
|
|
4
|
-
export function useGlobalConfig() {
|
|
5
|
-
return globalConfig
|
|
6
|
-
}
|
|
7
|
-
export const provideGlobalConfig = (config: Partial<GlobalConfig>) => {
|
|
8
|
-
const oldConfig = useGlobalConfig()
|
|
9
|
-
const cfg = (config && unref(config)) || {}
|
|
10
|
-
if (!oldConfig?.value) return cfg
|
|
11
|
-
|
|
12
|
-
const a = mergeConfig(oldConfig.value, cfg)
|
|
13
|
-
globalConfig.value = a
|
|
14
|
-
return
|
|
15
|
-
}
|
|
16
|
-
const mergeConfig = (a: GlobalConfig, b: Partial<GlobalConfig>) => {
|
|
17
|
-
const keys = [...new Set([...Object.keys(a), ...Object.keys(b)])]
|
|
18
|
-
const obj: GlobalConfig = {} as GlobalConfig
|
|
19
|
-
for (const key of keys) {
|
|
20
|
-
const k = key as keyof GlobalConfig
|
|
21
|
-
if (k === "size") {
|
|
22
|
-
obj[k] = (b[k] ?? a[k]) as "default" | "small" | "large"
|
|
23
|
-
} else if (k === "form") {
|
|
24
|
-
obj[k] = (b[k] ?? a[k]) as FormConfig | undefined
|
|
25
|
-
} else {
|
|
26
|
-
obj[k] = b[k] ?? a[k]
|
|
27
|
-
}
|
|
28
|
-
}
|
|
29
|
-
return obj
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export interface GlobalConfig {
|
|
33
|
-
size?: "default" | "small" | "large"
|
|
34
|
-
form?: FormConfig
|
|
35
|
-
locale?: Language
|
|
36
|
-
}
|
|
37
|
-
interface FormConfig {
|
|
38
|
-
components?: unknown[]
|
|
39
|
-
}
|
package/utils/hooks/useLocal.ts
DELETED
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import { computed, isRef, ref, type ComputedRef, type Ref } from "vue"
|
|
2
|
-
import en from "../../locale/lang/en"
|
|
3
|
-
|
|
4
|
-
import { useGlobalConfig } from "easybill-ui"
|
|
5
|
-
import type { Language } from "../../locale"
|
|
6
|
-
|
|
7
|
-
export type TranslatorOption = Record<string, string | number> | string[]
|
|
8
|
-
export type Translator = (path: string, option?: TranslatorOption) => string
|
|
9
|
-
export type LocaleSource = Language | Ref<Language> | ComputedRef<Language>
|
|
10
|
-
export type LocaleRef = Ref<Language> | ComputedRef<Language>
|
|
11
|
-
export type LocaleContext = {
|
|
12
|
-
locale: LocaleRef
|
|
13
|
-
lang: ComputedRef<string>
|
|
14
|
-
t: Translator
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
const resolveLocale = (locale: LocaleSource): Language => (isRef(locale) ? locale.value : locale)
|
|
18
|
-
|
|
19
|
-
export const buildTranslator =
|
|
20
|
-
(locale: LocaleSource): Translator =>
|
|
21
|
-
(path, option) =>
|
|
22
|
-
translate(path, option, resolveLocale(locale))
|
|
23
|
-
|
|
24
|
-
export const translate = (path: string, option: undefined | TranslatorOption, locale: Language): string => {
|
|
25
|
-
const value = get(locale, path, path) as string
|
|
26
|
-
if (Array.isArray(option)) {
|
|
27
|
-
return value.replace(/\{(\d+)\}/g, (_, key) => `${option[Number(key)]}`)
|
|
28
|
-
}
|
|
29
|
-
return value.replace(/\{(\w+)\}/g, (_, key) => `${option?.[key] ?? `{${key}}`}`)
|
|
30
|
-
}
|
|
31
|
-
|
|
32
|
-
export const buildLocaleContext = (locale: LocaleSource): LocaleContext => {
|
|
33
|
-
const localeRef = (isRef(locale) ? locale : ref(locale)) as LocaleRef
|
|
34
|
-
const lang = computed(() => localeRef.value.name)
|
|
35
|
-
return {
|
|
36
|
-
lang,
|
|
37
|
-
locale: localeRef,
|
|
38
|
-
t: buildTranslator(locale),
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export const useLocale = (localeOverrides?: Language | undefined) => {
|
|
43
|
-
const globalConfig = useGlobalConfig()
|
|
44
|
-
const locale = localeOverrides || globalConfig.value.locale!
|
|
45
|
-
return buildLocaleContext(computed(() => locale || en))
|
|
46
|
-
}
|
|
47
|
-
function get(object: Record<string, unknown>, path: string, defaultValue: unknown) {
|
|
48
|
-
// 将路径转换为数组形式
|
|
49
|
-
const pathArray = Array.isArray(path) ? path : path.split(/[\.\[\]]/).filter(Boolean)
|
|
50
|
-
|
|
51
|
-
let result = object
|
|
52
|
-
|
|
53
|
-
for (const key of pathArray) {
|
|
54
|
-
if (result === null || result === undefined) {
|
|
55
|
-
return defaultValue
|
|
56
|
-
}
|
|
57
|
-
result = result[key] as Record<string, unknown>
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
return result === undefined ? defaultValue : result
|
|
61
|
-
}
|
package/utils/index.ts
DELETED
package/utils/vue/index.ts
DELETED
package/utils/vue/install.ts
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import type { App, Component } from "vue"
|
|
2
|
-
import type { SFCWithInstall } from "./typescript"
|
|
3
|
-
|
|
4
|
-
export const withInstall = <T, E extends Record<string, unknown>>(name: string, main: T, extra?: E) => {
|
|
5
|
-
;(main as SFCWithInstall<T>).install = (app: App): void => {
|
|
6
|
-
for (const comp of [main, ...Object.values(extra ?? {})]) {
|
|
7
|
-
const component = comp as Component
|
|
8
|
-
app.component(name || "", component)
|
|
9
|
-
}
|
|
10
|
-
}
|
|
11
|
-
|
|
12
|
-
if (extra) {
|
|
13
|
-
for (const [key, comp] of Object.entries(extra)) {
|
|
14
|
-
;(main as Record<string, unknown>)[key] = comp
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
return main as SFCWithInstall<T> & E
|
|
18
|
-
}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { type GlobalConfig, provideGlobalConfig } from "easybill-ui"
|
|
2
|
-
import type { App, Plugin } from "vue"
|
|
3
|
-
const INSTALLED_KEY = Symbol("INSTALLED_KEY")
|
|
4
|
-
|
|
5
|
-
export const makeInstaller = (components: Plugin[] = []) => {
|
|
6
|
-
const install = (app: App, options?: GlobalConfig) => {
|
|
7
|
-
if (Reflect.get(app, INSTALLED_KEY)) return
|
|
8
|
-
if (options) provideGlobalConfig(options)
|
|
9
|
-
Reflect.set(app, INSTALLED_KEY, true)
|
|
10
|
-
components.forEach((c) => app.use(c))
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
return {
|
|
14
|
-
install,
|
|
15
|
-
}
|
|
16
|
-
}
|