@looker/embed-components 23.8.1

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 (78) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/LICENSE +21 -0
  3. package/lib/GlobalStore/index.d.ts +2 -0
  4. package/lib/GlobalStore/index.js +28 -0
  5. package/lib/GlobalStore/index.js.map +1 -0
  6. package/lib/GlobalStore/sagas.d.ts +1 -0
  7. package/lib/GlobalStore/sagas.js +30 -0
  8. package/lib/GlobalStore/sagas.js.map +1 -0
  9. package/lib/GlobalStore/slice.d.ts +26 -0
  10. package/lib/GlobalStore/slice.js +39 -0
  11. package/lib/GlobalStore/slice.js.map +1 -0
  12. package/lib/GlobalStore/store.d.ts +10 -0
  13. package/lib/GlobalStore/store.js +21 -0
  14. package/lib/GlobalStore/store.js.map +1 -0
  15. package/lib/QuickEmbed/QuickEmbed.d.ts +6 -0
  16. package/lib/QuickEmbed/QuickEmbed.js +89 -0
  17. package/lib/QuickEmbed/QuickEmbed.js.map +1 -0
  18. package/lib/QuickEmbed/index.d.ts +1 -0
  19. package/lib/QuickEmbed/index.js +17 -0
  20. package/lib/QuickEmbed/index.js.map +1 -0
  21. package/lib/Theme/SelectTheme.d.ts +2 -0
  22. package/lib/Theme/SelectTheme.js +61 -0
  23. package/lib/Theme/SelectTheme.js.map +1 -0
  24. package/lib/Theme/index.d.ts +2 -0
  25. package/lib/Theme/index.js +28 -0
  26. package/lib/Theme/index.js.map +1 -0
  27. package/lib/Theme/state/index.d.ts +1 -0
  28. package/lib/Theme/state/index.js +17 -0
  29. package/lib/Theme/state/index.js.map +1 -0
  30. package/lib/Theme/state/sagas.d.ts +1 -0
  31. package/lib/Theme/state/sagas.js +83 -0
  32. package/lib/Theme/state/sagas.js.map +1 -0
  33. package/lib/Theme/state/slice.d.ts +36 -0
  34. package/lib/Theme/state/slice.js +59 -0
  35. package/lib/Theme/state/slice.js.map +1 -0
  36. package/lib/esm/GlobalStore/index.js +28 -0
  37. package/lib/esm/GlobalStore/index.js.map +1 -0
  38. package/lib/esm/GlobalStore/sagas.js +30 -0
  39. package/lib/esm/GlobalStore/sagas.js.map +1 -0
  40. package/lib/esm/GlobalStore/slice.js +39 -0
  41. package/lib/esm/GlobalStore/slice.js.map +1 -0
  42. package/lib/esm/GlobalStore/store.js +21 -0
  43. package/lib/esm/GlobalStore/store.js.map +1 -0
  44. package/lib/esm/QuickEmbed/QuickEmbed.js +89 -0
  45. package/lib/esm/QuickEmbed/QuickEmbed.js.map +1 -0
  46. package/lib/esm/QuickEmbed/index.js +17 -0
  47. package/lib/esm/QuickEmbed/index.js.map +1 -0
  48. package/lib/esm/Theme/SelectTheme.js +61 -0
  49. package/lib/esm/Theme/SelectTheme.js.map +1 -0
  50. package/lib/esm/Theme/index.js +28 -0
  51. package/lib/esm/Theme/index.js.map +1 -0
  52. package/lib/esm/Theme/state/index.js +17 -0
  53. package/lib/esm/Theme/state/index.js.map +1 -0
  54. package/lib/esm/Theme/state/sagas.js +83 -0
  55. package/lib/esm/Theme/state/sagas.js.map +1 -0
  56. package/lib/esm/Theme/state/slice.js +59 -0
  57. package/lib/esm/Theme/state/slice.js.map +1 -0
  58. package/lib/esm/index.js +39 -0
  59. package/lib/esm/index.js.map +1 -0
  60. package/lib/esm/test-utils/index.js +28 -0
  61. package/lib/esm/test-utils/index.js.map +1 -0
  62. package/lib/esm/test-utils/store.js +26 -0
  63. package/lib/esm/test-utils/store.js.map +1 -0
  64. package/lib/esm/test-utils/utils.js +38 -0
  65. package/lib/esm/test-utils/utils.js.map +1 -0
  66. package/lib/index.d.ts +3 -0
  67. package/lib/index.js +39 -0
  68. package/lib/index.js.map +1 -0
  69. package/lib/test-utils/index.d.ts +2 -0
  70. package/lib/test-utils/index.js +28 -0
  71. package/lib/test-utils/index.js.map +1 -0
  72. package/lib/test-utils/store.d.ts +10 -0
  73. package/lib/test-utils/store.js +26 -0
  74. package/lib/test-utils/store.js.map +1 -0
  75. package/lib/test-utils/utils.d.ts +10 -0
  76. package/lib/test-utils/utils.js +38 -0
  77. package/lib/test-utils/utils.js.map +1 -0
  78. package/package.json +63 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,21 @@
