el-plus-crud 0.0.49 → 0.0.50

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 (40) hide show
  1. package/CHANGELOG.md +19 -17
  2. package/dist/el-plus-crud.mjs +3605 -3453
  3. package/example/App.vue +1 -1
  4. package/lib/components/el-plus-form/ElPlusForm.vue +775 -771
  5. package/lib/components/el-plus-form/ElPlusFormDialog.vue +1 -1
  6. package/lib/components/el-plus-form/components/ElPlusFormArea.vue +62 -62
  7. package/lib/components/el-plus-form/components/ElPlusFormBtn.vue +103 -103
  8. package/lib/components/el-plus-form/components/ElPlusFormBtns.vue +140 -134
  9. package/lib/components/el-plus-form/components/ElPlusFormCascader.vue +64 -64
  10. package/lib/components/el-plus-form/components/ElPlusFormCascaderPanel.vue +54 -54
  11. package/lib/components/el-plus-form/components/ElPlusFormCheckbox.vue +45 -45
  12. package/lib/components/el-plus-form/components/ElPlusFormCheckboxButton.vue +45 -45
  13. package/lib/components/el-plus-form/components/ElPlusFormColor.vue +39 -39
  14. package/lib/components/el-plus-form/components/ElPlusFormDate.vue +40 -40
  15. package/lib/components/el-plus-form/components/ElPlusFormDaterange.vue +47 -47
  16. package/lib/components/el-plus-form/components/ElPlusFormDatetime.vue +41 -41
  17. package/lib/components/el-plus-form/components/ElPlusFormDatetimerange.vue +47 -47
  18. package/lib/components/el-plus-form/components/ElPlusFormInput.vue +62 -62
  19. package/lib/components/el-plus-form/components/ElPlusFormLink.vue +282 -282
  20. package/lib/components/el-plus-form/components/ElPlusFormLkuser.vue +490 -490
  21. package/lib/components/el-plus-form/components/ElPlusFormNbinput.vue +54 -54
  22. package/lib/components/el-plus-form/components/ElPlusFormNumber.vue +147 -147
  23. package/lib/components/el-plus-form/components/ElPlusFormPassword.vue +44 -44
  24. package/lib/components/el-plus-form/components/ElPlusFormQuickInput.vue +96 -96
  25. package/lib/components/el-plus-form/components/ElPlusFormRadio.vue +68 -68
  26. package/lib/components/el-plus-form/components/ElPlusFormRate.vue +54 -54
  27. package/lib/components/el-plus-form/components/ElPlusFormSelect.vue +162 -162
  28. package/lib/components/el-plus-form/components/ElPlusFormSlider.vue +39 -39
  29. package/lib/components/el-plus-form/components/ElPlusFormSwitch.vue +39 -39
  30. package/lib/components/el-plus-form/components/ElPlusFormTextarea.vue +50 -50
  31. package/lib/components/el-plus-form/components/ElPlusFormTransfer.vue +45 -45
  32. package/lib/components/el-plus-form/components/ElPlusFormTree.vue +77 -77
  33. package/lib/components/el-plus-form/components/ElPlusFormTreeSelect.vue +60 -60
  34. package/lib/components/el-plus-form/components/ElPlusFormUpbtn.vue +144 -0
  35. package/lib/components/el-plus-form/components/ElPlusFormUpload.vue +369 -369
  36. package/lib/components/el-plus-form/mixins/index.ts +2 -2
  37. package/lib/components/el-plus-table/components/header.vue +283 -260
  38. package/lib/components-list.ts +2 -0
  39. package/package.json +1 -1
  40. package/types/formList.d.ts +447 -446
