@teambit/api-reference 1.0.927 → 1.0.929

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.
@@ -0,0 +1,221 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.APICompare = APICompare;
7
+ function _react() {
8
+ const data = _interopRequireDefault(require("react"));
9
+ _react = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _componentUiComponentCompare() {
15
+ const data = require("@teambit/component.ui.component-compare.context");
16
+ _componentUiComponentCompare = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _apiCompareModule() {
22
+ const data = _interopRequireDefault(require("./api-compare.module.scss"));
23
+ _apiCompareModule = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
28
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
29
+ function impactClass(impact) {
30
+ switch (impact) {
31
+ case 'BREAKING':
32
+ return _apiCompareModule().default.removedBadge;
33
+ case 'NON_BREAKING':
34
+ return _apiCompareModule().default.addedBadge;
35
+ case 'PATCH':
36
+ return _apiCompareModule().default.modifiedBadge;
37
+ default:
38
+ return _apiCompareModule().default.summaryBadge;
39
+ }
40
+ }
41
+ function impactLabel(impact) {
42
+ switch (impact) {
43
+ case 'BREAKING':
44
+ return 'Breaking';
45
+ case 'NON_BREAKING':
46
+ return 'Non-breaking';
47
+ case 'PATCH':
48
+ return 'Patch';
49
+ default:
50
+ return impact;
51
+ }
52
+ }
53
+ function getStatusClass(status) {
54
+ switch (status) {
55
+ case 'ADDED':
56
+ return _apiCompareModule().default.statusAdded;
57
+ case 'REMOVED':
58
+ return _apiCompareModule().default.statusRemoved;
59
+ case 'MODIFIED':
60
+ return _apiCompareModule().default.statusModified;
61
+ default:
62
+ return _apiCompareModule().default.statusBadge;
63
+ }
64
+ }
65
+ function getStatusLabel(status) {
66
+ switch (status) {
67
+ case 'ADDED':
68
+ return '+ Added';
69
+ case 'REMOVED':
70
+ return '- Removed';
71
+ case 'MODIFIED':
72
+ return '~ Modified';
73
+ default:
74
+ return status;
75
+ }
76
+ }
77
+ function dotClass(impact) {
78
+ switch (impact) {
79
+ case 'BREAKING':
80
+ return _apiCompareModule().default.dotBreaking;
81
+ case 'NON_BREAKING':
82
+ return _apiCompareModule().default.dotNonBreaking;
83
+ default:
84
+ return _apiCompareModule().default.dotPatch;
85
+ }
86
+ }
87
+ function DetailItem({
88
+ detail
89
+ }) {
90
+ return /*#__PURE__*/_react().default.createElement("li", {
91
+ className: _apiCompareModule().default.detailItem
92
+ }, /*#__PURE__*/_react().default.createElement("span", {
93
+ className: dotClass(detail.impact)
94
+ }), /*#__PURE__*/_react().default.createElement("span", {
95
+ className: _apiCompareModule().default.detailDescription
96
+ }, detail.description));
97
+ }
98
+ function APIDiffEntry({
99
+ change
100
+ }) {
101
+ const [expanded, setExpanded] = _react().default.useState(change.status === 'MODIFIED');
102
+ const [showSignatures, setShowSignatures] = _react().default.useState(false);
103
+ const hasBody = change.status === 'MODIFIED' ? change.changes && change.changes.length > 0 || change.baseSignature || change.compareSignature : change.baseSignature || change.compareSignature;
104
+ return /*#__PURE__*/_react().default.createElement("div", {
105
+ className: _apiCompareModule().default.diffEntry
106
+ }, /*#__PURE__*/_react().default.createElement("div", {
107
+ className: _apiCompareModule().default.diffEntryHeader,
108
+ onClick: () => hasBody && setExpanded(!expanded),
109
+ role: "button",
110
+ tabIndex: 0,
111
+ "aria-expanded": hasBody ? expanded : undefined,
112
+ onKeyDown: e => {
113
+ if (e.key === 'Enter' || e.key === ' ') {
114
+ e.preventDefault();
115
+ hasBody && setExpanded(!expanded);
116
+ }
117
+ }
118
+ }, /*#__PURE__*/_react().default.createElement("span", {
119
+ className: getStatusClass(change.status)
120
+ }, getStatusLabel(change.status)), /*#__PURE__*/_react().default.createElement("span", {
121
+ className: _apiCompareModule().default.exportName
122
+ }, change.exportName), /*#__PURE__*/_react().default.createElement("span", {
123
+ className: _apiCompareModule().default.schemaType
124
+ }, change.schemaType), /*#__PURE__*/_react().default.createElement("span", {
125
+ className: `${impactClass(change.impact)} ${_apiCompareModule().default.impactBadge}`
126
+ }, impactLabel(change.impact)), hasBody && /*#__PURE__*/_react().default.createElement("span", {
127
+ className: expanded ? _apiCompareModule().default.expandIconOpen : _apiCompareModule().default.expandIcon
128
+ }, "\u25B6")), expanded && hasBody && /*#__PURE__*/_react().default.createElement("div", {
129
+ className: _apiCompareModule().default.diffEntryBody
130
+ }, change.status === 'MODIFIED' && change.changes && change.changes.length > 0 && /*#__PURE__*/_react().default.createElement("ul", {
131
+ className: _apiCompareModule().default.detailsList
132
+ }, change.changes.map((detail, i) => /*#__PURE__*/_react().default.createElement(DetailItem, {
133
+ key: `${detail.changeKind}-${i}`,
134
+ detail: detail
135
+ }))), change.status === 'MODIFIED' && (change.baseSignature || change.compareSignature) && /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, /*#__PURE__*/_react().default.createElement("button", {
136
+ className: _apiCompareModule().default.toggleSignatures,
137
+ onClick: () => setShowSignatures(!showSignatures)
138
+ }, showSignatures ? '▼ Hide signatures' : '▶ Show signatures'), showSignatures && /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, change.baseSignature && /*#__PURE__*/_react().default.createElement("div", null, /*#__PURE__*/_react().default.createElement("div", {
139
+ className: _apiCompareModule().default.signatureLabel
140
+ }, "Base"), /*#__PURE__*/_react().default.createElement("div", {
141
+ className: _apiCompareModule().default.signatureRemoved
142
+ }, change.baseSignature)), change.compareSignature && /*#__PURE__*/_react().default.createElement("div", null, /*#__PURE__*/_react().default.createElement("div", {
143
+ className: _apiCompareModule().default.signatureLabel
144
+ }, "Compare"), /*#__PURE__*/_react().default.createElement("div", {
145
+ className: _apiCompareModule().default.signatureBlock
146
+ }, change.compareSignature)))), change.status === 'ADDED' && change.compareSignature && /*#__PURE__*/_react().default.createElement("div", {
147
+ className: _apiCompareModule().default.signatureBlock
148
+ }, change.compareSignature), change.status === 'REMOVED' && change.baseSignature && /*#__PURE__*/_react().default.createElement("div", {
149
+ className: _apiCompareModule().default.signatureRemoved
150
+ }, change.baseSignature)));
151
+ }
152
+ function ChangeSection({
153
+ title,
154
+ changes
155
+ }) {
156
+ if (changes.length === 0) return null;
157
+ const sorted = [...changes].sort((a, b) => {
158
+ const order = {
159
+ REMOVED: 0,
160
+ MODIFIED: 1,
161
+ ADDED: 2
162
+ };
163
+ return (order[a.status] ?? 3) - (order[b.status] ?? 3);
164
+ });
165
+ return /*#__PURE__*/_react().default.createElement(_react().default.Fragment, null, /*#__PURE__*/_react().default.createElement("h3", {
166
+ className: _apiCompareModule().default.sectionTitle
167
+ }, title), /*#__PURE__*/_react().default.createElement("div", {
168
+ className: _apiCompareModule().default.changeList
169
+ }, sorted.map(change => /*#__PURE__*/_react().default.createElement(APIDiffEntry, {
170
+ key: `${change.visibility}-${change.status}-${change.exportName}`,
171
+ change: change
172
+ }))));
173
+ }
174
+ function APICompare() {
175
+ const compareContext = (0, _componentUiComponentCompare().useComponentCompare)();
176
+ const apiDiffResult = compareContext?.apiDiffResult;
177
+ if (apiDiffResult === undefined) {
178
+ return /*#__PURE__*/_react().default.createElement("div", {
179
+ className: _apiCompareModule().default.emptyState
180
+ }, "Loading API diff...");
181
+ }
182
+ if (!apiDiffResult || !apiDiffResult.hasChanges) {
183
+ return /*#__PURE__*/_react().default.createElement("div", {
184
+ className: _apiCompareModule().default.emptyState
185
+ }, "No API changes between these versions");
186
+ }
187
+ const {
188
+ publicChanges,
189
+ internalChanges,
190
+ added,
191
+ removed,
192
+ modified,
193
+ breaking,
194
+ impact
195
+ } = apiDiffResult;
196
+ return /*#__PURE__*/_react().default.createElement("div", {
197
+ className: _apiCompareModule().default.apiCompareContainer
198
+ }, /*#__PURE__*/_react().default.createElement("div", {
199
+ className: _apiCompareModule().default.summary
200
+ }, /*#__PURE__*/_react().default.createElement("span", {
201
+ className: impactClass(impact)
202
+ }, impactLabel(impact)), /*#__PURE__*/_react().default.createElement("span", {
203
+ className: _apiCompareModule().default.summaryDivider
204
+ }, "|"), added > 0 && /*#__PURE__*/_react().default.createElement("span", {
205
+ className: _apiCompareModule().default.addedBadge
206
+ }, "+", added, " added"), removed > 0 && /*#__PURE__*/_react().default.createElement("span", {
207
+ className: _apiCompareModule().default.removedBadge
208
+ }, "-", removed, " removed"), modified > 0 && /*#__PURE__*/_react().default.createElement("span", {
209
+ className: _apiCompareModule().default.modifiedBadge
210
+ }, "~", modified, " modified"), breaking > 0 && /*#__PURE__*/_react().default.createElement("span", {
211
+ className: _apiCompareModule().default.removedBadge
212
+ }, breaking, " breaking")), /*#__PURE__*/_react().default.createElement(ChangeSection, {
213
+ title: "Public API",
214
+ changes: publicChanges
215
+ }), /*#__PURE__*/_react().default.createElement(ChangeSection, {
216
+ title: "Internal (non-exported)",
217
+ changes: internalChanges
218
+ }));
219
+ }
220
+
221
+ //# sourceMappingURL=api-compare.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","_componentUiComponentCompare","_apiCompareModule","e","__esModule","default","impactClass","impact","styles","removedBadge","addedBadge","modifiedBadge","summaryBadge","impactLabel","getStatusClass","status","statusAdded","statusRemoved","statusModified","statusBadge","getStatusLabel","dotClass","dotBreaking","dotNonBreaking","dotPatch","DetailItem","detail","createElement","className","detailItem","detailDescription","description","APIDiffEntry","change","expanded","setExpanded","React","useState","showSignatures","setShowSignatures","hasBody","changes","length","baseSignature","compareSignature","diffEntry","diffEntryHeader","onClick","role","tabIndex","undefined","onKeyDown","key","preventDefault","exportName","schemaType","impactBadge","expandIconOpen","expandIcon","diffEntryBody","detailsList","map","i","changeKind","Fragment","toggleSignatures","signatureLabel","signatureRemoved","signatureBlock","ChangeSection","title","sorted","sort","a","b","order","REMOVED","MODIFIED","ADDED","sectionTitle","changeList","visibility","APICompare","compareContext","useComponentCompare","apiDiffResult","emptyState","hasChanges","publicChanges","internalChanges","added","removed","modified","breaking","apiCompareContainer","summary","summaryDivider"],"sources":["api-compare.tsx"],"sourcesContent":["import React from 'react';\nimport { useComponentCompare } from '@teambit/component.ui.component-compare.context';\nimport type { APIDiffResult, APIDiffChange, APIDiffDetail } from './api-compare.types';\nimport styles from './api-compare.module.scss';\n\nexport type { APIDiffResult, APIDiffChange, APIDiffDetail };\n\nfunction impactClass(impact: string): string {\n switch (impact) {\n case 'BREAKING':\n return styles.removedBadge;\n case 'NON_BREAKING':\n return styles.addedBadge;\n case 'PATCH':\n return styles.modifiedBadge;\n default:\n return styles.summaryBadge;\n }\n}\n\nfunction impactLabel(impact: string): string {\n switch (impact) {\n case 'BREAKING':\n return 'Breaking';\n case 'NON_BREAKING':\n return 'Non-breaking';\n case 'PATCH':\n return 'Patch';\n default:\n return impact;\n }\n}\n\nfunction getStatusClass(status: string): string {\n switch (status) {\n case 'ADDED':\n return styles.statusAdded;\n case 'REMOVED':\n return styles.statusRemoved;\n case 'MODIFIED':\n return styles.statusModified;\n default:\n return styles.statusBadge;\n }\n}\n\nfunction getStatusLabel(status: string): string {\n switch (status) {\n case 'ADDED':\n return '+ Added';\n case 'REMOVED':\n return '- Removed';\n case 'MODIFIED':\n return '~ Modified';\n default:\n return status;\n }\n}\n\nfunction dotClass(impact: string): string {\n switch (impact) {\n case 'BREAKING':\n return styles.dotBreaking;\n case 'NON_BREAKING':\n return styles.dotNonBreaking;\n default:\n return styles.dotPatch;\n }\n}\n\nfunction DetailItem({ detail }: { detail: APIDiffDetail }) {\n return (\n <li className={styles.detailItem}>\n <span className={dotClass(detail.impact)} />\n <span className={styles.detailDescription}>{detail.description}</span>\n </li>\n );\n}\n\nfunction APIDiffEntry({ change }: { change: APIDiffChange }) {\n const [expanded, setExpanded] = React.useState(change.status === 'MODIFIED');\n const [showSignatures, setShowSignatures] = React.useState(false);\n\n const hasBody =\n change.status === 'MODIFIED'\n ? (change.changes && change.changes.length > 0) || change.baseSignature || change.compareSignature\n : change.baseSignature || change.compareSignature;\n\n return (\n <div className={styles.diffEntry}>\n <div\n className={styles.diffEntryHeader}\n onClick={() => hasBody && setExpanded(!expanded)}\n role=\"button\"\n tabIndex={0}\n aria-expanded={hasBody ? expanded : undefined}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault();\n hasBody && setExpanded(!expanded);\n }\n }}\n >\n <span className={getStatusClass(change.status)}>{getStatusLabel(change.status)}</span>\n <span className={styles.exportName}>{change.exportName}</span>\n <span className={styles.schemaType}>{change.schemaType}</span>\n <span className={`${impactClass(change.impact)} ${styles.impactBadge}`}>{impactLabel(change.impact)}</span>\n {hasBody && <span className={expanded ? styles.expandIconOpen : styles.expandIcon}>▶</span>}\n </div>\n {expanded && hasBody && (\n <div className={styles.diffEntryBody}>\n {change.status === 'MODIFIED' && change.changes && change.changes.length > 0 && (\n <ul className={styles.detailsList}>\n {change.changes.map((detail, i) => (\n <DetailItem key={`${detail.changeKind}-${i}`} detail={detail} />\n ))}\n </ul>\n )}\n {change.status === 'MODIFIED' && (change.baseSignature || change.compareSignature) && (\n <>\n <button className={styles.toggleSignatures} onClick={() => setShowSignatures(!showSignatures)}>\n {showSignatures ? '▼ Hide signatures' : '▶ Show signatures'}\n </button>\n {showSignatures && (\n <>\n {change.baseSignature && (\n <div>\n <div className={styles.signatureLabel}>Base</div>\n <div className={styles.signatureRemoved}>{change.baseSignature}</div>\n </div>\n )}\n {change.compareSignature && (\n <div>\n <div className={styles.signatureLabel}>Compare</div>\n <div className={styles.signatureBlock}>{change.compareSignature}</div>\n </div>\n )}\n </>\n )}\n </>\n )}\n {change.status === 'ADDED' && change.compareSignature && (\n <div className={styles.signatureBlock}>{change.compareSignature}</div>\n )}\n {change.status === 'REMOVED' && change.baseSignature && (\n <div className={styles.signatureRemoved}>{change.baseSignature}</div>\n )}\n </div>\n )}\n </div>\n );\n}\n\nfunction ChangeSection({ title, changes }: { title: string; changes: APIDiffChange[] }) {\n if (changes.length === 0) return null;\n\n const sorted = [...changes].sort((a, b) => {\n const order: Record<string, number> = { REMOVED: 0, MODIFIED: 1, ADDED: 2 };\n return (order[a.status] ?? 3) - (order[b.status] ?? 3);\n });\n\n return (\n <>\n <h3 className={styles.sectionTitle}>{title}</h3>\n <div className={styles.changeList}>\n {sorted.map((change) => (\n <APIDiffEntry key={`${change.visibility}-${change.status}-${change.exportName}`} change={change} />\n ))}\n </div>\n </>\n );\n}\n\nexport function APICompare() {\n const compareContext = useComponentCompare();\n const apiDiffResult: APIDiffResult | null | undefined = (compareContext as any)?.apiDiffResult;\n\n if (apiDiffResult === undefined) {\n return <div className={styles.emptyState}>Loading API diff...</div>;\n }\n\n if (!apiDiffResult || !apiDiffResult.hasChanges) {\n return <div className={styles.emptyState}>No API changes between these versions</div>;\n }\n\n const { publicChanges, internalChanges, added, removed, modified, breaking, impact } = apiDiffResult;\n\n return (\n <div className={styles.apiCompareContainer}>\n <div className={styles.summary}>\n <span className={impactClass(impact)}>{impactLabel(impact)}</span>\n <span className={styles.summaryDivider}>|</span>\n {added > 0 && <span className={styles.addedBadge}>+{added} added</span>}\n {removed > 0 && <span className={styles.removedBadge}>-{removed} removed</span>}\n {modified > 0 && <span className={styles.modifiedBadge}>~{modified} modified</span>}\n {breaking > 0 && <span className={styles.removedBadge}>{breaking} breaking</span>}\n </div>\n <ChangeSection title=\"Public API\" changes={publicChanges} />\n <ChangeSection title=\"Internal (non-exported)\" changes={internalChanges} />\n </div>\n );\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,250 @@
1
+ .apiCompareContainer {
2
+ display: flex;
3
+ flex-direction: column;
4
+ height: 100%;
5
+ overflow: auto;
6
+ padding: 24px;
7
+ gap: 16px;
8
+ }
9
+
10
+ .summary {
11
+ display: flex;
12
+ gap: 12px;
13
+ align-items: center;
14
+ padding: 12px 16px;
15
+ background: var(--bit-bg-dent, #f6f6f6);
16
+ border-radius: 8px;
17
+ font-size: 13px;
18
+ }
19
+
20
+ .summaryDivider {
21
+ opacity: 0.3;
22
+ color: var(--bit-text-color-light, #6c707c);
23
+ }
24
+
25
+ .summaryBadge {
26
+ display: inline-flex;
27
+ align-items: center;
28
+ gap: 4px;
29
+ padding: 3px 10px;
30
+ border-radius: 12px;
31
+ font-weight: 500;
32
+ font-size: 12px;
33
+ white-space: nowrap;
34
+ }
35
+
36
+ .addedBadge {
37
+ composes: summaryBadge;
38
+ background: color-mix(in srgb, var(--bit-color-added, #2ea043) 15%, transparent);
39
+ color: var(--bit-color-added, #2ea043);
40
+ }
41
+
42
+ .removedBadge {
43
+ composes: summaryBadge;
44
+ background: color-mix(in srgb, var(--bit-color-removed, #f85149) 15%, transparent);
45
+ color: var(--bit-color-removed, #f85149);
46
+ }
47
+
48
+ .modifiedBadge {
49
+ composes: summaryBadge;
50
+ background: color-mix(in srgb, var(--bit-color-modified, #d29922) 15%, transparent);
51
+ color: var(--bit-color-modified, #d29922);
52
+ }
53
+
54
+ .changeList {
55
+ display: flex;
56
+ flex-direction: column;
57
+ gap: 8px;
58
+ }
59
+
60
+ .sectionTitle {
61
+ margin: 16px 0 8px;
62
+ font-size: 12px;
63
+ font-weight: 600;
64
+ text-transform: uppercase;
65
+ letter-spacing: 0.5px;
66
+ color: var(--bit-text-color-light, #6c707c);
67
+ }
68
+
69
+ .diffEntry {
70
+ border: 1px solid var(--bit-border-color-lightest, #ededed);
71
+ border-radius: 8px;
72
+ overflow: hidden;
73
+ }
74
+
75
+ .diffEntryHeader {
76
+ display: flex;
77
+ align-items: center;
78
+ gap: 10px;
79
+ padding: 10px 16px;
80
+ cursor: pointer;
81
+ user-select: none;
82
+
83
+ &:hover {
84
+ background: var(--bit-bg-dent, #f6f6f6);
85
+ }
86
+ }
87
+
88
+ .statusBadge {
89
+ display: inline-flex;
90
+ align-items: center;
91
+ padding: 2px 8px;
92
+ border-radius: 4px;
93
+ font-weight: 600;
94
+ font-size: 11px;
95
+ text-transform: uppercase;
96
+ letter-spacing: 0.3px;
97
+ flex-shrink: 0;
98
+ white-space: nowrap;
99
+ }
100
+
101
+ .statusAdded {
102
+ composes: statusBadge;
103
+ background: color-mix(in srgb, var(--bit-color-added, #2ea043) 15%, transparent);
104
+ color: var(--bit-color-added, #2ea043);
105
+ }
106
+
107
+ .statusRemoved {
108
+ composes: statusBadge;
109
+ background: color-mix(in srgb, var(--bit-color-removed, #f85149) 15%, transparent);
110
+ color: var(--bit-color-removed, #f85149);
111
+ }
112
+
113
+ .statusModified {
114
+ composes: statusBadge;
115
+ background: color-mix(in srgb, var(--bit-color-modified, #d29922) 15%, transparent);
116
+ color: var(--bit-color-modified, #d29922);
117
+ }
118
+
119
+ .exportName {
120
+ font-weight: 600;
121
+ font-size: 14px;
122
+ font-family: var(--bit-font-mono, monospace);
123
+ color: var(--bit-text-color-heavy, #2b2b2b);
124
+ }
125
+
126
+ .schemaType {
127
+ color: var(--bit-text-color-light, #6c707c);
128
+ font-size: 12px;
129
+ }
130
+
131
+ .impactBadge {
132
+ composes: summaryBadge;
133
+ margin-left: auto;
134
+ font-size: 11px;
135
+ }
136
+
137
+ .expandIcon {
138
+ color: var(--bit-text-color-light, #6c707c);
139
+ font-size: 10px;
140
+ transition: transform 0.2s;
141
+ flex-shrink: 0;
142
+ }
143
+
144
+ .expandIconOpen {
145
+ composes: expandIcon;
146
+ transform: rotate(90deg);
147
+ }
148
+
149
+ .diffEntryBody {
150
+ padding: 0 16px 16px;
151
+ border-top: 1px solid var(--bit-border-color-lightest, #ededed);
152
+ }
153
+
154
+ .detailsList {
155
+ list-style: none;
156
+ padding: 12px 0 0;
157
+ margin: 0;
158
+ display: flex;
159
+ flex-direction: column;
160
+ gap: 8px;
161
+ }
162
+
163
+ .detailItem {
164
+ display: flex;
165
+ align-items: flex-start;
166
+ gap: 8px;
167
+ font-size: 13px;
168
+ line-height: 1.5;
169
+ color: var(--bit-text-color-heavy, #2b2b2b);
170
+ }
171
+
172
+ .detailDot {
173
+ width: 7px;
174
+ height: 7px;
175
+ min-width: 7px;
176
+ border-radius: 50%;
177
+ margin-top: 6px;
178
+ flex-shrink: 0;
179
+ }
180
+
181
+ .dotBreaking {
182
+ composes: detailDot;
183
+ background: var(--bit-color-removed, #f85149);
184
+ }
185
+
186
+ .dotNonBreaking {
187
+ composes: detailDot;
188
+ background: var(--bit-color-added, #2ea043);
189
+ }
190
+
191
+ .dotPatch {
192
+ composes: detailDot;
193
+ background: var(--bit-color-modified, #d29922);
194
+ }
195
+
196
+ .detailDescription {
197
+ color: var(--bit-text-color-heavy, #2b2b2b);
198
+ }
199
+
200
+ .signatureBlock {
201
+ margin-top: 12px;
202
+ padding: 12px;
203
+ background: var(--bit-bg-dent, #f6f6f6);
204
+ border-radius: 6px;
205
+ font-family: var(--bit-font-mono, monospace);
206
+ font-size: 12px;
207
+ white-space: pre-wrap;
208
+ word-break: break-word;
209
+ line-height: 1.6;
210
+ color: var(--bit-text-color-heavy, #2b2b2b);
211
+ }
212
+
213
+ .signatureLabel {
214
+ font-weight: 600;
215
+ color: var(--bit-text-color-light, #6c707c);
216
+ margin-top: 12px;
217
+ margin-bottom: 4px;
218
+ font-size: 11px;
219
+ text-transform: uppercase;
220
+ letter-spacing: 0.5px;
221
+ }
222
+
223
+ .signatureRemoved {
224
+ composes: signatureBlock;
225
+ text-decoration: line-through;
226
+ opacity: 0.6;
227
+ }
228
+
229
+ .emptyState {
230
+ display: flex;
231
+ align-items: center;
232
+ justify-content: center;
233
+ height: 100%;
234
+ color: var(--bit-text-color-light, #6c707c);
235
+ font-size: 14px;
236
+ }
237
+
238
+ .toggleSignatures {
239
+ background: none;
240
+ border: none;
241
+ color: var(--bit-accent-color, #0366d6);
242
+ font-size: 12px;
243
+ cursor: pointer;
244
+ padding: 4px 0;
245
+ margin-top: 12px;
246
+
247
+ &:hover {
248
+ text-decoration: underline;
249
+ }
250
+ }
@@ -0,0 +1,20 @@
1
+ import type { Section } from '@teambit/component';
2
+ import type { TabItem } from '@teambit/component.ui.component-compare.models.component-compare-props';
3
+ import type { ChangeType } from '@teambit/component.ui.component-compare.models.component-compare-change-type';
4
+ export declare class APICompareSection implements TabItem, Section {
5
+ navigationLink: {
6
+ href: string;
7
+ children: string;
8
+ };
9
+ props: {
10
+ href: string;
11
+ children: string;
12
+ };
13
+ route: {
14
+ path: string;
15
+ element: import("react/jsx-runtime").JSX.Element;
16
+ };
17
+ order: number;
18
+ changeType: ChangeType;
19
+ id: string;
20
+ }
@@ -0,0 +1,45 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.APICompareSection = void 0;
7
+ function _react() {
8
+ const data = _interopRequireDefault(require("react"));
9
+ _react = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _apiCompare() {
15
+ const data = require("./api-compare");
16
+ _apiCompare = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ 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; }
23
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
24
+ 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); }
25
+ // Use string cast since the external ChangeType enum doesn't have API yet
26
+ const ChangeTypeAPI = 'API';
27
+ class APICompareSection {
28
+ constructor() {
29
+ _defineProperty(this, "navigationLink", {
30
+ href: 'api',
31
+ children: 'API'
32
+ });
33
+ _defineProperty(this, "props", this.navigationLink);
34
+ _defineProperty(this, "route", {
35
+ path: 'api/*',
36
+ element: /*#__PURE__*/_react().default.createElement(_apiCompare().APICompare, null)
37
+ });
38
+ _defineProperty(this, "order", 15);
39
+ _defineProperty(this, "changeType", ChangeTypeAPI);
40
+ _defineProperty(this, "id", 'api');
41
+ }
42
+ }
43
+ exports.APICompareSection = APICompareSection;
44
+
45
+ //# sourceMappingURL=api-compare.section.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_react","data","_interopRequireDefault","require","_apiCompare","e","__esModule","default","_defineProperty","r","t","_toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ChangeTypeAPI","APICompareSection","constructor","href","children","navigationLink","path","element","createElement","APICompare","exports"],"sources":["api-compare.section.tsx"],"sourcesContent":["import React from 'react';\nimport type { Section } from '@teambit/component';\nimport type { TabItem } from '@teambit/component.ui.component-compare.models.component-compare-props';\nimport type { ChangeType } from '@teambit/component.ui.component-compare.models.component-compare-change-type';\nimport { APICompare } from './api-compare';\n\n// Use string cast since the external ChangeType enum doesn't have API yet\nconst ChangeTypeAPI = 'API' as unknown as ChangeType;\n\nexport class APICompareSection implements TabItem, Section {\n navigationLink = {\n href: 'api',\n children: 'API',\n };\n\n props = this.navigationLink;\n\n route = {\n path: 'api/*',\n element: <APICompare />,\n };\n\n order = 15;\n changeType = ChangeTypeAPI;\n id = 'api';\n}\n"],"mappings":";;;;;;AAAA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIA,SAAAG,YAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2C,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,gBAAAH,CAAA,EAAAI,CAAA,EAAAC,CAAA,YAAAD,CAAA,GAAAE,cAAA,CAAAF,CAAA,MAAAJ,CAAA,GAAAO,MAAA,CAAAC,cAAA,CAAAR,CAAA,EAAAI,CAAA,IAAAK,KAAA,EAAAJ,CAAA,EAAAK,UAAA,MAAAC,YAAA,MAAAC,QAAA,UAAAZ,CAAA,CAAAI,CAAA,IAAAC,CAAA,EAAAL,CAAA;AAAA,SAAAM,eAAAD,CAAA,QAAAQ,CAAA,GAAAC,YAAA,CAAAT,CAAA,uCAAAQ,CAAA,GAAAA,CAAA,GAAAA,CAAA;AAAA,SAAAC,aAAAT,CAAA,EAAAD,CAAA,2BAAAC,CAAA,KAAAA,CAAA,SAAAA,CAAA,MAAAL,CAAA,GAAAK,CAAA,CAAAU,MAAA,CAAAC,WAAA,kBAAAhB,CAAA,QAAAa,CAAA,GAAAb,CAAA,CAAAiB,IAAA,CAAAZ,CAAA,EAAAD,CAAA,uCAAAS,CAAA,SAAAA,CAAA,YAAAK,SAAA,yEAAAd,CAAA,GAAAe,MAAA,GAAAC,MAAA,EAAAf,CAAA;AAE3C;AACA,MAAMgB,aAAa,GAAG,KAA8B;AAE7C,MAAMC,iBAAiB,CAA6B;EAAAC,YAAA;IAAApB,eAAA,yBACxC;MACfqB,IAAI,EAAE,KAAK;MACXC,QAAQ,EAAE;IACZ,CAAC;IAAAtB,eAAA,gBAEO,IAAI,CAACuB,cAAc;IAAAvB,eAAA,gBAEnB;MACNwB,IAAI,EAAE,OAAO;MACbC,OAAO,eAAEjC,MAAA,GAAAO,OAAA,CAAA2B,aAAA,CAAC9B,WAAA,GAAA+B,UAAU,MAAE;IACxB,CAAC;IAAA3B,eAAA,gBAEO,EAAE;IAAAA,eAAA,qBACGkB,aAAa;IAAAlB,eAAA,aACrB,KAAK;EAAA;AACZ;AAAC4B,OAAA,CAAAT,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -0,0 +1,33 @@
1
+ export type APIDiffDetail = {
2
+ changeKind: string;
3
+ description: string;
4
+ impact: string;
5
+ from?: string;
6
+ to?: string;
7
+ };
8
+ export type APIDiffChange = {
9
+ status: string;
10
+ visibility: string;
11
+ exportName: string;
12
+ schemaType: string;
13
+ schemaTypeRaw: string;
14
+ impact: string;
15
+ baseSignature?: string;
16
+ compareSignature?: string;
17
+ baseNode?: Record<string, any>;
18
+ compareNode?: Record<string, any>;
19
+ changes?: APIDiffDetail[];
20
+ };
21
+ export type APIDiffResult = {
22
+ hasChanges: boolean;
23
+ impact: string;
24
+ publicChanges: APIDiffChange[];
25
+ internalChanges: APIDiffChange[];
26
+ changes: APIDiffChange[];
27
+ added: number;
28
+ removed: number;
29
+ modified: number;
30
+ breaking: number;
31
+ nonBreaking: number;
32
+ patch: number;
33
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+
3
+ //# sourceMappingURL=api-compare.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["api-compare.types.ts"],"sourcesContent":["export type APIDiffDetail = {\n changeKind: string;\n description: string;\n impact: string;\n from?: string;\n to?: string;\n};\n\nexport type APIDiffChange = {\n status: string;\n visibility: string;\n exportName: string;\n schemaType: string;\n schemaTypeRaw: string;\n impact: string;\n baseSignature?: string;\n compareSignature?: string;\n baseNode?: Record<string, any>;\n compareNode?: Record<string, any>;\n changes?: APIDiffDetail[];\n};\n\nexport type APIDiffResult = {\n hasChanges: boolean;\n impact: string;\n publicChanges: APIDiffChange[];\n internalChanges: APIDiffChange[];\n changes: APIDiffChange[];\n added: number;\n removed: number;\n modified: number;\n breaking: number;\n nonBreaking: number;\n patch: number;\n};\n"],"mappings":"","ignoreList":[]}
@@ -4,6 +4,7 @@ import type { APINodeRenderer } from '@teambit/api-reference.models.api-node-ren
4
4
  import type { SchemaNodeConstructor } from '@teambit/semantics.entities.semantic-schema';
5
5
  import type { CodeUI } from '@teambit/code';
6
6
  import type { WorkspaceUI } from '@teambit/workspace';
7
+ import type { ComponentCompareUI } from '@teambit/component-compare';
7
8
  export type APINodeRendererSlot = SlotRegistry<APINodeRenderer[]>;
8
9
  export declare class APIReferenceUI {
9
10
  private host;
@@ -26,6 +27,6 @@ export declare class APIReferenceUI {
26
27
  registerSchemaClasses(getSchemas: () => SchemaNodeConstructor[]): void;
27
28
  registerAPINodeRenderer(apiNodeRenderers: APINodeRenderer[]): void;
28
29
  apiNodeRenderers: APINodeRenderer[];
29
- static provider([componentUI, codeUI, workspaceUI]: [ComponentUI, CodeUI, WorkspaceUI], _: any, [apiNodeRendererSlot]: [APINodeRendererSlot], harmony: Harmony): Promise<APIReferenceUI>;
30
+ static provider([componentUI, codeUI, workspaceUI, componentCompareUI]: [ComponentUI, CodeUI, WorkspaceUI, ComponentCompareUI], _: any, [apiNodeRendererSlot]: [APINodeRendererSlot], harmony: Harmony): Promise<APIReferenceUI>;
30
31
  }
31
32
  export default APIReferenceUI;