@cdmbase/wiki-browser 12.0.18-alpha.10
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/LICENSE +21 -0
- package/lib/components/Logo.d.ts +4 -0
- package/lib/components/Logo.d.ts.map +1 -0
- package/lib/components/Logo.js +16 -0
- package/lib/components/Logo.js.map +1 -0
- package/lib/components/help/SidebarSearch.d.ts +8 -0
- package/lib/components/help/SidebarSearch.d.ts.map +1 -0
- package/lib/components/help/SidebarSearch.js +111 -0
- package/lib/components/help/SidebarSearch.js.map +1 -0
- package/lib/components/help/index.d.ts +2 -0
- package/lib/components/help/index.d.ts.map +1 -0
- package/lib/components/landing/FeatureCard.d.ts +13 -0
- package/lib/components/landing/FeatureCard.d.ts.map +1 -0
- package/lib/components/landing/FeatureCard.js +85 -0
- package/lib/components/landing/FeatureCard.js.map +1 -0
- package/lib/components/landing/QuickLinkCard.d.ts +8 -0
- package/lib/components/landing/QuickLinkCard.d.ts.map +1 -0
- package/lib/components/landing/QuickLinkCard.js +26 -0
- package/lib/components/landing/QuickLinkCard.js.map +1 -0
- package/lib/components/landing/SearchInput.d.ts +10 -0
- package/lib/components/landing/SearchInput.d.ts.map +1 -0
- package/lib/components/landing/SearchInput.js +223 -0
- package/lib/components/landing/SearchInput.js.map +1 -0
- package/lib/components/landing/index.d.ts +4 -0
- package/lib/components/landing/index.d.ts.map +1 -0
- package/lib/components/welcome.d.ts +3 -0
- package/lib/components/welcome.d.ts.map +1 -0
- package/lib/compute.d.ts +4 -0
- package/lib/compute.d.ts.map +1 -0
- package/lib/compute.js +96 -0
- package/lib/compute.js.map +1 -0
- package/lib/config/env-config.d.ts +4 -0
- package/lib/config/env-config.d.ts.map +1 -0
- package/lib/config/env-config.js +7 -0
- package/lib/config/env-config.js.map +1 -0
- package/lib/docs.config.d.ts +48 -0
- package/lib/docs.config.d.ts.map +1 -0
- package/lib/index.d.ts +4 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +2 -0
- package/lib/index.js.map +1 -0
- package/lib/loaders/search.d.ts +1 -0
- package/lib/loaders/search.d.ts.map +1 -0
- package/lib/module.d.ts +4 -0
- package/lib/module.d.ts.map +1 -0
- package/lib/module.js +11 -0
- package/lib/module.js.map +1 -0
- package/lib/pages/ArticlePage/ArticlePage.d.ts +4 -0
- package/lib/pages/ArticlePage/ArticlePage.d.ts.map +1 -0
- package/lib/pages/ArticlePage/ArticlePage.js +222 -0
- package/lib/pages/ArticlePage/ArticlePage.js.map +1 -0
- package/lib/pages/ArticlePage/index.d.ts +3 -0
- package/lib/pages/ArticlePage/index.d.ts.map +1 -0
- package/lib/pages/ArticlePage/index.js +3 -0
- package/lib/pages/ArticlePage/index.js.map +1 -0
- package/lib/pages/CategoryCollection/CategoryCollection.d.ts +4 -0
- package/lib/pages/CategoryCollection/CategoryCollection.d.ts.map +1 -0
- package/lib/pages/CategoryCollection/CategoryCollection.js +103 -0
- package/lib/pages/CategoryCollection/CategoryCollection.js.map +1 -0
- package/lib/pages/CategoryCollection/index.d.ts +3 -0
- package/lib/pages/CategoryCollection/index.d.ts.map +1 -0
- package/lib/pages/CategoryCollection/index.js +3 -0
- package/lib/pages/CategoryCollection/index.js.map +1 -0
- package/lib/pages/Help/HelpIndex.d.ts +4 -0
- package/lib/pages/Help/HelpIndex.d.ts.map +1 -0
- package/lib/pages/Help/HelpIndex.js +44 -0
- package/lib/pages/Help/HelpIndex.js.map +1 -0
- package/lib/pages/Help/index.d.ts +4 -0
- package/lib/pages/Help/index.d.ts.map +1 -0
- package/lib/pages/Help/index.js +226 -0
- package/lib/pages/Help/index.js.map +1 -0
- package/lib/pages/Landing/index.d.ts +3 -0
- package/lib/pages/Landing/index.d.ts.map +1 -0
- package/lib/pages/Landing/index.js +281 -0
- package/lib/pages/Landing/index.js.map +1 -0
- package/lib/routes.json +2533 -0
- package/lib/seo.d.ts +22 -0
- package/lib/seo.d.ts.map +1 -0
- package/lib/slot-fill/FooterFill.d.ts +3 -0
- package/lib/slot-fill/FooterFill.d.ts.map +1 -0
- package/lib/slot-fill/FooterFill.js +18 -0
- package/lib/slot-fill/FooterFill.js.map +1 -0
- package/lib/slot-fill/LogoFill.d.ts +5 -0
- package/lib/slot-fill/LogoFill.d.ts.map +1 -0
- package/lib/slot-fill/LogoFill.js +74 -0
- package/lib/slot-fill/LogoFill.js.map +1 -0
- package/lib/slot-fill/consts.d.ts +5 -0
- package/lib/slot-fill/consts.d.ts.map +1 -0
- package/lib/slot-fill/consts.js +1 -0
- package/lib/slot-fill/consts.js.map +1 -0
- package/lib/slot-fill/index.d.ts +4 -0
- package/lib/slot-fill/index.d.ts.map +1 -0
- package/lib/templates/assets/images/add-link-frontend.png +0 -0
- package/lib/templates/assets/images/add-package-backend.png +0 -0
- package/lib/templates/assets/images/add-to-backend-module.png +0 -0
- package/lib/templates/assets/images/add-upload-client-frontend.png +0 -0
- package/lib/templates/assets/images/additional-parameters.png +0 -0
- package/lib/templates/assets/images/aeh-implementation.png +0 -0
- package/lib/templates/assets/images/aeh-usage.png +0 -0
- package/lib/templates/assets/images/apollo-client/recommendation_cache_mgmt.png +0 -0
- package/lib/templates/assets/images/app-deploy-new-version/jenkins1.PNG +0 -0
- package/lib/templates/assets/images/app-deploy-new-version/jenkins2.PNG +0 -0
- package/lib/templates/assets/images/auth-wrapper-code.png +0 -0
- package/lib/templates/assets/images/cdebase.png +0 -0
- package/lib/templates/assets/images/cdm-locales-directory.png +0 -0
- package/lib/templates/assets/images/client-settings.png +0 -0
- package/lib/templates/assets/images/codegen_file_update.png +0 -0
- package/lib/templates/assets/images/configuration.png +0 -0
- package/lib/templates/assets/images/copy-plugin.png +0 -0
- package/lib/templates/assets/images/docusaurus.png +0 -0
- package/lib/templates/assets/images/error-link.png +0 -0
- package/lib/templates/assets/images/error-sample.png +0 -0
- package/lib/templates/assets/images/extension copy.png +0 -0
- package/lib/templates/assets/images/extension.png +0 -0
- package/lib/templates/assets/images/graphql/graphql-folder-backend.png +0 -0
- package/lib/templates/assets/images/graphql/graphql-folder-with-gql.png +0 -0
- package/lib/templates/assets/images/i18n-config.png +0 -0
- package/lib/templates/assets/images/image.png +0 -0
- package/lib/templates/assets/images/logo.svg +10 -0
- package/lib/templates/assets/images/logo1.svg +1 -0
- package/lib/templates/assets/images/modify-upload-false-server.png +0 -0
- package/lib/templates/assets/images/navigation-auth-enabled.png +0 -0
- package/lib/templates/assets/images/org-dashboard-navigation.png +0 -0
- package/lib/templates/assets/images/org-navigation.png +0 -0
- package/lib/templates/assets/images/preferences_graphql_type.png +0 -0
- package/lib/templates/assets/images/provider.png +0 -0
- package/lib/templates/assets/images/route-config.png +0 -0
- package/lib/templates/assets/images/service-accounts.png +0 -0
- package/lib/templates/assets/images/source-code/source-code-environments.png +0 -0
- package/lib/templates/assets/images/source-code/source-code-organization.png +0 -0
- package/lib/templates/assets/images/spin-clone-develop-deployment/jenkins-changes.png +0 -0
- package/lib/templates/assets/images/spin-clone-develop-deployment/lerna-changes.png +0 -0
- package/lib/templates/assets/images/spin-clone-develop-deployment/root-package-json-changes.png +0 -0
- package/lib/templates/assets/images/spin-clone-develop-deployment/values-dev-changes.png +0 -0
- package/lib/templates/assets/images/sso-mappers.png +0 -0
- package/lib/templates/assets/images/sso-picture-mapper.png +0 -0
- package/lib/templates/assets/images/sso-settings.png +0 -0
- package/lib/templates/assets/images/timesheet_apollo_cache.png +0 -0
- package/lib/templates/assets/images/timesheet_query.png +0 -0
- package/lib/templates/assets/images/tutorial/docsVersionDropdown.png +0 -0
- package/lib/templates/assets/images/tutorial/localeDropdown.png +0 -0
- package/lib/templates/assets/images/unauthenticated.png +0 -0
- package/lib/templates/assets/images/undraw_docusaurus_mountain.svg +170 -0
- package/lib/templates/assets/images/undraw_docusaurus_react.svg +169 -0
- package/lib/templates/assets/images/undraw_docusaurus_tree.svg +1 -0
- package/lib/templates/assets/images/vite-plugin-config.png +0 -0
- package/lib/templates/content/docs/Generators/Project/generate-fullproject.md +12 -0
- package/lib/templates/content/docs/LLM/Logger.llm.md +194 -0
- package/lib/templates/content/docs/LLM/backend-proxies-services-llm.md +2687 -0
- package/lib/templates/content/docs/LLM/backend-service-llm.md +3384 -0
- package/lib/templates/content/docs/LLM/db_migration_llm.md +954 -0
- package/lib/templates/content/docs/LLM/frontend/REMIX-15.3-upgrade-llm.md +1245 -0
- package/lib/templates/content/docs/LLM/inngest/INNGEST_FUNCTION_DEVELOPMENT_GUIDE_LLM.md +1241 -0
- package/lib/templates/content/docs/LLM/inngest/INNGEST_NAMESPACE_LLM.md +384 -0
- package/lib/templates/content/docs/LLM/llm_workflow_namespace.md +384 -0
- package/lib/templates/content/docs/LLM/organization-components-form-llm.md +1395 -0
- package/lib/templates/content/docs/LLM/page-component-llm.md +173 -0
- package/lib/templates/content/docs/LLM/preferences-settings-llm.md +2781 -0
- package/lib/templates/content/docs/LLM/tailwind-css-llm.md +502 -0
- package/lib/templates/content/docs/UI/SchemaBasedUI.md +334 -0
- package/lib/templates/content/docs/UI/SlotFillComponent.md +334 -0
- package/lib/templates/content/docs/adminide-modules/account/auth0-login.md +31 -0
- package/lib/templates/content/docs/adminide-modules/account/index.md +14 -0
- package/lib/templates/content/docs/adminide-modules/account/keycloak-remix-setup.md +86 -0
- package/lib/templates/content/docs/adminide-modules/account/remix-auth-setup.md +79 -0
- package/lib/templates/content/docs/adminide-modules/account/various-auth-qatest.md +157 -0
- package/lib/templates/content/docs/adminide-modules/api-builders/graphql.md +906 -0
- package/lib/templates/content/docs/adminide-modules/billing/payments/index.md +14 -0
- package/lib/templates/content/docs/adminide-modules/billing/payments/stripe/index.md +14 -0
- package/lib/templates/content/docs/adminide-modules/billing/payments/stripe/settingup-stripe-locally.md +25 -0
- package/lib/templates/content/docs/adminide-modules/billing/tier-config.md +293 -0
- package/lib/templates/content/docs/adminide-modules/connectors/Connector.md +207 -0
- package/lib/templates/content/docs/adminide-modules/file-upload/index.md +16 -0
- package/lib/templates/content/docs/adminide-modules/file-upload/setup.md +435 -0
- package/lib/templates/content/docs/adminide-modules/file-upload/upload-file-using-signed-url.md +161 -0
- package/lib/templates/content/docs/adminide-modules/preferences/AddAdditionalPermissions.md +151 -0
- package/lib/templates/content/docs/adminide-modules/preferences/Configuration.md +241 -0
- package/lib/templates/content/docs/adminide-modules/preferences/Policy-Configuration.md +61 -0
- package/lib/templates/content/docs/adminide-modules/preferences/UI-components/ResourceSettingsLoader.md +319 -0
- package/lib/templates/content/docs/adminide-modules/preferences/contribute_scope_target.md +280 -0
- package/lib/templates/content/docs/adminide-modules/preferences/generate-urii.md +94 -0
- package/lib/templates/content/docs/adminide-modules/preferences/index.md +28 -0
- package/lib/templates/content/docs/adminide-modules/preferences/machine-configuration.md +157 -0
- package/lib/templates/content/docs/adminide-modules/preferences/pageSettings/generateCdecodeUri.md +1289 -0
- package/lib/templates/content/docs/adminide-modules/preferences/pageSettings/migratingFromUseSettings.md +215 -0
- package/lib/templates/content/docs/adminide-modules/preferences/permissions/Roles-Permissions.md +72 -0
- package/lib/templates/content/docs/adminide-modules/preferences/permissions/settingUserPermissions.md +139 -0
- package/lib/templates/content/docs/adminide-modules/preferences/preference-dependency.md +138 -0
- package/lib/templates/content/docs/adminide-modules/preferences/route-based-configuration.md +41 -0
- package/lib/templates/content/docs/adminide-modules/preferences/schema-configuration.md +71 -0
- package/lib/templates/content/docs/adminide-modules/preferences/supported.md +24 -0
- package/lib/templates/content/docs/adminide-modules/preferences/useSettingsLoader.md +248 -0
- package/lib/templates/content/docs/adminide-modules/project-tools/auth-providers.md +1317 -0
- package/lib/templates/content/docs/adminide-modules/project-tools/keycloak-guide.md +543 -0
- package/lib/templates/content/docs/adminide-modules/project-tools/tenant-management/tenant-based-authentication.md +846 -0
- package/lib/templates/content/docs/adminide-modules/project-tools/tenant-management/tenant-management.md +708 -0
- package/lib/templates/content/docs/adminide-modules/project-tools/tenant-management/tenants.md +1117 -0
- package/lib/templates/content/docs/chrome-extension/index.md +14 -0
- package/lib/templates/content/docs/chrome-extension/setup.md +30 -0
- package/lib/templates/content/docs/contributing/adding-package.md +23 -0
- package/lib/templates/content/docs/contributing/adding_new_modules.md +99 -0
- package/lib/templates/content/docs/contributing/architecture-updates.md +19 -0
- package/lib/templates/content/docs/contributing/avoid-using-promises-ui.md +116 -0
- package/lib/templates/content/docs/contributing/coding-guidelines.md +111 -0
- package/lib/templates/content/docs/contributing/do-and-dont.md +42 -0
- package/lib/templates/content/docs/contributing/faq.md +22 -0
- package/lib/templates/content/docs/contributing/folder-setup/browser.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/config.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/containers-server.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/core.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/graphql.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/index.md +30 -0
- package/lib/templates/content/docs/contributing/folder-setup/module.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/server.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/services.md +12 -0
- package/lib/templates/content/docs/contributing/folder-setup/store.md +12 -0
- package/lib/templates/content/docs/contributing/frontend-coding.md +30 -0
- package/lib/templates/content/docs/contributing/git-subtree-sharing.md +73 -0
- package/lib/templates/content/docs/contributing/graphql-subscriptions.md +69 -0
- package/lib/templates/content/docs/contributing/how-to-contribute.md +30 -0
- package/lib/templates/content/docs/contributing/how_to_check_pure_esm.md +29 -0
- package/lib/templates/content/docs/contributing/index.md +60 -0
- package/lib/templates/content/docs/contributing/installation-issues.md +23 -0
- package/lib/templates/content/docs/contributing/keyboard-shortcut.md +131 -0
- package/lib/templates/content/docs/contributing/language/locale-support.md +12 -0
- package/lib/templates/content/docs/contributing/lerna-build-tools.md +516 -0
- package/lib/templates/content/docs/contributing/lerna-yarn-workspaces.md +95 -0
- package/lib/templates/content/docs/contributing/lint-and-formatter.md +20 -0
- package/lib/templates/content/docs/contributing/mobile-setup.md +16 -0
- package/lib/templates/content/docs/contributing/project-setup.md +233 -0
- package/lib/templates/content/docs/contributing/react/index.md +14 -0
- package/lib/templates/content/docs/contributing/react/lazy-component.md +70 -0
- package/lib/templates/content/docs/contributing/run-various-options.md +124 -0
- package/lib/templates/content/docs/contributing/schema-first-graphql-types.md +37 -0
- package/lib/templates/content/docs/contributing/source-code-organization.md +57 -0
- package/lib/templates/content/docs/contributing/staging-docker.md +88 -0
- package/lib/templates/content/docs/contributing/third-party/apollo-client-v3-tutorials.md +28 -0
- package/lib/templates/content/docs/contributing/third-party/index.md +18 -0
- package/lib/templates/content/docs/contributing/typescript-contribution.md +16 -0
- package/lib/templates/content/docs/devops/app-deploy-new-version.md +30 -0
- package/lib/templates/content/docs/devops/index.md +14 -0
- package/lib/templates/content/docs/devops/mobile-jenkins-build.md +40 -0
- package/lib/templates/content/docs/devops/versioning-the-project.md +128 -0
- package/lib/templates/content/docs/error-handler/application-error-handler.md +40 -0
- package/lib/templates/content/docs/error-handler/error-handling.md +26 -0
- package/lib/templates/content/docs/error-handler/index.md +16 -0
- package/lib/templates/content/docs/error-handler/logging-errors.md +14 -0
- package/lib/templates/content/docs/feature-api/copy-operation.md +427 -0
- package/lib/templates/content/docs/feature-api/feature-browser/assets.md +46 -0
- package/lib/templates/content/docs/feature-api/feature-browser/auth-permissions.md +12 -0
- package/lib/templates/content/docs/feature-api/feature-browser/feature.md +131 -0
- package/lib/templates/content/docs/feature-api/feature-browser/index.md +22 -0
- package/lib/templates/content/docs/feature-api/feature-browser/routes-menu.md +110 -0
- package/lib/templates/content/docs/feature-api/feature-browser/routing-convention.md +124 -0
- package/lib/templates/content/docs/feature-api/feature-browser/routing.md +338 -0
- package/lib/templates/content/docs/feature-api/feature-mobile/auth-permissions.md +20 -0
- package/lib/templates/content/docs/feature-api/feature-mobile/feature.md +130 -0
- package/lib/templates/content/docs/feature-api/feature-mobile/index.md +18 -0
- package/lib/templates/content/docs/feature-api/feature-mobile/navigation.md +187 -0
- package/lib/templates/content/docs/feature-api/feature-server/Scheduling.md +44 -0
- package/lib/templates/content/docs/feature-api/feature-server/dataloader.md +320 -0
- package/lib/templates/content/docs/feature-api/feature-server/dependency-injection.md +81 -0
- package/lib/templates/content/docs/feature-api/feature-server/feature.md +65 -0
- package/lib/templates/content/docs/feature-api/feature-server/generic-dataloader.md +135 -0
- package/lib/templates/content/docs/feature-api/feature-server/index.md +40 -0
- package/lib/templates/content/docs/feature-api/feature-server/migration.md +127 -0
- package/lib/templates/content/docs/feature-api/feature-server/mongo-model.md +72 -0
- package/lib/templates/content/docs/feature-api/feature-server/permissions.md +12 -0
- package/lib/templates/content/docs/feature-api/feature-server/policies.md +57 -0
- package/lib/templates/content/docs/feature-api/feature-server/preferences.md +57 -0
- package/lib/templates/content/docs/feature-api/feature-server/repositories.md +114 -0
- package/lib/templates/content/docs/feature-api/feature-server/resolvers.md +126 -0
- package/lib/templates/content/docs/feature-api/feature-server/rules.md +132 -0
- package/lib/templates/content/docs/feature-api/feature-server/schema.md +12 -0
- package/lib/templates/content/docs/feature-api/feature-server/services.md +102 -0
- package/lib/templates/content/docs/feature-api/feature-server/setup-resource-crud.md +359 -0
- package/lib/templates/content/docs/feature-api/index.md +18 -0
- package/lib/templates/content/docs/graphql/apolloClient-mutation.md +94 -0
- package/lib/templates/content/docs/graphql/index.md +14 -0
- package/lib/templates/content/docs/graphql/scalars.md +15 -0
- package/lib/templates/content/docs/help/index.md +14 -0
- package/lib/templates/content/docs/help/intro.md +16 -0
- package/lib/templates/content/docs/intl/ant-design-menu-translation.md +74 -0
- package/lib/templates/content/docs/intl/intl-namespace.md +129 -0
- package/lib/templates/content/docs/intl/vite-plugin-intl.md +87 -0
- package/lib/templates/content/docs/intl/webpack-plugin-intl.md +12 -0
- package/lib/templates/content/docs/intro.md +18 -0
- package/lib/templates/content/docs/knowledge/basic-fullstack.md +238 -0
- package/lib/templates/content/docs/mailing/index.md +14 -0
- package/lib/templates/content/docs/mailing/mailing-template.md +148 -0
- package/lib/templates/content/docs/mobile/App-navigation-generator.md +410 -0
- package/lib/templates/content/docs/mobile/MobileTestCases.md +264 -0
- package/lib/templates/content/docs/mobile/eas-profile-build.md +107 -0
- package/lib/templates/content/docs/mobile/expo-push-notification-setup.md +216 -0
- package/lib/templates/content/docs/mobile/index.md +14 -0
- package/lib/templates/content/docs/mobile/routes.md +83 -0
- package/lib/templates/content/docs/organization/adding-account-context.md +116 -0
- package/lib/templates/content/docs/organization/adding-org-mobile-navigation.md +22 -0
- package/lib/templates/content/docs/organization/adding-org-web-navigation.md +12 -0
- package/lib/templates/content/docs/organization/index.md +20 -0
- package/lib/templates/content/docs/organization/initialization.md +20 -0
- package/lib/templates/content/docs/organization/organization-resource-vs-resource.md +112 -0
- package/lib/templates/content/docs/remix/configuration/component-structure-best-practices.md +152 -0
- package/lib/templates/content/docs/remix/configuration/configurations.md +218 -0
- package/lib/templates/content/docs/remix/configuration/css-import-and-stylesheets.md +142 -0
- package/lib/templates/content/docs/remix/configuration/dont-subcomponent-network.md +166 -0
- package/lib/templates/content/docs/remix/configuration/generated-data-loaders.md +122 -0
- package/lib/templates/content/docs/remix/configuration/generated-resource-loaders.md +257 -0
- package/lib/templates/content/docs/remix/configuration/query-params-generator.md +216 -0
- package/lib/templates/content/docs/remix/configuration/routes-extra-icons.md +103 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-advanced.md +86 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-auth.md +113 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-best-practices.md +55 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-fields.md +79 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-graphql.md +79 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-index.md +112 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-loaders.md +165 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-middleware.md +196 -0
- package/lib/templates/content/docs/remix/configuration/routes-json-overview.md +53 -0
- package/lib/templates/content/docs/remix/data-loaders.md +43 -0
- package/lib/templates/content/docs/remix/devtools/remix-devtools.md +58 -0
- package/lib/templates/content/docs/remix/examples/changes-using-servercode.md +79 -0
- package/lib/templates/content/docs/remix/extra-icons.md +62 -0
- package/lib/templates/content/docs/remix/extra-links.md +65 -0
- package/lib/templates/content/docs/remix/generated-data-loaders.md +114 -0
- package/lib/templates/content/docs/remix/queryParamsGenerator.md +89 -0
- package/lib/templates/content/docs/remix/resources.md +16 -0
- package/lib/templates/content/docs/remix/styles.md +132 -0
- package/lib/templates/content/docs/remix/wiki.md +12 -0
- package/lib/templates/content/docs/security/auth-wrapper/auth-wrapper.md +24 -0
- package/lib/templates/content/docs/security/index.md +18 -0
- package/lib/templates/content/docs/security/secure-button-mobilenative.md +88 -0
- package/lib/templates/content/docs/security/secure-button-web.md +89 -0
- package/lib/templates/content/docs/server-side/account-customization.md +82 -0
- package/lib/templates/content/docs/server-side/apollo/caching.md +164 -0
- package/lib/templates/content/docs/server-side/backend-architecture/FINAL-DECISION.md +209 -0
- package/lib/templates/content/docs/server-side/backend-architecture/TRUE-FINAL-ARCHITECTURE.md +603 -0
- package/lib/templates/content/docs/server-side/backend-architecture/index1.md +0 -0
- package/lib/templates/content/docs/server-side/backend-coding.md +839 -0
- package/lib/templates/content/docs/server-side/e2b/manageing-template.md +197 -0
- package/lib/templates/content/docs/server-side/index.md +14 -0
- package/lib/templates/content/docs/server-side/inngest-functions-module.md +309 -0
- package/lib/templates/content/docs/server-side/listen-stripe-events.md +43 -0
- package/lib/templates/content/docs/server-side/slug-service.md +323 -0
- package/lib/templates/content/docs/tests/index.md +18 -0
- package/lib/templates/content/docs/tests/jest-test-debug-vscode.md +40 -0
- package/lib/templates/content/docs/tests/known-errors.md +116 -0
- package/lib/templates/content/docs/tests/service-test-template.md +118 -0
- package/lib/templates/content/docs/tests/test-setup.md +93 -0
- package/lib/templates/content/docs/xstate.md +23 -0
- package/lib/types.d.ts +37 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/utils/docsNavigation.d.ts +9 -0
- package/lib/utils/docsNavigation.d.ts.map +1 -0
- package/lib/utils/docsNavigation.js +37 -0
- package/lib/utils/docsNavigation.js.map +1 -0
- package/lib/utils/helpCenterUtils.d.ts +26 -0
- package/lib/utils/helpCenterUtils.d.ts.map +1 -0
- package/lib/utils/index.d.ts +3 -0
- package/lib/utils/index.d.ts.map +1 -0
- package/lib/utils/index.js +3 -0
- package/lib/utils/index.js.map +1 -0
- package/lib/utils/markdownLoader.d.ts +36 -0
- package/lib/utils/markdownLoader.d.ts.map +1 -0
- package/lib/utils/markdownLoader.js +2242 -0
- package/lib/utils/markdownLoader.js.map +1 -0
- package/package.json +71 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
---
|
|
2
|
+
meta:
|
|
3
|
+
title: Routes and Menus
|
|
4
|
+
description: Routes and Menus
|
|
5
|
+
date: '2023-06-02T00:00:00'
|
|
6
|
+
updated: '2024-06-02T00:00:00'
|
|
7
|
+
excerpt: Routes and Menus...
|
|
8
|
+
headers:
|
|
9
|
+
Cache-Control: no-cache
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Routes and Menu
|
|
13
|
+
|
|
14
|
+
Both `routes` and `menu` are depend on the `routeConfig` provided to `Feature`.
|
|
15
|
+
|
|
16
|
+
Menu have extends `Feature's routeConfiguration` such as name, icon, locale, hideInMenu, hideChildrenInMenu and other configuration, so that it is easier to generate menus in one place.
|
|
17
|
+
|
|
18
|
+
Check how [routing](./routing.md) works before checking the menu.
|
|
19
|
+
|
|
20
|
+
### Menu
|
|
21
|
+
|
|
22
|
+
The data format it as follows.
|
|
23
|
+
|
|
24
|
+
```js
|
|
25
|
+
export interface IMenuDataItem {
|
|
26
|
+
/**
|
|
27
|
+
* @name submenu
|
|
28
|
+
*/
|
|
29
|
+
children?: IMenuDataItem[];
|
|
30
|
+
/**
|
|
31
|
+
* @name Hide child nodes in the menu
|
|
32
|
+
*/
|
|
33
|
+
hideChildrenInMenu?: boolean;
|
|
34
|
+
/**
|
|
35
|
+
* @name hideSelf and children in menu
|
|
36
|
+
*/
|
|
37
|
+
hideInMenu?: boolean;
|
|
38
|
+
/**
|
|
39
|
+
* @name Icon of the menu
|
|
40
|
+
*/
|
|
41
|
+
icon?: React.ReactNode;
|
|
42
|
+
/**
|
|
43
|
+
* @name Internationalization key for custom menus
|
|
44
|
+
*/
|
|
45
|
+
locale?: string | false;
|
|
46
|
+
/**
|
|
47
|
+
* @name The name of the menu
|
|
48
|
+
*/
|
|
49
|
+
name?: string;
|
|
50
|
+
/**
|
|
51
|
+
* @name is used to calibrate the selected value, default is path
|
|
52
|
+
*/
|
|
53
|
+
key?: string;
|
|
54
|
+
/**
|
|
55
|
+
* @name disable menu option
|
|
56
|
+
*/
|
|
57
|
+
disabled?: boolean;
|
|
58
|
+
/**
|
|
59
|
+
* @name path
|
|
60
|
+
*/
|
|
61
|
+
path?: string;
|
|
62
|
+
/**
|
|
63
|
+
* @name custom parent node
|
|
64
|
+
* @description When this node is selected, the node of parentKeys is also selected
|
|
65
|
+
*/
|
|
66
|
+
parentKeys?: string[];
|
|
67
|
+
/**
|
|
68
|
+
* @name hides itself and elevates child nodes to its level
|
|
69
|
+
*/
|
|
70
|
+
flatMenu?: boolean;
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* @name position of the Menu
|
|
74
|
+
* @enum `IMenuPosition`
|
|
75
|
+
*/
|
|
76
|
+
position?: IMenuPosition;
|
|
77
|
+
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* @name permissions to determine whether to render menu or not
|
|
81
|
+
*/
|
|
82
|
+
authority?: string[];
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* @name priority of the menu to display in the order. Lower values shows first.
|
|
86
|
+
*/
|
|
87
|
+
priority?: number;
|
|
88
|
+
|
|
89
|
+
[key: string]: any;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
export enum IMenuPosition {
|
|
93
|
+
LOGO = 'LOGO',
|
|
94
|
+
UPPER = 'UPPER',
|
|
95
|
+
MIDDLE = 'MIDDLE',
|
|
96
|
+
LOWER = 'LOWER',
|
|
97
|
+
BOTTOM = 'BOTTOM',
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
A layout can be designed to render the menus based on it.
|
|
103
|
+
|
|
104
|
+
### Position of menu
|
|
105
|
+
|
|
106
|
+
Menu position is provided with `position`. The layout is when rendering the menu able to seperate the menu based on the position where it customized to render.
|
|
107
|
+
|
|
108
|
+
### Customize the content of the menu
|
|
109
|
+
|
|
110
|
+
With `menuItemRedner`, `subMenuItemRender`, `title`, `logo`, `menuHeaderRender` you can customize the menu style very easily. If you are really not satisfied, you can use `menuRender` to fully customize it.
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
---
|
|
2
|
+
meta:
|
|
3
|
+
title: Routing Convention
|
|
4
|
+
description: Routing Convention
|
|
5
|
+
date: '2023-06-02T00:00:00'
|
|
6
|
+
updated: '2024-06-02T00:00:00'
|
|
7
|
+
excerpt: Routing Convention...
|
|
8
|
+
headers:
|
|
9
|
+
Cache-Control: no-cache
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Component layout
|
|
13
|
+
|
|
14
|
+
`compute.tsx` is used for saving all the routes related configuration. And it is get imported in `module.tsx`.
|
|
15
|
+
|
|
16
|
+
```
|
|
17
|
+
├── src
|
|
18
|
+
│ ├── assets
|
|
19
|
+
│ │ └── images
|
|
20
|
+
│ │ ├── bank_account_helper.png
|
|
21
|
+
│ │ ├── paypal_logo.png
|
|
22
|
+
│ │ └── stripe_logo.png
|
|
23
|
+
│ ├── contianers
|
|
24
|
+
│ │ ├── Billing
|
|
25
|
+
│ │ │ ├── Billing.tsx
|
|
26
|
+
│ ├── compute.tsx
|
|
27
|
+
│ ├── constants
|
|
28
|
+
│ ├── index.tsx
|
|
29
|
+
│ ├── module.tsx
|
|
30
|
+
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
compute.tsx
|
|
34
|
+
|
|
35
|
+
```js
|
|
36
|
+
export const basePath = '/o/:orgName/usermenu';
|
|
37
|
+
export const modulePath = `${basePath}/billing`;
|
|
38
|
+
const billingPageStore = [
|
|
39
|
+
// this would define the parent menu position of the billing menus
|
|
40
|
+
{
|
|
41
|
+
key: 'user-menu',
|
|
42
|
+
name: 'User Menu',
|
|
43
|
+
tab: 'User Menu',
|
|
44
|
+
path: basePath,
|
|
45
|
+
position: IMenuPosition.BOTTOM,
|
|
46
|
+
exact: false,
|
|
47
|
+
},
|
|
48
|
+
// this would define the submenu's parent of Billing
|
|
49
|
+
{
|
|
50
|
+
key: 'billing',
|
|
51
|
+
name: 'Billing',
|
|
52
|
+
tab: 'Billing',
|
|
53
|
+
path: modulePath,
|
|
54
|
+
auth: true,
|
|
55
|
+
exact: false,
|
|
56
|
+
authority: [IPreDefineBillingPermissions.viewSubscriptions],
|
|
57
|
+
component: React.lazy(() => import('./components/billing-tab')),
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
name: 'Home',
|
|
61
|
+
key: 'home',
|
|
62
|
+
tab: 'Home',
|
|
63
|
+
auth: true,
|
|
64
|
+
path: `${modulePath}/home`,
|
|
65
|
+
component: Home,
|
|
66
|
+
authority: [IPreDefineBillingPermissions.viewSubscriptions],
|
|
67
|
+
},
|
|
68
|
+
];
|
|
69
|
+
|
|
70
|
+
// add the `key` that you want to use in `routeConfig`
|
|
71
|
+
const selectedRoutes = ['billing', 'home', 'user-menu'];
|
|
72
|
+
const filteredBillingRoutes: IMappedData[] = getFilteredRoutes(billingPageStore, selectedRoutes);
|
|
73
|
+
|
|
74
|
+
export const filteredRoutes: IMappedData[] = [...filteredBillingRoutes];
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
module.tsx
|
|
78
|
+
|
|
79
|
+
```js
|
|
80
|
+
import { Feature } from '@common-stack/client-react';
|
|
81
|
+
import { filteredRoutes } from './compute';
|
|
82
|
+
|
|
83
|
+
export const repository = new Feature({
|
|
84
|
+
routeConfig: filteredRoutes,
|
|
85
|
+
...
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
### Routing Security
|
|
91
|
+
|
|
92
|
+
If the routes need a login user, set `auth: true`.
|
|
93
|
+
|
|
94
|
+
example
|
|
95
|
+
|
|
96
|
+
```js
|
|
97
|
+
{
|
|
98
|
+
name: 'Home',
|
|
99
|
+
key: 'home',
|
|
100
|
+
tab: 'Home',
|
|
101
|
+
auth: true,
|
|
102
|
+
...
|
|
103
|
+
},
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Under the hood it uses `authWrapper` set in the `Feature.authWrapper`.
|
|
107
|
+
|
|
108
|
+
### Routing permissions
|
|
109
|
+
|
|
110
|
+
If permssions are configured in the backend, you can restrict the URL based on the permission by setting `authority`.
|
|
111
|
+
|
|
112
|
+
example
|
|
113
|
+
|
|
114
|
+
```js
|
|
115
|
+
|
|
116
|
+
{
|
|
117
|
+
key: 'billing',
|
|
118
|
+
name: 'Billing',
|
|
119
|
+
...
|
|
120
|
+
authority: [IPreDefineBillingPermissions.viewSubscriptions],
|
|
121
|
+
component: React.lazy(() => import('./components/billing-tab')),
|
|
122
|
+
},
|
|
123
|
+
|
|
124
|
+
```
|
|
@@ -0,0 +1,338 @@
|
|
|
1
|
+
---
|
|
2
|
+
meta:
|
|
3
|
+
title: Routing
|
|
4
|
+
description: Routing
|
|
5
|
+
date: '2023-06-02T00:00:00'
|
|
6
|
+
updated: '2024-06-02T00:00:00'
|
|
7
|
+
excerpt: Routing...
|
|
8
|
+
headers:
|
|
9
|
+
Cache-Control: no-cache
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Routing
|
|
13
|
+
|
|
14
|
+
In Feature, application are single-page applications, and the page address jumps are done on the browser side, and the server will not be re-requested to html, and html is only loaded once when the application is initialized. All pages are compossed of different components. The switching of pages is actually the switching of different components. You only need to associate different routing paths with corresponding components in the confiugration.
|
|
15
|
+
|
|
16
|
+
## Configuring Routing
|
|
17
|
+
|
|
18
|
+
Configure through `routeConfig` in the configuration file, the format is an array of routing information.
|
|
19
|
+
|
|
20
|
+
Example:
|
|
21
|
+
|
|
22
|
+
```js
|
|
23
|
+
const genRoutes = [
|
|
24
|
+
{
|
|
25
|
+
['/ghost']: { component: Component },
|
|
26
|
+
['/pepper']: { component: Component, exact: false },
|
|
27
|
+
['/pepper/ginger']: { component: Component, exact: true },
|
|
28
|
+
['/pepper/:type']: { component: Component, exact: false },
|
|
29
|
+
['/pepper/:type/scoville']: { component: Component, exact: false },
|
|
30
|
+
},
|
|
31
|
+
];
|
|
32
|
+
|
|
33
|
+
const connector = new Feature({ routeConfig: genRoutes });
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### path
|
|
37
|
+
|
|
38
|
+
- Type: `string`
|
|
39
|
+
|
|
40
|
+
`path` Only two placeholder configurations are supported, the first is `:` in the, and the second is in the form of `*` wildcards, which can only appear at the end of the routing string.
|
|
41
|
+
|
|
42
|
+
### component
|
|
43
|
+
|
|
44
|
+
- Type: `string`
|
|
45
|
+
|
|
46
|
+
Configure the React component.
|
|
47
|
+
|
|
48
|
+
### sub routes
|
|
49
|
+
|
|
50
|
+
Configure sub-routes by based on the path. In order to have a sub route the parent path should have `exact: false`.
|
|
51
|
+
|
|
52
|
+
Example:
|
|
53
|
+
|
|
54
|
+
If you need a subroute to `/ginger` under `pepper`, the parent route `/pepper` should have `exact: false` and the sub-route should be prepend with parent path like `/peper/ginger`
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
const genRoutes = [
|
|
58
|
+
{
|
|
59
|
+
['/pepper']: { component: Component, exact: false },
|
|
60
|
+
['/pepper/ginger']: { component: Component, exact: true },
|
|
61
|
+
];
|
|
62
|
+
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
This will result into
|
|
66
|
+
|
|
67
|
+
```js
|
|
68
|
+
const connectorRoutes = connector.getConfiguredRoutes();
|
|
69
|
+
/** connectorRoutes = [
|
|
70
|
+
{
|
|
71
|
+
path: '/pepper',
|
|
72
|
+
component: Component,
|
|
73
|
+
exact: false,
|
|
74
|
+
routes: [
|
|
75
|
+
{
|
|
76
|
+
path: '/pepper/ginger',
|
|
77
|
+
component: Component,
|
|
78
|
+
exact: true,
|
|
79
|
+
},
|
|
80
|
+
],
|
|
81
|
+
},
|
|
82
|
+
]
|
|
83
|
+
**/
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
### redirect
|
|
87
|
+
|
|
88
|
+
- Type `string`
|
|
89
|
+
Configure routing jumps.
|
|
90
|
+
|
|
91
|
+
for example:
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
const genRoutes = [
|
|
95
|
+
{
|
|
96
|
+
['/']: { redirect: '/list' },
|
|
97
|
+
['/list']: { component: Component, exact: true },
|
|
98
|
+
];
|
|
99
|
+
|
|
100
|
+
const connector = new Feature({ routeConfig: genRoutes });
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
### wrappers
|
|
104
|
+
|
|
105
|
+
- Type `string[]`
|
|
106
|
+
wrappers is HOC.
|
|
107
|
+
|
|
108
|
+
For example, you can run validation check for a specific route.
|
|
109
|
+
|
|
110
|
+
```js
|
|
111
|
+
const genRoutes = [
|
|
112
|
+
{
|
|
113
|
+
['/user']: {
|
|
114
|
+
component: 'user',
|
|
115
|
+
wrappers: [ (props) => validationComp ]
|
|
116
|
+
},
|
|
117
|
+
['/list']: { component: Component, exact: true },
|
|
118
|
+
];
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### title
|
|
123
|
+
|
|
124
|
+
- Type: `string`
|
|
125
|
+
Configure the title of the route.
|
|
126
|
+
|
|
127
|
+
## Route component parameters
|
|
128
|
+
|
|
129
|
+
Feature uses `react-router@5` as a routing component. You can use all the routing hooks supported by `react-router@5`.
|
|
130
|
+
|
|
131
|
+
Since `routeConfig` is a wrapper of `react-router@5`, it supprots all [Route Config](https://v5.reactrouter.com/web/example/route-config)
|
|
132
|
+
|
|
133
|
+
Read react-router docs
|
|
134
|
+
|
|
135
|
+
- [exact](https://v5.reactrouter.com/web/api/Route/exact-bool)
|
|
136
|
+
- [strict](https://v5.reactrouter.com/web/api/Route/strict-bool)
|
|
137
|
+
- [location](https://v5.reactrouter.com/web/api/Route/location-object)
|
|
138
|
+
- [query params](https://v5.reactrouter.com/web/example/query-parameters)
|
|
139
|
+
|
|
140
|
+
As well all of react-router@5 APIs are supproted.
|
|
141
|
+
|
|
142
|
+
### Routing Dynamic Parameters
|
|
143
|
+
|
|
144
|
+
```js
|
|
145
|
+
const genRoutes = [
|
|
146
|
+
{
|
|
147
|
+
['/pepper']: { component: Component, exact: false },
|
|
148
|
+
['/pepper/:type']: { component: Component, exact: false },
|
|
149
|
+
['/pepper/:type/scoville']: { component: ScovilleComponent, exact: true },
|
|
150
|
+
},
|
|
151
|
+
];
|
|
152
|
+
|
|
153
|
+
const connector = new Feature({ routeConfig: genRoutes });
|
|
154
|
+
```
|
|
155
|
+
|
|
156
|
+
Component
|
|
157
|
+
|
|
158
|
+
```js
|
|
159
|
+
import { useParams } from 'react-router';
|
|
160
|
+
|
|
161
|
+
const ScovilleComponent = () => {
|
|
162
|
+
const params = useParams();
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
for route `/pepper/lime/scoville`
|
|
166
|
+
//params
|
|
167
|
+
{
|
|
168
|
+
"type": "lime"
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
```
|
|
172
|
+
|
|
173
|
+
### generatePath
|
|
174
|
+
|
|
175
|
+
Sometimes in a component we need to redirect. The generatePath function can be used to generate URLs to the routes.
|
|
176
|
+
|
|
177
|
+
```js
|
|
178
|
+
import { generatePath, useHistory } from 'react-router';
|
|
179
|
+
|
|
180
|
+
const ROUTES = {
|
|
181
|
+
dashboard: '/o/:orgName/dashboard',
|
|
182
|
+
};
|
|
183
|
+
|
|
184
|
+
const onOrgSelection = (orgName: string) => {
|
|
185
|
+
const route = generatePath(ROUTES.dashboard, { orgName: 'test' });
|
|
186
|
+
// Will return `/o/test/dashboard`
|
|
187
|
+
history.push(route);
|
|
188
|
+
};
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
## A realistic app may have Routes configured as below.
|
|
192
|
+
|
|
193
|
+
Example:
|
|
194
|
+
|
|
195
|
+
```js
|
|
196
|
+
const orgRoutes = {
|
|
197
|
+
['/']: { exact: true, component: MyComponent },
|
|
198
|
+
['/login']: { exact: true, component: MyComponent },
|
|
199
|
+
['/callback']: { exact: true, component: MyComponent },
|
|
200
|
+
['/:orgName/usermenu/logout']: { exact: true, component: MyComponent },
|
|
201
|
+
['/:orgName/usermenu/profile']: { exact: true, component: MyComponent },
|
|
202
|
+
['/reset-password']: { exact: true, component: MyComponent },
|
|
203
|
+
['/:orgName/usermenu/account/']: { exact: false, component: MyComponent },
|
|
204
|
+
['/:orgName/usermenu/account']: { exact: false, component: MyComponent },
|
|
205
|
+
['/:orgName/usermenu/account-settings']: { exact: true, component: MyComponent },
|
|
206
|
+
['/:orgName/teams/view/:teamName']: { exact: false, component: MyComponent },
|
|
207
|
+
['/:orgName/teams']: { exact: true, component: MyComponent },
|
|
208
|
+
['/:orgName/invitation']: { exact: true, component: MyComponent },
|
|
209
|
+
['/:orgName/members']: { exact: false, component: MyComponent },
|
|
210
|
+
['/:orgName/dashboard']: { exact: true, component: MyComponent },
|
|
211
|
+
['/:orgName/registries']: { exact: true, component: MyComponent },
|
|
212
|
+
['/:orgName']: { exact: false, component: MyComponent },
|
|
213
|
+
};
|
|
214
|
+
```
|
|
215
|
+
|
|
216
|
+
Under the hood it will generates to below `Object` before passing it to the `react-router-config` function.
|
|
217
|
+
|
|
218
|
+
```js
|
|
219
|
+
const reactRouterConfig = [
|
|
220
|
+
{
|
|
221
|
+
_pathPrefix: '',
|
|
222
|
+
component: [Function],
|
|
223
|
+
exact: true,
|
|
224
|
+
path: '/authenticate-popup',
|
|
225
|
+
position: 'MIDDLE',
|
|
226
|
+
},
|
|
227
|
+
{
|
|
228
|
+
_pathPrefix: '',
|
|
229
|
+
component: [Function],
|
|
230
|
+
exact: true,
|
|
231
|
+
path: '/callback',
|
|
232
|
+
position: 'MIDDLE',
|
|
233
|
+
},
|
|
234
|
+
{
|
|
235
|
+
_pathPrefix: '',
|
|
236
|
+
component: [Function],
|
|
237
|
+
exact: true,
|
|
238
|
+
path: '/reset-password',
|
|
239
|
+
position: 'MIDDLE',
|
|
240
|
+
},
|
|
241
|
+
{
|
|
242
|
+
_pathPrefix: '',
|
|
243
|
+
component: [Function],
|
|
244
|
+
exact: false,
|
|
245
|
+
name: 'rootSlash',
|
|
246
|
+
path: '/',
|
|
247
|
+
position: 'MIDDLE',
|
|
248
|
+
routes: [
|
|
249
|
+
{
|
|
250
|
+
_pathPrefix: '/',
|
|
251
|
+
component: [Function],
|
|
252
|
+
exact: false,
|
|
253
|
+
path: '/',
|
|
254
|
+
position: 'MIDDLE',
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
_pathPrefix: '/',
|
|
258
|
+
component: [Function],
|
|
259
|
+
exact: true,
|
|
260
|
+
path: '/:orgName/dashboard',
|
|
261
|
+
position: 'MIDDLE',
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
_pathPrefix: '/',
|
|
265
|
+
component: [Function],
|
|
266
|
+
exact: true,
|
|
267
|
+
path: '/:orgName/invitation',
|
|
268
|
+
position: 'MIDDLE',
|
|
269
|
+
},
|
|
270
|
+
{
|
|
271
|
+
_pathPrefix: '/',
|
|
272
|
+
component: [Function],
|
|
273
|
+
exact: false,
|
|
274
|
+
path: '/:orgName/members',
|
|
275
|
+
position: 'MIDDLE',
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
_pathPrefix: '/',
|
|
279
|
+
component: [Function],
|
|
280
|
+
exact: true,
|
|
281
|
+
path: '/:orgName/registries',
|
|
282
|
+
position: 'MIDDLE',
|
|
283
|
+
},
|
|
284
|
+
{
|
|
285
|
+
_pathPrefix: '/',
|
|
286
|
+
component: [Function],
|
|
287
|
+
exact: true,
|
|
288
|
+
path: '/:orgName/teams',
|
|
289
|
+
position: 'MIDDLE',
|
|
290
|
+
},
|
|
291
|
+
{
|
|
292
|
+
_pathPrefix: '/',
|
|
293
|
+
component: [Function],
|
|
294
|
+
exact: false,
|
|
295
|
+
path: '/:orgName/teams/view/:teamName',
|
|
296
|
+
position: 'MIDDLE',
|
|
297
|
+
},
|
|
298
|
+
{
|
|
299
|
+
_pathPrefix: '/',
|
|
300
|
+
component: [Function],
|
|
301
|
+
exact: false,
|
|
302
|
+
path: '/:orgName/usermenu/account',
|
|
303
|
+
position: 'MIDDLE',
|
|
304
|
+
routes: [
|
|
305
|
+
{
|
|
306
|
+
_pathPrefix: '/',
|
|
307
|
+
component: [Function],
|
|
308
|
+
exact: false,
|
|
309
|
+
path: '/:orgName/usermenu/account/',
|
|
310
|
+
position: 'MIDDLE',
|
|
311
|
+
},
|
|
312
|
+
],
|
|
313
|
+
},
|
|
314
|
+
{
|
|
315
|
+
_pathPrefix: '/',
|
|
316
|
+
component: [Function],
|
|
317
|
+
exact: true,
|
|
318
|
+
path: '/:orgName/usermenu/account-settings',
|
|
319
|
+
position: 'MIDDLE',
|
|
320
|
+
},
|
|
321
|
+
{
|
|
322
|
+
_pathPrefix: '/',
|
|
323
|
+
component: [Function],
|
|
324
|
+
exact: true,
|
|
325
|
+
path: '/:orgName/usermenu/logout',
|
|
326
|
+
position: 'MIDDLE',
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
_pathPrefix: '/',
|
|
330
|
+
component: [Function],
|
|
331
|
+
exact: true,
|
|
332
|
+
path: '/:orgName/usermenu/profile',
|
|
333
|
+
position: 'MIDDLE',
|
|
334
|
+
},
|
|
335
|
+
],
|
|
336
|
+
},
|
|
337
|
+
];
|
|
338
|
+
```
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
---
|
|
2
|
+
meta:
|
|
3
|
+
title: Auth and Permissions
|
|
4
|
+
description: Auth and Permissions
|
|
5
|
+
date: '2023-06-02T00:00:00'
|
|
6
|
+
updated: '2024-06-02T00:00:00'
|
|
7
|
+
excerpt: Auth and Permissions...
|
|
8
|
+
headers:
|
|
9
|
+
Cache-Control: no-cache
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Auth and Permissions
|
|
13
|
+
|
|
14
|
+
We have recently introduced the support of authentication wrapper to react navigation wrapper. The auth wrapper takes the two arguments One is the Component it self and other is the Unauthenticated Component, it validates if user is authenticated, if yes then it renders the component otherwise it checks if Unauthenticated component is passed then it renders that else it redirect to login
|
|
15
|
+
|
|
16
|
+
<img width="744" alt="Screenshot 2022-11-28 at 1 39 51 AM" src="https://user-images.githubusercontent.com/30002668/204158578-873ac3b9-792b-4ef8-a130-8c87228af06d.png"/>
|
|
17
|
+
|
|
18
|
+
In order to setup auth permission to route object you need to set property `auth: true`, you can also pass unauthenticated component as shown below
|
|
19
|
+
|
|
20
|
+
<img width="941" alt="Screenshot 2022-11-28 at 2 10 32 AM" src="https://user-images.githubusercontent.com/30002668/204159871-49c03aa1-6ff3-4c5e-b6da-01bd307a20b3.png"/>
|