@looker/api-explorer 0.9.55 → 0.9.57
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/CHANGELOG.md +580 -640
- package/CODE_OF_CONDUCT.md +10 -10
- package/dist/bundle.js +3 -0
- package/dist/bundle.js.LICENSE.txt +115 -0
- package/dist/bundle.js.map +1 -0
- package/e2e/MethodScene.spec.ts +23 -23
- package/e2e/diffScene.spec.ts +115 -115
- package/e2e/e2e.spec.ts +134 -134
- package/e2e/helpers.ts +11 -11
- package/jest-puppeteer.config.js +2 -2
- package/jest.config.js +4 -7
- package/lib/ApiExplorer.js +5 -3
- package/lib/ApiExplorer.js.map +1 -1
- package/lib/App.js +3 -1
- package/lib/App.js.map +1 -1
- package/lib/StandaloneApiExplorer.js +2 -2
- package/lib/StandaloneApiExplorer.js.map +1 -1
- package/lib/components/Banner/Banner.js +2 -2
- package/lib/components/Banner/Banner.js.map +1 -1
- package/lib/components/Banner/index.js.map +1 -1
- package/lib/components/DocActivityType/DocActivityType.js.map +1 -1
- package/lib/components/DocActivityType/index.js.map +1 -1
- package/lib/components/DocCode/DocCode.js.map +1 -1
- package/lib/components/DocCode/index.js.map +1 -1
- package/lib/components/DocMarkdown/DocMarkdown.js.map +1 -1
- package/lib/components/DocMarkdown/index.js.map +1 -1
- package/lib/components/DocMarkdown/utils.js.map +1 -1
- package/lib/components/DocMethodSummary/DocMethodSummary.js.map +1 -1
- package/lib/components/DocMethodSummary/DocSummaryStatus.js.map +1 -1
- package/lib/components/DocMethodSummary/index.js.map +1 -1
- package/lib/components/DocMethodSummary/utils.d.ts +2 -2
- package/lib/components/DocMethodSummary/utils.js +1 -1
- package/lib/components/DocMethodSummary/utils.js.map +1 -1
- package/lib/components/DocPseudo/DocParam.js.map +1 -1
- package/lib/components/DocPseudo/DocParams.js +2 -2
- package/lib/components/DocPseudo/DocParams.js.map +1 -1
- package/lib/components/DocPseudo/DocPrimaryResponse.js.map +1 -1
- package/lib/components/DocPseudo/DocPseudo.js.map +1 -1
- package/lib/components/DocPseudo/index.js.map +1 -1
- package/lib/components/DocRateLimited/DocRateLimited.js.map +1 -1
- package/lib/components/DocRateLimited/index.js.map +1 -1
- package/lib/components/DocReferences/DocReferences.js.map +1 -1
- package/lib/components/DocReferences/index.js.map +1 -1
- package/lib/components/DocReferences/utils.d.ts +2 -2
- package/lib/components/DocReferences/utils.js.map +1 -1
- package/lib/components/DocSDKs/DocDeclarations.js.map +1 -1
- package/lib/components/DocSDKs/DocSDKs.d.ts +1 -1
- package/lib/components/DocSDKs/DocSDKs.js +2 -2
- package/lib/components/DocSDKs/DocSDKs.js.map +1 -1
- package/lib/components/DocSDKs/index.js.map +1 -1
- package/lib/components/DocSDKs/utils.js.map +1 -1
- package/lib/components/DocSchema/DocSchema.js.map +1 -1
- package/lib/components/DocSchema/index.js.map +1 -1
- package/lib/components/DocSdkUsage/DocSdkExampleCell.js.map +1 -1
- package/lib/components/DocSdkUsage/DocSdkUsage.js +2 -2
- package/lib/components/DocSdkUsage/DocSdkUsage.js.map +1 -1
- package/lib/components/DocSdkUsage/index.js.map +1 -1
- package/lib/components/DocSdkUsage/utils.js +3 -6
- package/lib/components/DocSdkUsage/utils.js.map +1 -1
- package/lib/components/DocSource/DocSource.js +0 -1
- package/lib/components/DocSource/DocSource.js.map +1 -1
- package/lib/components/DocSource/index.js.map +1 -1
- package/lib/components/DocStatus/DocStatus.js.map +1 -1
- package/lib/components/DocStatus/index.js.map +1 -1
- package/lib/components/DocTitle/DocTitle.js.map +1 -1
- package/lib/components/DocTitle/index.js.map +1 -1
- package/lib/components/DocTypeSummary/DocTypeSummary.js.map +1 -1
- package/lib/components/DocTypeSummary/index.js.map +1 -1
- package/lib/components/ErrorBoundary/ErrorBoundary.d.ts +1 -1
- package/lib/components/ErrorBoundary/ErrorBoundary.js +2 -2
- package/lib/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/lib/components/ErrorBoundary/components/SomethingWentWrong/SomethingWentWrong.js.map +1 -1
- package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js +1 -2
- package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js.map +1 -1
- package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/index.js.map +1 -1
- package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/index.js.map +1 -1
- package/lib/components/ErrorBoundary/components/SomethingWentWrong/index.js.map +1 -1
- package/lib/components/ErrorBoundary/index.js.map +1 -1
- package/lib/components/ExploreType/ExploreProperty.d.ts +1 -1
- package/lib/components/ExploreType/ExploreProperty.js.map +1 -1
- package/lib/components/ExploreType/ExploreType.d.ts +1 -1
- package/lib/components/ExploreType/ExploreType.js.map +1 -1
- package/lib/components/ExploreType/exploreUtils.js +1 -2
- package/lib/components/ExploreType/exploreUtils.js.map +1 -1
- package/lib/components/ExploreType/index.js.map +1 -1
- package/lib/components/Header/Header.js +3 -6
- package/lib/components/Header/Header.js.map +1 -1
- package/lib/components/Header/index.js.map +1 -1
- package/lib/components/Link/Link.js +2 -3
- package/lib/components/Link/Link.js.map +1 -1
- package/lib/components/Link/index.js.map +1 -1
- package/lib/components/SelectorContainer/ApiSpecSelector.js.map +1 -1
- package/lib/components/SelectorContainer/SdkLanguageSelector.js +2 -2
- package/lib/components/SelectorContainer/SdkLanguageSelector.js.map +1 -1
- package/lib/components/SelectorContainer/SelectorContainer.js +1 -2
- package/lib/components/SelectorContainer/SelectorContainer.js.map +1 -1
- package/lib/components/SelectorContainer/index.js.map +1 -1
- package/lib/components/SelectorContainer/utils.js.map +1 -1
- package/lib/components/SideNav/SearchMessage.js.map +1 -1
- package/lib/components/SideNav/SideNav.js +2 -11
- package/lib/components/SideNav/SideNav.js.map +1 -1
- package/lib/components/SideNav/SideNavMethodTags.d.ts +2 -2
- package/lib/components/SideNav/SideNavMethodTags.js +2 -3
- package/lib/components/SideNav/SideNavMethodTags.js.map +1 -1
- package/lib/components/SideNav/SideNavMethods.d.ts +2 -2
- package/lib/components/SideNav/SideNavMethods.js +3 -4
- package/lib/components/SideNav/SideNavMethods.js.map +1 -1
- package/lib/components/SideNav/SideNavTypeTags.d.ts +2 -2
- package/lib/components/SideNav/SideNavTypeTags.js +2 -3
- package/lib/components/SideNav/SideNavTypeTags.js.map +1 -1
- package/lib/components/SideNav/SideNavTypes.d.ts +2 -2
- package/lib/components/SideNav/SideNavTypes.js +4 -5
- package/lib/components/SideNav/SideNavTypes.js.map +1 -1
- package/lib/components/SideNav/index.js.map +1 -1
- package/lib/components/SideNav/searchUtils.js.map +1 -1
- package/lib/components/common/Loader.js.map +1 -1
- package/lib/components/common/common.js +3 -4
- package/lib/components/common/common.js.map +1 -1
- package/lib/components/common/index.js.map +1 -1
- package/lib/components/index.js.map +1 -1
- package/lib/custom.d.js.map +1 -1
- package/lib/esm/ApiExplorer.js +7 -5
- package/lib/esm/ApiExplorer.js.map +1 -1
- package/lib/esm/App.js +3 -1
- package/lib/esm/App.js.map +1 -1
- package/lib/esm/StandaloneApiExplorer.js +2 -2
- package/lib/esm/StandaloneApiExplorer.js.map +1 -1
- package/lib/esm/components/Banner/Banner.js +1 -1
- package/lib/esm/components/Banner/Banner.js.map +1 -1
- package/lib/esm/components/Banner/index.js.map +1 -1
- package/lib/esm/components/DocActivityType/DocActivityType.js +1 -1
- package/lib/esm/components/DocActivityType/DocActivityType.js.map +1 -1
- package/lib/esm/components/DocActivityType/index.js.map +1 -1
- package/lib/esm/components/DocCode/DocCode.js.map +1 -1
- package/lib/esm/components/DocCode/index.js.map +1 -1
- package/lib/esm/components/DocMarkdown/DocMarkdown.js.map +1 -1
- package/lib/esm/components/DocMarkdown/index.js.map +1 -1
- package/lib/esm/components/DocMarkdown/utils.js.map +1 -1
- package/lib/esm/components/DocMethodSummary/DocMethodSummary.js.map +1 -1
- package/lib/esm/components/DocMethodSummary/DocSummaryStatus.js.map +1 -1
- package/lib/esm/components/DocMethodSummary/index.js.map +1 -1
- package/lib/esm/components/DocMethodSummary/utils.js +1 -1
- package/lib/esm/components/DocMethodSummary/utils.js.map +1 -1
- package/lib/esm/components/DocPseudo/DocParam.js.map +1 -1
- package/lib/esm/components/DocPseudo/DocParams.js.map +1 -1
- package/lib/esm/components/DocPseudo/DocPrimaryResponse.js.map +1 -1
- package/lib/esm/components/DocPseudo/DocPseudo.js.map +1 -1
- package/lib/esm/components/DocPseudo/index.js.map +1 -1
- package/lib/esm/components/DocRateLimited/DocRateLimited.js.map +1 -1
- package/lib/esm/components/DocRateLimited/index.js.map +1 -1
- package/lib/esm/components/DocReferences/DocReferences.js.map +1 -1
- package/lib/esm/components/DocReferences/index.js.map +1 -1
- package/lib/esm/components/DocReferences/utils.js.map +1 -1
- package/lib/esm/components/DocSDKs/DocDeclarations.js.map +1 -1
- package/lib/esm/components/DocSDKs/DocSDKs.js +1 -1
- package/lib/esm/components/DocSDKs/DocSDKs.js.map +1 -1
- package/lib/esm/components/DocSDKs/index.js.map +1 -1
- package/lib/esm/components/DocSDKs/utils.js.map +1 -1
- package/lib/esm/components/DocSchema/DocSchema.js.map +1 -1
- package/lib/esm/components/DocSchema/index.js.map +1 -1
- package/lib/esm/components/DocSdkUsage/DocSdkExampleCell.js.map +1 -1
- package/lib/esm/components/DocSdkUsage/DocSdkUsage.js +4 -4
- package/lib/esm/components/DocSdkUsage/DocSdkUsage.js.map +1 -1
- package/lib/esm/components/DocSdkUsage/index.js.map +1 -1
- package/lib/esm/components/DocSdkUsage/utils.js.map +1 -1
- package/lib/esm/components/DocSource/DocSource.js +0 -1
- package/lib/esm/components/DocSource/DocSource.js.map +1 -1
- package/lib/esm/components/DocSource/index.js.map +1 -1
- package/lib/esm/components/DocStatus/DocStatus.js.map +1 -1
- package/lib/esm/components/DocStatus/index.js.map +1 -1
- package/lib/esm/components/DocTitle/DocTitle.js.map +1 -1
- package/lib/esm/components/DocTitle/index.js.map +1 -1
- package/lib/esm/components/DocTypeSummary/DocTypeSummary.js.map +1 -1
- package/lib/esm/components/DocTypeSummary/index.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/SomethingWentWrong.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/index.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/components/index.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/index.js.map +1 -1
- package/lib/esm/components/ErrorBoundary/index.js.map +1 -1
- package/lib/esm/components/ExploreType/ExploreProperty.js +2 -2
- package/lib/esm/components/ExploreType/ExploreProperty.js.map +1 -1
- package/lib/esm/components/ExploreType/ExploreType.js.map +1 -1
- package/lib/esm/components/ExploreType/exploreUtils.js.map +1 -1
- package/lib/esm/components/ExploreType/index.js.map +1 -1
- package/lib/esm/components/Header/Header.js +1 -1
- package/lib/esm/components/Header/Header.js.map +1 -1
- package/lib/esm/components/Header/index.js.map +1 -1
- package/lib/esm/components/Link/Link.js +1 -1
- package/lib/esm/components/Link/Link.js.map +1 -1
- package/lib/esm/components/Link/index.js.map +1 -1
- package/lib/esm/components/SelectorContainer/ApiSpecSelector.js.map +1 -1
- package/lib/esm/components/SelectorContainer/SdkLanguageSelector.js.map +1 -1
- package/lib/esm/components/SelectorContainer/SelectorContainer.js +1 -1
- package/lib/esm/components/SelectorContainer/SelectorContainer.js.map +1 -1
- package/lib/esm/components/SelectorContainer/index.js.map +1 -1
- package/lib/esm/components/SelectorContainer/utils.js +1 -1
- package/lib/esm/components/SelectorContainer/utils.js.map +1 -1
- package/lib/esm/components/SideNav/SearchMessage.js +1 -1
- package/lib/esm/components/SideNav/SearchMessage.js.map +1 -1
- package/lib/esm/components/SideNav/SideNav.js +3 -12
- package/lib/esm/components/SideNav/SideNav.js.map +1 -1
- package/lib/esm/components/SideNav/SideNavMethodTags.js +1 -1
- package/lib/esm/components/SideNav/SideNavMethodTags.js.map +1 -1
- package/lib/esm/components/SideNav/SideNavMethods.js +1 -1
- package/lib/esm/components/SideNav/SideNavMethods.js.map +1 -1
- package/lib/esm/components/SideNav/SideNavTypeTags.js +1 -1
- package/lib/esm/components/SideNav/SideNavTypeTags.js.map +1 -1
- package/lib/esm/components/SideNav/SideNavTypes.js +2 -2
- package/lib/esm/components/SideNav/SideNavTypes.js.map +1 -1
- package/lib/esm/components/SideNav/index.js.map +1 -1
- package/lib/esm/components/SideNav/searchUtils.js +1 -1
- package/lib/esm/components/SideNav/searchUtils.js.map +1 -1
- package/lib/esm/components/common/Loader.js.map +1 -1
- package/lib/esm/components/common/common.js.map +1 -1
- package/lib/esm/components/common/index.js.map +1 -1
- package/lib/esm/components/index.js.map +1 -1
- package/lib/esm/index.js.map +1 -1
- package/lib/esm/routes/AppRouter.js.map +1 -1
- package/lib/esm/routes/index.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DiffScene.js +1 -1
- package/lib/esm/scenes/DiffScene/DiffScene.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/DiffBanner.js +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/DiffBanner.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/DiffItem.js +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/DiffItem.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/DiffLegend.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/DocDiff.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/docDiffUtils.js +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/docDiffUtils.js.map +1 -1
- package/lib/esm/scenes/DiffScene/DocDiff/index.js.map +1 -1
- package/lib/esm/scenes/DiffScene/diffUtils.js.map +1 -1
- package/lib/esm/scenes/DiffScene/index.js.map +1 -1
- package/lib/esm/scenes/ErrorDetailScene/ErrorDetailScene.js +2 -1
- package/lib/esm/scenes/ErrorDetailScene/ErrorDetailScene.js.map +1 -1
- package/lib/esm/scenes/ErrorDetailScene/index.js.map +1 -1
- package/lib/esm/scenes/HomeScene/HomeScene.js.map +1 -1
- package/lib/esm/scenes/HomeScene/index.js.map +1 -1
- package/lib/esm/scenes/MethodScene/MethodScene.js +3 -3
- package/lib/esm/scenes/MethodScene/MethodScene.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/DocOperation.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/DocRequestBody.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/DocResponses/DocResponseTypes.js +2 -2
- package/lib/esm/scenes/MethodScene/components/DocResponses/DocResponseTypes.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/DocResponses/DocResponses.js +2 -2
- package/lib/esm/scenes/MethodScene/components/DocResponses/DocResponses.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/DocResponses/index.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/DocResponses/utils.js.map +1 -1
- package/lib/esm/scenes/MethodScene/components/index.js.map +1 -1
- package/lib/esm/scenes/MethodScene/index.js.map +1 -1
- package/lib/esm/scenes/MethodTagScene/MethodTagScene.js +2 -2
- package/lib/esm/scenes/MethodTagScene/MethodTagScene.js.map +1 -1
- package/lib/esm/scenes/MethodTagScene/index.js.map +1 -1
- package/lib/esm/scenes/MethodTagScene/utils.js.map +1 -1
- package/lib/esm/scenes/TypeScene/TypeScene.js +3 -3
- package/lib/esm/scenes/TypeScene/TypeScene.js.map +1 -1
- package/lib/esm/scenes/TypeScene/index.js.map +1 -1
- package/lib/esm/scenes/TypeTagScene/TypeTagScene.js +1 -1
- package/lib/esm/scenes/TypeTagScene/TypeTagScene.js.map +1 -1
- package/lib/esm/scenes/TypeTagScene/index.js.map +1 -1
- package/lib/esm/scenes/TypeTagScene/utils.js.map +1 -1
- package/lib/esm/scenes/index.js.map +1 -1
- package/lib/esm/scenes/utils/hooks/index.js.map +1 -1
- package/lib/esm/scenes/utils/hooks/tagStoreSync.js.map +1 -1
- package/lib/esm/scenes/utils/index.js.map +1 -1
- package/lib/esm/state/index.js.map +1 -1
- package/lib/esm/state/lodes/index.js.map +1 -1
- package/lib/esm/state/lodes/sagas.js.map +1 -1
- package/lib/esm/state/lodes/selectors.js.map +1 -1
- package/lib/esm/state/lodes/slice.js.map +1 -1
- package/lib/esm/state/settings/index.js.map +1 -1
- package/lib/esm/state/settings/sagas.js +6 -6
- package/lib/esm/state/settings/sagas.js.map +1 -1
- package/lib/esm/state/settings/selectors.js.map +1 -1
- package/lib/esm/state/settings/slice.js +4 -4
- package/lib/esm/state/settings/slice.js.map +1 -1
- package/lib/esm/state/specs/index.js.map +1 -1
- package/lib/esm/state/specs/sagas.js +1 -1
- package/lib/esm/state/specs/sagas.js.map +1 -1
- package/lib/esm/state/specs/selectors.js.map +1 -1
- package/lib/esm/state/specs/slice.js.map +1 -1
- package/lib/esm/state/store.js +5 -5
- package/lib/esm/state/store.js.map +1 -1
- package/lib/esm/test-data/declarations.js.map +1 -1
- package/lib/esm/test-data/examples.js.map +1 -1
- package/lib/esm/test-data/index.js.map +1 -1
- package/lib/esm/test-data/sdkLanguages.js.map +1 -1
- package/lib/esm/test-data/specs.js +4 -4
- package/lib/esm/test-data/specs.js.map +1 -1
- package/lib/esm/test-utils/index.js.map +1 -1
- package/lib/esm/test-utils/lodes.js.map +1 -1
- package/lib/esm/test-utils/redux.js +5 -5
- package/lib/esm/test-utils/redux.js.map +1 -1
- package/lib/esm/test-utils/router.js.map +1 -1
- package/lib/esm/utils/adaptorUtils.js.map +1 -1
- package/lib/esm/utils/apixAdaptor.js +1 -1
- package/lib/esm/utils/apixAdaptor.js.map +1 -1
- package/lib/esm/utils/highlight.js.map +1 -1
- package/lib/esm/utils/hooks/globalStoreSync.js.map +1 -1
- package/lib/esm/utils/hooks/index.js.map +1 -1
- package/lib/esm/utils/hooks/navigation.js +2 -1
- package/lib/esm/utils/hooks/navigation.js.map +1 -1
- package/lib/esm/utils/hooks/useQuery.js.map +1 -1
- package/lib/esm/utils/index.js.map +1 -1
- package/lib/esm/utils/lodeUtils.js.map +1 -1
- package/lib/esm/utils/path.js +1 -1
- package/lib/esm/utils/path.js.map +1 -1
- package/lib/esm/utils/sdkLanguage.js +4 -4
- package/lib/esm/utils/sdkLanguage.js.map +1 -1
- package/lib/esm/utils/useWindowSize.js.map +1 -1
- package/lib/index.js.map +1 -1
- package/lib/routes/AppRouter.js.map +1 -1
- package/lib/routes/index.js.map +1 -1
- package/lib/scenes/DiffScene/DiffScene.js +2 -2
- package/lib/scenes/DiffScene/DiffScene.js.map +1 -1
- package/lib/scenes/DiffScene/DocDiff/DiffBanner.js.map +1 -1
- package/lib/scenes/DiffScene/DocDiff/DiffItem.js +2 -2
- package/lib/scenes/DiffScene/DocDiff/DiffItem.js.map +1 -1
- package/lib/scenes/DiffScene/DocDiff/DiffLegend.js.map +1 -1
- package/lib/scenes/DiffScene/DocDiff/DocDiff.js +2 -2
- package/lib/scenes/DiffScene/DocDiff/DocDiff.js.map +1 -1
- package/lib/scenes/DiffScene/DocDiff/docDiffUtils.js.map +1 -1
- package/lib/scenes/DiffScene/DocDiff/index.js.map +1 -1
- package/lib/scenes/DiffScene/diffUtils.js +2 -4
- package/lib/scenes/DiffScene/diffUtils.js.map +1 -1
- package/lib/scenes/DiffScene/index.js.map +1 -1
- package/lib/scenes/ErrorDetailScene/ErrorDetailScene.d.ts +2 -2
- package/lib/scenes/ErrorDetailScene/ErrorDetailScene.js +2 -1
- package/lib/scenes/ErrorDetailScene/ErrorDetailScene.js.map +1 -1
- package/lib/scenes/ErrorDetailScene/index.js.map +1 -1
- package/lib/scenes/HomeScene/HomeScene.js.map +1 -1
- package/lib/scenes/HomeScene/index.js.map +1 -1
- package/lib/scenes/MethodScene/MethodScene.js +2 -2
- package/lib/scenes/MethodScene/MethodScene.js.map +1 -1
- package/lib/scenes/MethodScene/components/DocOperation.js.map +1 -1
- package/lib/scenes/MethodScene/components/DocRequestBody.js.map +1 -1
- package/lib/scenes/MethodScene/components/DocResponses/DocResponseTypes.d.ts +3 -3
- package/lib/scenes/MethodScene/components/DocResponses/DocResponseTypes.js +2 -2
- package/lib/scenes/MethodScene/components/DocResponses/DocResponseTypes.js.map +1 -1
- package/lib/scenes/MethodScene/components/DocResponses/DocResponses.d.ts +2 -2
- package/lib/scenes/MethodScene/components/DocResponses/DocResponses.js +2 -2
- package/lib/scenes/MethodScene/components/DocResponses/DocResponses.js.map +1 -1
- package/lib/scenes/MethodScene/components/DocResponses/index.js.map +1 -1
- package/lib/scenes/MethodScene/components/DocResponses/utils.js.map +1 -1
- package/lib/scenes/MethodScene/components/index.js.map +1 -1
- package/lib/scenes/MethodScene/index.js.map +1 -1
- package/lib/scenes/MethodTagScene/MethodTagScene.js +2 -2
- package/lib/scenes/MethodTagScene/MethodTagScene.js.map +1 -1
- package/lib/scenes/MethodTagScene/index.js.map +1 -1
- package/lib/scenes/MethodTagScene/utils.js.map +1 -1
- package/lib/scenes/TypeScene/TypeScene.js +2 -2
- package/lib/scenes/TypeScene/TypeScene.js.map +1 -1
- package/lib/scenes/TypeScene/index.js.map +1 -1
- package/lib/scenes/TypeTagScene/TypeTagScene.js +2 -2
- package/lib/scenes/TypeTagScene/TypeTagScene.js.map +1 -1
- package/lib/scenes/TypeTagScene/index.js.map +1 -1
- package/lib/scenes/TypeTagScene/utils.js.map +1 -1
- package/lib/scenes/index.js.map +1 -1
- package/lib/scenes/utils/hooks/index.js.map +1 -1
- package/lib/scenes/utils/hooks/tagStoreSync.js.map +1 -1
- package/lib/scenes/utils/index.js.map +1 -1
- package/lib/state/index.js.map +1 -1
- package/lib/state/lodes/index.js.map +1 -1
- package/lib/state/lodes/sagas.js.map +1 -1
- package/lib/state/lodes/selectors.js.map +1 -1
- package/lib/state/lodes/slice.d.ts +1 -1
- package/lib/state/lodes/slice.js +3 -6
- package/lib/state/lodes/slice.js.map +1 -1
- package/lib/state/settings/index.js.map +1 -1
- package/lib/state/settings/sagas.js +4 -4
- package/lib/state/settings/sagas.js.map +1 -1
- package/lib/state/settings/selectors.js.map +1 -1
- package/lib/state/settings/slice.d.ts +4 -4
- package/lib/state/settings/slice.js +8 -12
- package/lib/state/settings/slice.js.map +1 -1
- package/lib/state/specs/index.js.map +1 -1
- package/lib/state/specs/sagas.js.map +1 -1
- package/lib/state/specs/selectors.js.map +1 -1
- package/lib/state/specs/slice.js +3 -6
- package/lib/state/specs/slice.js.map +1 -1
- package/lib/state/store.js +5 -6
- package/lib/state/store.js.map +1 -1
- package/lib/test-data/declarations.js +1 -2
- package/lib/test-data/declarations.js.map +1 -1
- package/lib/test-data/examples.js +1 -2
- package/lib/test-data/examples.js.map +1 -1
- package/lib/test-data/index.js.map +1 -1
- package/lib/test-data/sdkLanguages.js +2 -4
- package/lib/test-data/sdkLanguages.js.map +1 -1
- package/lib/test-data/specs.js +8 -12
- package/lib/test-data/specs.js.map +1 -1
- package/lib/test-utils/index.js.map +1 -1
- package/lib/test-utils/lodes.d.ts +1 -1
- package/lib/test-utils/lodes.js.map +1 -1
- package/lib/test-utils/redux.d.ts +6 -5
- package/lib/test-utils/redux.js +7 -10
- package/lib/test-utils/redux.js.map +1 -1
- package/lib/test-utils/router.d.ts +3 -2
- package/lib/test-utils/router.js +1 -2
- package/lib/test-utils/router.js.map +1 -1
- package/lib/utils/adaptorUtils.d.ts +3 -3
- package/lib/utils/adaptorUtils.js +3 -6
- package/lib/utils/adaptorUtils.js.map +1 -1
- package/lib/utils/apixAdaptor.js.map +1 -1
- package/lib/utils/highlight.d.ts +2 -2
- package/lib/utils/highlight.js.map +1 -1
- package/lib/utils/hooks/globalStoreSync.js.map +1 -1
- package/lib/utils/hooks/index.js.map +1 -1
- package/lib/utils/hooks/navigation.d.ts +1 -1
- package/lib/utils/hooks/navigation.js +2 -1
- package/lib/utils/hooks/navigation.js.map +1 -1
- package/lib/utils/hooks/useQuery.js.map +1 -1
- package/lib/utils/index.js.map +1 -1
- package/lib/utils/lodeUtils.d.ts +1 -1
- package/lib/utils/lodeUtils.js +2 -4
- package/lib/utils/lodeUtils.js.map +1 -1
- package/lib/utils/path.d.ts +2 -2
- package/lib/utils/path.js +5 -9
- package/lib/utils/path.js.map +1 -1
- package/lib/utils/sdkLanguage.js +5 -6
- package/lib/utils/sdkLanguage.js.map +1 -1
- package/lib/utils/useWindowSize.js.map +1 -1
- package/package.json +38 -38
- package/src/ApiExplorer.tsx +72 -72
- package/src/App.tsx +9 -9
- package/src/StandaloneApiExplorer.tsx +24 -24
- package/src/components/Banner/Banner.spec.tsx +27 -25
- package/src/components/Banner/Banner.tsx +20 -20
- package/src/components/Banner/index.ts +1 -1
- package/src/components/DocActivityType/DocActivityType.spec.tsx +17 -16
- package/src/components/DocActivityType/DocActivityType.tsx +6 -6
- package/src/components/DocActivityType/index.ts +1 -1
- package/src/components/DocCode/DocCode.tsx +16 -14
- package/src/components/DocCode/index.ts +1 -1
- package/src/components/DocMarkdown/DocMarkdown.spec.tsx +41 -41
- package/src/components/DocMarkdown/DocMarkdown.tsx +19 -19
- package/src/components/DocMarkdown/index.ts +1 -1
- package/src/components/DocMarkdown/utils.spec.ts +26 -26
- package/src/components/DocMarkdown/utils.ts +4 -4
- package/src/components/DocMethodSummary/DocMethodSummary.spec.tsx +18 -17
- package/src/components/DocMethodSummary/DocMethodSummary.tsx +9 -9
- package/src/components/DocMethodSummary/DocSummaryStatus.spec.tsx +12 -12
- package/src/components/DocMethodSummary/DocSummaryStatus.tsx +6 -6
- package/src/components/DocMethodSummary/index.tsx +3 -3
- package/src/components/DocMethodSummary/utils.spec.tsx +5 -5
- package/src/components/DocMethodSummary/utils.tsx +23 -23
- package/src/components/DocPseudo/DocParam.spec.tsx +22 -22
- package/src/components/DocPseudo/DocParam.tsx +7 -7
- package/src/components/DocPseudo/DocParams.spec.tsx +27 -27
- package/src/components/DocPseudo/DocParams.tsx +6 -6
- package/src/components/DocPseudo/DocPrimaryResponse.spec.tsx +16 -16
- package/src/components/DocPseudo/DocPrimaryResponse.tsx +6 -6
- package/src/components/DocPseudo/DocPseudo.spec.tsx +15 -13
- package/src/components/DocPseudo/DocPseudo.tsx +11 -11
- package/src/components/DocPseudo/index.tsx +1 -1
- package/src/components/DocRateLimited/DocRateLimited.spec.tsx +16 -16
- package/src/components/DocRateLimited/DocRateLimited.tsx +6 -6
- package/src/components/DocRateLimited/index.ts +1 -1
- package/src/components/DocReferences/DocReferences.spec.tsx +29 -26
- package/src/components/DocReferences/DocReferences.tsx +16 -16
- package/src/components/DocReferences/index.ts +1 -1
- package/src/components/DocReferences/utils.spec.tsx +2 -2
- package/src/components/DocReferences/utils.tsx +8 -8
- package/src/components/DocSDKs/DocDeclarations.tsx +7 -7
- package/src/components/DocSDKs/DocSDKs.spec.tsx +22 -22
- package/src/components/DocSDKs/DocSDKs.tsx +36 -36
- package/src/components/DocSDKs/index.ts +1 -1
- package/src/components/DocSDKs/utils.spec.ts +8 -8
- package/src/components/DocSDKs/utils.ts +6 -6
- package/src/components/DocSchema/DocSchema.tsx +9 -9
- package/src/components/DocSchema/index.ts +1 -1
- package/src/components/DocSdkUsage/DocSdkExampleCell.tsx +5 -5
- package/src/components/DocSdkUsage/DocSdkUsage.spec.tsx +22 -22
- package/src/components/DocSdkUsage/DocSdkUsage.tsx +35 -34
- package/src/components/DocSdkUsage/index.ts +1 -1
- package/src/components/DocSdkUsage/utils.ts +29 -30
- package/src/components/DocSource/DocSource.spec.tsx +33 -37
- package/src/components/DocSource/DocSource.tsx +17 -17
- package/src/components/DocSource/index.ts +1 -1
- package/src/components/DocStatus/DocStatus.spec.tsx +12 -12
- package/src/components/DocStatus/DocStatus.tsx +8 -8
- package/src/components/DocStatus/index.ts +1 -1
- package/src/components/DocTitle/DocTitle.spec.tsx +9 -9
- package/src/components/DocTitle/DocTitle.tsx +4 -4
- package/src/components/DocTitle/index.ts +1 -1
- package/src/components/DocTypeSummary/DocTypeSummary.spec.tsx +11 -11
- package/src/components/DocTypeSummary/DocTypeSummary.tsx +11 -11
- package/src/components/DocTypeSummary/index.tsx +1 -1
- package/src/components/ErrorBoundary/ErrorBoundary.spec.tsx +29 -29
- package/src/components/ErrorBoundary/ErrorBoundary.tsx +16 -16
- package/src/components/ErrorBoundary/components/SomethingWentWrong/SomethingWentWrong.spec.tsx +17 -17
- package/src/components/ErrorBoundary/components/SomethingWentWrong/SomethingWentWrong.tsx +11 -11
- package/src/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.tsx +4 -4
- package/src/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/index.ts +1 -1
- package/src/components/ErrorBoundary/components/SomethingWentWrong/components/index.ts +1 -1
- package/src/components/ErrorBoundary/components/SomethingWentWrong/index.ts +2 -2
- package/src/components/ErrorBoundary/index.ts +1 -1
- package/src/components/ExploreType/ExploreProperty.spec.tsx +60 -58
- package/src/components/ExploreType/ExploreProperty.tsx +53 -53
- package/src/components/ExploreType/ExploreType.spec.tsx +41 -39
- package/src/components/ExploreType/ExploreType.tsx +33 -33
- package/src/components/ExploreType/exploreUtils.spec.tsx +38 -38
- package/src/components/ExploreType/exploreUtils.tsx +44 -44
- package/src/components/ExploreType/index.ts +3 -3
- package/src/components/Header/Header.spec.tsx +38 -44
- package/src/components/Header/Header.tsx +18 -18
- package/src/components/Header/index.ts +1 -1
- package/src/components/Link/Link.tsx +3 -3
- package/src/components/Link/index.ts +1 -1
- package/src/components/SelectorContainer/ApiSpecSelector.spec.tsx +31 -31
- package/src/components/SelectorContainer/ApiSpecSelector.tsx +18 -18
- package/src/components/SelectorContainer/SdkLanguageSelector.spec.tsx +42 -42
- package/src/components/SelectorContainer/SdkLanguageSelector.tsx +19 -19
- package/src/components/SelectorContainer/SelectorContainer.spec.tsx +31 -39
- package/src/components/SelectorContainer/SelectorContainer.tsx +15 -15
- package/src/components/SelectorContainer/index.ts +1 -1
- package/src/components/SelectorContainer/utils.ts +10 -10
- package/src/components/SideNav/SearchMessage.tsx +7 -7
- package/src/components/SideNav/SideNav.spec.tsx +70 -70
- package/src/components/SideNav/SideNav.tsx +77 -83
- package/src/components/SideNav/SideNavMethodTags.spec.tsx +35 -35
- package/src/components/SideNav/SideNavMethodTags.tsx +9 -9
- package/src/components/SideNav/SideNavMethods.spec.tsx +52 -52
- package/src/components/SideNav/SideNavMethods.tsx +28 -28
- package/src/components/SideNav/SideNavTypeTags.spec.tsx +36 -36
- package/src/components/SideNav/SideNavTypeTags.tsx +9 -9
- package/src/components/SideNav/SideNavTypes.spec.tsx +36 -36
- package/src/components/SideNav/SideNavTypes.tsx +28 -28
- package/src/components/SideNav/index.ts +1 -1
- package/src/components/SideNav/searchUtils.ts +16 -16
- package/src/components/common/Loader.tsx +7 -7
- package/src/components/common/common.tsx +13 -13
- package/src/components/common/index.ts +2 -2
- package/src/components/index.ts +22 -22
- package/src/custom.d.ts +2 -2
- package/src/index.ts +5 -5
- package/src/routes/AppRouter.tsx +11 -11
- package/src/routes/index.ts +1 -1
- package/src/scenes/DiffScene/DiffScene.tsx +54 -54
- package/src/scenes/DiffScene/DocDiff/DiffBanner.tsx +8 -8
- package/src/scenes/DiffScene/DocDiff/DiffItem.spec.tsx +26 -26
- package/src/scenes/DiffScene/DocDiff/DiffItem.tsx +47 -47
- package/src/scenes/DiffScene/DocDiff/DiffLegend.tsx +10 -10
- package/src/scenes/DiffScene/DocDiff/DocDiff.spec.tsx +62 -66
- package/src/scenes/DiffScene/DocDiff/DocDiff.tsx +18 -18
- package/src/scenes/DiffScene/DocDiff/docDiffUtils.tsx +23 -23
- package/src/scenes/DiffScene/DocDiff/index.ts +1 -1
- package/src/scenes/DiffScene/diffUtils.spec.ts +11 -11
- package/src/scenes/DiffScene/diffUtils.ts +26 -26
- package/src/scenes/DiffScene/index.ts +1 -1
- package/src/scenes/ErrorDetailScene/ErrorDetailScene.tsx +25 -25
- package/src/scenes/ErrorDetailScene/index.ts +1 -1
- package/src/scenes/HomeScene/HomeScene.tsx +12 -12
- package/src/scenes/HomeScene/index.ts +1 -1
- package/src/scenes/MethodScene/MethodScene.tsx +54 -54
- package/src/scenes/MethodScene/components/DocOperation.spec.tsx +17 -17
- package/src/scenes/MethodScene/components/DocOperation.tsx +8 -8
- package/src/scenes/MethodScene/components/DocRequestBody.spec.tsx +14 -14
- package/src/scenes/MethodScene/components/DocRequestBody.tsx +12 -12
- package/src/scenes/MethodScene/components/DocResponses/DocResponseTypes.tsx +15 -15
- package/src/scenes/MethodScene/components/DocResponses/DocResponses.spec.tsx +51 -51
- package/src/scenes/MethodScene/components/DocResponses/DocResponses.tsx +34 -34
- package/src/scenes/MethodScene/components/DocResponses/index.ts +1 -1
- package/src/scenes/MethodScene/components/DocResponses/utils.spec.ts +19 -14
- package/src/scenes/MethodScene/components/DocResponses/utils.ts +8 -8
- package/src/scenes/MethodScene/components/index.ts +3 -3
- package/src/scenes/MethodScene/index.ts +1 -1
- package/src/scenes/MethodTagScene/MethodTagScene.spec.tsx +31 -31
- package/src/scenes/MethodTagScene/MethodTagScene.tsx +44 -39
- package/src/scenes/MethodTagScene/index.ts +1 -1
- package/src/scenes/MethodTagScene/utils.spec.ts +6 -6
- package/src/scenes/MethodTagScene/utils.ts +6 -6
- package/src/scenes/TypeScene/TypeScene.tsx +25 -25
- package/src/scenes/TypeScene/index.ts +1 -1
- package/src/scenes/TypeTagScene/TypeTagScene.spec.tsx +34 -32
- package/src/scenes/TypeTagScene/TypeTagScene.tsx +40 -38
- package/src/scenes/TypeTagScene/index.ts +1 -1
- package/src/scenes/TypeTagScene/utils.spec.ts +6 -6
- package/src/scenes/TypeTagScene/utils.ts +6 -6
- package/src/scenes/index.ts +6 -6
- package/src/scenes/utils/hooks/index.ts +1 -1
- package/src/scenes/utils/hooks/tagStoreSync.spec.ts +37 -37
- package/src/scenes/utils/hooks/tagStoreSync.ts +18 -18
- package/src/scenes/utils/index.ts +1 -1
- package/src/state/index.ts +4 -4
- package/src/state/lodes/index.ts +2 -2
- package/src/state/lodes/sagas.spec.ts +32 -32
- package/src/state/lodes/sagas.ts +11 -11
- package/src/state/lodes/selectors.spec.ts +10 -10
- package/src/state/lodes/selectors.ts +4 -4
- package/src/state/lodes/slice.ts +18 -18
- package/src/state/settings/index.ts +2 -2
- package/src/state/settings/sagas.spec.ts +49 -49
- package/src/state/settings/sagas.ts +18 -18
- package/src/state/settings/selectors.spec.ts +11 -11
- package/src/state/settings/selectors.ts +7 -7
- package/src/state/settings/slice.ts +28 -28
- package/src/state/specs/index.ts +2 -2
- package/src/state/specs/sagas.spec.ts +60 -60
- package/src/state/specs/sagas.ts +27 -27
- package/src/state/specs/selectors.ts +7 -7
- package/src/state/specs/slice.ts +36 -36
- package/src/state/store.ts +24 -24
- package/src/test-data/declarations.ts +2 -2
- package/src/test-data/examples.ts +1 -1
- package/src/test-data/index.ts +4 -4
- package/src/test-data/sdkLanguages.ts +2 -2
- package/src/test-data/specs.ts +13 -13
- package/src/test-utils/index.ts +3 -3
- package/src/test-utils/lodes.tsx +9 -9
- package/src/test-utils/redux.tsx +30 -26
- package/src/test-utils/router.tsx +8 -8
- package/src/utils/adaptorUtils.ts +55 -55
- package/src/utils/apixAdaptor.ts +31 -25
- package/src/utils/highlight.spec.tsx +13 -13
- package/src/utils/highlight.tsx +11 -11
- package/src/utils/hooks/globalStoreSync.spec.tsx +54 -54
- package/src/utils/hooks/globalStoreSync.ts +21 -21
- package/src/utils/hooks/index.ts +3 -3
- package/src/utils/hooks/navigation.spec.ts +47 -45
- package/src/utils/hooks/navigation.ts +33 -30
- package/src/utils/hooks/useQuery.ts +5 -5
- package/src/utils/index.ts +8 -8
- package/src/utils/lodeUtils.ts +17 -17
- package/src/utils/path.spec.ts +57 -55
- package/src/utils/path.ts +42 -42
- package/src/utils/sdkLanguage.spec.ts +24 -24
- package/src/utils/sdkLanguage.ts +15 -14
- package/src/utils/useWindowSize.tsx +8 -8
- package/webpack.dev.config.js +5 -5
- package/webpack.prod.config.js +5 -5
|
@@ -24,56 +24,56 @@
|
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
import type { ILookerVersions, SpecItem, SpecList } from '@looker/sdk-codegen'
|
|
28
|
-
import { ApiModel, upgradeSpecObject } from '@looker/sdk-codegen'
|
|
29
|
-
import { api_spec } from '@looker/sdk'
|
|
30
|
-
import { getEnvAdaptor } from '@looker/extension-utils'
|
|
31
|
-
import type { RunItValues } from '@looker/run-it'
|
|
32
|
-
import { getUrl } from '@looker/run-it'
|
|
27
|
+
import type { ILookerVersions, SpecItem, SpecList } from '@looker/sdk-codegen';
|
|
28
|
+
import { ApiModel, upgradeSpecObject } from '@looker/sdk-codegen';
|
|
29
|
+
import { api_spec } from '@looker/sdk';
|
|
30
|
+
import { getEnvAdaptor } from '@looker/extension-utils';
|
|
31
|
+
import type { RunItValues } from '@looker/run-it';
|
|
32
|
+
import { getUrl } from '@looker/run-it';
|
|
33
33
|
|
|
34
|
-
export type StorageLocation = 'session' | 'local'
|
|
34
|
+
export type StorageLocation = 'session' | 'local';
|
|
35
35
|
|
|
36
36
|
/** Object returned from storage service */
|
|
37
37
|
export interface IStorageValue {
|
|
38
38
|
/** Location of the stored object */
|
|
39
|
-
location: StorageLocation
|
|
39
|
+
location: StorageLocation;
|
|
40
40
|
/** Stored string representation of the value (usually JSON) */
|
|
41
|
-
value: string
|
|
41
|
+
value: string;
|
|
42
42
|
}
|
|
43
43
|
|
|
44
44
|
/** function to retrieve a spec based on version and name */
|
|
45
45
|
export type ApiSpecFetcher = (
|
|
46
46
|
version: string,
|
|
47
47
|
name: string
|
|
48
|
-
) => Promise<string | RunItValues
|
|
48
|
+
) => Promise<string | RunItValues>;
|
|
49
49
|
|
|
50
50
|
/** Either the spec is parsed or it's undefined */
|
|
51
|
-
export type ParsedSpec = ApiModel | undefined
|
|
51
|
+
export type ParsedSpec = ApiModel | undefined;
|
|
52
52
|
|
|
53
53
|
/** service abstraction for extension and browser based usage */
|
|
54
54
|
export interface RunItConfigurator {
|
|
55
|
-
getStorage: (key: string, defaultValue?: string) => IStorageValue
|
|
56
|
-
setStorage(key: string, value: string, location: 'local' | 'session'): string
|
|
57
|
-
removeStorage(key: string): void
|
|
55
|
+
getStorage: (key: string, defaultValue?: string) => IStorageValue;
|
|
56
|
+
setStorage(key: string, value: string, location: 'local' | 'session'): string;
|
|
57
|
+
removeStorage(key: string): void;
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/** Processed specifications */
|
|
61
61
|
export interface ILoadedSpecs {
|
|
62
62
|
/** API server url */
|
|
63
|
-
baseUrl: string
|
|
63
|
+
baseUrl: string;
|
|
64
64
|
/** Web server url */
|
|
65
|
-
webUrl: string
|
|
65
|
+
webUrl: string;
|
|
66
66
|
/** should APIX run headless? */
|
|
67
|
-
headless: boolean
|
|
67
|
+
headless: boolean;
|
|
68
68
|
/** loaded specifications */
|
|
69
|
-
specs: SpecList
|
|
69
|
+
specs: SpecList;
|
|
70
70
|
/** communication errors */
|
|
71
|
-
fetchResult: string
|
|
71
|
+
fetchResult: string;
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
/** Extends versions payload with headless toggle for API Explorer */
|
|
75
75
|
export interface IAPIXConfig extends ILookerVersions {
|
|
76
|
-
headless?: boolean
|
|
76
|
+
headless?: boolean;
|
|
77
77
|
}
|
|
78
78
|
|
|
79
79
|
/**
|
|
@@ -81,15 +81,15 @@ export interface IAPIXConfig extends ILookerVersions {
|
|
|
81
81
|
* @param content to convert
|
|
82
82
|
*/
|
|
83
83
|
const makeApi = (content: string | RunItValues) => {
|
|
84
|
-
let json
|
|
84
|
+
let json;
|
|
85
85
|
if (typeof content === 'string') {
|
|
86
|
-
json = JSON.parse(content)
|
|
86
|
+
json = JSON.parse(content);
|
|
87
87
|
} else {
|
|
88
|
-
json = content
|
|
88
|
+
json = content;
|
|
89
89
|
}
|
|
90
|
-
json = upgradeSpecObject(json)
|
|
91
|
-
return ApiModel.fromJson(json)
|
|
92
|
-
}
|
|
90
|
+
json = upgradeSpecObject(json);
|
|
91
|
+
return ApiModel.fromJson(json);
|
|
92
|
+
};
|
|
93
93
|
|
|
94
94
|
/**
|
|
95
95
|
* Ensure the URI is a full URL
|
|
@@ -98,17 +98,17 @@ const makeApi = (content: string | RunItValues) => {
|
|
|
98
98
|
*/
|
|
99
99
|
export const fullify = (uri: string, baseUrl: string): string => {
|
|
100
100
|
if (uri.match(/^https?:/)) {
|
|
101
|
-
return uri
|
|
101
|
+
return uri;
|
|
102
102
|
}
|
|
103
|
-
const url = new URL(uri, baseUrl)
|
|
104
|
-
return url.toString()
|
|
105
|
-
}
|
|
103
|
+
const url = new URL(uri, baseUrl);
|
|
104
|
+
return url.toString();
|
|
105
|
+
};
|
|
106
106
|
/**
|
|
107
107
|
* parse spec url into version and name for api_spec call
|
|
108
108
|
* @param spec to parse
|
|
109
109
|
*/
|
|
110
110
|
const apiSpecBits = (spec: SpecItem): string[] =>
|
|
111
|
-
spec.specURL?.split('/').slice(-2) || []
|
|
111
|
+
spec.specURL?.split('/').slice(-2) || [];
|
|
112
112
|
|
|
113
113
|
/**
|
|
114
114
|
* Use the functional api_spec fetch
|
|
@@ -116,9 +116,9 @@ const apiSpecBits = (spec: SpecItem): string[] =>
|
|
|
116
116
|
* @param name to retrieve
|
|
117
117
|
*/
|
|
118
118
|
export const funFetch = (version: string, name: string): Promise<string> => {
|
|
119
|
-
const sdk = getEnvAdaptor().sdk
|
|
120
|
-
return sdk.ok(api_spec(sdk, version, name))
|
|
121
|
-
}
|
|
119
|
+
const sdk = getEnvAdaptor().sdk;
|
|
120
|
+
return sdk.ok(api_spec(sdk, version, name));
|
|
121
|
+
};
|
|
122
122
|
|
|
123
123
|
/**
|
|
124
124
|
* try to fetch a spec by URL, trap any errors and return undefined
|
|
@@ -126,12 +126,12 @@ export const funFetch = (version: string, name: string): Promise<string> => {
|
|
|
126
126
|
*/
|
|
127
127
|
export const specUrlFetch = async (url: string): Promise<ParsedSpec> => {
|
|
128
128
|
try {
|
|
129
|
-
const content = await getUrl(url)
|
|
130
|
-
return makeApi(content)
|
|
129
|
+
const content = await getUrl(url);
|
|
130
|
+
return makeApi(content);
|
|
131
131
|
} catch (error) {
|
|
132
|
-
return undefined
|
|
132
|
+
return undefined;
|
|
133
133
|
}
|
|
134
|
-
}
|
|
134
|
+
};
|
|
135
135
|
|
|
136
136
|
/**
|
|
137
137
|
* fetch and compile an API specification to an ApiModel if it's not already available
|
|
@@ -145,12 +145,12 @@ export const sdkSpecFetch = async (
|
|
|
145
145
|
spec: SpecItem,
|
|
146
146
|
fetcher: ApiSpecFetcher
|
|
147
147
|
): Promise<ParsedSpec> => {
|
|
148
|
-
if (spec.api) return spec.api
|
|
149
|
-
if (!spec.specURL) return undefined
|
|
150
|
-
const [version, name] = apiSpecBits(spec)
|
|
151
|
-
const content = await fetcher(version, name)
|
|
152
|
-
return makeApi(content)
|
|
153
|
-
}
|
|
148
|
+
if (spec.api) return spec.api;
|
|
149
|
+
if (!spec.specURL) return undefined;
|
|
150
|
+
const [version, name] = apiSpecBits(spec);
|
|
151
|
+
const content = await fetcher(version, name);
|
|
152
|
+
return makeApi(content);
|
|
153
|
+
};
|
|
154
154
|
|
|
155
155
|
/** Attempt to retrieve spec by URL, then api_spec SDK call
|
|
156
156
|
*
|
|
@@ -161,21 +161,21 @@ export const fallbackFetch = async (
|
|
|
161
161
|
spec: SpecItem,
|
|
162
162
|
fetcher: ApiSpecFetcher
|
|
163
163
|
): Promise<ParsedSpec> => {
|
|
164
|
-
if (spec.api) return spec.api
|
|
165
|
-
if (!spec.specURL) return undefined
|
|
166
|
-
let api: ParsedSpec
|
|
164
|
+
if (spec.api) return spec.api;
|
|
165
|
+
if (!spec.specURL) return undefined;
|
|
166
|
+
let api: ParsedSpec;
|
|
167
167
|
try {
|
|
168
|
-
api = await specUrlFetch(spec.specURL)
|
|
168
|
+
api = await specUrlFetch(spec.specURL);
|
|
169
169
|
} catch (error) {
|
|
170
|
-
console.error({ error })
|
|
170
|
+
console.error({ error });
|
|
171
171
|
}
|
|
172
172
|
if (!api) {
|
|
173
|
-
const sdk = getEnvAdaptor().sdk
|
|
174
|
-
const authed = sdk.authSession.isAuthenticated()
|
|
173
|
+
const sdk = getEnvAdaptor().sdk;
|
|
174
|
+
const authed = sdk.authSession.isAuthenticated();
|
|
175
175
|
if (!authed) {
|
|
176
|
-
await sdk.authSession.login()
|
|
176
|
+
await sdk.authSession.login();
|
|
177
177
|
}
|
|
178
|
-
api = await sdkSpecFetch(spec, fetcher)
|
|
178
|
+
api = await sdkSpecFetch(spec, fetcher);
|
|
179
179
|
}
|
|
180
|
-
return api
|
|
181
|
-
}
|
|
180
|
+
return api;
|
|
181
|
+
};
|
package/src/utils/apixAdaptor.ts
CHANGED
|
@@ -23,50 +23,56 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import type { IEnvironmentAdaptor } from '@looker/extension-utils'
|
|
27
|
-
import { BrowserAdaptor, getEnvAdaptor } from '@looker/extension-utils'
|
|
28
|
-
import type { IAPIMethods } from '@looker/sdk-rtl'
|
|
29
|
-
import type { SpecItem, SpecList } from '@looker/sdk-codegen'
|
|
30
|
-
import { getSpecsFromVersions } from '@looker/sdk-codegen'
|
|
31
|
-
import { RunItConfigKey, RunItNoConfig } from '@looker/run-it'
|
|
32
|
-
import cloneDeep from 'lodash/cloneDeep'
|
|
26
|
+
import type { IEnvironmentAdaptor } from '@looker/extension-utils';
|
|
27
|
+
import { BrowserAdaptor, getEnvAdaptor } from '@looker/extension-utils';
|
|
28
|
+
import type { IAPIMethods } from '@looker/sdk-rtl';
|
|
29
|
+
import type { SpecItem, SpecList } from '@looker/sdk-codegen';
|
|
30
|
+
import { getSpecsFromVersions } from '@looker/sdk-codegen';
|
|
31
|
+
import { RunItConfigKey, RunItNoConfig } from '@looker/run-it';
|
|
32
|
+
import cloneDeep from 'lodash/cloneDeep';
|
|
33
33
|
|
|
34
|
-
import {
|
|
34
|
+
import { fallbackFetch, fullify, funFetch } from './adaptorUtils';
|
|
35
35
|
|
|
36
36
|
export interface IApixAdaptor extends IEnvironmentAdaptor {
|
|
37
|
-
fetchSpecList(versionsUrl?: string): Promise<SpecList
|
|
38
|
-
fetchSpec(spec: SpecItem): Promise<SpecItem
|
|
37
|
+
fetchSpecList(versionsUrl?: string): Promise<SpecList>;
|
|
38
|
+
fetchSpec(spec: SpecItem): Promise<SpecItem>;
|
|
39
39
|
}
|
|
40
40
|
|
|
41
|
-
export const getApixAdaptor = () => getEnvAdaptor() as IApixAdaptor
|
|
41
|
+
export const getApixAdaptor = () => getEnvAdaptor() as IApixAdaptor;
|
|
42
42
|
|
|
43
43
|
export class ApixAdaptor extends BrowserAdaptor implements IApixAdaptor {
|
|
44
|
-
constructor(
|
|
45
|
-
|
|
44
|
+
constructor(
|
|
45
|
+
sdk: IAPIMethods,
|
|
46
|
+
private readonly fallbackVersionsUrl: string
|
|
47
|
+
) {
|
|
48
|
+
super(sdk);
|
|
46
49
|
}
|
|
47
50
|
|
|
48
51
|
async fetchSpecList(versionsUrl?: string): Promise<SpecList> {
|
|
49
|
-
const data = await this.localStorageGetItem(RunItConfigKey)
|
|
50
|
-
const config = data ? JSON.parse(data) : RunItNoConfig
|
|
51
|
-
let url: string
|
|
52
|
+
const data = await this.localStorageGetItem(RunItConfigKey);
|
|
53
|
+
const config = data ? JSON.parse(data) : RunItNoConfig;
|
|
54
|
+
let url: string;
|
|
52
55
|
|
|
53
56
|
if (versionsUrl) {
|
|
54
|
-
url = versionsUrl
|
|
57
|
+
url = versionsUrl;
|
|
55
58
|
} else {
|
|
56
59
|
url = config.base_url
|
|
57
60
|
? `${config.base_url}/versions`
|
|
58
|
-
: `${this.fallbackVersionsUrl}/versions.json
|
|
61
|
+
: `${this.fallbackVersionsUrl}/versions.json`;
|
|
59
62
|
}
|
|
60
63
|
|
|
61
|
-
const versions = await this.sdk.authSession.transport.rawRequest(
|
|
62
|
-
|
|
63
|
-
|
|
64
|
+
const versions = await this.sdk.authSession.transport.rawRequest(
|
|
65
|
+
'GET',
|
|
66
|
+
url
|
|
67
|
+
);
|
|
68
|
+
const specs = await getSpecsFromVersions(JSON.parse(versions.body));
|
|
69
|
+
return specs;
|
|
64
70
|
}
|
|
65
71
|
|
|
66
72
|
async fetchSpec(spec: SpecItem): Promise<SpecItem> {
|
|
67
|
-
const _spec = cloneDeep(spec)
|
|
68
|
-
_spec.specURL = fullify(spec.specURL!, origin)
|
|
69
|
-
_spec.api = await fallbackFetch(_spec, funFetch)
|
|
70
|
-
return _spec
|
|
73
|
+
const _spec = cloneDeep(spec);
|
|
74
|
+
_spec.specURL = fullify(spec.specURL!, origin);
|
|
75
|
+
_spec.api = await fallbackFetch(_spec, funFetch);
|
|
76
|
+
return _spec;
|
|
71
77
|
}
|
|
72
78
|
}
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import React from 'react'
|
|
27
|
-
import { highlightHTML } from './highlight'
|
|
26
|
+
import React from 'react';
|
|
27
|
+
import { highlightHTML } from './highlight';
|
|
28
28
|
|
|
29
29
|
describe('HTML highlighting', () => {
|
|
30
|
-
const str = 'create_dashboard'
|
|
30
|
+
const str = 'create_dashboard';
|
|
31
31
|
|
|
32
32
|
test('it returns original string when there are no matches', () => {
|
|
33
|
-
const result = highlightHTML('query', str)
|
|
34
|
-
expect(result).toEqual(['create_dashboard'])
|
|
35
|
-
})
|
|
33
|
+
const result = highlightHTML('query', str);
|
|
34
|
+
expect(result).toEqual(['create_dashboard']);
|
|
35
|
+
});
|
|
36
36
|
|
|
37
37
|
test('it returns original string when no pattern is provided', () => {
|
|
38
|
-
const result = highlightHTML('', str)
|
|
39
|
-
expect(result).toEqual(str)
|
|
40
|
-
})
|
|
38
|
+
const result = highlightHTML('', str);
|
|
39
|
+
expect(result).toEqual(str);
|
|
40
|
+
});
|
|
41
41
|
|
|
42
42
|
test('it wraps matches with span tags', () => {
|
|
43
|
-
const result = highlightHTML('dash', str)
|
|
43
|
+
const result = highlightHTML('dash', str);
|
|
44
44
|
expect(result).toEqual([
|
|
45
45
|
'create_',
|
|
46
46
|
<span key="1" className="hi">
|
|
47
47
|
dash
|
|
48
48
|
</span>,
|
|
49
49
|
'board',
|
|
50
|
-
])
|
|
51
|
-
})
|
|
52
|
-
})
|
|
50
|
+
]);
|
|
51
|
+
});
|
|
52
|
+
});
|
package/src/utils/highlight.tsx
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
import React from 'react'
|
|
27
|
+
import React from 'react';
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* Returns an HTML string with matches wrapped with with span tags
|
|
@@ -33,26 +33,26 @@ import React from 'react'
|
|
|
33
33
|
* @returns content with highlighted matches
|
|
34
34
|
*/
|
|
35
35
|
export const highlightHTML = (pattern: string, content: string) => {
|
|
36
|
-
let highlightedContent
|
|
36
|
+
let highlightedContent;
|
|
37
37
|
if (!pattern) {
|
|
38
|
-
highlightedContent = content
|
|
38
|
+
highlightedContent = content;
|
|
39
39
|
} else {
|
|
40
40
|
try {
|
|
41
|
-
const target = new RegExp(`(${pattern})`, 'gi')
|
|
42
|
-
const contentArray = content.split(target)
|
|
41
|
+
const target = new RegExp(`(${pattern})`, 'gi');
|
|
42
|
+
const contentArray = content.split(target);
|
|
43
43
|
highlightedContent = contentArray.map((str, index) => {
|
|
44
44
|
if (target.test(str)) {
|
|
45
45
|
return (
|
|
46
46
|
<span key={index} className={'hi'}>
|
|
47
47
|
{str}
|
|
48
48
|
</span>
|
|
49
|
-
)
|
|
49
|
+
);
|
|
50
50
|
}
|
|
51
|
-
return str
|
|
52
|
-
})
|
|
51
|
+
return str;
|
|
52
|
+
});
|
|
53
53
|
} catch (e) {
|
|
54
|
-
highlightedContent = content
|
|
54
|
+
highlightedContent = content;
|
|
55
55
|
}
|
|
56
56
|
}
|
|
57
|
-
return highlightedContent
|
|
58
|
-
}
|
|
57
|
+
return highlightedContent;
|
|
58
|
+
};
|
|
@@ -23,78 +23,78 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import { renderHook } from '@testing-library/react-hooks'
|
|
27
|
-
import { useHistory } from 'react-router-dom'
|
|
28
|
-
import type { Location } from 'history'
|
|
29
|
-
import * as reactRedux from 'react-redux'
|
|
30
|
-
import * as routerLocation from 'react-router-dom'
|
|
31
|
-
import { createTestStore, withReduxProvider } from '../../test-utils'
|
|
32
|
-
import { useGlobalStoreSync } from './globalStoreSync'
|
|
26
|
+
import { renderHook } from '@testing-library/react-hooks';
|
|
27
|
+
import { useHistory } from 'react-router-dom';
|
|
28
|
+
import type { Location } from 'history';
|
|
29
|
+
import * as reactRedux from 'react-redux';
|
|
30
|
+
import * as routerLocation from 'react-router-dom';
|
|
31
|
+
import { createTestStore, withReduxProvider } from '../../test-utils';
|
|
32
|
+
import { useGlobalStoreSync } from './globalStoreSync';
|
|
33
33
|
|
|
34
34
|
jest.mock('react-router-dom', () => {
|
|
35
|
-
const ReactRouterDOM = jest.requireActual('react-router-dom')
|
|
35
|
+
const ReactRouterDOM = jest.requireActual('react-router-dom');
|
|
36
36
|
return {
|
|
37
37
|
...ReactRouterDOM,
|
|
38
38
|
useHistory: jest
|
|
39
39
|
.fn()
|
|
40
40
|
.mockReturnValue({ push: jest.fn(), location: globalThis.location }),
|
|
41
41
|
useLocation: jest.fn().mockReturnValue({ pathname: '/', search: '' }),
|
|
42
|
-
}
|
|
43
|
-
})
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
44
|
|
|
45
45
|
describe.skip('useGlobalStoreSync', () => {
|
|
46
|
-
const mockDispatch = jest.fn()
|
|
46
|
+
const mockDispatch = jest.fn();
|
|
47
47
|
|
|
48
48
|
afterEach(() => {
|
|
49
|
-
jest.clearAllMocks()
|
|
50
|
-
})
|
|
49
|
+
jest.clearAllMocks();
|
|
50
|
+
});
|
|
51
51
|
|
|
52
52
|
test('does nothing if uninitialized', () => {
|
|
53
|
-
const { push } = useHistory()
|
|
54
|
-
const wrapper = ({ children }: any) => withReduxProvider(children)
|
|
55
|
-
renderHook(() => useGlobalStoreSync(), { wrapper })
|
|
56
|
-
expect(push).not.toHaveBeenCalled()
|
|
57
|
-
})
|
|
53
|
+
const { push } = useHistory();
|
|
54
|
+
const wrapper = ({ children }: any) => withReduxProvider(children);
|
|
55
|
+
renderHook(() => useGlobalStoreSync(), { wrapper });
|
|
56
|
+
expect(push).not.toHaveBeenCalled();
|
|
57
|
+
});
|
|
58
58
|
|
|
59
59
|
describe('search', () => {
|
|
60
60
|
test('updates store search pattern with url search pattern if present', () => {
|
|
61
|
-
const { push } = useHistory()
|
|
61
|
+
const { push } = useHistory();
|
|
62
62
|
const store = createTestStore({
|
|
63
63
|
settings: {
|
|
64
64
|
initialized: true,
|
|
65
65
|
},
|
|
66
|
-
})
|
|
66
|
+
});
|
|
67
67
|
jest.spyOn(routerLocation, 'useLocation').mockReturnValue({
|
|
68
68
|
pathname: '/',
|
|
69
69
|
search: `s=patternFromUrl`,
|
|
70
|
-
} as unknown as Location)
|
|
71
|
-
jest.spyOn(reactRedux, 'useDispatch').mockReturnValue(mockDispatch)
|
|
72
|
-
const wrapper = ({ children }: any) => withReduxProvider(children, store)
|
|
73
|
-
renderHook(() => useGlobalStoreSync(), { wrapper })
|
|
70
|
+
} as unknown as Location);
|
|
71
|
+
jest.spyOn(reactRedux, 'useDispatch').mockReturnValue(mockDispatch);
|
|
72
|
+
const wrapper = ({ children }: any) => withReduxProvider(children, store);
|
|
73
|
+
renderHook(() => useGlobalStoreSync(), { wrapper });
|
|
74
74
|
expect(mockDispatch).toHaveBeenCalledWith({
|
|
75
75
|
payload: { searchPattern: 'patternFromUrl' },
|
|
76
76
|
type: 'settings/setSearchPatternAction',
|
|
77
|
-
})
|
|
78
|
-
expect(push).toHaveBeenCalledWith({ pathname: '/', search: 'sdk=py' })
|
|
79
|
-
})
|
|
80
|
-
})
|
|
77
|
+
});
|
|
78
|
+
expect(push).toHaveBeenCalledWith({ pathname: '/', search: 'sdk=py' });
|
|
79
|
+
});
|
|
80
|
+
});
|
|
81
81
|
|
|
82
82
|
describe('sdk', () => {
|
|
83
83
|
test('syncs url sdk param with sdk in store', () => {
|
|
84
|
-
const { push } = useHistory()
|
|
84
|
+
const { push } = useHistory();
|
|
85
85
|
const store = createTestStore({
|
|
86
86
|
settings: {
|
|
87
87
|
initialized: true,
|
|
88
88
|
sdkLanguage: 'Kotlin',
|
|
89
89
|
},
|
|
90
|
-
})
|
|
91
|
-
const wrapper = ({ children }: any) => withReduxProvider(children, store)
|
|
92
|
-
renderHook(() => useGlobalStoreSync(), { wrapper })
|
|
90
|
+
});
|
|
91
|
+
const wrapper = ({ children }: any) => withReduxProvider(children, store);
|
|
92
|
+
renderHook(() => useGlobalStoreSync(), { wrapper });
|
|
93
93
|
expect(push).toHaveBeenCalledWith({
|
|
94
94
|
pathname: '/',
|
|
95
95
|
search: 'sdk=kt',
|
|
96
|
-
})
|
|
97
|
-
})
|
|
96
|
+
});
|
|
97
|
+
});
|
|
98
98
|
|
|
99
99
|
test.each([
|
|
100
100
|
['alias', 'kt'],
|
|
@@ -102,47 +102,47 @@ describe.skip('useGlobalStoreSync', () => {
|
|
|
102
102
|
])(
|
|
103
103
|
'overrides store with sdk full name given valid url sdk %s',
|
|
104
104
|
(_, param) => {
|
|
105
|
-
const { push } = useHistory()
|
|
105
|
+
const { push } = useHistory();
|
|
106
106
|
const store = createTestStore({
|
|
107
107
|
settings: {
|
|
108
108
|
initialized: true,
|
|
109
109
|
},
|
|
110
|
-
})
|
|
110
|
+
});
|
|
111
111
|
jest.spyOn(routerLocation, 'useLocation').mockReturnValue({
|
|
112
112
|
pathname: '/',
|
|
113
113
|
search: `sdk=${param}`,
|
|
114
|
-
} as unknown as Location)
|
|
115
|
-
jest.spyOn(reactRedux, 'useDispatch').mockReturnValue(mockDispatch)
|
|
114
|
+
} as unknown as Location);
|
|
115
|
+
jest.spyOn(reactRedux, 'useDispatch').mockReturnValue(mockDispatch);
|
|
116
116
|
const wrapper = ({ children }: any) =>
|
|
117
|
-
withReduxProvider(children, store)
|
|
118
|
-
renderHook(() => useGlobalStoreSync(), { wrapper })
|
|
119
|
-
expect(push).not.toHaveBeenCalled()
|
|
117
|
+
withReduxProvider(children, store);
|
|
118
|
+
renderHook(() => useGlobalStoreSync(), { wrapper });
|
|
119
|
+
expect(push).not.toHaveBeenCalled();
|
|
120
120
|
expect(mockDispatch).toHaveBeenLastCalledWith({
|
|
121
121
|
payload: { sdkLanguage: 'Kotlin' },
|
|
122
122
|
type: 'settings/setSdkLanguageAction',
|
|
123
|
-
})
|
|
123
|
+
});
|
|
124
124
|
}
|
|
125
|
-
)
|
|
125
|
+
);
|
|
126
126
|
|
|
127
127
|
test('updates url sdk param with store sdk for invalid url sdk param', () => {
|
|
128
|
-
const { push } = useHistory()
|
|
128
|
+
const { push } = useHistory();
|
|
129
129
|
const store = createTestStore({
|
|
130
130
|
settings: {
|
|
131
131
|
initialized: true,
|
|
132
132
|
},
|
|
133
|
-
})
|
|
133
|
+
});
|
|
134
134
|
jest.spyOn(routerLocation, 'useLocation').mockReturnValue({
|
|
135
135
|
pathname: '/',
|
|
136
136
|
search: `sdk=invalid`,
|
|
137
|
-
} as unknown as Location)
|
|
138
|
-
jest.spyOn(reactRedux, 'useDispatch').mockReturnValue(mockDispatch)
|
|
139
|
-
const wrapper = ({ children }: any) => withReduxProvider(children, store)
|
|
140
|
-
renderHook(() => useGlobalStoreSync(), { wrapper })
|
|
141
|
-
expect(mockDispatch).not.toHaveBeenCalled()
|
|
137
|
+
} as unknown as Location);
|
|
138
|
+
jest.spyOn(reactRedux, 'useDispatch').mockReturnValue(mockDispatch);
|
|
139
|
+
const wrapper = ({ children }: any) => withReduxProvider(children, store);
|
|
140
|
+
renderHook(() => useGlobalStoreSync(), { wrapper });
|
|
141
|
+
expect(mockDispatch).not.toHaveBeenCalled();
|
|
142
142
|
expect(push).toHaveBeenCalledWith({
|
|
143
143
|
pathname: '/',
|
|
144
144
|
search: `sdk=py`,
|
|
145
|
-
})
|
|
146
|
-
})
|
|
147
|
-
})
|
|
148
|
-
})
|
|
145
|
+
});
|
|
146
|
+
});
|
|
147
|
+
});
|
|
148
|
+
});
|
|
@@ -23,55 +23,55 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import { useLocation } from 'react-router-dom'
|
|
27
|
-
import { useEffect } from 'react'
|
|
28
|
-
import { useSelector } from 'react-redux'
|
|
29
|
-
import { allAlias, findSdk, useNavigation } from '../index'
|
|
26
|
+
import { useLocation } from 'react-router-dom';
|
|
27
|
+
import { useEffect } from 'react';
|
|
28
|
+
import { useSelector } from 'react-redux';
|
|
29
|
+
import { allAlias, findSdk, useNavigation } from '../index';
|
|
30
30
|
import {
|
|
31
31
|
selectSdkLanguage,
|
|
32
32
|
useSettingActions,
|
|
33
33
|
useSettingStoreState,
|
|
34
|
-
} from '../../state'
|
|
34
|
+
} from '../../state';
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* Hook for syncing global URL params with the Redux store
|
|
38
38
|
* Global search parameters: 's', 'sdk'
|
|
39
39
|
*/
|
|
40
40
|
export const useGlobalStoreSync = () => {
|
|
41
|
-
const location = useLocation()
|
|
42
|
-
const { navigate } = useNavigation()
|
|
43
|
-
const { setSdkLanguageAction, setSearchPatternAction } = useSettingActions()
|
|
44
|
-
const { initialized } = useSettingStoreState()
|
|
45
|
-
const selectedSdkLanguage = useSelector(selectSdkLanguage)
|
|
41
|
+
const location = useLocation();
|
|
42
|
+
const { navigate } = useNavigation();
|
|
43
|
+
const { setSdkLanguageAction, setSearchPatternAction } = useSettingActions();
|
|
44
|
+
const { initialized } = useSettingStoreState();
|
|
45
|
+
const selectedSdkLanguage = useSelector(selectSdkLanguage);
|
|
46
46
|
|
|
47
47
|
useEffect(() => {
|
|
48
48
|
if (initialized) {
|
|
49
|
-
const params = new URLSearchParams(location.search)
|
|
49
|
+
const params = new URLSearchParams(location.search);
|
|
50
50
|
|
|
51
51
|
// syncing search query
|
|
52
|
-
const searchParam = params.get('s')
|
|
52
|
+
const searchParam = params.get('s');
|
|
53
53
|
if (searchParam) {
|
|
54
54
|
setSearchPatternAction({
|
|
55
55
|
searchPattern: searchParam,
|
|
56
|
-
})
|
|
56
|
+
});
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
// syncing SDK language selection
|
|
60
|
-
const sdkParam = params.get('sdk') || ''
|
|
61
|
-
const sdk = findSdk(sdkParam)
|
|
60
|
+
const sdkParam = params.get('sdk') || '';
|
|
61
|
+
const sdk = findSdk(sdkParam);
|
|
62
62
|
const validSdkParam =
|
|
63
63
|
!sdkParam.localeCompare(sdk.alias, 'en', { sensitivity: 'base' }) ||
|
|
64
|
-
!sdkParam.localeCompare(sdk.language, 'en', { sensitivity: 'base' })
|
|
64
|
+
!sdkParam.localeCompare(sdk.language, 'en', { sensitivity: 'base' });
|
|
65
65
|
if (validSdkParam) {
|
|
66
66
|
setSdkLanguageAction({
|
|
67
67
|
sdkLanguage: sdk.language,
|
|
68
|
-
})
|
|
68
|
+
});
|
|
69
69
|
} else {
|
|
70
|
-
const { alias } = findSdk(selectedSdkLanguage)
|
|
70
|
+
const { alias } = findSdk(selectedSdkLanguage);
|
|
71
71
|
navigate(location.pathname, {
|
|
72
72
|
sdk: alias === allAlias ? null : alias,
|
|
73
|
-
})
|
|
73
|
+
});
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
|
-
}, [initialized])
|
|
77
|
-
}
|
|
76
|
+
}, [initialized]);
|
|
77
|
+
};
|
package/src/utils/hooks/index.ts
CHANGED
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
export { useNavigation } from './navigation'
|
|
27
|
-
export { useGlobalStoreSync } from './globalStoreSync'
|
|
28
|
-
export { useQuery } from './useQuery'
|
|
26
|
+
export { useNavigation } from './navigation';
|
|
27
|
+
export { useGlobalStoreSync } from './globalStoreSync';
|
|
28
|
+
export { useQuery } from './useQuery';
|