@vyr/element-plus-browser 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 (43) hide show
  1. package/package.json +26 -0
  2. package/src/common/event.ts +9 -0
  3. package/src/common/index.ts +2 -0
  4. package/src/common/provider.ts +14 -0
  5. package/src/index.ts +3 -0
  6. package/src/locale/Language.ts +10 -0
  7. package/src/locale/LanguageProvider.ts +427 -0
  8. package/src/locale/index.ts +2 -0
  9. package/src/option/Button.ts +38 -0
  10. package/src/option/Column.ts +19 -0
  11. package/src/option/Dialog.ts +10 -0
  12. package/src/option/Form.ts +16 -0
  13. package/src/option/Input.ts +18 -0
  14. package/src/option/Menu.ts +31 -0
  15. package/src/option/Row.ts +19 -0
  16. package/src/option/index.ts +7 -0
  17. package/src/preset/ElTable.ts +425 -0
  18. package/src/preset/index.ts +14 -0
  19. package/src/service/global/index.ts +1 -0
  20. package/src/service/global/scripts/index.ts +60 -0
  21. package/src/service/index.ts +53 -0
  22. package/src/service/inspector/ElButton.vue +98 -0
  23. package/src/service/inspector/ElCascader.vue +98 -0
  24. package/src/service/inspector/ElCheckbox.vue +91 -0
  25. package/src/service/inspector/ElCol.vue +32 -0
  26. package/src/service/inspector/ElDatePicker.vue +92 -0
  27. package/src/service/inspector/ElDialog.vue +33 -0
  28. package/src/service/inspector/ElForm.vue +44 -0
  29. package/src/service/inspector/ElInput.vue +134 -0
  30. package/src/service/inspector/ElInputNumber.vue +78 -0
  31. package/src/service/inspector/ElMenu.vue +60 -0
  32. package/src/service/inspector/ElMenuItem.vue +46 -0
  33. package/src/service/inspector/ElPagination.vue +103 -0
  34. package/src/service/inspector/ElRadio.vue +91 -0
  35. package/src/service/inspector/ElRow.vue +36 -0
  36. package/src/service/inspector/ElSelect.vue +98 -0
  37. package/src/service/inspector/ElSubMenu.vue +32 -0
  38. package/src/service/inspector/ElSwitch.vue +58 -0
  39. package/src/service/inspector/ElTable.vue +47 -0
  40. package/src/service/inspector/ElTableColumn.vue +107 -0
  41. package/src/service/inspector/VueViewer.vue +65 -0
  42. package/src/service/inspector/index.ts +23 -0
  43. package/src/shims-vue.d.ts +10 -0
