@devtron-labs/devtron-fe-common-lib 0.0.63-beta-2 → 0.0.63-beta-4
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/.eslintignore +96 -0
- package/.eslintrc.js +109 -0
- package/.github/pull_request_template.md +25 -0
- package/.github/workflows/ci.yml +31 -0
- package/.github/workflows/release-package.yml +48 -0
- package/.husky/pre-commit +5 -0
- package/.lintstagedrc +3 -0
- package/.nvmrc +1 -0
- package/.prettierrc.js +7 -0
- package/dist/Common/AddCDButton/AddCDButton.d.ts +3 -3
- package/dist/Common/AddCDButton/index.d.ts +2 -2
- package/dist/Common/AddCDButton/types.d.ts +26 -26
- package/dist/Common/AddCDButton/utils.d.ts +2 -2
- package/dist/Common/Api.d.ts +14 -14
- package/dist/Common/AppStatus/AppStatus.d.ts +3 -3
- package/dist/Common/AppStatus/constants.d.ts +51 -51
- package/dist/Common/AppStatus/index.d.ts +1 -1
- package/dist/Common/AppStatus/types.d.ts +12 -12
- package/dist/Common/AppStatus/utils.d.ts +1 -1
- package/dist/Common/BreadCrumb/BreadCrumb.d.ts +5 -5
- package/dist/Common/BreadCrumb/BreadcrumbStore.d.ts +17 -17
- package/dist/Common/BreadCrumb/Types.d.ts +28 -28
- package/dist/Common/CIPipeline.Types.d.ts +265 -265
- package/dist/Common/ChartVersionAndTypeSelector.d.ts +4 -3
- package/dist/Common/Checkbox.d.ts +5 -5
- package/dist/Common/ClipboardButton/ClipboardButton.d.ts +10 -10
- package/dist/Common/ClipboardButton/types.d.ts +8 -8
- package/dist/Common/Common.service.d.ts +20 -20
- package/dist/Common/Constants.d.ts +90 -96
- package/dist/Common/CustomInput/CustomInput.d.ts +3 -2
- package/dist/Common/CustomInput/Types.d.ts +31 -31
- package/dist/Common/CustomInput/index.d.ts +2 -2
- package/dist/Common/CustomTagSelector/PropagateTagInfo.d.ts +4 -4
- package/dist/Common/CustomTagSelector/ResizableTagTextArea.d.ts +3 -2
- package/dist/Common/CustomTagSelector/TagDetails.d.ts +3 -2
- package/dist/Common/CustomTagSelector/TagLabelSelect.d.ts +3 -2
- package/dist/Common/CustomTagSelector/TagLabelValueSelector.d.ts +3 -2
- package/dist/Common/CustomTagSelector/TagSelector.utils.d.ts +12 -12
- package/dist/Common/CustomTagSelector/Types.d.ts +68 -68
- package/dist/Common/CustomTagSelector/ValidationRules.d.ts +10 -10
- package/dist/Common/CustomTagSelector/index.d.ts +6 -6
- package/dist/Common/DebouncedSearch/DebouncedSearch.d.ts +17 -17
- package/dist/Common/DebouncedSearch/Types.d.ts +14 -14
- package/dist/Common/DebouncedSearch/Utils.d.ts +1 -1
- package/dist/Common/DeleteComponentModal/DeleteComponent.d.ts +4 -3
- package/dist/Common/DeleteComponentModal/types.d.ts +15 -15
- package/dist/Common/DevtronProgressing/DevtronProgressing.d.ts +3 -2
- package/dist/Common/DevtronProgressing/index.d.ts +1 -1
- package/dist/Common/DevtronProgressing/types.d.ts +4 -4
- package/dist/Common/Dialogs/ConfirmationDialog.d.ts +9 -8
- package/dist/Common/Dialogs/DeleteDialog.d.ts +5 -5
- package/dist/Common/Dialogs/DialogForm.d.ts +14 -14
- package/dist/Common/Dialogs/ForceDeleteDialog.d.ts +3 -3
- package/dist/Common/Dialogs/Types.d.ts +45 -45
- package/dist/Common/Dialogs/index.d.ts +4 -4
- package/dist/Common/DraggableWrapper/DraggableButton.d.ts +3 -3
- package/dist/Common/DraggableWrapper/DraggableWrapper.d.ts +9 -9
- package/dist/Common/DraggableWrapper/index.d.ts +3 -3
- package/dist/Common/DraggableWrapper/types.d.ts +30 -23
- package/dist/Common/Drawer/Drawer.d.ts +16 -14
- package/dist/Common/EmptyState/EmptyState.d.ts +25 -0
- package/dist/Common/EmptyState/GenericEmptyState.d.ts +5 -3
- package/dist/Common/Error.d.ts +17 -17
- package/dist/Common/ErrorScreenNotFound.d.ts +3 -2
- package/dist/Common/Grid/Grid.d.ts +3 -3
- package/dist/Common/Grid/types.d.ts +10 -10
- package/dist/Common/Helper.d.ts +67 -68
- package/dist/Common/Hooks/UseClickOutside/UseClickOutside.d.ts +1 -1
- package/dist/Common/Hooks/UseSuperAdmin/UseSuperAdmin.d.ts +6 -6
- package/dist/Common/Hooks/UseSuperAdmin/types.d.ts +3 -3
- package/dist/Common/Hooks/UseWindowSize/UseWindowSize.d.ts +4 -4
- package/dist/Common/Hooks/index.d.ts +4 -4
- package/dist/Common/Hooks/useUrlFilters/constants.d.ts +8 -8
- package/dist/Common/Hooks/useUrlFilters/index.d.ts +2 -2
- package/dist/Common/Hooks/useUrlFilters/types.d.ts +59 -6
- package/dist/Common/Hooks/useUrlFilters/useUrlFilters.d.ts +20 -32
- package/dist/Common/ImageTags.Types.d.ts +40 -40
- package/dist/Common/ImageTags.d.ts +4 -3
- package/dist/Common/InfoColorBar/InfoColourbar.d.ts +5 -3
- package/dist/Common/Modals/Modal.d.ts +3 -3
- package/dist/Common/Modals/OpaqueModal.d.ts +12 -12
- package/dist/Common/Modals/VisibleModal.d.ts +15 -15
- package/dist/Common/Modals/VisibleModal2.d.ts +12 -12
- package/dist/Common/MultiSelectCustomization.d.ts +37 -37
- package/dist/Common/Pagination/PageSizeSelector.d.ts +4 -3
- package/dist/Common/Pagination/Pagination.d.ts +5 -3
- package/dist/Common/Pagination/constants.d.ts +5 -5
- package/dist/Common/Pagination/index.d.ts +1 -1
- package/dist/Common/Pagination/types.d.ts +51 -51
- package/dist/Common/Pagination/utils.d.ts +6 -6
- package/dist/Common/Policy.Types.d.ts +56 -56
- package/dist/Common/PopupMenu.d.ts +8 -7
- package/dist/Common/Progressing.d.ts +4 -3
- package/dist/Common/RJSF/Form.d.ts +4 -2
- package/dist/Common/RJSF/common/FieldRow.d.ts +6 -5
- package/dist/Common/RJSF/common/types.d.ts +8 -8
- package/dist/Common/RJSF/config.d.ts +4 -4
- package/dist/Common/RJSF/constants.d.ts +7 -7
- package/dist/Common/RJSF/index.d.ts +3 -3
- package/dist/Common/RJSF/templates/ArrayFieldItemTemplate.d.ts +3 -2
- package/dist/Common/RJSF/templates/ArrayFieldTemplate.d.ts +3 -2
- package/dist/Common/RJSF/templates/BaseInput.d.ts +3 -2
- package/dist/Common/RJSF/templates/ButtonTemplates/AddButton.d.ts +3 -2
- package/dist/Common/RJSF/templates/ButtonTemplates/RemoveButton.d.ts +3 -2
- package/dist/Common/RJSF/templates/ButtonTemplates/SubmitButton.d.ts +3 -2
- package/dist/Common/RJSF/templates/ButtonTemplates/index.d.ts +3 -3
- package/dist/Common/RJSF/templates/Description.d.ts +3 -2
- package/dist/Common/RJSF/templates/Field.d.ts +3 -2
- package/dist/Common/RJSF/templates/FieldErrorTemplate.d.ts +3 -2
- package/dist/Common/RJSF/templates/ObjectFieldTemplate.d.ts +3 -2
- package/dist/Common/RJSF/templates/TitleField.d.ts +3 -2
- package/dist/Common/RJSF/templates/WrapIfAdditionalTemplate.d.ts +3 -2
- package/dist/Common/RJSF/templates/index.d.ts +10 -10
- package/dist/Common/RJSF/types.d.ts +3 -3
- package/dist/Common/RJSF/utils.d.ts +26 -25
- package/dist/Common/RJSF/widgets/Checkbox.d.ts +3 -2
- package/dist/Common/RJSF/widgets/Select.d.ts +3 -2
- package/dist/Common/RJSF/widgets/index.d.ts +2 -2
- package/dist/Common/RadioGroup/RadioGroup.d.ts +17 -16
- package/dist/Common/RadioGroup.d.ts +8 -8
- package/dist/Common/Reload.d.ts +3 -3
- package/dist/Common/ResizableTextarea.d.ts +3 -3
- package/dist/Common/SearchBar/SearchBar.component.d.ts +39 -37
- package/dist/Common/SearchBar/index.d.ts +2 -2
- package/dist/Common/SearchBar/types.d.ts +35 -35
- package/dist/Common/Security/ScanVulnerabilitiesTable.d.ts +4 -3
- package/dist/Common/ServerError.d.ts +15 -15
- package/dist/Common/SortableTableHeaderCell/SortableTableHeaderCell.d.ts +18 -17
- package/dist/Common/SortableTableHeaderCell/index.d.ts +2 -2
- package/dist/Common/SortableTableHeaderCell/types.d.ts +25 -25
- package/dist/Common/TippyCustomized.d.ts +4 -2
- package/dist/Common/ToastBody.d.ts +23 -23
- package/dist/Common/Toggle/Toggle.d.ts +14 -12
- package/dist/Common/Types.d.ts +704 -704
- package/dist/Common/index.d.ts +51 -51
- package/dist/Pages/GlobalConfigurations/Authorization/constants.d.ts +19 -15
- package/dist/Pages/GlobalConfigurations/Authorization/index.d.ts +2 -1
- package/dist/Pages/GlobalConfigurations/Authorization/types.d.ts +23 -0
- package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraConfigForm.d.ts +4 -4
- package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraDescriptionField.d.ts +4 -4
- package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormAction.d.ts +7 -7
- package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormItem.d.ts +4 -4
- package/dist/Pages/GlobalConfigurations/BuildInfra/BuildInfraProfileNameField.d.ts +4 -4
- package/dist/Pages/GlobalConfigurations/BuildInfra/Descriptor.d.ts +4 -3
- package/dist/Pages/GlobalConfigurations/BuildInfra/Footer.d.ts +4 -4
- package/dist/Pages/GlobalConfigurations/BuildInfra/constants.d.ts +50 -50
- package/dist/Pages/GlobalConfigurations/BuildInfra/index.d.ts +7 -7
- package/dist/Pages/GlobalConfigurations/BuildInfra/services.d.ts +6 -6
- package/dist/Pages/GlobalConfigurations/BuildInfra/types.d.ts +286 -286
- package/dist/Pages/GlobalConfigurations/BuildInfra/utils.d.ts +12 -12
- package/dist/Pages/GlobalConfigurations/index.d.ts +2 -2
- package/dist/Pages/index.d.ts +1 -1
- package/dist/Shared/Components/APIResponseHandler/APIResponseHandler.d.ts +4 -3
- package/dist/Shared/Components/APIResponseHandler/constants.d.ts +4 -4
- package/dist/Shared/Components/APIResponseHandler/index.d.ts +2 -2
- package/dist/Shared/Components/APIResponseHandler/types.d.ts +37 -37
- package/dist/Shared/Components/BulkSelection/BulkSelection.d.ts +4 -3
- package/dist/Shared/Components/BulkSelection/BulkSelectionDropdownItems.d.ts +4 -3
- package/dist/Shared/Components/BulkSelection/BulkSelectionProvider.d.ts +4 -3
- package/dist/Shared/Components/BulkSelection/constants.d.ts +10 -10
- package/dist/Shared/Components/BulkSelection/index.d.ts +4 -4
- package/dist/Shared/Components/BulkSelection/types.d.ts +56 -54
- package/dist/Shared/Components/FilterChips/FilterChips.component.d.ts +7 -0
- package/dist/Shared/Components/FilterChips/index.d.ts +2 -0
- package/dist/Shared/Components/FilterChips/types.d.ts +37 -0
- package/dist/Shared/Components/ReactSelect/index.d.ts +1 -1
- package/dist/Shared/Components/ReactSelect/utils.d.ts +12 -11
- package/dist/Shared/Components/index.d.ts +4 -3
- package/dist/Shared/Helpers.d.ts +16 -16
- package/dist/Shared/index.d.ts +3 -3
- package/dist/Shared/validations.d.ts +8 -8
- package/dist/index.d.ts +3 -9
- package/dist/index.js +30473 -216
- package/package.json +23 -34
- package/rollup.config.js +31 -0
- package/src/Assets/Icon/ic-add.svg +3 -0
- package/src/Assets/Icon/ic-appstatus-cancelled.svg +6 -0
- package/src/Assets/Icon/ic-arrow-counter-clockwise.svg +5 -0
- package/src/Assets/Icon/ic-arrow-up-down.svg +3 -0
- package/src/Assets/Icon/ic-check-all.svg +5 -0
- package/src/Assets/Icon/ic-check-square.svg +4 -0
- package/src/Assets/Icon/ic-check.svg +5 -0
- package/src/Assets/Icon/ic-chevron-down.svg +5 -0
- package/src/Assets/Icon/ic-close.svg +9 -0
- package/src/Assets/Icon/ic-copy.svg +3 -0
- package/src/Assets/Icon/ic-cpu.svg +4 -0
- package/src/Assets/Icon/ic-cross.svg +3 -0
- package/src/Assets/Icon/ic-drag.svg +8 -0
- package/src/Assets/Icon/ic-enter.svg +3 -0
- package/src/Assets/Icon/ic-error-cross.svg +8 -0
- package/src/Assets/Icon/ic-error-exclamation.svg +6 -0
- package/src/Assets/Icon/ic-error-medium.svg +6 -0
- package/src/Assets/Icon/ic-help-outline.svg +3 -0
- package/src/Assets/Icon/ic-help.svg +3 -0
- package/src/Assets/Icon/ic-info-filled.svg +7 -0
- package/src/Assets/Icon/ic-info-outlined.svg +13 -0
- package/src/Assets/Icon/ic-memory.svg +3 -0
- package/src/Assets/Icon/ic-minus.svg +3 -0
- package/src/Assets/Icon/ic-pencil.svg +3 -0
- package/src/Assets/Icon/ic-progressing.svg +6 -0
- package/src/Assets/Icon/ic-rotate-devtron.svg +103 -0
- package/src/Assets/Icon/ic-search.svg +6 -0
- package/src/Assets/Icon/ic-sort-arrow-down.svg +3 -0
- package/src/Assets/Icon/ic-timer.svg +3 -0
- package/src/Assets/Icon/ic-warning.svg +7 -0
- package/src/Assets/Icon/inject-tag.svg +5 -0
- package/src/Assets/Img/app-not-deployed.png +0 -0
- package/src/Assets/Img/delete-medium.svg +15 -0
- package/src/Assets/Img/ic-empty-error@2x.png +0 -0
- package/src/Assets/Img/ic-loading-failure.png +0 -0
- package/src/Assets/Img/ic-not-authorized.svg +62 -0
- package/src/Common/AddCDButton/AddCDButton.tsx +68 -0
- package/src/Common/AddCDButton/index.ts +2 -0
- package/src/Common/AddCDButton/types.ts +38 -0
- package/src/Common/AddCDButton/utils.tsx +35 -0
- package/src/Common/Api.ts +251 -0
- package/src/Common/AppStatus/AppStatus.tsx +64 -0
- package/src/Common/AppStatus/constants.ts +53 -0
- package/src/Common/AppStatus/index.ts +1 -0
- package/src/Common/AppStatus/types.ts +12 -0
- package/src/Common/AppStatus/utils.ts +14 -0
- package/src/Common/BreadCrumb/BreadCrumb.tsx +105 -0
- package/src/Common/BreadCrumb/BreadcrumbStore.tsx +25 -0
- package/src/Common/BreadCrumb/Types.ts +29 -0
- package/src/Common/CIPipeline.Types.ts +277 -0
- package/src/Common/ChartVersionAndTypeSelector.tsx +78 -0
- package/src/Common/Checkbox.tsx +37 -0
- package/src/Common/ClipboardButton/ClipboardButton.tsx +61 -0
- package/src/Common/ClipboardButton/__tests__/ClipboardButton.test.tsx +43 -0
- package/src/Common/ClipboardButton/types.ts +7 -0
- package/src/Common/Common.service.ts +315 -0
- package/src/Common/Constants.ts +271 -0
- package/src/Common/CustomInput/CustomInput.tsx +135 -0
- package/src/Common/CustomInput/Types.ts +32 -0
- package/src/Common/CustomInput/index.ts +2 -0
- package/src/Common/CustomTagSelector/PropagateTagInfo.tsx +46 -0
- package/src/Common/CustomTagSelector/ResizableTagTextArea.tsx +84 -0
- package/src/Common/CustomTagSelector/TagDetails.tsx +76 -0
- package/src/Common/CustomTagSelector/TagLabelSelect.tsx +61 -0
- package/src/Common/CustomTagSelector/TagLabelValueSelector.tsx +198 -0
- package/src/Common/CustomTagSelector/TagSelector.utils.ts +71 -0
- package/src/Common/CustomTagSelector/Types.ts +72 -0
- package/src/Common/CustomTagSelector/ValidationRules.ts +58 -0
- package/src/Common/CustomTagSelector/index.ts +6 -0
- package/src/Common/DebouncedSearch/DebouncedSearch.tsx +78 -0
- package/src/Common/DebouncedSearch/Types.ts +13 -0
- package/src/Common/DebouncedSearch/Utils.ts +19 -0
- package/src/Common/DebouncedSearch/__tests__/DebouncedSearch.test.tsx +61 -0
- package/src/Common/DeleteComponentModal/DeleteComponent.tsx +95 -0
- package/src/Common/DeleteComponentModal/types.ts +15 -0
- package/src/Common/DevtronProgressing/DevtronProgressing.tsx +11 -0
- package/src/Common/DevtronProgressing/index.ts +1 -0
- package/src/Common/DevtronProgressing/types.ts +4 -0
- package/src/Common/Dialogs/ConfirmationDialog.tsx +34 -0
- package/src/Common/Dialogs/DeleteDialog.tsx +69 -0
- package/src/Common/Dialogs/DialogForm.tsx +86 -0
- package/src/Common/Dialogs/ForceDeleteDialog.tsx +19 -0
- package/src/Common/Dialogs/Types.ts +47 -0
- package/src/Common/Dialogs/index.ts +4 -0
- package/src/Common/DraggableWrapper/DraggableButton.tsx +14 -0
- package/src/Common/DraggableWrapper/DraggableWrapper.tsx +121 -0
- package/src/Common/DraggableWrapper/index.ts +3 -0
- package/src/Common/DraggableWrapper/types.ts +34 -0
- package/src/Common/Drawer/Drawer.scss +40 -0
- package/src/Common/Drawer/Drawer.tsx +49 -0
- package/src/Common/EmptyState/EmptyState.tsx +42 -0
- package/src/Common/EmptyState/GenericEmptyState.tsx +81 -0
- package/src/Common/EmptyState/emptyState.scss +74 -0
- package/src/Common/Error.tsx +61 -0
- package/src/Common/ErrorScreenNotFound.tsx +31 -0
- package/src/Common/Grid/Grid.tsx +44 -0
- package/src/Common/Grid/types.ts +11 -0
- package/src/Common/Helper.tsx +596 -0
- package/src/Common/Hooks/UseClickOutside/UseClickOutside.tsx +15 -0
- package/src/Common/Hooks/UseSuperAdmin/UseSuperAdmin.tsx +24 -0
- package/src/Common/Hooks/UseSuperAdmin/types.ts +3 -0
- package/src/Common/Hooks/UseWindowSize/UseWindowSize.tsx +31 -0
- package/src/Common/Hooks/index.ts +4 -0
- package/src/Common/Hooks/useUrlFilters/constants.ts +9 -0
- package/src/Common/Hooks/useUrlFilters/index.ts +2 -0
- package/src/Common/Hooks/useUrlFilters/types.ts +61 -0
- package/src/Common/Hooks/useUrlFilters/useUrlFilters.ts +143 -0
- package/src/Common/ImageTags.Types.ts +44 -0
- package/src/Common/ImageTags.tsx +586 -0
- package/src/Common/InfoColorBar/InfoColourbar.tsx +80 -0
- package/src/Common/InfoColorBar/infoColourBar.scss +28 -0
- package/src/Common/Modals/Modal.tsx +68 -0
- package/src/Common/Modals/OpaqueModal.tsx +36 -0
- package/src/Common/Modals/VisibleModal.tsx +55 -0
- package/src/Common/Modals/VisibleModal2.tsx +35 -0
- package/src/Common/MultiSelectCustomization.tsx +148 -0
- package/src/Common/Pagination/PageSizeSelector.tsx +78 -0
- package/src/Common/Pagination/Pagination.tsx +127 -0
- package/src/Common/Pagination/constants.ts +6 -0
- package/src/Common/Pagination/index.tsx +3 -0
- package/src/Common/Pagination/pagination.scss +123 -0
- package/src/Common/Pagination/types.ts +55 -0
- package/src/Common/Pagination/utils.tsx +24 -0
- package/src/Common/Policy.Types.ts +63 -0
- package/src/Common/PopupMenu.tsx +199 -0
- package/src/Common/Progressing.tsx +53 -0
- package/src/Common/RJSF/Form.tsx +29 -0
- package/src/Common/RJSF/common/FieldRow.tsx +35 -0
- package/src/Common/RJSF/common/types.ts +9 -0
- package/src/Common/RJSF/config.ts +37 -0
- package/src/Common/RJSF/constants.ts +10 -0
- package/src/Common/RJSF/index.ts +3 -0
- package/src/Common/RJSF/rjsfForm.scss +18 -0
- package/src/Common/RJSF/templates/ArrayFieldItemTemplate.tsx +31 -0
- package/src/Common/RJSF/templates/ArrayFieldTemplate.tsx +78 -0
- package/src/Common/RJSF/templates/BaseInput.tsx +16 -0
- package/src/Common/RJSF/templates/ButtonTemplates/AddButton.tsx +18 -0
- package/src/Common/RJSF/templates/ButtonTemplates/RemoveButton.tsx +10 -0
- package/src/Common/RJSF/templates/ButtonTemplates/SubmitButton.tsx +18 -0
- package/src/Common/RJSF/templates/ButtonTemplates/index.ts +3 -0
- package/src/Common/RJSF/templates/Description.tsx +12 -0
- package/src/Common/RJSF/templates/Field.tsx +30 -0
- package/src/Common/RJSF/templates/FieldErrorTemplate.tsx +25 -0
- package/src/Common/RJSF/templates/ObjectFieldTemplate.tsx +105 -0
- package/src/Common/RJSF/templates/TitleField.tsx +9 -0
- package/src/Common/RJSF/templates/WrapIfAdditionalTemplate.tsx +51 -0
- package/src/Common/RJSF/templates/index.ts +10 -0
- package/src/Common/RJSF/types.ts +4 -0
- package/src/Common/RJSF/utils.ts +125 -0
- package/src/Common/RJSF/widgets/Checkbox.tsx +44 -0
- package/src/Common/RJSF/widgets/Select.tsx +77 -0
- package/src/Common/RJSF/widgets/index.ts +2 -0
- package/src/Common/RadioGroup/RadioGroup.tsx +105 -0
- package/src/Common/RadioGroup/radioGroup.scss +46 -0
- package/src/Common/RadioGroup.tsx +53 -0
- package/src/Common/Reload.tsx +23 -0
- package/src/Common/ResizableTextarea.tsx +73 -0
- package/src/Common/SearchBar/SearchBar.component.tsx +131 -0
- package/src/Common/SearchBar/index.ts +2 -0
- package/src/Common/SearchBar/searchBar.scss +31 -0
- package/src/Common/SearchBar/types.ts +34 -0
- package/src/Common/Security/ScanVulnerabilitiesTable.tsx +55 -0
- package/src/Common/Security/scanVulnerabilities.css +69 -0
- package/src/Common/ServerError.ts +31 -0
- package/src/Common/SortableTableHeaderCell/SortableTableHeaderCell.tsx +44 -0
- package/src/Common/SortableTableHeaderCell/index.ts +2 -0
- package/src/Common/SortableTableHeaderCell/types.ts +26 -0
- package/src/Common/TippyCustomized.tsx +172 -0
- package/src/Common/ToastBody.tsx +62 -0
- package/src/Common/Toggle/Toggle.scss +78 -0
- package/src/Common/Toggle/Toggle.tsx +50 -0
- package/src/Common/Types.ts +778 -0
- package/src/Common/index.ts +51 -0
- package/src/Pages/GlobalConfigurations/Authorization/constants.ts +21 -0
- package/src/Pages/GlobalConfigurations/Authorization/index.ts +2 -0
- package/src/Pages/GlobalConfigurations/Authorization/types.ts +25 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraConfigForm.tsx +127 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraDescriptionField.tsx +44 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormAction.tsx +106 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraFormItem.tsx +55 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/BuildInfraProfileNameField.tsx +32 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/Descriptor.tsx +45 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/Footer.tsx +56 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/Readme.md +4 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/constants.tsx +138 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/index.ts +7 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/services.tsx +167 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/types.tsx +339 -0
- package/src/Pages/GlobalConfigurations/BuildInfra/utils.tsx +506 -0
- package/src/Pages/GlobalConfigurations/index.ts +2 -0
- package/src/Pages/index.ts +1 -0
- package/src/Shared/Components/APIResponseHandler/APIResponseHandler.tsx +41 -0
- package/src/Shared/Components/APIResponseHandler/constants.tsx +5 -0
- package/src/Shared/Components/APIResponseHandler/index.ts +2 -0
- package/src/Shared/Components/APIResponseHandler/types.tsx +39 -0
- package/src/Shared/Components/BulkSelection/BulkSelection.tsx +77 -0
- package/src/Shared/Components/BulkSelection/BulkSelectionDropdownItems.tsx +33 -0
- package/src/Shared/Components/BulkSelection/BulkSelectionProvider.tsx +182 -0
- package/src/Shared/Components/BulkSelection/constants.tsx +14 -0
- package/src/Shared/Components/BulkSelection/index.ts +4 -0
- package/src/Shared/Components/BulkSelection/types.tsx +67 -0
- package/src/Shared/Components/FilterChips/FilterChips.component.tsx +100 -0
- package/src/Shared/Components/FilterChips/index.ts +2 -0
- package/src/Shared/Components/FilterChips/types.ts +39 -0
- package/src/Shared/Components/ReactSelect/index.ts +1 -0
- package/src/Shared/Components/ReactSelect/utils.tsx +97 -0
- package/src/Shared/Components/index.ts +4 -0
- package/src/Shared/Helpers.tsx +29 -0
- package/src/Shared/index.ts +3 -0
- package/src/Shared/validations.tsx +130 -0
- package/src/custom.d.ts +13 -0
- package/src/index.ts +3 -0
- package/tsconfig.json +40 -0
- package/dist/Common/CodeEditor/CodeEditor.d.ts +0 -47
- package/dist/Common/Select/Select.d.ts +0 -4
- package/dist/Common/Select/types.d.ts +0 -29
- package/dist/abap-9f67f57a.js +0 -1314
- package/dist/apex-ff62e532.js +0 -315
- package/dist/assets/editor.worker-d26000ef.js +0 -9
- package/dist/assets/index.css +0 -1
- package/dist/assets/json.worker-f23a4654.js +0 -40
- package/dist/assets/yaml.worker-35ea3f9a.js +0 -467
- package/dist/azcli-31e64a7f.js +0 -74
- package/dist/bat-0ffe897e.js +0 -95
- package/dist/bicep-3414a2b1.js +0 -108
- package/dist/cameligo-df1f3f25.js +0 -168
- package/dist/clojure-65b0f010.js +0 -754
- package/dist/coffee-437f0fba.js +0 -228
- package/dist/cpp-66843dd5.js +0 -390
- package/dist/csharp-621d9a49.js +0 -320
- package/dist/csp-de0d5244.js +0 -57
- package/dist/css-7cd5ed4c.js +0 -186
- package/dist/cssMode-30bbea2f.js +0 -1446
- package/dist/cypher-70ad96fe.js +0 -262
- package/dist/dart-33ae3739.js +0 -270
- package/dist/dockerfile-f2274a50.js +0 -132
- package/dist/ecl-3b8294a3.js +0 -454
- package/dist/elixir-b9dcc73a.js +0 -489
- package/dist/flow9-bdde8316.js +0 -141
- package/dist/freemarker2-c3d378f7.js +0 -643
- package/dist/fsharp-eac2e449.js +0 -210
- package/dist/go-d12ed8d4.js +0 -208
- package/dist/graphql-c7356b69.js +0 -141
- package/dist/handlebars-723aad91.js +0 -391
- package/dist/hcl-e883a0d4.js +0 -177
- package/dist/html-6271b7ac.js +0 -281
- package/dist/htmlMode-77853f52.js +0 -1456
- package/dist/index-90cf2f91.js +0 -127403
- package/dist/ini-425ab711.js +0 -68
- package/dist/java-2bc0fd68.js +0 -221
- package/dist/javascript-daedc120.js +0 -75
- package/dist/jsonMode-02ef0b87.js +0 -1867
- package/dist/julia-1c932615.js +0 -496
- package/dist/kotlin-1ab839c8.js +0 -245
- package/dist/less-6fe856f5.js +0 -168
- package/dist/lexon-4955ac52.js +0 -151
- package/dist/liquid-2aa5e6f3.js +0 -238
- package/dist/lua-3cca0047.js +0 -157
- package/dist/m3-132e9cb6.js +0 -210
- package/dist/markdown-ea59a0c1.js +0 -202
- package/dist/mips-19811f4b.js +0 -194
- package/dist/msdax-69954a10.js +0 -377
- package/dist/mysql-82088e5d.js +0 -876
- package/dist/objective-c-1976eccc.js +0 -188
- package/dist/pascal-8ef177cb.js +0 -245
- package/dist/pascaligo-bc517b9e.js +0 -158
- package/dist/perl-8b93582c.js +0 -599
- package/dist/pgsql-00c11a6d.js +0 -847
- package/dist/php-4c8c276f.js +0 -471
- package/dist/pla-e9b4ffb1.js +0 -131
- package/dist/postiats-2071af8c.js +0 -544
- package/dist/powerquery-8e388ceb.js +0 -890
- package/dist/powershell-e35db398.js +0 -233
- package/dist/protobuf-a24b9176.js +0 -422
- package/dist/pug-2c94d9b8.js +0 -393
- package/dist/python-09265357.js +0 -259
- package/dist/qsharp-d730d7fe.js +0 -282
- package/dist/r-be193556.js +0 -245
- package/dist/razor-e37d6e12.js +0 -512
- package/dist/redis-9690c6ac.js +0 -298
- package/dist/redshift-6bdcdeaa.js +0 -806
- package/dist/restructuredtext-a08c1d20.js +0 -162
- package/dist/ruby-2247692b.js +0 -444
- package/dist/rust-1dffb4d5.js +0 -337
- package/dist/sb-136598e9.js +0 -110
- package/dist/scala-b1100fed.js +0 -353
- package/dist/scheme-038c8094.js +0 -114
- package/dist/scss-700d1b52.js +0 -244
- package/dist/shell-86c16e0f.js +0 -224
- package/dist/solidity-c05fdf3c.js +0 -1351
- package/dist/sophia-cd645d71.js +0 -190
- package/dist/sparql-01d9ec9c.js +0 -193
- package/dist/sql-4c33df41.js +0 -818
- package/dist/st-52cf1408.js +0 -414
- package/dist/swift-13c792ba.js +0 -315
- package/dist/systemverilog-0bd8b730.js +0 -556
- package/dist/tcl-463d7c75.js +0 -232
- package/dist/tsMode-91c2db33.js +0 -811
- package/dist/twig-0d98f5ec.js +0 -323
- package/dist/typescript-f08b1f7d.js +0 -328
- package/dist/vb-3a2b0a51.js +0 -364
- package/dist/wgsl-b2ddb3e4.js +0 -420
- package/dist/xml-cb271b3b.js +0 -95
- package/dist/yaml-f6bdbbce.js +0 -184
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { IconButtonProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
import { ReactComponent as PlusIcon } from '../../../../Assets/Icon/ic-add.svg'
|
|
5
|
+
|
|
6
|
+
export const AddButton = ({ icon, iconType, registry, uiSchema, ...props }: IconButtonProps) => (
|
|
7
|
+
<div className="flexbox flex-justify-end">
|
|
8
|
+
<button
|
|
9
|
+
{...props}
|
|
10
|
+
type="button"
|
|
11
|
+
className="dc__outline-none-imp p-0 dc__transparent flex dc__gap-4 cursor"
|
|
12
|
+
title="Add"
|
|
13
|
+
>
|
|
14
|
+
<PlusIcon className="icon-dim-16 fcb-5" />
|
|
15
|
+
<span className="cb-5 fs-13 lh-20">Add</span>
|
|
16
|
+
</button>
|
|
17
|
+
</div>
|
|
18
|
+
)
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { IconButtonProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
import { ReactComponent as CrossIcon } from '../../../../Assets/Icon/ic-cross.svg'
|
|
5
|
+
|
|
6
|
+
export const RemoveButton = ({ icon, iconType, registry, uiSchema, ...props }: IconButtonProps) => (
|
|
7
|
+
<button {...props} type="button" className="dc__outline-none-imp p-0 dc__transparent flex cursor" title="Remove">
|
|
8
|
+
<CrossIcon className="icon-dim-16 fcr-5" />
|
|
9
|
+
</button>
|
|
10
|
+
)
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { getSubmitButtonOptions, SubmitButtonProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
export const SubmitButton = ({ uiSchema }: SubmitButtonProps) => {
|
|
5
|
+
const { submitText, norender, props: submitButtonProps = {} } = getSubmitButtonOptions(uiSchema)
|
|
6
|
+
|
|
7
|
+
return norender ? null : (
|
|
8
|
+
<div className="flexbox flex-justify-end">
|
|
9
|
+
<button
|
|
10
|
+
type="submit"
|
|
11
|
+
{...submitButtonProps}
|
|
12
|
+
className={`cta ${submitButtonProps.className || ''}`}
|
|
13
|
+
>
|
|
14
|
+
{submitText}
|
|
15
|
+
</button>
|
|
16
|
+
</div>
|
|
17
|
+
)
|
|
18
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { DescriptionFieldProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
import { ReactComponent as Info } from '../../../Assets/Icon/ic-info-filled.svg'
|
|
5
|
+
|
|
6
|
+
export const Description = ({ id, description }: DescriptionFieldProps) =>
|
|
7
|
+
description && (
|
|
8
|
+
<div id={id} className="flex left flex-align-center mt-4 dc__gap-4">
|
|
9
|
+
<Info className="icon-dim-16 mw-16 info-icon-n5" />
|
|
10
|
+
<span className="cn-7 fs-11 fw-4 dc__ellipsis-right">{description}</span>
|
|
11
|
+
</div>
|
|
12
|
+
)
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { FieldTemplateProps, getUiOptions, getTemplate, ADDITIONAL_PROPERTY_FLAG } from '@rjsf/utils'
|
|
3
|
+
import { FieldRowWithLabel } from '../common/FieldRow'
|
|
4
|
+
|
|
5
|
+
export const Field = (props: FieldTemplateProps) => {
|
|
6
|
+
const { id, label, children, errors, hidden, required, displayLabel, registry, uiSchema, classNames, schema, description } =
|
|
7
|
+
props
|
|
8
|
+
const uiOptions = getUiOptions(uiSchema)
|
|
9
|
+
const WrapIfAdditionalTemplate = getTemplate<'WrapIfAdditionalTemplate'>(
|
|
10
|
+
'WrapIfAdditionalTemplate',
|
|
11
|
+
registry,
|
|
12
|
+
uiOptions,
|
|
13
|
+
)
|
|
14
|
+
// Object type fields have additional properties for key/value pairs
|
|
15
|
+
const hasAdditionalProperties = ADDITIONAL_PROPERTY_FLAG in schema
|
|
16
|
+
// Label is not displayed for boolean fields by default and hide for object type fields
|
|
17
|
+
const showLabel = (displayLabel || schema.type === 'boolean') && !hasAdditionalProperties
|
|
18
|
+
|
|
19
|
+
return hidden ? (
|
|
20
|
+
<div className="hidden">{children}</div>
|
|
21
|
+
) : (
|
|
22
|
+
<div className={`${classNames} mb-12`}>
|
|
23
|
+
<FieldRowWithLabel label={label} showLabel={showLabel} id={id} required={required}>
|
|
24
|
+
<WrapIfAdditionalTemplate {...props}>{children}</WrapIfAdditionalTemplate>
|
|
25
|
+
</FieldRowWithLabel>
|
|
26
|
+
{description}
|
|
27
|
+
{errors}
|
|
28
|
+
</div>
|
|
29
|
+
)
|
|
30
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { errorId, FieldErrorProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
import { ReactComponent as Error } from '../../../Assets/Icon/ic-warning.svg'
|
|
5
|
+
|
|
6
|
+
export const FieldErrorTemplate = ({ errors = [], idSchema }: FieldErrorProps) => {
|
|
7
|
+
const id = errorId(idSchema)
|
|
8
|
+
|
|
9
|
+
return (
|
|
10
|
+
errors.length > 0 && (
|
|
11
|
+
<span id={id}>
|
|
12
|
+
{errors
|
|
13
|
+
.filter((elem) => !!elem)
|
|
14
|
+
.map((error, index: number) => {
|
|
15
|
+
return (
|
|
16
|
+
<span className="form__error" key={index}>
|
|
17
|
+
<Error className="form__icon form__icon--error" />
|
|
18
|
+
{error}
|
|
19
|
+
</span>
|
|
20
|
+
)
|
|
21
|
+
})}
|
|
22
|
+
</span>
|
|
23
|
+
)
|
|
24
|
+
)
|
|
25
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import {
|
|
3
|
+
ObjectFieldTemplatePropertyType,
|
|
4
|
+
ObjectFieldTemplateProps,
|
|
5
|
+
canExpand,
|
|
6
|
+
getTemplate,
|
|
7
|
+
getUiOptions,
|
|
8
|
+
titleId,
|
|
9
|
+
} from '@rjsf/utils'
|
|
10
|
+
import { FieldRowWithLabel } from '../common/FieldRow'
|
|
11
|
+
|
|
12
|
+
const Field = ({
|
|
13
|
+
disabled,
|
|
14
|
+
formData,
|
|
15
|
+
idSchema,
|
|
16
|
+
onAddClick,
|
|
17
|
+
properties,
|
|
18
|
+
readonly,
|
|
19
|
+
registry,
|
|
20
|
+
required,
|
|
21
|
+
schema,
|
|
22
|
+
title,
|
|
23
|
+
uiSchema,
|
|
24
|
+
}: ObjectFieldTemplateProps) => {
|
|
25
|
+
const {
|
|
26
|
+
ButtonTemplates: { AddButton },
|
|
27
|
+
} = registry.templates
|
|
28
|
+
const hasAdditionalProperties = !!schema.additionalProperties
|
|
29
|
+
|
|
30
|
+
const ActionButton = canExpand(schema, uiSchema, formData) && (
|
|
31
|
+
<AddButton
|
|
32
|
+
className="object-property-expand"
|
|
33
|
+
onClick={onAddClick(schema)}
|
|
34
|
+
disabled={disabled || readonly}
|
|
35
|
+
uiSchema={uiSchema}
|
|
36
|
+
registry={registry}
|
|
37
|
+
/>
|
|
38
|
+
)
|
|
39
|
+
|
|
40
|
+
const Properties = properties.map((prop: ObjectFieldTemplatePropertyType) => prop.content)
|
|
41
|
+
|
|
42
|
+
if (hasAdditionalProperties) {
|
|
43
|
+
if (properties.length) {
|
|
44
|
+
return (
|
|
45
|
+
<>
|
|
46
|
+
<FieldRowWithLabel
|
|
47
|
+
label={title}
|
|
48
|
+
required={required}
|
|
49
|
+
showLabel
|
|
50
|
+
id={idSchema.$id}
|
|
51
|
+
shouldAlignCenter={false}
|
|
52
|
+
>
|
|
53
|
+
<div>{Properties}</div>
|
|
54
|
+
</FieldRowWithLabel>
|
|
55
|
+
{ActionButton}
|
|
56
|
+
</>
|
|
57
|
+
)
|
|
58
|
+
} else {
|
|
59
|
+
return (
|
|
60
|
+
<FieldRowWithLabel label={title} required={required} showLabel id={idSchema.$id}>
|
|
61
|
+
{ActionButton}
|
|
62
|
+
</FieldRowWithLabel>
|
|
63
|
+
)
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
return (
|
|
67
|
+
<>
|
|
68
|
+
{Properties}
|
|
69
|
+
{ActionButton}
|
|
70
|
+
</>
|
|
71
|
+
)
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
export const ObjectFieldTemplate = (props: ObjectFieldTemplateProps) => {
|
|
75
|
+
const { idSchema, registry, required, schema, title, uiSchema } = props
|
|
76
|
+
const options = getUiOptions(uiSchema)
|
|
77
|
+
const TitleFieldTemplate = getTemplate('TitleFieldTemplate', registry, options)
|
|
78
|
+
const hasAdditionalProperties = !!schema.additionalProperties
|
|
79
|
+
const showTitle = title && !hasAdditionalProperties
|
|
80
|
+
|
|
81
|
+
return (
|
|
82
|
+
<fieldset id={idSchema.$id}>
|
|
83
|
+
{showTitle && (
|
|
84
|
+
<TitleFieldTemplate
|
|
85
|
+
id={titleId(idSchema)}
|
|
86
|
+
title={title}
|
|
87
|
+
required={required}
|
|
88
|
+
schema={schema}
|
|
89
|
+
uiSchema={uiSchema}
|
|
90
|
+
registry={registry}
|
|
91
|
+
/>
|
|
92
|
+
)}
|
|
93
|
+
{/* Not adding the border and padding for non-objects and root schema */}
|
|
94
|
+
<div
|
|
95
|
+
className={
|
|
96
|
+
schema.properties && !hasAdditionalProperties && idSchema.$id !== 'root'
|
|
97
|
+
? 'dc__border-left pl-12'
|
|
98
|
+
: ''
|
|
99
|
+
}
|
|
100
|
+
>
|
|
101
|
+
<Field {...props} />
|
|
102
|
+
</div>
|
|
103
|
+
</fieldset>
|
|
104
|
+
)
|
|
105
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { TitleFieldProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
export const TitleField = ({ id, title, required }: TitleFieldProps) => (
|
|
5
|
+
<legend className="fs-13 fw-6 cn-9 lh-20 pb-8 dc__border-bottom en-1 mb-12" id={id}>
|
|
6
|
+
<span>{title}</span>
|
|
7
|
+
{required && <span className="cr-5"> *</span>}
|
|
8
|
+
</legend>
|
|
9
|
+
)
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import { ADDITIONAL_PROPERTY_FLAG, WrapIfAdditionalTemplateProps } from '@rjsf/utils'
|
|
3
|
+
|
|
4
|
+
import { PLACEHOLDERS } from '../constants'
|
|
5
|
+
|
|
6
|
+
export const WrapIfAdditionalTemplate = ({
|
|
7
|
+
id,
|
|
8
|
+
disabled,
|
|
9
|
+
label,
|
|
10
|
+
onKeyChange,
|
|
11
|
+
onDropPropertyClick,
|
|
12
|
+
readonly,
|
|
13
|
+
schema,
|
|
14
|
+
children,
|
|
15
|
+
uiSchema,
|
|
16
|
+
registry,
|
|
17
|
+
}: WrapIfAdditionalTemplateProps) => {
|
|
18
|
+
const { templates } = registry
|
|
19
|
+
const { RemoveButton } = templates.ButtonTemplates
|
|
20
|
+
const additional = ADDITIONAL_PROPERTY_FLAG in schema
|
|
21
|
+
|
|
22
|
+
return (
|
|
23
|
+
<>
|
|
24
|
+
{additional ? (
|
|
25
|
+
<div className="rjsf-form-template__additional-fields display-grid dc__gap-8 flex-align-center">
|
|
26
|
+
<div>
|
|
27
|
+
<input
|
|
28
|
+
type="text"
|
|
29
|
+
className="form__input cn-9 fs-13 lh-20 fw-4"
|
|
30
|
+
id={`${id}-key`}
|
|
31
|
+
onBlur={(event) => onKeyChange(event.target.value)}
|
|
32
|
+
placeholder={PLACEHOLDERS.OBJECT_KEY}
|
|
33
|
+
defaultValue={label}
|
|
34
|
+
/>
|
|
35
|
+
</div>
|
|
36
|
+
<div>{children}</div>
|
|
37
|
+
<div>
|
|
38
|
+
<RemoveButton
|
|
39
|
+
disabled={disabled || readonly}
|
|
40
|
+
onClick={onDropPropertyClick(label)}
|
|
41
|
+
uiSchema={uiSchema}
|
|
42
|
+
registry={registry}
|
|
43
|
+
/>
|
|
44
|
+
</div>
|
|
45
|
+
</div>
|
|
46
|
+
) : (
|
|
47
|
+
children
|
|
48
|
+
)}
|
|
49
|
+
</>
|
|
50
|
+
)
|
|
51
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export { ArrayFieldTemplate } from './ArrayFieldTemplate'
|
|
2
|
+
export { ArrayFieldItemTemplate } from './ArrayFieldItemTemplate'
|
|
3
|
+
export { BaseInput as BaseInputTemplate } from './BaseInput'
|
|
4
|
+
export * from './ButtonTemplates'
|
|
5
|
+
export { Description as DescriptionFieldTemplate } from './Description'
|
|
6
|
+
export { Field as FieldTemplate } from './Field'
|
|
7
|
+
export { FieldErrorTemplate } from './FieldErrorTemplate'
|
|
8
|
+
export { ObjectFieldTemplate } from './ObjectFieldTemplate'
|
|
9
|
+
export { TitleField as TitleFieldTemplate } from './TitleField'
|
|
10
|
+
export { WrapIfAdditionalTemplate } from './WrapIfAdditionalTemplate'
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { TranslatableString, englishStringTranslator } from '@rjsf/utils'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Override for the TranslatableString from RJSF
|
|
5
|
+
*/
|
|
6
|
+
export const translateString = (stringToTranslate: TranslatableString, params?: string[]): string => {
|
|
7
|
+
switch (stringToTranslate) {
|
|
8
|
+
case TranslatableString.NewStringDefault:
|
|
9
|
+
// Use an empty string for the new additionalProperties string default value
|
|
10
|
+
return ''
|
|
11
|
+
default:
|
|
12
|
+
return englishStringTranslator(stringToTranslate, params)
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export const getCommonSelectStyle = (styleOverrides = {}) => {
|
|
17
|
+
return {
|
|
18
|
+
menuList: (base) => ({
|
|
19
|
+
...base,
|
|
20
|
+
paddingTop: 0,
|
|
21
|
+
paddingBottom: 0,
|
|
22
|
+
cursor: 'pointer',
|
|
23
|
+
}),
|
|
24
|
+
control: (base, state) => ({
|
|
25
|
+
...base,
|
|
26
|
+
minHeight: '32px',
|
|
27
|
+
boxShadow: 'none',
|
|
28
|
+
backgroundColor: 'var(--N50)',
|
|
29
|
+
border: state.isFocused ? '1px solid var(--B500)' : '1px solid var(--N200)',
|
|
30
|
+
cursor: 'pointer',
|
|
31
|
+
}),
|
|
32
|
+
option: (base, state) => ({
|
|
33
|
+
...base,
|
|
34
|
+
color: 'var(--N900)',
|
|
35
|
+
backgroundColor: state.isFocused ? 'var(--N100)' : 'white',
|
|
36
|
+
padding: '10px 12px',
|
|
37
|
+
cursor: 'pointer',
|
|
38
|
+
}),
|
|
39
|
+
dropdownIndicator: (base, state) => ({
|
|
40
|
+
...base,
|
|
41
|
+
color: 'var(--N400)',
|
|
42
|
+
padding: '0 8px',
|
|
43
|
+
transition: 'all .2s ease',
|
|
44
|
+
transform: state.selectProps.menuIsOpen ? 'rotate(180deg)' : 'rotate(0deg)',
|
|
45
|
+
}),
|
|
46
|
+
valueContainer: (base, state) => ({
|
|
47
|
+
...base,
|
|
48
|
+
padding: '0 8px',
|
|
49
|
+
fontWeight: '400',
|
|
50
|
+
color: state.selectProps.menuIsOpen ? 'var(--N500)' : base.color,
|
|
51
|
+
}),
|
|
52
|
+
loadingMessage: (base) => ({
|
|
53
|
+
...base,
|
|
54
|
+
color: 'var(--N600)',
|
|
55
|
+
}),
|
|
56
|
+
noOptionsMessage: (base) => ({
|
|
57
|
+
...base,
|
|
58
|
+
color: 'var(--N600)',
|
|
59
|
+
}),
|
|
60
|
+
multiValue: (base, state) => {
|
|
61
|
+
return {
|
|
62
|
+
...base,
|
|
63
|
+
border: `1px solid var(--N200)`,
|
|
64
|
+
borderRadius: `4px`,
|
|
65
|
+
background: 'white',
|
|
66
|
+
height: '28px',
|
|
67
|
+
marginRight: '8px',
|
|
68
|
+
padding: '2px',
|
|
69
|
+
fontSize: '12px',
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
...styleOverrides,
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
/**
|
|
77
|
+
* Returns the redirection props for a url
|
|
78
|
+
*/
|
|
79
|
+
export const getRedirectionProps = (
|
|
80
|
+
url: string,
|
|
81
|
+
): React.AnchorHTMLAttributes<HTMLAnchorElement> & {
|
|
82
|
+
url: string
|
|
83
|
+
} => {
|
|
84
|
+
try {
|
|
85
|
+
// The URL is validated when added using the form
|
|
86
|
+
const isInternalUrl = new URL(url).origin === window.location.origin
|
|
87
|
+
return {
|
|
88
|
+
href: url,
|
|
89
|
+
target: isInternalUrl ? '_self' : '_blank',
|
|
90
|
+
rel: isInternalUrl ? undefined : 'external noreferrer',
|
|
91
|
+
url,
|
|
92
|
+
}
|
|
93
|
+
} catch (err) {
|
|
94
|
+
return {
|
|
95
|
+
href: url,
|
|
96
|
+
target: '_blank',
|
|
97
|
+
url: `${url} (Invalid URL)`,
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/**
|
|
103
|
+
* Infers the type for json schema from value type
|
|
104
|
+
*/
|
|
105
|
+
export const getInferredTypeFromValueType = (value) => {
|
|
106
|
+
const valueType = typeof value
|
|
107
|
+
|
|
108
|
+
switch (valueType) {
|
|
109
|
+
case 'boolean':
|
|
110
|
+
case 'string':
|
|
111
|
+
case 'number':
|
|
112
|
+
return valueType
|
|
113
|
+
case 'object':
|
|
114
|
+
if (Array.isArray(value)) {
|
|
115
|
+
return 'array'
|
|
116
|
+
}
|
|
117
|
+
if (value === null) {
|
|
118
|
+
return 'null'
|
|
119
|
+
}
|
|
120
|
+
return valueType
|
|
121
|
+
default:
|
|
122
|
+
// Unsupported or undefined types
|
|
123
|
+
return 'null'
|
|
124
|
+
}
|
|
125
|
+
}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import React, { ChangeEvent } from 'react'
|
|
2
|
+
import Toggle from '../../Toggle/Toggle'
|
|
3
|
+
import { WidgetProps } from '@rjsf/utils'
|
|
4
|
+
|
|
5
|
+
export const Checkbox = ({
|
|
6
|
+
id,
|
|
7
|
+
onChange,
|
|
8
|
+
value,
|
|
9
|
+
required,
|
|
10
|
+
disabled,
|
|
11
|
+
readonly,
|
|
12
|
+
autofocus,
|
|
13
|
+
onBlur,
|
|
14
|
+
onFocus,
|
|
15
|
+
}: WidgetProps) => {
|
|
16
|
+
const handleEvent = (e: ChangeEvent<HTMLInputElement>, type: 'blur' | 'focus') => {
|
|
17
|
+
const { id, checked } = e.target
|
|
18
|
+
if (type === 'blur') {
|
|
19
|
+
onBlur(id, checked)
|
|
20
|
+
} else if (type === 'focus') {
|
|
21
|
+
onFocus(id, checked)
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
|
|
25
|
+
const isSelected: boolean = typeof value === 'undefined' ? false : value
|
|
26
|
+
|
|
27
|
+
return (
|
|
28
|
+
<div>
|
|
29
|
+
<Toggle
|
|
30
|
+
selected={isSelected}
|
|
31
|
+
onSelect={onChange}
|
|
32
|
+
id={id}
|
|
33
|
+
name={id}
|
|
34
|
+
required={required}
|
|
35
|
+
disabled={disabled || readonly}
|
|
36
|
+
autoFocus={autofocus}
|
|
37
|
+
rootClassName="w-32 mb-0 dc__height-inherit"
|
|
38
|
+
onBlur={(e) => handleEvent(e, 'blur')}
|
|
39
|
+
onFocus={(e) => handleEvent(e, 'focus')}
|
|
40
|
+
/>
|
|
41
|
+
<span className="dc__capitalize ml-8">{isSelected.toString()}</span>
|
|
42
|
+
</div>
|
|
43
|
+
)
|
|
44
|
+
}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import React from 'react'
|
|
2
|
+
import isEqual from 'lodash/isEqual'
|
|
3
|
+
import { WidgetProps } from '@rjsf/utils'
|
|
4
|
+
import ReactSelect, { MenuListProps, components } from 'react-select'
|
|
5
|
+
import { PLACEHOLDERS } from '../constants'
|
|
6
|
+
import { getCommonSelectStyle } from '../utils'
|
|
7
|
+
|
|
8
|
+
import { ReactComponent as ArrowDown } from '../../../Assets/Icon/ic-chevron-down.svg'
|
|
9
|
+
|
|
10
|
+
const commonStyles = getCommonSelectStyle()
|
|
11
|
+
|
|
12
|
+
const MenuList = ({ children, ...props }: MenuListProps) => (
|
|
13
|
+
<components.MenuList {...props}>{Array.isArray(children) ? children.slice(0, 20) : children}</components.MenuList>
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
const DropdownIndicator = (props) => (
|
|
17
|
+
<components.DropdownIndicator {...props}>
|
|
18
|
+
<ArrowDown className="icon-dim-20 icon-n5" data-testid="overview-project-edit-dropdown" />
|
|
19
|
+
</components.DropdownIndicator>
|
|
20
|
+
)
|
|
21
|
+
|
|
22
|
+
export const Select = (props: WidgetProps) => {
|
|
23
|
+
const {
|
|
24
|
+
id,
|
|
25
|
+
multiple = false,
|
|
26
|
+
options,
|
|
27
|
+
value,
|
|
28
|
+
disabled,
|
|
29
|
+
readonly,
|
|
30
|
+
autofocus = false,
|
|
31
|
+
onChange,
|
|
32
|
+
onBlur,
|
|
33
|
+
onFocus,
|
|
34
|
+
placeholder,
|
|
35
|
+
} = props
|
|
36
|
+
const { enumOptions: selectOptions = [] } = options
|
|
37
|
+
const emptyValue = multiple ? [] : ''
|
|
38
|
+
|
|
39
|
+
const handleChange = (option) => {
|
|
40
|
+
onChange(multiple ? option.map((o) => o.value) : option.value)
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
const getOption = (value) =>
|
|
44
|
+
multiple
|
|
45
|
+
? selectOptions.filter((option) => value.some((val) => isEqual(val, option.value)))
|
|
46
|
+
: selectOptions.find((option) => isEqual(value, option.value))
|
|
47
|
+
|
|
48
|
+
return (
|
|
49
|
+
<ReactSelect
|
|
50
|
+
id={id}
|
|
51
|
+
name={id}
|
|
52
|
+
isMulti={multiple}
|
|
53
|
+
value={typeof value === 'undefined' ? emptyValue : getOption(value)}
|
|
54
|
+
autoFocus={autofocus}
|
|
55
|
+
onChange={handleChange}
|
|
56
|
+
options={selectOptions}
|
|
57
|
+
onBlur={() => onBlur(id, value)}
|
|
58
|
+
onFocus={() => onFocus(id, value)}
|
|
59
|
+
placeholder={placeholder || PLACEHOLDERS.SELECT}
|
|
60
|
+
isDisabled={disabled || readonly}
|
|
61
|
+
styles={{
|
|
62
|
+
...commonStyles,
|
|
63
|
+
control: (base) => ({
|
|
64
|
+
...base,
|
|
65
|
+
...commonStyles.control,
|
|
66
|
+
backgroundColor: 'var(--N50)',
|
|
67
|
+
}),
|
|
68
|
+
}}
|
|
69
|
+
components={{
|
|
70
|
+
IndicatorSeparator: null,
|
|
71
|
+
DropdownIndicator,
|
|
72
|
+
MenuList,
|
|
73
|
+
}}
|
|
74
|
+
menuPlacement="auto"
|
|
75
|
+
/>
|
|
76
|
+
)
|
|
77
|
+
}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
import Tippy from '@tippyjs/react'
|
|
2
|
+
import React, { useState, useEffect } from 'react'
|
|
3
|
+
import { ConditionalWrap } from '../Helper'
|
|
4
|
+
import './radioGroup.scss'
|
|
5
|
+
|
|
6
|
+
const RadioContext = React.createContext(null)
|
|
7
|
+
|
|
8
|
+
function useRadioContext() {
|
|
9
|
+
const context = React.useContext(RadioContext)
|
|
10
|
+
if (!context) {
|
|
11
|
+
throw new Error(`Radio compound components cannot be rendered outside the Toggle component`)
|
|
12
|
+
}
|
|
13
|
+
return context
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
interface RadioGroupInterface {
|
|
17
|
+
name: string
|
|
18
|
+
onChange: any
|
|
19
|
+
className?: string
|
|
20
|
+
initialTab: string
|
|
21
|
+
disabled: boolean
|
|
22
|
+
showTippy?: boolean
|
|
23
|
+
tippyContent?: any
|
|
24
|
+
dataTestId?: string
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
interface RadioGroupComposition {
|
|
28
|
+
Radio?: React.FC<any>
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const RadioGroup: React.FC<RadioGroupInterface> & RadioGroupComposition = React.memo(function RadioGroup({
|
|
32
|
+
name,
|
|
33
|
+
onChange,
|
|
34
|
+
children,
|
|
35
|
+
className = '',
|
|
36
|
+
initialTab,
|
|
37
|
+
disabled = false,
|
|
38
|
+
dataTestId,
|
|
39
|
+
}) {
|
|
40
|
+
const [selected, select] = useState(null)
|
|
41
|
+
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
if (initialTab === selected) return
|
|
44
|
+
select(initialTab)
|
|
45
|
+
}, [initialTab])
|
|
46
|
+
|
|
47
|
+
return (
|
|
48
|
+
<RadioContext.Provider value={{ name, selected, select, disabled, onChange }}>
|
|
49
|
+
<div className={`${className} radio-group`}>{children}</div>
|
|
50
|
+
</RadioContext.Provider>
|
|
51
|
+
)
|
|
52
|
+
})
|
|
53
|
+
|
|
54
|
+
function Radio({
|
|
55
|
+
value,
|
|
56
|
+
children,
|
|
57
|
+
className = '',
|
|
58
|
+
showTippy = false,
|
|
59
|
+
tippyContent = '',
|
|
60
|
+
tippyPlacement = 'bottom',
|
|
61
|
+
canSelect = true,
|
|
62
|
+
isDisabled = false,
|
|
63
|
+
tippyClass = '',
|
|
64
|
+
dataTestId,
|
|
65
|
+
}) {
|
|
66
|
+
const { name, selected, select, disabled, onChange } = useRadioContext()
|
|
67
|
+
return (
|
|
68
|
+
<ConditionalWrap
|
|
69
|
+
condition={showTippy}
|
|
70
|
+
wrap={(children) => (
|
|
71
|
+
<Tippy
|
|
72
|
+
className={`default-tt w-250 ${tippyClass}`}
|
|
73
|
+
arrow={false}
|
|
74
|
+
placement={tippyPlacement as any}
|
|
75
|
+
content={tippyContent}
|
|
76
|
+
>
|
|
77
|
+
{children}
|
|
78
|
+
</Tippy>
|
|
79
|
+
)}
|
|
80
|
+
>
|
|
81
|
+
<label className={`${className} radio ${isDisabled || disabled ? 'disabled' : ''}`}>
|
|
82
|
+
<input
|
|
83
|
+
type="checkbox"
|
|
84
|
+
value={value}
|
|
85
|
+
name={name}
|
|
86
|
+
checked={value === selected}
|
|
87
|
+
onChange={(e) => {
|
|
88
|
+
e.persist()
|
|
89
|
+
if (canSelect) {
|
|
90
|
+
select(e.target.value)
|
|
91
|
+
}
|
|
92
|
+
onChange(e)
|
|
93
|
+
}}
|
|
94
|
+
disabled={isDisabled || disabled}
|
|
95
|
+
/>
|
|
96
|
+
<span className="radio__item-label" data-testid={dataTestId}>
|
|
97
|
+
{children}
|
|
98
|
+
</span>
|
|
99
|
+
</label>
|
|
100
|
+
</ConditionalWrap>
|
|
101
|
+
)
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
RadioGroup.Radio = Radio
|
|
105
|
+
export default RadioGroup
|