@flightctl/ui-components 1.1.0-rc4 → 1.1.0-rc6
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/dist/src/components/Catalog/CatalogItemDetails.css +4 -0
- package/dist/src/components/Catalog/CatalogPage.css +10 -0
- package/dist/src/components/Catalog/EditWizard/steps/UpdateGraph.css +138 -0
- package/dist/src/components/Catalog/InstallWizard/steps/AppConfigStep.css +12 -0
- package/dist/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.css +3 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types/alpha/index.d.ts +18 -0
- package/dist/types/alpha/index.d.ts.map +1 -0
- package/dist/types/alpha/index.js +16 -0
- package/dist/types/alpha/index.js.map +1 -0
- package/dist/types/alpha/models/ApiVersion.d.ts +8 -0
- package/dist/types/alpha/models/ApiVersion.d.ts.map +1 -0
- package/dist/types/alpha/models/ApiVersion.js +16 -0
- package/dist/types/alpha/models/ApiVersion.js.map +1 -0
- package/dist/types/alpha/models/Catalog.d.ts +15 -0
- package/dist/types/alpha/models/Catalog.d.ts.map +1 -0
- package/dist/types/alpha/models/Catalog.js +3 -0
- package/dist/types/alpha/models/Catalog.js.map +1 -0
- package/dist/types/alpha/models/CatalogItem.d.ts +16 -0
- package/dist/types/alpha/models/CatalogItem.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItem.js +3 -0
- package/dist/types/alpha/models/CatalogItem.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemArtifact.d.ts +16 -0
- package/dist/types/alpha/models/CatalogItemArtifact.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemArtifact.js +3 -0
- package/dist/types/alpha/models/CatalogItemArtifact.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemArtifactType.d.ts +15 -0
- package/dist/types/alpha/models/CatalogItemArtifactType.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemArtifactType.js +23 -0
- package/dist/types/alpha/models/CatalogItemArtifactType.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemCategory.d.ts +8 -0
- package/dist/types/alpha/models/CatalogItemCategory.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemCategory.js +16 -0
- package/dist/types/alpha/models/CatalogItemCategory.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemConfigurable.d.ts +18 -0
- package/dist/types/alpha/models/CatalogItemConfigurable.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemConfigurable.js +3 -0
- package/dist/types/alpha/models/CatalogItemConfigurable.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemDeprecation.d.ts +14 -0
- package/dist/types/alpha/models/CatalogItemDeprecation.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemDeprecation.js +3 -0
- package/dist/types/alpha/models/CatalogItemDeprecation.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemList.d.ts +19 -0
- package/dist/types/alpha/models/CatalogItemList.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemList.js +3 -0
- package/dist/types/alpha/models/CatalogItemList.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemMeta.d.ts +11 -0
- package/dist/types/alpha/models/CatalogItemMeta.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemMeta.js +3 -0
- package/dist/types/alpha/models/CatalogItemMeta.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemSpec.d.ts +52 -0
- package/dist/types/alpha/models/CatalogItemSpec.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemSpec.js +3 -0
- package/dist/types/alpha/models/CatalogItemSpec.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemType.d.ts +14 -0
- package/dist/types/alpha/models/CatalogItemType.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemType.js +22 -0
- package/dist/types/alpha/models/CatalogItemType.js.map +1 -0
- package/dist/types/alpha/models/CatalogItemVersion.d.ts +38 -0
- package/dist/types/alpha/models/CatalogItemVersion.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogItemVersion.js +3 -0
- package/dist/types/alpha/models/CatalogItemVersion.js.map +1 -0
- package/dist/types/alpha/models/CatalogList.d.ts +19 -0
- package/dist/types/alpha/models/CatalogList.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogList.js +3 -0
- package/dist/types/alpha/models/CatalogList.js.map +1 -0
- package/dist/types/alpha/models/CatalogSpec.d.ts +26 -0
- package/dist/types/alpha/models/CatalogSpec.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogSpec.js +3 -0
- package/dist/types/alpha/models/CatalogSpec.js.map +1 -0
- package/dist/types/alpha/models/CatalogStatus.d.ts +11 -0
- package/dist/types/alpha/models/CatalogStatus.d.ts.map +1 -0
- package/dist/types/alpha/models/CatalogStatus.js +3 -0
- package/dist/types/alpha/models/CatalogStatus.js.map +1 -0
- package/dist/types/alpha/models/Status.d.ts +28 -0
- package/dist/types/alpha/models/Status.d.ts.map +1 -0
- package/dist/types/alpha/models/Status.js +3 -0
- package/dist/types/alpha/models/Status.js.map +1 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js +3 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/models/ResourceSyncSpec.d.ts +2 -0
- package/dist/types/models/ResourceSyncSpec.d.ts.map +1 -1
- package/dist/types/models/ResourceSyncType.d.ts +8 -0
- package/dist/types/models/ResourceSyncType.d.ts.map +1 -0
- package/dist/types/models/ResourceSyncType.js +16 -0
- package/dist/types/models/ResourceSyncType.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/AddCatalogItemWizard.d.ts +4 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/AddCatalogItemWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/AddCatalogItemWizard.js +173 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/AddCatalogItemWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/ChannelsSelect.d.ts +9 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/ChannelsSelect.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/ChannelsSelect.js +115 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/ChannelsSelect.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/CreateCatalogModal.d.ts +10 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/CreateCatalogModal.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/CreateCatalogModal.js +100 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/CreateCatalogModal.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/GeneralInfoStep.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/GeneralInfoStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/GeneralInfoStep.js +111 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/GeneralInfoStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/ReviewStep.d.ts +9 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/ReviewStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/ReviewStep.js +77 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/ReviewStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/TypeConfigStep.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/TypeConfigStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/TypeConfigStep.js +90 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/TypeConfigStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/VersionStep.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/VersionStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/VersionStep.js +105 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/steps/VersionStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/types.d.ts +49 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/types.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/types.js +11 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/types.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/utils.d.ts +53 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/utils.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/utils.js +564 -0
- package/dist/ui-components/src/components/Catalog/AddCatalogItemWizard/utils.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemCard.d.ts +9 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemCard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemCard.js +37 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemCard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemDetails.d.ts +34 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemDetails.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemDetails.js +256 -0
- package/dist/ui-components/src/components/Catalog/CatalogItemDetails.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogLandingPage.d.ts +10 -0
- package/dist/ui-components/src/components/Catalog/CatalogLandingPage.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogLandingPage.js +106 -0
- package/dist/ui-components/src/components/Catalog/CatalogLandingPage.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogPage.d.ts +20 -0
- package/dist/ui-components/src/components/Catalog/CatalogPage.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogPage.js +256 -0
- package/dist/ui-components/src/components/Catalog/CatalogPage.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogPageToolbar.d.ts +14 -0
- package/dist/ui-components/src/components/Catalog/CatalogPageToolbar.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/CatalogPageToolbar.js +54 -0
- package/dist/ui-components/src/components/Catalog/CatalogPageToolbar.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/DeleteCatalogModal.d.ts +10 -0
- package/dist/ui-components/src/components/Catalog/DeleteCatalogModal.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/DeleteCatalogModal.js +96 -0
- package/dist/ui-components/src/components/Catalog/DeleteCatalogModal.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/DeprecateModal.d.ts +15 -0
- package/dist/ui-components/src/components/Catalog/DeprecateModal.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/DeprecateModal.js +80 -0
- package/dist/ui-components/src/components/Catalog/DeprecateModal.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditAppWizard.d.ts +18 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditAppWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditAppWizard.js +84 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditAppWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditOsWizard.d.ts +16 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditOsWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditOsWizard.js +66 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditOsWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditWizard.d.ts +4 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditWizard.js +164 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/EditWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/ReviewStep.d.ts +10 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/ReviewStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/ReviewStep.js +37 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/ReviewStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateGraph.d.ts +12 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateGraph.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateGraph.js +105 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateGraph.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateStep.d.ts +13 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateStep.js +97 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/steps/UpdateStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/types.d.ts +3 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/types.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/EditWizard/types.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/ImportCatalogWizard/ImportCatalogWizard.d.ts +4 -0
- package/dist/ui-components/src/components/Catalog/ImportCatalogWizard/ImportCatalogWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/ImportCatalogWizard/ImportCatalogWizard.js +14 -0
- package/dist/ui-components/src/components/Catalog/ImportCatalogWizard/ImportCatalogWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallAppWizard.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallAppWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallAppWizard.js +140 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallAppWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallOsWizard.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallOsWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallOsWizard.js +120 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallOsWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallWizard.d.ts +4 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallWizard.js +58 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/InstallWizard.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/UpdateSuccessPage.d.ts +8 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/UpdateSuccessPage.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/UpdateSuccessPage.js +44 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/UpdateSuccessPage.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/AppConfigStep.d.ts +18 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/AppConfigStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/AppConfigStep.js +100 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/AppConfigStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/ReviewStep.d.ts +9 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/ReviewStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/ReviewStep.js +140 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/ReviewStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SelectTargetStep.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SelectTargetStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SelectTargetStep.js +151 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SelectTargetStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SpecificationsStep.d.ts +22 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SpecificationsStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SpecificationsStep.js +192 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/steps/SpecificationsStep.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/types.d.ts +31 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/types.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/types.js +8 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/types.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/utils.d.ts +7 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/utils.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/utils.js +76 -0
- package/dist/ui-components/src/components/Catalog/InstallWizard/utils.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstalledSoftware.d.ts +20 -0
- package/dist/ui-components/src/components/Catalog/InstalledSoftware.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/InstalledSoftware.js +178 -0
- package/dist/ui-components/src/components/Catalog/InstalledSoftware.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.d.ts +21 -0
- package/dist/ui-components/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.js +41 -0
- package/dist/ui-components/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/const.d.ts +12 -0
- package/dist/ui-components/src/components/Catalog/const.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/const.js +19 -0
- package/dist/ui-components/src/components/Catalog/const.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/useCatalogFilter.d.ts +12 -0
- package/dist/ui-components/src/components/Catalog/useCatalogFilter.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/useCatalogFilter.js +20 -0
- package/dist/ui-components/src/components/Catalog/useCatalogFilter.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/useCatalogs.d.ts +12 -0
- package/dist/ui-components/src/components/Catalog/useCatalogs.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/useCatalogs.js +78 -0
- package/dist/ui-components/src/components/Catalog/useCatalogs.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/useSubmitCatalogForm.d.ts +11 -0
- package/dist/ui-components/src/components/Catalog/useSubmitCatalogForm.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/useSubmitCatalogForm.js +51 -0
- package/dist/ui-components/src/components/Catalog/useSubmitCatalogForm.js.map +1 -0
- package/dist/ui-components/src/components/Catalog/utils.d.ts +40 -0
- package/dist/ui-components/src/components/Catalog/utils.d.ts.map +1 -0
- package/dist/ui-components/src/components/Catalog/utils.js +304 -0
- package/dist/ui-components/src/components/Catalog/utils.js.map +1 -0
- package/dist/ui-components/src/components/DetailsPage/DetailsPage.d.ts +3 -1
- package/dist/ui-components/src/components/DetailsPage/DetailsPage.d.ts.map +1 -1
- package/dist/ui-components/src/components/DetailsPage/DetailsPage.js +2 -2
- package/dist/ui-components/src/components/DetailsPage/DetailsPage.js.map +1 -1
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsCatalog.d.ts +10 -0
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsCatalog.d.ts.map +1 -0
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsCatalog.js +58 -0
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsCatalog.js.map +1 -0
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsPage.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsPage.js +5 -2
- package/dist/ui-components/src/components/Device/DeviceDetails/DeviceDetailsPage.js.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DecommissionedDeviceTableRow.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DecommissionedDeviceTableRow.js +3 -3
- package/dist/ui-components/src/components/Device/DevicesPage/DecommissionedDeviceTableRow.js.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DecommissionedDevicesTable.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DecommissionedDevicesTable.js +2 -2
- package/dist/ui-components/src/components/Device/DevicesPage/DecommissionedDevicesTable.js.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DevicesPage.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DevicesPage.js +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/DevicesPage.js.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDeviceTableRow.d.ts +10 -6
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDeviceTableRow.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDeviceTableRow.js +20 -18
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDeviceTableRow.js.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDevicesTable.d.ts +3 -0
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDevicesTable.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDevicesTable.js +14 -6
- package/dist/ui-components/src/components/Device/DevicesPage/EnrolledDevicesTable.js.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/useDevices.d.ts +30 -1
- package/dist/ui-components/src/components/Device/DevicesPage/useDevices.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/DevicesPage/useDevices.js +40 -4
- package/dist/ui-components/src/components/Device/DevicesPage/useDevices.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/EditDeviceWizard.js +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/EditDeviceWizard.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationHelmForm.js +3 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationHelmForm.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationInlineForm.js +3 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationInlineForm.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationTemplates.d.ts +2 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationTemplates.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationTemplates.js +16 -10
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationTemplates.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationVariablesForm.js +3 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationVariablesForm.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationVolumeForm.js +3 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ApplicationVolumeForm.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ConfigInlineTemplateForm.js +3 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ConfigInlineTemplateForm.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ConfigurationTemplates.js +3 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/ConfigurationTemplates.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/DeviceTemplateStep.d.ts +2 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/DeviceTemplateStep.d.ts.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/DeviceTemplateStep.js +9 -3
- package/dist/ui-components/src/components/Device/EditDeviceWizard/steps/DeviceTemplateStep.js.map +1 -1
- package/dist/ui-components/src/components/Device/EditDeviceWizard/utils.d.ts +23 -23
- package/dist/ui-components/src/components/DynamicForm/DynamicForm.d.ts +29 -0
- package/dist/ui-components/src/components/DynamicForm/DynamicForm.d.ts.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/DynamicForm.js +35 -0
- package/dist/ui-components/src/components/DynamicForm/DynamicForm.js.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/FieldErrors.d.ts +6 -0
- package/dist/ui-components/src/components/DynamicForm/FieldErrors.d.ts.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/FieldErrors.js +12 -0
- package/dist/ui-components/src/components/DynamicForm/FieldErrors.js.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/FieldTemplate.d.ts +9 -0
- package/dist/ui-components/src/components/DynamicForm/FieldTemplate.d.ts.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/FieldTemplate.js +135 -0
- package/dist/ui-components/src/components/DynamicForm/FieldTemplate.js.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/FormWidget.d.ts +12 -0
- package/dist/ui-components/src/components/DynamicForm/FormWidget.d.ts.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/FormWidget.js +75 -0
- package/dist/ui-components/src/components/DynamicForm/FormWidget.js.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/VolumeImageField.d.ts +21 -0
- package/dist/ui-components/src/components/DynamicForm/VolumeImageField.d.ts.map +1 -0
- package/dist/ui-components/src/components/DynamicForm/VolumeImageField.js +160 -0
- package/dist/ui-components/src/components/DynamicForm/VolumeImageField.js.map +1 -0
- package/dist/ui-components/src/components/EnrollmentRequest/EnrollmentRequestTableRow.d.ts.map +1 -1
- package/dist/ui-components/src/components/EnrollmentRequest/EnrollmentRequestTableRow.js +2 -2
- package/dist/ui-components/src/components/EnrollmentRequest/EnrollmentRequestTableRow.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/CreateFleet/CreateFleetWizard.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/CreateFleet/CreateFleetWizard.js +1 -1
- package/dist/ui-components/src/components/Fleet/CreateFleet/CreateFleetWizard.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/CreateFleet/steps/UpdateStepRolloutPolicy.js +3 -3
- package/dist/ui-components/src/components/Fleet/CreateFleet/steps/UpdateStepRolloutPolicy.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsCatalog.d.ts +9 -0
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsCatalog.d.ts.map +1 -0
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsCatalog.js +45 -0
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsCatalog.js.map +1 -0
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsPage.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsPage.js +4 -1
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetDetailsPage.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetOwnerLink.d.ts +0 -1
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetOwnerLink.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetOwnerLink.js +5 -6
- package/dist/ui-components/src/components/Fleet/FleetDetails/FleetOwnerLink.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetRow.d.ts +6 -3
- package/dist/ui-components/src/components/Fleet/FleetRow.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetRow.js +10 -6
- package/dist/ui-components/src/components/Fleet/FleetRow.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetsPage.d.ts +3 -0
- package/dist/ui-components/src/components/Fleet/FleetsPage.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/FleetsPage.js +6 -4
- package/dist/ui-components/src/components/Fleet/FleetsPage.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/ImportFleetWizard.d.ts +2 -2
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/ImportFleetWizard.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/ImportFleetWizard.js +3 -105
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/ImportFleetWizard.js.map +1 -1
- package/dist/ui-components/src/components/Fleet/useFleets.d.ts +1 -0
- package/dist/ui-components/src/components/Fleet/useFleets.d.ts.map +1 -1
- package/dist/ui-components/src/components/Fleet/useFleets.js.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/CreateImageBuildWizard/utils.d.ts.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/CreateImageBuildWizard/utils.js +0 -2
- package/dist/ui-components/src/components/ImageBuilds/CreateImageBuildWizard/utils.js.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildDetails/ImageBuildDetailsTab.js +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildDetails/ImageBuildDetailsTab.js.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildDetails/ImageBuildYaml.js +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildDetails/ImageBuildYaml.js.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildRow.d.ts.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildRow.js +0 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildRow.js.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildsPage.d.ts.map +1 -1
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildsPage.js +0 -3
- package/dist/ui-components/src/components/ImageBuilds/ImageBuildsPage.js.map +1 -1
- package/dist/ui-components/src/components/ImportResourceWizard/ImportResourceWizard.d.ts +5 -0
- package/dist/ui-components/src/components/ImportResourceWizard/ImportResourceWizard.d.ts.map +1 -0
- package/dist/ui-components/src/components/ImportResourceWizard/ImportResourceWizard.js +118 -0
- package/dist/ui-components/src/components/ImportResourceWizard/ImportResourceWizard.js.map +1 -0
- package/dist/ui-components/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/RepositoryStep.d.ts +2 -2
- package/dist/ui-components/src/components/ImportResourceWizard/steps/RepositoryStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/RepositoryStep.js +10 -10
- package/dist/ui-components/src/components/ImportResourceWizard/steps/RepositoryStep.js.map +1 -0
- package/dist/ui-components/src/components/ImportResourceWizard/steps/ResourceSyncStep.d.ts +12 -0
- package/dist/ui-components/src/components/ImportResourceWizard/steps/ResourceSyncStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/ResourceSyncStep.js +5 -7
- package/dist/ui-components/src/components/ImportResourceWizard/steps/ResourceSyncStep.js.map +1 -0
- package/dist/ui-components/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/ReviewStep.d.ts +2 -1
- package/dist/ui-components/src/components/ImportResourceWizard/steps/ReviewStep.d.ts.map +1 -0
- package/dist/ui-components/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/ReviewStep.js +5 -5
- package/dist/ui-components/src/components/ImportResourceWizard/steps/ReviewStep.js.map +1 -0
- package/dist/ui-components/src/components/ImportResourceWizard/types.d.ts +19 -0
- package/dist/ui-components/src/components/ImportResourceWizard/types.d.ts.map +1 -0
- package/dist/ui-components/src/components/ImportResourceWizard/types.js +3 -0
- package/dist/ui-components/src/components/ImportResourceWizard/types.js.map +1 -0
- package/dist/ui-components/src/components/ListPage/ListPage.js +1 -1
- package/dist/ui-components/src/components/ListPage/ListPage.js.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateRepository.d.ts.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateRepository.js +4 -3
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateRepository.js.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateRepositoryForm.js +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateRepositoryForm.js.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateResourceSyncsForm.d.ts +7 -2
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateResourceSyncsForm.d.ts.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateResourceSyncsForm.js +19 -6
- package/dist/ui-components/src/components/Repository/CreateRepository/CreateResourceSyncsForm.js.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/types.d.ts +2 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/types.d.ts.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/utils.d.ts +3 -2
- package/dist/ui-components/src/components/Repository/CreateRepository/utils.d.ts.map +1 -1
- package/dist/ui-components/src/components/Repository/CreateRepository/utils.js +7 -4
- package/dist/ui-components/src/components/Repository/CreateRepository/utils.js.map +1 -1
- package/dist/ui-components/src/components/Repository/RepositoryDetails/DeleteRepositoryModal.d.ts.map +1 -1
- package/dist/ui-components/src/components/Repository/RepositoryDetails/DeleteRepositoryModal.js +2 -3
- package/dist/ui-components/src/components/Repository/RepositoryDetails/DeleteRepositoryModal.js.map +1 -1
- package/dist/ui-components/src/components/ResourceSync/RepositoryResourceSyncList.d.ts.map +1 -1
- package/dist/ui-components/src/components/ResourceSync/RepositoryResourceSyncList.js +20 -6
- package/dist/ui-components/src/components/ResourceSync/RepositoryResourceSyncList.js.map +1 -1
- package/dist/ui-components/src/components/ResourceSync/ResourceSyncImportStatus.d.ts +6 -0
- package/dist/ui-components/src/components/ResourceSync/ResourceSyncImportStatus.d.ts.map +1 -0
- package/dist/ui-components/src/components/{Fleet/FleetResourceSyncs.js → ResourceSync/ResourceSyncImportStatus.js} +24 -17
- package/dist/ui-components/src/components/ResourceSync/ResourceSyncImportStatus.js.map +1 -0
- package/dist/ui-components/src/components/Table/Table.d.ts +5 -2
- package/dist/ui-components/src/components/Table/Table.d.ts.map +1 -1
- package/dist/ui-components/src/components/Table/Table.js +2 -1
- package/dist/ui-components/src/components/Table/Table.js.map +1 -1
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditor.d.ts +1 -0
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditor.d.ts.map +1 -1
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditor.js +5 -3
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditor.js.map +1 -1
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditorBase.d.ts +5 -3
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditorBase.d.ts.map +1 -1
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditorBase.js +5 -5
- package/dist/ui-components/src/components/common/CodeEditor/YamlEditorBase.js.map +1 -1
- package/dist/ui-components/src/components/common/FlightCtlWizardFooter.d.ts +3 -1
- package/dist/ui-components/src/components/common/FlightCtlWizardFooter.d.ts.map +1 -1
- package/dist/ui-components/src/components/common/FlightCtlWizardFooter.js +6 -6
- package/dist/ui-components/src/components/common/FlightCtlWizardFooter.js.map +1 -1
- package/dist/ui-components/src/components/common/LabelsView.d.ts.map +1 -1
- package/dist/ui-components/src/components/common/LabelsView.js +2 -1
- package/dist/ui-components/src/components/common/LabelsView.js.map +1 -1
- package/dist/ui-components/src/components/common/PageNavigation.js +1 -1
- package/dist/ui-components/src/components/common/PageNavigation.js.map +1 -1
- package/dist/ui-components/src/components/common/ResourceLink.d.ts +2 -1
- package/dist/ui-components/src/components/common/ResourceLink.d.ts.map +1 -1
- package/dist/ui-components/src/components/common/ResourceLink.js +2 -2
- package/dist/ui-components/src/components/common/ResourceLink.js.map +1 -1
- package/dist/ui-components/src/components/common/WithHelperText.js +1 -1
- package/dist/ui-components/src/components/common/WithHelperText.js.map +1 -1
- package/dist/ui-components/src/components/common/WithTooltip.d.ts +3 -2
- package/dist/ui-components/src/components/common/WithTooltip.d.ts.map +1 -1
- package/dist/ui-components/src/components/common/WithTooltip.js +6 -1
- package/dist/ui-components/src/components/common/WithTooltip.js.map +1 -1
- package/dist/ui-components/src/components/form/ExpandableFormSection.d.ts +2 -1
- package/dist/ui-components/src/components/form/ExpandableFormSection.d.ts.map +1 -1
- package/dist/ui-components/src/components/form/ExpandableFormSection.js +2 -2
- package/dist/ui-components/src/components/form/ExpandableFormSection.js.map +1 -1
- package/dist/ui-components/src/components/form/FormSelect.d.ts +9 -2
- package/dist/ui-components/src/components/form/FormSelect.d.ts.map +1 -1
- package/dist/ui-components/src/components/form/FormSelect.js +16 -5
- package/dist/ui-components/src/components/form/FormSelect.js.map +1 -1
- package/dist/ui-components/src/components/form/IconUploadField.d.ts +8 -0
- package/dist/ui-components/src/components/form/IconUploadField.d.ts.map +1 -0
- package/dist/ui-components/src/components/form/IconUploadField.js +50 -0
- package/dist/ui-components/src/components/form/IconUploadField.js.map +1 -0
- package/dist/ui-components/src/components/form/LabelsField.d.ts.map +1 -1
- package/dist/ui-components/src/components/form/LabelsField.js +7 -3
- package/dist/ui-components/src/components/form/LabelsField.js.map +1 -1
- package/dist/ui-components/src/components/form/TextListField.d.ts +1 -1
- package/dist/ui-components/src/components/form/validations.d.ts +17 -1
- package/dist/ui-components/src/components/form/validations.d.ts.map +1 -1
- package/dist/ui-components/src/components/form/validations.js +14 -9
- package/dist/ui-components/src/components/form/validations.js.map +1 -1
- package/dist/ui-components/src/components/modals/ApproveDeviceModal/ApproveDeviceForm.d.ts.map +1 -1
- package/dist/ui-components/src/components/modals/ApproveDeviceModal/ApproveDeviceForm.js +1 -1
- package/dist/ui-components/src/components/modals/ApproveDeviceModal/ApproveDeviceForm.js.map +1 -1
- package/dist/ui-components/src/components/modals/massModals/MassDecommissionDeviceModal/MassDecommissionDeviceModal.d.ts.map +1 -1
- package/dist/ui-components/src/components/modals/massModals/MassDecommissionDeviceModal/MassDecommissionDeviceModal.js +1 -1
- package/dist/ui-components/src/components/modals/massModals/MassDecommissionDeviceModal/MassDecommissionDeviceModal.js.map +1 -1
- package/dist/ui-components/src/components/modals/massModals/MassDeleteDeviceModal/MassDeleteDeviceModal.d.ts.map +1 -1
- package/dist/ui-components/src/components/modals/massModals/MassDeleteDeviceModal/MassDeleteDeviceModal.js +1 -1
- package/dist/ui-components/src/components/modals/massModals/MassDeleteDeviceModal/MassDeleteDeviceModal.js.map +1 -1
- package/dist/ui-components/src/constants.d.ts +1 -1
- package/dist/ui-components/src/constants.d.ts.map +1 -1
- package/dist/ui-components/src/constants.js +3 -0
- package/dist/ui-components/src/constants.js.map +1 -1
- package/dist/ui-components/src/hooks/useAppContext.d.ts +7 -0
- package/dist/ui-components/src/hooks/useAppContext.d.ts.map +1 -1
- package/dist/ui-components/src/hooks/useAppContext.js +7 -0
- package/dist/ui-components/src/hooks/useAppContext.js.map +1 -1
- package/dist/ui-components/src/hooks/useAppLinks.d.ts +1 -1
- package/dist/ui-components/src/hooks/useAppLinks.d.ts.map +1 -1
- package/dist/ui-components/src/hooks/useAppLinks.js +6 -0
- package/dist/ui-components/src/hooks/useAppLinks.js.map +1 -1
- package/dist/ui-components/src/hooks/useFetch.d.ts.map +1 -1
- package/dist/ui-components/src/hooks/useFetchPeriodically.d.ts.map +1 -1
- package/dist/ui-components/src/hooks/useFetchPeriodically.js +4 -4
- package/dist/ui-components/src/hooks/useFetchPeriodically.js.map +1 -1
- package/dist/ui-components/src/hooks/useNavigate.d.ts +10 -3
- package/dist/ui-components/src/hooks/useNavigate.d.ts.map +1 -1
- package/dist/ui-components/src/hooks/useNavigate.js +11 -3
- package/dist/ui-components/src/hooks/useNavigate.js.map +1 -1
- package/dist/ui-components/src/types/extraTypes.d.ts +0 -1
- package/dist/ui-components/src/types/extraTypes.d.ts.map +1 -1
- package/dist/ui-components/src/types/extraTypes.js.map +1 -1
- package/dist/ui-components/src/types/rbac.d.ts +2 -0
- package/dist/ui-components/src/types/rbac.d.ts.map +1 -1
- package/dist/ui-components/src/types/rbac.js +2 -0
- package/dist/ui-components/src/types/rbac.js.map +1 -1
- package/dist/ui-components/src/utils/api.d.ts +2 -1
- package/dist/ui-components/src/utils/api.d.ts.map +1 -1
- package/dist/ui-components/src/utils/api.js.map +1 -1
- package/dist/ui-components/src/utils/patch.d.ts.map +1 -1
- package/dist/ui-components/src/utils/patch.js +2 -1
- package/dist/ui-components/src/utils/patch.js.map +1 -1
- package/dist/ui-components/src/utils/resource.d.ts +2 -1
- package/dist/ui-components/src/utils/resource.d.ts.map +1 -1
- package/dist/ui-components/src/utils/resource.js +13 -1
- package/dist/ui-components/src/utils/resource.js.map +1 -1
- package/package.json +9 -3
- package/src/components/Catalog/AddCatalogItemWizard/AddCatalogItemWizard.tsx +278 -0
- package/src/components/Catalog/AddCatalogItemWizard/ChannelsSelect.tsx +214 -0
- package/src/components/Catalog/AddCatalogItemWizard/CreateCatalogModal.tsx +179 -0
- package/src/components/Catalog/AddCatalogItemWizard/steps/GeneralInfoStep.tsx +196 -0
- package/src/components/Catalog/AddCatalogItemWizard/steps/ReviewStep.tsx +145 -0
- package/src/components/Catalog/AddCatalogItemWizard/steps/TypeConfigStep.tsx +203 -0
- package/src/components/Catalog/AddCatalogItemWizard/steps/VersionStep.tsx +249 -0
- package/src/components/Catalog/AddCatalogItemWizard/types.ts +58 -0
- package/src/components/Catalog/AddCatalogItemWizard/utils.ts +655 -0
- package/src/components/Catalog/CatalogItemCard.tsx +86 -0
- package/src/components/Catalog/CatalogItemDetails.css +4 -0
- package/src/components/Catalog/CatalogItemDetails.tsx +480 -0
- package/src/components/Catalog/CatalogLandingPage.tsx +258 -0
- package/src/components/Catalog/CatalogPage.css +10 -0
- package/src/components/Catalog/CatalogPage.tsx +464 -0
- package/src/components/Catalog/CatalogPageToolbar.tsx +92 -0
- package/src/components/Catalog/DeleteCatalogModal.tsx +163 -0
- package/src/components/Catalog/DeprecateModal.tsx +149 -0
- package/src/components/Catalog/EditWizard/EditAppWizard.tsx +181 -0
- package/src/components/Catalog/EditWizard/EditOsWizard.tsx +136 -0
- package/src/components/Catalog/EditWizard/EditWizard.tsx +300 -0
- package/src/components/Catalog/EditWizard/steps/ReviewStep.tsx +83 -0
- package/src/components/Catalog/EditWizard/steps/UpdateGraph.css +138 -0
- package/src/components/Catalog/EditWizard/steps/UpdateGraph.tsx +169 -0
- package/src/components/Catalog/EditWizard/steps/UpdateStep.tsx +184 -0
- package/src/components/Catalog/EditWizard/types.ts +3 -0
- package/src/components/Catalog/ImportCatalogWizard/ImportCatalogWizard.tsx +23 -0
- package/src/components/Catalog/InstallWizard/InstallAppWizard.tsx +228 -0
- package/src/components/Catalog/InstallWizard/InstallOsWizard.tsx +199 -0
- package/src/components/Catalog/InstallWizard/InstallWizard.tsx +95 -0
- package/src/components/Catalog/InstallWizard/UpdateSuccessPage.tsx +80 -0
- package/src/components/Catalog/InstallWizard/steps/AppConfigStep.css +12 -0
- package/src/components/Catalog/InstallWizard/steps/AppConfigStep.tsx +202 -0
- package/src/components/Catalog/InstallWizard/steps/ReviewStep.tsx +193 -0
- package/src/components/Catalog/InstallWizard/steps/SelectTargetStep.tsx +312 -0
- package/src/components/Catalog/InstallWizard/steps/SpecificationsStep.tsx +353 -0
- package/src/components/Catalog/InstallWizard/types.ts +37 -0
- package/src/components/Catalog/InstallWizard/utils.ts +106 -0
- package/src/components/Catalog/InstalledSoftware.tsx +359 -0
- package/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.css +3 -0
- package/src/components/Catalog/ResourceCatalog/ResourceCatalogPage.tsx +79 -0
- package/src/components/Catalog/const.ts +16 -0
- package/src/components/Catalog/useCatalogFilter.ts +26 -0
- package/src/components/Catalog/useCatalogs.ts +118 -0
- package/src/components/Catalog/useSubmitCatalogForm.ts +60 -0
- package/src/components/Catalog/utils.ts +404 -0
- package/src/components/DetailsPage/DetailsPage.tsx +9 -1
- package/src/components/Device/DeviceDetails/DeviceDetailsCatalog.tsx +94 -0
- package/src/components/Device/DeviceDetails/DeviceDetailsPage.tsx +10 -1
- package/src/components/Device/DevicesPage/DecommissionedDeviceTableRow.tsx +7 -3
- package/src/components/Device/DevicesPage/DecommissionedDevicesTable.tsx +2 -0
- package/src/components/Device/DevicesPage/DevicesPage.tsx +7 -1
- package/src/components/Device/DevicesPage/EnrolledDeviceTableRow.tsx +90 -61
- package/src/components/Device/DevicesPage/EnrolledDevicesTable.tsx +12 -2
- package/src/components/Device/DevicesPage/useDevices.ts +71 -3
- package/src/components/Device/EditDeviceWizard/EditDeviceWizard.tsx +1 -1
- package/src/components/Device/EditDeviceWizard/steps/ApplicationHelmForm.tsx +3 -3
- package/src/components/Device/EditDeviceWizard/steps/ApplicationInlineForm.tsx +3 -3
- package/src/components/Device/EditDeviceWizard/steps/ApplicationTemplates.tsx +51 -22
- package/src/components/Device/EditDeviceWizard/steps/ApplicationVariablesForm.tsx +3 -3
- package/src/components/Device/EditDeviceWizard/steps/ApplicationVolumeForm.tsx +3 -3
- package/src/components/Device/EditDeviceWizard/steps/ConfigInlineTemplateForm.tsx +3 -3
- package/src/components/Device/EditDeviceWizard/steps/ConfigurationTemplates.tsx +3 -3
- package/src/components/Device/EditDeviceWizard/steps/DeviceTemplateStep.tsx +31 -11
- package/src/components/DynamicForm/DynamicForm.tsx +96 -0
- package/src/components/DynamicForm/FieldErrors.tsx +17 -0
- package/src/components/DynamicForm/FieldTemplate.tsx +246 -0
- package/src/components/DynamicForm/FormWidget.tsx +218 -0
- package/src/components/DynamicForm/VolumeImageField.tsx +374 -0
- package/src/components/EnrollmentRequest/EnrollmentRequestTableRow.tsx +6 -2
- package/src/components/Fleet/CreateFleet/CreateFleetWizard.tsx +3 -1
- package/src/components/Fleet/CreateFleet/steps/UpdateStepRolloutPolicy.tsx +3 -3
- package/src/components/Fleet/FleetDetails/FleetDetailsCatalog.tsx +66 -0
- package/src/components/Fleet/FleetDetails/FleetDetailsPage.tsx +4 -1
- package/src/components/Fleet/FleetDetails/FleetOwnerLink.tsx +5 -6
- package/src/components/Fleet/FleetRow.tsx +23 -12
- package/src/components/Fleet/FleetsPage.tsx +4 -4
- package/src/components/Fleet/ImportFleetWizard/ImportFleetWizard.tsx +16 -203
- package/src/components/Fleet/useFleets.ts +1 -0
- package/src/components/ImageBuilds/CreateImageBuildWizard/utils.ts +1 -5
- package/src/components/ImageBuilds/ImageBuildDetails/ImageBuildDetailsTab.tsx +1 -1
- package/src/components/ImageBuilds/ImageBuildDetails/ImageBuildYaml.tsx +1 -1
- package/src/components/ImageBuilds/ImageBuildRow.tsx +0 -1
- package/src/components/ImageBuilds/ImageBuildsPage.tsx +0 -3
- package/src/components/ImportResourceWizard/ImportResourceWizard.tsx +226 -0
- package/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/RepositoryStep.tsx +21 -19
- package/src/components/ImportResourceWizard/steps/ResourceSyncStep.tsx +41 -0
- package/src/components/{Fleet/ImportFleetWizard → ImportResourceWizard}/steps/ReviewStep.tsx +10 -15
- package/src/components/ImportResourceWizard/types.ts +18 -0
- package/src/components/ListPage/ListPage.tsx +1 -1
- package/src/components/Repository/CreateRepository/CreateRepository.tsx +6 -5
- package/src/components/Repository/CreateRepository/CreateRepositoryForm.tsx +1 -1
- package/src/components/Repository/CreateRepository/CreateResourceSyncsForm.tsx +59 -8
- package/src/components/Repository/CreateRepository/types.ts +2 -1
- package/src/components/Repository/CreateRepository/utils.ts +7 -2
- package/src/components/Repository/RepositoryDetails/DeleteRepositoryModal.tsx +6 -9
- package/src/components/ResourceSync/RepositoryResourceSyncList.tsx +30 -15
- package/src/components/{Fleet/FleetResourceSyncs.tsx → ResourceSync/ResourceSyncImportStatus.tsx} +42 -18
- package/src/components/Table/Table.tsx +7 -2
- package/src/components/common/CodeEditor/YamlEditor.tsx +1 -1
- package/src/components/common/CodeEditor/YamlEditorBase.tsx +45 -34
- package/src/components/common/FlightCtlWizardFooter.tsx +25 -4
- package/src/components/common/LabelsView.tsx +2 -1
- package/src/components/common/PageNavigation.tsx +1 -1
- package/src/components/common/ResourceLink.tsx +15 -2
- package/src/components/common/WithHelperText.tsx +1 -1
- package/src/components/common/WithTooltip.tsx +13 -3
- package/src/components/form/ExpandableFormSection.tsx +3 -1
- package/src/components/form/FormSelect.tsx +51 -5
- package/src/components/form/IconUploadField.tsx +88 -0
- package/src/components/form/LabelsField.tsx +29 -25
- package/src/components/form/validations.ts +5 -3
- package/src/components/modals/ApproveDeviceModal/ApproveDeviceForm.tsx +1 -0
- package/src/components/modals/massModals/MassDecommissionDeviceModal/MassDecommissionDeviceModal.tsx +1 -0
- package/src/components/modals/massModals/MassDeleteDeviceModal/MassDeleteDeviceModal.tsx +8 -1
- package/src/constants.ts +4 -1
- package/src/hooks/useAppContext.tsx +7 -0
- package/src/hooks/useAppLinks.ts +8 -2
- package/src/hooks/useFetchPeriodically.ts +4 -5
- package/src/hooks/useNavigate.tsx +18 -5
- package/src/types/extraTypes.ts +0 -1
- package/src/types/rbac.ts +2 -0
- package/src/utils/api.ts +3 -1
- package/src/utils/patch.ts +2 -1
- package/src/utils/resource.ts +13 -1
- package/dist/ui-components/src/components/Fleet/FleetResourceSyncs.d.ts +0 -4
- package/dist/ui-components/src/components/Fleet/FleetResourceSyncs.d.ts.map +0 -1
- package/dist/ui-components/src/components/Fleet/FleetResourceSyncs.js.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/RepositoryStep.d.ts.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/RepositoryStep.js.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/ResourceSyncStep.d.ts +0 -8
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/ResourceSyncStep.d.ts.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/ResourceSyncStep.js.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/ReviewStep.d.ts.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/steps/ReviewStep.js.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/types.d.ts +0 -6
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/types.d.ts.map +0 -1
- package/dist/ui-components/src/components/Fleet/ImportFleetWizard/types.js.map +0 -1
- package/src/components/Fleet/ImportFleetWizard/steps/ResourceSyncStep.tsx +0 -40
- package/src/components/Fleet/ImportFleetWizard/types.ts +0 -6
- /package/dist/ui-components/src/components/{Fleet/ImportFleetWizard → Catalog/EditWizard}/types.js +0 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Alert,
|
|
3
|
+
Button,
|
|
4
|
+
Content,
|
|
5
|
+
FormGroup,
|
|
6
|
+
Grid,
|
|
7
|
+
GridItem,
|
|
8
|
+
Icon,
|
|
9
|
+
Modal,
|
|
10
|
+
ModalBody,
|
|
11
|
+
ModalHeader,
|
|
12
|
+
Title,
|
|
13
|
+
} from '@patternfly/react-core';
|
|
14
|
+
import ArrowRightIcon from '@patternfly/react-icons/dist/js/icons/arrow-right-icon';
|
|
15
|
+
import * as React from 'react';
|
|
16
|
+
import { FormikErrors, useFormikContext } from 'formik';
|
|
17
|
+
import { CatalogItem, CatalogItemVersion } from '@flightctl/types/alpha';
|
|
18
|
+
import semver from 'semver';
|
|
19
|
+
import ReactMarkdown from 'react-markdown';
|
|
20
|
+
|
|
21
|
+
import FlightCtlForm from '../../../form/FlightCtlForm';
|
|
22
|
+
import { useTranslation } from '../../../../hooks/useTranslation';
|
|
23
|
+
import FormSelect from '../../../form/FormSelect';
|
|
24
|
+
import { InstallSpecFormik } from '../../InstallWizard/types';
|
|
25
|
+
import { StatusDisplayContent } from '../../../Status/StatusDisplay';
|
|
26
|
+
import { InstallSpec, VersionDropdown } from '../../InstallWizard/steps/SpecificationsStep';
|
|
27
|
+
import UpdateGraph from './UpdateGraph';
|
|
28
|
+
import { FormGroupWithHelperText } from '../../../common/WithHelperText';
|
|
29
|
+
import { applyInitialConfig, getInitialAppConfig } from '../../InstallWizard/utils';
|
|
30
|
+
import { getUpdates } from '../../utils';
|
|
31
|
+
|
|
32
|
+
export const isUpdateStepValid = (errors: FormikErrors<InstallSpecFormik>) => {
|
|
33
|
+
return !errors.version && !errors.channel;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
type UpdateStepProps = {
|
|
37
|
+
currentVersion: CatalogItemVersion;
|
|
38
|
+
catalogItem: CatalogItem;
|
|
39
|
+
isEdit: boolean;
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
const UpdateStep = ({ currentVersion, catalogItem, isEdit }: UpdateStepProps) => {
|
|
43
|
+
const [showReadme, setShowReadme] = React.useState(false);
|
|
44
|
+
const { t } = useTranslation();
|
|
45
|
+
const { values, initialValues, setFieldValue } = useFormikContext<InstallSpecFormik>();
|
|
46
|
+
|
|
47
|
+
const updates = getUpdates(catalogItem, values.channel, currentVersion.version);
|
|
48
|
+
|
|
49
|
+
const updateVersion = catalogItem.spec.versions.find((v) => v.version === values.version);
|
|
50
|
+
|
|
51
|
+
return isEdit ? (
|
|
52
|
+
<>
|
|
53
|
+
<FlightCtlForm>
|
|
54
|
+
<Grid hasGutter>
|
|
55
|
+
<GridItem>
|
|
56
|
+
<Title headingLevel="h3">{t('Version update')}</Title>
|
|
57
|
+
</GridItem>
|
|
58
|
+
<GridItem lg={7} md={10} sm={12}>
|
|
59
|
+
<Grid hasGutter>
|
|
60
|
+
<GridItem>
|
|
61
|
+
<Grid style={{ alignItems: 'center' }}>
|
|
62
|
+
<GridItem span={4}>
|
|
63
|
+
<FormGroup label={t('Current channel')} />
|
|
64
|
+
</GridItem>
|
|
65
|
+
<GridItem span={1} />
|
|
66
|
+
<GridItem span={4}>
|
|
67
|
+
<FormGroupWithHelperText
|
|
68
|
+
label={t('Target channel')}
|
|
69
|
+
content={t('The current version is available in the channels listed in the dropdown below')}
|
|
70
|
+
/>
|
|
71
|
+
</GridItem>
|
|
72
|
+
<GridItem span={3} />
|
|
73
|
+
<GridItem span={4}>{initialValues.channel}</GridItem>
|
|
74
|
+
<GridItem span={1}>
|
|
75
|
+
<Icon>
|
|
76
|
+
<ArrowRightIcon />
|
|
77
|
+
</Icon>
|
|
78
|
+
</GridItem>
|
|
79
|
+
<GridItem span={4}>
|
|
80
|
+
<FormSelect
|
|
81
|
+
name="channel"
|
|
82
|
+
items={currentVersion.channels.reduce((acc, curr) => {
|
|
83
|
+
acc[curr] = curr;
|
|
84
|
+
return acc;
|
|
85
|
+
}, {})}
|
|
86
|
+
onChange={(val) => {
|
|
87
|
+
const latestVersion = getUpdates(catalogItem, val, currentVersion.version).sort((a, b) =>
|
|
88
|
+
semver.rcompare(a.version, b.version),
|
|
89
|
+
)[0]?.version;
|
|
90
|
+
const newVersion = latestVersion || currentVersion.version;
|
|
91
|
+
setFieldValue('version', newVersion);
|
|
92
|
+
const appConfig = getInitialAppConfig(catalogItem, newVersion);
|
|
93
|
+
applyInitialConfig(setFieldValue, appConfig);
|
|
94
|
+
}}
|
|
95
|
+
/>
|
|
96
|
+
</GridItem>
|
|
97
|
+
<GridItem span={3} />
|
|
98
|
+
</Grid>
|
|
99
|
+
</GridItem>
|
|
100
|
+
<GridItem>
|
|
101
|
+
<Grid style={{ alignItems: 'center' }}>
|
|
102
|
+
<GridItem span={4}>
|
|
103
|
+
<FormGroup label={t('Current version')} />
|
|
104
|
+
</GridItem>
|
|
105
|
+
<GridItem span={1} />
|
|
106
|
+
<GridItem span={4}>
|
|
107
|
+
<FormGroup label={t('Target version')} />
|
|
108
|
+
</GridItem>
|
|
109
|
+
<GridItem span={3} />
|
|
110
|
+
<GridItem span={4}>{currentVersion.version}</GridItem>
|
|
111
|
+
<GridItem span={1}>
|
|
112
|
+
<Icon>
|
|
113
|
+
<ArrowRightIcon />
|
|
114
|
+
</Icon>
|
|
115
|
+
</GridItem>
|
|
116
|
+
<GridItem span={4}>
|
|
117
|
+
{updates.length ? (
|
|
118
|
+
<VersionDropdown catalogItem={catalogItem} versions={[...updates, currentVersion]} />
|
|
119
|
+
) : (
|
|
120
|
+
<StatusDisplayContent level="success" label={t('Up to date')} />
|
|
121
|
+
)}
|
|
122
|
+
</GridItem>
|
|
123
|
+
<GridItem span={3} style={{ paddingLeft: 'var(--pf-t--global--spacer--md)' }}>
|
|
124
|
+
{updateVersion?.readme && (
|
|
125
|
+
<Button onClick={() => setShowReadme(true)} variant="link">
|
|
126
|
+
{t('Show readme')}
|
|
127
|
+
</Button>
|
|
128
|
+
)}
|
|
129
|
+
</GridItem>
|
|
130
|
+
</Grid>
|
|
131
|
+
</GridItem>
|
|
132
|
+
</Grid>
|
|
133
|
+
</GridItem>
|
|
134
|
+
<GridItem lg={6} md={9} sm={11}>
|
|
135
|
+
<Grid hasGutter>
|
|
136
|
+
{!!updates.length && (
|
|
137
|
+
<>
|
|
138
|
+
{values.version === currentVersion.version && (
|
|
139
|
+
<GridItem>
|
|
140
|
+
<Alert isInline variant="info" title={t('No version update will be performed')} />
|
|
141
|
+
</GridItem>
|
|
142
|
+
)}
|
|
143
|
+
<GridItem>
|
|
144
|
+
<UpdateGraph currentChannel={values.channel} currentVersion={currentVersion} updates={updates} />
|
|
145
|
+
</GridItem>
|
|
146
|
+
</>
|
|
147
|
+
)}
|
|
148
|
+
{updateVersion?.deprecation && (
|
|
149
|
+
<GridItem>
|
|
150
|
+
<Alert isInline variant="warning" title={t('This version is deprecated')}>
|
|
151
|
+
{updateVersion.deprecation.message}
|
|
152
|
+
</Alert>
|
|
153
|
+
</GridItem>
|
|
154
|
+
)}
|
|
155
|
+
</Grid>
|
|
156
|
+
</GridItem>
|
|
157
|
+
</Grid>
|
|
158
|
+
</FlightCtlForm>
|
|
159
|
+
{showReadme && updateVersion?.readme && (
|
|
160
|
+
<Modal isOpen onClose={() => setShowReadme(false)} variant="medium">
|
|
161
|
+
<ModalHeader title={t('Readme')} />
|
|
162
|
+
<ModalBody>
|
|
163
|
+
<Content>
|
|
164
|
+
<ReactMarkdown>{updateVersion.readme}</ReactMarkdown>
|
|
165
|
+
</Content>
|
|
166
|
+
</ModalBody>
|
|
167
|
+
</Modal>
|
|
168
|
+
)}
|
|
169
|
+
</>
|
|
170
|
+
) : (
|
|
171
|
+
<FlightCtlForm>
|
|
172
|
+
<Grid hasGutter>
|
|
173
|
+
<GridItem>
|
|
174
|
+
<Title headingLevel="h3">{t('Deployment specifications')}</Title>
|
|
175
|
+
</GridItem>
|
|
176
|
+
<GridItem lg={6} md={8} sm={12}>
|
|
177
|
+
<InstallSpec catalogItem={catalogItem} targetSet />
|
|
178
|
+
</GridItem>
|
|
179
|
+
</Grid>
|
|
180
|
+
</FlightCtlForm>
|
|
181
|
+
);
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
export default UpdateStep;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { ResourceSyncType } from '@flightctl/types';
|
|
3
|
+
|
|
4
|
+
import { useTranslation } from '../../../hooks/useTranslation';
|
|
5
|
+
import { ROUTE } from '../../../hooks/useNavigate';
|
|
6
|
+
import ImportResourceWizard from '../../ImportResourceWizard/ImportResourceWizard';
|
|
7
|
+
|
|
8
|
+
const ImportCatalogWizard = () => {
|
|
9
|
+
const { t } = useTranslation();
|
|
10
|
+
return (
|
|
11
|
+
<ImportResourceWizard
|
|
12
|
+
resourceSyncType={ResourceSyncType.ResourceSyncTypeCatalog}
|
|
13
|
+
successRoute={ROUTE.CATALOG}
|
|
14
|
+
breadcrumb={{ label: t('Software Catalog'), route: ROUTE.CATALOG }}
|
|
15
|
+
title={t('Import catalogs')}
|
|
16
|
+
resourceSyncDescription={t(
|
|
17
|
+
'A resource sync is an automated Gitops method that helps manage your imported catalog by monitoring source repository changes and updating your catalog configuration accordingly.',
|
|
18
|
+
)}
|
|
19
|
+
/>
|
|
20
|
+
);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
export default ImportCatalogWizard;
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { CatalogItem } from '@flightctl/types/alpha';
|
|
2
|
+
import { Wizard, WizardStep, WizardStepType } from '@patternfly/react-core';
|
|
3
|
+
import { Formik, useFormikContext } from 'formik';
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import * as Yup from 'yup';
|
|
6
|
+
import { load } from 'js-yaml';
|
|
7
|
+
import { RJSFValidationError } from '@rjsf/utils';
|
|
8
|
+
import { Device, Fleet } from '@flightctl/types';
|
|
9
|
+
|
|
10
|
+
import { useTranslation } from '../../../hooks/useTranslation';
|
|
11
|
+
import { useFetch } from '../../../hooks/useFetch';
|
|
12
|
+
import { getAppPatches } from '../utils';
|
|
13
|
+
import { InstallAppFormik, appConfigStepId, reviewStepId, selectTargetStepId, specificationsStepId } from './types';
|
|
14
|
+
import SpecificationsStep, { isSpecsStepValid } from './steps/SpecificationsStep';
|
|
15
|
+
import SelectTargetStep, { isSelectTargetStepValid } from './steps/SelectTargetStep';
|
|
16
|
+
import AppConfigStep, { isAppConfigStepValid } from './steps/AppConfigStep';
|
|
17
|
+
import ReviewStep from './steps/ReviewStep';
|
|
18
|
+
import LeaveFormConfirmation from '../../common/LeaveFormConfirmation';
|
|
19
|
+
import UpdateSuccessPage from './UpdateSuccessPage';
|
|
20
|
+
import FlightCtlWizardFooter, { FlightCtlWizardFooterProps } from '../../common/FlightCtlWizardFooter';
|
|
21
|
+
import { useAppContext } from '../../../hooks/useAppContext';
|
|
22
|
+
import { getInitialAppConfig } from './utils';
|
|
23
|
+
import { useSubmitCatalogForm } from '../useSubmitCatalogForm';
|
|
24
|
+
import { validApplicationAndVolumeName } from '../../form/validations';
|
|
25
|
+
|
|
26
|
+
export const validateAppWizardStep: FlightCtlWizardFooterProps<InstallAppFormik>['validateStep'] = (
|
|
27
|
+
activeStepId,
|
|
28
|
+
errors,
|
|
29
|
+
values,
|
|
30
|
+
) => {
|
|
31
|
+
if (activeStepId === specificationsStepId) return isSpecsStepValid(errors);
|
|
32
|
+
if (activeStepId === selectTargetStepId) return isSelectTargetStepValid(errors);
|
|
33
|
+
if (activeStepId === appConfigStepId) return isAppConfigStepValid(values, errors);
|
|
34
|
+
return true;
|
|
35
|
+
};
|
|
36
|
+
|
|
37
|
+
type InstallAppWizardContentProps = {
|
|
38
|
+
currentStep: WizardStepType | undefined;
|
|
39
|
+
setCurrentStep: (step: WizardStepType) => void;
|
|
40
|
+
error: string | undefined;
|
|
41
|
+
schemaErrors: RJSFValidationError[] | undefined;
|
|
42
|
+
catalogItem: CatalogItem;
|
|
43
|
+
isSuccessful: boolean;
|
|
44
|
+
setError: (err: string | undefined) => void;
|
|
45
|
+
};
|
|
46
|
+
|
|
47
|
+
const InstallAppWizardContent = ({
|
|
48
|
+
currentStep,
|
|
49
|
+
setCurrentStep,
|
|
50
|
+
error,
|
|
51
|
+
schemaErrors,
|
|
52
|
+
catalogItem,
|
|
53
|
+
isSuccessful,
|
|
54
|
+
setError,
|
|
55
|
+
}: InstallAppWizardContentProps) => {
|
|
56
|
+
const { t } = useTranslation();
|
|
57
|
+
const { values, errors } = useFormikContext<InstallAppFormik>();
|
|
58
|
+
return isSuccessful ? (
|
|
59
|
+
<UpdateSuccessPage />
|
|
60
|
+
) : (
|
|
61
|
+
<>
|
|
62
|
+
<LeaveFormConfirmation />
|
|
63
|
+
<Wizard
|
|
64
|
+
footer={
|
|
65
|
+
<FlightCtlWizardFooter<InstallAppFormik>
|
|
66
|
+
firstStepId={specificationsStepId}
|
|
67
|
+
submitStepId={reviewStepId}
|
|
68
|
+
validateStep={validateAppWizardStep}
|
|
69
|
+
saveButtonText={t('Deploy')}
|
|
70
|
+
/>
|
|
71
|
+
}
|
|
72
|
+
onStepChange={(_, step) => {
|
|
73
|
+
if (error) {
|
|
74
|
+
setError(undefined);
|
|
75
|
+
}
|
|
76
|
+
setCurrentStep(step);
|
|
77
|
+
}}
|
|
78
|
+
>
|
|
79
|
+
<WizardStep name={t('Specifications')} id={specificationsStepId}>
|
|
80
|
+
{(!currentStep || currentStep?.id === specificationsStepId) && (
|
|
81
|
+
<SpecificationsStep catalogItem={catalogItem} />
|
|
82
|
+
)}
|
|
83
|
+
</WizardStep>
|
|
84
|
+
<WizardStep name={t('Select target')} id={selectTargetStepId} isDisabled={!isSpecsStepValid(errors)}>
|
|
85
|
+
{currentStep?.id === selectTargetStepId && <SelectTargetStep catalogItem={catalogItem} />}
|
|
86
|
+
</WizardStep>
|
|
87
|
+
<WizardStep
|
|
88
|
+
name={t('Application configuration')}
|
|
89
|
+
id={appConfigStepId}
|
|
90
|
+
isDisabled={!isSelectTargetStepValid(errors) || !isSpecsStepValid(errors)}
|
|
91
|
+
>
|
|
92
|
+
{currentStep?.id === appConfigStepId && <AppConfigStep schemaErrors={schemaErrors} />}
|
|
93
|
+
</WizardStep>
|
|
94
|
+
<WizardStep
|
|
95
|
+
name={t('Review and deploy')}
|
|
96
|
+
id={reviewStepId}
|
|
97
|
+
isDisabled={
|
|
98
|
+
!isAppConfigStepValid(values, errors) || !isSpecsStepValid(errors) || !isSelectTargetStepValid(errors)
|
|
99
|
+
}
|
|
100
|
+
>
|
|
101
|
+
{currentStep?.id === reviewStepId && <ReviewStep error={error} catalogItem={catalogItem} />}
|
|
102
|
+
</WizardStep>
|
|
103
|
+
</Wizard>
|
|
104
|
+
</>
|
|
105
|
+
);
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
type InstallAppWizardProps = {
|
|
109
|
+
catalogItem: CatalogItem;
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
const InstallAppWizard = ({ catalogItem }: InstallAppWizardProps) => {
|
|
113
|
+
const { t } = useTranslation();
|
|
114
|
+
const [isSuccessful, setIsSuccessful] = React.useState(false);
|
|
115
|
+
const [currentStep, setCurrentStep] = React.useState<WizardStepType>();
|
|
116
|
+
const { patch, get } = useFetch();
|
|
117
|
+
|
|
118
|
+
const {
|
|
119
|
+
router: { useSearchParams },
|
|
120
|
+
} = useAppContext();
|
|
121
|
+
const [searchParams] = useSearchParams();
|
|
122
|
+
const channel = searchParams.get('channel') || '';
|
|
123
|
+
const version = searchParams.get('version') || '';
|
|
124
|
+
|
|
125
|
+
const validationSchema = Yup.lazy((values: InstallAppFormik) =>
|
|
126
|
+
Yup.object({
|
|
127
|
+
target: Yup.string().required(t('Target must be selected')),
|
|
128
|
+
channel: Yup.string().required(t('Channel must be selected')),
|
|
129
|
+
version: Yup.string().required(t('Version must be selected')),
|
|
130
|
+
device: values.target === 'device' ? Yup.object().required(t('Device must be selected')) : Yup.object(),
|
|
131
|
+
fleet: values.target === 'fleet' ? Yup.object().required(t('Fleet must be selected')) : Yup.object(),
|
|
132
|
+
appName: validApplicationAndVolumeName(t)
|
|
133
|
+
.required(t('Application name is required'))
|
|
134
|
+
.test('is-unique', t('Application with the same name already exists.'), (value) => {
|
|
135
|
+
if (!value || value.length === 0 || !values.target) {
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
const apps =
|
|
139
|
+
values.target === 'device'
|
|
140
|
+
? values.device?.spec?.applications
|
|
141
|
+
: values.fleet?.spec.template.spec.applications;
|
|
142
|
+
if (!apps?.length) {
|
|
143
|
+
return true;
|
|
144
|
+
}
|
|
145
|
+
return !apps.some((app) => app.name === value);
|
|
146
|
+
}),
|
|
147
|
+
}),
|
|
148
|
+
);
|
|
149
|
+
|
|
150
|
+
const initialValues = React.useMemo<InstallAppFormik>(() => {
|
|
151
|
+
const appConfig = getInitialAppConfig(catalogItem, version);
|
|
152
|
+
return {
|
|
153
|
+
version,
|
|
154
|
+
channel,
|
|
155
|
+
target: undefined,
|
|
156
|
+
fleet: undefined,
|
|
157
|
+
device: undefined,
|
|
158
|
+
...appConfig,
|
|
159
|
+
};
|
|
160
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
161
|
+
}, []);
|
|
162
|
+
|
|
163
|
+
const { onSubmit, error, schemaErrors, setError } = useSubmitCatalogForm<InstallAppFormik>(async (values) => {
|
|
164
|
+
if (values.target !== 'fleet' && values.target !== 'device') {
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
const selectedDevice = values.device;
|
|
168
|
+
const selectedFleet = values.fleet;
|
|
169
|
+
const installToDevice = values.target === 'device';
|
|
170
|
+
const resourceId = installToDevice
|
|
171
|
+
? `devices/${selectedDevice?.metadata.name}`
|
|
172
|
+
: `fleets/${selectedFleet?.metadata.name}`;
|
|
173
|
+
|
|
174
|
+
const res = await get<Device | Fleet>(resourceId);
|
|
175
|
+
const currentLabels = res?.metadata.labels;
|
|
176
|
+
const specPath = installToDevice ? '/' : '/spec/template/';
|
|
177
|
+
const catalogItemVersion = catalogItem.spec.versions.find((v) => v.version === values.version);
|
|
178
|
+
|
|
179
|
+
if (!catalogItemVersion) {
|
|
180
|
+
throw t('Failed to find requested version {{version}}', { version: values.version });
|
|
181
|
+
}
|
|
182
|
+
const currentApps = installToDevice
|
|
183
|
+
? (res as Device)?.spec?.applications
|
|
184
|
+
: (res as Fleet)?.spec.template.spec.applications;
|
|
185
|
+
const allPatches = getAppPatches({
|
|
186
|
+
appName: values.appName,
|
|
187
|
+
currentApps,
|
|
188
|
+
currentLabels,
|
|
189
|
+
catalogItem,
|
|
190
|
+
catalogItemVersion,
|
|
191
|
+
channel: values.channel,
|
|
192
|
+
formValues:
|
|
193
|
+
values.configureVia === 'editor' ? (load(values.editorContent) as Record<string, unknown>) : values.formValues,
|
|
194
|
+
specPath,
|
|
195
|
+
selectedAssets: values.configureVia === 'form' ? values.selectedAssets : [],
|
|
196
|
+
});
|
|
197
|
+
if (!allPatches.length) {
|
|
198
|
+
return;
|
|
199
|
+
}
|
|
200
|
+
await patch(resourceId, allPatches);
|
|
201
|
+
});
|
|
202
|
+
|
|
203
|
+
return (
|
|
204
|
+
<Formik<InstallAppFormik>
|
|
205
|
+
validationSchema={validationSchema}
|
|
206
|
+
initialValues={initialValues}
|
|
207
|
+
validateOnMount
|
|
208
|
+
onSubmit={async (values) => {
|
|
209
|
+
const success = await onSubmit(values);
|
|
210
|
+
if (success) {
|
|
211
|
+
setIsSuccessful(true);
|
|
212
|
+
}
|
|
213
|
+
}}
|
|
214
|
+
>
|
|
215
|
+
<InstallAppWizardContent
|
|
216
|
+
currentStep={currentStep}
|
|
217
|
+
setCurrentStep={setCurrentStep}
|
|
218
|
+
error={error}
|
|
219
|
+
schemaErrors={schemaErrors}
|
|
220
|
+
catalogItem={catalogItem}
|
|
221
|
+
isSuccessful={isSuccessful}
|
|
222
|
+
setError={setError}
|
|
223
|
+
/>
|
|
224
|
+
</Formik>
|
|
225
|
+
);
|
|
226
|
+
};
|
|
227
|
+
|
|
228
|
+
export default InstallAppWizard;
|
|
@@ -0,0 +1,199 @@
|
|
|
1
|
+
import { CatalogItem } from '@flightctl/types/alpha';
|
|
2
|
+
import { Wizard, WizardStep, WizardStepType } from '@patternfly/react-core';
|
|
3
|
+
import { Formik, useFormikContext } from 'formik';
|
|
4
|
+
import * as React from 'react';
|
|
5
|
+
import * as Yup from 'yup';
|
|
6
|
+
import { Device, Fleet } from '@flightctl/types';
|
|
7
|
+
|
|
8
|
+
import { useTranslation } from '../../../hooks/useTranslation';
|
|
9
|
+
import { useFetch } from '../../../hooks/useFetch';
|
|
10
|
+
import { getOsPatches } from '../utils';
|
|
11
|
+
import { getErrorMessage } from '../../../utils/error';
|
|
12
|
+
import { InstallOsFormik, reviewStepId, selectTargetStepId, specificationsStepId } from './types';
|
|
13
|
+
import SpecificationsStep, { isSpecsStepValid } from './steps/SpecificationsStep';
|
|
14
|
+
import SelectTargetStep, { isSelectTargetStepValid } from './steps/SelectTargetStep';
|
|
15
|
+
import ReviewStep from './steps/ReviewStep';
|
|
16
|
+
import LeaveFormConfirmation from '../../common/LeaveFormConfirmation';
|
|
17
|
+
import UpdateSuccessPage from './UpdateSuccessPage';
|
|
18
|
+
import FlightCtlWizardFooter, { FlightCtlWizardFooterProps } from '../../common/FlightCtlWizardFooter';
|
|
19
|
+
import { useAppContext } from '../../../hooks/useAppContext';
|
|
20
|
+
import { useNavigate } from '../../../hooks/useNavigate';
|
|
21
|
+
|
|
22
|
+
export const validateOsWizardStep: FlightCtlWizardFooterProps<InstallOsFormik>['validateStep'] = (
|
|
23
|
+
activeStepId,
|
|
24
|
+
errors,
|
|
25
|
+
) => {
|
|
26
|
+
if (activeStepId === specificationsStepId) return isSpecsStepValid(errors);
|
|
27
|
+
if (activeStepId === selectTargetStepId) return isSelectTargetStepValid(errors);
|
|
28
|
+
return true;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
type InstallOsWizardContentProps = {
|
|
32
|
+
currentStep: WizardStepType | undefined;
|
|
33
|
+
setCurrentStep: (step: WizardStepType) => void;
|
|
34
|
+
error: string | undefined;
|
|
35
|
+
catalogItem: CatalogItem;
|
|
36
|
+
isSuccessful: boolean;
|
|
37
|
+
setError: (err: string | undefined) => void;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
const InstallOsWizardContent = ({
|
|
41
|
+
currentStep,
|
|
42
|
+
setCurrentStep,
|
|
43
|
+
error,
|
|
44
|
+
catalogItem,
|
|
45
|
+
isSuccessful,
|
|
46
|
+
setError,
|
|
47
|
+
}: InstallOsWizardContentProps) => {
|
|
48
|
+
const { t } = useTranslation();
|
|
49
|
+
const { values, errors } = useFormikContext<InstallOsFormik>();
|
|
50
|
+
const showLeaveConfirmation = !(values.target === 'new-device' && currentStep?.id === selectTargetStepId);
|
|
51
|
+
|
|
52
|
+
return isSuccessful ? (
|
|
53
|
+
<UpdateSuccessPage />
|
|
54
|
+
) : (
|
|
55
|
+
<>
|
|
56
|
+
{showLeaveConfirmation && <LeaveFormConfirmation />}
|
|
57
|
+
<Wizard
|
|
58
|
+
footer={
|
|
59
|
+
<FlightCtlWizardFooter<InstallOsFormik>
|
|
60
|
+
firstStepId={specificationsStepId}
|
|
61
|
+
submitStepId={values.target === 'new-device' ? selectTargetStepId : reviewStepId}
|
|
62
|
+
validateStep={validateOsWizardStep}
|
|
63
|
+
saveButtonText={values.target === 'new-device' ? t('Close') : t('Deploy')}
|
|
64
|
+
/>
|
|
65
|
+
}
|
|
66
|
+
onStepChange={(_, step) => {
|
|
67
|
+
if (error) {
|
|
68
|
+
setError(undefined);
|
|
69
|
+
}
|
|
70
|
+
setCurrentStep(step);
|
|
71
|
+
}}
|
|
72
|
+
>
|
|
73
|
+
<WizardStep name={t('Specifications')} id={specificationsStepId}>
|
|
74
|
+
{(!currentStep || currentStep?.id === specificationsStepId) && (
|
|
75
|
+
<SpecificationsStep catalogItem={catalogItem} showNewDevice />
|
|
76
|
+
)}
|
|
77
|
+
</WizardStep>
|
|
78
|
+
<WizardStep name={t('Select target')} id={selectTargetStepId} isDisabled={!isSpecsStepValid(errors)}>
|
|
79
|
+
{currentStep?.id === selectTargetStepId && <SelectTargetStep catalogItem={catalogItem} />}
|
|
80
|
+
</WizardStep>
|
|
81
|
+
{values.target !== 'new-device' && (
|
|
82
|
+
<WizardStep
|
|
83
|
+
name={t('Review and deploy')}
|
|
84
|
+
id={reviewStepId}
|
|
85
|
+
isDisabled={!isSpecsStepValid(errors) || !isSelectTargetStepValid(errors)}
|
|
86
|
+
>
|
|
87
|
+
{currentStep?.id === reviewStepId && <ReviewStep error={error} catalogItem={catalogItem} />}
|
|
88
|
+
</WizardStep>
|
|
89
|
+
)}
|
|
90
|
+
</Wizard>
|
|
91
|
+
</>
|
|
92
|
+
);
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
type InstallOsWizardProps = {
|
|
96
|
+
catalogItem: CatalogItem;
|
|
97
|
+
};
|
|
98
|
+
|
|
99
|
+
const InstallOsWizard = ({ catalogItem }: InstallOsWizardProps) => {
|
|
100
|
+
const { t } = useTranslation();
|
|
101
|
+
const [error, setError] = React.useState<string>();
|
|
102
|
+
const [isSuccessful, setIsSuccessful] = React.useState(false);
|
|
103
|
+
const [currentStep, setCurrentStep] = React.useState<WizardStepType>();
|
|
104
|
+
const { patch, get } = useFetch();
|
|
105
|
+
const navigate = useNavigate();
|
|
106
|
+
|
|
107
|
+
const {
|
|
108
|
+
router: { useSearchParams },
|
|
109
|
+
} = useAppContext();
|
|
110
|
+
const [searchParams] = useSearchParams();
|
|
111
|
+
const channel = searchParams.get('channel') || '';
|
|
112
|
+
const version = searchParams.get('version') || '';
|
|
113
|
+
|
|
114
|
+
const validationSchema = Yup.lazy((values: InstallOsFormik) =>
|
|
115
|
+
Yup.object({
|
|
116
|
+
target: Yup.string().required(t('Target must be selected')),
|
|
117
|
+
device: values.target === 'device' ? Yup.object().required(t('Device must be selected')) : Yup.object(),
|
|
118
|
+
fleet: values.target === 'fleet' ? Yup.object().required(t('Fleet must be selected')) : Yup.object(),
|
|
119
|
+
channel: Yup.string().required(t('Channel must be selected')),
|
|
120
|
+
version: Yup.string().required(t('Version must be selected')),
|
|
121
|
+
}),
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
const initialValues = React.useMemo<InstallOsFormik>(
|
|
125
|
+
() => ({
|
|
126
|
+
version,
|
|
127
|
+
channel,
|
|
128
|
+
target: undefined,
|
|
129
|
+
fleet: undefined,
|
|
130
|
+
device: undefined,
|
|
131
|
+
deploymentTarget: undefined,
|
|
132
|
+
}),
|
|
133
|
+
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
134
|
+
[],
|
|
135
|
+
);
|
|
136
|
+
|
|
137
|
+
const onSubmit = async (values: InstallOsFormik) => {
|
|
138
|
+
setError(undefined);
|
|
139
|
+
if (values.target === 'new-device') {
|
|
140
|
+
navigate(-1);
|
|
141
|
+
return;
|
|
142
|
+
}
|
|
143
|
+
const selectedDevice = values.device;
|
|
144
|
+
const selectedFleet = values.fleet;
|
|
145
|
+
const installToDevice = values.target === 'device';
|
|
146
|
+
const resourceId = installToDevice
|
|
147
|
+
? `devices/${selectedDevice?.metadata.name}`
|
|
148
|
+
: `fleets/${selectedFleet?.metadata.name}`;
|
|
149
|
+
|
|
150
|
+
try {
|
|
151
|
+
const res = await get<Device | Fleet>(resourceId);
|
|
152
|
+
const catalogItemVersion = catalogItem.spec.versions.find((v) => v.version === values.version);
|
|
153
|
+
|
|
154
|
+
if (!catalogItemVersion || !values.channel) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
157
|
+
const currentOsImage = installToDevice
|
|
158
|
+
? (res as Device)?.spec?.os?.image
|
|
159
|
+
: (res as Fleet)?.spec.template.spec.os?.image;
|
|
160
|
+
const allPatches = getOsPatches({
|
|
161
|
+
currentOsImage,
|
|
162
|
+
currentLabels: res?.metadata.labels,
|
|
163
|
+
catalogItem,
|
|
164
|
+
catalogItemVersion,
|
|
165
|
+
channel: values.channel,
|
|
166
|
+
specPath: installToDevice ? '/' : '/spec/template/',
|
|
167
|
+
});
|
|
168
|
+
|
|
169
|
+
if (!allPatches.length) {
|
|
170
|
+
setIsSuccessful(true);
|
|
171
|
+
} else {
|
|
172
|
+
await patch(resourceId, allPatches);
|
|
173
|
+
setIsSuccessful(true);
|
|
174
|
+
}
|
|
175
|
+
} catch (e) {
|
|
176
|
+
setError(getErrorMessage(e));
|
|
177
|
+
}
|
|
178
|
+
};
|
|
179
|
+
|
|
180
|
+
return (
|
|
181
|
+
<Formik<InstallOsFormik>
|
|
182
|
+
validationSchema={validationSchema}
|
|
183
|
+
initialValues={initialValues}
|
|
184
|
+
validateOnMount
|
|
185
|
+
onSubmit={onSubmit}
|
|
186
|
+
>
|
|
187
|
+
<InstallOsWizardContent
|
|
188
|
+
catalogItem={catalogItem}
|
|
189
|
+
currentStep={currentStep}
|
|
190
|
+
error={error}
|
|
191
|
+
isSuccessful={isSuccessful}
|
|
192
|
+
setCurrentStep={setCurrentStep}
|
|
193
|
+
setError={setError}
|
|
194
|
+
/>
|
|
195
|
+
</Formik>
|
|
196
|
+
);
|
|
197
|
+
};
|
|
198
|
+
|
|
199
|
+
export default InstallOsWizard;
|