@@ -0,0 +1,65 @@
1
+ <template>
2
+ <vyr-card v-if="descriptor" :title="language.get(`descriptor.type.${descriptor.type}` as any)" :scroll="true">
3
+ <BaseFragment :raw="raw" />
4
+ <HTMLFragment v-if="ignore.includes(descriptor.type) === false" :raw="raw" />
5
+ <component :is="PropsViewer" :raw="raw"></component>
6
+ </vyr-card>
7
+ </template>
8
+
9
+
10
+ <script lang="ts" setup>
11
+ import { computed, defineAsyncComponent, ref, Ref, watch } from 'vue';
12
+ import { VyrCard } from '@vyr/design';
13
+ import { BaseFragment, HTMLFragment, providerDescriptor as builtinProviderDescriptor } from '@vyr/builtin'
14
+ import { VueDescriptor } from '@vyr/vue'
15
+ import { ElButtonDescriptor, ElCascaderDescriptor, ElCheckboxDescriptor, ElDatePickerDescriptor, ElFormDescriptor, ElInputDescriptor, ElInputNumberDescriptor, ElRadioDescriptor, ElColDescriptor, ElRowDescriptor, ElSelectDescriptor, ElSwitchDescriptor, ElTableColumnDescriptor, ElTableDescriptor, ElDialogDescriptor, ElPaginationDescriptor, ElMenuDescriptor, ElSubMenuDescriptor, ElMenuItemDescriptor } from '@vyr/element-plus';
16
+ import { language } from '../../locale'
17
+ import { providerDescriptor } from '../../common'
18
+
19
+ const props = defineProps<{ raw: string, uuid: string }>()
20
+
21
+ const ignore = [ElRowDescriptor.type, ElColDescriptor.type, ElTableColumnDescriptor.type, ElDialogDescriptor.type]
22
+ const components = [
23
+ { type: ElButtonDescriptor.type, import: defineAsyncComponent(() => import('./ElButton.vue')) },
24
+ { type: ElRowDescriptor.type, import: defineAsyncComponent(() => import('./ElRow.vue')) },
25
+ { type: ElColDescriptor.type, import: defineAsyncComponent(() => import('./ElCol.vue')) },
26
+ { type: ElFormDescriptor.type, import: defineAsyncComponent(() => import('./ElForm.vue')) },
27
+ { type: ElCascaderDescriptor.type, import: defineAsyncComponent(() => import('./ElCascader.vue')) },
28
+ { type: ElCheckboxDescriptor.type, import: defineAsyncComponent(() => import('./ElCheckbox.vue')) },
29
+ { type: ElDatePickerDescriptor.type, import: defineAsyncComponent(() => import('./ElDatePicker.vue')) },
30
+ { type: ElInputDescriptor.type, import: defineAsyncComponent(() => import('./ElInput.vue')) },
31
+ { type: ElInputNumberDescriptor.type, import: defineAsyncComponent(() => import('./ElInputNumber.vue')) },
32
+ { type: ElRadioDescriptor.type, import: defineAsyncComponent(() => import('./ElRadio.vue')) },
33
+ { type: ElSelectDescriptor.type, import: defineAsyncComponent(() => import('./ElSelect.vue')) },
34
+ { type: ElSwitchDescriptor.type, import: defineAsyncComponent(() => import('./ElSwitch.vue')) },
35
+ { type: ElTableDescriptor.type, import: defineAsyncComponent(() => import('./ElTable.vue')) },
36
+ { type: ElTableColumnDescriptor.type, import: defineAsyncComponent(() => import('./ElTableColumn.vue')) },
37
+ { type: ElDialogDescriptor.type, import: defineAsyncComponent(() => import('./ElDialog.vue')) },
38
+ { type: ElPaginationDescriptor.type, import: defineAsyncComponent(() => import('./ElPagination.vue')) },
39
+ { type: ElMenuDescriptor.type, import: defineAsyncComponent(() => import('./ElMenu.vue')) },
40
+ { type: ElSubMenuDescriptor.type, import: defineAsyncComponent(() => import('./ElSubMenu.vue')) },
41
+ { type: ElMenuItemDescriptor.type, import: defineAsyncComponent(() => import('./ElMenuItem.vue')) },
42
+ ]
43
+
44
+ const descriptor = ref(null) as Ref<VueDescriptor | null>
45
+ const watchEditItem = (cur: string) => {
46
+ if (!cur) return descriptor.value = null
47
+ descriptor.value = VueDescriptor.get<VueDescriptor>(cur)
48
+ }
49
+ watch(() => props.uuid, watchEditItem, { immediate: true })
50
+
51
+ providerDescriptor(descriptor)
52
+ builtinProviderDescriptor(descriptor)
53
+
54
+ const PropsViewer = computed(() => {
55
+ if (descriptor.value === null) return null
56
+
57
+ for (const component of components) {
58
+ if (component.type === descriptor.value.type) return component.import
59
+ }
60
+
61
+ return null
62
+ })
63
+ </script>
64
+
65
+ <style lang="less" scoped></style>
@@ -0,0 +1,23 @@
1
+ import { ElButtonDescriptor, ElCascaderDescriptor, ElCheckboxDescriptor, ElColDescriptor, ElDatePickerDescriptor, ElDialogDescriptor, ElFormDescriptor, ElInputDescriptor, ElInputNumberDescriptor, ElMenuDescriptor, ElMenuItemDescriptor, ElPaginationDescriptor, ElRadioDescriptor, ElRowDescriptor, ElSelectDescriptor, ElSubMenuDescriptor, ElSwitchDescriptor, ElTableColumnDescriptor, ElTableDescriptor } from '@vyr/element-plus'
2
+
3
+ export default [
4
+ { type: ElButtonDescriptor.type, import: () => import('./VueViewer.vue') },
5
+ { type: ElRowDescriptor.type, import: () => import('./VueViewer.vue') },
6
+ { type: ElColDescriptor.type, import: () => import('./VueViewer.vue') },
7
+ { type: ElFormDescriptor.type, import: () => import('./VueViewer.vue') },
8
+ { type: ElCascaderDescriptor.type, import: () => import('./VueViewer.vue') },
9
+ { type: ElCheckboxDescriptor.type, import: () => import('./VueViewer.vue') },
10
+ { type: ElDatePickerDescriptor.type, import: () => import('./VueViewer.vue') },
11
+ { type: ElInputDescriptor.type, import: () => import('./VueViewer.vue') },
12
+ { type: ElInputNumberDescriptor.type, import: () => import('./VueViewer.vue') },
13
+ { type: ElRadioDescriptor.type, import: () => import('./VueViewer.vue') },
14
+ { type: ElSelectDescriptor.type, import: () => import('./VueViewer.vue') },
15
+ { type: ElSwitchDescriptor.type, import: () => import('./VueViewer.vue') },
16
+ { type: ElTableDescriptor.type, import: () => import('./VueViewer.vue') },
17
+ { type: ElTableColumnDescriptor.type, import: () => import('./VueViewer.vue') },
18
+ { type: ElDialogDescriptor.type, import: () => import('./VueViewer.vue') },
19
+ { type: ElPaginationDescriptor.type, import: () => import('./VueViewer.vue') },
20
+ { type: ElMenuDescriptor.type, import: () => import('./VueViewer.vue') },
21
+ { type: ElSubMenuDescriptor.type, import: () => import('./VueViewer.vue') },
22
+ { type: ElMenuItemDescriptor.type, import: () => import('./VueViewer.vue') },
23
+ ]
@@ -0,0 +1,10 @@
1
+ /* eslint-disable */
2
+ declare module '*.vue' {
3
+ const component: DefineComponent<{}, {}, any>
4
+ export default component
5
+ }
6
+
7
+ declare module '!!raw-loader!*' {
8
+ const v: string
9
+ export default v
10
+ }