@zohodesk/library-platform 1.1.2-exp.1 → 1.1.3-exp.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.
Files changed (99) hide show
  1. package/es/bc/sdk/EventHandlers.js +1 -0
  2. package/es/bc/sdk/Properties.js +10 -0
  3. package/es/bc/sdk/ResourceNamesEnum.js +6 -0
  4. package/es/cc/action-location/Constants.js +5 -3
  5. package/es/cc/architecture/LifeCycleActionEnum.js +2 -8
  6. package/es/cc/component/LifeCycleEventsEnum.js +9 -0
  7. package/es/desk-frameworks/table-connected/frameworks/EventHandlersFactory.js +10 -5
  8. package/es/desk-frameworks/table-connected/frameworks/ListSdkFactory.js +15 -130
  9. package/es/desk-frameworks/table-connected/frameworks/TableConnectedFactory.js +9 -1
  10. package/es/desk-frameworks/table-connected/frameworks/resources/ISmartTableResource.js +1 -0
  11. package/es/desk-frameworks/table-connected/frameworks/resources/SmartTableResource.js +233 -0
  12. package/es/index.js +3 -1
  13. package/es/library/behaviours/keyboard-controls/applications/usecases/DestructUsecase.js +5 -2
  14. package/es/library/behaviours/list-selection/frameworks/ActionHandlerFactory.js +4 -3
  15. package/es/library/custom-component/applications/entities-factory/BehavioursFactory.js +18 -16
  16. package/es/library/custom-component/applications/usecases/UpdatePropertyUseCase.js +3 -0
  17. package/es/library/custom-component/applications/usecases/UpdateStateUseCase.js +5 -1
  18. package/es/library/custom-component/domain/entities/Component.js +4 -0
  19. package/es/library/custom-component/domain/entities/LifeCycleAction.js +14 -3
  20. package/es/library/dot/components/action-location/frameworks/ui/EventHandlersFactory.js +1 -1
  21. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +1 -0
  22. package/es/library/dot/legacy-to-new-arch/table-column-filter/frameworks/ui/TableColumnFilterView.js +8 -4
  23. package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/EventHandlersFactory.js +4 -3
  24. package/es/platform/sdk/adapters/gateways/Repository.js +31 -0
  25. package/es/platform/sdk/adapters/gateways/Service.js +27 -0
  26. package/es/platform/sdk/adapters/presenters/Presenter.js +16 -0
  27. package/es/platform/sdk/application/interfaces/UsecaseDependencies.js +1 -0
  28. package/es/platform/sdk/application/interfaces/gateways/IRepository.js +1 -0
  29. package/es/platform/sdk/application/interfaces/gateways/ISdkManager.js +1 -0
  30. package/es/platform/sdk/application/interfaces/gateways/IService.js +1 -0
  31. package/es/platform/sdk/application/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
  32. package/es/platform/sdk/application/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
  33. package/es/platform/sdk/application/interfaces/input/GetResourceInstanceUseCaseInputModel.js +1 -0
  34. package/es/platform/sdk/application/interfaces/input/RegisterResourceInputModel.js +1 -0
  35. package/es/platform/sdk/application/interfaces/input/SyncStateWithResourceInputModel.js +1 -0
  36. package/es/platform/sdk/application/interfaces/output/ISdkPresenter.js +3 -0
  37. package/es/platform/sdk/application/usecases/AbstractUseCase.js +16 -0
  38. package/es/platform/sdk/application/usecases/CreateResourceInstanceUseCase.js +16 -0
  39. package/es/platform/sdk/application/usecases/DestructResourceInstanceUseCase.js +16 -0
  40. package/es/platform/sdk/application/usecases/GetResourceInstanceUseCase.js +17 -0
  41. package/es/platform/sdk/application/usecases/RegisterResourceUseCase.js +16 -0
  42. package/es/platform/sdk/application/usecases/SyncStateWithResourceUseCase.js +25 -0
  43. package/es/platform/sdk/domain/entities/ResourceManager.js +95 -0
  44. package/es/platform/sdk/domain/entities/interfaces/IResourceManager.js +1 -0
  45. package/es/platform/sdk/domain/entities/interfaces/ResourceManagerRestoreModel.js +1 -0
  46. package/es/platform/sdk/domain/entities/interfaces/SdkResource.js +1 -0
  47. package/es/platform/sdk/domain/entities/interfaces/SdkResourceDependencies.js +1 -0
  48. package/es/platform/sdk/domain/entities/interfaces/StateInterface.js +1 -0
  49. package/es/platform/sdk/frameworks/AbstractResource.js +16 -0
  50. package/es/platform/sdk/frameworks/Sdk.js +11 -0
  51. package/es/platform/sdk/frameworks/SdkRegistry.js +72 -0
  52. package/es/platform/sdk-behaviour/adapters/controllers/AbstractController.js +11 -0
  53. package/es/platform/sdk-behaviour/adapters/controllers/DestructController.js +19 -0
  54. package/es/platform/sdk-behaviour/adapters/controllers/InitializeController.js +19 -0
  55. package/es/platform/sdk-behaviour/adapters/controllers/SyncStateWithResourceController.js +24 -0
  56. package/es/platform/sdk-behaviour/adapters/gateways/Repository.js +25 -0
  57. package/es/platform/sdk-behaviour/adapters/gateways/ResourceManagerGateWay.js +43 -0
  58. package/es/platform/sdk-behaviour/adapters/gateways/Service.js +19 -0
  59. package/es/platform/sdk-behaviour/applications/AbstractUseCase.js +6 -0
  60. package/es/platform/sdk-behaviour/applications/interfaces/UsecaseDependencies.js +1 -0
  61. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IRepository.js +1 -0
  62. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IResourceManagerGateWay.js +3 -0
  63. package/es/platform/sdk-behaviour/applications/interfaces/gateways/IService.js +1 -0
  64. package/es/platform/sdk-behaviour/applications/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
  65. package/es/platform/sdk-behaviour/applications/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
  66. package/es/platform/sdk-behaviour/applications/interfaces/input/SyncStateWithResourceUseCaseInputModel.js +1 -0
  67. package/es/platform/sdk-behaviour/applications/usecases/CreateResourceInstanceUseCase.js +14 -0
  68. package/es/platform/sdk-behaviour/applications/usecases/DestructResourceInstanceUseCase.js +14 -0
  69. package/es/platform/sdk-behaviour/applications/usecases/SyncStateWithResourceUseCase.js +22 -0
  70. package/es/platform/sdk-behaviour/domain/entities/BehaviourResourceConnector.js +49 -0
  71. package/es/platform/sdk-behaviour/domain/entities/interfaces/IBehaviourResourceConnector.js +1 -0
  72. package/es/platform/sdk-behaviour/domain/entities/interfaces/IResourceManagerProxy.js +2 -0
  73. package/es/platform/sdk-behaviour/frameworks/EventHandlerFactory.js +29 -0
  74. package/es/platform/sdk-behaviour/frameworks/SdkBehaviourFactory.js +16 -0
  75. package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +2 -2
  76. package/es/platform/zlist/adapters/gateways/Repository.js +4 -2
  77. package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +3 -1
  78. package/es/platform/zlist/adapters/presenters/TableTranslator.js +4 -1
  79. package/es/platform/zlist/adapters/presenters/translators/Header.js +5 -2
  80. package/es/platform/zlist/adapters/presenters/translators/ResizerStateTranslator.js +7 -3
  81. package/es/platform/zlist/applications/entities-factory/ListFactory.js +3 -2
  82. package/es/platform/zlist/applications/interfaces/input/GetContextUseCaseInput.js +1 -0
  83. package/es/platform/zlist/applications/interfaces/input/UpdateMultipleRecordUseCaseInput.js +1 -0
  84. package/es/platform/zlist/applications/usecases/DeleteMultipleRecordUseCase.js +23 -2
  85. package/es/platform/zlist/applications/usecases/DeleteSingleRecordUseCase.js +9 -0
  86. package/es/platform/zlist/applications/usecases/FetchMoreUseCase.js +4 -1
  87. package/es/platform/zlist/applications/usecases/GetContextUseCase.js +18 -0
  88. package/es/platform/zlist/applications/usecases/RecordExecuteFailedUseCase.js +3 -1
  89. package/es/platform/zlist/applications/usecases/RecordUpdateUseCase.js +9 -0
  90. package/es/platform/zlist/applications/usecases/UpdateMultipleRecordUseCase.js +34 -0
  91. package/es/platform/zlist/domain/entities/List.js +26 -2
  92. package/es/platform/zlist/frameworks/EventHandlersFactory.js +3 -3
  93. package/es/platform/zrecord/applications/interfaces/input/GetMultipleRecordUsecaseInputModel.js +1 -0
  94. package/es/platform/zrecord/applications/interfaces/input/GetSingleRecordUseCaseInputModel.js +1 -0
  95. package/es/platform/zrecord/applications/usecases/GetMultipleRecordUseCase.js +16 -0
  96. package/es/platform/zrecord/applications/usecases/GetSingleRecordUseCase.js +17 -0
  97. package/es/platform/zrecord/domain/entities/Records.js +9 -4
  98. package/es/platform/zrecord/domain/entities/RecordsManager.js +8 -0
  99. package/package.json +7 -7
