@teambit/docs 1.0.1033 → 1.0.1034

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.
@@ -40,6 +40,13 @@ function _previewUi() {
40
40
  };
41
41
  return data;
42
42
  }
43
+ function _designUiSurfaces() {
44
+ const data = require("@teambit/design.ui.surfaces.status-message-card");
45
+ _designUiSurfaces = function () {
46
+ return data;
47
+ };
48
+ return data;
49
+ }
43
50
  function _componentUi() {
44
51
  const data = require("@teambit/component.ui.component-meta");
45
52
  _componentUi = function () {
@@ -79,7 +86,6 @@ const _excluded = ["onLoad", "style"];
79
86
  /* eslint-disable complexity */
80
87
  // import { Icon } from '@teambit/design.elements.icon';
81
88
  // import { LinkedHeading } from '@teambit/documenter.ui.linked-heading';
82
- // import { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';
83
89
  function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
84
90
  function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
85
91
  function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
@@ -207,7 +213,28 @@ function Overview({
207
213
  }
208
214
  })))), component.preview?.onlyOverview && !isLoading && TaggedAPI && /*#__PURE__*/_react().default.createElement(TaggedAPI, {
209
215
  componentId: component.id.toString()
210
- })), buildFailed && EmptyState && /*#__PURE__*/_react().default.createElement(EmptyState, null));
216
+ })), buildFailed && (EmptyState ? /*#__PURE__*/_react().default.createElement(EmptyState, null) : /*#__PURE__*/_react().default.createElement("div", {
217
+ className: _overviewModule().default.buildFailed
218
+ }, /*#__PURE__*/_react().default.createElement(BuildStatusMessage, {
219
+ buildStatus: component.buildStatus
220
+ }))));
221
+ }
222
+
223
+ // default overview content when the preview can't be shown (e.g. the build failed or is still
224
+ // pending). a registered empty state takes precedence over this.
225
+ function BuildStatusMessage({
226
+ buildStatus
227
+ }) {
228
+ if (buildStatus?.toLowerCase() === 'pending') {
229
+ return /*#__PURE__*/_react().default.createElement(_designUiSurfaces().StatusMessageCard, {
230
+ status: "PROCESSING",
231
+ title: "component preview pending"
232
+ }, "this might take some time");
233
+ }
234
+ return /*#__PURE__*/_react().default.createElement(_designUiSurfaces().StatusMessageCard, {
235
+ status: "FAILURE",
236
+ title: "failed to get component preview"
237
+ });
211
238
  }
212
239
 
