@ibiz-template/vue3-components 0.7.41-alpha.141 → 0.7.41-alpha.142

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 (38) hide show
  1. package/dist/index-DrjG63wY.js +339 -0
  2. package/dist/{index.es-BVWsBTYh.js → index.es-CfZdec4G.js} +1 -1
  3. package/dist/index.min.css +1 -1
  4. package/dist/index.system.min.js +1 -1
  5. package/dist/{wang-editor-DB9S0ti1.js → wang-editor-CUGqp4Uw.js} +1 -1
  6. package/dist/{xlsx-util-NNLRvbBg.js → xlsx-util-C9Q58lgT.js} +1 -1
  7. package/es/common/html-doc-preview/html-doc-preview.css +1 -0
  8. package/es/common/html-doc-preview/html-doc-preview.mjs +76 -0
  9. package/es/common/index.mjs +2 -0
  10. package/es/common/rawitem/rawitem.mjs +13 -0
  11. package/es/control/form/form-detail/form-rawitem/form-rawitem.mjs +9 -3
  12. package/es/editor/ai-chat/embed-ai-chat/embed-ai-chat.mjs +2 -1
  13. package/es/editor/raw/ibiz-raw/ibiz-raw.mjs +3 -0
  14. package/es/panel-component/index.mjs +2 -1
  15. package/es/util/ai-chat-util/ai-chat-util.mjs +11 -0
  16. package/es/view-engine/mpickup-view-engine.mjs +20 -16
  17. package/lib/common/html-doc-preview/html-doc-preview.cjs +78 -0
  18. package/lib/common/html-doc-preview/html-doc-preview.css +1 -0
  19. package/lib/common/index.cjs +2 -0
  20. package/lib/common/rawitem/rawitem.cjs +13 -0
  21. package/lib/control/form/form-detail/form-rawitem/form-rawitem.cjs +8 -2
  22. package/lib/editor/ai-chat/embed-ai-chat/embed-ai-chat.cjs +2 -1
  23. package/lib/editor/raw/ibiz-raw/ibiz-raw.cjs +3 -0
  24. package/lib/panel-component/index.cjs +1 -0
  25. package/lib/util/ai-chat-util/ai-chat-util.cjs +11 -0
  26. package/lib/view-engine/mpickup-view-engine.cjs +19 -15
  27. package/package.json +5 -5
  28. package/src/common/html-doc-preview/html-doc-preview.scss +9 -0
  29. package/src/common/html-doc-preview/html-doc-preview.tsx +78 -0
  30. package/src/common/index.ts +2 -0
  31. package/src/common/rawitem/rawitem.tsx +12 -0
  32. package/src/control/form/form-detail/form-rawitem/form-rawitem.tsx +7 -0
  33. package/src/editor/ai-chat/embed-ai-chat/embed-ai-chat.tsx +1 -0
  34. package/src/editor/raw/ibiz-raw/ibiz-raw.tsx +5 -0
  35. package/src/panel-component/index.ts +2 -0
  36. package/src/util/ai-chat-util/ai-chat-util.ts +13 -0
  37. package/src/view-engine/mpickup-view-engine.ts +22 -16
  38. package/dist/index-BGZZczL5.js +0 -339