@@ -0,0 +1,25 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { BehaviourResourceConnector } from "../../domain/entities/BehaviourResourceConnector";
4
+ export class Repository {
5
+ constructor() {
6
+ _defineProperty(this, "resourceNames", void 0);
7
+
8
+ _defineProperty(this, "resourceManager", void 0);
9
+ }
10
+
11
+ init(resourceNames, resourceManager) {
12
+ this.resourceNames = resourceNames;
13
+ this.resourceManager = resourceManager;
14
+ }
15
+
16
+ getBehaviourResourceConnector() {
17
+ const {
18
+ resourceNames,
19
+ resourceManager
20
+ } = this;
21
+ const behaviourResourceConnector = new BehaviourResourceConnector(resourceNames, resourceManager);
22
+ return behaviourResourceConnector;
23
+ }
24
+
25
+ }
@@ -0,0 +1,43 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ export class ResourceManagerGateWay {
4
+ constructor() {
5
+ _defineProperty(this, "sdkRegistry", void 0);
6
+ }
7
+
8
+ init(sdkRegistry) {
9
+ this.sdkRegistry = sdkRegistry;
10
+ }
11
+
12
+ createResourceInstance(resourceName, instanceName) {
13
+ this.sdkRegistry.createResourceInstance({
14
+ resourceName,
15
+ instanceName
16
+ });
17
+ }
18
+
19
+ destructResourceInstance(resourceName, instanceName) {
20
+ this.sdkRegistry.destructResourceInstance({
21
+ resourceName,
22
+ instanceName
23
+ });
24
+ }
25
+
26
+ syncStateWithResource(_ref) {
27
+ let {
28
+ resourceName,
29
+ instanceName,
30
+ state,
31
+ dispatch,
32
+ updateState
33
+ } = _ref;
34
+ this.sdkRegistry.syncStateWithResource({
35
+ resourceName,
36
+ instanceName,
37
+ state,
38
+ dispatch,
39
+ updateState
40
+ });
41
+ }
42
+
43
+ }
@@ -0,0 +1,19 @@
1
+ function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
2
+
3
+ import { CreateResourceInstanceUseCase } from "../../applications/usecases/CreateResourceInstanceUseCase";
4
+ import { DestructResourceInstanceUseCase } from "../../applications/usecases/DestructResourceInstanceUseCase";
5
+ import { SyncStateWithResourceUseCase } from "../../applications/usecases/SyncStateWithResourceUseCase";
6
+ export class Service {
7
+ constructor(dependencies) {
8
+ _defineProperty(this, "createResourceInstanceUseCase", void 0);
9
+
10
+ _defineProperty(this, "destructResourceInstanceUseCase", void 0);
11
+
12
+ _defineProperty(this, "syncStateWithResourceUseCase", void 0);
13
+
14
+ this.createResourceInstanceUseCase = new CreateResourceInstanceUseCase(dependencies);
15
+ this.destructResourceInstanceUseCase = new DestructResourceInstanceUseCase(dependencies);
16
+ this.syncStateWithResourceUseCase = new SyncStateWithResourceUseCase(dependencies);
17
+ }
18
+
19
+ }
@@ -0,0 +1,6 @@
1
+ export default class AbstractUseCase {
2
+ constructor(dependencies) {
3
+ this.dependencies = dependencies;
4
+ }
5
+
6
+ }
@@ -0,0 +1,3 @@
1
+ import { StateInterface, DispatchFunction, UpdateState } from "../../../../sdk/domain/entities/interfaces/StateInterface"; //
2
+
3
+ export { StateInterface, DispatchFunction, UpdateState };
@@ -0,0 +1,14 @@
1
+ import AbstractUseCase from "../AbstractUseCase";
2
+ export class CreateResourceInstanceUseCase extends AbstractUseCase {
3
+ execute(_ref) {
4
+ let {
5
+ instanceName
6
+ } = _ref;
7
+ const {
8
+ repository
9
+ } = this.dependencies;
10
+ const behaviourResourceConnector = repository.getBehaviourResourceConnector();
11
+ behaviourResourceConnector.createResourceInstances(instanceName);
12
+ }
13
+
14
+ }
@@ -0,0 +1,14 @@
1
+ import AbstractUseCase from "../AbstractUseCase";
2
+ export class DestructResourceInstanceUseCase extends AbstractUseCase {
3
+ execute(_ref) {
4
+ let {
5
+ instanceName
6
+ } = _ref;
7
+ const {
8
+ repository
9
+ } = this.dependencies;
10
+ const behaviourResourceConnector = repository.getBehaviourResourceConnector();
11
+ behaviourResourceConnector.destructResourceInstances(instanceName);
12
+ }
13
+
14
+ }
@@ -0,0 +1,22 @@
1
+ import AbstractUseCase from "../AbstractUseCase";
2
+ export class SyncStateWithResourceUseCase extends AbstractUseCase {
3
+ execute(_ref) {
4
+ let {
5
+ instanceName,
6
+ state,
7
+ dispatch,
8
+ updateState
9
+ } = _ref;
10
+ const {
11
+ repository
12
+ } = this.dependencies;
13
+ const behaviourResourceConnector = repository.getBehaviourResourceConnector();
14
+ behaviourResourceConnector.syncStateWithResources({
15
+ instanceName,
16
+ state,
17
+ dispatch,
18
+ updateState
19
+ });
20
+ }
21
+
22
+ }
@@ -0,0 +1,49 @@
1
+ export class BehaviourResourceConnector {
2
+ constructor(resourceNames, resourceManager) {
3
+ this.resourceNames = resourceNames;
4
+ this.resourceManager = resourceManager;
5
+ }
6
+
7
+ createResourceInstances(instanceName) {
8
+ const {
9
+ resourceNames,
10
+ resourceManager
11
+ } = this;
12
+ resourceNames.forEach(resourceName => {
13
+ resourceManager.createResourceInstance(resourceName, instanceName);
14
+ });
15
+ }
16
+
17
+ destructResourceInstances(instanceName) {
18
+ const {
19
+ resourceNames,
20
+ resourceManager
21
+ } = this;
22
+ resourceNames.forEach(resourceName => {
23
+ resourceManager.destructResourceInstance(resourceName, instanceName);
24
+ });
25
+ }
26
+
27
+ syncStateWithResources(_ref) {
28
+ let {
29
+ instanceName,
30
+ state,
31
+ dispatch,
32
+ updateState
33
+ } = _ref;
34
+ const {
35
+ resourceNames,
36
+ resourceManager
37
+ } = this;
38
+ resourceNames.forEach(resourceName => {
39
+ resourceManager.syncStateWithResource({
40
+ resourceName,
41
+ instanceName,
42
+ state,
43
+ dispatch,
44
+ updateState
45
+ });
46
+ });
47
+ }
48
+
49
+ }
@@ -0,0 +1,2 @@
1
+ import { StateInterface, DispatchFunction, UpdateState } from "../../../../sdk/domain/entities/interfaces/StateInterface";
2
+ export { StateInterface, DispatchFunction, UpdateState };
@@ -0,0 +1,29 @@
1
+ import LifeCycleEvents from "../../../cc/component/LifeCycleEventsEnum";
2
+ import { Repository } from "../adapters/gateways/Repository";
3
+ import { Service } from "../adapters/gateways/Service";
4
+ import { InitializeController } from "../adapters/controllers/InitializeController";
5
+ import { DestructController } from "../adapters/controllers/DestructController";
6
+ import { SyncStateWithResourceController } from "../adapters/controllers/SyncStateWithResourceController";
7
+ import { ResourceManagerGateWay } from "../adapters/gateways/ResourceManagerGateWay";
8
+ import { sdkRegistry } from "../../sdk/frameworks/SdkRegistry";
9
+
10
+ class EventHandlerFactory {
11
+ static create(resourceNames) {
12
+ const resourceManager = new ResourceManagerGateWay();
13
+ resourceManager.init(sdkRegistry);
14
+ const repository = new Repository();
15
+ repository.init(resourceNames, resourceManager);
16
+ const dependencies = {
17
+ repository
18
+ };
19
+ const service = new Service(dependencies);
20
+ return {
21
+ [LifeCycleEvents.MOUNT]: new InitializeController(service).handle,
22
+ [LifeCycleEvents.STATE_UPDATED]: new SyncStateWithResourceController(service).handle,
23
+ [LifeCycleEvents.UN_MOUNT]: new DestructController(service).handle
24
+ };
25
+ }
26
+
27
+ }
28
+
29
+ export default EventHandlerFactory;
@@ -0,0 +1,16 @@
1
+ import SdkProperties from "../../../bc/sdk/Properties";
2
+ import EventHandlerFactory from "./EventHandlerFactory";
3
+
4
+ class SdkBehaviourFactory {
5
+ static create(resourceNames) {
6
+ return {
7
+ name: 'sdkBehaviour',
8
+ setInitialState: () => ({}),
9
+ eventHandlers: EventHandlerFactory.create(resourceNames),
10
+ properties: SdkProperties
11
+ };
12
+ }
13
+
14
+ }
15
+
16
+ export default SdkBehaviourFactory;
@@ -3,7 +3,7 @@ import FormSubmitController from "../../adapters/controllers/FormSubmitControlle
3
3
  import FormRepository from "../../adapters/gateway/FormRepository";
