@zohodesk/library-platform 1.0.0-exp.3 → 1.0.0-exp.5

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 (171) hide show
  1. package/es/cc/component/properties/getRefPropertySchema.js +10 -0
  2. package/es/cc/fields/field/Types.js +21 -0
  3. package/es/cc/fields/multi-select/Model.js +4 -6
  4. package/es/desk-frameworks/table-connected/frameworks/TableConnectedView.js +5 -3
  5. package/es/library/behaviours/list-selection/adapters/controllers/AllSelectionController.js +1 -1
  6. package/es/library/behaviours/list-selection/adapters/controllers/DestructController.js +1 -6
  7. package/es/library/behaviours/list-selection/adapters/controllers/InitializeController.js +2 -8
  8. package/es/library/behaviours/list-selection/adapters/gateways/Repository.js +9 -3
  9. package/es/library/behaviours/list-selection/entities/ListItemSelection.js +1 -1
  10. package/es/library/behaviours/list-selection/frameworks/ActionHandlerFactory.js +15 -15
  11. package/es/library/behaviours/list-selection/frameworks/ListItemSelectionBehaviourFactory.js +1 -6
  12. package/es/library/behaviours/list-selection/usecases/interactors/AllItemSelection.js +1 -1
  13. package/es/library/behaviours/list-selection/usecases/interactors/Destruct.js +1 -1
  14. package/es/library/behaviours/list-selection/usecases/interactors/Initialize.js +1 -1
  15. package/es/library/behaviours/sort-by/adapters/gateway/Repository.js +4 -1
  16. package/es/library/behaviours/sort-by/frameworks/ui/DemoBehaviour.js +2 -6
  17. package/es/library/behaviours/text-to-field-click/adapters/controllers/ClickController.js +23 -0
  18. package/es/library/behaviours/text-to-field-click/adapters/gateway/Repository.js +20 -0
  19. package/es/library/behaviours/text-to-field-click/entities/FieldEventConverter.js +19 -0
  20. package/es/library/behaviours/text-to-field-click/frameworks/ui/EventHandlersFactory.js +17 -0
  21. package/es/library/behaviours/text-to-field-click/frameworks/ui/TextToFieldClickBehaviourFactory.js +15 -0
  22. package/es/library/behaviours/text-to-field-click/usecases/interactors/AbstractUseCase.js +15 -0
  23. package/es/library/behaviours/text-to-field-click/usecases/interactors/ClickUseCase.js +17 -0
  24. package/es/library/custom-component/adapters/controllers/Controller.js +24 -6
  25. package/es/library/custom-component/adapters/gateways/event-manager/EventManager.js +30 -13
  26. package/es/library/custom-component/adapters/presenters/Presenter.js +0 -7
  27. package/es/library/custom-component/entities/Component.js +26 -24
  28. package/es/library/custom-component/entities/Properties.js +52 -66
  29. package/es/library/custom-component/entities/getRef.js +2 -2
  30. package/es/library/custom-component/frameworks/json-schema-validator/Validator.js +15 -0
  31. package/es/library/custom-component/frameworks/object-path-immutable/ImmutableHelper.js +2 -0
  32. package/es/library/custom-component/frameworks/ui/ComponentRegistry.js +0 -1
  33. package/es/library/custom-component/frameworks/ui/{createCustomComponent.js → CreateCustomComponent.js} +31 -29
  34. package/es/library/custom-component/frameworks/ui/CustomComponentFactory.js +56 -0
  35. package/es/library/custom-component/frameworks/ui/DependencyFactory.js +34 -0
  36. package/es/library/custom-component/index.js +1 -1
  37. package/es/library/custom-component/usecases/entities-factory/BehavioursFactory.js +31 -29
  38. package/es/library/custom-component/usecases/entities-factory/ComponentFactory.js +21 -7
  39. package/es/library/custom-component/usecases/interactors/InitializeUseCase.js +1 -3
  40. package/es/library/custom-component/usecases/interactors/UpdatePropertyUseCase.js +1 -1
  41. package/es/library/dot/components/action-location/adapters/gateway/RepositoryOld.js +32 -0
  42. package/es/library/dot/components/action-location/entities/ActionLocationEntity.js +5 -5
  43. package/es/library/dot/components/action-location/frameworks/ui/ActionLocationView.js +3 -2
  44. package/es/library/dot/components/action-location/usecases/interactors/AbstractUseCase.js +6 -2
  45. package/es/library/dot/components/table-list/adapters/presenters/TableTranslator.js +39 -19
  46. package/es/library/dot/components/table-list/frameworks/ui/EventHandlersFactory.js +7 -16
  47. package/es/library/dot/components/table-list/frameworks/ui/TableList.js +1 -6
  48. package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +64 -20
  49. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +22 -7
  50. package/es/library/dot/components/table-list/frameworks/ui/sub-components/NoData.js +3 -1
  51. package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +39 -33
  52. package/es/library/dot/components/table-list/frameworks/ui/sub-components/field/FieldComponent.js +3 -1
  53. package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/Headers.js +2 -2
  54. package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +49 -4
  55. package/es/library/dot/legacy-to-new-arch/avatar/frameworks/ui/AvatarView.js +35 -31
  56. package/es/library/dot/legacy-to-new-arch/email/frameworks/ui/EmailView.js +2 -2
  57. package/es/library/dot/legacy-to-new-arch/table-field-components/checkbox-field/frameworks/ui/CheckboxField.js +13 -0
  58. package/es/library/dot/legacy-to-new-arch/table-field-components/checkbox-field/frameworks/ui/CheckboxFieldView.js +18 -0
  59. package/es/library/dot/legacy-to-new-arch/table-field-components/checkbox-field/frameworks/ui/EventHandlersFactory.js +29 -0
  60. package/es/library/dot/legacy-to-new-arch/table-field-components/currency-field/frameworks/ui/CurrencyField.js +14 -0
  61. package/es/library/dot/legacy-to-new-arch/table-field-components/currency-field/frameworks/ui/CurrencyFieldView.js +14 -0
  62. package/es/library/dot/legacy-to-new-arch/table-field-components/date-field/frameworks/ui/DateField.js +14 -0
  63. package/es/library/dot/legacy-to-new-arch/table-field-components/date-field/frameworks/ui/DateFieldView.js +14 -0
  64. package/es/library/dot/legacy-to-new-arch/table-field-components/datetime-field/frameworks/ui/DateTimeField.js +14 -0
  65. package/es/library/dot/legacy-to-new-arch/table-field-components/datetime-field/frameworks/ui/DateTimeFieldView.js +14 -0
  66. package/es/library/dot/legacy-to-new-arch/table-field-components/decimal-field/frameworks/ui/DecimalField.js +14 -0
  67. package/es/library/dot/legacy-to-new-arch/table-field-components/decimal-field/frameworks/ui/DecimalFieldView.js +14 -0
  68. package/es/library/dot/legacy-to-new-arch/table-field-components/email-field/frameworks/ui/EmailField.js +12 -0
  69. package/es/library/dot/legacy-to-new-arch/table-field-components/email-field/frameworks/ui/EmailFieldView.js +14 -0
  70. package/es/library/dot/legacy-to-new-arch/table-field-components/index.js +34 -0
  71. package/es/library/dot/legacy-to-new-arch/table-field-components/lookup-field/frameworks/ui/LookupField.js +12 -0
  72. package/es/library/dot/legacy-to-new-arch/table-field-components/lookup-field/frameworks/ui/LookupFieldView.js +18 -0
  73. package/es/library/dot/legacy-to-new-arch/table-field-components/multiselect-field/frameworks/ui/MultiSelectField.js +12 -0
  74. package/es/library/dot/legacy-to-new-arch/table-field-components/multiselect-field/frameworks/ui/MultiSelectFieldView.js +18 -0
  75. package/es/library/dot/legacy-to-new-arch/table-field-components/number-field/frameworks/ui/NumberField.js +14 -0
  76. package/es/library/dot/legacy-to-new-arch/table-field-components/number-field/frameworks/ui/NumberFieldView.js +14 -0
  77. package/es/library/dot/legacy-to-new-arch/table-field-components/percentage-field/frameworks/ui/PercentageField.js +14 -0
  78. package/es/library/dot/legacy-to-new-arch/table-field-components/percentage-field/frameworks/ui/PercentageFieldView.js +14 -0
  79. package/es/library/dot/legacy-to-new-arch/table-field-components/phone-field/frameworks/ui/PhoneField.js +12 -0
  80. package/es/library/dot/legacy-to-new-arch/table-field-components/phone-field/frameworks/ui/PhoneFieldView.js +21 -0
  81. package/es/library/dot/legacy-to-new-arch/table-field-components/picklist-field/frameworks/ui/PickListField.js +14 -0
  82. package/es/library/dot/legacy-to-new-arch/table-field-components/picklist-field/frameworks/ui/PickListFieldView.js +14 -0
  83. package/es/library/dot/legacy-to-new-arch/table-field-components/singleline-field/frameworks/ui/SingleLineField.js +14 -0
  84. package/es/library/dot/legacy-to-new-arch/table-field-components/singleline-field/frameworks/ui/SingleLineFieldView.js +15 -0
  85. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/EventHandlersFactory.js +29 -0
  86. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/SwitchField.js +13 -0
  87. package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/SwitchFieldView.js +17 -0
  88. package/es/library/dot/legacy-to-new-arch/table-field-components/url-field/frameworks/ui/EventHandlersFactory.js +26 -0
  89. package/es/library/dot/legacy-to-new-arch/table-field-components/url-field/frameworks/ui/UrlField.js +13 -0
  90. package/es/library/dot/legacy-to-new-arch/table-field-components/url-field/frameworks/ui/UrlFieldView.js +17 -0
  91. package/es/library/index.js +1 -1
  92. package/es/platform/data-broker/http-template/deleteRecords.js +1 -2
  93. package/es/platform/data-broker/http-template/getAvailableFields.js +0 -2
  94. package/es/platform/data-broker/http-template/getRecords.js +0 -1
  95. package/es/platform/data-broker/http-template/getSelectedFields.js +0 -16
  96. package/es/platform/data-broker/http-template/getUIActions.js +3 -3
  97. package/es/platform/data-broker/utils/transformer/{createCf.js → CreateCf.js} +1 -0
  98. package/es/platform/data-broker/utils/transformer/Transformer.js +28 -0
  99. package/es/platform/zfield/adapters/controllers/ExeucteActionController.js +0 -3
  100. package/es/platform/zfield/adapters/gateways/Repository.js +5 -2
  101. package/es/platform/zfield/adapters/presenters/Presenter.js +4 -3
  102. package/es/platform/zfield/entities/fields-manager/FieldsManager.js +6 -2
  103. package/es/platform/zfield/entities/interfaces/FieldApiName.js +7 -0
  104. package/es/platform/zfield/entities/interfaces/IField.js +0 -1
  105. package/es/platform/zfield/frameworks/ActionHandlerFactory.js +16 -16
  106. package/es/platform/zfield/frameworks/ZFieldBehaviourFactory.js +1 -7
  107. package/es/platform/zfield/usecases/entities-factory/FieldBuilder.js +110 -0
  108. package/es/platform/zfield/usecases/entities-factory/FieldFactory.js +10 -0
  109. package/es/platform/zfield/usecases/entities-factory/FieldsManagerBuilder.js +49 -0
  110. package/es/platform/zfield/usecases/entity-factory/FieldFactory.js +1 -16
  111. package/es/platform/zfield/usecases/interactors/RefetchUseCase.js +1 -3
  112. package/es/platform/zfield/usecases/interfaces/input/FetchInputModel.js +1 -7
  113. package/es/platform/zlist/adapters/presenters/TableTranslator.js +12 -12
  114. package/es/platform/zlist/adapters/presenters/translators/EmptyViewModel.js +3 -3
  115. package/es/platform/zlist/adapters/presenters/translators/RowActionTranslator.js +1 -2
  116. package/es/platform/zlist/adapters/presenters/translators/fields/BooleanFieldTranslator.js +2 -2
  117. package/es/platform/zlist/adapters/presenters/translators/fields/CurrencyFieldTranslator.js +2 -2
  118. package/es/platform/zlist/adapters/presenters/translators/fields/DateFieldTranslator.js +2 -2
  119. package/es/platform/zlist/adapters/presenters/translators/fields/DateTimeFieldTranslator.js +2 -2
  120. package/es/platform/zlist/adapters/presenters/translators/fields/DecimalFieldTranslator.js +2 -2
  121. package/es/platform/zlist/adapters/presenters/translators/fields/EmailFieldTranslator.js +2 -2
  122. package/es/platform/zlist/adapters/presenters/translators/fields/LookUpFieldTranslator.js +2 -2
  123. package/es/platform/zlist/adapters/presenters/translators/fields/MultiLineFieldTranslator.js +2 -2
  124. package/es/platform/zlist/adapters/presenters/translators/fields/MultiSelectFieldTranslator.js +2 -2
  125. package/es/platform/zlist/adapters/presenters/translators/fields/NumberFieldTranslator.js +2 -2
  126. package/es/platform/zlist/adapters/presenters/translators/fields/PercentageFieldTranslator.js +2 -2
  127. package/es/platform/zlist/adapters/presenters/translators/fields/PhoneFieldTranslator.js +2 -2
  128. package/es/platform/zlist/adapters/presenters/translators/fields/PickListFieldTranslator.js +2 -2
  129. package/es/platform/zlist/adapters/presenters/translators/fields/SingleLineFieldTranslator.js +2 -2
  130. package/es/platform/zlist/adapters/presenters/translators/fields/URLFieldTranslator.js +2 -2
  131. package/es/platform/zlist/adapters/presenters/utils/Pipeline.js +28 -0
  132. package/es/platform/zlist/entities/List.js +3 -3
  133. package/es/platform/zlist/usecases/interactors/AbstractUseCase.js +1 -1
  134. package/es/platform/zlist/usecases/interactors/InitializeUseCase.js +3 -1
  135. package/es/platform/zlist/usecases/interactors/PropertiesChangeUseCase.js +3 -1
  136. package/es/platform/zrecord/entities/Record.js +2 -17
  137. package/es/platform/zrecord/entities/RecordsManager.js +0 -1
  138. package/es/platform/zrecord/entities/interfaces/ApiEnum.js +10 -0
  139. package/es/platform/zrecord/usecases/interactors/AbstractUseCase.js +6 -2
  140. package/es/platform/zrecord/usecases/interfaces/output/IPresenter.js +1 -0
  141. package/package.json +6 -5
  142. package/es/library/behaviours/local-storage/adapters/controllers/handlers/Mount.js +0 -0
  143. package/es/library/behaviours/local-storage/adapters/controllers/handlers/SetData.js +0 -0
  144. package/es/library/behaviours/local-storage/adapters/controllers/handlers/UnMount.js +0 -0
  145. package/es/library/behaviours/local-storage/entities/Storage.js +0 -22
  146. package/es/library/behaviours/local-storage/usecases/interactors/AbstractUseCase.js +0 -8
  147. package/es/library/behaviours/local-storage/usecases/interactors/DeleteData.js +0 -15
  148. package/es/library/behaviours/local-storage/usecases/interactors/GetData.js +0 -16
  149. package/es/library/behaviours/local-storage/usecases/interactors/SetData.js +0 -15
  150. package/es/library/behaviours/local-storage/usecases/interfaces/UseCase.js +0 -1
  151. package/es/library/behaviours/local-storage/usecases/interfaces/input/DeleteDataInput.js +0 -1
  152. package/es/library/behaviours/local-storage/usecases/interfaces/input/GetDataInput.js +0 -1
  153. package/es/library/behaviours/local-storage/usecases/interfaces/input/SetDataInput.js +0 -1
  154. package/es/library/behaviours/local-storage/usecases/interfaces/output/IPresenter.js +0 -1
  155. package/es/library/behaviours/mouse-resizable/adapters/controllers/handlers/MountHandler.js +0 -8
  156. package/es/library/behaviours/mouse-resizable/adapters/controllers/handlers/StartResize.js +0 -10
  157. package/es/library/behaviours/mouse-resizable/adapters/controllers/handlers/UnMountHandler.js +0 -0
  158. package/es/library/behaviours/mouse-resizable/frameworks/MouseResizableFactory.js +0 -32
  159. package/es/library/behaviours/table-column-resizer/adapters/controllers/handlers/HandleDragStart.js +0 -0
  160. package/es/library/custom-component/frameworks/json-schema-validator/validator.js +0 -9
  161. package/es/library/custom-component/frameworks/ui/dependencyFactory.js +0 -29
  162. package/es/platform/data-broker/utils/transformer/transformer.js +0 -25
  163. package/es/platform/zlist/adapters/presenters/utils/pipeline.js +0 -25
  164. package/es/platform/zlist/adapters/presenters/utils/replacer.js +0 -9
  165. package/es/platform/zlist/adapters/presenters/utils/selectn.js +0 -7
  166. package/es/platform/zrecord/entities/interfaces/apiEnum.js +0 -1
  167. /package/es/library/behaviours/{local-storage/entities/interfaces/ILocalStorage.js → text-to-field-click/entities/interfaces/IFieldEventConverter.js} +0 -0
  168. /package/es/library/behaviours/{local-storage/entities/interfaces/IStorage.js → text-to-field-click/usecases/interfaces/UseCaseDependencies.js} +0 -0
  169. /package/es/library/behaviours/{local-storage → text-to-field-click}/usecases/interfaces/gateways/IRepository.js +0 -0
  170. /package/es/library/behaviours/{local-storage/usecases/interfaces/InputDependencies.js → text-to-field-click/usecases/interfaces/input/ClickUseCaseInputModel.js} +0 -0
  171. /package/es/library/custom-component/entities/{defaultAppendToActionPayload.js → DefaultAppendToActionPayload.js} +0 -0
