@steedos-widgets/amis-object 1.2.8 → 1.2.9-beta.1

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.
@@ -2964,11 +2964,11 @@ async function getObjectFieldsFilterFormSchema(ctx) {
2964
2964
  payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;
2965
2965
  }
2966
2966
  const selfData = api.body.$self;
2967
- const filterFormSearchableFields = selfData.filterFormSearchableFields;
2968
2967
  const uiSchema = selfData.uiSchema;
2969
2968
  const fields = uiSchema.fields;
2970
- const searchableFields = [];
2971
-
2969
+ const filterFormSearchableFields = (selfData.filterFormSearchableFields || []).filter(function(item){
2970
+ return !!fields[item]
2971
+ });
2972
2972
  const resolveAll = function(values){
2973
2973
  payload.data = {
2974
2974
  "body": values
@@ -2983,21 +2983,7 @@ async function getObjectFieldsFilterFormSchema(ctx) {
2983
2983
  return Promise.all(filterFormSearchableFields.map(function (item) {
2984
2984
  const field = _.clone(fields[item]);
2985
2985
  if (
2986
- field && !_.includes(
2987
- [
2988
- "grid",
2989
- "avatar",
2990
- "image",
2991
- "object",
2992
- "[object]",
2993
- "[Object]",
2994
- "[grid]",
2995
- "[text]",
2996
- "audio",
2997
- "file",
2998
- ],
2999
- field.type
3000
- )
2986
+ field && window.isFieldTypeSearchable(field.type)
3001
2987
  ) {
3002
2988
  delete field.defaultValue;
3003
2989
  delete field.required;
@@ -3356,9 +3342,27 @@ async function getObjectFieldsFilterBarSchema(objectSchema, ctx) {
3356
3342
  "headers": {
3357
3343
  "Authorization": "Bearer ${context.tenantId},${context.authToken}"
3358
3344
  },
3359
- "data": null,
3345
+ "data": {
3346
+ "$self": "$$"
3347
+ },
3360
3348
  "requestAdaptor": "",
3361
- "adaptor": ""
3349
+ "adaptor": `
3350
+ if(payload.errors){
3351
+ payload.status = 2;
3352
+ payload.msg = window.t ? window.t(payload.errors[0].message) : payload.errors[0].message;
3353
+ }
3354
+ const selfData = api.body.$self;
3355
+ const uiSchema = selfData.uiSchema;
3356
+ const fields = uiSchema.fields;
3357
+ const options = (payload.data?.options || []).filter(function(item){
3358
+ let field = fields[item.value];
3359
+ return !!field && window.isFieldTypeSearchable(field.type)
3360
+ });
3361
+ payload.data = {
3362
+ "options": options
3363
+ };
3364
+ return payload;
3365
+ `
3362
3366
  },
3363
3367
  "options": [],
3364
3368
  "required": true,
@@ -4056,9 +4060,9 @@ function getObjectHeaderToolbar(mainObject, formFactor, {showDisplayAs = false,
4056
4060
  "icon": "fa fa-search",
4057
4061
  "type": "button",
4058
4062
  "badge": {
4059
- "offsetx": [
4060
- -2,
4061
- 2
4063
+ "offset": [
4064
+ -5,
4065
+ 1
4062
4066
  ],
4063
4067
  "size":8,
4064
4068
  "animation": true,
@@ -6585,6 +6589,29 @@ if(typeof window != 'undefined'){
6585
6589
  window.getFieldSearchable = getFieldSearchable;
6586
6590
  }
6587
6591
 
6592
+
6593
+ function isFieldTypeSearchable(fieldType) {
6594
+ return !___default__namespace.includes(
6595
+ [
6596
+ "grid",
6597
+ "avatar",
6598
+ "image",
6599
+ "object",
6600
+ "[object]",
6601
+ "[Object]",
6602
+ "[grid]",
6603
+ "[text]",
6604
+ "audio",
6605
+ "file",
6606
+ ],
6607
+ fieldType
6608
+ )
6609
+ }
6610
+
6611
+ if (typeof window != 'undefined') {
6612
+ window.isFieldTypeSearchable = isFieldTypeSearchable;
6613
+ }
6614
+
6588
6615
  var index = /*#__PURE__*/Object.freeze({
6589
6616
  __proto__: null,
6590
6617
  OMIT_FIELDS: OMIT_FIELDS,
@@ -6596,6 +6623,7 @@ var index = /*#__PURE__*/Object.freeze({
6596
6623
  getSelectFieldOptions: getSelectFieldOptions,
6597
6624
  convertSFieldToAmisField: convertSFieldToAmisField,
6598
6625
  getFieldSearchable: getFieldSearchable,
6626
+ isFieldTypeSearchable: isFieldTypeSearchable,
6599
6627
  getAmisStaticFieldType: getAmisStaticFieldType
6600
6628
  });
6601
6629
 
@@ -13534,11 +13562,12 @@ var AmisRecordService = function (props) { return __awaiter(void 0, void 0, void
13534
13562
  }); };
13535
13563
 
13536
13564
  var AmisRecordDetailRelatedList = function (props) { return __awaiter(void 0, void 0, void 0, function () {
13537
- var $schema, objectApiName, recordId, relatedObjectApiName, relatedKey, top, perPage, hiddenEmptyTable, appId, relatedLabel, _a, className, columns, sort, filters, visible_on, requestAdaptor, adaptor, formFactor, formData, schema;
13538
- return __generator(this, function (_b) {
13539
- switch (_b.label) {
13565
+ var $schema, objectApiName, recordId, relatedObjectApiName, data, relatedKey, top, perPage, hiddenEmptyTable, appId, relatedLabel, _a, className, columns, sort, filters, visible_on, requestAdaptor, adaptor, formFactor, formData, schema;
13566
+ var _b;
13567
+ return __generator(this, function (_c) {
13568
+ switch (_c.label) {
13540
13569
  case 0:
13541
- $schema = props.$schema, objectApiName = props.objectApiName, recordId = props.recordId, relatedObjectApiName = props.relatedObjectApiName, props.data, relatedKey = props.relatedKey, top = props.top, perPage = props.perPage, hiddenEmptyTable = props.hiddenEmptyTable, appId = props.appId, relatedLabel = props.relatedLabel, _a = props.className, className = _a === void 0 ? '' : _a, columns = props.columns, sort = props.sort, filters = props.filters, visible_on = props.visible_on, requestAdaptor = props.requestAdaptor, adaptor = props.adaptor;
13570
+ $schema = props.$schema, objectApiName = props.objectApiName, recordId = props.recordId, relatedObjectApiName = props.relatedObjectApiName, data = props.data, relatedKey = props.relatedKey, top = props.top, perPage = props.perPage, hiddenEmptyTable = props.hiddenEmptyTable, appId = props.appId, relatedLabel = props.relatedLabel, _a = props.className, className = _a === void 0 ? '' : _a, columns = props.columns, sort = props.sort, filters = props.filters, visible_on = props.visible_on, requestAdaptor = props.requestAdaptor, adaptor = props.adaptor;
13542
13571
  formFactor = props.formFactor;
13543
13572
  if (!formFactor) {
13544
13573
  formFactor = window.innerWidth < 768 ? 'SMALL' : 'LARGE';
@@ -13559,8 +13588,17 @@ var AmisRecordDetailRelatedList = function (props) { return __awaiter(void 0, vo
13559
13588
  }
13560
13589
  return [4 /*yield*/, getRecordDetailRelatedListSchema(objectApiName, recordId, relatedObjectApiName, relatedKey, { top: top, perPage: perPage, appId: appId, relatedLabel: relatedLabel, className: className, formFactor: formFactor, columns: columns, sort: sort, filters: filters, visible_on: visible_on, isRelated: true, hiddenEmptyTable: hiddenEmptyTable, requestAdaptor: requestAdaptor, adaptor: adaptor })];
13561
13590
  case 1:
13562
- schema = (_b.sent()).amisSchema;
13591
+ schema = (_c.sent()).amisSchema;
13563
13592
  schema.data = Object.assign(schema.data, formData);
13593
+ if (___default.has(props, "recordId") && $schema.recordId !== "${recordId}") {
13594
+ schema.data = Object.assign(schema.data, {
13595
+ _master: {
13596
+ record: (_b = data === null || data === void 0 ? void 0 : data._master) === null || _b === void 0 ? void 0 : _b.record,
13597
+ objectName: objectApiName,
13598
+ recordId: recordId
13599
+ }
13600
+ });
13601
+ }
13564
13602
  return [2 /*return*/, schema];
13565
13603
  }
13566
13604
  });