@thoughtspot/visual-embed-sdk 1.10.0-alpha.2 → 1.10.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 (44) hide show
  1. package/CHANGELOG.md +14 -2
  2. package/README.md +22 -3
  3. package/dist/src/embed/app.d.ts +9 -3
  4. package/dist/src/embed/search.d.ts +4 -0
  5. package/dist/src/embed/ts-embed.d.ts +18 -4
  6. package/dist/src/types.d.ts +139 -3
  7. package/dist/src/utils.d.ts +4 -0
  8. package/dist/tsembed.es.js +179 -21
  9. package/dist/tsembed.js +179 -21
  10. package/lib/package.json +2 -2
  11. package/lib/src/embed/app.d.ts +9 -3
  12. package/lib/src/embed/app.js +23 -7
  13. package/lib/src/embed/app.js.map +1 -1
  14. package/lib/src/embed/app.spec.js +36 -2
  15. package/lib/src/embed/app.spec.js.map +1 -1
  16. package/lib/src/embed/base.spec.js +13 -1
  17. package/lib/src/embed/base.spec.js.map +1 -1
  18. package/lib/src/embed/events.spec.js +30 -1
  19. package/lib/src/embed/events.spec.js.map +1 -1
  20. package/lib/src/embed/search.d.ts +4 -0
  21. package/lib/src/embed/search.js +1 -1
  22. package/lib/src/embed/search.js.map +1 -1
  23. package/lib/src/embed/ts-embed.d.ts +18 -4
  24. package/lib/src/embed/ts-embed.js +36 -14
  25. package/lib/src/embed/ts-embed.js.map +1 -1
  26. package/lib/src/embed/ts-embed.spec.js +123 -14
  27. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  28. package/lib/src/types.d.ts +139 -3
  29. package/lib/src/types.js +116 -0
  30. package/lib/src/types.js.map +1 -1
  31. package/lib/src/utils.d.ts +4 -0
  32. package/lib/src/utils.js +4 -0
  33. package/lib/src/utils.js.map +1 -1
  34. package/lib/src/visual-embed-sdk.d.ts +170 -10
  35. package/package.json +2 -2
  36. package/src/embed/app.spec.ts +49 -1
  37. package/src/embed/app.ts +24 -6
  38. package/src/embed/base.spec.ts +14 -0
  39. package/src/embed/events.spec.ts +32 -0
  40. package/src/embed/search.ts +5 -0
  41. package/src/embed/ts-embed.spec.ts +166 -14
  42. package/src/embed/ts-embed.ts +56 -16
  43. package/src/types.ts +148 -1
  44. package/src/utils.ts +5 -0
package/dist/tsembed.js CHANGED
@@ -115,6 +115,10 @@
115
115
  const rect = element.getBoundingClientRect();
116
116
  return rect.top + window.scrollY;
117
117
  };