1
+ # Changelog
2
+
3
+ ## 23.8.1 (2023-05-11)
4
+
5
+
6
+ ### Features
7
+
8
+ * embed playground ([#1280](https://github.com/looker-open-source/sdk-codegen/issues/1280)) ([28f1218](https://github.com/looker-open-source/sdk-codegen/commit/28f121830f116da59b7f1cd248433c15c98cc56e))
9
+ * QuickEmbed component ([#1306](https://github.com/looker-open-source/sdk-codegen/issues/1306)) ([4c78712](https://github.com/looker-open-source/sdk-codegen/commit/4c78712d44fb32dbdc0690a6121bc35086dec44a))
10
+ * replace @looker/redux for with npm dependency ([#1307](https://github.com/looker-open-source/sdk-codegen/issues/1307)) ([baa58db](https://github.com/looker-open-source/sdk-codegen/commit/baa58db1bce9d974384c63a0e11301f38774a7b2))
11
+ * SelectTheme component ([#1300](https://github.com/looker-open-source/sdk-codegen/issues/1300)) ([95c0da6](https://github.com/looker-open-source/sdk-codegen/commit/95c0da628d1d22fae2c6968f988047bfacc5fd01))
12
+
13
+
14
+ ### Dependencies
15
+
16
+ * The following workspace dependencies were updated
17
+ * dependencies
18
+ * @looker/embed-services bumped from * to 23.8.1
19
+ * @looker/sdk bumped from ^23.2.0 to ^23.8.1
20
+ * devDependencies
21
+ * @looker/sdk-node bumped from ^23.4.0 to ^23.8.1
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2023 Looker Data Sciences, Inc.
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,2 @@
1
+ export * from './slice';
2
+ export * from './store';
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _slice = require("./slice");
7
+ Object.keys(_slice).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _slice[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _slice[key];
14
+ }
15
+ });
16
+ });
17
+ var _store = require("./store");
18
+ Object.keys(_store).forEach(function (key) {
19
+ if (key === "default" || key === "__esModule") return;
20
+ if (key in exports && exports[key] === _store[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _store[key];
25
+ }
26
+ });
27
+ });
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_slice","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_store"],"sources":["../../src/GlobalStore/index.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nexport * from './slice'\nexport * from './store'\n"],"mappings":";;;;;AAyBA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,MAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,MAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,MAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAC,MAAA,CAAAL,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1 @@
1
+ export declare function saga(): Generator<import("redux-saga/effects").ForkEffect<never>, void, unknown>;
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.saga = saga;
7
+ var _typedReduxSaga = require("typed-redux-saga");
8
+ var _embedServices = require("@looker/embed-services");
9
+ var _slice = require("./slice");
10
+ function* initSaga(action) {
11
+ var {
12
+ initFactorySuccessAction,
13
+ setFailureAction
14
+ } = _slice.factoryActions;
15
+ try {
16
+ (0, _embedServices.createFactory)(action.payload.sdk);
17
+ yield* (0, _typedReduxSaga.put)(initFactorySuccessAction());
18
+ } catch (error) {
19
+ yield* (0, _typedReduxSaga.put)(setFailureAction({
20
+ error: error.message
21
+ }));
22
+ }
23
+ }
24
+ function* saga() {
25
+ var {
26
+ initFactoryAction
27
+ } = _slice.factoryActions;
28
+ yield* (0, _typedReduxSaga.takeEvery)(initFactoryAction, initSaga);
29
+ }
30
+ //# sourceMappingURL=sagas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sagas.js","names":["_typedReduxSaga","require","_embedServices","_slice","initSaga","action","initFactorySuccessAction","setFailureAction","factoryActions","createFactory","payload","sdk","put","error","message","saga","initFactoryAction","takeEvery"],"sources":["../../src/GlobalStore/sagas.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nimport { takeEvery, put } from 'typed-redux-saga'\nimport { createFactory } from '@looker/embed-services'\nimport type { PayloadAction } from '@reduxjs/toolkit'\n\nimport { factoryActions } from './slice'\nimport type { InitFactoryAction } from './slice'\n\nfunction* initSaga(action: PayloadAction<InitFactoryAction>) {\n const { initFactorySuccessAction, setFailureAction } = factoryActions\n try {\n createFactory(action.payload.sdk)\n yield* put(initFactorySuccessAction())\n } catch (error: any) {\n yield* put(setFailureAction({ error: error.message }))\n }\n}\n\nexport function* saga() {\n const { initFactoryAction } = factoryActions\n yield* takeEvery(initFactoryAction, initSaga)\n}\n"],"mappings":";;;;;;AAyBA,IAAAA,eAAA,GAAAC,OAAA;AACA,IAAAC,cAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAGA,UAAUG,QAAQA,CAACC,MAAwC,EAAE;EAC3D,IAAM;IAAEC,wBAAwB;IAAEC;EAAiB,CAAC,GAAGC,qBAAc;EACrE,IAAI;IACF,IAAAC,4BAAa,EAACJ,MAAM,CAACK,OAAO,CAACC,GAAG,CAAC;IACjC,OAAO,IAAAC,mBAAG,EAACN,wBAAwB,EAAE,CAAC;EACxC,CAAC,CAAC,OAAOO,KAAU,EAAE;IACnB,OAAO,IAAAD,mBAAG,EAACL,gBAAgB,CAAC;MAAEM,KAAK,EAAEA,KAAK,CAACC;IAAQ,CAAC,CAAC,CAAC;EACxD;AACF;AAEO,UAAUC,IAAIA,CAAA,EAAG;EACtB,IAAM;IAAEC;EAAkB,CAAC,GAAGR,qBAAc;EAC5C,OAAO,IAAAS,yBAAS,EAACD,iBAAiB,EAAEZ,QAAQ,CAAC;AAC/C"}
@@ -0,0 +1,26 @@
1
+ import type { IAPIMethods } from '@looker/sdk-rtl';
2
+ import type { PayloadAction } from '@reduxjs/toolkit';
3
+ export interface FactoryState {
4
+ initialized: boolean;
5
+ error?: string;
6
+ }
7
+ export declare const defaultFactoryState: FactoryState;
8
+ export interface InitFactoryAction {
9
+ sdk: IAPIMethods;
10
+ }
11
+ declare type SetFailureAction = Record<'error', string>;
12
+ export declare const FACTORY_SLICE_NAME = "factory";
13
+ export declare const factorySlice: import("@reduxjs/toolkit").Slice<FactoryState, {
14
+ initFactoryAction(_state: import("immer/dist/internal").WritableDraft<FactoryState>, _action: PayloadAction<InitFactoryAction>): void;
15
+ initFactorySuccessAction(state: import("immer/dist/internal").WritableDraft<FactoryState>): void;
16
+ destroyFactoryAction(): void;
17
+ setFailureAction(state: import("immer/dist/internal").WritableDraft<FactoryState>, action: PayloadAction<SetFailureAction>): void;
18
+ }, "factory">;
19
+ export declare const factoryActions: import("@reduxjs/toolkit").CaseReducerActions<{
20
+ initFactoryAction(_state: import("immer/dist/internal").WritableDraft<FactoryState>, _action: PayloadAction<InitFactoryAction>): void;
21
+ initFactorySuccessAction(state: import("immer/dist/internal").WritableDraft<FactoryState>): void;
22
+ destroyFactoryAction(): void;
23
+ setFailureAction(state: import("immer/dist/internal").WritableDraft<FactoryState>, action: PayloadAction<SetFailureAction>): void;
24
+ }, "factory">;
25
+ export declare const useFactoryActions: () => any, useFactoryStoreState: () => FactoryState;
26
+ export {};
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.useFactoryStoreState = exports.useFactoryActions = exports.factorySlice = exports.factoryActions = exports.defaultFactoryState = exports.FACTORY_SLICE_NAME = void 0;
7
+ var _toolkit = require("@reduxjs/toolkit");
8
+ var _redux = require("@looker/redux");
9
+ var _sagas = require("./sagas");
10
+ var defaultFactoryState = {
11
+ initialized: false
12
+ };
13
+ exports.defaultFactoryState = defaultFactoryState;
14
+ var FACTORY_SLICE_NAME = 'factory';
15
+ exports.FACTORY_SLICE_NAME = FACTORY_SLICE_NAME;
16
+ var factorySlice = (0, _toolkit.createSlice)({
17
+ name: FACTORY_SLICE_NAME,
18
+ initialState: defaultFactoryState,
19
+ reducers: {
20
+ initFactoryAction(_state, _action) {},
21
+ initFactorySuccessAction(state) {
22
+ state.initialized = true;
23
+ },
24
+ destroyFactoryAction() {},
25
+ setFailureAction(state, action) {
26
+ state.error = action.payload.error;
27
+ }
28
+ }
29
+ });
30
+ exports.factorySlice = factorySlice;
31
+ var factoryActions = factorySlice.actions;
32
+ exports.factoryActions = factoryActions;
33
+ var {
34
+ useActions: useFactoryActions,
35
+ useStoreState: useFactoryStoreState
36
+ } = (0, _redux.createSliceHooks)(factorySlice, _sagas.saga);
37
+ exports.useFactoryStoreState = useFactoryStoreState;
38
+ exports.useFactoryActions = useFactoryActions;
39
+ //# sourceMappingURL=slice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slice.js","names":["_toolkit","require","_redux","_sagas","defaultFactoryState","initialized","exports","FACTORY_SLICE_NAME","factorySlice","createSlice","name","initialState","reducers","initFactoryAction","_state","_action","initFactorySuccessAction","state","destroyFactoryAction","setFailureAction","action","error","payload","factoryActions","actions","useActions","useFactoryActions","useStoreState","useFactoryStoreState","createSliceHooks","saga"],"sources":["../../src/GlobalStore/slice.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nimport { createSlice } from '@reduxjs/toolkit'\nimport { createSliceHooks } from '@looker/redux'\nimport type { IAPIMethods } from '@looker/sdk-rtl'\nimport type { PayloadAction } from '@reduxjs/toolkit'\nimport { saga } from './sagas'\n\nexport interface FactoryState {\n initialized: boolean\n error?: string\n}\n\nexport const defaultFactoryState: FactoryState = {\n initialized: false,\n}\n\nexport interface InitFactoryAction {\n sdk: IAPIMethods\n}\n\ntype SetFailureAction = Record<'error', string>\n\nexport const FACTORY_SLICE_NAME = 'factory'\n\nexport const factorySlice = createSlice({\n name: FACTORY_SLICE_NAME,\n initialState: defaultFactoryState,\n reducers: {\n initFactoryAction(_state, _action: PayloadAction<InitFactoryAction>) {\n // noop\n },\n initFactorySuccessAction(state) {\n state.initialized = true\n },\n destroyFactoryAction() {\n // noop\n },\n setFailureAction(state, action: PayloadAction<SetFailureAction>) {\n state.error = action.payload.error\n },\n },\n})\n\nexport const factoryActions = factorySlice.actions\nexport const {\n useActions: useFactoryActions,\n useStoreState: useFactoryStoreState,\n} = createSliceHooks(factorySlice, saga)\n"],"mappings":";;;;;;AAyBA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAGA,IAAAE,MAAA,GAAAF,OAAA;AAOO,IAAMG,mBAAiC,GAAG;EAC/CC,WAAW,EAAE;AACf,CAAC;AAAAC,OAAA,CAAAF,mBAAA,GAAAA,mBAAA;AAQM,IAAMG,kBAAkB,GAAG,SAAS;AAAAD,OAAA,CAAAC,kBAAA,GAAAA,kBAAA;AAEpC,IAAMC,YAAY,GAAG,IAAAC,oBAAW,EAAC;EACtCC,IAAI,EAAEH,kBAAkB;EACxBI,YAAY,EAAEP,mBAAmB;EACjCQ,QAAQ,EAAE;IACRC,iBAAiBA,CAACC,MAAM,EAAEC,OAAyC,EAAE,CAErE,CAAC;IACDC,wBAAwBA,CAACC,KAAK,EAAE;MAC9BA,KAAK,CAACZ,WAAW,GAAG,IAAI;IAC1B,CAAC;IACDa,oBAAoBA,CAAA,EAAG,CAEvB,CAAC;IACDC,gBAAgBA,CAACF,KAAK,EAAEG,MAAuC,EAAE;MAC/DH,KAAK,CAACI,KAAK,GAAGD,MAAM,CAACE,OAAO,CAACD,KAAK;IACpC;EACF;AACF,CAAC,CAAC;AAAAf,OAAA,CAAAE,YAAA,GAAAA,YAAA;AAEK,IAAMe,cAAc,GAAGf,YAAY,CAACgB,OAAO;AAAAlB,OAAA,CAAAiB,cAAA,GAAAA,cAAA;AAC3C,IAAM;EACXE,UAAU,EAAEC,iBAAiB;EAC7BC,aAAa,EAAEC;AACjB,CAAC,GAAG,IAAAC,uBAAgB,EAACrB,YAAY,EAAEsB,WAAI,CAAC;AAAAxB,OAAA,CAAAsB,oBAAA,GAAAA,oBAAA;AAAAtB,OAAA,CAAAoB,iBAAA,GAAAA,iBAAA"}
@@ -0,0 +1,10 @@
1
+ import type { ThemesState } from '../Theme';
2
+ import type { FactoryState } from './slice';
3
+ export declare const store: import("@looker/redux").Store<{
4
+ factory: FactoryState;
5
+ themes: ThemesState;
6
+ }, import("redux").AnyAction>;
7
+ export interface RootState {
8
+ factory: FactoryState;
9
+ themes?: ThemesState;
10
+ }
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.store = void 0;
7
+ var _redux = require("@looker/redux");
8
+ var _Theme = require("../Theme");
9
+ var _slice = require("./slice");
10
+ var store = (0, _redux.createStore)({
11
+ preloadedState: {
12
+ factory: _slice.defaultFactoryState,
13
+ themes: _Theme.defaultThemesState
14
+ },
15
+ reducer: {
16
+ factory: _slice.factorySlice.reducer,
17
+ themes: _Theme.themesSlice.reducer
18
+ }
19
+ });
20
+ exports.store = store;
21
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.js","names":["_redux","require","_Theme","_slice","store","createStore","preloadedState","factory","defaultFactoryState","themes","defaultThemesState","reducer","factorySlice","themesSlice","exports"],"sources":["../../src/GlobalStore/store.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nimport { createStore } from '@looker/redux'\nimport { defaultThemesState, themesSlice } from '../Theme'\nimport type { ThemesState } from '../Theme'\nimport { defaultFactoryState, factorySlice } from './slice'\nimport type { FactoryState } from './slice'\n\nexport const store = createStore({\n preloadedState: {\n factory: defaultFactoryState,\n themes: defaultThemesState,\n },\n reducer: {\n factory: factorySlice.reducer,\n themes: themesSlice.reducer,\n },\n})\n\nexport interface RootState {\n factory: FactoryState\n themes?: ThemesState\n}\n"],"mappings":";;;;;;AAyBA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAEA,IAAAE,MAAA,GAAAF,OAAA;AAGO,IAAMG,KAAK,GAAG,IAAAC,kBAAW,EAAC;EAC/BC,cAAc,EAAE;IACdC,OAAO,EAAEC,0BAAmB;IAC5BC,MAAM,EAAEC;EACV,CAAC;EACDC,OAAO,EAAE;IACPJ,OAAO,EAAEK,mBAAY,CAACD,OAAO;IAC7BF,MAAM,EAAEI,kBAAW,CAACF;EACtB;AACF,CAAC,CAAC;AAAAG,OAAA,CAAAV,KAAA,GAAAA,KAAA"}
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ interface QuickEmbedProps {
3
+ onClose: () => void;
4
+ }
5
+ export declare const QuickEmbed: ({ onClose }: QuickEmbedProps) => JSX.Element;
6
+ export {};
@@ -0,0 +1,89 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.QuickEmbed = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _components = require("@looker/components");
9
+ var _materialOutlined = require("@styled-icons/material-outlined");
10
+ var _embedServices = require("@looker/embed-services");
11
+ var _Theme = require("../Theme");
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
+ var QuickEmbed = _ref => {
15
+ var {
16
+ onClose
17
+ } = _ref;
18
+ var service = new _embedServices.EmbedUrl();
19
+ var [toggleValue, setToggle] = (0, _react.useState)(false);
20
+ var [embedUrl, setEmbedUrl] = (0, _react.useState)(service.embedUrl(false));
21
+ var {
22
+ selectedTheme
23
+ } = (0, _Theme.useThemesStoreState)();
24
+ var {
25
+ selectThemeAction
26
+ } = (0, _Theme.useThemeActions)();
27
+ var handleToggle = () => {
28
+ var newToggleValue = !toggleValue;
29
+ if (newToggleValue) {
30
+ var urlThemeName = service.searchParams.theme;
31
+ if (urlThemeName) {
32
+ selectThemeAction({
33
+ key: urlThemeName
34
+ });
35
+ }
36
+ }
37
+ setToggle(newToggleValue);
38
+ };
39
+ (0, _react.useEffect)(() => {
40
+ var overrides;
41
+ if (service.isThemable) {
42
+ overrides = {
43
+ theme: selectedTheme.name
44
+ };
45
+ }
46
+ var newUrl = service.embedUrl(toggleValue, overrides);
47
+ setEmbedUrl(newUrl);
48
+ }, [toggleValue, selectedTheme]);
49
+ return _react.default.createElement(_components.Section, {
50
+ padding: "large"
51
+ }, _react.default.createElement(_components.Heading, {
52
+ as: "h3",
53
+ fontWeight: "medium"
54
+ }, "Get embed url"), _react.default.createElement(_components.SpaceVertical, {
55
+ pt: "medium",
56
+ pb: "medium",
57
+ gap: "xsmall"
58
+ }, service.isThemable && _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_components.Span, {
59
+ fontWeight: "normal",
60
+ fontSize: "xsmall"
61
+ }, "Apply theme to ", service.contentType.toLocaleLowerCase(), " URL"), _react.default.createElement(_Theme.SelectTheme, null)), _react.default.createElement(_react.default.Fragment, null, _react.default.createElement(_components.Label, {
62
+ htmlFor: "embed-url",
63
+ fontWeight: "normal",
64
+ fontSize: "xsmall"
65
+ }, "Embed URL"), _react.default.createElement(_components.InputText, {
66
+ id: "embed-url",
67
+ iconBefore: _react.default.createElement(_materialOutlined.Link, null),
68
+ readOnly: true,
69
+ value: embedUrl
70
+ }))), _react.default.createElement(_components.Space, {
71
+ gap: "xxsmall",
72
+ fontWeight: "normal",
73
+ fontSize: "small"
74
+ }, _react.default.createElement(_components.ToggleSwitch, {
75
+ onChange: handleToggle,
76
+ on: toggleValue
77
+ }), "Include current params in URL"), _react.default.createElement(_components.Space, {
78
+ mt: "large",
79
+ between: true
80
+ }, _react.default.createElement(_components.CopyToClipboard, {
81
+ content: embedUrl
82
+ }, _react.default.createElement(_components.ButtonOutline, {
83
+ iconBefore: _react.default.createElement(_materialOutlined.Link, null)
84
+ }, "Copy Link")), _react.default.createElement(_components.Button, {
85
+ onClick: onClose
86
+ }, "Cancel")));
87
+ };
88
+ exports.QuickEmbed = QuickEmbed;
89
+ //# sourceMappingURL=QuickEmbed.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"QuickEmbed.js","names":["_react","_interopRequireWildcard","require","_components","_materialOutlined","_embedServices","_Theme","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","QuickEmbed","_ref","onClose","service","EmbedUrl","toggleValue","setToggle","useState","embedUrl","setEmbedUrl","selectedTheme","useThemesStoreState","selectThemeAction","useThemeActions","handleToggle","newToggleValue","urlThemeName","searchParams","theme","useEffect","overrides","isThemable","name","newUrl","createElement","Section","padding","Heading","as","fontWeight","SpaceVertical","pt","pb","gap","Fragment","Span","fontSize","contentType","toLocaleLowerCase","SelectTheme","Label","htmlFor","InputText","id","iconBefore","Link","readOnly","value","Space","ToggleSwitch","onChange","on","mt","between","CopyToClipboard","content","ButtonOutline","Button","onClick","exports"],"sources":["../../src/QuickEmbed/QuickEmbed.tsx"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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, { useEffect, useState } from 'react'\nimport {\n InputText,\n CopyToClipboard,\n Space,\n SpaceVertical,\n Button,\n Heading,\n Label,\n Span,\n Section,\n ButtonOutline,\n ToggleSwitch,\n} from '@looker/components'\nimport { Link } from '@styled-icons/material-outlined'\nimport { EmbedUrl } from '@looker/embed-services'\nimport { useThemesStoreState, SelectTheme, useThemeActions } from '../Theme'\n\ninterface QuickEmbedProps {\n onClose: () => void\n}\n\nexport const QuickEmbed = ({ onClose }: QuickEmbedProps) => {\n const service = new EmbedUrl()\n const [toggleValue, setToggle] = useState(false)\n const [embedUrl, setEmbedUrl] = useState<string>(service.embedUrl(false))\n const { selectedTheme } = useThemesStoreState()\n const { selectThemeAction } = useThemeActions()\n\n const handleToggle = () => {\n const newToggleValue = !toggleValue\n if (newToggleValue) {\n // Change the selected theme if there's a theme param in the url\n const urlThemeName = service.searchParams.theme\n if (urlThemeName) {\n selectThemeAction({ key: urlThemeName })\n }\n }\n setToggle(newToggleValue)\n }\n\n useEffect(() => {\n let overrides\n if (service.isThemable) {\n overrides = { theme: selectedTheme.name }\n }\n const newUrl = service.embedUrl(toggleValue, overrides)\n setEmbedUrl(newUrl)\n }, [toggleValue, selectedTheme])\n\n return (\n <Section padding=\"large\">\n <Heading as=\"h3\" fontWeight=\"medium\">\n Get embed url\n </Heading>\n\n <SpaceVertical pt=\"medium\" pb=\"medium\" gap=\"xsmall\">\n {service.isThemable && (\n <>\n <Span fontWeight=\"normal\" fontSize=\"xsmall\">\n Apply theme to {service.contentType.toLocaleLowerCase()} URL\n </Span>\n <SelectTheme />\n </>\n )}\n <>\n <Label htmlFor=\"embed-url\" fontWeight=\"normal\" fontSize=\"xsmall\">\n Embed URL\n </Label>\n <InputText\n id=\"embed-url\"\n iconBefore={<Link />}\n readOnly\n value={embedUrl}\n />\n </>\n </SpaceVertical>\n\n <Space gap=\"xxsmall\" fontWeight=\"normal\" fontSize=\"small\">\n <ToggleSwitch onChange={handleToggle} on={toggleValue} />\n Include current params in URL\n </Space>\n\n <Space mt=\"large\" between>\n <CopyToClipboard content={embedUrl}>\n <ButtonOutline iconBefore={<Link />}>Copy Link</ButtonOutline>\n </CopyToClipboard>\n <Button onClick={onClose}>Cancel</Button>\n </Space>\n </Section>\n )\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export * from './QuickEmbed';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _QuickEmbed = require("./QuickEmbed");
7
+ Object.keys(_QuickEmbed).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _QuickEmbed[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _QuickEmbed[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_QuickEmbed","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../src/QuickEmbed/index.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nexport * from './QuickEmbed'\n"],"mappings":";;;;;AAyBA,IAAAA,WAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,WAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,WAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,WAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,2 @@
1
+ /// <reference types="react" />
2
+ export declare const SelectTheme: () => JSX.Element;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SelectTheme = void 0;
7
+ var _react = _interopRequireWildcard(require("react"));
8
+ var _components = require("@looker/components");
9
+ var _state = require("./state");
10
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
11
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
12
+ var SelectTheme = () => {
13
+ var {
14
+ initialized,
15
+ themes,
16
+ selectedTheme,
17
+ error,
18
+ working
19
+ } = (0, _state.useThemesStoreState)();
20
+ var {
21
+ initAction,
22
+ loadThemeDataAction,
23
+ selectThemeAction
24
+ } = (0, _state.useThemeActions)();
25
+ var [options, setOptions] = (0, _react.useState)([]);
26
+ (0, _react.useEffect)(() => {
27
+ initAction();
28
+ }, []);
29
+ (0, _react.useEffect)(() => {
30
+ if (initialized) {
31
+ loadThemeDataAction();
32
+ }
33
+ }, [initialized]);
34
+ (0, _react.useEffect)(() => {
35
+ var themeOptions = themes.map(theme => ({
36
+ value: theme.id,
37
+ label: theme.name
38
+ })).sort((x, y) => x.label.localeCompare(y.label));
39
+ setOptions(themeOptions);
40
+ }, [themes]);
41
+ var handleChange = key => {
42
+ selectThemeAction({
43
+ key
44
+ });
45
+ };
46
+ return _react.default.createElement(_components.SpaceVertical, {
47
+ gap: "xxxsmall"
48
+ }, _react.default.createElement(_components.Select, {
49
+ disabled: themes.length <= 1,
50
+ isLoading: !initialized || working,
51
+ validationType: error ? 'error' : undefined,
52
+ value: selectedTheme.name,
53
+ options: options,
54
+ onChange: handleChange
55
+ }), error && _react.default.createElement(_components.ValidationMessage, {
56
+ type: "error",
57
+ message: error
58
+ }));
59
+ };
60
+ exports.SelectTheme = SelectTheme;
61
+ //# sourceMappingURL=SelectTheme.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SelectTheme.js","names":["_react","_interopRequireWildcard","require","_components","_state","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","SelectTheme","initialized","themes","selectedTheme","error","working","useThemesStoreState","initAction","loadThemeDataAction","selectThemeAction","useThemeActions","options","setOptions","useState","useEffect","themeOptions","map","theme","value","id","label","name","sort","x","y","localeCompare","handleChange","createElement","SpaceVertical","gap","Select","disabled","length","isLoading","validationType","undefined","onChange","ValidationMessage","type","message","exports"],"sources":["../../src/Theme/SelectTheme.tsx"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nimport React, { useState, useEffect } from 'react'\nimport { Select, SpaceVertical, ValidationMessage } from '@looker/components'\nimport type { SelectOptionObject } from '@looker/components'\nimport { useThemeActions, useThemesStoreState } from './state'\n\nexport const SelectTheme = () => {\n const { initialized, themes, selectedTheme, error, working } =\n useThemesStoreState()\n const { initAction, loadThemeDataAction, selectThemeAction } =\n useThemeActions()\n const [options, setOptions] = useState<SelectOptionObject[]>([])\n\n useEffect(() => {\n /** initialize theme service */\n initAction()\n }, [])\n\n useEffect(() => {\n if (initialized) {\n /** If theme service is initialized, load all theme data */\n loadThemeDataAction()\n }\n }, [initialized])\n\n useEffect(() => {\n const themeOptions: SelectOptionObject[] = themes\n .map((theme) => ({\n value: theme.id!,\n label: theme.name,\n }))\n .sort((x, y) => x.label!.localeCompare(y.label!))\n setOptions(themeOptions)\n }, [themes])\n\n const handleChange = (key: string) => {\n selectThemeAction({ key })\n }\n\n return (\n <SpaceVertical gap=\"xxxsmall\">\n <Select\n disabled={themes.length <= 1}\n isLoading={!initialized || working}\n validationType={error ? 'error' : undefined}\n value={selectedTheme.name}\n options={options}\n onChange={handleChange}\n />\n {error && <ValidationMessage type=\"error\" message={error} />}\n </SpaceVertical>\n )\n}\n"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { SelectTheme } from './SelectTheme';
2
+ export * from './state';
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {
7
+ SelectTheme: true
8
+ };
9
+ Object.defineProperty(exports, "SelectTheme", {
10
+ enumerable: true,
11
+ get: function get() {
12
+ return _SelectTheme.SelectTheme;
13
+ }
14
+ });
15
+ var _SelectTheme = require("./SelectTheme");
16
+ var _state = require("./state");
17
+ Object.keys(_state).forEach(function (key) {
18
+ if (key === "default" || key === "__esModule") return;
19
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
20
+ if (key in exports && exports[key] === _state[key]) return;
21
+ Object.defineProperty(exports, key, {
22
+ enumerable: true,
23
+ get: function get() {
24
+ return _state[key];
25
+ }
26
+ });
27
+ });
28
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_SelectTheme","require","_state","Object","keys","forEach","key","prototype","hasOwnProperty","call","_exportNames","exports","defineProperty","enumerable","get"],"sources":["../../src/Theme/index.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nexport { SelectTheme } from './SelectTheme'\nexport * from './state'\n"],"mappings":";;;;;;;;;;;;;;AAyBA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAAAE,MAAA,CAAAC,IAAA,CAAAF,MAAA,EAAAG,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAH,MAAA,CAAAI,SAAA,CAAAC,cAAA,CAAAC,IAAA,CAAAC,YAAA,EAAAJ,GAAA;EAAA,IAAAA,GAAA,IAAAK,OAAA,IAAAA,OAAA,CAAAL,GAAA,MAAAJ,MAAA,CAAAI,GAAA;EAAAH,MAAA,CAAAS,cAAA,CAAAD,OAAA,EAAAL,GAAA;IAAAO,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAZ,MAAA,CAAAI,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1 @@
1
+ export * from './slice';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _slice = require("./slice");
7
+ Object.keys(_slice).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _slice[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function get() {
13
+ return _slice[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_slice","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/Theme/state/index.ts"],"sourcesContent":["/*\n\n MIT License\n\n Copyright (c) 2023 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 */\nexport * from './slice'\n"],"mappings":";;;;;AAyBA,IAAAA,MAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,MAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,MAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,IAAA;MAAA,OAAAT,MAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1 @@
1
+ export declare function saga(): Generator<import("redux-saga/effects").ForkEffect<never>, void, unknown>;
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.saga = saga;
7
+ var _typedReduxSaga = require("typed-redux-saga");
8
+ var _embedServices = require("@looker/embed-services");
9
+ var _slice = require("./slice");
10
+ function* initSaga() {
11
+ var {
12
+ initSuccessAction,
13
+ setFailureAction
14
+ } = _slice.themeActions;
15
+ try {
16
+ (0, _embedServices.registerThemeService)();
17
+ yield* (0, _typedReduxSaga.put)(initSuccessAction());
18
+ } catch (error) {
19
+ yield* (0, _typedReduxSaga.put)(setFailureAction({
20
+ error: error.message
21
+ }));
22
+ }
23
+ }
24
+ function* loadThemeDataSaga() {
25
+ var {
26
+ loadThemeDataSuccessAction,
27
+ setFailureAction
28
+ } = _slice.themeActions;
29
+ try {
30
+ var _urlTheme;
31
+ var service = (0, _embedServices.getThemeService)();
32
+ yield* (0, _typedReduxSaga.call)([service, 'load']);
33
+ var searchParams = new _embedServices.EmbedUrl().searchParams;
34
+ var urlThemeName = searchParams.theme;
35
+ var urlTheme;
36
+ if (urlThemeName) {
37
+ urlTheme = service.find('name', urlThemeName);
38
+ }
39
+ yield* (0, _typedReduxSaga.put)(loadThemeDataSuccessAction({
40
+ themes: service.items,
41
+ defaultTheme: service.defaultTheme,
42
+ selectedTheme: (_urlTheme = urlTheme) !== null && _urlTheme !== void 0 ? _urlTheme : service.defaultTheme
43
+ }));
44
+ } catch (error) {
45
+ yield* (0, _typedReduxSaga.put)(setFailureAction({
46
+ error: error.message
47
+ }));
48
+ }
49
+ }
50
+ function* selectThemeSaga(action) {
51
+ var {
52
+ selectThemeSuccessAction,
53
+ setFailureAction
54
+ } = _slice.themeActions;
55
+ try {
56
+ var _item;
57
+ var service = (0, _embedServices.getThemeService)();
58
+ yield* (0, _typedReduxSaga.call)([service, 'getAll']);
59
+ var key = action.payload.key;
60
+ var item = service.indexedItems[key];
61
+ if (!item) {
62
+ item = service.find(['id', 'name'], "^".concat(key, "$"));
63
+ }
64
+ yield* (0, _typedReduxSaga.put)(selectThemeSuccessAction({
65
+ selectedTheme: (_item = item) !== null && _item !== void 0 ? _item : service.defaultTheme
66
+ }));
67
+ } catch (error) {
68
+ yield* (0, _typedReduxSaga.put)(setFailureAction({
69
+ error: error.message
70
+ }));
71
+ }
72
+ }
73
+ function* saga() {
74
+ var {
75
+ initAction,
76
+ loadThemeDataAction,
77
+ selectThemeAction
78
+ } = _slice.themeActions;
79
+ yield* (0, _typedReduxSaga.takeEvery)(initAction, initSaga);
80
+ yield* (0, _typedReduxSaga.takeEvery)(loadThemeDataAction, loadThemeDataSaga);
81
+ yield* (0, _typedReduxSaga.takeEvery)(selectThemeAction, selectThemeSaga);
82
+ }
83
+ //# sourceMappingURL=sagas.js.map