213
240
  //# sourceMappingURL=overview.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_lodash","_component","_previewUi","_componentUi","_compositionsPanels","_workspaceUi","_readmeSkeleton","_overviewModule","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","BadgePosition","exports","Overview","titleBadges","overviewOptions","previewProps","getEmptyState","TaggedAPI","usePreviewSandboxSlot","usePreviewPropsSlot","component","useContext","ComponentContext","componentDescriptor","useComponentDescriptor","overviewProps","flatten","values","showHeader","preview","legacyHeader","EmptyState","buildFailed","buildStatus","toLowerCase","host","isScaling","Boolean","includesEnvTemplate","defaultLoadingState","React","useMemo","isMinimal","useWorkspaceMode","isLoading","setLoading","useState","previewSandboxHooks","previewPropsHooks","sandboxValue","setSandboxValue","iframeQueryParams","onlyOverview","skipIncludes","overviewPropsValues","renderCompositionsFirst","defaultPkgManager","_ref","onLoad","style","rest","onPreviewLoad","useCallback","props","useEffect","id","toString","createElement","className","classNames","styles","overviewWrapper","noOverflow","key","SandboxPermissionsAggregator","hooks","onSandboxChange","ComponentOverview","componentOverviewBlock","legacyPreview","displayName","version","abstract","description","labels","packageName","pkgManager","readme","ReadmeSkeleton","CompositionGallerySkeleton","compositionsLength","Math","min","compositions","PreviewPropsAggregator","previewAttrs","Fragment","ComponentPreview","previewName","pubsub","queryParams","viewport","fullContentHeight","disableScroll","sandbox","width","height","minHeight","undefined","CompositionGallery","propagateError","componentId"],"sources":["overview.tsx"],"sourcesContent":["/* eslint-disable complexity */\nimport type { ComponentType } from 'react';\nimport React, { useContext, useState } from 'react';\nimport classNames from 'classnames';\nimport { flatten } from 'lodash';\n// import { Icon } from '@teambit/design.elements.icon';\n// import { LinkedHeading } from '@teambit/documenter.ui.linked-heading';\nimport { ComponentContext, useComponentDescriptor } from '@teambit/component';\nimport type { SlotRegistry } from '@teambit/harmony';\nimport type { ComponentPreviewProps } from '@teambit/preview.ui.component-preview';\nimport {\n ComponentPreview,\n PreviewPropsAggregator,\n SandboxPermissionsAggregator,\n} from '@teambit/preview.ui.component-preview';\n// import { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';\nimport { ComponentOverview } from '@teambit/component.ui.component-meta';\nimport { CompositionGallery, CompositionGallerySkeleton } from '@teambit/compositions.panels.composition-gallery';\nimport { useWorkspaceMode } from '@teambit/workspace.ui.use-workspace-mode';\nimport type { UsePreviewSandboxSlot } from '@teambit/compositions';\nimport type { UsePreviewPropsSlot } from '../docs.ui.runtime';\nimport { ReadmeSkeleton } from './readme-skeleton';\nimport styles from './overview.module.scss';\n\nexport enum BadgePosition {\n Title,\n SubTitle,\n Labels,\n Package,\n}\n\nexport type TitleBadge = {\n component: ComponentType<any>;\n weight?: number;\n position?: BadgePosition;\n};\n\nexport type TitleBadgeSlot = SlotRegistry<TitleBadge[]>;\n\nexport type OverviewOptions = () => {\n queryParams?: string;\n renderCompositionsFirst?: boolean;\n defaultPkgManager?: 'npm' | 'yarn' | 'pnpm' | 'bit';\n};\n\nexport type OverviewOptionsSlot = SlotRegistry<OverviewOptions>;\n\nexport type OverviewProps = {\n titleBadges: TitleBadgeSlot;\n overviewOptions: OverviewOptionsSlot;\n previewProps?: Partial<ComponentPreviewProps>;\n getEmptyState?: () => ComponentType | undefined;\n TaggedAPI?: React.ComponentType<{ componentId: string }>;\n usePreviewSandboxSlot?: UsePreviewSandboxSlot;\n /**\n * per-component resolvers for iframe attributes on the overview preview (`allow`,\n * `referrerPolicy`, ...). Each resolver gets the current `ComponentModel`; results merge\n * with later registrations winning.\n */\n usePreviewPropsSlot?: UsePreviewPropsSlot;\n};\n\nexport function Overview({\n titleBadges,\n overviewOptions,\n previewProps,\n getEmptyState,\n TaggedAPI,\n usePreviewSandboxSlot,\n usePreviewPropsSlot,\n}: OverviewProps) {\n const component = useContext(ComponentContext);\n const componentDescriptor = useComponentDescriptor();\n const overviewProps = flatten(overviewOptions.values())[0];\n const showHeader = !component.preview?.legacyHeader;\n const EmptyState = getEmptyState && getEmptyState();\n const buildFailed = component.buildStatus?.toLowerCase() !== 'succeed' && component?.host === 'teambit.scope/scope';\n const isScaling = Boolean(component.preview?.isScaling);\n const includesEnvTemplate = Boolean(component.preview?.includesEnvTemplate);\n const defaultLoadingState = React.useMemo(() => {\n return isScaling && !includesEnvTemplate;\n }, [isScaling, includesEnvTemplate]);\n const { isMinimal } = useWorkspaceMode();\n const [isLoading, setLoading] = useState(defaultLoadingState);\n const previewSandboxHooks = usePreviewSandboxSlot?.values() ?? [];\n const previewPropsHooks = usePreviewPropsSlot?.values() ?? [];\n const [sandboxValue, setSandboxValue] = useState('');\n const iframeQueryParams = `onlyOverview=${component.preview?.onlyOverview || 'false'}&skipIncludes=${\n component.preview?.skipIncludes || component.preview?.onlyOverview\n }`;\n\n const overviewPropsValues = overviewProps && overviewProps();\n\n const { renderCompositionsFirst, defaultPkgManager } = overviewPropsValues || {};\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { onLoad, style, ...rest } = previewProps || {};\n\n const onPreviewLoad = React.useCallback(\n (e, props) => {\n setLoading(false);\n onLoad?.(e, props);\n },\n [onLoad]\n );\n\n React.useEffect(() => {\n if (!isLoading && defaultLoadingState) setLoading(true);\n if (isLoading && !defaultLoadingState) setLoading(false);\n }, [component.id.toString(), defaultLoadingState]);\n\n return (\n <div\n className={classNames(styles.overviewWrapper, isLoading && styles.noOverflow)}\n key={`${component.id.toString()}`}\n >\n <SandboxPermissionsAggregator\n hooks={previewSandboxHooks}\n onSandboxChange={setSandboxValue}\n component={component}\n />\n {showHeader && (\n <ComponentOverview\n className={classNames(styles.componentOverviewBlock, !isScaling && styles.legacyPreview)}\n displayName={component.displayName}\n version={component.version}\n abstract={component.description}\n labels={component.labels}\n packageName={component.packageName}\n titleBadges={flatten(titleBadges.values())}\n componentDescriptor={componentDescriptor}\n component={component}\n pkgManager={defaultPkgManager}\n />\n )}\n {!buildFailed && (\n <div className={styles.readme}>\n {isLoading && (\n <ReadmeSkeleton>\n <CompositionGallerySkeleton compositionsLength={Math.min(component.compositions.length, 3)} />\n </ReadmeSkeleton>\n )}\n <PreviewPropsAggregator hooks={previewPropsHooks} component={component}>\n {(previewAttrs) =>\n !isMinimal && !renderCompositionsFirst ? (\n <>\n <ComponentPreview\n {...previewAttrs}\n onLoad={onPreviewLoad}\n previewName=\"overview\"\n pubsub={true}\n queryParams={[iframeQueryParams, overviewPropsValues?.queryParams || '']}\n viewport={null}\n fullContentHeight\n disableScroll={true}\n sandbox={sandboxValue}\n {...rest}\n component={component}\n style={{ width: '100%', height: '100%', minHeight: !isScaling ? 500 : undefined }}\n />\n {component.preview?.onlyOverview && !isLoading && (\n <CompositionGallery component={component} sandbox={sandboxValue} />\n )}\n </>\n ) : (\n <>\n {component.preview?.onlyOverview && !isLoading && (\n <CompositionGallery component={component} sandbox={sandboxValue} />\n )}\n <ComponentPreview\n {...previewAttrs}\n onLoad={onPreviewLoad}\n previewName=\"overview\"\n pubsub={true}\n queryParams={[iframeQueryParams, overviewPropsValues?.queryParams || '']}\n viewport={null}\n fullContentHeight\n disableScroll={true}\n propagateError={isMinimal}\n sandbox={sandboxValue}\n {...rest}\n component={component}\n style={{ width: '100%', height: '100%', minHeight: !isScaling ? 500 : undefined }}\n />\n </>\n )\n }\n </PreviewPropsAggregator>\n\n {component.preview?.onlyOverview && !isLoading && TaggedAPI && (\n <TaggedAPI componentId={component.id.toString()} />\n )}\n </div>\n )}\n {buildFailed && EmptyState && <EmptyState />}\n </div>\n );\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_react","data","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_lodash","_component","_previewUi","_designUiSurfaces","_componentUi","_compositionsPanels","_workspaceUi","_readmeSkeleton","_overviewModule","_excluded","e","__esModule","default","t","WeakMap","r","n","o","i","f","__proto__","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","BadgePosition","exports","Overview","titleBadges","overviewOptions","previewProps","getEmptyState","TaggedAPI","usePreviewSandboxSlot","usePreviewPropsSlot","component","useContext","ComponentContext","componentDescriptor","useComponentDescriptor","overviewProps","flatten","values","showHeader","preview","legacyHeader","EmptyState","buildFailed","buildStatus","toLowerCase","host","isScaling","Boolean","includesEnvTemplate","defaultLoadingState","React","useMemo","isMinimal","useWorkspaceMode","isLoading","setLoading","useState","previewSandboxHooks","previewPropsHooks","sandboxValue","setSandboxValue","iframeQueryParams","onlyOverview","skipIncludes","overviewPropsValues","renderCompositionsFirst","defaultPkgManager","_ref","onLoad","style","rest","onPreviewLoad","useCallback","props","useEffect","id","toString","createElement","className","classNames","styles","overviewWrapper","noOverflow","key","SandboxPermissionsAggregator","hooks","onSandboxChange","ComponentOverview","componentOverviewBlock","legacyPreview","displayName","version","abstract","description","labels","packageName","pkgManager","readme","ReadmeSkeleton","CompositionGallerySkeleton","compositionsLength","Math","min","compositions","PreviewPropsAggregator","previewAttrs","Fragment","ComponentPreview","previewName","pubsub","queryParams","viewport","fullContentHeight","disableScroll","sandbox","width","height","minHeight","undefined","CompositionGallery","propagateError","componentId","BuildStatusMessage","StatusMessageCard","status","title"],"sources":["overview.tsx"],"sourcesContent":["/* eslint-disable complexity */\nimport type { ComponentType } from 'react';\nimport React, { useContext, useState } from 'react';\nimport classNames from 'classnames';\nimport { flatten } from 'lodash';\n// import { Icon } from '@teambit/design.elements.icon';\n// import { LinkedHeading } from '@teambit/documenter.ui.linked-heading';\nimport { ComponentContext, useComponentDescriptor } from '@teambit/component';\nimport type { SlotRegistry } from '@teambit/harmony';\nimport type { ComponentPreviewProps } from '@teambit/preview.ui.component-preview';\nimport {\n ComponentPreview,\n PreviewPropsAggregator,\n SandboxPermissionsAggregator,\n} from '@teambit/preview.ui.component-preview';\nimport { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';\nimport { ComponentOverview } from '@teambit/component.ui.component-meta';\nimport { CompositionGallery, CompositionGallerySkeleton } from '@teambit/compositions.panels.composition-gallery';\nimport { useWorkspaceMode } from '@teambit/workspace.ui.use-workspace-mode';\nimport type { UsePreviewSandboxSlot } from '@teambit/compositions';\nimport type { UsePreviewPropsSlot } from '../docs.ui.runtime';\nimport { ReadmeSkeleton } from './readme-skeleton';\nimport styles from './overview.module.scss';\n\nexport enum BadgePosition {\n Title,\n SubTitle,\n Labels,\n Package,\n}\n\nexport type TitleBadge = {\n component: ComponentType<any>;\n weight?: number;\n position?: BadgePosition;\n};\n\nexport type TitleBadgeSlot = SlotRegistry<TitleBadge[]>;\n\nexport type OverviewOptions = () => {\n queryParams?: string;\n renderCompositionsFirst?: boolean;\n defaultPkgManager?: 'npm' | 'yarn' | 'pnpm' | 'bit';\n};\n\nexport type OverviewOptionsSlot = SlotRegistry<OverviewOptions>;\n\nexport type OverviewProps = {\n titleBadges: TitleBadgeSlot;\n overviewOptions: OverviewOptionsSlot;\n previewProps?: Partial<ComponentPreviewProps>;\n getEmptyState?: () => ComponentType | undefined;\n TaggedAPI?: React.ComponentType<{ componentId: string }>;\n usePreviewSandboxSlot?: UsePreviewSandboxSlot;\n /**\n * per-component resolvers for iframe attributes on the overview preview (`allow`,\n * `referrerPolicy`, ...). Each resolver gets the current `ComponentModel`; results merge\n * with later registrations winning.\n */\n usePreviewPropsSlot?: UsePreviewPropsSlot;\n};\n\nexport function Overview({\n titleBadges,\n overviewOptions,\n previewProps,\n getEmptyState,\n TaggedAPI,\n usePreviewSandboxSlot,\n usePreviewPropsSlot,\n}: OverviewProps) {\n const component = useContext(ComponentContext);\n const componentDescriptor = useComponentDescriptor();\n const overviewProps = flatten(overviewOptions.values())[0];\n const showHeader = !component.preview?.legacyHeader;\n const EmptyState = getEmptyState && getEmptyState();\n const buildFailed = component.buildStatus?.toLowerCase() !== 'succeed' && component?.host === 'teambit.scope/scope';\n const isScaling = Boolean(component.preview?.isScaling);\n const includesEnvTemplate = Boolean(component.preview?.includesEnvTemplate);\n const defaultLoadingState = React.useMemo(() => {\n return isScaling && !includesEnvTemplate;\n }, [isScaling, includesEnvTemplate]);\n const { isMinimal } = useWorkspaceMode();\n const [isLoading, setLoading] = useState(defaultLoadingState);\n const previewSandboxHooks = usePreviewSandboxSlot?.values() ?? [];\n const previewPropsHooks = usePreviewPropsSlot?.values() ?? [];\n const [sandboxValue, setSandboxValue] = useState('');\n const iframeQueryParams = `onlyOverview=${component.preview?.onlyOverview || 'false'}&skipIncludes=${\n component.preview?.skipIncludes || component.preview?.onlyOverview\n }`;\n\n const overviewPropsValues = overviewProps && overviewProps();\n\n const { renderCompositionsFirst, defaultPkgManager } = overviewPropsValues || {};\n\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n const { onLoad, style, ...rest } = previewProps || {};\n\n const onPreviewLoad = React.useCallback(\n (e, props) => {\n setLoading(false);\n onLoad?.(e, props);\n },\n [onLoad]\n );\n\n React.useEffect(() => {\n if (!isLoading && defaultLoadingState) setLoading(true);\n if (isLoading && !defaultLoadingState) setLoading(false);\n }, [component.id.toString(), defaultLoadingState]);\n\n return (\n <div\n className={classNames(styles.overviewWrapper, isLoading && styles.noOverflow)}\n key={`${component.id.toString()}`}\n >\n <SandboxPermissionsAggregator\n hooks={previewSandboxHooks}\n onSandboxChange={setSandboxValue}\n component={component}\n />\n {showHeader && (\n <ComponentOverview\n className={classNames(styles.componentOverviewBlock, !isScaling && styles.legacyPreview)}\n displayName={component.displayName}\n version={component.version}\n abstract={component.description}\n labels={component.labels}\n packageName={component.packageName}\n titleBadges={flatten(titleBadges.values())}\n componentDescriptor={componentDescriptor}\n component={component}\n pkgManager={defaultPkgManager}\n />\n )}\n {!buildFailed && (\n <div className={styles.readme}>\n {isLoading && (\n <ReadmeSkeleton>\n <CompositionGallerySkeleton compositionsLength={Math.min(component.compositions.length, 3)} />\n </ReadmeSkeleton>\n )}\n <PreviewPropsAggregator hooks={previewPropsHooks} component={component}>\n {(previewAttrs) =>\n !isMinimal && !renderCompositionsFirst ? (\n <>\n <ComponentPreview\n {...previewAttrs}\n onLoad={onPreviewLoad}\n previewName=\"overview\"\n pubsub={true}\n queryParams={[iframeQueryParams, overviewPropsValues?.queryParams || '']}\n viewport={null}\n fullContentHeight\n disableScroll={true}\n sandbox={sandboxValue}\n {...rest}\n component={component}\n style={{ width: '100%', height: '100%', minHeight: !isScaling ? 500 : undefined }}\n />\n {component.preview?.onlyOverview && !isLoading && (\n <CompositionGallery component={component} sandbox={sandboxValue} />\n )}\n </>\n ) : (\n <>\n {component.preview?.onlyOverview && !isLoading && (\n <CompositionGallery component={component} sandbox={sandboxValue} />\n )}\n <ComponentPreview\n {...previewAttrs}\n onLoad={onPreviewLoad}\n previewName=\"overview\"\n pubsub={true}\n queryParams={[iframeQueryParams, overviewPropsValues?.queryParams || '']}\n viewport={null}\n fullContentHeight\n disableScroll={true}\n propagateError={isMinimal}\n sandbox={sandboxValue}\n {...rest}\n component={component}\n style={{ width: '100%', height: '100%', minHeight: !isScaling ? 500 : undefined }}\n />\n </>\n )\n }\n </PreviewPropsAggregator>\n\n {component.preview?.onlyOverview && !isLoading && TaggedAPI && (\n <TaggedAPI componentId={component.id.toString()} />\n )}\n </div>\n )}\n {buildFailed &&\n (EmptyState ? (\n <EmptyState />\n ) : (\n <div className={styles.buildFailed}>\n <BuildStatusMessage buildStatus={component.buildStatus} />\n </div>\n ))}\n </div>\n );\n}\n\n// default overview content when the preview can't be shown (e.g. the build failed or is still\n// pending). a registered empty state takes precedence over this.\nfunction BuildStatusMessage({ buildStatus }: { buildStatus?: string }) {\n if (buildStatus?.toLowerCase() === 'pending') {\n return (\n <StatusMessageCard status=\"PROCESSING\" title=\"component preview pending\">\n this might take some time\n </StatusMessageCard>\n );\n }\n return <StatusMessageCard status=\"FAILURE\" title=\"failed to get component preview\" />;\n}\n"],"mappings":"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","ignoreList":[]}
