@wavemaker/variables 12.0.0-next.46502 → 12.0.0-next.47810

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 (149) hide show
  1. package/npm-shrinkwrap.json +1993 -0
  2. package/package-lock.json +1993 -0
  3. {variables → package}/package.json +4 -3
  4. {variables → package}/scripts/build.js +52 -15
  5. package/scripts/build.js.map +1 -0
  6. package/src/manager/action/timer-action.manager.js.map +1 -0
  7. {variables → package}/src/manager/variable/base-variable.manager.js +2 -2
  8. package/src/manager/variable/base-variable.manager.js.map +1 -0
  9. {variables → package}/src/manager/variable/crud-variable.manager.js +16 -16
  10. package/src/manager/variable/crud-variable.manager.js.map +1 -0
  11. {variables → package}/src/manager/variable/live-variable.manager.js +50 -50
  12. package/src/manager/variable/live-variable.manager.js.map +1 -0
  13. {variables → package}/src/manager/variable/model-variable.manager.js +12 -12
  14. package/src/manager/variable/model-variable.manager.js.map +1 -0
  15. {variables → package}/src/manager/variable/service-variable.manager.js +42 -41
  16. package/src/manager/variable/service-variable.manager.js.map +1 -0
  17. package/src/model/action/timer-action.js.map +1 -0
  18. {variables → package}/src/model/base-action.d.ts +1 -1
  19. {variables → package}/src/model/base-action.js +3 -3
  20. package/src/model/base-action.js.map +1 -0
  21. {variables → package}/src/model/base-variable.d.ts +1 -1
  22. {variables → package}/src/model/base-variable.js +16 -16
  23. package/src/model/base-variable.js.map +1 -0
  24. {variables → package}/src/model/variable/crud-variable.js +2 -2
  25. package/src/model/variable/crud-variable.js.map +1 -0
  26. {variables → package}/src/model/variable/live-variable.js +7 -7
  27. package/src/model/variable/live-variable.js.map +1 -0
  28. package/src/model/variable/model-variable.js.map +1 -0
  29. {variables → package}/src/model/variable/service-variable.js +2 -2
  30. package/src/model/variable/service-variable.js.map +1 -0
  31. package/src/types/event-notifier.js.map +1 -0
  32. {variables → package}/src/util/dataset-util.js +16 -16
  33. package/src/util/dataset-util.js.map +1 -0
  34. {variables → package}/src/util/file-upload.util.js +12 -12
  35. package/src/util/file-upload.util.js.map +1 -0
  36. package/src/util/inflight-queue.js.map +1 -0
  37. package/src/util/notify-promise.js.map +1 -0
  38. {variables → package}/src/util/utils.js +19 -19
  39. package/src/util/utils.js.map +1 -0
  40. {variables → package}/src/util/variable/live-variable.http.utils.js +6 -6
  41. package/src/util/variable/live-variable.http.utils.js.map +1 -0
  42. {variables → package}/src/util/variable/live-variable.utils.js +84 -84
  43. package/src/util/variable/live-variable.utils.js.map +1 -0
  44. {variables → package}/src/util/variable/pagination.utils.js +38 -20
  45. package/src/util/variable/pagination.utils.js.map +1 -0
  46. {variables → package}/src/util/variable/service-variable.utils.js +28 -28
  47. package/src/util/variable/service-variable.utils.js.map +1 -0
  48. {variables → package}/src/util/variable/variables.utils.js +49 -49
  49. package/src/util/variable/variables.utils.js.map +1 -0
  50. package/webpack.config.d.ts +21 -0
  51. variables/scripts/build.js.map +0 -1
  52. variables/scripts/update-version.d.ts +0 -1
  53. variables/scripts/update-version.js +0 -27
  54. variables/scripts/update-version.js.map +0 -1
  55. variables/src/manager/action/timer-action.manager.js.map +0 -1
  56. variables/src/manager/variable/base-variable.manager.js.map +0 -1
  57. variables/src/manager/variable/crud-variable.manager.js.map +0 -1
  58. variables/src/manager/variable/live-variable.manager.js.map +0 -1
  59. variables/src/manager/variable/model-variable.manager.js.map +0 -1
  60. variables/src/manager/variable/service-variable.manager.js.map +0 -1
  61. variables/src/model/action/timer-action.js.map +0 -1
  62. variables/src/model/base-action.js.map +0 -1
  63. variables/src/model/base-variable.js.map +0 -1
  64. variables/src/model/variable/crud-variable.js.map +0 -1
  65. variables/src/model/variable/live-variable.js.map +0 -1
  66. variables/src/model/variable/model-variable.js.map +0 -1
  67. variables/src/model/variable/service-variable.js.map +0 -1
  68. variables/src/types/event-notifier.js.map +0 -1
  69. variables/src/util/dataset-util.js.map +0 -1
  70. variables/src/util/file-upload.util.js.map +0 -1
  71. variables/src/util/inflight-queue.js.map +0 -1
  72. variables/src/util/notify-promise.js.map +0 -1
  73. variables/src/util/utils.js.map +0 -1
  74. variables/src/util/variable/live-variable.http.utils.js.map +0 -1
  75. variables/src/util/variable/live-variable.utils.js.map +0 -1
  76. variables/src/util/variable/pagination.utils.js.map +0 -1
  77. variables/src/util/variable/service-variable.utils.js.map +0 -1
  78. variables/src/util/variable/variables.utils.js.map +0 -1
  79. variables/webpack.config.d.ts +0 -21
  80. {variables → package}/index.d.ts +0 -0
  81. {variables → package}/index.js +0 -0
  82. {variables → package}/index.js.map +0 -0
  83. {variables → package}/scripts/build.d.ts +0 -0
  84. {variables → package}/src/advanced-options.d.ts +0 -0
  85. {variables → package}/src/advanced-options.js +0 -0
  86. {variables → package}/src/advanced-options.js.map +0 -0
  87. {variables → package}/src/constants/variables.constants.d.ts +0 -0
  88. {variables → package}/src/constants/variables.constants.js +0 -0
  89. {variables → package}/src/constants/variables.constants.js.map +0 -0
  90. {variables → package}/src/factory/variable-manager.factory.d.ts +0 -0
  91. {variables → package}/src/factory/variable-manager.factory.js +0 -0
  92. {variables → package}/src/factory/variable-manager.factory.js.map +0 -0
  93. {variables → package}/src/manager/action/timer-action.manager.d.ts +0 -0
  94. {variables → package}/src/manager/action/timer-action.manager.js +0 -0
  95. {variables → package}/src/manager/variable/base-variable.manager.d.ts +0 -0
  96. {variables → package}/src/manager/variable/crud-variable.manager.d.ts +0 -0
  97. {variables → package}/src/manager/variable/live-variable.manager.d.ts +0 -0
  98. {variables → package}/src/manager/variable/model-variable.manager.d.ts +0 -0
  99. {variables → package}/src/manager/variable/service-variable.manager.d.ts +0 -0
  100. {variables → package}/src/model/action/timer-action.d.ts +0 -0
  101. {variables → package}/src/model/action/timer-action.js +0 -0
  102. {variables → package}/src/model/crud-create.d.ts +0 -0
  103. {variables → package}/src/model/crud-create.js +0 -0
  104. {variables → package}/src/model/crud-create.js.map +0 -0
  105. {variables → package}/src/model/crud-delete.d.ts +0 -0
  106. {variables → package}/src/model/crud-delete.js +0 -0
  107. {variables → package}/src/model/crud-delete.js.map +0 -0
  108. {variables → package}/src/model/crud-list.d.ts +0 -0
  109. {variables → package}/src/model/crud-list.js +0 -0
  110. {variables → package}/src/model/crud-list.js.map +0 -0
  111. {variables → package}/src/model/crud-update.d.ts +0 -0
  112. {variables → package}/src/model/crud-update.js +0 -0
  113. {variables → package}/src/model/crud-update.js.map +0 -0
  114. {variables → package}/src/model/variable/api-aware-variable.d.ts +0 -0
  115. {variables → package}/src/model/variable/api-aware-variable.js +0 -0
  116. {variables → package}/src/model/variable/api-aware-variable.js.map +0 -0
  117. {variables → package}/src/model/variable/crud-variable.d.ts +0 -0
  118. {variables → package}/src/model/variable/live-variable.d.ts +0 -0
  119. {variables → package}/src/model/variable/model-variable.d.ts +0 -0
  120. {variables → package}/src/model/variable/model-variable.js +0 -0
  121. {variables → package}/src/model/variable/service-variable.d.ts +0 -0
  122. {variables → package}/src/types/date-formatter.d.ts +0 -0
  123. {variables → package}/src/types/date-formatter.js +0 -0
  124. {variables → package}/src/types/date-formatter.js.map +0 -0
  125. {variables → package}/src/types/event-notifier.d.ts +0 -0
  126. {variables → package}/src/types/event-notifier.js +0 -0
  127. {variables → package}/src/types/http-client.service.d.ts +0 -0
  128. {variables → package}/src/types/http-client.service.js +0 -0
  129. {variables → package}/src/types/http-client.service.js.map +0 -0
  130. {variables → package}/src/types/types.d.ts +0 -0
  131. {variables → package}/src/types/types.js +0 -0
  132. {variables → package}/src/types/types.js.map +0 -0
  133. {variables → package}/src/util/dataset-util.d.ts +0 -0
  134. {variables → package}/src/util/file-upload.util.d.ts +0 -0
  135. {variables → package}/src/util/inflight-queue.d.ts +0 -0
  136. {variables → package}/src/util/inflight-queue.js +0 -0
  137. {variables → package}/src/util/notify-promise.d.ts +0 -0
  138. {variables → package}/src/util/notify-promise.js +0 -0
  139. {variables → package}/src/util/oAuth.utils.d.ts +0 -0
  140. {variables → package}/src/util/oAuth.utils.js +0 -0
  141. {variables → package}/src/util/oAuth.utils.js.map +0 -0
  142. {variables → package}/src/util/utils.d.ts +0 -0
  143. {variables → package}/src/util/variable/live-variable.http.utils.d.ts +0 -0
  144. {variables → package}/src/util/variable/live-variable.utils.d.ts +0 -0
  145. {variables → package}/src/util/variable/pagination.utils.d.ts +0 -0
  146. {variables → package}/src/util/variable/service-variable.utils.d.ts +0 -0
  147. {variables → package}/src/util/variable/variables.utils.d.ts +0 -0
  148. {variables → package}/webpack.config.js +0 -0
  149. {variables → package}/webpack.config.js.map +0 -0
