@teambit/component 1.0.281 → 1.0.283
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/artifacts/__bit_junit.xml +1 -1
- package/artifacts/preview/teambit_component_component-preview.js +1 -1
- package/artifacts/schema.json +782 -466
- package/dist/aspect.section.js +2 -2
- package/dist/aspect.section.js.map +1 -1
- package/dist/component-factory.d.ts +5 -1
- package/dist/component-factory.js.map +1 -1
- package/dist/component-fs.js +1 -1
- package/dist/component-fs.js.map +1 -1
- package/dist/component.composition.js +1 -1
- package/dist/component.composition.js.map +1 -1
- package/dist/component.d.ts +5 -0
- package/dist/component.graphql.js +2 -2
- package/dist/component.graphql.js.map +1 -1
- package/dist/component.js +10 -0
- package/dist/component.js.map +1 -1
- package/dist/component.main.runtime.d.ts +2 -1
- package/dist/component.main.runtime.js +12 -4
- package/dist/component.main.runtime.js.map +1 -1
- package/dist/component.route.js +1 -1
- package/dist/component.route.js.map +1 -1
- package/dist/component.ui.runtime.js +2 -2
- package/dist/component.ui.runtime.js.map +1 -1
- package/dist/dependencies/dependencies.js.map +1 -1
- package/dist/exceptions/could-not-find-latest.js.map +1 -1
- package/dist/exceptions/host-not-found.js.map +1 -1
- package/dist/exceptions/index.js +1 -1
- package/dist/exceptions/index.js.map +1 -1
- package/dist/exceptions/main-file-not-found.js.map +1 -1
- package/dist/host/use-component-host.js.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/{preview-1716434516635.js → preview-1716607230882.js} +2 -2
- package/dist/show/files.fragment.js +1 -1
- package/dist/show/id.fragment.js +1 -1
- package/dist/show/id.fragment.js.map +1 -1
- package/dist/show/main-file.fragment.js +1 -1
- package/dist/show/name.fragment.js +1 -1
- package/dist/show/scope.fragment.js +1 -1
- package/dist/show/show.cmd.d.ts +5 -2
- package/dist/show/show.cmd.js +31 -6
- package/dist/show/show.cmd.js.map +1 -1
- package/dist/ui/aspect-page/aspect-page.js +1 -1
- package/dist/ui/aspect-page/aspect-page.js.map +1 -1
- package/dist/ui/component-error/component-error.js +1 -1
- package/dist/ui/component-error/component-error.js.map +1 -1
- package/dist/ui/component-searcher/component-result.js +1 -1
- package/dist/ui/component-searcher/component-result.js.map +1 -1
- package/dist/ui/component-searcher/component-searcher.js +2 -2
- package/dist/ui/component-searcher/component-searcher.js.map +1 -1
- package/dist/ui/component.js +2 -2
- package/dist/ui/component.js.map +1 -1
- package/dist/ui/context/component-provider.js +1 -1
- package/dist/ui/context/component-provider.js.map +1 -1
- package/dist/ui/menu/menu-nav.js +3 -3
- package/dist/ui/menu/menu-nav.js.map +1 -1
- package/dist/ui/menu/menu.js +2 -2
- package/dist/ui/menu/menu.js.map +1 -1
- package/dist/ui/top-bar-nav/top-bar-nav.js +4 -4
- package/dist/ui/top-bar-nav/top-bar-nav.js.map +1 -1
- package/dist/ui/use-component-from-location.js.map +1 -1
- package/dist/ui/use-component-logs.js.map +1 -1
- package/dist/ui/use-component-query.js +1 -1
- package/dist/ui/use-component-query.js.map +1 -1
- package/dist/ui/use-component.fragments.js.map +1 -1
- package/dist/ui/use-component.js.map +1 -1
- package/package.json +20 -18
- package/show/show.cmd.ts +25 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_react","data","require","_uiFoundationUiHooks","_componentId","_componentDescriptor","_componentModel","_useComponent","_useComponentLogs","_componentError","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","obj","key","value","_toPropertyKey","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","useComponentQuery","componentId","host","filters","skip","idRef","useRef","current","variables","id","extensionId","error","loading","subscribeToMore","useDataQuery","GET_COMPONENT","errorPolicy","loadingLogs","componentLogs","logs","useComponentLogs","rawComponent","getHost","get","useEffect","unsubAddition","document","SUB_SUBSCRIPTION_ADDED","updateQuery","prev","subscriptionData","prevComponent","addedComponent","componentAdded","component","name","unsubChanges","SUB_COMPONENT_CHANGED","updatedComponent","componentChanged","isUpdated","ComponentID","isEqualObj","unsubRemoval","SUB_COMPONENT_REMOVED","removedIds","componentRemoved","componentIds","isRemoved","some","removedId","idDepKey","scope","version","undefined","useMemo","fromObject","componentError","ComponentError","message","ComponentModel","from","toString","componentDescriptor","aspectList","entries","aspects","map","aspectObject","aspectId","aspectData","ComponentDescriptor"],"sources":["use-component-query.ts"],"sourcesContent":["import { useMemo, useEffect, useRef } from 'react';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { ComponentID, ComponentIdObj } from '@teambit/component-id';\nimport { ComponentDescriptor } from '@teambit/component-descriptor';\nimport { ComponentModel } from './component-model';\nimport { ComponentQueryResult, Filters } from './use-component.model';\nimport {\n GET_COMPONENT,\n SUB_COMPONENT_CHANGED,\n SUB_COMPONENT_REMOVED,\n SUB_SUBSCRIPTION_ADDED,\n} from './use-component.fragments';\nimport { useComponentLogs } from './use-component-logs';\nimport { ComponentError } from './component-error';\n\n/** provides data to component ui page, making sure both variables and return value are safely typed and memoized */\nexport function useComponentQuery(\n componentId: string,\n host: string,\n filters?: Filters,\n skip?: boolean\n): ComponentQueryResult {\n const idRef = useRef(componentId);\n idRef.current = componentId;\n const variables = {\n id: componentId,\n extensionId: host,\n };\n\n const { data, error, loading, subscribeToMore } = useDataQuery(GET_COMPONENT, {\n variables,\n skip,\n errorPolicy: 'all',\n });\n\n const { loading: loadingLogs, componentLogs: { logs } = {} } = useComponentLogs(componentId, host, filters, skip);\n\n const rawComponent = data?.getHost?.get;\n\n useEffect(() => {\n // @TODO @Kutner fix subscription for scope\n if (host !== 'teambit.workspace/workspace') {\n return () => {};\n }\n\n const unsubAddition = subscribeToMore({\n document: SUB_SUBSCRIPTION_ADDED,\n updateQuery: (prev, { subscriptionData }) => {\n const prevComponent = prev?.getHost?.get;\n const addedComponent = subscriptionData?.data?.componentAdded?.component;\n\n if (!addedComponent || prevComponent) return prev;\n\n if (idRef.current === addedComponent.id.name) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: addedComponent,\n },\n };\n }\n\n return prev;\n },\n });\n\n const unsubChanges = subscribeToMore({\n document: SUB_COMPONENT_CHANGED,\n updateQuery: (prev, { subscriptionData }) => {\n if (!subscriptionData.data) return prev;\n\n const prevComponent = prev?.getHost?.get;\n const updatedComponent = subscriptionData?.data?.componentChanged?.component;\n\n const isUpdated = updatedComponent && ComponentID.isEqualObj(prevComponent?.id, updatedComponent?.id);\n\n if (isUpdated) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: updatedComponent,\n },\n };\n }\n\n return prev;\n },\n });\n\n const unsubRemoval = subscribeToMore({\n document: SUB_COMPONENT_REMOVED,\n updateQuery: (prev, { subscriptionData }) => {\n if (!subscriptionData.data) return prev;\n\n const prevComponent = prev?.getHost?.get;\n const removedIds: ComponentIdObj[] | undefined = subscriptionData?.data?.componentRemoved?.componentIds;\n if (!prevComponent || !removedIds?.length) return prev;\n\n const isRemoved = removedIds.some((removedId) => ComponentID.isEqualObj(removedId, prevComponent.id));\n\n if (isRemoved) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: null,\n },\n };\n }\n\n return prev;\n },\n });\n\n return () => {\n unsubChanges();\n unsubAddition();\n unsubRemoval();\n };\n }, []);\n\n const idDepKey = rawComponent?.id\n ? `${rawComponent?.id?.scope}/${rawComponent?.id?.name}@${rawComponent?.id?.version}}`\n : undefined;\n\n const id: ComponentID | undefined = useMemo(\n () => (rawComponent ? ComponentID.fromObject(rawComponent.id) : undefined),\n [idDepKey]\n );\n\n const componentError =\n error && !data\n ? new ComponentError(500, error.message)\n : (!rawComponent && !loading && new ComponentError(404)) || undefined;\n\n const component = useMemo(\n () => (rawComponent ? ComponentModel.from({ ...rawComponent, host, logs }) : undefined),\n [id?.toString(), logs]\n );\n\n const componentDescriptor = useMemo(() => {\n const aspectList = {\n entries: rawComponent?.aspects.map((aspectObject) => {\n return {\n ...aspectObject,\n aspectId: aspectObject.id,\n aspectData: aspectObject.data,\n };\n }),\n };\n\n return id ? ComponentDescriptor.fromObject({ id: id.toString(), aspectList }) : undefined;\n }, [id?.toString()]);\n\n return useMemo(() => {\n return {\n componentDescriptor,\n component,\n componentLogs: {\n loading: loadingLogs,\n logs,\n },\n error: componentError || undefined,\n loading,\n };\n }, [host, component, componentDescriptor, componentError]);\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,qBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,oBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,aAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,YAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,qBAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,oBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,gBAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,eAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAM,cAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,aAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMA,SAAAO,kBAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,iBAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,gBAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,eAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAmD,SAAAS,QAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,GAAAC,MAAA,CAAAC,IAAA,CAAAJ,CAAA,OAAAG,MAAA,CAAAE,qBAAA,QAAAC,CAAA,GAAAH,MAAA,CAAAE,qBAAA,CAAAL,CAAA,GAAAC,CAAA,KAAAK,CAAA,GAAAA,CAAA,CAAAC,MAAA,WAAAN,CAAA,WAAAE,MAAA,CAAAK,wBAAA,CAAAR,CAAA,EAAAC,CAAA,EAAAQ,UAAA,OAAAP,CAAA,CAAAQ,IAAA,CAAAC,KAAA,CAAAT,CAAA,EAAAI,CAAA,YAAAJ,CAAA;AAAA,SAAAU,cAAAZ,CAAA,aAAAC,CAAA,MAAAA,CAAA,GAAAY,SAAA,CAAAC,MAAA,EAAAb,CAAA,UAAAC,CAAA,WAAAW,SAAA,CAAAZ,CAAA,IAAAY,SAAA,CAAAZ,CAAA,QAAAA,CAAA,OAAAF,OAAA,CAAAI,MAAA,CAAAD,CAAA,OAAAa,OAAA,WAAAd,CAAA,IAAAe,eAAA,CAAAhB,CAAA,EAAAC,CAAA,EAAAC,CAAA,CAAAD,CAAA,SAAAE,MAAA,CAAAc,yBAAA,GAAAd,MAAA,CAAAe,gBAAA,CAAAlB,CAAA,EAAAG,MAAA,CAAAc,yBAAA,CAAAf,CAAA,KAAAH,OAAA,CAAAI,MAAA,CAAAD,CAAA,GAAAa,OAAA,WAAAd,CAAA,IAAAE,MAAA,CAAAgB,cAAA,CAAAnB,CAAA,EAAAC,CAAA,EAAAE,MAAA,CAAAK,wBAAA,CAAAN,CAAA,EAAAD,CAAA,iBAAAD,CAAA;AAAA,SAAAgB,gBAAAI,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAjB,MAAA,CAAAgB,cAAA,CAAAC,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAb,UAAA,QAAAe,YAAA,QAAAC,QAAA,oBAAAL,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAArB,CAAA,QAAAwB,CAAA,GAAAC,YAAA,CAAAzB,CAAA,uCAAAwB,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAzB,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAF,CAAA,GAAAE,CAAA,CAAA0B,MAAA,CAAAC,WAAA,kBAAA7B,CAAA,QAAA0B,CAAA,GAAA1B,CAAA,CAAA8B,IAAA,CAAA5B,CAAA,EAAAD,CAAA,uCAAAyB,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAA9B,CAAA,GAAA+B,MAAA,GAAAC,MAAA,EAAA/B,CAAA;AAEnD;AACO,SAASgC,iBAAiBA,CAC/BC,WAAmB,EACnBC,IAAY,EACZC,OAAiB,EACjBC,IAAc,EACQ;EACtB,MAAMC,KAAK,GAAG,IAAAC,eAAM,EAACL,WAAW,CAAC;EACjCI,KAAK,CAACE,OAAO,GAAGN,WAAW;EAC3B,MAAMO,SAAS,GAAG;IAChBC,EAAE,EAAER,WAAW;IACfS,WAAW,EAAER;EACf,CAAC;EAED,MAAM;IAAE9C,IAAI;IAAEuD,KAAK;IAAEC,OAAO;IAAEC;EAAgB,CAAC,GAAG,IAAAC,mCAAY,EAACC,6BAAa,EAAE;IAC5EP,SAAS;IACTJ,IAAI;IACJY,WAAW,EAAE;EACf,CAAC,CAAC;EAEF,MAAM;IAAEJ,OAAO,EAAEK,WAAW;IAAEC,aAAa,EAAE;MAAEC;IAAK,CAAC,GAAG,CAAC;EAAE,CAAC,GAAG,IAAAC,oCAAgB,EAACnB,WAAW,EAAEC,IAAI,EAAEC,OAAO,EAAEC,IAAI,CAAC;EAEjH,MAAMiB,YAAY,GAAGjE,IAAI,EAAEkE,OAAO,EAAEC,GAAG;EAEvC,IAAAC,kBAAS,EAAC,MAAM;IACd;IACA,IAAItB,IAAI,KAAK,6BAA6B,EAAE;MAC1C,OAAO,MAAM,CAAC,CAAC;IACjB;IAEA,MAAMuB,aAAa,GAAGZ,eAAe,CAAC;MACpCa,QAAQ,EAAEC,sCAAsB;MAChCC,WAAW,EAAEA,CAACC,IAAI,EAAE;QAAEC;MAAiB,CAAC,KAAK;QAC3C,MAAMC,aAAa,GAAGF,IAAI,EAAEP,OAAO,EAAEC,GAAG;QACxC,MAAMS,cAAc,GAAGF,gBAAgB,EAAE1E,IAAI,EAAE6E,cAAc,EAAEC,SAAS;QAExE,IAAI,CAACF,cAAc,IAAID,aAAa,EAAE,OAAOF,IAAI;QAEjD,IAAIxB,KAAK,CAACE,OAAO,KAAKyB,cAAc,CAACvB,EAAE,CAAC0B,IAAI,EAAE;UAC5C,OAAAzD,aAAA,CAAAA,aAAA,KACKmD,IAAI;YACPP,OAAO,EAAA5C,aAAA,CAAAA,aAAA,KACFmD,IAAI,CAACP,OAAO;cACfC,GAAG,EAAES;YAAc;UACpB;QAEL;QAEA,OAAOH,IAAI;MACb;IACF,CAAC,CAAC;IAEF,MAAMO,YAAY,GAAGvB,eAAe,CAAC;MACnCa,QAAQ,EAAEW,qCAAqB;MAC/BT,WAAW,EAAEA,CAACC,IAAI,EAAE;QAAEC;MAAiB,CAAC,KAAK;QAC3C,IAAI,CAACA,gBAAgB,CAAC1E,IAAI,EAAE,OAAOyE,IAAI;QAEvC,MAAME,aAAa,GAAGF,IAAI,EAAEP,OAAO,EAAEC,GAAG;QACxC,MAAMe,gBAAgB,GAAGR,gBAAgB,EAAE1E,IAAI,EAAEmF,gBAAgB,EAAEL,SAAS;QAE5E,MAAMM,SAAS,GAAGF,gBAAgB,IAAIG,0BAAW,CAACC,UAAU,CAACX,aAAa,EAAEtB,EAAE,EAAE6B,gBAAgB,EAAE7B,EAAE,CAAC;QAErG,IAAI+B,SAAS,EAAE;UACb,OAAA9D,aAAA,CAAAA,aAAA,KACKmD,IAAI;YACPP,OAAO,EAAA5C,aAAA,CAAAA,aAAA,KACFmD,IAAI,CAACP,OAAO;cACfC,GAAG,EAAEe;YAAgB;UACtB;QAEL;QAEA,OAAOT,IAAI;MACb;IACF,CAAC,CAAC;IAEF,MAAMc,YAAY,GAAG9B,eAAe,CAAC;MACnCa,QAAQ,EAAEkB,qCAAqB;MAC/BhB,WAAW,EAAEA,CAACC,IAAI,EAAE;QAAEC;MAAiB,CAAC,KAAK;QAC3C,IAAI,CAACA,gBAAgB,CAAC1E,IAAI,EAAE,OAAOyE,IAAI;QAEvC,MAAME,aAAa,GAAGF,IAAI,EAAEP,OAAO,EAAEC,GAAG;QACxC,MAAMsB,UAAwC,GAAGf,gBAAgB,EAAE1E,IAAI,EAAE0F,gBAAgB,EAAEC,YAAY;QACvG,IAAI,CAAChB,aAAa,IAAI,CAACc,UAAU,EAAEjE,MAAM,EAAE,OAAOiD,IAAI;QAEtD,MAAMmB,SAAS,GAAGH,UAAU,CAACI,IAAI,CAAEC,SAAS,IAAKT,0BAAW,CAACC,UAAU,CAACQ,SAAS,EAAEnB,aAAa,CAACtB,EAAE,CAAC,CAAC;QAErG,IAAIuC,SAAS,EAAE;UACb,OAAAtE,aAAA,CAAAA,aAAA,KACKmD,IAAI;YACPP,OAAO,EAAA5C,aAAA,CAAAA,aAAA,KACFmD,IAAI,CAACP,OAAO;cACfC,GAAG,EAAE;YAAI;UACV;QAEL;QAEA,OAAOM,IAAI;MACb;IACF,CAAC,CAAC;IAEF,OAAO,MAAM;MACXO,YAAY,CAAC,CAAC;MACdX,aAAa,CAAC,CAAC;MACfkB,YAAY,CAAC,CAAC;IAChB,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,MAAMQ,QAAQ,GAAG9B,YAAY,EAAEZ,EAAE,GAC5B,GAAEY,YAAY,EAAEZ,EAAE,EAAE2C,KAAM,IAAG/B,YAAY,EAAEZ,EAAE,EAAE0B,IAAK,IAAGd,YAAY,EAAEZ,EAAE,EAAE4C,OAAQ,GAAE,GACpFC,SAAS;EAEb,MAAM7C,EAA2B,GAAG,IAAA8C,gBAAO,EACzC,MAAOlC,YAAY,GAAGoB,0BAAW,CAACe,UAAU,CAACnC,YAAY,CAACZ,EAAE,CAAC,GAAG6C,SAAU,EAC1E,CAACH,QAAQ,CACX,CAAC;EAED,MAAMM,cAAc,GAClB9C,KAAK,IAAI,CAACvD,IAAI,GACV,KAAIsG,gCAAc,EAAC,GAAG,EAAE/C,KAAK,CAACgD,OAAO,CAAC,GACrC,CAACtC,YAAY,IAAI,CAACT,OAAO,IAAI,KAAI8C,gCAAc,EAAC,GAAG,CAAC,IAAKJ,SAAS;EAEzE,MAAMpB,SAAS,GAAG,IAAAqB,gBAAO,EACvB,MAAOlC,YAAY,GAAGuC,gCAAc,CAACC,IAAI,CAAAnF,aAAA,CAAAA,aAAA,KAAM2C,YAAY;IAAEnB,IAAI;IAAEiB;EAAI,EAAE,CAAC,GAAGmC,SAAU,EACvF,CAAC7C,EAAE,EAAEqD,QAAQ,CAAC,CAAC,EAAE3C,IAAI,CACvB,CAAC;EAED,MAAM4C,mBAAmB,GAAG,IAAAR,gBAAO,EAAC,MAAM;IACxC,MAAMS,UAAU,GAAG;MACjBC,OAAO,EAAE5C,YAAY,EAAE6C,OAAO,CAACC,GAAG,CAAEC,YAAY,IAAK;QACnD,OAAA1F,aAAA,CAAAA,aAAA,KACK0F,YAAY;UACfC,QAAQ,EAAED,YAAY,CAAC3D,EAAE;UACzB6D,UAAU,EAAEF,YAAY,CAAChH;QAAI;MAEjC,CAAC;IACH,CAAC;IAED,OAAOqD,EAAE,GAAG8D,0CAAmB,CAACf,UAAU,CAAC;MAAE/C,EAAE,EAAEA,EAAE,CAACqD,QAAQ,CAAC,CAAC;MAAEE;IAAW,CAAC,CAAC,GAAGV,SAAS;EAC3F,CAAC,EAAE,CAAC7C,EAAE,EAAEqD,QAAQ,CAAC,CAAC,CAAC,CAAC;EAEpB,OAAO,IAAAP,gBAAO,EAAC,MAAM;IACnB,OAAO;MACLQ,mBAAmB;MACnB7B,SAAS;MACThB,aAAa,EAAE;QACbN,OAAO,EAAEK,WAAW;QACpBE;MACF,CAAC;MACDR,KAAK,EAAE8C,cAAc,IAAIH,SAAS;MAClC1C;IACF,CAAC;EACH,CAAC,EAAE,CAACV,IAAI,EAAEgC,SAAS,EAAE6B,mBAAmB,EAAEN,cAAc,CAAC,CAAC;AAC5D","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_react","data","require","_uiFoundationUiHooks","_componentId","_componentDescriptor","_componentModel","_useComponent","_useComponentLogs","_componentError","ownKeys","e","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","useComponentQuery","componentId","host","filters","skip","idRef","useRef","current","variables","id","extensionId","error","loading","subscribeToMore","useDataQuery","GET_COMPONENT","errorPolicy","loadingLogs","componentLogs","logs","useComponentLogs","rawComponent","getHost","get","useEffect","unsubAddition","document","SUB_SUBSCRIPTION_ADDED","updateQuery","prev","subscriptionData","prevComponent","addedComponent","componentAdded","component","name","unsubChanges","SUB_COMPONENT_CHANGED","updatedComponent","componentChanged","isUpdated","ComponentID","isEqualObj","unsubRemoval","SUB_COMPONENT_REMOVED","removedIds","componentRemoved","componentIds","isRemoved","some","removedId","idDepKey","scope","version","undefined","useMemo","fromObject","componentError","ComponentError","message","ComponentModel","from","toString","componentDescriptor","aspectList","entries","aspects","map","aspectObject","aspectId","aspectData","ComponentDescriptor"],"sources":["use-component-query.ts"],"sourcesContent":["import { useMemo, useEffect, useRef } from 'react';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { ComponentID, ComponentIdObj } from '@teambit/component-id';\nimport { ComponentDescriptor } from '@teambit/component-descriptor';\nimport { ComponentModel } from './component-model';\nimport { ComponentQueryResult, Filters } from './use-component.model';\nimport {\n GET_COMPONENT,\n SUB_COMPONENT_CHANGED,\n SUB_COMPONENT_REMOVED,\n SUB_SUBSCRIPTION_ADDED,\n} from './use-component.fragments';\nimport { useComponentLogs } from './use-component-logs';\nimport { ComponentError } from './component-error';\n\n/** provides data to component ui page, making sure both variables and return value are safely typed and memoized */\nexport function useComponentQuery(\n componentId: string,\n host: string,\n filters?: Filters,\n skip?: boolean\n): ComponentQueryResult {\n const idRef = useRef(componentId);\n idRef.current = componentId;\n const variables = {\n id: componentId,\n extensionId: host,\n };\n\n const { data, error, loading, subscribeToMore } = useDataQuery(GET_COMPONENT, {\n variables,\n skip,\n errorPolicy: 'all',\n });\n\n const { loading: loadingLogs, componentLogs: { logs } = {} } = useComponentLogs(componentId, host, filters, skip);\n\n const rawComponent = data?.getHost?.get;\n\n useEffect(() => {\n // @TODO @Kutner fix subscription for scope\n if (host !== 'teambit.workspace/workspace') {\n return () => {};\n }\n\n const unsubAddition = subscribeToMore({\n document: SUB_SUBSCRIPTION_ADDED,\n updateQuery: (prev, { subscriptionData }) => {\n const prevComponent = prev?.getHost?.get;\n const addedComponent = subscriptionData?.data?.componentAdded?.component;\n\n if (!addedComponent || prevComponent) return prev;\n\n if (idRef.current === addedComponent.id.name) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: addedComponent,\n },\n };\n }\n\n return prev;\n },\n });\n\n const unsubChanges = subscribeToMore({\n document: SUB_COMPONENT_CHANGED,\n updateQuery: (prev, { subscriptionData }) => {\n if (!subscriptionData.data) return prev;\n\n const prevComponent = prev?.getHost?.get;\n const updatedComponent = subscriptionData?.data?.componentChanged?.component;\n\n const isUpdated = updatedComponent && ComponentID.isEqualObj(prevComponent?.id, updatedComponent?.id);\n\n if (isUpdated) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: updatedComponent,\n },\n };\n }\n\n return prev;\n },\n });\n\n const unsubRemoval = subscribeToMore({\n document: SUB_COMPONENT_REMOVED,\n updateQuery: (prev, { subscriptionData }) => {\n if (!subscriptionData.data) return prev;\n\n const prevComponent = prev?.getHost?.get;\n const removedIds: ComponentIdObj[] | undefined = subscriptionData?.data?.componentRemoved?.componentIds;\n if (!prevComponent || !removedIds?.length) return prev;\n\n const isRemoved = removedIds.some((removedId) => ComponentID.isEqualObj(removedId, prevComponent.id));\n\n if (isRemoved) {\n return {\n ...prev,\n getHost: {\n ...prev.getHost,\n get: null,\n },\n };\n }\n\n return prev;\n },\n });\n\n return () => {\n unsubChanges();\n unsubAddition();\n unsubRemoval();\n };\n }, []);\n\n const idDepKey = rawComponent?.id\n ? `${rawComponent?.id?.scope}/${rawComponent?.id?.name}@${rawComponent?.id?.version}}`\n : undefined;\n\n const id: ComponentID | undefined = useMemo(\n () => (rawComponent ? ComponentID.fromObject(rawComponent.id) : undefined),\n [idDepKey]\n );\n\n const componentError =\n error && !data\n ? new ComponentError(500, error.message)\n : (!rawComponent && !loading && new ComponentError(404)) || undefined;\n\n const component = useMemo(\n () => (rawComponent ? ComponentModel.from({ ...rawComponent, host, logs }) : undefined),\n [id?.toString(), logs]\n );\n\n const componentDescriptor = useMemo(() => {\n const aspectList = {\n entries: rawComponent?.aspects.map((aspectObject) => {\n return {\n ...aspectObject,\n aspectId: aspectObject.id,\n aspectData: aspectObject.data,\n };\n }),\n };\n\n return id ? ComponentDescriptor.fromObject({ id: id.toString(), aspectList }) : undefined;\n }, [id?.toString()]);\n\n return useMemo(() => {\n return {\n componentDescriptor,\n component,\n componentLogs: {\n loading: loadingLogs,\n logs,\n },\n error: componentError || undefined,\n loading,\n };\n }, [host, component, componentDescriptor, componentError]);\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_client","data","require","componentIdFields","exports","gql","componentOverviewFields","componentFields","componentFieldsWithLogs","COMPONENT_QUERY_LOG_FIELDS","GET_COMPONENT","GET_COMPONENT_WITH_LOGS","SUB_SUBSCRIPTION_ADDED","SUB_COMPONENT_CHANGED","SUB_COMPONENT_REMOVED"],"sources":["use-component.fragments.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const componentIdFields = gql`\n fragment componentIdFields on ComponentID {\n name\n version\n scope\n }\n`;\n\nexport const componentOverviewFields = gql`\n fragment componentOverviewFields on Component {\n id {\n ...componentIdFields\n }\n aspects(include: [\"teambit.preview/preview\", \"teambit.envs/envs\"]) {\n # 'id' property in gql refers to a *global* identifier and used for caching.\n # this makes aspect data cache under the same key, even when they are under different components.\n # renaming the property fixes that.\n id\n data\n }\n description\n deprecation {\n isDeprecate\n newId\n }\n labels\n displayName\n server {\n env\n url\n host\n basePath\n }\n buildStatus\n env {\n id\n icon\n }\n size {\n compressedTotal\n }\n preview {\n includesEnvTemplate\n legacyHeader\n isScaling\n skipIncludes\n onlyOverview\n useNameParam\n }\n compositions {\n identifier\n displayName\n filepath\n }\n }\n ${componentIdFields}\n`;\n\nexport const componentFields = gql`\n fragment componentFields on Component {\n ...componentOverviewFields\n packageName\n latest\n compositions {\n identifier\n displayName\n }\n tags {\n version\n }\n }\n ${componentOverviewFields}\n`;\n\nexport const componentFieldsWithLogs = gql`\n fragment componentFieldWithLogs on Component {\n id {\n ...componentIdFields\n }\n packageName\n latest\n logs(\n type: $logType\n offset: $logOffset\n limit: $logLimit\n sort: $logSort\n head: $logHead\n takeHeadFromComponent: $logTakeHeadFromComponent\n ) {\n id\n message\n username\n email\n date\n hash\n tag\n displayName\n }\n }\n ${componentIdFields}\n`;\n\nexport const COMPONENT_QUERY_LOG_FIELDS = `\n $logOffset: Int\n $logLimit: Int\n $logType: String\n $logHead: String\n $logSort: String\n $logTakeHeadFromComponent: Boolean\n`;\n\nexport const GET_COMPONENT = gql`\n query Component($extensionId: String!, $id: String!) {\n getHost(id: $extensionId) {\n id # used for GQL caching\n get(id: $id) {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nexport const GET_COMPONENT_WITH_LOGS = gql`\n query Component(\n $extensionId: String!\n $id: String!\n ${COMPONENT_QUERY_LOG_FIELDS}\n ) {\n getHost(id: $extensionId) {\n id # used for GQL caching\n get(id: $id) {\n ...componentFieldWithLogs\n }\n }\n }\n ${componentFieldsWithLogs}\n`;\n\nexport const SUB_SUBSCRIPTION_ADDED = gql`\n subscription OnComponentAdded {\n componentAdded {\n component {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nexport const SUB_COMPONENT_CHANGED = gql`\n subscription OnComponentChanged {\n componentChanged {\n component {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nexport const SUB_COMPONENT_REMOVED = gql`\n subscription OnComponentRemoved {\n componentRemoved {\n componentIds {\n ...componentIdFields\n }\n }\n }\n ${componentIdFields}\n`;\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,IAAAE,aAAG
|
|
1
|
+
{"version":3,"names":["_client","data","require","componentIdFields","exports","gql","componentOverviewFields","componentFields","componentFieldsWithLogs","COMPONENT_QUERY_LOG_FIELDS","GET_COMPONENT","GET_COMPONENT_WITH_LOGS","SUB_SUBSCRIPTION_ADDED","SUB_COMPONENT_CHANGED","SUB_COMPONENT_REMOVED"],"sources":["use-component.fragments.ts"],"sourcesContent":["import { gql } from '@apollo/client';\n\nexport const componentIdFields = gql`\n fragment componentIdFields on ComponentID {\n name\n version\n scope\n }\n`;\n\nexport const componentOverviewFields = gql`\n fragment componentOverviewFields on Component {\n id {\n ...componentIdFields\n }\n aspects(include: [\"teambit.preview/preview\", \"teambit.envs/envs\"]) {\n # 'id' property in gql refers to a *global* identifier and used for caching.\n # this makes aspect data cache under the same key, even when they are under different components.\n # renaming the property fixes that.\n id\n data\n }\n description\n deprecation {\n isDeprecate\n newId\n }\n labels\n displayName\n server {\n env\n url\n host\n basePath\n }\n buildStatus\n env {\n id\n icon\n }\n size {\n compressedTotal\n }\n preview {\n includesEnvTemplate\n legacyHeader\n isScaling\n skipIncludes\n onlyOverview\n useNameParam\n }\n compositions {\n identifier\n displayName\n filepath\n }\n }\n ${componentIdFields}\n`;\n\nexport const componentFields = gql`\n fragment componentFields on Component {\n ...componentOverviewFields\n packageName\n latest\n compositions {\n identifier\n displayName\n }\n tags {\n version\n }\n }\n ${componentOverviewFields}\n`;\n\nexport const componentFieldsWithLogs = gql`\n fragment componentFieldWithLogs on Component {\n id {\n ...componentIdFields\n }\n packageName\n latest\n logs(\n type: $logType\n offset: $logOffset\n limit: $logLimit\n sort: $logSort\n head: $logHead\n takeHeadFromComponent: $logTakeHeadFromComponent\n ) {\n id\n message\n username\n email\n date\n hash\n tag\n displayName\n }\n }\n ${componentIdFields}\n`;\n\nexport const COMPONENT_QUERY_LOG_FIELDS = `\n $logOffset: Int\n $logLimit: Int\n $logType: String\n $logHead: String\n $logSort: String\n $logTakeHeadFromComponent: Boolean\n`;\n\nexport const GET_COMPONENT = gql`\n query Component($extensionId: String!, $id: String!) {\n getHost(id: $extensionId) {\n id # used for GQL caching\n get(id: $id) {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nexport const GET_COMPONENT_WITH_LOGS = gql`\n query Component(\n $extensionId: String!\n $id: String!\n ${COMPONENT_QUERY_LOG_FIELDS}\n ) {\n getHost(id: $extensionId) {\n id # used for GQL caching\n get(id: $id) {\n ...componentFieldWithLogs\n }\n }\n }\n ${componentFieldsWithLogs}\n`;\n\nexport const SUB_SUBSCRIPTION_ADDED = gql`\n subscription OnComponentAdded {\n componentAdded {\n component {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nexport const SUB_COMPONENT_CHANGED = gql`\n subscription OnComponentChanged {\n componentChanged {\n component {\n ...componentFields\n }\n }\n }\n ${componentFields}\n`;\n\nexport const SUB_COMPONENT_REMOVED = gql`\n subscription OnComponentRemoved {\n componentRemoved {\n componentIds {\n ...componentIdFields\n }\n }\n }\n ${componentIdFields}\n`;\n"],"mappings":";;;;;;AAAA,SAAAA,QAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,OAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,MAAME,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,IAAAE,aAAG;AACpC;AACA;AACA;AACA;AACA;AACA,CAAC;AAEM,MAAMC,uBAAuB,GAAAF,OAAA,CAAAE,uBAAA,GAAG,IAAAD,aAAG;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIF,iBAAiB;AACrB,CAAC;AAEM,MAAMI,eAAe,GAAAH,OAAA,CAAAG,eAAA,GAAG,IAAAF,aAAG;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIC,uBAAuB;AAC3B,CAAC;AAEM,MAAME,uBAAuB,GAAAJ,OAAA,CAAAI,uBAAA,GAAG,IAAAH,aAAG;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIF,iBAAiB;AACrB,CAAC;AAEM,MAAMM,0BAA0B,GAAAL,OAAA,CAAAK,0BAAA,GAAG;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAEM,MAAMC,aAAa,GAAAN,OAAA,CAAAM,aAAA,GAAG,IAAAL,aAAG;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIE,eAAe;AACnB,CAAC;AAEM,MAAMI,uBAAuB,GAAAP,OAAA,CAAAO,uBAAA,GAAG,IAAAN,aAAG;AAC1C;AACA;AACA;AACA,MAAMI,0BAA0B;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAID,uBAAuB;AAC3B,CAAC;AAEM,MAAMI,sBAAsB,GAAAR,OAAA,CAAAQ,sBAAA,GAAG,IAAAP,aAAG;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIE,eAAe;AACnB,CAAC;AAEM,MAAMM,qBAAqB,GAAAT,OAAA,CAAAS,qBAAA,GAAG,IAAAR,aAAG;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIE,eAAe;AACnB,CAAC;AAEM,MAAMO,qBAAqB,GAAAV,OAAA,CAAAU,qBAAA,GAAG,IAAAT,aAAG;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAIF,iBAAiB;AACrB,CAAC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_uiFoundationUiReactRouter","data","require","_useComponentQuery","_useComponent","useComponent","host","id","options","query","useQuery","version","logFilters","customUseComponent","skip","componentVersion","get","undefined","componentIdStr","withVersion","targetUseComponent","useComponentQuery","includes"],"sources":["use-component.tsx"],"sourcesContent":["import { useQuery } from '@teambit/ui-foundation.ui.react-router.use-query';\nimport { useComponentQuery } from './use-component-query';\nimport { ComponentQueryResult, UseComponentOptions, UseComponentType, Filters } from './use-component.model';\n\nexport { UseComponentType, Filters };\n\nexport function useComponent(host: string, id?: string, options?: UseComponentOptions): ComponentQueryResult {\n const query = useQuery();\n const { version, logFilters, customUseComponent, skip } = options || {};\n const componentVersion = (version || query.get('version')) ?? undefined;\n\n const componentIdStr = id && withVersion(id, componentVersion);\n const targetUseComponent = customUseComponent || useComponentQuery;\n\n return targetUseComponent(componentIdStr || '', host, logFilters, skip || !id);\n}\n\nfunction withVersion(id: string, version?: string) {\n if (!version) return id;\n if (id.includes('@')) return id;\n return `${id}@${version}`;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,SAAAA,2BAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,0BAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,cAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,aAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIO,SAASI,YAAYA,CAACC,IAAY,EAAEC,EAAW,EAAEC,OAA6B,EAAwB;EAC3G,MAAMC,KAAK,GAAG,IAAAC,qCAAQ,EAAC,CAAC;EACxB,MAAM;IAAEC,OAAO;IAAEC,UAAU;IAAEC,kBAAkB;IAAEC;EAAK,CAAC,GAAGN,OAAO,IAAI,CAAC,CAAC;EACvE,MAAMO,gBAAgB,GAAG,CAACJ,OAAO,IAAIF,KAAK,CAACO,GAAG,CAAC,SAAS,CAAC,KAAKC,SAAS;EAEvE,MAAMC,cAAc,GAAGX,EAAE,IAAIY,WAAW,CAACZ,EAAE,EAAEQ,gBAAgB,CAAC;EAC9D,MAAMK,kBAAkB,GAAGP,kBAAkB,IAAIQ,sCAAiB;EAElE,OAAOD,kBAAkB,CAACF,cAAc,IAAI,EAAE,EAAEZ,IAAI,EAAEM,UAAU,EAAEE,IAAI,IAAI,CAACP,EAAE,CAAC;AAChF;AAEA,SAASY,WAAWA,CAACZ,EAAU,EAAEI,OAAgB,EAAE;EACjD,IAAI,CAACA,OAAO,EAAE,OAAOJ,EAAE;EACvB,IAAIA,EAAE,CAACe,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAOf,EAAE;EAC/B,
|
|
1
|
+
{"version":3,"names":["_uiFoundationUiReactRouter","data","require","_useComponentQuery","_useComponent","useComponent","host","id","options","query","useQuery","version","logFilters","customUseComponent","skip","componentVersion","get","undefined","componentIdStr","withVersion","targetUseComponent","useComponentQuery","includes"],"sources":["use-component.tsx"],"sourcesContent":["import { useQuery } from '@teambit/ui-foundation.ui.react-router.use-query';\nimport { useComponentQuery } from './use-component-query';\nimport { ComponentQueryResult, UseComponentOptions, UseComponentType, Filters } from './use-component.model';\n\nexport { UseComponentType, Filters };\n\nexport function useComponent(host: string, id?: string, options?: UseComponentOptions): ComponentQueryResult {\n const query = useQuery();\n const { version, logFilters, customUseComponent, skip } = options || {};\n const componentVersion = (version || query.get('version')) ?? undefined;\n\n const componentIdStr = id && withVersion(id, componentVersion);\n const targetUseComponent = customUseComponent || useComponentQuery;\n\n return targetUseComponent(componentIdStr || '', host, logFilters, skip || !id);\n}\n\nfunction withVersion(id: string, version?: string) {\n if (!version) return id;\n if (id.includes('@')) return id;\n return `${id}@${version}`;\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA,SAAAA,2BAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,0BAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,cAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,aAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIO,SAASI,YAAYA,CAACC,IAAY,EAAEC,EAAW,EAAEC,OAA6B,EAAwB;EAC3G,MAAMC,KAAK,GAAG,IAAAC,qCAAQ,EAAC,CAAC;EACxB,MAAM;IAAEC,OAAO;IAAEC,UAAU;IAAEC,kBAAkB;IAAEC;EAAK,CAAC,GAAGN,OAAO,IAAI,CAAC,CAAC;EACvE,MAAMO,gBAAgB,GAAG,CAACJ,OAAO,IAAIF,KAAK,CAACO,GAAG,CAAC,SAAS,CAAC,KAAKC,SAAS;EAEvE,MAAMC,cAAc,GAAGX,EAAE,IAAIY,WAAW,CAACZ,EAAE,EAAEQ,gBAAgB,CAAC;EAC9D,MAAMK,kBAAkB,GAAGP,kBAAkB,IAAIQ,sCAAiB;EAElE,OAAOD,kBAAkB,CAACF,cAAc,IAAI,EAAE,EAAEZ,IAAI,EAAEM,UAAU,EAAEE,IAAI,IAAI,CAACP,EAAE,CAAC;AAChF;AAEA,SAASY,WAAWA,CAACZ,EAAU,EAAEI,OAAgB,EAAE;EACjD,IAAI,CAACA,OAAO,EAAE,OAAOJ,EAAE;EACvB,IAAIA,EAAE,CAACe,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAOf,EAAE;EAC/B,OAAO,GAAGA,EAAE,IAAII,OAAO,EAAE;AAC3B","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/component",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.283",
|
|
4
4
|
"homepage": "https://bit.cloud/teambit/component/component",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"componentId": {
|
|
7
7
|
"scope": "teambit.component",
|
|
8
8
|
"name": "component",
|
|
9
|
-
"version": "1.0.
|
|
9
|
+
"version": "1.0.283"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"@teambit/any-fs": "0.0.5",
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
"semver": "7.5.2",
|
|
18
18
|
"copy-to-clipboard": "3.3.1",
|
|
19
19
|
"lodash.flatten": "4.4.0",
|
|
20
|
+
"open": "7.4.2",
|
|
20
21
|
"classnames": "2.2.6",
|
|
21
22
|
"lodash.compact": "3.0.1",
|
|
22
23
|
"@teambit/component-id": "1.2.0",
|
|
@@ -36,38 +37,39 @@
|
|
|
36
37
|
"@teambit/documenter.ui.separator": "4.1.1",
|
|
37
38
|
"@teambit/design.ui.pages.not-found": "0.0.371",
|
|
38
39
|
"@teambit/design.ui.pages.server-error": "0.0.368",
|
|
40
|
+
"@teambit/design.ui.styles.ellipsis": "0.0.357",
|
|
41
|
+
"@teambit/explorer.ui.command-bar": "2.0.14",
|
|
39
42
|
"@teambit/design.navigation.responsive-navbar": "0.0.7",
|
|
40
43
|
"@teambit/base-ui.layout.breakpoints": "1.0.0",
|
|
41
44
|
"@teambit/ui-foundation.ui.use-box.dropdown": "0.0.142",
|
|
42
|
-
"@teambit/
|
|
43
|
-
"@teambit/
|
|
44
|
-
"@teambit/
|
|
45
|
-
"@teambit/dependency-resolver": "1.0.281",
|
|
46
|
-
"@teambit/graph": "1.0.281",
|
|
45
|
+
"@teambit/aspect-loader": "1.0.283",
|
|
46
|
+
"@teambit/dependency-resolver": "1.0.283",
|
|
47
|
+
"@teambit/graph": "1.0.283",
|
|
47
48
|
"@teambit/toolbox.path.match-patterns": "0.0.15",
|
|
48
49
|
"@teambit/toolbox.string.capitalize": "0.0.496",
|
|
49
50
|
"@teambit/cli": "0.0.865",
|
|
50
51
|
"@teambit/express": "0.0.964",
|
|
51
|
-
"@teambit/graphql": "1.0.
|
|
52
|
-
"@teambit/
|
|
52
|
+
"@teambit/graphql": "1.0.283",
|
|
53
|
+
"@teambit/logger": "0.0.958",
|
|
54
|
+
"@teambit/command-bar": "1.0.283",
|
|
53
55
|
"@teambit/component-package-version": "0.0.433",
|
|
54
|
-
"@teambit/preview": "1.0.
|
|
55
|
-
"@teambit/pubsub": "1.0.
|
|
56
|
-
"@teambit/react-router": "1.0.
|
|
56
|
+
"@teambit/preview": "1.0.283",
|
|
57
|
+
"@teambit/pubsub": "1.0.283",
|
|
58
|
+
"@teambit/react-router": "1.0.283",
|
|
57
59
|
"@teambit/ui-foundation.ui.react-router.slot-router": "0.0.509",
|
|
58
|
-
"@teambit/ui": "1.0.
|
|
60
|
+
"@teambit/ui": "1.0.283",
|
|
59
61
|
"@teambit/component-issues": "0.0.149",
|
|
60
62
|
"@teambit/cli-table": "0.0.48",
|
|
61
63
|
"@teambit/legacy-component-log": "0.0.403",
|
|
62
64
|
"@teambit/component-descriptor": "0.0.419",
|
|
63
65
|
"@teambit/harmony.ui.aspect-box": "0.0.507",
|
|
64
|
-
"@teambit/compositions": "1.0.
|
|
65
|
-
"@teambit/deprecation": "1.0.
|
|
66
|
-
"@teambit/envs": "1.0.
|
|
66
|
+
"@teambit/compositions": "1.0.283",
|
|
67
|
+
"@teambit/deprecation": "1.0.283",
|
|
68
|
+
"@teambit/envs": "1.0.283",
|
|
69
|
+
"@teambit/envs.ui.env-icon": "0.0.505",
|
|
67
70
|
"@teambit/component.ui.version-dropdown": "0.0.862",
|
|
68
71
|
"@teambit/lanes.hooks.use-lanes": "0.0.264",
|
|
69
|
-
"@teambit/lanes.ui.models.lanes-model": "0.0.216"
|
|
70
|
-
"@teambit/envs.ui.env-icon": "0.0.505"
|
|
72
|
+
"@teambit/lanes.ui.models.lanes-model": "0.0.216"
|
|
71
73
|
},
|
|
72
74
|
"devDependencies": {
|
|
73
75
|
"@types/lodash": "4.14.165",
|
package/show/show.cmd.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import open from 'open';
|
|
1
2
|
import { Command, CommandOptions } from '@teambit/cli';
|
|
2
3
|
import { compact } from 'lodash';
|
|
3
4
|
// import { Logger } from '@teambit/logger';
|
|
@@ -6,6 +7,7 @@ import { CLITable } from '@teambit/cli-table';
|
|
|
6
7
|
import { MissingBitMapComponent } from '@teambit/legacy/dist/consumer/bit-map/exceptions';
|
|
7
8
|
import { ComponentID } from '@teambit/component-id';
|
|
8
9
|
import LegacyShow from '@teambit/legacy/dist/cli/commands/public-cmds/show-cmd';
|
|
10
|
+
import { Logger } from '@teambit/logger';
|
|
9
11
|
import { ComponentMain } from '../component.main.runtime';
|
|
10
12
|
|
|
11
13
|
export class ShowCmd implements Command {
|
|
@@ -18,6 +20,7 @@ export class ShowCmd implements Command {
|
|
|
18
20
|
['j', 'json', 'return the component data in json format'],
|
|
19
21
|
['l', 'legacy', 'use the legacy bit show.'],
|
|
20
22
|
['r', 'remote', 'show data for a remote component'],
|
|
23
|
+
['b', 'browser', 'open the component page in the browser'],
|
|
21
24
|
[
|
|
22
25
|
'c',
|
|
23
26
|
'compare',
|
|
@@ -25,7 +28,7 @@ export class ShowCmd implements Command {
|
|
|
25
28
|
],
|
|
26
29
|
] as CommandOptions;
|
|
27
30
|
|
|
28
|
-
constructor(private component: ComponentMain) {}
|
|
31
|
+
constructor(private component: ComponentMain, private logger: Logger) {}
|
|
29
32
|
|
|
30
33
|
private async getComponent(idStr: string, remote: boolean) {
|
|
31
34
|
if (remote) {
|
|
@@ -59,7 +62,10 @@ to see the legacy bit show, please use "--legacy" flag`);
|
|
|
59
62
|
return legacyShow.report(showData);
|
|
60
63
|
}
|
|
61
64
|
|
|
62
|
-
async report(
|
|
65
|
+
async report(
|
|
66
|
+
[idStr]: [string],
|
|
67
|
+
{ legacy, remote, compare, browser }: { legacy: boolean; remote: boolean; compare: boolean; browser: boolean }
|
|
68
|
+
) {
|
|
63
69
|
if (legacy) return this.useLegacy(idStr, false, remote, compare);
|
|
64
70
|
const component = await this.getComponent(idStr, remote);
|
|
65
71
|
const fragments = this.component.getShowFragments();
|
|
@@ -72,7 +78,23 @@ to see the legacy bit show, please use "--legacy" flag`);
|
|
|
72
78
|
);
|
|
73
79
|
|
|
74
80
|
const table = new CLITable([], compact(rows));
|
|
75
|
-
|
|
81
|
+
const renderedTable = table.render();
|
|
82
|
+
if (browser) {
|
|
83
|
+
const isExported = component.isExported();
|
|
84
|
+
if (!isExported) {
|
|
85
|
+
this.logger.consoleWarning(`unable to open the browser, the component "${idStr}" has not been exported yet`);
|
|
86
|
+
return renderedTable;
|
|
87
|
+
}
|
|
88
|
+
const homepageUrl = component.homepage;
|
|
89
|
+
if (!homepageUrl || homepageUrl === '') {
|
|
90
|
+
this.logger.consoleWarning(`unable to open browser, the component ${idStr} does not have a homepage`);
|
|
91
|
+
return renderedTable;
|
|
92
|
+
}
|
|
93
|
+
open(homepageUrl).catch((err) => {
|
|
94
|
+
this.logger.error(`failed to open browser for component ${idStr}, err: ${err}`);
|
|
95
|
+
});
|
|
96
|
+
}
|
|
97
|
+
return renderedTable;
|
|
76
98
|
}
|
|
77
99
|
|
|
78
100
|
async json([idStr]: [string], { remote, legacy }: { remote: boolean; legacy: boolean }) {
|