4
4
  import FormPresenter from "../../adapters/presenter/FormPresenter";
5
5
  import Service from "../../adapters/gateway/Service";
6
- import LifeCycleAction from "../../../../cc/architecture/LifeCycleActionEnum";
6
+ import LifeCycleEvents from "../../../../cc/component/LifeCycleEventsEnum";
7
7
  import InitializeController from "../../adapters/controllers/IntializeController";
8
8
  import { ZFORM_DEPENDENCY_MAPPINGS_REQUEST, ZFORM_DEPENDENCY_MAPPINGS_SUCCESS, ZFORM_FIELD_VALUE_CHANGE_REQUEST, ZFORM_MY_FORM_REQUEST, ZFORM_MY_FORM_SUCCESS, ZFORM_MY_LAYOUTS_SUCCESS, ZFORM_SET_FIELD_ERROR_MESSAGE, ZFORM_SUBMIT_SUCCESS, ZFORM_VALIDATE_FIELD_REQUEST, ZFORM_VALIDATE_SUBMIT_FIELD_HAS_ERROR_MESSAGE, ZFORM_VALIDATION_ERROR, ZFORM_VALIDATION_RULES_REQUEST, ZFORM_VALIDATION_RULES_SUCCESS } from "../../../../bc/zform/Symbol";
