@gct-paas/render 0.1.6-dev.4 → 0.1.6-dev.41

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.
@@ -5,3 +5,4 @@ export * from './Dependency/useDependencyToShow';
5
5
  export * from './Dependency/useDependency';
6
6
  export * from './Dependency/controller';
7
7
  export * from './Dependency/displayRule';
8
+ export { GlobaAppInfo } from './utils/appRedis';
@@ -1,3 +1,4 @@
1
+ import "./utils/appRedis.mjs";
1
2
  import "./utils/runGlobalByPage.mjs";
2
3
  import "./baseEvent.mjs";
3
4
  import "./eventType.mjs";
@@ -37,4 +37,4 @@ var useCreateAppredis = ({ value: defaultValue, appredis, key: varKey, type }) =
37
37
  });
38
38
  };
39
39
  //#endregion
40
- export { useCreateAppredis };
40
+ export { GlobaAppInfo, useCreateAppredis };
@@ -125,6 +125,9 @@ export declare const pageDataforJson: import('vue').Ref<{
125
125
  title?: string | undefined;
126
126
  } | undefined;
127
127
  hasFooter?: boolean | undefined;
128
+ unitType?: "px" | "%" | undefined;
129
+ pageWidth?: number | undefined;
130
+ independentDetailPage?: boolean | undefined;
128
131
  } | undefined;
129
132
  pageName?: string | undefined;
130
133
  }, {
@@ -238,6 +241,9 @@ export declare const pageDataforJson: import('vue').Ref<{
238
241
  title?: string | undefined;
239
242
  } | undefined;
240
243
  hasFooter?: boolean | undefined;
244
+ unitType?: "px" | "%" | undefined;
245
+ pageWidth?: number | undefined;
246
+ independentDetailPage?: boolean | undefined;
241
247
  } | undefined;
242
248
  pageName?: string | undefined;
