@teambit/compositions 0.0.1022 → 0.0.1024

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/compositions.tsx CHANGED
@@ -28,6 +28,7 @@ import styles from './compositions.module.scss';
28
28
  import { ComponentComposition } from './ui';
29
29
  import { CompositionsPanel } from './ui/compositions-panel/compositions-panel';
30
30
  import type { CompositionsMenuSlot } from './compositions.ui.runtime';
31
+ import { ComponentCompositionProps } from './ui/composition-preview';
31
32
 
32
33
  export type MenuBarWidget = {
33
34
  location: 'start' | 'end';
@@ -156,9 +157,15 @@ export type CompositionContentProps = {
156
157
  selected?: Composition;
157
158
  queryParams?: string | string[];
158
159
  emptyState?: EmptyStateSlot;
159
- };
160
-
161
- export function CompositionContent({ component, selected, queryParams, emptyState }: CompositionContentProps) {
160
+ } & ComponentCompositionProps;
161
+
162
+ export function CompositionContent({
163
+ component,
164
+ selected,
165
+ queryParams,
166
+ emptyState,
167
+ ...componentCompositionProps
168
+ }: CompositionContentProps) {
162
169
  const env = component.environment?.id;
163
170
  const EmptyStateTemplate = emptyState?.get(env || ''); // || defaultTemplate;
164
171
 
@@ -219,6 +226,7 @@ export function CompositionContent({ component, selected, queryParams, emptyStat
219
226
  fullContentHeight
220
227
  pubsub={true}
221
228
  queryParams={queryParams}
229
+ {...componentCompositionProps}
222
230
  />
223
231
  );
224
232
  }
@@ -3,6 +3,7 @@ import { ComponentModel } from '@teambit/component';
3
3
  import { EmptyStateSlot } from './compositions.ui.runtime';
4
4
  import { Composition } from './composition';
5
5
  import type { CompositionsMenuSlot } from './compositions.ui.runtime';
6
+ import { ComponentCompositionProps } from './ui/composition-preview';
6
7
  export declare type MenuBarWidget = {
7
8
  location: 'start' | 'end';
8
9
  content: ReactNode;
@@ -17,5 +18,5 @@ export declare type CompositionContentProps = {
17
18
  selected?: Composition;
18
19
  queryParams?: string | string[];
19
20
  emptyState?: EmptyStateSlot;
20
- };
21
- export declare function CompositionContent({ component, selected, queryParams, emptyState }: CompositionContentProps): JSX.Element;
21
+ } & ComponentCompositionProps;
22
+ export declare function CompositionContent({ component, selected, queryParams, emptyState, ...componentCompositionProps }: CompositionContentProps): JSX.Element;
@@ -9,6 +9,20 @@ Object.defineProperty(exports, "__esModule", {
9
9
  });
10
10
  exports.CompositionContent = CompositionContent;
11
11
  exports.Compositions = Compositions;
12
+ function _extends2() {
13
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
14
+ _extends2 = function () {
15
+ return data;
16
+ };
17
+ return data;
18
+ }
19
+ function _objectWithoutProperties2() {
20
+ const data = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
+ _objectWithoutProperties2 = function () {
22
+ return data;
23
+ };
24
+ return data;
25
+ }
12
26
  function _react() {
13
27
  const data = _interopRequireWildcard(require("react"));
14
28
  _react = function () {
@@ -308,13 +322,15 @@ function Compositions({
308
322
  showListView: true
309
323
  }) : /*#__PURE__*/_react().default.createElement("div", null)))))));
310
324
  }