@@ -6,6 +6,12 @@
6
6
  overflow: hidden;
7
7
  }
8
8
 
9
+ .buildFailed {
10
+ display: flex;
11
+ justify-content: center;
12
+ padding: 40px 24px;
13
+ }
14
+
9
15
  .componentOverviewBlock {
10
16
  padding: 50px 40px 10px 40px;
11
17
  max-width: 1440px;
@@ -1,5 +1,5 @@
1
- import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.docs_docs@1.0.1033/dist/docs.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.docs_docs@1.0.1033/dist/docs.docs.mdx';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.docs_docs@1.0.1034/dist/docs.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.docs_docs@1.0.1034/dist/docs.docs.mdx';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -6,6 +6,12 @@
6
6
  overflow: hidden;
7
7
  }
8
8
 
9
+ .buildFailed {
10
+ display: flex;
11
+ justify-content: center;
12
+ padding: 40px 24px;
13
+ }
14
+
9
15
  .componentOverviewBlock {
10
16
  padding: 50px 40px 10px 40px;
11
17
  max-width: 1440px;
@@ -13,7 +13,7 @@ import {
13
13
  PreviewPropsAggregator,
14
14
  SandboxPermissionsAggregator,
15
15
  } from '@teambit/preview.ui.component-preview';
16
- // import { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';
16
+ import { StatusMessageCard } from '@teambit/design.ui.surfaces.status-message-card';
17
17
  import { ComponentOverview } from '@teambit/component.ui.component-meta';
18
18
  import { CompositionGallery, CompositionGallerySkeleton } from '@teambit/compositions.panels.composition-gallery';
19
19
  import { useWorkspaceMode } from '@teambit/workspace.ui.use-workspace-mode';
@@ -192,7 +192,27 @@ export function Overview({
192
192
  )}
193
193
  </div>
194
194
  )}
