@ibiz-template/runtime 0.7.41-alpha.131 → 0.7.41-alpha.133

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 (22) hide show
  1. package/dist/index.esm.js +26 -9
  2. package/dist/index.system.min.js +1 -1
  3. package/out/config/global-config.d.ts.map +1 -1
  4. package/out/config/global-config.js +1 -0
  5. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts +9 -1
  6. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.d.ts.map +1 -1
  7. package/out/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.js +25 -3
  8. package/out/interface/api/common/global-config/i-api-global-common-config.d.ts +8 -0
  9. package/out/interface/api/common/global-config/i-api-global-common-config.d.ts.map +1 -1
  10. package/out/interface/api/common/i-api-popover-options.d.ts +10 -0
  11. package/out/interface/api/common/i-api-popover-options.d.ts.map +1 -1
  12. package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.d.ts.map +1 -1
  13. package/out/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.js +1 -0
  14. package/out/utils/script/script-function.d.ts.map +1 -1
  15. package/out/utils/script/script-function.js +2 -1
  16. package/package.json +2 -2
  17. package/src/config/global-config.ts +1 -0
  18. package/src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts +29 -7
  19. package/src/interface/api/common/global-config/i-api-global-common-config.ts +9 -0
  20. package/src/interface/api/common/i-api-popover-options.ts +10 -0
  21. package/src/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.ts +1 -0
  22. package/src/utils/script/script-function.ts +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAEtB;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,aAAa;IAEhD,IAAI,EAAE,iBAAiB,CAUrB;IAGF,IAAI,EAAE,iBAAiB,CAOrB;IAGF,OAAO,EAAE,oBAAoB,CAI3B;IAGF,QAAQ,EAAE,qBAAqB,CAE7B;IAGF,IAAI,EAAE,iBAAiB,CAWrB;IAGF,MAAM,EAAE,sBAAsB,CAG5B;IAGF,YAAY,EAAE,yBAAyB,CAErC;IAGF,YAAY,EAAE,yBAAyB,CAErC;IAGF,UAAU,EAAE,uBAAuB,CAKjC;IAGF,IAAI,EAAE,iBAAiB,CAGrB;IAGF,MAAM,EAAE,mBAAmB,CAgCzB;IAGF,KAAK,EAAE,sBAAsB,CAI3B;IAGF,iBAAiB,EAAE,MAAM,CAAM;IAG/B,iBAAiB,EAAE,SAAS,GAAG,OAAO,CAAW;IAGjD,iBAAiB,EAAE,MAAM,CAAM;IAG/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAQ;IAGjD,SAAS,EAAE,yBAAyB,CAmBlC;IAEF;;;;OAIG;IACH,GAAG,EAAE,gBAAgB,CAWnB;IAEF;;;;OAIG;IACH,iBAAiB,EAAE,wBAAwB,CAIzC;IAEF;;;;OAIG;IACH,WAAW,EAAE,gBAAgB,CAa3B;CACH"}
1
+ {"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,iBAAiB,EACjB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EACjB,yBAAyB,EACzB,yBAAyB,EACzB,iBAAiB,EACjB,uBAAuB,EACvB,iBAAiB,EACjB,mBAAmB,EACnB,sBAAsB,EACtB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,EAChB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,cAAc,CAAC;AAEtB;;;;;;;;GAQG;AACH,qBAAa,YAAa,YAAW,aAAa;IAEhD,IAAI,EAAE,iBAAiB,CAUrB;IAGF,IAAI,EAAE,iBAAiB,CAOrB;IAGF,OAAO,EAAE,oBAAoB,CAI3B;IAGF,QAAQ,EAAE,qBAAqB,CAE7B;IAGF,IAAI,EAAE,iBAAiB,CAWrB;IAGF,MAAM,EAAE,sBAAsB,CAG5B;IAGF,YAAY,EAAE,yBAAyB,CAErC;IAGF,YAAY,EAAE,yBAAyB,CAErC;IAGF,UAAU,EAAE,uBAAuB,CAKjC;IAGF,IAAI,EAAE,iBAAiB,CAGrB;IAGF,MAAM,EAAE,mBAAmB,CAiCzB;IAGF,KAAK,EAAE,sBAAsB,CAI3B;IAGF,iBAAiB,EAAE,MAAM,CAAM;IAG/B,iBAAiB,EAAE,SAAS,GAAG,OAAO,CAAW;IAGjD,iBAAiB,EAAE,MAAM,CAAM;IAG/B,iBAAiB,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAAQ;IAGjD,SAAS,EAAE,yBAAyB,CAmBlC;IAEF;;;;OAIG;IACH,GAAG,EAAE,gBAAgB,CAWnB;IAEF;;;;OAIG;IACH,iBAAiB,EAAE,wBAAwB,CAIzC;IAEF;;;;OAIG;IACH,WAAW,EAAE,gBAAgB,CAa3B;CACH"}
@@ -111,6 +111,7 @@ export class GlobalConfig {
111
111
  aiUploadMaxSize: 5242880,
112
112
  aiAutoQuestion: true,
113
113
  asyncImport: false,
114
+ aiTopicStorageMode: 'DEFAULT',
114
115
  };