243
249
  } | {
@@ -322,6 +328,11 @@ export declare class Globals {
322
328
  data: RuntimePageJson;
323
329
  name: string | undefined;
324
330
  }>;
331
+ static initTxnPageByid(id: string, isDetail?: boolean): Promise<{
332
+ res: import('@gct-paas/api/apaas').TransactionResponse;
333
+ data: RuntimePageJson;
334
+ name: string | undefined;
335
+ }>;
325
336
  static initHistoryByid(id: string): Promise<{
326
337
  res: import('@gct-paas/api/apaas').PageDesignerLogResponse;
327
338
  data: any;
@@ -14,9 +14,15 @@ var PageTypeEnum = /* @__PURE__ */ function(PageTypeEnum) {
14
14
  return PageTypeEnum;
15
15
  }({});
16
16
  var getPageApiByMap = {
17
- [PageTypeEnum.WEB]: { getPageInfo: _gct.api.apaas.webpage.getInfo },
17
+ [PageTypeEnum.WEB]: {
18
+ getPageInfo: _gct.api.apaas.webpage.getInfo,
19
+ getTxnPageInfo: _gct.api.apaas.transaction.getGetVersionById
20
+ },
18
21
  [PageTypeEnum.MOBILE]: { getPageInfo: _gct.api.apaas.mobilePage.getInfo },
19
- [PageTypeEnum.PAD]: { getPageInfo: _gct.api.apaas.padPage.getInfo }
22
+ [PageTypeEnum.PAD]: {
23
+ getPageInfo: _gct.api.apaas.padPage.getInfo,
24
+ getTxnPageInfo: _gct.api.apaas.transaction.getGetVersionById
25
+ }
20
26
  };
21
27
  var pageGlobaVariables = ref({});
22
28
  /**app全局变量 */
@@ -235,6 +241,25 @@ var Globals = class Globals {
235
241
  name
236
242
  };
237
243
  }
244
+ static async initTxnPageByid(id, isDetail = false) {
245
+ this.pageID = id;
246
+ const getJSon = getPageApiByMap[PageTypeEnum.WEB].getTxnPageInfo;
247
+ const res = await getJSon({ id });
248
+ const { runtimeJson: createJson, detailRuntimeJson: detailJson, name } = res || {};
249
+ const runtimeJson = isDetail ? detailJson : createJson;
250
+ pageDataforJson.value.pageName = name;
251
+ if (!runtimeJson) return Promise.reject();
252
+ const data = JSON.parse(runtimeJson);
253
+ if (!data.widgets.filter((item) => item.type !== "bottom-button-container").length) return Promise.reject();
254
+ await this.initGlobalS(data);
255
+ pageDataforJson.value.pageConfig = data.pageConfig || {};
256
+ pageDataforJson.value.pageStyle = data.pageStyle || {};
257
+ return {
258
+ res,
259
+ data,
260
+ name
261
+ };
262
+ }
238
263
  static async initHistoryByid(id) {
239
264
  this.pageID = id;
240
265
  const res = await _gct.api.apaas.pageDesignerLog.getInfo({ id });
@@ -1,3 +1,2 @@
1
- export { CardViewRender } from './card-view-render/card-view-render';
2
1
  export { DesignRender } from './design-render/design-render';
3
2
  export { default as HandwritingPad } from './HandwritingPad.vue';
@@ -1,3 +1,2 @@
1
1
  import "./design-render/design-render.mjs";
2
- import "./card-view-render/card-view-render.mjs";
3
2
  import "./HandwritingPad.vue.mjs";
@@ -1,6 +1,7 @@
1
1
  import { DesignRenderBaseState } from "../../state/design-render-base/design-render-base.state.mjs";
2
2
  //#region src/controller/design-render-base/design-render-base.controller.ts
3
3
  var DesignRenderBaseController = class {
4
+ model;
4
5
  state = new DesignRenderBaseState();
5
6
  constructor(model) {
6
7
  this.model = model;
package/es/index.d.ts CHANGED
@@ -8,4 +8,5 @@ export * from './providers';
8
8
  export * from './register';
9
9
  export * from './utils';
10
10
  export * from './modules/vue3-dnd';
11
+ export { renderSetupApp } from './setup-app';
11
12
  export declare function onInit(): void;
package/es/index.mjs CHANGED
@@ -10,9 +10,9 @@ import { FieldSchema, initFieldWidgetRuntime } from "./utils/getFieldSchema.mjs"
10
10
  import { useAsyncFileAttrs } from "./hooks/widgets/useFileAttrsHooks.mjs";
11
11
  import "./hooks/index.mjs";
12
12
  import { DesignRender } from "./components/design-render/design-render.mjs";
13
- import { CardViewRender } from "./components/card-view-render/card-view-render.mjs";
14
13
  import HandwritingPad_default from "./components/HandwritingPad.vue.mjs";
15
14
  import "./components/index.mjs";
15
+ import { GlobaAppInfo } from "./Event/utils/appRedis.mjs";
16
16
  import { Globals, PageTypeEnum, formMap, getPageTitle, getPremission, globalVarCaches, pageDataforJson, pageGlobaVariables, setFormData } from "./Event/utils/runGlobalByPage.mjs";
17
17
  import { RenderDesignEditor } from "./providers/render-design-editor/render-design-editor.provider.mjs";
18
18
  import "./providers/index.mjs";
@@ -40,10 +40,17 @@ import { containerNodeProps, nodeEditorProps, nodeProps } from "./props/index.mj
40
40
  import { Vue3DndDraggableItem } from "./modules/vue3-dnd/components/vue3-dnd-draggable-item/vue3-dnd-draggable-item.mjs";
41
41
  import { Vue3DndDraggable } from "./modules/vue3-dnd/components/vue3-dnd-draggable/vue3-dnd-draggable.mjs";
42
42
  import "./modules/vue3-dnd/index.mjs";
43
+ import { renderSetupApp } from "./setup-app.mjs";
43
44
  //#region src/index.ts
44
45
  function onInit() {
45
46
  if (!_gct.register.render) _gct.register.render = new RenderRegister();
46
47
  else console.warn("渲染注册已存在,可能存在重复注册问题,请检查是否有重复引入渲染包的情况");
48
+ if (!window._kit) Object.defineProperty(window, "_kit", {
49
+ value: {},
50
+ writable: false,
51
+ configurable: false
52
+ });
47
53
  }
54
+ onInit();
48
55
  //#endregion
49
- export { CardViewRender, Context, ControllerType, DESIGN_DATA_KEY_TAG, DESIGN_TYPE, DateFormat, DateRangeMap, DatepickerRanges, DesignItemAttribute, DesignNodeType, DesignRender, DesignRenderViewPrefix, Events, FieldSchema, GctComponent, Globals, HandwritingPad_default as HandwritingPad, PageTypeEnum, RenderDesignEditor, RenderNodeRegister, RenderNodeType, RenderPluginPgkUtil, RenderRegister, Vue3DndDraggable, Vue3DndDraggableItem, addDataByForm, cacheAdapter, calculate, calculateDepResult, containerNodeProps, defaultValMap, dependencyToShow, dependencyToShowSync, emptyValueDisplay, formMap, getDefaultDate, getDisabledDate, getIExp, getIKeywordFieldKeys, getMobileDateRange, getPageTitle, getPremission, getQueryDateByKeyWord, getQuerySort, getRefInfoId, globalVarCaches, identify, initFieldWidgetRuntime, insetDep, is, isArray, isBoolean, isDate, isDef, isElement, isEmpty, isEmptyStr, isFunction, isMap, isNull, isNullAndUnDef, isNullOrUnDef, isNumber, isObject, isPromise, isRegExp, isString, isUnDef, isUrl, isWindow, nodeEditorProps, nodeProps, onInit, pageDataforJson, pageGlobaVariables, schemaToStyle, setDataByForm, setFormData, tableWidgetByDept, tableWidgetToShow, transSelectData, transformData, transformDataToDict, transformPropsField, transformSourceData, useAsyncFileAttrs, useDependency, useDependencyByRequired, useDependencyToShow, useDependencyToShowList, useDesignRenderController, useDisplayRuleColumnByStyles, useDisplayRuleOptions, useGctSelect, useGetBodyBySearch, useQueryfilter, useStyle, useVisibileByRuleHook, widthRenderDesignEditorInstall };
56
+ export { Context, ControllerType, DESIGN_DATA_KEY_TAG, DESIGN_TYPE, DateFormat, DateRangeMap, DatepickerRanges, DesignItemAttribute, DesignNodeType, DesignRender, DesignRenderViewPrefix, Events, FieldSchema, GctComponent, GlobaAppInfo, Globals, HandwritingPad_default as HandwritingPad, PageTypeEnum, RenderDesignEditor, RenderNodeRegister, RenderNodeType, RenderPluginPgkUtil, RenderRegister, Vue3DndDraggable, Vue3DndDraggableItem, addDataByForm, cacheAdapter, calculate, calculateDepResult, containerNodeProps, defaultValMap, dependencyToShow, dependencyToShowSync, emptyValueDisplay, formMap, getDefaultDate, getDisabledDate, getIExp, getIKeywordFieldKeys, getMobileDateRange, getPageTitle, getPremission, getQueryDateByKeyWord, getQuerySort, getRefInfoId, globalVarCaches, identify, initFieldWidgetRuntime, insetDep, is, isArray, isBoolean, isDate, isDef, isElement, isEmpty, isEmptyStr, isFunction, isMap, isNull, isNullAndUnDef, isNullOrUnDef, isNumber, isObject, isPromise, isRegExp, isString, isUnDef, isUrl, isWindow, nodeEditorProps, nodeProps, onInit, pageDataforJson, pageGlobaVariables, renderSetupApp, schemaToStyle, setDataByForm, setFormData, tableWidgetByDept, tableWidgetToShow, transSelectData, transformData, transformDataToDict, transformPropsField, transformSourceData, useAsyncFileAttrs, useDependency, useDependencyByRequired, useDependencyToShow, useDependencyToShowList, useDesignRenderController, useDisplayRuleColumnByStyles, useDisplayRuleOptions, useGctSelect, useGetBodyBySearch, useQueryfilter, useStyle, useVisibileByRuleHook, widthRenderDesignEditorInstall };
@@ -0,0 +1,2 @@
1
+ /** 注册 render 包的 locale 多语言资源 */
2
+ export declare function registerRenderLocale(): void;
@@ -0,0 +1,13 @@
1
+ import { process_exports } from "./sys/process.mjs";
2
+ import { sys_exports } from "./sys.mjs";
3
+ //#region src/locale/auto-register.ts
4
+ var localeModules = /* @__PURE__ */ Object.assign({
5
+ "./sys/process.ts": process_exports,
6
+ "./sys.ts": sys_exports
7
+ });
8
+ /** 注册 render 包的 locale 多语言资源 */
9
+ function registerRenderLocale() {
10
+ _gct.i18nUtil.autoRegisterLocale(localeModules);
11
+ }
12
+ //#endregion
13
+ export { registerRenderLocale };
@@ -0,0 +1,10 @@
1
+ import { __exportAll } from "../../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys/process.ts
3
+ var process_exports = /* @__PURE__ */ __exportAll({ default: () => process_default });
4
+ var process_default = {
5
+ pleaseInitiateTheProcessFirst: "未找到流程数据,请先发起流程",
6
+ processInstanceMismatch: "流程实例不匹配!",
7
+ element: { approval: "审批" }
8
+ };
9
+ //#endregion
10
+ export { process_exports };
@@ -0,0 +1,6 @@
1
+ import { __exportAll } from "../_virtual/_rolldown/runtime.mjs";
2
+ //#region src/locale/sys.ts
3
+ var sys_exports = /* @__PURE__ */ __exportAll({ default: () => sys_default });
4
+ var sys_default = { success: "成功" };
5
+ //#endregion
6
+ export { sys_exports };
@@ -40,6 +40,7 @@ var RenderNodeRegister = class {
40
40
  */
41
41
  static register(name, provider, prefix) {
42
42
  const tag = prefix ? `${prefix}:${name}` : name;
43
+ if (this.map.has(tag)) console.warn(`重复注册组件提供者,标识: ${tag},覆盖之前的提供者`);
43
44
  this.map.set(tag, provider);
44
45
  }
45
46
  /**
@@ -61,6 +62,7 @@ var RenderNodeRegister = class {
61
62
  this.cache.set(tag, ins);
62
63
  return ins;
63
64
  }
65
+ console.warn(`未找到组件提供者,标识: ${tag}`);
64
66
  return null;
65
67
  }
66
68
  /**
@@ -28,6 +28,7 @@ var RenderRegister = class {
28
28
  */
29
29
  register(tag, com, prefix) {
30
30
  const fullTag = prefix ? `${prefix}:${tag}` : tag;
31
+ if (this.map.has(fullTag)) console.warn(`重复注册标识: ${fullTag},覆盖之前的组件`);
31
32
  this.map.set(fullTag, com);
32
33
  }
33
34
  /**
@@ -40,6 +41,10 @@ var RenderRegister = class {
40
41
  */
41
42
  unregister(tag, prefix) {
42
43
  const fullTag = prefix ? `${prefix}:${tag}` : tag;
44
+ if (!this.map.has(fullTag)) {
45
+ console.warn(`删除未注册组件标识: ${fullTag}`);
46
+ return;
47
+ }
43
48
  this.map.delete(fullTag);
44
49
  }
45
50
  /**
@@ -54,7 +59,7 @@ var RenderRegister = class {
54
59
  get(tag, prefix) {
55
60
  const fullTag = prefix ? `${prefix}:${tag}` : tag;
56
61
  const component = this.map.get(fullTag);
57
- if (!component) console.warn(`No component registered for tag: ${fullTag}`);
62
+ if (!component) console.warn(`未找到组件,标识: ${fullTag}`);
58
63
  return component;
59
64
  }
60
65
  /**
@@ -0,0 +1,2 @@
1
+ import { App } from 'vue';
2
+ export declare function renderSetupApp(_app: App): Promise<void>;
@@ -0,0 +1,7 @@
1
+ import { registerRenderLocale } from "./locale/auto-register.mjs";
2
+ //#region src/setup-app.ts
3
+ async function renderSetupApp(_app) {
4
+ registerRenderLocale();
5
+ }
6
+ //#endregion
7
+ export { renderSetupApp };
@@ -5,3 +5,13 @@ declare module '@gct-paas/core' {
5
5
  render: RenderRegister;
6
6
  }
7
7
  }
8
+ declare global {
9
+ interface Window {
10
+ /**
11
+ * 套件全局方法
12
+ *
13
+ * @type {IObject}
14
+ */
15
+ _kit: IObject;
16
+ }
17
+ }
@@ -19,7 +19,7 @@ async function getDataByModelType({ refOriginFieldType, modelKey, foreignFields,
19
19
  modelKey,
20
20
  bsKey: "rdoGetVersionByRefId",
21
21
  modelCategory: EntityModelCategoryEnum.ENTITY
22
- }, { foreignFields }, { refId: ids });
22
+ }, { refId: ids }, { foreignFields });
23
23
  return {
24
24
  data,
25
25
  dict
@@ -29,10 +29,10 @@ async function getDataByModelType({ refOriginFieldType, modelKey, foreignFields,
29
29
  modelKey,
30
30
  bsKey: "getOne",
31
31
  modelCategory: EntityModelCategoryEnum.ENTITY
32
- }, {
32
+ }, {}, {
33
33
  query: { "id_.eq": ids },
34
34
  foreignFields
35
- }, {});
35
+ });
36
36
  return {
37
37
  data,
38
38
  dict
@@ -73,15 +73,21 @@ function transSelectData(field, row = {}, dict = {}) {
73
73
  */
74
74
  function transformDataToDict(row = {}, dict = {}) {
75
75
  const data = cloneDeep(row);
76
- return Object.keys(dict ?? {})?.length ? Object.keys(data).reduce((total, curr) => {
77
- const map = dict[curr] || {}, value = data[curr];
78
- try {
79
- total[curr] = (value + "").split(",").map((k) => map[k]).join(",");
80
- } catch {
81
- total[curr] = value;
76
+ if (!dict || Object.keys(dict).length === 0) return data;
77
+ return Object.keys(data).reduce((total, currKey) => {
78
+ const rawVal = data[currKey];
79
+ const fieldDict = dict[currKey];
80
+ if (!fieldDict) {
81
+ total[currKey] = rawVal;
82
+ return total;
82
83
  }
84
+ if (rawVal === null || rawVal === void 0) {
85
+ total[currKey] = rawVal;
86
+ return total;
87
+ }
88
+ total[currKey] = String(rawVal).split(",").map((code) => fieldDict[code] ?? code).filter(Boolean).join(",");
83
89
  return total;
84
- }, {}) : data;
90
+ }, {});
85
91
  }
86
92
  //#endregion
87
93
  export { addDataByForm, setDataByForm, transSelectData, transformData, transformDataToDict, transformSourceData };
@@ -6,6 +6,12 @@ var isArrayOpe = [
6
6
  SEARCH_SERVICE.IN,
7
7
  SEARCH_SERVICE.NOTIN
8
8
  ];
9
+ /** 空字符串、空数组、区间两端皆空视为无查询值;保留 0 / false */
10
+ function isEmptySearchValue(value) {
11
+ if (value === null || value === void 0 || value === "") return true;
12
+ if (Array.isArray(value)) return value.length === 0 || value.every((v) => v === null || v === void 0 || v === "");
13
+ return false;
14
+ }
9
15
  /**查询组件body转化为算子 */
10
16
  function useGetBodyBySearch(formState, cacheColumns, expStr) {
11
17
  /**
@@ -20,7 +26,7 @@ function useGetBodyBySearch(formState, cacheColumns, expStr) {
20
26
  const field = i.props.fieldSearchKey || i.props.field;
21
27
  const ope = i.props.ope || [];
22
28
  let value = state[i.id];
23
- if (value !== null && value !== void 0 || i.props.useMore) ope.forEach((o) => {
29
+ if (!isEmptySearchValue(value) || i.props.useMore) ope.forEach((o) => {
24
30
  value = getMultipleChoiceToArray(value, o);
25
31
  const key = `${field}.${o}:${i.id}`, expkey = `${i.id}.${o}`;
26
32
  body[key] = i.props.useMore ? null : value;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gct-paas/render",
3
- "version": "0.1.6-dev.4",
3
+ "version": "0.1.6-dev.41",
4
4
  "type": "module",
5
5
  "description": "paas 平台网页端底包",
6
6
  "loader": "dist/loader.esm.min.js",
@@ -31,7 +31,7 @@
31
31
  "license": "MIT",
32
32
  "author": "gct",
33
33
  "dependencies": {
34
- "@gct-paas/api": "^0.1.4-dev.4",
34
+ "@gct-paas/api": "^6.0.0-dev.2",
35
35
  "@vueuse/core": "^14.1.0",
36
36
  "axios": "^1.13.2",
37
37
  "bignumber.js": "^10.0.2",
@@ -44,10 +44,10 @@
44
44
  "qx-util": "^0.4.8",
45
45
  "vue": "^3.5.30",
46
46
  "vue3-dnd": "^2.1.0",
47
- "@gct-paas/core": "0.1.6-dev.4",
48
- "@gct-paas/core-web": "0.1.6-dev.4",
49
- "@gct-paas/schema": "0.1.6-dev.4",
50
- "@gct-paas/scss": "0.1.6-dev.4"
47
+ "@gct-paas/scss": "0.1.6-dev.41",
48
+ "@gct-paas/schema": "0.1.6-dev.41",
49
+ "@gct-paas/core": "0.1.6-dev.41",
50
+ "@gct-paas/core-web": "0.1.6-dev.41"
51
51
  },
52
52
  "devDependencies": {
53
53
  "@types/escodegen": "^0.0.10",
@@ -55,12 +55,12 @@
55
55
  "@types/estree": "^1.0.8"
56
56
  },
57
57
  "peerDependencies": {
58
- "@gct-paas/api": "^0.1.4-dev.4",
58
+ "@gct-paas/api": "^6.0.0-dev.2",
59
59
  "vue": ">=3",
60
- "@gct-paas/scss": "0.1.6-dev.4",
61
- "@gct-paas/core": "0.1.6-dev.4",
62
- "@gct-paas/core-web": "0.1.6-dev.4",
63
- "@gct-paas/schema": "0.1.6-dev.4"
60
+ "@gct-paas/core": "0.1.6-dev.41",
61
+ "@gct-paas/core-web": "0.1.6-dev.41",
62
+ "@gct-paas/schema": "0.1.6-dev.41",
63
+ "@gct-paas/scss": "0.1.6-dev.41"
64
64
  },
65
65
  "scripts": {
66
66
  "dev": "cross-env NODE_ENV=development vite build --watch --config vite.dev.config.ts",
@@ -1,71 +0,0 @@
1
- @charset "UTF-8";
2
- /* stylelint-disable scss/no-global-function-names */
3
- /* bem('block', 'element', 'modifier') => 'ibiz-block__element--modifier' */
4
- /**
5
- * 定义 Block 块
6
- * @param {String} $block - Block 块名称
7
- * @example
8
- * @include b('button') {
9
- * padding: 10px;
10
- * }
11
- */
12
- /**
13
- * 定义 Element 元素
14
- * @param {String|List} $element - Element 元素名称,支持单个或多个
15
- * @example
16
- * @include b('button') {
17
- * @include e('text') {
18
- * color: #000;
19
- * }
20
- * }
21
- * // 或传入多个元素
22
- * @include b('button') {
23
- * @include e(('text', 'icon')) {
24
- * margin: 5px;
25
- * }
26
- * }
27
- */
28
- /**
29
- * 定义 Modifier 修饰符
30
- * @param {String|List} $modifier - Modifier 修饰符名称,支持单个或多个
31
- * @example
32
- * @include b('button') {
33
- * @include m('primary') {
34
- * background: blue;
35
- * }
36
- * }
37
- * // 或传入多个修饰符
38
- * @include b('button') {
39
- * @include m(('primary', 'large')) {
40
- * background: blue;
41
- * font-size: 16px;
42
- * }
43
- * }
44
- */
45
- /**
46
- * 定义状态选择器
47
- * @param {String} $state - 状态名称
48
- * @example
49
- * @include b('button') {
50
- * @include when('disabled') {
51
- * opacity: 0.5;
52
- * }
53
- * }
54
- */
55
- /**
56
- * 深色主题样式
57
- * @param {String} $block - Block 块名称
58
- * @example
59
- * @include dark('button') {
60
- * background: #333;
61
- * color: #fff;
62
- * }
63
- */
64
- /* stylelint-disable scss/no-global-function-names */
65
- .gct-card-view-render {
66
- position: relative;
67
- }
68
- .gct-card-view-render .gct-design-render {
69
- width: auto;
70
- height: auto;
71
- }
@@ -1,38 +0,0 @@
1
- import { PropType } from 'vue';
2
- export declare const CardViewRender: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
3
- id: {
4
- type: StringConstructor;
5
- required: true;
6
- };
7
- modelKey: {
8
- type: StringConstructor;
9
- required: true;
10
- };
11
- fetch: {
12
- type: PropType<() => Promise<IObject>>;
13
- };
14
- preview: {
15
- type: BooleanConstructor;
16
- default: boolean;
17
- };
18
- }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, "mounted"[], "mounted", import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
19
- id: {
20
- type: StringConstructor;
21
- required: true;
22
- };
23
- modelKey: {
24
- type: StringConstructor;
25
- required: true;
26
- };
27
- fetch: {
28
- type: PropType<() => Promise<IObject>>;
29
- };
30
- preview: {
31
- type: BooleanConstructor;
32
- default: boolean;
33
- };
34
- }>> & Readonly<{
35
- onMounted?: ((...args: any[]) => any) | undefined;
36
- }>, {
37
- preview: boolean;
38
- }, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
@@ -1,85 +0,0 @@
1
- import { DesignRenderViewPrefix } from "../../constant/index.mjs";
2
- import { DesignRender } from "../design-render/design-render.mjs";
3
- import './card-view-render.css';/* empty css */
4
- import { gctMemoizeAsync, useNamespace } from "@gct-paas/core";
5
- import { computed, createVNode, defineComponent, nextTick, ref } from "vue";
6
- //#region src/components/card-view-render/card-view-render.tsx
7
- var loadModelAsync = gctMemoizeAsync(_api.apaas.commonInfoCard.getGetById);
8
- var CardViewRender = /* @__PURE__ */ defineComponent({
9
- name: "CardViewRender",
10
- props: {
11
- id: {
12
- type: String,
13
- required: true
14
- },
15
- modelKey: {
16
- type: String,
17
- required: true
18
- },
19
- fetch: { type: Function },
20
- preview: {
21
- type: Boolean,
22
- default: false
23
- }
24
- },
25
- emits: ["mounted"],
26
- setup(props, { emit, slots }) {
27
- const ns = useNamespace("card-view-render");
28
- const isLoading = ref(false);
29
- const isLoaded = ref(false);
30
- const json = ref(null);
31
- const data = ref({});
32
- const style = computed(() => {
33
- if (json.value) return { width: json.value.pageNode?.data.width ? `${json.value.pageNode.data.width}px` : "" };
34
- return {};
35
- });
36
- async function loadModel() {
37
- const res = await loadModelAsync({
38
- id: props.id,
39
- modelKey: props.modelKey,
40
- type: "CARD"
41
- });
42
- if (res && res.designerJson) json.value = JSON.parse(decodeURIComponent(res.designerJson));
43
- }
44
- async function onInit() {
45
- if (!props.id) return;
46
- try {
47
- isLoading.value = true;
48
- await loadModel();
49
- if (props.preview !== true && props.fetch) data.value = await props.fetch() || {};
50
- } catch (error) {
51
- console.error(error);
52
- } finally {
53
- isLoading.value = false;
54
- }
55
- isLoaded.value = true;
56
- await nextTick();
57
- setTimeout(() => {
58
- emit("mounted", json.value?.pageNode?.data);
59
- });
60
- }
61
- onInit();
62
- return () => {
63
- return createVNode("div", {
64
- "class": ns.b(),
65
- "style": style.value
66
- }, [isLoading.value && slots.loading ? slots.loading?.() : null, !json.value || !isLoaded.value ? null : createVNode(DesignRender, {
67
- "context": {
68
- data: data.value,
69
- id: props.id,
70
- modelKey: props.modelKey
71
- },
72
- "model": {
73
- nodes: json.value.nodes,
74
- pageNode: json.value.pageNode,
75
- tree: json.value.tree,
76
- type: DesignRenderViewPrefix.CARD_VIEW
77
- },
78
- "prefix": DesignRenderViewPrefix.CARD_VIEW,
79
- "preview": props.preview
80
- }, null)]);
81
- };
82
- }
83
- });
84
- //#endregion
85
- export { CardViewRender };