@looker/api-explorer 0.9.18 → 0.9.24

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.
Files changed (726) hide show
  1. package/CHANGELOG.md +141 -0
  2. package/e2e/e2e.spec.ts +242 -0
  3. package/{src/reducers/search/reducer.ts → e2e/helpers.ts} +21 -36
  4. package/{src/reducers/search/actions.ts → jest-puppeteer.config.js} +17 -15
  5. package/jest.config.js +2 -0
  6. package/lib/ApiExplorer.d.ts +8 -11
  7. package/lib/ApiExplorer.js +93 -71
  8. package/lib/ApiExplorer.js.map +1 -1
  9. package/lib/App.d.ts +1 -0
  10. package/lib/App.js +29 -0
  11. package/lib/App.js.map +1 -0
  12. package/lib/StandaloneApiExplorer.d.ts +1 -1
  13. package/lib/StandaloneApiExplorer.js +46 -25
  14. package/lib/StandaloneApiExplorer.js.map +1 -1
  15. package/lib/components/DocActivityType/DocActivityType.d.ts +2 -2
  16. package/lib/components/DocActivityType/DocActivityType.js.map +1 -1
  17. package/lib/components/DocCode/DocCode.d.ts +1 -1
  18. package/lib/components/DocCode/DocCode.js +6 -10
  19. package/lib/components/DocCode/DocCode.js.map +1 -1
  20. package/lib/components/DocMarkdown/DocMarkdown.d.ts +1 -1
  21. package/lib/components/DocMarkdown/DocMarkdown.js +13 -15
  22. package/lib/components/DocMarkdown/DocMarkdown.js.map +1 -1
  23. package/lib/components/DocMethodSummary/DocMethodSummary.d.ts +2 -2
  24. package/lib/components/DocMethodSummary/DocMethodSummary.js +3 -6
  25. package/lib/components/DocMethodSummary/DocMethodSummary.js.map +1 -1
  26. package/lib/components/DocMethodSummary/DocSummaryStatus.d.ts +2 -3
  27. package/lib/components/DocMethodSummary/DocSummaryStatus.js +3 -3
  28. package/lib/components/DocMethodSummary/DocSummaryStatus.js.map +1 -1
  29. package/lib/components/DocMethodSummary/index.d.ts +1 -0
  30. package/lib/components/DocMethodSummary/index.js +8 -0
  31. package/lib/components/DocMethodSummary/index.js.map +1 -1
  32. package/lib/components/DocMethodSummary/utils.d.ts +2 -1
  33. package/lib/components/DocMethodSummary/utils.js +24 -15
  34. package/lib/components/DocMethodSummary/utils.js.map +1 -1
  35. package/lib/components/DocPseudo/DocParam.d.ts +2 -2
  36. package/lib/components/DocPseudo/DocParam.js.map +1 -1
  37. package/lib/components/DocPseudo/DocParams.d.ts +2 -2
  38. package/lib/components/DocPseudo/DocParams.js.map +1 -1
  39. package/lib/components/DocPseudo/DocPrimaryResponse.d.ts +2 -2
  40. package/lib/components/DocPseudo/DocPrimaryResponse.js.map +1 -1
  41. package/lib/components/DocPseudo/DocPseudo.d.ts +2 -2
  42. package/lib/components/DocPseudo/DocPseudo.js.map +1 -1
  43. package/lib/components/DocRateLimited/DocRateLimited.d.ts +2 -2
  44. package/lib/components/DocRateLimited/DocRateLimited.js.map +1 -1
  45. package/lib/components/DocReferences/DocReferences.d.ts +2 -2
  46. package/lib/components/DocReferences/DocReferences.js +9 -13
  47. package/lib/components/DocReferences/DocReferences.js.map +1 -1
  48. package/lib/components/DocReferences/utils.d.ts +2 -2
  49. package/lib/components/DocReferences/utils.js +5 -31
  50. package/lib/components/DocReferences/utils.js.map +1 -1
  51. package/lib/components/DocResponses/DocResponseTypes.d.ts +3 -2
  52. package/lib/components/DocResponses/DocResponseTypes.js +3 -1
  53. package/lib/components/DocResponses/DocResponseTypes.js.map +1 -1
  54. package/lib/components/DocResponses/DocResponses.d.ts +3 -2
  55. package/lib/components/DocResponses/DocResponses.js +4 -2
  56. package/lib/components/DocResponses/DocResponses.js.map +1 -1
  57. package/lib/components/DocResponses/utils.d.ts +1 -1
  58. package/lib/components/DocResponses/utils.js.map +1 -1
  59. package/lib/components/DocSDKs/DocDeclarations.d.ts +2 -2
  60. package/lib/components/DocSDKs/DocDeclarations.js.map +1 -1
  61. package/lib/components/DocSDKs/DocSDKs.d.ts +2 -2
  62. package/lib/components/DocSDKs/DocSDKs.js +2 -4
  63. package/lib/components/DocSDKs/DocSDKs.js.map +1 -1
  64. package/lib/components/DocSDKs/utils.d.ts +1 -1
  65. package/lib/components/DocSDKs/utils.js.map +1 -1
  66. package/lib/components/DocSchema/DocSchema.d.ts +1 -1
  67. package/lib/components/DocSchema/DocSchema.js +2 -2
  68. package/lib/components/DocSchema/DocSchema.js.map +1 -1
  69. package/lib/components/DocSdkUsage/DocSdkExampleCell.d.ts +1 -1
  70. package/lib/components/DocSdkUsage/DocSdkExampleCell.js.map +1 -1
  71. package/lib/components/DocSdkUsage/DocSdkUsage.d.ts +2 -2
  72. package/lib/components/DocSdkUsage/DocSdkUsage.js +7 -10
  73. package/lib/components/DocSdkUsage/DocSdkUsage.js.map +1 -1
  74. package/lib/components/DocSdkUsage/utils.d.ts +2 -2
  75. package/lib/components/DocSdkUsage/utils.js.map +1 -1
  76. package/lib/components/DocSource/DocSource.d.ts +2 -2
  77. package/lib/components/DocSource/DocSource.js +5 -7
  78. package/lib/components/DocSource/DocSource.js.map +1 -1
  79. package/lib/components/DocStatus/DocStatus.d.ts +2 -2
  80. package/lib/components/DocStatus/DocStatus.js.map +1 -1
  81. package/lib/components/DocTitle/DocTitle.d.ts +1 -1
  82. package/lib/components/DocTitle/DocTitle.js +2 -2
  83. package/lib/components/DocTitle/DocTitle.js.map +1 -1
  84. package/lib/components/DocTypeSummary/DocTypeSummary.d.ts +7 -0
  85. package/lib/components/DocTypeSummary/DocTypeSummary.js +52 -0
  86. package/lib/components/DocTypeSummary/DocTypeSummary.js.map +1 -0
  87. package/lib/components/DocTypeSummary/index.d.ts +1 -0
  88. package/lib/components/DocTypeSummary/index.js +14 -0
  89. package/lib/components/DocTypeSummary/index.js.map +1 -0
  90. package/lib/components/ErrorBoundary/ErrorBoundary.js +1 -1
  91. package/lib/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  92. package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.d.ts +1 -1
  93. package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js +152 -8
  94. package/lib/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js.map +1 -1
  95. package/lib/components/ExploreType/ExploreProperty.d.ts +10 -7
  96. package/lib/components/ExploreType/ExploreProperty.js +14 -3
  97. package/lib/components/ExploreType/ExploreProperty.js.map +1 -1
  98. package/lib/components/ExploreType/ExploreType.d.ts +4 -2
  99. package/lib/components/ExploreType/ExploreType.js +9 -5
  100. package/lib/components/ExploreType/ExploreType.js.map +1 -1
  101. package/lib/components/ExploreType/exploreUtils.d.ts +2 -2
  102. package/lib/components/ExploreType/exploreUtils.js.map +1 -1
  103. package/lib/components/Header/Header.d.ts +5 -4
  104. package/lib/components/Header/Header.js +5 -2
  105. package/lib/components/Header/Header.js.map +1 -1
  106. package/lib/components/Header/index.d.ts +1 -1
  107. package/lib/components/Header/index.js +6 -0
  108. package/lib/components/Header/index.js.map +1 -1
  109. package/lib/components/SelectorContainer/ApiSpecSelector.d.ts +3 -3
  110. package/lib/components/SelectorContainer/ApiSpecSelector.js +3 -1
  111. package/lib/components/SelectorContainer/ApiSpecSelector.js.map +1 -1
  112. package/lib/components/SelectorContainer/SdkLanguageSelector.d.ts +1 -1
  113. package/lib/components/SelectorContainer/SdkLanguageSelector.js +7 -17
  114. package/lib/components/SelectorContainer/SdkLanguageSelector.js.map +1 -1
  115. package/lib/components/SelectorContainer/SelectorContainer.d.ts +5 -4
  116. package/lib/components/SelectorContainer/SelectorContainer.js +11 -3
  117. package/lib/components/SelectorContainer/SelectorContainer.js.map +1 -1
  118. package/lib/components/SideNav/SearchMessage.d.ts +2 -2
  119. package/lib/components/SideNav/SearchMessage.js.map +1 -1
  120. package/lib/components/SideNav/SideNav.d.ts +3 -3
  121. package/lib/components/SideNav/SideNav.js +93 -56
  122. package/lib/components/SideNav/SideNav.js.map +1 -1
  123. package/lib/components/SideNav/SideNavMethodTags.d.ts +10 -0
  124. package/lib/components/SideNav/SideNavMethodTags.js +42 -0
  125. package/lib/components/SideNav/SideNavMethodTags.js.map +1 -0
  126. package/lib/components/SideNav/SideNavMethods.d.ts +5 -5
  127. package/lib/components/SideNav/SideNavMethods.js +37 -93
  128. package/lib/components/SideNav/SideNavMethods.js.map +1 -1
  129. package/lib/components/SideNav/SideNavTypeTags.d.ts +10 -0
  130. package/lib/components/SideNav/SideNavTypeTags.js +42 -0
  131. package/lib/components/SideNav/SideNavTypeTags.js.map +1 -0
  132. package/lib/components/SideNav/SideNavTypes.d.ts +8 -5
  133. package/lib/components/SideNav/SideNavTypes.js +83 -32
  134. package/lib/components/SideNav/SideNavTypes.js.map +1 -1
  135. package/lib/components/SideNav/searchUtils.d.ts +2 -2
  136. package/lib/components/SideNav/searchUtils.js +1 -1
  137. package/lib/components/SideNav/searchUtils.js.map +1 -1
  138. package/lib/components/common/Loader.d.ts +2 -2
  139. package/lib/components/common/Loader.js.map +1 -1
  140. package/lib/components/common/common.d.ts +2 -3
  141. package/lib/components/common/common.js +3 -15
  142. package/lib/components/common/common.js.map +1 -1
  143. package/lib/components/common/index.d.ts +2 -2
  144. package/lib/components/common/index.js +22 -18
  145. package/lib/components/common/index.js.map +1 -1
  146. package/lib/components/index.d.ts +5 -4
  147. package/lib/components/index.js +26 -12
  148. package/lib/components/index.js.map +1 -1
  149. package/lib/esm/ApiExplorer.js +97 -77
  150. package/lib/esm/ApiExplorer.js.map +1 -1
  151. package/lib/esm/App.js +19 -0
  152. package/lib/esm/App.js.map +1 -0
  153. package/lib/esm/StandaloneApiExplorer.js +46 -22
  154. package/lib/esm/StandaloneApiExplorer.js.map +1 -1
  155. package/lib/esm/components/DocActivityType/DocActivityType.js.map +1 -1
  156. package/lib/esm/components/DocCode/DocCode.js +5 -8
  157. package/lib/esm/components/DocCode/DocCode.js.map +1 -1
  158. package/lib/esm/components/DocMarkdown/DocMarkdown.js +10 -12
  159. package/lib/esm/components/DocMarkdown/DocMarkdown.js.map +1 -1
  160. package/lib/esm/components/DocMethodSummary/DocMethodSummary.js +4 -6
  161. package/lib/esm/components/DocMethodSummary/DocMethodSummary.js.map +1 -1
  162. package/lib/esm/components/DocMethodSummary/DocSummaryStatus.js +3 -3
  163. package/lib/esm/components/DocMethodSummary/DocSummaryStatus.js.map +1 -1
  164. package/lib/esm/components/DocMethodSummary/index.js +1 -0
  165. package/lib/esm/components/DocMethodSummary/index.js.map +1 -1
  166. package/lib/esm/components/DocMethodSummary/utils.js +24 -15
  167. package/lib/esm/components/DocMethodSummary/utils.js.map +1 -1
  168. package/lib/esm/components/DocPseudo/DocParam.js.map +1 -1
  169. package/lib/esm/components/DocPseudo/DocParams.js.map +1 -1
  170. package/lib/esm/components/DocPseudo/DocPrimaryResponse.js.map +1 -1
  171. package/lib/esm/components/DocPseudo/DocPseudo.js.map +1 -1
  172. package/lib/esm/components/DocRateLimited/DocRateLimited.js.map +1 -1
  173. package/lib/esm/components/DocReferences/DocReferences.js +6 -9
  174. package/lib/esm/components/DocReferences/DocReferences.js.map +1 -1
  175. package/lib/esm/components/DocReferences/utils.js +3 -26
  176. package/lib/esm/components/DocReferences/utils.js.map +1 -1
  177. package/lib/esm/components/DocResponses/DocResponseTypes.js +3 -1
  178. package/lib/esm/components/DocResponses/DocResponseTypes.js.map +1 -1
  179. package/lib/esm/components/DocResponses/DocResponses.js +3 -1
  180. package/lib/esm/components/DocResponses/DocResponses.js.map +1 -1
  181. package/lib/esm/components/DocResponses/utils.js.map +1 -1
  182. package/lib/esm/components/DocSDKs/DocDeclarations.js.map +1 -1
  183. package/lib/esm/components/DocSDKs/DocSDKs.js +3 -4
  184. package/lib/esm/components/DocSDKs/DocSDKs.js.map +1 -1
  185. package/lib/esm/components/DocSDKs/utils.js.map +1 -1
  186. package/lib/esm/components/DocSchema/DocSchema.js +1 -1
  187. package/lib/esm/components/DocSchema/DocSchema.js.map +1 -1
  188. package/lib/esm/components/DocSdkUsage/DocSdkExampleCell.js.map +1 -1
  189. package/lib/esm/components/DocSdkUsage/DocSdkUsage.js +7 -9
  190. package/lib/esm/components/DocSdkUsage/DocSdkUsage.js.map +1 -1
  191. package/lib/esm/components/DocSdkUsage/utils.js.map +1 -1
  192. package/lib/esm/components/DocSource/DocSource.js +4 -5
  193. package/lib/esm/components/DocSource/DocSource.js.map +1 -1
  194. package/lib/esm/components/DocStatus/DocStatus.js.map +1 -1
  195. package/lib/esm/components/DocTitle/DocTitle.js +2 -2
  196. package/lib/esm/components/DocTitle/DocTitle.js.map +1 -1
  197. package/lib/esm/components/DocTypeSummary/DocTypeSummary.js +38 -0
  198. package/lib/esm/components/DocTypeSummary/DocTypeSummary.js.map +1 -0
  199. package/lib/esm/components/DocTypeSummary/index.js +2 -0
  200. package/lib/{state/action_creators.js.map → esm/components/DocTypeSummary/index.js.map} +1 -1
  201. package/lib/esm/components/ErrorBoundary/ErrorBoundary.js +1 -1
  202. package/lib/esm/components/ErrorBoundary/ErrorBoundary.js.map +1 -1
  203. package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js +153 -6
  204. package/lib/esm/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.js.map +1 -1
  205. package/lib/esm/components/ExploreType/ExploreProperty.js +14 -3
  206. package/lib/esm/components/ExploreType/ExploreProperty.js.map +1 -1
  207. package/lib/esm/components/ExploreType/ExploreType.js +8 -4
  208. package/lib/esm/components/ExploreType/ExploreType.js.map +1 -1
  209. package/lib/esm/components/ExploreType/exploreUtils.js.map +1 -1
  210. package/lib/esm/components/Header/Header.js +3 -1
  211. package/lib/esm/components/Header/Header.js.map +1 -1
  212. package/lib/esm/components/Header/index.js +1 -1
  213. package/lib/esm/components/Header/index.js.map +1 -1
  214. package/lib/esm/components/SelectorContainer/ApiSpecSelector.js +4 -2
  215. package/lib/esm/components/SelectorContainer/ApiSpecSelector.js.map +1 -1
  216. package/lib/esm/components/SelectorContainer/SdkLanguageSelector.js +7 -12
  217. package/lib/esm/components/SelectorContainer/SdkLanguageSelector.js.map +1 -1
  218. package/lib/esm/components/SelectorContainer/SelectorContainer.js +11 -3
  219. package/lib/esm/components/SelectorContainer/SelectorContainer.js.map +1 -1
  220. package/lib/esm/components/SideNav/SearchMessage.js.map +1 -1
  221. package/lib/esm/components/SideNav/SideNav.js +95 -57
  222. package/lib/esm/components/SideNav/SideNav.js.map +1 -1
  223. package/lib/esm/components/SideNav/SideNavMethodTags.js +29 -0
  224. package/lib/esm/components/SideNav/SideNavMethodTags.js.map +1 -0
  225. package/lib/esm/components/SideNav/SideNavMethods.js +38 -96
  226. package/lib/esm/components/SideNav/SideNavMethods.js.map +1 -1
  227. package/lib/esm/components/SideNav/SideNavTypeTags.js +29 -0
  228. package/lib/esm/components/SideNav/SideNavTypeTags.js.map +1 -0
  229. package/lib/esm/components/SideNav/SideNavTypes.js +84 -33
  230. package/lib/esm/components/SideNav/SideNavTypes.js.map +1 -1
  231. package/lib/esm/components/SideNav/searchUtils.js +1 -1
  232. package/lib/esm/components/SideNav/searchUtils.js.map +1 -1
  233. package/lib/esm/components/common/Loader.js.map +1 -1
  234. package/lib/esm/components/common/common.js +3 -11
  235. package/lib/esm/components/common/common.js.map +1 -1
  236. package/lib/esm/components/common/index.js +2 -2
  237. package/lib/esm/components/common/index.js.map +1 -1
  238. package/lib/esm/components/index.js +5 -4
  239. package/lib/esm/components/index.js.map +1 -1
  240. package/lib/esm/index.js +4 -18
  241. package/lib/esm/index.js.map +1 -1
  242. package/lib/esm/reducers/index.js +0 -1
  243. package/lib/esm/reducers/index.js.map +1 -1
  244. package/lib/esm/reducers/spec/actions.js.map +1 -1
  245. package/lib/esm/reducers/spec/reducer.js.map +1 -1
  246. package/lib/esm/reducers/spec/utils.js +17 -1
  247. package/lib/esm/reducers/spec/utils.js.map +1 -1
  248. package/lib/esm/routes/AppRouter.js +16 -14
  249. package/lib/esm/routes/AppRouter.js.map +1 -1
  250. package/lib/esm/scenes/DiffScene/DiffScene.js +65 -11
  251. package/lib/esm/scenes/DiffScene/DiffScene.js.map +1 -1
  252. package/lib/esm/scenes/DiffScene/DocDiff/DiffBanner.js.map +1 -1
  253. package/lib/esm/scenes/DiffScene/DocDiff/DiffItem.js +15 -22
  254. package/lib/esm/scenes/DiffScene/DocDiff/DiffItem.js.map +1 -1
  255. package/lib/esm/scenes/DiffScene/DocDiff/DiffLegend.js.map +1 -1
  256. package/lib/esm/scenes/DiffScene/DocDiff/DocDiff.js.map +1 -1
  257. package/lib/esm/scenes/DiffScene/DocDiff/docDiffUtils.js.map +1 -1
  258. package/lib/esm/scenes/DiffScene/diffUtils.js.map +1 -1
  259. package/lib/esm/scenes/HomeScene/HomeScene.js.map +1 -1
  260. package/lib/esm/scenes/MethodScene/MethodScene.js +80 -29
  261. package/lib/esm/scenes/MethodScene/MethodScene.js.map +1 -1
  262. package/lib/esm/scenes/MethodScene/components/DocOperation.js.map +1 -1
  263. package/lib/esm/scenes/MethodScene/components/DocRequestBody.js +5 -2
  264. package/lib/esm/scenes/MethodScene/components/DocRequestBody.js.map +1 -1
  265. package/lib/esm/scenes/{TagScene/TagScene.js → MethodTagScene/MethodTagScene.js} +16 -11
  266. package/lib/esm/scenes/MethodTagScene/MethodTagScene.js.map +1 -0
  267. package/lib/esm/scenes/MethodTagScene/index.js +2 -0
  268. package/lib/{state/reducers.js.map → esm/scenes/MethodTagScene/index.js.map} +1 -1
  269. package/lib/esm/scenes/{TagScene → MethodTagScene}/utils.js +0 -0
  270. package/lib/esm/scenes/MethodTagScene/utils.js.map +1 -0
  271. package/lib/esm/scenes/TypeScene/TypeScene.js +14 -7
  272. package/lib/esm/scenes/TypeScene/TypeScene.js.map +1 -1
  273. package/lib/esm/scenes/TypeTagScene/TypeTagScene.js +57 -0
  274. package/lib/esm/scenes/TypeTagScene/TypeTagScene.js.map +1 -0
  275. package/lib/esm/scenes/TypeTagScene/index.js +2 -0
  276. package/lib/esm/scenes/TypeTagScene/index.js.map +1 -0
  277. package/lib/esm/scenes/TypeTagScene/utils.js +8 -0
  278. package/lib/esm/scenes/TypeTagScene/utils.js.map +1 -0
  279. package/lib/esm/scenes/index.js +2 -1
  280. package/lib/esm/scenes/index.js.map +1 -1
  281. package/lib/esm/state/index.js +2 -3
  282. package/lib/esm/state/index.js.map +1 -1
  283. package/lib/esm/state/lodes/index.js +3 -0
  284. package/lib/esm/state/lodes/index.js.map +1 -0
  285. package/lib/esm/state/lodes/sagas.js +25 -0
  286. package/lib/esm/state/lodes/sagas.js.map +1 -0
  287. package/lib/esm/state/lodes/selectors.js +5 -0
  288. package/lib/esm/state/lodes/selectors.js.map +1 -0
  289. package/lib/esm/state/lodes/slice.js +30 -0
  290. package/lib/esm/state/lodes/slice.js.map +1 -0
  291. package/lib/esm/state/settings/index.js +1 -1
  292. package/lib/esm/state/settings/index.js.map +1 -1
  293. package/lib/esm/state/settings/sagas.js +59 -0
  294. package/lib/esm/state/settings/sagas.js.map +1 -0
  295. package/lib/esm/state/settings/selectors.js +6 -1
  296. package/lib/esm/state/settings/selectors.js.map +1 -1
  297. package/lib/esm/state/settings/slice.js +50 -0
  298. package/lib/esm/state/settings/slice.js.map +1 -0
  299. package/lib/esm/state/store.js +13 -3
  300. package/lib/esm/state/store.js.map +1 -1
  301. package/lib/esm/test-utils/index.js +3 -4
  302. package/lib/esm/test-utils/index.js.map +1 -1
  303. package/lib/esm/test-utils/lodes.js +12 -0
  304. package/lib/esm/test-utils/lodes.js.map +1 -0
  305. package/lib/esm/test-utils/redux.js +30 -15
  306. package/lib/esm/test-utils/redux.js.map +1 -1
  307. package/lib/esm/test-utils/router.js.map +1 -1
  308. package/lib/esm/utils/index.js +1 -2
  309. package/lib/esm/utils/index.js.map +1 -1
  310. package/lib/esm/utils/lodeUtils.js +3 -7
  311. package/lib/esm/utils/lodeUtils.js.map +1 -1
  312. package/lib/esm/utils/path.js +32 -1
  313. package/lib/esm/utils/path.js.map +1 -1
  314. package/lib/index.d.ts +4 -1
  315. package/lib/index.js +52 -23
  316. package/lib/index.js.map +1 -1
  317. package/lib/reducers/index.d.ts +0 -1
  318. package/lib/reducers/index.js +0 -13
  319. package/lib/reducers/index.js.map +1 -1
  320. package/lib/reducers/spec/actions.d.ts +1 -1
  321. package/lib/reducers/spec/actions.js.map +1 -1
  322. package/lib/reducers/spec/reducer.d.ts +2 -2
  323. package/lib/reducers/spec/reducer.js.map +1 -1
  324. package/lib/reducers/spec/utils.d.ts +3 -3
  325. package/lib/reducers/spec/utils.js +18 -1
  326. package/lib/reducers/spec/utils.js.map +1 -1
  327. package/lib/routes/AppRouter.d.ts +6 -2
  328. package/lib/routes/AppRouter.js +15 -16
  329. package/lib/routes/AppRouter.js.map +1 -1
  330. package/lib/scenes/DiffScene/DiffScene.d.ts +2 -2
  331. package/lib/scenes/DiffScene/DiffScene.js +65 -11
  332. package/lib/scenes/DiffScene/DiffScene.js.map +1 -1
  333. package/lib/scenes/DiffScene/DocDiff/DiffBanner.d.ts +2 -2
  334. package/lib/scenes/DiffScene/DocDiff/DiffBanner.js.map +1 -1
  335. package/lib/scenes/DiffScene/DocDiff/DiffItem.d.ts +3 -3
  336. package/lib/scenes/DiffScene/DocDiff/DiffItem.js +13 -20
  337. package/lib/scenes/DiffScene/DocDiff/DiffItem.js.map +1 -1
  338. package/lib/scenes/DiffScene/DocDiff/DiffLegend.d.ts +2 -2
  339. package/lib/scenes/DiffScene/DocDiff/DiffLegend.js.map +1 -1
  340. package/lib/scenes/DiffScene/DocDiff/DocDiff.d.ts +2 -2
  341. package/lib/scenes/DiffScene/DocDiff/DocDiff.js.map +1 -1
  342. package/lib/scenes/DiffScene/DocDiff/docDiffUtils.d.ts +1 -1
  343. package/lib/scenes/DiffScene/DocDiff/docDiffUtils.js.map +1 -1
  344. package/lib/scenes/DiffScene/diffUtils.d.ts +1 -1
  345. package/lib/scenes/DiffScene/diffUtils.js.map +1 -1
  346. package/lib/scenes/HomeScene/HomeScene.d.ts +2 -2
  347. package/lib/scenes/HomeScene/HomeScene.js.map +1 -1
  348. package/lib/scenes/MethodScene/MethodScene.d.ts +8 -4
  349. package/lib/scenes/MethodScene/MethodScene.js +75 -27
  350. package/lib/scenes/MethodScene/MethodScene.js.map +1 -1
  351. package/lib/scenes/MethodScene/components/DocOperation.d.ts +2 -2
  352. package/lib/scenes/MethodScene/components/DocOperation.js.map +1 -1
  353. package/lib/scenes/MethodScene/components/DocRequestBody.d.ts +3 -2
  354. package/lib/scenes/MethodScene/components/DocRequestBody.js +6 -2
  355. package/lib/scenes/MethodScene/components/DocRequestBody.js.map +1 -1
  356. package/lib/scenes/MethodTagScene/MethodTagScene.d.ts +7 -0
  357. package/lib/scenes/{TagScene/TagScene.js → MethodTagScene/MethodTagScene.js} +19 -14
  358. package/lib/scenes/MethodTagScene/MethodTagScene.js.map +1 -0
  359. package/lib/scenes/MethodTagScene/index.d.ts +1 -0
  360. package/lib/scenes/MethodTagScene/index.js +14 -0
  361. package/lib/{context/search/SearchContext.js.map → scenes/MethodTagScene/index.js.map} +1 -1
  362. package/lib/scenes/{TagScene → MethodTagScene}/utils.d.ts +1 -1
  363. package/lib/scenes/{TagScene → MethodTagScene}/utils.js +0 -0
  364. package/lib/{context/lode/index.js.map → scenes/MethodTagScene/utils.js.map} +1 -1
  365. package/lib/scenes/TypeScene/TypeScene.d.ts +2 -2
  366. package/lib/scenes/TypeScene/TypeScene.js +16 -7
  367. package/lib/scenes/TypeScene/TypeScene.js.map +1 -1
  368. package/lib/scenes/TypeTagScene/TypeTagScene.d.ts +7 -0
  369. package/lib/scenes/TypeTagScene/TypeTagScene.js +76 -0
  370. package/lib/scenes/TypeTagScene/TypeTagScene.js.map +1 -0
  371. package/lib/scenes/TypeTagScene/index.d.ts +1 -0
  372. package/lib/scenes/TypeTagScene/index.js +14 -0
  373. package/lib/{esm/state/settings/actions.js.map → scenes/TypeTagScene/index.js.map} +1 -1
  374. package/lib/scenes/TypeTagScene/utils.d.ts +2 -0
  375. package/lib/scenes/TypeTagScene/utils.js +17 -0
  376. package/lib/scenes/TypeTagScene/utils.js.map +1 -0
  377. package/lib/scenes/index.d.ts +2 -1
  378. package/lib/scenes/index.js +11 -3
  379. package/lib/scenes/index.js.map +1 -1
  380. package/lib/state/index.d.ts +2 -2
  381. package/lib/state/index.js +15 -16
  382. package/lib/state/index.js.map +1 -1
  383. package/lib/state/lodes/index.d.ts +2 -0
  384. package/lib/{reducers/search → state/lodes}/index.js +8 -8
  385. package/lib/state/lodes/index.js.map +1 -0
  386. package/lib/state/lodes/sagas.d.ts +1 -0
  387. package/lib/state/lodes/sagas.js +34 -0
  388. package/lib/state/lodes/sagas.js.map +1 -0
  389. package/lib/state/lodes/selectors.d.ts +3 -0
  390. package/lib/state/lodes/selectors.js +17 -0
  391. package/lib/state/lodes/selectors.js.map +1 -0
  392. package/lib/state/lodes/slice.d.ts +29 -0
  393. package/lib/state/lodes/slice.js +45 -0
  394. package/lib/state/lodes/slice.js.map +1 -0
  395. package/lib/state/settings/index.d.ts +1 -1
  396. package/lib/state/settings/index.js +8 -8
  397. package/lib/state/settings/index.js.map +1 -1
  398. package/lib/state/settings/sagas.d.ts +1 -0
  399. package/lib/state/settings/sagas.js +69 -0
  400. package/lib/state/settings/sagas.js.map +1 -0
  401. package/lib/state/settings/selectors.d.ts +5 -2
  402. package/lib/state/settings/selectors.js +17 -3
  403. package/lib/state/settings/selectors.js.map +1 -1
  404. package/lib/state/settings/slice.d.ts +42 -0
  405. package/lib/state/settings/slice.js +69 -0
  406. package/lib/state/settings/slice.js.map +1 -0
  407. package/lib/state/store.d.ts +10 -6
  408. package/lib/state/store.js +15 -5
  409. package/lib/state/store.js.map +1 -1
  410. package/lib/test-data/declarations.js +24 -0
  411. package/lib/test-data/declarations.js.map +1 -0
  412. package/lib/test-data/examples.js.map +1 -1
  413. package/lib/test-data/index.js +23 -0
  414. package/lib/test-data/index.js.map +1 -1
  415. package/lib/test-data/specs.js.map +1 -1
  416. package/lib/test-utils/index.d.ts +3 -4
  417. package/lib/test-utils/index.js +33 -56
  418. package/lib/test-utils/index.js.map +1 -1
  419. package/lib/test-utils/lodes.d.ts +4 -0
  420. package/lib/test-utils/lodes.js +23 -0
  421. package/lib/test-utils/lodes.js.map +1 -0
  422. package/lib/test-utils/redux.d.ts +16 -12
  423. package/lib/test-utils/redux.js +36 -17
  424. package/lib/test-utils/redux.js.map +1 -1
  425. package/lib/test-utils/router.d.ts +2 -2
  426. package/lib/test-utils/router.js.map +1 -1
  427. package/lib/utils/highlight.d.ts +1 -0
  428. package/lib/utils/index.d.ts +1 -2
  429. package/lib/utils/index.js +6 -23
  430. package/lib/utils/index.js.map +1 -1
  431. package/lib/utils/lodeUtils.d.ts +3 -3
  432. package/lib/utils/lodeUtils.js +3 -7
  433. package/lib/utils/lodeUtils.js.map +1 -1
  434. package/lib/utils/path.d.ts +3 -1
  435. package/lib/utils/path.js +36 -2
  436. package/lib/utils/path.js.map +1 -1
  437. package/package.json +29 -15
  438. package/public/Looker.3.1.json +1343 -412
  439. package/public/Looker.4.0.json +3305 -661
  440. package/public/versions.json +1 -1
  441. package/src/ApiExplorer.tsx +160 -99
  442. package/src/{index.tsx → App.tsx} +1 -1
  443. package/src/StandaloneApiExplorer.tsx +38 -29
  444. package/src/components/DocActivityType/DocActivityType.tsx +3 -2
  445. package/src/components/DocCode/DocCode.tsx +7 -6
  446. package/src/components/DocMarkdown/DocMarkdown.spec.tsx +16 -11
  447. package/src/components/DocMarkdown/DocMarkdown.tsx +11 -9
  448. package/src/components/DocMethodSummary/DocMethodSummary.spec.tsx +2 -2
  449. package/src/components/DocMethodSummary/DocMethodSummary.tsx +8 -8
  450. package/src/components/DocMethodSummary/DocSummaryStatus.spec.tsx +5 -5
  451. package/src/components/DocMethodSummary/DocSummaryStatus.tsx +5 -7
  452. package/src/components/DocMethodSummary/index.tsx +1 -0
  453. package/src/components/DocMethodSummary/utils.spec.tsx +7 -7
  454. package/src/components/DocMethodSummary/utils.tsx +17 -23
  455. package/src/components/DocPseudo/DocParam.tsx +3 -2
  456. package/src/components/DocPseudo/DocParams.tsx +3 -2
  457. package/src/components/DocPseudo/DocPrimaryResponse.tsx +3 -2
  458. package/src/components/DocPseudo/DocPseudo.tsx +3 -2
  459. package/src/components/DocRateLimited/DocRateLimited.tsx +3 -2
  460. package/src/components/DocReferences/DocReferences.spec.tsx +19 -8
  461. package/src/components/DocReferences/DocReferences.tsx +10 -10
  462. package/src/components/DocReferences/utils.spec.tsx +1 -13
  463. package/src/components/DocReferences/utils.tsx +4 -39
  464. package/src/components/DocResponses/DocResponseTypes.tsx +15 -4
  465. package/src/components/DocResponses/DocResponses.spec.tsx +1 -1
  466. package/src/components/DocResponses/DocResponses.tsx +7 -5
  467. package/src/components/DocResponses/utils.ts +1 -1
  468. package/src/components/DocSDKs/DocDeclarations.tsx +3 -2
  469. package/src/components/DocSDKs/DocSDKs.spec.tsx +12 -5
  470. package/src/components/DocSDKs/DocSDKs.tsx +7 -7
  471. package/src/components/DocSDKs/utils.ts +1 -1
  472. package/src/components/DocSchema/DocSchema.tsx +3 -2
  473. package/src/components/DocSdkUsage/DocSdkExampleCell.tsx +2 -1
  474. package/src/components/DocSdkUsage/DocSdkUsage.spec.tsx +2 -2
  475. package/src/components/DocSdkUsage/DocSdkUsage.tsx +10 -8
  476. package/src/components/DocSdkUsage/utils.ts +4 -2
  477. package/src/components/DocSource/DocSource.spec.tsx +2 -1
  478. package/src/components/DocSource/DocSource.tsx +7 -4
  479. package/src/components/DocStatus/DocStatus.spec.tsx +1 -1
  480. package/src/components/DocStatus/DocStatus.tsx +3 -2
  481. package/src/components/DocTitle/DocTitle.tsx +4 -3
  482. package/src/{state/settings/action_creators.spec.ts → components/DocTypeSummary/DocTypeSummary.spec.tsx} +15 -10
  483. package/src/components/DocTypeSummary/DocTypeSummary.tsx +64 -0
  484. package/src/{state/action_creators.ts → components/DocTypeSummary/index.tsx} +1 -1
  485. package/src/components/ErrorBoundary/ErrorBoundary.spec.tsx +11 -9
  486. package/src/components/ErrorBoundary/ErrorBoundary.tsx +1 -1
  487. package/src/components/ErrorBoundary/components/SomethingWentWrong/SomethingWentWrong.spec.tsx +6 -5
  488. package/src/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/SomethingWentWrongGraphic.tsx +170 -6
  489. package/src/components/ExploreType/ExploreProperty.spec.tsx +15 -6
  490. package/src/components/ExploreType/ExploreProperty.tsx +26 -12
  491. package/src/components/ExploreType/ExploreType.spec.tsx +15 -31
  492. package/src/components/ExploreType/ExploreType.tsx +13 -6
  493. package/src/components/ExploreType/exploreUtils.tsx +3 -2
  494. package/src/components/Header/Header.spec.tsx +29 -37
  495. package/src/components/Header/Header.tsx +8 -4
  496. package/src/components/Header/index.ts +1 -1
  497. package/src/components/SelectorContainer/ApiSpecSelector.spec.tsx +12 -2
  498. package/src/components/SelectorContainer/ApiSpecSelector.tsx +9 -5
  499. package/src/components/SelectorContainer/SdkLanguageSelector.spec.tsx +13 -7
  500. package/src/components/SelectorContainer/SdkLanguageSelector.tsx +7 -14
  501. package/src/components/SelectorContainer/SelectorContainer.spec.tsx +19 -25
  502. package/src/components/SelectorContainer/SelectorContainer.tsx +8 -5
  503. package/src/components/SideNav/SearchMessage.tsx +3 -2
  504. package/src/components/SideNav/SideNav.spec.tsx +28 -41
  505. package/src/components/SideNav/SideNav.tsx +102 -68
  506. package/src/components/SideNav/{SideNavTags.spec.tsx → SideNavMethodTags.spec.tsx} +10 -8
  507. package/src/components/SideNav/{SideNavTags.tsx → SideNavMethodTags.tsx} +21 -19
  508. package/src/components/SideNav/SideNavMethods.spec.tsx +9 -5
  509. package/src/components/SideNav/SideNavMethods.tsx +78 -126
  510. package/src/components/SideNav/SideNavTypeTags.spec.tsx +79 -0
  511. package/src/{context/search/SearchContext.ts → components/SideNav/SideNavTypeTags.tsx} +27 -14
  512. package/src/components/SideNav/SideNavTypes.spec.tsx +13 -6
  513. package/src/components/SideNav/SideNavTypes.tsx +94 -43
  514. package/src/components/SideNav/{searchUtils.tsx → searchUtils.ts} +3 -3
  515. package/src/components/common/Loader.tsx +3 -2
  516. package/src/components/common/common.tsx +5 -15
  517. package/src/components/common/index.ts +2 -2
  518. package/src/components/index.ts +5 -4
  519. package/src/{context/lode/index.ts → index.ts} +4 -1
  520. package/src/reducers/index.ts +0 -1
  521. package/src/reducers/spec/actions.ts +1 -1
  522. package/src/reducers/spec/reducer.spec.ts +2 -1
  523. package/src/reducers/spec/reducer.ts +5 -3
  524. package/src/reducers/spec/utils.spec.ts +1 -1
  525. package/src/reducers/spec/utils.ts +18 -6
  526. package/src/routes/AppRouter.tsx +28 -15
  527. package/src/scenes/DiffScene/DiffScene.tsx +44 -13
  528. package/src/scenes/DiffScene/DocDiff/DiffBanner.tsx +3 -2
  529. package/src/scenes/DiffScene/DocDiff/DiffItem.spec.tsx +2 -1
  530. package/src/scenes/DiffScene/DocDiff/DiffItem.tsx +32 -49
  531. package/src/scenes/DiffScene/DocDiff/DiffLegend.tsx +3 -2
  532. package/src/scenes/DiffScene/DocDiff/DocDiff.tsx +3 -2
  533. package/src/scenes/DiffScene/DocDiff/docDiffUtils.tsx +2 -7
  534. package/src/scenes/DiffScene/diffUtils.spec.ts +2 -1
  535. package/src/scenes/DiffScene/diffUtils.ts +2 -2
  536. package/src/scenes/HomeScene/HomeScene.tsx +3 -2
  537. package/src/scenes/MethodScene/MethodScene.tsx +89 -44
  538. package/src/scenes/MethodScene/components/DocOperation.tsx +3 -2
  539. package/src/scenes/MethodScene/components/DocRequestBody.spec.tsx +2 -2
  540. package/src/scenes/MethodScene/components/DocRequestBody.tsx +8 -5
  541. package/src/scenes/{TagScene/TagScene.spec.tsx → MethodTagScene/MethodTagScene.spec.tsx} +5 -5
  542. package/src/scenes/{TagScene/TagScene.tsx → MethodTagScene/MethodTagScene.tsx} +23 -16
  543. package/src/{components/Collapser → scenes/MethodTagScene}/index.ts +1 -2
  544. package/src/scenes/{TagScene → MethodTagScene}/utils.spec.ts +1 -1
  545. package/src/scenes/{TagScene → MethodTagScene}/utils.ts +1 -1
  546. package/src/scenes/TypeScene/TypeScene.tsx +36 -24
  547. package/src/scenes/TypeTagScene/TypeTagScene.spec.tsx +103 -0
  548. package/src/scenes/TypeTagScene/TypeTagScene.tsx +93 -0
  549. package/src/scenes/{TagScene → TypeTagScene}/index.ts +1 -1
  550. package/src/{state/reducers.ts → scenes/TypeTagScene/utils.spec.ts} +8 -7
  551. package/src/{hooks/use_actions_hook.ts → scenes/TypeTagScene/utils.ts} +13 -10
  552. package/src/scenes/index.ts +2 -1
  553. package/src/state/index.ts +2 -2
  554. package/src/{reducers/search → state/lodes}/index.ts +2 -2
  555. package/src/state/lodes/sagas.spec.ts +92 -0
  556. package/src/state/{settings/reducer.ts → lodes/sagas.ts} +23 -21
  557. package/src/state/{settings/reducer.spec.ts → lodes/selectors.spec.ts} +15 -14
  558. package/src/state/{settings/actions.ts → lodes/selectors.ts} +7 -9
  559. package/src/state/lodes/slice.ts +69 -0
  560. package/src/state/settings/index.ts +1 -1
  561. package/src/state/settings/sagas.spec.ts +121 -0
  562. package/src/state/settings/sagas.ts +79 -0
  563. package/src/state/settings/selectors.spec.ts +16 -9
  564. package/src/state/settings/selectors.ts +14 -3
  565. package/src/state/settings/slice.ts +94 -0
  566. package/src/state/store.ts +22 -8
  567. package/src/{context/envAdaptor/EnvAdaptorContext.ts → test-data/declarations.ts} +17 -12
  568. package/src/test-data/examples.ts +1 -1
  569. package/src/test-data/index.ts +1 -0
  570. package/src/test-data/specs.ts +2 -1
  571. package/src/test-utils/index.ts +3 -14
  572. package/src/{context/lode/LodeContext.ts → test-utils/lodes.tsx} +15 -14
  573. package/src/test-utils/redux.tsx +46 -26
  574. package/src/test-utils/router.tsx +3 -2
  575. package/src/utils/index.ts +7 -2
  576. package/src/utils/lodeUtils.ts +5 -7
  577. package/src/utils/path.spec.ts +17 -3
  578. package/src/utils/path.ts +54 -4
  579. package/webpack.dev.config.js +3 -0
  580. package/webpack.prod.config.js +4 -0
  581. package/lib/components/Collapser/CollapserCard.d.ts +0 -9
  582. package/lib/components/Collapser/CollapserCard.js +0 -50
  583. package/lib/components/Collapser/CollapserCard.js.map +0 -1
  584. package/lib/components/Collapser/index.d.ts +0 -1
  585. package/lib/components/Collapser/index.js +0 -14
  586. package/lib/components/Collapser/index.js.map +0 -1
  587. package/lib/components/SideNav/SearchCriteriaSelector.d.ts +0 -2
  588. package/lib/components/SideNav/SearchCriteriaSelector.js +0 -57
  589. package/lib/components/SideNav/SearchCriteriaSelector.js.map +0 -1
  590. package/lib/components/SideNav/SideNavTags.d.ts +0 -9
  591. package/lib/components/SideNav/SideNavTags.js +0 -30
  592. package/lib/components/SideNav/SideNavTags.js.map +0 -1
  593. package/lib/context/envAdaptor/EnvAdaptorContext.d.ts +0 -7
  594. package/lib/context/envAdaptor/EnvAdaptorContext.js +0 -18
  595. package/lib/context/envAdaptor/EnvAdaptorContext.js.map +0 -1
  596. package/lib/context/envAdaptor/index.d.ts +0 -1
  597. package/lib/context/envAdaptor/index.js +0 -20
  598. package/lib/context/envAdaptor/index.js.map +0 -1
  599. package/lib/context/index.d.ts +0 -3
  600. package/lib/context/index.js +0 -48
  601. package/lib/context/index.js.map +0 -1
  602. package/lib/context/lode/LodeContext.d.ts +0 -9
  603. package/lib/context/lode/LodeContext.js +0 -21
  604. package/lib/context/lode/LodeContext.js.map +0 -1
  605. package/lib/context/lode/index.d.ts +0 -1
  606. package/lib/context/lode/index.js +0 -20
  607. package/lib/context/search/SearchContext.d.ts +0 -9
  608. package/lib/context/search/SearchContext.js +0 -19
  609. package/lib/context/search/index.d.ts +0 -1
  610. package/lib/context/search/index.js +0 -20
  611. package/lib/context/search/index.js.map +0 -1
  612. package/lib/esm/components/Collapser/CollapserCard.js +0 -34
  613. package/lib/esm/components/Collapser/CollapserCard.js.map +0 -1
  614. package/lib/esm/components/Collapser/index.js +0 -2
  615. package/lib/esm/components/Collapser/index.js.map +0 -1
  616. package/lib/esm/components/SideNav/SearchCriteriaSelector.js +0 -38
  617. package/lib/esm/components/SideNav/SearchCriteriaSelector.js.map +0 -1
  618. package/lib/esm/components/SideNav/SideNavTags.js +0 -17
  619. package/lib/esm/components/SideNav/SideNavTags.js.map +0 -1
  620. package/lib/esm/context/envAdaptor/EnvAdaptorContext.js +0 -7
  621. package/lib/esm/context/envAdaptor/EnvAdaptorContext.js.map +0 -1
  622. package/lib/esm/context/envAdaptor/index.js +0 -2
  623. package/lib/esm/context/envAdaptor/index.js.map +0 -1
  624. package/lib/esm/context/index.js +0 -4
  625. package/lib/esm/context/index.js.map +0 -1
  626. package/lib/esm/context/lode/LodeContext.js +0 -11
  627. package/lib/esm/context/lode/LodeContext.js.map +0 -1
  628. package/lib/esm/context/lode/index.js +0 -2
  629. package/lib/esm/context/lode/index.js.map +0 -1
  630. package/lib/esm/context/search/SearchContext.js +0 -8
  631. package/lib/esm/context/search/SearchContext.js.map +0 -1
  632. package/lib/esm/context/search/index.js +0 -2
  633. package/lib/esm/context/search/index.js.map +0 -1
  634. package/lib/esm/hooks/index.js +0 -2
  635. package/lib/esm/hooks/index.js.map +0 -1
  636. package/lib/esm/hooks/use_actions_hook.js +0 -11
  637. package/lib/esm/hooks/use_actions_hook.js.map +0 -1
  638. package/lib/esm/reducers/search/actions.js +0 -13
  639. package/lib/esm/reducers/search/actions.js.map +0 -1
  640. package/lib/esm/reducers/search/index.js +0 -3
  641. package/lib/esm/reducers/search/index.js.map +0 -1
  642. package/lib/esm/reducers/search/reducer.js +0 -31
  643. package/lib/esm/reducers/search/reducer.js.map +0 -1
  644. package/lib/esm/scenes/MethodScene/utils.js +0 -72
  645. package/lib/esm/scenes/MethodScene/utils.js.map +0 -1
  646. package/lib/esm/scenes/TagScene/TagScene.js.map +0 -1
  647. package/lib/esm/scenes/TagScene/index.js +0 -2
  648. package/lib/esm/scenes/TagScene/index.js.map +0 -1
  649. package/lib/esm/scenes/TagScene/utils.js.map +0 -1
  650. package/lib/esm/state/action_creators.js +0 -2
  651. package/lib/esm/state/action_creators.js.map +0 -1
  652. package/lib/esm/state/reducers.js +0 -6
  653. package/lib/esm/state/reducers.js.map +0 -1
  654. package/lib/esm/state/settings/action_creators.js +0 -6
  655. package/lib/esm/state/settings/action_creators.js.map +0 -1
  656. package/lib/esm/state/settings/actions.js +0 -6
  657. package/lib/esm/state/settings/reducer.js +0 -19
  658. package/lib/esm/state/settings/reducer.js.map +0 -1
  659. package/lib/esm/test-utils/render_with_lode.js +0 -19
  660. package/lib/esm/test-utils/render_with_lode.js.map +0 -1
  661. package/lib/esm/test-utils/render_with_search.js +0 -34
  662. package/lib/esm/test-utils/render_with_search.js.map +0 -1
  663. package/lib/esm/utils/envAdaptor.js +0 -68
  664. package/lib/esm/utils/envAdaptor.js.map +0 -1
  665. package/lib/hooks/index.d.ts +0 -1
  666. package/lib/hooks/index.js +0 -14
  667. package/lib/hooks/index.js.map +0 -1
  668. package/lib/hooks/use_actions_hook.d.ts +0 -2
  669. package/lib/hooks/use_actions_hook.js +0 -24
  670. package/lib/hooks/use_actions_hook.js.map +0 -1
  671. package/lib/reducers/search/actions.d.ts +0 -4
  672. package/lib/reducers/search/actions.js +0 -25
  673. package/lib/reducers/search/actions.js.map +0 -1
  674. package/lib/reducers/search/index.d.ts +0 -2
  675. package/lib/reducers/search/index.js.map +0 -1
  676. package/lib/reducers/search/reducer.d.ts +0 -11
  677. package/lib/reducers/search/reducer.js +0 -43
  678. package/lib/reducers/search/reducer.js.map +0 -1
  679. package/lib/scenes/MethodScene/utils.d.ts +0 -3
  680. package/lib/scenes/MethodScene/utils.js +0 -81
  681. package/lib/scenes/MethodScene/utils.js.map +0 -1
  682. package/lib/scenes/TagScene/TagScene.d.ts +0 -7
  683. package/lib/scenes/TagScene/TagScene.js.map +0 -1
  684. package/lib/scenes/TagScene/index.d.ts +0 -1
  685. package/lib/scenes/TagScene/index.js +0 -14
  686. package/lib/scenes/TagScene/index.js.map +0 -1
  687. package/lib/scenes/TagScene/utils.js.map +0 -1
  688. package/lib/state/action_creators.d.ts +0 -1
  689. package/lib/state/action_creators.js +0 -19
  690. package/lib/state/reducers.d.ts +0 -4
  691. package/lib/state/reducers.js +0 -16
  692. package/lib/state/settings/action_creators.d.ts +0 -2
  693. package/lib/state/settings/action_creators.js +0 -16
  694. package/lib/state/settings/action_creators.js.map +0 -1
  695. package/lib/state/settings/actions.d.ts +0 -8
  696. package/lib/state/settings/actions.js +0 -13
  697. package/lib/state/settings/actions.js.map +0 -1
  698. package/lib/state/settings/reducer.d.ts +0 -6
  699. package/lib/state/settings/reducer.js +0 -31
  700. package/lib/state/settings/reducer.js.map +0 -1
  701. package/lib/test-utils/render_with_lode.d.ts +0 -9
  702. package/lib/test-utils/render_with_lode.js +0 -36
  703. package/lib/test-utils/render_with_lode.js.map +0 -1
  704. package/lib/test-utils/render_with_search.d.ts +0 -4
  705. package/lib/test-utils/render_with_search.js +0 -52
  706. package/lib/test-utils/render_with_search.js.map +0 -1
  707. package/lib/utils/envAdaptor.d.ts +0 -27
  708. package/lib/utils/envAdaptor.js +0 -81
  709. package/lib/utils/envAdaptor.js.map +0 -1
  710. package/src/components/Collapser/CollapserCard.spec.tsx +0 -50
  711. package/src/components/Collapser/CollapserCard.tsx +0 -76
  712. package/src/components/ErrorBoundary/components/SomethingWentWrong/components/SomethingWentWrongGraphic/somethingWentWrong.svg +0 -45
  713. package/src/components/SideNav/SearchCriteriaSelector.tsx +0 -75
  714. package/src/context/envAdaptor/index.ts +0 -29
  715. package/src/context/index.ts +0 -28
  716. package/src/context/search/index.ts +0 -26
  717. package/src/hooks/index.ts +0 -26
  718. package/src/reducers/search/actions.spec.ts +0 -50
  719. package/src/reducers/search/reducer.spec.ts +0 -72
  720. package/src/scenes/MethodScene/utils.spec.ts +0 -95
  721. package/src/scenes/MethodScene/utils.ts +0 -121
  722. package/src/state/settings/action_creators.ts +0 -33
  723. package/src/test-utils/render_with_lode.tsx +0 -74
  724. package/src/test-utils/render_with_search.tsx +0 -69
  725. package/src/utils/envAdaptor.spec.ts +0 -53
  726. package/src/utils/envAdaptor.ts +0 -120