115
116
  // 全局分页流布局配置
116
117
  this.drtab = {
@@ -1,4 +1,4 @@
1
- import { IDEForm } from '@ibiz/model-core';
1
+ import { IDEForm, IDEFormDetail } from '@ibiz/model-core';
2
2
  import { IEditFormController, IFormMDCtrlRepeaterController } from '../../../../../interface';
3
3
  import { FormMDCtrlController } from './form-mdctrl.controller';
4
4
  import { EditFormController } from '../../edit-form';
@@ -151,5 +151,13 @@ export declare class FormMDCtrlRepeaterController extends FormMDCtrlController i
151
151
  * @memberof FormMDCtrlRepeaterController
152
152
  */
153
153
  setDefaultValue(data: IData, type: 'create' | 'update'): void;
154
+ /**
155
+ * @description 获取成员注入属性
156
+ * @param {IDEFormDetail} model 模型
157
+ * @param {IData} data 数据
158
+ * @returns {*} {IParams}
159
+ * @memberof FormMDCtrlRepeaterController
160
+ */
161
+ getDetailAttrs(model: IDEFormDetail, data: IData): IParams;
154
162
  }
155
163
  //# sourceMappingURL=form-mdctrl-repeater.controller.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"form-mdctrl-repeater.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,OAAO,EAAiB,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAEL,mBAAmB,EACnB,6BAA6B,EAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD;;;;;;GAMG;AACH,qBAAa,4BACX,SAAQ,oBACR,YAAW,6BAA6B;IAExC,IAAI,EAAG,kBAAkB,CAAC;IAE1B;;;;;OAKG;IACH,IAAI,KAAK,IAAI,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,CAElC;IAED;;;;;OAKG;IACH,IAAI,UAAU,IAAI,OAAO,CAMxB;IAED;;;;OAIG;IACH,aAAa,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,CAAe;IAEjE;;;;OAIG;IACH,YAAY,EAAE,OAAO,CAAS;IAE9B;;;;OAIG;IACH,YAAY,EAAG,OAAO,CAAC;IAEvB;;;OAGG;IACH,WAAW,mCAA0C;IAErD;;;;;OAKG;cACa,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCvC;;;OAGG;IACH,mBAAmB,IAAI,IAAI;IA2C3B;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAgB1C;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,GAAE,KAAU,GAAG,OAAO;IAwBpD;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI;IAUxE;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAWlC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAWxC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI;IAW7C;;;;;;;;;;OAUG;YACW,cAAc;IAY5B;;;;OAIG;IACG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC3C;;;;;OAKG;IACG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B3C;;;;;OAKG;IACH,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAQ7D;;;;;OAKG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBtD;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5D;;;;;OAKG;IACH,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI;CAkC9D"}
