@zohodesk/library-platform 1.1.3 → 1.1.6-temp-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.
- package/README.md +3 -3
- package/es/bc/sdk/EventHandlers.js +1 -0
- package/es/bc/sdk/Properties.js +10 -0
- package/es/bc/sdk/ResourceNamesEnum.js +6 -0
- package/es/bc/zform/Properties.js +3 -26
- package/es/bc/zform/Symbol.js +1 -0
- package/es/bc/zhttp/Errors.js +14 -0
- package/es/bc/zhttp/index.js +3 -1
- package/es/bc/zlist/Constants.js +8 -1
- package/es/bc/zlist/Events.js +140 -0
- package/es/bc/zlist/index.js +2 -1
- package/es/bc/zrecord/Constants.js +3 -1
- package/es/cc/action-icon/Properties.js +19 -1
- package/es/cc/action-location/Constants.js +5 -3
- package/es/cc/architecture/LifeCycleActionEnum.js +2 -8
- package/es/cc/button/Constants.js +7 -0
- package/es/cc/button/Events.js +5 -0
- package/es/cc/button/Properties.js +77 -0
- package/es/cc/button/index.js +3 -0
- package/es/cc/component/FallbackView.js +1 -0
- package/es/cc/component/LifeCycleEventsEnum.js +9 -0
- package/es/cc/fields/currency/Model.js +2 -0
- package/es/cc/fields/field/FormDefaultUIType.js +37 -0
- package/es/cc/fields/field/Properties.js +1 -1
- package/es/cc/fields/formula/Model.js +5 -0
- package/es/cc/form/Constants.js +2 -0
- package/es/cc/form/Events.js +20 -0
- package/es/cc/form-connected/Constants.js +13 -0
- package/es/cc/form-connected/Properties.js +43 -1
- package/es/cc/index.js +4 -0
- package/es/cc/link/Properties.js +0 -1
- package/es/cc/list-item/Constants.js +7 -0
- package/es/cc/list-item/Events.js +14 -0
- package/es/cc/list-item/Properties.js +131 -0
- package/es/cc/list-item/index.js +3 -0
- package/es/cc/more-dropdown/Constants.js +7 -0
- package/es/cc/more-dropdown/Events.js +14 -0
- package/es/cc/more-dropdown/Properties.js +66 -0
- package/es/cc/more-dropdown/index.js +3 -0
- package/es/cc/section/Constants.js +2 -0
- package/es/cc/section/Events.js +20 -0
- package/es/cc/section/Properties.js +16 -0
- package/es/cc/switch/Properties.js +2 -2
- package/es/cc/table-connected/ErrorEventType.js +32 -0
- package/es/cc/table-connected/Events.js +96 -0
- package/es/cc/table-connected/Properties.js +16 -0
- package/es/cc/table-connected/SdkContract.js +132 -0
- package/es/cc/table-connected/constants/Events.js +2 -0
- package/es/cc/table-connected/index.js +3 -1
- package/es/cc/table-list/Constants.js +4 -0
- package/es/cc/table-list/Properties.js +25 -0
- package/es/cc/table-list/row/Properties.js +44 -0
- package/es/index.js +11 -2
- package/es/library/behaviours/keyboard-controls/applications/usecases/DestructUsecase.js +5 -2
- package/es/library/behaviours/list-selection/frameworks/ActionHandlerFactory.js +4 -3
- package/es/library/custom-component/adapters/gateways/event-manager/EventManager.js +116 -4
- package/es/library/custom-component/applications/entities-factory/BehavioursFactory.js +18 -16
- package/es/library/custom-component/applications/interfaces/gateways/ISchemaValidator.js +1 -0
- package/es/library/custom-component/applications/usecases/InitializeUseCase.js +3 -2
- package/es/library/custom-component/applications/usecases/UpdatePropertyUseCase.js +6 -2
- package/es/library/custom-component/applications/usecases/UpdateStateUseCase.js +5 -1
- package/es/library/custom-component/domain/entities/Component.js +20 -3
- package/es/library/custom-component/domain/entities/LifeCycleAction.js +14 -3
- package/es/library/custom-component/domain/entities/Properties.js +19 -1
- package/es/library/custom-component/frameworks/json-schema-validator/Validator.js +36 -1
- package/es/library/custom-component/frameworks/ui/CreateCustomComponent.js +23 -11
- package/es/library/custom-component/frameworks/ui/DependencyFactory.js +4 -3
- package/es/library/dot/components/action-location/frameworks/ui/ActionComponentMapping.js +6 -0
- package/es/library/dot/components/action-location/frameworks/ui/EventHandlersFactory.js +1 -1
- package/es/library/dot/components/form/adapters/presenter/TransformState.js +25 -1
- package/es/library/dot/components/form/frameworks/ui/DefaultComponentRegister.js +28 -0
- package/es/library/dot/components/form/frameworks/ui/EventHandlerFactory.js +23 -3
- package/es/library/dot/components/form/frameworks/ui/Form.js +2 -0
- package/es/library/dot/components/form/frameworks/ui/FormView.js +44 -26
- package/es/library/dot/components/form/frameworks/ui/css/Form.module.css +8 -0
- package/es/library/dot/components/form/frameworks/ui/sub-components/Sections.js +7 -9
- package/es/library/dot/components/form-fields/checkbox/frameworks/ui/CheckboxView.js +1 -0
- package/es/library/dot/components/form-fields/currency/frameworks/ui/CurrencyView.js +1 -0
- package/es/library/dot/components/form-fields/date/frameworks/ui/DateView.js +1 -0
- package/es/library/dot/components/form-fields/datetime/frameworks/ui/DateTimeView.js +1 -0
- package/es/library/dot/components/form-fields/decimal/frameworks/ui/DecimalView.js +1 -0
- package/es/library/dot/components/form-fields/email/frameworks/ui/EmailView.js +1 -0
- package/es/library/dot/components/form-fields/multi-select/frameworks/ui/MultiSelectView.js +1 -0
- package/es/library/dot/components/form-fields/number/frameworks/ui/NumberView.js +1 -0
- package/es/library/dot/components/form-fields/percentage/frameworks/ui/PercentageView.js +1 -0
- package/es/library/dot/components/form-fields/phone/frameworks/ui/PhoneView.js +1 -0
- package/es/library/dot/components/form-fields/pick-list/frameworks/ui/PickListView.js +1 -0
- package/es/library/dot/components/form-fields/textarea/frameworks/ui/TextAreaView.js +1 -0
- package/es/library/dot/components/form-fields/textbox/frameworks/ui/TextBoxView.js +1 -0
- package/es/library/dot/components/form-fields/url/frameworks/ui/UrlView.js +1 -0
- package/es/library/dot/components/section/frameworks/ui/EventHandlerFactory.js +26 -3
- package/es/library/dot/components/section/frameworks/ui/RenderField.js +19 -0
- package/es/library/dot/components/section/frameworks/ui/Section.js +13 -4
- package/es/library/dot/components/section/frameworks/ui/SectionView.js +7 -26
- package/es/library/dot/components/table-list/frameworks/hooks/useDropIndicator.js +8 -0
- package/es/library/dot/components/table-list/frameworks/hooks/useRowData.js +15 -0
- package/es/library/dot/components/table-list/frameworks/hooks/useTableRowReorder.js +105 -0
- package/es/library/dot/components/table-list/frameworks/ui/TableListView.js +85 -15
- package/es/library/dot/components/table-list/frameworks/ui/css/TableList.module.css +240 -1
- package/es/library/dot/components/table-list/frameworks/ui/sub-components/Header.js +32 -14
- package/es/library/dot/components/table-list/frameworks/ui/sub-components/Rows.js +25 -9
- package/es/library/dot/components/table-list/frameworks/ui/sub-components/header/MassAction.js +11 -2
- package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/Row.js +50 -8
- package/es/library/dot/components/table-list/frameworks/ui/sub-components/row/RowSelection.js +7 -1
- package/es/library/dot/components/table-list/frameworks/utils/getHeaderClasses.js +37 -0
- package/es/library/dot/components/table-list/frameworks/utils/getTableListClassName.js +37 -0
- package/es/library/dot/components/table-list/frameworks/utils/reOrder.js +90 -0
- package/es/library/dot/legacy-to-new-arch/action-icon/frameworks/ui/ActionIconView.js +10 -1
- package/es/library/dot/legacy-to-new-arch/action-icon/frameworks/ui/css/ActionIconView.module.css +3 -0
- package/es/library/dot/legacy-to-new-arch/button/frameworks/ui/Button.js +12 -0
- package/es/library/dot/legacy-to-new-arch/button/frameworks/ui/ButtonView.js +41 -0
- package/es/library/dot/legacy-to-new-arch/list-item/frameworks/ui/ListItem.js +12 -0
- package/es/library/dot/legacy-to-new-arch/list-item/frameworks/ui/ListItemView.js +122 -0
- package/es/library/dot/legacy-to-new-arch/more-dropdown/frameworks/ui/MoreDropdown.js +12 -0
- package/es/library/dot/legacy-to-new-arch/more-dropdown/frameworks/ui/MoreDropdownView.js +43 -0
- package/es/library/dot/legacy-to-new-arch/switch/frameworks/ui/SwitchView.js +5 -5
- package/es/library/dot/legacy-to-new-arch/table-column-filter/frameworks/ui/TableColumnFilterView.js +8 -4
- package/es/library/dot/legacy-to-new-arch/table-field-components/switch-field/frameworks/ui/SwitchFieldView.js +0 -1
- package/es/library/dot/legacy-to-new-arch/text-area/frameworks/ui/TextAreaView.js +1 -1
- package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/ClientActionsAdapter.js +96 -0
- package/es/platform/client-actions/components/action-event-mediator/frameworks/ui/EventHandlersFactory.js +12 -3
- package/es/platform/client-actions/template-resolver/index.js +1 -0
- package/es/platform/client-actions/translators/client-actions-translator/index.js +5 -2
- package/es/platform/client-actions/translators/condition-resolver/field-evaluators/GetResolvedContextFieldValue.js +3 -2
- package/es/platform/client-actions/translators/context-resolver/index.js +7 -10
- package/es/platform/components/form-connected/frameworks/EventHandlersFactory.js +91 -0
- package/es/platform/components/form-connected/frameworks/FormConnectedFactory.js +33 -0
- package/es/{desk-frameworks → platform/components}/form-connected/frameworks/FormConnectedView.js +1 -1
- package/es/{desk-frameworks → platform/components}/form-connected/frameworks/FormSdkFactory.js +3 -14
- package/es/platform/components/table-connected/adapters/controllers/ColumnChooserOpenedController.js +28 -0
- package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ColumnChooserUpdateController.js +5 -5
- package/es/platform/components/table-connected/adapters/controllers/ReOrderFinishController.js +21 -0
- package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeByMouseController.js +1 -1
- package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeEndController.js +1 -1
- package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeFinishController.js +1 -1
- package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ResizeStartController.js +2 -2
- package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/ScrollController.js +1 -1
- package/es/platform/components/table-connected/adapters/resources/ErrorPrinter.js +20 -0
- package/es/platform/components/table-connected/adapters/resources/SmartTableResource.js +326 -0
- package/es/platform/components/table-connected/application/interfaces/ISmartTableResource.js +1 -0
- package/es/platform/components/table-connected/frameworks/ErrorEventHandlersFactory.js +126 -0
- package/es/{desk-frameworks → platform/components}/table-connected/frameworks/EventHandlersFactory.js +58 -17
- package/es/platform/components/table-connected/frameworks/ListSdkFactory.js +57 -0
- package/es/platform/components/table-connected/frameworks/TableConnectedFactory.js +78 -0
- package/es/{desk-frameworks → platform/components}/table-connected/frameworks/TableConnectedView.js +10 -4
- package/es/platform/data-source/http-template/reOrderRecord.js +44 -0
- package/es/platform/data-source/index.js +2 -0
- package/es/platform/sdk/adapters/gateways/Repository.js +31 -0
- package/es/platform/sdk/adapters/gateways/Service.js +27 -0
- package/es/platform/sdk/adapters/presenters/Presenter.js +16 -0
- package/es/platform/sdk/application/interfaces/UsecaseDependencies.js +1 -0
- package/es/platform/sdk/application/interfaces/gateways/AbstractResource.js +13 -0
- package/es/platform/sdk/application/interfaces/gateways/IRepository.js +1 -0
- package/es/platform/sdk/application/interfaces/gateways/ISdkManager.js +1 -0
- package/es/platform/sdk/application/interfaces/gateways/IService.js +1 -0
- package/es/platform/sdk/application/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
- package/es/platform/sdk/application/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
- package/es/platform/sdk/application/interfaces/input/GetResourceInstanceUseCaseInputModel.js +1 -0
- package/es/platform/sdk/application/interfaces/input/RegisterResourceInputModel.js +1 -0
- package/es/platform/sdk/application/interfaces/input/SyncStateWithResourceInputModel.js +1 -0
- package/es/platform/sdk/application/interfaces/output/ISdkPresenter.js +3 -0
- package/es/platform/sdk/application/usecases/AbstractUseCase.js +16 -0
- package/es/platform/sdk/application/usecases/CreateResourceInstanceUseCase.js +16 -0
- package/es/platform/sdk/application/usecases/DestructResourceInstanceUseCase.js +16 -0
- package/es/platform/sdk/application/usecases/GetResourceInstanceUseCase.js +17 -0
- package/es/platform/sdk/application/usecases/RegisterResourceUseCase.js +16 -0
- package/es/platform/sdk/application/usecases/SyncStateWithResourceUseCase.js +25 -0
- package/es/platform/sdk/domain/entities/ResourceManager.js +95 -0
- package/es/platform/sdk/domain/entities/interfaces/IResourceManager.js +1 -0
- package/es/platform/sdk/domain/entities/interfaces/ResourceManagerRestoreModel.js +1 -0
- package/es/platform/sdk/domain/entities/interfaces/SdkResource.js +1 -0
- package/es/platform/sdk/domain/entities/interfaces/SdkResourceDependencies.js +1 -0
- package/es/platform/sdk/domain/entities/interfaces/StateInterface.js +1 -0
- package/es/platform/sdk/frameworks/Sdk.js +11 -0
- package/es/platform/sdk/frameworks/SdkRegistry.js +72 -0
- package/es/platform/sdk-behaviour/adapters/controllers/AbstractController.js +11 -0
- package/es/platform/sdk-behaviour/adapters/controllers/DestructController.js +19 -0
- package/es/platform/sdk-behaviour/adapters/controllers/InitializeController.js +19 -0
- package/es/platform/sdk-behaviour/adapters/controllers/SyncStateWithResourceController.js +24 -0
- package/es/platform/sdk-behaviour/adapters/gateways/Repository.js +25 -0
- package/es/platform/sdk-behaviour/adapters/gateways/ResourceManagerGateWay.js +43 -0
- package/es/platform/sdk-behaviour/adapters/gateways/Service.js +19 -0
- package/es/platform/sdk-behaviour/applications/AbstractUseCase.js +6 -0
- package/es/platform/sdk-behaviour/applications/interfaces/UsecaseDependencies.js +1 -0
- package/es/platform/sdk-behaviour/applications/interfaces/gateways/IRepository.js +1 -0
- package/es/platform/sdk-behaviour/applications/interfaces/gateways/IResourceManagerGateWay.js +3 -0
- package/es/platform/sdk-behaviour/applications/interfaces/gateways/IService.js +1 -0
- package/es/platform/sdk-behaviour/applications/interfaces/input/CreateResourceInstanceUseCaseInputModel.js +1 -0
- package/es/platform/sdk-behaviour/applications/interfaces/input/DestructResourceInstanceUseCaseInputModel.js +1 -0
- package/es/platform/sdk-behaviour/applications/interfaces/input/SyncStateWithResourceUseCaseInputModel.js +1 -0
- package/es/platform/sdk-behaviour/applications/usecases/CreateResourceInstanceUseCase.js +14 -0
- package/es/platform/sdk-behaviour/applications/usecases/DestructResourceInstanceUseCase.js +14 -0
- package/es/platform/sdk-behaviour/applications/usecases/SyncStateWithResourceUseCase.js +22 -0
- package/es/platform/sdk-behaviour/domain/entities/BehaviourResourceConnector.js +49 -0
- package/es/platform/sdk-behaviour/domain/entities/interfaces/IBehaviourResourceConnector.js +1 -0
- package/es/platform/sdk-behaviour/domain/entities/interfaces/IResourceManagerProxy.js +2 -0
- package/es/platform/sdk-behaviour/frameworks/EventHandlerFactory.js +29 -0
- package/es/platform/sdk-behaviour/frameworks/SdkBehaviourFactory.js +16 -0
- package/es/platform/zdata-source/domain/entities/DataSource.js +18 -12
- package/es/platform/zfield/domain/entities/fields-manager/FieldsManager.js +7 -1
- package/es/platform/zform/adapters/controllers/FieldValueChangeController.js +10 -3
- package/es/platform/zform/adapters/presenter/FormTranslator.js +33 -167
- package/es/platform/zform/adapters/presenter/translators/SectionTranslator.js +41 -0
- package/es/platform/zform/adapters/presenter/translators/fields/BooleanFieldTranslator.js +20 -0
- package/es/platform/zform/adapters/presenter/translators/fields/CurrencyFieldTranslator.js +29 -0
- package/es/platform/zform/adapters/presenter/translators/fields/DateFieldTranslator.js +20 -0
- package/es/platform/zform/adapters/presenter/translators/fields/DateTimeFieldTranslator.js +21 -0
- package/es/platform/zform/adapters/presenter/translators/fields/DecimalFieldTranslator.js +29 -0
- package/es/platform/zform/adapters/presenter/translators/fields/EmailFieldTranslator.js +30 -0
- package/es/platform/zform/adapters/presenter/translators/fields/LookUpFieldTranslator.js +30 -0
- package/es/platform/zform/adapters/presenter/translators/fields/MultiselectFieldTranslator.js +29 -0
- package/es/platform/zform/adapters/presenter/translators/fields/NumberFieldTranslator.js +30 -0
- package/es/platform/zform/adapters/presenter/translators/fields/PercentageFieldTranslator.js +30 -0
- package/es/platform/zform/adapters/presenter/translators/fields/PhoneFieldTranslator.js +29 -0
- package/es/platform/zform/adapters/presenter/translators/fields/PicklistFieldTranslator.js +29 -0
- package/es/platform/zform/adapters/presenter/translators/fields/TextAreaFieldTranslator.js +30 -0
- package/es/platform/zform/adapters/presenter/translators/fields/TextFieldTranslator.js +27 -0
- package/es/platform/zform/adapters/presenter/translators/fields/URLFieldTranslator.js +30 -0
- package/es/platform/zform/adapters/presenter/translators/fields/index.js +15 -0
- package/es/platform/zform/adapters/presenter/translators/interfaces/ComponentMapping.js +1 -0
- package/es/platform/zform/adapters/presenter/translators/interfaces/FieldContract.js +1 -0
- package/es/platform/zform/adapters/presenter/translators/interfaces/FormTranslatorState.js +1 -0
- package/es/platform/zform/adapters/presenter/translators/interfaces/SectionContract.js +1 -0
- package/es/platform/zform/applications/usecases/FieldValueChangeRequestUseCase.js +13 -1
- package/es/platform/zform/applications/usecases/MyFormSuccessUseCase.js +3 -1
- package/es/platform/zform/domain/ZField.js +61 -16
- package/es/platform/zform/domain/ZSection.js +26 -7
- package/es/platform/zform/frameworks/ui/EventHandlerFactory.js +10 -4
- package/es/platform/zhttp/applications/usecases/FetchUseCase.js +111 -66
- package/es/platform/zlist/adapters/controllers/FieldExecuteFailedController.js +25 -0
- package/es/platform/zlist/adapters/controllers/ReOrderController.js +25 -0
- package/es/platform/zlist/adapters/controllers/ReOrderFailedController.js +26 -0
- package/es/platform/zlist/adapters/gateways/Repository.js +12 -2
- package/es/platform/zlist/adapters/gateways/Service.js +8 -0
- package/es/platform/zlist/adapters/presenters/SelectionTranslator.js +3 -1
- package/es/platform/zlist/adapters/presenters/TableTranslator.js +19 -5
- package/es/platform/zlist/adapters/presenters/translators/ColumnTranslator.js +11 -12
- package/es/platform/zlist/adapters/presenters/translators/EmptyViewModel.js +2 -1
- package/es/platform/zlist/adapters/presenters/translators/Header.js +8 -4
- package/es/platform/zlist/adapters/presenters/translators/HeadersTranslator.js +3 -2
- package/es/platform/zlist/adapters/presenters/translators/ResizerStateTranslator.js +7 -3
- package/es/platform/zlist/adapters/presenters/translators/fields/CurrencyFieldTranslator.js +1 -0
- package/es/platform/zlist/adapters/presenters/translators/fields/FormulaFieldTranslator.js +3 -0
- package/es/platform/zlist/adapters/presenters/utils/DefaultClientActions.js +1 -1
- package/es/platform/zlist/applications/entities-factory/ListFactory.js +3 -2
- package/es/platform/zlist/applications/interfaces/input/GetContextUseCaseInput.js +1 -0
- package/es/platform/zlist/applications/interfaces/input/ReOrderRecordUseCaseInput.js +1 -0
- package/es/platform/zlist/applications/interfaces/input/UpdateMultipleRecordUseCaseInput.js +1 -0
- package/es/platform/zlist/applications/usecases/DeleteMultipleRecordUseCase.js +23 -2
- package/es/platform/zlist/applications/usecases/DeleteSingleRecordUseCase.js +9 -0
- package/es/platform/zlist/applications/usecases/FetchMoreUseCase.js +1 -1
- package/es/platform/zlist/applications/usecases/GetContextUseCase.js +18 -0
- package/es/platform/zlist/applications/usecases/ReOrderFailedUseCase.js +22 -0
- package/es/platform/zlist/applications/usecases/ReOrderUseCase.js +25 -0
- package/es/platform/zlist/applications/usecases/RecordExecuteFailedUseCase.js +3 -2
- package/es/platform/zlist/applications/usecases/RecordSuccessCallbackUsecase.js +24 -3
- package/es/platform/zlist/applications/usecases/RecordUpdateUseCase.js +9 -0
- package/es/platform/zlist/applications/usecases/UpdateMultipleRecordUseCase.js +34 -0
- package/es/platform/zlist/domain/entities/List.js +73 -48
- package/es/platform/zlist/domain/entities/ListErrorState.js +167 -0
- package/es/platform/zlist/frameworks/EventHandlersFactory.js +16 -6
- package/es/platform/zlist/frameworks/ZListBehaviourFactory.js +6 -0
- package/es/platform/zrecord/applications/interfaces/input/GetMultipleRecordUsecaseInputModel.js +1 -0
- package/es/platform/zrecord/applications/interfaces/input/GetSingleRecordUseCaseInputModel.js +1 -0
- package/es/platform/zrecord/applications/usecases/GetMultipleRecordUseCase.js +16 -0
- package/es/platform/zrecord/applications/usecases/GetSingleRecordUseCase.js +17 -0
- package/es/platform/zrecord/domain/entities/GetReOrderRecordsStrategy.js +40 -0
- package/es/platform/zrecord/domain/entities/Records.js +9 -4
- package/es/platform/zrecord/domain/entities/RecordsManager.js +11 -1
- package/package.json +22 -18
- package/es/desk-frameworks/form-connected/frameworks/EventHandlersFactory.js +0 -24
- package/es/desk-frameworks/form-connected/frameworks/FormConnectedFactory.js +0 -33
- package/es/desk-frameworks/table-connected/adapters/controllers/ColumnChooserOpenedController.js +0 -36
- package/es/desk-frameworks/table-connected/frameworks/ListSdkFactory.js +0 -172
- package/es/desk-frameworks/table-connected/frameworks/TableConnectedFactory.js +0 -56
- package/es/library/dot/components/section/adapters/presenter/TransFormState.js +0 -26
- /package/es/{desk-frameworks → platform/components}/form-connected/frameworks/FormConnected.js +0 -0
- /package/es/{desk-frameworks → platform/components}/index.js +0 -0
- /package/es/{desk-frameworks → platform/components}/table-connected/adapters/controllers/AbstractController.js +0 -0
- /package/es/{desk-frameworks → platform/components}/table-connected/frameworks/TableConnected.js +0 -0
|
@@ -0,0 +1,326 @@
|
|
|
1
|
+
import { AbstractResource } from "../../../../sdk/application/interfaces/gateways/AbstractResource";
|
|
2
|
+
import ZListRepository from "../../../../zlist/adapters/gateways/Repository";
|
|
3
|
+
import ZListSortBy from "../../../../zlist/adapters/gateways/SortBy";
|
|
4
|
+
import ZListPresenters from "../../../../zlist/adapters/presenters/Presenters";
|
|
5
|
+
import ZRecordRepository from "../../../../zrecord/adapters/gateways/Repository";
|
|
6
|
+
import ZRecordPresenter from "../../../../zrecord/adapters/presenters/Presenter";
|
|
7
|
+
import ListSelectRepository from "../../../../../library/behaviours/list-selection/adapters/gateways/Repository";
|
|
8
|
+
import ListSelectPresenter from "../../../../../library/behaviours/list-selection/adapters/presenters/Presenter";
|
|
9
|
+
import ListSelectSelectUsecase from "../../../../../library/behaviours/list-selection/applications/usecases/Select";
|
|
10
|
+
import ListSelectDeselectUsecase from "../../../../../library/behaviours/list-selection/applications/usecases/Deselect";
|
|
11
|
+
import GetMultipleRecordUseCase from "../../../../zrecord/applications/usecases/GetMultipleRecordUseCase";
|
|
12
|
+
import GetSingleRecordUseCase from "../../../../zrecord/applications/usecases/GetSingleRecordUseCase";
|
|
13
|
+
import DeleteSingleRecordUseCase from "../../../../zlist/applications/usecases/DeleteSingleRecordUseCase";
|
|
14
|
+
import DeleteMultipleRecordUseCase from "../../../../zlist/applications/usecases/DeleteMultipleRecordUseCase";
|
|
15
|
+
import RecordUpdateUseCase from "../../../../zlist/applications/usecases/RecordUpdateUseCase";
|
|
16
|
+
import UpdateMultipleRecordUseCase from "../../../../zlist/applications/usecases/UpdateMultipleRecordUseCase";
|
|
17
|
+
import GetContextUseCase from "../../../../zlist/applications/usecases/GetContextUseCase";
|
|
18
|
+
import ReOrderUseCase from "../../../../zlist/applications/usecases/ReOrderUseCase";
|
|
19
|
+
import { SdkContracts } from "../../../../../cc/table-connected/SdkContract";
|
|
20
|
+
import Validator from "../../../../../library/custom-component/frameworks/json-schema-validator/Validator";
|
|
21
|
+
import ErrorPrinter from "./ErrorPrinter";
|
|
22
|
+
export class SmartTableResource extends AbstractResource {
|
|
23
|
+
initialize() {}
|
|
24
|
+
|
|
25
|
+
destroy() {}
|
|
26
|
+
|
|
27
|
+
safeValidateInput(meta, input) {
|
|
28
|
+
try {
|
|
29
|
+
const result = Validator.validate(meta, input);
|
|
30
|
+
return result;
|
|
31
|
+
} catch (error) {
|
|
32
|
+
return {
|
|
33
|
+
isValid: false,
|
|
34
|
+
errors: [{
|
|
35
|
+
dataPath: '',
|
|
36
|
+
keyword: 'internal',
|
|
37
|
+
message: 'invalid schema'
|
|
38
|
+
}]
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
validateInput(methodName, input, meta) {
|
|
44
|
+
const {
|
|
45
|
+
isValid,
|
|
46
|
+
errors
|
|
47
|
+
} = this.safeValidateInput(meta, input);
|
|
48
|
+
|
|
49
|
+
if (!isValid) {
|
|
50
|
+
const title = `%c Invalid sdk input for %c${methodName}`;
|
|
51
|
+
const styles = ['color: red; font-weight: bold;', 'color: #FF6F61; font-weight: bold;'];
|
|
52
|
+
ErrorPrinter.displaySchemaErrors({
|
|
53
|
+
msg: title,
|
|
54
|
+
styles
|
|
55
|
+
}, errors, '');
|
|
56
|
+
throw {
|
|
57
|
+
code: 'ValidationError',
|
|
58
|
+
message: `Invalid input for ${methodName}`,
|
|
59
|
+
details: {
|
|
60
|
+
methodName,
|
|
61
|
+
errors
|
|
62
|
+
}
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
getRecordDependencies() {
|
|
68
|
+
const dependencies = {
|
|
69
|
+
repository: new ZRecordRepository(),
|
|
70
|
+
presenter: new ZRecordPresenter()
|
|
71
|
+
};
|
|
72
|
+
return dependencies;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
getListDependencies() {
|
|
76
|
+
const dependencies = {
|
|
77
|
+
repository: new ZListRepository(),
|
|
78
|
+
presenter: new ZListPresenters(),
|
|
79
|
+
sortBy: new ZListSortBy()
|
|
80
|
+
};
|
|
81
|
+
return dependencies;
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
getListSelectDependencies() {
|
|
85
|
+
const dependencies = {
|
|
86
|
+
repository: new ListSelectRepository(),
|
|
87
|
+
presenter: new ListSelectPresenter()
|
|
88
|
+
};
|
|
89
|
+
return dependencies;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
createUseCase(dependencies, UseCaseClass) {
|
|
93
|
+
var _usecase$updateDepend, _usecase$updateDepend2;
|
|
94
|
+
|
|
95
|
+
const {
|
|
96
|
+
state,
|
|
97
|
+
updateState
|
|
98
|
+
} = this.dependencies;
|
|
99
|
+
const usecase = new UseCaseClass(dependencies);
|
|
100
|
+
(_usecase$updateDepend = usecase.updateDependency) === null || _usecase$updateDepend === void 0 ? void 0 : _usecase$updateDepend.call(usecase, state, updateState);
|
|
101
|
+
(_usecase$updateDepend2 = usecase.updateDependencies) === null || _usecase$updateDepend2 === void 0 ? void 0 : _usecase$updateDepend2.call(usecase, state, updateState);
|
|
102
|
+
return usecase;
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
createCallback() {
|
|
106
|
+
let temp = null;
|
|
107
|
+
return {
|
|
108
|
+
setData: data => {
|
|
109
|
+
temp = data;
|
|
110
|
+
},
|
|
111
|
+
getData: () => temp
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
getRecords() {
|
|
116
|
+
const {
|
|
117
|
+
getData,
|
|
118
|
+
setData
|
|
119
|
+
} = this.createCallback();
|
|
120
|
+
const dependencies = this.getRecordDependencies();
|
|
121
|
+
const usecase = this.createUseCase(dependencies, GetMultipleRecordUseCase);
|
|
122
|
+
usecase.execute({
|
|
123
|
+
callback: setData
|
|
124
|
+
});
|
|
125
|
+
return getData();
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
getRecord(recordId) {
|
|
129
|
+
this.validateInput('getRecord', {
|
|
130
|
+
recordId
|
|
131
|
+
}, SdkContracts.getRecordInputMeta);
|
|
132
|
+
const {
|
|
133
|
+
getData,
|
|
134
|
+
setData
|
|
135
|
+
} = this.createCallback();
|
|
136
|
+
const dependencies = this.getRecordDependencies();
|
|
137
|
+
const usecase = this.createUseCase(dependencies, GetSingleRecordUseCase);
|
|
138
|
+
usecase.execute({
|
|
139
|
+
recordId,
|
|
140
|
+
callback: setData
|
|
141
|
+
});
|
|
142
|
+
return getData();
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
getContext(variableName) {
|
|
146
|
+
this.validateInput('getContext', {
|
|
147
|
+
variableName
|
|
148
|
+
}, SdkContracts.getContextInputMeta);
|
|
149
|
+
const {
|
|
150
|
+
getData,
|
|
151
|
+
setData
|
|
152
|
+
} = this.createCallback();
|
|
153
|
+
const dependencies = this.getListDependencies();
|
|
154
|
+
const usecase = this.createUseCase(dependencies, GetContextUseCase);
|
|
155
|
+
usecase.execute({
|
|
156
|
+
variableName,
|
|
157
|
+
callback: setData
|
|
158
|
+
});
|
|
159
|
+
return getData();
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
deleteRecord(recordId) {
|
|
163
|
+
this.validateInput('deleteRecord', {
|
|
164
|
+
recordId
|
|
165
|
+
}, SdkContracts.deleteRecordInputMeta);
|
|
166
|
+
const {
|
|
167
|
+
dispatch
|
|
168
|
+
} = this.dependencies;
|
|
169
|
+
const {
|
|
170
|
+
getData,
|
|
171
|
+
setData
|
|
172
|
+
} = this.createCallback();
|
|
173
|
+
const dependencies = this.getListDependencies();
|
|
174
|
+
const usecase = this.createUseCase(dependencies, DeleteSingleRecordUseCase);
|
|
175
|
+
usecase.execute({
|
|
176
|
+
recordId,
|
|
177
|
+
dispatch,
|
|
178
|
+
callback: setData
|
|
179
|
+
});
|
|
180
|
+
return getData();
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
deleteRecords(recordIds) {
|
|
184
|
+
let shouldFetch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
185
|
+
this.validateInput('deleteRecords', {
|
|
186
|
+
recordIds,
|
|
187
|
+
shouldFetch
|
|
188
|
+
}, SdkContracts.deleteRecordsInputMeta);
|
|
189
|
+
const {
|
|
190
|
+
dispatch
|
|
191
|
+
} = this.dependencies;
|
|
192
|
+
const {
|
|
193
|
+
getData,
|
|
194
|
+
setData
|
|
195
|
+
} = this.createCallback();
|
|
196
|
+
const dependencies = this.getListDependencies();
|
|
197
|
+
const usecase = this.createUseCase(dependencies, DeleteMultipleRecordUseCase);
|
|
198
|
+
usecase.execute({
|
|
199
|
+
recordIds,
|
|
200
|
+
dispatch,
|
|
201
|
+
callback: setData,
|
|
202
|
+
shouldFetch
|
|
203
|
+
});
|
|
204
|
+
return getData();
|
|
205
|
+
}
|
|
206
|
+
|
|
207
|
+
updateRecord(recordId, record) {
|
|
208
|
+
let shouldFetch = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
209
|
+
this.validateInput('updateRecord', {
|
|
210
|
+
recordId,
|
|
211
|
+
record,
|
|
212
|
+
shouldFetch
|
|
213
|
+
}, SdkContracts.updateRecordInputMeta);
|
|
214
|
+
const {
|
|
215
|
+
dispatch
|
|
216
|
+
} = this.dependencies;
|
|
217
|
+
const {
|
|
218
|
+
getData,
|
|
219
|
+
setData
|
|
220
|
+
} = this.createCallback();
|
|
221
|
+
const dependencies = this.getListDependencies();
|
|
222
|
+
const usecase = this.createUseCase(dependencies, RecordUpdateUseCase);
|
|
223
|
+
usecase.execute({
|
|
224
|
+
recordId,
|
|
225
|
+
dispatch,
|
|
226
|
+
callback: setData,
|
|
227
|
+
record,
|
|
228
|
+
shouldFetch
|
|
229
|
+
});
|
|
230
|
+
return getData();
|
|
231
|
+
}
|
|
232
|
+
|
|
233
|
+
updateRecords(recordsMap) {
|
|
234
|
+
let shouldFetch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
235
|
+
this.validateInput('updateRecords', {
|
|
236
|
+
recordsMap,
|
|
237
|
+
shouldFetch
|
|
238
|
+
}, SdkContracts.updateRecordsInputMeta);
|
|
239
|
+
const {
|
|
240
|
+
dispatch
|
|
241
|
+
} = this.dependencies;
|
|
242
|
+
const {
|
|
243
|
+
getData,
|
|
244
|
+
setData
|
|
245
|
+
} = this.createCallback();
|
|
246
|
+
const dependencies = this.getListDependencies();
|
|
247
|
+
const usecase = this.createUseCase(dependencies, UpdateMultipleRecordUseCase);
|
|
248
|
+
usecase.execute({
|
|
249
|
+
recordsMap,
|
|
250
|
+
dispatch,
|
|
251
|
+
callback: setData,
|
|
252
|
+
shouldFetch
|
|
253
|
+
});
|
|
254
|
+
return getData();
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
selectRecords(ids) {
|
|
258
|
+
this.validateInput('selectRecords', {
|
|
259
|
+
ids
|
|
260
|
+
}, SdkContracts.selectRecordsInputMeta);
|
|
261
|
+
const {
|
|
262
|
+
dispatch
|
|
263
|
+
} = this.dependencies;
|
|
264
|
+
const dependencies = this.getListSelectDependencies();
|
|
265
|
+
const usecase = this.createUseCase(dependencies, ListSelectSelectUsecase);
|
|
266
|
+
usecase.execute({
|
|
267
|
+
ids,
|
|
268
|
+
dispatch
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
deselectRecords(ids) {
|
|
273
|
+
this.validateInput('deselectRecords', {
|
|
274
|
+
ids
|
|
275
|
+
}, SdkContracts.deselectRecordsInputMeta);
|
|
276
|
+
const {
|
|
277
|
+
dispatch
|
|
278
|
+
} = this.dependencies;
|
|
279
|
+
const dependencies = this.getListSelectDependencies();
|
|
280
|
+
const usecase = this.createUseCase(dependencies, ListSelectDeselectUsecase);
|
|
281
|
+
usecase.execute({
|
|
282
|
+
ids,
|
|
283
|
+
dispatch
|
|
284
|
+
});
|
|
285
|
+
}
|
|
286
|
+
|
|
287
|
+
selectAllRecords() {
|
|
288
|
+
const {
|
|
289
|
+
dispatch
|
|
290
|
+
} = this.dependencies;
|
|
291
|
+
const dependencies = this.getListSelectDependencies();
|
|
292
|
+
const usecase = this.createUseCase(dependencies, ListSelectSelectUsecase);
|
|
293
|
+
usecase.execute({
|
|
294
|
+
dispatch
|
|
295
|
+
});
|
|
296
|
+
}
|
|
297
|
+
|
|
298
|
+
deselectAllRecords() {
|
|
299
|
+
const {
|
|
300
|
+
dispatch
|
|
301
|
+
} = this.dependencies;
|
|
302
|
+
const dependencies = this.getListSelectDependencies();
|
|
303
|
+
const usecase = this.createUseCase(dependencies, ListSelectDeselectUsecase);
|
|
304
|
+
usecase.execute({
|
|
305
|
+
dispatch
|
|
306
|
+
});
|
|
307
|
+
}
|
|
308
|
+
|
|
309
|
+
reOrderRecord(fromIndex, toIndex) {
|
|
310
|
+
this.validateInput('reOrderRecord', {
|
|
311
|
+
fromIndex,
|
|
312
|
+
toIndex
|
|
313
|
+
}, SdkContracts.reOrderRecordInputMeta);
|
|
314
|
+
const {
|
|
315
|
+
dispatch
|
|
316
|
+
} = this.dependencies;
|
|
317
|
+
const dependencies = this.getListDependencies();
|
|
318
|
+
const usecase = this.createUseCase(dependencies, ReOrderUseCase);
|
|
319
|
+
usecase.execute({
|
|
320
|
+
newIndex: toIndex,
|
|
321
|
+
oldIndex: fromIndex,
|
|
322
|
+
dispatch
|
|
323
|
+
});
|
|
324
|
+
}
|
|
325
|
+
|
|
326
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
import { ZLIST_FETCH_MORE_RECORDS_FAILED, ZLIST_INITIAL_AVAILABLE_FIELDS_FETCH_FAILED, ZLIST_INITIAL_CLIENT_ACTIONS_FETCH_FAILED, ZLIST_INITIAL_RECORDS_FETCH_FAILED, ZLIST_INITIAL_SELECTED_FIELDS_FETCH_FAILED, ZLIST_RECORD_DELETE_FAILED, ZLIST_RECORD_UPDATE_FAILED } from "../../../../bc/zlist/Constants";
|
|
2
|
+
import { ERROR_OCCURRED } from "../../../../cc/table-connected/constants/Events";
|
|
3
|
+
import { ErrorCode } from "../../../../cc/table-connected/ErrorEventType";
|
|
4
|
+
export default class ErrorEventHandlersFactory {
|
|
5
|
+
static create() {
|
|
6
|
+
return {
|
|
7
|
+
[ZLIST_FETCH_MORE_RECORDS_FAILED]: _ref => {
|
|
8
|
+
let {
|
|
9
|
+
action,
|
|
10
|
+
dispatch
|
|
11
|
+
} = _ref;
|
|
12
|
+
return dispatch({
|
|
13
|
+
type: ERROR_OCCURRED,
|
|
14
|
+
payload: {
|
|
15
|
+
code: ErrorCode.FETCH_MORE_RECORDS_FAILED,
|
|
16
|
+
message: action.payload.error.message,
|
|
17
|
+
errorDetails: {
|
|
18
|
+
from: action.payload.from,
|
|
19
|
+
limit: action.payload.limit,
|
|
20
|
+
error: action.payload.error
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
},
|
|
25
|
+
[ZLIST_INITIAL_AVAILABLE_FIELDS_FETCH_FAILED]: _ref2 => {
|
|
26
|
+
let {
|
|
27
|
+
action,
|
|
28
|
+
dispatch
|
|
29
|
+
} = _ref2;
|
|
30
|
+
return dispatch({
|
|
31
|
+
type: ERROR_OCCURRED,
|
|
32
|
+
payload: {
|
|
33
|
+
code: ErrorCode.INITIAL_AVAILABLE_FIELDS_FETCH_FAILED,
|
|
34
|
+
message: action.payload.error.message,
|
|
35
|
+
errorDetails: {
|
|
36
|
+
error: action.payload.error
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
},
|
|
41
|
+
[ZLIST_INITIAL_CLIENT_ACTIONS_FETCH_FAILED]: _ref3 => {
|
|
42
|
+
let {
|
|
43
|
+
action,
|
|
44
|
+
dispatch
|
|
45
|
+
} = _ref3;
|
|
46
|
+
return dispatch({
|
|
47
|
+
type: ERROR_OCCURRED,
|
|
48
|
+
payload: {
|
|
49
|
+
code: ErrorCode.INITIAL_CLIENT_ACTIONS_FETCH_FAILED,
|
|
50
|
+
message: action.payload.error.message,
|
|
51
|
+
errorDetails: {
|
|
52
|
+
error: action.payload.error
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
},
|
|
57
|
+
[ZLIST_INITIAL_RECORDS_FETCH_FAILED]: _ref4 => {
|
|
58
|
+
let {
|
|
59
|
+
action,
|
|
60
|
+
dispatch
|
|
61
|
+
} = _ref4;
|
|
62
|
+
return dispatch({
|
|
63
|
+
type: ERROR_OCCURRED,
|
|
64
|
+
payload: {
|
|
65
|
+
code: ErrorCode.INITIAL_RECORDS_FETCH_FAILED,
|
|
66
|
+
message: action.payload.error.message,
|
|
67
|
+
errorDetails: {
|
|
68
|
+
error: action.payload.error
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
});
|
|
72
|
+
},
|
|
73
|
+
[ZLIST_INITIAL_SELECTED_FIELDS_FETCH_FAILED]: _ref5 => {
|
|
74
|
+
let {
|
|
75
|
+
action,
|
|
76
|
+
dispatch
|
|
77
|
+
} = _ref5;
|
|
78
|
+
return dispatch({
|
|
79
|
+
type: ERROR_OCCURRED,
|
|
80
|
+
payload: {
|
|
81
|
+
code: ErrorCode.INITIAL_SELECTED_FIELDS_FETCH_FAILED,
|
|
82
|
+
message: action.payload.error.message,
|
|
83
|
+
errorDetails: {
|
|
84
|
+
error: action.payload.error
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
});
|
|
88
|
+
},
|
|
89
|
+
[ZLIST_RECORD_DELETE_FAILED]: _ref6 => {
|
|
90
|
+
let {
|
|
91
|
+
action,
|
|
92
|
+
dispatch
|
|
93
|
+
} = _ref6;
|
|
94
|
+
return dispatch({
|
|
95
|
+
type: ERROR_OCCURRED,
|
|
96
|
+
payload: {
|
|
97
|
+
code: ErrorCode.RECORD_DELETE_FAILED,
|
|
98
|
+
message: action.payload.error.message,
|
|
99
|
+
errorDetails: {
|
|
100
|
+
recordId: action.payload.recordId,
|
|
101
|
+
error: action.payload.error
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
});
|
|
105
|
+
},
|
|
106
|
+
[ZLIST_RECORD_UPDATE_FAILED]: _ref7 => {
|
|
107
|
+
let {
|
|
108
|
+
action,
|
|
109
|
+
dispatch
|
|
110
|
+
} = _ref7;
|
|
111
|
+
return dispatch({
|
|
112
|
+
type: ERROR_OCCURRED,
|
|
113
|
+
payload: {
|
|
114
|
+
code: ErrorCode.RECORD_UPDATE_FAILED,
|
|
115
|
+
message: action.payload.error.message,
|
|
116
|
+
errorDetails: {
|
|
117
|
+
recordId: action.payload.recordId,
|
|
118
|
+
error: action.payload.error
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
}
|
|
@@ -1,45 +1,54 @@
|
|
|
1
|
-
import { LIST_SELECTION_RECORDS_DESELECTED, LIST_SELECTION_RECORDS_SELECTED, LIST_SELECTION_SELECTION_LIMIT_EXCEEDED } from "
|
|
2
|
-
import { RESIZE_FINISHED } from "
|
|
3
|
-
import { ZLIST_SORT } from "
|
|
4
|
-
import { COLUMN_CHOOSER_BEHAVIOUR_UPDATED } from "
|
|
5
|
-
import { COLUMN_CHOOSER_OPEN_REQUESTED } from "
|
|
1
|
+
import { LIST_SELECTION_RECORDS_DESELECTED, LIST_SELECTION_RECORDS_SELECTED, LIST_SELECTION_SELECTION_LIMIT_EXCEEDED } from "../../../../bc/list-selection/Constants";
|
|
2
|
+
import { RESIZE_FINISHED } from "../../../../bc/table-column-resizer/Constants";
|
|
3
|
+
import { ZLIST_SORT } from "../../../../bc/zlist/Constants";
|
|
4
|
+
import { COLUMN_CHOOSER_BEHAVIOUR_UPDATED } from "../../../../bc/column-chooser/Constants";
|
|
5
|
+
import { COLUMN_CHOOSER_OPEN_REQUESTED } from "../../../../cc/table-column-chooser/Constants";
|
|
6
6
|
import ListSdkFactory from "./ListSdkFactory";
|
|
7
|
-
import { SmartTableConstants } from "
|
|
8
|
-
import TableListEventConstants from "
|
|
7
|
+
import { SmartTableConstants } from "../../../../cc/table-connected";
|
|
8
|
+
import TableListEventConstants from "../../../../cc/table-list/Constants";
|
|
9
9
|
import ResizeStartController from "../adapters/controllers/ResizeStartController";
|
|
10
10
|
import ResizeByMouseController from "../adapters/controllers/ResizeByMouseController";
|
|
11
11
|
import ResizeEndController from "../adapters/controllers/ResizeEndController";
|
|
12
12
|
import { ResizeFinishController } from "../adapters/controllers/ResizeFinishController";
|
|
13
|
+
import { ReOrderFinishController } from "../adapters/controllers/ReOrderFinishController";
|
|
13
14
|
import ScrollController from "../adapters/controllers/ScrollController";
|
|
14
15
|
import ColumnChooserUpdateController from "../adapters/controllers/ColumnChooserUpdateController";
|
|
15
16
|
import ColumnChooserOpenedController from "../adapters/controllers/ColumnChooserOpenedController";
|
|
17
|
+
import { platformSDK } from "../../../sdk/frameworks/Sdk";
|
|
18
|
+
import ErrorEventHandlersFactory from "./ErrorEventHandlersFactory";
|
|
16
19
|
const {
|
|
17
20
|
TABLE_LIST_RESIZE_START_REQUESTED,
|
|
18
21
|
TABLE_LIST_RESIZE_MOVE_REQUESTED,
|
|
19
22
|
TABLE_LIST_RESIZE_END_REQUESTED,
|
|
20
|
-
TABLE_LIST_SCROLLED
|
|
23
|
+
TABLE_LIST_SCROLLED,
|
|
24
|
+
TABLE_LIST_ROW_DRAG_END
|
|
21
25
|
} = TableListEventConstants;
|
|
22
26
|
|
|
23
27
|
function createHandlerWithSdk(handler) {
|
|
24
28
|
return input => {
|
|
25
29
|
const {
|
|
26
|
-
state
|
|
27
|
-
dispatch
|
|
30
|
+
state
|
|
28
31
|
} = input;
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
+
const instanceName = state.properties.instanceName;
|
|
33
|
+
handler({ ...input,
|
|
34
|
+
platformSDK
|
|
35
|
+
}, ListSdkFactory.create({
|
|
36
|
+
instanceName
|
|
32
37
|
}));
|
|
33
38
|
};
|
|
34
39
|
}
|
|
35
40
|
|
|
36
41
|
export default class EventHandlersFactory {
|
|
37
|
-
static
|
|
38
|
-
|
|
42
|
+
static getSdkWrappedEventHandler(eventHandlers) {
|
|
43
|
+
return Object.fromEntries(Object.keys(eventHandlers).map(eventName => {
|
|
39
44
|
const handler = createHandlerWithSdk(eventHandlers[eventName]);
|
|
40
45
|
return [eventName, handler];
|
|
41
46
|
}));
|
|
42
|
-
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
static create(eventHandlers) {
|
|
50
|
+
const wrapped = EventHandlersFactory.getSdkWrappedEventHandler(eventHandlers);
|
|
51
|
+
const defaultEventHandlers = {
|
|
43
52
|
NAVIGATION: NavigationHandler,
|
|
44
53
|
[RESIZE_FINISHED]: new ResizeFinishController().handle,
|
|
45
54
|
[TABLE_LIST_RESIZE_START_REQUESTED]: new ResizeStartController().handle,
|
|
@@ -87,10 +96,42 @@ export default class EventHandlersFactory {
|
|
|
87
96
|
type: SmartTableConstants.Events.SELECTION_LIMIT_EXCEEDED,
|
|
88
97
|
payload: action.payload
|
|
89
98
|
});
|
|
90
|
-
}
|
|
99
|
+
},
|
|
100
|
+
[TABLE_LIST_ROW_DRAG_END]: new ReOrderFinishController().handle
|
|
91
101
|
};
|
|
102
|
+
return mergeEventHandlers([defaultEventHandlers, ErrorEventHandlersFactory.create(), wrapped]);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
function mergeEventHandlers(eventHandlersList) {
|
|
108
|
+
const mergedEventHandlers = {};
|
|
109
|
+
const allEventNames = new Set();
|
|
110
|
+
|
|
111
|
+
for (const handlers of eventHandlersList) {
|
|
112
|
+
Object.keys(handlers).forEach(eventName => allEventNames.add(eventName));
|
|
92
113
|
}
|
|
93
114
|
|
|
115
|
+
for (const eventName of allEventNames) {
|
|
116
|
+
mergedEventHandlers[eventName] = createMergedHandler(eventHandlersList, eventName);
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return mergedEventHandlers;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
function createMergedHandler(eventHandlersList, eventName) {
|
|
123
|
+
return function () {
|
|
124
|
+
for (const handlers of eventHandlersList) {
|
|
125
|
+
const handler = handlers[eventName];
|
|
126
|
+
|
|
127
|
+
if (typeof handler === 'function') {
|
|
128
|
+
try {
|
|
129
|
+
handler(...arguments);
|
|
130
|
+
} catch {// Silently ignore errors
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
};
|
|
94
135
|
}
|
|
95
136
|
|
|
96
137
|
function NavigationHandler(event) {
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import ResourceNamesEnum from "../../../../bc/sdk/ResourceNamesEnum";
|
|
2
|
+
import { platformSDK } from "../../../sdk/frameworks/Sdk";
|
|
3
|
+
export default class ListSdkFactory {
|
|
4
|
+
static getRecordSdks(smartTable) {
|
|
5
|
+
return {
|
|
6
|
+
getRecords: () => smartTable.getRecords(),
|
|
7
|
+
getRecord: recordId => smartTable.getRecord(recordId),
|
|
8
|
+
getContext: variableName => smartTable.getContext(variableName),
|
|
9
|
+
deleteRecord: recordId => smartTable.deleteRecord(recordId),
|
|
10
|
+
deleteRecords: function (recordIds) {
|
|
11
|
+
let shouldFetch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
12
|
+
return smartTable.deleteRecords(recordIds, shouldFetch);
|
|
13
|
+
},
|
|
14
|
+
updateRecord: (recordId, record) => smartTable.updateRecord(recordId, record),
|
|
15
|
+
updateRecords: function (recordsMap) {
|
|
16
|
+
let shouldFetch = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;
|
|
17
|
+
return smartTable.updateRecords(recordsMap, shouldFetch);
|
|
18
|
+
},
|
|
19
|
+
reOrderRecord: (fromIndex, toIndex) => smartTable.reOrderRecord(fromIndex, toIndex)
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
static getSelectionSdks(smartTable) {
|
|
24
|
+
return {
|
|
25
|
+
selectRecords: ids => smartTable.selectRecords(ids),
|
|
26
|
+
deselectRecords: ids => smartTable.deselectRecords(ids),
|
|
27
|
+
selectAllRecords: () => smartTable.selectAllRecords(),
|
|
28
|
+
deselectAllRecords: () => smartTable.deselectAllRecords()
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
static create(_ref) {
|
|
33
|
+
let {
|
|
34
|
+
instanceName
|
|
35
|
+
} = _ref;
|
|
36
|
+
const smartTable = platformSDK[ResourceNamesEnum.SMART_TABLE](instanceName);
|
|
37
|
+
const recordSdks = ListSdkFactory.getRecordSdks(smartTable);
|
|
38
|
+
const selectionSdks = ListSdkFactory.getSelectionSdks(smartTable);
|
|
39
|
+
return {
|
|
40
|
+
zlist: {
|
|
41
|
+
getRecords: recordSdks.getRecords,
|
|
42
|
+
getRecord: recordSdks.getRecord,
|
|
43
|
+
getContext: recordSdks.getContext,
|
|
44
|
+
deleteRecord: recordSdks.deleteRecord,
|
|
45
|
+
deleteRecords: recordSdks.deleteRecords,
|
|
46
|
+
updateRecord: recordSdks.updateRecord,
|
|
47
|
+
updateRecords: recordSdks.updateRecords,
|
|
48
|
+
selectRecords: selectionSdks.selectRecords,
|
|
49
|
+
deselectRecords: selectionSdks.deselectRecords,
|
|
50
|
+
selectAllRecords: selectionSdks.selectAllRecords,
|
|
51
|
+
deselectAllRecords: selectionSdks.deselectAllRecords,
|
|
52
|
+
reOrderRecord: recordSdks.reOrderRecord
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
}
|