@teambit/graph 1.0.107 → 1.0.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. package/artifacts/preview/teambit_component_graph-preview.js +1 -0
  2. package/dist/component-graph/component-graph.d.ts +2 -2
  3. package/dist/component-graph/component-graph.js +2 -3
  4. package/dist/component-graph/component-graph.js.map +1 -1
  5. package/dist/component-id-graph.d.ts +4 -4
  6. package/dist/duplicate-dependency.d.ts +1 -1
  7. package/dist/graph-builder.d.ts +1 -1
  8. package/dist/graph-cmd.d.ts +1 -1
  9. package/dist/graph.compare.section.d.ts +2 -2
  10. package/dist/graph.composition.d.ts +2 -2
  11. package/dist/graph.main.runtime.d.ts +1 -1
  12. package/dist/graph.ui.runtime.d.ts +3 -3
  13. package/dist/model/dependency/dependency.d.ts +1 -1
  14. package/dist/model/graph-filters/graph-filters.d.ts +1 -1
  15. package/dist/object-list-to-graph.d.ts +2 -2
  16. package/dist/object-list-to-graph.js +2 -2
  17. package/dist/object-list-to-graph.js.map +1 -1
  18. package/dist/{preview-1703590665075.js → preview-1703698405864.js} +2 -2
  19. package/dist/ui/component-node/component-node.d.ts +2 -2
  20. package/dist/ui/dependencies-compare/compare-node-model.d.ts +1 -1
  21. package/dist/ui/dependencies-compare/dependencies-compare.d.ts +2 -2
  22. package/dist/ui/dependencies-compare/dependencies-compare.js +9 -13
  23. package/dist/ui/dependencies-compare/dependencies-compare.js.map +1 -1
  24. package/dist/ui/dependencies-compare/dependency-compare-node.d.ts +3 -3
  25. package/dist/ui/dependencies-compare/diff-graph.d.ts +1 -1
  26. package/dist/ui/dependencies-compare/diff-graph.js +4 -7
  27. package/dist/ui/dependencies-compare/diff-graph.js.map +1 -1
  28. package/dist/ui/dependencies-graph/calc-elements.d.ts +1 -1
  29. package/dist/ui/dependencies-graph/dep-edge/dep-edge.d.ts +1 -1
  30. package/dist/ui/dependencies-graph/dependencies-graph.d.ts +3 -3
  31. package/dist/ui/dependencies-graph/dependencies-graph.js +4 -5
  32. package/dist/ui/dependencies-graph/dependencies-graph.js.map +1 -1
  33. package/dist/ui/dependencies-graph/graph-context.d.ts +2 -2
  34. package/dist/ui/dependencies-graph/minimap.js +1 -2
  35. package/dist/ui/dependencies-graph/minimap.js.map +1 -1
  36. package/dist/ui/graph-page/graph-filters.d.ts +3 -3
  37. package/dist/ui/graph-page/graph-page.d.ts +3 -3
  38. package/dist/ui/graph.section.d.ts +2 -2
  39. package/dist/ui/query/get-graph.query.d.ts +4 -4
  40. package/dist/ui/query/use-graph-query.d.ts +2 -2
  41. package/dist/ui/query/use-graph-query.js +1 -1
  42. package/dist/ui/query/use-graph-query.js.map +1 -1
  43. package/dist/ui/query/use-graph.d.ts +2 -2
  44. package/package.json +22 -29
  45. package/tsconfig.json +16 -21
  46. package/types/asset.d.ts +15 -3
@@ -0,0 +1 @@
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports["teambit.component/graph-preview"]=t():e["teambit.component/graph-preview"]=t()}(self,(()=>(()=>{"use strict";var e={96362:(e,t,o)=>{var r={id:"teambit.component/graph@1.0.109",homepage:"https://bit.cloud/teambit/component/graph",exported:!0};function n(){const e=i(o(87363));return n=function(){return e},e}function i(e){return e&&e.__esModule?e:{default:e}}Object.defineProperty(t,"__esModule",{value:!0}),t.Logo=void 0,n.__bit_component=r,i.__bit_component=r;const p=()=>n().default.createElement("div",{style:{height:"100%",display:"flex",justifyContent:"center"}},n().default.createElement("img",{style:{width:70},src:"https://static.bit.dev/extensions-icons/graph.svg"}));p.__bit_component=r,t.Logo=p},87363:e=>{e.exports=React}},t={};function o(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,o),i.exports}o.d=(e,t)=>{for(var r in t)o.o(t,r)&&!o.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var r={};return(()=>{o.r(r),o.d(r,{compositions:()=>u,compositions_metadata:()=>l,overview:()=>f});var e={};o.r(e),o.d(e,{default:()=>d});var t=o(96362);o(87363);const n=MdxJsReact,i=TeambitMdxUiMdxScopeContext;var p=["components"];function a(){return a=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var o=arguments[t];for(var r in o)Object.prototype.hasOwnProperty.call(o,r)&&(e[r]=o[r])}return e},a.apply(this,arguments)}var c={},s="wrapper";function d(e){var t=e.components,o=function(e,t){if(null==e)return{};var o,r,n=function(e,t){if(null==e)return{};var o,r,n={},i=Object.keys(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||(n[o]=e[o]);return n}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(r=0;r<i.length;r++)o=i[r],t.indexOf(o)>=0||Object.prototype.propertyIsEnumerable.call(e,o)&&(n[o]=e[o])}return n}(e,p);return(0,n.mdx)(s,a({},c,o,{components:t,mdxType:"MDXLayout"}),(0,n.mdx)(i.MDXScopeProvider,{components:{},mdxType:"MDXScopeProvider"}))}d.isMDXComponent=!0;const u=[t],f=[e],l={compositions:[{displayName:"Logo",identifier:"Logo"}]}})(),r})()));
@@ -3,8 +3,8 @@ import { Graph, Node, Edge } from '@teambit/graph.cleargraph';
3
3
  import { Dependency } from '../model/dependency';
4
4
  import { DuplicateDependency } from '../duplicate-dependency';
5
5
  export declare const DEPENDENCIES_TYPES: string[];