@@ -0,0 +1 @@
1
+ .ibiz-html-doc-preview{width:100%}.ibiz-html-doc-preview__iframe{display:block;width:100%;border:none}
@@ -0,0 +1,76 @@
1
+ import { defineComponent, createVNode, ref, computed, watch } from 'vue';
2
+ import { useNamespace } from '@ibiz-template/vue3-util';
3
+ import './html-doc-preview.css';
4
+
5
+ "use strict";
6
+ const IBizHtmlDocPreview = /* @__PURE__ */ defineComponent({
7
+ name: "IBizHtmlDocPreview",
8
+ props: {
9
+ // html值,完整HTML文档内容
10
+ value: String,
11
+ enableScript: {
12
+ type: Boolean,
13
+ default: true
14
+ },
15
+ ctrl: {
16
+ type: Object,
17
+ required: false
18
+ },
19
+ view: {
20
+ type: Object,
21
+ required: false
22
+ }
23
+ },
24
+ setup(props) {
25
+ const ns = useNamespace("html-doc-preview");
26
+ const iframeHeight = ref();
27
+ const sandbox = computed(() => {
28
+ if (props.enableScript) {
29
+ return "allow-same-origin allow-scripts";
30
+ }
31
+ return "allow-same-origin";
32
+ });
33
+ const calcHeight = (e) => {
34
+ const iframe = e.target;
35
+ const doc = iframe.contentDocument;
36
+ const contentWindow = iframe.contentWindow;
37
+ if (contentWindow) {
38
+ contentWindow.ctrl = props.ctrl;
39
+ contentWindow.view = props.view;
40
+ }
41
+ if (doc && doc.body) {
42
+ let h = doc.body.scrollHeight;
43
+ if (h > doc.documentElement.scrollHeight) {
44
+ h = doc.body.scrollHeight;
45
+ }
46
+ iframeHeight.value = h;
47
+ }
48
+ };
49
+ watch(() => props.value, (newVal) => {
50
+ if (!newVal) {
51
+ iframeHeight.value = void 0;
52
+ }
53
+ });
54
+ return {
55
+ ns,
56
+ iframeHeight,
57
+ sandbox,
58
+ calcHeight
59
+ };
60
+ },
61
+ render() {
62
+ return createVNode("div", {
63
+ "class": [this.ns.b()]
64
+ }, [createVNode("iframe", {
65
+ "class": this.ns.e("iframe"),
66
+ "srcdoc": this.value,
67
+ "sandbox": this.sandbox,
68
+ "style": this.iframeHeight ? {
69
+ height: "".concat(this.iframeHeight, "px")
70
+ } : void 0,
71
+ "onLoad": this.calcHeight
72
+ }, null)]);
73
+ }
74
+ });
75
+
76
+ export { IBizHtmlDocPreview };
@@ -4,6 +4,7 @@ import { IBizActionToolbar } from './action-toolbar/action-toolbar.mjs';
4
4
  import { IBizCol } from './col/col.mjs';
5
5
  import { IBizRow } from './row/row.mjs';
6
6
  import { IBizRawItem } from './rawitem/rawitem.mjs';
7
+ import { IBizHtmlDocPreview } from './html-doc-preview/html-doc-preview.mjs';
7
8
  import { IBizNoData } from './no-data/no-data.mjs';
8
9
  import { IBizSplit } from './split/split.mjs';
9
10
  import { IBizSplitTrigger } from './split-trigger/split-trigger.mjs';