1
+ {"version":3,"file":"form-mdctrl-repeater.controller.d.ts","sourceRoot":"","sources":["../../../../../../src/controller/control/form/form-detail/form-mdctrl/form-mdctrl-repeater.controller.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmB,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAE3E,OAAO,EAEL,mBAAmB,EACnB,6BAA6B,EAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AAGrD,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAGvD;;;;;;GAMG;AACH,qBAAa,4BACX,SAAQ,oBACR,YAAW,6BAA6B;IAExC,IAAI,EAAG,kBAAkB,CAAC;IAE1B;;;;;OAKG;IACH,IAAI,KAAK,IAAI,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,CAElC;IAED;;;;;OAKG;IACH,IAAI,UAAU,IAAI,OAAO,CAMxB;IAED;;;;OAIG;IACH,aAAa,EAAE,MAAM,GAAG,WAAW,GAAG,YAAY,CAAe;IAEjE;;;;OAIG;IACH,YAAY,EAAE,OAAO,CAAS;IAE9B;;;;OAIG;IACH,YAAY,EAAG,OAAO,CAAC;IAEvB;;;OAGG;IACH,WAAW,mCAA0C;IAErD;;;;;OAKG;cACa,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCvC;;;OAGG;IACH,mBAAmB,IAAI,IAAI;IA2C3B;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,IAAI,IAAI;IAgB1C;;;;OAIG;IACI,kBAAkB,CAAC,IAAI,GAAE,KAAU,GAAG,OAAO;IAwBpD;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,mBAAmB,GAAG,IAAI;IAUxE;;;;OAIG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC;IAYlC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,CAAC;IAYxC;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,GAAG,IAAI,GAAG,IAAI;IAW7C;;;;;;;;;;OAUG;YACW,cAAc;IAY5B;;;;OAIG;IACG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgC3C;;;;;OAKG;IACG,MAAM,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA4B3C;;;;;OAKG;IACH,UAAU,CAAC,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,IAAI;IAQ7D;;;;;OAKG;IACG,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBtD;;;;;OAKG;IACG,eAAe,CAAC,KAAK,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAa5D;;;;;OAKG;IACH,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,GAAG,IAAI;IAmC7D;;;;;;OAMG;IACH,cAAc,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO;CAY3D"}
@@ -4,7 +4,7 @@ import { clone, isNil } from 'ramda';
4
4
  import { FormDetailEventName, } from '../../../../../interface';
5
5
  import { FormMDCtrlController } from './form-mdctrl.controller';
6
6
  import { getDefaultValue } from '../../../../utils';
7
- import { ScriptFactory } from '../../../../../utils';
7
+ import { ScriptFactory, filterPresetAttrs } from '../../../../../utils';
8
8
  import { PredefinedAttributes } from '../../../../../constant';
9
9
  /**
10
10
  * @description 表单多数据部件(重复器)控制器
@@ -192,7 +192,10 @@ export class FormMDCtrlRepeaterController extends FormMDCtrlController {
192
192
  * @memberof FormMDCtrlRepeaterController
193
193
  */
194
194
  async validate() {
195
- const values = await Promise.all(Array.from(this.repeaterMap.values()).map(form => form.state.isLoaded && form.validate()));
195
+ // 只校验isLoaded为true的,false表示多余的表单控制器
196
+ const values = await Promise.all(Array.from(this.repeaterMap.values())
197
+ .filter(form => form.state.isLoaded)
198
+ .map(form => form.validate()));
196
199
  // 找不到value为false即全部是true
197
200
  return values.findIndex(value => !value) === -1;
198
201
  }
@@ -202,7 +205,10 @@ export class FormMDCtrlRepeaterController extends FormMDCtrlController {
202
205
  * @memberof FormMDCtrlRepeaterController
203
206
  */
204
207
  async silentValidate() {
205
- const values = await Promise.all(Array.from(this.repeaterMap.values()).map(form => form.state.isLoaded && form.silentValidate()));
208
+ // 只校验isLoaded为true的,false表示多余的表单控制器
209
+ const values = await Promise.all(Array.from(this.repeaterMap.values())
210
+ .filter(form => form.state.isLoaded)
211
+ .map(form => form.silentValidate()));
206
212
  // 找不到value为false即全部是true
207
213
  return values.findIndex(value => !value) === -1;
208
214
  }
@@ -400,4 +406,20 @@ export class FormMDCtrlRepeaterController extends FormMDCtrlController {
400
406
  isBreak: true,
401
407
  });
402
408
  }
409
+ /**
410
+ * @description 获取成员注入属性
411
+ * @param {IDEFormDetail} model 模型
412
+ * @param {IData} data 数据
413
+ * @returns {*} {IParams}
414
+ * @memberof FormMDCtrlRepeaterController
415
+ */
416
+ getDetailAttrs(model, data) {
417
+ const attrs = {};
418
+ filterPresetAttrs(model.controlAttributes).forEach(item => {
419
+ if (item.attrName && item.attrValue) {
420
+ attrs[item.attrName] = ScriptFactory.execSingleLine(item.attrValue, Object.assign(Object.assign({}, this.form.getEventArgs()), { data }));
421
+ }
422
+ });
423
+ return attrs;
424
+ }
403
425
  }