@@ -1,7 +1,6 @@
1
1
  import AbstractController from "./AbstractController";
2
2
 
3
3
  class ExecuteActionController extends AbstractController {
4
- // TODO: Add event type
5
4
  handle(event) {
6
5
  const {
7
6
  state,
@@ -25,9 +24,7 @@ class ExecuteActionController extends AbstractController {
25
24
  dispatch,
26
25
  props,
27
26
  apiName,
28
- // availableFields
29
27
  actionName,
30
- // getAvailableFields
31
28
  metaData
32
29
  });
33
30
  }
@@ -1,6 +1,6 @@
1
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
2
 
3
- import FieldsManagerBuilder from "../../usecases/entity-factory/FieldsManagerBuilder";
3
+ import FieldsManagerBuilder from "../../usecases/entities-factory/FieldsManagerBuilder";
4
4
 
5
5
  class Repository {
6
6
  constructor() {
@@ -12,13 +12,16 @@ class Repository {
12
12
  }
13
13
 
14
14
  getFieldManager() {
15
+ const {
16
+ zfield
17
+ } = this.state.behaviours;
15
18
  const {
16
19
  fields,
17
20
  selectedFields,
18
21
  isFieldsFetching,
19
22
  isSelectedFieldsFetching,
20
23
  apiTemplate
21
- } = this.state.behaviours.zfield;
24
+ } = zfield;
22
25
  return new FieldsManagerBuilder().setAvailableFields(fields).setSelectedFields(selectedFields).setAvailableFieldsFetchingStatus(isFieldsFetching).setSelectedFieldsFetchingStatus(isSelectedFieldsFetching).setApiTemplate(apiTemplate).build();
23
26
  }
24
27
 
@@ -21,9 +21,10 @@ class Presenter {
21
21
  }
22
22
 
23
23
  updateApiTemplate(apiTemplate) {
24
- var _this$state$behaviour;
25
-
26
- this.updateFields({ ...((_this$state$behaviour = this.state.behaviours) === null || _this$state$behaviour === void 0 ? void 0 : _this$state$behaviour.zfield),
24
+ const {
25
+ zfield
26
+ } = this.state.behaviours;
27
+ this.updateFields({ ...zfield,
27
28
  apiTemplate
28
29
  });
29
30
  }
@@ -1,5 +1,5 @@
1
1
  import { FIELD_FETCH_FAILURE, FIELD_FETCH_NO_CONTENT, FIELD_FETCH_SUCCESS } from "../../../../bc/zfield/Constants";
2
- import { FieldApiName } from "../../usecases/interfaces/input/FetchInputModel";
2
+ import FieldApiName from "../interfaces/FieldApiName";
3
3
  import { FETCH } from "../../../../bc/zhttp/Constants";
4
4
  import APITemplate from "../api-template/APITemplate";
5
5
 
@@ -81,9 +81,13 @@ class FieldManager {
81
81
  }
82
82
  }
83
83
 
84
+ getTemplate(apiName) {
85
+ return this.apiTemplate[apiName];
86
+ }
87
+
84
88
  getTransformedFields(response, apiName) {
85
89
  // TODO: This is a temporary fix. After data-broker-contract is updated
86
- const data = this.apiTemplate[apiName].transformer(response);
90
+ const data = this.getTemplate(apiName).transformer(response);
87
91
 
88
92
  if (apiName === FieldApiName.AVAILABLE_FIELDS) {
89
93
  this.fields = data;
@@ -0,0 +1,7 @@
1
+ var FieldApiName = /*#__PURE__*/function (FieldApiName) {
2
+ FieldApiName["AVAILABLE_FIELDS"] = "availableFields";
3
+ FieldApiName["SELECTED_FIELDS"] = "selectedFields";
4
+ return FieldApiName;
5
+ }(FieldApiName || {});
6
+
7
+ export default FieldApiName;
@@ -1,2 +1 @@
1
- ;
2
1
  export {};
@@ -14,30 +14,30 @@ import Presenter from "../adapters/presenters/Presenter";
14
14
 
15
15
  class ActionHandlerFactory {
16
16
  static create(apiTemplates) {
17
+ const service = this.createService();
18
+ return this.createHandlers(service, apiTemplates);
19
+ }
20
+
21
+ static createService() {
17
22
  const repository = new Repository();
18
23
  const presenter = new Presenter();
19
24
  const templateHelpers = new TemplateHelpers();
20
- const service = new Service({
25
+ return new Service({
21
26
  repository,
22
27
  presenter,
23
28
  templateHelpers
24
29
  });
25
- const controller = {
26
- init: new InitializeController(service, apiTemplates).handle,
27
- execute: new ExecuteActionController(service).handle,
28
- fetchSuccess: new FetchSuccessController(service).handle,
29
- fetchFailure: new FetchFailureController(service).handle,
30
- fetchNoContent: new FetchNoContentController(service).handle,
31
- refetch: new RefetchController(service).handle
32
- };
30
+ }
31
+
32
+ static createHandlers(service, apiTemplates) {
33
33
  return {
34
- MOUNT: controller.init,
35
- [FIELD_EXECUTE]: controller.execute,
36
- [FIELD_REFETCH]: controller.refetch,
37
- [FIELD_FETCH_FAILURE]: controller.fetchFailure,
38
- [FETCH_SUCCESS]: controller.fetchSuccess,
39
- [FETCH_FAILED]: controller.fetchFailure,
40
- [FETCH_SUCCESS_NO_CONTENT]: controller.fetchNoContent
34
+ MOUNT: new InitializeController(service, apiTemplates).handle,
35
+ [FIELD_EXECUTE]: new ExecuteActionController(service).handle,
36
+ [FIELD_REFETCH]: new RefetchController(service).handle,
37
+ [FETCH_SUCCESS]: new FetchSuccessController(service).handle,
38
+ [FIELD_FETCH_FAILURE]: new FetchFailureController(service).handle,
39
+ [FETCH_FAILED]: new FetchFailureController(service).handle,
40
+ [FETCH_SUCCESS_NO_CONTENT]: new FetchNoContentController(service).handle
41
41
  };
42
42
  }
43
43
 
@@ -1,16 +1,10 @@
1
1
  import ActionHandlerFactory from "./ActionHandlerFactory";
2
2
 
3
3
  class ZFieldBehaviourFactory {
4
- // TODO: Add return type
5
4
  static create(apiTemplates) {
6
5
  return {
7
6
  name: 'zfield',
8
- setInitialState: _ref => {
9
- let {
10
- properties
11
- } = _ref;
12
- return null;
13
- },
7
+ setInitialState: () => null,
14
8
  eventHandlers: ActionHandlerFactory.create(apiTemplates),
15
9
  properties: {}
16
10
  };
@@ -0,0 +1,110 @@
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 * as FieldEntities from "../../entities";
4
+ /* eslint-disable @zohodesk/architecturerules/no-returnStatement-rule */
5
+
6
+ class FieldBuilder {
7
+ constructor() {
8
+ _defineProperty(this, "id", void 0);
9
+
10
+ _defineProperty(this, "type", void 0);
11
+
12
+ _defineProperty(this, "name", void 0);
13
+
14
+ _defineProperty(this, "displayLabel", void 0);
15
+
16
+ _defineProperty(this, "isCustomField", void 0);
17
+
18
+ _defineProperty(this, "i18NLabel", void 0);
19
+
20
+ _defineProperty(this, "isSortable", void 0);
21
+
22
+ _defineProperty(this, "isVisible", void 0);
23
+
24
+ _defineProperty(this, "isReadOnly", void 0);
25
+
26
+ _defineProperty(this, "isEncryptedField", void 0);
27
+
28
+ _defineProperty(this, "isPHI", void 0);
29
+
30
+ _defineProperty(this, "maxLength", void 0);
31
+
32
+ _defineProperty(this, "isMandatory", void 0);
33
+ }
34
+
35
+ setId(id) {
36
+ this.id = id;
37
+ return this;
38
+ }
39
+
40
+ setType(type) {
41
+ if (!FieldEntities[type]) {
42
+ throw new Error(`Invalid field type: ${type}`);
43
+ }
44
+
45
+ this.type = type;
46
+ return this;
47
+ }
48
+
49
+ setName(name) {
50
+ this.name = name;
51
+ return this;
52
+ }
53
+
54
+ setDisplayLabel(displayLabel) {
55
+ this.displayLabel = displayLabel;
56
+ return this;
57
+ }
58
+
59
+ setIsCustomField(isCustomField) {
60
+ this.isCustomField = isCustomField;
61
+ return this;
62
+ }
63
+
64
+ setI18NLabel(i18NLabel) {
65
+ this.i18NLabel = i18NLabel;
66
+ return this;
67
+ }
68
+
69
+ setIsSortable(isSortable) {
70
+ this.isSortable = isSortable;
71
+ return this;
72
+ }
73
+
74
+ setIsVisible(isVisible) {
75
+ this.isVisible = isVisible;
76
+ return this;
77
+ }
78
+
79
+ setIsReadOnly(isReadOnly) {
80
+ this.isReadOnly = isReadOnly;
81
+ return this;
82
+ }
83
+
84
+ setIsEncryptedField(isEncryptedField) {
85
+ this.isEncryptedField = isEncryptedField;
86
+ return this;
87
+ }
88
+
89
+ setIsPHI(isPHI) {
90
+ this.isPHI = isPHI;
91
+ return this;
92
+ }
93
+
94
+ setMaxLength(maxLength) {
95
+ this.maxLength = maxLength;
96
+ return this;
97
+ }
98
+
99
+ setIsMandatory(isMandatory) {
100
+ this.isMandatory = isMandatory;
101
+ return this;
102
+ }
103
+
104
+ build() {
105
+ return new FieldEntities[this.type](this.id, this.type, this.name, this.displayLabel, this.isCustomField, this.i18NLabel, this.isSortable, this.isVisible, this.isReadOnly, this.isEncryptedField, this.isPHI, this.maxLength, this.isMandatory);
106
+ }
107
+
108
+ }
109
+
110
+ export default FieldBuilder;
@@ -0,0 +1,10 @@
1
+ import FieldBuilder from "./FieldBuilder";
2
+
3
+ class FieldFactory {
4
+ static create(input) {
5
+ return new FieldBuilder().setId(input.id).setType(input.type).setName(input.name).setDisplayLabel(input.displayLabel).setIsCustomField(input.isCustomField).setI18NLabel(input.i18NLabel).setIsSortable(input.isSortable).setIsVisible(input.isVisible).setIsReadOnly(input.isReadOnly).setIsEncryptedField(input.isEncryptedField).setIsPHI(input.isPHI).setMaxLength(input.maxLength).setIsMandatory(input.isMandatory).build();
6
+ }
7
+
8
+ }
9
+
10
+ export default FieldFactory;
@@ -0,0 +1,49 @@
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 FieldsManager from "../../entities/fields-manager/FieldsManager";
4
+
5
+ class FieldsManagerBuilder {
6
+ constructor() {
7
+ _defineProperty(this, "availableFields", void 0);
8
+
9
+ _defineProperty(this, "selectedFields", void 0);
10
+
11
+ _defineProperty(this, "isAvailableFieldsFetching", void 0);
12
+
13
+ _defineProperty(this, "isSelectedFieldsFetching", void 0);
14
+
15
+ _defineProperty(this, "apiTemplate", void 0);
16
+ }
17
+
18
+ setAvailableFields(availableFields) {
19
+ this.availableFields = availableFields;
20
+ return this;
21
+ }
22
+
23
+ setSelectedFields(selectedFields) {
24
+ this.selectedFields = selectedFields;
25
+ return this;
26
+ }
27
+
28
+ setAvailableFieldsFetchingStatus(isAvailableFieldsFetching) {
29
+ this.isAvailableFieldsFetching = isAvailableFieldsFetching;
30
+ return this;
31
+ }
32
+
33
+ setSelectedFieldsFetchingStatus(isSelectedFieldsFetching) {
34
+ this.isSelectedFieldsFetching = isSelectedFieldsFetching;
35
+ return this;
36
+ }
37
+
38
+ setApiTemplate(apiTemplate) {
39
+ this.apiTemplate = apiTemplate;
40
+ return this;
41
+ }
42
+
43
+ build() {
44
+ return new FieldsManager(this.availableFields, this.selectedFields, this.isAvailableFieldsFetching, this.isSelectedFieldsFetching, this.apiTemplate);
45
+ }
46
+
47
+ }
48
+
49
+ export default FieldsManagerBuilder;
@@ -2,22 +2,7 @@ import FieldBuilder from "./FieldBuilder";
2
2
 
3
3
  class FieldFactory {
4
4
  static create(input) {
5
- const {
6
- id,
7
- type,
8
- name,
9
- displayLabel,
10
- isCustomField,
11
- i18NLabel,
12
- isSortable,
13
- isVisible,
14
- isReadOnly,
15
- isEncryptedField,
16
- isPHI,
17
- maxLength,
18
- isMandatory
19
- } = input;
20
- return new FieldBuilder().setId(id).setType(type).setName(name).setDisplayLabel(displayLabel).setIsCustomField(isCustomField).setI18NLabel(i18NLabel).setIsSortable(isSortable).setIsVisible(isVisible).setIsReadOnly(isReadOnly).setIsEncryptedField(isEncryptedField).setIsPHI(isPHI).setMaxLength(maxLength).setIsMandatory(isMandatory).build();
5
+ return new FieldBuilder().setId(input.id).setType(input.type).setName(input.name).setDisplayLabel(input.displayLabel).setIsCustomField(input.isCustomField).setI18NLabel(input.i18NLabel).setIsSortable(input.isSortable).setIsVisible(input.isVisible).setIsReadOnly(input.isReadOnly).setIsEncryptedField(input.isEncryptedField).setIsPHI(input.isPHI).setMaxLength(input.maxLength).setIsMandatory(input.isMandatory).build();
21
6
  }
22
7
 
23
8
  }
@@ -3,14 +3,12 @@ import AbstractUseCase from "./AbstractUseCase";
3
3
  class RefetchUseCase extends AbstractUseCase {
4
4
  execute(input) {
5
5
  const {
6
- repository,
7
- presenter
6
+ repository
8
7
  } = this.dependencies;
9
8
  const {
10
9
  props,
11
10
  metaData,
12
11
  dispatch,
13
- actionName,
14
12
  apiName
15
13
  } = input;
16
14
  const fieldManager = repository.getFieldManager();
@@ -1,8 +1,2 @@
1
- var FieldApiName = /*#__PURE__*/function (FieldApiName) {
2
- FieldApiName["AVAILABLE_FIELDS"] = "availableFields";
3
- FieldApiName["SELECTED_FIELDS"] = "selectedFields";
4
- return FieldApiName;
5
- }(FieldApiName || {});
6
-
7
- ;
1
+ import FieldApiName from "../../../entities/interfaces/FieldApiName";
8
2
  export { FieldApiName };
@@ -1,7 +1,10 @@
1
1
  /* eslint-disable max-lines-per-function */
2
2
  import HeadersTranslator from "./translators/HeadersTranslator";
3
3
  import RowsTranslator from "./translators/RowsTranslator";
4
- import pipeline from "./utils/pipeline";
4
+ import Pipeline from "./utils/Pipeline";
5
+
6
+ const fallbackToDefault = (value, defaultValue) => [undefined, null].includes(value) ? defaultValue : value;
7
+
5
8
  export default class TableTranslator {
6
9
  static transformState(state) {
7
10
  const {
@@ -16,37 +19,34 @@ export default class TableTranslator {
16
19
  const {
17
20
  zrecord,
18
21
  zfield
19
- } = behaviours || {};
22
+ } = fallbackToDefault(behaviours, {}); // FIX: behaviours should be available by default
23
+
20
24
  const {
21
25
  records,
22
26
  isFetching: isRecordsFetching
23
- } = zrecord || {};
27
+ } = fallbackToDefault(zrecord, {}); // FIX: zrecord should be available by default
28
+
24
29
  const fieldUiMapping = uiMapping.fields;
25
30
  const {
26
31
  fields: availableFields,
27
32
  selectedFields,
28
33
  isFieldsFetching: isAvailableFieldsFetching,
29
34
  isSelectedFieldsFetching
30
- } = zfield || {};
35
+ } = fallbackToDefault(zfield, {}); // FIX: zfield should be available by default
36
+
31
37
  const isLoading = !!(isRecordsFetching || isAvailableFieldsFetching || isSelectedFieldsFetching);
32
38
  const fields = selectedFields === null || selectedFields === void 0 ? void 0 : selectedFields.map(selectedField => availableFields === null || availableFields === void 0 ? void 0 : availableFields.find(availableField => availableField.name === selectedField)).filter(f => f != undefined);
33
39
  const headersTranslator = new HeadersTranslator(fields);
34
40
  const rowsTranslator = new RowsTranslator(records, fields, rowActions, pageContext, fieldUiMapping);
35
41
  const translators = [headersTranslator.getTranslator(), rowsTranslator.getTranslator()]; // TODO: Implement ModuleTableModel, and move data and isLoading to tableViewModel Object
36
- // return ModuleTableModel({
37
- // properties: state.properties,
38
- // isLoading,
39
- // behaviours,
40
- // data: pipeline(translators, {})
41
- // });
42
42
 
43
43
  return {
44
44
  properties,
45
45
  behaviours,
46
46
  hasRowActions: Boolean(rowActions === null || rowActions === void 0 ? void 0 : rowActions.length),
47
47
  isLoading,
48
- emptyStateUiType: uiMapping.emptyState || "",
49
- data: pipeline(translators, {})
48
+ emptyStateUiType: uiMapping.emptyState || '',
49
+ data: Pipeline.run(translators, {})
50
50
  };
51
51
  }
52
52
 
@@ -1,8 +1,8 @@
1
- import FieldTypes from "../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../cc/fields/field/Types";
2
2
 
3
- function EmptyViewModel(type) {
3
+ function EmptyViewModel() {
4
4
  return {
5
- type: FieldTypes.SingleLine,
5
+ type: FieldTypes.SingleLineField,
6
6
  value: '-'
7
7
  };
8
8
  }
@@ -19,8 +19,7 @@ function EventMappingTranslator(eventMapping, record, pageContext) {
19
19
  moduleSanitatedName: pageContext.moduleSanitatedName,
20
20
  moduleName: pageContext.moduleName,
21
21
  recordId: record.id
22
- })) // payload: eventMapping.payloadMapping
23
-
22
+ }))
24
23
  };
25
24
  });
26
25
  }
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import BooleanFieldModel from "../../../../../../cc/fields/boolean/Model";
3
3
 
4
4
  const BooleanFieldTranslator = (field, value) => {
@@ -14,7 +14,7 @@ const BooleanFieldTranslator = (field, value) => {
14
14
  }
15
15
 
16
16
  return BooleanFieldModel({
17
- uiType: uiType || FieldTypes.Boolean,
17
+ uiType: uiType || FieldTypes.CheckboxField,
18
18
  name,
19
19
  value
20
20
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import CurrencyFieldModel from "../../../../../../cc/fields/currency/Model";
3
3
 
4
4
  const CurrencyFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const CurrencyFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return CurrencyFieldModel({
10
- uiType: uiType || FieldTypes.Currency,
10
+ uiType: uiType || FieldTypes.CurrencyField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import DateFieldModel from "../../../../../../cc/fields/date/Model";
3
3
 
4
4
  const DateFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const DateFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return DateFieldModel({
10
- uiType: uiType || FieldTypes.Date,
10
+ uiType: uiType || FieldTypes.DateField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import DateTimeFieldModel from "../../../../../../cc/fields/datetime/Model";
3
3
 
4
4
  const DateTimeFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const DateTimeFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return DateTimeFieldModel({
10
- uiType: uiType || FieldTypes.DateTime,
10
+ uiType: uiType || FieldTypes.DateTimeField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import DecimalFieldModel from "../../../../../../cc/fields/decimal/Model";
3
3
 
4
4
  const DecimalFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const DecimalFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return DecimalFieldModel({
10
- uiType: uiType || FieldTypes.Decimal,
10
+ uiType: uiType || FieldTypes.DecimalField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import EmailFieldModel from "../../../../../../cc/fields/email/Model";
3
3
 
4
4
  const EmailFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const EmailFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return EmailFieldModel({
10
- uiType: uiType || FieldTypes.Email,
10
+ uiType: uiType || FieldTypes.EmailField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import LookupFieldModel from "../../../../../../cc/fields/lookup/Model";
3
3
 
4
4
  const LookUpFieldTranslator = (field, value) => {
@@ -14,7 +14,7 @@ const LookUpFieldTranslator = (field, value) => {
14
14
  } = value;
15
15
  const lookupName = `${firstName} ${lastName}`;
16
16
  return LookupFieldModel({
17
- uiType: uiType || FieldTypes.LookUp,
17
+ uiType: uiType || FieldTypes.LookUpField,
18
18
  name,
19
19
  value: {
20
20
  id,
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import MultiLineFieldModel from "../../../../../../cc/fields/multi-select/Model";
3
3
 
4
4
  const MultiLineFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const MultiLineFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return MultiLineFieldModel({
10
- uiType: uiType || FieldTypes.MultiLine,
10
+ uiType: uiType || FieldTypes.MultiLineField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import MultiListFieldModel from "../../../../../../cc/fields/multi-select/Model";
3
3
 
4
4
  const MultiSelectFieldTranslator = (field, value) => {
@@ -14,7 +14,7 @@ const MultiSelectFieldTranslator = (field, value) => {
14
14
  return item;
15
15
  });
16
16
  return MultiListFieldModel({
17
- uiType: uiType || FieldTypes.MultiSelect,
17
+ uiType: uiType || FieldTypes.MultiSelectField,
18
18
  name,
19
19
  value: updatedValue
20
20
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import NumberFieldModel from "../../../../../../cc/fields/number/Model";
3
3
 
4
4
  const NumberLineFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const NumberLineFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return NumberFieldModel({
10
- uiType: uiType || FieldTypes.Number,
10
+ uiType: uiType || FieldTypes.NumberField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import PercentFieldModel from "../../../../../../cc/fields/percent/Model";
3
3
 
4
4
  const PercentageFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const PercentageFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return PercentFieldModel({
10
- uiType: uiType || FieldTypes.Percentage,
10
+ uiType: uiType || FieldTypes.PercentageField,
11
11
  name,
12
12
  value
13
13
  });
@@ -1,4 +1,4 @@
1
- import FieldTypes from "../../../../../zfield/entities/interfaces/FieldTypes";
1
+ import FieldTypes from "../../../../../../cc/fields/field/Types";
2
2
  import PhoneFieldModel from "../../../../../../cc/fields/phone/Model";
3
3
 
4
4
  const PhoneFieldTranslator = (field, value) => {
@@ -7,7 +7,7 @@ const PhoneFieldTranslator = (field, value) => {
7
7
  name
8
8
  } = field;
9
9
  return PhoneFieldModel({
10
- uiType: uiType || FieldTypes.Phone,
10
+ uiType: uiType || FieldTypes.PhoneField,
11
11
  name,
12
12
  value
13
13
  });