@looker/extension-sdk-react 22.4.3-alpha.1522 → 22.6.0

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 (28) hide show
  1. package/CHANGELOG.md +22 -1
  2. package/lib/components/ExtensionConnector/ExtensionConnector.js +1 -21
  3. package/lib/components/ExtensionConnector/ExtensionConnector.js.map +1 -1
  4. package/lib/components/ExtensionConnector/types.d.ts +1 -6
  5. package/lib/components/ExtensionProvider/ExtensionProvider.js +1 -17
  6. package/lib/components/ExtensionProvider/ExtensionProvider.js.map +1 -1
  7. package/lib/components/ExtensionProvider2/ExtensionProvider2.js +1 -17
  8. package/lib/components/ExtensionProvider2/ExtensionProvider2.js.map +1 -1
  9. package/lib/components/ExtensionProvider40/ExtensionProvider40.js +1 -17
  10. package/lib/components/ExtensionProvider40/ExtensionProvider40.js.map +1 -1
  11. package/lib/components/ExtensionProviderBase/ExtensionProviderBase.js +1 -17
  12. package/lib/components/ExtensionProviderBase/ExtensionProviderBase.js.map +1 -1
  13. package/lib/components/utils/get_initial_route_entries.d.ts +0 -1
  14. package/lib/components/utils/get_initial_route_entries.js +1 -7
  15. package/lib/components/utils/get_initial_route_entries.js.map +1 -1
  16. package/lib/esm/components/ExtensionConnector/ExtensionConnector.js +1 -21
  17. package/lib/esm/components/ExtensionConnector/ExtensionConnector.js.map +1 -1
  18. package/lib/esm/components/ExtensionProvider/ExtensionProvider.js +1 -17
  19. package/lib/esm/components/ExtensionProvider/ExtensionProvider.js.map +1 -1
  20. package/lib/esm/components/ExtensionProvider2/ExtensionProvider2.js +1 -17
  21. package/lib/esm/components/ExtensionProvider2/ExtensionProvider2.js.map +1 -1
  22. package/lib/esm/components/ExtensionProvider40/ExtensionProvider40.js +1 -17
  23. package/lib/esm/components/ExtensionProvider40/ExtensionProvider40.js.map +1 -1
  24. package/lib/esm/components/ExtensionProviderBase/ExtensionProviderBase.js +1 -17
  25. package/lib/esm/components/ExtensionProviderBase/ExtensionProviderBase.js.map +1 -1
  26. package/lib/esm/components/utils/get_initial_route_entries.js +0 -3
  27. package/lib/esm/components/utils/get_initial_route_entries.js.map +1 -1
  28. package/package.json +5 -5