195
- {buildFailed && EmptyState && <EmptyState />}
195
+ {buildFailed &&
196
+ (EmptyState ? (
197
+ <EmptyState />
198
+ ) : (
199
+ <div className={styles.buildFailed}>
200
+ <BuildStatusMessage buildStatus={component.buildStatus} />
201
+ </div>
202
+ ))}
196
203
  </div>
197
204
  );
198
205
  }
206
+
207
+ // default overview content when the preview can't be shown (e.g. the build failed or is still
208
+ // pending). a registered empty state takes precedence over this.
209
+ function BuildStatusMessage({ buildStatus }: { buildStatus?: string }) {
210
+ if (buildStatus?.toLowerCase() === 'pending') {
211
+ return (
212
+ <StatusMessageCard status="PROCESSING" title="component preview pending">
213
+ this might take some time
214
+ </StatusMessageCard>
215
+ );
216
+ }
217
+ return <StatusMessageCard status="FAILURE" title="failed to get component preview" />;
218
+ }
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/docs",
3
- "version": "1.0.1033",
3
+ "version": "1.0.1034",
4
4
  "homepage": "https://bit.cloud/teambit/docs/docs",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.docs",
8
8
  "name": "docs",
9
- "version": "1.0.1033"
9
+ "version": "1.0.1034"
10
10
  },