@@ -0,0 +1,79 @@
1
+ /*
2
+
3
+ MIT License
4
+
5
+ Copyright (c) 2021 Looker Data Sciences, Inc.
6
+
7
+ Permission is hereby granted, free of charge, to any person obtaining a copy
8
+ of this software and associated documentation files (the "Software"), to deal
9
+ in the Software without restriction, including without limitation the rights
10
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
11
+ copies of the Software, and to permit persons to whom the Software is
12
+ furnished to do so, subject to the following conditions:
13
+
14
+ The above copyright notice and this permission notice shall be included in all
15
+ copies or substantial portions of the Software.
16
+
17
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
18
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
20
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
22
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
23
+ SOFTWARE.
24
+
25
+ */
26
+
27
+ import React from 'react'
28
+ import pick from 'lodash/pick'
29
+ import { screen } from '@testing-library/react'
30
+ import userEvent from '@testing-library/user-event'
31
+
32
+ import { api } from '../../test-data'
33
+ import { renderWithRouterAndReduxProvider } from '../../test-utils'
34
+ import { SideNavTypeTags } from './SideNavTypeTags'
35
+
36
+ describe('SideNavTypeTags', () => {
37
+ const tags = pick(api.typeTags, ['ApiAuth', 'Dashboard'])
38
+ test('it renders a provided tag and its methods', () => {
39
+ renderWithRouterAndReduxProvider(
40
+ <SideNavTypeTags tags={tags} specKey={'3.1'} />
41
+ )
42
+ const tag = screen.getByText('Dashboard')
43
+ const tagContent = 'CreateDashboardFilter'
44
+ expect(screen.queryByText(tagContent)).not.toBeInTheDocument()
45
+ userEvent.click(tag)
46
+ expect(screen.getByText(tagContent)).toBeInTheDocument()
47
+ const methods = screen.getAllByRole('link')
48
+ expect(methods).toHaveLength(Object.keys(tags.Dashboard).length)
49
+ })
50
+
51
+ test('tags are rendered initially collapsed and expand when clicked', () => {
52
+ renderWithRouterAndReduxProvider(
53
+ <SideNavTypeTags tags={tags} specKey={'3.1'} />
54
+ )
55
+
56
+ const allTags = screen.getAllByText(/ApiAuth|Dashboard/)
57
+ expect(allTags).toHaveLength(2)
58
+ expect(screen.queryByText('AccessToken')).not.toBeInTheDocument()
59
+ expect(screen.queryByText('CreateDashboardFilter')).not.toBeInTheDocument()
60
+ userEvent.click(allTags[0])
61
+ expect(screen.getByText('AccessToken')).toBeInTheDocument()
62
+ expect(screen.queryByText('CreateDashboardFilter')).not.toBeInTheDocument()
63
+ })
64
+
65
+ test('tag is expanded if specified in route', () => {
66
+ const tags = pick(api.typeTags, ['ApiAuth', 'DataAction'])
67
+ renderWithRouterAndReduxProvider(
68
+ <SideNavTypeTags tags={tags} specKey={'3.1'} />,
69
+ ['/3.1/types/DataAction']
70
+ )
71
+
72
+ const allTags = screen.getAllByText(/^(ApiAuth|DataAction)$/)
73
+ expect(allTags).toHaveLength(2)
74
+ expect(screen.queryByText('AccessToken')).not.toBeInTheDocument()
75
+ expect(screen.getAllByRole('link')).toHaveLength(
76
+ Object.keys(tags.DataAction).length
77
+ )
78
+ })
79
+ })
@@ -24,19 +24,32 @@
24
24
 
