@steedos-widgets/amis-lib 6.3.0-beta.11 → 6.3.0-beta.13

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
@@ -555,9 +555,9 @@ function getSelectMap(selectOptions){
555
555
  }
556
556
 
557
557
  function getNameTplUrl(field, ctx){
558
- if(ctx.objectName === 'cms_files'){
559
- return "${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}"
560
- }
558
+ // if(ctx.objectName === 'cms_files'){
559
+ // return "${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}"
560
+ // }
561
561
  const href = Router.getObjectDetailPath({
562
562
  ...ctx, formFactor: ctx.formFactor, appId: "${appId}", objectName: ctx.objectName || "${objectName}", recordId: `\${${ctx.idFieldName}}`
563
563
  });
@@ -747,12 +747,15 @@ async function getFieldTpl (field, options){
747
747
  }
748
748
  }
749
749
 
750
- async function getFieldsTemplate(fields, display){
750
+ async function getFieldsTemplate(object, fields, display){
751
751
  let expandFields = [];
752
752
  if(display != false){
753
753
  display = true;
754
754
  }
755
- let fieldsName = ['_id', 'space'];
755
+ let fieldsName = ['_id'];
756
+ if(!object.datasource || object.datasource === 'default' || object.datasource === 'meteor'){
757
+ fieldsName.push('space');
758
+ }
756
759
  let displayFields = [];
757
760
  let fieldsArr = [];
758
761
  if(_$1.isArray(fields)){
@@ -848,7 +851,7 @@ async function getFindOneQuery$1(object, recordId, fields, options){
848
851
  }
849
852
  }
850
853
  return {
851
- query: `{${alias}:${object.name}${queryOptions}{${await getFieldsTemplate(fields)}, ${getRecordPermissionsTemplate()}}}`
854
+ query: `{${alias}:${object.name}${queryOptions}{${await getFieldsTemplate(object, fields)}, ${getRecordPermissionsTemplate()}}}`
852
855
  }
853
856
  }
854
857
 
@@ -1037,7 +1040,7 @@ async function getFindQuery(object, recordId, fields, options){
1037
1040
  // return item.replace(/^{/,"").replace(/}$/,"");
1038
1041
  // }).join(",")) : "";
1039
1042
 
1040
- const fieldsTemplate = `${await getFieldsTemplate(fields, options.expand)}${treeFields}${cfsFields}`;
1043
+ const fieldsTemplate = `${await getFieldsTemplate(object, fields, options.expand)}${treeFields}${cfsFields}`;
1041
1044
 
1042
1045
  return {
1043
1046
  orderBy: "${orderBy}",
@@ -2165,6 +2168,59 @@ function getFieldWidth(width){
2165
2168
  }
2166
2169
  }
2167
2170
 
2171
+ async function getColumnItemOnClick(field, options){
2172
+ const recordPage = await getPage({ type: 'record', appId: options.appId, objectName: options.objectName, formFactor: options.formFactor });
2173
+ const drawerRecordDetailSchema = recordPage ? Object.assign({}, recordPage.schema, {
2174
+ "recordId": `\${${options.idFieldName}}`,
2175
+ "data": {
2176
+ ...recordPage.schema.data,
2177
+ "_inDrawer": true, // 用于判断是否在抽屉中
2178
+ "recordLoaded": false, // 重置数据加载状态
2179
+ }
2180
+ }) : {
2181
+ "type": "steedos-record-detail",
2182
+ "objectApiName": "${objectName}",
2183
+ "recordId": `\${${options.idFieldName}}`,
2184
+ "showBackButton": false,
2185
+ "showButtons": true,
2186
+ "data": {
2187
+ "_inDrawer": true, // 用于判断是否在抽屉中
2188
+ "recordLoaded": false, // 重置数据加载状态
2189
+ }
2190
+ };
2191
+
2192
+ if(!(field.is_name || field.name === options.labelFieldName)){
2193
+ drawerRecordDetailSchema.objectApiName = field.reference_to;
2194
+ drawerRecordDetailSchema.recordId = `\${_display.${field.name}.value}`;
2195
+ }
2196
+ return {
2197
+ "click": {
2198
+ "actions": [
2199
+ {
2200
+ "actionType": "drawer",
2201
+ "drawer": {
2202
+ "type": "drawer",
2203
+ "title": " ",
2204
+ "headerClassName": "hidden",
2205
+ "size": "lg",
2206
+ "bodyClassName": "p-0 m-0 bg-gray-100",
2207
+ "closeOnEsc": true,
2208
+ "closeOnOutside": true,
2209
+ "resizable": true,
2210
+ "actions": [],
2211
+ "body": [
2212
+ drawerRecordDetailSchema
2213
+ ],
2214
+ "className": "steedos-record-detail-drawer app-popover",
2215
+ "id": "u:fc5f055afa8c"
2216
+ },
2217
+ "preventDefault": true
2218
+ }
2219
+ ]
2220
+ }
2221
+ };
2222
+ }
2223
+
2168
2224
  async function getTableColumns(object, fields, options){
2169
2225
  const columns = [];
2170
2226
  if(!options.isLookup && !options.isInputTable){
@@ -2204,7 +2260,10 @@ async function getTableColumns(object, fields, options){
2204
2260
  delete fieldAmis?.className;
2205
2261
 
2206
2262
  let columnItem;
2207
- if((field.is_name || field.name === options.labelFieldName) && options.objectName === 'cms_files'){
2263
+
2264
+ // PC客户端点击名称字段直接预览
2265
+ let isNode = !!(window && window.nw && window.nw.require);
2266
+ if((field.is_name || field.name === options.labelFieldName) && options.objectName === 'cms_files' && isNode){
2208
2267
  const previewFileScript = `
2209
2268
  var data = event.data;
2210
2269
  var file_name = data.versions ? data.name : "${field.label}";
@@ -2219,20 +2278,20 @@ async function getTableColumns(object, fields, options){
2219
2278
  "onEvent": {
2220
2279
  "click": {
2221
2280
  "actions": [
2222
- {
2223
- "args": {
2224
- "api": {
2225
- "url": "${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}",
2226
- "method": "get",
2227
- "headers": {
2228
- "Authorization": "Bearer ${context.tenantId},${context.authToken}"
2229
- }
2230
- }
2231
- },
2232
- "actionType": "download",
2233
- // "expression": "!!!window?.nw?.require"//浏览器上直接下载
2234
- "expression": "!!!(window && window.nw && window.nw.require)"//浏览器上直接下载
2235
- },
2281
+ // {
2282
+ // "args": {
2283
+ // "api": {
2284
+ // "url": "${(versions[0] && versions[0].url) ? versions[0].url+'?download=true' : context.rootUrl+'/api/files/files/'+versions[0]+'?download=true'}",
2285
+ // "method": "get",
2286
+ // "headers": {
2287
+ // "Authorization": "Bearer ${context.tenantId},${context.authToken}"
2288
+ // }
2289
+ // }
2290
+ // },
2291
+ // "actionType": "download",
2292
+ // // "expression": "!!!window?.nw?.require"//浏览器上直接下载
2293
+ // "expression": "!!!(window && window.nw && window.nw.require)"//浏览器上直接下载
2294
+ // },
2236
2295
  {
2237
2296
  "args": {},
2238
2297
  "actionType": "custom",
@@ -2330,57 +2389,7 @@ async function getTableColumns(object, fields, options){
2330
2389
  }
2331
2390
 
2332
2391
  if(window.innerWidth >= 768 && ((field.is_name || field.name === options.labelFieldName) || ((field.type == 'lookup' || field.type == 'master_detail') && _$1.isString(field.reference_to) && field.multiple != true)) && options.isRelated){
2333
- const recordPage = await getPage({ type: 'record', appId: options.appId, objectName: options.objectName, formFactor: options.formFactor });
2334
- const drawerRecordDetailSchema = recordPage ? Object.assign({}, recordPage.schema, {
2335
- "recordId": `\${${options.idFieldName}}`,
2336
- "data": {
2337
- ...recordPage.schema.data,
2338
- "_inDrawer": true, // 用于判断是否在抽屉中
2339
- "recordLoaded": false, // 重置数据加载状态
2340
- }
2341
- }) : {
2342
- "type": "steedos-record-detail",
2343
- "objectApiName": "${objectName}",
2344
- "recordId": `\${${options.idFieldName}}`,
2345
- "showBackButton": false,
2346
- "showButtons": true,
2347
- "data": {
2348
- "_inDrawer": true, // 用于判断是否在抽屉中
2349
- "recordLoaded": false, // 重置数据加载状态
2350
- }
2351
- };
2352
-
2353
- if(!(field.is_name || field.name === options.labelFieldName)){
2354
- drawerRecordDetailSchema.objectApiName = field.reference_to;
2355
- drawerRecordDetailSchema.recordId = `\${_display.${field.name}.value}`;
2356
- }
2357
-
2358
- columnItem.onEvent = {
2359
- "click": {
2360
- "actions": [
2361
- {
2362
- "actionType": "drawer",
2363
- "drawer": {
2364
- "type": "drawer",
2365
- "title": " ",
2366
- "headerClassName": "hidden",
2367
- "size": "lg",
2368
- "bodyClassName": "p-0 m-0 bg-gray-100",
2369
- "closeOnEsc": true,
2370
- "closeOnOutside": true,
2371
- "resizable": true,
2372
- "actions": [],
2373
- "body": [
2374
- drawerRecordDetailSchema
2375
- ],
2376
- "className": "steedos-record-detail-drawer app-popover",
2377
- "id": "u:fc5f055afa8c"
2378
- },
2379
- "preventDefault": true
2380
- }
2381
- ]
2382
- }
2383
- };
2392
+ columnItem.onEvent = await getColumnItemOnClick(field, options);
2384
2393
  }
2385
2394
 
2386
2395
  }
@@ -2593,17 +2602,23 @@ async function getMobileTableColumns(fields, options){
2593
2602
  onEvent: {
2594
2603
  "click": {
2595
2604
  "actions": [
2605
+ // {
2606
+ // "args": {
2607
+ // "api": {
2608
+ // "url": url,
2609
+ // "method": "get",
2610
+ // "headers": {
2611
+ // "Authorization": "Bearer ${context.tenantId},${context.authToken}"
2612
+ // }
2613
+ // }
2614
+ // },
2615
+ // "actionType": "download"
2616
+ // }
2596
2617
  {
2618
+ "actionType": "link",
2597
2619
  "args": {
2598
- "api": {
2599
- "url": url,
2600
- "method": "get",
2601
- "headers": {
2602
- "Authorization": "Bearer ${context.tenantId},${context.authToken}"
2603
- }
2604
- }
2605
- },
2606
- "actionType": "download"
2620
+ "link": url
2621
+ }
2607
2622
  }
2608
2623
  ],
2609
2624
  "weight": 0
@@ -3312,7 +3327,7 @@ function getReadonlyFormAdaptor(object, fields, options){
3312
3327
  nameLabel = `record._display.${nameField.name}.label`;
3313
3328
  }
3314
3329
  } else if (nameField){
3315
- nameLabel = `record._display.${nameField.name} || record.${nameField.name}`;
3330
+ nameLabel = `(record._display ? record._display.${nameField.name} : record.${nameField.name})`;
3316
3331
  }
3317
3332
  return `
3318
3333
  if(payload.data.data.length === 0){
@@ -4844,8 +4859,8 @@ const getSchema$5 = async (uiSchema, ctx) => {
4844
4859
  /*
4845
4860
  * @Author: baozhoutao@steedos.com
4846
4861
  * @Date: 2022-11-01 15:49:58
4847
- * @LastEditors: 殷亮辉 yinlianghui@hotoa.com
4848
- * @LastEditTime: 2023-06-28 23:22:31
4862
+ * @LastEditors: yinlianghui@hotoa.com yinlianghui@hotoa.com
4863
+ * @LastEditTime: 2024-05-19 10:01:07
4849
4864
  * @Description:
4850
4865
  */
4851
4866
 
@@ -4907,6 +4922,12 @@ const getSchema$4 = async (uiSchema, ctx) => {
4907
4922
  closeOnEsc: false,
4908
4923
  closeOnOutside: false,
4909
4924
  showCloseButton: true,
4925
+ "data": {
4926
+ "&": "$$",
4927
+ "_master": "${_master}",
4928
+ "_master._isRelated": "${_isRelated}",
4929
+ "_master.relatedKey": "${relatedKey}"
4930
+ },
4910
4931
  size: "lg",
4911
4932
  "onEvent": {
4912
4933
  "cancel": {
@@ -6788,6 +6809,7 @@ function getObjectListHeader$1(objectSchema, listViewName, ctx) {
6788
6809
  function getBackButtonSchema(){
6789
6810
  return {
6790
6811
  "type": "service",
6812
+ "className": "steedos-object-record-detail-header-back-button",
6791
6813
  "onEvent": {
6792
6814
  "@history_paths.changed": {
6793
6815
  "actions": [
@@ -7074,7 +7096,7 @@ async function getObjectRecordDetailHeader(objectSchema, recordId, options) {
7074
7096
  id: `page_readonly_${name}_header`,
7075
7097
  name: `page`,
7076
7098
  body: body,
7077
- className: ''
7099
+ className: "steedos-object-record-detail-header"
7078
7100
  }
7079
7101
 
7080
7102
  }
@@ -11862,7 +11884,6 @@ async function lookupToAmisSelect(field, readonly, ctx){
11862
11884
  var fieldFilters = ${JSON.stringify(field.filters)};
11863
11885
  var currentAmis = amisRequire('amis');
11864
11886
  //递归fieldFilters数组,检查每一个元素,判断若是公式,就仅把它解析
11865
- debugger;
11866
11887
  function traverseNestedArray(arr) {
11867
11888
  for (let i = 0; i < arr.length; i++) {
11868
11889
  if (Array.isArray(arr[i])) {
@@ -13616,17 +13637,17 @@ async function getFormBody(permissionFields, formFields, ctx){
13616
13637
  /*
13617
13638
  * @Author: 殷亮辉 yinlianghui@hotoa.com
13618
13639
  * @Date: 2024-01-18 15:12:41
13619
- * @LastEditors: 殷亮辉 yinlianghui@hotoa.com
13620
- * @LastEditTime: 2024-01-18 15:12:49
13640
+ * @LastEditors: baozhoutao@steedos.com
13641
+ * @LastEditTime: 2024-05-20 13:46:41
13621
13642
  */
13622
13643
  /**
13623
13644
  * 生成符合标准uuid格式的36位满足唯一性的随机串
13624
13645
  * @returns uuid
13625
13646
  */
13626
13647
  function uuidv4() {
13627
- return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, c =>
13628
- (c ^ window.crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
13629
- );
13648
+ return "10000000-1000-4000-8000-100000000000".replace(/[018]/g, function (c) {
13649
+ return (c ^ window.crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16);
13650
+ });
13630
13651
  }
13631
13652
 
13632
13653
  /*
@@ -17852,5 +17873,5 @@ const getInstanceInfo = async ({ instanceId, box }) => {
17852
17873
  };
17853
17874
  };
17854
17875
 
17855
- export { index as Field, Router, absoluteUrl, amisRender, amisRootClick, cloneObject, conditionsToFilters, createObject, defaultsDeep, deleteVariable, execute, executeButton, extendObject, fetchAPI, filtersToConditions, getAmisInputTableSchema, getApp, getApps, getAuthToken, getAuthorization, getButton, getButtonVisible, getButtonVisibleOn, getButtons, getCalendarSchema, getCreatedInfoTpl, getDateTimeTpl, getDateTpl, getDefaultRenderData, getEnv, getEnvs, getEvn, getField, getFieldTpl, getFileSrc, getFlowFormSchema, getFormPageInitSchema, getFormSchema, getGlobalNowData, getIdsPickerSchema, getImageSrc, getInstanceInfo, getListPageInitSchema, getListSchema, getListViewButtons, getListViewColumns, getListViewFilter, getListViewItemButtons, getListViewSort, getListviewInitSchema, getLocationTpl, getLookupSapceUserTreeSchema, getLookupTpl, getModifiedInfoTpl, getNameTpl, getNameTplUrl, getNotifications, getNumberTpl, getObjectDetailButtons, getObjectDetailButtonsSchemas, getObjectDetailMoreButtons, getObjectFieldsFilterBarSchema, getObjectFieldsFilterButtonSchema, getObjectFieldsFilterFormSchema, getObjectListHeader$1 as getObjectListHeader, getObjectListHeaderFieldsFilterBar, getObjectListHeaderFirstLine, getObjectListHeaderSecordLine, getObjectListViewButtonsSchemas, getObjectRecordDetailHeader, getObjectRecordDetailRelatedListButtonsSchemas, getObjectRecordDetailRelatedListHeader, getObjectRelated, getObjectRelatedList, getObjectRelatedListButtons, getObjectRelatedListHeader, getObjectRelatedListsMiniSchema, getPage, getPasswordTpl, getRecord, getRecordDetailHeaderSchema, getRecordDetailMiniSchema, getRecordDetailRelatedListSchema, getRecordDetailSchema, getRecordPageInitSchema, getRecordPermissions, getRecordServiceSchema, getRefObjectNameFieldName, getReferenceTo, getReferenceToFieldSchema, getReferenceToSync, getRelatedFieldTpl, getRelatedFieldValue, getRelatedListSchema, getRelatedsCount, getRootUrl, getSelectMap, getSelectTpl, getSelectUserSchema, getSpaceUsersPickerAmisSchema, getSpaceUsersPickerSchema, getSteedosAuth, getSwitchTpl, getTableSchema, getTenantId, getTimeTpl, getUISchema, getUISchemaSync$1 as getUISchemaSync, getUiFieldTpl, getUiFileSizeTpl, getUserId, getViewSchema, isExpression, isObject, lookupToAmis, lookupToAmisIdsPicker, lookupToAmisPicker, lookupToAmisSelect, lookupToAmisSelectUser, markReadAll, parseSingleExpression, registerRemoteAssets, registerRenders, setEnv, setEnvs, setRootUrl, setSteedosAuth, setUISchemaFunction, setVariable, standardButtonsTodo };
17876
+ export { index as Field, Router, absoluteUrl, amisRender, amisRootClick, cloneObject, conditionsToFilters, createObject, defaultsDeep, deleteVariable, execute, executeButton, extendObject, fetchAPI, filtersToConditions, getAmisInputTableSchema, getApp, getApps, getAuthToken, getAuthorization, getButton, getButtonVisible, getButtonVisibleOn, getButtons, getCalendarSchema, getCreatedInfoTpl, getDateTimeTpl, getDateTpl, getDefaultRenderData, getEnv, getEnvs, getEvn, getField, getFieldTpl, getFileSrc, getFlowFormSchema, getFormPageInitSchema, getFormSchema, getGlobalNowData, getIdsPickerSchema, getImageSrc, getInstanceInfo, getListPageInitSchema, getListSchema, getListViewButtons, getListViewColumns, getListViewFilter, getListViewItemButtons, getListViewSort, getListviewInitSchema, getLocationTpl, getLookupSapceUserTreeSchema, getLookupTpl, getModifiedInfoTpl, getNameTpl, getNameTplUrl, getNotifications, getNumberTpl, getObjectDetailButtons, getObjectDetailButtonsSchemas, getObjectDetailMoreButtons, getObjectFieldsFilterBarSchema, getObjectFieldsFilterButtonSchema, getObjectFieldsFilterFormSchema, getObjectListHeader$1 as getObjectListHeader, getObjectListHeaderFieldsFilterBar, getObjectListHeaderFirstLine, getObjectListHeaderSecordLine, getObjectListViewButtonsSchemas, getObjectRecordDetailHeader, getObjectRecordDetailRelatedListButtonsSchemas, getObjectRecordDetailRelatedListHeader, getObjectRelated, getObjectRelatedList, getObjectRelatedListButtons, getObjectRelatedListHeader, getObjectRelatedListsMiniSchema, getPage, getPasswordTpl, getRecord, getRecordDetailHeaderSchema, getRecordDetailMiniSchema, getRecordDetailRelatedListSchema, getRecordDetailSchema, getRecordPageInitSchema, getRecordPermissions, getRecordServiceSchema, getRefObjectNameFieldName, getReferenceTo, getReferenceToFieldSchema, getReferenceToSync, getRelatedFieldTpl, getRelatedFieldValue, getRelatedListSchema, getRelatedsCount, getRootUrl, getSelectMap, getSelectTpl, getSelectUserSchema, getSpaceUsersPickerAmisSchema, getSpaceUsersPickerSchema, getSteedosAuth, getSwitchTpl, getTableSchema, getTenantId, getTimeTpl, getUISchema, getUISchemaSync$1 as getUISchemaSync, getUiFieldTpl, getUiFileSizeTpl, getUserId, getViewSchema, isExpression, isObject, lookupToAmis, lookupToAmisIdsPicker, lookupToAmisPicker, lookupToAmisSelect, lookupToAmisSelectUser, markReadAll, parseSingleExpression, registerRemoteAssets, registerRenders, setEnv, setEnvs, setRootUrl, setSteedosAuth, setUISchemaFunction, setVariable, standardButtonsTodo, uuidv4 };
17856
17877
  //# sourceMappingURL=index.esm.js.map