11
11
  "dependencies": {
12
12
  "graphql-tag": "2.12.1",
@@ -23,22 +23,23 @@
23
23
  "@teambit/preview.ui.component-preview": "1.0.36",
24
24
  "@teambit/component.ui.component-meta": "0.0.368",
25
25
  "@teambit/compositions.panels.composition-gallery": "0.0.227",
26
+ "@teambit/design.ui.surfaces.status-message-card": "0.0.18",
26
27
  "@teambit/workspace.ui.use-workspace-mode": "0.0.3",
27
28
  "@teambit/base-ui.loaders.skeleton": "1.0.2",
28
- "@teambit/compiler": "1.0.1033",
29
- "@teambit/component": "1.0.1033",
30
- "@teambit/pkg": "1.0.1033",
31
- "@teambit/workspace": "1.0.1033",
32
- "@teambit/dev-files": "1.0.1033",
33
- "@teambit/envs": "1.0.1033",
34
- "@teambit/graphql": "1.0.1033",
35
- "@teambit/preview": "1.0.1033",
36
- "@teambit/scope": "1.0.1033",
37
- "@teambit/api-reference": "1.0.1033",
38
- "@teambit/component-compare": "1.0.1033",
39
- "@teambit/ui": "1.0.1033",
40
- "@teambit/pubsub": "1.0.1033",
41
- "@teambit/compositions": "1.0.1033"
29
+ "@teambit/compiler": "1.0.1034",
30
+ "@teambit/component": "1.0.1034",
31
+ "@teambit/pkg": "1.0.1034",
32
+ "@teambit/workspace": "1.0.1034",
33
+ "@teambit/dev-files": "1.0.1034",
34
+ "@teambit/envs": "1.0.1034",
35
+ "@teambit/graphql": "1.0.1034",
36
+ "@teambit/preview": "1.0.1034",
37
+ "@teambit/scope": "1.0.1034",
38
+ "@teambit/api-reference": "1.0.1034",
39
+ "@teambit/component-compare": "1.0.1034",
40
+ "@teambit/ui": "1.0.1034",
41
+ "@teambit/pubsub": "1.0.1034",
42
+ "@teambit/compositions": "1.0.1034"
42
43
  },
43
44
  "devDependencies": {
44
45
  "@types/lodash": "4.14.165",