25
25
  */
26
26
 
27
- import { createContext, Dispatch } from 'react'
28
- import { SearchState, SearchAction, defaultSearchState } from '../../reducers'
29
-
30
- interface SearchContextProps {
31
- searchSettings: SearchState
32
- setSearchSettings: Dispatch<SearchAction>
33
- }
34
-
35
- export const defaultSearchContextValue: SearchContextProps = {
36
- searchSettings: defaultSearchState,
37
- setSearchSettings: () => undefined,
27
+ import React from 'react'
28
+ import styled from 'styled-components'
29
+ import type { TypeTagList } from '@looker/sdk-codegen'
30
+ import { SideNavTypes } from './SideNavTypes'
31
+
32
+ interface TypeTagsProps {
33
+ tags: TypeTagList
34
+ specKey: string
35
+ defaultOpen?: boolean
36
+ className?: string
38
37
  }
39
38
 
40
- export const SearchContext = createContext<SearchContextProps>(
41
- defaultSearchContextValue
42
- )
39
+ export const SideNavTypeTags = styled(
40
+ ({ tags, specKey, className, defaultOpen }: TypeTagsProps) => (
41
+ <div className={className}>
42
+ {Object.keys(tags).map((tag) => (
43
+ <SideNavTypes
44
+ key={tag}
45
+ defaultOpen={defaultOpen}
46
+ types={tags[tag]}
47
+ tag={tag}
48
+ specKey={specKey}
49
+ />
50
+ ))}
51
+ </div>
52
+ )
53
+ )`
54
+ padding: 0 ${({ theme }) => theme.space.large};
55
+ `
@@ -27,32 +27,39 @@ import React from 'react'
27
27
  import { screen } from '@testing-library/react'
28
28
 
29
29
  import { api } from '../../test-data'
30
- import { renderWithSearchAndRouter } from '../../test-utils'
30
+ import {
31
+ createTestStore,
32
+ renderWithRouterAndReduxProvider,
33
+ } from '../../test-utils'
31
34
  import { SideNavTypes } from './SideNavTypes'
32
35
 
33
36
  describe('SideNavTypes', () => {
34
37
  test('it renders provided types', () => {
35
- renderWithSearchAndRouter(
38
+ renderWithRouterAndReduxProvider(
36
39
  <SideNavTypes
37
40
  specKey={'3.1'}
38
41
  types={{
39
42
  Dashboard: api.types.Dashboard,
40
43
  }}
44
+ tag="Dashboard"
41
45
  />
42
46
  )
43
- const dashboardType = screen.getByRole('link')
44
- expect(dashboardType).toHaveAttribute('href', '/3.1/types/Dashboard')
47
+ const h4 = screen.getByRole('heading', { level: 4 })
48
+ expect(h4).toHaveTextContent('Dashboard')
45
49
  })
46
50
 
47
51
  test('it highlights text matching search pattern', () => {
48
- renderWithSearchAndRouter(
52
+ const store = createTestStore({ settings: { searchPattern: 'dash' } })
53
+ renderWithRouterAndReduxProvider(
49
54
  <SideNavTypes
50
55
  specKey={'3.1'}
51
56
  types={{
52
57
  Dashboard: api.types.Dashboard,
53
58
  }}
59
+ tag="Dashboard"
54
60
  />,
55
- 'dash'
61
+ undefined,
62
+ store
56
63
  )
57
64
  const match = screen.getByText(/dash/i)
58
65
  expect(match).toContainHTML('<span class="hi">Dash</span>')
@@ -24,61 +24,112 @@
24
24
 
25
25
  */
26
26
 
27
- import React, { FC, useContext } from 'react'
28
- import { Heading } from '@looker/components'
29
- import { TypeList, IntrinsicType } from '@looker/sdk-codegen'
27
+ import React, { useEffect, useState } from 'react'
30
28
  import styled from 'styled-components'
29
+ import { Accordion2, Heading } from '@looker/components'
30
+ import type { TypeList } from '@looker/sdk-codegen'
31
+ import { useHistory, useRouteMatch } from 'react-router-dom'
32
+ import { useSelector } from 'react-redux'
33
+
31
34
  import { Link } from '../Link'
32
35
  import { buildTypePath, highlightHTML } from '../../utils'
33
- import { SearchContext } from '../../context'
36
+ import { selectSearchPattern } from '../../state'
34
37
 
35
- interface TypeProps {
36
- specKey: string
38
+ interface TypesProps {
37
39
  types: TypeList
40
+ tag: string
41
+ specKey: string
42
+ className?: string
43
+ defaultOpen?: boolean
38
44
  }
39
45
 
40
- export const SideNavTypes: FC<TypeProps> = ({ types, specKey }) => {
41
- const {
42
- searchSettings: { pattern },
43
- } = useContext(SearchContext)
44
-
45
- return (
46
- <>
47
- {Object.values(types)
48
- .filter((type) => !(type instanceof IntrinsicType))
49
- .map((type) => (
50
- <SideNavLink
51
- key={type.name}
52
- to={`${buildTypePath(specKey, type.name)}`}
53
- >
54
- <Heading as="h5" truncate>
55
- {highlightHTML(pattern, type.name)}
56
- </Heading>
57
- </SideNavLink>
58
- ))}
59
- </>
60
- )
61
- }
46
+ export const SideNavTypes = styled(
47
+ ({ className, types, tag, specKey, defaultOpen = false }: TypesProps) => {
48
+ const searchPattern = useSelector(selectSearchPattern)
49
+ const match = useRouteMatch<{ typeTag: string }>(
50
+ `/:specKey/types/:typeTag/:typeName?`
51
+ )
52
+ const [isOpen, setIsOpen] = useState(defaultOpen)
53
+ const history = useHistory()
62
54
 
63
- const SideNavLink = styled(Link)`
64
- display: block;
65
- padding: ${({
66
- theme: {
67
- space: { xsmall, large },
68
- },
69
- }) => `${xsmall} ${large}`};
70
-
71
- &:hover,
72
- &:focus {
73
- ${Heading} {
74
- color: ${({ theme }) => theme.colors.key};
55
+ const handleOpen = () => {
56
+ const _isOpen = !isOpen
57
+ setIsOpen(_isOpen)
58
+ if (_isOpen) history.push(`/${specKey}/types/${tag}`)
75
59
  }
60
+
61
+ useEffect(() => {
62
+ const status = match
63
+ ? defaultOpen || match.params.typeTag === tag
64
+ : defaultOpen
65
+ setIsOpen(status)
66
+ }, [defaultOpen])
67
+
68
+ /* TODO: Fix highlighting. It is applied but it is somehow being overridden */
69
+ return (
70
+ <Accordion2
71
+ isOpen={isOpen}
72
+ toggleOpen={handleOpen}
73
+ className={className}
74
+ label={
75
+ <Heading as="h4" fontSize="small" py="xsmall">
76
+ {highlightHTML(searchPattern, tag)}
77
+ </Heading>
78
+ }
79
+ >
80
+ <ul>
81
+ {Object.values(types).map((type) => (
82
+ <li key={type.name}>
83
+ <Link to={`${buildTypePath(specKey, tag, type.name)}`}>
84
+ {highlightHTML(searchPattern, type.name)}
85
+ </Link>
86
+ </li>
87
+ ))}
88
+ </ul>
89
+ </Accordion2>
90
+ )
76
91
  }
92
+ )`
93
+ font-family: ${({ theme }) => theme.fonts.brand};
77
94
 
78
- &.active {
79
- ${Heading} {
95
+ [aria-controls]:hover,
96
+ [aria-expanded='true'] {
97
+ h4,
98
+ svg {
80
99
  color: ${({ theme }) => theme.colors.key};
81
- font-weight: ${({ theme }) => theme.fontWeights.semiBold};
100
+ }
101
+ }
102
+
103
+ [aria-expanded='true'] h4 {
104
+ font-weight: ${({ theme }) => theme.fontWeights.semiBold};
105
+ }
106
+
107
+ ul {
108
+ border-left: dashed 1px ${({ theme }) => theme.colors.ui2};
109
+ list-style: none;
110
+ margin: 0;
111
+ padding: 0;
112
+ padding-left: ${({ theme }) => theme.space.xxsmall};
113
+ padding-top: ${({ theme }) => theme.space.xxsmall};
114
+ }
115
+
116
+ [aria-current] {
117
+ background: ${({ theme }) => theme.colors.ui1};
118
+ font-weight: ${({ theme }) => theme.fontWeights.semiBold};
119
+ }
120
+
121
+ ${Link} {
122
+ border-radius: ${({ theme }) => theme.radii.medium};
123
+ display: block;
124
+ overflow: hidden;
125
+ padding: ${({ theme }) => theme.space.xsmall};
126
+ text-overflow: ellipsis;
127
+ white-space: nowrap;
128
+
129
+ &:hover,
130
+ &:focus,
131
+ &.active {
132
+ background: ${({ theme }) => theme.colors.ui1};
82
133
  }
83
134
  }
84
135
  `
@@ -25,10 +25,10 @@
25
25
  */
26
26
 
27
27
  import { useState, useEffect } from 'react'
28
- import { TagList, TypeList } from '@looker/sdk-codegen'
28
+ import type { TagList, TypeList } from '@looker/sdk-codegen'
29
29
 
30
- export const useDebounce = (value: any, delay: number) => {
31
- const [debouncedValue, setDebouncedValue] = useState()
30
+ export const useDebounce = <T>(value: T, delay: number): T => {
31
+ const [debouncedValue, setDebouncedValue] = useState(value)
32
32
  useEffect(() => {
33
33
  // Update debounced value only once delay has been elapsed
34
34
  const handler = setTimeout(() => {
@@ -23,7 +23,8 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- import React, { FC } from 'react'
26
+ import type { FC } from 'react'
27
+ import React from 'react'
27
28
  import {
28
29
  ComponentsProvider,
29
30
  Flex,
@@ -31,7 +32,7 @@ import {
31
32
  Heading,
32
33
  ProgressCircular,
33
34
  } from '@looker/components'
34
- import { ThemeOverrides } from '../../utils'
35
+ import type { ThemeOverrides } from '@looker/extension-utils'
35
36
 
36
37
  export interface LoaderProps {
37
38
  themeOverrides: ThemeOverrides
@@ -23,23 +23,13 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- import React, { useEffect, FC } from 'react'
27
- import styled from 'styled-components'
28
- import { Heading, Section, SectionProps } from '@looker/components'
26
+ import type { FC } from 'react'
27
+ import React, { useEffect } from 'react'
28
+ import type { SectionProps } from '@looker/components'
29
+ import { Section } from '@looker/components'
29
30
  import { useWindowSize } from '../../utils'
30
31
  import { HEADER_REM } from '../Header'
31
32
 
32
- /**
33
- * Common styled components to be used across the whole library
34
- */
35
-
36
- export const ApixHeading = styled(Heading)``
37
-
38
- ApixHeading.defaultProps = {
39
- mb: 'xsmall',
40
- pt: 'xsmall',
41
- }
42
-
43
33
  export const REM_TO_PX = 16
44
34
 
45
35
  /**
@@ -58,7 +48,7 @@ export const ApixSection: FC<SectionProps> = (props: any) => {
58
48
  {...props}
59
49
  id="top"
60
50
  p="xxlarge"
61
- style={{ height: `${sectionH}px`, overflow: 'auto' }}
51
+ style={{ height: `${sectionH}px`, overflow: 'auto', borderTop: '0px' }}
62
52
  />
63
53
  )
64
54
  }
@@ -23,5 +23,5 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- export { ApixHeading, ApixSection } from './common'
27
- export { Loader } from './Loader'
26
+ export * from './common'
27
+ export * from './Loader'
@@ -23,10 +23,10 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- export { ApixHeading, ApixSection, Loader } from './common'
26
+ export { ApixSection, Loader } from './common'
27
27
  export { DocActivityType } from './DocActivityType'
28
28
  export { DocCode } from './DocCode'
29
- export { DocMethodSummary } from './DocMethodSummary'
29
+ export { DocMethodSummary, DocSummaryStatus } from './DocMethodSummary'
30
30
  export { DocMarkdown } from './DocMarkdown'
31
31
  export { DocPseudo } from './DocPseudo'
32
32
  export { DocRateLimited } from './DocRateLimited'
@@ -37,10 +37,11 @@ export { DocSdkUsage } from './DocSdkUsage'
37
37
  export { DocSource } from './DocSource'
38
38
  export { DocStatus } from './DocStatus'
39
39
  export { DocTitle } from './DocTitle'
40
- export { Header } from './Header'
40
+ export { Header, HEADER_TOGGLE_LABEL } from './Header'
41
41
  export { SideNav } from './SideNav'
42
42
  export { ExploreType, ExploreProperty } from './ExploreType'
43
- export { CollapserCard } from './Collapser'
44
43
  export { DocSchema } from './DocSchema'
44
+ export { DocTypeSummary } from './DocTypeSummary'
45
45
  export { Link } from './Link'
46
46
  export { ErrorBoundary } from './ErrorBoundary'
47
+ export { SelectorContainer } from './SelectorContainer'
@@ -23,4 +23,7 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- export { defaultLodeContextValue, LodeContext } from './LodeContext'
26
+ export * from './ApiExplorer'
27
+ export * from './StandaloneApiExplorer'
28
+ export * from './components'
29
+ export * from './state'
@@ -24,4 +24,3 @@
24
24
 
25
25
  */
26
26
  export * from './spec'
27
- export * from './search'
@@ -24,7 +24,7 @@
24
24
 
25
25
  */
26
26
 
27
- import { ApiModel } from '@looker/sdk-codegen'
27
+ import type { ApiModel } from '@looker/sdk-codegen'
28
28
 
29
29
  export enum Actions {
30
30
  SELECT_SPEC = 'SELECT_SPEC',
@@ -26,7 +26,8 @@
26
26
  import { ApiModel } from '@looker/sdk-codegen'
27
27
 
28
28
  import { specs } from '../../test-data'
29
- import { specReducer, initDefaultSpecState, Actions, SelectSpecAction } from '.'
29
+ import type { SelectSpecAction } from '.'
30
+ import { specReducer, initDefaultSpecState, Actions } from '.'
30
31
 
31
32
  describe('Spec Reducer', () => {
32
33
  test('it selects a spec', () => {
@@ -24,9 +24,11 @@
24
24
 
25
25
  */
26
26
 
27
- import { ApiModel, SpecItem, SpecList } from '@looker/sdk-codegen'
28
- import { ApiUpdatePayload } from './actions'
29
- import { SpecAction, Actions } from '.'
27
+ import type { SpecItem, SpecList } from '@looker/sdk-codegen'
28
+ import { ApiModel } from '@looker/sdk-codegen'
29
+ import type { ApiUpdatePayload } from './actions'
30
+ import type { SpecAction } from '.'
31
+ import { Actions } from '.'
30
32
 
31
33
  export interface SpecState {
32
34
  specList: SpecList
@@ -23,7 +23,7 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- import { SpecList } from '@looker/sdk-codegen'
26
+ import type { SpecList } from '@looker/sdk-codegen'
27
27
  import omit from 'lodash/omit'
28
28
 
29
29
  import { specs } from '../../test-data'
@@ -24,10 +24,11 @@
24
24
 
25
25
  */
26
26
 
27
- import { SpecList } from '@looker/sdk-codegen'
28
- import { Location as HLocation } from 'history'
27
+ import type { SpecList } from '@looker/sdk-codegen'
28
+ import type { Location as HLocation } from 'history'
29
+ import { OAuthSession } from '@looker/sdk-rtl'
29
30
  import { diffPath, oAuthPath } from '../../utils'
30
- import { SpecState } from './reducer'
31
+ import type { SpecState } from './reducer'
31
32
 
32
33
  export type AbstractLocation = HLocation | Location
33
34
 
@@ -76,7 +77,13 @@ export const getDefaultSpecKey = (specs: SpecList): string => {
76
77
  * @param specs to use to find the default spec key
77
78
  */
78
79
  export const getSpecKey = (location: AbstractLocation, specs?: SpecList) => {
79
- const pathName = location.pathname
80
+ let pathName = location.pathname
81
+ if (pathName === `/${oAuthPath}`) {
82
+ const returnUrl = sessionStorage.getItem(OAuthSession.returnUrlKey)
83
+ if (returnUrl) {
84
+ pathName = returnUrl
85
+ }
86
+ }
80
87
  const pathNodes = pathName.split('/')
81
88
  let specKey = ''
82
89
  if (
@@ -95,7 +102,7 @@ export const getSpecKey = (location: AbstractLocation, specs?: SpecList) => {
95
102
  /**
96
103
  * Creates a default state object with the spec matching the specKey defined
97
104
  * in the url or the default criteria in getDefaultSpecKey
98
- * @param specs A collection of specs
105
+ * @param specList A collection of specs
99
106
  * @param location Standalone or extension location
100
107
  * @returns An object to be used as default state
101
108
  */
@@ -104,8 +111,13 @@ export const initDefaultSpecState = (
104
111
  location: AbstractLocation
105
112
  ): SpecState => {
106
113
  const specKey = getSpecKey(location, specList)
114
+ // Handle bad spec in the URL. Fall back to 4.0
115
+ let spec = specList[specKey]
116
+ if (!spec) {
117
+ spec = specList['4.0']
118
+ }
107
119
  return {
108
120
  specList,
109
- spec: specList[specKey],
121
+ spec,
110
122
  }
111
123
  }
@@ -23,20 +23,31 @@
23
23
  SOFTWARE.
24
24
 
25
25
  */
26
- import React, { FC, useContext } from 'react'
26
+
27
+ import type { FC } from 'react'
28
+ import React from 'react'
27
29
  import { Redirect, Route, Switch } from 'react-router-dom'
28
- import { ApiModel, SpecList } from '@looker/sdk-codegen'
29
- import { OAuthScene, RunItContext } from '@looker/run-it'
30
+ import type { ApiModel, SpecList } from '@looker/sdk-codegen'
31
+ import type { RunItSetter } from '@looker/run-it'
32
+ import type { IEnvironmentAdaptor } from '@looker/extension-utils'
30
33
 
31
- import { HomeScene, MethodScene, TagScene, TypeScene } from '../scenes'
34
+ import {
35
+ HomeScene,
36
+ MethodScene,
37
+ MethodTagScene,
38
+ TypeScene,
39
+ TypeTagScene,
40
+ } from '../scenes'
32
41
  import { DiffScene } from '../scenes/DiffScene'
33
- import { diffPath, oAuthPath } from '../utils'
42
+ import { diffPath } from '../utils'
34
43
 
35
44
  interface AppRouterProps {
36
45
  api: ApiModel
37
46
  specKey: string
38
47
  specs: SpecList
39
48
  toggleNavigation: (target?: boolean) => void
49
+ adaptor: IEnvironmentAdaptor
50
+ setVersionsUrl: RunItSetter
40
51
  }
41
52
 
42
53
  export const AppRouter: FC<AppRouterProps> = ({
@@ -44,17 +55,12 @@ export const AppRouter: FC<AppRouterProps> = ({
44
55
  api,
45
56
  specs,
46
57
  toggleNavigation,
58
+ adaptor,
59
+ setVersionsUrl,
47
60
  }) => {
48
- const { sdk } = useContext(RunItContext)
49
- const maybeOauth = sdk && sdk.apiVersion === '4.0'
50
61
  return (
51
62
  <Switch>
52
63
  <Redirect from="/" to={`/${specKey}/`} exact />
53
- {maybeOauth && (
54
- <Route path={`/${oAuthPath}`}>
55
- <OAuthScene />
56
- </Route>
57
- )}
58
64
  <Route path={`/${diffPath}/:l?/:r?`}>
59
65
  <DiffScene specs={specs} toggleNavigation={toggleNavigation} />
60
66
  </Route>
@@ -62,12 +68,19 @@ export const AppRouter: FC<AppRouterProps> = ({
62
68
  <HomeScene api={api} />
63
69
  </Route>
64
70
  <Route path="/:specKey/methods/:methodTag" exact>
65
- <TagScene api={api} />
71
+ <MethodTagScene api={api} />
66
72
  </Route>
67
73
  <Route path="/:specKey/methods/:methodTag/:methodName">
68
- <MethodScene api={api} />
74
+ <MethodScene
75
+ api={api}
76
+ adaptor={adaptor}
77
+ setVersionsUrl={setVersionsUrl}
78
+ />
79
+ </Route>
80
+ <Route path="/:specKey/types/:typeTag" exact>
81
+ <TypeTagScene api={api} />
69
82
  </Route>
70
- <Route path="/:specKey/types/:typeName">
83
+ <Route path="/:specKey/types/:typeTag/:typeName">
71
84
  <TypeScene api={api} />
72
85
  </Route>
73
86
  </Switch>