@@ -56,6 +57,7 @@ const IBizCommonComponents = {
56
57
  v.component(IBizViewShell.name, IBizViewShell);
57
58
  v.component(IBizControlShell.name, IBizControlShell);
58
59
  v.component(IBizRawItem.name, IBizRawItem);
60
+ v.component(IBizHtmlDocPreview.name, IBizHtmlDocPreview);
59
61
  v.component(IBizCodeList.name, IBizCodeList);
60
62
  v.component(IBizNoData.name, IBizNoData);
61
63
  v.component(IBizSplit.name, IBizSplit);
@@ -29,6 +29,10 @@ const IBizRawItem = /* @__PURE__ */ defineComponent({
29
29
  type: String,
30
30
  required: false
31
31
  },
32
+ enableHtmlDoc: {
33
+ type: Boolean,
34
+ required: false
35
+ },
32
36
  ctrl: {
33
37
  type: Object,
34
38
  required: false
@@ -303,6 +307,15 @@ const IBizRawItem = /* @__PURE__ */ defineComponent({
303
307
  }, [this.rawItemText]);
304
308
  }
305
309
  if (this.rawItemType === "HTML") {
310
+ if (this.enableHtmlDoc) {
311
+ return createVNode(resolveComponent("iBizHtmlDocPreview"), {
312
+ "class": [this.ns.e("paragraph"), this.semantic.html.class],
313
+ "style": this.semantic.html.style,
314
+ "value": this.rawItemText,
315
+ "view": this.view,
316
+ "ctrl": this.ctrl
317
+ }, null);
318
+ }
306
319
  return createVNode("div", {
307
320
  "class": [this.ns.e("paragraph"), this.semantic.html.class],
308
321
  "style": this.semantic.html.style,
@@ -1,4 +1,4 @@
1
- import { isVNode, defineComponent, createVNode, resolveComponent, ref, computed, watch } from 'vue';
1
+ import { isVNode, defineComponent, createVNode, resolveComponent, mergeProps, ref, computed, watch } from 'vue';
2
2
  import { useNamespace, useSemanticNode } from '@ibiz-template/vue3-util';
3
3
  import { FormRawItemController } from '@ibiz-template/runtime';
4
4
  import './form-rawitem.css';
@@ -17,6 +17,10 @@ const FormRawItem = /* @__PURE__ */ defineComponent({
17
17
  controller: {
18
18
  type: FormRawItemController,
19
19
  required: true
20
+ },
21
+ attrs: {
22
+ type: Object,
23
+ required: false
20
24
  }
21
25
  },
22
26
  setup(props) {
@@ -209,7 +213,7 @@ const FormRawItem = /* @__PURE__ */ defineComponent({
209
213
  "class": this.ns.b("preview-content")
210
214
  }, [this.renderPreviewContent()])]);
211
215
  }
212
- return createVNode(resolveComponent("iBizRawItem"), {
216
+ return createVNode(resolveComponent("iBizRawItem"), mergeProps({
213
217
  "class": [
214
218
  this.ns.b(),
215
219
  this.semanticClass("rawitem", {
@@ -225,8 +229,10 @@ const FormRawItem = /* @__PURE__ */ defineComponent({
225
229
  }),
226
230
  "rawItem": this.modelData,
227
231
  "content": this.content,
232
+ "ctrl": this.controller.form,
233
+ "view": this.controller.form.view,
228
234
  "onClick": (event) => this.controller.onClick(event)
229
- }, null);
235
+ }, this.attrs), null);
230
236
  }
231
237
  });
232
238
 
@@ -82,7 +82,8 @@ const IBizEmbedAIChat = /* @__PURE__ */ defineComponent({
82
82
  mode: editorParams.srfaimode || "TOPIC",
83
83
  resourceOptions,
84
84
  containerOptions: {
85
- container: aiChatElementRef.value
85
+ container: aiChatElementRef.value,
86
+ compWrapperId: editorParams.compwrapperid || "DEFAULT"
86
87
  },
87
88
  topicOptions: {
88
89
  appid: ibiz.env.appId,
@@ -21,6 +21,7 @@ const IBizRaw = /* @__PURE__ */ defineComponent({
21
21
  });
22
22
  const chunkView = c.editorParams.chunkview;
23
23
  const chunkEntity = c.editorParams.chunkentity;
24
+ const enableHtmlDoc = c.toBoolean(c.editorParams.enablehtmldoc);
24
25
  let type = "TEXT";
25
26
  let template = "";
26
27
  if (editorModel.contentType) {
@@ -79,6 +80,7 @@ const IBizRaw = /* @__PURE__ */ defineComponent({
79
80
  template,
80
81
  chunkView,
81
82
  chunkEntity,
83
+ enableHtmlDoc,
82
84
  enableOverFlow,
83
85
  semanticClass,
84
86
  semanticStyle,
@@ -95,6 +97,7 @@ const IBizRaw = /* @__PURE__ */ defineComponent({
95
97
  "content": this.content,
96
98
  "chunkView": this.chunkView,
97
99
  "chunkEntity": this.chunkEntity,
100
+ "enableHtmlDoc": this.enableHtmlDoc,
98
101
  "context": this.controller.context,
99
102
  "ctrl": this.controller.ctrl,
100
103
  "view": this.controller.view,
@@ -1,4 +1,4 @@
1
- import { IBizPanelCtrlViewPageCaption, IBizPanelContainer, IBizPanelCtrlPos, IBizScrollContainer, IBizNavPos, IBizSingleDataContainer, IBizMultiDataContainer, IBizMultiDataContainerRaw, IBizPanelField, IBizPanelRawItem, IBizGridContainer, IBizPanelTabPage, IBizPanelContainerImage, IBizPanelItemRender, IBizTeleportPlaceholder, IBizPanelContainerTabs, IBizAuthWxmpQrcode } from '@ibiz-template/vue3-util';
1
+ import { IBizPanelCtrlViewPageCaption, IBizPanelContainer, IBizPanelCtrlPos, IBizScrollContainer, IBizNavPos, IBizSingleDataContainer, IBizMultiDataContainer, IBizMultiDataContainerRaw, IBizPanelField, IBizPanelRawItem, IBizGridContainer, IBizPanelTabPage, IBizPanelContainerImage, IBizPanelItemRender, IBizPanelSimpleList, IBizTeleportPlaceholder, IBizPanelContainerTabs, IBizAuthWxmpQrcode } from '@ibiz-template/vue3-util';
2
2
  import { IBizAuthUserinfo } from './auth-userinfo/index.mjs';
3
3
  import { IBizNavPosIndex } from './nav-pos-index/index.mjs';
4
4
  import { IBizNavTabs } from './nav-tabs/index.mjs';
@@ -114,6 +114,7 @@ const IBizPanelComponents = {
114
114
  v.use(IBizPanelContainerImage);
115
115
  v.use(IBizSearchFormButtons);
116
116
  v.use(IBizPanelItemRender);
117
+ v.use(IBizPanelSimpleList);
117
118
  v.use(IBizViewMessage);
118
119
  v.use(IBizPanelStaticCarousel);
119
120
  v.use(IBizTeleportPlaceholder);
@@ -55,6 +55,11 @@ class AIChatUtil {
55
55
  ibiz.log.error(error);
56
56
  }
57
57
  }
58
+ if (editorParams.compwrapperid) {
59
+ containerOptions.compWrapperId = editorParams.compwrapperid;
60
+ } else {
61
+ containerOptions.compWrapperId = "DEFAULT";
62
+ }
58
63
  const topicOptions = {};
59
64
  topicOptions.captionMode = ibiz.config.common.aiChatTopicCaptionMode;
60
65
  if (editorParams.topiccaptionmode) {
@@ -669,6 +674,12 @@ class AIChatUtil {
669
674
  ibiz.log.error(error);
670
675
  }
671
676
  }
677
+ if (params.hasOwnProperty("compwrapperid")) {
678
+ containerOptions.compWrapperId = params.compwrapperid;
679
+ delete params.compwrapperid;
680
+ } else {
681
+ containerOptions.compWrapperId = "DEFAULT";
682
+ }
672
683
  const topicOptions = {};
673
684
  if (params.hasOwnProperty("topiccaptionmode")) {
674
685
  topicOptions.captionMode = params.topiccaptionmode;
@@ -1,5 +1,4 @@
1
- import { RuntimeModelError } from '@ibiz-template/core';
2
- import { SysUIActionTag } from '@ibiz-template/runtime';
1
+ import { getControlsByView, SysUIActionTag } from '@ibiz-template/runtime';
3
2
  import { PickupViewEngine } from './pickup-view.engine.mjs';
4
3
 
5
4
  "use strict";
@@ -28,7 +27,12 @@ class MPickupViewEngine extends PickupViewEngine {
28
27
  * @memberof MPickupViewEngine
29
28
  */
30
29
  get simpleList() {
31
- return this.view.getController("simplelist");
30
+ var _a;
31
+ const list = this.view.getController("simplelist");
32
+ if (list) {
33
+ return list;
34
+ }
35
+ return (_a = this.view.layoutPanel) == null ? void 0 : _a.panelItems.simplelist;
32
36
  }
33
37
  /**
34
38
  * 视图created生命周期执行逻辑
@@ -40,23 +44,23 @@ class MPickupViewEngine extends PickupViewEngine {
40
44
  */
41
45
  async onCreated() {
42
46
  await super.onCreated();
43
- if (!this.view.providers.simplelist) {
44
- throw new RuntimeModelError(
45
- this.view.model,
46
- ibiz.i18n.t("viewEngine.missingConfigErr")
47
- );
48
- }
49
- const { childNames } = this.view;
50
- childNames.push("simplelist");
51
- if (!this.view.slotProps.simplelist) {
52
- this.view.slotProps.simplelist = {};
47
+ const controls = getControlsByView(this.view.model);
48
+ const simpleListControl = controls.find(
49
+ (control) => control.name === "simplelist"
50
+ );
51
+ if (simpleListControl) {
52
+ const { childNames } = this.view;
53
+ childNames.push("simplelist");
54
+ if (!this.view.slotProps.simplelist) {
55
+ this.view.slotProps.simplelist = {};
56
+ }
57
+ this.view.slotProps.simplelist.mdctrlActiveMode = 2;
58
+ this.view.slotProps.simplelist.isSimple = true;
59
+ this.view.slotProps.simplelist.singleSelect = false;
53
60
  }
54
61
  if (!this.view.slotProps.pickupviewpanel) {
55
62
  this.view.slotProps.pickupviewpanel = {};
56
63
  }
57
- this.view.slotProps.simplelist.mdctrlActiveMode = 2;
58
- this.view.slotProps.simplelist.isSimple = true;
59
- this.view.slotProps.simplelist.singleSelect = false;
60
64
  this.view.slotProps.pickupviewpanel.singleSelect = false;
61
65
  if (this.view.params.checkstrictly) {
62
66
  this.checkStrictly = this.view.params.checkstrictly === "true" || this.view.params.checkstrictly === true;
@@ -0,0 +1,78 @@
1
+ 'use strict';
2
+
3
+ var vue = require('vue');
4
+ var vue3Util = require('@ibiz-template/vue3-util');
5
+ require('./html-doc-preview.css');
6
+
7
+ "use strict";
8
+ const IBizHtmlDocPreview = /* @__PURE__ */ vue.defineComponent({
9
+ name: "IBizHtmlDocPreview",
10
+ props: {
11
+ // html值,完整HTML文档内容
12
+ value: String,
13
+ enableScript: {
14
+ type: Boolean,
15
+ default: true
16
+ },
17
+ ctrl: {
18
+ type: Object,
19
+ required: false
20
+ },
21
+ view: {
22
+ type: Object,
23
+ required: false
24
+ }
25
+ },
26
+ setup(props) {
27
+ const ns = vue3Util.useNamespace("html-doc-preview");
28
+ const iframeHeight = vue.ref();
29
+ const sandbox = vue.computed(() => {
30
+ if (props.enableScript) {
31
+ return "allow-same-origin allow-scripts";
32
+ }
33
+ return "allow-same-origin";
34
+ });
35
+ const calcHeight = (e) => {
36
+ const iframe = e.target;
37
+ const doc = iframe.contentDocument;
38
+ const contentWindow = iframe.contentWindow;
39
+ if (contentWindow) {
40
+ contentWindow.ctrl = props.ctrl;
41
+ contentWindow.view = props.view;
42
+ }
43
+ if (doc && doc.body) {
44
+ let h = doc.body.scrollHeight;
45
+ if (h > doc.documentElement.scrollHeight) {
46
+ h = doc.body.scrollHeight;
47
+ }
48
+ iframeHeight.value = h;
49
+ }
50
+ };
51
+ vue.watch(() => props.value, (newVal) => {
52
+ if (!newVal) {
53
+ iframeHeight.value = void 0;
54
+ }
55
+ });
56
+ return {
57
+ ns,
58
+ iframeHeight,
59
+ sandbox,
60
+ calcHeight
61
+ };
62
+ },
63
+ render() {
64
+ return vue.createVNode("div", {
65
+ "class": [this.ns.b()]
66
+ }, [vue.createVNode("iframe", {
67
+ "class": this.ns.e("iframe"),
68
+ "srcdoc": this.value,
69
+ "sandbox": this.sandbox,
70
+ "style": this.iframeHeight ? {
71
+ height: "".concat(this.iframeHeight, "px")
72
+ } : void 0,
73
+ "onLoad": this.calcHeight
74
+ }, null)]);
75
+ }
76
+ });
77
+
78
+ exports.IBizHtmlDocPreview = IBizHtmlDocPreview;
@@ -0,0 +1 @@
1
+ .ibiz-html-doc-preview{width:100%}.ibiz-html-doc-preview__iframe{display:block;width:100%;border:none}
@@ -8,6 +8,7 @@ var actionToolbar = require('./action-toolbar/action-toolbar.cjs');
8
8
  var col = require('./col/col.cjs');
9
9
  var row = require('./row/row.cjs');
10
10
  var rawitem = require('./rawitem/rawitem.cjs');
11
+ var htmlDocPreview = require('./html-doc-preview/html-doc-preview.cjs');
11
12
  var noData = require('./no-data/no-data.cjs');
12
13
  var split = require('./split/split.cjs');
13
14
  var splitTrigger = require('./split-trigger/split-trigger.cjs');
@@ -60,6 +61,7 @@ const IBizCommonComponents = {
60
61
  v.component(vue3Util.IBizViewShell.name, vue3Util.IBizViewShell);
61
62
  v.component(vue3Util.IBizControlShell.name, vue3Util.IBizControlShell);
62
63
  v.component(rawitem.IBizRawItem.name, rawitem.IBizRawItem);
64
+ v.component(htmlDocPreview.IBizHtmlDocPreview.name, htmlDocPreview.IBizHtmlDocPreview);
63
65
  v.component(vue3Util.IBizCodeList.name, vue3Util.IBizCodeList);
64
66
  v.component(noData.IBizNoData.name, noData.IBizNoData);
65
67
  v.component(split.IBizSplit.name, split.IBizSplit);
@@ -31,6 +31,10 @@ const IBizRawItem = /* @__PURE__ */ vue.defineComponent({
31
31
  type: String,
32
32
  required: false
33
33
  },
34
+ enableHtmlDoc: {
35
+ type: Boolean,
36
+ required: false
37
+ },
34
38
  ctrl: {
35
39
  type: Object,
36
40
  required: false
@@ -305,6 +309,15 @@ const IBizRawItem = /* @__PURE__ */ vue.defineComponent({
305
309
  }, [this.rawItemText]);
306
310
  }
307
311
  if (this.rawItemType === "HTML") {
312
+ if (this.enableHtmlDoc) {
313
+ return vue.createVNode(vue.resolveComponent("iBizHtmlDocPreview"), {
314
+ "class": [this.ns.e("paragraph"), this.semantic.html.class],
315
+ "style": this.semantic.html.style,
316
+ "value": this.rawItemText,
317
+ "view": this.view,
318
+ "ctrl": this.ctrl
319
+ }, null);
320
+ }
308
321
  return vue.createVNode("div", {
309
322
  "class": [this.ns.e("paragraph"), this.semantic.html.class],
310
323
  "style": this.semantic.html.style,
@@ -21,6 +21,10 @@ const FormRawItem = /* @__PURE__ */ vue.defineComponent({
21
21
  controller: {
22
22
  type: runtime.FormRawItemController,
23
23
  required: true
24
+ },
25
+ attrs: {
26
+ type: Object,
27
+ required: false
24
28
  }
25
29
  },
26
30
  setup(props) {
@@ -213,7 +217,7 @@ const FormRawItem = /* @__PURE__ */ vue.defineComponent({
213
217
  "class": this.ns.b("preview-content")
214
218
  }, [this.renderPreviewContent()])]);
215
219
  }
216
- return vue.createVNode(vue.resolveComponent("iBizRawItem"), {
220
+ return vue.createVNode(vue.resolveComponent("iBizRawItem"), vue.mergeProps({
217
221
  "class": [
218
222
  this.ns.b(),
219
223
  this.semanticClass("rawitem", {
@@ -229,8 +233,10 @@ const FormRawItem = /* @__PURE__ */ vue.defineComponent({
229
233
  }),
230
234
  "rawItem": this.modelData,
231
235
  "content": this.content,
236
+ "ctrl": this.controller.form,
237
+ "view": this.controller.form.view,
232
238
  "onClick": (event) => this.controller.onClick(event)
233
- }, null);
239
+ }, this.attrs), null);
234
240
  }
235
241
  });
236
242
 
@@ -84,7 +84,8 @@ const IBizEmbedAIChat = /* @__PURE__ */ vue.defineComponent({
84
84
  mode: editorParams.srfaimode || "TOPIC",
85
85
  resourceOptions,
86
86
  containerOptions: {
87
- container: aiChatElementRef.value
87
+ container: aiChatElementRef.value,
88
+ compWrapperId: editorParams.compwrapperid || "DEFAULT"
88
89
  },
89
90
  topicOptions: {
90
91
  appid: ibiz.env.appId,
@@ -23,6 +23,7 @@ const IBizRaw = /* @__PURE__ */ vue.defineComponent({
23
23
  });
24
24
  const chunkView = c.editorParams.chunkview;
25
25
  const chunkEntity = c.editorParams.chunkentity;
26
+ const enableHtmlDoc = c.toBoolean(c.editorParams.enablehtmldoc);
26
27
  let type = "TEXT";
27
28
  let template = "";
28
29
  if (editorModel.contentType) {
@@ -81,6 +82,7 @@ const IBizRaw = /* @__PURE__ */ vue.defineComponent({
81
82
  template,
82
83
  chunkView,
83
84
  chunkEntity,
85
+ enableHtmlDoc,
84
86
  enableOverFlow,
85
87
  semanticClass,
86
88
  semanticStyle,
@@ -97,6 +99,7 @@ const IBizRaw = /* @__PURE__ */ vue.defineComponent({
97
99
  "content": this.content,
98
100
  "chunkView": this.chunkView,
99
101
  "chunkEntity": this.chunkEntity,
102
+ "enableHtmlDoc": this.enableHtmlDoc,
100
103
  "context": this.controller.context,
101
104
  "ctrl": this.controller.ctrl,
102
105
  "view": this.controller.view,
@@ -118,6 +118,7 @@ const IBizPanelComponents = {
118
118
  v.use(vue3Util.IBizPanelContainerImage);
119
119
  v.use(index$m.IBizSearchFormButtons);
120
120
  v.use(vue3Util.IBizPanelItemRender);
121
+ v.use(vue3Util.IBizPanelSimpleList);
121
122
  v.use(index$n.IBizViewMessage);
122
123
  v.use(index$o.IBizPanelStaticCarousel);
123
124
  v.use(vue3Util.IBizTeleportPlaceholder);
@@ -57,6 +57,11 @@ class AIChatUtil {
57
57
  ibiz.log.error(error);
58
58
  }
59
59
  }
60
+ if (editorParams.compwrapperid) {
61
+ containerOptions.compWrapperId = editorParams.compwrapperid;
62
+ } else {
63
+ containerOptions.compWrapperId = "DEFAULT";
64
+ }
60
65
  const topicOptions = {};
61
66
  topicOptions.captionMode = ibiz.config.common.aiChatTopicCaptionMode;
62
67
  if (editorParams.topiccaptionmode) {
@@ -671,6 +676,12 @@ class AIChatUtil {
671
676
  ibiz.log.error(error);
672
677
  }
673
678
  }
679
+ if (params.hasOwnProperty("compwrapperid")) {
680
+ containerOptions.compWrapperId = params.compwrapperid;
681
+ delete params.compwrapperid;
682
+ } else {
683
+ containerOptions.compWrapperId = "DEFAULT";
684
+ }
674
685
  const topicOptions = {};
675
686
  if (params.hasOwnProperty("topiccaptionmode")) {
676
687
  topicOptions.captionMode = params.topiccaptionmode;
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
 
3
- var core = require('@ibiz-template/core');
4
3
  var runtime = require('@ibiz-template/runtime');
5
4
  var pickupView_engine = require('./pickup-view.engine.cjs');
6
5
 
@@ -30,7 +29,12 @@ class MPickupViewEngine extends pickupView_engine.PickupViewEngine {
30
29
  * @memberof MPickupViewEngine
31
30
  */
32
31
  get simpleList() {
33
- return this.view.getController("simplelist");
32
+ var _a;
33
+ const list = this.view.getController("simplelist");
34
+ if (list) {
35
+ return list;
36
+ }
37
+ return (_a = this.view.layoutPanel) == null ? void 0 : _a.panelItems.simplelist;
34
38
  }
35
39
  /**
36
40
  * 视图created生命周期执行逻辑
@@ -42,23 +46,23 @@ class MPickupViewEngine extends pickupView_engine.PickupViewEngine {
42
46
  */
43
47
  async onCreated() {
44
48
  await super.onCreated();
45
- if (!this.view.providers.simplelist) {
46
- throw new core.RuntimeModelError(
47
- this.view.model,
48
- ibiz.i18n.t("viewEngine.missingConfigErr")
49
- );
50
- }
51
- const { childNames } = this.view;
52
- childNames.push("simplelist");
53
- if (!this.view.slotProps.simplelist) {
54
- this.view.slotProps.simplelist = {};
49
+ const controls = runtime.getControlsByView(this.view.model);
50
+ const simpleListControl = controls.find(
51
+ (control) => control.name === "simplelist"
52
+ );
53
+ if (simpleListControl) {
54
+ const { childNames } = this.view;
55
+ childNames.push("simplelist");
56
+ if (!this.view.slotProps.simplelist) {
57
+ this.view.slotProps.simplelist = {};
58
+ }
59
+ this.view.slotProps.simplelist.mdctrlActiveMode = 2;
60
+ this.view.slotProps.simplelist.isSimple = true;
61
+ this.view.slotProps.simplelist.singleSelect = false;
55
62
  }
56
63
  if (!this.view.slotProps.pickupviewpanel) {
57
64
  this.view.slotProps.pickupviewpanel = {};
58
65
  }
59
- this.view.slotProps.simplelist.mdctrlActiveMode = 2;
60
- this.view.slotProps.simplelist.isSimple = true;
61
- this.view.slotProps.simplelist.singleSelect = false;
62
66
  this.view.slotProps.pickupviewpanel.singleSelect = false;
63
67
  if (this.view.params.checkstrictly) {
64
68
  this.checkStrictly = this.view.params.checkstrictly === "true" || this.view.params.checkstrictly === true;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/vue3-components",
3
- "version": "0.7.41-alpha.141",
3
+ "version": "0.7.41-alpha.142",
4
4
  "description": "web端组件库(vue3)",
5
5
  "main": "lib/index.cjs",
6
6
  "module": "es/index.mjs",
@@ -31,16 +31,16 @@
31
31
  "dependencies": {
32
32
  "@amap/amap-jsapi-loader": "^1.0.1",
33
33
  "@floating-ui/dom": "^1.5.3",
34
- "@ibiz-template-plugin/ai-chat": "^0.0.108",
34
+ "@ibiz-template-plugin/ai-chat": "^0.0.109",
35
35
  "@ibiz-template-plugin/gantt": "0.1.8-alpha.468",
36
36
  "@ibiz-template-plugin/bi-report": "0.0.32",
37
37
  "@ibiz-template-plugin/data-view": "0.0.8",
38
38
  "@ibiz-template/core": "0.7.41-alpha.140",
39
39
  "@ibiz-template/devtool": "0.0.17",
40
- "@ibiz-template/model-helper": "0.7.41-alpha.145",
41
- "@ibiz-template/runtime": "0.7.41-alpha.145",
40
+ "@ibiz-template/model-helper": "0.7.41-alpha.146",
41
+ "@ibiz-template/runtime": "0.7.41-alpha.146",
42
42
  "@ibiz-template/theme": "0.7.39",
43
- "@ibiz-template/vue3-util": "0.7.41-alpha.145",
43
+ "@ibiz-template/vue3-util": "0.7.41-alpha.146",
44
44
  "@ibiz-template/web-theme": "3.16.0",
45
45
  "@ibiz/model-core": "^0.1.89",
46
46
  "@imengyu/vue3-context-menu": "^1.3.5",
@@ -0,0 +1,9 @@
1
+ @include b(html-doc-preview) {
2
+ width: 100%;
3
+
4
+ @include e(iframe) {
5
+ display: block;
6
+ width: 100%;
7
+ border: none;
8
+ }
9
+ }