@@ -275,5 +275,13 @@ export interface IApiGlobalCommonConfig {
275
275
  * @memberof IApiGlobalCommonConfig
276
276
  */
277
277
  asyncImport: boolean;
278
+ /**
279
+ * @description AI话题存储模式
280
+ * @type {('DEFAULT' | 'REMOTESESSION')} DEFAULT:默认值,会话数据基于config和远程session存储配合存储; REMOTESESSION:远程,会话仅远程session存储
281
+ * @default DEFAULT
282
+ * @platform web
283
+ * @memberof IApiGlobalCommonConfig
284
+ */
285
+ aiTopicStorageMode: 'DEFAULT' | 'REMOTESESSION';
278
286
  }
279
287
  //# sourceMappingURL=i-api-global-common-config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"i-api-global-common-config.d.ts","sourceRoot":"","sources":["../../../../../src/interface/api/common/global-config/i-api-global-common-config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,aAAa,EAAE,SAAS,GAAG,aAAa,CAAC;IAEzC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;;;;;OAOG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,gBAAgB,EAAE,SAAS,GAAG,UAAU,CAAC;IAEzC;;;;;;;OAOG;IACH,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC;IAEpC;;;;;;OAMG;IACH,mBAAmB,EAAE,SAAS,GAAG,QAAQ,CAAC;IAE1C;;;;;;;OAOG;IACH,sBAAsB,EAAE,SAAS,GAAG,QAAQ,CAAC;IAE7C;;;;;;OAMG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAE1B;;;;;;OAMG;IACH,sBAAsB,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAE1D;;;;;;OAMG;IACH,8BAA8B,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IAEhE;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IAE/C;;;;;;OAMG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAE7B;;;;;;OAMG;IACH,yBAAyB,EAAE,OAAO,CAAC;IAEnC;;;;;;OAMG;IACH,yBAAyB,EAAE,OAAO,CAAC;IAEnC;;;;;;OAMG;IACH,kBAAkB,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9B;;;;;OAKG;IACH,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C;;;;;OAKG;IACH,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/C;;;;;;OAMG;IACH,0BAA0B,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAE9C;;;;;;;OAOG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAE5B;;;;;;;OAOG;IACH,sBAAsB,EAAE,MAAM,CAAC;IAE/B;;;;;;;OAOG;IACH,uBAAuB,EAAE,OAAO,CAAC;IAEjC;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;;;;;OAOG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;;;;OAOG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;;;;OAMG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;;;;;OAOG;IACH,WAAW,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"i-api-global-common-config.d.ts","sourceRoot":"","sources":["../../../../../src/interface/api/common/global-config/i-api-global-common-config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;OAMG;IACH,aAAa,EAAE,SAAS,GAAG,aAAa,CAAC;IAEzC;;;;;OAKG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;;;;;OAOG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,gBAAgB,EAAE,SAAS,GAAG,UAAU,CAAC;IAEzC;;;;;;;OAOG;IACH,YAAY,EAAE,SAAS,GAAG,SAAS,CAAC;IAEpC;;;;;;OAMG;IACH,mBAAmB,EAAE,SAAS,GAAG,QAAQ,CAAC;IAE1C;;;;;;;OAOG;IACH,sBAAsB,EAAE,SAAS,GAAG,QAAQ,CAAC;IAE7C;;;;;;OAMG;IACH,gBAAgB,EAAE,OAAO,CAAC;IAE1B;;;;;;OAMG;IACH,sBAAsB,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAE1D;;;;;;OAMG;IACH,8BAA8B,EAAE,SAAS,GAAG,UAAU,GAAG,MAAM,CAAC;IAEhE;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAC;IAE/C;;;;;;OAMG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAE7B;;;;;;OAMG;IACH,yBAAyB,EAAE,OAAO,CAAC;IAEnC;;;;;;OAMG;IACH,yBAAyB,EAAE,OAAO,CAAC;IAEnC;;;;;;OAMG;IACH,kBAAkB,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAE9B;;;;;OAKG;IACH,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C;;;;;OAKG;IACH,0BAA0B,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/C;;;;;;OAMG;IACH,0BAA0B,EAAE,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC;IAE9C;;;;;;;OAOG;IACH,oBAAoB,EAAE,OAAO,CAAC;IAE9B;;;;;;OAMG;IACH,kBAAkB,EAAE,OAAO,CAAC;IAE5B;;;;;;;OAOG;IACH,sBAAsB,EAAE,MAAM,CAAC;IAE/B;;;;;;;OAOG;IACH,uBAAuB,EAAE,OAAO,CAAC;IAEjC;;;;;;OAMG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;;;;;OAOG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;;;;;OAOG;IACH,UAAU,EAAE,OAAO,CAAC;IAEpB;;;;;;;OAOG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;;;;OAMG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,CAAC;IAExB;;;;;;;OAOG;IACH,WAAW,EAAE,OAAO,CAAC;IAErB;;;;;;OAMG;IACH,kBAAkB,EAAE,SAAS,GAAG,eAAe,CAAC;CACjD"}