@@ -1,64 +1,64 @@
1
- <template>
2
- <el-cascader v-if="isInit" class="ElPlusFormCascader-panel" v-bind="attrs" v-on="onEvents" :options="options" :disabled="disabled" v-model="currentValue" />
3
- </template>
4
- <script lang="ts">
5
- export default {
6
- name: 'ElPlusFormCascader',
7
- inheritAttrs: false,
8
- typeName: 'cascader',
9
- customOptions: {}
10
- }
11
- </script>
12
- <script lang="ts" setup>
13
- import { ref, useAttrs, onBeforeMount, inject, reactive, watch } from 'vue'
14
- import { getAttrs, getEvents } from '../mixins'
15
- import { isEqual } from 'lodash'
16
-
17
- const globalData = inject('globalData') as any
18
-
19
- const props = defineProps<{
20
- modelValue?: Array<string> | string | null
21
- field: string
22
- desc: { [key: string]: any }
23
- formData: { [key: string]: any }
24
- disabled?: boolean
25
- }>()
26
-
27
- const emits = defineEmits(['update:modelValue'])
28
- const currentValue = ref(props.modelValue)
29
- emits('update:modelValue', currentValue)
30
-
31
- const isInit = ref(false)
32
- const attrs = ref({} as any)
33
- const onEvents = ref(getEvents(props))
34
- const options = reactive([] as any[])
35
-
36
- onBeforeMount(async () => {
37
- attrs.value = await getAttrs(props, { clearable: true, props: { value: 'value', label: 'label', children: 'children', checkStrictly: !!props.desc.checkStrictly }, ...useAttrs() })
38
- isInit.value = true
39
- })
40
-
41
- //监听options数据
42
- watch(
43
- () => props.desc.options,
44
- async (data) => {
45
- if (typeof data === 'string') {
46
- options.splice(0, options.length, ...(globalData[data] || []))
47
- } else if (typeof data === 'function') {
48
- options.splice(0, options.length, ...(await data(props.formData)))
49
- } else if (Array.isArray(data)) {
50
- if (data && options && !isEqual(data, options)) {
51
- options.splice(0, options.length, ...data)
52
- }
53
- } else {
54
- options.splice(0, options.length)
55
- }
56
- },
57
- { immediate: true }
58
- )
59
- </script>
60
- <style lang="scss" scoped>
61
- .ElPlusFormCascader-panel {
62
- display: flex;
63
- }
64
- </style>
1
+ <template>
2
+ <el-cascader v-if="isInit" class="ElPlusFormCascader-panel" v-bind="attrs" v-on="onEvents" :options="options" :disabled="disabled" v-model="currentValue" />
3
+ </template>
4
+ <script lang="ts">
5
+ export default {
6
+ name: 'ElPlusFormCascader',
7
+ inheritAttrs: false,
8
+ typeName: 'cascader',
9
+ customOptions: {}
10
+ }
11
+ </script>
12
+ <script lang="ts" setup>
13
+ import { ref, useAttrs, onBeforeMount, inject, reactive, watch } from 'vue'
14
+ import { getAttrs, getEvents } from '../mixins'
15
+ import { isEqual } from 'lodash'
16
+
17
+ const globalData = inject('globalData') as any
18
+
19
+ const props = defineProps<{
20
+ modelValue?: Array<string> | string | null
21
+ field: string
22
+ desc: { [key: string]: any }
23
+ formData: { [key: string]: any }
24
+ disabled?: boolean
25
+ }>()
26
+
27
+ const emits = defineEmits(['update:modelValue'])
28
+ const currentValue = ref(props.modelValue)
29
+ emits('update:modelValue', currentValue)
30
+
31
+ const isInit = ref(false)
32
+ const attrs = ref({} as any)
33
+ const onEvents = ref(getEvents(props))
34
+ const options = reactive([] as any[])
35
+
36
+ onBeforeMount(async () => {
37
+ attrs.value = await getAttrs(props, { clearable: true, props: { value: 'value', label: 'label', children: 'children', checkStrictly: !!props.desc.checkStrictly }, ...useAttrs() })
38
+ isInit.value = true
39
+ })
40
+
41
+ //监听options数据
42
+ watch(
43
+ () => props.desc.options,
44
+ async (data) => {
45
+ if (typeof data === 'string') {
46
+ options.splice(0, options.length, ...(globalData[data] || []))
47
+ } else if (typeof data === 'function') {
48
+ options.splice(0, options.length, ...(await data(props.formData)))
49
+ } else if (Array.isArray(data)) {
50
+ if (data && options && !isEqual(data, options)) {
51
+ options.splice(0, options.length, ...data)
52
+ }
53
+ } else {
54
+ options.splice(0, options.length)
55
+ }
56
+ },
57
+ { immediate: true }
58
+ )
59
+ </script>
60
+ <style lang="scss" scoped>
61
+ .ElPlusFormCascader-panel {
62
+ display: flex;
63
+ }
64
+ </style>
@@ -1,54 +1,54 @@
1
- <template>
2
- <el-cascader-panel v-if="isInit" class="ElPlusFormCascaderPanel-panel" v-bind="attrs" v-on="onEvents" :options="props.desc.options" :disabled="disabled" v-model="currentValue">
3
- <!-- 非作用域插槽 -->
4
- <template v-for="(item, key, index) in slots" #[key]="data" :key="index">
5
- <slot :name="key" :data="data" />
6
- </template>
7
- </el-cascader-panel>
8
- </template>
9
- <script lang="ts">
10
- export default {
11
- name: 'ElPlusFormCascaderPanel',
12
- inheritAttrs: false,
13
- typeName: 'cascaderPanel',
14
- customOptions: {}
15
- }
16
- </script>
17
- <script lang="ts" setup>
18
- import { ref, useAttrs, useSlots, onBeforeMount } from 'vue'
19
- import { getAttrs, getEvents } from '../mixins'
20
-
21
- const props = defineProps<{
22
- modelValue?: string | number | '' | null
23
- field: string
24
- desc: { [key: string]: any }
25
- formData: { [key: string]: any }
26
- disabled?: boolean
27
- }>()
28
-
29
- const emits = defineEmits(['update:modelValue'])
30
- const currentValue = ref(props.modelValue)
31
- emits('update:modelValue', currentValue)
32
-
33
- const slots = ref(Object.assign({}, useSlots(), props.desc.slots))
34
- const attrs = ref({} as any)
35
- const isInit = ref(false)
36
- const onEvents = ref(getEvents(props))
37
-
38
- onBeforeMount(async () => {
39
- attrs.value = await getAttrs(props, {
40
- props: { value: 'value', label: 'label', children: 'children' },
41
- fetchSuggestions(s: any, cb: Function) {
42
- const res: any[] = []
43
- cb(res)
44
- },
45
- ...useAttrs()
46
- })
47
- isInit.value = true
48
- })
49
- </script>
50
- <style lang="scss" scoped>
51
- .ElPlusFormCascaderPanel-panel {
52
- display: flex;
53
- }
54
- </style>
1
+ <template>
2
+ <el-cascader-panel v-if="isInit" class="ElPlusFormCascaderPanel-panel" v-bind="attrs" v-on="onEvents" :options="props.desc.options" :disabled="disabled" v-model="currentValue">
3
+ <!-- 非作用域插槽 -->
4
+ <template v-for="(item, key, index) in slots" #[key]="data" :key="index">
5
+ <slot :name="key" :data="data" />
6
+ </template>
7
+ </el-cascader-panel>
8
+ </template>
9
+ <script lang="ts">
10
+ export default {
11
+ name: 'ElPlusFormCascaderPanel',
12
+ inheritAttrs: false,
13
+ typeName: 'cascaderPanel',
14
+ customOptions: {}
15
+ }
16
+ </script>
17
+ <script lang="ts" setup>
18
+ import { ref, useAttrs, useSlots, onBeforeMount } from 'vue'
19
+ import { getAttrs, getEvents } from '../mixins'
20
+
21
+ const props = defineProps<{
22
+ modelValue?: string | number | '' | null
23
+ field: string
24
+ desc: { [key: string]: any }
25
+ formData: { [key: string]: any }
26
+ disabled?: boolean
27
+ }>()
28
+
29
+ const emits = defineEmits(['update:modelValue'])
30
+ const currentValue = ref(props.modelValue)
31
+ emits('update:modelValue', currentValue)
32
+
33
+ const slots = ref(Object.assign({}, useSlots(), props.desc.slots))
34
+ const attrs = ref({} as any)
35
+ const isInit = ref(false)
36
+ const onEvents = ref(getEvents(props))
37
+
38
+ onBeforeMount(async () => {
39
+ attrs.value = await getAttrs(props, {
40
+ props: { value: 'value', label: 'label', children: 'children' },
41
+ fetchSuggestions(s: any, cb: Function) {
42
+ const res: any[] = []
43
+ cb(res)
44
+ },
45
+ ...useAttrs()
46
+ })
47
+ isInit.value = true
48
+ })
49
+ </script>
50
+ <style lang="scss" scoped>
51
+ .ElPlusFormCascaderPanel-panel {
52
+ display: flex;
53
+ }
54
+ </style>
@@ -1,45 +1,45 @@
1
- <template>
2
- <el-checkbox-group v-if="isInit" class="ElPlusFormCheckbox-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled">
3
- <el-checkbox v-for="option of desc.options" :key="option.value" :label="option.value" v-bind="option.attrs">
4
- {{ option.text }}
5
- </el-checkbox>
6
- </el-checkbox-group>
7
- </template>
8
- <script lang="ts">
9
- export default {
10
- name: 'ElPlusFormCheckbox',
11
- inheritAttrs: false,
12
- typeName: 'checkbox',
13
- customOptions: {}
14
- }
15
- </script>
16
- <script lang="ts" setup>
17
- import { ref, useAttrs, onBeforeMount } from 'vue'
18
- import { getAttrs, getEvents } from '../mixins'
19
-
20
- const props = defineProps<{
21
- modelValue?: string | number | '' | null
22
- field: string
23
- desc: { [key: string]: any }
24
- formData: { [key: string]: any }
25
- disabled?: boolean
26
- }>()
27
-
28
- const emits = defineEmits(['update:modelValue'])
29
- const currentValue = ref(props.modelValue)
30
- emits('update:modelValue', currentValue)
31
-
32
- const attrs = ref({} as any)
33
- const isInit = ref(false)
34
- const onEvents = ref(getEvents(props))
35
-
36
- onBeforeMount(async () => {
37
- attrs.value = await getAttrs(props, { ...useAttrs() })
38
- isInit.value = true
39
- })
40
- </script>
41
- <style lang="scss" scoped>
42
- .ElPlusFormCheckbox-panel {
43
- display: flex;
44
- }
45
- </style>
1
+ <template>
2
+ <el-checkbox-group v-if="isInit" class="ElPlusFormCheckbox-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled">
3
+ <el-checkbox v-for="option of desc.options" :key="option.value" :label="option.value" v-bind="option.attrs">
4
+ {{ option.text }}
5
+ </el-checkbox>
6
+ </el-checkbox-group>
7
+ </template>
8
+ <script lang="ts">
9
+ export default {
10
+ name: 'ElPlusFormCheckbox',
11
+ inheritAttrs: false,
12
+ typeName: 'checkbox',
13
+ customOptions: {}
14
+ }
15
+ </script>
16
+ <script lang="ts" setup>
17
+ import { ref, useAttrs, onBeforeMount } from 'vue'
18
+ import { getAttrs, getEvents } from '../mixins'
19
+
20
+ const props = defineProps<{
21
+ modelValue?: string | number | '' | null
22
+ field: string
23
+ desc: { [key: string]: any }
24
+ formData: { [key: string]: any }
25
+ disabled?: boolean
26
+ }>()
27
+
28
+ const emits = defineEmits(['update:modelValue'])
29
+ const currentValue = ref(props.modelValue)
30
+ emits('update:modelValue', currentValue)
31
+
32
+ const attrs = ref({} as any)
33
+ const isInit = ref(false)
34
+ const onEvents = ref(getEvents(props))
35
+
36
+ onBeforeMount(async () => {
37
+ attrs.value = await getAttrs(props, { ...useAttrs() })
38
+ isInit.value = true
39
+ })
40
+ </script>
41
+ <style lang="scss" scoped>
42
+ .ElPlusFormCheckbox-panel {
43
+ display: flex;
44
+ }
45
+ </style>
@@ -1,45 +1,45 @@
1
- <template>
2
- <el-checkbox-group v-if="isInit" class="ElPlusFormCheckboxButton-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled">
3
- <el-checkbox-button v-for="option of desc.options" :key="option.value" :label="option.value" v-bind="option.attrs">
4
- {{ option.text }}
5
- </el-checkbox-button>
6
- </el-checkbox-group>
7
- </template>
8
- <script lang="ts">
9
- export default {
10
- name: 'ElPlusFormCheckboxButton',
11
- inheritAttrs: false,
12
- typeName: 'checkboxButton',
13
- customOptions: {}
14
- }
15
- </script>
16
- <script lang="ts" setup>
17
- import { ref, useAttrs, onBeforeMount } from 'vue'
18
- import { getAttrs, getEvents } from '../mixins'
19
-
20
- const props = defineProps<{
21
- modelValue?: string | number | '' | null
22
- field: string
23
- desc: { [key: string]: any }
24
- formData: { [key: string]: any }
25
- disabled?: boolean
26
- }>()
27
-
28
- const emits = defineEmits(['update:modelValue'])
29
- const currentValue = ref(props.modelValue)
30
- emits('update:modelValue', currentValue)
31
-
32
- const attrs = ref({} as any)
33
- const isInit = ref(false)
34
- const onEvents = ref(getEvents(props))
35
-
36
- onBeforeMount(async () => {
37
- attrs.value = await getAttrs(props, { ...useAttrs() })
38
- isInit.value = true
39
- })
40
- </script>
41
- <style lang="scss" scoped>
42
- .ElPlusFormCheckboxButton-panel {
43
- display: flex;
44
- }
45
- </style>
1
+ <template>
2
+ <el-checkbox-group v-if="isInit" class="ElPlusFormCheckboxButton-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled">
3
+ <el-checkbox-button v-for="option of desc.options" :key="option.value" :label="option.value" v-bind="option.attrs">
4
+ {{ option.text }}
5
+ </el-checkbox-button>
6
+ </el-checkbox-group>
7
+ </template>
8
+ <script lang="ts">
9
+ export default {
10
+ name: 'ElPlusFormCheckboxButton',
11
+ inheritAttrs: false,
12
+ typeName: 'checkboxButton',
13
+ customOptions: {}
14
+ }
15
+ </script>
16
+ <script lang="ts" setup>
17
+ import { ref, useAttrs, onBeforeMount } from 'vue'
18
+ import { getAttrs, getEvents } from '../mixins'
19
+
20
+ const props = defineProps<{
21
+ modelValue?: string | number | '' | null
22
+ field: string
23
+ desc: { [key: string]: any }
24
+ formData: { [key: string]: any }
25
+ disabled?: boolean
26
+ }>()
27
+
28
+ const emits = defineEmits(['update:modelValue'])
29
+ const currentValue = ref(props.modelValue)
30
+ emits('update:modelValue', currentValue)
31
+
32
+ const attrs = ref({} as any)
33
+ const isInit = ref(false)
34
+ const onEvents = ref(getEvents(props))
35
+
36
+ onBeforeMount(async () => {
37
+ attrs.value = await getAttrs(props, { ...useAttrs() })
38
+ isInit.value = true
39
+ })
40
+ </script>
41
+ <style lang="scss" scoped>
42
+ .ElPlusFormCheckboxButton-panel {
43
+ display: flex;
44
+ }
45
+ </style>
@@ -1,39 +1,39 @@
1
- <template>
2
- <el-color-picker class="ElPlusFormColor-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled" />
3
- </template>
4
- <script lang="ts">
5
- export default {
6
- name: 'ElPlusFormColor',
7
- inheritAttrs: false,
8
- typeName: 'color',
9
- customOptions: {}
10
- }
11
- </script>
12
- <script lang="ts" setup>
13
- import { ref, useAttrs, onBeforeMount } from 'vue'
14
- import { getAttrs, getEvents } from '../mixins'
15
-
16
- const props = defineProps<{
17
- modelValue?: string | number | '' | null
18
- field: string
19
- desc: { [key: string]: any }
20
- formData: { [key: string]: any }
21
- disabled?: boolean
22
- }>()
23
-
24
- const emits = defineEmits(['update:modelValue'])
25
- const currentValue = ref(props.modelValue)
26
- const attrs = ref({} as any)
27
- const onEvents = ref(getEvents(props))
28
- // const { attrs, slots, onEvents } = useMixins({ modelValue: props.modelValue, field: props.field, desc: props.desc, formData: props.formData, useAttrs, useSlots })
29
- emits('update:modelValue', currentValue)
30
-
31
- onBeforeMount(async () => {
32
- attrs.value = await getAttrs(props, { ...useAttrs() })
33
- })
34
- </script>
35
- <style lang="scss" scoped>
36
- .ElPlusFormColor-panel {
37
- display: flex;
38
- }
39
- </style>
1
+ <template>
2
+ <el-color-picker class="ElPlusFormColor-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled" />
3
+ </template>
4
+ <script lang="ts">
5
+ export default {
6
+ name: 'ElPlusFormColor',
7
+ inheritAttrs: false,
8
+ typeName: 'color',
9
+ customOptions: {}
10
+ }
11
+ </script>
12
+ <script lang="ts" setup>
13
+ import { ref, useAttrs, onBeforeMount } from 'vue'
14
+ import { getAttrs, getEvents } from '../mixins'
15
+
16
+ const props = defineProps<{
17
+ modelValue?: string | number | '' | null
18
+ field: string
19
+ desc: { [key: string]: any }
20
+ formData: { [key: string]: any }
21
+ disabled?: boolean
22
+ }>()
23
+
24
+ const emits = defineEmits(['update:modelValue'])
25
+ const currentValue = ref(props.modelValue)
26
+ const attrs = ref({} as any)
27
+ const onEvents = ref(getEvents(props))
28
+ // const { attrs, slots, onEvents } = useMixins({ modelValue: props.modelValue, field: props.field, desc: props.desc, formData: props.formData, useAttrs, useSlots })
29
+ emits('update:modelValue', currentValue)
30
+
31
+ onBeforeMount(async () => {
32
+ attrs.value = await getAttrs(props, { ...useAttrs() })
33
+ })
34
+ </script>
35
+ <style lang="scss" scoped>
36
+ .ElPlusFormColor-panel {
37
+ display: flex;
38
+ }
39
+ </style>
@@ -1,40 +1,40 @@
1
- <template>
2
- <el-date-picker v-if="isInit" class="ElPlusFormDate-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled" />
3
- </template>
4
- <script lang="ts">
5
- export default {
6
- name: 'ElPlusFormDate',
7
- inheritAttrs: false,
8
- typeName: 'date',
9
- customOptions: {}
10
- }
11
- </script>
12
- <script lang="ts" setup>
13
- import { ref, useAttrs, onBeforeMount } from 'vue'
14
- import { getAttrs, getEvents } from '../mixins'
15
-
16
- const props = defineProps<{
17
- modelValue?: string | number | '' | null
18
- field: string
19
- desc: { [key: string]: any }
20
- formData: { [key: string]: any }
21
- disabled?: boolean
22
- }>()
23
-
24
- const emits = defineEmits(['update:modelValue'])
25
- const isInit = ref(false)
26
- const attrs = ref({} as any)
27
- const onEvents = ref(getEvents(props))
28
- const currentValue = ref(props.modelValue)
29
- emits('update:modelValue', currentValue)
30
-
31
- onBeforeMount(async () => {
32
- attrs.value = await getAttrs(props, { valueFormat: 'YYYY-MM-DD HH:mm:ss', editable: false, ...useAttrs() })
33
- isInit.value = true
34
- })
35
- </script>
36
- <style lang="scss" scoped>
37
- .ElPlusFormDate-panel {
38
- display: flex;
39
- }
40
- </style>
1
+ <template>
2
+ <el-date-picker v-if="isInit" class="ElPlusFormDate-panel" v-bind="attrs" v-on="onEvents" v-model="currentValue" :disabled="disabled" />
3
+ </template>
4
+ <script lang="ts">
5
+ export default {
6
+ name: 'ElPlusFormDate',
7
+ inheritAttrs: false,
8
+ typeName: 'date',
9
+ customOptions: {}
10
+ }
11
+ </script>
12
+ <script lang="ts" setup>
13
+ import { ref, useAttrs, onBeforeMount } from 'vue'
14
+ import { getAttrs, getEvents } from '../mixins'
15
+
16
+ const props = defineProps<{
17
+ modelValue?: string | number | '' | null
18
+ field: string
19
+ desc: { [key: string]: any }
20
+ formData: { [key: string]: any }
21
+ disabled?: boolean
22
+ }>()
23
+
24
+ const emits = defineEmits(['update:modelValue'])
25
+ const isInit = ref(false)
26
+ const attrs = ref({} as any)
27
+ const onEvents = ref(getEvents(props))
28
+ const currentValue = ref(props.modelValue)
29
+ emits('update:modelValue', currentValue)
30
+
31
+ onBeforeMount(async () => {
32
+ attrs.value = await getAttrs(props, { valueFormat: 'YYYY-MM-DD HH:mm:ss', editable: false, ...useAttrs() })
33
+ isInit.value = true
34
+ })
35
+ </script>
36
+ <style lang="scss" scoped>
37
+ .ElPlusFormDate-panel {
38
+ display: flex;
39
+ }
40
+ </style>