311
- function CompositionContent({
312
- component,
313
- selected,
314
- queryParams,
315
- emptyState
316
- }) {
325
+ function CompositionContent(_ref) {
317
326
  var _component$environmen;
327
+ let {
328
+ component,
329
+ selected,
330
+ queryParams,
331
+ emptyState
332
+ } = _ref,
333
+ componentCompositionProps = (0, _objectWithoutProperties2().default)(_ref, ["component", "selected", "queryParams", "emptyState"]);
318
334
  const env = (_component$environmen = component.environment) === null || _component$environmen === void 0 ? void 0 : _component$environmen.id;
319
335
  const EmptyStateTemplate = emptyState === null || emptyState === void 0 ? void 0 : emptyState.get(env || ''); // || defaultTemplate;
320
336
 
@@ -350,7 +366,7 @@ function CompositionContent({
350
366
  link: `https://bit.dev/docs/dev-services-overview/compositions/compositions-overview`
351
367
  });
352
368
  }
353
- return /*#__PURE__*/_react().default.createElement(_ui().ComponentComposition, {
369
+ return /*#__PURE__*/_react().default.createElement(_ui().ComponentComposition, (0, _extends2().default)({
354
370
  className: _compositionsModule().default.compositionsIframe
355
371
  // TODO: Oded to add control for viewport.
356
372
  ,
@@ -361,7 +377,7 @@ function CompositionContent({
361
377
  fullContentHeight: true,
362
378
  pubsub: true,
363
379
  queryParams: queryParams
364
- });
380
+ }, componentCompositionProps));
365
381
  }
366
382
 
367
383
  //# sourceMappingURL=compositions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Compositions","menuBarWidgets","emptyState","component","useContext","ComponentContext","params","useParams","navigate","useNavigate","location","useLocation","currentCompositionName","currentComposition","compositions","find","composition","identifier","toLowerCase","head","selectedRef","useRef","current","properties","useDocs","id","isMobile","useIsMobile","showSidebar","length","isSidebarOpen","setSidebarOpenness","useState","sidebarOpenness","Layout","row","left","compositionUrl","toPreviewUrl","isScaling","preview","compositionIdentifierParam","currentCompositionFullUrl","compositionParams","setCompositionParams","queryParams","useMemo","queryString","stringify","useEffect","styles","compositionsPage","menuBar","openInNewTab","splitter","e","stopPropagation","x","collapser","right","tabsContainer","tabs","tabContent","pathname","includes","path","replace","nextPath","concat","compost","CompositionContent","selected","env","environment","EmptyStateTemplate","get","host","noCompositionsPage","title","separator","buildStatus","buildStatusMessage","compositionsIframe"],"sources":["compositions.tsx"],"sourcesContent":["import React, { useContext, useEffect, useState, useMemo, useRef, ReactNode } from 'react';\nimport { useParams } from 'react-router-dom';\nimport head from 'lodash.head';\nimport queryString from 'query-string';\nimport { ThemeContext } from '@teambit/documenter.theme.theme-context';\nimport { SplitPane, Pane, Layout } from '@teambit/base-ui.surfaces.split-pane.split-pane';\nimport { HoverSplitter } from '@teambit/base-ui.surfaces.split-pane.hover-splitter';\nimport { ComponentContext, ComponentModel } from '@teambit/component';\nimport { PropTable } from '@teambit/documenter.ui.property-table';\nimport { Tab, TabContainer, TabList, TabPanel } from '@teambit/panels';\nimport { useDocs } from '@teambit/docs.ui.queries.get-docs';\nimport { Collapser } from '@teambit/ui-foundation.ui.buttons.collapser';\nimport { EmptyBox } from '@teambit/design.ui.empty-box';\nimport { toPreviewUrl } from '@teambit/preview.ui.component-preview';\nimport { useIsMobile } from '@teambit/ui-foundation.ui.hooks.use-is-mobile';\nimport { CompositionsMenuBar } from '@teambit/compositions.ui.compositions-menu-bar';\nimport { CompositionContextProvider } from '@teambit/compositions.ui.hooks.use-composition';\nimport { MDXLayout } from '@teambit/mdx.ui.mdx-layout';\nimport { Separator } from '@teambit/design.ui.separator';\nimport { H1 } from '@teambit/documenter.ui.heading';\nimport { AlertCard } from '@teambit/design.ui.alert-card';\nimport { Link, useNavigate, useLocation } from '@teambit/base-react.navigation.link';\nimport { OptionButton } from '@teambit/design.ui.input.option-button';\nimport { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';\nimport { EmptyStateSlot } from './compositions.ui.runtime';\nimport { Composition } from './composition';\nimport styles from './compositions.module.scss';\nimport { ComponentComposition } from './ui';\nimport { CompositionsPanel } from './ui/compositions-panel/compositions-panel';\nimport type { CompositionsMenuSlot } from './compositions.ui.runtime';\n\nexport type MenuBarWidget = {\n location: 'start' | 'end';\n content: ReactNode;\n};\nexport type CompositionsProp = { menuBarWidgets?: CompositionsMenuSlot; emptyState?: EmptyStateSlot };\n\nexport function Compositions({ menuBarWidgets, emptyState }: CompositionsProp) {\n const component = useContext(ComponentContext);\n // const [searchParams, setSearchParams] = useSearchParams();\n const params = useParams();\n const navigate = useNavigate();\n const location = useLocation();\n const currentCompositionName = params['*'];\n // console.log(routes);\n const currentComposition =\n component.compositions.find((composition) => composition.identifier.toLowerCase() === currentCompositionName) ||\n head(component.compositions);\n // const [selected, selectComposition] = useState(head(component.compositions));\n const selectedRef = useRef(currentComposition);\n selectedRef.current = currentComposition;\n\n const properties = useDocs(component.id);\n\n // reset selected composition when component changes.\n // this does trigger renderer, but perf seems to be ok\n // useEffect(() => {\n // const prevId = selectedRef.current?.identifier;\n // const next = component.compositions.find((c) => c.identifier === prevId) || component.compositions[0];\n\n // navigate(next.displayName.toLowerCase().replaceAll(' ', '-'));\n // }, [component]);\n const isMobile = useIsMobile();\n const showSidebar = !isMobile && component.compositions.length > 0;\n const [isSidebarOpen, setSidebarOpenness] = useState(showSidebar);\n\n const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.left;\n\n const compositionUrl = toPreviewUrl(component, 'compositions');\n const isScaling = component?.preview?.isScaling;\n const compositionIdentifierParam = isScaling\n ? `name=${currentComposition?.identifier}`\n : currentComposition?.identifier;\n const currentCompositionFullUrl = toPreviewUrl(component, 'compositions', compositionIdentifierParam);\n\n const [compositionParams, setCompositionParams] = useState<Record<string, any>>({});\n const queryParams = useMemo(() => queryString.stringify(compositionParams), [compositionParams]);\n\n // collapse sidebar when empty, reopen when not\n useEffect(() => setSidebarOpenness(showSidebar), [showSidebar]);\n return (\n <CompositionContextProvider queryParams={compositionParams} setQueryParams={setCompositionParams}>\n <SplitPane layout={sidebarOpenness} size=\"85%\" className={styles.compositionsPage}>\n <Pane className={styles.left}>\n <CompositionsMenuBar menuBarWidgets={menuBarWidgets} className={styles.menuBar}>\n <Link external href={currentCompositionFullUrl} className={styles.openInNewTab}>\n <OptionButton icon=\"open-tab\" />\n </Link>\n </CompositionsMenuBar>\n <CompositionContent\n emptyState={emptyState}\n component={component}\n selected={currentComposition}\n queryParams={queryParams}\n />\n </Pane>\n <HoverSplitter className={styles.splitter}>\n <Collapser\n placement=\"left\"\n isOpen={isSidebarOpen}\n onMouseDown={(e) => e.stopPropagation()} // avoid split-pane drag\n onClick={() => setSidebarOpenness((x) => !x)}\n tooltipContent={`${isSidebarOpen ? 'Hide' : 'Show'} side compositions`}\n className={styles.collapser}\n />\n </HoverSplitter>\n <Pane className={styles.right}>\n <ThemeContext>\n <TabContainer className={styles.tabsContainer}>\n <TabList className={styles.tabs}>\n <Tab>compositions</Tab>\n <Tab>properties</Tab>\n </TabList>\n <TabPanel className={styles.tabContent}>\n <CompositionsPanel\n isScaling={isScaling}\n onSelectComposition={(composition) => {\n if (!currentComposition || !location) return;\n if (location.pathname.includes(currentComposition.identifier.toLowerCase())) {\n navigate(composition.identifier.toLowerCase());\n return;\n }\n\n const path = location.pathname.replace(\n currentComposition.identifier.toLowerCase(),\n composition.identifier.toLowerCase()\n );\n\n if (!path) return;\n if (!path.includes(composition.identifier.toLowerCase())) {\n const nextPath = location.pathname.concat(`/${composition.identifier.toLowerCase()}`);\n navigate(nextPath);\n return;\n }\n navigate(path);\n }}\n url={compositionUrl}\n compositions={component.compositions}\n active={currentComposition}\n className={styles.compost}\n />\n </TabPanel>\n <TabPanel className={styles.tabContent}>\n {properties && properties.length > 0 ? <PropTable rows={properties} showListView /> : <div />}\n </TabPanel>\n </TabContainer>\n </ThemeContext>\n </Pane>\n </SplitPane>\n </CompositionContextProvider>\n );\n}\n\nexport type CompositionContentProps = {\n component: ComponentModel;\n selected?: Composition;\n queryParams?: string | string[];\n emptyState?: EmptyStateSlot;\n};\n\nexport function CompositionContent({ component, selected, queryParams, emptyState }: CompositionContentProps) {\n const env = component.environment?.id;\n const EmptyStateTemplate = emptyState?.get(env || ''); // || defaultTemplate;\n\n if (component.compositions.length === 0 && component.host === 'teambit.workspace/workspace' && EmptyStateTemplate) {\n return (\n <div className={styles.noCompositionsPage}>\n <div>\n <H1 className={styles.title}>Compositions</H1>\n <Separator isPresentational className={styles.separator} />\n <AlertCard\n level=\"info\"\n title=\"There are no\n compositions for this Component. Learn how to add compositions:\"\n >\n <MDXLayout>\n <EmptyStateTemplate />\n </MDXLayout>\n </AlertCard>\n </div>\n </div>\n );\n }\n\n if (component?.buildStatus === 'pending' && component?.host === 'teambit.scope/scope')\n return (\n <StatusMessageCard className={styles.buildStatusMessage} status=\"PROCESSING\" title=\"component preview pending\">\n this might take some time\n </StatusMessageCard>\n );\n if (component?.buildStatus === 'failed' && component?.host === 'teambit.scope/scope')\n return (\n <StatusMessageCard\n className={styles.buildStatusMessage}\n status=\"FAILURE\"\n title=\"failed to get component preview \"\n ></StatusMessageCard>\n );\n\n // TODO: get the docs domain from the community aspect and pass it here as a prop\n if (component.compositions.length === 0) {\n return (\n <EmptyBox\n title=\"There are no compositions for this component.\"\n linkText=\"Learn how to create compositions\"\n link={`https://bit.dev/docs/dev-services-overview/compositions/compositions-overview`}\n />\n );\n }\n\n return (\n <ComponentComposition\n className={styles.compositionsIframe}\n // TODO: Oded to add control for viewport.\n viewport={null}\n component={component}\n forceHeight=\"100%\"\n composition={selected}\n fullContentHeight\n pubsub={true}\n queryParams={queryParams}\n />\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["Compositions","menuBarWidgets","emptyState","component","useContext","ComponentContext","params","useParams","navigate","useNavigate","location","useLocation","currentCompositionName","currentComposition","compositions","find","composition","identifier","toLowerCase","head","selectedRef","useRef","current","properties","useDocs","id","isMobile","useIsMobile","showSidebar","length","isSidebarOpen","setSidebarOpenness","useState","sidebarOpenness","Layout","row","left","compositionUrl","toPreviewUrl","isScaling","preview","compositionIdentifierParam","currentCompositionFullUrl","compositionParams","setCompositionParams","queryParams","useMemo","queryString","stringify","useEffect","styles","compositionsPage","menuBar","openInNewTab","splitter","e","stopPropagation","x","collapser","right","tabsContainer","tabs","tabContent","pathname","includes","path","replace","nextPath","concat","compost","CompositionContent","selected","componentCompositionProps","env","environment","EmptyStateTemplate","get","host","noCompositionsPage","title","separator","buildStatus","buildStatusMessage","compositionsIframe"],"sources":["compositions.tsx"],"sourcesContent":["import React, { useContext, useEffect, useState, useMemo, useRef, ReactNode } from 'react';\nimport { useParams } from 'react-router-dom';\nimport head from 'lodash.head';\nimport queryString from 'query-string';\nimport { ThemeContext } from '@teambit/documenter.theme.theme-context';\nimport { SplitPane, Pane, Layout } from '@teambit/base-ui.surfaces.split-pane.split-pane';\nimport { HoverSplitter } from '@teambit/base-ui.surfaces.split-pane.hover-splitter';\nimport { ComponentContext, ComponentModel } from '@teambit/component';\nimport { PropTable } from '@teambit/documenter.ui.property-table';\nimport { Tab, TabContainer, TabList, TabPanel } from '@teambit/panels';\nimport { useDocs } from '@teambit/docs.ui.queries.get-docs';\nimport { Collapser } from '@teambit/ui-foundation.ui.buttons.collapser';\nimport { EmptyBox } from '@teambit/design.ui.empty-box';\nimport { toPreviewUrl } from '@teambit/preview.ui.component-preview';\nimport { useIsMobile } from '@teambit/ui-foundation.ui.hooks.use-is-mobile';\nimport { CompositionsMenuBar } from '@teambit/compositions.ui.compositions-menu-bar';\nimport { CompositionContextProvider } from '@teambit/compositions.ui.hooks.use-composition';\nimport { MDXLayout } from '@teambit/mdx.ui.mdx-layout';\nimport { Separator } from '@teambit/design.ui.separator';\nimport { H1 } from '@teambit/documenter.ui.heading';\nimport { AlertCard } from '@teambit/design.ui.alert-card';\nimport { Link, useNavigate, useLocation } from '@teambit/base-react.navigation.link';\nimport { OptionButton } from '@teambit/design.ui.input.option-button';\nimport { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';\nimport { EmptyStateSlot } from './compositions.ui.runtime';\nimport { Composition } from './composition';\nimport styles from './compositions.module.scss';\nimport { ComponentComposition } from './ui';\nimport { CompositionsPanel } from './ui/compositions-panel/compositions-panel';\nimport type { CompositionsMenuSlot } from './compositions.ui.runtime';\nimport { ComponentCompositionProps } from './ui/composition-preview';\n\nexport type MenuBarWidget = {\n location: 'start' | 'end';\n content: ReactNode;\n};\nexport type CompositionsProp = { menuBarWidgets?: CompositionsMenuSlot; emptyState?: EmptyStateSlot };\n\nexport function Compositions({ menuBarWidgets, emptyState }: CompositionsProp) {\n const component = useContext(ComponentContext);\n // const [searchParams, setSearchParams] = useSearchParams();\n const params = useParams();\n const navigate = useNavigate();\n const location = useLocation();\n const currentCompositionName = params['*'];\n // console.log(routes);\n const currentComposition =\n component.compositions.find((composition) => composition.identifier.toLowerCase() === currentCompositionName) ||\n head(component.compositions);\n // const [selected, selectComposition] = useState(head(component.compositions));\n const selectedRef = useRef(currentComposition);\n selectedRef.current = currentComposition;\n\n const properties = useDocs(component.id);\n\n // reset selected composition when component changes.\n // this does trigger renderer, but perf seems to be ok\n // useEffect(() => {\n // const prevId = selectedRef.current?.identifier;\n // const next = component.compositions.find((c) => c.identifier === prevId) || component.compositions[0];\n\n // navigate(next.displayName.toLowerCase().replaceAll(' ', '-'));\n // }, [component]);\n const isMobile = useIsMobile();\n const showSidebar = !isMobile && component.compositions.length > 0;\n const [isSidebarOpen, setSidebarOpenness] = useState(showSidebar);\n\n const sidebarOpenness = isSidebarOpen ? Layout.row : Layout.left;\n\n const compositionUrl = toPreviewUrl(component, 'compositions');\n const isScaling = component?.preview?.isScaling;\n const compositionIdentifierParam = isScaling\n ? `name=${currentComposition?.identifier}`\n : currentComposition?.identifier;\n const currentCompositionFullUrl = toPreviewUrl(component, 'compositions', compositionIdentifierParam);\n\n const [compositionParams, setCompositionParams] = useState<Record<string, any>>({});\n const queryParams = useMemo(() => queryString.stringify(compositionParams), [compositionParams]);\n\n // collapse sidebar when empty, reopen when not\n useEffect(() => setSidebarOpenness(showSidebar), [showSidebar]);\n return (\n <CompositionContextProvider queryParams={compositionParams} setQueryParams={setCompositionParams}>\n <SplitPane layout={sidebarOpenness} size=\"85%\" className={styles.compositionsPage}>\n <Pane className={styles.left}>\n <CompositionsMenuBar menuBarWidgets={menuBarWidgets} className={styles.menuBar}>\n <Link external href={currentCompositionFullUrl} className={styles.openInNewTab}>\n <OptionButton icon=\"open-tab\" />\n </Link>\n </CompositionsMenuBar>\n <CompositionContent\n emptyState={emptyState}\n component={component}\n selected={currentComposition}\n queryParams={queryParams}\n />\n </Pane>\n <HoverSplitter className={styles.splitter}>\n <Collapser\n placement=\"left\"\n isOpen={isSidebarOpen}\n onMouseDown={(e) => e.stopPropagation()} // avoid split-pane drag\n onClick={() => setSidebarOpenness((x) => !x)}\n tooltipContent={`${isSidebarOpen ? 'Hide' : 'Show'} side compositions`}\n className={styles.collapser}\n />\n </HoverSplitter>\n <Pane className={styles.right}>\n <ThemeContext>\n <TabContainer className={styles.tabsContainer}>\n <TabList className={styles.tabs}>\n <Tab>compositions</Tab>\n <Tab>properties</Tab>\n </TabList>\n <TabPanel className={styles.tabContent}>\n <CompositionsPanel\n isScaling={isScaling}\n onSelectComposition={(composition) => {\n if (!currentComposition || !location) return;\n if (location.pathname.includes(currentComposition.identifier.toLowerCase())) {\n navigate(composition.identifier.toLowerCase());\n return;\n }\n\n const path = location.pathname.replace(\n currentComposition.identifier.toLowerCase(),\n composition.identifier.toLowerCase()\n );\n\n if (!path) return;\n if (!path.includes(composition.identifier.toLowerCase())) {\n const nextPath = location.pathname.concat(`/${composition.identifier.toLowerCase()}`);\n navigate(nextPath);\n return;\n }\n navigate(path);\n }}\n url={compositionUrl}\n compositions={component.compositions}\n active={currentComposition}\n className={styles.compost}\n />\n </TabPanel>\n <TabPanel className={styles.tabContent}>\n {properties && properties.length > 0 ? <PropTable rows={properties} showListView /> : <div />}\n </TabPanel>\n </TabContainer>\n </ThemeContext>\n </Pane>\n </SplitPane>\n </CompositionContextProvider>\n );\n}\n\nexport type CompositionContentProps = {\n component: ComponentModel;\n selected?: Composition;\n queryParams?: string | string[];\n emptyState?: EmptyStateSlot;\n} & ComponentCompositionProps;\n\nexport function CompositionContent({\n component,\n selected,\n queryParams,\n emptyState,\n ...componentCompositionProps\n}: CompositionContentProps) {\n const env = component.environment?.id;\n const EmptyStateTemplate = emptyState?.get(env || ''); // || defaultTemplate;\n\n if (component.compositions.length === 0 && component.host === 'teambit.workspace/workspace' && EmptyStateTemplate) {\n return (\n <div className={styles.noCompositionsPage}>\n <div>\n <H1 className={styles.title}>Compositions</H1>\n <Separator isPresentational className={styles.separator} />\n <AlertCard\n level=\"info\"\n title=\"There are no\n compositions for this Component. Learn how to add compositions:\"\n >\n <MDXLayout>\n <EmptyStateTemplate />\n </MDXLayout>\n </AlertCard>\n </div>\n </div>\n );\n }\n\n if (component?.buildStatus === 'pending' && component?.host === 'teambit.scope/scope')\n return (\n <StatusMessageCard className={styles.buildStatusMessage} status=\"PROCESSING\" title=\"component preview pending\">\n this might take some time\n </StatusMessageCard>\n );\n if (component?.buildStatus === 'failed' && component?.host === 'teambit.scope/scope')\n return (\n <StatusMessageCard\n className={styles.buildStatusMessage}\n status=\"FAILURE\"\n title=\"failed to get component preview \"\n ></StatusMessageCard>\n );\n\n // TODO: get the docs domain from the community aspect and pass it here as a prop\n if (component.compositions.length === 0) {\n return (\n <EmptyBox\n title=\"There are no compositions for this component.\"\n linkText=\"Learn how to create compositions\"\n link={`https://bit.dev/docs/dev-services-overview/compositions/compositions-overview`}\n />\n );\n }\n\n return (\n <ComponentComposition\n className={styles.compositionsIframe}\n // TODO: Oded to add control for viewport.\n viewport={null}\n component={component}\n forceHeight=\"100%\"\n composition={selected}\n fullContentHeight\n pubsub={true}\n queryParams={queryParams}\n {...componentCompositionProps}\n />\n );\n}\n"],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.compositions_compositions@0.0.1022/dist/compositions.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.compositions_compositions@0.0.1022/dist/compositions.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.compositions_compositions@0.0.1024/dist/compositions.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.compositions_compositions@0.0.1024/dist/compositions.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/compositions",
3
- "version": "0.0.1022",
3
+ "version": "0.0.1024",
4
4
  "homepage": "https://bit.dev/teambit/compositions/compositions",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.compositions",
8
8
  "name": "compositions",
9
- "version": "0.0.1022"
9
+ "version": "0.0.1024"
10
10
  },
11
11
  "dependencies": {
12
12
  "graphql-tag": "2.12.1",
@@ -26,16 +26,16 @@
26
26
  "@teambit/documenter.ui.heading": "4.1.1",
27
27
  "@teambit/documenter.ui.property-table": "4.1.3",
28
28
  "@teambit/evangelist.elements.icon": "1.0.2",
29
- "@teambit/component": "0.0.1022",
29
+ "@teambit/component": "0.0.1024",
30
30
  "@teambit/compositions.model.composition-id": "0.0.496",
31
- "@teambit/graphql": "0.0.1022",
32
- "@teambit/cli": "0.0.685",
33
- "@teambit/dev-files": "0.0.1022",
34
- "@teambit/envs": "0.0.1022",
35
- "@teambit/preview": "0.0.1022",
36
- "@teambit/schema": "0.0.1022",
31
+ "@teambit/graphql": "0.0.1024",
32
+ "@teambit/cli": "0.0.687",
33
+ "@teambit/dev-files": "0.0.1024",
34
+ "@teambit/envs": "0.0.1024",
35
+ "@teambit/preview": "0.0.1024",
36
+ "@teambit/schema": "0.0.1024",
37
37
  "@teambit/toolbox.path.match-patterns": "0.0.9",
38
- "@teambit/workspace": "0.0.1022",
38
+ "@teambit/workspace": "0.0.1024",
39
39
  "@teambit/ui-foundation.ui.constants.z-indexes": "0.0.498",
40
40
  "@teambit/component-id": "0.0.427",
41
41
  "@teambit/compositions.ui.compositions-menu-bar": "0.0.172",
@@ -45,14 +45,14 @@
45
45
  "@teambit/design.ui.surfaces.status-message-card": "0.0.18",
46
46
  "@teambit/docs.ui.queries.get-docs": "0.0.498",
47
47
  "@teambit/mdx.ui.mdx-layout": "0.0.513",
48
- "@teambit/panels": "0.0.686",
49
- "@teambit/preview.ui.component-preview": "0.0.516",
48
+ "@teambit/panels": "0.0.688",
49
+ "@teambit/preview.ui.component-preview": "0.0.517",
50
50
  "@teambit/ui-foundation.ui.buttons.collapser": "0.0.206",
51
51
  "@teambit/ui-foundation.ui.hooks.use-is-mobile": "0.0.188",
52
- "@teambit/component-compare": "0.0.270",
52
+ "@teambit/component-compare": "0.0.272",
53
53
  "@teambit/compositions.ui.composition-compare-section": "0.0.5",
54
- "@teambit/compositions.ui.composition-compare": "0.0.157",
55
- "@teambit/ui": "0.0.1022"
54
+ "@teambit/compositions.ui.composition-compare": "0.0.159",
55
+ "@teambit/ui": "0.0.1024"
56
56
  },
57
57
  "devDependencies": {
58
58
  "@types/react": "^17.0.8",
@@ -68,7 +68,7 @@
68
68
  },
69
69
  "peerDependencies": {
70
70
  "react-router-dom": "^6.0.0",
71
- "@teambit/legacy": "1.0.465",
71
+ "@teambit/legacy": "1.0.467",
72
72
  "react": "^16.8.0 || ^17.0.0",
73
73
  "react-dom": "^16.8.0 || ^17.0.0"
74
74
  },