@@ -2,6 +2,11 @@ export declare type ApiAlignment = 'start' | 'end';
2
2
  export declare type ApiSide = 'top' | 'right' | 'bottom' | 'left';
3
3
  export declare type ApiAlignedPlacement = `${ApiSide}-${ApiAlignment}`;
4
4
  export declare type ApiPlacement = ApiSide | ApiAlignedPlacement;
5
+ /**
6
+ * @description 偏移参数
7
+ * @export
8
+ * @interface IApiAxesOffsets
9
+ */
5
10
  export interface IApiAxesOffsets {
6
11
  /**
7
12
  * @description 浮动元素与参考元素之间的间距
@@ -15,6 +20,11 @@ export interface IApiAxesOffsets {
15
20
  * @memberof IApiAxesOffsets
16
21
  */
17
22
  crossAxis?: number;
23
+ /**
24
+ * @description 浮动元素与参考元素之间的对齐轴偏移量
25
+ * @type {number}
26
+ * @memberof IApiAxesOffsets
27
+ */
18
28
  alignmentAxis?: number | null;
19
29
  }
20
30
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"i-api-popover-options.d.ts","sourceRoot":"","sources":["../../../../src/interface/api/common/i-api-popover-options.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,CAAC;AACnD,MAAM,CAAC,OAAO,MAAM,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAClE,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC;AACvE,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,OAAO,GAAG,mBAAmB,CAAC;AACjE,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IAC7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IAEtC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC;IAEZ;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB"}
1
+ {"version":3,"file":"i-api-popover-options.d.ts","sourceRoot":"","sources":["../../../../src/interface/api/common/i-api-popover-options.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,OAAO,GAAG,KAAK,CAAC;AACnD,MAAM,CAAC,OAAO,MAAM,OAAO,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAClE,MAAM,CAAC,OAAO,MAAM,mBAAmB,GAAG,GAAG,OAAO,IAAI,YAAY,EAAE,CAAC;AACvE,MAAM,CAAC,OAAO,MAAM,YAAY,GAAG,OAAO,GAAG,mBAAmB,CAAC;AACjE;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC/B;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,OAAO;IAC7C;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACxB;;;;OAIG;IACH,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,YAAY,CAAC;IACzB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;OAIG;IACH,UAAU,CAAC,EAAE,eAAe,GAAG,MAAM,CAAC;IAEtC;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;OAIG;IACH,OAAO,CAAC,EAAE,CAAC,CAAC;IAEZ;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,WAAW,CAAC;CACxB"}
@@ -1 +1 @@
1
- {"version":3,"file":"raw-js-code-node.d.ts","sourceRoot":"","sources":["../../../../src/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,WAAW;IACpC,KAAK,EAAE,iBAAiB,CAAC;IAE3B,IAAI,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAiB/C"}
1
+ {"version":3,"file":"raw-js-code-node.d.ts","sourceRoot":"","sources":["../../../../src/ui-logic/ui-logic-node/raw-js-code-node/raw-js-code-node.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C;;;;;;;;;;;;;;GAcG;AACH,qBAAa,aAAc,SAAQ,WAAW;IACpC,KAAK,EAAE,iBAAiB,CAAC;IAE3B,IAAI,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC;CAkB/C"}
@@ -25,6 +25,7 @@ export class RawJSCodeNode extends UILogicNode {
25
25
  context: ctx.context,
26
26
  params: ctx.viewParam,
27
27
  uiLogic: ctx.params,
28
+ args: ctx.parameters,
28
29
  }, this.model.code || '');
29
30
  }
30
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"script-function.d.ts","sourceRoot":"","sources":["../../../src/utils/script/script-function.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,iBAAiB,CAAC;AASvE,qBAAa,cAAc;IACzB,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE7B,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IAEjC,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBAGrC,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,mBAAoC;IAkB/C;;;;;;;;OAQG;IACH,SAAS,CAAC,UAAU,CAClB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,MAAM;IAWT;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI;IA+B5E;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG,EAAE;IAuB7C;;;;;;;OAOG;IACH,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAkD9D;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;CAI/B"}
1
+ {"version":3,"file":"script-function.d.ts","sourceRoot":"","sources":["../../../src/utils/script/script-function.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,iBAAiB,CAAC;AASvE,qBAAa,cAAc;IACzB,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC;IAE7B,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,CAAM;IAEjC,SAAS,CAAC,OAAO,EAAE,mBAAmB,CAAC;gBAGrC,OAAO,EAAE,MAAM,EAAE,EACjB,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,mBAAoC;IAkB/C;;;;;;;;OAQG;IACH,SAAS,CAAC,UAAU,CAClB,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,mBAAmB,GAC3B,MAAM;IAYT;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,mBAAmB,GAAG,IAAI;IA+B5E;;;;;;;OAOG;IACH,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,OAAO,GAAG,GAAG,EAAE;IAuB7C;;;;;;;OAOG;IACH,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,IAAI;IAkD9D;;;;;;OAMG;IACH,IAAI,CAAC,MAAM,EAAE,OAAO,GAAG,OAAO;CAI/B"}
@@ -35,7 +35,8 @@ export class ScriptFunction {
35
35
  */
36
36
  formatCode(scriptCode, options) {
37
37
  let code = scriptCode;
38
- if (options.singleRowReturn) {
38
+ // 单行脚本模式脚本代码中没有return时,自动添加return
39
+ if (options.singleRowReturn && !code.includes('return')) {
39
40
  code = `return (${code})`;
40
41
  }
41
42
  if (options.isAsync) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ibiz-template/runtime",
3
- "version": "0.7.41-alpha.131",
3
+ "version": "0.7.41-alpha.133",
4
4
  "description": "运行时逻辑库",
5
5
  "type": "module",
6
6
  "main": "out/index.js",
@@ -70,5 +70,5 @@
70
70
  "qx-util": "^0.4.8",
71
71
  "ramda": "^0.29.0"
72
72
  },
73
- "gitHead": "5aea949f6ec47e740f9ea86b49ebdb546d6fb685"
73
+ "gitHead": "f43d1060a3dedd5fc1e97928d3e2b06f9dbc25a5"
74
74
  }
@@ -140,6 +140,7 @@ export class GlobalConfig implements IGlobalConfig {
140
140
  aiUploadMaxSize: 5242880,
141
141
  aiAutoQuestion: true,
142
142
  asyncImport: false,
143
+ aiTopicStorageMode: 'DEFAULT',
143
144
  };
144
145
 
145
146
  // 全局分页流布局配置
@@ -10,7 +10,7 @@ import {
10
10
  import { FormMDCtrlController } from './form-mdctrl.controller';
11
11
  import { EditFormController } from '../../edit-form';
12
12
  import { getDefaultValue } from '../../../../utils';
13
- import { ScriptFactory } from '../../../../../utils';
13
+ import { ScriptFactory, filterPresetAttrs } from '../../../../../utils';
14
14
  import { FormNotifyState } from '../../../../constant';
15
15
  import { PredefinedAttributes } from '../../../../../constant';
16
16
 
@@ -238,10 +238,11 @@ export class FormMDCtrlRepeaterController
238
238
  * @memberof FormMDCtrlRepeaterController
239
239
  */
240
240
  async validate(): Promise<boolean> {
241
+ // 只校验isLoaded为true的,false表示多余的表单控制器
241
242
  const values = await Promise.all(
242
- Array.from(this.repeaterMap.values()).map(
243
- form => form.state.isLoaded && form.validate(),
244
- ),
243
+ Array.from(this.repeaterMap.values())
244
+ .filter(form => form.state.isLoaded)
245
+ .map(form => form.validate()),
245
246
  );
246
247
 
247
248
  // 找不到value为false即全部是true
@@ -254,10 +255,11 @@ export class FormMDCtrlRepeaterController
254
255
  * @memberof FormMDCtrlRepeaterController
255
256
  */
256
257
  async silentValidate(): Promise<boolean> {
258
+ // 只校验isLoaded为true的,false表示多余的表单控制器
257
259
  const values = await Promise.all(
258
- Array.from(this.repeaterMap.values()).map(
259
- form => form.state.isLoaded && form.silentValidate(),
260
- ),
260
+ Array.from(this.repeaterMap.values())
261
+ .filter(form => form.state.isLoaded)
262
+ .map(form => form.silentValidate()),
261
263
  );
262
264
 
263
265
  // 找不到value为false即全部是true
@@ -476,4 +478,24 @@ export class FormMDCtrlRepeaterController
476
478
  },
477
479
  );
478
480
  }
481
+
482
+ /**
483
+ * @description 获取成员注入属性
484
+ * @param {IDEFormDetail} model 模型
485
+ * @param {IData} data 数据
486
+ * @returns {*} {IParams}
487
+ * @memberof FormMDCtrlRepeaterController
488
+ */
489
+ getDetailAttrs(model: IDEFormDetail, data: IData): IParams {
490
+ const attrs: IParams = {};
491
+ filterPresetAttrs(model.controlAttributes).forEach(item => {
492
+ if (item.attrName && item.attrValue) {
493
+ attrs[item.attrName!] = ScriptFactory.execSingleLine(item.attrValue!, {
494
+ ...this.form.getEventArgs(),
495
+ data,
496
+ });
497
+ }
498
+ });
499
+ return attrs;
500
+ }
479
501
  }
@@ -307,4 +307,13 @@ export interface IApiGlobalCommonConfig {
307
307
  * @memberof IApiGlobalCommonConfig
308
308
  */
309
309
  asyncImport: boolean;
310
+
311
+ /**
312
+ * @description AI话题存储模式
313
+ * @type {('DEFAULT' | 'REMOTESESSION')} DEFAULT:默认值,会话数据基于config和远程session存储配合存储; REMOTESESSION:远程,会话仅远程session存储
314
+ * @default DEFAULT
315
+ * @platform web
316
+ * @memberof IApiGlobalCommonConfig
317
+ */
318
+ aiTopicStorageMode: 'DEFAULT' | 'REMOTESESSION';
310
319
  }
@@ -2,6 +2,11 @@ export declare type ApiAlignment = 'start' | 'end';
2
2
  export declare type ApiSide = 'top' | 'right' | 'bottom' | 'left';
3
3
  export declare type ApiAlignedPlacement = `${ApiSide}-${ApiAlignment}`;
4
4
  export declare type ApiPlacement = ApiSide | ApiAlignedPlacement;
5
+ /**
6
+ * @description 偏移参数
7
+ * @export
8
+ * @interface IApiAxesOffsets
9
+ */
5
10
  export interface IApiAxesOffsets {
6
11
  /**
7
12
  * @description 浮动元素与参考元素之间的间距
@@ -15,6 +20,11 @@ export interface IApiAxesOffsets {
15
20
  * @memberof IApiAxesOffsets
16
21
  */
17
22
  crossAxis?: number;
23
+ /**
24
+ * @description 浮动元素与参考元素之间的对齐轴偏移量
25
+ * @type {number}
26
+ * @memberof IApiAxesOffsets
27
+ */
18
28
  alignmentAxis?: number | null;
19
29
  }
20
30
 
@@ -33,6 +33,7 @@ export class RawJSCodeNode extends UILogicNode {
33
33
  context: ctx.context,
34
34
  params: ctx.viewParam,
35
35
  uiLogic: ctx.params,
36
+ args: ctx.parameters,
36
37
  },
37
38
  this.model.code || '',
38
39
  );
@@ -53,7 +53,8 @@ export class ScriptFunction {
53
53
  options: IScriptFunctionOpts,
54
54
  ): string {
55
55
  let code = scriptCode;
56
- if (options.singleRowReturn) {
56
+ // 单行脚本模式脚本代码中没有return时,自动添加return
57
+ if (options.singleRowReturn && !code.includes('return')) {
57
58
  code = `return (${code})`;
58
59
  }
59
60
  if (options.isAsync) {