skyline-vue-admin 0.0.13 → 0.0.15

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 (107) hide show
  1. package/dist/components/avatar-input/index.cjs.map +1 -1
  2. package/dist/components/avatar-input/index.mjs.map +1 -1
  3. package/dist/components/create/index.cjs.map +1 -1
  4. package/dist/components/create/index.mjs.map +1 -1
  5. package/dist/components/edit-button/index.cjs.map +1 -1
  6. package/dist/components/edit-button/index.mjs.map +1 -1
  7. package/dist/components/file-multiple-input/index.cjs.map +1 -1
  8. package/dist/components/file-multiple-input/index.mjs.map +1 -1
  9. package/dist/components/image-field/index.cjs.map +1 -1
  10. package/dist/components/image-field/index.mjs.map +1 -1
  11. package/dist/components/link-field/index.cjs.map +1 -1
  12. package/dist/components/link-field/index.mjs.map +1 -1
  13. package/dist/components/radio-button-group-input/index.cjs.map +1 -1
  14. package/dist/components/radio-button-group-input/index.mjs.map +1 -1
  15. package/dist/components/reference-array-field/index.cjs.map +1 -1
  16. package/dist/components/reference-array-field/index.mjs.map +1 -1
  17. package/dist/components/reference-array-input/index.cjs.map +1 -1
  18. package/dist/components/reference-array-input/index.mjs.map +1 -1
  19. package/dist/components/reference-field/index.cjs.map +1 -1
  20. package/dist/components/reference-field/index.mjs.map +1 -1
  21. package/dist/components/reference-image-field/index.cjs.map +1 -1
  22. package/dist/components/reference-image-field/index.mjs.map +1 -1
  23. package/dist/components/show/index.cjs.map +1 -1
  24. package/dist/components/show/index.mjs.map +1 -1
  25. package/dist/components/show-button/index.cjs.map +1 -1
  26. package/dist/components/show-button/index.mjs.map +1 -1
  27. package/dist/components/show-simple-layout/index.cjs.map +1 -1
  28. package/dist/components/show-simple-layout/index.mjs.map +1 -1
  29. package/dist/components/simple-form/index.cjs.map +1 -1
  30. package/dist/components/simple-form/index.mjs.map +1 -1
  31. package/dist/components/single-field-list/index.cjs.map +1 -1
  32. package/dist/components/single-field-list/index.mjs.map +1 -1
  33. package/dist/components/text-input/index.cjs.map +1 -1
  34. package/dist/components/text-input/index.mjs.map +1 -1
  35. package/dist/components/tree-with-details/index.cjs +1 -1
  36. package/dist/components/tree-with-details/index.cjs.map +1 -1
  37. package/dist/components/tree-with-details/index.mjs +48 -42
  38. package/dist/components/tree-with-details/index.mjs.map +1 -1
  39. package/dist/hooks/useFormGrid.cjs.map +1 -1
  40. package/dist/hooks/useFormGrid.mjs.map +1 -1
  41. package/dist/hooks/useMenu.cjs.map +1 -1
  42. package/dist/hooks/useMenu.mjs.map +1 -1
  43. package/dist/hooks/usePermission.cjs.map +1 -1
  44. package/dist/hooks/usePermission.mjs.map +1 -1
  45. package/dist/hooks/useReferenceArrayField.cjs.map +1 -1
  46. package/dist/hooks/useReferenceArrayField.mjs.map +1 -1
  47. package/dist/hooks/useReferenceArrayInput.cjs.map +1 -1
  48. package/dist/hooks/useReferenceArrayInput.mjs.map +1 -1
  49. package/dist/hooks/useRouteKeepAlive.cjs.map +1 -1
  50. package/dist/hooks/useRouteKeepAlive.mjs.map +1 -1
  51. package/dist/hooks/useShow.cjs.map +1 -1
  52. package/dist/hooks/useShow.mjs.map +1 -1
  53. package/dist/hooks/useSize.cjs.map +1 -1
  54. package/dist/hooks/useSize.mjs.map +1 -1
  55. package/dist/hooks/useTab.cjs.map +1 -1
  56. package/dist/hooks/useTab.mjs.map +1 -1
  57. package/dist/hooks/useTreeWithDetails.cjs.map +1 -1
  58. package/dist/hooks/useTreeWithDetails.mjs.map +1 -1
  59. package/dist/hooks/useUser.cjs.map +1 -1
  60. package/dist/hooks/useUser.mjs.map +1 -1
  61. package/dist/i18n/locales/en.cjs.map +1 -1
  62. package/dist/i18n/locales/en.mjs.map +1 -1
  63. package/dist/i18n/locales/zh-cn.cjs.map +1 -1
  64. package/dist/i18n/locales/zh-cn.mjs.map +1 -1
  65. package/dist/icons/EpDelete.cjs.map +1 -1
  66. package/dist/icons/EpDelete.mjs.map +1 -1
  67. package/dist/icons/EpDocumentAdd.cjs.map +1 -1
  68. package/dist/icons/EpDocumentAdd.mjs.map +1 -1
  69. package/dist/icons/EpDownload.cjs.map +1 -1
  70. package/dist/icons/EpDownload.mjs.map +1 -1
  71. package/dist/icons/EpFullScreen.cjs.map +1 -1
  72. package/dist/icons/EpFullScreen.mjs.map +1 -1
  73. package/dist/icons/EpMoon.cjs.map +1 -1
  74. package/dist/icons/EpMoon.mjs.map +1 -1
  75. package/dist/icons/EpPlus.cjs.map +1 -1
  76. package/dist/icons/EpPlus.mjs.map +1 -1
  77. package/dist/icons/EpRefresh.cjs.map +1 -1
  78. package/dist/icons/EpRefresh.mjs.map +1 -1
  79. package/dist/icons/EpSunny.cjs.map +1 -1
  80. package/dist/icons/EpSunny.mjs.map +1 -1
  81. package/dist/icons/EpSwitchFilled.cjs.map +1 -1
  82. package/dist/icons/EpSwitchFilled.mjs.map +1 -1
  83. package/dist/icons/EpUploadFilled.cjs.map +1 -1
  84. package/dist/icons/EpUploadFilled.mjs.map +1 -1
  85. package/dist/icons/FluentFullScreenMinimize20Regular.cjs.map +1 -1
  86. package/dist/icons/FluentFullScreenMinimize20Regular.mjs.map +1 -1
  87. package/dist/icons/NimbusTextSize.cjs.map +1 -1
  88. package/dist/icons/NimbusTextSize.mjs.map +1 -1
  89. package/dist/icons/SkyMenuCollapse.cjs.map +1 -1
  90. package/dist/icons/SkyMenuCollapse.mjs.map +1 -1
  91. package/dist/icons/SlTrans.cjs.map +1 -1
  92. package/dist/icons/SlTrans.mjs.map +1 -1
  93. package/dist/layouts/default.cjs +1 -1
  94. package/dist/layouts/default.cjs.map +1 -1
  95. package/dist/layouts/default.mjs +35 -33
  96. package/dist/layouts/default.mjs.map +1 -1
  97. package/dist/pages/login.cjs.map +1 -1
  98. package/dist/pages/login.mjs.map +1 -1
  99. package/dist/pages/not-found.cjs.map +1 -1
  100. package/dist/pages/not-found.mjs.map +1 -1
  101. package/dist/pages/welcome.cjs.map +1 -1
  102. package/dist/pages/welcome.mjs.map +1 -1
  103. package/dist/router/index.cjs.map +1 -1
  104. package/dist/router/index.mjs.map +1 -1
  105. package/dist/setup/index.cjs.map +1 -1
  106. package/dist/setup/index.mjs.map +1 -1
  107. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/reference-array-input/index.tsx"],"sourcesContent":["import type { GetListResult } from '@/provides'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { defineComponent } from 'vue'\r\nimport { useRoute } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\nimport { skyConfig } from '@/setup'\r\nimport { useProvideReferenceArrayInput } from '@/hooks'\r\n\r\nexport interface SkyReferenceArrayInputProps {\r\n source: string\r\n reference: string\r\n size?: number\r\n}\r\n\r\nexport const SkyReferenceArrayInput = defineComponent<SkyReferenceArrayInputProps>({\r\n name: 'SkyReferenceArrayInput',\r\n props: {\r\n reference: {\r\n type: String,\r\n required: true,\r\n },\r\n size: {\r\n type: Number,\r\n default: 30,\r\n },\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n },\r\n setup(props, { slots }) {\r\n const route = useRoute()\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n\r\n const {\r\n state: listData,\r\n isLoading: listLoading,\r\n execute,\r\n } = useAsyncState<GetListResult | undefined, [filter?: Record<string, unknown>]>(\r\n async (filter) => {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getList?.(props.reference, {\r\n pagination: { page: 1, perPage: props.size! },\r\n filter,\r\n signal: controller.signal,\r\n })\r\n },\r\n undefined,\r\n {\r\n immediate: false,\r\n },\r\n )\r\n\r\n useProvideReferenceArrayInput({\r\n reference: props.reference,\r\n getList: (filter?: Record<string, unknown>) => execute(0, filter),\r\n listData,\r\n listLoading,\r\n })\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action={['create', 'edit']} column={props.source}>\r\n {slots.default?.()}\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyReferenceArrayInput","defineComponent","name","props","reference","type","String","required","size","Number","default","source","setup","slots","routeMeta","useRoute","meta","controller","state","listData","isLoading","listLoading","execute","useAsyncState","filter","AbortController","skyConfig","dataProvider","getList","pagination","page","perPage","signal","undefined","immediate","useProvideReferenceArrayInput","_createVNode","SkyCanAccess","resource"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAeO,MAAMA,IAAyBC,gBAAAA,EAA6C;AAAA,EACjFC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,WAAW;AAAA,MACTC,MAAMC;AAAAA,MACNC,UAAU;AAAA;IAEZC,MAAM;AAAA,MACJH,MAAMI;AAAAA,MACNC,SAAS;AAAA;IAEXC,QAAQ;AAAA,MACNN,MAAMC;AAAAA,MACNC,UAAU;AAAA,IACZ;AAAA;EAEFK,MAAMT,GAAO;AAAA,IAAEU,OAAAA;AAAAA,EAAM,GAAG;AAEtB,UAAMC,IADQC,EAAQ,EACEC;AAExB,QAAIC;AAEJ,UAAM;AAAA,MACJC,OAAOC;AAAAA,MACPC,WAAWC;AAAAA,MACXC,SAAAA;AAAAA,IACF,IAAIC,EACF,OAAOC,OACLP,IAAa,IAAIQ,gBAAe,GACzBC,EAAUC,cAAcC,UAAUzB,EAAMC,WAAW;AAAA,MACxDyB,YAAY;AAAA,QAAEC,MAAM;AAAA,QAAGC,SAAS5B,EAAMK;AAAAA;MACtCgB,QAAAA;AAAAA,MACAQ,QAAQf,EAAWe;AAAAA,IACrB,CAAC,IAEHC,QACA;AAAA,MACEC,WAAW;AAAA,IACb,CACF;AAEAC,WAAAA,EAA8B;AAAA,MAC5B/B,WAAWD,EAAMC;AAAAA,MACjBwB,SAAUJ,CAAAA,MAAqCF,EAAQ,GAAGE,CAAM;AAAA,MAChEL,UAAAA;AAAAA,MACAE,aAAAA;AAAAA,IACF,CAAC,GAEM,MAAAe,EAAAC,GAAA;AAAA,MAAA,UACmBvB,EAAUwB;AAAAA,MAAQ,QAAU,CAAC,UAAU,MAAM;AAAA,MAAC,QAAUnC,EAAMQ;AAAAA,IAAM,GAAA;AAAA,MAAAD,SAAAA,MAAA,CACzFG,EAAMH,UAAO,CAAI;AAAA,KAAA;AAAA,EAGxB;AACF,CAAC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/reference-array-input/index.tsx"],"sourcesContent":["import type { GetListResult } from '@/provides'\nimport { useAsyncState } from '@vueuse/core'\nimport { defineComponent } from 'vue'\nimport { useRoute } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\nimport type { SkyLayoutRouteMeta } from '@/router'\nimport { skyConfig } from '@/setup'\nimport { useProvideReferenceArrayInput } from '@/hooks'\n\nexport interface SkyReferenceArrayInputProps {\n source: string\n reference: string\n size?: number\n}\n\nexport const SkyReferenceArrayInput = defineComponent<SkyReferenceArrayInputProps>({\n name: 'SkyReferenceArrayInput',\n props: {\n reference: {\n type: String,\n required: true,\n },\n size: {\n type: Number,\n default: 30,\n },\n source: {\n type: String,\n required: true,\n },\n },\n setup(props, { slots }) {\n const route = useRoute()\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n\n const {\n state: listData,\n isLoading: listLoading,\n execute,\n } = useAsyncState<GetListResult | undefined, [filter?: Record<string, unknown>]>(\n async (filter) => {\n controller = new AbortController()\n return skyConfig.dataProvider?.getList?.(props.reference, {\n pagination: { page: 1, perPage: props.size! },\n filter,\n signal: controller.signal,\n })\n },\n undefined,\n {\n immediate: false,\n },\n )\n\n useProvideReferenceArrayInput({\n reference: props.reference,\n getList: (filter?: Record<string, unknown>) => execute(0, filter),\n listData,\n listLoading,\n })\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action={['create', 'edit']} column={props.source}>\n {slots.default?.()}\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyReferenceArrayInput","defineComponent","name","props","reference","type","String","required","size","Number","default","source","setup","slots","routeMeta","useRoute","meta","controller","state","listData","isLoading","listLoading","execute","useAsyncState","filter","AbortController","skyConfig","dataProvider","getList","pagination","page","perPage","signal","undefined","immediate","useProvideReferenceArrayInput","_createVNode","SkyCanAccess","resource"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAeO,MAAMA,IAAyBC,gBAAAA,EAA6C;AAAA,EACjFC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,WAAW;AAAA,MACTC,MAAMC;AAAAA,MACNC,UAAU;AAAA;IAEZC,MAAM;AAAA,MACJH,MAAMI;AAAAA,MACNC,SAAS;AAAA;IAEXC,QAAQ;AAAA,MACNN,MAAMC;AAAAA,MACNC,UAAU;AAAA,IACZ;AAAA;EAEFK,MAAMT,GAAO;AAAA,IAAEU,OAAAA;AAAAA,EAAM,GAAG;AAEtB,UAAMC,IADQC,EAAQ,EACEC;AAExB,QAAIC;AAEJ,UAAM;AAAA,MACJC,OAAOC;AAAAA,MACPC,WAAWC;AAAAA,MACXC,SAAAA;AAAAA,IACF,IAAIC,EACF,OAAOC,OACLP,IAAa,IAAIQ,gBAAe,GACzBC,EAAUC,cAAcC,UAAUzB,EAAMC,WAAW;AAAA,MACxDyB,YAAY;AAAA,QAAEC,MAAM;AAAA,QAAGC,SAAS5B,EAAMK;AAAAA;MACtCgB,QAAAA;AAAAA,MACAQ,QAAQf,EAAWe;AAAAA,IACrB,CAAC,IAEHC,QACA;AAAA,MACEC,WAAW;AAAA,IACb,CACF;AAEAC,WAAAA,EAA8B;AAAA,MAC5B/B,WAAWD,EAAMC;AAAAA,MACjBwB,SAAUJ,CAAAA,MAAqCF,EAAQ,GAAGE,CAAM;AAAA,MAChEL,UAAAA;AAAAA,MACAE,aAAAA;AAAAA,IACF,CAAC,GAEM,MAAAe,EAAAC,GAAA;AAAA,MAAA,UACmBvB,EAAUwB;AAAAA,MAAQ,QAAU,CAAC,UAAU,MAAM;AAAA,MAAC,QAAUnC,EAAMQ;AAAAA,IAAM,GAAA;AAAA,MAAAD,SAAAA,MAAA,CACzFG,EAAMH,UAAO,CAAI;AAAA,KAAA;AAAA,EAGxB;AACF,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/reference-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\r\nimport { ElButton, ElLoadingDirective, type ButtonProps } from 'element-plus'\r\nimport { computed, defineComponent, withDirectives } from 'vue'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { useRoute, useRouter } from 'vue-router'\r\nimport { useHiddenTitle } from '@/hooks'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport { skyConfig } from '@/setup'\r\n\r\nexport interface SkyReferenceFieldProps {\r\n reference: string\r\n source: string\r\n id?: string\r\n name?: string\r\n label?: string\r\n row?: Record<string, unknown>\r\n}\r\n\r\nexport const SkyReferenceField = defineComponent<SkyReferenceFieldProps & Partial<ButtonProps>>({\r\n name: 'SkyReferenceField',\r\n inheritAttrs: false,\r\n props: {\r\n reference: {\r\n type: String,\r\n required: true,\r\n },\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n id: {\r\n type: String,\r\n default: 'id',\r\n },\r\n name: {\r\n type: String,\r\n default: 'name',\r\n },\r\n label: String,\r\n row: Object,\r\n },\r\n setup(props, { attrs }) {\r\n const router = useRouter()\r\n const route = useRoute()\r\n const hiddenTitle = useHiddenTitle()\r\n const title = computed<string>(() => props.label || props.source)\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\r\n async () => {\r\n const id = props.row?.[props.source]\r\n if (id) {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getOne?.(props.reference, {\r\n id: id as Identifier,\r\n signal: controller.signal,\r\n })\r\n }\r\n },\r\n undefined,\r\n {\r\n immediate: true,\r\n },\r\n )\r\n\r\n const field = computed(() => state.value?.data?.[props.name!] as string | undefined)\r\n\r\n const onClick = () => {\r\n const routeName = skyConfig.getShowRouteName(props.reference)\r\n const id = props.row?.[props.id!]\r\n if (id && router.hasRoute(routeName)) {\r\n router.push({\r\n name: routeName,\r\n params: {\r\n id: String(id),\r\n },\r\n })\r\n }\r\n }\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\r\n {field.value &&\r\n withDirectives(\r\n <div class=\"sky-reference-field\">\r\n {hiddenTitle ? (\r\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\r\n {field.value}\r\n </ElButton>\r\n ) : (\r\n <>\r\n {title.value && <h4>{title.value}</h4>}\r\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\r\n {field.value}\r\n </ElButton>\r\n </>\r\n )}\r\n </div>,\r\n [[ElLoadingDirective, isLoading.value]],\r\n )}\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyReferenceField","defineComponent","name","inheritAttrs","props","reference","type","required","source","id","default","label","row","attrs","router","useRouter","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","immediate","field","params","_createVNode","ElButton","_mergeProps","_Fragment"],"mappings":"o7BAmBAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,oBACAC,aAAAA,GACAC,MAAAA,CACEC,UAAAA,CACEC,KAAAA,OACAC,SAAAA,IAEFC,OAAAA,CACEF,KAAAA,OACAC,SAAAA,IAEFE,GAAAA,CACEH,KAAAA,OACAI,QAAAA,MAEFR,KAAAA,CACEI,KAAAA,OACAI,QAAAA,QAEFC,MAAAA,OACAC,IAAAA,iBAEaC,MAAAA,CAAM,EAAA,CACnB,MAAAC,EAAAC,EAAAA,UAAA,EACAC,EAAAC,EAAAA,SAAA,EACAC,EAAAC,EAAAA,eAAA,EACAC,EAAAC,EAAAA,SAAA,IAAAjB,EAAA,OAAAA,EAAA,MAAA,EACAkB,EAAAN,EAAA,KAEA,IAAAO,oBACmBC,MAAAA,uDAGf,GAAAf,EACEc,OAAAA,EAAAA,IAAAA,gEAEEd,GAAAA,iBAEF,CAAA,WAKFgB,UAAAA,EACF,CAAA,EAGFC,EAAAL,EAAAA,SAAA,IAAAG,EAAA,OAAA,OAAApB,EAAA,IAAA,CAAA,qGAOMF,KAAAA,EACAyB,OAAAA,aAEA,CACF,CAAA,+DAKwC,OAAA,CAAA,OAAA,MAAA,EAA0B,OAAAvB,EAAA,MAAsB,EAAA,6DAExE,MAAA,qBAAA,EAAA,CAAAc,EAAAU,cAAAC,EAAAA,SAAAC,EAAAA,WAAA,CAEE,KAAA,UAAA,KAAA,GAAA,GAAA,YACuC,EAAAjB,CAAA,EAAA,CAAWH,QAAAA,IAAAA,CAAAA,EAAAA,KAAAA,CAC9C,CAAA,EAAAkB,EAAAA,YAAAG,EAAAA,SAAA,KAAA,CAAAX,EAAA,OAAAQ,EAAAA,YAAA,KAAA,KAAA,CAAAR,EAAA,KAAA,CAAA,EAAAQ,EAAAA,YAAAC,EAAAA,SAAAC,aAAA,CAI0B,KAAA,UAAA,KAAA,GAAA,GAAA,YACW,EAAAjB,CAAA,EAAA,CAAWH,QAAAA,IAAAA,CAAAA,EAAAA,KAAAA,4CAU5E,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/reference-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\nimport { ElButton, ElLoadingDirective, type ButtonProps } from 'element-plus'\nimport { computed, defineComponent, withDirectives } from 'vue'\nimport { useAsyncState } from '@vueuse/core'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useHiddenTitle } from '@/hooks'\nimport type { SkyLayoutRouteMeta } from '@/router'\nimport { SkyCanAccess } from '../can-access'\nimport { skyConfig } from '@/setup'\n\nexport interface SkyReferenceFieldProps {\n reference: string\n source: string\n id?: string\n name?: string\n label?: string\n row?: Record<string, unknown>\n}\n\nexport const SkyReferenceField = defineComponent<SkyReferenceFieldProps & Partial<ButtonProps>>({\n name: 'SkyReferenceField',\n inheritAttrs: false,\n props: {\n reference: {\n type: String,\n required: true,\n },\n source: {\n type: String,\n required: true,\n },\n id: {\n type: String,\n default: 'id',\n },\n name: {\n type: String,\n default: 'name',\n },\n label: String,\n row: Object,\n },\n setup(props, { attrs }) {\n const router = useRouter()\n const route = useRoute()\n const hiddenTitle = useHiddenTitle()\n const title = computed<string>(() => props.label || props.source)\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\n async () => {\n const id = props.row?.[props.source]\n if (id) {\n controller = new AbortController()\n return skyConfig.dataProvider?.getOne?.(props.reference, {\n id: id as Identifier,\n signal: controller.signal,\n })\n }\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n const field = computed(() => state.value?.data?.[props.name!] as string | undefined)\n\n const onClick = () => {\n const routeName = skyConfig.getShowRouteName(props.reference)\n const id = props.row?.[props.id!]\n if (id && router.hasRoute(routeName)) {\n router.push({\n name: routeName,\n params: {\n id: String(id),\n },\n })\n }\n }\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\n {field.value &&\n withDirectives(\n <div class=\"sky-reference-field\">\n {hiddenTitle ? (\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\n {field.value}\n </ElButton>\n ) : (\n <>\n {title.value && <h4>{title.value}</h4>}\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\n {field.value}\n </ElButton>\n </>\n )}\n </div>,\n [[ElLoadingDirective, isLoading.value]],\n )}\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyReferenceField","defineComponent","name","inheritAttrs","props","reference","type","required","source","id","default","label","row","attrs","router","useRouter","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","immediate","field","params","_createVNode","ElButton","_mergeProps","_Fragment"],"mappings":"o7BAmBAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,oBACAC,aAAAA,GACAC,MAAAA,CACEC,UAAAA,CACEC,KAAAA,OACAC,SAAAA,IAEFC,OAAAA,CACEF,KAAAA,OACAC,SAAAA,IAEFE,GAAAA,CACEH,KAAAA,OACAI,QAAAA,MAEFR,KAAAA,CACEI,KAAAA,OACAI,QAAAA,QAEFC,MAAAA,OACAC,IAAAA,iBAEaC,MAAAA,CAAM,EAAA,CACnB,MAAAC,EAAAC,EAAAA,UAAA,EACAC,EAAAC,EAAAA,SAAA,EACAC,EAAAC,EAAAA,eAAA,EACAC,EAAAC,EAAAA,SAAA,IAAAjB,EAAA,OAAAA,EAAA,MAAA,EACAkB,EAAAN,EAAA,KAEA,IAAAO,oBACmBC,MAAAA,uDAGf,GAAAf,EACEc,OAAAA,EAAAA,IAAAA,gEAEEd,GAAAA,iBAEF,CAAA,WAKFgB,UAAAA,EACF,CAAA,EAGFC,EAAAL,EAAAA,SAAA,IAAAG,EAAA,OAAA,OAAApB,EAAA,IAAA,CAAA,qGAOMF,KAAAA,EACAyB,OAAAA,aAEA,CACF,CAAA,+DAKwC,OAAA,CAAA,OAAA,MAAA,EAA0B,OAAAvB,EAAA,MAAsB,EAAA,6DAExE,MAAA,qBAAA,EAAA,CAAAc,EAAAU,cAAAC,EAAAA,SAAAC,EAAAA,WAAA,CAEE,KAAA,UAAA,KAAA,GAAA,GAAA,YACuC,EAAAjB,CAAA,EAAA,CAAWH,QAAAA,IAAAA,CAAAA,EAAAA,KAAAA,CAC9C,CAAA,EAAAkB,EAAAA,YAAAG,EAAAA,SAAA,KAAA,CAAAX,EAAA,OAAAQ,EAAAA,YAAA,KAAA,KAAA,CAAAR,EAAA,KAAA,CAAA,EAAAQ,EAAAA,YAAAC,EAAAA,SAAAC,aAAA,CAI0B,KAAA,UAAA,KAAA,GAAA,GAAA,YACW,EAAAjB,CAAA,EAAA,CAAWH,QAAAA,IAAAA,CAAAA,EAAAA,KAAAA,4CAU5E,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/reference-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\r\nimport { ElButton, ElLoadingDirective, type ButtonProps } from 'element-plus'\r\nimport { computed, defineComponent, withDirectives } from 'vue'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { useRoute, useRouter } from 'vue-router'\r\nimport { useHiddenTitle } from '@/hooks'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport { skyConfig } from '@/setup'\r\n\r\nexport interface SkyReferenceFieldProps {\r\n reference: string\r\n source: string\r\n id?: string\r\n name?: string\r\n label?: string\r\n row?: Record<string, unknown>\r\n}\r\n\r\nexport const SkyReferenceField = defineComponent<SkyReferenceFieldProps & Partial<ButtonProps>>({\r\n name: 'SkyReferenceField',\r\n inheritAttrs: false,\r\n props: {\r\n reference: {\r\n type: String,\r\n required: true,\r\n },\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n id: {\r\n type: String,\r\n default: 'id',\r\n },\r\n name: {\r\n type: String,\r\n default: 'name',\r\n },\r\n label: String,\r\n row: Object,\r\n },\r\n setup(props, { attrs }) {\r\n const router = useRouter()\r\n const route = useRoute()\r\n const hiddenTitle = useHiddenTitle()\r\n const title = computed<string>(() => props.label || props.source)\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\r\n async () => {\r\n const id = props.row?.[props.source]\r\n if (id) {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getOne?.(props.reference, {\r\n id: id as Identifier,\r\n signal: controller.signal,\r\n })\r\n }\r\n },\r\n undefined,\r\n {\r\n immediate: true,\r\n },\r\n )\r\n\r\n const field = computed(() => state.value?.data?.[props.name!] as string | undefined)\r\n\r\n const onClick = () => {\r\n const routeName = skyConfig.getShowRouteName(props.reference)\r\n const id = props.row?.[props.id!]\r\n if (id && router.hasRoute(routeName)) {\r\n router.push({\r\n name: routeName,\r\n params: {\r\n id: String(id),\r\n },\r\n })\r\n }\r\n }\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\r\n {field.value &&\r\n withDirectives(\r\n <div class=\"sky-reference-field\">\r\n {hiddenTitle ? (\r\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\r\n {field.value}\r\n </ElButton>\r\n ) : (\r\n <>\r\n {title.value && <h4>{title.value}</h4>}\r\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\r\n {field.value}\r\n </ElButton>\r\n </>\r\n )}\r\n </div>,\r\n [[ElLoadingDirective, isLoading.value]],\r\n )}\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyReferenceField","defineComponent","name","inheritAttrs","props","reference","type","required","source","id","default","label","row","attrs","router","useRouter","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","immediate","field","params","_createVNode","ElButton","_mergeProps","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAmBA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,WAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFC,QAAAA;AAAAA,MACEF,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFE,IAAAA;AAAAA,MACEH,MAAAA;AAAAA,MACAI,SAAAA;AAAAA;IAEFR,MAAAA;AAAAA,MACEI,MAAAA;AAAAA,MACAI,SAAAA;AAAAA;IAEFC,OAAAA;AAAAA,IACAC,KAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;AACnB,UAAAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,MAAAjB,EAAA,SAAAA,EAAA,MAAA,GACAkB,IAAAN,EAAA;AAEA,QAAAO;;;MACmBC,OAAAA;AAAAA;;AAGf,UAAAf;AACEc,eAAAA,IAAAA,IAAAA,gBAAAA;UAEEd,IAAAA;AAAAA;QAEF,CAAA;AAAA;MAKFgB,WAAAA;AAAAA,IACF,CAAA,GAGFC,IAAAL,EAAA,MAAAG,EAAA,OAAA,OAAApB,EAAA,IAAA,CAAA;;;QAOMF,MAAAA;AAAAA,QACAyB,QAAAA;AAAAA;QAEA;AAAA,MACF,CAAA;AAAA;;;MAKwC,QAAA,CAAA,QAAA,MAAA;AAAA,MAA0B,QAAAvB,EAAA;AAAA,IAAsB,GAAA;AAAA;QAExE,OAAA;AAAA,MAAA,GAAA,CAAAc,IAAAU,EAAAC,GAAAC,EAAA;AAAA,QAEE,MAAA;AAAA,QAAA,MAAA;AAAA,QAAA,IAAA;AAAA;MACuC,GAAAjB,CAAA,GAAA;AAAA,QAAWH,SAAAA,MAAAA,CAAAA,EAAAA,KAAAA;AAAAA,MAC9C,CAAA,IAAAkB,EAAAG,GAAA,MAAA,CAAAX,EAAA,SAAAQ,EAAA,MAAA,MAAA,CAAAR,EAAA,KAAA,CAAA,GAAAQ,EAAAC,GAAAC,EAAA;AAAA,QAI0B,MAAA;AAAA,QAAA,MAAA;AAAA,QAAA,IAAA;AAAA;MACW,GAAAjB,CAAA,GAAA;AAAA,QAAWH,SAAAA,MAAAA,CAAAA,EAAAA,KAAAA;AAAAA;;EAU5E;AACF,CAAA;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/reference-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\nimport { ElButton, ElLoadingDirective, type ButtonProps } from 'element-plus'\nimport { computed, defineComponent, withDirectives } from 'vue'\nimport { useAsyncState } from '@vueuse/core'\nimport { useRoute, useRouter } from 'vue-router'\nimport { useHiddenTitle } from '@/hooks'\nimport type { SkyLayoutRouteMeta } from '@/router'\nimport { SkyCanAccess } from '../can-access'\nimport { skyConfig } from '@/setup'\n\nexport interface SkyReferenceFieldProps {\n reference: string\n source: string\n id?: string\n name?: string\n label?: string\n row?: Record<string, unknown>\n}\n\nexport const SkyReferenceField = defineComponent<SkyReferenceFieldProps & Partial<ButtonProps>>({\n name: 'SkyReferenceField',\n inheritAttrs: false,\n props: {\n reference: {\n type: String,\n required: true,\n },\n source: {\n type: String,\n required: true,\n },\n id: {\n type: String,\n default: 'id',\n },\n name: {\n type: String,\n default: 'name',\n },\n label: String,\n row: Object,\n },\n setup(props, { attrs }) {\n const router = useRouter()\n const route = useRoute()\n const hiddenTitle = useHiddenTitle()\n const title = computed<string>(() => props.label || props.source)\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\n async () => {\n const id = props.row?.[props.source]\n if (id) {\n controller = new AbortController()\n return skyConfig.dataProvider?.getOne?.(props.reference, {\n id: id as Identifier,\n signal: controller.signal,\n })\n }\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n const field = computed(() => state.value?.data?.[props.name!] as string | undefined)\n\n const onClick = () => {\n const routeName = skyConfig.getShowRouteName(props.reference)\n const id = props.row?.[props.id!]\n if (id && router.hasRoute(routeName)) {\n router.push({\n name: routeName,\n params: {\n id: String(id),\n },\n })\n }\n }\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\n {field.value &&\n withDirectives(\n <div class=\"sky-reference-field\">\n {hiddenTitle ? (\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\n {field.value}\n </ElButton>\n ) : (\n <>\n {title.value && <h4>{title.value}</h4>}\n <ElButton type=\"primary\" text bg onClick={onClick} {...attrs}>\n {field.value}\n </ElButton>\n </>\n )}\n </div>,\n [[ElLoadingDirective, isLoading.value]],\n )}\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyReferenceField","defineComponent","name","inheritAttrs","props","reference","type","required","source","id","default","label","row","attrs","router","useRouter","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","immediate","field","params","_createVNode","ElButton","_mergeProps","_Fragment"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAmBA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,WAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFC,QAAAA;AAAAA,MACEF,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFE,IAAAA;AAAAA,MACEH,MAAAA;AAAAA,MACAI,SAAAA;AAAAA;IAEFR,MAAAA;AAAAA,MACEI,MAAAA;AAAAA,MACAI,SAAAA;AAAAA;IAEFC,OAAAA;AAAAA,IACAC,KAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;AACnB,UAAAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,MAAAjB,EAAA,SAAAA,EAAA,MAAA,GACAkB,IAAAN,EAAA;AAEA,QAAAO;;;MACmBC,OAAAA;AAAAA;;AAGf,UAAAf;AACEc,eAAAA,IAAAA,IAAAA,gBAAAA;UAEEd,IAAAA;AAAAA;QAEF,CAAA;AAAA;MAKFgB,WAAAA;AAAAA,IACF,CAAA,GAGFC,IAAAL,EAAA,MAAAG,EAAA,OAAA,OAAApB,EAAA,IAAA,CAAA;;;QAOMF,MAAAA;AAAAA,QACAyB,QAAAA;AAAAA;QAEA;AAAA,MACF,CAAA;AAAA;;;MAKwC,QAAA,CAAA,QAAA,MAAA;AAAA,MAA0B,QAAAvB,EAAA;AAAA,IAAsB,GAAA;AAAA;QAExE,OAAA;AAAA,MAAA,GAAA,CAAAc,IAAAU,EAAAC,GAAAC,EAAA;AAAA,QAEE,MAAA;AAAA,QAAA,MAAA;AAAA,QAAA,IAAA;AAAA;MACuC,GAAAjB,CAAA,GAAA;AAAA,QAAWH,SAAAA,MAAAA,CAAAA,EAAAA,KAAAA;AAAAA,MAC9C,CAAA,IAAAkB,EAAAG,GAAA,MAAA,CAAAX,EAAA,SAAAQ,EAAA,MAAA,MAAA,CAAAR,EAAA,KAAA,CAAA,GAAAQ,EAAAC,GAAAC,EAAA;AAAA,QAI0B,MAAA;AAAA,QAAA,MAAA;AAAA,QAAA,IAAA;AAAA;MACW,GAAAjB,CAAA,GAAA;AAAA,QAAWH,SAAAA,MAAAA,CAAAA,EAAAA,KAAAA;AAAAA;;EAU5E;AACF,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/reference-image-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\r\nimport { ElImage, ElLoadingDirective, type ImageProps } from 'element-plus'\r\nimport { computed, defineComponent, withDirectives } from 'vue'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { useRoute } from 'vue-router'\r\nimport { useHiddenTitle } from '@/hooks'\r\nimport { skyConfig } from '@/setup'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\nimport { SkyCanAccess } from '../can-access'\r\n\r\nexport interface SkyReferenceImageFieldProps {\r\n reference: string\r\n source: string\r\n src?: string\r\n label?: string\r\n row?: Record<string, unknown>\r\n}\r\n\r\nexport const SkyReferenceImageField = defineComponent<\r\n SkyReferenceImageFieldProps & Partial<ImageProps>\r\n>({\r\n name: 'SkyReferenceImageField',\r\n inheritAttrs: false,\r\n props: {\r\n reference: {\r\n type: String,\r\n required: true,\r\n },\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n src: {\r\n type: String,\r\n default: 'src',\r\n },\r\n label: String,\r\n row: Object,\r\n },\r\n setup(props, { attrs }) {\r\n const route = useRoute()\r\n const hiddenTitle = useHiddenTitle()\r\n const title = computed<string>(() => props.label || props.source)\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\r\n async () => {\r\n const id = props.row?.[props.source] as Identifier\r\n if (id) {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getOne?.(props.reference, {\r\n id,\r\n signal: controller.signal,\r\n })\r\n }\r\n },\r\n undefined,\r\n {\r\n immediate: true,\r\n },\r\n )\r\n\r\n const field = computed(() => state.value?.data?.[props.src!] as string | undefined)\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\r\n {field.value &&\r\n withDirectives(\r\n hiddenTitle ? (\r\n <ElImage src={field.value} {...attrs} />\r\n ) : (\r\n <div class=\"sky-reference-image-field\">\r\n {title.value && <h4>{title.value}</h4>}\r\n <ElImage src={field.value} {...attrs} />\r\n </div>\r\n ),\r\n [[ElLoadingDirective, isLoading.value]],\r\n )}\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyReferenceImageField","defineComponent","name","inheritAttrs","props","reference","type","required","source","src","default","label","row","attrs","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","id","immediate","field","_createVNode","ElImage","_mergeProps","ElLoadingDirective","isLoading"],"mappings":"m7BAkBAA,EAAAC,EAAAA,gBAAA,CAGEC,KAAAA,yBACAC,aAAAA,GACAC,MAAAA,CACEC,UAAAA,CACEC,KAAAA,OACAC,SAAAA,IAEFC,OAAAA,CACEF,KAAAA,OACAC,SAAAA,IAEFE,IAAAA,CACEH,KAAAA,OACAI,QAAAA,OAEFC,MAAAA,OACAC,IAAAA,iBAEaC,MAAAA,CAAM,EAAA,CACnB,MAAAC,EAAAC,EAAAA,SAAA,EACAC,EAAAC,EAAAA,eAAA,EACAC,EAAAC,EAAAA,SAAA,IAAAf,EAAA,OAAAA,EAAA,MAAA,EACAgB,EAAAN,EAAA,KAEA,IAAAO,oBACmBC,MAAAA,uDAGf,GAAAC,EACEF,OAAAA,EAAAA,IAAAA,oFAIA,CAAA,WAKFG,UAAAA,EACF,CAAA,EAGFC,EAAAN,EAAAA,SAAA,IAAAG,EAAA,OAAA,OAAAlB,EAAA,GAAA,CAAA,8DAG4C,OAAA,CAAA,OAAA,MAAA,EAA0B,OAAAA,EAAA,MAAsB,EAAA,CAAAM,QAAAA,IAAAA,CAAAA,EAAAA,OAAAA,EAAAA,eAAAA,EAAAA,EAAAA,YAAAA,EAAAA,QAAAA,aAAAA,CAGzE,IAAAe,EAAA,qCAC2B,MAAA,2BAAA,EAAA,CAAAP,EAAA,OAAAQ,EAAAA,YAAA,KAAA,KAAA,CAAAR,EAAA,KAAA,CAAA,EAAAQ,cAAAC,EAAAA,QAAAC,EAAAA,WAAA,CAGI,IAAAH,EAAA,KACb,EAAAZ,CAAA,EAAA,IAAA,CAAA,CAAA,EAAA,CAAA,CAAAgB,qBAAAC,EAAA,KAAA,CAAA,CAAA,CAAA,GAOvC,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/reference-image-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\nimport { ElImage, ElLoadingDirective, type ImageProps } from 'element-plus'\nimport { computed, defineComponent, withDirectives } from 'vue'\nimport { useAsyncState } from '@vueuse/core'\nimport { useRoute } from 'vue-router'\nimport { useHiddenTitle } from '@/hooks'\nimport { skyConfig } from '@/setup'\nimport type { SkyLayoutRouteMeta } from '@/router'\nimport { SkyCanAccess } from '../can-access'\n\nexport interface SkyReferenceImageFieldProps {\n reference: string\n source: string\n src?: string\n label?: string\n row?: Record<string, unknown>\n}\n\nexport const SkyReferenceImageField = defineComponent<\n SkyReferenceImageFieldProps & Partial<ImageProps>\n>({\n name: 'SkyReferenceImageField',\n inheritAttrs: false,\n props: {\n reference: {\n type: String,\n required: true,\n },\n source: {\n type: String,\n required: true,\n },\n src: {\n type: String,\n default: 'src',\n },\n label: String,\n row: Object,\n },\n setup(props, { attrs }) {\n const route = useRoute()\n const hiddenTitle = useHiddenTitle()\n const title = computed<string>(() => props.label || props.source)\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\n async () => {\n const id = props.row?.[props.source] as Identifier\n if (id) {\n controller = new AbortController()\n return skyConfig.dataProvider?.getOne?.(props.reference, {\n id,\n signal: controller.signal,\n })\n }\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n const field = computed(() => state.value?.data?.[props.src!] as string | undefined)\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\n {field.value &&\n withDirectives(\n hiddenTitle ? (\n <ElImage src={field.value} {...attrs} />\n ) : (\n <div class=\"sky-reference-image-field\">\n {title.value && <h4>{title.value}</h4>}\n <ElImage src={field.value} {...attrs} />\n </div>\n ),\n [[ElLoadingDirective, isLoading.value]],\n )}\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyReferenceImageField","defineComponent","name","inheritAttrs","props","reference","type","required","source","src","default","label","row","attrs","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","id","immediate","field","_createVNode","ElImage","_mergeProps","ElLoadingDirective","isLoading"],"mappings":"m7BAkBAA,EAAAC,EAAAA,gBAAA,CAGEC,KAAAA,yBACAC,aAAAA,GACAC,MAAAA,CACEC,UAAAA,CACEC,KAAAA,OACAC,SAAAA,IAEFC,OAAAA,CACEF,KAAAA,OACAC,SAAAA,IAEFE,IAAAA,CACEH,KAAAA,OACAI,QAAAA,OAEFC,MAAAA,OACAC,IAAAA,iBAEaC,MAAAA,CAAM,EAAA,CACnB,MAAAC,EAAAC,EAAAA,SAAA,EACAC,EAAAC,EAAAA,eAAA,EACAC,EAAAC,EAAAA,SAAA,IAAAf,EAAA,OAAAA,EAAA,MAAA,EACAgB,EAAAN,EAAA,KAEA,IAAAO,oBACmBC,MAAAA,uDAGf,GAAAC,EACEF,OAAAA,EAAAA,IAAAA,oFAIA,CAAA,WAKFG,UAAAA,EACF,CAAA,EAGFC,EAAAN,EAAAA,SAAA,IAAAG,EAAA,OAAA,OAAAlB,EAAA,GAAA,CAAA,8DAG4C,OAAA,CAAA,OAAA,MAAA,EAA0B,OAAAA,EAAA,MAAsB,EAAA,CAAAM,QAAAA,IAAAA,CAAAA,EAAAA,OAAAA,EAAAA,eAAAA,EAAAA,EAAAA,YAAAA,EAAAA,QAAAA,aAAAA,CAGzE,IAAAe,EAAA,qCAC2B,MAAA,2BAAA,EAAA,CAAAP,EAAA,OAAAQ,EAAAA,YAAA,KAAA,KAAA,CAAAR,EAAA,KAAA,CAAA,EAAAQ,cAAAC,EAAAA,QAAAC,EAAAA,WAAA,CAGI,IAAAH,EAAA,KACb,EAAAZ,CAAA,EAAA,IAAA,CAAA,CAAA,EAAA,CAAA,CAAAgB,qBAAAC,EAAA,KAAA,CAAA,CAAA,CAAA,GAOvC,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/reference-image-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\r\nimport { ElImage, ElLoadingDirective, type ImageProps } from 'element-plus'\r\nimport { computed, defineComponent, withDirectives } from 'vue'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { useRoute } from 'vue-router'\r\nimport { useHiddenTitle } from '@/hooks'\r\nimport { skyConfig } from '@/setup'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\nimport { SkyCanAccess } from '../can-access'\r\n\r\nexport interface SkyReferenceImageFieldProps {\r\n reference: string\r\n source: string\r\n src?: string\r\n label?: string\r\n row?: Record<string, unknown>\r\n}\r\n\r\nexport const SkyReferenceImageField = defineComponent<\r\n SkyReferenceImageFieldProps & Partial<ImageProps>\r\n>({\r\n name: 'SkyReferenceImageField',\r\n inheritAttrs: false,\r\n props: {\r\n reference: {\r\n type: String,\r\n required: true,\r\n },\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n src: {\r\n type: String,\r\n default: 'src',\r\n },\r\n label: String,\r\n row: Object,\r\n },\r\n setup(props, { attrs }) {\r\n const route = useRoute()\r\n const hiddenTitle = useHiddenTitle()\r\n const title = computed<string>(() => props.label || props.source)\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\r\n async () => {\r\n const id = props.row?.[props.source] as Identifier\r\n if (id) {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getOne?.(props.reference, {\r\n id,\r\n signal: controller.signal,\r\n })\r\n }\r\n },\r\n undefined,\r\n {\r\n immediate: true,\r\n },\r\n )\r\n\r\n const field = computed(() => state.value?.data?.[props.src!] as string | undefined)\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\r\n {field.value &&\r\n withDirectives(\r\n hiddenTitle ? (\r\n <ElImage src={field.value} {...attrs} />\r\n ) : (\r\n <div class=\"sky-reference-image-field\">\r\n {title.value && <h4>{title.value}</h4>}\r\n <ElImage src={field.value} {...attrs} />\r\n </div>\r\n ),\r\n [[ElLoadingDirective, isLoading.value]],\r\n )}\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyReferenceImageField","defineComponent","name","inheritAttrs","props","reference","type","required","source","src","default","label","row","attrs","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","id","immediate","field","_createVNode","ElImage","_mergeProps","ElLoadingDirective","isLoading"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EAGEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,WAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFC,QAAAA;AAAAA,MACEF,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFE,KAAAA;AAAAA,MACEH,MAAAA;AAAAA,MACAI,SAAAA;AAAAA;IAEFC,OAAAA;AAAAA,IACAC,KAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;AACnB,UAAAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,MAAAf,EAAA,SAAAA,EAAA,MAAA,GACAgB,IAAAN,EAAA;AAEA,QAAAO;;;MACmBC,OAAAA;AAAAA;;AAGf,UAAAC;AACEF,eAAAA,IAAAA,IAAAA,gBAAAA;;;QAIA,CAAA;AAAA;MAKFG,WAAAA;AAAAA,IACF,CAAA,GAGFC,IAAAN,EAAA,MAAAG,EAAA,OAAA,OAAAlB,EAAA,GAAA,CAAA;;;MAG4C,QAAA,CAAA,QAAA,MAAA;AAAA,MAA0B,QAAAA,EAAA;AAAA,IAAsB,GAAA;AAAA,MAAAM,SAAAA,MAAAA,CAAAA,EAAAA,SAAAA,EAAAA,IAAAA,EAAAA,GAAAA,EAAAA;AAAAA,QAGzE,KAAAe,EAAA;AAAA;QAC2B,OAAA;AAAA,MAAA,GAAA,CAAAP,EAAA,SAAAQ,EAAA,MAAA,MAAA,CAAAR,EAAA,KAAA,CAAA,GAAAQ,EAAAC,GAAAC,EAAA;AAAA,QAGI,KAAAH,EAAA;AAAA,MACb,GAAAZ,CAAA,GAAA,IAAA,CAAA,CAAA,GAAA,CAAA,CAAAgB,GAAAC,EAAA,KAAA,CAAA,CAAA,CAAA;AAAA;EAOvC;AACF,CAAA;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/reference-image-field/index.tsx"],"sourcesContent":["import type { GetOneResult, Identifier } from '@/provides'\nimport { ElImage, ElLoadingDirective, type ImageProps } from 'element-plus'\nimport { computed, defineComponent, withDirectives } from 'vue'\nimport { useAsyncState } from '@vueuse/core'\nimport { useRoute } from 'vue-router'\nimport { useHiddenTitle } from '@/hooks'\nimport { skyConfig } from '@/setup'\nimport type { SkyLayoutRouteMeta } from '@/router'\nimport { SkyCanAccess } from '../can-access'\n\nexport interface SkyReferenceImageFieldProps {\n reference: string\n source: string\n src?: string\n label?: string\n row?: Record<string, unknown>\n}\n\nexport const SkyReferenceImageField = defineComponent<\n SkyReferenceImageFieldProps & Partial<ImageProps>\n>({\n name: 'SkyReferenceImageField',\n inheritAttrs: false,\n props: {\n reference: {\n type: String,\n required: true,\n },\n source: {\n type: String,\n required: true,\n },\n src: {\n type: String,\n default: 'src',\n },\n label: String,\n row: Object,\n },\n setup(props, { attrs }) {\n const route = useRoute()\n const hiddenTitle = useHiddenTitle()\n const title = computed<string>(() => props.label || props.source)\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n const { isLoading, state } = useAsyncState<GetOneResult | undefined>(\n async () => {\n const id = props.row?.[props.source] as Identifier\n if (id) {\n controller = new AbortController()\n return skyConfig.dataProvider?.getOne?.(props.reference, {\n id,\n signal: controller.signal,\n })\n }\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n const field = computed(() => state.value?.data?.[props.src!] as string | undefined)\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action={['list', 'show']} column={props.source}>\n {field.value &&\n withDirectives(\n hiddenTitle ? (\n <ElImage src={field.value} {...attrs} />\n ) : (\n <div class=\"sky-reference-image-field\">\n {title.value && <h4>{title.value}</h4>}\n <ElImage src={field.value} {...attrs} />\n </div>\n ),\n [[ElLoadingDirective, isLoading.value]],\n )}\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyReferenceImageField","defineComponent","name","inheritAttrs","props","reference","type","required","source","src","default","label","row","attrs","route","useRoute","hiddenTitle","useHiddenTitle","title","computed","routeMeta","controller","state","id","immediate","field","_createVNode","ElImage","_mergeProps","ElLoadingDirective","isLoading"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAkBA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EAGEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,WAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFC,QAAAA;AAAAA,MACEF,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFE,KAAAA;AAAAA,MACEH,MAAAA;AAAAA,MACAI,SAAAA;AAAAA;IAEFC,OAAAA;AAAAA,IACAC,KAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;AACnB,UAAAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,GACAC,IAAAC,EAAA,MAAAf,EAAA,SAAAA,EAAA,MAAA,GACAgB,IAAAN,EAAA;AAEA,QAAAO;;;MACmBC,OAAAA;AAAAA;;AAGf,UAAAC;AACEF,eAAAA,IAAAA,IAAAA,gBAAAA;;;QAIA,CAAA;AAAA;MAKFG,WAAAA;AAAAA,IACF,CAAA,GAGFC,IAAAN,EAAA,MAAAG,EAAA,OAAA,OAAAlB,EAAA,GAAA,CAAA;;;MAG4C,QAAA,CAAA,QAAA,MAAA;AAAA,MAA0B,QAAAA,EAAA;AAAA,IAAsB,GAAA;AAAA,MAAAM,SAAAA,MAAAA,CAAAA,EAAAA,SAAAA,EAAAA,IAAAA,EAAAA,GAAAA,EAAAA;AAAAA,QAGzE,KAAAe,EAAA;AAAA;QAC2B,OAAA;AAAA,MAAA,GAAA,CAAAP,EAAA,SAAAQ,EAAA,MAAA,MAAA,CAAAR,EAAA,KAAA,CAAA,GAAAQ,EAAAC,GAAAC,EAAA;AAAA,QAGI,KAAAH,EAAA;AAAA,MACb,GAAAZ,CAAA,GAAA,IAAA,CAAA,CAAA,GAAA,CAAA,CAAAgB,GAAAC,EAAA,KAAA,CAAA,CAAA,CAAA;AAAA;EAOvC;AACF,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/show/index.tsx"],"sourcesContent":["import { useProvideHiddenTitle, useProvideShow } from '@/hooks'\r\nimport { skyConfig } from '@/setup'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { ElCard, ElSkeleton, type CardProps } from 'element-plus'\r\nimport { defineComponent } from 'vue'\r\nimport { useRoute } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\n\r\nexport const SkyShow = defineComponent<Partial<CardProps>>({\r\n name: 'SkyShow',\r\n inheritAttrs: false,\r\n setup(_props, { slots, attrs }) {\r\n const route = useRoute()\r\n const id = route.params.id as string\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n const { state: data, isLoading } = useAsyncState(\r\n async () => {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getOne?.(routeMeta.resource, {\r\n id,\r\n signal: controller.signal,\r\n })\r\n },\r\n undefined,\r\n {\r\n immediate: true,\r\n },\r\n )\r\n\r\n useProvideShow({\r\n data,\r\n })\r\n\r\n // 详情下的所有 field 显示 title\r\n useProvideHiddenTitle(false)\r\n\r\n return () => (\r\n <div class=\"sky-show\">\r\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id}>\r\n <ElCard {...attrs}>\r\n <ElSkeleton loading={isLoading.value} animated>\r\n {slots.default?.()}\r\n </ElSkeleton>\r\n </ElCard>\r\n </SkyCanAccess>\r\n </div>\r\n )\r\n },\r\n})\r\n"],"names":["SkyShow","defineComponent","name","inheritAttrs","attrs","route","useRoute","id","routeMeta","controller","state","isLoading","immediate","useProvideShow","data","_createVNode","default"],"mappings":"m/BASAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,UACAC,aAAAA,oBACuBC,MAAAA,CAAM,EAAA,CAC3B,MAAAC,EAAAC,EAAAA,SAAA,EACAC,EAAAF,EAAA,OAAA,GACAG,EAAAH,EAAA,KAEA,IAAAI,QACQC,MAAAA,EAAaC,UAAAA,6BAEjBF,EAAAA,IAAAA,mFAIA,CAAA,WAIAG,UAAAA,EACF,CAAA,EAGFC,OAAAA,iBAAAA,CACEC,KAAAA,CACF,CAAA,8BAKA,IAAAC,EAAAA,YAAA,MAAA,CAAO,MAAA,+DAEuC,OAAA,YAAuB,EAAA,CAAAC,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,OAAAA,EAAAA,CAC9CA,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,aAAAA,iBACqB,SAAA,EAAA,EAAA,CAAAA,QAAAA,IAAAA,CAAAA,EAAAA,UAAAA,CAAAA,CAChB,CAAA,CAAA,CAAA,CAAA,CAAA,KAM9B,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/show/index.tsx"],"sourcesContent":["import { useProvideHiddenTitle, useProvideShow } from '@/hooks'\nimport { skyConfig } from '@/setup'\nimport { useAsyncState } from '@vueuse/core'\nimport { ElCard, ElSkeleton, type CardProps } from 'element-plus'\nimport { defineComponent } from 'vue'\nimport { useRoute } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\nimport type { SkyLayoutRouteMeta } from '@/router'\n\nexport const SkyShow = defineComponent<Partial<CardProps>>({\n name: 'SkyShow',\n inheritAttrs: false,\n setup(_props, { slots, attrs }) {\n const route = useRoute()\n const id = route.params.id as string\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n const { state: data, isLoading } = useAsyncState(\n async () => {\n controller = new AbortController()\n return skyConfig.dataProvider?.getOne?.(routeMeta.resource, {\n id,\n signal: controller.signal,\n })\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n useProvideShow({\n data,\n })\n\n // 详情下的所有 field 显示 title\n useProvideHiddenTitle(false)\n\n return () => (\n <div class=\"sky-show\">\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id}>\n <ElCard {...attrs}>\n <ElSkeleton loading={isLoading.value} animated>\n {slots.default?.()}\n </ElSkeleton>\n </ElCard>\n </SkyCanAccess>\n </div>\n )\n },\n})\n"],"names":["SkyShow","defineComponent","name","inheritAttrs","attrs","route","useRoute","id","routeMeta","controller","state","isLoading","immediate","useProvideShow","data","_createVNode","default"],"mappings":"m/BASAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,UACAC,aAAAA,oBACuBC,MAAAA,CAAM,EAAA,CAC3B,MAAAC,EAAAC,EAAAA,SAAA,EACAC,EAAAF,EAAA,OAAA,GACAG,EAAAH,EAAA,KAEA,IAAAI,QACQC,MAAAA,EAAaC,UAAAA,6BAEjBF,EAAAA,IAAAA,mFAIA,CAAA,WAIAG,UAAAA,EACF,CAAA,EAGFC,OAAAA,iBAAAA,CACEC,KAAAA,CACF,CAAA,8BAKA,IAAAC,EAAAA,YAAA,MAAA,CAAO,MAAA,+DAEuC,OAAA,YAAuB,EAAA,CAAAC,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,OAAAA,EAAAA,CAC9CA,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,aAAAA,iBACqB,SAAA,EAAA,EAAA,CAAAA,QAAAA,IAAAA,CAAAA,EAAAA,UAAAA,CAAAA,CAChB,CAAA,CAAA,CAAA,CAAA,CAAA,KAM9B,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/show/index.tsx"],"sourcesContent":["import { useProvideHiddenTitle, useProvideShow } from '@/hooks'\r\nimport { skyConfig } from '@/setup'\r\nimport { useAsyncState } from '@vueuse/core'\r\nimport { ElCard, ElSkeleton, type CardProps } from 'element-plus'\r\nimport { defineComponent } from 'vue'\r\nimport { useRoute } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\n\r\nexport const SkyShow = defineComponent<Partial<CardProps>>({\r\n name: 'SkyShow',\r\n inheritAttrs: false,\r\n setup(_props, { slots, attrs }) {\r\n const route = useRoute()\r\n const id = route.params.id as string\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n let controller: AbortController | undefined\r\n const { state: data, isLoading } = useAsyncState(\r\n async () => {\r\n controller = new AbortController()\r\n return skyConfig.dataProvider?.getOne?.(routeMeta.resource, {\r\n id,\r\n signal: controller.signal,\r\n })\r\n },\r\n undefined,\r\n {\r\n immediate: true,\r\n },\r\n )\r\n\r\n useProvideShow({\r\n data,\r\n })\r\n\r\n // 详情下的所有 field 显示 title\r\n useProvideHiddenTitle(false)\r\n\r\n return () => (\r\n <div class=\"sky-show\">\r\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id}>\r\n <ElCard {...attrs}>\r\n <ElSkeleton loading={isLoading.value} animated>\r\n {slots.default?.()}\r\n </ElSkeleton>\r\n </ElCard>\r\n </SkyCanAccess>\r\n </div>\r\n )\r\n },\r\n})\r\n"],"names":["SkyShow","defineComponent","name","inheritAttrs","attrs","route","useRoute","id","routeMeta","controller","state","isLoading","immediate","useProvideShow","data","_createVNode","default"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AASA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA;;IACuBC,OAAAA;AAAAA,EAAM,GAAA;AAC3B,UAAAC,IAAAC,EAAA,GACAC,IAAAF,EAAA,OAAA,IACAG,IAAAH,EAAA;AAEA,QAAAI;;MACQC,OAAAA;AAAAA,MAAaC,WAAAA;AAAAA,uBAEjBF,IAAAA,IAAAA,gBAAAA;;;IAIA,CAAA;MAIAG,WAAAA;AAAAA,IACF,CAAA;AAGFC,WAAAA,EAAAA;AAAAA,MACEC,MAAAA;AAAAA,IACF,CAAA,UAKA,MAAAC,EAAA,OAAA;AAAA,MAAO,OAAA;AAAA;;MAEuC,QAAA;AAAA;IAAuB,GAAA;AAAA,MAAAC,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA,GAAAA;AAAAA,QAC9CA,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA;AAAAA;UACqB,UAAA;AAAA,QAAA,GAAA;AAAA,UAAAA,SAAAA,MAAAA,CAAAA,EAAAA,UAAAA,CAAAA;AAAAA,QAChB,CAAA,CAAA;AAAA,MAAA,CAAA,CAAA;AAAA;EAM9B;AACF,CAAA;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/show/index.tsx"],"sourcesContent":["import { useProvideHiddenTitle, useProvideShow } from '@/hooks'\nimport { skyConfig } from '@/setup'\nimport { useAsyncState } from '@vueuse/core'\nimport { ElCard, ElSkeleton, type CardProps } from 'element-plus'\nimport { defineComponent } from 'vue'\nimport { useRoute } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\nimport type { SkyLayoutRouteMeta } from '@/router'\n\nexport const SkyShow = defineComponent<Partial<CardProps>>({\n name: 'SkyShow',\n inheritAttrs: false,\n setup(_props, { slots, attrs }) {\n const route = useRoute()\n const id = route.params.id as string\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n let controller: AbortController | undefined\n const { state: data, isLoading } = useAsyncState(\n async () => {\n controller = new AbortController()\n return skyConfig.dataProvider?.getOne?.(routeMeta.resource, {\n id,\n signal: controller.signal,\n })\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n useProvideShow({\n data,\n })\n\n // 详情下的所有 field 显示 title\n useProvideHiddenTitle(false)\n\n return () => (\n <div class=\"sky-show\">\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id}>\n <ElCard {...attrs}>\n <ElSkeleton loading={isLoading.value} animated>\n {slots.default?.()}\n </ElSkeleton>\n </ElCard>\n </SkyCanAccess>\n </div>\n )\n },\n})\n"],"names":["SkyShow","defineComponent","name","inheritAttrs","attrs","route","useRoute","id","routeMeta","controller","state","isLoading","immediate","useProvideShow","data","_createVNode","default"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AASA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA;;IACuBC,OAAAA;AAAAA,EAAM,GAAA;AAC3B,UAAAC,IAAAC,EAAA,GACAC,IAAAF,EAAA,OAAA,IACAG,IAAAH,EAAA;AAEA,QAAAI;;MACQC,OAAAA;AAAAA,MAAaC,WAAAA;AAAAA,uBAEjBF,IAAAA,IAAAA,gBAAAA;;;IAIA,CAAA;MAIAG,WAAAA;AAAAA,IACF,CAAA;AAGFC,WAAAA,EAAAA;AAAAA,MACEC,MAAAA;AAAAA,IACF,CAAA,UAKA,MAAAC,EAAA,OAAA;AAAA,MAAO,OAAA;AAAA;;MAEuC,QAAA;AAAA;IAAuB,GAAA;AAAA,MAAAC,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA,GAAAA;AAAAA,QAC9CA,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA;AAAAA;UACqB,UAAA;AAAA,QAAA,GAAA;AAAA,UAAAA,SAAAA,MAAAA,CAAAA,EAAAA,UAAAA,CAAAA;AAAAA,QAChB,CAAA,CAAA;AAAA,MAAA,CAAA,CAAA;AAAA;EAM9B;AACF,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/show-button/index.tsx"],"sourcesContent":["import type { SkyLayoutRouteMeta } from '@/router'\r\nimport { skyConfig } from '@/setup'\r\nimport { ElButton, type ButtonProps } from 'element-plus'\r\nimport { computed, defineComponent } from 'vue'\r\nimport { useI18n } from 'vue-i18n'\r\nimport { useRoute, useRouter } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\n\r\nexport interface SkyShowButtonProps {\r\n id?: string\r\n row?: Record<string, unknown>\r\n}\r\n\r\nexport const SkyShowButton = defineComponent<SkyShowButtonProps & Partial<ButtonProps>>({\r\n name: 'SkyShowButton',\r\n inheritAttrs: false,\r\n props: {\r\n id: {\r\n type: String,\r\n default: 'id',\r\n },\r\n row: Object,\r\n },\r\n setup(props, { attrs }) {\r\n const { t } = useI18n()\r\n const router = useRouter()\r\n const route = useRoute()\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n const id = computed(() => {\r\n const v = props.row?.[props.id!]\r\n if (v) {\r\n return String(v)\r\n }\r\n })\r\n\r\n const onShow = () => {\r\n const routeName = skyConfig.getShowRouteName(routeMeta.resource)\r\n if (id.value && router.hasRoute(routeName)) {\r\n router.push({\r\n name: routeName,\r\n params: {\r\n id: id.value,\r\n },\r\n })\r\n }\r\n }\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id.value}>\r\n <ElButton link type=\"success\" onClick={onShow} {...attrs}>\r\n {t('button.show')}\r\n </ElButton>\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["_isSlot","s","_isVNode","SkyShowButton","defineComponent","name","inheritAttrs","props","id","type","default","row","attrs","t","router","useRouter","routeMeta","useRoute","computed","v","params","_slot"],"mappings":"8SAM4C,SAAAA,EAAAC,EAAA,CAAA,OAAA,OAAAA,GAAA,YAAA,OAAA,UAAA,SAAA,KAAAA,CAAA,IAAA,mBAAA,CAAAC,EAAAA,QAAAD,CAAA,CAAA,CAO5C,MAAAE,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,gBACAC,aAAAA,GACAC,MAAAA,CACEC,GAAAA,CACEC,KAAAA,OACAC,QAAAA,MAEFC,IAAAA,iBAEaC,MAAAA,CAAM,EAAA,OACXC,EAAAA,eACRC,EAAAC,EAAAA,UAAA,EAEAC,EADAC,EAAAA,SAAA,EACA,KACAT,EAAAU,EAAAA,SAAA,IAAA,uBAEE,GAAAC,kBAGF,CAAA,0FAMMd,KAAAA,EACAe,OAAAA,WAEA,CACF,CAAA,cAIG,IAAAC,2DACqC,OAAA,OAAA,IAAAb,EAAA,KAA6B,EAAA,CAAAE,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,SAAAA,EAAAA,WAAAA,CAAA,KAAA,GAAA,KAAA,gEAElD,CAAA,CAAA,CAAA,CAAA,EAIzB,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/show-button/index.tsx"],"sourcesContent":["import type { SkyLayoutRouteMeta } from '@/router'\nimport { skyConfig } from '@/setup'\nimport { ElButton, type ButtonProps } from 'element-plus'\nimport { computed, defineComponent } from 'vue'\nimport { useI18n } from 'vue-i18n'\nimport { useRoute, useRouter } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\n\nexport interface SkyShowButtonProps {\n id?: string\n row?: Record<string, unknown>\n}\n\nexport const SkyShowButton = defineComponent<SkyShowButtonProps & Partial<ButtonProps>>({\n name: 'SkyShowButton',\n inheritAttrs: false,\n props: {\n id: {\n type: String,\n default: 'id',\n },\n row: Object,\n },\n setup(props, { attrs }) {\n const { t } = useI18n()\n const router = useRouter()\n const route = useRoute()\n const routeMeta = route.meta as SkyLayoutRouteMeta\n const id = computed(() => {\n const v = props.row?.[props.id!]\n if (v) {\n return String(v)\n }\n })\n\n const onShow = () => {\n const routeName = skyConfig.getShowRouteName(routeMeta.resource)\n if (id.value && router.hasRoute(routeName)) {\n router.push({\n name: routeName,\n params: {\n id: id.value,\n },\n })\n }\n }\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id.value}>\n <ElButton link type=\"success\" onClick={onShow} {...attrs}>\n {t('button.show')}\n </ElButton>\n </SkyCanAccess>\n )\n },\n})\n"],"names":["_isSlot","s","_isVNode","SkyShowButton","defineComponent","name","inheritAttrs","props","id","type","default","row","attrs","t","router","useRouter","routeMeta","useRoute","computed","v","params","_slot"],"mappings":"8SAM4C,SAAAA,EAAAC,EAAA,CAAA,OAAA,OAAAA,GAAA,YAAA,OAAA,UAAA,SAAA,KAAAA,CAAA,IAAA,mBAAA,CAAAC,EAAAA,QAAAD,CAAA,CAAA,CAO5C,MAAAE,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,gBACAC,aAAAA,GACAC,MAAAA,CACEC,GAAAA,CACEC,KAAAA,OACAC,QAAAA,MAEFC,IAAAA,iBAEaC,MAAAA,CAAM,EAAA,OACXC,EAAAA,eACRC,EAAAC,EAAAA,UAAA,EAEAC,EADAC,EAAAA,SAAA,EACA,KACAT,EAAAU,EAAAA,SAAA,IAAA,uBAEE,GAAAC,kBAGF,CAAA,0FAMMd,KAAAA,EACAe,OAAAA,WAEA,CACF,CAAA,cAIG,IAAAC,2DACqC,OAAA,OAAA,IAAAb,EAAA,KAA6B,EAAA,CAAAE,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,SAAAA,EAAAA,WAAAA,CAAA,KAAA,GAAA,KAAA,gEAElD,CAAA,CAAA,CAAA,CAAA,EAIzB,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/show-button/index.tsx"],"sourcesContent":["import type { SkyLayoutRouteMeta } from '@/router'\r\nimport { skyConfig } from '@/setup'\r\nimport { ElButton, type ButtonProps } from 'element-plus'\r\nimport { computed, defineComponent } from 'vue'\r\nimport { useI18n } from 'vue-i18n'\r\nimport { useRoute, useRouter } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\n\r\nexport interface SkyShowButtonProps {\r\n id?: string\r\n row?: Record<string, unknown>\r\n}\r\n\r\nexport const SkyShowButton = defineComponent<SkyShowButtonProps & Partial<ButtonProps>>({\r\n name: 'SkyShowButton',\r\n inheritAttrs: false,\r\n props: {\r\n id: {\r\n type: String,\r\n default: 'id',\r\n },\r\n row: Object,\r\n },\r\n setup(props, { attrs }) {\r\n const { t } = useI18n()\r\n const router = useRouter()\r\n const route = useRoute()\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n const id = computed(() => {\r\n const v = props.row?.[props.id!]\r\n if (v) {\r\n return String(v)\r\n }\r\n })\r\n\r\n const onShow = () => {\r\n const routeName = skyConfig.getShowRouteName(routeMeta.resource)\r\n if (id.value && router.hasRoute(routeName)) {\r\n router.push({\r\n name: routeName,\r\n params: {\r\n id: id.value,\r\n },\r\n })\r\n }\r\n }\r\n\r\n return () => (\r\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id.value}>\r\n <ElButton link type=\"success\" onClick={onShow} {...attrs}>\r\n {t('button.show')}\r\n </ElButton>\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["_isSlot","s","_isVNode","SkyShowButton","defineComponent","name","inheritAttrs","props","id","type","default","row","attrs","t","router","useRouter","routeMeta","useRoute","computed","v","params","_slot"],"mappings":";;;;;;;AAM4C,SAAAA,EAAAC,GAAA;AAAA,SAAA,OAAAA,KAAA,cAAA,OAAA,UAAA,SAAA,KAAAA,CAAA,MAAA,qBAAA,CAAAC,EAAAD,CAAA;AAAA;AAO5C,MAAAE,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,IAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,SAAAA;AAAAA;IAEFC,KAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;;MACXC,GAAAA;AAAAA,aACRC,IAAAC,EAAA,GAEAC,IADAC,EAAA,EACA,MACAT,IAAAU,EAAA,MAAA;;AAEE,UAAAC;;IAGF,CAAA;;;QAMMd,MAAAA;AAAAA,QACAe,QAAAA;AAAAA;QAEA;AAAA,MACF,CAAA;AAAA;;AAIG,UAAAC;;;QACqC,QAAA;AAAA,QAAA,KAAAb,EAAA;AAAA,MAA6B,GAAA;AAAA,QAAAE,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA,EAAAA;AAAAA,UAAA,MAAA;AAAA,UAAA,MAAA;AAAA;;;QAElD,CAAA,CAAA;AAAA,MAAA,CAAA;AAAA;EAIzB;AACF,CAAA;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/show-button/index.tsx"],"sourcesContent":["import type { SkyLayoutRouteMeta } from '@/router'\nimport { skyConfig } from '@/setup'\nimport { ElButton, type ButtonProps } from 'element-plus'\nimport { computed, defineComponent } from 'vue'\nimport { useI18n } from 'vue-i18n'\nimport { useRoute, useRouter } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\n\nexport interface SkyShowButtonProps {\n id?: string\n row?: Record<string, unknown>\n}\n\nexport const SkyShowButton = defineComponent<SkyShowButtonProps & Partial<ButtonProps>>({\n name: 'SkyShowButton',\n inheritAttrs: false,\n props: {\n id: {\n type: String,\n default: 'id',\n },\n row: Object,\n },\n setup(props, { attrs }) {\n const { t } = useI18n()\n const router = useRouter()\n const route = useRoute()\n const routeMeta = route.meta as SkyLayoutRouteMeta\n const id = computed(() => {\n const v = props.row?.[props.id!]\n if (v) {\n return String(v)\n }\n })\n\n const onShow = () => {\n const routeName = skyConfig.getShowRouteName(routeMeta.resource)\n if (id.value && router.hasRoute(routeName)) {\n router.push({\n name: routeName,\n params: {\n id: id.value,\n },\n })\n }\n }\n\n return () => (\n <SkyCanAccess resource={routeMeta.resource} action=\"show\" row={id.value}>\n <ElButton link type=\"success\" onClick={onShow} {...attrs}>\n {t('button.show')}\n </ElButton>\n </SkyCanAccess>\n )\n },\n})\n"],"names":["_isSlot","s","_isVNode","SkyShowButton","defineComponent","name","inheritAttrs","props","id","type","default","row","attrs","t","router","useRouter","routeMeta","useRoute","computed","v","params","_slot"],"mappings":";;;;;;;AAM4C,SAAAA,EAAAC,GAAA;AAAA,SAAA,OAAAA,KAAA,cAAA,OAAA,UAAA,SAAA,KAAAA,CAAA,MAAA,qBAAA,CAAAC,EAAAD,CAAA;AAAA;AAO5C,MAAAE,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,IAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,SAAAA;AAAAA;IAEFC,KAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;;MACXC,GAAAA;AAAAA,aACRC,IAAAC,EAAA,GAEAC,IADAC,EAAA,EACA,MACAT,IAAAU,EAAA,MAAA;;AAEE,UAAAC;;IAGF,CAAA;;;QAMMd,MAAAA;AAAAA,QACAe,QAAAA;AAAAA;QAEA;AAAA,MACF,CAAA;AAAA;;AAIG,UAAAC;;;QACqC,QAAA;AAAA,QAAA,KAAAb,EAAA;AAAA,MAA6B,GAAA;AAAA,QAAAE,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA,EAAAA;AAAAA,UAAA,MAAA;AAAA,UAAA,MAAA;AAAA;;;QAElD,CAAA,CAAA;AAAA,MAAA,CAAA;AAAA;EAIzB;AACF,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/show-simple-layout/index.tsx"],"sourcesContent":["import { useShow } from '@/hooks'\r\nimport { cloneVNode, defineComponent } from 'vue'\r\n\r\nexport const SkyShowSimpleLayout = defineComponent({\r\n name: 'SkyShowSimpleLayout',\r\n setup(_props, { slots }) {\r\n const { data } = useShow()!\r\n\r\n // h(vnode.type as Component, { key: i, row, ...vnode.props }, (vnode.children as Slots)?.default) 等效于 cloneVNode(vnode, { row... })\r\n return () => (\r\n <div class=\"sky-show-simple-layout\">\r\n {slots.default?.().map((vnode) => cloneVNode(vnode, { row: data.value?.data }))}\r\n </div>\r\n )\r\n },\r\n})\r\n"],"names":["SkyShowSimpleLayout","defineComponent","name","setup","_props","slots","data","useShow","_createVNode","default","map","vnode","cloneVNode","row","value"],"mappings":"muBAGO,MAAMA,EAAsBC,EAAAA,gBAAgB,CACjDC,KAAM,sBACNC,MAAMC,EAAQ,CAAEC,MAAAA,CAAM,EAAG,CACvB,KAAM,CAAEC,KAAAA,GAASC,UAAO,EAGxB,MAAO,IAAAC,EAAAA,YAAA,MAAA,CAAA,MAAA,wBAAA,EAAA,CAEFH,EAAMI,UAAO,EAAKC,IAAKC,GAAUC,EAAAA,WAAWD,EAAO,CAAEE,IAAKP,EAAKQ,OAAOR,KAAM,CAAC,CAAC,CAAA,CAGrF,CACF,CAAC"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/show-simple-layout/index.tsx"],"sourcesContent":["import { useShow } from '@/hooks'\nimport { cloneVNode, defineComponent } from 'vue'\n\nexport const SkyShowSimpleLayout = defineComponent({\n name: 'SkyShowSimpleLayout',\n setup(_props, { slots }) {\n const { data } = useShow()!\n\n // h(vnode.type as Component, { key: i, row, ...vnode.props }, (vnode.children as Slots)?.default) 等效于 cloneVNode(vnode, { row... })\n return () => (\n <div class=\"sky-show-simple-layout\">\n {slots.default?.().map((vnode) => cloneVNode(vnode, { row: data.value?.data }))}\n </div>\n )\n },\n})\n"],"names":["SkyShowSimpleLayout","defineComponent","name","setup","_props","slots","data","useShow","_createVNode","default","map","vnode","cloneVNode","row","value"],"mappings":"muBAGO,MAAMA,EAAsBC,EAAAA,gBAAgB,CACjDC,KAAM,sBACNC,MAAMC,EAAQ,CAAEC,MAAAA,CAAM,EAAG,CACvB,KAAM,CAAEC,KAAAA,GAASC,UAAO,EAGxB,MAAO,IAAAC,EAAAA,YAAA,MAAA,CAAA,MAAA,wBAAA,EAAA,CAEFH,EAAMI,UAAO,EAAKC,IAAKC,GAAUC,EAAAA,WAAWD,EAAO,CAAEE,IAAKP,EAAKQ,OAAOR,KAAM,CAAC,CAAC,CAAA,CAGrF,CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/show-simple-layout/index.tsx"],"sourcesContent":["import { useShow } from '@/hooks'\r\nimport { cloneVNode, defineComponent } from 'vue'\r\n\r\nexport const SkyShowSimpleLayout = defineComponent({\r\n name: 'SkyShowSimpleLayout',\r\n setup(_props, { slots }) {\r\n const { data } = useShow()!\r\n\r\n // h(vnode.type as Component, { key: i, row, ...vnode.props }, (vnode.children as Slots)?.default) 等效于 cloneVNode(vnode, { row... })\r\n return () => (\r\n <div class=\"sky-show-simple-layout\">\r\n {slots.default?.().map((vnode) => cloneVNode(vnode, { row: data.value?.data }))}\r\n </div>\r\n )\r\n },\r\n})\r\n"],"names":["SkyShowSimpleLayout","defineComponent","name","setup","_props","slots","data","useShow","_createVNode","default","map","vnode","cloneVNode","row","value"],"mappings":";;;;;;;;;;;;;;;;;AAGO,MAAMA,IAAsBC,gBAAAA,EAAgB;AAAA,EACjDC,MAAM;AAAA,EACNC,MAAMC,GAAQ;AAAA,IAAEC,OAAAA;AAAAA,EAAM,GAAG;AACvB,UAAM;AAAA,MAAEC,MAAAA;AAAAA,QAASC,EAAO;AAGxB,WAAO,MAAAC,EAAA,OAAA;AAAA,MAAA,OAAA;AAAA,IAAA,GAAA,CAEFH,EAAMI,UAAO,EAAKC,IAAKC,CAAAA,MAAUC,EAAWD,GAAO;AAAA,MAAEE,KAAKP,EAAKQ,OAAOR;AAAAA,KAAM,CAAC,CAAC,CAAA;AAAA,EAGrF;AACF,CAAC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/show-simple-layout/index.tsx"],"sourcesContent":["import { useShow } from '@/hooks'\nimport { cloneVNode, defineComponent } from 'vue'\n\nexport const SkyShowSimpleLayout = defineComponent({\n name: 'SkyShowSimpleLayout',\n setup(_props, { slots }) {\n const { data } = useShow()!\n\n // h(vnode.type as Component, { key: i, row, ...vnode.props }, (vnode.children as Slots)?.default) 等效于 cloneVNode(vnode, { row... })\n return () => (\n <div class=\"sky-show-simple-layout\">\n {slots.default?.().map((vnode) => cloneVNode(vnode, { row: data.value?.data }))}\n </div>\n )\n },\n})\n"],"names":["SkyShowSimpleLayout","defineComponent","name","setup","_props","slots","data","useShow","_createVNode","default","map","vnode","cloneVNode","row","value"],"mappings":";;;;;;;;;;;;;;;;;AAGO,MAAMA,IAAsBC,gBAAAA,EAAgB;AAAA,EACjDC,MAAM;AAAA,EACNC,MAAMC,GAAQ;AAAA,IAAEC,OAAAA;AAAAA,EAAM,GAAG;AACvB,UAAM;AAAA,MAAEC,MAAAA;AAAAA,QAASC,EAAO;AAGxB,WAAO,MAAAC,EAAA,OAAA;AAAA,MAAA,OAAA;AAAA,IAAA,GAAA,CAEFH,EAAMI,UAAO,EAAKC,IAAKC,CAAAA,MAAUC,EAAWD,GAAO;AAAA,MAAEE,KAAKP,EAAKQ,OAAOR;AAAAA,KAAM,CAAC,CAAC,CAAA;AAAA,EAGrF;AACF,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/simple-form/index.tsx"],"sourcesContent":["import { useForm, useProvideFormGrid } from '@/hooks'\r\nimport { ElForm, type FormProps, type FormRules } from 'element-plus'\r\nimport { defineComponent, useTemplateRef, watchEffect } from 'vue'\r\n\r\nexport interface SkySimpleFormProps {\r\n grid?: boolean\r\n rules?: FormRules\r\n}\r\n\r\nexport const SkySimpleForm = defineComponent<SkySimpleFormProps & Partial<FormProps>>({\r\n name: 'SkySimpleForm',\r\n props: {\r\n grid: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n rules: Object,\r\n },\r\n setup(props, { slots }) {\r\n useProvideFormGrid(props.grid!)\r\n const { formData, setFormRef } = useForm()!\r\n const formRef = useTemplateRef<InstanceType<typeof ElForm> | null>('formRef')\r\n watchEffect(() => {\r\n setFormRef(formRef.value)\r\n })\r\n return () => (\r\n <ElForm\r\n ref=\"formRef\"\r\n class={`sky-simple-form${props.grid ? ' is-grid' : ''}`}\r\n model={formData}\r\n label-position=\"top\"\r\n rules={props.rules}\r\n >\r\n {slots.default?.()}\r\n </ElForm>\r\n )\r\n },\r\n})\r\n"],"names":["SkySimpleForm","defineComponent","name","props","grid","type","default","rules","slots","useProvideFormGrid","setFormRef","formRef","useTemplateRef","watchEffect","formData"],"mappings":"g0BASAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,gBACAC,MAAAA,CACEC,KAAAA,CACEC,KAAAA,QACAC,QAAAA,IAEFC,MAAAA,iBAEaC,MAAAA,CAAM,EAAA,CACnBC,EAAAA,mBAAAA,EAAAA,IAAAA,mBACkBC,WAAAA,eAClBC,EAAAC,EAAAA,eAAA,SAAA,EACAC,OAAAA,EAAAA,YAAAA,IAAAA,CACEH,EAAAA,EAAAA,KAAAA,CACF,CAAA,8BACO,IAAA,yDAGoD,MAAAI,EACxC,iBAAA,MAAA,MAAAX,EAAA,KAEG,EAAA,CAAAG,QAAAA,IAAAA,CAAAA,EAAAA,UAAAA,CAAAA,GAKxB,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/simple-form/index.tsx"],"sourcesContent":["import { useForm, useProvideFormGrid } from '@/hooks'\nimport { ElForm, type FormProps, type FormRules } from 'element-plus'\nimport { defineComponent, useTemplateRef, watchEffect } from 'vue'\n\nexport interface SkySimpleFormProps {\n grid?: boolean\n rules?: FormRules\n}\n\nexport const SkySimpleForm = defineComponent<SkySimpleFormProps & Partial<FormProps>>({\n name: 'SkySimpleForm',\n props: {\n grid: {\n type: Boolean,\n default: false,\n },\n rules: Object,\n },\n setup(props, { slots }) {\n useProvideFormGrid(props.grid!)\n const { formData, setFormRef } = useForm()!\n const formRef = useTemplateRef<InstanceType<typeof ElForm> | null>('formRef')\n watchEffect(() => {\n setFormRef(formRef.value)\n })\n return () => (\n <ElForm\n ref=\"formRef\"\n class={`sky-simple-form${props.grid ? ' is-grid' : ''}`}\n model={formData}\n label-position=\"top\"\n rules={props.rules}\n >\n {slots.default?.()}\n </ElForm>\n )\n },\n})\n"],"names":["SkySimpleForm","defineComponent","name","props","grid","type","default","rules","slots","useProvideFormGrid","setFormRef","formRef","useTemplateRef","watchEffect","formData"],"mappings":"g0BASAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,gBACAC,MAAAA,CACEC,KAAAA,CACEC,KAAAA,QACAC,QAAAA,IAEFC,MAAAA,iBAEaC,MAAAA,CAAM,EAAA,CACnBC,EAAAA,mBAAAA,EAAAA,IAAAA,mBACkBC,WAAAA,eAClBC,EAAAC,EAAAA,eAAA,SAAA,EACAC,OAAAA,EAAAA,YAAAA,IAAAA,CACEH,EAAAA,EAAAA,KAAAA,CACF,CAAA,8BACO,IAAA,yDAGoD,MAAAI,EACxC,iBAAA,MAAA,MAAAX,EAAA,KAEG,EAAA,CAAAG,QAAAA,IAAAA,CAAAA,EAAAA,UAAAA,CAAAA,GAKxB,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/simple-form/index.tsx"],"sourcesContent":["import { useForm, useProvideFormGrid } from '@/hooks'\r\nimport { ElForm, type FormProps, type FormRules } from 'element-plus'\r\nimport { defineComponent, useTemplateRef, watchEffect } from 'vue'\r\n\r\nexport interface SkySimpleFormProps {\r\n grid?: boolean\r\n rules?: FormRules\r\n}\r\n\r\nexport const SkySimpleForm = defineComponent<SkySimpleFormProps & Partial<FormProps>>({\r\n name: 'SkySimpleForm',\r\n props: {\r\n grid: {\r\n type: Boolean,\r\n default: false,\r\n },\r\n rules: Object,\r\n },\r\n setup(props, { slots }) {\r\n useProvideFormGrid(props.grid!)\r\n const { formData, setFormRef } = useForm()!\r\n const formRef = useTemplateRef<InstanceType<typeof ElForm> | null>('formRef')\r\n watchEffect(() => {\r\n setFormRef(formRef.value)\r\n })\r\n return () => (\r\n <ElForm\r\n ref=\"formRef\"\r\n class={`sky-simple-form${props.grid ? ' is-grid' : ''}`}\r\n model={formData}\r\n label-position=\"top\"\r\n rules={props.rules}\r\n >\r\n {slots.default?.()}\r\n </ElForm>\r\n )\r\n },\r\n})\r\n"],"names":["SkySimpleForm","defineComponent","name","props","grid","type","default","rules","slots","useProvideFormGrid","setFormRef","formRef","useTemplateRef","watchEffect","formData"],"mappings":";;;;;;;;;;;;;;;;;;;AASA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,MAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,SAAAA;AAAAA;IAEFC,OAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;AACnBC,IAAAA,EAAAA,EAAAA,IAAAA;;;MACkBC,YAAAA;AAAAA,aAClBC,IAAAC,EAAA,SAAA;AACAC,WAAAA,EAAAA,MAAAA;AACEH,MAAAA,EAAAA,EAAAA,KAAAA;AAAAA,IACF,CAAA;MACO,KAAA;AAAA;MAGoD,OAAAI;AAAA,MACxC,kBAAA;AAAA,MAAA,OAAAX,EAAA;AAAA,IAEG,GAAA;AAAA,MAAAG,SAAAA,MAAAA,CAAAA,EAAAA,UAAAA,CAAAA;AAAAA;EAKxB;AACF,CAAA;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/simple-form/index.tsx"],"sourcesContent":["import { useForm, useProvideFormGrid } from '@/hooks'\nimport { ElForm, type FormProps, type FormRules } from 'element-plus'\nimport { defineComponent, useTemplateRef, watchEffect } from 'vue'\n\nexport interface SkySimpleFormProps {\n grid?: boolean\n rules?: FormRules\n}\n\nexport const SkySimpleForm = defineComponent<SkySimpleFormProps & Partial<FormProps>>({\n name: 'SkySimpleForm',\n props: {\n grid: {\n type: Boolean,\n default: false,\n },\n rules: Object,\n },\n setup(props, { slots }) {\n useProvideFormGrid(props.grid!)\n const { formData, setFormRef } = useForm()!\n const formRef = useTemplateRef<InstanceType<typeof ElForm> | null>('formRef')\n watchEffect(() => {\n setFormRef(formRef.value)\n })\n return () => (\n <ElForm\n ref=\"formRef\"\n class={`sky-simple-form${props.grid ? ' is-grid' : ''}`}\n model={formData}\n label-position=\"top\"\n rules={props.rules}\n >\n {slots.default?.()}\n </ElForm>\n )\n },\n})\n"],"names":["SkySimpleForm","defineComponent","name","props","grid","type","default","rules","slots","useProvideFormGrid","setFormRef","formRef","useTemplateRef","watchEffect","formData"],"mappings":";;;;;;;;;;;;;;;;;;;AASA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,MAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,SAAAA;AAAAA;IAEFC,OAAAA;AAAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;AACnBC,IAAAA,EAAAA,EAAAA,IAAAA;;;MACkBC,YAAAA;AAAAA,aAClBC,IAAAC,EAAA,SAAA;AACAC,WAAAA,EAAAA,MAAAA;AACEH,MAAAA,EAAAA,EAAAA,KAAAA;AAAAA,IACF,CAAA;MACO,KAAA;AAAA;MAGoD,OAAAI;AAAA,MACxC,kBAAA;AAAA,MAAA,OAAAX,EAAA;AAAA,IAEG,GAAA;AAAA,MAAAG,SAAAA,MAAAA,CAAAA,EAAAA,UAAAA,CAAAA;AAAAA;EAKxB;AACF,CAAA;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/single-field-list/index.tsx"],"sourcesContent":["import { useReferenceArrayField } from '@/hooks'\r\nimport { skyConfig } from '@/setup'\r\nimport { ElLoadingDirective } from 'element-plus'\r\nimport { cloneVNode, defineComponent, withDirectives } from 'vue'\r\nimport { useRouter } from 'vue-router'\r\n\r\nexport interface SkySingleFieldListProps {\r\n id?: string\r\n}\r\n\r\nexport const SkySingleFieldList = defineComponent<SkySingleFieldListProps>({\r\n name: 'SkySingleFieldList',\r\n props: {\r\n id: {\r\n type: String,\r\n default: 'id',\r\n },\r\n },\r\n setup(props, { slots }) {\r\n const router = useRouter()\r\n const { listData, listLoading, reference } = useReferenceArrayField()!\r\n\r\n const onClick = (row?: Record<string, unknown>) => {\r\n const routeName = skyConfig.getShowRouteName(reference)\r\n if (row?.[props.id!] && router.hasRoute(routeName)) {\r\n router.push({\r\n name: routeName,\r\n params: {\r\n id: String(row[props.id!]),\r\n },\r\n })\r\n }\r\n }\r\n\r\n return () =>\r\n withDirectives(\r\n <div class=\"sky-single-field-list\">\r\n {listData.value?.data?.map((row) => (\r\n <>{slots.default?.().map((vnode) => cloneVNode(vnode, { row, onClick }))}</>\r\n ))}\r\n </div>,\r\n [[ElLoadingDirective, listLoading.value]],\r\n )\r\n },\r\n})\r\n"],"names":["SkySingleFieldList","defineComponent","name","props","id","type","String","default","setup","slots","router","useRouter","listData","listLoading","reference","useReferenceArrayField","onClick","row","routeName","skyConfig","getShowRouteName","hasRoute","push","params","withDirectives","_createVNode","value","data","map","_Fragment","vnode","cloneVNode","ElLoadingDirective"],"mappings":"8zBAUaA,EAAqBC,EAAAA,gBAAyC,CACzEC,KAAM,qBACNC,MAAO,CACLC,GAAI,CACFC,KAAMC,OACNC,QAAS,IACX,GAEFC,MAAML,EAAO,CAAEM,MAAAA,CAAM,EAAG,CACtB,MAAMC,EAASC,EAAAA,UAAS,EAClB,CAAEC,SAAAA,EAAUC,YAAAA,EAAaC,UAAAA,GAAcC,yBAAsB,EAE7DC,EAAWC,GAAkC,CACjD,MAAMC,EAAYC,EAAAA,UAAUC,iBAAiBN,CAAS,EAClDG,IAAMd,EAAMC,EAAE,GAAMM,EAAOW,SAASH,CAAS,GAC/CR,EAAOY,KAAK,CACVpB,KAAMgB,EACNK,OAAQ,CACNnB,GAAIE,OAAOW,EAAId,EAAMC,EAAE,CAAE,CAC3B,CACF,CAAC,CAEL,EAEA,MAAO,IACLoB,EAAAA,eAAcC,EAAAA,YAAA,MAAA,CAAA,MAAA,yBAAA,CAETb,EAASc,OAAOC,MAAMC,IAAKX,GAAGQ,cAAAI,EAAAA,SAAA,KAAA,CAC1BpB,EAAMF,UAAO,EAAKqB,IAAKE,GAAUC,EAAAA,WAAWD,EAAO,CAAEb,IAAAA,EAAKD,QAAAA,CAAQ,CAAC,CAAC,CAAC,CAAA,CACzE,CAAC,GAEJ,CAAC,CAACgB,qBAAoBnB,EAAYa,KAAK,CAAC,CAC1C,CACJ,CACF,CAAC"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/single-field-list/index.tsx"],"sourcesContent":["import { useReferenceArrayField } from '@/hooks'\nimport { skyConfig } from '@/setup'\nimport { ElLoadingDirective } from 'element-plus'\nimport { cloneVNode, defineComponent, withDirectives } from 'vue'\nimport { useRouter } from 'vue-router'\n\nexport interface SkySingleFieldListProps {\n id?: string\n}\n\nexport const SkySingleFieldList = defineComponent<SkySingleFieldListProps>({\n name: 'SkySingleFieldList',\n props: {\n id: {\n type: String,\n default: 'id',\n },\n },\n setup(props, { slots }) {\n const router = useRouter()\n const { listData, listLoading, reference } = useReferenceArrayField()!\n\n const onClick = (row?: Record<string, unknown>) => {\n const routeName = skyConfig.getShowRouteName(reference)\n if (row?.[props.id!] && router.hasRoute(routeName)) {\n router.push({\n name: routeName,\n params: {\n id: String(row[props.id!]),\n },\n })\n }\n }\n\n return () =>\n withDirectives(\n <div class=\"sky-single-field-list\">\n {listData.value?.data?.map((row) => (\n <>{slots.default?.().map((vnode) => cloneVNode(vnode, { row, onClick }))}</>\n ))}\n </div>,\n [[ElLoadingDirective, listLoading.value]],\n )\n },\n})\n"],"names":["SkySingleFieldList","defineComponent","name","props","id","type","String","default","setup","slots","router","useRouter","listData","listLoading","reference","useReferenceArrayField","onClick","row","routeName","skyConfig","getShowRouteName","hasRoute","push","params","withDirectives","_createVNode","value","data","map","_Fragment","vnode","cloneVNode","ElLoadingDirective"],"mappings":"8zBAUaA,EAAqBC,EAAAA,gBAAyC,CACzEC,KAAM,qBACNC,MAAO,CACLC,GAAI,CACFC,KAAMC,OACNC,QAAS,IACX,GAEFC,MAAML,EAAO,CAAEM,MAAAA,CAAM,EAAG,CACtB,MAAMC,EAASC,EAAAA,UAAS,EAClB,CAAEC,SAAAA,EAAUC,YAAAA,EAAaC,UAAAA,GAAcC,yBAAsB,EAE7DC,EAAWC,GAAkC,CACjD,MAAMC,EAAYC,EAAAA,UAAUC,iBAAiBN,CAAS,EAClDG,IAAMd,EAAMC,EAAE,GAAMM,EAAOW,SAASH,CAAS,GAC/CR,EAAOY,KAAK,CACVpB,KAAMgB,EACNK,OAAQ,CACNnB,GAAIE,OAAOW,EAAId,EAAMC,EAAE,CAAE,CAC3B,CACF,CAAC,CAEL,EAEA,MAAO,IACLoB,EAAAA,eAAcC,EAAAA,YAAA,MAAA,CAAA,MAAA,yBAAA,CAETb,EAASc,OAAOC,MAAMC,IAAKX,GAAGQ,cAAAI,EAAAA,SAAA,KAAA,CAC1BpB,EAAMF,UAAO,EAAKqB,IAAKE,GAAUC,EAAAA,WAAWD,EAAO,CAAEb,IAAAA,EAAKD,QAAAA,CAAQ,CAAC,CAAC,CAAC,CAAA,CACzE,CAAC,GAEJ,CAAC,CAACgB,qBAAoBnB,EAAYa,KAAK,CAAC,CAC1C,CACJ,CACF,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/single-field-list/index.tsx"],"sourcesContent":["import { useReferenceArrayField } from '@/hooks'\r\nimport { skyConfig } from '@/setup'\r\nimport { ElLoadingDirective } from 'element-plus'\r\nimport { cloneVNode, defineComponent, withDirectives } from 'vue'\r\nimport { useRouter } from 'vue-router'\r\n\r\nexport interface SkySingleFieldListProps {\r\n id?: string\r\n}\r\n\r\nexport const SkySingleFieldList = defineComponent<SkySingleFieldListProps>({\r\n name: 'SkySingleFieldList',\r\n props: {\r\n id: {\r\n type: String,\r\n default: 'id',\r\n },\r\n },\r\n setup(props, { slots }) {\r\n const router = useRouter()\r\n const { listData, listLoading, reference } = useReferenceArrayField()!\r\n\r\n const onClick = (row?: Record<string, unknown>) => {\r\n const routeName = skyConfig.getShowRouteName(reference)\r\n if (row?.[props.id!] && router.hasRoute(routeName)) {\r\n router.push({\r\n name: routeName,\r\n params: {\r\n id: String(row[props.id!]),\r\n },\r\n })\r\n }\r\n }\r\n\r\n return () =>\r\n withDirectives(\r\n <div class=\"sky-single-field-list\">\r\n {listData.value?.data?.map((row) => (\r\n <>{slots.default?.().map((vnode) => cloneVNode(vnode, { row, onClick }))}</>\r\n ))}\r\n </div>,\r\n [[ElLoadingDirective, listLoading.value]],\r\n )\r\n },\r\n})\r\n"],"names":["SkySingleFieldList","defineComponent","name","props","id","type","String","default","setup","slots","router","useRouter","listData","listLoading","reference","useReferenceArrayField","onClick","row","routeName","skyConfig","getShowRouteName","hasRoute","push","params","withDirectives","_createVNode","value","data","map","_Fragment","vnode","cloneVNode","ElLoadingDirective"],"mappings":";;;;;;;;;;;;;;;;;;;;AAUO,MAAMA,IAAqBC,gBAAAA,EAAyC;AAAA,EACzEC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,IAAI;AAAA,MACFC,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACX;AAAA;EAEFC,MAAML,GAAO;AAAA,IAAEM,OAAAA;AAAAA,EAAM,GAAG;AACtB,UAAMC,IAASC,EAAS,GAClB;AAAA,MAAEC,UAAAA;AAAAA,MAAUC,aAAAA;AAAAA,MAAaC,WAAAA;AAAAA,QAAcC,EAAsB,GAE7DC,IAAWC,CAAAA,MAAkC;AACjD,YAAMC,IAAYC,EAAUC,iBAAiBN,CAAS;AACtD,MAAIG,IAAMd,EAAMC,EAAE,KAAMM,EAAOW,SAASH,CAAS,KAC/CR,EAAOY,KAAK;AAAA,QACVpB,MAAMgB;AAAAA,QACNK,QAAQ;AAAA,UACNnB,IAAIE,OAAOW,EAAId,EAAMC,EAAE,CAAE;AAAA,QAC3B;AAAA,MACF,CAAC;AAAA,IAEL;AAEA,WAAO,MACLoB,EAAcC,EAAA,OAAA;AAAA,MAAA,OAAA;AAAA,OAAA,CAETb,EAASc,OAAOC,MAAMC,IAAKX,CAAAA,MAAGQ,EAAAI,GAAA,MAAA,CAC1BpB,EAAMF,UAAO,EAAKqB,IAAKE,CAAAA,MAAUC,EAAWD,GAAO;AAAA,MAAEb,KAAAA;AAAAA,MAAKD,SAAAA;AAAAA,IAAQ,CAAC,CAAC,CAAC,CAAA,CACzE,CAAC,IAEJ,CAAC,CAACgB,GAAoBnB,EAAYa,KAAK,CAAC,CAC1C;AAAA,EACJ;AACF,CAAC;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/single-field-list/index.tsx"],"sourcesContent":["import { useReferenceArrayField } from '@/hooks'\nimport { skyConfig } from '@/setup'\nimport { ElLoadingDirective } from 'element-plus'\nimport { cloneVNode, defineComponent, withDirectives } from 'vue'\nimport { useRouter } from 'vue-router'\n\nexport interface SkySingleFieldListProps {\n id?: string\n}\n\nexport const SkySingleFieldList = defineComponent<SkySingleFieldListProps>({\n name: 'SkySingleFieldList',\n props: {\n id: {\n type: String,\n default: 'id',\n },\n },\n setup(props, { slots }) {\n const router = useRouter()\n const { listData, listLoading, reference } = useReferenceArrayField()!\n\n const onClick = (row?: Record<string, unknown>) => {\n const routeName = skyConfig.getShowRouteName(reference)\n if (row?.[props.id!] && router.hasRoute(routeName)) {\n router.push({\n name: routeName,\n params: {\n id: String(row[props.id!]),\n },\n })\n }\n }\n\n return () =>\n withDirectives(\n <div class=\"sky-single-field-list\">\n {listData.value?.data?.map((row) => (\n <>{slots.default?.().map((vnode) => cloneVNode(vnode, { row, onClick }))}</>\n ))}\n </div>,\n [[ElLoadingDirective, listLoading.value]],\n )\n },\n})\n"],"names":["SkySingleFieldList","defineComponent","name","props","id","type","String","default","setup","slots","router","useRouter","listData","listLoading","reference","useReferenceArrayField","onClick","row","routeName","skyConfig","getShowRouteName","hasRoute","push","params","withDirectives","_createVNode","value","data","map","_Fragment","vnode","cloneVNode","ElLoadingDirective"],"mappings":";;;;;;;;;;;;;;;;;;;;AAUO,MAAMA,IAAqBC,gBAAAA,EAAyC;AAAA,EACzEC,MAAM;AAAA,EACNC,OAAO;AAAA,IACLC,IAAI;AAAA,MACFC,MAAMC;AAAAA,MACNC,SAAS;AAAA,IACX;AAAA;EAEFC,MAAML,GAAO;AAAA,IAAEM,OAAAA;AAAAA,EAAM,GAAG;AACtB,UAAMC,IAASC,EAAS,GAClB;AAAA,MAAEC,UAAAA;AAAAA,MAAUC,aAAAA;AAAAA,MAAaC,WAAAA;AAAAA,QAAcC,EAAsB,GAE7DC,IAAWC,CAAAA,MAAkC;AACjD,YAAMC,IAAYC,EAAUC,iBAAiBN,CAAS;AACtD,MAAIG,IAAMd,EAAMC,EAAE,KAAMM,EAAOW,SAASH,CAAS,KAC/CR,EAAOY,KAAK;AAAA,QACVpB,MAAMgB;AAAAA,QACNK,QAAQ;AAAA,UACNnB,IAAIE,OAAOW,EAAId,EAAMC,EAAE,CAAE;AAAA,QAC3B;AAAA,MACF,CAAC;AAAA,IAEL;AAEA,WAAO,MACLoB,EAAcC,EAAA,OAAA;AAAA,MAAA,OAAA;AAAA,OAAA,CAETb,EAASc,OAAOC,MAAMC,IAAKX,CAAAA,MAAGQ,EAAAI,GAAA,MAAA,CAC1BpB,EAAMF,UAAO,EAAKqB,IAAKE,CAAAA,MAAUC,EAAWD,GAAO;AAAA,MAAEb,KAAAA;AAAAA,MAAKD,SAAAA;AAAAA,IAAQ,CAAC,CAAC,CAAC,CAAA,CACzE,CAAC,IAEJ,CAAC,CAACgB,GAAoBnB,EAAYa,KAAK,CAAC,CAC1C;AAAA,EACJ;AACF,CAAC;"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/text-input/index.tsx"],"sourcesContent":["import { useForm, useFormGrid } from '@/hooks'\r\nimport { ElFormItem, ElInput, type FormItemRule, type InputProps } from 'element-plus'\r\nimport { computed, defineComponent, h } from 'vue'\r\nimport { useRoute } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\n\r\nexport interface SkyTextInputProps {\r\n source: string\r\n label?: string\r\n rules?: FormItemRule | FormItemRule[]\r\n parser?: InputProps['parser']\r\n defaultValue?: string\r\n}\r\n\r\nexport const SkyTextInput = defineComponent<SkyTextInputProps & Partial<InputProps>>({\r\n name: 'SkyTextInput',\r\n inheritAttrs: false,\r\n props: {\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n label: String,\r\n rules: Object,\r\n parser: Function,\r\n defaultValue: {\r\n type: String,\r\n default: '',\r\n },\r\n },\r\n setup(props, { attrs }) {\r\n // 防止TS类型爆炸!\r\n const _props = props as unknown as SkyTextInputProps\r\n const route = useRoute()\r\n const formGrid = useFormGrid()\r\n const { formData, editData } = useForm()!\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n const title = computed(() => _props.label || _props.source)\r\n\r\n if (typeof formData[_props.source] === 'undefined') {\r\n formData[_props.source] = _props.defaultValue!\r\n }\r\n\r\n if (editData.value) {\r\n formData[_props.source] = editData.value[_props.source]\r\n }\r\n\r\n // 主动调用一次,归一化参数\r\n if (_props.parser) {\r\n formData[_props.source] = _props.parser(formData[_props.source])\r\n }\r\n\r\n return () => (\r\n <SkyCanAccess\r\n resource={routeMeta.resource}\r\n action={['create', 'edit']}\r\n column={_props.source}\r\n >\r\n <ElFormItem\r\n label={title.value}\r\n prop={_props.source}\r\n rules={_props.rules}\r\n style={formGrid ? `grid-area: ${_props.source}` : ''}\r\n >\r\n {() =>\r\n h(ElInput, {\r\n modelValue: formData[_props.source] ? String(formData[_props.source]) : '',\r\n 'onUpdate:modelValue': (v) => (formData[_props.source] = v),\r\n parser: _props.parser,\r\n ...attrs,\r\n })\r\n }\r\n </ElFormItem>\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyTextInput","defineComponent","name","inheritAttrs","props","source","type","required","label","rules","parser","defaultValue","default","attrs","route","useRoute","formGrid","useFormGrid","editData","routeMeta","title","computed","_props","formData","modelValue"],"mappings":"w7BAeAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,eACAC,aAAAA,GACAC,MAAAA,CACEC,OAAAA,CACEC,KAAAA,OACAC,SAAAA,IAEFC,MAAAA,OACAC,MAAAA,OACAC,OAAAA,SACAC,aAAAA,CACEL,KAAAA,OACAM,QAAAA,EACF,YAEaC,MAAAA,CAAM,EAAA,WAGnBC,EAAAC,EAAAA,SAAA,EACAC,EAAAC,EAAAA,YAAA,cACkBC,SAAAA,eAClBC,EAAAL,EAAA,KAEAM,EAAAC,EAAAA,SAAA,IAAAC,EAAA,OAAAA,EAAA,MAAA,wEAOEC,EAAAA,EAAAA,MAAAA,EAAAA,EAAAA,MAAAA,EAAAA,MAAAA,cAKAA,EAAAA,EAAAA,MAAAA,EAAAA,EAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA,yDAK8B,OAAA,CAAA,SAAA,MAAA,EACF,OAAAD,EAAA,MACL,EAAA,CAAAV,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,aAAAA,2CAKA,MAAAI,EAAA,cAAAM,EAAA,MAAA,GAAA,EACiC,EAAA,CAAAV,QAAAA,IAAAA,EAAAA,EAAAA,UAAAA,CAIhDY,WAAAA,EAAAA,EAAAA,MAAAA,EAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA,EAAAA,gEAIA,CAAA,CAAA,GAKZ,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/text-input/index.tsx"],"sourcesContent":["import { useForm, useFormGrid } from '@/hooks'\nimport { ElFormItem, ElInput, type FormItemRule, type InputProps } from 'element-plus'\nimport { computed, defineComponent, h } from 'vue'\nimport { useRoute } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\nimport type { SkyLayoutRouteMeta } from '@/router'\n\nexport interface SkyTextInputProps {\n source: string\n label?: string\n rules?: FormItemRule | FormItemRule[]\n parser?: InputProps['parser']\n defaultValue?: string\n}\n\nexport const SkyTextInput = defineComponent<SkyTextInputProps & Partial<InputProps>>({\n name: 'SkyTextInput',\n inheritAttrs: false,\n props: {\n source: {\n type: String,\n required: true,\n },\n label: String,\n rules: Object,\n parser: Function,\n defaultValue: {\n type: String,\n default: '',\n },\n },\n setup(props, { attrs }) {\n // 防止TS类型爆炸!\n const _props = props as unknown as SkyTextInputProps\n const route = useRoute()\n const formGrid = useFormGrid()\n const { formData, editData } = useForm()!\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n const title = computed(() => _props.label || _props.source)\n\n if (typeof formData[_props.source] === 'undefined') {\n formData[_props.source] = _props.defaultValue!\n }\n\n if (editData.value) {\n formData[_props.source] = editData.value[_props.source]\n }\n\n // 主动调用一次,归一化参数\n if (_props.parser) {\n formData[_props.source] = _props.parser(formData[_props.source])\n }\n\n return () => (\n <SkyCanAccess\n resource={routeMeta.resource}\n action={['create', 'edit']}\n column={_props.source}\n >\n <ElFormItem\n label={title.value}\n prop={_props.source}\n rules={_props.rules}\n style={formGrid ? `grid-area: ${_props.source}` : ''}\n >\n {() =>\n h(ElInput, {\n modelValue: formData[_props.source] ? String(formData[_props.source]) : '',\n 'onUpdate:modelValue': (v) => (formData[_props.source] = v),\n parser: _props.parser,\n ...attrs,\n })\n }\n </ElFormItem>\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyTextInput","defineComponent","name","inheritAttrs","props","source","type","required","label","rules","parser","defaultValue","default","attrs","route","useRoute","formGrid","useFormGrid","editData","routeMeta","title","computed","_props","formData","modelValue"],"mappings":"w7BAeAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,eACAC,aAAAA,GACAC,MAAAA,CACEC,OAAAA,CACEC,KAAAA,OACAC,SAAAA,IAEFC,MAAAA,OACAC,MAAAA,OACAC,OAAAA,SACAC,aAAAA,CACEL,KAAAA,OACAM,QAAAA,EACF,YAEaC,MAAAA,CAAM,EAAA,WAGnBC,EAAAC,EAAAA,SAAA,EACAC,EAAAC,EAAAA,YAAA,cACkBC,SAAAA,eAClBC,EAAAL,EAAA,KAEAM,EAAAC,EAAAA,SAAA,IAAAC,EAAA,OAAAA,EAAA,MAAA,wEAOEC,EAAAA,EAAAA,MAAAA,EAAAA,EAAAA,MAAAA,EAAAA,MAAAA,cAKAA,EAAAA,EAAAA,MAAAA,EAAAA,EAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA,yDAK8B,OAAA,CAAA,SAAA,MAAA,EACF,OAAAD,EAAA,MACL,EAAA,CAAAV,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,aAAAA,2CAKA,MAAAI,EAAA,cAAAM,EAAA,MAAA,GAAA,EACiC,EAAA,CAAAV,QAAAA,IAAAA,EAAAA,EAAAA,UAAAA,CAIhDY,WAAAA,EAAAA,EAAAA,MAAAA,EAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA,EAAAA,gEAIA,CAAA,CAAA,GAKZ,CACF,CAAA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":["../../../src/components/text-input/index.tsx"],"sourcesContent":["import { useForm, useFormGrid } from '@/hooks'\r\nimport { ElFormItem, ElInput, type FormItemRule, type InputProps } from 'element-plus'\r\nimport { computed, defineComponent, h } from 'vue'\r\nimport { useRoute } from 'vue-router'\r\nimport { SkyCanAccess } from '../can-access'\r\nimport type { SkyLayoutRouteMeta } from '@/router'\r\n\r\nexport interface SkyTextInputProps {\r\n source: string\r\n label?: string\r\n rules?: FormItemRule | FormItemRule[]\r\n parser?: InputProps['parser']\r\n defaultValue?: string\r\n}\r\n\r\nexport const SkyTextInput = defineComponent<SkyTextInputProps & Partial<InputProps>>({\r\n name: 'SkyTextInput',\r\n inheritAttrs: false,\r\n props: {\r\n source: {\r\n type: String,\r\n required: true,\r\n },\r\n label: String,\r\n rules: Object,\r\n parser: Function,\r\n defaultValue: {\r\n type: String,\r\n default: '',\r\n },\r\n },\r\n setup(props, { attrs }) {\r\n // 防止TS类型爆炸!\r\n const _props = props as unknown as SkyTextInputProps\r\n const route = useRoute()\r\n const formGrid = useFormGrid()\r\n const { formData, editData } = useForm()!\r\n const routeMeta = route.meta as SkyLayoutRouteMeta\r\n\r\n const title = computed(() => _props.label || _props.source)\r\n\r\n if (typeof formData[_props.source] === 'undefined') {\r\n formData[_props.source] = _props.defaultValue!\r\n }\r\n\r\n if (editData.value) {\r\n formData[_props.source] = editData.value[_props.source]\r\n }\r\n\r\n // 主动调用一次,归一化参数\r\n if (_props.parser) {\r\n formData[_props.source] = _props.parser(formData[_props.source])\r\n }\r\n\r\n return () => (\r\n <SkyCanAccess\r\n resource={routeMeta.resource}\r\n action={['create', 'edit']}\r\n column={_props.source}\r\n >\r\n <ElFormItem\r\n label={title.value}\r\n prop={_props.source}\r\n rules={_props.rules}\r\n style={formGrid ? `grid-area: ${_props.source}` : ''}\r\n >\r\n {() =>\r\n h(ElInput, {\r\n modelValue: formData[_props.source] ? String(formData[_props.source]) : '',\r\n 'onUpdate:modelValue': (v) => (formData[_props.source] = v),\r\n parser: _props.parser,\r\n ...attrs,\r\n })\r\n }\r\n </ElFormItem>\r\n </SkyCanAccess>\r\n )\r\n },\r\n})\r\n"],"names":["SkyTextInput","defineComponent","name","inheritAttrs","props","source","type","required","label","rules","parser","defaultValue","default","attrs","route","useRoute","formGrid","useFormGrid","editData","routeMeta","title","computed","_props","formData","modelValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAeA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,QAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFC,OAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,QAAAA;AAAAA,IACAC,cAAAA;AAAAA,MACEL,MAAAA;AAAAA,MACAM,SAAAA;AAAAA,IACF;AAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;iBAGnBC,IAAAC,EAAA,GACAC,IAAAC,EAAA;;MACkBC,UAAAA;AAAAA,aAClBC,IAAAL,EAAA,MAEAM,IAAAC,EAAA,MAAAC,EAAA,SAAAA,EAAA,MAAA;mFAOEC,EAAAA,EAAAA,MAAAA,IAAAA,EAAAA,MAAAA,EAAAA,MAAAA,iBAKAA,EAAAA,EAAAA,MAAAA,IAAAA,EAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA;;MAK8B,QAAA,CAAA,UAAA,MAAA;AAAA,MACF,QAAAD,EAAA;AAAA,IACL,GAAA;AAAA,MAAAV,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA;AAAAA;;;QAKA,OAAAI,IAAA,cAAAM,EAAA,MAAA,KAAA;AAAA,MACiC,GAAA;AAAA,QAAAV,SAAAA,MAAAA,EAAAA,GAAAA;AAAAA,UAIhDY,YAAAA,EAAAA,EAAAA,MAAAA,IAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA,IAAAA;AAAAA;;;;MAIA,CAAA,CAAA;AAAA;EAKZ;AACF,CAAA;"}
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/components/text-input/index.tsx"],"sourcesContent":["import { useForm, useFormGrid } from '@/hooks'\nimport { ElFormItem, ElInput, type FormItemRule, type InputProps } from 'element-plus'\nimport { computed, defineComponent, h } from 'vue'\nimport { useRoute } from 'vue-router'\nimport { SkyCanAccess } from '../can-access'\nimport type { SkyLayoutRouteMeta } from '@/router'\n\nexport interface SkyTextInputProps {\n source: string\n label?: string\n rules?: FormItemRule | FormItemRule[]\n parser?: InputProps['parser']\n defaultValue?: string\n}\n\nexport const SkyTextInput = defineComponent<SkyTextInputProps & Partial<InputProps>>({\n name: 'SkyTextInput',\n inheritAttrs: false,\n props: {\n source: {\n type: String,\n required: true,\n },\n label: String,\n rules: Object,\n parser: Function,\n defaultValue: {\n type: String,\n default: '',\n },\n },\n setup(props, { attrs }) {\n // 防止TS类型爆炸!\n const _props = props as unknown as SkyTextInputProps\n const route = useRoute()\n const formGrid = useFormGrid()\n const { formData, editData } = useForm()!\n const routeMeta = route.meta as SkyLayoutRouteMeta\n\n const title = computed(() => _props.label || _props.source)\n\n if (typeof formData[_props.source] === 'undefined') {\n formData[_props.source] = _props.defaultValue!\n }\n\n if (editData.value) {\n formData[_props.source] = editData.value[_props.source]\n }\n\n // 主动调用一次,归一化参数\n if (_props.parser) {\n formData[_props.source] = _props.parser(formData[_props.source])\n }\n\n return () => (\n <SkyCanAccess\n resource={routeMeta.resource}\n action={['create', 'edit']}\n column={_props.source}\n >\n <ElFormItem\n label={title.value}\n prop={_props.source}\n rules={_props.rules}\n style={formGrid ? `grid-area: ${_props.source}` : ''}\n >\n {() =>\n h(ElInput, {\n modelValue: formData[_props.source] ? String(formData[_props.source]) : '',\n 'onUpdate:modelValue': (v) => (formData[_props.source] = v),\n parser: _props.parser,\n ...attrs,\n })\n }\n </ElFormItem>\n </SkyCanAccess>\n )\n },\n})\n"],"names":["SkyTextInput","defineComponent","name","inheritAttrs","props","source","type","required","label","rules","parser","defaultValue","default","attrs","route","useRoute","formGrid","useFormGrid","editData","routeMeta","title","computed","_props","formData","modelValue"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAeA,MAAAA,IAAA,gBAAAC,EAAA;AAAA,EACEC,MAAAA;AAAAA,EACAC,cAAAA;AAAAA,EACAC,OAAAA;AAAAA,IACEC,QAAAA;AAAAA,MACEC,MAAAA;AAAAA,MACAC,UAAAA;AAAAA;IAEFC,OAAAA;AAAAA,IACAC,OAAAA;AAAAA,IACAC,QAAAA;AAAAA,IACAC,cAAAA;AAAAA,MACEL,MAAAA;AAAAA,MACAM,SAAAA;AAAAA,IACF;AAAA;;IAEaC,OAAAA;AAAAA,EAAM,GAAA;iBAGnBC,IAAAC,EAAA,GACAC,IAAAC,EAAA;;MACkBC,UAAAA;AAAAA,aAClBC,IAAAL,EAAA,MAEAM,IAAAC,EAAA,MAAAC,EAAA,SAAAA,EAAA,MAAA;mFAOEC,EAAAA,EAAAA,MAAAA,IAAAA,EAAAA,MAAAA,EAAAA,MAAAA,iBAKAA,EAAAA,EAAAA,MAAAA,IAAAA,EAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA;;MAK8B,QAAA,CAAA,UAAA,MAAA;AAAA,MACF,QAAAD,EAAA;AAAA,IACL,GAAA;AAAA,MAAAV,SAAAA,MAAAA,CAAAA,EAAAA,GAAAA;AAAAA;;;QAKA,OAAAI,IAAA,cAAAM,EAAA,MAAA,KAAA;AAAA,MACiC,GAAA;AAAA,QAAAV,SAAAA,MAAAA,EAAAA,GAAAA;AAAAA,UAIhDY,YAAAA,EAAAA,EAAAA,MAAAA,IAAAA,OAAAA,EAAAA,EAAAA,MAAAA,CAAAA,IAAAA;AAAAA;;;;MAIA,CAAA,CAAA;AAAA;EAKZ;AACF,CAAA;"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("element-plus/es/components/card/style/css");require("element-plus/es/components/col/style/css");require("element-plus/es/components/row/style/css");require("element-plus/es/components/skeleton/style/css");require("element-plus/es/components/tree/style/css");const e=require("vue");require("../../hooks/useUser.cjs");require("../../hooks/usePermission.cjs");require("../../hooks/useMenu.cjs");require("../../hooks/useTab.cjs");require("../../hooks/useRouteKeepAlive.cjs");require("../../hooks/useSize.cjs");require("../../hooks/useLang.cjs");require("../../hooks/useTheme.cjs");require("../../hooks/useList.cjs");require("../../hooks/useHiddenTitle.cjs");require("../../hooks/useForm.cjs");require("../../hooks/useShow.cjs");require("../../hooks/useReferenceArrayField.cjs");const v=require("../../hooks/useTreeWithDetails.cjs");require("../../hooks/useFormGrid.cjs");const g=require("../../hooks/useReferenceArrayInput.cjs"),h=require("../../setup/index.cjs"),m=require("@vueuse/core"),u=require("element-plus"),N=require("vue-router"),S=e.defineComponent({name:"SkyTreeWithDetails",inheritAttrs:!1,props:{create:Object,edit:Object,optionChildren:{type:String,default:"children"},optionName:{type:String,default:"name"},nodeKey:{type:String,default:"id"},size:{type:Number,default:30}},setup(t,{attrs:f}){const l=N.useRoute();let d;const{state:o,isLoading:c,execute:i}=m.useAsyncState(async a=>(d=new AbortController,h.skyConfig.dataProvider?.getList?.(l.meta.resource,{pagination:{page:1,perPage:t.size},filter:a,signal:d.signal})),void 0,{immediate:!0}),y=a=>{r.value===a[t.nodeKey]?r.value=void 0:r.value=a[t.nodeKey]},r=e.ref(),n=e.ref(),s=e.ref(0);v.useProvideTreeWithDetails({createSuccess:async a=>{await i(),s.value++,a.data?.[t.nodeKey]&&(n.value=a.data[t.nodeKey])},editSuccess:async()=>{await i()},deleteSuccess:async()=>{await i(),r.value=void 0,n.value=void 0}}),g.useProvideReferenceArrayInput({reference:l.meta.resource,getList:a=>i(0,a),listData:o,listLoading:c});const q=e.computed(()=>r.value?[r.value]:n.value?[n.value]:[]);return()=>e.createVNode("div",{class:"sky-tree-with-details"},[e.createVNode(u.ElRow,null,{default:()=>[e.createVNode(u.ElCol,{span:8},{default:()=>[e.createVNode(u.ElCard,null,{default:()=>[e.createVNode(u.ElSkeleton,{loading:c.value,animated:!0},{default:()=>[e.createVNode(u.ElTree,e.mergeProps({data:o.value?.data,props:{children:t.optionChildren,label:t.optionName},defaultExpandAll:!1,accordion:!0,expandOnClickNode:!1,nodeKey:t.nodeKey,"onNode-click":y,highlightCurrent:!0,currentNodeKey:r.value,defaultExpandedKeys:q.value},f),null)]})]})]}),e.createVNode(u.ElCol,{offset:1,span:15},{default:()=>[r.value?t.edit?e.h(t.edit,{key:r.value,dataId:r.value}):null:t.create?e.h(t.create,{key:s.value}):null]})]})])}});exports.SkyTreeWithDetails=S;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("element-plus/es/components/card/style/css");require("element-plus/es/components/col/style/css");require("element-plus/es/components/row/style/css");require("element-plus/es/components/skeleton/style/css");require("element-plus/es/components/tree/style/css");const e=require("vue");require("../../hooks/useUser.cjs");require("../../hooks/usePermission.cjs");require("../../hooks/useMenu.cjs");require("../../hooks/useTab.cjs");require("../../hooks/useRouteKeepAlive.cjs");require("../../hooks/useSize.cjs");require("../../hooks/useLang.cjs");require("../../hooks/useTheme.cjs");require("../../hooks/useList.cjs");require("../../hooks/useHiddenTitle.cjs");require("../../hooks/useForm.cjs");require("../../hooks/useShow.cjs");require("../../hooks/useReferenceArrayField.cjs");const h=require("../../hooks/useTreeWithDetails.cjs");require("../../hooks/useFormGrid.cjs");const m=require("../../hooks/useReferenceArrayInput.cjs"),C=require("../../setup/index.cjs"),S=require("@vueuse/core"),n=require("element-plus"),k=require("vue-router"),E=e.defineComponent({name:"SkyTreeWithDetails",inheritAttrs:!1,props:{create:Object,edit:Object,optionChildren:{type:String,default:"children"},optionName:{type:String,default:"name"},nodeKey:{type:String,default:"id"},size:{type:Number,default:30}},setup(t,{attrs:v}){const d=k.useRoute();let o;const{state:s,isLoading:c,execute:i}=S.useAsyncState(async a=>(o=new AbortController,C.skyConfig.dataProvider?.getList?.(d.meta.resource,{pagination:{page:1,perPage:t.size},filter:a,signal:o.signal})),void 0,{immediate:!0}),y=a=>{r.value===a[t.nodeKey]?r.value=void 0:r.value=a[t.nodeKey]},q=a=>{u.value=void 0,l.value=a[t.nodeKey]},g=()=>{l.value=void 0},r=e.ref(),u=e.ref(),l=e.ref(),f=e.ref(0);h.useProvideTreeWithDetails({createSuccess:async a=>{await i(),f.value++,a.data?.[t.nodeKey]&&(u.value=a.data[t.nodeKey])},editSuccess:async()=>{await i()},deleteSuccess:async()=>{await i(),r.value===u.value&&(u.value=void 0),r.value=void 0}}),m.useProvideReferenceArrayInput({reference:d.meta.resource,getList:a=>i(0,a),listData:s,listLoading:c});const N=e.computed(()=>r.value?[r.value]:u.value?[u.value]:l.value?[l.value]:[]);return()=>e.createVNode("div",{class:"sky-tree-with-details"},[e.createVNode(n.ElRow,null,{default:()=>[e.createVNode(n.ElCol,{span:8},{default:()=>[e.createVNode(n.ElCard,null,{default:()=>[e.createVNode(n.ElSkeleton,{loading:c.value,animated:!0},{default:()=>[e.createVNode(n.ElTree,e.mergeProps({data:s.value?.data,props:{children:t.optionChildren,label:t.optionName},defaultExpandAll:!1,accordion:!0,expandOnClickNode:!1,nodeKey:t.nodeKey,"onNode-click":y,"onNode-expand":q,"onNode-collapse":g,highlightCurrent:!0,currentNodeKey:r.value,defaultExpandedKeys:N.value},v),null)]})]})]}),e.createVNode(n.ElCol,{offset:1,span:15},{default:()=>[r.value?t.edit?e.h(t.edit,{key:r.value,dataId:r.value}):null:t.create?e.h(t.create,{key:f.value}):null]})]})])}});exports.SkyTreeWithDetails=E;
2
2
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.cjs","sources":["../../../src/components/tree-with-details/index.tsx"],"sourcesContent":["import { useProvideReferenceArrayInput, useProvideTreeWithDetails } from '@/hooks'\nimport type { CreateResult, GetListResult, Identifier } from '@/provides'\nimport { skyConfig, type SkyComponent } from '@/setup'\nimport { useAsyncState } from '@vueuse/core'\nimport { ElCard, ElCol, ElRow, ElSkeleton, ElTree } from 'element-plus'\nimport { computed, defineComponent, h, ref } from 'vue'\nimport { useRoute } from 'vue-router'\n\nexport interface SkyTreeWithDetailsProps {\n create?: SkyComponent\n edit?: SkyComponent\n optionChildren?: string\n optionName?: string\n nodeKey?: string\n size?: number\n}\n\nexport const SkyTreeWithDetails = defineComponent<SkyTreeWithDetailsProps>({\n name: 'SkyTreeWithDetails',\n inheritAttrs: false,\n props: {\n create: Object,\n edit: Object,\n optionChildren: {\n type: String,\n default: 'children',\n },\n optionName: {\n type: String,\n default: 'name',\n },\n nodeKey: {\n type: String,\n default: 'id',\n },\n size: {\n type: Number,\n default: 30,\n },\n },\n setup(props, { attrs }) {\n const route = useRoute()\n\n let controller: AbortController | undefined\n const { state, isLoading, execute } = useAsyncState<\n GetListResult | undefined,\n [filter?: Record<string, unknown>]\n >(\n async (filter) => {\n controller = new AbortController()\n return skyConfig.dataProvider?.getList?.(route.meta.resource as string, {\n pagination: { page: 1, perPage: props.size! },\n filter,\n signal: controller.signal,\n })\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n const onNodeClick = (node: Record<string, unknown>) => {\n if (editId.value === node[props.nodeKey!]) {\n // 再次点击选中的节点,退出编辑\n editId.value = undefined\n } else {\n editId.value = node[props.nodeKey!] as Identifier\n }\n }\n\n const editId = ref<Identifier>()\n const lastCreateId = ref<Identifier>()\n const createNum = ref(0)\n\n useProvideTreeWithDetails({\n createSuccess: async (result: CreateResult) => {\n await execute()\n createNum.value++\n if (result.data?.[props.nodeKey!]) {\n lastCreateId.value = result.data[props.nodeKey!] as Identifier\n }\n },\n editSuccess: async () => {\n await execute()\n },\n deleteSuccess: async () => {\n await execute()\n editId.value = undefined\n lastCreateId.value = undefined\n },\n })\n\n // 自动注入一次关联数据\n useProvideReferenceArrayInput({\n reference: route.meta.resource as string,\n getList: (filter?: Record<string, unknown>) => execute(0, filter),\n listData: state,\n listLoading: isLoading,\n })\n\n const defaultExpandedKeys = computed(() => {\n if (editId.value) {\n return [editId.value]\n } else if (lastCreateId.value) {\n return [lastCreateId.value]\n }\n return []\n })\n\n return () => (\n <div class=\"sky-tree-with-details\">\n <ElRow>\n <ElCol span={8}>\n <ElCard>\n <ElSkeleton loading={isLoading.value} animated>\n <ElTree\n data={state.value?.data}\n props={{ children: props.optionChildren, label: props.optionName }}\n defaultExpandAll={false}\n accordion={true}\n expandOnClickNode={false}\n nodeKey={props.nodeKey}\n onNode-click={onNodeClick}\n highlightCurrent\n currentNodeKey={editId.value}\n defaultExpandedKeys={defaultExpandedKeys.value}\n {...attrs}\n ></ElTree>\n </ElSkeleton>\n </ElCard>\n </ElCol>\n <ElCol offset={1} span={15}>\n {editId.value\n ? props.edit\n ? h(props.edit, { key: editId.value, dataId: editId.value })\n : null\n : props.create\n ? h(props.create, { key: createNum.value })\n : null}\n </ElCol>\n </ElRow>\n </div>\n )\n },\n})\n"],"names":["SkyTreeWithDetails","defineComponent","name","inheritAttrs","props","create","edit","optionChildren","type","default","optionName","nodeKey","size","attrs","route","useRoute","controller","execute","useAsyncState","filter","pagination","page","immediate","editId","ref","lastCreateId","createNum","useProvideTreeWithDetails","useProvideReferenceArrayInput","reference","listData","listLoading","defaultExpandedKeys","computed","_createVNode","state","onNodeClick","h"],"mappings":"qmCAiBAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,qBACAC,aAAAA,GACAC,MAAAA,CACEC,OAAAA,OACAC,KAAAA,OACAC,eAAAA,CACEC,KAAAA,OACAC,QAAAA,YAEFC,WAAAA,CACEF,KAAAA,OACAC,QAAAA,QAEFE,QAAAA,CACEH,KAAAA,OACAC,QAAAA,MAEFG,KAAAA,CACEJ,KAAAA,OACAC,QAAAA,EACF,YAEaI,MAAAA,CAAM,EAAA,CACnB,MAAAC,EAAAC,EAAAA,SAAA,EAEA,IAAAC,4BAC0BC,QAAAA,CAAQ,EAAAC,EAAAA,cAAA,MAAAC,IAK9BH,EAAAA,IAAAA,qEAEEI,WAAAA,CAAcC,KAAAA,0CAGhB,CAAA,WAIAC,UAAAA,EACF,CAAA,oEAYFC,EAAAC,EAAAA,IAAA,EACAC,EAAAD,EAAAA,IAAA,EACAE,EAAAF,EAAAA,IAAA,CAAA,EAEAG,4BAAAA,+LAeE,CACF,CAAA,EAGAC,gCAAAA,CACEC,UAAAA,EAAAA,KAAAA,2BAEAC,SAAAA,EACAC,YAAAA,CACF,CAAA,EAEA,MAAAC,EAAAC,EAAAA,SAAA,YAEI,CAAAV,EAAA,KAAA,EACFE,EAAA,MACE,CAAAA,EAAA,KAAA,EAEF,CAAA,CACF,EAEA,MAAA,IAAAS,EAAAA,YAAA,MAAA,CAAO,MAAA,sDAAAzB,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,QAAAA,OAGa,EAAA,CAAAA,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,OAAAA,KAAAA,CAAAA,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,aAAAA,iBAE0B,SAAA,EAAA,EAAA,CAAAA,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,OAAAA,EAAAA,WAAAA,CAAA,KAAA0B,EAAA,OAAA,0DAGkC,iBAAA,GAC3C,UAAA,GACR,kBAAA,qBAEO,eAAAC,EACG,iBAAA,0BAEG,oBAAAJ,EAAA,KACkB,EAAAnB,CAAA,EAAA,IAAA,CAAA,CACrC,CAAA,CAAA,CAAA,CAAA,CAAA,2BAAA,OAAA,SAKS,EAAA,CAAAJ,QAAAA,IAAAA,CAAAA,EAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAAA,EAAAA,KAAAA,2BAGsC,CAAA,EAAA,KAAAL,EAAA,OAAAiC,EAAAA,EAAAjC,EAAA,OAAA,oBAIpD,CAAA,CAAA,KAKpB,CACF,CAAA"}
1
+ {"version":3,"file":"index.cjs","sources":["../../../src/components/tree-with-details/index.tsx"],"sourcesContent":["import { useProvideReferenceArrayInput, useProvideTreeWithDetails } from '@/hooks'\nimport type { CreateResult, GetListResult, Identifier } from '@/provides'\nimport { skyConfig, type SkyComponent } from '@/setup'\nimport { useAsyncState } from '@vueuse/core'\nimport { ElCard, ElCol, ElRow, ElSkeleton, ElTree } from 'element-plus'\nimport { computed, defineComponent, h, ref } from 'vue'\nimport { useRoute } from 'vue-router'\n\nexport interface SkyTreeWithDetailsProps {\n create?: SkyComponent\n edit?: SkyComponent\n optionChildren?: string\n optionName?: string\n nodeKey?: string\n size?: number\n}\n\nexport const SkyTreeWithDetails = defineComponent<SkyTreeWithDetailsProps>({\n name: 'SkyTreeWithDetails',\n inheritAttrs: false,\n props: {\n create: Object,\n edit: Object,\n optionChildren: {\n type: String,\n default: 'children',\n },\n optionName: {\n type: String,\n default: 'name',\n },\n nodeKey: {\n type: String,\n default: 'id',\n },\n size: {\n type: Number,\n default: 30,\n },\n },\n setup(props, { attrs }) {\n const route = useRoute()\n\n let controller: AbortController | undefined\n const { state, isLoading, execute } = useAsyncState<\n GetListResult | undefined,\n [filter?: Record<string, unknown>]\n >(\n async (filter) => {\n controller = new AbortController()\n return skyConfig.dataProvider?.getList?.(route.meta.resource as string, {\n pagination: { page: 1, perPage: props.size! },\n filter,\n signal: controller.signal,\n })\n },\n undefined,\n {\n immediate: true,\n },\n )\n\n const onNodeClick = (node: Record<string, unknown>) => {\n if (editId.value === node[props.nodeKey!]) {\n // 再次点击选中的节点,退出编辑\n editId.value = undefined\n } else {\n editId.value = node[props.nodeKey!] as Identifier\n }\n }\n\n const onNodeExpand = (node: Record<string, unknown>) => {\n // 以最新的展开为准,取消创建时候的展开效果\n lastCreateId.value = undefined\n lastExpandId.value = node[props.nodeKey!] as Identifier\n }\n\n const onNodeCollapse = () => {\n lastExpandId.value = undefined\n }\n\n const editId = ref<Identifier>()\n const lastCreateId = ref<Identifier>()\n const lastExpandId = ref<Identifier>()\n const createNum = ref(0)\n\n useProvideTreeWithDetails({\n createSuccess: async (result: CreateResult) => {\n await execute()\n createNum.value++\n if (result.data?.[props.nodeKey!]) {\n lastCreateId.value = result.data[props.nodeKey!] as Identifier\n }\n },\n editSuccess: async () => {\n await execute()\n },\n deleteSuccess: async () => {\n await execute()\n if (editId.value === lastCreateId.value) {\n lastCreateId.value = undefined\n }\n editId.value = undefined\n },\n })\n\n // 自动注入一次关联数据\n useProvideReferenceArrayInput({\n reference: route.meta.resource as string,\n getList: (filter?: Record<string, unknown>) => execute(0, filter),\n listData: state,\n listLoading: isLoading,\n })\n\n const defaultExpandedKeys = computed(() => {\n if (editId.value) {\n return [editId.value]\n } else if (lastCreateId.value) {\n return [lastCreateId.value]\n } else if (lastExpandId.value) {\n return [lastExpandId.value]\n }\n return []\n })\n\n return () => (\n <div class=\"sky-tree-with-details\">\n <ElRow>\n <ElCol span={8}>\n <ElCard>\n <ElSkeleton loading={isLoading.value} animated>\n <ElTree\n data={state.value?.data}\n props={{ children: props.optionChildren, label: props.optionName }}\n defaultExpandAll={false}\n accordion={true}\n expandOnClickNode={false}\n nodeKey={props.nodeKey}\n onNode-click={onNodeClick}\n onNode-expand={onNodeExpand}\n onNode-collapse={onNodeCollapse}\n highlightCurrent\n currentNodeKey={editId.value}\n defaultExpandedKeys={defaultExpandedKeys.value}\n {...attrs}\n ></ElTree>\n </ElSkeleton>\n </ElCard>\n </ElCol>\n <ElCol offset={1} span={15}>\n {editId.value\n ? props.edit\n ? h(props.edit, { key: editId.value, dataId: editId.value })\n : null\n : props.create\n ? h(props.create, { key: createNum.value })\n : null}\n </ElCol>\n </ElRow>\n </div>\n )\n },\n})\n"],"names":["SkyTreeWithDetails","defineComponent","name","inheritAttrs","props","create","edit","optionChildren","type","default","optionName","nodeKey","size","attrs","route","useRoute","controller","execute","useAsyncState","filter","pagination","page","immediate","editId","ref","lastCreateId","lastExpandId","createNum","useProvideTreeWithDetails","useProvideReferenceArrayInput","reference","listData","listLoading","defaultExpandedKeys","computed","_createVNode","state","onNodeClick","onNodeExpand","onNodeCollapse","h"],"mappings":"qmCAiBAA,EAAAC,EAAAA,gBAAA,CACEC,KAAAA,qBACAC,aAAAA,GACAC,MAAAA,CACEC,OAAAA,OACAC,KAAAA,OACAC,eAAAA,CACEC,KAAAA,OACAC,QAAAA,YAEFC,WAAAA,CACEF,KAAAA,OACAC,QAAAA,QAEFE,QAAAA,CACEH,KAAAA,OACAC,QAAAA,MAEFG,KAAAA,CACEJ,KAAAA,OACAC,QAAAA,EACF,YAEaI,MAAAA,CAAM,EAAA,CACnB,MAAAC,EAAAC,EAAAA,SAAA,EAEA,IAAAC,4BAC0BC,QAAAA,CAAQ,EAAAC,EAAAA,cAAA,MAAAC,IAK9BH,EAAAA,IAAAA,qEAEEI,WAAAA,CAAcC,KAAAA,0CAGhB,CAAA,WAIAC,UAAAA,EACF,CAAA,sIAsBFC,EAAAC,EAAAA,IAAA,EACAC,EAAAD,EAAAA,IAAA,EACAE,EAAAF,EAAAA,IAAA,EACAG,EAAAH,EAAAA,IAAA,CAAA,EAEAI,4BAAAA,kKAaIL,EAAA,QAAAE,EAAA,sCAIF,CACF,CAAA,EAGAI,gCAAAA,CACEC,UAAAA,EAAAA,KAAAA,2BAEAC,SAAAA,EACAC,YAAAA,CACF,CAAA,EAEA,MAAAC,EAAAC,EAAAA,SAAA,YAEI,CAAAX,EAAA,KAAA,EACFE,EAAA,MACE,CAAAA,EAAA,KAAA,EACFC,EAAA,MACE,CAAAA,EAAA,KAAA,EAEF,CAAA,CACF,EAEA,MAAA,IAAAS,EAAAA,YAAA,MAAA,CAAO,MAAA,sDAAA1B,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,QAAAA,OAGa,EAAA,CAAAA,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,OAAAA,KAAAA,CAAAA,QAAAA,IAAAA,CAAAA,EAAAA,YAAAA,aAAAA,iBAE0B,SAAA,EAAA,EAAA,CAAAA,QAAAA,IAAAA,CAAAA,cAAAA,EAAAA,OAAAA,EAAAA,WAAAA,CAAA,KAAA2B,EAAA,OAAA,0DAGkC,iBAAA,GAC3C,UAAA,GACR,kBAAA,qBAEO,eAAAC,EACG,gBAAAC,EACE,kBAAAC,EACI,iBAAA,0BAEH,oBAAAN,EAAA,KACkB,EAAApB,CAAA,EAAA,IAAA,CAAA,CACrC,CAAA,CAAA,CAAA,CAAA,CAAA,2BAAA,OAAA,SAKS,EAAA,CAAAJ,QAAAA,IAAAA,CAAAA,EAAAA,MAAAA,EAAAA,KAAAA,EAAAA,EAAAA,EAAAA,KAAAA,2BAGsC,CAAA,EAAA,KAAAL,EAAA,OAAAoC,EAAAA,EAAApC,EAAA,OAAA,oBAIpD,CAAA,CAAA,KAKpB,CACF,CAAA"}
@@ -3,7 +3,7 @@ import "element-plus/es/components/col/style/css";
3
3
  import "element-plus/es/components/row/style/css";
4
4
  import "element-plus/es/components/skeleton/style/css";
5
5
  import "element-plus/es/components/tree/style/css";
6
- import { defineComponent as g, ref as l, computed as h, createVNode as i, mergeProps as C, h as c } from "vue";
6
+ import { defineComponent as C, ref as r, computed as K, createVNode as n, mergeProps as k, h as f } from "vue";
7
7
  import "../../hooks/useUser.mjs";
8
8
  import "../../hooks/usePermission.mjs";
9
9
  import "../../hooks/useMenu.mjs";
@@ -17,14 +17,14 @@ import "../../hooks/useHiddenTitle.mjs";
17
17
  import "../../hooks/useForm.mjs";
18
18
  import "../../hooks/useShow.mjs";
19
19
  import "../../hooks/useReferenceArrayField.mjs";
20
- import { useProvideTreeWithDetails as k } from "../../hooks/useTreeWithDetails.mjs";
20
+ import { useProvideTreeWithDetails as E } from "../../hooks/useTreeWithDetails.mjs";
21
21
  import "../../hooks/useFormGrid.mjs";
22
- import { useProvideReferenceArrayInput as K } from "../../hooks/useReferenceArrayInput.mjs";
23
- import { skyConfig as S } from "../../setup/index.mjs";
24
- import { useAsyncState as N } from "@vueuse/core";
25
- import { ElRow as E, ElCol as f, ElCard as w, ElSkeleton as x, ElTree as b } from "element-plus";
26
- import { useRoute as A } from "vue-router";
27
- const te = /* @__PURE__ */ g({
22
+ import { useProvideReferenceArrayInput as S } from "../../hooks/useReferenceArrayInput.mjs";
23
+ import { skyConfig as x } from "../../setup/index.mjs";
24
+ import { useAsyncState as w } from "@vueuse/core";
25
+ import { ElRow as b, ElCol as p, ElCard as A, ElSkeleton as I, ElTree as P } from "element-plus";
26
+ import { useRoute as D } from "vue-router";
27
+ const ie = /* @__PURE__ */ C({
28
28
  name: "SkyTreeWithDetails",
29
29
  inheritAttrs: !1,
30
30
  props: {
@@ -48,56 +48,60 @@ const te = /* @__PURE__ */ g({
48
48
  }
49
49
  },
50
50
  setup(e, {
51
- attrs: p
51
+ attrs: v
52
52
  }) {
53
- const o = A();
54
- let d;
53
+ const d = D();
54
+ let u;
55
55
  const {
56
- state: u,
57
- isLoading: m,
58
- execute: r
59
- } = N(async (a) => (d = new AbortController(), S.dataProvider?.getList?.(o.meta.resource, {
56
+ state: s,
57
+ isLoading: c,
58
+ execute: l
59
+ } = w(async (a) => (u = new AbortController(), x.dataProvider?.getList?.(d.meta.resource, {
60
60
  pagination: {
61
61
  page: 1,
62
62
  perPage: e.size
63
63
  },
64
64
  filter: a,
65
- signal: d.signal
65
+ signal: u.signal
66
66
  })), void 0, {
67
67
  immediate: !0
68
68
  }), y = (a) => {
69
69
  t.value === a[e.nodeKey] ? t.value = void 0 : t.value = a[e.nodeKey];
70
- }, t = l(), n = l(), s = l(0);
71
- k({
70
+ }, g = (a) => {
71
+ i.value = void 0, o.value = a[e.nodeKey];
72
+ }, h = () => {
73
+ o.value = void 0;
74
+ }, t = r(), i = r(), o = r(), m = r(0);
75
+ E({
72
76
  createSuccess: async (a) => {
73
- await r(), s.value++, a.data?.[e.nodeKey] && (n.value = a.data[e.nodeKey]);
77
+ await l(), m.value++, a.data?.[e.nodeKey] && (i.value = a.data[e.nodeKey]);
74
78
  },
75
79
  editSuccess: async () => {
76
- await r();
80
+ await l();
77
81
  },
78
82
  deleteSuccess: async () => {
79
- await r(), t.value = void 0, n.value = void 0;
83
+ await l(), t.value === i.value && (i.value = void 0), t.value = void 0;
80
84
  }
81
- }), K({
82
- reference: o.meta.resource,
83
- getList: (a) => r(0, a),
84
- listData: u,
85
- listLoading: m
85
+ }), S({
86
+ reference: d.meta.resource,
87
+ getList: (a) => l(0, a),
88
+ listData: s,
89
+ listLoading: c
86
90
  });
87
- const v = h(() => t.value ? [t.value] : n.value ? [n.value] : []);
88
- return () => i("div", {
91
+ const N = K(() => t.value ? [t.value] : i.value ? [i.value] : o.value ? [o.value] : []);
92
+ return () => n("div", {
89
93
  class: "sky-tree-with-details"
90
- }, [i(E, null, {
91
- default: () => [i(f, {
94
+ }, [n(b, null, {
95
+ default: () => [n(p, {
92
96
  span: 8
93
97
  }, {
94
- default: () => [i(w, null, {
95
- default: () => [i(x, {
96
- loading: m.value,
98
+ default: () => [n(A, null, {
99
+ default: () => [n(I, {
100
+ loading: c.value,
97
101
  animated: !0
98
102
  }, {
99
- default: () => [i(b, C({
100
- data: u.value?.data,
103
+ default: () => [n(P, k({
104
+ data: s.value?.data,
101
105
  props: {
102
106
  children: e.optionChildren,
103
107
  label: e.optionName
@@ -107,27 +111,29 @@ const te = /* @__PURE__ */ g({
107
111
  expandOnClickNode: !1,
108
112
  nodeKey: e.nodeKey,
109
113
  "onNode-click": y,
114
+ "onNode-expand": g,
115
+ "onNode-collapse": h,
110
116
  highlightCurrent: !0,
111
117
  currentNodeKey: t.value,
112
- defaultExpandedKeys: v.value
113
- }, p), null)]
118
+ defaultExpandedKeys: N.value
119
+ }, v), null)]
114
120
  })]
115
121
  })]
116
- }), i(f, {
122
+ }), n(p, {
117
123
  offset: 1,
118
124
  span: 15
119
125
  }, {
120
- default: () => [t.value ? e.edit ? c(e.edit, {
126
+ default: () => [t.value ? e.edit ? f(e.edit, {
121
127
  key: t.value,
122
128
  dataId: t.value
123
- }) : null : e.create ? c(e.create, {
124
- key: s.value
129
+ }) : null : e.create ? f(e.create, {
130
+ key: m.value
125
131
  }) : null]
126
132
  })]
127
133
  })]);
128
134
  }
129
135
  });
130
136
  export {
131
- te as SkyTreeWithDetails
137
+ ie as SkyTreeWithDetails
132
138
  };
133
139
  //# sourceMappingURL=index.mjs.map