9
9
  import MyLayoutSuccessController from "../../adapters/controllers/MyLayoutSuccessController";
@@ -57,7 +57,7 @@ class EventHandlersFactory {
57
57
  const setFieldErrorMessageController = new SetFieldErrorMessageController(service);
58
58
  const validateErrorMessageController = new ValidateErrorMessageController(service);
59
59
  return {
60
- [LifeCycleAction.MOUNT]: initializeController.handle,
60
+ [LifeCycleEvents.MOUNT]: initializeController.handle,
61
61
  [ZFORM_MY_LAYOUTS_SUCCESS]: myLayoutSuccessController.handle,
62
62
  [ZFORM_MY_FORM_REQUEST]: myFormRequestController.handle,
63
63
  [ZFORM_MY_FORM_SUCCESS]: myFormSuccessController.handle,
@@ -21,7 +21,8 @@ class Repository {
21
21
  context
22
22
  } = this.state.properties;
23
23
  const {
24
- sortBy
24
+ sortBy,
25
+ errorRecordFailed
25
26
  } = this.getZListState();
26
27
  const list = ListFactory.createList({
27
28
  context,
@@ -32,7 +33,8 @@ class Repository {
32
33
  ...query
33
34
  },
34
35
  sortBy: new SortBy(sortBy.id, sortBy.name, sortBy.order),
35
- limit: 50
36
+ limit: 50,
37
+ errorRecordFailed
36
38
  });
37
39
  return list;
38
40
  }
@@ -3,6 +3,7 @@
3
3
  /* eslint-disable max-lines-per-function */
4
4
  import ClientActionsTranslator from "../../../client-actions/translators/client-actions-translator";
5
5
  import DefaultClientActions from "./utils/DefaultClientActions";
6
+ import { i18NProviderUtils } from '@zohodesk/i18n';
6
7
  export default function SelectionTranslator(state) {
7
8
  const {
8
9
  behaviours,
@@ -69,7 +70,8 @@ function getColumnChooserProps(columnChooser) {
69
70
  options: columnChooserOptions,
70
71
  searchString,
71
72
  hasSearch: searchString !== '' || columnChooserOptions.length > 3,
72
- errorMessage: isMaxSelectionReached ? "You've reached the limit of 15 columns." : ''
73
+ // errorMessage: isMaxSelectionReached ? "You've reached the limit of 15 columns." : ''
74
+ errorMessage: isMaxSelectionReached ? i18NProviderUtils.getI18NValue("support.ticket.table.max.colmun") : ''
73
75
  };
74
76
  }
75
77
 
@@ -121,7 +121,10 @@ export default class TableTranslator {
121
121
  keyboardControlsConfig,
122
122
  isLoading,
123
123
  emptyStateUiType: componentMapping.emptyState || '',
124
- data
124
+ data: fields.length ? data : {
125
+ headers: EMPTY_ARRAY,
126
+ rows: EMPTY_ARRAY
127
+ }
125
128
  }
126
129
  };
127
130
  }