@@ -24,7 +24,7 @@ import { getEvaluatedOrderBy, initiateCallback, securityService } from '../../ut
24
24
  import { getAccessToken, performAuthorization, removeAccessToken } from '../../util/oAuth.utils';
25
25
  import { PaginationUtils } from '../../util/variable/pagination.utils';
26
26
  import { VariableEvents } from "../../model/base-variable";
27
- import _ from "lodash";
27
+ import { isEmpty, get, head, last, hasIn, isObject, isArray, values, find, forEach, isString, includes, omit, extend, map, split } from 'lodash-es';
28
28
  var ServiceVariableManager = /** @class */ (function (_super) {
29
29
  __extends(ServiceVariableManager, _super);
30
30
  function ServiceVariableManager() {
@@ -47,14 +47,14 @@ var ServiceVariableManager = /** @class */ (function (_super) {
47
47
  */
48
48
  ServiceVariableManager.prototype.processErrorResponse = function (variable, errMsg, errorCB, xhrObj, skipNotification, skipDefaultNotification) {
49
49
  var methodInfo = this.getMethodInfo(variable, {}, {});
50
- var securityDefnObj = _.get(methodInfo, 'securityDefinitions.0');
50
+ var securityDefnObj = get(methodInfo, 'securityDefinitions.0');
51
51
  var advancedOptions = this.prepareCallbackOptions(xhrObj);
52
52
  // EVENT: ON_ERROR
53
53
  if (!skipNotification) {
54
54
  initiateCallback(VARIABLE_CONSTANTS.EVENT.ERROR, variable, errMsg, advancedOptions, skipDefaultNotification);
55
55
  }
56
- if (_.get(securityDefnObj, 'type') === VARIABLE_CONSTANTS.REST_SERVICE.SECURITY_DEFN.OAUTH2
57
- && _.includes([VARIABLE_CONSTANTS.HTTP_STATUS_CODE.UNAUTHORIZED, VARIABLE_CONSTANTS.HTTP_STATUS_CODE.FORBIDDEN], _.get(xhrObj, 'status'))) {
56
+ if (get(securityDefnObj, 'type') === VARIABLE_CONSTANTS.REST_SERVICE.SECURITY_DEFN.OAUTH2
57
+ && includes([VARIABLE_CONSTANTS.HTTP_STATUS_CODE.UNAUTHORIZED, VARIABLE_CONSTANTS.HTTP_STATUS_CODE.FORBIDDEN], get(xhrObj, 'status'))) {
58
58
  removeAccessToken(securityDefnObj['x-WM-PROVIDER_ID']);
59
59
  }
60
60
  /* trigger error callback */
@@ -85,13 +85,13 @@ var ServiceVariableManager = /** @class */ (function (_super) {
85
85
  var isResponsePageable = isPageable(response);
86
86
  if (variable.serviceType === 'DataService' || variable.serviceType === 'JavaService') {
87
87
  var decodedData = decodeData(response);
88
- if (_.isString(response)) {
88
+ if (isString(response)) {
89
89
  response = decodedData;
90
90
  }
91
91
  }
92
92
  if (isResponsePageable) {
93
93
  dataSet = response.content;
94
- pagination = _.omit(response, 'content');
94
+ pagination = omit(response, 'content');
95
95
  }
96
96
  else {
97
97
  dataSet = response;
@@ -111,7 +111,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
111
111
  this.transformData(response, variable);
112
112
  }
113
113
  // if a primitive type response is returned, wrap it in an object
114
- dataSet = (!_.isObject(dataSet)) ? { 'value': dataSet } : dataSet;
114
+ dataSet = (!isObject(dataSet)) ? { 'value': dataSet } : dataSet;
115
115
  // EVENT: ON_PREPARE_SETDATA
116
116
  newDataSet = initiateCallback(VARIABLE_CONSTANTS.EVENT.PREPARE_SETDATA, variable, dataSet, advancedOptions);
117
117
  if (isDefined(newDataSet)) {
@@ -124,7 +124,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
124
124
  var paginationInfo = PaginationUtils.getPaginationInfo(operationInfo, variable);
125
125
  if (paginationInfo) {
126
126
  var res = PaginationUtils.generatePaginationRes(operationInfo, paginationInfo, response, resHeaders, options, variable);
127
- if (!_.isEmpty(res)) {
127
+ if (!isEmpty(res)) {
128
128
  PaginationUtils.setVariablePagination(variable, res, options);
129
129
  }
130
130
  }
@@ -244,7 +244,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
244
244
  * @returns {any}
245
245
  */
246
246
  ServiceVariableManager.prototype.handleAuthError = function (variable, success, errorCB, options) {
247
- var isUserAuthenticated = _.get(securityService.get(), 'authenticated');
247
+ var isUserAuthenticated = get(securityService.get(), 'authenticated');
248
248
  var info;
249
249
  if (isUserAuthenticated) {
250
250
  info = {
@@ -278,7 +278,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
278
278
  */
279
279
  ServiceVariableManager.prototype.handleRequestMetaError = function (info, variable, success, errorCB, options) {
280
280
  try {
281
- var err_type = _.get(info, 'error.type');
281
+ var err_type = get(info, 'error.type');
282
282
  switch (err_type) {
283
283
  case VARIABLE_CONSTANTS.REST_SERVICE.ERR_TYPE.NO_ACCESSTOKEN:
284
284
  performAuthorization(undefined, info.securityDefnObj[VARIABLE_CONSTANTS.REST_SERVICE.OAUTH_PROVIDER_KEY], this.invoke.bind(this, variable, options, success, errorCB), null, this.getProviderInfo(variable, info.securityDefnObj['x-WM-PROVIDER_ID']));
@@ -323,10 +323,10 @@ var ServiceVariableManager = /** @class */ (function (_super) {
323
323
  */
324
324
  ServiceVariableManager.prototype.transformData = function (data, variable) {
325
325
  data.wmTransformedData = [];
326
- var columnsArray = variable.transformationColumns, dataArray = _.get(data, variable.dataField) || [], transformedData = data.wmTransformedData;
327
- _.forEach(dataArray, function (datum, index) {
326
+ var columnsArray = variable.transformationColumns, dataArray = get(data, variable.dataField) || [], transformedData = data.wmTransformedData;
327
+ forEach(dataArray, function (datum, index) {
328
328
  transformedData[index] = {};
329
- _.forEach(columnsArray, function (column, columnIndex) {
329
+ forEach(columnsArray, function (column, columnIndex) {
330
330
  transformedData[index][column] = datum[columnIndex];
331
331
  });
332
332
  });
@@ -341,9 +341,9 @@ var ServiceVariableManager = /** @class */ (function (_super) {
341
341
  */
342
342
  ServiceVariableManager.prototype.getMethodInfo = function (variable, inputFields, options) {
343
343
  var methodInfo;
344
- if (!_.isEmpty(metadataService)) {
344
+ if (!isEmpty(metadataService)) {
345
345
  var serviceDef = getClonedObject(metadataService.getByOperationId(variable.operationId, variable.getPrefabName()));
346
- methodInfo = serviceDef === null ? null : _.get(serviceDef, 'wmServiceOperationInfo');
346
+ methodInfo = serviceDef === null ? null : get(serviceDef, 'wmServiceOperationInfo');
347
347
  }
348
348
  else {
349
349
  methodInfo = variable.serviceInfo;
@@ -351,9 +351,10 @@ var ServiceVariableManager = /** @class */ (function (_super) {
351
351
  if (!methodInfo) {
352
352
  return methodInfo;
353
353
  }
354
- var securityDefnObj = _.get(methodInfo.securityDefinitions, '0'), isOAuthTypeService = securityDefnObj && (securityDefnObj.type === VARIABLE_CONSTANTS.REST_SERVICE.SECURITY_DEFN.OAUTH2);
354
+ var securityDefnObj = get(methodInfo.securityDefinitions, '0'), isOAuthTypeService = securityDefnObj && (securityDefnObj.type === VARIABLE_CONSTANTS.REST_SERVICE.SECURITY_DEFN.OAUTH2);
355
355
  if (methodInfo.parameters) {
356
356
  methodInfo.parameters.forEach(function (param) {
357
+ var _a, _b;
357
358
  // Ignore readOnly params in case of formData file params will be duplicated
358
359
  if (param.readOnly) {
359
360
  return;
@@ -362,7 +363,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
362
363
  /* supporting pagination for query service variable */
363
364
  if (VARIABLE_CONSTANTS.PAGINATION_PARAMS.indexOf(param.name) !== -1) {
364
365
  if (param.name === 'size') {
365
- param.sampleValue = options.size || param.sampleValue || parseInt(variable.maxResults, 10);
366
+ param.sampleValue = options.size || param.sampleValue || ((_b = (_a = variable === null || variable === void 0 ? void 0 : variable._paginationConfig) === null || _a === void 0 ? void 0 : _a.input) === null || _b === void 0 ? void 0 : _b.size) || parseInt(variable.maxResults, 10);
366
367
  }
367
368
  else if (param.name === 'page') {
368
369
  param.sampleValue = options.page || param.sampleValue || 1;
@@ -393,9 +394,9 @@ var ServiceVariableManager = /** @class */ (function (_super) {
393
394
  */
394
395
  ServiceVariableManager.prototype.isFileUploadInProgress = function (dataBindings) {
395
396
  var filesStatus = false;
396
- _.forEach(dataBindings, function (dataBinding) {
397
- if (_.isArray(dataBinding) && dataBinding[0] instanceof File) {
398
- _.forEach(dataBinding, function (file) {
397
+ forEach(dataBindings, function (dataBinding) {
398
+ if (isArray(dataBinding) && dataBinding[0] instanceof File) {
399
+ forEach(dataBinding, function (file) {
399
400
  if (file.status === 'onProgress') {
400
401
  filesStatus = true;
401
402
  return;
@@ -410,13 +411,13 @@ var ServiceVariableManager = /** @class */ (function (_super) {
410
411
  var _this = this;
411
412
  var fileParamCount = 0;
412
413
  var fileArr = [], promArr = [];
413
- _.forEach(inputFields, function (inputField) {
414
- if (_.isArray(inputField)) {
414
+ forEach(inputFields, function (inputField) {
415
+ if (isArray(inputField)) {
415
416
  if (inputField[0] instanceof File) {
416
417
  fileParamCount++;
417
418
  }
418
- _.forEach(inputField, function (input) {
419
- if (input instanceof File || _.find(_.values(input), function (o) { return o instanceof Blob; })) {
419
+ forEach(inputField, function (input) {
420
+ if (input instanceof File || find(values(input), function (o) { return o instanceof Blob; })) {
420
421
  fileArr.push(input);
421
422
  _this.totalFilesCount++;
422
423
  fileParamCount = fileParamCount || 1;
@@ -433,7 +434,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
433
434
  });
434
435
  if (fileParamCount === 1) {
435
436
  if (inputFields.files.length > 1) {
436
- _.forEach(fileArr, function (file) {
437
+ forEach(fileArr, function (file) {
437
438
  promArr.push(_this.uploadFileInFormData(variable, options, success, error, file, requestParams));
438
439
  });
439
440
  return Promise.all(promArr);
@@ -467,7 +468,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
467
468
  triggerFn(error);
468
469
  return;
469
470
  }
470
- if (_.isObject(output)) {
471
+ if (isObject(output)) {
471
472
  inputFields = output;
472
473
  }
473
474
  var operationInfo = this.getMethodInfo(variable, inputFields, options);
@@ -475,7 +476,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
475
476
  // check errors
476
477
  if (requestParams.error) {
477
478
  var info = this.handleRequestMetaError(requestParams, variable, success, error, options);
478
- var reason = (_.get(info, 'error.message') || 'An error occurred while triggering the variable: ') + ': ' + variable.name;
479
+ var reason = (get(info, 'error.message') || 'An error occurred while triggering the variable: ') + ': ' + variable.name;
479
480
  triggerFn(error);
480
481
  $queue.process(variable);
481
482
  return Promise.reject(reason);
@@ -488,7 +489,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
488
489
  }
489
490
  }
490
491
  // file download
491
- if (operationInfo && _.isArray(operationInfo.produces) && _.includes(operationInfo.produces, WS_CONSTANTS.CONTENT_TYPES.OCTET_STREAM) && variable.simulateFileDownload) {
492
+ if (operationInfo && isArray(operationInfo.produces) && includes(operationInfo.produces, WS_CONSTANTS.CONTENT_TYPES.OCTET_STREAM) && variable.simulateFileDownload) {
492
493
  // ToDo - variable seperation
493
494
  return variable.simulateFileDownload(requestParams, variable.dataBinding.file || variable.name, variable.dataBinding.exportType, function () {
494
495
  initiateCallback(VARIABLE_CONSTANTS.EVENT.SUCCESS, variable, null, null, null);
@@ -505,7 +506,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
505
506
  successHandler = function (response, resolve) {
506
507
  if (response && response.type || response && response.status) {
507
508
  var res = response.body || response.data;
508
- var data = _this.processSuccessResponse(res, variable, _.extend(options, { 'xhrObj': response }), success, response.headers);
509
+ var data = _this.processSuccessResponse(res, variable, extend(options, { 'xhrObj': response }), success, response.headers);
509
510
  // notify variable success
510
511
  _this.notifyInflight(variable, false, data);
511
512
  if (ServiceVariableUtils.isFileDeleteRequest(variable) && variable._deleteFileObservable) {
@@ -584,7 +585,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
584
585
  requestParams.method = options.httpMethod || 'POST';
585
586
  requestParams.url = options.url || requestParams.url;
586
587
  // If request params returns error then show an error toaster
587
- if (_.hasIn(requestParams, 'error.message')) {
588
+ if (hasIn(requestParams, 'error.message')) {
588
589
  triggerFn(errorHandler, requestParams.error.message);
589
590
  return Promise.reject(requestParams.error.message);
590
591
  }
@@ -604,13 +605,13 @@ var ServiceVariableManager = /** @class */ (function (_super) {
604
605
  };
605
606
  ServiceVariableManager.prototype.getInputParms = function (variable) {
606
607
  var wmServiceOperationInfo;
607
- if (!_.isEmpty(metadataService)) {
608
- wmServiceOperationInfo = _.get(metadataService.getByOperationId(variable.operationId, variable.getPrefabName()), 'wmServiceOperationInfo');
608
+ if (!isEmpty(metadataService)) {
609
+ wmServiceOperationInfo = get(metadataService.getByOperationId(variable.operationId, variable.getPrefabName()), 'wmServiceOperationInfo');
609
610
  }
610
611
  else {
611
612
  wmServiceOperationInfo = variable.serviceInfo;
612
613
  }
613
- return _.get(wmServiceOperationInfo, 'parameters');
614
+ return get(wmServiceOperationInfo, 'parameters');
614
615
  };
615
616
  ServiceVariableManager.prototype.setInput = function (variable, key, val, options) {
616
617
  return setInput(variable.dataBinding, key, val, options);
@@ -653,7 +654,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
653
654
  'get': function () {
654
655
  var dataSet = variable.dataSet;
655
656
  // For procedure(v1) data doesn't come under content
656
- return _.head(dataSet && dataSet.content) || _.head(dataSet) || {};
657
+ return head(dataSet && dataSet.content) || head(dataSet) || {};
657
658
  }
658
659
  });
659
660
  Object.defineProperty(variable, 'lastRecord', {
@@ -661,7 +662,7 @@ var ServiceVariableManager = /** @class */ (function (_super) {
661
662
  'get': function () {
662
663
  var dataSet = variable.dataSet;
663
664
  // For procedure(v1) data doesn't come under content
664
- return _.last(dataSet && dataSet.content) || _.last(dataSet) || {};
665
+ return last(dataSet && dataSet.content) || last(dataSet) || {};
665
666
  }
666
667
  });
667
668
  }
@@ -672,12 +673,12 @@ var ServiceVariableManager = /** @class */ (function (_super) {
672
673
  var queryParams = ServiceVariableUtils.excludePaginationParams(inputParams);
673
674
  var inputFields = {};
674
675
  // check if some param value is already available in databinding and update the inputFields accordingly
675
- _.map(variable.dataBinding, function (value, key) {
676
+ map(variable.dataBinding, function (value, key) {
676
677
  inputFields[key] = value;
677
678
  });
678
679
  // add the query params mentioned in the searchkey to inputFields
679
- _.forEach(filterFields, function (value) {
680
- if (_.includes(queryParams, value)) {
680
+ forEach(filterFields, function (value) {
681
+ if (includes(queryParams, value)) {
681
682
  inputFields[value] = searchValue;
682
683
  }
683
684
  });
@@ -692,12 +693,12 @@ var ServiceVariableManager = /** @class */ (function (_super) {
692
693
  * @returns {Promise<any>}
693
694
  */
694
695
  ServiceVariableManager.prototype.searchRecords = function (variable, options, success, error) {
695
- var inputFields = this.getQueryParams(_.split(options.searchKey, ','), options.query, variable);
696
+ var inputFields = this.getQueryParams(split(options.searchKey, ','), options.query, variable);
696
697
  var requestParams = {
697
698
  page: options.page,
698
699
  pagesize: options.pagesize,
699
- skipDataSetUpdate: true,
700
- skipToggleState: true,
700
+ skipDataSetUpdate: true, // dont update the actual variable dataset,
701
+ skipToggleState: true, // Dont change the varibale toggle state as this is a independent call
701
702
  inFlightBehavior: 'executeAll',
702
703
  inputFields: inputFields
703
704
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"service-variable.manager.js","sourceRoot":"./","sources":["src/manager/variable/service-variable.manager.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n getClonedObject,\n getValidJSON,\n isDefined,\n isPageable,\n isValidWebURL,\n noop,\n triggerFn,\n xmlToJson\n} from \"../../util/utils\";\n\nimport {upload} from '../../util/file-upload.util';\nimport {ServiceVariable} from '../../model/variable/service-variable';\nimport {ServiceVariableUtils} from '../../util/variable/service-variable.utils';\nimport {$queue} from '../../util/inflight-queue';\nimport {BaseVariableManager} from './base-variable.manager';\nimport {CONSTANTS, VARIABLE_CONSTANTS, WS_CONSTANTS} from '../../constants/variables.constants';\nimport {\n appManager,\n decodeData,\n formatExportExpression,\n getErrMessage,\n metadataService,\n setInput\n} from './../../util/variable/variables.utils';\nimport {getEvaluatedOrderBy, initiateCallback, securityService} from '../../util/variable/variables.utils';\nimport {getAccessToken, performAuthorization, removeAccessToken} from '../../util/oAuth.utils';\nimport {AdvancedOptions} from '../../advanced-options';\nimport {PaginationUtils} from '../../util/variable/pagination.utils';\nimport {VariableEvents} from \"../../model/base-variable\";\n\nimport {isEmpty, get, head, last, hasIn, isObject, isArray, values, find, forEach, isString, includes, omit, extend, map, split} from 'lodash-es';\n\nexport class ServiceVariableManager extends BaseVariableManager {\n\n fileUploadResponse: any = [];\n fileUploadCount = 0;\n totalFilesCount = 0;\n successFileUploadCount = 0;\n failedFileUploadCount = 0;\n\n /**\n * function to process error response from a service\n * @param {ServiceVariable} variable\n * @param {string} errMsg\n * @param {Function} errorCB\n * @param xhrObj\n * @param {boolean} skipNotification\n * @param {boolean} skipDefaultNotification\n */\n protected processErrorResponse(variable: ServiceVariable, errMsg: string, errorCB: Function, xhrObj?: any, skipNotification?: boolean, skipDefaultNotification?: boolean, ) {\n const methodInfo = this.getMethodInfo(variable, {}, {});\n const securityDefnObj = get(methodInfo, 'securityDefinitions.0');\n const advancedOptions: AdvancedOptions = this.prepareCallbackOptions(xhrObj);\n // EVENT: ON_ERROR\n if (!skipNotification) {\n initiateCallback(VARIABLE_CONSTANTS.EVENT.ERROR, variable, errMsg, advancedOptions, skipDefaultNotification);\n }\n if (get(securityDefnObj, 'type') === VARIABLE_CONSTANTS.REST_SERVICE.SECURITY_DEFN.OAUTH2\n && includes([VARIABLE_CONSTANTS.HTTP_STATUS_CODE.UNAUTHORIZED, VARIABLE_CONSTANTS.HTTP_STATUS_CODE.FORBIDDEN], get(xhrObj, 'status'))) {\n removeAccessToken(securityDefnObj['x-WM-PROVIDER_ID']);\n }\n /* trigger error callback */\n triggerFn(errorCB, errMsg);\n \n variable.notify(VariableEvents.AFTER_INVOKE, [this, errMsg]);\n if (!CONSTANTS.isStudioMode) {\n /* process next requests in the queue */\n variable.canUpdate = true;\n $queue.process(variable);\n\n // EVENT: ON_CAN_UPDATE\n initiateCallback(VARIABLE_CONSTANTS.EVENT.CAN_UPDATE, variable, errMsg, advancedOptions);\n }\n }\n\n /**\n * function to process success response from a service\n * @param response\n * @param variable\n * @param options\n * @param success\n */\n protected processSuccessResponse(response, variable, options, success, resHeaders?, operationInf?) {\n let dataSet;\n let newDataSet;\n let pagination = {};\n let advancedOptions: AdvancedOptions;\n let jsonParsedResponse: any = getValidJSON(response);\n\n response = isDefined(jsonParsedResponse) ? jsonParsedResponse : (response && xmlToJson(response) || response);\n\n const isResponsePageable = isPageable(response);\n if (variable.serviceType === 'DataService' || variable.serviceType === 'JavaService') {\n const decodedData = decodeData(response);\n if (isString(response)) {\n response = decodedData;\n }\n }\n if (isResponsePageable) {\n dataSet = response.content;\n pagination = omit(response, 'content');\n } else {\n dataSet = response;\n }\n /**\n * send pagination object with advancedOptions all the time.\n * With this, user can provide pagination option, even if it is not there.\n * applicable to 3rd party services that do not support pagination out of the box.\n */\n advancedOptions = this.prepareCallbackOptions(options.xhrObj, {pagination: pagination, rawData: dataSet});\n\n // EVENT: ON_RESULT\n initiateCallback(VARIABLE_CONSTANTS.EVENT.RESULT, variable, response, advancedOptions);\n\n // trigger success callback, pass data received from server as it is.\n triggerFn(success, response, pagination);\n\n /* if dataTransformation enabled, transform the data */\n if (variable.transformationColumns) {\n this.transformData(response, variable);\n }\n\n // if a primitive type response is returned, wrap it in an object\n dataSet = (!isObject(dataSet)) ? {'value': dataSet} : dataSet;\n\n // EVENT: ON_PREPARE_SETDATA\n newDataSet = initiateCallback(VARIABLE_CONSTANTS.EVENT.PREPARE_SETDATA, variable, dataSet, advancedOptions);\n if (isDefined(newDataSet)) {\n // setting newDataSet as the response to service variable onPrepareSetData\n dataSet = newDataSet;\n }\n\n const inputFields = getClonedObject(options.inputFields || variable.dataBinding);\n\n // WMS-22361 : For crud variable, apply operation info recived else deduce for service variables\n const operationInfo = operationInf ? operationInf : this.getMethodInfo(variable, inputFields, options);\n const paginationInfo = PaginationUtils.getPaginationInfo(operationInfo, variable);\n if (paginationInfo) {\n const res = PaginationUtils.generatePaginationRes(operationInfo, paginationInfo, response, resHeaders, options, variable);\n if (!isEmpty(res)) {\n PaginationUtils.setVariablePagination(variable, res, options);\n }\n }\n\n /* update the dataset against the variable, if response is non-object, insert the response in 'value' field of dataSet */\n if (!options.forceRunMode && !options.skipDataSetUpdate) {\n if (!variable._paginationConfig) {\n variable.pagination = pagination;\n }\n variable.dataSet = dataSet;\n\n // legacy properties in dataSet, [content]\n if (isResponsePageable) {\n Object.defineProperty(variable.dataSet, 'content', {\n get: () => {\n return variable.dataSet;\n }\n });\n }\n }\n variable.notify(VariableEvents.AFTER_INVOKE, [this, dataSet]);\n setTimeout(() => {\n // EVENT: ON_SUCCESS\n initiateCallback(VARIABLE_CONSTANTS.EVENT.SUCCESS, variable, dataSet, advancedOptions);\n if (!CONSTANTS.isStudioMode) {\n /* process next requests in the queue */\n variable.canUpdate = true;\n $queue.process(variable);\n }\n\n // EVENT: ON_CAN_UPDATE\n initiateCallback(VARIABLE_CONSTANTS.EVENT.CAN_UPDATE, variable, dataSet, advancedOptions);\n });\n\n return {\n data: variable.dataSet,\n pagination: variable.pagination\n };\n }\n\n protected uploadFileInFormData(variable: ServiceVariable, options: any, success: Function, error: Function, file, requestParams) {\n const promise = upload(file, variable, requestParams.data, {\n fileParamName: 'files',\n url: requestParams.url\n });\n (promise as any).then((data) => {\n this.fileUploadCount++;\n this.successFileUploadCount++;\n this.fileUploadResponse.push(data[0]);\n file._response = data[0];\n if (data && data[0] && data[0].success === false) {\n if (variable._progressObservable) {\n variable._progressObservable.next({\n 'status': \"error\",\n 'fileName': file.name,\n 'errMsg': data[0].errorMessage,\n 'uniqueId': file.uniqueId\n });\n }\n this.fileUploadResponse = [];\n this.processErrorResponse(variable, data[0].errorMessage, error, data, options.skipNotification);\n }\n if (this.totalFilesCount === this.fileUploadCount && data[0].success === true) {\n if (this.failedFileUploadCount === 0) {\n this.processSuccessResponse(this.fileUploadResponse, variable, options, success);\n this.fileUploadResponse = [];\n if (!variable.onSuccess) {\n appManager && appManager.notifyApp(appManager.getAppLocale().MESSAGE_FILE_UPLOAD_SUCCESS, 'success');\n }\n } else {\n initiateCallback(VARIABLE_CONSTANTS.EVENT.ERROR, variable, this.fileUploadResponse);\n this.fileUploadResponse = [];\n appManager && appManager.notifyApp(appManager.getAppLocale().MESSAGE_FILE_UPLOAD_ERROR, 'error');\n }\n this.fileUploadCount = 0;\n this.successFileUploadCount = 0;\n this.totalFilesCount = 0;\n }\n return data;\n }, (e) => {\n this.fileUploadCount++;\n this.failedFileUploadCount++;\n this.fileUploadResponse.push(e);\n const errMsg = getErrMessage(e, variable.httpService.getLocale());\n // if a file upload failed, notify the progress listener to take action\n if (variable._progressObservable) {\n variable._progressObservable.next({\n 'status': \"error\",\n 'fileName': file.name,\n 'errMsg': errMsg,\n 'uniqueId': file.uniqueId\n });\n }\n if (this.totalFilesCount === this.fileUploadCount) {\n this.processErrorResponse(variable, errMsg, error, e, options.skipNotification);\n this.fileUploadResponse = [];\n this.fileUploadCount = 0;\n this.failedFileUploadCount = 0;\n this.totalFilesCount = 0;\n }\n return e;\n }, (data) => {\n if (variable._progressObservable) {\n variable._progressObservable.next({\n 'progress': data,\n 'status': VARIABLE_CONSTANTS.EVENT.PROGRESS,\n 'fileName': file.name,\n 'uniqueId': file.uniqueId});\n }\n initiateCallback(VARIABLE_CONSTANTS.EVENT.PROGRESS, variable, data);\n return data;\n });\n return promise;\n }\n\n /**\n * Checks if the user is logged in or not and returns appropriate error\n * If user is not logged in, Session timeout logic is run, for user to login\n * @param variable\n * @returns {any}\n */\n private handleAuthError(variable, success, errorCB, options) {\n const isUserAuthenticated = get(securityService.get(), 'authenticated');\n let info;\n\n if (isUserAuthenticated) {\n info = {\n error: {\n message: 'You\\'re not authorised to access the resource \"' + variable.service + '\".'\n }\n };\n } else {\n info = {\n error: {\n message: 'You\\'re not authenticated to access the resource \"' + variable.service + '\".',\n skipDefaultNotification: true\n }\n };\n appManager.pushToSessionFailureRequests(variable.invoke.bind(variable, options, success, errorCB));\n appManager.handle401();\n }\n console.warn(variable.name + ': ' + info.error.message);\n return info;\n }\n\n /**\n * Handles error, when variable's metadata is not found. The reason for this can be:\n * - API is secure and user is not logged in\n * - API is secure and user is logged in but not authorized\n * - The servicedefs are not generated properly at the back end (need to edit the variable and re-run the project)\n * @param info\n * @param variable\n * @param errorCB\n * @param options\n */\n protected handleRequestMetaError(info, variable, success, errorCB, options) {\n try {\n const err_type = get(info, 'error.type');\n\n switch (err_type) {\n case VARIABLE_CONSTANTS.REST_SERVICE.ERR_TYPE.NO_ACCESSTOKEN:\n performAuthorization(undefined, info.securityDefnObj[VARIABLE_CONSTANTS.REST_SERVICE.OAUTH_PROVIDER_KEY], this.invoke.bind(this, variable, options, success, errorCB), null, this.getProviderInfo(variable, info.securityDefnObj['x-WM-PROVIDER_ID']));\n this.processErrorResponse(variable, info.error.message, errorCB, options.xhrObj, true, true);\n break;\n case VARIABLE_CONSTANTS.REST_SERVICE.ERR_TYPE.USER_UNAUTHORISED:\n info = this.handleAuthError(variable, success, errorCB, options);\n this.processErrorResponse(variable, info.error.message, errorCB, options.xhrObj, options.skipNotification, info.error.skipDefaultNotification);\n break;\n case VARIABLE_CONSTANTS.REST_SERVICE.ERR_TYPE.METADATA_MISSING:\n case VARIABLE_CONSTANTS.REST_SERVICE.ERR_TYPE.CRUD_OPERATION_MISSING:\n if (info.error.message) {\n info.error.message = info.error.message.replace('$variable', variable.name);\n let reasons;\n if (err_type === VARIABLE_CONSTANTS.REST_SERVICE.ERR_TYPE.METADATA_MISSING) {\n reasons = ['1. You did not Preview the app after creating a Variable for the imported service.', '2. You deleted the imported service this Variable is linked to.'];\n } else {\n reasons = ['1. You haven\\'t chosen an endpoint for ' + options.operation + ' operation for this Entity.'];\n }\n console.warn(info.error.message + '\\n Possible reasons for this:\\n ' + reasons.join('\\n '));\n }\n this.processErrorResponse(variable, info.error.message, errorCB, options.xhrObj, options.skipNotification, info.error.skipDefaultNotification);\n break;\n default:\n if (info.error.message) {\n console.warn(info.error.message, variable.name);\n this.processErrorResponse(variable, info.error.message, errorCB, options.xhrObj, options.skipNotification, info.error.skipDefaultNotification);\n }\n }\n } catch(err) {\n console.error(err);\n }\n return info;\n }\n\n /**\n * function to transform the service data as according to the variable configuration\n * this is used when 'transformationColumns' property is set on the variable\n * @param data: data returned from the service\n * @variable: variable object triggering the service\n */\n private transformData(data, variable) {\n data.wmTransformedData = [];\n\n const columnsArray = variable.transformationColumns,\n dataArray = get(data, variable.dataField) || [],\n transformedData = data.wmTransformedData;\n\n forEach(dataArray, function (datum, index) {\n transformedData[index] = {};\n forEach(columnsArray, function (column, columnIndex) {\n transformedData[index][column] = datum[columnIndex];\n });\n });\n }\n\n\n /**\n * gets the service operation info against a service variable\n * this is extracted from the metadataservice\n * @param variable\n * @param inputFields: sample values, if provided, will be set against params in the definition\n * @param options\n * @returns {any}\n */\n private getMethodInfo(variable, inputFields, options) {\n let methodInfo;\n if (!isEmpty(metadataService)) {\n const serviceDef = getClonedObject(metadataService.getByOperationId(variable.operationId, variable.getPrefabName()));\n methodInfo = serviceDef === null ? null : get(serviceDef, 'wmServiceOperationInfo');\n } else {\n methodInfo = variable.serviceInfo;\n }\n\n if (!methodInfo) {\n return methodInfo;\n }\n const securityDefnObj = get(methodInfo.securityDefinitions, '0'),\n isOAuthTypeService = securityDefnObj && (securityDefnObj.type === VARIABLE_CONSTANTS.REST_SERVICE.SECURITY_DEFN.OAUTH2);\n if (methodInfo.parameters) {\n methodInfo.parameters.forEach(function (param) {\n // Ignore readOnly params in case of formData file params will be duplicated\n if (param.readOnly) {\n return;\n }\n param.sampleValue = inputFields[param.name];\n /* supporting pagination for query service variable */\n if (VARIABLE_CONSTANTS.PAGINATION_PARAMS.indexOf(param.name) !== -1) {\n if (param.name === 'size') {\n param.sampleValue = options.size || param.sampleValue || variable?._paginationConfig?.input?.size || parseInt(variable.maxResults, 10);\n } else if (param.name === 'page') {\n param.sampleValue = options.page || param.sampleValue || 1;\n } else if (param.name === 'sort') {\n param.sampleValue = getEvaluatedOrderBy(variable.orderBy, options.orderBy) || param.sampleValue || '';\n }\n } else if (param.name === 'access_token' && isOAuthTypeService) {\n param.sampleValue = getAccessToken(securityDefnObj[VARIABLE_CONSTANTS.REST_SERVICE.OAUTH_PROVIDER_KEY], null);\n }\n });\n }\n return methodInfo;\n }\n\n\n /**\n * gets the provider info against a service variable's provider\n * this is extracted from the metadataservice\n * @param variable\n * @param providerId\n * @returns {any}\n */\n private getProviderInfo(variable, providerId) {\n return getClonedObject(metadataService?.getByProviderId(providerId, variable.getPrefabName()));\n }\n\n /**\n * Returns true if any of the files are in onProgress state\n */\n private isFileUploadInProgress(dataBindings) {\n let filesStatus = false;\n forEach(dataBindings, (dataBinding) => {\n if (isArray(dataBinding) && dataBinding[0] instanceof File) {\n forEach(dataBinding, (file) => {\n if (file.status === 'onProgress') {\n filesStatus = true;\n return;\n }\n });\n }\n });\n return filesStatus;\n }\n\n // Makes the call for Uploading file/ files\n protected uploadFile(variable, options, success, error, inputFields, requestParams ) {\n let fileParamCount = 0;\n const fileArr: any = [], promArr: any = [];\n forEach(inputFields, (inputField) => {\n if (isArray(inputField)) {\n if (inputField[0] instanceof File) {\n fileParamCount++;\n }\n forEach(inputField, (input) => {\n if (input instanceof File || find(values(input), o => o instanceof Blob)) {\n fileArr.push(input);\n this.totalFilesCount++;\n fileParamCount = fileParamCount || 1;\n }\n });\n } else {\n if (inputField instanceof File) {\n fileParamCount++;\n this.totalFilesCount++;\n fileArr.push(inputField);\n }\n }\n });\n if (fileParamCount === 1) {\n if (inputFields.files.length > 1) {\n forEach(fileArr, (file) => {\n promArr.push(this.uploadFileInFormData(variable, options, success, error, file, requestParams));\n });\n return Promise.all(promArr);\n } else {\n return this.uploadFileInFormData(variable, options, success, error, fileArr[0], requestParams);\n }\n }\n }\n\n /**\n * proxy for the invoke call\n * Request Info is constructed\n * if error found, error is thrown\n * else, call is made\n * @param {ServiceVariable} variable\n * @param options\n * @param {Function} success\n * @param {Function} error\n * @returns {any}\n * @private\n */\n protected _invoke (variable: ServiceVariable, options: any, success: Function, error: Function) {\n let inputFields = getClonedObject(options.inputFields || variable.dataBinding);\n // EVENT: ON_BEFORE_UPDATE\n const output: any = initiateCallback(VARIABLE_CONSTANTS.EVENT.BEFORE_UPDATE, variable, inputFields, options);\n let successHandler;\n let errorHandler;\n\n if (output === false) {\n $queue.process(variable);\n triggerFn(error);\n return;\n }\n if (isObject(output)) {\n inputFields = output;\n }\n\n const operationInfo = this.getMethodInfo(variable, inputFields, options);\n const requestParams = ServiceVariableUtils.constructRequestParams(variable, operationInfo, inputFields, options);\n // check errors\n if (requestParams.error) {\n const info = this.handleRequestMetaError(requestParams, variable, success, error, options);\n const reason = (get(info, 'error.message') || 'An error occurred while triggering the variable: ') + ': ' + variable.name;\n triggerFn(error);\n $queue.process(variable);\n return Promise.reject(reason);\n }\n\n // file upload\n if (ServiceVariableUtils.isFileUploadRequest(variable)) {\n const uploadPromise = this.uploadFile(variable, options, success, error, inputFields, requestParams);\n if (uploadPromise) {\n return uploadPromise;\n }\n }\n\n // file download\n if (operationInfo && isArray(operationInfo.produces) && includes(operationInfo.produces, WS_CONSTANTS.CONTENT_TYPES.OCTET_STREAM) && variable.simulateFileDownload) {\n // ToDo - variable seperation\n return variable.simulateFileDownload(requestParams, variable.dataBinding.file || variable.name, variable.dataBinding.exportType, function () {\n initiateCallback(VARIABLE_CONSTANTS.EVENT.SUCCESS, variable, null, null, null);\n $queue.process(variable);\n triggerFn(success);\n }, function () {\n initiateCallback(VARIABLE_CONSTANTS.EVENT.ERROR, variable, null, null, null);\n $queue.process(variable);\n triggerFn(error);\n },variable.dataBinding);\n }\n\n // notify variable progress\n this.notifyInflight(variable, !options.skipToggleState);\n\n successHandler = (response, resolve) => {\n if (response && response.type || response && response.status) {\n const res = response.body || response.data;\n const data = this.processSuccessResponse(res, variable, extend(options, {'xhrObj': response}), success, response.headers);\n // notify variable success\n this.notifyInflight(variable, false, data);\n if (ServiceVariableUtils.isFileDeleteRequest(variable) && variable._deleteFileObservable) {\n variable._deleteFileObservable.next({'status' : \"success\", response: res});\n appManager && appManager.notifyApp(appManager.getAppLocale().MESSAGE_FILE_DELETE_SUCCESS || \"File delete success\", 'success');\n }\n resolve(response);\n }\n };\n\n errorHandler = (err, reject) => {\n const errMsg = getErrMessage(err, variable.httpService.getLocale());\n // notify variable error\n this.notifyInflight(variable, false);\n this.processErrorResponse(variable, errMsg, error, err, options.skipNotification);\n if (ServiceVariableUtils.isFileDeleteRequest(variable) && variable._deleteFileObservable) {\n variable._deleteFileObservable.error({\n status : \"error\",\n error: errMsg,\n details: err\n });\n appManager && appManager.notifyApp(appManager.getAppLocale().MESSAGE_FILE_DELETE_ERROR || 'File delete failed', 'error');\n }\n reject({\n error: errMsg,\n details: err\n });\n };\n\n // make the call and return a promise to the user to support script calls made by users\n return new Promise((resolve, reject) => {\n requestParams.responseType = 'text'; // this is to return text response. JSON & XML-to-JSON parsing is handled in success handler.\n // ToDo - variable seperation\n // this.httpCall(requestParams, variable).then((response) => {\n // successHandler(response, resolve);\n // }, err => {\n // const validJSON = getValidJSON(err.error);\n // err.error = isDefined(validJSON) ? validJSON : err.error;\n // errorHandler(err, reject);\n // });\n // the _observable property on variable is used store the observable using which the network call is made\n // this can be used to cancel the variable calls.\n variable.httpService.sendCall(requestParams, variable).then((response) => {\n successHandler(response, resolve);\n }).catch(err => {\n err = err || {};\n err.error = err.error || '{}';\n const validJSON = getValidJSON(err.error);\n err.error = isDefined(validJSON) ? validJSON : err.error;\n errorHandler(err, reject);\n });\n });\n }\n\n // *********************************************************** PUBLIC ***********************************************************//\n\n public invoke(variable, options, success, error) {\n options = options || {};\n // appManager.notify('check-state-persistence-options', {\n // options: options,\n // variable: variable\n // });\n options.inputFields = options.inputFields || getClonedObject(variable.dataBinding);\n return $queue.submit(variable).then(this._invoke.bind(this, variable, options, success, error), error);\n }\n\n public setPagination(variable, data) {\n variable._paginationConfig = data;\n }\n\n public download(variable, options, successHandler, errorHandler) {\n options = options || {};\n const inputParams = getClonedObject(variable.dataBinding);\n const inputData = options.data || {};\n const methodInfo = this.getMethodInfo(variable, inputParams, options);\n let requestParams;\n\n methodInfo.relativePath += '/export';\n requestParams = ServiceVariableUtils.constructRequestParams(variable, methodInfo, inputParams);\n\n requestParams.data = inputData;\n requestParams.data.fields = formatExportExpression(inputData.fields || []);\n\n // extra options provided, these may be used in future for integrating export feature with ext. services\n requestParams.method = options.httpMethod || 'POST';\n requestParams.url = options.url || requestParams.url;\n\n // If request params returns error then show an error toaster\n if (hasIn(requestParams, 'error.message')) {\n triggerFn(errorHandler, requestParams.error.message);\n return Promise.reject(requestParams.error.message);\n }\n return variable.httpService.send(requestParams).then(response => {\n if (response && isValidWebURL(response.body.result)) {\n window.location.href = response.body.result;\n triggerFn(successHandler, response);\n } else {\n initiateCallback(VARIABLE_CONSTANTS.EVENT.ERROR, variable, response);\n triggerFn(errorHandler, response);\n }\n }, (response, xhrObj) => {\n initiateCallback(VARIABLE_CONSTANTS.EVENT.ERROR, variable, response, xhrObj);\n triggerFn(errorHandler, response);\n });\n }\n\n public getInputParms(variable) {\n let wmServiceOperationInfo;\n if (!isEmpty(metadataService)) {\n wmServiceOperationInfo = get(metadataService.getByOperationId(variable.operationId, variable.getPrefabName()), 'wmServiceOperationInfo');\n } else {\n wmServiceOperationInfo = variable.serviceInfo;\n }\n return get(wmServiceOperationInfo, 'parameters');\n }\n\n public setInput(variable, key, val, options) {\n return setInput(variable.dataBinding, key, val, options);\n }\n\n /**\n * Cancels an on going service request\n * @param variable\n * @param $file\n */\n public cancel(variable, $file?) {\n // CHecks if there is any pending requests in the queue\n if ($queue.requestsQueue.has(variable)) {\n // If the request is a File upload request then modify the elements associated with file upload\n // else unsubscribe from the observable on the variable.\n if (ServiceVariableUtils.isFileUploadRequest(variable)) {\n variable.httpService.cancel(variable, $file);\n $file.status = 'abort';\n this.totalFilesCount--;\n initiateCallback(VARIABLE_CONSTANTS.EVENT.ABORT, variable, $file);\n if (!this.isFileUploadInProgress(variable.dataBinding) && this.totalFilesCount === 0) {\n $queue.process(variable);\n // notify inflight variable\n this.notifyInflight(variable, false);\n }\n } else {\n if (variable.httpService.cancel) {\n variable.httpService.cancel(variable);\n $queue.process(variable);\n // notify inflight variable\n this.notifyInflight(variable, false);\n }\n }\n }\n }\n\n public defineFirstLastRecord(variable) {\n if (variable.isList) {\n Object.defineProperty(variable, 'firstRecord', {\n 'configurable': true,\n 'get': function () {\n const dataSet = variable.dataSet;\n // For procedure(v1) data doesn't come under content\n return head(dataSet && dataSet.content) || head(dataSet) || {};\n }\n });\n Object.defineProperty(variable, 'lastRecord', {\n 'configurable': true,\n 'get': function () {\n const dataSet = variable.dataSet;\n // For procedure(v1) data doesn't come under content\n return last(dataSet && dataSet.content) || last(dataSet) || {};\n }\n });\n }\n }\n\n // Gets the input params of the service variable and also add params from the searchKeys (filterfields)\n private getQueryParams(filterFields, searchValue, variable) {\n const inputParams = this.getInputParms(variable);\n const queryParams = ServiceVariableUtils.excludePaginationParams(inputParams);\n const inputFields = {};\n\n // check if some param value is already available in databinding and update the inputFields accordingly\n map(variable.dataBinding, function (value, key) {\n inputFields[key] = value;\n });\n\n // add the query params mentioned in the searchkey to inputFields\n forEach(filterFields, function (value) {\n if (includes(queryParams, value)) {\n inputFields[value] = searchValue;\n }\n });\n\n return inputFields;\n }\n\n /**\n * This method returns filtered records based on searchKey and queryText.\n * @param variable\n * @param options\n * @param success\n * @param error\n * @returns {Promise<any>}\n */\n public searchRecords(variable, options, success, error) {\n const inputFields = this.getQueryParams(split(options.searchKey, ','), options.query, variable);\n\n const requestParams = {\n page: options.page,\n pagesize: options.pagesize,\n skipDataSetUpdate: true, // dont update the actual variable dataset,\n skipToggleState: true, // Dont change the varibale toggle state as this is a independent call\n inFlightBehavior: 'executeAll',\n inputFields: inputFields\n };\n\n if (options.onBeforeservicecall) {\n options.onBeforeservicecall(inputFields);\n }\n\n return this.invoke(variable, requestParams, success, error).catch(noop);\n }\n}\n\n"]}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"timer-action.js","sourceRoot":"./","sources":["src/model/action/timer-action.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzE,OAAO,EAAE,sBAAsB,EAAE,MAAM,wCAAwC,CAAC;AAEhF,IAAO,UAAU,GAAG;IAChB,OAAO,sBAAsB,CAAC,GAAG,CAAC,kBAAkB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;AACzE,CAAC,CAAC;AAEF;IAAiC,+BAAU;IAKvC,qBAAY,QAAa;QACrB,YAAA,MAAK,WAAE,SAAC;QAJJ,eAAS,GAAG,KAAK,CAAC;QAClB,cAAQ,GAAG,KAAK,CAAC;QAIrB,MAAM,CAAC,MAAM,CAAC,KAAI,EAAE,QAAQ,CAAC,CAAC;;IAClC,CAAC;IAED,6BAA6B;IAC7B,0BAAI,GAAJ,UAAK,OAAO,EAAE,OAAO,EAAE,KAAK;QACxB,IAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC;YAC9B,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;QACzB,CAAC;QACD,OAAO,UAAU,EAAE,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC/D,CAAC;IAED,4BAAM,GAAN,UAAO,OAAO,EAAE,OAAO,EAAE,KAAK;QAC1B,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9C,CAAC;IAED,4BAAM,GAAN;QACI,OAAO,UAAU,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACrC,CAAC;IAED,0BAAI,GAAJ;QACI,gBAAK,CAAC,IAAI,WAAE,CAAC;QACb,IAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC;IACL,CAAC;IAED,4BAAM,GAAN;QACI,gBAAK,CAAC,MAAM,WAAE,CAAC;QACf,IAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YACjC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC/C,CAAC;IACL,CAAC;IACL,kBAAC;AAAD,CAAC,AAxCD,CAAiC,UAAU,GAwC1C","sourcesContent":["import { BaseAction } from '../base-action';\nimport { VARIABLE_CONSTANTS } from '../../constants/variables.constants';\nimport { VariableManagerFactory } from '../../factory/variable-manager.factory';\n\nconst getManager = () => {\n return VariableManagerFactory.get(VARIABLE_CONSTANTS.CATEGORY.TIMER);\n};\n\nexport class TimerAction extends BaseAction {\n private currentOptions;\n private repeating = false;\n private _isFired = false;\n\n constructor(variable: any) {\n super();\n Object.assign(this, variable);\n }\n\n // Backward compatible method\n fire(options, success, error) {\n if(this.repeating) {\n this.currentOptions = options;\n this._isFired = true;\n }\n return getManager().trigger(this, options, success, error);\n }\n\n invoke(options, success, error) {\n return this.fire(options, success, error);\n }\n\n cancel() {\n return getManager().cancel(this);\n }\n\n mute() {\n super.mute();\n if(this.repeating) {\n this.cancel();\n }\n }\n\n unmute() {\n super.unmute();\n if(this.repeating && this._isFired) {\n this.fire(this.currentOptions, null, null);\n }\n }\n}\n"]}
@@ -8,7 +8,7 @@ export declare abstract class BaseAction {
8
8
  _context: any;
9
9
  isMuted: boolean;
10
10
  execute(operation: any, options: any): any;
11
- invokeOnParamChange(obj: any, newVal: any, oldVal: any): Promise<this>;
11
+ invokeOnParamChange(obj: any, newVal: any, oldVal: any): Promise<Awaited<this>>;
12
12
  getData(): any;
13
13
  setData(dataSet: any): any;
14
14
  getValue(key: string, index: number): any;
@@ -2,7 +2,7 @@ import { DataSource } from "../types/types";
2
2
  import DatasetUtil from '../util/dataset-util';
3
3
  import { getTarget, getTargetNodeKey, getTargetObj, setValueToNode } from "../util/variable/variables.utils";
4
4
  import { getClonedObject } from "../util/utils";
5
- import _ from 'lodash';
5
+ import { isUndefined, includes } from 'lodash-es';
6
6
  var BaseAction = /** @class */ (function () {
7
7
  function BaseAction() {
8
8
  this.isMuted = false;
@@ -24,11 +24,11 @@ var BaseAction = /** @class */ (function () {
24
24
  };
25
25
  BaseAction.prototype.invokeOnParamChange = function (obj, newVal, oldVal) {
26
26
  var target = obj.target, root = getTarget(this), targetObj = getTargetObj(obj, root, this), targetNodeKey = getTargetNodeKey(target);
27
- if ((newVal === oldVal && _.isUndefined(newVal)) || (_.isUndefined(newVal) && (!_.isUndefined(oldVal) || !_.isUndefined(targetObj[targetNodeKey])))) {
27
+ if ((newVal === oldVal && isUndefined(newVal)) || (isUndefined(newVal) && (!isUndefined(oldVal) || !isUndefined(targetObj[targetNodeKey])))) {
28
28
  return;
29
29
  }
30
30
  // Skip cloning for blob column
31
- if (!_.includes(['blob', 'file'], obj.type)) {
31
+ if (!includes(['blob', 'file'], obj.type)) {
32
32
  newVal = getClonedObject(newVal);
33
33
  }
34
34
  setValueToNode(target, obj, root, this, newVal); // cloning newVal to keep the source clean
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-action.js","sourceRoot":"./","sources":["src/model/base-action.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataSource } from \"../types/types\";\nimport DatasetUtil from '../util/dataset-util';\nimport {getTarget, getTargetNodeKey, getTargetObj, setValueToNode} from \"../util/variable/variables.utils\";\nimport {getClonedObject} from \"../util/utils\";\n\nimport {isUndefined, includes} from 'lodash-es';\nexport abstract class BaseAction {\n\n protected _id: string;\n\n name: string;\n owner: string;\n category: string;\n dataSet: any;\n dataBinding: any;\n _context: any;\n isMuted = false;\n\n execute(operation, options) {\n let returnVal;\n switch (operation) {\n case DataSource.Operation.GET_NAME:\n returnVal = this.name;\n break;\n case DataSource.Operation.GET_UNIQUE_IDENTIFIER:\n returnVal = this._id;\n break;\n case DataSource.Operation.GET_CONTEXT_IDENTIFIER:\n returnVal = this._context;\n break;\n }\n return returnVal;\n }\n\n invokeOnParamChange(obj, newVal, oldVal) {\n const target = obj.target,\n root = getTarget(this),\n targetObj = getTargetObj(obj, root, this),\n targetNodeKey = getTargetNodeKey(target);\n if ((newVal === oldVal && isUndefined(newVal)) || (isUndefined(newVal) && (!isUndefined(oldVal) || !isUndefined(targetObj[targetNodeKey])))) {\n return;\n }\n // Skip cloning for blob column\n if (!includes(['blob', 'file'], obj.type)) {\n newVal = getClonedObject(newVal);\n }\n setValueToNode(target, obj, root, this, newVal); // cloning newVal to keep the source clean\n return Promise.resolve(this);\n }\n\n getData() {\n return this.dataSet;\n }\n\n setData(dataSet: any) {\n if (DatasetUtil.isValidDataset(dataSet)) {\n this.dataSet = dataSet;\n }\n return this.dataSet;\n }\n\n getValue(key: string, index: number) {\n return DatasetUtil.getValue(this.dataSet, key, index);\n }\n\n setValue(key: string, value: any) {\n return DatasetUtil.setValue(this.dataSet, key, value);\n }\n\n getItem(index: number) {\n return DatasetUtil.getItem(this.dataSet, index);\n }\n\n /**\n *\n * @param index, a number in ideal case\n * it can be the object to be replaced by the passed value\n * @param value\n * @returns {any}\n */\n setItem(index: any, value: any) {\n return DatasetUtil.setItem(this.dataSet, index, value);\n }\n\n addItem(value: any, index: number) {\n return DatasetUtil.addItem(this.dataSet, value, index);\n }\n\n removeItem(index: any, exactMatch: boolean) {\n return DatasetUtil.removeItem(this.dataSet, index, exactMatch);\n }\n\n clearData() {\n this.dataSet = DatasetUtil.getValidDataset();\n return this.dataSet;\n }\n\n getCount() {\n return DatasetUtil.getCount(this.dataSet);\n }\n\n init() {\n }\n\n mute() {\n this.isMuted = true;\n }\n\n unmute() {\n this.isMuted = false;\n }\n}\n"]}
@@ -21,7 +21,7 @@ export declare abstract class BaseVariable implements EventNotifier {
21
21
  notify(event: string, args: any[]): void;
22
22
  subscribe(event: string, fn: Function): () => void;
23
23
  execute(operation: any, options: any): any;
24
- invokeOnParamChange(obj?: any, newVal?: any, oldVal?: any): Promise<this>;
24
+ invokeOnParamChange(obj?: any, newVal?: any, oldVal?: any): Promise<Awaited<this>>;
25
25
  getData(): any;
26
26
  setData(dataSet: any): any;
27
27
  getValue(key: string, index: number): any;
@@ -3,7 +3,7 @@ import DatasetUtil from '../util/dataset-util';
3
3
  import { getTargetNodeKey, getTargetObj, getTarget, setValueToNode, internalBoundNodeMap, updateInternalNodes } from "../util/variable/variables.utils";
4
4
  import { getClonedObject } from "../util/utils";
5
5
  import { DefaultEventNotifier } from "../types/event-notifier";
6
- import _ from 'lodash';
6
+ import { omit, isUndefined, includes, set, isObject, get, isArray, isNumber, isBoolean } from 'lodash-es';
7
7
  export var VariableEvents;
8
8
  (function (VariableEvents) {
9
9
  VariableEvents["BEFORE_INVOKE"] = "beforeInvoke";
@@ -34,13 +34,13 @@ var BaseVariable = /** @class */ (function () {
34
34
  returnVal = this._context;
35
35
  break;
36
36
  case DataSource.Operation.ADD_ITEM:
37
- returnVal = this.addItem(options.item, _.omit(options, 'item'));
37
+ returnVal = this.addItem(options.item, omit(options, 'item'));
38
38
  break;
39
39
  case DataSource.Operation.SET_ITEM:
40
- returnVal = this.setItem(options.prevItem, options.item, _.omit(options, 'prevItem', 'item'));
40
+ returnVal = this.setItem(options.prevItem, options.item, omit(options, 'prevItem', 'item'));
41
41
  break;
42
42
  case DataSource.Operation.REMOVE_ITEM:
43
- returnVal = this.removeItem(options.item, _.omit(options, 'item'));
43
+ returnVal = this.removeItem(options.item, omit(options, 'item'));
44
44
  break;
45
45
  }
46
46
  return returnVal;
@@ -51,11 +51,11 @@ var BaseVariable = /** @class */ (function () {
51
51
  return;
52
52
  }
53
53
  var target = obj === null || obj === void 0 ? void 0 : obj.target, root = getTarget(this), targetObj = getTargetObj(obj, root, this), targetNodeKey = getTargetNodeKey(target);
54
- if ((newVal === oldVal && _.isUndefined(newVal)) || (_.isUndefined(newVal) && (!_.isUndefined(oldVal) || !_.isUndefined(targetObj[targetNodeKey])))) {
54
+ if ((newVal === oldVal && isUndefined(newVal)) || (isUndefined(newVal) && (!isUndefined(oldVal) || !isUndefined(targetObj[targetNodeKey])))) {
55
55
  return;
56
56
  }
57
57
  // Skip cloning for blob column
58
- if (!_.includes(['blob', 'file'], obj.type)) {
58
+ if (!includes(['blob', 'file'], obj.type)) {
59
59
  newVal = getClonedObject(newVal);
60
60
  }
61
61
  setValueToNode(target, obj, root, this, newVal); // cloning newVal to keep the source clean
@@ -64,9 +64,9 @@ var BaseVariable = /** @class */ (function () {
64
64
  if (!internalBoundNodeMap.has(this)) {
65
65
  internalBoundNodeMap.set(this, {});
66
66
  }
67
- _.set(internalBoundNodeMap.get(this), [this.name, root, target], newVal);
67
+ set(internalBoundNodeMap.get(this), [this.name, root, target], newVal);
68
68
  /*update the internal nodes after internal node map is set*/
69
- if (_.isObject(newVal)) {
69
+ if (isObject(newVal)) {
70
70
  updateInternalNodes(target, root, this);
71
71
  }
72
72
  }
@@ -115,21 +115,21 @@ var BaseVariable = /** @class */ (function () {
115
115
  var targetNode = void 0;
116
116
  if (isList) {
117
117
  parentIndex = options.parentIndex || 0;
118
- targetNode = _.get(this.dataSet[parentIndex], options.path);
118
+ targetNode = get(this.dataSet[parentIndex], options.path);
119
119
  }
120
120
  else {
121
- targetNode = _.get(this.dataSet, options.path);
121
+ targetNode = get(this.dataSet, options.path);
122
122
  }
123
- isList = targetNode ? _.isArray(targetNode) ? true : false : true;
123
+ isList = targetNode ? isArray(targetNode) ? true : false : true;
124
124
  }
125
125
  return { path: path, isList: isList, parentIndex: parentIndex };
126
126
  };
127
127
  BaseVariable.prototype.addItem = function (value, options) {
128
128
  var index;
129
- if (_.isNumber(options)) {
129
+ if (isNumber(options)) {
130
130
  index = options;
131
131
  }
132
- if (_.isObject(options)) {
132
+ if (isObject(options)) {
133
133
  index = options.index;
134
134
  }
135
135
  options = this.getChildDetails(options);
@@ -138,17 +138,17 @@ var BaseVariable = /** @class */ (function () {
138
138
  BaseVariable.prototype.removeItem = function (index, options) {
139
139
  var exactMatch, parentIndex;
140
140
  if (options) {
141
- if (_.isBoolean(options)) {
141
+ if (isBoolean(options)) {
142
142
  exactMatch = options;
143
143
  }
144
- if (_.isObject(options)) {
144
+ if (isObject(options)) {
145
145
  exactMatch = options.exactMatch;
146
146
  if (this.isList) {
147
147
  parentIndex = options.parentIndex || 0;
148
148
  }
149
149
  }
150
150
  }
151
- return DatasetUtil.removeItem(this.dataSet, index, { exactMatch: exactMatch, path: _.get(options, 'path'), parentIndex: parentIndex });
151
+ return DatasetUtil.removeItem(this.dataSet, index, { exactMatch: exactMatch, path: get(options, 'path'), parentIndex: parentIndex });
152
152
  };
153
153
  BaseVariable.prototype.clearData = function () {
154
154
  this.dataSet = DatasetUtil.getValidDataset(this.isList);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"base-variable.js","sourceRoot":"./","sources":["src/model/base-variable.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataSource } from '../types/types';\n\nimport DatasetUtil from '../util/dataset-util';\nimport {\n getTargetNodeKey,\n getTargetObj,\n getTarget,\n setValueToNode,\n internalBoundNodeMap,\n updateInternalNodes\n} from \"../util/variable/variables.utils\";\nimport {getClonedObject} from \"../util/utils\";\nimport { EventNotifier, DefaultEventNotifier } from \"../types/event-notifier\";\nimport {omit, isUndefined, includes, set, isObject, get, isArray, isNumber, isBoolean} from 'lodash-es';\nexport enum VariableEvents {\n BEFORE_INVOKE = 'beforeInvoke',\n AFTER_INVOKE = 'afterInvoke'\n};\nexport abstract class BaseVariable implements EventNotifier {\n\n protected _id: string;\n\n name: string;\n owner: string;\n category: string;\n isList: boolean;\n dataSet: any;\n dataBinding: any;\n inputFields: any;\n filterFields: any;\n _context: any;\n isMuted = false;\n params;\n paramProvider;\n private eventNotifier = new DefaultEventNotifier();\n\n notify (event: string, args: any[]) {\n this.eventNotifier.notify(event, args);\n }\n\n subscribe (event: string, fn: Function) {\n return this.eventNotifier.subscribe(event, fn);\n }\n\n execute(operation: any, options: any) {\n let returnVal;\n switch (operation) {\n case DataSource.Operation.GET_NAME:\n returnVal = this.name;\n break;\n case DataSource.Operation.GET_UNIQUE_IDENTIFIER:\n returnVal = this._id;\n break;\n case DataSource.Operation.GET_CONTEXT_IDENTIFIER:\n returnVal = this._context;\n break;\n case DataSource.Operation.ADD_ITEM:\n returnVal = this.addItem(options.item, omit(options, 'item'));\n break;\n case DataSource.Operation.SET_ITEM:\n returnVal = this.setItem(options.prevItem, options.item, omit(options, 'prevItem', 'item'));\n break;\n case DataSource.Operation.REMOVE_ITEM:\n returnVal = this.removeItem(options.item, omit(options, 'item'));\n break;\n }\n return returnVal;\n }\n\n invokeOnParamChange(obj?, newVal?, oldVal?) {\n const runMode = true;\n if(!obj) {\n return;\n }\n const target = obj?.target,\n root = getTarget(this),\n targetObj = getTargetObj(obj, root, this),\n targetNodeKey = getTargetNodeKey(target);\n if ((newVal === oldVal && isUndefined(newVal)) || (isUndefined(newVal) && (!isUndefined(oldVal) || !isUndefined(targetObj[targetNodeKey])))) {\n return;\n }\n // Skip cloning for blob column\n if (!includes(['blob', 'file'], obj.type)) {\n newVal = getClonedObject(newVal);\n }\n setValueToNode(target, obj, root, this, newVal); // cloning newVal to keep the source clean\n if (runMode) {\n /*set the internal bound node map with the latest updated value*/\n if (!internalBoundNodeMap.has(this)) {\n internalBoundNodeMap.set(this, {});\n }\n set(internalBoundNodeMap.get(this), [this.name, root, target], newVal);\n /*update the internal nodes after internal node map is set*/\n if (isObject(newVal)) {\n updateInternalNodes(target, root, this);\n }\n }\n return Promise.resolve(this);\n }\n\n getData() {\n return this.dataSet;\n }\n\n setData(dataSet: any) {\n if (DatasetUtil.isValidDataset(dataSet, this.isList)) {\n this.dataSet = dataSet;\n }\n return this.dataSet;\n }\n\n getValue(key: string, index: number) {\n return DatasetUtil.getValue(this.dataSet, key, index, this.isList);\n }\n\n setValue(key: string, value: any) {\n return DatasetUtil.setValue(this.dataSet, key, value, this.isList);\n }\n\n getItem(index: number) {\n return DatasetUtil.getItem(this.dataSet, index, this.isList);\n }\n\n /**\n *\n * @param index, a number in ideal case\n * it can be the object to be replaced by the passed value\n * @param value\n * @returns {any}\n */\n setItem(index: any, value: any, options?: any) {\n options = this.getChildDetails(options);\n return DatasetUtil.setItem(this.dataSet, index, value, options);\n }\n\n /**\n * This method is to get target node options like path, parentIndex and isList\n * @param options: provided options\n * @returns {object}\n * Example: if we have parent dataset as object and we are performing operations on inner list then we have to set isList as true.\n * So finding the target node type and updating the isList option.\n */\n private getChildDetails (options: any) {\n let parentIndex, isList = this.isList, path;\n if (options && options.path) {\n path = options.path;\n let targetNode;\n if (isList) {\n parentIndex = options.parentIndex || 0;\n targetNode = get(this.dataSet[parentIndex], options.path);\n } else {\n targetNode = get(this.dataSet, options.path);\n }\n isList = targetNode ? isArray(targetNode) ? true : false : true;\n }\n return {path, isList, parentIndex};\n }\n\n addItem(value: any, options?: any) {\n let index;\n if (isNumber(options)) {\n index = options;\n }\n if (isObject(options)) {\n index = options.index;\n }\n\n options = this.getChildDetails(options);\n return DatasetUtil.addItem(this.dataSet, value, index, options);\n }\n\n removeItem(index: any, options?: any) {\n let exactMatch, parentIndex;\n if (options) {\n if (isBoolean(options)) {\n exactMatch = options;\n }\n if (isObject(options)) {\n exactMatch = options.exactMatch;\n if (this.isList) {\n parentIndex = options.parentIndex || 0;\n }\n }\n }\n return DatasetUtil.removeItem(this.dataSet, index, { exactMatch, path: get(options, 'path'), parentIndex });\n }\n\n clearData() {\n this.dataSet = DatasetUtil.getValidDataset(this.isList);\n return this.dataSet;\n }\n\n getCount() {\n return DatasetUtil.getCount(this.dataSet, this.isList);\n }\n\n /**\n * Return the prefab name if the variable is form a prefab\n * @returns {string}\n */\n getPrefabName() {\n const prefabname = this._context && (this._context.prefabname || this._context.prefabName);\n // __self__ is a prefab name given to a prefab which is run in preview mode\n return prefabname !== '__self__' && prefabname;\n }\n\n mute() {\n this.isMuted = true;\n }\n\n unmute() {\n this.isMuted = false;\n }\n\n destroy() {\n \n }\n}\n"]}