@teambit/graph 0.0.0-351b8797f220d8d6c242cfc30d4ecebaee07da45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/component-graph/component-graph.ts +118 -0
- package/component-graph/index.ts +2 -0
- package/dist/component-graph/component-graph.d.ts +22 -0
- package/dist/component-graph/component-graph.js +125 -0
- package/dist/component-graph/component-graph.js.map +1 -0
- package/dist/component-graph/index.d.ts +1 -0
- package/dist/component-graph/index.js +20 -0
- package/dist/component-graph/index.js.map +1 -0
- package/dist/component-id-graph.d.ts +49 -0
- package/dist/component-id-graph.js +252 -0
- package/dist/component-id-graph.js.map +1 -0
- package/dist/duplicate-dependency.d.ts +11 -0
- package/dist/duplicate-dependency.js +22 -0
- package/dist/duplicate-dependency.js.map +1 -0
- package/dist/edge-type.d.ts +5 -0
- package/dist/edge-type.js +14 -0
- package/dist/edge-type.js.map +1 -0
- package/dist/esm.mjs +29 -0
- package/dist/graph-builder.d.ts +16 -0
- package/dist/graph-builder.js +71 -0
- package/dist/graph-builder.js.map +1 -0
- package/dist/graph-cmd.d.ts +28 -0
- package/dist/graph-cmd.js +147 -0
- package/dist/graph-cmd.js.map +1 -0
- package/dist/graph.aspect.d.ts +3 -0
- package/dist/graph.aspect.js +21 -0
- package/dist/graph.aspect.js.map +1 -0
- package/dist/graph.compare.section.d.ts +20 -0
- package/dist/graph.compare.section.js +50 -0
- package/dist/graph.compare.section.js.map +1 -0
- package/dist/graph.composition.d.ts +1 -0
- package/dist/graph.composition.js +29 -0
- package/dist/graph.composition.js.map +1 -0
- package/dist/graph.docs.md +4 -0
- package/dist/graph.graphql.d.ts +4 -0
- package/dist/graph.graphql.js +95 -0
- package/dist/graph.graphql.js.map +1 -0
- package/dist/graph.main.runtime.d.ts +34 -0
- package/dist/graph.main.runtime.js +158 -0
- package/dist/graph.main.runtime.js.map +1 -0
- package/dist/graph.ui.runtime.d.ts +33 -0
- package/dist/graph.ui.runtime.js +104 -0
- package/dist/graph.ui.runtime.js.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.js +214 -0
- package/dist/index.js.map +1 -0
- package/dist/model/dependency/dependency.d.ts +6 -0
- package/dist/model/dependency/dependency.js +21 -0
- package/dist/model/dependency/dependency.js.map +1 -0
- package/dist/model/dependency/index.d.ts +1 -0
- package/dist/model/dependency/index.js +26 -0
- package/dist/model/dependency/index.js.map +1 -0
- package/dist/model/graph-filters/graph-filters.d.ts +1 -0
- package/dist/model/graph-filters/graph-filters.js +3 -0
- package/dist/model/graph-filters/graph-filters.js.map +1 -0
- package/dist/model/graph-filters/index.d.ts +1 -0
- package/dist/model/graph-filters/index.js +3 -0
- package/dist/model/graph-filters/index.js.map +1 -0
- package/dist/preview-1752263259534.js +7 -0
- package/dist/ui/component-node/component-node.d.ts +7 -0
- package/dist/ui/component-node/component-node.js +158 -0
- package/dist/ui/component-node/component-node.js.map +1 -0
- package/dist/ui/component-node/component-node.module.scss +73 -0
- package/dist/ui/component-node/index.d.ts +13 -0
- package/dist/ui/component-node/index.js +94 -0
- package/dist/ui/component-node/index.js.map +1 -0
- package/dist/ui/component-node/variants.d.ts +2 -0
- package/dist/ui/component-node/variants.js +30 -0
- package/dist/ui/component-node/variants.js.map +1 -0
- package/dist/ui/component-node/variants.module.scss +45 -0
- package/dist/ui/dependencies-compare/compare-graph-model.d.ts +7 -0
- package/dist/ui/dependencies-compare/compare-graph-model.js +23 -0
- package/dist/ui/dependencies-compare/compare-graph-model.js.map +1 -0
- package/dist/ui/dependencies-compare/compare-node-model.d.ts +9 -0
- package/dist/ui/dependencies-compare/compare-node-model.js +28 -0
- package/dist/ui/dependencies-compare/compare-node-model.js.map +1 -0
- package/dist/ui/dependencies-compare/dependencies-compare.d.ts +1 -0
- package/dist/ui/dependencies-compare/dependencies-compare.js +202 -0
- package/dist/ui/dependencies-compare/dependencies-compare.js.map +1 -0
- package/dist/ui/dependencies-compare/dependencies-compare.module.scss +14 -0
- package/dist/ui/dependencies-compare/dependency-compare-node.d.ts +6 -0
- package/dist/ui/dependencies-compare/dependency-compare-node.js +208 -0
- package/dist/ui/dependencies-compare/dependency-compare-node.js.map +1 -0
- package/dist/ui/dependencies-compare/dependency-compare-node.module.scss +21 -0
- package/dist/ui/dependencies-compare/dependency-compare-variants.module.scss +23 -0
- package/dist/ui/dependencies-compare/diff-graph.d.ts +4 -0
- package/dist/ui/dependencies-compare/diff-graph.js +65 -0
- package/dist/ui/dependencies-compare/diff-graph.js.map +1 -0
- package/dist/ui/dependencies-compare/index.d.ts +1 -0
- package/dist/ui/dependencies-compare/index.js +20 -0
- package/dist/ui/dependencies-compare/index.js.map +1 -0
- package/dist/ui/dependencies-graph/calc-elements.d.ts +14 -0
- package/dist/ui/dependencies-graph/calc-elements.js +83 -0
- package/dist/ui/dependencies-graph/calc-elements.js.map +1 -0
- package/dist/ui/dependencies-graph/calc-layout.d.ts +8 -0
- package/dist/ui/dependencies-graph/calc-layout.js +59 -0
- package/dist/ui/dependencies-graph/calc-layout.js.map +1 -0
- package/dist/ui/dependencies-graph/dep-edge/dep-edge.d.ts +3 -0
- package/dist/ui/dependencies-graph/dep-edge/dep-edge.js +48 -0
- package/dist/ui/dependencies-graph/dep-edge/dep-edge.js.map +1 -0
- package/dist/ui/dependencies-graph/dep-edge/edge.module.scss +10 -0
- package/dist/ui/dependencies-graph/dep-edge/index.d.ts +1 -0
- package/dist/ui/dependencies-graph/dep-edge/index.js +26 -0
- package/dist/ui/dependencies-graph/dep-edge/index.js.map +1 -0
- package/dist/ui/dependencies-graph/dependencies-graph.d.ts +13 -0
- package/dist/ui/dependencies-graph/dependencies-graph.js +183 -0
- package/dist/ui/dependencies-graph/dependencies-graph.js.map +1 -0
- package/dist/ui/dependencies-graph/dependencies-graph.module.scss +93 -0
- package/dist/ui/dependencies-graph/graph-context.d.ts +6 -0
- package/dist/ui/dependencies-graph/graph-context.js +18 -0
- package/dist/ui/dependencies-graph/graph-context.js.map +1 -0
- package/dist/ui/dependencies-graph/index.d.ts +12 -0
- package/dist/ui/dependencies-graph/index.js +116 -0
- package/dist/ui/dependencies-graph/index.js.map +1 -0
- package/dist/ui/dependencies-graph/minimap.d.ts +2 -0
- package/dist/ui/dependencies-graph/minimap.js +26 -0
- package/dist/ui/dependencies-graph/minimap.js.map +1 -0
- package/dist/ui/graph-page/graph-filters.d.ts +9 -0
- package/dist/ui/graph-page/graph-filters.js +46 -0
- package/dist/ui/graph-page/graph-filters.js.map +1 -0
- package/dist/ui/graph-page/graph-page.d.ts +6 -0
- package/dist/ui/graph-page/graph-page.js +111 -0
- package/dist/ui/graph-page/graph-page.js.map +1 -0
- package/dist/ui/graph-page/graph-page.module.scss +37 -0
- package/dist/ui/graph-page/index.d.ts +6 -0
- package/dist/ui/graph-page/index.js +50 -0
- package/dist/ui/graph-page/index.js.map +1 -0
- package/dist/ui/graph.section.d.ts +15 -0
- package/dist/ui/graph.section.js +43 -0
- package/dist/ui/graph.section.js.map +1 -0
- package/dist/ui/query/edge-model.d.ts +8 -0
- package/dist/ui/query/edge-model.js +26 -0
- package/dist/ui/query/edge-model.js.map +1 -0
- package/dist/ui/query/get-graph.query.d.ts +33 -0
- package/dist/ui/query/get-graph.query.js +60 -0
- package/dist/ui/query/get-graph.query.js.map +1 -0
- package/dist/ui/query/graph-model.d.ts +9 -0
- package/dist/ui/query/graph-model.js +34 -0
- package/dist/ui/query/graph-model.js.map +1 -0
- package/dist/ui/query/index.d.ts +6 -0
- package/dist/ui/query/index.js +85 -0
- package/dist/ui/query/index.js.map +1 -0
- package/dist/ui/query/node-model.d.ts +8 -0
- package/dist/ui/query/node-model.js +35 -0
- package/dist/ui/query/node-model.js.map +1 -0
- package/dist/ui/query/use-graph-query.d.ts +9 -0
- package/dist/ui/query/use-graph-query.js +96 -0
- package/dist/ui/query/use-graph-query.js.map +1 -0
- package/dist/ui/query/use-graph.d.ts +7 -0
- package/dist/ui/query/use-graph.js +26 -0
- package/dist/ui/query/use-graph.js.map +1 -0
- package/esm.mjs +29 -0
- package/graph.compare.section.tsx +23 -0
- package/graph.composition.tsx +7 -0
- package/graph.docs.md +4 -0
- package/graph.ui.runtime.tsx +61 -0
- package/model/dependency/dependency.ts +11 -0
- package/model/dependency/index.ts +1 -0
- package/model/graph-filters/graph-filters.ts +1 -0
- package/model/graph-filters/index.ts +1 -0
- package/package.json +94 -0
- package/types/asset.d.ts +41 -0
- package/types/style.d.ts +42 -0
- package/ui/component-node/component-node.module.scss +73 -0
- package/ui/component-node/component-node.tsx +66 -0
- package/ui/component-node/index.ts +8 -0
- package/ui/component-node/variants.module.scss +45 -0
- package/ui/component-node/variants.ts +5 -0
- package/ui/dependencies-compare/compare-graph-model.ts +11 -0
- package/ui/dependencies-compare/compare-node-model.ts +11 -0
- package/ui/dependencies-compare/dependencies-compare.module.scss +14 -0
- package/ui/dependencies-compare/dependencies-compare.tsx +140 -0
- package/ui/dependencies-compare/dependency-compare-node.module.scss +21 -0
- package/ui/dependencies-compare/dependency-compare-node.tsx +100 -0
- package/ui/dependencies-compare/dependency-compare-variants.module.scss +23 -0
- package/ui/dependencies-compare/diff-graph.ts +70 -0
- package/ui/dependencies-compare/index.ts +1 -0
- package/ui/dependencies-graph/calc-elements.tsx +53 -0
- package/ui/dependencies-graph/calc-layout.tsx +43 -0
- package/ui/dependencies-graph/dep-edge/dep-edge.tsx +28 -0
- package/ui/dependencies-graph/dep-edge/edge.module.scss +10 -0
- package/ui/dependencies-graph/dep-edge/index.ts +1 -0
- package/ui/dependencies-graph/dependencies-graph.module.scss +93 -0
- package/ui/dependencies-graph/dependencies-graph.tsx +139 -0
- package/ui/dependencies-graph/graph-context.ts +9 -0
- package/ui/dependencies-graph/index.ts +12 -0
- package/ui/dependencies-graph/minimap.ts +15 -0
- package/ui/graph-page/graph-filters.tsx +28 -0
- package/ui/graph-page/graph-page.module.scss +37 -0
- package/ui/graph-page/graph-page.tsx +56 -0
- package/ui/graph-page/index.ts +7 -0
- package/ui/graph.section.tsx +19 -0
- package/ui/query/edge-model.ts +16 -0
- package/ui/query/get-graph.query.ts +83 -0
- package/ui/query/graph-model.ts +16 -0
- package/ui/query/index.ts +7 -0
- package/ui/query/node-model.ts +18 -0
- package/ui/query/use-graph-query.ts +72 -0
- package/ui/query/use-graph.tsx +8 -0
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.DependencyCompareNode = DependencyCompareNode;
|
|
7
|
+
function _baseUiRouting() {
|
|
8
|
+
const data = require("@teambit/base-ui.routing.nav-link");
|
|
9
|
+
_baseUiRouting = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function _baseUiSurfaces() {
|
|
15
|
+
const data = require("@teambit/base-ui.surfaces.card");
|
|
16
|
+
_baseUiSurfaces = function () {
|
|
17
|
+
return data;
|
|
18
|
+
};
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
21
|
+
function _baseUiText() {
|
|
22
|
+
const data = require("@teambit/base-ui.text.muted-text");
|
|
23
|
+
_baseUiText = function () {
|
|
24
|
+
return data;
|
|
25
|
+
};
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
function _component() {
|
|
29
|
+
const data = require("@teambit/component");
|
|
30
|
+
_component = function () {
|
|
31
|
+
return data;
|
|
32
|
+
};
|
|
33
|
+
return data;
|
|
34
|
+
}
|
|
35
|
+
function _componentModules() {
|
|
36
|
+
const data = require("@teambit/component.modules.component-url");
|
|
37
|
+
_componentModules = function () {
|
|
38
|
+
return data;
|
|
39
|
+
};
|
|
40
|
+
return data;
|
|
41
|
+
}
|
|
42
|
+
function _componentUiComponentCompare() {
|
|
43
|
+
const data = require("@teambit/component.ui.component-compare.status-resolver");
|
|
44
|
+
_componentUiComponentCompare = function () {
|
|
45
|
+
return data;
|
|
46
|
+
};
|
|
47
|
+
return data;
|
|
48
|
+
}
|
|
49
|
+
function _componentUi() {
|
|
50
|
+
const data = require("@teambit/component.ui.deprecation-icon");
|
|
51
|
+
_componentUi = function () {
|
|
52
|
+
return data;
|
|
53
|
+
};
|
|
54
|
+
return data;
|
|
55
|
+
}
|
|
56
|
+
function _designUiStyles() {
|
|
57
|
+
const data = require("@teambit/design.ui.styles.ellipsis");
|
|
58
|
+
_designUiStyles = function () {
|
|
59
|
+
return data;
|
|
60
|
+
};
|
|
61
|
+
return data;
|
|
62
|
+
}
|
|
63
|
+
function _envsUi() {
|
|
64
|
+
const data = require("@teambit/envs.ui.env-icon");
|
|
65
|
+
_envsUi = function () {
|
|
66
|
+
return data;
|
|
67
|
+
};
|
|
68
|
+
return data;
|
|
69
|
+
}
|
|
70
|
+
function _classnames() {
|
|
71
|
+
const data = _interopRequireDefault(require("classnames"));
|
|
72
|
+
_classnames = function () {
|
|
73
|
+
return data;
|
|
74
|
+
};
|
|
75
|
+
return data;
|
|
76
|
+
}
|
|
77
|
+
function _react() {
|
|
78
|
+
const data = _interopRequireWildcard(require("react"));
|
|
79
|
+
_react = function () {
|
|
80
|
+
return data;
|
|
81
|
+
};
|
|
82
|
+
return data;
|
|
83
|
+
}
|
|
84
|
+
function _semver() {
|
|
85
|
+
const data = require("semver");
|
|
86
|
+
_semver = function () {
|
|
87
|
+
return data;
|
|
88
|
+
};
|
|
89
|
+
return data;
|
|
90
|
+
}
|
|
91
|
+
function _variants() {
|
|
92
|
+
const data = require("../../ui/component-node/variants");
|
|
93
|
+
_variants = function () {
|
|
94
|
+
return data;
|
|
95
|
+
};
|
|
96
|
+
return data;
|
|
97
|
+
}
|
|
98
|
+
function _componentNode() {
|
|
99
|
+
const data = require("../../ui/component-node");
|
|
100
|
+
_componentNode = function () {
|
|
101
|
+
return data;
|
|
102
|
+
};
|
|
103
|
+
return data;
|
|
104
|
+
}
|
|
105
|
+
function _dependencyCompareNodeModule() {
|
|
106
|
+
const data = _interopRequireDefault(require("./dependency-compare-node.module.scss"));
|
|
107
|
+
_dependencyCompareNodeModule = function () {
|
|
108
|
+
return data;
|
|
109
|
+
};
|
|
110
|
+
return data;
|
|
111
|
+
}
|
|
112
|
+
function _dependencyCompareVariantsModule() {
|
|
113
|
+
const data = _interopRequireDefault(require("./dependency-compare-variants.module.scss"));
|
|
114
|
+
_dependencyCompareVariantsModule = function () {
|
|
115
|
+
return data;
|
|
116
|
+
};
|
|
117
|
+
return data;
|
|
118
|
+
}
|
|
119
|
+
const _excluded = ["componentId", "className"];
|
|
120
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
121
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
122
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); }
|
|
123
|
+
function _objectWithoutProperties(e, t) { if (null == e) return {}; var o, r, i = _objectWithoutPropertiesLoose(e, t); if (Object.getOwnPropertySymbols) { var n = Object.getOwnPropertySymbols(e); for (r = 0; r < n.length; r++) o = n[r], -1 === t.indexOf(o) && {}.propertyIsEnumerable.call(e, o) && (i[o] = e[o]); } return i; }
|
|
124
|
+
function _objectWithoutPropertiesLoose(r, e) { if (null == r) return {}; var t = {}; for (var n in r) if ({}.hasOwnProperty.call(r, n)) { if (-1 !== e.indexOf(n)) continue; t[n] = r[n]; } return t; }
|
|
125
|
+
function getVariant(nodeType) {
|
|
126
|
+
switch (nodeType) {
|
|
127
|
+
case 'defaultNode':
|
|
128
|
+
return _variants().defaultNode;
|
|
129
|
+
case 'root':
|
|
130
|
+
return _dependencyCompareVariantsModule().default[nodeType];
|
|
131
|
+
case 'external':
|
|
132
|
+
return _variants().external;
|
|
133
|
+
default:
|
|
134
|
+
return null;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
function DependencyCompareNode(props) {
|
|
138
|
+
const {
|
|
139
|
+
node,
|
|
140
|
+
type = 'defaultNode'
|
|
141
|
+
} = props;
|
|
142
|
+
const {
|
|
143
|
+
id: baseIdStr,
|
|
144
|
+
component: baseComponent,
|
|
145
|
+
compareVersion,
|
|
146
|
+
status,
|
|
147
|
+
componentId
|
|
148
|
+
} = node;
|
|
149
|
+
const {
|
|
150
|
+
version: baseVersion
|
|
151
|
+
} = baseComponent || {
|
|
152
|
+
version: componentId.version
|
|
153
|
+
};
|
|
154
|
+
const baseId = _component().ComponentID.fromString(baseIdStr);
|
|
155
|
+
const versionDiff = (0, _react().useMemo)(() => (0, _semver().valid)(baseVersion) && (0, _semver().valid)(compareVersion) && (0, _semver().compare)(baseVersion, compareVersion), [baseVersion, compareVersion]);
|
|
156
|
+
return /*#__PURE__*/_react().default.createElement(_baseUiSurfaces().Card, {
|
|
157
|
+
className: (0, _classnames().default)(_componentNode().styles.compNode, getVariant(type)),
|
|
158
|
+
elevation: "none"
|
|
159
|
+
}, /*#__PURE__*/_react().default.createElement("div", {
|
|
160
|
+
className: _componentNode().styles.firstRow
|
|
161
|
+
}, baseComponent && /*#__PURE__*/_react().default.createElement(_envsUi().EnvIcon, {
|
|
162
|
+
component: baseComponent,
|
|
163
|
+
className: _componentNode().styles.envIcon
|
|
164
|
+
}), /*#__PURE__*/_react().default.createElement(Breadcrumbs, {
|
|
165
|
+
componentId: baseId,
|
|
166
|
+
className: _baseUiText().mutedText
|
|
167
|
+
})), /*#__PURE__*/_react().default.createElement("div", {
|
|
168
|
+
className: _componentNode().styles.nameLine
|
|
169
|
+
}, /*#__PURE__*/_react().default.createElement(_baseUiRouting().NavLink, {
|
|
170
|
+
className: _dependencyCompareNodeModule().default.link,
|
|
171
|
+
external: true,
|
|
172
|
+
href: _componentModules().ComponentUrl.toUrl(baseId, {
|
|
173
|
+
includeVersion: false
|
|
174
|
+
})
|
|
175
|
+
}, /*#__PURE__*/_react().default.createElement("span", {
|
|
176
|
+
className: (0, _classnames().default)(_componentNode().styles.name, _designUiStyles().ellipsis)
|
|
177
|
+
}, baseId.name)), baseId.version && /*#__PURE__*/_react().default.createElement("span", {
|
|
178
|
+
className: (0, _classnames().default)(_componentNode().styles.version, _designUiStyles().ellipsis)
|
|
179
|
+
}, baseId.version), versionDiff !== 0 && /*#__PURE__*/_react().default.createElement("img", {
|
|
180
|
+
className: (0, _classnames().default)([_dependencyCompareNodeModule().default.arrowIcon, _dependencyCompareNodeModule().default.versionUp]),
|
|
181
|
+
src: "https://static.bit.dev/bit-icons/version-bump.svg"
|
|
182
|
+
}), compareVersion && versionDiff !== 0 && /*#__PURE__*/_react().default.createElement("span", {
|
|
183
|
+
className: (0, _classnames().default)(_dependencyCompareNodeModule().default.version, _componentNode().styles.version, _designUiStyles().ellipsis, versionDiff === -1 && _dependencyCompareNodeModule().default.versionUp, versionDiff === 1 && _dependencyCompareNodeModule().default.versionDown)
|
|
184
|
+
}, compareVersion), /*#__PURE__*/_react().default.createElement("div", {
|
|
185
|
+
className: _dependencyCompareNodeModule().default.buffs
|
|
186
|
+
}, baseComponent && /*#__PURE__*/_react().default.createElement(_componentUi().DeprecationIcon, {
|
|
187
|
+
component: baseComponent
|
|
188
|
+
}), status !== undefined && /*#__PURE__*/_react().default.createElement(_componentUiComponentCompare().CompareStatusResolver, {
|
|
189
|
+
status: status
|
|
190
|
+
}))));
|
|
191
|
+
}
|
|
192
|
+
function Breadcrumbs(_ref) {
|
|
193
|
+
let {
|
|
194
|
+
componentId,
|
|
195
|
+
className
|
|
196
|
+
} = _ref,
|
|
197
|
+
rest = _objectWithoutProperties(_ref, _excluded);
|
|
198
|
+
const {
|
|
199
|
+
scope,
|
|
200
|
+
namespace
|
|
201
|
+
} = componentId;
|
|
202
|
+
const showSep = !!scope && !!namespace;
|
|
203
|
+
return /*#__PURE__*/_react().default.createElement("div", _extends({}, rest, {
|
|
204
|
+
className: (0, _classnames().default)(_dependencyCompareNodeModule().default.breadcrumbs, _designUiStyles().ellipsis, className)
|
|
205
|
+
}), scope, showSep && '/', namespace);
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
//# sourceMappingURL=dependency-compare-node.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_baseUiRouting","data","require","_baseUiSurfaces","_baseUiText","_component","_componentModules","_componentUiComponentCompare","_componentUi","_designUiStyles","_envsUi","_classnames","_interopRequireDefault","_react","_interopRequireWildcard","_semver","_variants","_componentNode","_dependencyCompareNodeModule","_dependencyCompareVariantsModule","_excluded","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","_extends","assign","bind","arguments","length","apply","_objectWithoutProperties","_objectWithoutPropertiesLoose","getOwnPropertySymbols","indexOf","propertyIsEnumerable","getVariant","nodeType","defaultNode","variants","external","DependencyCompareNode","props","node","type","id","baseIdStr","component","baseComponent","compareVersion","status","componentId","version","baseVersion","baseId","ComponentID","fromString","versionDiff","useMemo","valid","compare","createElement","Card","className","classnames","componentNodeStyles","compNode","elevation","firstRow","EnvIcon","envIcon","Breadcrumbs","mutedText","nameLine","NavLink","styles","link","href","ComponentUrl","toUrl","includeVersion","name","ellipsis","arrowIcon","versionUp","src","versionDown","buffs","DeprecationIcon","undefined","CompareStatusResolver","_ref","rest","scope","namespace","showSep","breadcrumbs"],"sources":["dependency-compare-node.tsx"],"sourcesContent":["import { NavLink } from '@teambit/base-ui.routing.nav-link';\nimport { Card } from '@teambit/base-ui.surfaces.card';\nimport { mutedText } from '@teambit/base-ui.text.muted-text';\nimport { ComponentID } from '@teambit/component';\nimport { ComponentUrl } from '@teambit/component.modules.component-url';\nimport { CompareStatusResolver } from '@teambit/component.ui.component-compare.status-resolver';\nimport { DeprecationIcon } from '@teambit/component.ui.deprecation-icon';\nimport { ellipsis } from '@teambit/design.ui.styles.ellipsis';\nimport { EnvIcon } from '@teambit/envs.ui.env-icon';\nimport classnames from 'classnames';\nimport React, { useMemo } from 'react';\nimport { compare, valid } from 'semver';\nimport { defaultNode, external } from '../../ui/component-node/variants';\nimport { styles as componentNodeStyles } from '../../ui/component-node';\nimport { CompareNodeModel } from './compare-node-model';\nimport styles from './dependency-compare-node.module.scss';\nimport variants from './dependency-compare-variants.module.scss';\n\nfunction getVariant(nodeType?: string) {\n switch (nodeType) {\n case 'defaultNode':\n return defaultNode;\n case 'root':\n return variants[nodeType];\n case 'external':\n return external;\n default:\n return null;\n }\n}\n\nexport type DependencyCompareNodeProps = {\n node: CompareNodeModel;\n type?: string;\n};\n\nexport function DependencyCompareNode(props: DependencyCompareNodeProps) {\n const { node, type = 'defaultNode' } = props;\n const { id: baseIdStr, component: baseComponent, compareVersion, status, componentId } = node;\n const { version: baseVersion } = baseComponent || { version: componentId.version };\n const baseId = ComponentID.fromString(baseIdStr);\n const versionDiff = useMemo(\n () => valid(baseVersion) && valid(compareVersion) && compare(baseVersion, compareVersion),\n [baseVersion, compareVersion]\n );\n\n return (\n <Card className={classnames(componentNodeStyles.compNode, getVariant(type))} elevation=\"none\">\n <div className={componentNodeStyles.firstRow}>\n {baseComponent && <EnvIcon component={baseComponent} className={componentNodeStyles.envIcon} />}\n <Breadcrumbs componentId={baseId} className={mutedText} />\n </div>\n <div className={componentNodeStyles.nameLine}>\n <NavLink className={styles.link} external={true} href={ComponentUrl.toUrl(baseId, { includeVersion: false })}>\n <span className={classnames(componentNodeStyles.name, ellipsis)}>{baseId.name}</span>\n </NavLink>\n {baseId.version && <span className={classnames(componentNodeStyles.version, ellipsis)}>{baseId.version}</span>}\n {versionDiff !== 0 && (\n <img\n className={classnames([styles.arrowIcon, styles.versionUp])}\n src=\"https://static.bit.dev/bit-icons/version-bump.svg\"\n />\n )}\n {compareVersion && versionDiff !== 0 && (\n <span\n className={classnames(\n styles.version,\n componentNodeStyles.version,\n ellipsis,\n versionDiff === -1 && styles.versionUp,\n versionDiff === 1 && styles.versionDown\n )}\n >\n {compareVersion}\n </span>\n )}\n\n <div className={styles.buffs}>\n {baseComponent && <DeprecationIcon component={baseComponent} />}\n {status !== undefined && <CompareStatusResolver status={status} />}\n </div>\n </div>\n </Card>\n );\n}\n\ntype BreadcrumbsProps = { componentId: ComponentID } & React.HTMLAttributes<HTMLDivElement>;\n\nfunction Breadcrumbs({ componentId, className, ...rest }: BreadcrumbsProps) {\n const { scope, namespace } = componentId;\n const showSep = !!scope && !!namespace;\n\n return (\n <div {...rest} className={classnames(styles.breadcrumbs, ellipsis, className)}>\n {scope}\n {showSep && '/'}\n {namespace}\n </div>\n );\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
.arrowIcon {
|
|
2
|
+
height: 16px;
|
|
3
|
+
padding-right: 8px;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
.versionUp {
|
|
7
|
+
color: var(--positive-color, #37b26c);
|
|
8
|
+
}
|
|
9
|
+
|
|
10
|
+
.versionDown {
|
|
11
|
+
color: var(--negative-color, #e62e5c);
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
.link {
|
|
15
|
+
text-decoration: none;
|
|
16
|
+
color: var(--bit-text-color-heavyed);
|
|
17
|
+
|
|
18
|
+
&:hover {
|
|
19
|
+
text-decoration: underline;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
$success: #37b26c;
|
|
2
|
+
$borderLabelHeight: 20px;
|
|
3
|
+
|
|
4
|
+
.root {
|
|
5
|
+
border-color: $success;
|
|
6
|
+
border-top-width: 20px;
|
|
7
|
+
|
|
8
|
+
border-radius: 10px;
|
|
9
|
+
box-shadow:
|
|
10
|
+
0px 0px 0px 2px #d0f1de,
|
|
11
|
+
var(--bit-shadow-hover-medium);
|
|
12
|
+
|
|
13
|
+
&:before {
|
|
14
|
+
content: 'Current component';
|
|
15
|
+
position: absolute;
|
|
16
|
+
top: 1px;
|
|
17
|
+
left: 10px;
|
|
18
|
+
|
|
19
|
+
font-size: $borderLabelHeight * 0.5;
|
|
20
|
+
color: white;
|
|
21
|
+
line-height: $borderLabelHeight;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ComponentID } from '@teambit/component';
|
|
2
|
+
import { EdgeModel, GraphModel, NodeModel } from '../query';
|
|
3
|
+
import { CompareGraphModel } from './compare-graph-model';
|
|
4
|
+
export declare function diffGraph(baseGraph?: GraphModel<NodeModel, EdgeModel>, compareGraph?: GraphModel<NodeModel, EdgeModel>, baseId?: ComponentID): CompareGraphModel | null;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.diffGraph = diffGraph;
|
|
7
|
+
function _compareGraphModel() {
|
|
8
|
+
const data = require("./compare-graph-model");
|
|
9
|
+
_compareGraphModel = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
17
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
18
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
19
|
+
const toShortId = node => node.componentId.toStringWithoutVersion();
|
|
20
|
+
|
|
21
|
+
// this is to get a key with versions ignored so that we'll have a unique set of component nodes
|
|
22
|
+
const toShortIdFromNodeId = nodeId => nodeId.split('@')[0];
|
|
23
|
+
const delim = '::';
|
|
24
|
+
const getEdgeId = _e => {
|
|
25
|
+
return `${toShortIdFromNodeId(_e.sourceId)}${delim}${toShortIdFromNodeId(_e.targetId)}`;
|
|
26
|
+
};
|
|
27
|
+
function diffGraph(baseGraph, compareGraph, baseId) {
|
|
28
|
+
if (!baseGraph || !compareGraph || !baseId) return null;
|
|
29
|
+
const baseNodes = baseGraph.nodes;
|
|
30
|
+
const compareNodes = compareGraph.nodes;
|
|
31
|
+
const baseNodesMap = new Map(baseNodes.map(n => [toShortId(n), n]));
|
|
32
|
+
const compareNodesMap = new Map(compareNodes.map(n => [toShortId(n), n]));
|
|
33
|
+
const allNodes = [];
|
|
34
|
+
for (const baseNode of baseNodes) {
|
|
35
|
+
const compareNode = compareNodesMap.get(toShortId(baseNode));
|
|
36
|
+
if (compareNode) {
|
|
37
|
+
allNodes.push(_objectSpread(_objectSpread({}, baseNode), {}, {
|
|
38
|
+
compareVersion: compareNode.componentId.version,
|
|
39
|
+
status: compareNode.componentId.isEqual(baseNode.componentId) ? undefined : 'modified'
|
|
40
|
+
}));
|
|
41
|
+
} else {
|
|
42
|
+
allNodes.push(_objectSpread(_objectSpread({}, baseNode), {}, {
|
|
43
|
+
compareVersion: baseNode.componentId.version,
|
|
44
|
+
status: 'deleted'
|
|
45
|
+
}));
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
const newNodes = compareNodes.filter(n => !baseNodesMap.has(toShortId(n)));
|
|
49
|
+
for (const node of newNodes) {
|
|
50
|
+
allNodes.push(_objectSpread(_objectSpread({}, node), {}, {
|
|
51
|
+
compareVersion: '',
|
|
52
|
+
status: 'new'
|
|
53
|
+
}));
|
|
54
|
+
}
|
|
55
|
+
const allNodesMap = new Map(allNodes.map(n => [toShortId(n), n]));
|
|
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 => _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
|
+
}));
|
|
61
|
+
const allEdges = [...baseGraph.edges, ...edgesOnlyInCompare];
|
|
62
|
+
return new (_compareGraphModel().CompareGraphModel)(allNodes, allEdges);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
//# sourceMappingURL=diff-graph.js.map
|
|
@@ -0,0 +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","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","toShortId","node","componentId","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","id","toString","allEdges","CompareGraphModel"],"sources":["diff-graph.ts"],"sourcesContent":["import { ComponentID } from '@teambit/component';\nimport { EdgeModel, GraphModel, NodeModel } from '../query';\nimport { CompareGraphModel } from './compare-graph-model';\nimport { CompareNodeModel } from './compare-node-model';\n\nconst toShortId = (node: NodeModel) => node.componentId.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\n if (compareNode) {\n allNodes.push({\n ...baseNode,\n compareVersion: compareNode.componentId.version,\n status: compareNode.componentId.isEqual(baseNode.componentId) ? undefined : 'modified',\n });\n } else {\n allNodes.push({\n ...baseNode,\n compareVersion: baseNode.componentId.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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","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { DependenciesCompare } from './dependencies-compare';
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "DependenciesCompare", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _dependenciesCompare().DependenciesCompare;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
function _dependenciesCompare() {
|
|
13
|
+
const data = require("./dependencies-compare");
|
|
14
|
+
_dependenciesCompare = function () {
|
|
15
|
+
return data;
|
|
16
|
+
};
|
|
17
|
+
return data;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dependenciesCompare","data","require"],"sources":["index.ts"],"sourcesContent":["export { DependenciesCompare } from './dependencies-compare';\n"],"mappings":";;;;;;;;;;;AAAA,SAAAA,qBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,oBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { Edge, Node } from 'reactflow';
|
|
2
|
+
import { ComponentID } from '@teambit/component';
|
|
3
|
+
import { EdgeModel, GraphModel, NodeModel } from '../query';
|
|
4
|
+
type ElementsOptions = {
|
|
5
|
+
rootNode?: ComponentID;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* generate Nodes and Edges for the ReactFlowRenderer graph renderer
|
|
9
|
+
*/
|
|
10
|
+
export declare function calcElements(graph: GraphModel<NodeModel, EdgeModel> | undefined, { rootNode }: ElementsOptions): {
|
|
11
|
+
nodes: Node[];
|
|
12
|
+
edges: Edge[];
|
|
13
|
+
};
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calcElements = calcElements;
|
|
7
|
+
function _react() {
|
|
8
|
+
const data = require("react");
|
|
9
|
+
_react = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function _reactflow() {
|
|
15
|
+
const data = require("reactflow");
|
|
16
|
+
_reactflow = function () {
|
|
17
|
+
return data;
|
|
18
|
+
};
|
|
19
|
+
return data;
|
|
20
|
+
}
|
|
21
|
+
function _calcLayout() {
|
|
22
|
+
const data = require("./calc-layout");
|
|
23
|
+
_calcLayout = function () {
|
|
24
|
+
return data;
|
|
25
|
+
};
|
|
26
|
+
return data;
|
|
27
|
+
}
|
|
28
|
+
function _depEdge() {
|
|
29
|
+
const data = require("./dep-edge");
|
|
30
|
+
_depEdge = function () {
|
|
31
|
+
return data;
|
|
32
|
+
};
|
|
33
|
+
return data;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* generate Nodes and Edges for the ReactFlowRenderer graph renderer
|
|
37
|
+
*/
|
|
38
|
+
function calcElements(graph, {
|
|
39
|
+
rootNode
|
|
40
|
+
}) {
|
|
41
|
+
return (0, _react().useMemo)(() => {
|
|
42
|
+
if (!graph) return {
|
|
43
|
+
nodes: [],
|
|
44
|
+
edges: []
|
|
45
|
+
};
|
|
46
|
+
const positions = (0, _calcLayout().calcLayout)(graph);
|
|
47
|
+
const nodes = Array.from(graph.nodes.values()).map(x => {
|
|
48
|
+
return {
|
|
49
|
+
id: x.id,
|
|
50
|
+
type: 'ComponentNode',
|
|
51
|
+
data: {
|
|
52
|
+
node: x,
|
|
53
|
+
type: rootNode && x.componentId.isEqual(rootNode, {
|
|
54
|
+
ignoreVersion: true
|
|
55
|
+
}) ? 'root' : undefined
|
|
56
|
+
},
|
|
57
|
+
position: positions.get(x.id) || {
|
|
58
|
+
x: 0,
|
|
59
|
+
y: 0
|
|
60
|
+
}
|
|
61
|
+
};
|
|
62
|
+
});
|
|
63
|
+
const edges = graph.edges.map(e => ({
|
|
64
|
+
id: `_${e.sourceId}__${e.targetId}`,
|
|
65
|
+
source: e.sourceId,
|
|
66
|
+
target: e.targetId,
|
|
67
|
+
label: (0, _depEdge().depTypeToLabel)(e.dependencyLifecycleType),
|
|
68
|
+
labelBgPadding: [4, 4],
|
|
69
|
+
type: 'smoothstep',
|
|
70
|
+
className: (0, _depEdge().depTypeToClass)(e.dependencyLifecycleType),
|
|
71
|
+
arrowHeadType: _reactflow().MarkerType.Arrow,
|
|
72
|
+
markerEnd: {
|
|
73
|
+
type: _reactflow().MarkerType.Arrow
|
|
74
|
+
}
|
|
75
|
+
}));
|
|
76
|
+
return {
|
|
77
|
+
nodes,
|
|
78
|
+
edges
|
|
79
|
+
};
|
|
80
|
+
}, [graph?.nodes.length, graph?.edges.length, rootNode?.toString(), graph?.nodes.some(n => n.component)]);
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
//# sourceMappingURL=calc-elements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_react","data","require","_reactflow","_calcLayout","_depEdge","calcElements","graph","rootNode","useMemo","nodes","edges","positions","calcLayout","Array","from","values","map","x","id","type","node","componentId","isEqual","ignoreVersion","undefined","position","get","y","e","sourceId","targetId","source","target","label","depTypeToLabel","dependencyLifecycleType","labelBgPadding","className","depTypeToClass","arrowHeadType","MarkerType","Arrow","markerEnd","length","toString","some","n","component"],"sources":["calc-elements.tsx"],"sourcesContent":["import { useMemo } from 'react';\nimport { MarkerType, Edge, Node } from 'reactflow';\nimport { ComponentID } from '@teambit/component';\nimport { calcLayout } from './calc-layout';\nimport { EdgeModel, GraphModel, NodeModel } from '../query';\n\nimport { depTypeToClass, depTypeToLabel } from './dep-edge';\n\ntype ElementsOptions = {\n rootNode?: ComponentID;\n};\n\n/**\n * generate Nodes and Edges for the ReactFlowRenderer graph renderer\n */\nexport function calcElements(\n graph: GraphModel<NodeModel, EdgeModel> | undefined,\n { rootNode }: ElementsOptions\n): { nodes: Node[]; edges: Edge[] } {\n return useMemo(() => {\n if (!graph) return { nodes: [], edges: [] };\n\n const positions = calcLayout(graph);\n\n const nodes: Node[] = Array.from(graph.nodes.values()).map((x) => {\n return {\n id: x.id,\n type: 'ComponentNode',\n data: {\n node: x,\n type: rootNode && x.componentId.isEqual(rootNode, { ignoreVersion: true }) ? 'root' : undefined,\n },\n position: positions.get(x.id) || { x: 0, y: 0 },\n };\n });\n\n const edges: Edge[] = graph.edges.map((e) => ({\n id: `_${e.sourceId}__${e.targetId}`,\n source: e.sourceId,\n target: e.targetId,\n label: depTypeToLabel(e.dependencyLifecycleType),\n labelBgPadding: [4, 4],\n type: 'smoothstep',\n className: depTypeToClass(e.dependencyLifecycleType),\n arrowHeadType: MarkerType.Arrow,\n markerEnd: {\n type: MarkerType.Arrow,\n },\n }));\n\n return { nodes, edges };\n }, [graph?.nodes.length, graph?.edges.length, rootNode?.toString(), graph?.nodes.some((n) => n.component)]);\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,WAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,YAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,WAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAI,SAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,QAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAMA;AACA;AACA;AACO,SAASK,YAAYA,CAC1BC,KAAmD,EACnD;EAAEC;AAA0B,CAAC,EACK;EAClC,OAAO,IAAAC,gBAAO,EAAC,MAAM;IACnB,IAAI,CAACF,KAAK,EAAE,OAAO;MAAEG,KAAK,EAAE,EAAE;MAAEC,KAAK,EAAE;IAAG,CAAC;IAE3C,MAAMC,SAAS,GAAG,IAAAC,wBAAU,EAACN,KAAK,CAAC;IAEnC,MAAMG,KAAa,GAAGI,KAAK,CAACC,IAAI,CAACR,KAAK,CAACG,KAAK,CAACM,MAAM,CAAC,CAAC,CAAC,CAACC,GAAG,CAAEC,CAAC,IAAK;MAChE,OAAO;QACLC,EAAE,EAAED,CAAC,CAACC,EAAE;QACRC,IAAI,EAAE,eAAe;QACrBnB,IAAI,EAAE;UACJoB,IAAI,EAAEH,CAAC;UACPE,IAAI,EAAEZ,QAAQ,IAAIU,CAAC,CAACI,WAAW,CAACC,OAAO,CAACf,QAAQ,EAAE;YAAEgB,aAAa,EAAE;UAAK,CAAC,CAAC,GAAG,MAAM,GAAGC;QACxF,CAAC;QACDC,QAAQ,EAAEd,SAAS,CAACe,GAAG,CAACT,CAAC,CAACC,EAAE,CAAC,IAAI;UAAED,CAAC,EAAE,CAAC;UAAEU,CAAC,EAAE;QAAE;MAChD,CAAC;IACH,CAAC,CAAC;IAEF,MAAMjB,KAAa,GAAGJ,KAAK,CAACI,KAAK,CAACM,GAAG,CAAEY,CAAC,KAAM;MAC5CV,EAAE,EAAE,IAAIU,CAAC,CAACC,QAAQ,KAAKD,CAAC,CAACE,QAAQ,EAAE;MACnCC,MAAM,EAAEH,CAAC,CAACC,QAAQ;MAClBG,MAAM,EAAEJ,CAAC,CAACE,QAAQ;MAClBG,KAAK,EAAE,IAAAC,yBAAc,EAACN,CAAC,CAACO,uBAAuB,CAAC;MAChDC,cAAc,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;MACtBjB,IAAI,EAAE,YAAY;MAClBkB,SAAS,EAAE,IAAAC,yBAAc,EAACV,CAAC,CAACO,uBAAuB,CAAC;MACpDI,aAAa,EAAEC,uBAAU,CAACC,KAAK;MAC/BC,SAAS,EAAE;QACTvB,IAAI,EAAEqB,uBAAU,CAACC;MACnB;IACF,CAAC,CAAC,CAAC;IAEH,OAAO;MAAEhC,KAAK;MAAEC;IAAM,CAAC;EACzB,CAAC,EAAE,CAACJ,KAAK,EAAEG,KAAK,CAACkC,MAAM,EAAErC,KAAK,EAAEI,KAAK,CAACiC,MAAM,EAAEpC,QAAQ,EAAEqC,QAAQ,CAAC,CAAC,EAAEtC,KAAK,EAAEG,KAAK,CAACoC,IAAI,CAAEC,CAAC,IAAKA,CAAC,CAACC,SAAS,CAAC,CAAC,CAAC;AAC7G","ignoreList":[]}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.calcLayout = calcLayout;
|
|
7
|
+
function _dagre() {
|
|
8
|
+
const data = _interopRequireWildcard(require("@dagrejs/dagre"));
|
|
9
|
+
_dagre = function () {
|
|
10
|
+
return data;
|
|
11
|
+
};
|
|
12
|
+
return data;
|
|
13
|
+
}
|
|
14
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
15
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
16
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
17
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
18
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
19
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
20
|
+
const NODE_WIDTH = 260;
|
|
21
|
+
const NODE_HEIGHT = 90;
|
|
22
|
+
const TOP_TO_BOTTOM = 'TB';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* calculate the specific location of each node in the graph
|
|
26
|
+
*/
|
|
27
|
+
function calcLayout(graph) {
|
|
28
|
+
const g = new (_dagre().graphlib.Graph)();
|
|
29
|
+
g.setGraph({
|
|
30
|
+
rankdir: TOP_TO_BOTTOM,
|
|
31
|
+
nodesep: 25,
|
|
32
|
+
ranksep: 100,
|
|
33
|
+
edgesep: 100,
|
|
34
|
+
ranker: 'longest-path',
|
|
35
|
+
acyclicer: 'greedy'
|
|
36
|
+
});
|
|
37
|
+
g.setDefaultEdgeLabel(() => ({}));
|
|
38
|
+
|
|
39
|
+
// make a new instance of { width, height } per node, or dagre will get confused and place all nodes in the same spot
|
|
40
|
+
graph.nodes.forEach(n => g.setNode(n.id, _objectSpread(_objectSpread({}, n), {}, {
|
|
41
|
+
width: NODE_WIDTH,
|
|
42
|
+
height: NODE_HEIGHT
|
|
43
|
+
})));
|
|
44
|
+
graph.edges.forEach(e => g.setEdge(e.sourceId, e.targetId));
|
|
45
|
+
|
|
46
|
+
// position items in graph
|
|
47
|
+
_dagre().default.layout(g);
|
|
48
|
+
const positionsArr = g.nodes().map(nodeId => {
|
|
49
|
+
const node = g.node(nodeId);
|
|
50
|
+
const pos = {
|
|
51
|
+
x: node.x - node.width / 2,
|
|
52
|
+
y: node.y - node.height / 2
|
|
53
|
+
};
|
|
54
|
+
return [nodeId, pos];
|
|
55
|
+
});
|
|
56
|
+
return new Map(positionsArr);
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
//# sourceMappingURL=calc-layout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["_dagre","data","_interopRequireWildcard","require","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","ownKeys","keys","getOwnPropertySymbols","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","_toPropertyKey","value","configurable","writable","_toPrimitive","Symbol","toPrimitive","TypeError","String","Number","NODE_WIDTH","NODE_HEIGHT","TOP_TO_BOTTOM","calcLayout","graph","g","graphlib","Graph","setGraph","rankdir","nodesep","ranksep","edgesep","ranker","acyclicer","setDefaultEdgeLabel","nodes","setNode","id","width","height","edges","setEdge","sourceId","targetId","dagre","layout","positionsArr","map","nodeId","node","pos","x","y","Map"],"sources":["calc-layout.tsx"],"sourcesContent":["import dagre, { graphlib } from '@dagrejs/dagre';\nimport { EdgeModel, GraphModel, NodeModel } from '../query';\n\nconst NODE_WIDTH = 260;\nconst NODE_HEIGHT = 90;\n\nconst TOP_TO_BOTTOM = 'TB';\n\n/**\n * calculate the specific location of each node in the graph\n */\nexport function calcLayout(graph: GraphModel<NodeModel, EdgeModel>) {\n const g = new graphlib.Graph();\n g.setGraph({\n rankdir: TOP_TO_BOTTOM,\n nodesep: 25,\n ranksep: 100,\n edgesep: 100,\n ranker: 'longest-path',\n acyclicer: 'greedy',\n });\n g.setDefaultEdgeLabel(() => ({}));\n\n // make a new instance of { width, height } per node, or dagre will get confused and place all nodes in the same spot\n graph.nodes.forEach((n) => g.setNode(n.id, { ...n, width: NODE_WIDTH, height: NODE_HEIGHT }));\n graph.edges.forEach((e) => g.setEdge(e.sourceId, e.targetId));\n\n // position items in graph\n dagre.layout(g);\n\n const positionsArr: [string, { x: number; y: number }][] = g.nodes().map((nodeId) => {\n const node = g.node(nodeId);\n\n const pos = {\n x: node.x - node.width / 2,\n y: node.y - node.height / 2,\n };\n\n return [nodeId, pos];\n });\n\n return new Map(positionsArr);\n}\n"],"mappings":"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","ignoreList":[]}
|