@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
|
@@ -23,16 +23,16 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import type { FC } from 'react'
|
|
27
|
-
import React from 'react'
|
|
28
|
-
import type { IMethod } from '@looker/sdk-codegen'
|
|
29
|
-
import { Code, Flex, SpaceVertical, Text } from '@looker/components'
|
|
30
|
-
import { MethodBadge } from '@looker/run-it'
|
|
26
|
+
import type { FC } from 'react';
|
|
27
|
+
import React from 'react';
|
|
28
|
+
import type { IMethod } from '@looker/sdk-codegen';
|
|
29
|
+
import { Code, Flex, SpaceVertical, Text } from '@looker/components';
|
|
30
|
+
import { MethodBadge } from '@looker/run-it';
|
|
31
31
|
|
|
32
|
-
import { DocPseudo } from '../../../components'
|
|
32
|
+
import { DocPseudo } from '../../../components';
|
|
33
33
|
|
|
34
34
|
interface DocOperationProps {
|
|
35
|
-
method: IMethod
|
|
35
|
+
method: IMethod;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
38
|
export const DocOperation: FC<DocOperationProps> = ({ method }) => (
|
|
@@ -51,4 +51,4 @@ export const DocOperation: FC<DocOperationProps> = ({ method }) => (
|
|
|
51
51
|
</Flex>
|
|
52
52
|
</MethodBadge>
|
|
53
53
|
</SpaceVertical>
|
|
54
|
-
)
|
|
54
|
+
);
|
|
@@ -24,27 +24,27 @@
|
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
import React from 'react'
|
|
28
|
-
import { renderWithTheme } from '@looker/components-test-utils'
|
|
29
|
-
import { screen } from '@testing-library/react'
|
|
27
|
+
import React from 'react';
|
|
28
|
+
import { renderWithTheme } from '@looker/components-test-utils';
|
|
29
|
+
import { screen } from '@testing-library/react';
|
|
30
30
|
|
|
31
|
-
import { api } from '../../../test-data'
|
|
32
|
-
import { DocRequestBody } from './DocRequestBody'
|
|
31
|
+
import { api } from '../../../test-data';
|
|
32
|
+
import { DocRequestBody } from './DocRequestBody';
|
|
33
33
|
|
|
34
34
|
describe('DocRequestBody', () => {
|
|
35
35
|
test('it shows Request body for a method with a body type', () => {
|
|
36
|
-
const method = api.methods.create_dashboard
|
|
37
|
-
renderWithTheme(<DocRequestBody api={api} method={method} />)
|
|
36
|
+
const method = api.methods.create_dashboard;
|
|
37
|
+
renderWithTheme(<DocRequestBody api={api} method={method} />);
|
|
38
38
|
expect(
|
|
39
39
|
screen.getByText('Request body', { exact: false })
|
|
40
|
-
).toBeInTheDocument()
|
|
41
|
-
})
|
|
40
|
+
).toBeInTheDocument();
|
|
41
|
+
});
|
|
42
42
|
|
|
43
43
|
test('it skips Request body for a method without a body type', () => {
|
|
44
|
-
const method = api.methods.dashboard
|
|
45
|
-
renderWithTheme(<DocRequestBody api={api} method={method} />)
|
|
44
|
+
const method = api.methods.dashboard;
|
|
45
|
+
renderWithTheme(<DocRequestBody api={api} method={method} />);
|
|
46
46
|
expect(
|
|
47
47
|
screen.queryByText('Request body', { exact: false })
|
|
48
|
-
).not.toBeInTheDocument()
|
|
49
|
-
})
|
|
50
|
-
})
|
|
48
|
+
).not.toBeInTheDocument();
|
|
49
|
+
});
|
|
50
|
+
});
|
|
@@ -23,15 +23,15 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import type { FC } from 'react'
|
|
27
|
-
import React from 'react'
|
|
28
|
-
import type { ApiModel, IMethod } from '@looker/sdk-codegen'
|
|
29
|
-
import { CollapserCard } from '@looker/run-it'
|
|
30
|
-
import { ExploreType } from '../../../components'
|
|
26
|
+
import type { FC } from 'react';
|
|
27
|
+
import React from 'react';
|
|
28
|
+
import type { ApiModel, IMethod } from '@looker/sdk-codegen';
|
|
29
|
+
import { CollapserCard } from '@looker/run-it';
|
|
30
|
+
import { ExploreType } from '../../../components';
|
|
31
31
|
|
|
32
32
|
interface DocRequestBodyProps {
|
|
33
|
-
method: IMethod
|
|
34
|
-
api: ApiModel
|
|
33
|
+
method: IMethod;
|
|
34
|
+
api: ApiModel;
|
|
35
35
|
}
|
|
36
36
|
|
|
37
37
|
/**
|
|
@@ -39,9 +39,9 @@ interface DocRequestBodyProps {
|
|
|
39
39
|
* @param method to document
|
|
40
40
|
*/
|
|
41
41
|
export const DocRequestBody: FC<DocRequestBodyProps> = ({ method, api }) => {
|
|
42
|
-
const bodies = method.bodyParams
|
|
43
|
-
if (bodies.length === 0) return
|
|
44
|
-
const header = bodies.length > 1 ? 'Request bodies' : 'Request body'
|
|
42
|
+
const bodies = method.bodyParams;
|
|
43
|
+
if (bodies.length === 0) return <></>;
|
|
44
|
+
const header = bodies.length > 1 ? 'Request bodies' : 'Request body';
|
|
45
45
|
|
|
46
46
|
return (
|
|
47
47
|
<CollapserCard id="bodies" heading={header}>
|
|
@@ -56,5 +56,5 @@ export const DocRequestBody: FC<DocRequestBodyProps> = ({ method, api }) => {
|
|
|
56
56
|
))}
|
|
57
57
|
</>
|
|
58
58
|
</CollapserCard>
|
|
59
|
-
)
|
|
60
|
-
}
|
|
59
|
+
);
|
|
60
|
+
};
|
|
@@ -24,20 +24,20 @@
|
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
import React, {
|
|
28
|
-
import {
|
|
27
|
+
import React, { useEffect, useState } from 'react';
|
|
28
|
+
import { ButtonItem, ButtonToggle } from '@looker/components';
|
|
29
29
|
import type {
|
|
30
30
|
ApiModel,
|
|
31
|
-
KeyedCollection,
|
|
32
31
|
IMethodResponse,
|
|
33
|
-
|
|
32
|
+
KeyedCollection,
|
|
33
|
+
} from '@looker/sdk-codegen';
|
|
34
34
|
|
|
35
|
-
import { ExploreType } from '../../../../components'
|
|
35
|
+
import { ExploreType } from '../../../../components';
|
|
36
36
|
|
|
37
37
|
interface DocResponseTypesProps {
|
|
38
|
-
api: ApiModel
|
|
38
|
+
api: ApiModel;
|
|
39
39
|
/** responses to render */
|
|
40
|
-
responses: KeyedCollection<IMethodResponse
|
|
40
|
+
responses: KeyedCollection<IMethodResponse>;
|
|
41
41
|
}
|
|
42
42
|
|
|
43
43
|
/**
|
|
@@ -46,15 +46,15 @@ interface DocResponseTypesProps {
|
|
|
46
46
|
* @param response
|
|
47
47
|
*/
|
|
48
48
|
export const DocResponseTypes = ({ api, responses }: DocResponseTypesProps) => {
|
|
49
|
-
const mediaTypes = Object.keys(responses)
|
|
50
|
-
const [selectedMediaType, setSelectedMediaType] = useState(mediaTypes[0])
|
|
51
|
-
const [resps, setResps] = useState(responses)
|
|
49
|
+
const mediaTypes = Object.keys(responses);
|
|
50
|
+
const [selectedMediaType, setSelectedMediaType] = useState(mediaTypes[0]);
|
|
51
|
+
const [resps, setResps] = useState(responses);
|
|
52
52
|
|
|
53
53
|
useEffect(() => {
|
|
54
54
|
/** When new responses are passed, update the default selected media type */
|
|
55
|
-
setSelectedMediaType(mediaTypes[0])
|
|
56
|
-
setResps(responses)
|
|
57
|
-
}, [responses, mediaTypes])
|
|
55
|
+
setSelectedMediaType(mediaTypes[0]);
|
|
56
|
+
setResps(responses);
|
|
57
|
+
}, [responses, mediaTypes]);
|
|
58
58
|
|
|
59
59
|
// TODO: Account for endpoints with no responses (e.g. delete a custom cmd)
|
|
60
60
|
return (
|
|
@@ -79,5 +79,5 @@ export const DocResponseTypes = ({ api, responses }: DocResponseTypesProps) => {
|
|
|
79
79
|
/>
|
|
80
80
|
</div>
|
|
81
81
|
</>
|
|
82
|
-
)
|
|
83
|
-
}
|
|
82
|
+
);
|
|
83
|
+
};
|
|
@@ -23,52 +23,52 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import React from 'react'
|
|
27
|
-
import { screen, waitFor } from '@testing-library/react'
|
|
28
|
-
import userEvent from '@testing-library/user-event'
|
|
26
|
+
import React from 'react';
|
|
27
|
+
import { screen, waitFor } from '@testing-library/react';
|
|
28
|
+
import userEvent from '@testing-library/user-event';
|
|
29
29
|
import {
|
|
30
30
|
registerTestEnvAdaptor,
|
|
31
31
|
unregisterEnvAdaptor,
|
|
32
|
-
} from '@looker/extension-utils'
|
|
32
|
+
} from '@looker/extension-utils';
|
|
33
33
|
|
|
34
|
-
import { api } from '../../../../test-data'
|
|
35
|
-
import { renderWithRouter } from '../../../../test-utils'
|
|
36
|
-
import { DocResponses } from './DocResponses'
|
|
37
|
-
import { buildResponseTree } from './utils'
|
|
34
|
+
import { api } from '../../../../test-data';
|
|
35
|
+
import { renderWithRouter } from '../../../../test-utils';
|
|
36
|
+
import { DocResponses } from './DocResponses';
|
|
37
|
+
import { buildResponseTree } from './utils';
|
|
38
38
|
|
|
39
39
|
describe('DocResponses', () => {
|
|
40
40
|
beforeAll(() => {
|
|
41
|
-
registerTestEnvAdaptor()
|
|
42
|
-
})
|
|
41
|
+
registerTestEnvAdaptor();
|
|
42
|
+
});
|
|
43
43
|
|
|
44
44
|
afterAll(() => {
|
|
45
|
-
unregisterEnvAdaptor()
|
|
46
|
-
})
|
|
45
|
+
unregisterEnvAdaptor();
|
|
46
|
+
});
|
|
47
47
|
|
|
48
48
|
test('it renders all response statuses and their types', async () => {
|
|
49
|
-
const responses = api.methods.run_look.responses
|
|
50
|
-
renderWithRouter(<DocResponses api={api} method={api.methods.run_look} />)
|
|
49
|
+
const responses = api.methods.run_look.responses;
|
|
50
|
+
renderWithRouter(<DocResponses api={api} method={api.methods.run_look} />);
|
|
51
51
|
|
|
52
|
-
expect(screen.getByText('Response Models')).toBeInTheDocument()
|
|
52
|
+
expect(screen.getByText('Response Models')).toBeInTheDocument();
|
|
53
53
|
|
|
54
|
-
const responseTree = buildResponseTree(responses)
|
|
55
|
-
const expectedRespStatuses = Object.keys(responseTree)
|
|
54
|
+
const responseTree = buildResponseTree(responses);
|
|
55
|
+
const expectedRespStatuses = Object.keys(responseTree);
|
|
56
56
|
expect(
|
|
57
57
|
screen.getAllByRole('tab', {
|
|
58
58
|
name: new RegExp(`${expectedRespStatuses.join('|')}`),
|
|
59
59
|
})
|
|
60
|
-
).toHaveLength(expectedRespStatuses.length)
|
|
60
|
+
).toHaveLength(expectedRespStatuses.length);
|
|
61
61
|
|
|
62
|
-
userEvent.click(screen.getByRole('tab', { name: '200: Look' }))
|
|
63
|
-
const successRespTypes = Object.keys(responseTree['200: Look'])
|
|
62
|
+
userEvent.click(screen.getByRole('tab', { name: '200: Look' }));
|
|
63
|
+
const successRespTypes = Object.keys(responseTree['200: Look']);
|
|
64
64
|
await waitFor(() => {
|
|
65
65
|
expect(
|
|
66
66
|
screen.getAllByRole('button', {
|
|
67
67
|
name: new RegExp(`${successRespTypes.join('|')}`),
|
|
68
68
|
})
|
|
69
|
-
).toHaveLength(successRespTypes.length)
|
|
70
|
-
})
|
|
71
|
-
})
|
|
69
|
+
).toHaveLength(successRespTypes.length);
|
|
70
|
+
});
|
|
71
|
+
});
|
|
72
72
|
|
|
73
73
|
test('selects tab corresponding to error code query param if present', async () => {
|
|
74
74
|
const sampleIndex = {
|
|
@@ -78,7 +78,7 @@ describe('DocResponses', () => {
|
|
|
78
78
|
'404/post/login': {
|
|
79
79
|
url: 'login_404.md',
|
|
80
80
|
},
|
|
81
|
-
}
|
|
81
|
+
};
|
|
82
82
|
|
|
83
83
|
const badLoginMd = `## API Response 404 for \`login\`
|
|
84
84
|
|
|
@@ -86,7 +86,7 @@ describe('DocResponses', () => {
|
|
|
86
86
|
|
|
87
87
|
A 404 Error response from the /login endpoint most often means that an attempt to login at a valid Looker URL was made but the combination of client_id and client_secret provided do not match an existing valid credential on that instance.
|
|
88
88
|
|
|
89
|
-
See [HTTP 404 - Not Found](https://docs.looker.com/r/reference/looker-http-codes/404) for general information about this HTTP response from Looker
|
|
89
|
+
See [HTTP 404 - Not Found](https://docs.looker.com/r/reference/looker-http-codes/404) for general information about this HTTP response from Looker.`;
|
|
90
90
|
|
|
91
91
|
const mockResponse = async (val: string): Promise<Response> => {
|
|
92
92
|
const resp: Response = {
|
|
@@ -96,58 +96,58 @@ See [HTTP 404 - Not Found](https://docs.looker.com/r/reference/looker-http-codes
|
|
|
96
96
|
statusText: '',
|
|
97
97
|
url: '',
|
|
98
98
|
text(): Promise<string> {
|
|
99
|
-
return Promise.resolve(val)
|
|
99
|
+
return Promise.resolve(val);
|
|
100
100
|
},
|
|
101
101
|
status: 200,
|
|
102
102
|
headers: {} as Headers,
|
|
103
103
|
type: 'basic',
|
|
104
104
|
clone: function (): Response {
|
|
105
|
-
throw new Error('Function not implemented.')
|
|
105
|
+
throw new Error('Function not implemented.');
|
|
106
106
|
},
|
|
107
107
|
body: null,
|
|
108
108
|
arrayBuffer: function (): Promise<ArrayBuffer> {
|
|
109
|
-
throw new Error('Function not implemented.')
|
|
109
|
+
throw new Error('Function not implemented.');
|
|
110
110
|
},
|
|
111
111
|
blob: function (): Promise<Blob> {
|
|
112
|
-
throw new Error('Function not implemented.')
|
|
112
|
+
throw new Error('Function not implemented.');
|
|
113
113
|
},
|
|
114
114
|
formData: function (): Promise<FormData> {
|
|
115
|
-
throw new Error('Function not implemented.')
|
|
115
|
+
throw new Error('Function not implemented.');
|
|
116
116
|
},
|
|
117
117
|
json: function (): Promise<any> {
|
|
118
|
-
throw new Error('Function not implemented.')
|
|
118
|
+
throw new Error('Function not implemented.');
|
|
119
119
|
},
|
|
120
|
-
} as unknown as Response
|
|
121
|
-
return Promise.resolve(resp)
|
|
122
|
-
}
|
|
123
|
-
const fetcher = global.fetch
|
|
120
|
+
} as unknown as Response;
|
|
121
|
+
return Promise.resolve(resp);
|
|
122
|
+
};
|
|
123
|
+
const fetcher = global.fetch;
|
|
124
124
|
global.fetch = jest.fn((input: RequestInfo | URL, _init?: RequestInit) => {
|
|
125
|
-
const url = input.toString()
|
|
126
|
-
let result = 'I dunno'
|
|
125
|
+
const url = input.toString();
|
|
126
|
+
let result = 'I dunno';
|
|
127
127
|
if (url.endsWith('index.json')) {
|
|
128
|
-
result = JSON.stringify(sampleIndex)
|
|
128
|
+
result = JSON.stringify(sampleIndex);
|
|
129
129
|
}
|
|
130
130
|
if (url.endsWith('login_404.md')) {
|
|
131
|
-
result = badLoginMd
|
|
131
|
+
result = badLoginMd;
|
|
132
132
|
}
|
|
133
|
-
return mockResponse(result)
|
|
134
|
-
})
|
|
133
|
+
return mockResponse(result);
|
|
134
|
+
});
|
|
135
135
|
|
|
136
136
|
renderWithRouter(
|
|
137
137
|
<DocResponses api={api} method={api.methods.login} errorCode="404" />
|
|
138
|
-
)
|
|
139
|
-
expect(screen.getByText('Response Models')).toBeInTheDocument()
|
|
138
|
+
);
|
|
139
|
+
expect(screen.getByText('Response Models')).toBeInTheDocument();
|
|
140
140
|
|
|
141
141
|
await waitFor(() => {
|
|
142
142
|
expect(screen.getByRole('tab', { name: /^404: \w+/ })).toHaveAttribute(
|
|
143
143
|
'aria-selected',
|
|
144
144
|
'true'
|
|
145
|
-
)
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
145
|
+
);
|
|
146
|
+
});
|
|
147
|
+
expect(
|
|
148
|
+
screen.getByRole('heading', { name: 'Description' })
|
|
149
|
+
).toBeInTheDocument();
|
|
150
150
|
|
|
151
|
-
global.fetch = fetcher
|
|
152
|
-
})
|
|
153
|
-
})
|
|
151
|
+
global.fetch = fetcher;
|
|
152
|
+
});
|
|
153
|
+
});
|
|
@@ -24,70 +24,70 @@
|
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
import React, { useEffect, useState } from 'react'
|
|
28
|
-
import {
|
|
29
|
-
import type { ApiModel, IMethod } from '@looker/sdk-codegen'
|
|
30
|
-
import { CollapserCard } from '@looker/run-it'
|
|
31
|
-
import { ErrorDoc } from '@looker/sdk-rtl'
|
|
27
|
+
import React, { useEffect, useState } from 'react';
|
|
28
|
+
import { Tab2, Tabs2 } from '@looker/components';
|
|
29
|
+
import type { ApiModel, IMethod } from '@looker/sdk-codegen';
|
|
30
|
+
import { CollapserCard } from '@looker/run-it';
|
|
31
|
+
import { ErrorDoc } from '@looker/sdk-rtl';
|
|
32
32
|
import {
|
|
33
|
-
apiErrorDisplayFetch,
|
|
34
33
|
ExtMarkdown,
|
|
34
|
+
apiErrorDisplayFetch,
|
|
35
35
|
getEnvAdaptor,
|
|
36
|
-
} from '@looker/extension-utils'
|
|
36
|
+
} from '@looker/extension-utils';
|
|
37
37
|
|
|
38
|
-
import { DocResponseTypes } from './DocResponseTypes'
|
|
39
|
-
import { buildResponseTree } from './utils'
|
|
38
|
+
import { DocResponseTypes } from './DocResponseTypes';
|
|
39
|
+
import { buildResponseTree } from './utils';
|
|
40
40
|
|
|
41
41
|
interface DocResponsesProps {
|
|
42
|
-
api: ApiModel
|
|
43
|
-
method: IMethod
|
|
42
|
+
api: ApiModel;
|
|
43
|
+
method: IMethod;
|
|
44
44
|
/** error code to display */
|
|
45
|
-
errorCode?: string
|
|
45
|
+
errorCode?: string;
|
|
46
46
|
}
|
|
47
47
|
|
|
48
48
|
/**
|
|
49
49
|
* Renders a tab list and tab panels for different method response types
|
|
50
50
|
*/
|
|
51
51
|
export const DocResponses = ({ api, method, errorCode }: DocResponsesProps) => {
|
|
52
|
-
const [errorContent, setErrorContent] = useState('')
|
|
53
|
-
const responses = method.responses
|
|
52
|
+
const [errorContent, setErrorContent] = useState('');
|
|
53
|
+
const responses = method.responses;
|
|
54
54
|
|
|
55
|
-
const responseTree = buildResponseTree(responses)
|
|
56
|
-
const tabNames = Object.keys(responseTree)
|
|
55
|
+
const responseTree = buildResponseTree(responses);
|
|
56
|
+
const tabNames = Object.keys(responseTree);
|
|
57
57
|
|
|
58
|
-
let defaultTabId = tabNames[0]
|
|
58
|
+
let defaultTabId = tabNames[0];
|
|
59
59
|
|
|
60
60
|
if (errorCode) {
|
|
61
|
-
const pattern = new RegExp(`${errorCode}: \\w+`)
|
|
61
|
+
const pattern = new RegExp(`${errorCode}: \\w+`);
|
|
62
62
|
tabNames.forEach((el) => {
|
|
63
63
|
if (pattern.test(el)) {
|
|
64
|
-
defaultTabId = el
|
|
64
|
+
defaultTabId = el;
|
|
65
65
|
}
|
|
66
|
-
})
|
|
66
|
+
});
|
|
67
67
|
}
|
|
68
68
|
|
|
69
69
|
useEffect(() => {
|
|
70
|
-
if (!errorCode) return
|
|
70
|
+
if (!errorCode) return;
|
|
71
71
|
|
|
72
72
|
const getErrorContent = async () => {
|
|
73
73
|
const docUrl = `/err/4.0/${errorCode}/${method.httpMethod.toLocaleLowerCase()}${
|
|
74
74
|
method.endpoint
|
|
75
|
-
}
|
|
76
|
-
const adaptor = getEnvAdaptor()
|
|
77
|
-
const errDoc = new ErrorDoc(adaptor.sdk, apiErrorDisplayFetch)
|
|
78
|
-
const content = await errDoc.content(docUrl)
|
|
79
|
-
setErrorContent(content)
|
|
80
|
-
}
|
|
81
|
-
getErrorContent()
|
|
82
|
-
}, [errorCode])
|
|
75
|
+
}`;
|
|
76
|
+
const adaptor = getEnvAdaptor();
|
|
77
|
+
const errDoc = new ErrorDoc(adaptor.sdk, apiErrorDisplayFetch);
|
|
78
|
+
const content = await errDoc.content(docUrl);
|
|
79
|
+
setErrorContent(content);
|
|
80
|
+
};
|
|
81
|
+
getErrorContent();
|
|
82
|
+
}, [errorCode]);
|
|
83
83
|
|
|
84
|
-
if (responses.length === 0) return
|
|
84
|
+
if (responses.length === 0) return <></>;
|
|
85
85
|
|
|
86
86
|
return (
|
|
87
87
|
<CollapserCard heading="Response Models" id="response models">
|
|
88
88
|
<Tabs2 defaultTabId={defaultTabId}>
|
|
89
89
|
{Object.entries(responseTree).map(([statusCode, response]) => {
|
|
90
|
-
const errorTab = errorCode && statusCode === defaultTabId
|
|
90
|
+
const errorTab = errorCode && statusCode === defaultTabId;
|
|
91
91
|
return (
|
|
92
92
|
<Tab2 key={statusCode} id={statusCode} label={statusCode}>
|
|
93
93
|
<DocResponseTypes api={api} responses={response} />
|
|
@@ -95,9 +95,9 @@ export const DocResponses = ({ api, method, errorCode }: DocResponsesProps) => {
|
|
|
95
95
|
<ExtMarkdown source={errorContent} />
|
|
96
96
|
)}
|
|
97
97
|
</Tab2>
|
|
98
|
-
)
|
|
98
|
+
);
|
|
99
99
|
})}
|
|
100
100
|
</Tabs2>
|
|
101
101
|
</CollapserCard>
|
|
102
|
-
)
|
|
103
|
-
}
|
|
102
|
+
);
|
|
103
|
+
};
|
|
@@ -23,32 +23,37 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
import { api } from '../../../../test-data'
|
|
27
|
-
import { buildResponseTree } from './utils'
|
|
26
|
+
import { api } from '../../../../test-data';
|
|
27
|
+
import { buildResponseTree } from './utils';
|
|
28
28
|
|
|
29
29
|
describe('DocResponses utils', () => {
|
|
30
30
|
describe('buildResponseTree', () => {
|
|
31
31
|
test('it builds a response tree', () => {
|
|
32
|
-
const method = api.methods.run_look
|
|
33
|
-
const responses = method.responses
|
|
34
|
-
const actual = buildResponseTree(responses)
|
|
32
|
+
const method = api.methods.run_look;
|
|
33
|
+
const responses = method.responses;
|
|
34
|
+
const actual = buildResponseTree(responses);
|
|
35
35
|
const responseStatuses = [
|
|
36
36
|
'200: Look',
|
|
37
37
|
'400: Bad Request',
|
|
38
38
|
'404: Not Found',
|
|
39
39
|
'422: Validation Error',
|
|
40
40
|
'429: Too Many Requests',
|
|
41
|
-
]
|
|
42
|
-
const mediaTypes = [
|
|
43
|
-
|
|
41
|
+
];
|
|
42
|
+
const mediaTypes = [
|
|
43
|
+
'text',
|
|
44
|
+
'application/json',
|
|
45
|
+
'image/png',
|
|
46
|
+
'image/jpeg',
|
|
47
|
+
];
|
|
48
|
+
expect(Object.keys(actual)).toEqual(responseStatuses);
|
|
44
49
|
|
|
45
50
|
responseStatuses.forEach((status) => {
|
|
46
|
-
expect(Object.keys(actual[status])).toEqual(mediaTypes)
|
|
47
|
-
})
|
|
51
|
+
expect(Object.keys(actual[status])).toEqual(mediaTypes);
|
|
52
|
+
});
|
|
48
53
|
|
|
49
54
|
expect(actual['200: Look']['application/json']).toEqual(
|
|
50
55
|
method.primaryResponse
|
|
51
|
-
)
|
|
52
|
-
})
|
|
53
|
-
})
|
|
54
|
-
})
|
|
56
|
+
);
|
|
57
|
+
});
|
|
58
|
+
});
|
|
59
|
+
});
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
26
|
|
|
27
|
-
import type { IMethodResponse, KeyedCollection } from '@looker/sdk-codegen'
|
|
27
|
+
import type { IMethodResponse, KeyedCollection } from '@looker/sdk-codegen';
|
|
28
28
|
|
|
29
29
|
/**
|
|
30
30
|
* Given an array of method responses, group them by statusCode. The value of each status code is a collection of
|
|
@@ -34,11 +34,11 @@ import type { IMethodResponse, KeyedCollection } from '@looker/sdk-codegen'
|
|
|
34
34
|
export const buildResponseTree = (
|
|
35
35
|
responses: IMethodResponse[]
|
|
36
36
|
): KeyedCollection<KeyedCollection<IMethodResponse>> => {
|
|
37
|
-
const tree = {}
|
|
37
|
+
const tree: KeyedCollection<KeyedCollection<IMethodResponse>> = {};
|
|
38
38
|
Object.values(responses).forEach((response) => {
|
|
39
|
-
const node = `${response.statusCode}: ${response.description}
|
|
40
|
-
if (!(node in tree)) tree[node] = {}
|
|
41
|
-
tree[node][response.mediaType] = response
|
|
42
|
-
})
|
|
43
|
-
return tree
|
|
44
|
-
}
|
|
39
|
+
const node = `${response.statusCode}: ${response.description}`;
|
|
40
|
+
if (!(node in tree)) tree[node] = {};
|
|
41
|
+
tree[node][response.mediaType] = response;
|
|
42
|
+
});
|
|
43
|
+
return tree;
|
|
44
|
+
};
|
|
@@ -23,6 +23,6 @@
|
|
|
23
23
|
SOFTWARE.
|
|
24
24
|
|
|
25
25
|
*/
|
|
26
|
-
export { DocOperation } from './DocOperation'
|
|
27
|
-
export { DocRequestBody } from './DocRequestBody'
|
|
28
|
-
export { DocResponses } from './DocResponses'
|
|
26
|
+
export { DocOperation } from './DocOperation';
|
|
27
|
+
export { DocRequestBody } from './DocRequestBody';
|
|
28
|
+
export { DocResponses } from './DocResponses';
|