118
+ const embedEventStatus = {
119
+ START: 'start',
120
+ END: 'end',
121
+ };
118
122
  const setAttributes = (element, attributes) => {
119
123
  Object.keys(attributes).forEach((key) => {
120
124
  element.setAttribute(key, attributes[key].toString());
@@ -272,6 +276,12 @@
272
276
  * @version 1.5.0 or later
273
277
  */
274
278
  EmbedEvent["VizPointDoubleClick"] = "vizPointDoubleClick";
279
+ /**
280
+ * A click has been triggered on table/chart
281
+ * @return ContextMenuInputPoints - data point that is clicked
282
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
283
+ */
284
+ EmbedEvent["VizPointClick"] = "vizPointClick";
275
285
  /**
276
286
  * An error has occurred.
277
287
  * @return error - An error object or message
@@ -337,6 +347,107 @@
337
347
  * @version 1.9.1 or later
338
348
  */
339
349
  EmbedEvent["LiveboardRendered"] = "PinboardRendered";
350
+ /**
351
+ * This can be used to register an event listener which
352
+ * is triggered on all events.
353
+ * @version SDK: 1.10.0 | ThoughtSpot: any
354
+ */
355
+ EmbedEvent["ALL"] = "*";
356
+ /**
357
+ * Emitted when answer is saved in the app
358
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
359
+ */
360
+ EmbedEvent["Save"] = "save";
361
+ /**
362
+ * Emitted when the download action is triggered on an answer
363
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
364
+ */
365
+ EmbedEvent["Download"] = "download";
366
+ /**
367
+ * Emitted when the Download as PDF action is triggered on an answer
368
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
369
+ */
370
+ EmbedEvent["DownloadAsPdf"] = "downloadAsPdf";
371
+ /**
372
+ * Emitted when the Download as CSV action is triggered on an answer
373
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
374
+ */
375
+ EmbedEvent["DownloadAsCsv"] = "downloadAsCsv";
376
+ /**
377
+ * Emitted when the Download as XLSX action is triggered on an answer
378
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
379
+ */
380
+ EmbedEvent["DownloadAsXlsx"] = "downloadAsXlsx";
381
+ /**
382
+ * Emitted when an answer is deleted in the app
383
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
384
+ */
385
+ EmbedEvent["AnswerDelete"] = "answerDelete";
386
+ /**
387
+ * Emitted when an answer is pinned to a Liveboard
388
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
389
+ */
390
+ EmbedEvent["Pin"] = "pin";
391
+ /**
392
+ * Emitted when SpotIQ analysis is triggered
393
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
394
+ */
395
+ EmbedEvent["SpotIQAnalyze"] = "spotIQAnalyze";
396
+ /**
397
+ * Emitted when a user shares an object with another user or group
398
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
399
+ */
400
+ EmbedEvent["Share"] = "share";
401
+ /**
402
+ * Emitted when a user clicks the Include action to include a specific value or data on a chart or table
403
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
404
+ */
405
+ EmbedEvent["DrillInclude"] = "context-menu-item-include";
406
+ /**
407
+ * Emitted when a user clicks the Exclude action to exclude a specific value or data on a chart or table
408
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
409
+ */
410
+ EmbedEvent["DrillExclude"] = "context-menu-item-exclude";
411
+ /**
412
+ * Emitted when copied column value on the app
413
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
414
+ */
415
+ EmbedEvent["CopyToClipboard"] = "context-menu-item-copy-to-clipboard";
416
+ /**
417
+ * Emitted when a user clicks the Update TML action
418
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
419
+ */
420
+ EmbedEvent["UpdateTML"] = "updateTSL";
421
+ /**
422
+ * Emitted when a user clicks the Edit TML action
423
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
424
+ */
425
+ EmbedEvent["EditTML"] = "editTSL";
426
+ /**
427
+ * Emitted when ExportTML trigger in answer on the app
428
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
429
+ */
430
+ EmbedEvent["ExportTML"] = "exportTSL";
431
+ /**
432
+ * Emitted when an answer is saved as a view
433
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
434
+ */
435
+ EmbedEvent["SaveAsView"] = "saveAsView";
436
+ /**
437
+ * Emitted when copy of existing answer on the app
438
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
439
+ */
440
+ EmbedEvent["CopyAEdit"] = "copyAEdit";
441
+ /**
442
+ * Emitted when a user clicks Show underlying data on an answe
443
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
444
+ */
445
+ EmbedEvent["ShowUnderlyingData"] = "showUnderlyingData";
446
+ /**
447
+ * Emitted when an answer is switched to a chart or table view
448
+ * @version SDK: 1.11.0 | ThoughtSpot: 8.3.0.cl
449
+ */
450
+ EmbedEvent["AnswerChartSwitcher"] = "answerChartSwitcher";
340
451
  })(exports.EmbedEvent || (exports.EmbedEvent = {}));
341
452
  (function (HostEvent) {
342
453
  /**
@@ -378,6 +489,13 @@
378
489
  * @version SDK: 1.9.0 | ThoughtSpot: 8.1.0.cl
379
490
  */
380
491
  HostEvent["UpdateRuntimeFilters"] = "UpdateRuntimeFilters";
492
+ /**
493
+ * Navigate to a specific page in App embed without any reload.
494
+ * This is the same as calling `appEmbed.navigateToPage(path, true)`
495
+ * @param path - the path to navigate to (can be a number[1/-1] to go forward/back)
496
+ * @version SDK: 1.12.0 | ThoughtSpot: 8.4.0.cl
497
+ */
498
+ HostEvent["Navigate"] = "Navigate";
381
499
  })(exports.HostEvent || (exports.HostEvent = {}));
382
500
  (function (DataSourceVisualMode) {
383
501
  /**
@@ -428,6 +546,8 @@
428
546
  Param["DisableLoginRedirect"] = "disableLoginRedirect";
429
547
  Param["visibleVizs"] = "pinboardVisibleVizs";
430
548
  Param["LiveboardV2Enabled"] = "isPinboardV2Enabled";
549
+ Param["ShowAlerts"] = "showAlerts";
550
+ Param["Locale"] = "locale";
431
551
  })(Param || (Param = {}));
432
552
  (function (Action) {
433
553
  Action["Save"] = "save";
@@ -8937,7 +9057,7 @@
8937
9057
  }
8938
9058
  }
8939
9059
 
8940
- var name="@thoughtspot/visual-embed-sdk";var version="1.10.0-alpha.2";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**"];var exports$1={".":"./lib/src/index.js","./react":"./lib/src/react/index.js"};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p . --incremental false",start:"gatsby develop","build:gatsby":"npm run clean:gatsby && gatsby build --prefix-paths","build:gatsby:noprefix":"npm run clean:gatsby && gatsby build","serve:gatsby":"gatsby serve","clean:gatsby":"gatsby clean","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts",build:"rollup -c",watch:"rollup -cw","docs-cmd":"node scripts/gatsby-commands.js",docgen:"typedoc --tsconfig tsconfig.json --theme typedoc-theme","test-sdk":"jest -c jest.config.sdk.js","test-docs":"jest -c jest.config.docs.js",test:"npm run test-sdk && npm run test-docs && npx istanbul-merge --out ./coverage/coverage.json ./coverage/docs/coverage-final.json ./coverage/sdk/coverage-final.json && npx istanbul report --include ./coverage/coverage.json --dir ./coverage lcov",posttest:"cat ./coverage/lcov.info | coveralls",prepublishOnly:"npm run test; npm run tsc; npm run bundle-dts; npm run build","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={algoliasearch:"^4.10.5",classnames:"^2.3.1","mixpanel-browser":"^2.41.0"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","dts-bundle":"0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0",gatsby:"3.1.0","gatsby-plugin-algolia":"^0.22.2","gatsby-plugin-catch-links":"^3.1.0","gatsby-plugin-env-variables":"^2.1.0","gatsby-plugin-intl":"^0.3.3","gatsby-plugin-manifest":"^3.2.0","gatsby-plugin-output":"^0.1.3","gatsby-plugin-sass":"4.1.0","gatsby-plugin-sitemap":"^4.10.0","gatsby-source-filesystem":"3.1.0","gatsby-transformer-asciidoc":"2.1.0","gatsby-transformer-rehype":"2.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-puppeteer":"^4.4.0",jsdom:"^17.0.0","node-sass":"^4.0.0",prettier:"2.1.2",puppeteer:"^7.0.1",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-neo-theme":"^1.1.0","typedoc-plugin-toc-group":"0.0.5",typescript:"^4.1.0","url-search-params-polyfill":"^8.1.0",util:"^0.12.4"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version,description:description,module:module,main:main,types:types,files:files,exports:exports$1,scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
9060
+ var name="@thoughtspot/visual-embed-sdk";var version="1.10.0";var description="ThoughtSpot Embed SDK";var module="lib/src/index.js";var main="dist/tsembed.js";var types="lib/src/index.d.ts";var files=["dist/**","lib/**","src/**"];var exports$1={".":"./lib/src/index.js","./react":"./lib/src/react/index.js"};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p . --incremental false",start:"gatsby develop","build:gatsby":"npm run clean:gatsby && gatsby build --prefix-paths","build:gatsby:noprefix":"npm run clean:gatsby && gatsby build","serve:gatsby":"gatsby serve","clean:gatsby":"gatsby clean","build-and-publish":"npm run build:gatsby && npm run publish","bundle-dts":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts",build:"rollup -c",watch:"rollup -cw","docs-cmd":"node scripts/gatsby-commands.js",docgen:"typedoc --tsconfig tsconfig.json --theme typedoc-theme","test-sdk":"jest -c jest.config.sdk.js","test-docs":"jest -c jest.config.docs.js",test:"npm run test-sdk && npm run test-docs && npx istanbul-merge --out ./coverage/coverage.json ./coverage/docs/coverage-final.json ./coverage/sdk/coverage-final.json && npx istanbul report --include ./coverage/coverage.json --dir ./coverage lcov",posttest:"cat ./coverage/sdk/lcov.info | coveralls",prepublishOnly:"npm run test; npm run tsc; npm run bundle-dts; npm run build","publish-dev":"npm publish --tag dev","publish-prod":"npm publish --tag latest"};var peerDependencies={react:"> 16.8.0","react-dom":"> 16.8.0"};var dependencies={algoliasearch:"^4.10.5",classnames:"^2.3.1","mixpanel-browser":"^2.41.0"};var devDependencies={"@mdx-js/mdx":"^1.6.22","@mdx-js/react":"^1.6.22","@react-icons/all-files":"^4.1.0","@rollup/plugin-commonjs":"^18.0.0","@rollup/plugin-json":"^4.1.0","@rollup/plugin-node-resolve":"^11.2.1","@testing-library/dom":"^7.31.0","@testing-library/jest-dom":"^5.14.1","@testing-library/react":"^11.2.7","@testing-library/user-event":"^13.1.8","@types/jest":"^22.2.3","@types/mixpanel-browser":"^2.35.6","@types/react-test-renderer":"^17.0.1","@typescript-eslint/eslint-plugin":"^4.6.0","@typescript-eslint/parser":"^4.6.0",asciidoctor:"^2.2.1","babel-jest":"^26.6.3","babel-preset-gatsby":"^1.10.0","command-line-args":"^5.1.1",coveralls:"^3.1.0","dts-bundle":"0.7.3",eslint:"^7.12.1","eslint-config-airbnb-base":"^14.2.0","eslint-config-prettier":"^6.15.0","eslint-import-resolver-typescript":"^2.3.0","eslint-plugin-import":"^2.22.1","eslint-plugin-prettier":"^3.1.4","eslint-plugin-react-hooks":"^4.2.0","fs-extra":"^10.0.0",gatsby:"3.1.0","gatsby-plugin-algolia":"^0.22.2","gatsby-plugin-catch-links":"^3.1.0","gatsby-plugin-env-variables":"^2.1.0","gatsby-plugin-intl":"^0.3.3","gatsby-plugin-manifest":"^3.2.0","gatsby-plugin-output":"^0.1.3","gatsby-plugin-sass":"4.1.0","gatsby-plugin-sitemap":"^4.10.0","gatsby-source-filesystem":"3.1.0","gatsby-transformer-asciidoc":"2.1.0","gatsby-transformer-rehype":"2.0.0","gh-pages":"^3.1.0","highlight.js":"^10.6.0","html-to-text":"^8.0.0","identity-obj-proxy":"^3.0.0","istanbul-merge":"^1.1.1",jest:"^26.6.3","jest-puppeteer":"^4.4.0",jsdom:"^17.0.0","node-sass":"^4.0.0",prettier:"2.1.2",puppeteer:"^7.0.1",react:"^16.14.0","react-dom":"^16.14.0","react-resizable":"^1.11.0","react-resize-detector":"^6.6.0","react-test-renderer":"^17.0.2","react-use-flexsearch":"^0.1.1",rollup:"2.30.0","rollup-plugin-typescript2":"0.27.3","ts-jest":"^26.5.5","ts-loader":"8.0.4",typedoc:"0.21.6","typedoc-neo-theme":"^1.1.0","typedoc-plugin-toc-group":"0.0.5",typescript:"^4.1.0","url-search-params-polyfill":"^8.1.0",util:"^0.12.4"};var author="ThoughtSpot";var email="support@thoughtspot.com";var license="ThoughtSpot Development Tools End User License Agreement";var directories={lib:"lib"};var repository={type:"git",url:"git+https://github.com/thoughtspot/visual-embed-sdk.git"};var publishConfig={registry:"https://registry.npmjs.org"};var keywords=["thoughtspot","everywhere","embed","sdk","analytics"];var bugs={url:"https://github.com/thoughtspot/visual-embed-sdk/issues"};var homepage="https://github.com/thoughtspot/visual-embed-sdk#readme";var globals={window:{}};var pkgInfo = {name:name,version:version,description:description,module:module,main:main,types:types,files:files,exports:exports$1,scripts:scripts,peerDependencies:peerDependencies,dependencies:dependencies,devDependencies:devDependencies,author:author,email:email,license:license,directories:directories,repository:repository,publishConfig:publishConfig,keywords:keywords,bugs:bugs,homepage:homepage,globals:globals};
8941
9061
 
8942
9062
  /**
8943
9063
  * Copyright (c) 2022
@@ -9044,9 +9164,10 @@
9044
9164
  * will be removed for ts7.oct.cl
9045
9165
  * @hidden
9046
9166
  */
9047
- formatEventData(event) {
9167
+ formatEventData(event, eventType) {
9048
9168
  const eventData = {
9049
9169
  ...event.data,
9170
+ type: eventType,
9050
9171
  };
9051
9172
  if (!eventData.data) {
9052
9173
  eventData.data = event.data.payload;
@@ -9063,7 +9184,7 @@
9063
9184
  window.addEventListener('message', (event) => {
9064
9185
  const eventType = this.getEventType(event);
9065
9186
  const eventPort = this.getEventPort(event);
9066
- const eventData = this.formatEventData(event);
9187
+ const eventData = this.formatEventData(event, eventType);
9067
9188
  if (event.source === this.iFrame.contentWindow) {
9068
9189
  this.executeCallbacks(eventType, getProcessData(eventType, eventData, this.thoughtSpotHost), eventPort);
9069
9190
  }
@@ -9104,13 +9225,14 @@
9104
9225
  queryParams[Param.ViewPortHeight] = window.innerHeight;
9105
9226
  queryParams[Param.ViewPortWidth] = window.innerWidth;
9106
9227
  queryParams[Param.Version] = version$1;
9107
- if (this.embedConfig.disableLoginRedirect === true) {
9108
- queryParams[Param.DisableLoginRedirect] = this.embedConfig.disableLoginRedirect;
9228
+ if (this.embedConfig.disableLoginRedirect === true ||
9229
+ this.embedConfig.autoLogin === true) {
9230
+ queryParams[Param.DisableLoginRedirect] = true;
9109
9231
  }
9110
9232
  if (this.embedConfig.customCssUrl) {
9111
9233
  queryParams[Param.CustomCSSUrl] = this.embedConfig.customCssUrl;
9112
9234
  }
9113
- const { disabledActions, disabledActionReason, hiddenActions, visibleActions, additionalFlags, } = this.viewConfig;
9235
+ const { disabledActions, disabledActionReason, hiddenActions, visibleActions, showAlerts, additionalFlags, locale, } = this.viewConfig;
9114
9236
  if (Array.isArray(visibleActions) && Array.isArray(hiddenActions)) {
9115
9237
  this.handleError('You cannot have both hidden actions and visible actions');
9116
9238
  return queryParams;
@@ -9127,6 +9249,12 @@
9127
9249
  if (Array.isArray(visibleActions)) {
9128
9250
  queryParams[Param.VisibleActions] = visibleActions;
9129
9251
  }
9252
+ if (showAlerts !== undefined) {
9253
+ queryParams[Param.ShowAlerts] = showAlerts;
9254
+ }
9255
+ if (locale !== undefined) {
9256
+ queryParams[Param.Locale] = locale;
9257
+ }
9130
9258
  if (additionalFlags && additionalFlags.constructor.name === 'Object') {
9131
9259
  Object.assign(queryParams, additionalFlags);
9132
9260
  }
@@ -9174,6 +9302,7 @@
9174
9302
  data: {
9175
9303
  timestamp: initTimestamp,
9176
9304
  },
9305
+ type: exports.EmbedEvent.Init,
9177
9306
  });
9178
9307
  uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_START);
9179
9308
  (_a = getAuthPromise()) === null || _a === void 0 ? void 0 : _a.then(() => {
@@ -9205,6 +9334,7 @@
9205
9334
  data: {
9206
9335
  timestamp: loadTimestamp,
9207
9336
  },
9337
+ type: exports.EmbedEvent.Load,
9208
9338
  });
9209
9339
  uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_IFRAME_LOAD_PERFORMANCE, {
9210
9340
  timeTookToLoad: loadTimestamp - initTimestamp,
@@ -9244,9 +9374,20 @@
9244
9374
  */
9245
9375
  executeCallbacks(eventType, data, eventPort) {
9246
9376
  const callbacks = this.eventHandlerMap.get(eventType) || [];
9247
- callbacks.forEach((callback) => callback(data, (payload) => {
9248
- this.triggerEventOnPort(eventPort, payload);
9249
- }));
9377
+ const allHandlers = this.eventHandlerMap.get(exports.EmbedEvent.ALL) || [];
9378
+ callbacks.push(...allHandlers);
9379
+ const dataStatus = (data === null || data === void 0 ? void 0 : data.status) || embedEventStatus.END;
9380
+ callbacks.forEach((callbackObj) => {
9381
+ if ((callbackObj.options.start &&
9382
+ dataStatus === embedEventStatus.START) || // When start status is true it trigger only start releated payload
9383
+ (!callbackObj.options.start &&
9384
+ dataStatus === embedEventStatus.END) // When start status is false it trigger only end releated payload
9385
+ ) {
9386
+ callbackObj.callback(data, (payload) => {
9387
+ this.triggerEventOnPort(eventPort, payload);
9388
+ });
9389
+ }
9390
+ });
9250
9391
  }
9251
9392
  /**
9252
9393
  * Returns the ThoughtSpot hostname or IP address.
@@ -9303,14 +9444,15 @@
9303
9444
  * sends an event of a particular message type to the host application.
9304
9445
  *
9305
9446
  * @param messageType The message type
9306
- * @param callback A callback function
9447
+ * @param callback A callback as a function
9448
+ * @param options The message options
9307
9449
  */
9308
- on(messageType, callback) {
9450
+ on(messageType, callback, options = { start: false }) {
9309
9451
  if (this.isRendered) {
9310
9452
  this.handleError('Please register event handlers before calling render');
9311
9453
  }
9312
9454
  const callbacks = this.eventHandlerMap.get(messageType) || [];
9313
- callbacks.push(callback);
9455
+ callbacks.push({ options, callback });
9314
9456
  this.eventHandlerMap.set(messageType, callbacks);
9315
9457
  return this;
9316
9458
  }
@@ -9400,9 +9542,9 @@
9400
9542
  this.renderIFrame(iframeSrc, this.viewConfig.frameParams);
9401
9543
  }
9402
9544
  // @override
9403
- on(messageType, callback) {
9545
+ on(messageType, callback, options = { start: false }) {
9404
9546
  const eventType = this.getCompatibleEventType(messageType);
9405
- return super.on(eventType, callback);
9547
+ return super.on(eventType, callback, options);
9406
9548
  }
9407
9549
  }
9408
9550
 
@@ -9441,6 +9583,10 @@
9441
9583
  * Data management page
9442
9584
  */
9443
9585
  Page["Data"] = "data";
9586
+ /**
9587
+ * SpotIQ listing page
9588
+ */
9589
+ Page["SpotIQ"] = "spotiq";
9444
9590
  })(exports.Page || (exports.Page = {}));
9445
9591
  /**
9446
9592
  * Embeds full ThoughtSpot experience in a host application.
@@ -9499,6 +9645,8 @@
9499
9645
  return 'pinboards';
9500
9646
  case exports.Page.Data:
9501
9647
  return 'data/tables';
9648
+ case exports.Page.SpotIQ:
9649
+ return 'insights/results';
9502
9650
  case exports.Page.Home:
9503
9651
  default:
9504
9652
  return 'home';
@@ -9522,19 +9670,29 @@
9522
9670
  /**
9523
9671
  * Navigate to particular page for app embed. eg:answers/pinboards/home
9524
9672
  * This is used for embedding answers, pinboards, visualizations and full application only.
9525
- * @param path The string, set to iframe src and navigate to new page
9673
+ * @param path string | number The string, set to iframe src and navigate to new page
9526
9674
  * eg: appEmbed.navigateToPage('pinboards')
9675
+ * When used with `noReload` this can also be a number like 1/-1 to go forward/back.
9676
+ * @param noReload boolean Trigger the navigation without reloading the page (version: 1.12.0 | 8.4.0.cl)
9527
9677
  */
9528
- navigateToPage(path) {
9529
- if (this.iFrame) {
9678
+ navigateToPage(path, noReload = false) {
9679
+ if (!this.iFrame) {
9680
+ console.log('Please call render before invoking this method');
9681
+ return;
9682
+ }
9683
+ if (noReload) {
9684
+ this.trigger(exports.HostEvent.Navigate, path);
9685
+ }
9686
+ else {
9687
+ if (typeof path !== 'string') {
9688
+ console.warn('Path can only by a string when triggered without noReload');
9689
+ return;
9690
+ }
9530
9691
  const iframeSrc = this.iFrame.src;
9531
9692
  const embedPath = '#/embed';
9532
9693
  const currentPath = iframeSrc.includes(embedPath) ? embedPath : '#';
9533
9694
  this.iFrame.src = `${iframeSrc.split(currentPath)[0]}${currentPath}/${path.replace(/^\/?#?\//, '')}`;
9534
9695
  }
9535
- else {
9536
- console.log('Please call render before invoking this method');
9537
- }
9538
9696
  }
9539
9697
  /**
9540
9698
  * Renders the embedded application pages in the ThoughtSpot app.
@@ -9715,7 +9873,7 @@
9715
9873
  */
9716
9874
  getIFrameSrc(answerId, dataSources) {
9717
9875
  var _a;
9718
- const { hideResults, enableSearchAssist, forceTable, searchOptions, } = this.viewConfig;
9876
+ const { hideResults, expandAllDataSource, enableSearchAssist, forceTable, searchOptions, } = this.viewConfig;
9719
9877
  const answerPath = answerId ? `saved-answer/${answerId}` : 'answer';
9720
9878
  const queryParams = this.getBaseQueryParams();
9721
9879
  queryParams[Param.HideActions] = [
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@thoughtspot/visual-embed-sdk",
3
- "version": "1.10.0-alpha.2",
3
+ "version": "1.10.0",
4
4
  "description": "ThoughtSpot Embed SDK",
5
5
  "module": "lib/src/index.js",
6
6
  "main": "dist/tsembed.js",
@@ -32,7 +32,7 @@
32
32
  "test-sdk": "jest -c jest.config.sdk.js",
33
33
  "test-docs": "jest -c jest.config.docs.js",
34
34
  "test": "npm run test-sdk && npm run test-docs && npx istanbul-merge --out ./coverage/coverage.json ./coverage/docs/coverage-final.json ./coverage/sdk/coverage-final.json && npx istanbul report --include ./coverage/coverage.json --dir ./coverage lcov",
35
- "posttest": "cat ./coverage/lcov.info | coveralls",
35
+ "posttest": "cat ./coverage/sdk/lcov.info | coveralls",
36
36
  "prepublishOnly": "npm run test; npm run tsc; npm run bundle-dts; npm run build",
37
37
  "publish-dev": "npm publish --tag dev",
38
38
  "publish-prod": "npm publish --tag latest"
@@ -37,7 +37,11 @@ export declare enum Page {
37
37
  /**
38
38
  * Data management page
39
39
  */
40
- Data = "data"
40
+ Data = "data",
41
+ /**
42
+ * SpotIQ listing page
43
+ */
44
+ SpotIQ = "spotiq"
41
45
  }
42
46
  /**
43
47
  * The view configuration for full app embedding.
@@ -114,10 +118,12 @@ export declare class AppEmbed extends V1Embed {
114
118
  /**
115
119
  * Navigate to particular page for app embed. eg:answers/pinboards/home
116
120
  * This is used for embedding answers, pinboards, visualizations and full application only.
117
- * @param path The string, set to iframe src and navigate to new page
121
+ * @param path string | number The string, set to iframe src and navigate to new page
118
122
  * eg: appEmbed.navigateToPage('pinboards')
123
+ * When used with `noReload` this can also be a number like 1/-1 to go forward/back.
124
+ * @param noReload boolean Trigger the navigation without reloading the page (version: 1.12.0 | 8.4.0.cl)
119
125
  */
120
- navigateToPage(path: string): void;
126
+ navigateToPage(path: string | number, noReload?: boolean): void;
121
127
  /**
122
128
  * Renders the embedded application pages in the ThoughtSpot app.
123
129
  * @param renderOptions An object containing the page ID
@@ -9,7 +9,7 @@
9
9
  * @author Ayon Ghosh <ayon.ghosh@thoughtspot.com>
10
10
  */
11
11
  import { getFilterQuery, getQueryParamString } from '../utils';
12
- import { Param } from '../types';
12
+ import { Param, HostEvent } from '../types';
13
13
  import { V1Embed } from './ts-embed';
14
14
  /**
15
15
  * Pages within the ThoughtSpot app that can be embedded.
@@ -41,6 +41,10 @@ export var Page;
41
41
  * Data management page
42
42
  */
43
43
  Page["Data"] = "data";
44
+ /**
45
+ * SpotIQ listing page
46
+ */
47
+ Page["SpotIQ"] = "spotiq";
44
48
  })(Page || (Page = {}));
45
49
  /**
46
50
  * Embeds full ThoughtSpot experience in a host application.
@@ -99,6 +103,8 @@ export class AppEmbed extends V1Embed {
99
103
  return 'pinboards';
100
104
  case Page.Data:
101
105
  return 'data/tables';
106
+ case Page.SpotIQ:
107
+ return 'insights/results';
102
108
  case Page.Home:
103
109
  default:
104
110
  return 'home';
@@ -122,19 +128,29 @@ export class AppEmbed extends V1Embed {
122
128
  /**
123
129
  * Navigate to particular page for app embed. eg:answers/pinboards/home
124
130
  * This is used for embedding answers, pinboards, visualizations and full application only.
125
- * @param path The string, set to iframe src and navigate to new page
131
+ * @param path string | number The string, set to iframe src and navigate to new page
126
132
  * eg: appEmbed.navigateToPage('pinboards')
133
+ * When used with `noReload` this can also be a number like 1/-1 to go forward/back.
134
+ * @param noReload boolean Trigger the navigation without reloading the page (version: 1.12.0 | 8.4.0.cl)
127
135
  */
128
- navigateToPage(path) {
129
- if (this.iFrame) {
136
+ navigateToPage(path, noReload = false) {
137
+ if (!this.iFrame) {
138
+ console.log('Please call render before invoking this method');
139
+ return;
140
+ }
141
+ if (noReload) {
142
+ this.trigger(HostEvent.Navigate, path);
143
+ }
144
+ else {
145
+ if (typeof path !== 'string') {
146
+ console.warn('Path can only by a string when triggered without noReload');
147
+ return;
148
+ }
130
149
  const iframeSrc = this.iFrame.src;
131
150
  const embedPath = '#/embed';
132
151
  const currentPath = iframeSrc.includes(embedPath) ? embedPath : '#';
133
152
  this.iFrame.src = `${iframeSrc.split(currentPath)[0]}${currentPath}/${path.replace(/^\/?#?\//, '')}`;
134
153
  }
135
- else {
136
- console.log('Please call render before invoking this method');
137
- }
138
154
  }
139
155
  /**
140
156
  * Renders the embedded application pages in the ThoughtSpot app.
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/embed/app.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAC/D,OAAO,EAAE,KAAK,EAA8B,MAAM,UAAU,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAc,MAAM,YAAY,CAAC;AAEjD;;GAEG;AACH,qCAAqC;AACrC,MAAM,CAAN,IAAY,IAyBX;AAzBD,WAAY,IAAI;IACZ;;OAEG;IACH,qBAAa,CAAA;IACb;;OAEG;IACH,yBAAiB,CAAA;IACjB;;OAEG;IACH,2BAAmB,CAAA;IACnB;;OAEG;IACH,iCAAyB,CAAA;IACzB;;OAEG;IACH,+BAAuB,CAAA;IACvB;;OAEG;IACH,qBAAa,CAAA;AACjB,CAAC,EAzBW,IAAI,KAAJ,IAAI,QAyBf;AA+CD;;;GAGG;AACH,MAAM,OAAO,QAAS,SAAQ,OAAO;IAGjC,kDAAkD;IAClD,YAAY,WAAwB,EAAE,UAAyB;QAC3D,KAAK,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;IACnC,CAAC;IAED;;;OAGG;IACK,cAAc;QAClB,MAAM,MAAM,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACzC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,WAAW,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QAElE,IAAI,GAAG,EAAE;YACL,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC;SAC3B;QACD,IAAI,WAAW,IAAI,WAAW,CAAC,MAAM,EAAE;YACnC,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;SAC3D;QAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,CAAC,GAAG,WAAW,CAAC;QAC/C,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAEtD,OAAO,WAAW,CAAC;IACvB,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,MAAc,EAAE,cAA+B;QAChE,MAAM,WAAW,GAAG,cAAc,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;QACzD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC1C,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC;aACzC,MAAM,CAAC,OAAO,CAAC;aACf,IAAI,CAAC,GAAG,CAAC,CAAC;QACf,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAChC,WAAW,EACX,IAAI,CAAC,UAAU,CAAC,iBAAiB,EACjC,IAAI,CAAC,UAAU,CAAC,qBAAqB,EACrC,IAAI,CACP,IAAI,MAAM,EAAE,CAAC;QAEd,MAAM,gBAAgB,GAAG,IAAI,CAAC,2BAA2B,EAAE,CAAC;QAC5D,GAAG,GAAG,GAAG,GAAG,GAAG,gBAAgB,EAAE,CAAC;QAElC,OAAO,GAAG,CAAC;IACf,CAAC;IAED;;;OAGG;IACK,YAAY,CAAC,MAAY;QAC7B,QAAQ,MAAM,EAAE;YACZ,KAAK,IAAI,CAAC,MAAM;gBACZ,OAAO,QAAQ,CAAC;YACpB,KAAK,IAAI,CAAC,OAAO;gBACb,OAAO,SAAS,CAAC;YACrB,KAAK,IAAI,CAAC,UAAU;gBAChB,OAAO,WAAW,CAAC;YACvB,KAAK,IAAI,CAAC,SAAS;gBACf,OAAO,WAAW,CAAC;YACvB,KAAK,IAAI,CAAC,IAAI;gBACV,OAAO,aAAa,CAAC;YACzB,KAAK,IAAI,CAAC,IAAI,CAAC;YACf;gBACI,OAAO,MAAM,CAAC;SACrB;IACL,CAAC;IAED;;;;OAIG;IACK,UAAU,CAAC,IAAY;QAC3B,IAAI,CAAC,IAAI,EAAE;YACP,OAAO,IAAI,CAAC;SACf;QAED,uBAAuB;QACvB,IAAI,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE;YACzB,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;SAC5B;QAED,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACI,cAAc,CAAC,IAAY;QAC9B,IAAI,IAAI,CAAC,MAAM,EAAE;YACb,MAAM,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC;YAClC,MAAM,SAAS,GAAG,SAAS,CAAC;YAC5B,MAAM,WAAW,GAAG,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC;YACpE,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,GACd,SAAS,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAClC,GAAG,WAAW,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC;SACpD;aAAM;YACH,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;SACjE;IACL,CAAC;IAED;;;;OAIG;IACI,MAAM;QACT,KAAK,CAAC,MAAM,EAAE,CAAC;QAEf,MAAM,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC;QACzD,MAAM,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACzD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAExB,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../../src/embed/app.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { AppEmbed, Page } from './app';
2
2
  import { init } from '../index';
3
- import { Action, AuthType, RuntimeFilterOp } from '../types';
4
- import { executeAfterWait, getDocumentBody, getIFrameSrc, getRootEl, } from '../test/test-utils';
3
+ import { Action, AuthType, HostEvent, RuntimeFilterOp } from '../types';
4
+ import { executeAfterWait, getDocumentBody, getIFrameSrc, getRootEl, getIFrameEl, } from '../test/test-utils';
5
5
  import { version } from '../../package.json';
6
6
  import * as config from '../config';
7
7
  const defaultViewConfig = {
@@ -63,6 +63,7 @@ describe('App embed tests', () => {
63
63
  [Page.Liveboards]: 'pinboards',
64
64
  [Page.Data]: 'data/tables',
65
65
  [Page.Home]: 'home',
66
+ [Page.SpotIQ]: 'insights/results',
66
67
  };
67
68
  const pageIds = Object.keys(pageRouteMap);
68
69
  for (let i = 0; i < pageIds.length; i++) {
@@ -148,6 +149,39 @@ describe('App embed tests', () => {
148
149
  appEmbed.navigateToPage(path);
149
150
  expect(getIFrameSrc()).toBe(`http://${thoughtSpotHost}/?embedApp=true&primaryNavHidden=true&profileAndHelpInNavBarHidden=false&${defaultParamsForPinboardEmbed}${defaultParamsPost}#/${path}`);
150
151
  });
152
+ test('navigateToPage with noReload should trigger the appropriate event', async () => {
153
+ const appEmbed = new AppEmbed(getRootEl(), {
154
+ frameParams: {
155
+ width: '100%',
156
+ height: '100%',
157
+ },
158
+ });
159
+ await appEmbed.render();
160
+ const iframe = getIFrameEl();
161
+ iframe.contentWindow.postMessage = jest.fn();
162
+ appEmbed.navigateToPage(path, true);
163
+ expect(iframe.contentWindow.postMessage).toHaveBeenCalledWith(expect.objectContaining({
164
+ type: HostEvent.Navigate,
165
+ data: path,
166
+ }), `http://${thoughtSpotHost}`);
167
+ appEmbed.navigateToPage(-1, true);
168
+ expect(iframe.contentWindow.postMessage).toHaveBeenCalledWith(expect.objectContaining({
169
+ type: HostEvent.Navigate,
170
+ data: -1,
171
+ }), `http://${thoughtSpotHost}`);
172
+ });
173
+ test('Do not allow number path without noReload in navigateToPage', async () => {
174
+ const appEmbed = new AppEmbed(getRootEl(), {
175
+ frameParams: {
176
+ width: '100%',
177
+ height: '100%',
178
+ },
179
+ });
180
+ await appEmbed.render();
181
+ spyOn(console, 'warn');
182
+ appEmbed.navigateToPage(-1);
183
+ expect(console.warn).toHaveBeenCalledWith('Path can only by a string when triggered without noReload');
184
+ });
151
185
  test('navigateToPage function use before render', async () => {
152
186
  spyOn(console, 'log');
153
187
  const appEmbed = new AppEmbed(getRootEl(), {
@@ -1 +1 @@
1
- {"version":3,"file":"app.spec.js","sourceRoot":"","sources":["../../../src/embed/app.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.spec.js","sourceRoot":"","sources":["../../../src/embed/app.spec.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import * as index from '../index';
2
- import { getAllIframeEl, getDocumentBody, getRootEl, } from '../test/test-utils';
2
+ import { executeAfterWait, getAllIframeEl, getDocumentBody, getRootEl, getIFrameSrc, } from '../test/test-utils';
3
3
  const thoughtSpotHost = 'tshost';
4
4
  describe('Base TS Embed', () => {
5
5
  beforeAll(() => {
@@ -53,5 +53,17 @@ describe('Base TS Embed', () => {
53
53
  });
54
54
  expect(prefetch).toHaveBeenCalledTimes(0);
55
55
  });
56
+ test('Sets the disableLoginRedirect param when autoLogin is true', async () => {
57
+ index.init({
58
+ thoughtSpotHost,
59
+ authType: index.AuthType.None,
60
+ autoLogin: true,
61
+ });
62
+ const tsEmbed = new index.AppEmbed(getRootEl(), {});
63
+ await tsEmbed.render();
64
+ await executeAfterWait(() => {
65
+ expect(getIFrameSrc()).toContain('disableLoginRedirect=true');
66
+ });
67
+ });
56
68
  });
57
69
  //# sourceMappingURL=base.spec.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.spec.js","sourceRoot":"","sources":["../../../src/embed/base.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.spec.js","sourceRoot":"","sources":["../../../src/embed/base.spec.ts"],"names":[],"mappings":"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"}