@steedos-widgets/amis-lib 1.3.4-beta.10 → 1.3.4-beta.12

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.
package/dist/index.esm.js CHANGED
@@ -443,8 +443,8 @@ function getLookupListView(refObjectConfig) {
443
443
  /*
444
444
  * @Author: baozhoutao@steedos.com
445
445
  * @Date: 2022-05-23 09:53:08
446
- * @LastEditors: 殷亮辉 yinlianghui@hotoa.com
447
- * @LastEditTime: 2023-09-19 14:38:39
446
+ * @LastEditors: liaodaxue
447
+ * @LastEditTime: 2023-10-11 17:32:17
448
448
  * @Description:
449
449
  */
450
450
 
@@ -505,7 +505,7 @@ function getSelectMap(selectOptions){
505
505
  if(optionColor){
506
506
  const background = optionColor.charAt(0) === '#' ? optionColor : '#'+optionColor;
507
507
  const color = getContrastColor(background);
508
- const optionColorStyle = 'background:'+background+';color:'+color;
508
+ const optionColorStyle = 'background:'+background+';color:'+color+';line-height:1.5rem';
509
509
  map[optionValue] = `<span class="rounded-xl px-2 py-1" style='${optionColorStyle}'>${option.label}</span>`;
510
510
  }else {
511
511
  map[optionValue] = option.label;
@@ -962,17 +962,17 @@ async function getFindQuery(object, recordId, fields, options){
962
962
  }
963
963
 
964
964
  const countQuery = options.count === false ? "" : `,count:${object.name}__count(filters:{__filters})`;
965
- const moreQuerie = options.moreQueries?.length ? ("," + options.moreQueries.map(function(item){
966
- // 把最外层的{}去除
967
- return item.replace(/^{/,"").replace(/}$/,"");
968
- }).join(",")) : "";
965
+ // const moreQuerie = options.moreQueries?.length ? ("," + options.moreQueries.map(function(item){
966
+ // // 把最外层的{}去除
967
+ // return item.replace(/^{/,"").replace(/}$/,"");
968
+ // }).join(",")) : "";
969
969
 
970
970
  return {
971
971
  orderBy: "${orderBy}",
972
972
  orderDir: "${orderDir}",
973
973
  pageNo: "${page}",
974
974
  pageSize: "${perPage}",
975
- query: `{${alias}:${object.name}${queryOptions}{${await getFieldsTemplate(fields, options.expand)}${treeFields}${cfsFields}}${countQuery}${moreQuerie}}`
975
+ query: `{${alias}:${object.name}${queryOptions}{${await getFieldsTemplate(fields, options.expand)}${treeFields}${cfsFields}}${countQuery}}`
976
976
  }
977
977
  }
978
978
 
@@ -5393,6 +5393,7 @@ function getObjectFooterToolbar(mainObject, formFactor, options) {
5393
5393
  ]
5394
5394
  }else {
5395
5395
  return [
5396
+ "statistics",
5396
5397
  {
5397
5398
  "type": "pagination",
5398
5399
  "maxButtons": 5
@@ -6184,10 +6185,10 @@ async function lookupToAmisSelect(field, readonly, ctx){
6184
6185
  // const labelFieldKey = referenceTo && referenceTo.labelField?.name || 'name';
6185
6186
 
6186
6187
  let apiInfo;
6187
-
6188
+ let defaultValueOptionsQueryData;
6188
6189
  if(referenceTo){
6189
6190
  // 字段值单独走一个请求合并到source的同一个GraphQL接口中
6190
- const defaultValueOptionsQueryData = await getFindQuery({ name: referenceTo.objectName }, null, [
6191
+ defaultValueOptionsQueryData = await getFindQuery({ name: referenceTo.objectName }, null, [
6191
6192
  Object.assign({}, referenceTo.labelField, {alias: 'label'}),
6192
6193
  Object.assign({}, referenceTo.valueField, {alias: 'value'})
6193
6194
  ], {
@@ -6200,7 +6201,7 @@ async function lookupToAmisSelect(field, readonly, ctx){
6200
6201
  }, null, [
6201
6202
  Object.assign({}, referenceTo.labelField, {alias: 'label'}),
6202
6203
  Object.assign({}, referenceTo.valueField, {alias: 'value'})
6203
- ], {expand: false, alias: 'options', queryOptions: `filters: {__filters}, top: {__top}, sort: "{__sort}"`, moreQueries: [defaultValueOptionsQueryData.query]});
6204
+ ], {expand: false, alias: 'options', queryOptions: `filters: {__filters}, top: {__top}, sort: "{__sort}"`});
6204
6205
 
6205
6206
  apiInfo.adaptor = `
6206
6207
  const data = payload.data;
@@ -6294,13 +6295,16 @@ async function lookupToAmisSelect(field, readonly, ctx){
6294
6295
  var optionsFiltersOp = "${field.multiple ? "in" : "="}";
6295
6296
  var optionsFilters = [["${valueFieldKey}", optionsFiltersOp, []]];
6296
6297
  if (defaultValue && !api.data.$term) {
6298
+ const defaultValueOptionsQueryData = ${JSON.stringify(defaultValueOptionsQueryData)};
6299
+ const defaultValueOptionsQuery = defaultValueOptionsQueryData.query.replace(/^{/,"").replace(/}$/,"");
6297
6300
  // 字段值单独请求,没值的时候在请求中返回空
6298
6301
  optionsFilters = [["${valueFieldKey}", optionsFiltersOp, defaultValue]];
6299
6302
  if(filters.length > 0){
6300
6303
  optionsFilters = [filters, optionsFilters];
6301
6304
  }
6305
+ api.data.query = "{"+api.data.query.replace(/^{/,"").replace(/}$/,"")+","+defaultValueOptionsQuery+"}";
6306
+ api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters))
6302
6307
  }
6303
- api.data.query = api.data.query.replace(/{__options_filters}/g, JSON.stringify(optionsFilters));
6304
6308
  return api;
6305
6309
  `;
6306
6310
  referenceTo ? referenceTo.labelField.name : '';
@@ -8855,18 +8859,30 @@ function getReadonlyFormAdaptor(object, fields, options){
8855
8859
  payload.status = 2;
8856
8860
  payload.msg = payload.errors[0].message;
8857
8861
  }
8862
+ ${options && options.initApiAdaptor || ''}
8858
8863
  return payload;
8859
8864
  `
8860
8865
  }
8861
8866
 
8862
8867
  async function getReadonlyFormInitApi(object, recordId, fields, options){
8868
+ let findOneOptions;
8869
+ if (!recordId && options && options.isEditor) {
8870
+ // 设计器中只读表单返回第一条记录
8871
+ findOneOptions = {
8872
+ filters: [],
8873
+ queryOptions: "top: 1"
8874
+ };
8875
+ }
8863
8876
  return {
8864
8877
  method: "post",
8865
8878
  url: getApi$2() + '&objectName=${objectName}' + "&recordId=${recordId}",
8866
8879
  cache: API_CACHE,
8867
- // requestAdaptor: "console.log('getReadonlyFormInitApi requestAdaptor', api);return api;",
8880
+ requestAdaptor: `
8881
+ ${options && options.initApiRequestAdaptor || ''}
8882
+ return api;
8883
+ `,
8868
8884
  adaptor: getReadonlyFormAdaptor(object, fields, options),
8869
- data: await getFindOneQuery$1(object, recordId, fields, options),
8885
+ data: await getFindOneQuery$1(object, recordId, fields, findOneOptions),
8870
8886
  headers: {
8871
8887
  Authorization: "Bearer ${context.tenantId},${context.authToken}"
8872
8888
  }
@@ -10426,7 +10442,7 @@ async function getObjectForm(objectSchema, ctx){
10426
10442
  }
10427
10443
 
10428
10444
  async function getObjectDetail(objectSchema, recordId, ctx){
10429
- const { formFactor, layout = formFactor === 'SMALL' ? 'normal' : "normal", labelAlign, formInitProps } = ctx;
10445
+ const { formFactor, layout = formFactor === 'SMALL' ? 'normal' : "normal", labelAlign } = ctx;
10430
10446
  const fields = ___default.values(objectSchema.fields);
10431
10447
  const formFields = getFormFields(objectSchema, ctx);
10432
10448
  const serviceId = `service_detail_page`;
@@ -10435,7 +10451,7 @@ async function getObjectDetail(objectSchema, recordId, ctx){
10435
10451
  name: `page_readonly_${recordId}`,
10436
10452
  id: serviceId,
10437
10453
  data: {global: getGlobalData('read'), context: {rootUrl: getRootUrl(), tenantId: getTenantId(), authToken: getAuthToken()}},
10438
- api: await getReadonlyFormInitApi(objectSchema, recordId, fields, formInitProps),
10454
+ api: await getReadonlyFormInitApi(objectSchema, recordId, fields, ctx),
10439
10455
  body: [
10440
10456
  {
10441
10457
  "type": "wrapper", //form 的 hiddenOn 会导致 form onEvent 异常, 使用wrapper包裹一次form,并在wrapper上控制显隐
@@ -13939,10 +13955,18 @@ const getOpinionFieldStepsName = (field, top_keywords) => {
13939
13955
  * @Author: baozhoutao@steedos.com
13940
13956
  * @Date: 2022-09-09 17:47:37
13941
13957
  * @LastEditors: baozhoutao@steedos.com
13942
- * @LastEditTime: 2023-03-18 15:32:34
13958
+ * @LastEditTime: 2023-10-10 13:57:02
13943
13959
  * @Description:
13944
13960
  */
13945
13961
 
13962
+ const getMoment = ()=>{
13963
+ if(window.amisRequire){
13964
+ return window.amisRequire("moment");
13965
+ }else if(window.moment){
13966
+ return window.moment;
13967
+ }
13968
+ };
13969
+
13946
13970
  const getTrace = ({ instance, traceId }) => {
13947
13971
  return find(instance.traces, (trace) => {
13948
13972
  return trace._id === traceId;
@@ -14162,6 +14186,8 @@ const getInstanceInfo = async ({ instanceId, box }) => {
14162
14186
  method: "get",
14163
14187
  });
14164
14188
 
14189
+ const moment = getMoment();
14190
+
14165
14191
  return {
14166
14192
  box: box,
14167
14193
  _id: instanceId,
@@ -14172,7 +14198,7 @@ const getInstanceInfo = async ({ instanceId, box }) => {
14172
14198
  applicant_name: instance.applicant_name,
14173
14199
  submitter: instance.submitter,
14174
14200
  submit_date: instance.submit_date
14175
- ? amisRequire("moment")(instance.submit_date).format("YYYY-MM-DD")
14201
+ ? (moment && moment(instance.submit_date).format("YYYY-MM-DD"))
14176
14202
  : "",
14177
14203
  state: instance.state,
14178
14204
  approveValues: values,
@@ -14212,8 +14238,7 @@ const getInstanceInfo = async ({ instanceId, box }) => {
14212
14238
  finishDate = approve.is_read ? "已读" : "未处理";
14213
14239
  judge = null;
14214
14240
  } else {
14215
- finishDate =
14216
- amisRequire("moment")(finishDate).format("YYYY-MM-DD HH:mm");
14241
+ finishDate = moment && moment(finishDate).format("YYYY-MM-DD HH:mm");
14217
14242
  }
14218
14243
 
14219
14244
  switch (judge) {