package/CHANGELOG.md CHANGED
@@ -5,6 +5,27 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [22.6.0](https://www.github.com/looker-open-source/sdk-codegen/compare/extension-sdk-react-v22.4.2...extension-sdk-react-v22.6.0) (2022-07-07)
9
+
10
+
11
+ ### Features
12
+
13
+ * Add ExtensionProvider40 component ([#1068](https://www.github.com/looker-open-source/sdk-codegen/issues/1068)) ([425aee5](https://www.github.com/looker-open-source/sdk-codegen/commit/425aee5097361b580b3ff7e93f227d6d34f21eb3))
14
+
15
+
16
+ ### Bug Fixes
17
+
18
+ * add children property to ExtensionProvider type ([#1070](https://www.github.com/looker-open-source/sdk-codegen/issues/1070)) ([9524583](https://www.github.com/looker-open-source/sdk-codegen/commit/9524583fd99f0b46bba443a1dfa59cc6f42d081c))
19
+
20
+
21
+ ### Dependencies
22
+
23
+ * The following workspace dependencies were updated
24
+ * dependencies
25
+ * @looker/extension-sdk bumped from ^22.4.2 to ^22.6.0
26
+ * @looker/sdk bumped from ^22.4.2 to ^22.6.0
27
+ * @looker/sdk-rtl bumped from ^21.3.3 to ^21.3.4
28
+
8
29
  ### [22.4.2](https://www.github.com/looker-open-source/sdk-codegen/compare/extension-sdk-react-v22.4.1...extension-sdk-react-v22.4.2) (2022-04-07)
9
30
 
10
31
 
@@ -319,4 +340,4 @@ in extension builds.
319
340
 
320
341
  ## [21.0.5]
321
342
 
322
- Moved to the /looker-open-source/sdk-codegen github repository.
343
+ Moved to the /looker-open-source/sdk-codegen github repository.
@@ -82,24 +82,6 @@ var ExtensionConnector = _ref => {
82
82
  }
83
83
  };
84
84
 
85
- var visualizationDataReceivedCallback = visualizationData => {
86
- updateContextData(_objectSpread(_objectSpread({}, contextData), {}, {
87
- visualizationData
88
- }));
89
- };
90
-
91
- var tileHostDataChangedCallback = partialHostData => {
92
- if (contextData.tileSDK) {
93
- var {
94
- tileSDK
95
- } = contextData;
96
- tileSDK.tileHostDataChanged(partialHostData);
97
- updateContextData(_objectSpread(_objectSpread({}, contextData), {}, {
98
- tileHostData: tileSDK.tileHostData
99
- }));
100
- }
101
- };
102
-
103
85
  _react.default.useEffect(() => {
104
86
  var initialize = function () {
105
87
  var _ref2 = _asyncToGenerator(function* () {
@@ -108,9 +90,7 @@ var ExtensionConnector = _ref => {
108
90
  setInitialRoute: setInitialRouteAndRouteState,
109
91
  requiredLookerVersion,
110
92
  hostChangedRoute,
111
- chattyTimeout,
112
- visualizationDataReceivedCallback,
113
- tileHostDataChangedCallback
93
+ chattyTimeout
114
94
  });
115
95
  connectedCallback(extensionHost);
116
96
  setInitializing(false);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ExtensionConnector/ExtensionConnector.tsx"],"names":["ExtensionConnector","contextData","updateContextData","connectedCallback","unloadedCallback","onPathnameChange","onRouteChange","hostTracksRoute","loadingComponent","requiredLookerVersion","chattyTimeout","children","initialRouteData","setInitialRouteData","hostRouteData","setHostRouteData","route","initializing","setInitializing","initializeError","setInitializeError","setInitialRouteAndRouteState","routeState","hostChangedRoute","_route","startsWith","visualizationDataReceivedCallback","visualizationData","tileHostDataChangedCallback","partialHostData","tileSDK","tileHostDataChanged","tileHostData","React","useEffect","initialize","extensionHost","setInitialRoute","error","console","message","undefined","extensionSDK"],"mappings":"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","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport isEqual from 'lodash/isEqual'\nimport React, { useState } from 'react'\nimport { MemoryRouter } from 'react-router-dom'\nimport type { RawVisualizationData, TileHostData } from '@looker/extension-sdk'\nimport { connectExtensionHost } from '@looker/extension-sdk'\nimport { ErrorMessage } from '../ErrorMessage'\nimport { RouteChangeListener } from '../RouteChangeListener'\nimport { getInitialRouteEntries } from '../utils/get_initial_route_entries'\nimport { setupClosePopoversListener } from '../utils/setup_close_popovers'\nimport type { ExtensionConnectorProps, RouteData } from './types'\n\n/**\n * ExtensionConnector component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport const ExtensionConnector: React.FC<ExtensionConnectorProps> = ({\n contextData,\n updateContextData,\n connectedCallback,\n unloadedCallback,\n onPathnameChange,\n onRouteChange,\n hostTracksRoute = true,\n loadingComponent,\n requiredLookerVersion,\n chattyTimeout,\n children,\n}) => {\n const [initialRouteData, setInitialRouteData] = useState<RouteData>()\n const [hostRouteData, setHostRouteData] = useState<RouteData>({ route: '' })\n const [initializing, setInitializing] = useState(true)\n const [initializeError, setInitializeError] = useState<string>()\n\n const setInitialRouteAndRouteState = (route: string, routeState?: any) => {\n if (hostTracksRoute) {\n setInitialRouteData({ route, routeState })\n }\n }\n\n const hostChangedRoute = (_route: string, routeState?: any) => {\n const route = _route.startsWith('/') ? _route : '/' + _route\n if (\n route !== hostRouteData.route ||\n !isEqual(routeState, hostRouteData.routeState)\n ) {\n setHostRouteData({ route, routeState })\n updateContextData({\n ...contextData,\n route,\n routeState,\n })\n }\n }\n\n const visualizationDataReceivedCallback = (\n visualizationData: RawVisualizationData\n ) => {\n updateContextData({\n ...contextData,\n visualizationData,\n })\n }\n\n const tileHostDataChangedCallback = (\n partialHostData: Partial<TileHostData>\n ) => {\n if (contextData.tileSDK) {\n const { tileSDK } = contextData\n tileSDK.tileHostDataChanged(partialHostData)\n updateContextData({\n ...contextData,\n tileHostData: tileSDK.tileHostData,\n })\n }\n }\n\n React.useEffect(() => {\n const initialize = async () => {\n try {\n const extensionHost = await connectExtensionHost({\n setInitialRoute: setInitialRouteAndRouteState,\n requiredLookerVersion,\n hostChangedRoute,\n chattyTimeout,\n visualizationDataReceivedCallback,\n tileHostDataChangedCallback,\n })\n connectedCallback(extensionHost)\n setInitializing(false)\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.error(error)\n setInitializeError(error.message || 'Extension failed to initialize.')\n setInitializing(false)\n }\n }\n initialize()\n return () => {\n unloadedCallback()\n }\n }, [])\n\n React.useEffect(() => {\n return initializing\n ? undefined\n : setupClosePopoversListener(contextData.extensionSDK)\n }, [initializing])\n\n return (\n <>\n {initializing ? (\n loadingComponent\n ) : (\n <>\n {initializeError ? (\n <ErrorMessage errorMessage={initializeError} />\n ) : (\n <>\n {hostTracksRoute ? (\n <MemoryRouter\n initialEntries={getInitialRouteEntries(initialRouteData)}\n >\n <RouteChangeListener\n onRouteChange={onRouteChange}\n onPathnameChange={onPathnameChange}\n extensionHost={contextData!.extensionSDK}\n hostRoute={hostRouteData.route}\n hostRouteState={hostRouteData.routeState}\n />\n {children}\n </MemoryRouter>\n ) : (\n <>{children}</>\n )}\n </>\n )}\n </>\n )}\n </>\n )\n}\n"],"file":"ExtensionConnector.js"}
1
+ {"version":3,"sources":["../../../src/components/ExtensionConnector/ExtensionConnector.tsx"],"names":["ExtensionConnector","contextData","updateContextData","connectedCallback","unloadedCallback","onPathnameChange","onRouteChange","hostTracksRoute","loadingComponent","requiredLookerVersion","chattyTimeout","children","initialRouteData","setInitialRouteData","hostRouteData","setHostRouteData","route","initializing","setInitializing","initializeError","setInitializeError","setInitialRouteAndRouteState","routeState","hostChangedRoute","_route","startsWith","React","useEffect","initialize","extensionHost","setInitialRoute","error","console","message","undefined","extensionSDK"],"mappings":"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","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport isEqual from 'lodash/isEqual'\nimport React, { useState } from 'react'\nimport { MemoryRouter } from 'react-router-dom'\nimport { connectExtensionHost } from '@looker/extension-sdk'\nimport { ErrorMessage } from '../ErrorMessage'\nimport { RouteChangeListener } from '../RouteChangeListener'\nimport { getInitialRouteEntries } from '../utils/get_initial_route_entries'\nimport { setupClosePopoversListener } from '../utils/setup_close_popovers'\nimport type { ExtensionConnectorProps, RouteData } from './types'\n\n/**\n * ExtensionConnector component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport const ExtensionConnector: React.FC<ExtensionConnectorProps> = ({\n contextData,\n updateContextData,\n connectedCallback,\n unloadedCallback,\n onPathnameChange,\n onRouteChange,\n hostTracksRoute = true,\n loadingComponent,\n requiredLookerVersion,\n chattyTimeout,\n children,\n}) => {\n const [initialRouteData, setInitialRouteData] = useState<RouteData>()\n const [hostRouteData, setHostRouteData] = useState<RouteData>({ route: '' })\n const [initializing, setInitializing] = useState(true)\n const [initializeError, setInitializeError] = useState<string>()\n\n const setInitialRouteAndRouteState = (route: string, routeState?: any) => {\n if (hostTracksRoute) {\n setInitialRouteData({ route, routeState })\n }\n }\n\n const hostChangedRoute = (_route: string, routeState?: any) => {\n const route = _route.startsWith('/') ? _route : '/' + _route\n if (\n route !== hostRouteData.route ||\n !isEqual(routeState, hostRouteData.routeState)\n ) {\n setHostRouteData({ route, routeState })\n updateContextData({\n ...contextData,\n route,\n routeState,\n })\n }\n }\n\n React.useEffect(() => {\n const initialize = async () => {\n try {\n const extensionHost = await connectExtensionHost({\n setInitialRoute: setInitialRouteAndRouteState,\n requiredLookerVersion,\n hostChangedRoute,\n chattyTimeout,\n })\n connectedCallback(extensionHost)\n setInitializing(false)\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.error(error)\n setInitializeError(error.message || 'Extension failed to initialize.')\n setInitializing(false)\n }\n }\n initialize()\n return () => {\n unloadedCallback()\n }\n }, [])\n\n React.useEffect(() => {\n return initializing\n ? undefined\n : setupClosePopoversListener(contextData.extensionSDK)\n }, [initializing])\n\n return (\n <>\n {initializing ? (\n loadingComponent\n ) : (\n <>\n {initializeError ? (\n <ErrorMessage errorMessage={initializeError} />\n ) : (\n <>\n {hostTracksRoute ? (\n <MemoryRouter\n initialEntries={getInitialRouteEntries(initialRouteData)}\n >\n <RouteChangeListener\n onRouteChange={onRouteChange}\n onPathnameChange={onPathnameChange}\n extensionHost={contextData!.extensionSDK}\n hostRoute={hostRouteData.route}\n hostRouteState={hostRouteData.routeState}\n />\n {children}\n </MemoryRouter>\n ) : (\n <>{children}</>\n )}\n </>\n )}\n </>\n )}\n </>\n )\n}\n"],"file":"ExtensionConnector.js"}
@@ -1,15 +1,10 @@
1
1
  import type { ReactNode } from 'react';
2
- import type { ExtensionHostApi, ExtensionSDK, RawVisualizationData, TileHostData, TileSDK, VisualizationSDK, LookerHostData } from '@looker/extension-sdk';
2
+ import type { ExtensionHostApi, ExtensionSDK } from '@looker/extension-sdk';
3
3
  export interface BaseExtensionContextData {
4
4
  extensionSDK: ExtensionSDK;
5
- lookerHostData?: Readonly<LookerHostData>;
6
5
  initializeError?: string;
7
6
  route: string;
8
7
  routeState?: any;
9
- visualizationData?: Readonly<RawVisualizationData>;
10
- visualizationSDK: VisualizationSDK;
11
- tileHostData: Readonly<TileHostData>;
12
- tileSDK: TileSDK;
13
8
  }
14
9
  export interface RouteData {
15
10
  route: string;
@@ -50,28 +50,12 @@ var ExtensionProvider = _ref => {
50
50
 
51
51
  (0, _core_sdk_.registerCore31SDK)(core31SDK);
52
52
  (0, _core_sdk_2.registerCore40SDK)(core40SDK);
53
- var {
54
- visualizationSDK,
55
- tileSDK,
56
- lookerHostData
57
- } = extensionHost;
58
- var {
59
- visualizationData
60
- } = visualizationSDK;
61
- var {
62
- tileHostData
63
- } = tileSDK;
64
53
  setExtensionData(previousState => {
65
54
  return _objectSpread(_objectSpread({}, previousState), {}, {
66
55
  extensionSDK: extensionHost,
67
56
  coreSDK: core31SDK,
68
57
  core31SDK,
69
- core40SDK,
70
- visualizationSDK,
71
- tileSDK,
72
- visualizationData,
73
- tileHostData,
74
- lookerHostData
58
+ core40SDK
75
59
  });
76
60
  });
77
61
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ExtensionProvider/ExtensionProvider.tsx"],"names":["ExtensionContext","React","createContext","undefined","ExtensionProvider","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","core31SDK","LookerExtensionSDK","create31Client","core40SDK","create40Client","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","coreSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;AA0BA;;AAEA;;AAMA;;AACA;;AACA;;;;;;;;;;;;;;;;;;AAMO,IAAMA,gBAAgB,GAAGC,eAAMC,aAAN,CAC9BC,SAD8B,CAAzB;;;;AASA,IAAMC,iBAAmD,GAAG,QAG7D;AAAA,MAH8D;AAClEC,IAAAA;AADkE,GAG9D;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;;AAGA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,SAAsB,GAC1BC,iCAAmBC,cAAnB,CAAkCH,aAAlC,CADF;;AAEA,QAAMI,SAAsB,GAC1BF,iCAAmBG,cAAnB,CAAkCL,aAAlC,CADF;;AAGA,sCAAkBC,SAAlB;AACA,uCAAkBG,SAAlB;AACA,QAAM;AAAEE,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDR,aAAtD;AACA,QAAM;AAAES,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAT,IAAAA,gBAAgB,CAAEa,aAAD,IAAyC;AACxD,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEZ,aAFhB;AAGEa,QAAAA,OAAO,EAAEZ,SAHX;AAIEA,QAAAA,SAJF;AAKEG,QAAAA,SALF;AAMEE,QAAAA,gBANF;AAOEC,QAAAA,OAPF;AAQEE,QAAAA,iBARF;AASEC,QAAAA,YATF;AAUEF,QAAAA;AAVF;AAYD,KAbe,CAAhB;AAcD,GAzBD;;AA2BA,MAAMM,gBAAgB,GAAG,MAAM;AAC7B;AACA;AACD,GAHD;;AAKA,MAAMC,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1ElB,IAAAA,gBAAgB,CAAEa,aAAD,IAAyC;AACxD,6CACKA,aADL,GAEKK,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,6BAAC,gBAAD,CAAkB,QAAlB;AAA2B,IAAA,KAAK,EAAEnB;AAAlC,KACE,6BAAC,sCAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEgB,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGnB,QAPH,CADF,CADF;AAaD,CA7DM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { Looker31SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore31SDK, unregisterCore31SDK } from '../../sdk/core_sdk_31'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\nimport type { ExtensionContextData } from './types'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext = React.createContext<ExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n)\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n * @deprecated use ExtensionProvider40\n */\nexport const ExtensionProvider: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<ExtensionContextData>(\n {} as ExtensionContextData\n )\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const core31SDK: Looker31SDK =\n LookerExtensionSDK.create31Client(extensionHost)\n const core40SDK: Looker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n // Provide global access for use by redux if needed\n registerCore31SDK(core31SDK)\n registerCore40SDK(core40SDK)\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK: core31SDK,\n core31SDK,\n core40SDK,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore31SDK()\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext.Provider value={extensionData}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext.Provider>\n )\n}\n"],"file":"ExtensionProvider.js"}
1
+ {"version":3,"sources":["../../../src/components/ExtensionProvider/ExtensionProvider.tsx"],"names":["ExtensionContext","React","createContext","undefined","ExtensionProvider","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","core31SDK","LookerExtensionSDK","create31Client","core40SDK","create40Client","previousState","extensionSDK","coreSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;AA0BA;;AAEA;;AAMA;;AACA;;AACA;;;;;;;;;;;;;;;;;;AAMO,IAAMA,gBAAgB,GAAGC,eAAMC,aAAN,CAC9BC,SAD8B,CAAzB;;;;AAQA,IAAMC,iBAAmD,GAAG,QAG7D;AAAA,MAH8D;AAClEC,IAAAA;AADkE,GAG9D;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;;AAGA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,SAAsB,GAC1BC,iCAAmBC,cAAnB,CAAkCH,aAAlC,CADF;;AAEA,QAAMI,SAAsB,GAC1BF,iCAAmBG,cAAnB,CAAkCL,aAAlC,CADF;;AAGA,sCAAkBC,SAAlB;AACA,uCAAkBG,SAAlB;AACAN,IAAAA,gBAAgB,CAAEQ,aAAD,IAAyC;AACxD,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEP,aAFhB;AAGEQ,QAAAA,OAAO,EAAEP,SAHX;AAIEA,QAAAA,SAJF;AAKEG,QAAAA;AALF;AAOD,KARe,CAAhB;AASD,GAjBD;;AAmBA,MAAMK,gBAAgB,GAAG,MAAM;AAC7B;AACA;AACD,GAHD;;AAKA,MAAMC,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1Eb,IAAAA,gBAAgB,CAAEQ,aAAD,IAAyC;AACxD,6CACKA,aADL,GAEKK,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,6BAAC,gBAAD,CAAkB,QAAlB;AAA2B,IAAA,KAAK,EAAEd;AAAlC,KACE,6BAAC,sCAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEW,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGd,QAPH,CADF,CADF;AAaD,CArDM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { Looker31SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore31SDK, unregisterCore31SDK } from '../../sdk/core_sdk_31'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\nimport type { ExtensionContextData } from './types'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext = React.createContext<ExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n)\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport const ExtensionProvider: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<ExtensionContextData>(\n {} as ExtensionContextData\n )\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const core31SDK: Looker31SDK =\n LookerExtensionSDK.create31Client(extensionHost)\n const core40SDK: Looker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n // Provide global access for use by redux if needed\n registerCore31SDK(core31SDK)\n registerCore40SDK(core40SDK)\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK: core31SDK,\n core31SDK,\n core40SDK,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore31SDK()\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext.Provider value={extensionData!}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext.Provider>\n )\n}\n"],"file":"ExtensionProvider.js"}
@@ -54,26 +54,10 @@ function ExtensionProvider2(props) {
54
54
  }
55
55
 
56
56
  (0, _core_sdk.registerCoreSDK2)(coreSDK);
57
- var {
58
- visualizationSDK,
59
- tileSDK,
60
- lookerHostData
61
- } = extensionHost;
62
- var {
63
- visualizationData
64
- } = visualizationSDK;
65
- var {
66
- tileHostData
67
- } = tileSDK;
68
57
  setExtensionData(previousState => {
69
58
  return _objectSpread(_objectSpread({}, previousState), {}, {
70
59
  extensionSDK: extensionHost,
71
- coreSDK,
72
- visualizationSDK,
73
- tileSDK,
74
- visualizationData,
75
- tileHostData,
76
- lookerHostData
60
+ coreSDK
77
61
  });
78
62
  });
79
63
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ExtensionProvider2/ExtensionProvider2.tsx"],"names":["ExtensionContext2","React","createContext","undefined","ExtensionProvider2","props","children","type","rest","extensionData","setExtensionData","apiVersion","ApiVersion","connectedCallback","extensionHost","coreSDK","LookerExtensionSDK","createClient","SdkConnection","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;AA0BA;;AAEA;;AACA;;AAKA;;AACA;;;;;;;;;;;;;;;;;;AASO,IAAMA,iBAAiB,GAAGC,eAAMC,aAAN,CAG/BC,SAH+B,CAA1B;;;;AAcA,SAASC,kBAAT,CAA+BC,KAA/B,EAAkE;AACvE,MAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA8BF,KAApC;AAAA,MAA2BG,IAA3B,4BAAoCH,KAApC;;AACA,MAAM,CAACI,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;AAGA,MAAMC,UAAU,GAAIJ,IAAD,CAAcK,UAAjC;;AAEA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAIC,OAAJ;;AACA,QAAIJ,UAAJ,EAAgB;AACdI,MAAAA,OAAO,GAAGC,wBAAmBC,YAAnB,CACR,IAAIC,2BAAJ,CAAkBJ,aAAlB,EAAiCH,UAAjC,CADQ,EAERJ,IAFQ,CAAV;AAID;;AACD,oCAAiBQ,OAAjB;AACA,QAAM;AAAEI,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDP,aAAtD;AACA,QAAM;AAAEQ,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAV,IAAAA,gBAAgB,CAAEc,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEX,aAFhB;AAGEC,QAAAA,OAHF;AAIEI,QAAAA,gBAJF;AAKEC,QAAAA,OALF;AAMEE,QAAAA,iBANF;AAOEC,QAAAA,YAPF;AAQEF,QAAAA;AARF;AAUD,KAXe,CAAhB;AAYD,GAxBD;;AA0BA,MAAMK,gBAAgB,GAAG,MAAM;AAC7B;AACD,GAFD;;AAIA,MAAMC,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1ElB,IAAAA,gBAAgB,CAAEc,aAAD,IAA6C;AAC5D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,6BAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAEnB;AAAnC,KACE,6BAAC,sCAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEI,iBAHrB;AAIE,IAAA,iBAAiB,EAAEc,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGpB,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { SdkConnection } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCoreSDK2, unregisterCoreSDK2 } from '../../sdk/core_sdk2'\n\nexport interface ExtensionContextData2<T> extends BaseExtensionContextData {\n coreSDK: T\n}\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext2 = React.createContext<\n ExtensionContextData2<any>\n>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider2Props<T> extends ExtensionProviderProps {\n type: T\n}\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport function ExtensionProvider2<T>(props: ExtensionProvider2Props<T>) {\n const { children, type, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData2<T>>(\n {} as ExtensionContextData2<T>\n )\n const apiVersion = (type as any).ApiVersion\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n let coreSDK: any\n if (apiVersion) {\n coreSDK = LookerExtensionSDK.createClient(\n new SdkConnection(extensionHost, apiVersion),\n type as any\n )\n }\n registerCoreSDK2(coreSDK)\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCoreSDK2()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData2<T>) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext2.Provider value={extensionData}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext2.Provider>\n )\n}\n"],"file":"ExtensionProvider2.js"}
1
+ {"version":3,"sources":["../../../src/components/ExtensionProvider2/ExtensionProvider2.tsx"],"names":["ExtensionContext2","React","createContext","undefined","ExtensionProvider2","props","children","type","rest","extensionData","setExtensionData","apiVersion","ApiVersion","connectedCallback","extensionHost","coreSDK","LookerExtensionSDK","createClient","SdkConnection","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;AA0BA;;AAEA;;AACA;;AAKA;;AACA;;;;;;;;;;;;;;;;;;AASO,IAAMA,iBAAiB,GAAGC,eAAMC,aAAN,CAG/BC,SAH+B,CAA1B;;;;AAcA,SAASC,kBAAT,CAA+BC,KAA/B,EAAkE;AACvE,MAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA8BF,KAApC;AAAA,MAA2BG,IAA3B,4BAAoCH,KAApC;;AACA,MAAM,CAACI,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;AAGA,MAAMC,UAAU,GAAIJ,IAAD,CAAcK,UAAjC;;AAEA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAIC,OAAJ;;AACA,QAAIJ,UAAJ,EAAgB;AACdI,MAAAA,OAAO,GAAGC,wBAAmBC,YAAnB,CACR,IAAIC,2BAAJ,CAAkBJ,aAAlB,EAAiCH,UAAjC,CADQ,EAERJ,IAFQ,CAAV;AAID;;AACD,oCAAiBQ,OAAjB;AACAL,IAAAA,gBAAgB,CAAES,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEN,aAFhB;AAGEC,QAAAA;AAHF;AAKD,KANe,CAAhB;AAOD,GAhBD;;AAkBA,MAAMM,gBAAgB,GAAG,MAAM;AAC7B;AACD,GAFD;;AAIA,MAAMC,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1Eb,IAAAA,gBAAgB,CAAES,aAAD,IAA6C;AAC5D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,6BAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAEd;AAAnC,KACE,6BAAC,sCAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEI,iBAHrB;AAIE,IAAA,iBAAiB,EAAES,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGf,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { SdkConnection } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCoreSDK2, unregisterCoreSDK2 } from '../../sdk/core_sdk2'\n\nexport interface ExtensionContextData2<T> extends BaseExtensionContextData {\n coreSDK: T\n}\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext2 = React.createContext<\n ExtensionContextData2<any>\n>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider2Props<T> extends ExtensionProviderProps {\n type: T\n}\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport function ExtensionProvider2<T>(props: ExtensionProvider2Props<T>) {\n const { children, type, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData2<T>>(\n {} as ExtensionContextData2<T>\n )\n const apiVersion = (type as any).ApiVersion\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n let coreSDK: any\n if (apiVersion) {\n coreSDK = LookerExtensionSDK.createClient(\n new SdkConnection(extensionHost, apiVersion),\n type as any\n )\n }\n registerCoreSDK2(coreSDK)\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCoreSDK2()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData2<T>) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext2.Provider value={extensionData!}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext2.Provider>\n )\n}\n"],"file":"ExtensionProvider2.js"}
@@ -46,26 +46,10 @@ function ExtensionProvider40(props) {
46
46
  var coreSDK = _extensionSdk.LookerExtensionSDK.create40Client(extensionHost);
47
47
 
48
48
  (0, _core_sdk_.registerCore40SDK)(coreSDK);
49
- var {
50
- visualizationSDK,
51
- tileSDK,
52
- lookerHostData
53
- } = extensionHost;
54
- var {
55
- visualizationData
56
- } = visualizationSDK;
57
- var {
58
- tileHostData
59
- } = tileSDK;
60
49
  setExtensionData(previousState => {
61
50
  return _objectSpread(_objectSpread({}, previousState), {}, {
62
51
  extensionSDK: extensionHost,
63
- coreSDK,
64
- visualizationSDK,
65
- tileSDK,
66
- visualizationData,
67
- tileHostData,
68
- lookerHostData
52
+ coreSDK
69
53
  });
70
54
  });
71
55
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ExtensionProvider40/ExtensionProvider40.tsx"],"names":["ExtensionContext40","React","createContext","undefined","ExtensionProvider40","props","children","rest","extensionData","setExtensionData","connectedCallback","extensionHost","coreSDK","LookerExtensionSDK","create40Client","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;AA0BA;;AAEA;;AAMA;;AACA;;;;;;;;;;;;;;;;;;AASO,IAAMA,kBAAkB,GAAGC,eAAMC,aAAN,CAChCC,SADgC,CAA3B;;;;AAUA,SAASC,mBAAT,CAA6BC,KAA7B,EAA8D;AACnE,MAAM;AAAEC,IAAAA;AAAF,MAAwBD,KAA9B;AAAA,MAAqBE,IAArB,4BAA8BF,KAA9B;;AACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;;AAIA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,OAAqB,GACzBC,iCAAmBC,cAAnB,CAAkCH,aAAlC,CADF;;AAEA,sCAAkBC,OAAlB;AACA,QAAM;AAAEG,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDN,aAAtD;AACA,QAAM;AAAEO,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAP,IAAAA,gBAAgB,CAAEW,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEV,aAFhB;AAGEC,QAAAA,OAHF;AAIEG,QAAAA,gBAJF;AAKEC,QAAAA,OALF;AAMEE,QAAAA,iBANF;AAOEC,QAAAA,YAPF;AAQEF,QAAAA;AARF;AAUD,KAXe,CAAhB;AAYD,GAnBD;;AAqBA,MAAMK,gBAAgB,GAAG,MAAM;AAC7B;AACD,GAFD;;AAIA,MAAMC,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1Ef,IAAAA,gBAAgB,CAAEW,aAAD,IAA2C;AAC1D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,6BAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEhB;AAApC,KACE,6BAAC,sCAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEa,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGhB,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2022 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { ILooker40SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\n\nexport interface ExtensionContextData40 extends BaseExtensionContextData {\n coreSDK: ILooker40SDK\n}\n\n/**\n * React context provider for extension API and Looker SDK 4.0.\n */\nexport const ExtensionContext40 = React.createContext<ExtensionContextData40>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider40Props extends ExtensionProviderProps {}\n\n/**\n * ExtensionProvider40 component. Provides access to the extension API and SDK (use\n * ExtensionContext40) and react routing services.\n */\nexport function ExtensionProvider40(props: ExtensionProvider40Props) {\n const { children, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData40>(\n {} as ExtensionContextData40\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const coreSDK: ILooker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n registerCore40SDK(coreSDK as Looker40SDK)\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData40) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext40.Provider value={extensionData}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext40.Provider>\n )\n}\n"],"file":"ExtensionProvider40.js"}
1
+ {"version":3,"sources":["../../../src/components/ExtensionProvider40/ExtensionProvider40.tsx"],"names":["ExtensionContext40","React","createContext","undefined","ExtensionProvider40","props","children","rest","extensionData","setExtensionData","connectedCallback","extensionHost","coreSDK","LookerExtensionSDK","create40Client","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;AA0BA;;AAEA;;AAMA;;AACA;;;;;;;;;;;;;;;;;;AASO,IAAMA,kBAAkB,GAAGC,eAAMC,aAAN,CAChCC,SADgC,CAA3B;;;;AAUA,SAASC,mBAAT,CAA6BC,KAA7B,EAA8D;AACnE,MAAM;AAAEC,IAAAA;AAAF,MAAwBD,KAA9B;AAAA,MAAqBE,IAArB,4BAA8BF,KAA9B;;AACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;;AAIA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,OAAqB,GACzBC,iCAAmBC,cAAnB,CAAkCH,aAAlC,CADF;;AAEA,sCAAkBC,OAAlB;AACAH,IAAAA,gBAAgB,CAAEM,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEL,aAFhB;AAGEC,QAAAA;AAHF;AAKD,KANe,CAAhB;AAOD,GAXD;;AAaA,MAAMK,gBAAgB,GAAG,MAAM;AAC7B;AACD,GAFD;;AAIA,MAAMC,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1EV,IAAAA,gBAAgB,CAAEM,aAAD,IAA2C;AAC1D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,6BAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEX;AAApC,KACE,6BAAC,sCAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEQ,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGX,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2022 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { ILooker40SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\n\nexport interface ExtensionContextData40 extends BaseExtensionContextData {\n coreSDK: ILooker40SDK\n}\n\n/**\n * React context provider for extension API and Looker SDK 4.0.\n */\nexport const ExtensionContext40 = React.createContext<ExtensionContextData40>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider40Props extends ExtensionProviderProps {}\n\n/**\n * ExtensionProvider40 component. Provides access to the extension API and SDK (use\n * ExtensionContext40) and react routing services.\n */\nexport function ExtensionProvider40(props: ExtensionProvider40Props) {\n const { children, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData40>(\n {} as ExtensionContextData40\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const coreSDK: ILooker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n registerCore40SDK(coreSDK as Looker40SDK)\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData40) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext40.Provider value={extensionData}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext40.Provider>\n )\n}\n"],"file":"ExtensionProvider40.js"}
@@ -38,25 +38,9 @@ var ExtensionProviderBase = _ref => {
38
38
  var [extensionData, setExtensionData] = (0, _react.useState)({});
39
39
 
40
40
  var connectedCallback = extensionHost => {
41
- var {
42
- visualizationSDK,
43
- tileSDK,
44
- lookerHostData
45
- } = extensionHost;
46
- var {
47
- visualizationData
48
- } = visualizationSDK;
49
- var {
50
- tileHostData
51
- } = tileSDK;
52
41
  setExtensionData(previousState => {
53
42
  return _objectSpread(_objectSpread({}, previousState), {}, {
54
- extensionSDK: extensionHost,
55
- visualizationSDK,
56
- tileSDK,
57
- visualizationData,
58
- tileHostData,
59
- lookerHostData
43
+ extensionSDK: extensionHost
60
44
  });
61
45
  });
62
46
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/ExtensionProviderBase/ExtensionProviderBase.tsx"],"names":["ExtensionContextBase","React","createContext","undefined","ExtensionProviderBase","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","unloadedCallback","updateContextData","contextData"],"mappings":";;;;;;;AA0BA;;AAMA;;;;;;;;;;;;;;;;;;AAKO,IAAMA,oBAAoB,GAC/BC,eAAMC,aAAN,CACEC,SADF,CADK;;;;AASA,IAAMC,qBAAuD,GAAG,QAGjE;AAAA,MAHkE;AACtEC,IAAAA;AADsE,GAGlE;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;;AAIA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDH,aAAtD;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAJ,IAAAA,gBAAgB,CAAEQ,aAAD,IAA6C;AAC5D,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEP,aAFhB;AAGEC,QAAAA,gBAHF;AAIEC,QAAAA,OAJF;AAKEE,QAAAA,iBALF;AAMEC,QAAAA,YANF;AAOEF,QAAAA;AAPF;AASD,KAVe,CAAhB;AAWD,GAfD;;AAiBA,MAAMK,gBAAgB,GAAG,MAAM,CAE9B,CAFD;;AAIA,MAAMC,iBAAiB,GAAIC,WAAD,IAA2C;AACnEZ,IAAAA,gBAAgB,CAACY,WAAD,CAAhB;AACD,GAFD;;AAIA,SACE,6BAAC,oBAAD,CAAsB,QAAtB;AAA+B,IAAA,KAAK,EAAEb;AAAtC,KACE,6BAAC,sCAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEU,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGb,QAPH,CADF,CADF;AAaD,CA9CM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContextBase =\n React.createContext<BaseExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n )\n\n/**\n * ExtensionProviderBase component. Provides access to the extension API but no SDK is\n * provided.\n */\nexport const ExtensionProviderBase: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<BaseExtensionContextData>(\n {} as BaseExtensionContextData\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: BaseExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n // noop\n }\n\n const updateContextData = (contextData: BaseExtensionContextData) => {\n setExtensionData(contextData)\n }\n\n return (\n <ExtensionContextBase.Provider value={extensionData}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContextBase.Provider>\n )\n}\n"],"file":"ExtensionProviderBase.js"}
1
+ {"version":3,"sources":["../../../src/components/ExtensionProviderBase/ExtensionProviderBase.tsx"],"names":["ExtensionContextBase","React","createContext","undefined","ExtensionProviderBase","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","previousState","extensionSDK","unloadedCallback","updateContextData","contextData"],"mappings":";;;;;;;AA0BA;;AAMA;;;;;;;;;;;;;;;;;;AAKO,IAAMA,oBAAoB,GAC/BC,eAAMC,aAAN,CACEC,SADF,CADK;;;;AASA,IAAMC,qBAAuD,GAAG,QAGjE;AAAA,MAHkE;AACtEC,IAAAA;AADsE,GAGlE;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoC,qBACxC,EADwC,CAA1C;;AAIA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7DF,IAAAA,gBAAgB,CAAEG,aAAD,IAA6C;AAC5D,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEF;AAFhB;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,MAAMG,gBAAgB,GAAG,MAAM,CAE9B,CAFD;;AAIA,MAAMC,iBAAiB,GAAIC,WAAD,IAA2C;AACnEP,IAAAA,gBAAgB,CAACO,WAAD,CAAhB;AACD,GAFD;;AAIA,SACE,6BAAC,oBAAD,CAAsB,QAAtB;AAA+B,IAAA,KAAK,EAAER;AAAtC,KACE,6BAAC,sCAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEK,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGR,QAPH,CADF,CADF;AAaD,CAtCM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContextBase =\n React.createContext<BaseExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n )\n\n/**\n * ExtensionProviderBase component. Provides access to the extension API but no SDK is\n * provided.\n */\nexport const ExtensionProviderBase: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<BaseExtensionContextData>(\n {} as BaseExtensionContextData\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n setExtensionData((previousState: BaseExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n }\n })\n }\n\n const unloadedCallback = () => {\n // noop\n }\n\n const updateContextData = (contextData: BaseExtensionContextData) => {\n setExtensionData(contextData)\n }\n\n return (\n <ExtensionContextBase.Provider value={extensionData!}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContextBase.Provider>\n )\n}\n"],"file":"ExtensionProviderBase.js"}
@@ -1,4 +1,3 @@
1
1
  import * as H from 'history';
2
2
  import type { RouteData } from '../ExtensionConnector/types';
3
3
  export declare const getInitialRouteEntries: (initialRouteData?: RouteData | undefined) => H.LocationDescriptor<unknown>[] | undefined;
4
- export declare const dummyExtensionSdkReact: () => string;
@@ -3,7 +3,7 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.dummyExtensionSdkReact = exports.getInitialRouteEntries = void 0;
6
+ exports.getInitialRouteEntries = void 0;
7
7
 
8
8
  var H = _interopRequireWildcard(require("history"));
9
9
 
@@ -34,10 +34,4 @@ var getInitialRouteEntries = initialRouteData => {
34
34
  };
35
35
 
36
36
  exports.getInitialRouteEntries = getInitialRouteEntries;
37
-
38
- var dummyExtensionSdkReact = () => {
39
- return 'dummy';
40
- };
41
-
42
- exports.dummyExtensionSdkReact = dummyExtensionSdkReact;
43
37
  //# sourceMappingURL=get_initial_route_entries.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/components/utils/get_initial_route_entries.ts"],"names":["getInitialRouteEntries","initialRouteData","initialEntries","route","routeState","H","parsePath","state","dummyExtensionSdkReact"],"mappings":";;;;;;;AA0BA;;;;;;;;;;;;AAGO,IAAMA,sBAAsB,GAAIC,gBAAD,IAAkC;AACtE,MAAIC,cAAJ;;AACA,MAAID,gBAAJ,EAAsB;AACpB,QAAM;AAAEE,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAwBH,gBAA9B;AACAC,IAAAA,cAAc,GAAG,iCAAMG,CAAC,CAACC,SAAF,CAAYH,KAAZ,CAAN;AAA0BI,MAAAA,KAAK,EAAEH;AAAjC,OAAjB;AACD;;AACD,SAAOF,cAAP;AACD,CAPM;;;;AASA,IAAMM,sBAAsB,GAAG,MAAM;AAE1C,SAAO,OAAP;AACD,CAHM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport * as H from 'history'\nimport type { RouteData } from '../ExtensionConnector/types'\n\nexport const getInitialRouteEntries = (initialRouteData?: RouteData) => {\n let initialEntries: H.LocationDescriptor[] | undefined\n if (initialRouteData) {\n const { route, routeState } = initialRouteData\n initialEntries = [{ ...H.parsePath(route), state: routeState }]\n }\n return initialEntries\n}\n\nexport const dummyExtensionSdkReact = () => {\n // Force publish - to be deleted\n return 'dummy'\n}\n"],"file":"get_initial_route_entries.js"}
1
+ {"version":3,"sources":["../../../src/components/utils/get_initial_route_entries.ts"],"names":["getInitialRouteEntries","initialRouteData","initialEntries","route","routeState","H","parsePath","state"],"mappings":";;;;;;;AA0BA;;;;;;;;;;;;AAGO,IAAMA,sBAAsB,GAAIC,gBAAD,IAAkC;AACtE,MAAIC,cAAJ;;AACA,MAAID,gBAAJ,EAAsB;AACpB,QAAM;AAAEE,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAwBH,gBAA9B;AACAC,IAAAA,cAAc,GAAG,iCAAMG,CAAC,CAACC,SAAF,CAAYH,KAAZ,CAAN;AAA0BI,MAAAA,KAAK,EAAEH;AAAjC,OAAjB;AACD;;AACD,SAAOF,cAAP;AACD,CAPM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport * as H from 'history'\nimport type { RouteData } from '../ExtensionConnector/types'\n\nexport const getInitialRouteEntries = (initialRouteData?: RouteData) => {\n let initialEntries: H.LocationDescriptor[] | undefined\n if (initialRouteData) {\n const { route, routeState } = initialRouteData\n initialEntries = [{ ...H.parsePath(route), state: routeState }]\n }\n return initialEntries\n}\n"],"file":"get_initial_route_entries.js"}
@@ -61,24 +61,6 @@ export var ExtensionConnector = _ref => {
61
61
  }
62
62
  };
63
63
 
64
- var visualizationDataReceivedCallback = visualizationData => {
65
- updateContextData(_objectSpread(_objectSpread({}, contextData), {}, {
66
- visualizationData
67
- }));
68
- };
69
-
70
- var tileHostDataChangedCallback = partialHostData => {
71
- if (contextData.tileSDK) {
72
- var {
73
- tileSDK
74
- } = contextData;
75
- tileSDK.tileHostDataChanged(partialHostData);
76
- updateContextData(_objectSpread(_objectSpread({}, contextData), {}, {
77
- tileHostData: tileSDK.tileHostData
78
- }));
79
- }
80
- };
81
-
82
64
  React.useEffect(() => {
83
65
  var initialize = function () {
84
66
  var _ref2 = _asyncToGenerator(function* () {
@@ -87,9 +69,7 @@ export var ExtensionConnector = _ref => {
87
69
  setInitialRoute: setInitialRouteAndRouteState,
88
70
  requiredLookerVersion,
89
71
  hostChangedRoute,
90
- chattyTimeout,
91
- visualizationDataReceivedCallback,
92
- tileHostDataChangedCallback
72
+ chattyTimeout
93
73
  });
94
74
  connectedCallback(extensionHost);
95
75
  setInitializing(false);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ExtensionConnector/ExtensionConnector.tsx"],"names":["isEqual","React","useState","MemoryRouter","connectExtensionHost","ErrorMessage","RouteChangeListener","getInitialRouteEntries","setupClosePopoversListener","ExtensionConnector","contextData","updateContextData","connectedCallback","unloadedCallback","onPathnameChange","onRouteChange","hostTracksRoute","loadingComponent","requiredLookerVersion","chattyTimeout","children","initialRouteData","setInitialRouteData","hostRouteData","setHostRouteData","route","initializing","setInitializing","initializeError","setInitializeError","setInitialRouteAndRouteState","routeState","hostChangedRoute","_route","startsWith","visualizationDataReceivedCallback","visualizationData","tileHostDataChangedCallback","partialHostData","tileSDK","tileHostDataChanged","tileHostData","useEffect","initialize","extensionHost","setInitialRoute","error","console","message","undefined","extensionSDK"],"mappings":"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","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport isEqual from 'lodash/isEqual'\nimport React, { useState } from 'react'\nimport { MemoryRouter } from 'react-router-dom'\nimport type { RawVisualizationData, TileHostData } from '@looker/extension-sdk'\nimport { connectExtensionHost } from '@looker/extension-sdk'\nimport { ErrorMessage } from '../ErrorMessage'\nimport { RouteChangeListener } from '../RouteChangeListener'\nimport { getInitialRouteEntries } from '../utils/get_initial_route_entries'\nimport { setupClosePopoversListener } from '../utils/setup_close_popovers'\nimport type { ExtensionConnectorProps, RouteData } from './types'\n\n/**\n * ExtensionConnector component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport const ExtensionConnector: React.FC<ExtensionConnectorProps> = ({\n contextData,\n updateContextData,\n connectedCallback,\n unloadedCallback,\n onPathnameChange,\n onRouteChange,\n hostTracksRoute = true,\n loadingComponent,\n requiredLookerVersion,\n chattyTimeout,\n children,\n}) => {\n const [initialRouteData, setInitialRouteData] = useState<RouteData>()\n const [hostRouteData, setHostRouteData] = useState<RouteData>({ route: '' })\n const [initializing, setInitializing] = useState(true)\n const [initializeError, setInitializeError] = useState<string>()\n\n const setInitialRouteAndRouteState = (route: string, routeState?: any) => {\n if (hostTracksRoute) {\n setInitialRouteData({ route, routeState })\n }\n }\n\n const hostChangedRoute = (_route: string, routeState?: any) => {\n const route = _route.startsWith('/') ? _route : '/' + _route\n if (\n route !== hostRouteData.route ||\n !isEqual(routeState, hostRouteData.routeState)\n ) {\n setHostRouteData({ route, routeState })\n updateContextData({\n ...contextData,\n route,\n routeState,\n })\n }\n }\n\n const visualizationDataReceivedCallback = (\n visualizationData: RawVisualizationData\n ) => {\n updateContextData({\n ...contextData,\n visualizationData,\n })\n }\n\n const tileHostDataChangedCallback = (\n partialHostData: Partial<TileHostData>\n ) => {\n if (contextData.tileSDK) {\n const { tileSDK } = contextData\n tileSDK.tileHostDataChanged(partialHostData)\n updateContextData({\n ...contextData,\n tileHostData: tileSDK.tileHostData,\n })\n }\n }\n\n React.useEffect(() => {\n const initialize = async () => {\n try {\n const extensionHost = await connectExtensionHost({\n setInitialRoute: setInitialRouteAndRouteState,\n requiredLookerVersion,\n hostChangedRoute,\n chattyTimeout,\n visualizationDataReceivedCallback,\n tileHostDataChangedCallback,\n })\n connectedCallback(extensionHost)\n setInitializing(false)\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.error(error)\n setInitializeError(error.message || 'Extension failed to initialize.')\n setInitializing(false)\n }\n }\n initialize()\n return () => {\n unloadedCallback()\n }\n }, [])\n\n React.useEffect(() => {\n return initializing\n ? undefined\n : setupClosePopoversListener(contextData.extensionSDK)\n }, [initializing])\n\n return (\n <>\n {initializing ? (\n loadingComponent\n ) : (\n <>\n {initializeError ? (\n <ErrorMessage errorMessage={initializeError} />\n ) : (\n <>\n {hostTracksRoute ? (\n <MemoryRouter\n initialEntries={getInitialRouteEntries(initialRouteData)}\n >\n <RouteChangeListener\n onRouteChange={onRouteChange}\n onPathnameChange={onPathnameChange}\n extensionHost={contextData!.extensionSDK}\n hostRoute={hostRouteData.route}\n hostRouteState={hostRouteData.routeState}\n />\n {children}\n </MemoryRouter>\n ) : (\n <>{children}</>\n )}\n </>\n )}\n </>\n )}\n </>\n )\n}\n"],"file":"ExtensionConnector.js"}
1
+ {"version":3,"sources":["../../../../src/components/ExtensionConnector/ExtensionConnector.tsx"],"names":["isEqual","React","useState","MemoryRouter","connectExtensionHost","ErrorMessage","RouteChangeListener","getInitialRouteEntries","setupClosePopoversListener","ExtensionConnector","contextData","updateContextData","connectedCallback","unloadedCallback","onPathnameChange","onRouteChange","hostTracksRoute","loadingComponent","requiredLookerVersion","chattyTimeout","children","initialRouteData","setInitialRouteData","hostRouteData","setHostRouteData","route","initializing","setInitializing","initializeError","setInitializeError","setInitialRouteAndRouteState","routeState","hostChangedRoute","_route","startsWith","useEffect","initialize","extensionHost","setInitialRoute","error","console","message","undefined","extensionSDK"],"mappings":"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","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport isEqual from 'lodash/isEqual'\nimport React, { useState } from 'react'\nimport { MemoryRouter } from 'react-router-dom'\nimport { connectExtensionHost } from '@looker/extension-sdk'\nimport { ErrorMessage } from '../ErrorMessage'\nimport { RouteChangeListener } from '../RouteChangeListener'\nimport { getInitialRouteEntries } from '../utils/get_initial_route_entries'\nimport { setupClosePopoversListener } from '../utils/setup_close_popovers'\nimport type { ExtensionConnectorProps, RouteData } from './types'\n\n/**\n * ExtensionConnector component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport const ExtensionConnector: React.FC<ExtensionConnectorProps> = ({\n contextData,\n updateContextData,\n connectedCallback,\n unloadedCallback,\n onPathnameChange,\n onRouteChange,\n hostTracksRoute = true,\n loadingComponent,\n requiredLookerVersion,\n chattyTimeout,\n children,\n}) => {\n const [initialRouteData, setInitialRouteData] = useState<RouteData>()\n const [hostRouteData, setHostRouteData] = useState<RouteData>({ route: '' })\n const [initializing, setInitializing] = useState(true)\n const [initializeError, setInitializeError] = useState<string>()\n\n const setInitialRouteAndRouteState = (route: string, routeState?: any) => {\n if (hostTracksRoute) {\n setInitialRouteData({ route, routeState })\n }\n }\n\n const hostChangedRoute = (_route: string, routeState?: any) => {\n const route = _route.startsWith('/') ? _route : '/' + _route\n if (\n route !== hostRouteData.route ||\n !isEqual(routeState, hostRouteData.routeState)\n ) {\n setHostRouteData({ route, routeState })\n updateContextData({\n ...contextData,\n route,\n routeState,\n })\n }\n }\n\n React.useEffect(() => {\n const initialize = async () => {\n try {\n const extensionHost = await connectExtensionHost({\n setInitialRoute: setInitialRouteAndRouteState,\n requiredLookerVersion,\n hostChangedRoute,\n chattyTimeout,\n })\n connectedCallback(extensionHost)\n setInitializing(false)\n } catch (error: any) {\n // eslint-disable-next-line no-console\n console.error(error)\n setInitializeError(error.message || 'Extension failed to initialize.')\n setInitializing(false)\n }\n }\n initialize()\n return () => {\n unloadedCallback()\n }\n }, [])\n\n React.useEffect(() => {\n return initializing\n ? undefined\n : setupClosePopoversListener(contextData.extensionSDK)\n }, [initializing])\n\n return (\n <>\n {initializing ? (\n loadingComponent\n ) : (\n <>\n {initializeError ? (\n <ErrorMessage errorMessage={initializeError} />\n ) : (\n <>\n {hostTracksRoute ? (\n <MemoryRouter\n initialEntries={getInitialRouteEntries(initialRouteData)}\n >\n <RouteChangeListener\n onRouteChange={onRouteChange}\n onPathnameChange={onPathnameChange}\n extensionHost={contextData!.extensionSDK}\n hostRoute={hostRouteData.route}\n hostRouteState={hostRouteData.routeState}\n />\n {children}\n </MemoryRouter>\n ) : (\n <>{children}</>\n )}\n </>\n )}\n </>\n )}\n </>\n )\n}\n"],"file":"ExtensionConnector.js"}
@@ -29,28 +29,12 @@ export var ExtensionProvider = _ref => {
29
29
  var core40SDK = LookerExtensionSDK.create40Client(extensionHost);
30
30
  registerCore31SDK(core31SDK);
31
31
  registerCore40SDK(core40SDK);
32
- var {
33
- visualizationSDK,
34
- tileSDK,
35
- lookerHostData
36
- } = extensionHost;
37
- var {
38
- visualizationData
39
- } = visualizationSDK;
40
- var {
41
- tileHostData
42
- } = tileSDK;
43
32
  setExtensionData(previousState => {
44
33
  return _objectSpread(_objectSpread({}, previousState), {}, {
45
34
  extensionSDK: extensionHost,
46
35
  coreSDK: core31SDK,
47
36
  core31SDK,
48
- core40SDK,
49
- visualizationSDK,
50
- tileSDK,
51
- visualizationData,
52
- tileHostData,
53
- lookerHostData
37
+ core40SDK
54
38
  });
55
39
  });
56
40
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ExtensionProvider/ExtensionProvider.tsx"],"names":["React","useState","LookerExtensionSDK","ExtensionConnector","registerCore31SDK","unregisterCore31SDK","registerCore40SDK","unregisterCore40SDK","ExtensionContext","createContext","undefined","ExtensionProvider","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","core31SDK","create31Client","core40SDK","create40Client","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","coreSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,kBAAT,QAAmC,uBAAnC;AAMA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,SAASC,iBAAT,EAA4BC,mBAA5B,QAAuD,uBAAvD;AACA,SAASC,iBAAT,EAA4BC,mBAA5B,QAAuD,uBAAvD;AAMA,OAAO,IAAMC,gBAAgB,GAAGR,KAAK,CAACS,aAAN,CAC9BC,SAD8B,CAAzB;AASP,OAAO,IAAMC,iBAAmD,GAAG,QAG7D;AAAA,MAH8D;AAClEC,IAAAA;AADkE,GAG9D;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCd,QAAQ,CAChD,EADgD,CAAlD;;AAGA,MAAMe,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,SAAsB,GAC1BhB,kBAAkB,CAACiB,cAAnB,CAAkCF,aAAlC,CADF;AAEA,QAAMG,SAAsB,GAC1BlB,kBAAkB,CAACmB,cAAnB,CAAkCJ,aAAlC,CADF;AAGAb,IAAAA,iBAAiB,CAACc,SAAD,CAAjB;AACAZ,IAAAA,iBAAiB,CAACc,SAAD,CAAjB;AACA,QAAM;AAAEE,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDP,aAAtD;AACA,QAAM;AAAEQ,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAR,IAAAA,gBAAgB,CAAEY,aAAD,IAAyC;AACxD,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEX,aAFhB;AAGEY,QAAAA,OAAO,EAAEX,SAHX;AAIEA,QAAAA,SAJF;AAKEE,QAAAA,SALF;AAMEE,QAAAA,gBANF;AAOEC,QAAAA,OAPF;AAQEE,QAAAA,iBARF;AASEC,QAAAA,YATF;AAUEF,QAAAA;AAVF;AAYD,KAbe,CAAhB;AAcD,GAzBD;;AA2BA,MAAMM,gBAAgB,GAAG,MAAM;AAC7BzB,IAAAA,mBAAmB;AACnBE,IAAAA,mBAAmB;AACpB,GAHD;;AAKA,MAAMwB,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1EjB,IAAAA,gBAAgB,CAAEY,aAAD,IAAyC;AACxD,6CACKA,aADL,GAEKK,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,oBAAC,gBAAD,CAAkB,QAAlB;AAA2B,IAAA,KAAK,EAAElB;AAAlC,KACE,oBAAC,kBAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEe,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGlB,QAPH,CADF,CADF;AAaD,CA7DM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { Looker31SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore31SDK, unregisterCore31SDK } from '../../sdk/core_sdk_31'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\nimport type { ExtensionContextData } from './types'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext = React.createContext<ExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n)\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n * @deprecated use ExtensionProvider40\n */\nexport const ExtensionProvider: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<ExtensionContextData>(\n {} as ExtensionContextData\n )\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const core31SDK: Looker31SDK =\n LookerExtensionSDK.create31Client(extensionHost)\n const core40SDK: Looker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n // Provide global access for use by redux if needed\n registerCore31SDK(core31SDK)\n registerCore40SDK(core40SDK)\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK: core31SDK,\n core31SDK,\n core40SDK,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore31SDK()\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext.Provider value={extensionData}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext.Provider>\n )\n}\n"],"file":"ExtensionProvider.js"}
1
+ {"version":3,"sources":["../../../../src/components/ExtensionProvider/ExtensionProvider.tsx"],"names":["React","useState","LookerExtensionSDK","ExtensionConnector","registerCore31SDK","unregisterCore31SDK","registerCore40SDK","unregisterCore40SDK","ExtensionContext","createContext","undefined","ExtensionProvider","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","core31SDK","create31Client","core40SDK","create40Client","previousState","extensionSDK","coreSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,kBAAT,QAAmC,uBAAnC;AAMA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,SAASC,iBAAT,EAA4BC,mBAA5B,QAAuD,uBAAvD;AACA,SAASC,iBAAT,EAA4BC,mBAA5B,QAAuD,uBAAvD;AAMA,OAAO,IAAMC,gBAAgB,GAAGR,KAAK,CAACS,aAAN,CAC9BC,SAD8B,CAAzB;AAQP,OAAO,IAAMC,iBAAmD,GAAG,QAG7D;AAAA,MAH8D;AAClEC,IAAAA;AADkE,GAG9D;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCd,QAAQ,CAChD,EADgD,CAAlD;;AAGA,MAAMe,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,SAAsB,GAC1BhB,kBAAkB,CAACiB,cAAnB,CAAkCF,aAAlC,CADF;AAEA,QAAMG,SAAsB,GAC1BlB,kBAAkB,CAACmB,cAAnB,CAAkCJ,aAAlC,CADF;AAGAb,IAAAA,iBAAiB,CAACc,SAAD,CAAjB;AACAZ,IAAAA,iBAAiB,CAACc,SAAD,CAAjB;AACAL,IAAAA,gBAAgB,CAAEO,aAAD,IAAyC;AACxD,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEN,aAFhB;AAGEO,QAAAA,OAAO,EAAEN,SAHX;AAIEA,QAAAA,SAJF;AAKEE,QAAAA;AALF;AAOD,KARe,CAAhB;AASD,GAjBD;;AAmBA,MAAMK,gBAAgB,GAAG,MAAM;AAC7BpB,IAAAA,mBAAmB;AACnBE,IAAAA,mBAAmB;AACpB,GAHD;;AAKA,MAAMmB,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1EZ,IAAAA,gBAAgB,CAAEO,aAAD,IAAyC;AACxD,6CACKA,aADL,GAEKK,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,oBAAC,gBAAD,CAAkB,QAAlB;AAA2B,IAAA,KAAK,EAAEb;AAAlC,KACE,oBAAC,kBAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEU,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGb,QAPH,CADF,CADF;AAaD,CArDM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { Looker31SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore31SDK, unregisterCore31SDK } from '../../sdk/core_sdk_31'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\nimport type { ExtensionContextData } from './types'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext = React.createContext<ExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n)\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport const ExtensionProvider: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<ExtensionContextData>(\n {} as ExtensionContextData\n )\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const core31SDK: Looker31SDK =\n LookerExtensionSDK.create31Client(extensionHost)\n const core40SDK: Looker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n // Provide global access for use by redux if needed\n registerCore31SDK(core31SDK)\n registerCore40SDK(core40SDK)\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK: core31SDK,\n core31SDK,\n core40SDK,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore31SDK()\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext.Provider value={extensionData!}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext.Provider>\n )\n}\n"],"file":"ExtensionProvider.js"}
@@ -34,26 +34,10 @@ export function ExtensionProvider2(props) {
34
34
  }
35
35
 
36
36
  registerCoreSDK2(coreSDK);
37
- var {
38
- visualizationSDK,
39
- tileSDK,
40
- lookerHostData
41
- } = extensionHost;
42
- var {
43
- visualizationData
44
- } = visualizationSDK;
45
- var {
46
- tileHostData
47
- } = tileSDK;
48
37
  setExtensionData(previousState => {
49
38
  return _objectSpread(_objectSpread({}, previousState), {}, {
50
39
  extensionSDK: extensionHost,
51
- coreSDK,
52
- visualizationSDK,
53
- tileSDK,
54
- visualizationData,
55
- tileHostData,
56
- lookerHostData
40
+ coreSDK
57
41
  });
58
42
  });
59
43
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ExtensionProvider2/ExtensionProvider2.tsx"],"names":["React","useState","SdkConnection","LookerExtensionSDK","ExtensionConnector","registerCoreSDK2","unregisterCoreSDK2","ExtensionContext2","createContext","undefined","ExtensionProvider2","props","children","type","rest","extensionData","setExtensionData","apiVersion","ApiVersion","connectedCallback","extensionHost","coreSDK","createClient","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,aAAT,QAA8B,uBAA9B;AACA,SAASC,kBAAT,QAAmC,aAAnC;AAKA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,SAASC,gBAAT,EAA2BC,kBAA3B,QAAqD,qBAArD;AASA,OAAO,IAAMC,iBAAiB,GAAGP,KAAK,CAACQ,aAAN,CAG/BC,SAH+B,CAA1B;AAcP,OAAO,SAASC,kBAAT,CAA+BC,KAA/B,EAAkE;AACvE,MAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA8BF,KAApC;AAAA,MAA2BG,IAA3B,4BAAoCH,KAApC;;AACA,MAAM,CAACI,aAAD,EAAgBC,gBAAhB,IAAoCf,QAAQ,CAChD,EADgD,CAAlD;AAGA,MAAMgB,UAAU,GAAIJ,IAAD,CAAcK,UAAjC;;AAEA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAIC,OAAJ;;AACA,QAAIJ,UAAJ,EAAgB;AACdI,MAAAA,OAAO,GAAGlB,kBAAkB,CAACmB,YAAnB,CACR,IAAIpB,aAAJ,CAAkBkB,aAAlB,EAAiCH,UAAjC,CADQ,EAERJ,IAFQ,CAAV;AAID;;AACDR,IAAAA,gBAAgB,CAACgB,OAAD,CAAhB;AACA,QAAM;AAAEE,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDL,aAAtD;AACA,QAAM;AAAEM,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAR,IAAAA,gBAAgB,CAAEY,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAET,aAFhB;AAGEC,QAAAA,OAHF;AAIEE,QAAAA,gBAJF;AAKEC,QAAAA,OALF;AAMEE,QAAAA,iBANF;AAOEC,QAAAA,YAPF;AAQEF,QAAAA;AARF;AAUD,KAXe,CAAhB;AAYD,GAxBD;;AA0BA,MAAMK,gBAAgB,GAAG,MAAM;AAC7BxB,IAAAA,kBAAkB;AACnB,GAFD;;AAIA,MAAMyB,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1EhB,IAAAA,gBAAgB,CAAEY,aAAD,IAA6C;AAC5D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,oBAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAEjB;AAAnC,KACE,oBAAC,kBAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEI,iBAHrB;AAIE,IAAA,iBAAiB,EAAEY,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGlB,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { SdkConnection } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCoreSDK2, unregisterCoreSDK2 } from '../../sdk/core_sdk2'\n\nexport interface ExtensionContextData2<T> extends BaseExtensionContextData {\n coreSDK: T\n}\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext2 = React.createContext<\n ExtensionContextData2<any>\n>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider2Props<T> extends ExtensionProviderProps {\n type: T\n}\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport function ExtensionProvider2<T>(props: ExtensionProvider2Props<T>) {\n const { children, type, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData2<T>>(\n {} as ExtensionContextData2<T>\n )\n const apiVersion = (type as any).ApiVersion\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n let coreSDK: any\n if (apiVersion) {\n coreSDK = LookerExtensionSDK.createClient(\n new SdkConnection(extensionHost, apiVersion),\n type as any\n )\n }\n registerCoreSDK2(coreSDK)\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCoreSDK2()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData2<T>) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext2.Provider value={extensionData}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext2.Provider>\n )\n}\n"],"file":"ExtensionProvider2.js"}
1
+ {"version":3,"sources":["../../../../src/components/ExtensionProvider2/ExtensionProvider2.tsx"],"names":["React","useState","SdkConnection","LookerExtensionSDK","ExtensionConnector","registerCoreSDK2","unregisterCoreSDK2","ExtensionContext2","createContext","undefined","ExtensionProvider2","props","children","type","rest","extensionData","setExtensionData","apiVersion","ApiVersion","connectedCallback","extensionHost","coreSDK","createClient","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,aAAT,QAA8B,uBAA9B;AACA,SAASC,kBAAT,QAAmC,aAAnC;AAKA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,SAASC,gBAAT,EAA2BC,kBAA3B,QAAqD,qBAArD;AASA,OAAO,IAAMC,iBAAiB,GAAGP,KAAK,CAACQ,aAAN,CAG/BC,SAH+B,CAA1B;AAcP,OAAO,SAASC,kBAAT,CAA+BC,KAA/B,EAAkE;AACvE,MAAM;AAAEC,IAAAA,QAAF;AAAYC,IAAAA;AAAZ,MAA8BF,KAApC;AAAA,MAA2BG,IAA3B,4BAAoCH,KAApC;;AACA,MAAM,CAACI,aAAD,EAAgBC,gBAAhB,IAAoCf,QAAQ,CAChD,EADgD,CAAlD;AAGA,MAAMgB,UAAU,GAAIJ,IAAD,CAAcK,UAAjC;;AAEA,MAAMC,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAIC,OAAJ;;AACA,QAAIJ,UAAJ,EAAgB;AACdI,MAAAA,OAAO,GAAGlB,kBAAkB,CAACmB,YAAnB,CACR,IAAIpB,aAAJ,CAAkBkB,aAAlB,EAAiCH,UAAjC,CADQ,EAERJ,IAFQ,CAAV;AAID;;AACDR,IAAAA,gBAAgB,CAACgB,OAAD,CAAhB;AACAL,IAAAA,gBAAgB,CAAEO,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEJ,aAFhB;AAGEC,QAAAA;AAHF;AAKD,KANe,CAAhB;AAOD,GAhBD;;AAkBA,MAAMI,gBAAgB,GAAG,MAAM;AAC7BnB,IAAAA,kBAAkB;AACnB,GAFD;;AAIA,MAAMoB,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1EX,IAAAA,gBAAgB,CAAEO,aAAD,IAA6C;AAC5D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,oBAAC,iBAAD,CAAmB,QAAnB;AAA4B,IAAA,KAAK,EAAEZ;AAAnC,KACE,oBAAC,kBAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEI,iBAHrB;AAIE,IAAA,iBAAiB,EAAEO,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGb,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { SdkConnection } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCoreSDK2, unregisterCoreSDK2 } from '../../sdk/core_sdk2'\n\nexport interface ExtensionContextData2<T> extends BaseExtensionContextData {\n coreSDK: T\n}\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContext2 = React.createContext<\n ExtensionContextData2<any>\n>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider2Props<T> extends ExtensionProviderProps {\n type: T\n}\n\n/**\n * ExtensionProvider component. Provides access to the extension API and SDK (use\n * ExtensionContext) and react routing services.\n */\nexport function ExtensionProvider2<T>(props: ExtensionProvider2Props<T>) {\n const { children, type, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData2<T>>(\n {} as ExtensionContextData2<T>\n )\n const apiVersion = (type as any).ApiVersion\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n let coreSDK: any\n if (apiVersion) {\n coreSDK = LookerExtensionSDK.createClient(\n new SdkConnection(extensionHost, apiVersion),\n type as any\n )\n }\n registerCoreSDK2(coreSDK)\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCoreSDK2()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData2<T>) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext2.Provider value={extensionData!}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext2.Provider>\n )\n}\n"],"file":"ExtensionProvider2.js"}
@@ -26,26 +26,10 @@ export function ExtensionProvider40(props) {
26
26
  var connectedCallback = extensionHost => {
27
27
  var coreSDK = LookerExtensionSDK.create40Client(extensionHost);
28
28
  registerCore40SDK(coreSDK);
29
- var {
30
- visualizationSDK,
31
- tileSDK,
32
- lookerHostData
33
- } = extensionHost;
34
- var {
35
- visualizationData
36
- } = visualizationSDK;
37
- var {
38
- tileHostData
39
- } = tileSDK;
40
29
  setExtensionData(previousState => {
41
30
  return _objectSpread(_objectSpread({}, previousState), {}, {
42
31
  extensionSDK: extensionHost,
43
- coreSDK,
44
- visualizationSDK,
45
- tileSDK,
46
- visualizationData,
47
- tileHostData,
48
- lookerHostData
32
+ coreSDK
49
33
  });
50
34
  });
51
35
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ExtensionProvider40/ExtensionProvider40.tsx"],"names":["React","useState","LookerExtensionSDK","ExtensionConnector","registerCore40SDK","unregisterCore40SDK","ExtensionContext40","createContext","undefined","ExtensionProvider40","props","children","rest","extensionData","setExtensionData","connectedCallback","extensionHost","coreSDK","create40Client","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,kBAAT,QAAmC,uBAAnC;AAMA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,SAASC,iBAAT,EAA4BC,mBAA5B,QAAuD,uBAAvD;AASA,OAAO,IAAMC,kBAAkB,GAAGN,KAAK,CAACO,aAAN,CAChCC,SADgC,CAA3B;AAUP,OAAO,SAASC,mBAAT,CAA6BC,KAA7B,EAA8D;AACnE,MAAM;AAAEC,IAAAA;AAAF,MAAwBD,KAA9B;AAAA,MAAqBE,IAArB,4BAA8BF,KAA9B;;AACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoCb,QAAQ,CAChD,EADgD,CAAlD;;AAIA,MAAMc,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,OAAqB,GACzBf,kBAAkB,CAACgB,cAAnB,CAAkCF,aAAlC,CADF;AAEAZ,IAAAA,iBAAiB,CAACa,OAAD,CAAjB;AACA,QAAM;AAAEE,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDL,aAAtD;AACA,QAAM;AAAEM,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAN,IAAAA,gBAAgB,CAAEU,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAET,aAFhB;AAGEC,QAAAA,OAHF;AAIEE,QAAAA,gBAJF;AAKEC,QAAAA,OALF;AAMEE,QAAAA,iBANF;AAOEC,QAAAA,YAPF;AAQEF,QAAAA;AARF;AAUD,KAXe,CAAhB;AAYD,GAnBD;;AAqBA,MAAMK,gBAAgB,GAAG,MAAM;AAC7BrB,IAAAA,mBAAmB;AACpB,GAFD;;AAIA,MAAMsB,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1Ed,IAAAA,gBAAgB,CAAEU,aAAD,IAA2C;AAC1D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,oBAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEf;AAApC,KACE,oBAAC,kBAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEY,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGf,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2022 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { ILooker40SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\n\nexport interface ExtensionContextData40 extends BaseExtensionContextData {\n coreSDK: ILooker40SDK\n}\n\n/**\n * React context provider for extension API and Looker SDK 4.0.\n */\nexport const ExtensionContext40 = React.createContext<ExtensionContextData40>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider40Props extends ExtensionProviderProps {}\n\n/**\n * ExtensionProvider40 component. Provides access to the extension API and SDK (use\n * ExtensionContext40) and react routing services.\n */\nexport function ExtensionProvider40(props: ExtensionProvider40Props) {\n const { children, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData40>(\n {} as ExtensionContextData40\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const coreSDK: ILooker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n registerCore40SDK(coreSDK as Looker40SDK)\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData40) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext40.Provider value={extensionData}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext40.Provider>\n )\n}\n"],"file":"ExtensionProvider40.js"}
1
+ {"version":3,"sources":["../../../../src/components/ExtensionProvider40/ExtensionProvider40.tsx"],"names":["React","useState","LookerExtensionSDK","ExtensionConnector","registerCore40SDK","unregisterCore40SDK","ExtensionContext40","createContext","undefined","ExtensionProvider40","props","children","rest","extensionData","setExtensionData","connectedCallback","extensionHost","coreSDK","create40Client","previousState","extensionSDK","unloadedCallback","updateContextData","updatedContextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAEA,SAASC,kBAAT,QAAmC,uBAAnC;AAMA,SAASC,kBAAT,QAAmC,uBAAnC;AACA,SAASC,iBAAT,EAA4BC,mBAA5B,QAAuD,uBAAvD;AASA,OAAO,IAAMC,kBAAkB,GAAGN,KAAK,CAACO,aAAN,CAChCC,SADgC,CAA3B;AAUP,OAAO,SAASC,mBAAT,CAA6BC,KAA7B,EAA8D;AACnE,MAAM;AAAEC,IAAAA;AAAF,MAAwBD,KAA9B;AAAA,MAAqBE,IAArB,4BAA8BF,KAA9B;;AACA,MAAM,CAACG,aAAD,EAAgBC,gBAAhB,IAAoCb,QAAQ,CAChD,EADgD,CAAlD;;AAIA,MAAMc,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAMC,OAAqB,GACzBf,kBAAkB,CAACgB,cAAnB,CAAkCF,aAAlC,CADF;AAEAZ,IAAAA,iBAAiB,CAACa,OAAD,CAAjB;AACAH,IAAAA,gBAAgB,CAAEK,aAAD,IAAwB;AACvC,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEJ,aAFhB;AAGEC,QAAAA;AAHF;AAKD,KANe,CAAhB;AAOD,GAXD;;AAaA,MAAMI,gBAAgB,GAAG,MAAM;AAC7BhB,IAAAA,mBAAmB;AACpB,GAFD;;AAIA,MAAMiB,iBAAiB,GAAIC,kBAAD,IAAkD;AAC1ET,IAAAA,gBAAgB,CAAEK,aAAD,IAA2C;AAC1D,6CACKA,aADL,GAEKI,kBAFL;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,SACE,oBAAC,kBAAD,CAAoB,QAApB;AAA6B,IAAA,KAAK,EAAEV;AAApC,KACE,oBAAC,kBAAD,eACMD,IADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEO,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGV,QAPH,CADF,CADF;AAaD","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2022 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport { LookerExtensionSDK } from '@looker/extension-sdk'\nimport type { ILooker40SDK, Looker40SDK } from '@looker/sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\nimport { registerCore40SDK, unregisterCore40SDK } from '../../sdk/core_sdk_40'\n\nexport interface ExtensionContextData40 extends BaseExtensionContextData {\n coreSDK: ILooker40SDK\n}\n\n/**\n * React context provider for extension API and Looker SDK 4.0.\n */\nexport const ExtensionContext40 = React.createContext<ExtensionContextData40>(\n undefined as any // no one will ever see this undefined!\n)\n\nexport interface ExtensionProvider40Props extends ExtensionProviderProps {}\n\n/**\n * ExtensionProvider40 component. Provides access to the extension API and SDK (use\n * ExtensionContext40) and react routing services.\n */\nexport function ExtensionProvider40(props: ExtensionProvider40Props) {\n const { children, ...rest } = props\n const [extensionData, setExtensionData] = useState<ExtensionContextData40>(\n {} as ExtensionContextData40\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const coreSDK: ILooker40SDK =\n LookerExtensionSDK.create40Client(extensionHost)\n registerCore40SDK(coreSDK as Looker40SDK)\n setExtensionData((previousState: any) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n coreSDK,\n }\n })\n }\n\n const unloadedCallback = () => {\n unregisterCore40SDK()\n }\n\n const updateContextData = (updatedContextData: BaseExtensionContextData) => {\n setExtensionData((previousState: ExtensionContextData40) => {\n return {\n ...previousState,\n ...updatedContextData,\n }\n })\n }\n\n return (\n <ExtensionContext40.Provider value={extensionData}>\n <ExtensionConnector\n {...rest}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContext40.Provider>\n )\n}\n"],"file":"ExtensionProvider40.js"}
@@ -22,25 +22,9 @@ export var ExtensionProviderBase = _ref => {
22
22
  var [extensionData, setExtensionData] = useState({});
23
23
 
24
24
  var connectedCallback = extensionHost => {
25
- var {
26
- visualizationSDK,
27
- tileSDK,
28
- lookerHostData
29
- } = extensionHost;
30
- var {
31
- visualizationData
32
- } = visualizationSDK;
33
- var {
34
- tileHostData
35
- } = tileSDK;
36
25
  setExtensionData(previousState => {
37
26
  return _objectSpread(_objectSpread({}, previousState), {}, {
38
- extensionSDK: extensionHost,
39
- visualizationSDK,
40
- tileSDK,
41
- visualizationData,
42
- tileHostData,
43
- lookerHostData
27
+ extensionSDK: extensionHost
44
28
  });
45
29
  });
46
30
  };
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ExtensionProviderBase/ExtensionProviderBase.tsx"],"names":["React","useState","ExtensionConnector","ExtensionContextBase","createContext","undefined","ExtensionProviderBase","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","visualizationSDK","tileSDK","lookerHostData","visualizationData","tileHostData","previousState","extensionSDK","unloadedCallback","updateContextData","contextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAMA,SAASC,kBAAT,QAAmC,uBAAnC;AAKA,OAAO,IAAMC,oBAAoB,GAC/BH,KAAK,CAACI,aAAN,CACEC,SADF,CADK;AASP,OAAO,IAAMC,qBAAuD,GAAG,QAGjE;AAAA,MAHkE;AACtEC,IAAAA;AADsE,GAGlE;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCT,QAAQ,CAChD,EADgD,CAAlD;;AAIA,MAAMU,iBAAiB,GAAIC,aAAD,IAAqC;AAC7D,QAAM;AAAEC,MAAAA,gBAAF;AAAoBC,MAAAA,OAApB;AAA6BC,MAAAA;AAA7B,QAAgDH,aAAtD;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAwBH,gBAA9B;AACA,QAAM;AAAEI,MAAAA;AAAF,QAAmBH,OAAzB;AACAJ,IAAAA,gBAAgB,CAAEQ,aAAD,IAA6C;AAC5D,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEP,aAFhB;AAGEC,QAAAA,gBAHF;AAIEC,QAAAA,OAJF;AAKEE,QAAAA,iBALF;AAMEC,QAAAA,YANF;AAOEF,QAAAA;AAPF;AASD,KAVe,CAAhB;AAWD,GAfD;;AAiBA,MAAMK,gBAAgB,GAAG,MAAM,CAE9B,CAFD;;AAIA,MAAMC,iBAAiB,GAAIC,WAAD,IAA2C;AACnEZ,IAAAA,gBAAgB,CAACY,WAAD,CAAhB;AACD,GAFD;;AAIA,SACE,oBAAC,oBAAD,CAAsB,QAAtB;AAA+B,IAAA,KAAK,EAAEb;AAAtC,KACE,oBAAC,kBAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEU,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGb,QAPH,CADF,CADF;AAaD,CA9CM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContextBase =\n React.createContext<BaseExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n )\n\n/**\n * ExtensionProviderBase component. Provides access to the extension API but no SDK is\n * provided.\n */\nexport const ExtensionProviderBase: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<BaseExtensionContextData>(\n {} as BaseExtensionContextData\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n const { visualizationSDK, tileSDK, lookerHostData } = extensionHost\n const { visualizationData } = visualizationSDK\n const { tileHostData } = tileSDK\n setExtensionData((previousState: BaseExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n visualizationSDK,\n tileSDK,\n visualizationData,\n tileHostData,\n lookerHostData,\n }\n })\n }\n\n const unloadedCallback = () => {\n // noop\n }\n\n const updateContextData = (contextData: BaseExtensionContextData) => {\n setExtensionData(contextData)\n }\n\n return (\n <ExtensionContextBase.Provider value={extensionData}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContextBase.Provider>\n )\n}\n"],"file":"ExtensionProviderBase.js"}
1
+ {"version":3,"sources":["../../../../src/components/ExtensionProviderBase/ExtensionProviderBase.tsx"],"names":["React","useState","ExtensionConnector","ExtensionContextBase","createContext","undefined","ExtensionProviderBase","children","props","extensionData","setExtensionData","connectedCallback","extensionHost","previousState","extensionSDK","unloadedCallback","updateContextData","contextData"],"mappings":";;;;;;;;;;;;AA0BA,OAAOA,KAAP,IAAgBC,QAAhB,QAAgC,OAAhC;AAMA,SAASC,kBAAT,QAAmC,uBAAnC;AAKA,OAAO,IAAMC,oBAAoB,GAC/BH,KAAK,CAACI,aAAN,CACEC,SADF,CADK;AASP,OAAO,IAAMC,qBAAuD,GAAG,QAGjE;AAAA,MAHkE;AACtEC,IAAAA;AADsE,GAGlE;AAAA,MADDC,KACC;;AACJ,MAAM,CAACC,aAAD,EAAgBC,gBAAhB,IAAoCT,QAAQ,CAChD,EADgD,CAAlD;;AAIA,MAAMU,iBAAiB,GAAIC,aAAD,IAAqC;AAC7DF,IAAAA,gBAAgB,CAAEG,aAAD,IAA6C;AAC5D,6CACKA,aADL;AAEEC,QAAAA,YAAY,EAAEF;AAFhB;AAID,KALe,CAAhB;AAMD,GAPD;;AASA,MAAMG,gBAAgB,GAAG,MAAM,CAE9B,CAFD;;AAIA,MAAMC,iBAAiB,GAAIC,WAAD,IAA2C;AACnEP,IAAAA,gBAAgB,CAACO,WAAD,CAAhB;AACD,GAFD;;AAIA,SACE,oBAAC,oBAAD,CAAsB,QAAtB;AAA+B,IAAA,KAAK,EAAER;AAAtC,KACE,oBAAC,kBAAD,eACMD,KADN;AAEE,IAAA,WAAW,EAAEC,aAFf;AAGE,IAAA,iBAAiB,EAAEE,iBAHrB;AAIE,IAAA,iBAAiB,EAAEK,iBAJrB;AAKE,IAAA,gBAAgB,EAAED;AALpB,MAOGR,QAPH,CADF,CADF;AAaD,CAtCM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport React, { useState } from 'react'\nimport type { ExtensionHostApi } from '@looker/extension-sdk'\nimport type {\n BaseExtensionContextData,\n ExtensionProviderProps,\n} from '../ExtensionConnector'\nimport { ExtensionConnector } from '../ExtensionConnector'\n\n/**\n * React context provider for extension API and SDK\n */\nexport const ExtensionContextBase =\n React.createContext<BaseExtensionContextData>(\n undefined as any // no one will ever see this undefined!\n )\n\n/**\n * ExtensionProviderBase component. Provides access to the extension API but no SDK is\n * provided.\n */\nexport const ExtensionProviderBase: React.FC<ExtensionProviderProps> = ({\n children,\n ...props\n}) => {\n const [extensionData, setExtensionData] = useState<BaseExtensionContextData>(\n {} as BaseExtensionContextData\n )\n\n const connectedCallback = (extensionHost: ExtensionHostApi) => {\n setExtensionData((previousState: BaseExtensionContextData) => {\n return {\n ...previousState,\n extensionSDK: extensionHost,\n }\n })\n }\n\n const unloadedCallback = () => {\n // noop\n }\n\n const updateContextData = (contextData: BaseExtensionContextData) => {\n setExtensionData(contextData)\n }\n\n return (\n <ExtensionContextBase.Provider value={extensionData!}>\n <ExtensionConnector\n {...props}\n contextData={extensionData}\n connectedCallback={connectedCallback}\n updateContextData={updateContextData}\n unloadedCallback={unloadedCallback}\n >\n {children}\n </ExtensionConnector>\n </ExtensionContextBase.Provider>\n )\n}\n"],"file":"ExtensionProviderBase.js"}
@@ -20,7 +20,4 @@ export var getInitialRouteEntries = initialRouteData => {
20
20
 
21
21
  return initialEntries;
22
22
  };
23
- export var dummyExtensionSdkReact = () => {
24
- return 'dummy';
25
- };
26
23
  //# sourceMappingURL=get_initial_route_entries.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/utils/get_initial_route_entries.ts"],"names":["H","getInitialRouteEntries","initialRouteData","initialEntries","route","routeState","parsePath","state","dummyExtensionSdkReact"],"mappings":";;;;;;AA0BA,OAAO,KAAKA,CAAZ,MAAmB,SAAnB;AAGA,OAAO,IAAMC,sBAAsB,GAAIC,gBAAD,IAAkC;AACtE,MAAIC,cAAJ;;AACA,MAAID,gBAAJ,EAAsB;AACpB,QAAM;AAAEE,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAwBH,gBAA9B;AACAC,IAAAA,cAAc,GAAG,iCAAMH,CAAC,CAACM,SAAF,CAAYF,KAAZ,CAAN;AAA0BG,MAAAA,KAAK,EAAEF;AAAjC,OAAjB;AACD;;AACD,SAAOF,cAAP;AACD,CAPM;AASP,OAAO,IAAMK,sBAAsB,GAAG,MAAM;AAE1C,SAAO,OAAP;AACD,CAHM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport * as H from 'history'\nimport type { RouteData } from '../ExtensionConnector/types'\n\nexport const getInitialRouteEntries = (initialRouteData?: RouteData) => {\n let initialEntries: H.LocationDescriptor[] | undefined\n if (initialRouteData) {\n const { route, routeState } = initialRouteData\n initialEntries = [{ ...H.parsePath(route), state: routeState }]\n }\n return initialEntries\n}\n\nexport const dummyExtensionSdkReact = () => {\n // Force publish - to be deleted\n return 'dummy'\n}\n"],"file":"get_initial_route_entries.js"}
1
+ {"version":3,"sources":["../../../../src/components/utils/get_initial_route_entries.ts"],"names":["H","getInitialRouteEntries","initialRouteData","initialEntries","route","routeState","parsePath","state"],"mappings":";;;;;;AA0BA,OAAO,KAAKA,CAAZ,MAAmB,SAAnB;AAGA,OAAO,IAAMC,sBAAsB,GAAIC,gBAAD,IAAkC;AACtE,MAAIC,cAAJ;;AACA,MAAID,gBAAJ,EAAsB;AACpB,QAAM;AAAEE,MAAAA,KAAF;AAASC,MAAAA;AAAT,QAAwBH,gBAA9B;AACAC,IAAAA,cAAc,GAAG,iCAAMH,CAAC,CAACM,SAAF,CAAYF,KAAZ,CAAN;AAA0BG,MAAAA,KAAK,EAAEF;AAAjC,OAAjB;AACD;;AACD,SAAOF,cAAP;AACD,CAPM","sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2021 Looker Data Sciences, Inc.\n\n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n\n The above copyright notice and this permission notice shall be included in all\n copies or substantial portions of the Software.\n\n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n SOFTWARE.\n\n */\n\nimport * as H from 'history'\nimport type { RouteData } from '../ExtensionConnector/types'\n\nexport const getInitialRouteEntries = (initialRouteData?: RouteData) => {\n let initialEntries: H.LocationDescriptor[] | undefined\n if (initialRouteData) {\n const { route, routeState } = initialRouteData\n initialEntries = [{ ...H.parsePath(route), state: routeState }]\n }\n return initialEntries\n}\n"],"file":"get_initial_route_entries.js"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@looker/extension-sdk-react",
3
- "version": "22.4.3-alpha.1522+a9ab180f",
3
+ "version": "22.6.0",
4
4
  "description": "Looker Extension SDK for React",
5
5
  "main": "lib/index.js",
6
6
  "module": "lib/esm/index.js",
@@ -43,9 +43,9 @@
43
43
  "react-router-dom": "^5.1.2"
44
44
  },
45
45
  "dependencies": {
46
- "@looker/extension-sdk": "^22.4.3-alpha.1522+a9ab180f",
47
- "@looker/sdk": "^22.4.2",
48
- "@looker/sdk-rtl": "^21.3.3",
46
+ "@looker/extension-sdk": "^22.6.0",
47
+ "@looker/sdk": "^22.6.0",
48
+ "@looker/sdk-rtl": "^21.3.4",
49
49
  "history": "^4.9.0",
50
50
  "lodash": "^4.17.20"
51
51
  },
@@ -58,5 +58,5 @@
58
58
  "Looker",
59
59
  "extension-sdk"
60
60
  ],
61
- "gitHead": "a9ab180fd4f5651720da87bd051f3f0fa9a06c23"
61
+ "gitHead": "918004bc063b73364fa2a714b14157e990fc331e"
62
62
  }