@@ -1,6 +1,7 @@
1
1
  import ColumnAlignmentTranslator from "./ColumnAlignmentTranslator";
2
2
  import ClientActionsTranslator from "../../../../client-actions/translators/client-actions-translator";
3
3
  import { SortOrder } from "../../../../zlist/domain/entities/interfaces/Properties";
4
+ import { i18NProviderUtils } from '@zohodesk/i18n';
4
5
 
5
6
  function HeaderTranslator(field, actions, context, modifiedWidths, sortBy) {
6
7
  const {
@@ -37,9 +38,11 @@ function translateSortBy(id, sortBy) {
37
38
 
38
39
  if (sortBy.id === id) {
39
40
  if (sortBy.order === SortOrder.ASC) {
40
- newSortBy.tooltip = 'Click to Sort Descending';
41
+ // newSortBy.tooltip = 'Click to Sort Descending';
42
+ newSortBy.tooltip = i18NProviderUtils.getI18NValue("support.localization.tooltip.descending");
41
43
  } else if (newSortBy.order === SortOrder.DES) {
42
- newSortBy.tooltip = 'Click to Sort Ascending';
44
+ // newSortBy.tooltip = 'Click to Sort Ascending';
45
+ newSortBy.tooltip = i18NProviderUtils.getI18NValue("support.localization.tooltip.ascending");
43
46
  } else if (newSortBy.order === SortOrder.NONE) {
44
47
  newSortBy.tooltip = 'Click to Sort';
45
48
  }
@@ -1,3 +1,4 @@
1
+ import { i18NProviderUtils } from '@zohodesk/i18n';
1
2
  const defaultResizerUiState = {
2
3
  isEnabled: false,
3
4
  isCurrentlyResizing: false,
@@ -66,16 +67,19 @@ function tooltipI18nHandler(_ref2) {
66
67
 
67
68
  if (width === maxWidth) {
68
69
  // return `Max width (${width}px) reached`;
69
- return `Max Limit Reached ${width}`;
70
+ let i18nMax = i18NProviderUtils.getI18NValue('support.ticket.list.table.max.width', width);
71
+ return i18nMax;
70
72
  }
71
73
 
72
74
  if (width === minWidth) {
73
75
  // return `Min width (${width}px) reached`;
74
- return `Min Limit Reached ${width}`;
76
+ let i18nMin = i18NProviderUtils.getI18NValue('support.ticket.list.table.min.width', width);
77
+ return i18nMin;
75
78
  } // return `Width: ${width}px`;
76
79
 
77
80
 
78
- return `Width - ${width}px`;
81
+ let i18nWid = i18NProviderUtils.getI18NValue('support.ticket.list.table.width', width);
82
+ return i18nWid;
79
83
  }
80
84
 
81
85
  function calculateExtraSpaceWidth(_ref3) {
@@ -6,9 +6,10 @@ class ListFactory {
6
6
  limit,
7
7
  sortBy,
8
8
  query,
9
- context
9
+ context,
10
+ errorRecordFailed
10
11
  } = input;
11
- return new List(limit, sortBy, query, context);
12
+ return new List(limit, sortBy, query, context, errorRecordFailed);
12
13
  }
13
14
 
14
15
  }
@@ -1,7 +1,10 @@
1
+ import { RECORD_LOCAL_MULTIPLE_DELETE } from "../../../../bc/zrecord/Constants";
1
2
  import AbstractUseCase from "./AbstractUseCase";
2
3
 
3
4
  class DeleteMultipleRecordUseCase extends AbstractUseCase {
4
5
  execute(input) {
6
+ var _input$callback;
7
+
5
8
  const {
6
9
  dispatch,
7
10
  recordIds
@@ -10,8 +13,26 @@ class DeleteMultipleRecordUseCase extends AbstractUseCase {
10
13
  repository
11
14
  } = this.dependencies;
12
15
  const list = repository.getList();
13
- const action = list.getDeleteMultipleRecordAction(recordIds);
14
- dispatch(action);
16
+
17
+ if (input.shouldFetch) {
18
+ const action = list.getDeleteMultipleRecordAction(recordIds);
19
+ dispatch(action);
20
+ } else {
21
+ dispatch({
22
+ type: RECORD_LOCAL_MULTIPLE_DELETE,
23
+ payload: {
24
+ recordIds
25
+ }
26
+ });
27
+ }
28
+
29
+ (_input$callback = input.callback) === null || _input$callback === void 0 ? void 0 : _input$callback.call(input, {
30
+ data: recordIds.map(id => ({
31
+ id,
32
+ Success: true,
33
+ error: null
34
+ }))
35
+ });
15
36
  }
16
37
 
17
38
  }
@@ -2,6 +2,8 @@ import AbstractUseCase from "./AbstractUseCase";
2
2
 
3
3
  class DeleteSingleRecordUseCase extends AbstractUseCase {
4
4
  execute(input) {
5
+ var _input$callback;
6
+
5
7
  const {
6
8
  dispatch,
7
9
  recordId
@@ -12,6 +14,13 @@ class DeleteSingleRecordUseCase extends AbstractUseCase {
12
14
  const list = repository.getList();
13
15
  const action = list.getDeleteSingleRecordAction(recordId);
14
16
  dispatch(action);
17
+ (_input$callback = input.callback) === null || _input$callback === void 0 ? void 0 : _input$callback.call(input, {
18
+ data: [{
19
+ id: recordId,
20
+ Success: true,
21
+ error: null
22
+ }]
23
+ });
15
24
  }
16
25
 
17
26
  }
@@ -9,7 +9,10 @@ class FetchMoreUseCase extends AbstractUseCase {
9
9
  repository
10
10
  } = this.dependencies;
11
11
  const list = repository.getList();
12
- dispatch(list.createMoreRecordFetchAction());
12
+
13
+ if (!list.getErrorRecordFailed()) {
14
+ dispatch(list.createMoreRecordFetchAction());
15
+ }
13
16
  }
14
17
 
15
18
  }
@@ -0,0 +1,18 @@
1
+ import AbstractUseCase from "./AbstractUseCase";
2
+
3
+ class GetContextUseCase extends AbstractUseCase {
4
+ execute(input) {
5
+ const {
6
+ variableName,
7
+ callback
8
+ } = input;
9
+ const {
10
+ repository
11
+ } = this.dependencies;
12
+ const list = repository.getList();
13
+ callback === null || callback === void 0 ? void 0 : callback(list.getContext(variableName));
14
+ }
15
+
16
+ }
17
+
18
+ export default GetContextUseCase;
@@ -8,10 +8,12 @@ class RecordExecuteFailedUseCase extends AbstractUseCase {
8
8
  payload
9
9
  } = input;
10
10
  const {
11
- repository
11
+ repository,
12
+ presenter
12
13
  } = this.dependencies;
13
14
  const list = repository.getList();
14
15
  const actions = list.getRecordExecuteFailedActions(payload, metaData);
16
+ presenter.updateView(list.toObject());
15
17
  actions.forEach(action => {
16
18
  dispatch(action);
17
19
  });
@@ -2,6 +2,8 @@ import AbstractUseCase from "./AbstractUseCase";
2
2
 
3
3
  class RecordUpdateUseCase extends AbstractUseCase {
4
4
  execute(input) {
5
+ var _input$callback;
6
+
5
7
  const {
6
8
  dispatch,
7
9
  recordId,
@@ -13,6 +15,13 @@ class RecordUpdateUseCase extends AbstractUseCase {
13
15
  const list = repository.getList();
14
16
  const action = list.getUpdateRecordFetchActions(recordId, record);
15
17
  dispatch(action);
18
+ (_input$callback = input.callback) === null || _input$callback === void 0 ? void 0 : _input$callback.call(input, {
19
+ data: [{
20
+ id: recordId,
21
+ Success: true,
22
+ error: null
23
+ }]
24
+ });
16
25
  }
17
26
 
18
27
  }
@@ -0,0 +1,34 @@
1
+ import { RECORD_LOCAL_UPDATE } from "../../../../bc/zrecord/Constants";
2
+ import AbstractUseCase from "./AbstractUseCase";
3
+ import { ZLIST_RECORD_UPDATE } from "../../../../bc/zlist/Constants";
4
+
5
+ class UpdateMultipleRecordUseCase extends AbstractUseCase {
6
+ execute(input) {
7
+ var _input$callback;
8
+
9
+ const {
10
+ dispatch,
11
+ recordsMap,
12
+ shouldFetch
13
+ } = input;
14
+ recordsMap.forEach(record => {
15
+ dispatch({
16
+ type: shouldFetch ? ZLIST_RECORD_UPDATE : RECORD_LOCAL_UPDATE,
17
+ payload: {
18
+ recordId: record.id,
19
+ record: record
20
+ }
21
+ });
22
+ });
23
+ (_input$callback = input.callback) === null || _input$callback === void 0 ? void 0 : _input$callback.call(input, {
24
+ results: recordsMap.map(record => ({
25
+ id: record.id,
26
+ Success: true,
27
+ error: null
28
+ }))
29
+ });
30
+ }
31
+
32
+ }
33
+
34
+ export default UpdateMultipleRecordUseCase;
@@ -6,16 +6,18 @@ import { SmartTableConstants } from "../../../../cc/table-connected";
6
6
  import SortBy from "./SortBy";
7
7
 
8
8
  class List {
9
- constructor(limit, sortBy, query, context) {
9
+ constructor(limit, sortBy, query, context, errorRecordFailed) {
10
10
  this.limit = limit;
11
11
  this.sortBy = sortBy;
12
12
  this.query = query;
13
13
  this.context = context;
14
+ this.errorRecordFailed = errorRecordFailed;
14
15
  }
15
16
 
16
17
  toObject() {
17
18
  return {
18
- sortBy: this.sortBy.toObject()
19
+ sortBy: this.sortBy.toObject(),
20
+ errorRecordFailed: this.errorRecordFailed
19
21
  };
20
22
  }
21
23
 
@@ -35,6 +37,18 @@ class List {
35
37
  return metaData && metaData['SMART_TABLE#SORTED'];
36
38
  }
37
39
 
40
+ getContext(variableName) {
41
+ const context = this.context;
42
+ const query = this.query;
43
+ const computedContext = { ...context,
44
+ departmentId: query.departmentId,
45
+ viewId: query.viewId,
46
+ moduleName: query.moduleName
47
+ };
48
+ delete computedContext['servicePrefix'];
49
+ return variableName ? computedContext === null || computedContext === void 0 ? void 0 : computedContext[variableName] : computedContext;
50
+ }
51
+
38
52
  createApiProps() {
39
53
  const {
40
54
  query,
@@ -207,12 +221,22 @@ class List {
207
221
  return actions;
208
222
  }
209
223
 
224
+ getErrorRecordFailed() {
225
+ return this.errorRecordFailed;
226
+ }
227
+
210
228
  getRecordExecuteFailedActions(payload, metaData) {
211
229
  const {
212
230
  actionName
213
231
  } = metaData;
214
232
  const actions = [];
215
233
 
234
+ if (actionName === RecordApiActionName.GET_RECORDS) {
235
+ if (metaData.isAppend) {
236
+ this.errorRecordFailed = true;
237
+ }
238
+ }
239
+
216
240
  if (actionName === RecordApiActionName.DELETE_RECORD) {
217
241
  const {
218
242
  recordId,