@thoughtspot/visual-embed-sdk 1.24.0-preRender.1 → 1.24.0-preRender.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cjs/package.json +1 -1
- package/cjs/src/embed/app.d.ts +1 -3
- package/cjs/src/embed/app.d.ts.map +1 -1
- package/cjs/src/embed/app.js +2 -8
- package/cjs/src/embed/app.js.map +1 -1
- package/cjs/src/embed/liveboard.d.ts +1 -2
- package/cjs/src/embed/liveboard.d.ts.map +1 -1
- package/cjs/src/embed/liveboard.js +2 -7
- package/cjs/src/embed/liveboard.js.map +1 -1
- package/cjs/src/embed/sage.d.ts +1 -3
- package/cjs/src/embed/sage.d.ts.map +1 -1
- package/cjs/src/embed/sage.js +2 -8
- package/cjs/src/embed/sage.js.map +1 -1
- package/cjs/src/embed/search.d.ts +1 -4
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +2 -9
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts +47 -17
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +144 -99
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +102 -0
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/react/all-types-export.d.ts +1 -1
- package/cjs/src/react/all-types-export.d.ts.map +1 -1
- package/cjs/src/react/all-types-export.js +6 -2
- package/cjs/src/react/all-types-export.js.map +1 -1
- package/cjs/src/react/index.d.ts +103 -5
- package/cjs/src/react/index.d.ts.map +1 -1
- package/cjs/src/react/index.js +81 -1
- package/cjs/src/react/index.js.map +1 -1
- package/cjs/src/react/index.spec.js +22 -0
- package/cjs/src/react/index.spec.js.map +1 -1
- package/cjs/src/types.d.ts +18 -0
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils.d.ts +27 -0
- package/cjs/src/utils.d.ts.map +1 -1
- package/cjs/src/utils.js +29 -2
- package/cjs/src/utils.js.map +1 -1
- package/cjs/src/utils.spec.d.ts +0 -3
- package/cjs/src/utils.spec.d.ts.map +1 -1
- package/cjs/src/utils.spec.js +59 -6
- package/cjs/src/utils.spec.js.map +1 -1
- package/dist/src/embed/app.d.ts +1 -3
- package/dist/src/embed/app.d.ts.map +1 -1
- package/dist/src/embed/liveboard.d.ts +1 -2
- package/dist/src/embed/liveboard.d.ts.map +1 -1
- package/dist/src/embed/sage.d.ts +1 -3
- package/dist/src/embed/sage.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts +1 -4
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts +47 -17
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/react/all-types-export.d.ts +1 -1
- package/dist/src/react/all-types-export.d.ts.map +1 -1
- package/dist/src/react/index.d.ts +103 -5
- package/dist/src/react/index.d.ts.map +1 -1
- package/dist/src/types.d.ts +18 -0
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils.d.ts +27 -0
- package/dist/src/utils.d.ts.map +1 -1
- package/dist/src/utils.spec.d.ts +0 -3
- package/dist/src/utils.spec.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +263 -135
- package/dist/tsembed-react.js +263 -134
- package/dist/tsembed.es.js +182 -134
- package/dist/tsembed.js +182 -134
- package/dist/visual-embed-sdk-react-full.d.ts +166 -33
- package/dist/visual-embed-sdk-react.d.ts +166 -33
- package/dist/visual-embed-sdk.d.ts +63 -28
- package/lib/package.json +1 -1
- package/lib/src/embed/app.d.ts +1 -3
- package/lib/src/embed/app.d.ts.map +1 -1
- package/lib/src/embed/app.js +2 -8
- package/lib/src/embed/app.js.map +1 -1
- package/lib/src/embed/liveboard.d.ts +1 -2
- package/lib/src/embed/liveboard.d.ts.map +1 -1
- package/lib/src/embed/liveboard.js +2 -7
- package/lib/src/embed/liveboard.js.map +1 -1
- package/lib/src/embed/sage.d.ts +1 -3
- package/lib/src/embed/sage.d.ts.map +1 -1
- package/lib/src/embed/sage.js +2 -8
- package/lib/src/embed/sage.js.map +1 -1
- package/lib/src/embed/search.d.ts +1 -4
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +2 -9
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts +47 -17
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +144 -99
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +102 -0
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/react/all-types-export.d.ts +1 -1
- package/lib/src/react/all-types-export.d.ts.map +1 -1
- package/lib/src/react/all-types-export.js +1 -1
- package/lib/src/react/all-types-export.js.map +1 -1
- package/lib/src/react/index.d.ts +103 -5
- package/lib/src/react/index.d.ts.map +1 -1
- package/lib/src/react/index.js +80 -0
- package/lib/src/react/index.js.map +1 -1
- package/lib/src/react/index.spec.js +23 -1
- package/lib/src/react/index.spec.js.map +1 -1
- package/lib/src/types.d.ts +18 -0
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils.d.ts +27 -0
- package/lib/src/utils.d.ts.map +1 -1
- package/lib/src/utils.js +29 -2
- package/lib/src/utils.js.map +1 -1
- package/lib/src/utils.spec.d.ts +0 -3
- package/lib/src/utils.spec.d.ts.map +1 -1
- package/lib/src/utils.spec.js +60 -7
- package/lib/src/utils.spec.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +63 -28
- package/package.json +1 -1
- package/src/embed/app.ts +6 -11
- package/src/embed/liveboard.ts +2 -10
- package/src/embed/sage.ts +2 -11
- package/src/embed/search.ts +2 -12
- package/src/embed/ts-embed.spec.ts +127 -0
- package/src/embed/ts-embed.ts +170 -128
- package/src/react/all-types-export.ts +5 -1
- package/src/react/index.spec.tsx +42 -1
- package/src/react/index.tsx +120 -17
- package/src/types.ts +19 -0
- package/src/utils.spec.ts +78 -7
- package/src/utils.ts +30 -7
package/dist/tsembed-react.es.js
CHANGED
|
@@ -376,15 +376,42 @@ function removeTypename(obj) {
|
|
|
376
376
|
}
|
|
377
377
|
return obj;
|
|
378
378
|
}
|
|
379
|
+
/**
|
|
380
|
+
* Sets the specified style properties on an HTML element.
|
|
381
|
+
*
|
|
382
|
+
* @param {HTMLElement} element - The HTML element to which the styles should be applied.
|
|
383
|
+
* @param {Partial<CSSStyleDeclaration>} styleProperties - An object containing style
|
|
384
|
+
* property names and their values.
|
|
385
|
+
* @example
|
|
386
|
+
* // Apply styles to an element
|
|
387
|
+
* const element = document.getElementById('myElement');
|
|
388
|
+
* const styles = {
|
|
389
|
+
* backgroundColor: 'red',
|
|
390
|
+
* fontSize: '16px',
|
|
391
|
+
* };
|
|
392
|
+
* setStyleProperties(element, styles);
|
|
393
|
+
*/
|
|
379
394
|
const setStyleProperties = (element, styleProperties) => {
|
|
380
|
-
if (!element ||
|
|
395
|
+
if (!(element === null || element === void 0 ? void 0 : element.style))
|
|
381
396
|
return;
|
|
382
397
|
Object.keys(styleProperties).forEach((styleProperty) => {
|
|
383
398
|
element.style[styleProperty] = styleProperties[styleProperty].toString();
|
|
384
399
|
});
|
|
385
400
|
};
|
|
401
|
+
/**
|
|
402
|
+
* Removes specified style properties from an HTML element.
|
|
403
|
+
*
|
|
404
|
+
* @param {HTMLElement} element - The HTML element from which the styles should be removed.
|
|
405
|
+
* @param {string[]} styleProperties - An array of style property names to be removed.
|
|
406
|
+
* @example
|
|
407
|
+
* // Remove styles from an element
|
|
408
|
+
* const element = document.getElementById('myElement');
|
|
409
|
+
* element.style.backgroundColor = 'red';
|
|
410
|
+
* const propertiesToRemove = ['backgroundColor'];
|
|
411
|
+
* removeStyleProperties(element, propertiesToRemove);
|
|
412
|
+
*/
|
|
386
413
|
const removeStyleProperties = (element, styleProperties) => {
|
|
387
|
-
if (!element ||
|
|
414
|
+
if (!(element === null || element === void 0 ? void 0 : element.style))
|
|
388
415
|
return;
|
|
389
416
|
styleProperties.forEach((styleProperty) => {
|
|
390
417
|
element.style.removeProperty(styleProperty);
|
|
@@ -10718,7 +10745,7 @@ function processTrigger(iFrame, messageType, thoughtSpotHost, data) {
|
|
|
10718
10745
|
});
|
|
10719
10746
|
}
|
|
10720
10747
|
|
|
10721
|
-
var name="@thoughtspot/visual-embed-sdk";var version="1.24.0-preRender.
|
|
10748
|
+
var name="@thoughtspot/visual-embed-sdk";var version="1.24.0-preRender.3";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/**","cjs/**"];var exports={".":{"import":"./lib/src/index.js",require:"./cjs/src/index.js",types:"./lib/src/index.d.ts"},"./react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"},"./lib/src/react":{"import":"./lib/src/react/all-types-export.js",require:"./cjs/src/react/all-types-export.js",types:"./lib/src/react/all-types-export.d.ts"}};var typesVersions={"*":{react:["./lib/src/react/all-types-export.d.ts"]}};var scripts={lint:"eslint 'src/**'","lint:fix":"eslint 'src/**/*.*' --fix",tsc:"tsc -p . --incremental false; tsc -p . --incremental false --module commonjs --outDir cjs",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-file":"dts-bundle --name @thoughtspot/visual-embed-sdk --out visual-embed-sdk.d.ts --main lib/src/index.d.ts","bundle-dts":"dts-bundle --name ../../dist/visual-embed-sdk --main lib/src/index.d.ts --outputAsModuleFolder=true","bundle-dts-react":"dts-bundle --name ../../../dist/visual-embed-sdk-react --main lib/src/react/index.d.ts --outputAsModuleFolder=true","bundle-dts-react-full":"dts-bundle --name ../../../dist/visual-embed-sdk-react-full --main lib/src/react/all-types-export.d.ts --outputAsModuleFolder=true",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 --runInBand","test-docs":"jest -c jest.config.docs.js",test:"npm run test-sdk && npm run test-docs",posttest:"cat ./coverage/sdk/lcov.info | coveralls","is-publish-allowed":"node scripts/is-publish-allowed.js",prepublishOnly:"npm run tsc && npm run bundle-dts-file && npm run bundle-dts && npm run bundle-dts-react && npm run bundle-dts-react-full && npm run build","check-size":"npm run build && size-limit","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",dompurify:"^2.3.4","eslint-plugin-comment-length":"^0.9.2","eslint-plugin-jsdoc":"^40.1.0",eventemitter3:"^4.0.7","gatsby-plugin-vercel":"^1.0.3","html-react-parser":"^1.4.12",lodash:"^4.17.21","mixpanel-browser":"^2.45.0","ts-deepmerge":"^6.0.2",tslib:"^2.5.3","use-deep-compare-effect":"^1.8.1"};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","@rollup/plugin-replace":"^5.0.2","@size-limit/preset-big-lib":"^8.2.6","@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","current-git-branch":"^1.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.13.1","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":"6.7.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-fetch-mock":"^3.0.3",jsdom:"^17.0.0","node-sass":"^8.0.0",prettier:"2.1.2",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-plugin-toc-group":"thoughtspot/typedoc-plugin-toc-group",typescript:"^4.9.4","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,typesVersions:typesVersions,"size-limit":[{path:"dist/tsembed.js",limit:"40 kB"}],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};
|
|
10722
10749
|
|
|
10723
10750
|
/**
|
|
10724
10751
|
* Copyright (c) 2022
|
|
@@ -10818,6 +10845,7 @@ class TsEmbed {
|
|
|
10818
10845
|
this.on(EmbedEvent.APP_INIT, this.appInitCb, { start: false }, true);
|
|
10819
10846
|
this.on(EmbedEvent.AuthExpire, this.updateAuthToken, { start: false }, true);
|
|
10820
10847
|
};
|
|
10848
|
+
this.showPreRenderByDefault = false;
|
|
10821
10849
|
this.el = getDOMNode(domSelector);
|
|
10822
10850
|
// TODO: handle error
|
|
10823
10851
|
this.embedConfig = getEmbedConfig();
|
|
@@ -11104,12 +11132,12 @@ class TsEmbed {
|
|
|
11104
11132
|
iFrame.name = 'ThoughtSpot Embedded Analytics';
|
|
11105
11133
|
return iFrame;
|
|
11106
11134
|
}
|
|
11107
|
-
handleInsertionIntoDOM(child
|
|
11135
|
+
handleInsertionIntoDOM(child) {
|
|
11108
11136
|
if (this.isPreRendered) {
|
|
11109
|
-
this.insertIntoDOMForPreRender(
|
|
11137
|
+
this.insertIntoDOMForPreRender(child);
|
|
11110
11138
|
}
|
|
11111
11139
|
else {
|
|
11112
|
-
this.insertIntoDOM(
|
|
11140
|
+
this.insertIntoDOM(child);
|
|
11113
11141
|
}
|
|
11114
11142
|
}
|
|
11115
11143
|
/**
|
|
@@ -11117,9 +11145,8 @@ class TsEmbed {
|
|
|
11117
11145
|
* event listeners.
|
|
11118
11146
|
*
|
|
11119
11147
|
* @param url - The URL of the embedded ThoughtSpot app.
|
|
11120
|
-
* @param showPreRenderByDefault - The flag to show the preRender by default.
|
|
11121
11148
|
*/
|
|
11122
|
-
async renderIFrame(url
|
|
11149
|
+
async renderIFrame(url) {
|
|
11123
11150
|
if (this.isError) {
|
|
11124
11151
|
return null;
|
|
11125
11152
|
}
|
|
@@ -11139,7 +11166,7 @@ class TsEmbed {
|
|
|
11139
11166
|
uploadMixpanelEvent(MIXPANEL_EVENT.VISUAL_SDK_RENDER_START);
|
|
11140
11167
|
return (_a = getAuthPromise()) === null || _a === void 0 ? void 0 : _a.then((isLoggedIn) => {
|
|
11141
11168
|
if (!isLoggedIn) {
|
|
11142
|
-
this.handleInsertionIntoDOM(this.embedConfig.loginFailedMessage
|
|
11169
|
+
this.handleInsertionIntoDOM(this.embedConfig.loginFailedMessage);
|
|
11143
11170
|
return;
|
|
11144
11171
|
}
|
|
11145
11172
|
this.iFrame = this.iFrame || this.createIframeEl(url);
|
|
@@ -11161,7 +11188,7 @@ class TsEmbed {
|
|
|
11161
11188
|
this.iFrame.addEventListener('error', () => {
|
|
11162
11189
|
nextInQueue();
|
|
11163
11190
|
});
|
|
11164
|
-
this.handleInsertionIntoDOM(this.iFrame
|
|
11191
|
+
this.handleInsertionIntoDOM(this.iFrame);
|
|
11165
11192
|
const prefetchIframe = document.querySelectorAll('.prefetchIframe');
|
|
11166
11193
|
if (prefetchIframe.length) {
|
|
11167
11194
|
prefetchIframe.forEach((el) => {
|
|
@@ -11179,45 +11206,28 @@ class TsEmbed {
|
|
|
11179
11206
|
});
|
|
11180
11207
|
});
|
|
11181
11208
|
}
|
|
11182
|
-
|
|
11183
|
-
|
|
11184
|
-
wrapper: `tsEmbed-pre-render-wrapper-${this.viewConfig.preRenderId}`,
|
|
11185
|
-
shield: `tsEmbed-pre-render-shield-${this.viewConfig.preRenderId}`,
|
|
11186
|
-
child: `tsEmbed-pre-render-child-${this.viewConfig.preRenderId}`,
|
|
11187
|
-
};
|
|
11188
|
-
}
|
|
11189
|
-
createPreRenderWrapper(child) {
|
|
11209
|
+
createPreRenderWrapper() {
|
|
11210
|
+
var _a;
|
|
11190
11211
|
if (!this.viewConfig.preRenderId) {
|
|
11191
|
-
throw new Error('PreRender id is required');
|
|
11212
|
+
throw new Error('PreRender id is required to create PreRender wrapper');
|
|
11192
11213
|
}
|
|
11193
11214
|
const preRenderIds = this.getPreRenderIds();
|
|
11194
|
-
|
|
11195
|
-
.map((id) => document.getElementById(id))
|
|
11196
|
-
.filter((element) => element)
|
|
11197
|
-
.forEach((existingElement) => existingElement.remove());
|
|
11215
|
+
(_a = document.getElementById(preRenderIds.wrapper)) === null || _a === void 0 ? void 0 : _a.remove();
|
|
11198
11216
|
const preRenderWrapper = document.createElement('div');
|
|
11199
11217
|
preRenderWrapper.id = preRenderIds.wrapper;
|
|
11200
|
-
|
|
11201
|
-
|
|
11202
|
-
|
|
11203
|
-
|
|
11204
|
-
|
|
11205
|
-
|
|
11206
|
-
preRenderWrapper.appendChild(child);
|
|
11207
|
-
// preRenderWrapper.appendChild(preRenderShield);
|
|
11208
|
-
this.preRenderWrapper = preRenderWrapper;
|
|
11209
|
-
// this.preRenderShield = preRenderShield;
|
|
11210
|
-
this.preRenderChild = child;
|
|
11218
|
+
const initialPreRenderWrapperStyle = {
|
|
11219
|
+
position: 'absolute',
|
|
11220
|
+
width: '100vw',
|
|
11221
|
+
height: '100vh',
|
|
11222
|
+
};
|
|
11223
|
+
setStyleProperties(preRenderWrapper, initialPreRenderWrapperStyle);
|
|
11211
11224
|
return preRenderWrapper;
|
|
11212
11225
|
}
|
|
11213
11226
|
connectPreRendered() {
|
|
11214
11227
|
const preRenderIds = this.getPreRenderIds();
|
|
11215
11228
|
this.preRenderWrapper = this.preRenderWrapper
|
|
11216
11229
|
|| document.getElementById(preRenderIds.wrapper);
|
|
11217
|
-
|
|
11218
|
-
// || document.getElementById(preRenderIds.shield);
|
|
11219
|
-
this.preRenderChild = this.preRenderChild
|
|
11220
|
-
|| document.getElementById(preRenderIds.child);
|
|
11230
|
+
this.preRenderChild = this.preRenderChild || document.getElementById(preRenderIds.child);
|
|
11221
11231
|
if (this.preRenderWrapper && this.preRenderChild) {
|
|
11222
11232
|
this.isPreRendered = true;
|
|
11223
11233
|
this.iFrame = this.preRenderChild;
|
|
@@ -11225,79 +11235,45 @@ class TsEmbed {
|
|
|
11225
11235
|
return this.isPreRenderAvailable();
|
|
11226
11236
|
}
|
|
11227
11237
|
isPreRenderAvailable() {
|
|
11228
|
-
return this.isPreRendered;
|
|
11238
|
+
return this.isPreRendered && Boolean(this.preRenderWrapper && this.preRenderChild);
|
|
11229
11239
|
}
|
|
11230
|
-
|
|
11231
|
-
|
|
11240
|
+
createPreRenderChild(child) {
|
|
11241
|
+
var _a;
|
|
11242
|
+
const preRenderIds = this.getPreRenderIds();
|
|
11243
|
+
(_a = document.getElementById(preRenderIds.child)) === null || _a === void 0 ? void 0 : _a.remove();
|
|
11244
|
+
if (child instanceof HTMLElement) {
|
|
11245
|
+
child.id = preRenderIds.child;
|
|
11246
|
+
return child;
|
|
11247
|
+
}
|
|
11248
|
+
const divChildNode = document.createElement('div');
|
|
11249
|
+
setStyleProperties(divChildNode, { width: '100%', height: '100%' });
|
|
11250
|
+
divChildNode.id = preRenderIds.child;
|
|
11232
11251
|
if (typeof child === 'string') {
|
|
11233
|
-
const divChildNode = document.createElement('div');
|
|
11234
11252
|
divChildNode.innerHTML = child;
|
|
11235
|
-
childNode = divChildNode;
|
|
11236
11253
|
}
|
|
11237
11254
|
else {
|
|
11238
|
-
|
|
11255
|
+
divChildNode.appendChild(child);
|
|
11256
|
+
}
|
|
11257
|
+
return divChildNode;
|
|
11258
|
+
}
|
|
11259
|
+
insertIntoDOMForPreRender(child) {
|
|
11260
|
+
const preRenderChild = this.createPreRenderChild(child);
|
|
11261
|
+
const preRenderWrapper = this.createPreRenderWrapper();
|
|
11262
|
+
preRenderWrapper.appendChild(preRenderChild);
|
|
11263
|
+
this.preRenderChild = preRenderChild;
|
|
11264
|
+
this.preRenderWrapper = preRenderWrapper;
|
|
11265
|
+
if (preRenderChild instanceof HTMLIFrameElement) {
|
|
11266
|
+
this.iFrame = preRenderChild;
|
|
11239
11267
|
}
|
|
11240
|
-
|
|
11241
|
-
if (showPreRenderByDefault) {
|
|
11268
|
+
if (this.showPreRenderByDefault) {
|
|
11242
11269
|
this.showPreRender();
|
|
11243
11270
|
}
|
|
11244
11271
|
else {
|
|
11245
11272
|
this.hidePreRender();
|
|
11246
11273
|
}
|
|
11274
|
+
this.insertedDomEl = preRenderWrapper;
|
|
11247
11275
|
document.body.appendChild(preRenderWrapper);
|
|
11248
11276
|
}
|
|
11249
|
-
hidePreRender() {
|
|
11250
|
-
if (!this.isPreRenderAvailable()) {
|
|
11251
|
-
// if the embed component is not preRendered , nothing to hide
|
|
11252
|
-
console.log('No preRender found, not hiding ');
|
|
11253
|
-
return;
|
|
11254
|
-
}
|
|
11255
|
-
setStyleProperties(this.preRenderWrapper, {
|
|
11256
|
-
opacity: '0',
|
|
11257
|
-
pointerEvents: 'none',
|
|
11258
|
-
zIndex: '-1000',
|
|
11259
|
-
position: 'absolute ',
|
|
11260
|
-
top: '0',
|
|
11261
|
-
left: '0',
|
|
11262
|
-
});
|
|
11263
|
-
const childBoundingRect = this.preRenderChild.getBoundingClientRect();
|
|
11264
|
-
// setStyleProperties(this.preRenderShield, {
|
|
11265
|
-
// opacity: '0',
|
|
11266
|
-
// pointerEvents: 'none',
|
|
11267
|
-
// zIndex: '1',
|
|
11268
|
-
// width: `${childBoundingRect.width}px`,
|
|
11269
|
-
// height: `${childBoundingRect.height}px`,
|
|
11270
|
-
// position: 'absolute',
|
|
11271
|
-
// top: '0',
|
|
11272
|
-
// left: '0',
|
|
11273
|
-
// });
|
|
11274
|
-
this.unsubscribeToEvents();
|
|
11275
|
-
}
|
|
11276
|
-
showPreRender() {
|
|
11277
|
-
if (!this.isPreRenderAvailable()) {
|
|
11278
|
-
const isAvailable = this.connectPreRendered();
|
|
11279
|
-
if (!isAvailable) {
|
|
11280
|
-
// if the Embed component is nor preRendered , Render it now and
|
|
11281
|
-
// show it (hide is defalt behaviour)
|
|
11282
|
-
console.log('No preRender found, creating new ');
|
|
11283
|
-
this.preRender(true);
|
|
11284
|
-
return;
|
|
11285
|
-
}
|
|
11286
|
-
}
|
|
11287
|
-
this.syncPreRenderStyle();
|
|
11288
|
-
removeStyleProperties(this.preRenderWrapper, ['z-index', 'opacity', 'pointer-events']);
|
|
11289
|
-
// setStyleProperties(this.preRenderShield, { zIndex: '-1' });
|
|
11290
|
-
this.subscribeToEvents();
|
|
11291
|
-
}
|
|
11292
|
-
syncPreRenderStyle() {
|
|
11293
|
-
if (!this.el) {
|
|
11294
|
-
throw new Error('Embed element is not defined');
|
|
11295
|
-
}
|
|
11296
|
-
const elBoundingClient = this.el.getBoundingClientRect();
|
|
11297
|
-
setStyleProperties(this.preRenderWrapper, {
|
|
11298
|
-
top: `${elBoundingClient.y}px`, left: `${elBoundingClient.x}px`, width: `${elBoundingClient.width}px`, height: `${elBoundingClient.height}px`,
|
|
11299
|
-
});
|
|
11300
|
-
}
|
|
11301
11277
|
insertIntoDOM(child) {
|
|
11302
11278
|
var _a;
|
|
11303
11279
|
if (this.viewConfig.insertAsSibling) {
|
|
@@ -11515,10 +11491,16 @@ class TsEmbed {
|
|
|
11515
11491
|
/**
|
|
11516
11492
|
* Creates the preRender shell
|
|
11517
11493
|
*
|
|
11518
|
-
* @param showPreRenderByDefault
|
|
11494
|
+
* @param showPreRenderByDefault - Show the preRender after render, hidden by default
|
|
11519
11495
|
*/
|
|
11520
11496
|
preRender(showPreRenderByDefault = false) {
|
|
11497
|
+
if (!this.viewConfig.preRenderId) {
|
|
11498
|
+
console.error('PreRender id is required for preRender');
|
|
11499
|
+
return this;
|
|
11500
|
+
}
|
|
11521
11501
|
this.isPreRendered = true;
|
|
11502
|
+
this.showPreRenderByDefault = showPreRenderByDefault;
|
|
11503
|
+
this.render();
|
|
11522
11504
|
return this;
|
|
11523
11505
|
}
|
|
11524
11506
|
/**
|
|
@@ -11577,6 +11559,97 @@ class TsEmbed {
|
|
|
11577
11559
|
const prerenderFrameSrc = this.getRootIframeSrc();
|
|
11578
11560
|
return this.renderIFrame(prerenderFrameSrc);
|
|
11579
11561
|
}
|
|
11562
|
+
/**
|
|
11563
|
+
* Displays the PreRender component.
|
|
11564
|
+
* If the component is not preRendered, it attempts to create and render it.
|
|
11565
|
+
* Also, synchronizes the style of the PreRender component with the embedding
|
|
11566
|
+
* element.
|
|
11567
|
+
*/
|
|
11568
|
+
showPreRender() {
|
|
11569
|
+
if (!this.isPreRenderAvailable()) {
|
|
11570
|
+
const isAvailable = this.connectPreRendered();
|
|
11571
|
+
if (!isAvailable) {
|
|
11572
|
+
// if the Embed component is not preRendered , Render it now and
|
|
11573
|
+
this.preRender(true);
|
|
11574
|
+
return;
|
|
11575
|
+
}
|
|
11576
|
+
}
|
|
11577
|
+
if (this.el) {
|
|
11578
|
+
this.syncPreRenderStyle();
|
|
11579
|
+
this.resizeObserver = new ResizeObserver((entries) => {
|
|
11580
|
+
entries.forEach((entry) => {
|
|
11581
|
+
if (entry.contentRect && entry.target === this.el) {
|
|
11582
|
+
setStyleProperties(this.preRenderWrapper, {
|
|
11583
|
+
width: `${entry.contentRect.width}px`,
|
|
11584
|
+
height: `${entry.contentRect.height}px`,
|
|
11585
|
+
});
|
|
11586
|
+
}
|
|
11587
|
+
});
|
|
11588
|
+
});
|
|
11589
|
+
this.resizeObserver.observe(this.el);
|
|
11590
|
+
}
|
|
11591
|
+
removeStyleProperties(this.preRenderWrapper, ['z-index', 'opacity', 'pointer-events']);
|
|
11592
|
+
this.subscribeToEvents();
|
|
11593
|
+
}
|
|
11594
|
+
/**
|
|
11595
|
+
* Synchronizes the style properties of the PreRender component with the embedding
|
|
11596
|
+
* element. This function adjusts the position, width, and height of the PreRender
|
|
11597
|
+
* component
|
|
11598
|
+
* to match the dimensions and position of the embedding element.
|
|
11599
|
+
*
|
|
11600
|
+
* @throws {Error} Throws an error if the embedding element (passed as domSelector)
|
|
11601
|
+
* is not defined or not found.
|
|
11602
|
+
*/
|
|
11603
|
+
syncPreRenderStyle() {
|
|
11604
|
+
if (!this.el) {
|
|
11605
|
+
throw new Error('Embed element is not defined');
|
|
11606
|
+
}
|
|
11607
|
+
const elBoundingClient = this.el.getBoundingClientRect();
|
|
11608
|
+
setStyleProperties(this.preRenderWrapper, {
|
|
11609
|
+
top: `${elBoundingClient.y}px`,
|
|
11610
|
+
left: `${elBoundingClient.x}px`,
|
|
11611
|
+
width: `${elBoundingClient.width}px`,
|
|
11612
|
+
height: `${elBoundingClient.height}px`,
|
|
11613
|
+
});
|
|
11614
|
+
}
|
|
11615
|
+
/**
|
|
11616
|
+
* Hides the PreRender component if it is available.
|
|
11617
|
+
* If the component is not preRendered, it issues a warning.
|
|
11618
|
+
*/
|
|
11619
|
+
hidePreRender() {
|
|
11620
|
+
if (!this.isPreRenderAvailable()) {
|
|
11621
|
+
// if the embed component is not preRendered , nothing to hide
|
|
11622
|
+
console.warn('Warning: You should call PreRender before hiding it using hidePreRender.');
|
|
11623
|
+
return;
|
|
11624
|
+
}
|
|
11625
|
+
const preRenderHideStyles = {
|
|
11626
|
+
opacity: '0',
|
|
11627
|
+
pointerEvents: 'none',
|
|
11628
|
+
zIndex: '-1000',
|
|
11629
|
+
position: 'absolute ',
|
|
11630
|
+
top: '0',
|
|
11631
|
+
left: '0',
|
|
11632
|
+
};
|
|
11633
|
+
setStyleProperties(this.preRenderWrapper, preRenderHideStyles);
|
|
11634
|
+
if (this.resizeObserver) {
|
|
11635
|
+
this.resizeObserver.disconnect();
|
|
11636
|
+
}
|
|
11637
|
+
this.unsubscribeToEvents();
|
|
11638
|
+
}
|
|
11639
|
+
/**
|
|
11640
|
+
* Retrieves unique HTML element IDs for PreRender-related elements.
|
|
11641
|
+
* These IDs are constructed based on the provided 'preRenderId' from 'viewConfig'.
|
|
11642
|
+
*
|
|
11643
|
+
* @returns {object} An object containing the IDs for the PreRender elements.
|
|
11644
|
+
* @property {string} wrapper - The HTML element ID for the PreRender wrapper.
|
|
11645
|
+
* @property {string} child - The HTML element ID for the PreRender child.
|
|
11646
|
+
*/
|
|
11647
|
+
getPreRenderIds() {
|
|
11648
|
+
return {
|
|
11649
|
+
wrapper: `tsEmbed-pre-render-wrapper-${this.viewConfig.preRenderId}`,
|
|
11650
|
+
child: `tsEmbed-pre-render-child-${this.viewConfig.preRenderId}`,
|
|
11651
|
+
};
|
|
11652
|
+
}
|
|
11580
11653
|
}
|
|
11581
11654
|
/**
|
|
11582
11655
|
* Base class for embedding v1 experience
|
|
@@ -11594,10 +11667,9 @@ class V1Embed extends TsEmbed {
|
|
|
11594
11667
|
* Render the app in an iframe and set up event handlers
|
|
11595
11668
|
*
|
|
11596
11669
|
* @param iframeSrc
|
|
11597
|
-
* @param showPreRenderByDefault - if true the preRender will be shown by default
|
|
11598
11670
|
*/
|
|
11599
|
-
renderV1Embed(iframeSrc
|
|
11600
|
-
return this.renderIFrame(iframeSrc
|
|
11671
|
+
renderV1Embed(iframeSrc) {
|
|
11672
|
+
return this.renderIFrame(iframeSrc);
|
|
11601
11673
|
}
|
|
11602
11674
|
getRootIframeSrc() {
|
|
11603
11675
|
const queryParams = this.getEmbedParams();
|
|
@@ -11774,18 +11846,12 @@ class SageEmbed extends V1Embed {
|
|
|
11774
11846
|
/**
|
|
11775
11847
|
* Render the embedded ThoughtSpot Sage
|
|
11776
11848
|
*
|
|
11777
|
-
* @param showPreRenderByDefault
|
|
11778
11849
|
* @returns {SageEmbed} Eureka/Sage embed
|
|
11779
11850
|
*/
|
|
11780
|
-
render(
|
|
11851
|
+
render() {
|
|
11781
11852
|
super.render();
|
|
11782
11853
|
const src = this.getIFrameSrc();
|
|
11783
|
-
this.renderV1Embed(src
|
|
11784
|
-
return this;
|
|
11785
|
-
}
|
|
11786
|
-
preRender(showPreRenderByDefault = false) {
|
|
11787
|
-
super.preRender(showPreRenderByDefault);
|
|
11788
|
-
this.render(showPreRenderByDefault);
|
|
11854
|
+
this.renderV1Embed(src);
|
|
11789
11855
|
return this;
|
|
11790
11856
|
}
|
|
11791
11857
|
}
|
|
@@ -11894,14 +11960,12 @@ class SearchEmbed extends TsEmbed {
|
|
|
11894
11960
|
}
|
|
11895
11961
|
/**
|
|
11896
11962
|
* Render the embedded ThoughtSpot search
|
|
11897
|
-
*
|
|
11898
|
-
* @param showPreRenderByDefault
|
|
11899
11963
|
*/
|
|
11900
|
-
render(
|
|
11964
|
+
render() {
|
|
11901
11965
|
super.render();
|
|
11902
11966
|
const { answerId } = this.viewConfig;
|
|
11903
11967
|
const src = this.getIFrameSrc(answerId);
|
|
11904
|
-
this.renderIFrame(src
|
|
11968
|
+
this.renderIFrame(src);
|
|
11905
11969
|
getAuthPromise().then(() => {
|
|
11906
11970
|
if (checkReleaseVersionInBeta(getReleaseVersion(), getEmbedConfig().suppressSearchEmbedBetaWarning)) {
|
|
11907
11971
|
alert(ERROR_MESSAGE.SEARCHEMBED_BETA_WRANING_MESSAGE);
|
|
@@ -11909,11 +11973,6 @@ class SearchEmbed extends TsEmbed {
|
|
|
11909
11973
|
});
|
|
11910
11974
|
return this;
|
|
11911
11975
|
}
|
|
11912
|
-
preRender(showPreRenderByDefault = false) {
|
|
11913
|
-
super.preRender(showPreRenderByDefault);
|
|
11914
|
-
this.render(showPreRenderByDefault);
|
|
11915
|
-
return this;
|
|
11916
|
-
}
|
|
11917
11976
|
}
|
|
11918
11977
|
|
|
11919
11978
|
/**
|
|
@@ -12122,17 +12181,11 @@ class AppEmbed extends V1Embed {
|
|
|
12122
12181
|
*
|
|
12123
12182
|
* @param renderOptions An object containing the page ID
|
|
12124
12183
|
* to be embedded.
|
|
12125
|
-
* @param showPreRenderByDefault
|
|
12126
12184
|
*/
|
|
12127
|
-
render(
|
|
12185
|
+
render() {
|
|
12128
12186
|
super.render();
|
|
12129
12187
|
const src = this.getIFrameSrc();
|
|
12130
|
-
this.renderV1Embed(src
|
|
12131
|
-
return this;
|
|
12132
|
-
}
|
|
12133
|
-
preRender(showPreRenderByDefault = false) {
|
|
12134
|
-
super.preRender(showPreRenderByDefault);
|
|
12135
|
-
this.render(showPreRenderByDefault);
|
|
12188
|
+
this.renderV1Embed(src);
|
|
12136
12189
|
return this;
|
|
12137
12190
|
}
|
|
12138
12191
|
}
|
|
@@ -12289,15 +12342,10 @@ class LiveboardEmbed extends V1Embed {
|
|
|
12289
12342
|
* @param renderOptions An object specifying the Liveboard ID,
|
|
12290
12343
|
* visualization ID and the runtime filters.
|
|
12291
12344
|
*/
|
|
12292
|
-
render(
|
|
12345
|
+
render() {
|
|
12293
12346
|
super.render();
|
|
12294
12347
|
const src = this.getIFrameSrc();
|
|
12295
|
-
this.renderV1Embed(src
|
|
12296
|
-
return this;
|
|
12297
|
-
}
|
|
12298
|
-
preRender(showPreRenderByDefault = false) {
|
|
12299
|
-
super.preRender(showPreRenderByDefault);
|
|
12300
|
-
this.render(showPreRenderByDefault);
|
|
12348
|
+
this.renderV1Embed(src);
|
|
12301
12349
|
return this;
|
|
12302
12350
|
}
|
|
12303
12351
|
navigateToLiveboard(liveboardId, vizId, activeTabId) {
|
|
@@ -12386,6 +12434,7 @@ const componentFactory = (EmbedConstructor, isPreRenderedComponent = false) => R
|
|
|
12386
12434
|
* ```
|
|
12387
12435
|
*/
|
|
12388
12436
|
const SearchEmbed$1 = componentFactory(SearchEmbed);
|
|
12437
|
+
const PreRenderedSearchEmbed = componentFactory(SearchEmbed, true);
|
|
12389
12438
|
/**
|
|
12390
12439
|
* React component for Full app Embed.
|
|
12391
12440
|
*
|
|
@@ -12401,6 +12450,25 @@ const SearchEmbed$1 = componentFactory(SearchEmbed);
|
|
|
12401
12450
|
* ```
|
|
12402
12451
|
*/
|
|
12403
12452
|
const AppEmbed$1 = componentFactory(AppEmbed);
|
|
12453
|
+
/**
|
|
12454
|
+
* React component for PreRendered Liveboard embed.
|
|
12455
|
+
*
|
|
12456
|
+
* PreRenderedAppEmbed will preRender the SearchBarEmbed and will be hidden by
|
|
12457
|
+
* default.
|
|
12458
|
+
*
|
|
12459
|
+
* AppEmbed with preRenderId passed will call showPreRender on the embed.
|
|
12460
|
+
*
|
|
12461
|
+
* @example
|
|
12462
|
+
* ```tsx
|
|
12463
|
+
* function LandingPageComponent() {
|
|
12464
|
+
* return <PreRenderedAppEmbed preRenderId="someId" showPrimaryNavbar={false} />
|
|
12465
|
+
* }
|
|
12466
|
+
* ```
|
|
12467
|
+
* function MyComponent() {
|
|
12468
|
+
* return <AppEmbed preRenderId="someId" showPrimaryNavbar={false} />
|
|
12469
|
+
* }
|
|
12470
|
+
* ```
|
|
12471
|
+
*/
|
|
12404
12472
|
const PreRenderedAppEmbed = componentFactory(AppEmbed, true);
|
|
12405
12473
|
/**
|
|
12406
12474
|
* React component for Liveboard embed.
|
|
@@ -12419,6 +12487,28 @@ const PreRenderedAppEmbed = componentFactory(AppEmbed, true);
|
|
|
12419
12487
|
*/
|
|
12420
12488
|
const LiveboardEmbed$1 = componentFactory(LiveboardEmbed);
|
|
12421
12489
|
const PinboardEmbed = LiveboardEmbed$1;
|
|
12490
|
+
/**
|
|
12491
|
+
* React component for PreRendered Liveboard embed.
|
|
12492
|
+
*
|
|
12493
|
+
* PreRenderedLiveboardEmbed will preRender the liveboard and will be hidden by default.
|
|
12494
|
+
*
|
|
12495
|
+
* LiveboardEmbed with preRenderId passed will call showPreRender on the embed.
|
|
12496
|
+
*
|
|
12497
|
+
* If LiveboardEmbed is rendered before PreRenderedLiveboardEmbed is rendered it
|
|
12498
|
+
* tries to preRender the LiveboardEmbed, so it is recommended to use pass the
|
|
12499
|
+
* liveboardId to both the components.
|
|
12500
|
+
*
|
|
12501
|
+
* @example
|
|
12502
|
+
* ```tsx
|
|
12503
|
+
* function LandingPageComponent() {
|
|
12504
|
+
* return <PreRenderedLiveboardEmbed preRenderId="someId" liveboardId="libId" />
|
|
12505
|
+
* }
|
|
12506
|
+
* ```
|
|
12507
|
+
* function MyComponent() {
|
|
12508
|
+
* return <LiveboardEmbed preRenderId="someId" liveboardId="libId" />
|
|
12509
|
+
* }
|
|
12510
|
+
* ```
|
|
12511
|
+
*/
|
|
12422
12512
|
const PreRenderedLiveboardEmbed = componentFactory(LiveboardEmbed, true);
|
|
12423
12513
|
const PreRenderedPinboardEmbed = PreRenderedLiveboardEmbed;
|
|
12424
12514
|
/**
|
|
@@ -12435,6 +12525,25 @@ const PreRenderedPinboardEmbed = PreRenderedLiveboardEmbed;
|
|
|
12435
12525
|
* ```
|
|
12436
12526
|
*/
|
|
12437
12527
|
const SearchBarEmbed$1 = componentFactory(SearchBarEmbed);
|
|
12528
|
+
/**
|
|
12529
|
+
* React component for PreRendered Liveboard embed.
|
|
12530
|
+
*
|
|
12531
|
+
* PreRenderedSearchBarEmbed will preRender the SearchBarEmbed and will be hidden by
|
|
12532
|
+
* default.
|
|
12533
|
+
*
|
|
12534
|
+
* SearchBarEmbed with preRenderId passed will call showPreRender on the embed.
|
|
12535
|
+
*
|
|
12536
|
+
* @example
|
|
12537
|
+
* ```tsx
|
|
12538
|
+
* function LandingPageComponent() {
|
|
12539
|
+
* return <PreRenderedSearchBarEmbed preRenderId="someId" dataSource="dataSourceId" />
|
|
12540
|
+
* }
|
|
12541
|
+
* ```
|
|
12542
|
+
* function MyComponent() {
|
|
12543
|
+
* return <SearchBarEmbed preRenderId="someId" dataSource="dataSourceId" />
|
|
12544
|
+
* }
|
|
12545
|
+
* ```
|
|
12546
|
+
*/
|
|
12438
12547
|
const PreRenderedSearchBarEmbed = componentFactory(SearchBarEmbed, true);
|
|
12439
12548
|
/**
|
|
12440
12549
|
* React component for LLM based search Sage embed.
|
|
@@ -12450,6 +12559,25 @@ const PreRenderedSearchBarEmbed = componentFactory(SearchBarEmbed, true);
|
|
|
12450
12559
|
* ```
|
|
12451
12560
|
*/
|
|
12452
12561
|
const SageEmbed$1 = componentFactory(SageEmbed);
|
|
12562
|
+
/**
|
|
12563
|
+
* React component for PreRendered Liveboard embed.
|
|
12564
|
+
*
|
|
12565
|
+
* PreRenderedSageEmbed will preRender the SearchBarEmbed and will be hidden by
|
|
12566
|
+
* default.
|
|
12567
|
+
*
|
|
12568
|
+
* SageEmbed with preRenderId passed will call showPreRender on the embed.
|
|
12569
|
+
*
|
|
12570
|
+
* @example
|
|
12571
|
+
* ```tsx
|
|
12572
|
+
* function LandingPageComponent() {
|
|
12573
|
+
* return <PreRenderedSageEmbed preRenderId="someId" showObjectResults={true} />
|
|
12574
|
+
* }
|
|
12575
|
+
* ```
|
|
12576
|
+
* function MyComponent() {
|
|
12577
|
+
* return <SageEmbed preRenderId="someId" showObjectResults={true} />
|
|
12578
|
+
* }
|
|
12579
|
+
* ```
|
|
12580
|
+
*/
|
|
12453
12581
|
const PreRenderedSageEmbed = componentFactory(SageEmbed, true);
|
|
12454
12582
|
/**
|
|
12455
12583
|
* Get a reference to the embed component to trigger events on the component.
|
|
@@ -12472,4 +12600,4 @@ function useEmbedRef() {
|
|
|
12472
12600
|
return React.useRef(null);
|
|
12473
12601
|
}
|
|
12474
12602
|
|
|
12475
|
-
export { Action, AppEmbed$1 as AppEmbed, EmbedEvent, HomeLeftNavItem, HomepageModule, HostEvent, LiveboardEmbed$1 as LiveboardEmbed, Page, PinboardEmbed, PreRenderedAppEmbed, PreRenderedLiveboardEmbed, PreRenderedPinboardEmbed, PreRenderedSageEmbed, PreRenderedSearchBarEmbed, RuntimeFilterOp, SageEmbed$1 as SageEmbed, SearchBarEmbed$1 as SearchBarEmbed, SearchEmbed$1 as SearchEmbed, useEmbedRef };
|
|
12603
|
+
export { Action, AppEmbed$1 as AppEmbed, EmbedEvent, HomeLeftNavItem, HomepageModule, HostEvent, LiveboardEmbed$1 as LiveboardEmbed, Page, PinboardEmbed, PreRenderedAppEmbed, PreRenderedLiveboardEmbed, PreRenderedPinboardEmbed, PreRenderedSageEmbed, PreRenderedSearchBarEmbed, PreRenderedSearchEmbed, RuntimeFilterOp, SageEmbed$1 as SageEmbed, SearchBarEmbed$1 as SearchBarEmbed, SearchEmbed$1 as SearchEmbed, useEmbedRef };
|