@package-broker/ui 2.0.0-rc.3 → 2.0.0-rc.5
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/dist/.tsbuildinfo +1 -1
- package/dist/api-types.d.ts +9218 -3014
- package/dist/api-types.d.ts.map +1 -1
- package/dist/api.d.ts +1 -1
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +10 -0
- package/dist/api.js.map +1 -1
- package/dist/app-path.d.ts +2 -0
- package/dist/app-path.d.ts.map +1 -0
- package/dist/app-path.js +2 -0
- package/dist/app-path.js.map +1 -0
- package/dist/app.d.ts +2 -0
- package/dist/app.d.ts.map +1 -1
- package/dist/app.js +16 -3
- package/dist/app.js.map +1 -1
- package/dist/assets/access.def9a17dc4a8.js +1 -0
- package/dist/assets/app.ec678c27ec0a.css +2 -0
- package/dist/assets/{app.e8434f3343de.js → app.fba0d059b40b.js} +5 -5
- package/dist/assets/audit.453367b59daf.js +1 -0
- package/dist/assets/chunk.2c3648a5bad1.js +1 -0
- package/dist/assets/{chunk.bf48b04e6a00.js → chunk.304a2b5d1663.js} +1 -1
- package/dist/assets/{chunk.f922af39a279.js → chunk.3f077ff17cea.js} +1 -1
- package/dist/assets/chunk.4721d4544d48.js +1 -0
- package/dist/assets/{chunk.bb25fc845269.js → chunk.4acf8fa7653f.js} +1 -1
- package/dist/assets/{chunk.3704953b4a66.js → chunk.53134c7df4e5.js} +1 -1
- package/dist/assets/{chunk.862544cf5835.js → chunk.56e058d97e0f.js} +1 -1
- package/dist/assets/chunk.675b635d9462.js +1 -0
- package/dist/assets/chunk.75e1357175af.js +1 -0
- package/dist/assets/chunk.815f9a91c741.js +1 -0
- package/dist/assets/chunk.837eb41f53ef.js +1 -0
- package/dist/assets/{chunk.7cb6f6b4daaa.js → chunk.ab1a14143dc6.js} +1 -1
- package/dist/assets/{chunk.ce96495b8b55.js → chunk.dc41ee9219cf.js} +1 -1
- package/dist/assets/chunk.e3b0c44298fc.js +0 -0
- package/dist/assets/chunk.f0fd799728ef.js +1 -0
- package/dist/assets/chunk.fac952720b72.js +4 -0
- package/dist/assets/import.4275bbce08ac.js +1 -0
- package/dist/assets/index.html +9 -6
- package/dist/assets/manifest.json +66 -38
- package/dist/assets/notifications.bd7d4c3f9882.js +1 -0
- package/dist/assets/npm-login.d8b60e11fe87.js +1 -0
- package/dist/assets/packages.bdd474bcfc11.js +2 -0
- package/dist/assets/projects.44006a838c67.js +1 -0
- package/dist/assets/setup.7bc86366227c.js +1 -0
- package/dist/assets/setup.html +2 -2
- package/dist/assets/sources.d95aabfbec73.js +1 -0
- package/dist/assets/tokens.4ee13a722abb.js +4 -0
- package/dist/auth.d.ts +23 -3
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +142 -21
- package/dist/auth.js.map +1 -1
- package/dist/components/ui/status-badge.d.ts +5 -0
- package/dist/components/ui/status-badge.d.ts.map +1 -1
- package/dist/components/ui/status-badge.js +10 -0
- package/dist/components/ui/status-badge.js.map +1 -1
- package/dist/package-limits.d.ts +3 -0
- package/dist/package-limits.d.ts.map +1 -0
- package/dist/package-limits.js +3 -0
- package/dist/package-limits.js.map +1 -0
- package/dist/page-hash.d.ts +1 -1
- package/dist/page-hash.d.ts.map +1 -1
- package/dist/page-hash.js.map +1 -1
- package/dist/pages/access/grant-form.d.ts.map +1 -1
- package/dist/pages/access/grant-form.js +1 -1
- package/dist/pages/access/grant-form.js.map +1 -1
- package/dist/pages/audit.d.ts.map +1 -1
- package/dist/pages/notification-actions.d.ts +41 -0
- package/dist/pages/notification-actions.d.ts.map +1 -0
- package/dist/pages/notification-actions.js +187 -0
- package/dist/pages/notification-actions.js.map +1 -0
- package/dist/pages/notification-draft.d.ts +13 -0
- package/dist/pages/notification-draft.d.ts.map +1 -0
- package/dist/pages/notification-draft.js +75 -0
- package/dist/pages/notification-draft.js.map +1 -0
- package/dist/pages/notification-form.d.ts +35 -0
- package/dist/pages/notification-form.d.ts.map +1 -0
- package/dist/pages/notification-form.js +167 -0
- package/dist/pages/notification-form.js.map +1 -0
- package/dist/pages/notifications-controller.d.ts +41 -0
- package/dist/pages/notifications-controller.d.ts.map +1 -0
- package/dist/pages/notifications-controller.js +184 -0
- package/dist/pages/notifications-controller.js.map +1 -0
- package/dist/pages/notifications.d.ts +10 -0
- package/dist/pages/notifications.d.ts.map +1 -0
- package/dist/pages/notifications.js +301 -0
- package/dist/pages/notifications.js.map +1 -0
- package/dist/pages/npm-login.d.ts +2 -0
- package/dist/pages/npm-login.d.ts.map +1 -0
- package/dist/pages/npm-login.js +62 -0
- package/dist/pages/npm-login.js.map +1 -0
- package/dist/pages/packages/discovery-labels.d.ts +8 -0
- package/dist/pages/packages/discovery-labels.d.ts.map +1 -0
- package/dist/pages/packages/discovery-labels.js +25 -0
- package/dist/pages/packages/discovery-labels.js.map +1 -0
- package/dist/pages/packages/discovery-picker-view.d.ts +8 -0
- package/dist/pages/packages/discovery-picker-view.d.ts.map +1 -0
- package/dist/pages/packages/discovery-picker-view.js +109 -0
- package/dist/pages/packages/discovery-picker-view.js.map +1 -0
- package/dist/pages/packages/discovery-picker.d.ts +67 -0
- package/dist/pages/packages/discovery-picker.d.ts.map +1 -0
- package/dist/pages/packages/discovery-picker.js +238 -0
- package/dist/pages/packages/discovery-picker.js.map +1 -0
- package/dist/pages/packages/npm-workflow.d.ts +31 -0
- package/dist/pages/packages/npm-workflow.d.ts.map +1 -0
- package/dist/pages/packages/npm-workflow.js +381 -0
- package/dist/pages/packages/npm-workflow.js.map +1 -0
- package/dist/pages/packages/package-detail.d.ts +9 -0
- package/dist/pages/packages/package-detail.d.ts.map +1 -0
- package/dist/pages/packages/package-detail.js +242 -0
- package/dist/pages/packages/package-detail.js.map +1 -0
- package/dist/pages/packages/source-actions.d.ts +5 -2
- package/dist/pages/packages/source-actions.d.ts.map +1 -1
- package/dist/pages/packages/source-actions.js +27 -10
- package/dist/pages/packages/source-actions.js.map +1 -1
- package/dist/pages/packages.d.ts +15 -4
- package/dist/pages/packages.d.ts.map +1 -1
- package/dist/pages/packages.js +136 -19
- package/dist/pages/packages.js.map +1 -1
- package/dist/pages/projects/project-form.js +1 -1
- package/dist/pages/projects/project-form.js.map +1 -1
- package/dist/pages/projects.d.ts.map +1 -1
- package/dist/pages/projects.js +1 -1
- package/dist/pages/projects.js.map +1 -1
- package/dist/pages/sources/discovery-rule-prefill.d.ts +13 -0
- package/dist/pages/sources/discovery-rule-prefill.d.ts.map +1 -0
- package/dist/pages/sources/discovery-rule-prefill.js +9 -0
- package/dist/pages/sources/discovery-rule-prefill.js.map +1 -0
- package/dist/pages/sources/discovery-rules-view.d.ts +9 -0
- package/dist/pages/sources/discovery-rules-view.d.ts.map +1 -0
- package/dist/pages/sources/discovery-rules-view.js +144 -0
- package/dist/pages/sources/discovery-rules-view.js.map +1 -0
- package/dist/pages/sources/discovery-rules.d.ts +57 -0
- package/dist/pages/sources/discovery-rules.d.ts.map +1 -0
- package/dist/pages/sources/discovery-rules.js +383 -0
- package/dist/pages/sources/discovery-rules.js.map +1 -0
- package/dist/pages/sources/source-form.d.ts +3 -2
- package/dist/pages/sources/source-form.d.ts.map +1 -1
- package/dist/pages/sources/source-form.js +22 -12
- package/dist/pages/sources/source-form.js.map +1 -1
- package/dist/pages/sources.d.ts +9 -3
- package/dist/pages/sources.d.ts.map +1 -1
- package/dist/pages/sources.js +59 -12
- package/dist/pages/sources.js.map +1 -1
- package/dist/pages/tokens/issue-token-form.js +1 -1
- package/dist/pages/tokens/issue-token-form.js.map +1 -1
- package/dist/pages/tokens/principal-form.d.ts.map +1 -1
- package/dist/pages/tokens/principal-form.js +4 -0
- package/dist/pages/tokens/principal-form.js.map +1 -1
- package/dist/pages/tokens/trusted-publishers-controller.d.ts +42 -0
- package/dist/pages/tokens/trusted-publishers-controller.d.ts.map +1 -0
- package/dist/pages/tokens/trusted-publishers-controller.js +202 -0
- package/dist/pages/tokens/trusted-publishers-controller.js.map +1 -0
- package/dist/pages/tokens/trusted-publishers.d.ts +6 -0
- package/dist/pages/tokens/trusted-publishers.d.ts.map +1 -0
- package/dist/pages/tokens/trusted-publishers.js +116 -0
- package/dist/pages/tokens/trusted-publishers.js.map +1 -0
- package/dist/pages/tokens.d.ts +53 -0
- package/dist/pages/tokens.d.ts.map +1 -1
- package/dist/pages/tokens.js +9 -2
- package/dist/pages/tokens.js.map +1 -1
- package/dist/pending.d.ts +6 -1
- package/dist/pending.d.ts.map +1 -1
- package/dist/pending.js +1 -1
- package/dist/pending.js.map +1 -1
- package/dist/setup.d.ts +3 -2
- package/dist/setup.d.ts.map +1 -1
- package/dist/setup.js +66 -9
- package/dist/setup.js.map +1 -1
- package/package.json +3 -3
- package/dist/assets/access.6859f43998ca.js +0 -1
- package/dist/assets/app.f15f8f21f88b.css +0 -2
- package/dist/assets/audit.576009342714.js +0 -1
- package/dist/assets/chunk.297a2d571f9c.js +0 -4
- package/dist/assets/chunk.6e23a75a1324.js +0 -1
- package/dist/assets/chunk.855a50f45830.js +0 -1
- package/dist/assets/chunk.976a2ff4338e.js +0 -1
- package/dist/assets/import.e2a1e35fcb8d.js +0 -1
- package/dist/assets/packages.a8726e5144de.js +0 -1
- package/dist/assets/projects.711deb86b7c9.js +0 -1
- package/dist/assets/setup.dfed30ecfbad.js +0 -1
- package/dist/assets/sources.d0ba0048bd96.js +0 -1
- package/dist/assets/tokens.f48d235e8d25.js +0 -4
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
+
import { useEffect, useMemo, useRef, useSyncExternalStore } from 'react';
|
|
3
|
+
import { Button } from '../../components/ui/button.js';
|
|
4
|
+
import { Input } from '../../components/ui/input.js';
|
|
5
|
+
import { Label } from '../../components/ui/label.js';
|
|
6
|
+
import { Select } from '../../components/ui/select.js';
|
|
7
|
+
import { connectionLabel, PATTERN_HELP } from './discovery-labels.js';
|
|
8
|
+
import { prefillDiscoveryRule } from '../sources/discovery-rule-prefill.js';
|
|
9
|
+
import { createDiscoveryPicker, discoveryReason } from './discovery-picker.js';
|
|
10
|
+
export function DiscoveryPicker({ services, ecosystem, onBack, onImportingChange, }) {
|
|
11
|
+
const model = useMemo(() => createDiscoveryPicker(services, ecosystem), [services, ecosystem]);
|
|
12
|
+
const state = useSyncExternalStore(model.subscribe, model.snapshot, model.snapshot);
|
|
13
|
+
useEffect(() => {
|
|
14
|
+
void model.load();
|
|
15
|
+
return () => model.cancel();
|
|
16
|
+
}, [model]);
|
|
17
|
+
// Reported from the store, not from a render effect: the dialog's Escape guard must see the
|
|
18
|
+
// import start in the same render as the click, or an early Escape closes the dialog mid-import.
|
|
19
|
+
useEffect(() => {
|
|
20
|
+
let importing = model.snapshot().importing;
|
|
21
|
+
onImportingChange(importing);
|
|
22
|
+
const unsubscribe = model.subscribe(() => {
|
|
23
|
+
if (model.snapshot().importing === importing)
|
|
24
|
+
return;
|
|
25
|
+
importing = model.snapshot().importing;
|
|
26
|
+
onImportingChange(importing);
|
|
27
|
+
});
|
|
28
|
+
return () => {
|
|
29
|
+
unsubscribe();
|
|
30
|
+
onImportingChange(false);
|
|
31
|
+
};
|
|
32
|
+
}, [model, onImportingChange]);
|
|
33
|
+
const connectionControl = useRef(null);
|
|
34
|
+
const initiallyFocused = useRef(false);
|
|
35
|
+
const patternControl = useRef(null);
|
|
36
|
+
const selectAll = useRef(null);
|
|
37
|
+
const previewHeading = useRef(null);
|
|
38
|
+
useEffect(() => {
|
|
39
|
+
if (state.reviewed)
|
|
40
|
+
previewHeading.current?.focus();
|
|
41
|
+
}, [state.reviewed, state.entries]);
|
|
42
|
+
useEffect(() => {
|
|
43
|
+
if (!state.loading && state.connections.length && !initiallyFocused.current) {
|
|
44
|
+
initiallyFocused.current = true;
|
|
45
|
+
connectionControl.current?.focus();
|
|
46
|
+
}
|
|
47
|
+
}, [state.loading, state.connections.length]);
|
|
48
|
+
useEffect(() => {
|
|
49
|
+
if (state.patternError)
|
|
50
|
+
patternControl.current?.focus();
|
|
51
|
+
}, [state.patternError]);
|
|
52
|
+
const eligible = state.entries.filter((e) => e.action === 'new' && model.eligible(e.repository));
|
|
53
|
+
useEffect(() => {
|
|
54
|
+
if (selectAll.current)
|
|
55
|
+
selectAll.current.indeterminate =
|
|
56
|
+
state.selected.length > 0 && state.selected.length < eligible.length;
|
|
57
|
+
}, [state.selected, eligible.length]);
|
|
58
|
+
const failed = state.results.some((r) => r.outcome === 'failed' && !state.pending.includes(r.repository));
|
|
59
|
+
return (_jsxs("section", { "aria-label": "GitHub organization repositories", className: "space-y-4", children: [_jsxs("div", { className: "flex flex-wrap gap-3", children: [_jsx(Button, { variant: "outline", disabled: state.busy, onClick: onBack, children: "Back" }), _jsx(Button, { variant: "outline", disabled: state.busy, onClick: () => model.startOver(), children: "Start over" })] }), state.importing ? (_jsx("p", { children: "Import in progress. Wait for this batch to finish before closing or going back." })) : null, _jsxs("p", { children: ["Import ", ecosystem === 'npm' ? 'npm' : 'Composer', " repositories as shared organization sources. Projects can attach these sources to use their packages."] }), state.loading ? _jsx("p", { role: "status", children: "Loading GitHub connections\u2026" }) : null, state.error ? _jsx("p", { role: "alert", children: state.error }) : null, !state.loading && !state.connections.length ? (_jsx(_Fragment, { children: state.error ? (_jsx(Button, { onClick: () => void model.load(), children: "Try again" })) : (_jsxs(_Fragment, { children: [_jsx("p", { children: "No GitHub App connections yet. Add one organization GitHub source with GitHub App authentication first, then return here to choose repositories." }), _jsx("a", { className: "inline-flex min-h-11 items-center underline", href: "#/sources?create=vcs&provider=github", children: "Add a GitHub source" })] })) })) : null, state.connections.length ? (_jsxs(_Fragment, { children: [_jsxs("form", { className: "grid max-w-5xl items-start gap-x-6 gap-y-4 lg:grid-cols-2", onSubmit: (e) => {
|
|
60
|
+
e.preventDefault();
|
|
61
|
+
void model.preview().then(() => {
|
|
62
|
+
if (model.snapshot().patternError)
|
|
63
|
+
patternControl.current?.focus();
|
|
64
|
+
});
|
|
65
|
+
}, "aria-busy": state.busy, noValidate: true, children: [_jsxs("div", { className: "min-w-0", children: [_jsx(Label, { htmlFor: "discovery-connection", children: "GitHub connection" }), _jsx(Select, { id: "discovery-connection", ref: connectionControl, className: "min-h-11 min-w-0 max-w-full", value: state.connection, disabled: state.busy, onChange: (e) => model.configure({ connection: e.target.value }), children: state.connections.map((c, i) => (_jsx("option", { value: String(i), children: connectionLabel(c) }, `${c.credentialId}:${c.installationId}`))) })] }), _jsxs("div", { className: "min-w-0", children: [_jsx(Label, { htmlFor: "discovery-pattern", children: "Repository name pattern (optional)" }), _jsx(Input, { id: "discovery-pattern", ref: patternControl, className: "min-h-11", value: state.pattern, maxLength: 100, pattern: "[A-Za-z0-9._*?\\-]{1,100}", "aria-invalid": !!state.patternError, "aria-describedby": `discovery-pattern-help${state.patternError ? ' discovery-pattern-error' : ''}`, disabled: state.busy, onChange: (e) => model.configure({ pattern: e.target.value }) }), state.patternError ? (_jsx("p", { id: "discovery-pattern-error", role: "alert", children: state.patternError })) : null, _jsx("p", { id: "discovery-pattern-help", children: PATTERN_HELP })] }), _jsxs("label", { className: "flex min-h-11 items-center gap-2", children: [_jsx("input", { type: "checkbox", checked: state.includeForks, disabled: state.busy, onChange: (e) => model.configure({ includeForks: e.target.checked }) }), "Include forks"] }), _jsx("div", { className: "lg:col-span-2", children: _jsx(Button, { className: "min-h-11 w-full sm:w-auto", disabled: state.busy, type: "submit", children: state.busy && !state.importing
|
|
66
|
+
? 'Previewing repositories…'
|
|
67
|
+
: 'Preview repositories' }) })] }), _jsx("a", { className: "inline-flex min-h-11 items-center underline", href: "#/sources?discovery=new", "aria-disabled": state.busy || !state.connections[Number(state.connection)], "aria-describedby": "rule-prefill-help", onClick: (event) => {
|
|
68
|
+
const chosen = state.connections[Number(state.connection)];
|
|
69
|
+
if (state.busy || !chosen) {
|
|
70
|
+
event.preventDefault();
|
|
71
|
+
return;
|
|
72
|
+
}
|
|
73
|
+
prefillDiscoveryRule(services, {
|
|
74
|
+
credentialId: chosen.credentialId,
|
|
75
|
+
installationId: chosen.installationId,
|
|
76
|
+
ecosystem,
|
|
77
|
+
pattern: state.pattern || '*',
|
|
78
|
+
includeForks: state.includeForks,
|
|
79
|
+
});
|
|
80
|
+
}, children: "Keep this selection up to date" }), _jsxs("p", { id: "rule-prefill-help", children: [state.connections[Number(state.connection)] === undefined
|
|
81
|
+
? 'Choose a connection to keep this selection up to date. '
|
|
82
|
+
: '', "A rule scans all repositories matching these settings, including future matches. Individual checkboxes do not limit the rule."] }), state.reviewed ? (_jsxs("div", { className: "space-y-4", children: [_jsx("h3", { ref: previewHeading, tabIndex: -1, className: "font-semibold", children: "Repository preview" }), _jsx("p", { children: "Select up to 20 repositories per import. Load more replaces the current preview page." }), state.selected.length === 20 ? (_jsx("p", { role: "status", "aria-live": "polite", children: "20 repository limit reached. Import these repositories before selecting more." })) : null, ['new', 'existing', 'skipped'].map((action) => {
|
|
83
|
+
const entries = state.entries.filter((e) => (e.action === 'new' && !model.eligible(e.repository)
|
|
84
|
+
? 'existing'
|
|
85
|
+
: e.action) === action);
|
|
86
|
+
return (_jsxs("section", { "aria-label": action === 'new'
|
|
87
|
+
? 'Will be added'
|
|
88
|
+
: action === 'existing'
|
|
89
|
+
? 'Already added'
|
|
90
|
+
: 'Skipped', children: [_jsxs("h3", { className: "font-semibold", children: [action === 'new'
|
|
91
|
+
? 'Will be added'
|
|
92
|
+
: action === 'existing'
|
|
93
|
+
? 'Already added'
|
|
94
|
+
: 'Skipped', ' ', "(", entries.length, ")"] }), action === 'new' && eligible.length ? (_jsxs("label", { className: "flex min-h-11 items-center gap-2", children: [_jsx("input", { type: "checkbox", disabled: state.busy, ref: selectAll, checked: state.selected.length === Math.min(eligible.length, 20), onChange: (e) => model.selectPage(e.target.checked) }), "Select all on page (up to 20)"] })) : null, _jsx("ul", { className: "space-y-2", children: entries.map((entry) => (_jsxs("li", { className: "break-words rounded border p-3", children: [action === 'new' ? (_jsxs("label", { className: "flex min-h-11 items-center gap-2", children: [_jsx("input", { type: "checkbox", checked: state.selected.includes(entry.repository), disabled: state.busy ||
|
|
95
|
+
(state.selected.length >= 20 &&
|
|
96
|
+
!state.selected.includes(entry.repository)), onChange: (e) => model.toggle(entry.repository, e.target.checked) }), entry.repository] })) : (_jsx("p", { children: entry.repository })), entry.packageName ? _jsx("p", { children: entry.packageName }) : null, action === 'existing' ? (_jsx("p", { children: "This repository already has an organization source. No new source will be created." })) : null, action === 'skipped' ? _jsx("p", { children: discoveryReason(entry.reason) }) : null] }, `${entry.repository}:${entry.ecosystem}`))) })] }, action));
|
|
97
|
+
}), !state.entries.length ? (_jsx("p", { children: "No repositories match this preview. Change the pattern or connection and try again." })) : null, _jsxs("div", { className: "flex flex-wrap gap-3", children: [_jsxs(Button, { className: "min-h-11 w-full sm:w-auto", disabled: state.busy || !!state.pending.length || !state.selected.length, onClick: () => void model.importSelected(), children: ["Import selected (", state.selected.length, ")"] }), state.nextCursor ? (_jsx(Button, { variant: "outline", className: "min-h-11 w-full sm:w-auto", disabled: state.busy, onClick: () => void model.preview(true), children: "Load more" })) : null] })] })) : null, state.total > 0 ? (_jsxs("p", { role: "status", "aria-live": "polite", children: [state.importing
|
|
98
|
+
? 'Importing'
|
|
99
|
+
: state.pending.length
|
|
100
|
+
? 'Import paused'
|
|
101
|
+
: 'Import finished', ": ", state.progress, " of ", state.total, " repositories processed."] })) : null, state.pending.length ? (_jsx(Button, { disabled: state.busy, onClick: () => void model.continueImport(), children: "Continue import" })) : null, state.results.length ? (_jsxs("section", { "aria-label": "Import results", className: "space-y-3", children: [_jsx("h3", { className: "font-semibold", children: "Import results" }), _jsx("ul", { className: "space-y-2", children: state.results.map((r) => (_jsxs("li", { className: "break-words rounded border p-3", children: [_jsxs("p", { children: [r.repository, " \u00B7", ' ', r.outcome === 'created'
|
|
102
|
+
? 'Created'
|
|
103
|
+
: r.outcome === 'existing'
|
|
104
|
+
? 'Already added'
|
|
105
|
+
: r.outcome === 'skipped'
|
|
106
|
+
? 'Refused'
|
|
107
|
+
: 'Failed'] }), r.outcome === 'skipped' ? _jsx("p", { children: discoveryReason(r.reason) }) : null, r.outcome === 'failed' ? (_jsx("p", { children: "No successful import was confirmed. Try this repository again." })) : null] }, r.repository))) }), failed ? (_jsx(Button, { className: "min-h-11 w-full sm:w-auto", disabled: state.busy, onClick: () => void model.retryFailed(), children: "Retry failed repositories" })) : null] })) : null] })) : null] }));
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=discovery-picker-view.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery-picker-view.js","sourceRoot":"","sources":["../../../src/pages/packages/discovery-picker-view.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import type { ShellServices } from '../../auth.js';
|
|
2
|
+
import type { paths } from '../../api-types.js';
|
|
3
|
+
type ResponseAt<P extends keyof paths, M extends keyof paths[P]> = paths[P][M] extends {
|
|
4
|
+
responses: {
|
|
5
|
+
200: {
|
|
6
|
+
content: {
|
|
7
|
+
'application/json': infer T;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
} ? T : never;
|
|
12
|
+
type Connection = ResponseAt<'/_pb/sources/discovery/connections', 'get'>['items'][number];
|
|
13
|
+
type Plan = ResponseAt<'/_pb/sources/discovery/plan', 'post'>;
|
|
14
|
+
type Applied = ResponseAt<'/_pb/sources/discovery/apply', 'post'>['results'][number];
|
|
15
|
+
export { discoveryReason } from './discovery-labels.js';
|
|
16
|
+
export declare function createDiscoveryPicker(services: ShellServices, ecosystem: 'composer' | 'npm'): {
|
|
17
|
+
snapshot: () => {
|
|
18
|
+
loading: boolean;
|
|
19
|
+
busy: boolean;
|
|
20
|
+
importing: boolean;
|
|
21
|
+
connections: Connection[];
|
|
22
|
+
connection: string;
|
|
23
|
+
pattern: string;
|
|
24
|
+
includeForks: boolean;
|
|
25
|
+
entries: Plan["entries"];
|
|
26
|
+
nextCursor: string | null;
|
|
27
|
+
selected: string[];
|
|
28
|
+
results: Applied[];
|
|
29
|
+
error: string | null;
|
|
30
|
+
patternError: string | null;
|
|
31
|
+
pending: string[];
|
|
32
|
+
reviewed: boolean;
|
|
33
|
+
progress: number;
|
|
34
|
+
total: number;
|
|
35
|
+
};
|
|
36
|
+
cancel(): void;
|
|
37
|
+
startOver(): void;
|
|
38
|
+
eligible: (repository: string) => boolean;
|
|
39
|
+
subscribe: (fn: () => void) => () => void;
|
|
40
|
+
load(): Promise<void>;
|
|
41
|
+
configure(patch: Partial<Pick<{
|
|
42
|
+
loading: boolean;
|
|
43
|
+
busy: boolean;
|
|
44
|
+
importing: boolean;
|
|
45
|
+
connections: Connection[];
|
|
46
|
+
connection: string;
|
|
47
|
+
pattern: string;
|
|
48
|
+
includeForks: boolean;
|
|
49
|
+
entries: Plan["entries"];
|
|
50
|
+
nextCursor: string | null;
|
|
51
|
+
selected: string[];
|
|
52
|
+
results: Applied[];
|
|
53
|
+
error: string | null;
|
|
54
|
+
patternError: string | null;
|
|
55
|
+
pending: string[];
|
|
56
|
+
reviewed: boolean;
|
|
57
|
+
progress: number;
|
|
58
|
+
total: number;
|
|
59
|
+
}, "connection" | "pattern" | "includeForks">>): void;
|
|
60
|
+
preview(more?: boolean): Promise<void>;
|
|
61
|
+
toggle(repository: string, checked: boolean): void;
|
|
62
|
+
selectPage(checked: boolean): void;
|
|
63
|
+
importSelected: () => Promise<void>;
|
|
64
|
+
continueImport: () => Promise<void>;
|
|
65
|
+
retryFailed: () => Promise<void>;
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=discovery-picker.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery-picker.d.ts","sourceRoot":"","sources":["../../../src/pages/packages/discovery-picker.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,KAAK,UAAU,CAAC,CAAC,SAAS,MAAM,KAAK,EAAE,CAAC,SAAS,MAAM,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS;IACrF,SAAS,EAAE;QAAE,GAAG,EAAE;YAAE,OAAO,EAAE;gBAAE,kBAAkB,EAAE,MAAM,CAAC,CAAA;aAAE,CAAA;SAAE,CAAA;KAAE,CAAC;CAClE,GACG,CAAC,GACD,KAAK,CAAC;AACV,KAAK,UAAU,GAAG,UAAU,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAC3F,KAAK,IAAI,GAAG,UAAU,CAAC,6BAA6B,EAAE,MAAM,CAAC,CAAC;AAC9D,KAAK,OAAO,GAAG,UAAU,CAAC,8BAA8B,EAAE,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAAC;AAErF,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,GAAG,KAAK;;;;;qBAKrE,UAAU,EAAE;;;;iBAIhB,IAAI,CAAC,SAAS,CAAC;oBACV,MAAM,GAAG,IAAI;kBACjB,MAAM,EAAE;iBACT,OAAO,EAAE;eACT,MAAM,GAAG,IAAI;sBACN,MAAM,GAAG,IAAI;iBACpB,MAAM,EAAE;;;;;;;2BAmBK,MAAM;oBAyGlB,MAAM,IAAI;;qBAoBT,OAAO,CAAC,IAAI;;;;qBA1JV,UAAU,EAAE;;;;iBAIhB,IAAI,CAAC,SAAS,CAAC;oBACV,MAAM,GAAG,IAAI;kBACjB,MAAM,EAAE;iBACT,OAAO,EAAE;eACT,MAAM,GAAG,IAAI;sBACN,MAAM,GAAG,IAAI;iBACpB,MAAM,EAAE;;;;OAgJqB,YAAY,GAAG,SAAS,GAAG,cAAc,CAAC,CAAC;;uBAiDpE,MAAM,WAAW,OAAO;wBAcvB,OAAO;;;;EAiC9B"}
|
|
@@ -0,0 +1,238 @@
|
|
|
1
|
+
export { discoveryReason } from './discovery-labels.js';
|
|
2
|
+
import { PATTERN_ERROR, validDiscoveryPattern } from './discovery-labels.js';
|
|
3
|
+
export function createDiscoveryPicker(services, ecosystem) {
|
|
4
|
+
let state = {
|
|
5
|
+
loading: true,
|
|
6
|
+
busy: false,
|
|
7
|
+
importing: false,
|
|
8
|
+
connections: [],
|
|
9
|
+
connection: '',
|
|
10
|
+
pattern: '*',
|
|
11
|
+
includeForks: false,
|
|
12
|
+
entries: [],
|
|
13
|
+
nextCursor: null,
|
|
14
|
+
selected: [],
|
|
15
|
+
results: [],
|
|
16
|
+
error: null,
|
|
17
|
+
patternError: null,
|
|
18
|
+
pending: [],
|
|
19
|
+
reviewed: false,
|
|
20
|
+
progress: 0,
|
|
21
|
+
total: 0,
|
|
22
|
+
};
|
|
23
|
+
const listeners = new Set();
|
|
24
|
+
const set = (patch) => {
|
|
25
|
+
state = { ...state, ...patch };
|
|
26
|
+
listeners.forEach((fn) => fn());
|
|
27
|
+
};
|
|
28
|
+
let cancelled = false;
|
|
29
|
+
const retryOptions = new Map();
|
|
30
|
+
let pendingOptions;
|
|
31
|
+
const eligible = (repository) => !state.results.some((r) => r.repository === repository && (r.outcome === 'created' || r.outcome === 'existing'));
|
|
32
|
+
const connection = () => state.connections[Number(state.connection)];
|
|
33
|
+
async function apply(repositories, savedOptions, continuing = false) {
|
|
34
|
+
const chosen = connection();
|
|
35
|
+
if (cancelled ||
|
|
36
|
+
state.busy ||
|
|
37
|
+
(!chosen && !savedOptions) ||
|
|
38
|
+
!repositories.length ||
|
|
39
|
+
repositories.length > 20)
|
|
40
|
+
return;
|
|
41
|
+
const options = savedOptions ?? {
|
|
42
|
+
credentialId: chosen.credentialId,
|
|
43
|
+
installationId: chosen.installationId,
|
|
44
|
+
ecosystem,
|
|
45
|
+
includeForks: state.includeForks,
|
|
46
|
+
};
|
|
47
|
+
set({
|
|
48
|
+
busy: true,
|
|
49
|
+
importing: true,
|
|
50
|
+
error: null,
|
|
51
|
+
progress: continuing ? state.total - repositories.length : 0,
|
|
52
|
+
total: continuing ? state.total : repositories.length,
|
|
53
|
+
});
|
|
54
|
+
pendingOptions = options;
|
|
55
|
+
for (const repository of repositories)
|
|
56
|
+
retryOptions.set(repository, options);
|
|
57
|
+
let remaining = repositories;
|
|
58
|
+
while (remaining.length) {
|
|
59
|
+
const response = await services.client.request('post', '/_pb/sources/discovery/apply', {
|
|
60
|
+
body: { ...options, repositories: remaining },
|
|
61
|
+
});
|
|
62
|
+
if (cancelled)
|
|
63
|
+
break;
|
|
64
|
+
const returned = response.ok ? response.data.results : [];
|
|
65
|
+
const next = response.ok ? response.data.remainingRepositories : [];
|
|
66
|
+
const rateLimited = response.ok && response.data.results.some((r) => r.error === 'rate_limited');
|
|
67
|
+
const stalled = response.ok &&
|
|
68
|
+
!rateLimited &&
|
|
69
|
+
(next.length >= remaining.length || next.some((r) => !remaining.includes(r)));
|
|
70
|
+
const results = !response.ok || stalled
|
|
71
|
+
? remaining.map((repository) => ({
|
|
72
|
+
repository,
|
|
73
|
+
outcome: 'failed',
|
|
74
|
+
error: 'import_unconfirmed',
|
|
75
|
+
}))
|
|
76
|
+
: returned.map(({ repository, outcome, reason }) => ({
|
|
77
|
+
repository,
|
|
78
|
+
outcome,
|
|
79
|
+
...(reason ? { reason } : {}),
|
|
80
|
+
}));
|
|
81
|
+
for (const repository of remaining) {
|
|
82
|
+
if (!results.some((r) => r.repository === repository) && !next.includes(repository))
|
|
83
|
+
results.push({ repository, outcome: 'failed', error: 'import_unconfirmed' });
|
|
84
|
+
}
|
|
85
|
+
const updated = new Map(state.results.map((r) => [r.repository, r]));
|
|
86
|
+
for (const result of results)
|
|
87
|
+
updated.set(result.repository, result);
|
|
88
|
+
set({
|
|
89
|
+
results: [...updated.values()],
|
|
90
|
+
progress: state.total - next.length,
|
|
91
|
+
pending: rateLimited ? next : [],
|
|
92
|
+
...(!response.ok || stalled
|
|
93
|
+
? { error: 'Import could not finish. Retry failed repositories.', progress: state.total }
|
|
94
|
+
: {}),
|
|
95
|
+
});
|
|
96
|
+
if (rateLimited) {
|
|
97
|
+
set({
|
|
98
|
+
error: 'GitHub is rate limiting imports. Continue import when it is available again.',
|
|
99
|
+
});
|
|
100
|
+
break;
|
|
101
|
+
}
|
|
102
|
+
if (!response.ok || stalled)
|
|
103
|
+
break;
|
|
104
|
+
remaining = next;
|
|
105
|
+
}
|
|
106
|
+
set({ busy: false, importing: false, selected: [] });
|
|
107
|
+
}
|
|
108
|
+
return {
|
|
109
|
+
snapshot: () => state,
|
|
110
|
+
cancel() {
|
|
111
|
+
cancelled = true;
|
|
112
|
+
set({ busy: false, importing: false });
|
|
113
|
+
},
|
|
114
|
+
startOver() {
|
|
115
|
+
if (state.busy)
|
|
116
|
+
return;
|
|
117
|
+
retryOptions.clear();
|
|
118
|
+
pendingOptions = undefined;
|
|
119
|
+
set({
|
|
120
|
+
entries: [],
|
|
121
|
+
nextCursor: null,
|
|
122
|
+
selected: [],
|
|
123
|
+
reviewed: false,
|
|
124
|
+
results: [],
|
|
125
|
+
pending: [],
|
|
126
|
+
progress: 0,
|
|
127
|
+
total: 0,
|
|
128
|
+
error: null,
|
|
129
|
+
patternError: null,
|
|
130
|
+
});
|
|
131
|
+
},
|
|
132
|
+
eligible,
|
|
133
|
+
subscribe: (fn) => {
|
|
134
|
+
listeners.add(fn);
|
|
135
|
+
return () => {
|
|
136
|
+
listeners.delete(fn);
|
|
137
|
+
};
|
|
138
|
+
},
|
|
139
|
+
async load() {
|
|
140
|
+
if (state.busy)
|
|
141
|
+
return;
|
|
142
|
+
set({ loading: true, error: null });
|
|
143
|
+
const response = await services.client.request('get', '/_pb/sources/discovery/connections');
|
|
144
|
+
set(response.ok
|
|
145
|
+
? {
|
|
146
|
+
loading: false,
|
|
147
|
+
connections: response.data.items,
|
|
148
|
+
connection: response.data.items.length ? '0' : '',
|
|
149
|
+
}
|
|
150
|
+
: { loading: false, error: 'GitHub connections could not be loaded. Try again.' });
|
|
151
|
+
},
|
|
152
|
+
configure(patch) {
|
|
153
|
+
if (state.busy)
|
|
154
|
+
return;
|
|
155
|
+
set({
|
|
156
|
+
...patch,
|
|
157
|
+
entries: [],
|
|
158
|
+
nextCursor: null,
|
|
159
|
+
selected: [],
|
|
160
|
+
reviewed: false,
|
|
161
|
+
error: null,
|
|
162
|
+
patternError: null,
|
|
163
|
+
});
|
|
164
|
+
},
|
|
165
|
+
async preview(more = false) {
|
|
166
|
+
const chosen = connection();
|
|
167
|
+
if (state.busy || !chosen || (more && !state.nextCursor))
|
|
168
|
+
return;
|
|
169
|
+
const pattern = state.pattern || '*';
|
|
170
|
+
if (!validDiscoveryPattern(pattern)) {
|
|
171
|
+
set({
|
|
172
|
+
patternError: PATTERN_ERROR,
|
|
173
|
+
});
|
|
174
|
+
return;
|
|
175
|
+
}
|
|
176
|
+
set({ busy: true, error: null, patternError: null });
|
|
177
|
+
const response = await services.client.request('post', '/_pb/sources/discovery/plan', {
|
|
178
|
+
body: {
|
|
179
|
+
credentialId: chosen.credentialId,
|
|
180
|
+
installationId: chosen.installationId,
|
|
181
|
+
ecosystem,
|
|
182
|
+
includeForks: state.includeForks,
|
|
183
|
+
pattern,
|
|
184
|
+
cursor: more ? state.nextCursor : null,
|
|
185
|
+
},
|
|
186
|
+
});
|
|
187
|
+
if (cancelled) {
|
|
188
|
+
set({ busy: false });
|
|
189
|
+
return;
|
|
190
|
+
}
|
|
191
|
+
set(response.ok
|
|
192
|
+
? {
|
|
193
|
+
busy: false,
|
|
194
|
+
entries: response.data.entries,
|
|
195
|
+
nextCursor: response.data.nextCursor,
|
|
196
|
+
selected: [],
|
|
197
|
+
reviewed: true,
|
|
198
|
+
}
|
|
199
|
+
: { busy: false, error: 'Repositories could not be previewed. Try again.' });
|
|
200
|
+
},
|
|
201
|
+
toggle(repository, checked) {
|
|
202
|
+
if (state.busy ||
|
|
203
|
+
!state.entries.some((e) => e.repository === repository && e.action === 'new' && eligible(repository)))
|
|
204
|
+
return;
|
|
205
|
+
set({
|
|
206
|
+
selected: checked
|
|
207
|
+
? [...new Set([...state.selected, repository])].slice(0, 20)
|
|
208
|
+
: state.selected.filter((r) => r !== repository),
|
|
209
|
+
});
|
|
210
|
+
},
|
|
211
|
+
selectPage(checked) {
|
|
212
|
+
if (!state.busy)
|
|
213
|
+
set({
|
|
214
|
+
selected: checked
|
|
215
|
+
? state.entries
|
|
216
|
+
.filter((e) => e.action === 'new' && eligible(e.repository))
|
|
217
|
+
.map((e) => e.repository)
|
|
218
|
+
.slice(0, 20)
|
|
219
|
+
: [],
|
|
220
|
+
});
|
|
221
|
+
},
|
|
222
|
+
importSelected: () => (state.pending.length ? Promise.resolve() : apply(state.selected)),
|
|
223
|
+
continueImport: () => apply(state.pending, pendingOptions, true),
|
|
224
|
+
retryFailed: () => {
|
|
225
|
+
const first = state.results.find((r) => r.outcome === 'failed' && !state.pending.includes(r.repository));
|
|
226
|
+
if (!first)
|
|
227
|
+
return Promise.resolve();
|
|
228
|
+
const options = retryOptions.get(first.repository);
|
|
229
|
+
return apply(state.results
|
|
230
|
+
.filter((r) => r.outcome === 'failed' &&
|
|
231
|
+
!state.pending.includes(r.repository) &&
|
|
232
|
+
retryOptions.get(r.repository) === options)
|
|
233
|
+
.map((r) => r.repository)
|
|
234
|
+
.slice(0, 20), options);
|
|
235
|
+
},
|
|
236
|
+
};
|
|
237
|
+
}
|
|
238
|
+
//# sourceMappingURL=discovery-picker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"discovery-picker.js","sourceRoot":"","sources":["../../../src/pages/packages/discovery-picker.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import type { operations } from '../../api-types.js';
|
|
2
|
+
import type { ShellServices } from '../../auth.js';
|
|
3
|
+
type Result<K extends keyof operations> = operations[K] extends {
|
|
4
|
+
responses: {
|
|
5
|
+
200: {
|
|
6
|
+
content: {
|
|
7
|
+
'application/json': infer T;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
};
|
|
11
|
+
} ? T : never;
|
|
12
|
+
type Publish = Result<'listPublishes'>['items'][number];
|
|
13
|
+
export type AccessChoice = 'available' | 'request' | 'unavailable';
|
|
14
|
+
export declare function accessSetting(choice: AccessChoice): {
|
|
15
|
+
visibleToNewProjects: boolean;
|
|
16
|
+
newProjectAccessMode: "request" | "none";
|
|
17
|
+
};
|
|
18
|
+
export declare function canEditAccess(owner: string | null, organization: readonly string[], permissions: readonly string[], projectId: string | null): boolean;
|
|
19
|
+
export declare function decisionHeaders(revision: number): {
|
|
20
|
+
'If-Match': string;
|
|
21
|
+
};
|
|
22
|
+
export declare function decisionAllowed(authorized: boolean, busy: boolean, stale: boolean, state: string): boolean;
|
|
23
|
+
type PublishAction = 'approve' | 'reject' | 'rescan';
|
|
24
|
+
export declare function publishActions(item: Pick<Publish, 'approvalState' | 'scanState' | 'holdScan'>): PublishAction[];
|
|
25
|
+
export declare function validReason(reason: string, required: boolean): boolean;
|
|
26
|
+
export declare function PackageWorkflow({ services, project, }: {
|
|
27
|
+
services: ShellServices;
|
|
28
|
+
project: string | null;
|
|
29
|
+
}): import("react").JSX.Element | null;
|
|
30
|
+
export {};
|
|
31
|
+
//# sourceMappingURL=npm-workflow.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"npm-workflow.d.ts","sourceRoot":"","sources":["../../../src/pages/packages/npm-workflow.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAcnD,KAAK,MAAM,CAAC,CAAC,SAAS,MAAM,UAAU,IAAI,UAAU,CAAC,CAAC,CAAC,SAAS;IAC9D,SAAS,EAAE;QAAE,GAAG,EAAE;YAAE,OAAO,EAAE;gBAAE,kBAAkB,EAAE,MAAM,CAAC,CAAA;aAAE,CAAA;SAAE,CAAA;KAAE,CAAC;CAClE,GACG,CAAC,GACD,KAAK,CAAC;AACV,KAAK,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAGxD,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,SAAS,GAAG,aAAa,CAAC;AACnE,wBAAgB,aAAa,CAAC,MAAM,EAAE,YAAY;;;EAKjD;AACD,wBAAgB,aAAa,CAC3B,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,YAAY,EAAE,SAAS,MAAM,EAAE,EAC/B,WAAW,EAAE,SAAS,MAAM,EAAE,EAC9B,SAAS,EAAE,MAAM,GAAG,IAAI,WAKzB;AACD,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM;;EAE/C;AACD,wBAAgB,eAAe,CAAC,UAAU,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,WAEhG;AACD,KAAK,aAAa,GAAG,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;AACrD,wBAAgB,cAAc,CAC5B,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,eAAe,GAAG,WAAW,GAAG,UAAU,CAAC,GAC9D,aAAa,EAAE,CAejB;AACD,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,WAS5D;AAwBD,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,OAAO,GACR,EAAE;IACD,QAAQ,EAAE,aAAa,CAAC;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,sCAsiBA"}
|