6
- declare type ComponentNode = Node<Component>;
7
- declare type DependencyEdge = Edge<Dependency>;
6
+ type ComponentNode = Node<Component>;
7
+ type DependencyEdge = Edge<Dependency>;
8
8
  export declare class ComponentGraph extends Graph<Component, Dependency> {
9
9
  seederIds: ComponentID[];
10
10
  constructor(nodes?: ComponentNode[], edges?: DependencyEdge[]);
@@ -101,18 +101,17 @@ class ComponentGraph extends _graph().Graph {
101
101
  } else {
102
102
  const value = versionMap.get(compFullName);
103
103
  if (value) {
104
- var _this$node;
105
104
  if (Object.prototype.hasOwnProperty.call(value, 'allVersionNodes')) {
106
105
  value.allVersionNodes.push(compKey);
107
106
  }
108
107
  const currentComp = comp;
109
- const latestComp = (_this$node = this.node(value.latestVersionNode)) === null || _this$node === void 0 ? void 0 : _this$node.attr;
108
+ const latestComp = this.node(value.latestVersionNode)?.attr;
110
109
  // @todo: this check won't work when the component doesn't have head.
111
110
  // it happens when a dependency is needed in an old version (not head). which Bit doesn't fetch the head
112
111
  // Version object, and as a result, the `Component.head` is empty.
113
112
  // for now it's probably good enough because it's used only for `findDuplicateDependencies`, which only
114
113
  // checks the components on the workspace.
115
- if (currentComp.head && latestComp !== null && latestComp !== void 0 && latestComp.head && new Date(currentComp.head.timestamp) > new Date(latestComp.head.timestamp)) {
114
+ if (currentComp.head && latestComp?.head && new Date(currentComp.head.timestamp) > new Date(latestComp.head.timestamp)) {
116
115
  value.latestVersionNode = compKey;
117
116
  }
118
117
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_graph","data","require","_duplicateDependency","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","DEPENDENCIES_TYPES","exports","ComponentGraph","Graph","constructor","nodes","edges","create","findCycles","graph","cycles","shouldLimitToSeedersOnly","seederIdsStr","seederIds","map","id","toString","cyclesWithSeeders","filter","cycle","some","cycleIdStr","includes","findDuplicateDependencies","versionMap","calculateVersionMap","seederIdsNoVersions","toStringWithoutVersion","duplicateDependencies","Map","compFullName","versions","allVersionNodes","length","versionSubgraphs","notLatestVersions","version","latestVersionNode","forEach","predecessors","predecessorsSubgraph","immediatePredecessors","predecessor","subGraph","buildFromCleargraph","versionSubgraph","versionId","immediateDependents","push","isSeeder","shouldDisplayDueToBeingSeeder","duplicateDep","DuplicateDependency","set","runtimeOnly","componentIds","successorsSubgraph","edgeFilter","edge","attr","type","node","comp","compKey","has","get","_this$node","prototype","hasOwnProperty","currentComp","latestComp","head","Date","timestamp"],"sources":["component-graph.ts"],"sourcesContent":["import { Component, ComponentID } from '@teambit/component';\nimport { Graph, Node, Edge } from '@teambit/graph.cleargraph';\n\nimport { Dependency } from '../model/dependency';\nimport { DuplicateDependency, VersionSubgraph } from '../duplicate-dependency';\n\nexport const DEPENDENCIES_TYPES = ['dependencies', 'devDependencies'];\n\ntype ComponentNode = Node<Component>;\ntype DependencyEdge = Edge<Dependency>;\n\nexport class ComponentGraph extends Graph<Component, Dependency> {\n seederIds: ComponentID[] = []; // component IDs that started the graph. (if from workspace, the .bitmap ids normally)\n constructor(nodes: ComponentNode[] = [], edges: DependencyEdge[] = []) {\n super(nodes, edges);\n }\n\n protected create(nodes: ComponentNode[] = [], edges: DependencyEdge[] = []): this {\n return new ComponentGraph(nodes, edges) as this;\n }\n\n /**\n * @deprecate use graph.getGraphIds().findCycles()\n */\n findCycles(graph?: this): string[][] {\n const cycles = super.findCycles(graph);\n if (!this.shouldLimitToSeedersOnly()) {\n return cycles;\n }\n const seederIdsStr = this.seederIds.map((id) => id.toString());\n const cyclesWithSeeders = cycles.filter((cycle) => {\n return cycle.some((cycleIdStr) => seederIdsStr.includes(cycleIdStr));\n });\n return cyclesWithSeeders;\n }\n\n findDuplicateDependencies(): Map<string, DuplicateDependency> {\n const versionMap = this.calculateVersionMap();\n const seederIdsNoVersions = this.seederIds.map((id) => id.toStringWithoutVersion());\n const duplicateDependencies: Map<string, DuplicateDependency> = new Map();\n for (const [compFullName, versions] of versionMap) {\n if (versions.allVersionNodes.length > 1) {\n const versionSubgraphs: VersionSubgraph[] = [];\n const notLatestVersions = versions.allVersionNodes.filter((version) => version !== versions.latestVersionNode);\n notLatestVersions.forEach((version) => {\n const predecessors = this.predecessorsSubgraph(version);\n const immediatePredecessors = this.predecessors(version).map((predecessor) => predecessor.id);\n const subGraph = this.buildFromCleargraph(predecessors);\n const versionSubgraph: VersionSubgraph = {\n versionId: version,\n subGraph,\n // TODO: validate that this is working correctly\n immediateDependents: immediatePredecessors,\n };\n versionSubgraphs.push(versionSubgraph);\n });\n const isSeeder = seederIdsNoVersions.includes(compFullName);\n const shouldDisplayDueToBeingSeeder = !this.shouldLimitToSeedersOnly() || isSeeder;\n if (shouldDisplayDueToBeingSeeder && versionSubgraphs.length > 0) {\n const duplicateDep = new DuplicateDependency(versions.latestVersionNode, versionSubgraphs);\n duplicateDependencies.set(compFullName, duplicateDep);\n }\n }\n }\n return duplicateDependencies;\n }\n\n buildFromCleargraph(graph: Graph<Component, Dependency>): ComponentGraph {\n return this.create(graph.nodes, graph.edges);\n }\n\n runtimeOnly(componentIds: string[]) {\n return this.successorsSubgraph(componentIds, {\n edgeFilter: (edge: DependencyEdge) => edge.attr.type === 'runtime',\n });\n }\n\n private shouldLimitToSeedersOnly() {\n return this.seederIds.length;\n }\n\n private calculateVersionMap(): Map<string, { allVersionNodes: string[]; latestVersionNode: string }> {\n const versionMap: Map<string, { allVersionNodes: string[]; latestVersionNode: string }> = new Map();\n for (const node of this.nodes) {\n const comp = node.attr;\n const compKey = node.id;\n const compFullName = comp.id.toStringWithoutVersion();\n if (!versionMap.has(compFullName)) {\n versionMap.set(compFullName, {\n allVersionNodes: [compKey],\n latestVersionNode: compKey,\n });\n } else {\n const value = versionMap.get(compFullName);\n if (value) {\n if (Object.prototype.hasOwnProperty.call(value, 'allVersionNodes')) {\n value.allVersionNodes.push(compKey);\n }\n const currentComp = comp;\n const latestComp = this.node(value.latestVersionNode)?.attr;\n // @todo: this check won't work when the component doesn't have head.\n // it happens when a dependency is needed in an old version (not head). which Bit doesn't fetch the head\n // Version object, and as a result, the `Component.head` is empty.\n // for now it's probably good enough because it's used only for `findDuplicateDependencies`, which only\n // checks the components on the workspace.\n if (\n currentComp.head &&\n latestComp?.head &&\n new Date(currentComp.head.timestamp) > new Date(latestComp.head.timestamp)\n ) {\n value.latestVersionNode = compKey;\n }\n }\n }\n }\n return versionMap;\n }\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_graph","data","require","_duplicateDependency","_defineProperty","obj","key","value","_toPropertyKey","Object","defineProperty","enumerable","configurable","writable","t","i","_toPrimitive","String","r","e","Symbol","toPrimitive","call","TypeError","Number","DEPENDENCIES_TYPES","exports","ComponentGraph","Graph","constructor","nodes","edges","create","findCycles","graph","cycles","shouldLimitToSeedersOnly","seederIdsStr","seederIds","map","id","toString","cyclesWithSeeders","filter","cycle","some","cycleIdStr","includes","findDuplicateDependencies","versionMap","calculateVersionMap","seederIdsNoVersions","toStringWithoutVersion","duplicateDependencies","Map","compFullName","versions","allVersionNodes","length","versionSubgraphs","notLatestVersions","version","latestVersionNode","forEach","predecessors","predecessorsSubgraph","immediatePredecessors","predecessor","subGraph","buildFromCleargraph","versionSubgraph","versionId","immediateDependents","push","isSeeder","shouldDisplayDueToBeingSeeder","duplicateDep","DuplicateDependency","set","runtimeOnly","componentIds","successorsSubgraph","edgeFilter","edge","attr","type","node","comp","compKey","has","get","prototype","hasOwnProperty","currentComp","latestComp","head","Date","timestamp"],"sources":["component-graph.ts"],"sourcesContent":["import { Component, ComponentID } from '@teambit/component';\nimport { Graph, Node, Edge } from '@teambit/graph.cleargraph';\n\nimport { Dependency } from '../model/dependency';\nimport { DuplicateDependency, VersionSubgraph } from '../duplicate-dependency';\n\nexport const DEPENDENCIES_TYPES = ['dependencies', 'devDependencies'];\n\ntype ComponentNode = Node<Component>;\ntype DependencyEdge = Edge<Dependency>;\n\nexport class ComponentGraph extends Graph<Component, Dependency> {\n seederIds: ComponentID[] = []; // component IDs that started the graph. (if from workspace, the .bitmap ids normally)\n constructor(nodes: ComponentNode[] = [], edges: DependencyEdge[] = []) {\n super(nodes, edges);\n }\n\n protected create(nodes: ComponentNode[] = [], edges: DependencyEdge[] = []): this {\n return new ComponentGraph(nodes, edges) as this;\n }\n\n /**\n * @deprecate use graph.getGraphIds().findCycles()\n */\n findCycles(graph?: this): string[][] {\n const cycles = super.findCycles(graph);\n if (!this.shouldLimitToSeedersOnly()) {\n return cycles;\n }\n const seederIdsStr = this.seederIds.map((id) => id.toString());\n const cyclesWithSeeders = cycles.filter((cycle) => {\n return cycle.some((cycleIdStr) => seederIdsStr.includes(cycleIdStr));\n });\n return cyclesWithSeeders;\n }\n\n findDuplicateDependencies(): Map<string, DuplicateDependency> {\n const versionMap = this.calculateVersionMap();\n const seederIdsNoVersions = this.seederIds.map((id) => id.toStringWithoutVersion());\n const duplicateDependencies: Map<string, DuplicateDependency> = new Map();\n for (const [compFullName, versions] of versionMap) {\n if (versions.allVersionNodes.length > 1) {\n const versionSubgraphs: VersionSubgraph[] = [];\n const notLatestVersions = versions.allVersionNodes.filter((version) => version !== versions.latestVersionNode);\n notLatestVersions.forEach((version) => {\n const predecessors = this.predecessorsSubgraph(version);\n const immediatePredecessors = this.predecessors(version).map((predecessor) => predecessor.id);\n const subGraph = this.buildFromCleargraph(predecessors);\n const versionSubgraph: VersionSubgraph = {\n versionId: version,\n subGraph,\n // TODO: validate that this is working correctly\n immediateDependents: immediatePredecessors,\n };\n versionSubgraphs.push(versionSubgraph);\n });\n const isSeeder = seederIdsNoVersions.includes(compFullName);\n const shouldDisplayDueToBeingSeeder = !this.shouldLimitToSeedersOnly() || isSeeder;\n if (shouldDisplayDueToBeingSeeder && versionSubgraphs.length > 0) {\n const duplicateDep = new DuplicateDependency(versions.latestVersionNode, versionSubgraphs);\n duplicateDependencies.set(compFullName, duplicateDep);\n }\n }\n }\n return duplicateDependencies;\n }\n\n buildFromCleargraph(graph: Graph<Component, Dependency>): ComponentGraph {\n return this.create(graph.nodes, graph.edges);\n }\n\n runtimeOnly(componentIds: string[]) {\n return this.successorsSubgraph(componentIds, {\n edgeFilter: (edge: DependencyEdge) => edge.attr.type === 'runtime',\n });\n }\n\n private shouldLimitToSeedersOnly() {\n return this.seederIds.length;\n }\n\n private calculateVersionMap(): Map<string, { allVersionNodes: string[]; latestVersionNode: string }> {\n const versionMap: Map<string, { allVersionNodes: string[]; latestVersionNode: string }> = new Map();\n for (const node of this.nodes) {\n const comp = node.attr;\n const compKey = node.id;\n const compFullName = comp.id.toStringWithoutVersion();\n if (!versionMap.has(compFullName)) {\n versionMap.set(compFullName, {\n allVersionNodes: [compKey],\n latestVersionNode: compKey,\n });\n } else {\n const value = versionMap.get(compFullName);\n if (value) {\n if (Object.prototype.hasOwnProperty.call(value, 'allVersionNodes')) {\n value.allVersionNodes.push(compKey);\n }\n const currentComp = comp;\n const latestComp = this.node(value.latestVersionNode)?.attr;\n // @todo: this check won't work when the component doesn't have head.\n // it happens when a dependency is needed in an old version (not head). which Bit doesn't fetch the head\n // Version object, and as a result, the `Component.head` is empty.\n // for now it's probably good enough because it's used only for `findDuplicateDependencies`, which only\n // checks the components on the workspace.\n if (\n currentComp.head &&\n latestComp?.head &&\n new Date(currentComp.head.timestamp) > new Date(latestComp.head.timestamp)\n ) {\n value.latestVersionNode = compKey;\n }\n }\n }\n }\n return versionMap;\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAE,qBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,oBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA+E,SAAAG,gBAAAC,GAAA,EAAAC,GAAA,EAAAC,KAAA,IAAAD,GAAA,GAAAE,cAAA,CAAAF,GAAA,OAAAA,GAAA,IAAAD,GAAA,IAAAI,MAAA,CAAAC,cAAA,CAAAL,GAAA,EAAAC,GAAA,IAAAC,KAAA,EAAAA,KAAA,EAAAI,UAAA,QAAAC,YAAA,QAAAC,QAAA,oBAAAR,GAAA,CAAAC,GAAA,IAAAC,KAAA,WAAAF,GAAA;AAAA,SAAAG,eAAAM,CAAA,QAAAC,CAAA,GAAAC,YAAA,CAAAF,CAAA,uCAAAC,CAAA,GAAAA,CAAA,GAAAE,MAAA,CAAAF,CAAA;AAAA,SAAAC,aAAAF,CAAA,EAAAI,CAAA,2BAAAJ,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAK,CAAA,GAAAL,CAAA,CAAAM,MAAA,CAAAC,WAAA,kBAAAF,CAAA,QAAAJ,CAAA,GAAAI,CAAA,CAAAG,IAAA,CAAAR,CAAA,EAAAI,CAAA,uCAAAH,CAAA,SAAAA,CAAA,YAAAQ,SAAA,yEAAAL,CAAA,GAAAD,MAAA,GAAAO,MAAA,EAAAV,CAAA;AAExE,MAAMW,kBAAkB,GAAAC,OAAA,CAAAD,kBAAA,GAAG,CAAC,cAAc,EAAE,iBAAiB,CAAC;AAK9D,MAAME,cAAc,SAASC,cAAK,CAAwB;EAChC;EAC/BC,WAAWA,CAACC,KAAsB,GAAG,EAAE,EAAEC,KAAuB,GAAG,EAAE,EAAE;IACrE,KAAK,CAACD,KAAK,EAAEC,KAAK,CAAC;IAAC3B,eAAA,oBAFK,EAAE;EAG7B;EAEU4B,MAAMA,CAACF,KAAsB,GAAG,EAAE,EAAEC,KAAuB,GAAG,EAAE,EAAQ;IAChF,OAAO,IAAIJ,cAAc,CAACG,KAAK,EAAEC,KAAK,CAAC;EACzC;;EAEA;AACF;AACA;EACEE,UAAUA,CAACC,KAAY,EAAc;IACnC,MAAMC,MAAM,GAAG,KAAK,CAACF,UAAU,CAACC,KAAK,CAAC;IACtC,IAAI,CAAC,IAAI,CAACE,wBAAwB,CAAC,CAAC,EAAE;MACpC,OAAOD,MAAM;IACf;IACA,MAAME,YAAY,GAAG,IAAI,CAACC,SAAS,CAACC,GAAG,CAAEC,EAAE,IAAKA,EAAE,CAACC,QAAQ,CAAC,CAAC,CAAC;IAC9D,MAAMC,iBAAiB,GAAGP,MAAM,CAACQ,MAAM,CAAEC,KAAK,IAAK;MACjD,OAAOA,KAAK,CAACC,IAAI,CAAEC,UAAU,IAAKT,YAAY,CAACU,QAAQ,CAACD,UAAU,CAAC,CAAC;IACtE,CAAC,CAAC;IACF,OAAOJ,iBAAiB;EAC1B;EAEAM,yBAAyBA,CAAA,EAAqC;IAC5D,MAAMC,UAAU,GAAG,IAAI,CAACC,mBAAmB,CAAC,CAAC;IAC7C,MAAMC,mBAAmB,GAAG,IAAI,CAACb,SAAS,CAACC,GAAG,CAAEC,EAAE,IAAKA,EAAE,CAACY,sBAAsB,CAAC,CAAC,CAAC;IACnF,MAAMC,qBAAuD,GAAG,IAAIC,GAAG,CAAC,CAAC;IACzE,KAAK,MAAM,CAACC,YAAY,EAAEC,QAAQ,CAAC,IAAIP,UAAU,EAAE;MACjD,IAAIO,QAAQ,CAACC,eAAe,CAACC,MAAM,GAAG,CAAC,EAAE;QACvC,MAAMC,gBAAmC,GAAG,EAAE;QAC9C,MAAMC,iBAAiB,GAAGJ,QAAQ,CAACC,eAAe,CAACd,MAAM,CAAEkB,OAAO,IAAKA,OAAO,KAAKL,QAAQ,CAACM,iBAAiB,CAAC;QAC9GF,iBAAiB,CAACG,OAAO,CAAEF,OAAO,IAAK;UACrC,MAAMG,YAAY,GAAG,IAAI,CAACC,oBAAoB,CAACJ,OAAO,CAAC;UACvD,MAAMK,qBAAqB,GAAG,IAAI,CAACF,YAAY,CAACH,OAAO,CAAC,CAACtB,GAAG,CAAE4B,WAAW,IAAKA,WAAW,CAAC3B,EAAE,CAAC;UAC7F,MAAM4B,QAAQ,GAAG,IAAI,CAACC,mBAAmB,CAACL,YAAY,CAAC;UACvD,MAAMM,eAAgC,GAAG;YACvCC,SAAS,EAAEV,OAAO;YAClBO,QAAQ;YACR;YACAI,mBAAmB,EAAEN;UACvB,CAAC;UACDP,gBAAgB,CAACc,IAAI,CAACH,eAAe,CAAC;QACxC,CAAC,CAAC;QACF,MAAMI,QAAQ,GAAGvB,mBAAmB,CAACJ,QAAQ,CAACQ,YAAY,CAAC;QAC3D,MAAMoB,6BAA6B,GAAG,CAAC,IAAI,CAACvC,wBAAwB,CAAC,CAAC,IAAIsC,QAAQ;QAClF,IAAIC,6BAA6B,IAAIhB,gBAAgB,CAACD,MAAM,GAAG,CAAC,EAAE;UAChE,MAAMkB,YAAY,GAAG,KAAIC,0CAAmB,EAACrB,QAAQ,CAACM,iBAAiB,EAAEH,gBAAgB,CAAC;UAC1FN,qBAAqB,CAACyB,GAAG,CAACvB,YAAY,EAAEqB,YAAY,CAAC;QACvD;MACF;IACF;IACA,OAAOvB,qBAAqB;EAC9B;EAEAgB,mBAAmBA,CAACnC,KAAmC,EAAkB;IACvE,OAAO,IAAI,CAACF,MAAM,CAACE,KAAK,CAACJ,KAAK,EAAEI,KAAK,CAACH,KAAK,CAAC;EAC9C;EAEAgD,WAAWA,CAACC,YAAsB,EAAE;IAClC,OAAO,IAAI,CAACC,kBAAkB,CAACD,YAAY,EAAE;MAC3CE,UAAU,EAAGC,IAAoB,IAAKA,IAAI,CAACC,IAAI,CAACC,IAAI,KAAK;IAC3D,CAAC,CAAC;EACJ;EAEQjD,wBAAwBA,CAAA,EAAG;IACjC,OAAO,IAAI,CAACE,SAAS,CAACoB,MAAM;EAC9B;EAEQR,mBAAmBA,CAAA,EAA0E;IACnG,MAAMD,UAAiF,GAAG,IAAIK,GAAG,CAAC,CAAC;IACnG,KAAK,MAAMgC,IAAI,IAAI,IAAI,CAACxD,KAAK,EAAE;MAC7B,MAAMyD,IAAI,GAAGD,IAAI,CAACF,IAAI;MACtB,MAAMI,OAAO,GAAGF,IAAI,CAAC9C,EAAE;MACvB,MAAMe,YAAY,GAAGgC,IAAI,CAAC/C,EAAE,CAACY,sBAAsB,CAAC,CAAC;MACrD,IAAI,CAACH,UAAU,CAACwC,GAAG,CAAClC,YAAY,CAAC,EAAE;QACjCN,UAAU,CAAC6B,GAAG,CAACvB,YAAY,EAAE;UAC3BE,eAAe,EAAE,CAAC+B,OAAO,CAAC;UAC1B1B,iBAAiB,EAAE0B;QACrB,CAAC,CAAC;MACJ,CAAC,MAAM;QACL,MAAMjF,KAAK,GAAG0C,UAAU,CAACyC,GAAG,CAACnC,YAAY,CAAC;QAC1C,IAAIhD,KAAK,EAAE;UACT,IAAIE,MAAM,CAACkF,SAAS,CAACC,cAAc,CAACtE,IAAI,CAACf,KAAK,EAAE,iBAAiB,CAAC,EAAE;YAClEA,KAAK,CAACkD,eAAe,CAACgB,IAAI,CAACe,OAAO,CAAC;UACrC;UACA,MAAMK,WAAW,GAAGN,IAAI;UACxB,MAAMO,UAAU,GAAG,IAAI,CAACR,IAAI,CAAC/E,KAAK,CAACuD,iBAAiB,CAAC,EAAEsB,IAAI;UAC3D;UACA;UACA;UACA;UACA;UACA,IACES,WAAW,CAACE,IAAI,IAChBD,UAAU,EAAEC,IAAI,IAChB,IAAIC,IAAI,CAACH,WAAW,CAACE,IAAI,CAACE,SAAS,CAAC,GAAG,IAAID,IAAI,CAACF,UAAU,CAACC,IAAI,CAACE,SAAS,CAAC,EAC1E;YACA1F,KAAK,CAACuD,iBAAiB,GAAG0B,OAAO;UACnC;QACF;MACF;IACF;IACA,OAAOvC,UAAU;EACnB;AACF;AAACvB,OAAA,CAAAC,cAAA,GAAAA,cAAA"}
@@ -1,9 +1,9 @@
1
1
  import { ComponentID } from '@teambit/component';
2
2
  import { Graph, Node, Edge } from '@teambit/graph.cleargraph';
3
- export declare type DepEdgeType = 'prod' | 'dev' | 'ext';
4
- declare type ComponentIdNode = Node<ComponentID>;
5
- declare type DependencyEdge = Edge<DepEdgeType>;
6
- export declare type CompIdGraph = Graph<ComponentID, DepEdgeType>;
3
+ export type DepEdgeType = 'prod' | 'dev' | 'ext';
4
+ type ComponentIdNode = Node<ComponentID>;
5
+ type DependencyEdge = Edge<DepEdgeType>;
6
+ export type CompIdGraph = Graph<ComponentID, DepEdgeType>;
7
7
  export declare class ComponentIdGraph extends Graph<ComponentID, DepEdgeType> {
8
8
  seederIds: ComponentID[];
9
9
  constructor(nodes?: ComponentIdNode[], edges?: DependencyEdge[]);
@@ -4,7 +4,7 @@ export declare class DuplicateDependency {
4
4
  priorVersions: VersionSubgraph[];
5
5
  constructor(latestVersionId: string, priorVersions: VersionSubgraph[]);
6
6
  }
7
- export declare type VersionSubgraph = {
7
+ export type VersionSubgraph = {
8
8
  versionId: string;
9
9
  subGraph: ComponentGraph;
10
10
  immediateDependents: string[];
@@ -1,7 +1,7 @@
1
1
  import { ComponentFactory, ComponentID, ComponentMain } from '@teambit/component';
2
2
  import { ComponentGraph } from './component-graph';
3
3
  import { ComponentIdGraph } from './component-id-graph';
4
- export declare type GetGraphOpts = {
4
+ export type GetGraphOpts = {
5
5
  host?: ComponentFactory;
6
6
  };
7
7
  export declare class GraphBuilder {
@@ -1,6 +1,6 @@
1
1
  import { Command, CommandOptions } from '@teambit/cli';
2
2
  import { ComponentMain } from '@teambit/component';
3
- declare type GraphOpt = {
3
+ type GraphOpt = {
4
4
  image?: string;
5
5
  remote?: string;
6
6
  allVersions?: boolean;
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { Section } from '@teambit/component';
3
3
  import { ChangeType } from '@teambit/component.ui.component-compare.models.component-compare-change-type';
4
4
  import { TabItem } from '@teambit/component.ui.component-compare.models.component-compare-props';
@@ -13,7 +13,7 @@ export declare class GraphCompareSection implements Section, TabItem {
13
13
  };
14
14
  route: {
15
15
  path: string;
16
- element: React.JSX.Element;
16
+ element: JSX.Element;
17
17
  };
18
18
  order: number;
19
19
  changeType: ChangeType;
@@ -1,2 +1,2 @@
1
- import React from 'react';
2
- export declare const Logo: () => React.JSX.Element;
1
+ /// <reference types="react" />
2
+ export declare const Logo: () => JSX.Element;
@@ -14,7 +14,7 @@ export declare class GraphMain {
14
14
  */
15
15
  getGraph(ids?: ComponentID[], opts?: GetGraphOpts): Promise<ComponentGraph>;
16
16
  getGraphIds(ids?: ComponentID[], opts?: GetGraphOpts): Promise<ComponentIdGraph>;
17
- static slots: never[];
17
+ static slots: any[];
18
18
  static dependencies: import("@teambit/harmony").Aspect[];
19
19
  static runtime: import("@teambit/harmony").RuntimeDefinition;
20
20
  static provider([graphql, componentAspect, cli, loggerMain]: [
@@ -6,9 +6,9 @@ import { DependenciesGraph } from './ui/dependencies-graph';
6
6
  export interface ComponentWidgetProps extends React.HTMLAttributes<HTMLDivElement> {
7
7
  component: ComponentModel;
8
8
  }
9
- export declare type ComponentWidget = ComponentType<ComponentWidgetProps>;
10
- export declare type ComponentWidgetSlot = SlotRegistry<ComponentWidget>;
11
- export declare type GraphUIConfig = {
9
+ export type ComponentWidget = ComponentType<ComponentWidgetProps>;
10
+ export type ComponentWidgetSlot = SlotRegistry<ComponentWidget>;
11
+ export type GraphUIConfig = {
12
12
  componentTab: boolean;
13
13
  };
14
14
  /**
@@ -1,4 +1,4 @@
1
- export declare type DependencyType = 'dev' | 'peer' | 'runtime';
1
+ export type DependencyType = 'dev' | 'peer' | 'runtime';
2
2
  export declare class Dependency {
3
3
  readonly type: DependencyType;
4
4
  constructor(type: DependencyType);
@@ -1 +1 @@
1
- export declare type GraphFilter = 'runtimeOnly' | undefined;
1
+ export type GraphFilter = 'runtimeOnly' | undefined;
@@ -3,8 +3,8 @@ import { ComponentID } from '@teambit/component-id';
3
3
  import type { ObjectList } from '@teambit/legacy/dist/scope/objects/object-list';
4
4
  import { BitObjectList } from '@teambit/legacy/dist/scope/objects/bit-object-list';
5
5
  import { Dependency } from './model/dependency';
6
- declare type BitIdNode = Node<ComponentID>;
7
- declare type DependencyEdge = Edge<Dependency>;
6
+ type BitIdNode = Node<ComponentID>;
7
+ type DependencyEdge = Edge<Dependency>;
8
8
  export declare class IdGraph extends Graph<ComponentID, Dependency> {
9
9
  constructor(nodes?: BitIdNode[], edges?: DependencyEdge[]);
10
10
  }
@@ -51,8 +51,8 @@ async function bitObjectListToGraph(bitObjectsList) {
51
51
  const nodes = [];
52
52
  const edges = [];
53
53
  await Promise.all(components.map(async component => {
54
- const compFromMetadata = exportMetadata === null || exportMetadata === void 0 ? void 0 : exportMetadata.exportVersions.find(c => c.id.isEqualWithoutVersion(component.toComponentId()));
55
- const startFrom = compFromMetadata === null || compFromMetadata === void 0 ? void 0 : compFromMetadata.head;
54
+ const compFromMetadata = exportMetadata?.exportVersions.find(c => c.id.isEqualWithoutVersion(component.toComponentId()));
55
+ const startFrom = compFromMetadata?.head;
56
56
  const versionsInfo = await (0, _traverseVersions().getAllVersionsInfo)({
57
57
  modelComponent: component,
58
58
  versionObjects: versions,
@@ -1 +1 @@
1
- {"version":3,"names":["_graph","data","require","_lodash","_traverseVersions","_dependency","IdGraph","Graph","constructor","nodes","edges","exports","objectListToGraph","objectList","bitObjectsList","toBitObjects","bitObjectListToGraph","exportMetadata","getExportMetadata","components","getComponents","versions","getVersions","Promise","all","map","component","compFromMetadata","exportVersions","find","c","id","isEqualWithoutVersion","toComponentId","startFrom","head","versionsInfo","getAllVersionsInfo","modelComponent","versionObjects","throws","forEach","versionInfo","changeVersion","tag","ref","toString","idStr","push","Node","version","dependencies","devDependencies","extensionDependencies","depsIdsGroupedByType","addDep","depId","edge","depIdStr","Edge","runTime","Dependency","dev","uniqNodes","uniqBy","idGraph"],"sources":["object-list-to-graph.ts"],"sourcesContent":["import { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { uniqBy } from 'lodash';\nimport { ComponentID } from '@teambit/component-id';\nimport type { ObjectList } from '@teambit/legacy/dist/scope/objects/object-list';\nimport { BitObjectList } from '@teambit/legacy/dist/scope/objects/bit-object-list';\nimport { getAllVersionsInfo } from '@teambit/legacy/dist/scope/component-ops/traverse-versions';\nimport { Dependency } from './model/dependency';\n\ntype BitIdNode = Node<ComponentID>;\ntype DependencyEdge = Edge<Dependency>;\n\nexport class IdGraph extends Graph<ComponentID, Dependency> {\n constructor(nodes: BitIdNode[] = [], edges: DependencyEdge[] = []) {\n super(nodes, edges);\n }\n}\n\nexport async function objectListToGraph(objectList: ObjectList): Promise<IdGraph> {\n const bitObjectsList = await objectList.toBitObjects();\n\n return bitObjectListToGraph(bitObjectsList);\n}\n\nexport async function bitObjectListToGraph(bitObjectsList: BitObjectList): Promise<IdGraph> {\n const exportMetadata = bitObjectsList.getExportMetadata();\n const components = bitObjectsList.getComponents();\n const versions = bitObjectsList.getVersions();\n const nodes: BitIdNode[] = [];\n const edges: DependencyEdge[] = [];\n await Promise.all(\n components.map(async (component) => {\n const compFromMetadata = exportMetadata?.exportVersions.find((c) =>\n c.id.isEqualWithoutVersion(component.toComponentId())\n );\n const startFrom = compFromMetadata?.head;\n const versionsInfo = await getAllVersionsInfo({\n modelComponent: component,\n versionObjects: versions,\n startFrom,\n throws: false,\n });\n versionsInfo.forEach((versionInfo) => {\n const id = component.toComponentId().changeVersion(versionInfo.tag || versionInfo.ref.toString());\n const idStr = id.toString();\n nodes.push(new Node(idStr, id));\n if (!versionInfo.version) {\n return;\n }\n const { dependencies, devDependencies, extensionDependencies } = versionInfo.version.depsIdsGroupedByType;\n const addDep = (depId: ComponentID, edge: Dependency) => {\n const depIdStr = depId.toString();\n nodes.push(new Node(depIdStr, depId));\n edges.push(new Edge(idStr, depIdStr, edge));\n };\n const runTime = new Dependency('runtime');\n const dev = new Dependency('dev');\n dependencies.forEach((depId) => addDep(depId, runTime));\n [...devDependencies, ...extensionDependencies].forEach((depId) => addDep(depId, dev));\n });\n })\n );\n const uniqNodes = uniqBy(nodes, 'id');\n const idGraph = new IdGraph(uniqNodes, edges);\n\n return idGraph;\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_graph","data","require","_lodash","_traverseVersions","_dependency","IdGraph","Graph","constructor","nodes","edges","exports","objectListToGraph","objectList","bitObjectsList","toBitObjects","bitObjectListToGraph","exportMetadata","getExportMetadata","components","getComponents","versions","getVersions","Promise","all","map","component","compFromMetadata","exportVersions","find","c","id","isEqualWithoutVersion","toComponentId","startFrom","head","versionsInfo","getAllVersionsInfo","modelComponent","versionObjects","throws","forEach","versionInfo","changeVersion","tag","ref","toString","idStr","push","Node","version","dependencies","devDependencies","extensionDependencies","depsIdsGroupedByType","addDep","depId","edge","depIdStr","Edge","runTime","Dependency","dev","uniqNodes","uniqBy","idGraph"],"sources":["object-list-to-graph.ts"],"sourcesContent":["import { Graph, Node, Edge } from '@teambit/graph.cleargraph';\nimport { uniqBy } from 'lodash';\nimport { ComponentID } from '@teambit/component-id';\nimport type { ObjectList } from '@teambit/legacy/dist/scope/objects/object-list';\nimport { BitObjectList } from '@teambit/legacy/dist/scope/objects/bit-object-list';\nimport { getAllVersionsInfo } from '@teambit/legacy/dist/scope/component-ops/traverse-versions';\nimport { Dependency } from './model/dependency';\n\ntype BitIdNode = Node<ComponentID>;\ntype DependencyEdge = Edge<Dependency>;\n\nexport class IdGraph extends Graph<ComponentID, Dependency> {\n constructor(nodes: BitIdNode[] = [], edges: DependencyEdge[] = []) {\n super(nodes, edges);\n }\n}\n\nexport async function objectListToGraph(objectList: ObjectList): Promise<IdGraph> {\n const bitObjectsList = await objectList.toBitObjects();\n\n return bitObjectListToGraph(bitObjectsList);\n}\n\nexport async function bitObjectListToGraph(bitObjectsList: BitObjectList): Promise<IdGraph> {\n const exportMetadata = bitObjectsList.getExportMetadata();\n const components = bitObjectsList.getComponents();\n const versions = bitObjectsList.getVersions();\n const nodes: BitIdNode[] = [];\n const edges: DependencyEdge[] = [];\n await Promise.all(\n components.map(async (component) => {\n const compFromMetadata = exportMetadata?.exportVersions.find((c) =>\n c.id.isEqualWithoutVersion(component.toComponentId())\n );\n const startFrom = compFromMetadata?.head;\n const versionsInfo = await getAllVersionsInfo({\n modelComponent: component,\n versionObjects: versions,\n startFrom,\n throws: false,\n });\n versionsInfo.forEach((versionInfo) => {\n const id = component.toComponentId().changeVersion(versionInfo.tag || versionInfo.ref.toString());\n const idStr = id.toString();\n nodes.push(new Node(idStr, id));\n if (!versionInfo.version) {\n return;\n }\n const { dependencies, devDependencies, extensionDependencies } = versionInfo.version.depsIdsGroupedByType;\n const addDep = (depId: ComponentID, edge: Dependency) => {\n const depIdStr = depId.toString();\n nodes.push(new Node(depIdStr, depId));\n edges.push(new Edge(idStr, depIdStr, edge));\n };\n const runTime = new Dependency('runtime');\n const dev = new Dependency('dev');\n dependencies.forEach((depId) => addDep(depId, runTime));\n [...devDependencies, ...extensionDependencies].forEach((depId) => addDep(depId, dev));\n });\n })\n );\n const uniqNodes = uniqBy(nodes, 'id');\n const idGraph = new IdGraph(uniqNodes, edges);\n\n return idGraph;\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.component_graph@1.0.107/dist/graph.composition.js';
2
- import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_graph@1.0.107/dist/graph.docs.md';
1
+ import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_graph@1.0.109/dist/graph.composition.js';
2
+ import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad3d35bfc38b9cd90c0e05b598a5a55af/teambit.component_graph@1.0.109/dist/graph.docs.md';
3
3
 
4
4
  export const compositions = [compositions_0];
5
5
  export const overview = [overview_0];
@@ -1,8 +1,8 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { CardProps } from '@teambit/base-ui.surfaces.card';
3
3
  import { NodeModel } from '../query/node-model';
4
4
  export interface IComponentNode extends CardProps {
5
5
  node: NodeModel;
6
6
  type: string;
7
7
  }
8
- export declare function ComponentNode({ node, type, ...rest }: IComponentNode): React.JSX.Element;
8
+ export declare function ComponentNode({ node, type, ...rest }: IComponentNode): JSX.Element;
@@ -1,6 +1,6 @@
1
1
  import { ComponentModel } from '@teambit/component';
2
2
  import { NodeModel } from '@teambit/graph';
3
- export declare type CompareStatus = 'modified' | 'new' | 'deleted' | undefined;
3
+ export type CompareStatus = 'modified' | 'new' | 'deleted' | undefined;
4
4
  export declare class CompareNodeModel extends NodeModel {
5
5
  id: string;
6
6
  component: ComponentModel;
@@ -1,2 +1,2 @@
1
- import React from 'react';
2
- export declare function DependenciesCompare(): React.JSX.Element;
1
+ /// <reference types="react" />
2
+ export declare function DependenciesCompare(): JSX.Element;
@@ -96,11 +96,10 @@ const NodeTypes = {
96
96
  ComponentNode: ComponentNodeContainer
97
97
  };
98
98
  function DependenciesCompare() {
99
- var _componentCompare$bas, _componentCompare$com;
100
99
  const graphRef = (0, _react().useRef)();
101
100
  const componentCompare = (0, _componentUiComponentCompare().useComponentCompare)();
102
- const baseId = componentCompare === null || componentCompare === void 0 || (_componentCompare$bas = componentCompare.base) === null || _componentCompare$bas === void 0 ? void 0 : _componentCompare$bas.model.id;
103
- const compareId = componentCompare === null || componentCompare === void 0 || (_componentCompare$com = componentCompare.compare) === null || _componentCompare$com === void 0 ? void 0 : _componentCompare$com.model.id;
101
+ const baseId = componentCompare?.base?.model.id;
102
+ const compareId = componentCompare?.compare?.model.id;
104
103
  const [filter, setFilter] = (0, _react().useState)('runtimeOnly');
105
104
  const isFiltered = filter === 'runtimeOnly';
106
105
  const {
@@ -118,29 +117,26 @@ function DependenciesCompare() {
118
117
  });
119
118
  (0, _react().useEffect)(() => () => graphRef.current = undefined, []);
120
119
  (0, _react().useEffect)(() => {
121
- var _graphRef$current;
122
- (_graphRef$current = graphRef.current) === null || _graphRef$current === void 0 || _graphRef$current.fitView();
120
+ graphRef.current?.fitView();
123
121
  }, [elements]);
124
122
  const handleLoad = (0, _react().useCallback)(instance => {
125
123
  graphRef.current = instance;
126
- if (((graph === null || graph === void 0 ? void 0 : graph.nodes.length) ?? 0) <= 3) {
127
- var _graphRef$current2;
128
- (_graphRef$current2 = graphRef.current) === null || _graphRef$current2 === void 0 || _graphRef$current2.fitView({
124
+ if ((graph?.nodes.length ?? 0) <= 3) {
125
+ graphRef.current?.fitView({
129
126
  padding: 2
130
127
  });
131
128
  } else {
132
129
  instance.fitView();
133
130
  }
134
- }, [graph === null || graph === void 0 ? void 0 : graph.nodes.length]);
131
+ }, [graph?.nodes.length]);
135
132
  (0, _react().useEffect)(() => {
136
133
  setTimeout(() => {
137
- var _graphRef$current3, _graphRef$current4;
138
- if (((graph === null || graph === void 0 ? void 0 : graph.nodes.length) ?? 0) <= 3) return (_graphRef$current3 = graphRef.current) === null || _graphRef$current3 === void 0 ? void 0 : _graphRef$current3.fitView({
134
+ if ((graph?.nodes.length ?? 0) <= 3) return graphRef.current?.fitView({
139
135
  padding: 2
140
136
  });
141
- return (_graphRef$current4 = graphRef.current) === null || _graphRef$current4 === void 0 ? void 0 : _graphRef$current4.fitView();
137
+ return graphRef.current?.fitView();
142
138
  }, 0);
143
- }, [compareId === null || compareId === void 0 ? void 0 : compareId.toString(), baseId === null || baseId === void 0 ? void 0 : baseId.toString()]);
139
+ }, [compareId?.toString(), baseId?.toString()]);
144
140
  const onCheckFilter = _isFiltered => {
145
141
  setFilter(_isFiltered ? 'runtimeOnly' : undefined);
146
142
  };
@@ -1 +1 @@
1
- {"version":3,"names":["_classnames","data","_interopRequireDefault","require","_designUi","_graph","_componentUiComponentCompare","_react","_interopRequireWildcard","_reactFlowRenderer","_dependenciesCompareModule","_dependencyCompareNode","_diffGraph","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ComponentNodeContainer","props","sourcePosition","Position","Top","targetPosition","Bottom","id","createElement","key","Handle","type","position","isConnectable","DependencyCompareNode","node","NodeTypes","ComponentNode","DependenciesCompare","_componentCompare$bas","_componentCompare$com","graphRef","useRef","componentCompare","useComponentCompare","baseId","base","model","compareId","compare","filter","setFilter","useState","isFiltered","loading","baseLoading","graph","baseGraph","useGraphQuery","toString","compareLoading","compareGraph","diffGraph","undefined","elements","calcElements","rootNode","useEffect","current","_graphRef$current","fitView","handleLoad","useCallback","instance","nodes","length","_graphRef$current2","padding","setTimeout","_graphRef$current3","_graphRef$current4","onCheckFilter","_isFiltered","Fragment","className","classNames","styles","page","graphPageStyles","loader","RoundLoader","ReactFlowProvider","draggable","nodesDraggable","selectNodesOnDrag","nodesConnectable","zoomOnDoubleClick","elementsSelectable","maxZoom","minZoom","dependenciesGraphStyles","nodeTypes","onLoad","Background","Controls","controls","MiniMap","nodeColor","calcMinimapColors","minimap","GraphFilters","filters","disable","onChangeFilter"],"sources":["dependencies-compare.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { RoundLoader } from '@teambit/design.ui.round-loader';\nimport {\n calcElements,\n calcMinimapColors,\n dependenciesGraphStyles,\n GraphFilter,\n GraphFilters,\n graphPageStyles,\n useGraphQuery,\n} from '@teambit/graph';\nimport { useComponentCompare } from '@teambit/component.ui.component-compare.context';\nimport React, { useEffect, useRef, useState, useCallback } from 'react';\nimport ReactFlow, {\n Background,\n Controls,\n Handle,\n MiniMap,\n NodeProps,\n NodeTypesType,\n OnLoadParams,\n Position,\n ReactFlowProvider,\n} from 'react-flow-renderer';\nimport styles from './dependencies-compare.module.scss';\nimport { DependencyCompareNode } from './dependency-compare-node';\nimport { diffGraph } from './diff-graph';\n\nfunction ComponentNodeContainer(props: NodeProps) {\n const { sourcePosition = Position.Top, targetPosition = Position.Bottom, data, id } = props;\n\n return (\n <div key={id}>\n <Handle type=\"target\" position={targetPosition} isConnectable={false} />\n <Handle type=\"source\" position={sourcePosition} isConnectable={false} />\n <DependencyCompareNode node={data.node} type={data.type} />\n </div>\n );\n}\n\nconst NodeTypes: NodeTypesType = { ComponentNode: ComponentNodeContainer };\n\nexport function DependenciesCompare() {\n const graphRef = useRef<OnLoadParams>();\n const componentCompare = useComponentCompare();\n\n const baseId = componentCompare?.base?.model.id;\n const compareId = componentCompare?.compare?.model.id;\n\n const [filter, setFilter] = useState<GraphFilter>('runtimeOnly');\n const isFiltered = filter === 'runtimeOnly';\n const { loading: baseLoading, graph: baseGraph } = useGraphQuery(baseId && [baseId.toString()], filter);\n const { loading: compareLoading, graph: compareGraph } = useGraphQuery(compareId && [compareId.toString()], filter);\n const loading = baseLoading || compareLoading;\n const graph = diffGraph(baseGraph, compareGraph, baseId) ?? undefined;\n const elements = calcElements(graph, { rootNode: baseId });\n\n useEffect(() => () => (graphRef.current = undefined), []);\n\n useEffect(() => {\n graphRef.current?.fitView();\n }, [elements]);\n\n const handleLoad = useCallback(\n (instance: OnLoadParams) => {\n graphRef.current = instance;\n if ((graph?.nodes.length ?? 0) <= 3) {\n graphRef.current?.fitView({\n padding: 2,\n });\n } else {\n instance.fitView();\n }\n },\n [graph?.nodes.length]\n );\n\n useEffect(() => {\n setTimeout(() => {\n if ((graph?.nodes.length ?? 0) <= 3)\n return graphRef.current?.fitView({\n padding: 2,\n });\n return graphRef.current?.fitView();\n }, 0);\n }, [compareId?.toString(), baseId?.toString()]);\n\n const onCheckFilter = (_isFiltered: boolean) => {\n setFilter(_isFiltered ? 'runtimeOnly' : undefined);\n };\n\n if (!loading && (!baseGraph || !compareGraph)) {\n return <></>;\n }\n\n return (\n <div className={classNames([styles.page, graphPageStyles.graph])}>\n {loading && (\n <div className={styles.loader}>\n <RoundLoader />\n </div>\n )}\n <ReactFlowProvider>\n <ReactFlow\n draggable={false}\n nodesDraggable={true}\n selectNodesOnDrag={false}\n nodesConnectable={false}\n zoomOnDoubleClick={false}\n elementsSelectable={false}\n maxZoom={100}\n minZoom={0}\n className={dependenciesGraphStyles.graph}\n elements={elements}\n nodeTypes={NodeTypes}\n onLoad={handleLoad}\n >\n <Background />\n <Controls className={dependenciesGraphStyles.controls} />\n <MiniMap nodeColor={calcMinimapColors} className={dependenciesGraphStyles.minimap} />\n <GraphFilters\n className={graphPageStyles.filters}\n disable={loading}\n isFiltered={isFiltered}\n onChangeFilter={onCheckFilter}\n />\n </ReactFlow>\n </ReactFlowProvider>\n </div>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_classnames","data","_interopRequireDefault","require","_designUi","_graph","_componentUiComponentCompare","_react","_interopRequireWildcard","_reactFlowRenderer","_dependenciesCompareModule","_dependencyCompareNode","_diffGraph","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","obj","ComponentNodeContainer","props","sourcePosition","Position","Top","targetPosition","Bottom","id","createElement","key","Handle","type","position","isConnectable","DependencyCompareNode","node","NodeTypes","ComponentNode","DependenciesCompare","graphRef","useRef","componentCompare","useComponentCompare","baseId","base","model","compareId","compare","filter","setFilter","useState","isFiltered","loading","baseLoading","graph","baseGraph","useGraphQuery","toString","compareLoading","compareGraph","diffGraph","undefined","elements","calcElements","rootNode","useEffect","current","fitView","handleLoad","useCallback","instance","nodes","length","padding","setTimeout","onCheckFilter","_isFiltered","Fragment","className","classNames","styles","page","graphPageStyles","loader","RoundLoader","ReactFlowProvider","draggable","nodesDraggable","selectNodesOnDrag","nodesConnectable","zoomOnDoubleClick","elementsSelectable","maxZoom","minZoom","dependenciesGraphStyles","nodeTypes","onLoad","Background","Controls","controls","MiniMap","nodeColor","calcMinimapColors","minimap","GraphFilters","filters","disable","onChangeFilter"],"sources":["dependencies-compare.tsx"],"sourcesContent":["import classNames from 'classnames';\nimport { RoundLoader } from '@teambit/design.ui.round-loader';\nimport {\n calcElements,\n calcMinimapColors,\n dependenciesGraphStyles,\n GraphFilter,\n GraphFilters,\n graphPageStyles,\n useGraphQuery,\n} from '@teambit/graph';\nimport { useComponentCompare } from '@teambit/component.ui.component-compare.context';\nimport React, { useEffect, useRef, useState, useCallback } from 'react';\nimport ReactFlow, {\n Background,\n Controls,\n Handle,\n MiniMap,\n NodeProps,\n NodeTypesType,\n OnLoadParams,\n Position,\n ReactFlowProvider,\n} from 'react-flow-renderer';\nimport styles from './dependencies-compare.module.scss';\nimport { DependencyCompareNode } from './dependency-compare-node';\nimport { diffGraph } from './diff-graph';\n\nfunction ComponentNodeContainer(props: NodeProps) {\n const { sourcePosition = Position.Top, targetPosition = Position.Bottom, data, id } = props;\n\n return (\n <div key={id}>\n <Handle type=\"target\" position={targetPosition} isConnectable={false} />\n <Handle type=\"source\" position={sourcePosition} isConnectable={false} />\n <DependencyCompareNode node={data.node} type={data.type} />\n </div>\n );\n}\n\nconst NodeTypes: NodeTypesType = { ComponentNode: ComponentNodeContainer };\n\nexport function DependenciesCompare() {\n const graphRef = useRef<OnLoadParams>();\n const componentCompare = useComponentCompare();\n\n const baseId = componentCompare?.base?.model.id;\n const compareId = componentCompare?.compare?.model.id;\n\n const [filter, setFilter] = useState<GraphFilter>('runtimeOnly');\n const isFiltered = filter === 'runtimeOnly';\n const { loading: baseLoading, graph: baseGraph } = useGraphQuery(baseId && [baseId.toString()], filter);\n const { loading: compareLoading, graph: compareGraph } = useGraphQuery(compareId && [compareId.toString()], filter);\n const loading = baseLoading || compareLoading;\n const graph = diffGraph(baseGraph, compareGraph, baseId) ?? undefined;\n const elements = calcElements(graph, { rootNode: baseId });\n\n useEffect(() => () => (graphRef.current = undefined), []);\n\n useEffect(() => {\n graphRef.current?.fitView();\n }, [elements]);\n\n const handleLoad = useCallback(\n (instance: OnLoadParams) => {\n graphRef.current = instance;\n if ((graph?.nodes.length ?? 0) <= 3) {\n graphRef.current?.fitView({\n padding: 2,\n });\n } else {\n instance.fitView();\n }\n },\n [graph?.nodes.length]\n );\n\n useEffect(() => {\n setTimeout(() => {\n if ((graph?.nodes.length ?? 0) <= 3)\n return graphRef.current?.fitView({\n padding: 2,\n });\n return graphRef.current?.fitView();\n }, 0);\n }, [compareId?.toString(), baseId?.toString()]);\n\n const onCheckFilter = (_isFiltered: boolean) => {\n setFilter(_isFiltered ? 'runtimeOnly' : undefined);\n };\n\n if (!loading && (!baseGraph || !compareGraph)) {\n return <></>;\n }\n\n return (\n <div className={classNames([styles.page, graphPageStyles.graph])}>\n {loading && (\n <div className={styles.loader}>\n <RoundLoader />\n </div>\n )}\n <ReactFlowProvider>\n <ReactFlow\n draggable={false}\n nodesDraggable={true}\n selectNodesOnDrag={false}\n nodesConnectable={false}\n zoomOnDoubleClick={false}\n elementsSelectable={false}\n maxZoom={100}\n minZoom={0}\n className={dependenciesGraphStyles.graph}\n elements={elements}\n nodeTypes={NodeTypes}\n onLoad={handleLoad}\n >\n <Background />\n <Controls className={dependenciesGraphStyles.controls} />\n <MiniMap nodeColor={calcMinimapColors} className={dependenciesGraphStyles.minimap} />\n <GraphFilters\n className={graphPageStyles.filters}\n disable={loading}\n isFiltered={isFiltered}\n onChangeFilter={onCheckFilter}\n />\n </ReactFlow>\n </ReactFlowProvider>\n </div>\n );\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { CompareNodeModel } from './compare-node-model';
3
- export declare type DependencyCompareNodeProps = {
3
+ export type DependencyCompareNodeProps = {
4
4
  node: CompareNodeModel;
5
5
  type?: string;
6
6
  };
7
- export declare function DependencyCompareNode(props: DependencyCompareNodeProps): React.JSX.Element;
7
+ export declare function DependencyCompareNode(props: DependencyCompareNodeProps): JSX.Element;
@@ -1,4 +1,4 @@
1
1
  import { ComponentID } from '@teambit/component';
2
2
  import { EdgeModel, GraphModel, NodeModel } from '@teambit/graph';
3
3
  import { CompareGraphModel } from './compare-graph-model';
4
- export declare function diffGraph(baseGraph?: GraphModel<NodeModel, EdgeModel>, compareGraph?: GraphModel<NodeModel, EdgeModel>, baseId?: ComponentID): CompareGraphModel | null;
4
+ export declare function diffGraph(baseGraph?: GraphModel<NodeModel, EdgeModel>, compareGraph?: GraphModel<NodeModel, EdgeModel>, baseId?: ComponentID): CompareGraphModel;
@@ -54,13 +54,10 @@ function diffGraph(baseGraph, compareGraph, baseId) {
54
54
  }
55
55
  const allNodesMap = new Map(allNodes.map(n => [toShortId(n), n]));
56
56
  const baseEdgesMap = new Map(baseGraph.edges.map(baseEdge => [getEdgeId(baseEdge), baseEdge]));
57
- const edgesOnlyInCompare = compareGraph.edges.filter(compareEdge => !baseEdgesMap.has(getEdgeId(compareEdge))).map(compareEdge => {
58
- var _allNodesMap$get, _allNodesMap$get2;
59
- return _objectSpread(_objectSpread({}, compareEdge), {}, {
60
- sourceId: ((_allNodesMap$get = allNodesMap.get(toShortIdFromNodeId(compareEdge.sourceId))) === null || _allNodesMap$get === void 0 ? void 0 : _allNodesMap$get.id.toString()) || baseId.toString(),
61
- targetId: ((_allNodesMap$get2 = allNodesMap.get(toShortIdFromNodeId(compareEdge.targetId))) === null || _allNodesMap$get2 === void 0 ? void 0 : _allNodesMap$get2.id.toString()) || baseId.toString()
62
- });
63
- });
57
+ const edgesOnlyInCompare = compareGraph.edges.filter(compareEdge => !baseEdgesMap.has(getEdgeId(compareEdge))).map(compareEdge => _objectSpread(_objectSpread({}, compareEdge), {}, {
58
+ sourceId: allNodesMap.get(toShortIdFromNodeId(compareEdge.sourceId))?.id.toString() || baseId.toString(),
59
+ targetId: allNodesMap.get(toShortIdFromNodeId(compareEdge.targetId))?.id.toString() || baseId.toString()
60
+ }));
64
61
  const allEdges = [...baseGraph.edges, ...edgesOnlyInCompare];
65
62
  return new (_compareGraphModel().CompareGraphModel)(allNodes, allEdges);
66
63
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_compareGraphModel","data","require","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","String","Symbol","toPrimitive","call","TypeError","Number","toShortId","node","component","id","toStringWithoutVersion","toShortIdFromNodeId","nodeId","split","delim","getEdgeId","_e","sourceId","targetId","diffGraph","baseGraph","compareGraph","baseId","baseNodes","nodes","compareNodes","baseNodesMap","Map","map","n","compareNodesMap","allNodes","baseNode","compareNode","get","compareVersion","version","status","isEqual","undefined","newNodes","has","allNodesMap","baseEdgesMap","edges","baseEdge","edgesOnlyInCompare","compareEdge","_allNodesMap$get","_allNodesMap$get2","toString","allEdges","CompareGraphModel"],"sources":["diff-graph.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport { EdgeModel, GraphModel, NodeModel } from '@teambit/graph';\nimport { CompareGraphModel } from './compare-graph-model';\nimport { CompareNodeModel } from './compare-node-model';\n\nconst toShortId = (node: NodeModel) => node.component.id.toStringWithoutVersion();\n\n// this is to get a key with versions ignored so that we'll have a unique set of component nodes\nconst toShortIdFromNodeId = (nodeId: string) => nodeId.split('@')[0];\n\nconst delim = '::';\n\nconst getEdgeId = (_e: EdgeModel) => {\n return `${toShortIdFromNodeId(_e.sourceId)}${delim}${toShortIdFromNodeId(_e.targetId)}`;\n};\n\nexport function diffGraph(\n baseGraph?: GraphModel<NodeModel, EdgeModel>,\n compareGraph?: GraphModel<NodeModel, EdgeModel>,\n baseId?: ComponentID\n) {\n if (!baseGraph || !compareGraph || !baseId) return null;\n\n const baseNodes = baseGraph.nodes;\n const compareNodes = compareGraph.nodes;\n\n const baseNodesMap = new Map<string, NodeModel>(baseNodes.map((n) => [toShortId(n), n]));\n const compareNodesMap = new Map<string, NodeModel>(compareNodes.map((n) => [toShortId(n), n]));\n\n const allNodes: Array<CompareNodeModel> = [];\n for (const baseNode of baseNodes) {\n const compareNode = compareNodesMap.get(toShortId(baseNode));\n if (compareNode) {\n allNodes.push({\n ...baseNode,\n compareVersion: compareNode.component.version,\n status: compareNode.component.id.isEqual(baseNode.component.id) ? undefined : 'modified',\n });\n } else {\n allNodes.push({\n ...baseNode,\n compareVersion: baseNode.component.version,\n status: 'deleted',\n });\n }\n }\n\n const newNodes = compareNodes.filter((n) => !baseNodesMap.has(toShortId(n)));\n\n for (const node of newNodes) {\n allNodes.push({\n ...node,\n compareVersion: '',\n status: 'new',\n });\n }\n const allNodesMap = new Map<string, CompareNodeModel>(allNodes.map((n) => [toShortId(n), n]));\n\n const baseEdgesMap = new Map<string, EdgeModel>(baseGraph.edges.map((baseEdge) => [getEdgeId(baseEdge), baseEdge]));\n const edgesOnlyInCompare = compareGraph.edges\n .filter((compareEdge) => !baseEdgesMap.has(getEdgeId(compareEdge)))\n .map((compareEdge) => ({\n ...compareEdge,\n sourceId: allNodesMap.get(toShortIdFromNodeId(compareEdge.sourceId))?.id.toString() || baseId.toString(),\n targetId: allNodesMap.get(toShortIdFromNodeId(compareEdge.targetId))?.id.toString() || baseId.toString(),\n }));\n const allEdges = [...baseGraph.edges, ...edgesOnlyInCompare];\n return new CompareGraphModel(allNodes, allEdges);\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_compareGraphModel","data","require","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","String","Symbol","toPrimitive","call","TypeError","Number","toShortId","node","component","id","toStringWithoutVersion","toShortIdFromNodeId","nodeId","split","delim","getEdgeId","_e","sourceId","targetId","diffGraph","baseGraph","compareGraph","baseId","baseNodes","nodes","compareNodes","baseNodesMap","Map","map","n","compareNodesMap","allNodes","baseNode","compareNode","get","compareVersion","version","status","isEqual","undefined","newNodes","has","allNodesMap","baseEdgesMap","edges","baseEdge","edgesOnlyInCompare","compareEdge","toString","allEdges","CompareGraphModel"],"sources":["diff-graph.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport { EdgeModel, GraphModel, NodeModel } from '@teambit/graph';\nimport { CompareGraphModel } from './compare-graph-model';\nimport { CompareNodeModel } from './compare-node-model';\n\nconst toShortId = (node: NodeModel) => node.component.id.toStringWithoutVersion();\n\n// this is to get a key with versions ignored so that we'll have a unique set of component nodes\nconst toShortIdFromNodeId = (nodeId: string) => nodeId.split('@')[0];\n\nconst delim = '::';\n\nconst getEdgeId = (_e: EdgeModel) => {\n return `${toShortIdFromNodeId(_e.sourceId)}${delim}${toShortIdFromNodeId(_e.targetId)}`;\n};\n\nexport function diffGraph(\n baseGraph?: GraphModel<NodeModel, EdgeModel>,\n compareGraph?: GraphModel<NodeModel, EdgeModel>,\n baseId?: ComponentID\n) {\n if (!baseGraph || !compareGraph || !baseId) return null;\n\n const baseNodes = baseGraph.nodes;\n const compareNodes = compareGraph.nodes;\n\n const baseNodesMap = new Map<string, NodeModel>(baseNodes.map((n) => [toShortId(n), n]));\n const compareNodesMap = new Map<string, NodeModel>(compareNodes.map((n) => [toShortId(n), n]));\n\n const allNodes: Array<CompareNodeModel> = [];\n for (const baseNode of baseNodes) {\n const compareNode = compareNodesMap.get(toShortId(baseNode));\n if (compareNode) {\n allNodes.push({\n ...baseNode,\n compareVersion: compareNode.component.version,\n status: compareNode.component.id.isEqual(baseNode.component.id) ? undefined : 'modified',\n });\n } else {\n allNodes.push({\n ...baseNode,\n compareVersion: baseNode.component.version,\n status: 'deleted',\n });\n }\n }\n\n const newNodes = compareNodes.filter((n) => !baseNodesMap.has(toShortId(n)));\n\n for (const node of newNodes) {\n allNodes.push({\n ...node,\n compareVersion: '',\n status: 'new',\n });\n }\n const allNodesMap = new Map<string, CompareNodeModel>(allNodes.map((n) => [toShortId(n), n]));\n\n const baseEdgesMap = new Map<string, EdgeModel>(baseGraph.edges.map((baseEdge) => [getEdgeId(baseEdge), baseEdge]));\n const edgesOnlyInCompare = compareGraph.edges\n .filter((compareEdge) => !baseEdgesMap.has(getEdgeId(compareEdge)))\n .map((compareEdge) => ({\n ...compareEdge,\n sourceId: allNodesMap.get(toShortIdFromNodeId(compareEdge.sourceId))?.id.toString() || baseId.toString(),\n targetId: allNodesMap.get(toShortIdFromNodeId(compareEdge.targetId))?.id.toString() || baseId.toString(),\n }));\n const allEdges = [...baseGraph.edges, ...edgesOnlyInCompare];\n return new CompareGraphModel(allNodes, allEdges);\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { Edge, Node } from 'react-flow-renderer';
2
2
  import { ComponentID } from '@teambit/component';
3
3
  import { EdgeModel, GraphModel, NodeModel } from '../query';
4
- declare type ElementsOptions = {
4
+ type ElementsOptions = {
5
5
  rootNode?: ComponentID;
6
6
  };
7
7
  /**
@@ -1,3 +1,3 @@
1
1
  import { EdgeType } from '@teambit/graph';
2
- export declare function depTypeToClass(depType: string): string | undefined;
2
+ export declare function depTypeToClass(depType: string): string;
3
3
  export declare function depTypeToLabel(type: EdgeType): string;
@@ -1,12 +1,12 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { OnLoadParams, ReactFlowProps } from 'react-flow-renderer';
3
3
  import { ComponentID } from '@teambit/component';
4
4
  import { ComponentWidgetSlot } from '../../graph.ui.runtime';
5
5
  import { EdgeModel, GraphModel, NodeModel } from '../query';
6
- export declare type DependenciesGraphProps = {
6
+ export type DependenciesGraphProps = {
7
7
  rootNode: ComponentID;
8
8
  graph: GraphModel<NodeModel, EdgeModel>;
9
9
  componentWidgets: ComponentWidgetSlot;
10
10
  onLoad?: (instance: OnLoadParams) => void;
11
11
  } & Omit<ReactFlowProps, 'elements'>;
12
- export declare function DependenciesGraph({ graph, rootNode, componentWidgets, className, onLoad, children, ...rest }: DependenciesGraphProps): React.JSX.Element;
12
+ export declare function DependenciesGraph({ graph, rootNode, componentWidgets, className, onLoad, children, ...rest }: DependenciesGraphProps): JSX.Element;
@@ -112,25 +112,24 @@ function DependenciesGraph(_ref) {
112
112
  componentWidgets
113
113
  }), [componentWidgets]);
114
114
  const handleLoad = (0, _react().useCallback)(instance => {
115
- if (((graph === null || graph === void 0 ? void 0 : graph.nodes.length) ?? 0) <= 3) {
115
+ if ((graph?.nodes.length ?? 0) <= 3) {
116
116
  instance.fitView({
117
117
  padding: 2
118
118
  });
119
119
  } else {
120
120
  instance.fitView();
121
121
  }
122
- onLoad === null || onLoad === void 0 || onLoad(instance);
122
+ onLoad?.(instance);
123
123
  }, [onLoad]);
124
124
 
125
125
  // clear ref on unmount
126
126
  (0, _react().useEffect)(() => () => graphRef.current = undefined, []);
127
127
  (0, _react().useEffect)(() => {
128
128
  setTimeout(() => {
129
- var _graphRef$current, _graphRef$current2;
130
- if (graph.nodes.length <= 3) return (_graphRef$current = graphRef.current) === null || _graphRef$current === void 0 ? void 0 : _graphRef$current.fitView({
129
+ if (graph.nodes.length <= 3) return graphRef.current?.fitView({
131
130
  padding: 2
132
131
  });
133
- return (_graphRef$current2 = graphRef.current) === null || _graphRef$current2 === void 0 ? void 0 : _graphRef$current2.fitView();
132
+ return graphRef.current?.fitView();
134
133
  }, 0);
135
134
  }, [graph]);
136
135
  return /*#__PURE__*/_react().default.createElement(_graphContext().ComponentGraphContext.Provider, {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_reactFlowRenderer","_componentNode","_calcElements","_minimap","_graphContext","_dependenciesGraphModule","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ComponentNodeContainer","props","sourcePosition","Position","Top","targetPosition","Bottom","id","createElement","Handle","type","position","isConnectable","ComponentNode","node","NodeTypes","DependenciesGraph","_ref","graph","rootNode","componentWidgets","className","onLoad","children","rest","graphRef","useRef","elements","calcElements","context","useMemo","handleLoad","useCallback","instance","nodes","fitView","padding","useEffect","current","undefined","setTimeout","_graphRef$current","_graphRef$current2","ComponentGraphContext","Provider","value","ReactFlowProvider","draggable","nodesDraggable","selectNodesOnDrag","nodesConnectable","zoomOnDoubleClick","elementsSelectable","maxZoom","minZoom","classnames","styles","nodeTypes","Background","Controls","controls","MiniMap","nodeColor","calcMinimapColors","minimap"],"sources":["dependencies-graph.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport classnames from 'classnames';\nimport ReactFlow, {\n Background,\n Controls,\n Handle,\n MiniMap,\n NodeProps,\n NodeTypesType,\n OnLoadParams,\n Position,\n ReactFlowProps,\n ReactFlowProvider,\n} from 'react-flow-renderer';\nimport { ComponentID } from '@teambit/component';\n\nimport { ComponentWidgetSlot } from '../../graph.ui.runtime';\nimport { ComponentNode } from '../component-node';\nimport { EdgeModel, GraphModel, NodeModel } from '../query';\nimport { calcElements } from './calc-elements';\nimport { calcMinimapColors } from './minimap';\nimport { ComponentGraphContext } from './graph-context';\n\nimport styles from './dependencies-graph.module.scss';\n\nfunction ComponentNodeContainer(props: NodeProps) {\n const { sourcePosition = Position.Top, targetPosition = Position.Bottom, data, id } = props;\n\n return (\n <div key={id}>\n <Handle type=\"target\" position={targetPosition} isConnectable={false} />\n <Handle type=\"source\" position={sourcePosition} isConnectable={false} />\n <ComponentNode node={data.node} type={data.type} />\n </div>\n );\n}\n\n// @ts-ignore - incorrect NodeTypes https://github.com/wbkd/react-flow/issues/2101 (#5746)\nconst NodeTypes: NodeTypesType = { ComponentNode: ComponentNodeContainer };\n\nexport type DependenciesGraphProps = {\n rootNode: ComponentID;\n graph: GraphModel<NodeModel, EdgeModel>;\n componentWidgets: ComponentWidgetSlot;\n onLoad?: (instance: OnLoadParams) => void;\n} & Omit<ReactFlowProps, 'elements'>;\n\nexport function DependenciesGraph({\n graph,\n rootNode,\n componentWidgets,\n className,\n onLoad,\n children,\n ...rest\n}: DependenciesGraphProps) {\n const graphRef = useRef<OnLoadParams>();\n const elements = calcElements(graph, { rootNode });\n const context = useMemo(() => ({ componentWidgets }), [componentWidgets]);\n\n const handleLoad = useCallback(\n (instance: OnLoadParams) => {\n if ((graph?.nodes.length ?? 0) <= 3) {\n instance.fitView({\n padding: 2,\n });\n } else {\n instance.fitView();\n }\n onLoad?.(instance);\n },\n [onLoad]\n );\n\n // clear ref on unmount\n useEffect(() => () => (graphRef.current = undefined), []);\n\n useEffect(() => {\n setTimeout(() => {\n if (graph.nodes.length <= 3)\n return graphRef.current?.fitView({\n padding: 2,\n });\n return graphRef.current?.fitView();\n }, 0);\n }, [graph]);\n\n return (\n <ComponentGraphContext.Provider value={context}>\n {/* @ts-ignore - TODO - remove when ReactFlowProvider will be of type `FC<PropsWithChildren<{}>>` instead of `FC` (#5746) */}\n <ReactFlowProvider>\n <ReactFlow\n draggable={false}\n nodesDraggable={true}\n selectNodesOnDrag={false}\n nodesConnectable={false}\n zoomOnDoubleClick={false}\n elementsSelectable={false}\n maxZoom={100}\n minZoom={0}\n {...rest}\n className={classnames(styles.graph, className)}\n elements={elements}\n nodeTypes={NodeTypes}\n onLoad={handleLoad}\n >\n <Background />\n <Controls className={styles.controls} />\n <MiniMap nodeColor={calcMinimapColors} className={styles.minimap} />\n {children}\n </ReactFlow>\n </ReactFlowProvider>\n </ComponentGraphContext.Provider>\n );\n}\n"],"mappings":"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"}
1
+ {"version":3,"names":["_react","data","_interopRequireWildcard","require","_classnames","_interopRequireDefault","_reactFlowRenderer","_componentNode","_calcElements","_minimap","_graphContext","_dependenciesGraphModule","_excluded","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","_objectWithoutProperties","excluded","_objectWithoutPropertiesLoose","getOwnPropertySymbols","sourceSymbolKeys","indexOf","propertyIsEnumerable","sourceKeys","keys","ComponentNodeContainer","props","sourcePosition","Position","Top","targetPosition","Bottom","id","createElement","Handle","type","position","isConnectable","ComponentNode","node","NodeTypes","DependenciesGraph","_ref","graph","rootNode","componentWidgets","className","onLoad","children","rest","graphRef","useRef","elements","calcElements","context","useMemo","handleLoad","useCallback","instance","nodes","fitView","padding","useEffect","current","undefined","setTimeout","ComponentGraphContext","Provider","value","ReactFlowProvider","draggable","nodesDraggable","selectNodesOnDrag","nodesConnectable","zoomOnDoubleClick","elementsSelectable","maxZoom","minZoom","classnames","styles","nodeTypes","Background","Controls","controls","MiniMap","nodeColor","calcMinimapColors","minimap"],"sources":["dependencies-graph.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useMemo, useRef } from 'react';\nimport classnames from 'classnames';\nimport ReactFlow, {\n Background,\n Controls,\n Handle,\n MiniMap,\n NodeProps,\n NodeTypesType,\n OnLoadParams,\n Position,\n ReactFlowProps,\n ReactFlowProvider,\n} from 'react-flow-renderer';\nimport { ComponentID } from '@teambit/component';\n\nimport { ComponentWidgetSlot } from '../../graph.ui.runtime';\nimport { ComponentNode } from '../component-node';\nimport { EdgeModel, GraphModel, NodeModel } from '../query';\nimport { calcElements } from './calc-elements';\nimport { calcMinimapColors } from './minimap';\nimport { ComponentGraphContext } from './graph-context';\n\nimport styles from './dependencies-graph.module.scss';\n\nfunction ComponentNodeContainer(props: NodeProps) {\n const { sourcePosition = Position.Top, targetPosition = Position.Bottom, data, id } = props;\n\n return (\n <div key={id}>\n <Handle type=\"target\" position={targetPosition} isConnectable={false} />\n <Handle type=\"source\" position={sourcePosition} isConnectable={false} />\n <ComponentNode node={data.node} type={data.type} />\n </div>\n );\n}\n\n// @ts-ignore - incorrect NodeTypes https://github.com/wbkd/react-flow/issues/2101 (#5746)\nconst NodeTypes: NodeTypesType = { ComponentNode: ComponentNodeContainer };\n\nexport type DependenciesGraphProps = {\n rootNode: ComponentID;\n graph: GraphModel<NodeModel, EdgeModel>;\n componentWidgets: ComponentWidgetSlot;\n onLoad?: (instance: OnLoadParams) => void;\n} & Omit<ReactFlowProps, 'elements'>;\n\nexport function DependenciesGraph({\n graph,\n rootNode,\n componentWidgets,\n className,\n onLoad,\n children,\n ...rest\n}: DependenciesGraphProps) {\n const graphRef = useRef<OnLoadParams>();\n const elements = calcElements(graph, { rootNode });\n const context = useMemo(() => ({ componentWidgets }), [componentWidgets]);\n\n const handleLoad = useCallback(\n (instance: OnLoadParams) => {\n if ((graph?.nodes.length ?? 0) <= 3) {\n instance.fitView({\n padding: 2,\n });\n } else {\n instance.fitView();\n }\n onLoad?.(instance);\n },\n [onLoad]\n );\n\n // clear ref on unmount\n useEffect(() => () => (graphRef.current = undefined), []);\n\n useEffect(() => {\n setTimeout(() => {\n if (graph.nodes.length <= 3)\n return graphRef.current?.fitView({\n padding: 2,\n });\n return graphRef.current?.fitView();\n }, 0);\n }, [graph]);\n\n return (\n <ComponentGraphContext.Provider value={context}>\n {/* @ts-ignore - TODO - remove when ReactFlowProvider will be of type `FC<PropsWithChildren<{}>>` instead of `FC` (#5746) */}\n <ReactFlowProvider>\n <ReactFlow\n draggable={false}\n nodesDraggable={true}\n selectNodesOnDrag={false}\n nodesConnectable={false}\n zoomOnDoubleClick={false}\n elementsSelectable={false}\n maxZoom={100}\n minZoom={0}\n {...rest}\n className={classnames(styles.graph, className)}\n elements={elements}\n nodeTypes={NodeTypes}\n onLoad={handleLoad}\n >\n <Background />\n <Controls className={styles.controls} />\n <MiniMap nodeColor={calcMinimapColors} className={styles.minimap} />\n {children}\n </ReactFlow>\n </ReactFlowProvider>\n </ComponentGraphContext.Provider>\n );\n}\n"],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { ComponentWidgetSlot } from '../../graph.ui.runtime';
3
3
  /** internal context, to pass shared information to all nodes */
4
- export declare type ComponentGraph = {
4
+ export type ComponentGraph = {
5
5
  componentWidgets: ComponentWidgetSlot;
6
6
  };
7
- export declare const ComponentGraphContext: import("react").Context<ComponentGraph | undefined>;
7
+ export declare const ComponentGraphContext: import("react").Context<ComponentGraph>;
@@ -12,8 +12,7 @@ function _componentNode() {
12
12
  return data;
13
13
  }
14
14
  function calcMinimapColors(node) {
15
- var _node$data;
16
- const type = (_node$data = node.data) === null || _node$data === void 0 ? void 0 : _node$data.type;
15
+ const type = node.data?.type;
17
16
  switch (type) {
18
17
  case 'root':
19
18
  return _componentNode().rootNodeColor;
@@ -1 +1 @@
1
- {"version":3,"names":["_componentNode","data","require","calcMinimapColors","node","_node$data","type","rootNodeColor","externalNodeColor","defaultNodeColor"],"sources":["minimap.ts"],"sourcesContent":["import { Node } from 'react-flow-renderer';\nimport { rootNodeColor, defaultNodeColor, externalNodeColor } from '../component-node';\n\nexport function calcMinimapColors(node: Node) {\n const type = node.data?.type;\n\n switch (type) {\n case 'root':\n return rootNodeColor;\n case 'external':\n return externalNodeColor;\n default:\n return defaultNodeColor;\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,eAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,cAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,SAASE,iBAAiBA,CAACC,IAAU,EAAE;EAAA,IAAAC,UAAA;EAC5C,MAAMC,IAAI,IAAAD,UAAA,GAAGD,IAAI,CAACH,IAAI,cAAAI,UAAA,uBAATA,UAAA,CAAWC,IAAI;EAE5B,QAAQA,IAAI;IACV,KAAK,MAAM;MACT,OAAOC,8BAAa;IACtB,KAAK,UAAU;MACb,OAAOC,kCAAiB;IAC1B;MACE,OAAOC,iCAAgB;EAC3B;AACF"}
1
+ {"version":3,"names":["_componentNode","data","require","calcMinimapColors","node","type","rootNodeColor","externalNodeColor","defaultNodeColor"],"sources":["minimap.ts"],"sourcesContent":["import { Node } from 'react-flow-renderer';\nimport { rootNodeColor, defaultNodeColor, externalNodeColor } from '../component-node';\n\nexport function calcMinimapColors(node: Node) {\n const type = node.data?.type;\n\n switch (type) {\n case 'root':\n return rootNodeColor;\n case 'external':\n return externalNodeColor;\n default:\n return defaultNodeColor;\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,eAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,cAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEO,SAASE,iBAAiBA,CAACC,IAAU,EAAE;EAC5C,MAAMC,IAAI,GAAGD,IAAI,CAACH,IAAI,EAAEI,IAAI;EAE5B,QAAQA,IAAI;IACV,KAAK,MAAM;MACT,OAAOC,8BAAa;IACtB,KAAK,UAAU;MACb,OAAOC,kCAAiB;IAC1B;MACE,OAAOC,iCAAgB;EAC3B;AACF"}
@@ -1,9 +1,9 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { CardProps } from '@teambit/base-ui.surfaces.card';
3
- declare type GraphFiltersType = {
3
+ type GraphFiltersType = {
4
4
  isFiltered: boolean;
5
5
  onChangeFilter: (isFiltered: boolean) => void;
6
6
  disable?: boolean;
7
7
  } & CardProps;
8
- export declare function GraphFilters({ onChangeFilter, isFiltered, disable, ...rest }: GraphFiltersType): React.JSX.Element;
8
+ export declare function GraphFilters({ onChangeFilter, isFiltered, disable, ...rest }: GraphFiltersType): JSX.Element;
9
9
  export {};
@@ -1,7 +1,7 @@
1
- import React from 'react';
1
+ /// <reference types="react" />
2
2
  import { ComponentWidgetSlot } from '../../graph.ui.runtime';
3
- declare type GraphPageProps = {
3
+ type GraphPageProps = {
4
4
  componentWidgets: ComponentWidgetSlot;
5
5
  };
6
- export declare function GraphPage({ componentWidgets }: GraphPageProps): React.JSX.Element;
6
+ export declare function GraphPage({ componentWidgets }: GraphPageProps): JSX.Element;
7
7
  export {};
@@ -1,12 +1,12 @@
1
+ /// <reference types="react" />
1
2
  import { Section } from '@teambit/component';
2
- import React from 'react';
3
3
  import { ComponentWidgetSlot } from '../graph.ui.runtime';
4
4
  export declare class GraphSection implements Section {
5
5
  private componentWidgetSlot;
6
6
  constructor(componentWidgetSlot: ComponentWidgetSlot);
7
7
  route: {
8
8
  path: string;
9
- element: React.JSX.Element;
9
+ element: JSX.Element;
10
10
  };
11
11
  navigationLink: {
12
12
  href: string;
@@ -1,13 +1,13 @@
1
1
  import { EdgeType } from '@teambit/graph';
2
2
  export declare const GET_GRAPH: import("@apollo/client").DocumentNode;
3
- export declare type RawGraphQuery = {
3
+ export type RawGraphQuery = {
4
4
  graph: RawGraph;
5
5
  };
6
- export declare type RawGraph = {
6
+ export type RawGraph = {
7
7
  nodes: RawNode[];
8
8
  edges: [];
9
9
  };
10
- export declare type RawNode = {
10
+ export type RawNode = {
11
11
  id: string;
12
12
  component: {
13
13
  id: {
@@ -25,7 +25,7 @@ export declare type RawNode = {
25
25
  };
26
26
  };
27
27
  };
28
- export declare type RawEdge = {
28
+ export type RawEdge = {
29
29
  sourceId: string;
30
30
  targetId: string;
31
31
  dependencyLifecycleType: EdgeType;
@@ -2,7 +2,7 @@ import { GraphQlError } from '@teambit/graphql';
2
2
  import { GraphModel } from './graph-model';
3
3
  /** provides dependencies graph data from graphQL */
4
4
  export declare function useGraphQuery(componentId?: string[], filter?: string): {
5
- graph: GraphModel<import("./node-model").NodeModel, import("./edge-model").EdgeModel> | undefined;
6
- error: GraphQlError | undefined;
5
+ graph: GraphModel<import("./node-model").NodeModel, import("./edge-model").EdgeModel>;
6
+ error: GraphQlError;
7
7
  loading: boolean;
8
8
  };
@@ -52,7 +52,7 @@ function useGraphQuery(componentId, filter) {
52
52
  },
53
53
  skip: !componentId
54
54
  });
55
- const rawGraph = data === null || data === void 0 ? void 0 : data.graph;
55
+ const rawGraph = data?.graph;
56
56
  const clientError = !rawGraph && !loading ? new (_graphql().GraphQlError)(404) : undefined;
57
57
  const serverError = error ? new (_graphql().GraphQlError)(500, error.message) : undefined;
58
58
  return (0, _react().useMemo)(() => {
@@ -1 +1 @@
1
- {"version":3,"names":["_react","data","require","_uiFoundationUiHooks","_graphql","_getGraph","_graphModel","useGraphQuery","componentId","filter","error","loading","useDataQuery","GET_GRAPH","variables","ids","skip","rawGraph","graph","clientError","GraphQlError","undefined","serverError","message","useMemo","GraphModel","from"],"sources":["use-graph-query.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { GraphQlError } from '@teambit/graphql';\nimport { GET_GRAPH, RawGraphQuery } from './get-graph.query';\nimport { GraphModel } from './graph-model';\n\ntype QueryVariables = {\n ids?: string[];\n filter?: string;\n};\n\n/** provides dependencies graph data from graphQL */\nexport function useGraphQuery(componentId?: string[], filter?: string) {\n const { data, error, loading } = useDataQuery<RawGraphQuery, QueryVariables>(GET_GRAPH, {\n variables: { ids: componentId, filter },\n skip: !componentId,\n });\n\n const rawGraph = data?.graph;\n const clientError = !rawGraph && !loading ? new GraphQlError(404) : undefined;\n const serverError = error ? new GraphQlError(500, error.message) : undefined;\n\n return useMemo(() => {\n return {\n graph: rawGraph ? GraphModel.from(rawGraph) : undefined,\n error: serverError || clientError,\n loading,\n };\n }, [rawGraph, error]);\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,SAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,QAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAOA;AACO,SAASM,aAAaA,CAACC,WAAsB,EAAEC,MAAe,EAAE;EACrE,MAAM;IAAER,IAAI;IAAES,KAAK;IAAEC;EAAQ,CAAC,GAAG,IAAAC,mCAAY,EAAgCC,qBAAS,EAAE;IACtFC,SAAS,EAAE;MAAEC,GAAG,EAAEP,WAAW;MAAEC;IAAO,CAAC;IACvCO,IAAI,EAAE,CAACR;EACT,CAAC,CAAC;EAEF,MAAMS,QAAQ,GAAGhB,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAEiB,KAAK;EAC5B,MAAMC,WAAW,GAAG,CAACF,QAAQ,IAAI,CAACN,OAAO,GAAG,KAAIS,uBAAY,EAAC,GAAG,CAAC,GAAGC,SAAS;EAC7E,MAAMC,WAAW,GAAGZ,KAAK,GAAG,KAAIU,uBAAY,EAAC,GAAG,EAAEV,KAAK,CAACa,OAAO,CAAC,GAAGF,SAAS;EAE5E,OAAO,IAAAG,gBAAO,EAAC,MAAM;IACnB,OAAO;MACLN,KAAK,EAAED,QAAQ,GAAGQ,wBAAU,CAACC,IAAI,CAACT,QAAQ,CAAC,GAAGI,SAAS;MACvDX,KAAK,EAAEY,WAAW,IAAIH,WAAW;MACjCR;IACF,CAAC;EACH,CAAC,EAAE,CAACM,QAAQ,EAAEP,KAAK,CAAC,CAAC;AACvB"}
1
+ {"version":3,"names":["_react","data","require","_uiFoundationUiHooks","_graphql","_getGraph","_graphModel","useGraphQuery","componentId","filter","error","loading","useDataQuery","GET_GRAPH","variables","ids","skip","rawGraph","graph","clientError","GraphQlError","undefined","serverError","message","useMemo","GraphModel","from"],"sources":["use-graph-query.ts"],"sourcesContent":["import { useMemo } from 'react';\nimport { useDataQuery } from '@teambit/ui-foundation.ui.hooks.use-data-query';\nimport { GraphQlError } from '@teambit/graphql';\nimport { GET_GRAPH, RawGraphQuery } from './get-graph.query';\nimport { GraphModel } from './graph-model';\n\ntype QueryVariables = {\n ids?: string[];\n filter?: string;\n};\n\n/** provides dependencies graph data from graphQL */\nexport function useGraphQuery(componentId?: string[], filter?: string) {\n const { data, error, loading } = useDataQuery<RawGraphQuery, QueryVariables>(GET_GRAPH, {\n variables: { ids: componentId, filter },\n skip: !componentId,\n });\n\n const rawGraph = data?.graph;\n const clientError = !rawGraph && !loading ? new GraphQlError(404) : undefined;\n const serverError = error ? new GraphQlError(500, error.message) : undefined;\n\n return useMemo(() => {\n return {\n graph: rawGraph ? GraphModel.from(rawGraph) : undefined,\n error: serverError || clientError,\n loading,\n };\n }, [rawGraph, error]);\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,SAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,QAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAOA;AACO,SAASM,aAAaA,CAACC,WAAsB,EAAEC,MAAe,EAAE;EACrE,MAAM;IAAER,IAAI;IAAES,KAAK;IAAEC;EAAQ,CAAC,GAAG,IAAAC,mCAAY,EAAgCC,qBAAS,EAAE;IACtFC,SAAS,EAAE;MAAEC,GAAG,EAAEP,WAAW;MAAEC;IAAO,CAAC;IACvCO,IAAI,EAAE,CAACR;EACT,CAAC,CAAC;EAEF,MAAMS,QAAQ,GAAGhB,IAAI,EAAEiB,KAAK;EAC5B,MAAMC,WAAW,GAAG,CAACF,QAAQ,IAAI,CAACN,OAAO,GAAG,KAAIS,uBAAY,EAAC,GAAG,CAAC,GAAGC,SAAS;EAC7E,MAAMC,WAAW,GAAGZ,KAAK,GAAG,KAAIU,uBAAY,EAAC,GAAG,EAAEV,KAAK,CAACa,OAAO,CAAC,GAAGF,SAAS;EAE5E,OAAO,IAAAG,gBAAO,EAAC,MAAM;IACnB,OAAO;MACLN,KAAK,EAAED,QAAQ,GAAGQ,wBAAU,CAACC,IAAI,CAACT,QAAQ,CAAC,GAAGI,SAAS;MACvDX,KAAK,EAAEY,WAAW,IAAIH,WAAW;MACjCR;IACF,CAAC;EACH,CAAC,EAAE,CAACM,QAAQ,EAAEP,KAAK,CAAC,CAAC;AACvB"}
@@ -1,5 +1,5 @@
1
1
  export declare function useGraph(): {
2
- graph: import("./graph-model").GraphModel<import("./node-model").NodeModel, import("./edge-model").EdgeModel> | undefined;
3
- error: import("@teambit/graphql").GraphQlError | undefined;
2
+ graph: import("./graph-model").GraphModel<import("./node-model").NodeModel, import("./edge-model").EdgeModel>;
3
+ error: import("@teambit/graphql").GraphQlError;
4
4
  loading: boolean;
5
5
  };
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@teambit/graph",
3
- "version": "1.0.107",
3
+ "version": "1.0.109",
4
4
  "homepage": "https://bit.cloud/teambit/component/graph",
5
5
  "main": "dist/index.js",
6
6
  "componentId": {
7
7
  "scope": "teambit.component",
8
8
  "name": "graph",
9
- "version": "1.0.107"
9
+ "version": "1.0.109"
10
10
  },
11
11
  "dependencies": {
12
12
  "lodash": "4.17.21",
@@ -15,10 +15,8 @@
15
15
  "graphql-tag": "2.12.1",
16
16
  "classnames": "2.2.6",
17
17
  "react-flow-renderer": "8.3.7",
18
- "semver": "7.5.2",
19
18
  "dagre": "0.8.5",
20
- "core-js": "^3.0.0",
21
- "@babel/runtime": "7.20.0",
19
+ "semver": "7.5.2",
22
20
  "@teambit/graph.cleargraph": "0.0.1",
23
21
  "@teambit/component-id": "1.2.0",
24
22
  "@teambit/harmony": "0.4.6",
@@ -29,9 +27,6 @@
29
27
  "@teambit/base-ui.text.muted-text": "1.0.1",
30
28
  "@teambit/component.ui.deprecation-icon": "0.0.509",
31
29
  "@teambit/design.ui.styles.ellipsis": "0.0.357",
32
- "@teambit/component.ui.component-compare.context": "0.0.116",
33
- "@teambit/design.ui.round-loader": "0.0.355",
34
- "@teambit/component.ui.component-compare.status-resolver": "0.0.9",
35
30
  "@teambit/evangelist.input.checkbox.label": "1.0.3",
36
31
  "@teambit/design.ui.pages.not-found": "0.0.366",
37
32
  "@teambit/design.ui.pages.server-error": "0.0.366",
@@ -39,33 +34,34 @@
39
34
  "@teambit/ui-foundation.ui.full-loader": "0.0.500",
40
35
  "@teambit/ui-foundation.ui.hooks.use-data-query": "0.0.505",
41
36
  "@teambit/ui-foundation.ui.react-router.use-query": "0.0.501",
42
- "@teambit/component": "1.0.107",
43
- "@teambit/cli": "0.0.839",
44
- "@teambit/graphql": "1.0.107",
45
- "@teambit/logger": "0.0.932",
46
- "@teambit/component-compare": "1.0.107",
47
- "@teambit/ui": "1.0.107",
37
+ "@teambit/component.ui.component-compare.context": "0.0.116",
38
+ "@teambit/design.ui.round-loader": "0.0.355",
39
+ "@teambit/component.ui.component-compare.status-resolver": "0.0.9",
40
+ "@teambit/component": "1.0.109",
41
+ "@teambit/cli": "0.0.841",
42
+ "@teambit/graphql": "1.0.109",
43
+ "@teambit/logger": "0.0.934",
44
+ "@teambit/component-compare": "1.0.109",
45
+ "@teambit/ui": "1.0.109",
48
46
  "@teambit/component.modules.component-url": "0.0.165",
49
47
  "@teambit/envs.ui.env-icon": "0.0.503"
50
48
  },
51
49
  "devDependencies": {
52
50
  "@types/lodash": "4.14.165",
53
51
  "@types/graphlib": "2.1.7",
54
- "@types/react": "^17.0.8",
55
52
  "@types/classnames": "2.2.11",
56
- "@types/semver": "7.3.4",
57
53
  "@types/dagre": "0.7.44",
54
+ "@types/semver": "7.3.4",
58
55
  "@types/mocha": "9.1.0",
59
- "@types/node": "12.20.4",
60
- "@types/react-dom": "^17.0.5",
61
- "@types/jest": "^26.0.0",
62
- "@types/testing-library__jest-dom": "5.9.5"
56
+ "@types/jest": "^29.2.2",
57
+ "@types/testing-library__jest-dom": "^5.9.5",
58
+ "@teambit/harmony.envs.core-aspect-env": "0.0.14"
63
59
  },
64
60
  "peerDependencies": {
65
61
  "@apollo/client": "^3.6.0",
66
- "@teambit/legacy": "1.0.624",
67
- "react": "^16.8.0 || ^17.0.0",
68
- "react-dom": "^16.8.0 || ^17.0.0"
62
+ "react": "^17.0.0 || ^18.0.0",
63
+ "@types/react": "^18.2.12",
64
+ "@teambit/legacy": "1.0.624"
69
65
  },
70
66
  "license": "Apache-2.0",
71
67
  "optionalDependencies": {},
@@ -79,7 +75,7 @@
79
75
  },
80
76
  "private": false,
81
77
  "engines": {
82
- "node": ">=12.22.0"
78
+ "node": ">=16.0.0"
83
79
  },
84
80
  "repository": {
85
81
  "type": "git",
@@ -88,12 +84,9 @@
88
84
  "keywords": [
89
85
  "bit",
90
86
  "bit-aspect",
87
+ "bit-core-aspect",
91
88
  "components",
92
89
  "collaboration",
93
- "web",
94
- "react",
95
- "react-components",
96
- "angular",
97
- "angular-components"
90
+ "web"
98
91
  ]
99
92
  }
package/tsconfig.json CHANGED
@@ -1,38 +1,33 @@
1
1
  {
2
2
  "compilerOptions": {
3
3
  "lib": [
4
- "es2019",
5
- "DOM",
6
- "ES6",
7
- "DOM.Iterable",
8
- "ScriptHost"
4
+ "esnext",
5
+ "dom",
6
+ "dom.Iterable"
9
7
  ],
10
- "target": "es2015",
11
- "module": "CommonJS",
12
- "jsx": "react",
13
- "allowJs": true,
14
- "composite": true,
8
+ "target": "es2020",
9
+ "module": "es2020",
10
+ "jsx": "react-jsx",
15
11
  "declaration": true,
16
12
  "sourceMap": true,
17
- "skipLibCheck": true,
18
13
  "experimentalDecorators": true,
19
- "outDir": "dist",
14
+ "skipLibCheck": true,
20
15
  "moduleResolution": "node",
21
16
  "esModuleInterop": true,
22
- "rootDir": ".",
23
17
  "resolveJsonModule": true,
24
- "emitDeclarationOnly": true,
25
- "emitDecoratorMetadata": true,
26
- "allowSyntheticDefaultImports": true,
27
- "strictPropertyInitialization": false,
28
- "strict": true,
29
- "noImplicitAny": false,
30
- "preserveConstEnums": true
18
+ "allowJs": true,
19
+ "outDir": "dist",
20
+ "emitDeclarationOnly": true
31
21
  },
32
22
  "exclude": [
23
+ "artifacts",
24
+ "public",
33
25
  "dist",
26
+ "node_modules",
27
+ "package.json",
34
28
  "esm.mjs",
35
- "package.json"
29
+ "**/*.cjs",
30
+ "./dist"
36
31
  ],
37
32
  "include": [
38
33
  "**/*",
package/types/asset.d.ts CHANGED
@@ -5,12 +5,12 @@ declare module '*.png' {
5
5
  declare module '*.svg' {
6
6
  import type { FunctionComponent, SVGProps } from 'react';
7
7
 
8
- export const ReactComponent: FunctionComponent<SVGProps<SVGSVGElement> & { title?: string }>;
8
+ export const ReactComponent: FunctionComponent<
9
+ SVGProps<SVGSVGElement> & { title?: string }
10
+ >;
9
11
  const src: string;
10
12
  export default src;
11
13
  }
12
-
13
- // @TODO Gilad
14
14
  declare module '*.jpg' {
15
15
  const value: any;
16
16
  export = value;
@@ -27,3 +27,15 @@ declare module '*.bmp' {
27
27
  const value: any;
28
28
  export = value;
29
29
  }
30
+ declare module '*.otf' {
31
+ const value: any;
32
+ export = value;
33
+ }
34
+ declare module '*.woff' {
35
+ const value: any;
36
+ export = value;
37
+ }
38
+ declare module '*.woff2' {
39
+ const value: any;
40
+ export = value;
41
+ }