@package-broker/ui 2.0.0-rc.2 → 2.0.0-rc.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/dist/.tsbuildinfo +1 -1
  2. package/dist/api-types.d.ts +8148 -2725
  3. package/dist/api-types.d.ts.map +1 -1
  4. package/dist/api.d.ts +1 -1
  5. package/dist/api.d.ts.map +1 -1
  6. package/dist/api.js +10 -0
  7. package/dist/api.js.map +1 -1
  8. package/dist/app-path.d.ts +2 -0
  9. package/dist/app-path.d.ts.map +1 -0
  10. package/dist/app-path.js +2 -0
  11. package/dist/app-path.js.map +1 -0
  12. package/dist/app.d.ts +10 -14
  13. package/dist/app.d.ts.map +1 -1
  14. package/dist/app.js +37 -22
  15. package/dist/app.js.map +1 -1
  16. package/dist/assets/access.62e9484517a0.js +1 -0
  17. package/dist/assets/app.45b156168495.css +2 -0
  18. package/dist/assets/app.c064670cdc0d.js +9 -0
  19. package/dist/assets/audit.b7c40b9dc998.js +1 -0
  20. package/dist/assets/chunk.28a4d8aab337.js +1 -0
  21. package/dist/assets/chunk.3fcd6998795a.js +1 -0
  22. package/dist/assets/chunk.51497edc7697.js +4 -0
  23. package/dist/assets/chunk.56d473a1587d.js +1 -0
  24. package/dist/assets/chunk.675b635d9462.js +1 -0
  25. package/dist/assets/chunk.6ea6bdcaa465.js +1 -0
  26. package/dist/assets/chunk.741aec8d1ff9.js +1 -0
  27. package/dist/assets/chunk.815f9a91c741.js +1 -0
  28. package/dist/assets/chunk.8442124f6802.js +1 -0
  29. package/dist/assets/chunk.965b76812604.js +2 -0
  30. package/dist/assets/chunk.a6d755a9789f.js +1 -0
  31. package/dist/assets/chunk.d18497920e4d.js +1 -0
  32. package/dist/assets/chunk.d813fefb410d.js +1 -0
  33. package/dist/assets/chunk.e3b0c44298fc.js +0 -0
  34. package/dist/assets/chunk.f54ea1378c8c.js +1 -0
  35. package/dist/assets/chunk.fd375c54b526.js +1 -0
  36. package/dist/assets/import.e7a1e5834631.js +1 -0
  37. package/dist/assets/index.html +9 -2
  38. package/dist/assets/manifest.json +108 -8
  39. package/dist/assets/notifications.19225fe12044.js +1 -0
  40. package/dist/assets/npm-login.e059678af13d.js +1 -0
  41. package/dist/assets/packages.ab5ab25b1c75.js +2 -0
  42. package/dist/assets/projects.927fe18c785c.js +1 -0
  43. package/dist/assets/setup.8e977608d413.js +1 -0
  44. package/dist/assets/setup.html +3 -3
  45. package/dist/assets/sources.ae50f239f80f.js +1 -0
  46. package/dist/assets/tokens.6b86d8d97e07.js +4 -0
  47. package/dist/auth.d.ts +26 -3
  48. package/dist/auth.d.ts.map +1 -1
  49. package/dist/auth.js +133 -19
  50. package/dist/auth.js.map +1 -1
  51. package/dist/components/product-footer-content.d.ts +21 -0
  52. package/dist/components/product-footer-content.d.ts.map +1 -0
  53. package/dist/components/product-footer-content.js +30 -0
  54. package/dist/components/product-footer-content.js.map +1 -0
  55. package/dist/components/product-footer.d.ts +3 -0
  56. package/dist/components/product-footer.d.ts.map +1 -0
  57. package/dist/components/product-footer.js +6 -0
  58. package/dist/components/product-footer.js.map +1 -0
  59. package/dist/components/ui/status-badge.d.ts +5 -0
  60. package/dist/components/ui/status-badge.d.ts.map +1 -1
  61. package/dist/components/ui/status-badge.js +10 -0
  62. package/dist/components/ui/status-badge.js.map +1 -1
  63. package/dist/manifest.d.ts +32 -0
  64. package/dist/manifest.d.ts.map +1 -1
  65. package/dist/manifest.js +41 -0
  66. package/dist/manifest.js.map +1 -1
  67. package/dist/package-limits.d.ts +3 -0
  68. package/dist/package-limits.d.ts.map +1 -0
  69. package/dist/package-limits.js +3 -0
  70. package/dist/package-limits.js.map +1 -0
  71. package/dist/page-hash.d.ts +1 -1
  72. package/dist/page-hash.d.ts.map +1 -1
  73. package/dist/page-hash.js.map +1 -1
  74. package/dist/page-loader.d.ts +5 -0
  75. package/dist/page-loader.d.ts.map +1 -0
  76. package/dist/page-loader.js +39 -0
  77. package/dist/page-loader.js.map +1 -0
  78. package/dist/pages/access/grant-form.d.ts +48 -0
  79. package/dist/pages/access/grant-form.d.ts.map +1 -0
  80. package/dist/pages/access/grant-form.js +153 -0
  81. package/dist/pages/access/grant-form.js.map +1 -0
  82. package/dist/pages/access/permission-descriptions.d.ts +2 -0
  83. package/dist/pages/access/permission-descriptions.d.ts.map +1 -0
  84. package/dist/pages/access/permission-descriptions.js +36 -0
  85. package/dist/pages/access/permission-descriptions.js.map +1 -0
  86. package/dist/pages/access/role-catalogue.d.ts +22 -0
  87. package/dist/pages/access/role-catalogue.d.ts.map +1 -0
  88. package/dist/pages/access/role-catalogue.js +40 -0
  89. package/dist/pages/access/role-catalogue.js.map +1 -0
  90. package/dist/pages/access.d.ts +6 -0
  91. package/dist/pages/access.d.ts.map +1 -1
  92. package/dist/pages/access.js +66 -31
  93. package/dist/pages/access.js.map +1 -1
  94. package/dist/pages/audit.d.ts.map +1 -1
  95. package/dist/pages/notification-actions.d.ts +41 -0
  96. package/dist/pages/notification-actions.d.ts.map +1 -0
  97. package/dist/pages/notification-actions.js +187 -0
  98. package/dist/pages/notification-actions.js.map +1 -0
  99. package/dist/pages/notification-draft.d.ts +13 -0
  100. package/dist/pages/notification-draft.d.ts.map +1 -0
  101. package/dist/pages/notification-draft.js +75 -0
  102. package/dist/pages/notification-draft.js.map +1 -0
  103. package/dist/pages/notification-form.d.ts +35 -0
  104. package/dist/pages/notification-form.d.ts.map +1 -0
  105. package/dist/pages/notification-form.js +167 -0
  106. package/dist/pages/notification-form.js.map +1 -0
  107. package/dist/pages/notifications-controller.d.ts +41 -0
  108. package/dist/pages/notifications-controller.d.ts.map +1 -0
  109. package/dist/pages/notifications-controller.js +184 -0
  110. package/dist/pages/notifications-controller.js.map +1 -0
  111. package/dist/pages/notifications.d.ts +10 -0
  112. package/dist/pages/notifications.d.ts.map +1 -0
  113. package/dist/pages/notifications.js +301 -0
  114. package/dist/pages/notifications.js.map +1 -0
  115. package/dist/pages/npm-login.d.ts +2 -0
  116. package/dist/pages/npm-login.d.ts.map +1 -0
  117. package/dist/pages/npm-login.js +62 -0
  118. package/dist/pages/npm-login.js.map +1 -0
  119. package/dist/pages/packages/npm-workflow.d.ts +31 -0
  120. package/dist/pages/packages/npm-workflow.d.ts.map +1 -0
  121. package/dist/pages/packages/npm-workflow.js +381 -0
  122. package/dist/pages/packages/npm-workflow.js.map +1 -0
  123. package/dist/pages/packages/package-detail.d.ts +9 -0
  124. package/dist/pages/packages/package-detail.d.ts.map +1 -0
  125. package/dist/pages/packages/package-detail.js +242 -0
  126. package/dist/pages/packages/package-detail.js.map +1 -0
  127. package/dist/pages/packages/source-actions.d.ts +49 -0
  128. package/dist/pages/packages/source-actions.d.ts.map +1 -0
  129. package/dist/pages/packages/source-actions.js +319 -0
  130. package/dist/pages/packages/source-actions.js.map +1 -0
  131. package/dist/pages/packages.d.ts +15 -4
  132. package/dist/pages/packages.d.ts.map +1 -1
  133. package/dist/pages/packages.js +138 -20
  134. package/dist/pages/packages.js.map +1 -1
  135. package/dist/pages/projects/project-form-model.d.ts +25 -0
  136. package/dist/pages/projects/project-form-model.d.ts.map +1 -0
  137. package/dist/pages/projects/project-form-model.js +69 -0
  138. package/dist/pages/projects/project-form-model.js.map +1 -0
  139. package/dist/pages/projects/project-form.d.ts +14 -0
  140. package/dist/pages/projects/project-form.d.ts.map +1 -0
  141. package/dist/pages/projects/project-form.js +91 -0
  142. package/dist/pages/projects/project-form.js.map +1 -0
  143. package/dist/pages/projects.d.ts +3 -2
  144. package/dist/pages/projects.d.ts.map +1 -1
  145. package/dist/pages/projects.js +29 -38
  146. package/dist/pages/projects.js.map +1 -1
  147. package/dist/pages/sources/source-form.d.ts +5 -2
  148. package/dist/pages/sources/source-form.d.ts.map +1 -1
  149. package/dist/pages/sources/source-form.js +39 -27
  150. package/dist/pages/sources/source-form.js.map +1 -1
  151. package/dist/pages/sources/sync-copy.d.ts +5 -0
  152. package/dist/pages/sources/sync-copy.d.ts.map +1 -0
  153. package/dist/pages/sources/sync-copy.js +11 -0
  154. package/dist/pages/sources/sync-copy.js.map +1 -0
  155. package/dist/pages/sources.d.ts +11 -3
  156. package/dist/pages/sources.d.ts.map +1 -1
  157. package/dist/pages/sources.js +103 -25
  158. package/dist/pages/sources.js.map +1 -1
  159. package/dist/pages/tokens/client-config.d.ts +3 -0
  160. package/dist/pages/tokens/client-config.d.ts.map +1 -1
  161. package/dist/pages/tokens/client-config.js +12 -2
  162. package/dist/pages/tokens/client-config.js.map +1 -1
  163. package/dist/pages/tokens/issue-token-form.d.ts +27 -0
  164. package/dist/pages/tokens/issue-token-form.d.ts.map +1 -0
  165. package/dist/pages/tokens/issue-token-form.js +270 -0
  166. package/dist/pages/tokens/issue-token-form.js.map +1 -0
  167. package/dist/pages/tokens/principal-form.d.ts +8 -0
  168. package/dist/pages/tokens/principal-form.d.ts.map +1 -0
  169. package/dist/pages/tokens/principal-form.js +155 -0
  170. package/dist/pages/tokens/principal-form.js.map +1 -0
  171. package/dist/pages/tokens/trusted-publishers-controller.d.ts +42 -0
  172. package/dist/pages/tokens/trusted-publishers-controller.d.ts.map +1 -0
  173. package/dist/pages/tokens/trusted-publishers-controller.js +202 -0
  174. package/dist/pages/tokens/trusted-publishers-controller.js.map +1 -0
  175. package/dist/pages/tokens/trusted-publishers.d.ts +6 -0
  176. package/dist/pages/tokens/trusted-publishers.d.ts.map +1 -0
  177. package/dist/pages/tokens/trusted-publishers.js +116 -0
  178. package/dist/pages/tokens/trusted-publishers.js.map +1 -0
  179. package/dist/pages/tokens.d.ts +100 -6
  180. package/dist/pages/tokens.d.ts.map +1 -1
  181. package/dist/pages/tokens.js +324 -86
  182. package/dist/pages/tokens.js.map +1 -1
  183. package/dist/setup.d.ts +3 -2
  184. package/dist/setup.d.ts.map +1 -1
  185. package/dist/setup.js +70 -10
  186. package/dist/setup.js.map +1 -1
  187. package/dist/token-pending.d.ts +4 -0
  188. package/dist/token-pending.d.ts.map +1 -0
  189. package/dist/token-pending.js +12 -0
  190. package/dist/token-pending.js.map +1 -0
  191. package/package.json +3 -3
  192. package/dist/assets/app.b2abf3c46f6e.js +0 -15
  193. package/dist/assets/app.e8cea8b32d3a.css +0 -2
  194. package/dist/assets/setup.98343039898f.js +0 -1
@@ -1,6 +1,10 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
+ import { SOURCE_TYPE_LABELS } from './sources/source-form.js';
3
+ import { PackageWorkflow } from './packages/npm-workflow.js';
4
+ import { PackageDetail } from './packages/package-detail.js';
5
+ import { PackageSourceControls } from './packages/source-actions.js';
2
6
  import { PROXY_DEMAND_MESSAGE } from './sources/proxy-message.js';
3
- import { useEffect, useMemo, useState, useSyncExternalStore } from 'react';
7
+ import { useCallback, useEffect, useMemo, useRef, useState, useSyncExternalStore, } from 'react';
4
8
  import { safePageHash, useServices } from '../auth.js';
5
9
  import { buildListFilterHash } from '../page-hash.js';
6
10
  import { Alert, AlertDescription } from '../components/ui/alert.js';
@@ -22,7 +26,6 @@ const STATUSES = [
22
26
  'tombstoned',
23
27
  'removed_upstream',
24
28
  ];
25
- const ID = /^[0-7][0-9A-HJKMNP-TV-Z]{25}$/;
26
29
  const ACTION_LABELS = {
27
30
  quarantine: 'Quarantine',
28
31
  tombstone: 'Tombstone',
@@ -239,7 +242,7 @@ export function createPackagesController(services) {
239
242
  if (generation === current + 1 && navigation === navigationGeneration && selected)
240
243
  await open(selected, after);
241
244
  }
242
- async function execute(versionId, action, confirmed = false) {
245
+ async function execute(versionId, action, confirmed = false, reason = '') {
243
246
  const item = state.selected;
244
247
  const version = state.versions.find((entry) => entry.id === versionId);
245
248
  if (state.busy ||
@@ -258,17 +261,21 @@ export function createPackagesController(services) {
258
261
  const query = state.query;
259
262
  const params = { package: item.id, version: version.id };
260
263
  const project = state.access.projectSlug;
261
- set({ busy: true, notice: null, confirmVersion: null });
264
+ set({ busy: true, notice: null });
262
265
  const result = state.access.organization.includes('org:packages:manage')
263
266
  ? await client.request('post', `/_pb/packages/{package}/versions/{version}/${action}`, {
264
267
  params,
265
- body: {},
268
+ body: action === 'tombstone' ? { reason } : {},
266
269
  })
267
- : await client.request('post', `/_pb/projects/{project}/packages/{package}/versions/{version}/${action}`, { params: { ...params, project: project }, body: {} });
270
+ : await client.request('post', `/_pb/projects/{project}/packages/{package}/versions/{version}/${action}`, {
271
+ params: { ...params, project: project },
272
+ body: action === 'tombstone' ? { reason } : {},
273
+ });
268
274
  if (current !== generation || currentVersions !== versionGeneration)
269
275
  return;
270
276
  set({ busy: false });
271
277
  if (!result.ok && result.code === 'reauth_required') {
278
+ set({ confirmVersion: null });
272
279
  services.requireReauth(result.request, {
273
280
  credential: false,
274
281
  secretFields: [],
@@ -331,10 +338,12 @@ export function createPackagesController(services) {
331
338
  act: execute,
332
339
  close,
333
340
  cancelTombstone: () => set({ confirmVersion: null }),
334
- async confirmTombstone() {
341
+ async confirmTombstone(reason) {
342
+ if (!reason.trim() || new TextEncoder().encode(reason).byteLength > 1000)
343
+ return;
335
344
  const id = state.confirmVersion;
336
345
  if (id !== null)
337
- await execute(id, 'tombstone', true);
346
+ await execute(id, 'tombstone', true, reason);
338
347
  },
339
348
  dispose() {
340
349
  ++navigationGeneration;
@@ -380,6 +389,13 @@ export function PackageVersions(props) {
380
389
  }
381
390
  export function PackagesView(props) {
382
391
  const { state } = props;
392
+ const [reason, setReason] = useState('');
393
+ useEffect(() => {
394
+ if (state.confirmVersion !== null)
395
+ setReason('');
396
+ }, [state.confirmVersion]);
397
+ const reasonBytes = new TextEncoder().encode(reason).byteLength;
398
+ const reasonValid = reason.trim().length > 0 && reasonBytes <= 1000;
383
399
  const confirm = state.versions.find((version) => version.id === state.confirmVersion);
384
400
  const filtered = !!(state.query.q ||
385
401
  state.query.status ||
@@ -391,7 +407,7 @@ export function PackagesView(props) {
391
407
  key: 'name',
392
408
  label: 'Name',
393
409
  value: (item) => item.name,
394
- render: (item) => (_jsxs(_Fragment, { children: [_jsx(Button, { type: "button", variant: "link", className: "h-auto justify-start p-0 text-left", disabled: state.busy, onClick: () => props.onOpen(item.id), children: item.name }), _jsx("span", { className: "block text-xs text-neutral-600", children: item.ecosystem })] })),
410
+ render: (item) => (_jsxs(_Fragment, { children: [_jsx(Button, { type: "button", variant: "link", className: "h-auto min-h-11 max-w-full justify-start whitespace-normal break-words p-0 text-left", disabled: state.busy, onClick: () => props.onOpen(item.id), children: item.name }), _jsx("span", { className: "block text-xs text-neutral-600", children: item.ecosystem })] })),
395
411
  },
396
412
  {
397
413
  key: 'status',
@@ -410,7 +426,7 @@ export function PackagesView(props) {
410
426
  label: 'Winning source',
411
427
  priority: 2,
412
428
  value: (item) => item.source.name,
413
- render: (item) => (_jsxs(_Fragment, { children: [item.source.name, _jsx("span", { className: "block text-xs text-neutral-600", children: item.source.type })] })),
429
+ render: (item) => (_jsxs(_Fragment, { children: [item.source.name, _jsx("span", { className: "block text-xs text-neutral-600", children: SOURCE_TYPE_LABELS[item.source.type] })] })),
414
430
  },
415
431
  {
416
432
  key: 'count',
@@ -427,12 +443,86 @@ export function PackagesView(props) {
427
443
  },
428
444
  ] }), state.next ? (_jsx(Button, { type: "button", className: "my-4", variant: "outline", disabled: state.busy, onClick: props.onNext, children: "Next packages" })) : null] })) : state.listError ? (_jsx(ListState, { kind: "error", title: "Packages could not be loaded", children: _jsx(Button, { type: "button", variant: "outline", onClick: props.onRefresh, children: "Retry" }) })) : (_jsx(ListState, { kind: filtered ? 'filtered-empty' : 'empty', title: filtered ? 'No packages match these filters' : 'No packages yet', children: filtered
429
445
  ? 'Change or clear the filters to see more packages.'
430
- : `Attach a source to resolve packages. ${PROXY_DEMAND_MESSAGE}` }))) : (_jsxs("section", { "aria-labelledby": "versions-heading", className: "space-y-4", children: [_jsx(Button, { type: "button", variant: "link", className: "px-0", onClick: props.onBack, disabled: state.busy, children: "\u2190 Back to packages" }), _jsxs("div", { className: "flex flex-wrap items-center gap-3", children: [_jsxs("h2", { id: "versions-heading", className: "text-lg font-semibold break-all", children: ["Versions of ", state.selected.name] }), _jsx(StatusBadge, { status: state.selected.status })] }), _jsx(IdText, { value: state.selected.id, label: "package ID" }), state.versionsLoading ? (_jsx(ListState, { kind: "loading", title: "Loading versions\u2026" })) : state.versions.length ? (_jsxs(_Fragment, { children: [_jsx(PackageVersions, { item: state.selected, versions: state.versions, access: state.access, busy: state.busy, onAction: props.onAction }), state.versionsNext ? (_jsx(Button, { type: "button", variant: "outline", disabled: state.busy, onClick: props.onVersionNext, children: "Next versions" })) : null] })) : (_jsx(ListState, { kind: state.versionsError ? 'error' : 'empty', title: state.versionsError ? 'Versions could not be loaded' : 'No versions found.' }))] })), state.confirmVersion !== null ? (_jsx(Dialog, { open: true, onOpenChange: (open) => {
446
+ : `No packages yet. Add a package from a connected source, or attach a source to get started. ${PROXY_DEMAND_MESSAGE}` }))) : (_jsxs("section", { "aria-labelledby": "versions-heading", className: "space-y-4", children: [_jsx(Button, { type: "button", variant: "link", className: "px-0", onClick: props.onBack, disabled: state.busy, children: "\u2190 Back to packages" }), _jsxs("div", { className: "flex flex-wrap items-center gap-3", children: [_jsxs("h2", { id: "versions-heading", className: "text-lg font-semibold break-all", children: ["Versions of ", state.selected.name] }), _jsx(StatusBadge, { status: state.selected.status })] }), _jsx(IdText, { value: state.selected.id, label: "package ID" }), state.versionsLoading ? (_jsx(ListState, { kind: "loading", title: "Loading versions\u2026" })) : state.versions.length ? (_jsxs(_Fragment, { children: [_jsx(PackageVersions, { item: state.selected, versions: state.versions, access: state.access, busy: state.busy, onAction: props.onAction }), state.versionsNext ? (_jsx(Button, { type: "button", variant: "outline", disabled: state.busy, onClick: props.onVersionNext, children: "Next versions" })) : null] })) : (_jsx(ListState, { kind: state.versionsError ? 'error' : 'empty', title: state.versionsError ? 'Versions could not be loaded' : 'No versions found.' }))] })), state.confirmVersion !== null ? (_jsx(Dialog, { open: true, onOpenChange: (open) => {
431
447
  if (!open)
432
448
  props.onCancel();
433
- }, children: _jsxs(DialogContent, { children: [_jsxs(DialogHeader, { children: [_jsxs(DialogTitle, { children: ["Tombstone ", confirm?.version ?? 'version', "?"] }), _jsx(DialogDescription, { children: "This removes the version from package resolution. Clients can no longer install it. Only this version is affected. This cannot be undone." })] }), _jsxs("dl", { className: "detail-list", children: [_jsx("dt", { children: "Package" }), _jsx("dd", { children: state.selected?.name }), _jsx("dt", { children: "Version" }), _jsx("dd", { className: "font-mono", children: confirm?.version }), _jsx("dt", { children: "Scope" }), _jsx("dd", { children: mutationScope(state.access) })] }), _jsxs(DialogFooter, { children: [_jsx(Button, { type: "button", variant: "outline", onClick: props.onCancel, children: "Cancel" }), _jsx(Button, { type: "button", variant: "destructive", onClick: props.onConfirm, children: "Confirm tombstone" })] })] }) })) : null] }));
449
+ }, children: _jsxs(DialogContent, { children: [_jsxs(DialogHeader, { children: [_jsxs(DialogTitle, { children: ["Tombstone ", confirm?.version ?? 'version', "?"] }), _jsx(DialogDescription, { children: "This removes the version from package resolution. Clients can no longer install it. Only this version is affected. This cannot be undone." })] }), _jsxs("dl", { className: "detail-list", children: [_jsx("dt", { children: "Package" }), _jsx("dd", { children: state.selected?.name }), _jsx("dt", { children: "Version" }), _jsx("dd", { className: "font-mono", children: confirm?.version }), _jsx("dt", { children: "Scope" }), _jsx("dd", { children: mutationScope(state.access) })] }), _jsxs("div", { children: [_jsx(Label, { htmlFor: "tombstone-reason", children: "Reason (required)" }), _jsx(Input, { id: "tombstone-reason", disabled: state.busy, required: true, value: reason, "aria-describedby": "tombstone-reason-help", "aria-invalid": reasonBytes > 1000, onChange: (event) => setReason(event.target.value) }), _jsxs("p", { id: "tombstone-reason-help", children: ["Enter a reason of 1\u20131000 UTF-8 bytes. ", reasonBytes, " bytes used."] })] }), _jsxs(DialogFooter, { children: [_jsx(Button, { type: "button", variant: "outline", onClick: props.onCancel, children: "Cancel" }), _jsx(Button, { type: "button", variant: "destructive", disabled: !reasonValid || state.busy, onClick: () => props.onConfirm(reason), children: "Confirm tombstone" })] })] }) })) : null] }));
450
+ }
451
+ export function createPackageFilterChoicesLoader(services) {
452
+ const cache = new Map();
453
+ const load = (project) => {
454
+ const cached = cache.get(project);
455
+ if (cached)
456
+ return cached;
457
+ const pending = (async () => {
458
+ const sourceChoices = [];
459
+ let after;
460
+ let complete = true;
461
+ do {
462
+ const result = project === null
463
+ ? await services.client.request('get', '/_pb/sources', { query: { after } })
464
+ : await services.client.request('get', '/_pb/projects/{project}/sources', {
465
+ params: { project: project },
466
+ query: { after },
467
+ });
468
+ if (!result.ok) {
469
+ complete = false;
470
+ break;
471
+ }
472
+ sourceChoices.push(...result.data.items);
473
+ after = result.data.next ?? undefined;
474
+ } while (after);
475
+ const projectChoices = [];
476
+ if (project === null) {
477
+ after = undefined;
478
+ do {
479
+ const result = await services.client.request('get', '/_pb/projects', {
480
+ query: { after },
481
+ });
482
+ if (!result.ok) {
483
+ complete = false;
484
+ break;
485
+ }
486
+ projectChoices.push(...result.data.items);
487
+ after = result.data.next ?? undefined;
488
+ } while (after);
489
+ }
490
+ if (!complete)
491
+ cache.delete(project);
492
+ return { sources: sourceChoices, projects: projectChoices };
493
+ })();
494
+ cache.set(project, pending);
495
+ return pending;
496
+ };
497
+ return Object.assign(load, { invalidate: () => cache.clear() });
434
498
  }
435
499
  function PackageFilters(props) {
500
+ const [draft, setDraft] = useState(props.query);
501
+ const { q, status, source, projectId, project } = props.query;
502
+ useEffect(() => {
503
+ setDraft({
504
+ project,
505
+ ...(q ? { q } : {}),
506
+ ...(status ? { status } : {}),
507
+ ...(source ? { source } : {}),
508
+ ...(projectId ? { projectId } : {}),
509
+ });
510
+ }, [q, status, source, projectId, project]);
511
+ const [choices, setChoices] = useState(null);
512
+ useEffect(() => {
513
+ let active = true;
514
+ setChoices(null);
515
+ void props.loadChoices(props.query.project).then((result) => {
516
+ if (active)
517
+ setChoices(result);
518
+ });
519
+ return () => {
520
+ active = false;
521
+ };
522
+ }, [props.loadChoices, props.query.project, props.choicesRevision]);
523
+ const sources = choices?.sources ?? [];
524
+ const projects = choices?.projects ?? [];
525
+ const choicesLoaded = choices !== null;
436
526
  function submit(event) {
437
527
  event.preventDefault();
438
528
  const data = new FormData(event.currentTarget);
@@ -446,7 +536,7 @@ function PackageFilters(props) {
446
536
  }
447
537
  props.onChange(parsePackagesHash(`#/packages?${params}`));
448
538
  }
449
- return (_jsx(FilterToolbar, { chips: ['q', 'status', 'source', 'projectId'].flatMap((key) => props.query[key]
539
+ return (_jsx(FilterToolbar, { chips: ['q', 'status', 'source', 'projectId'].flatMap((key) => props.query[key] && (choicesLoaded || (key !== 'source' && key !== 'projectId'))
450
540
  ? [
451
541
  {
452
542
  label: {
@@ -455,7 +545,15 @@ function PackageFilters(props) {
455
545
  source: 'Source',
456
546
  projectId: 'Project',
457
547
  }[key],
458
- value: props.query[key],
548
+ value: key === 'source'
549
+ ? (sources.find((item) => item.id === props.query.source)?.name ??
550
+ 'Name unavailable')
551
+ : key === 'projectId'
552
+ ? (projects.find((item) => item.id === props.query.projectId)?.name ??
553
+ 'Name unavailable')
554
+ : key === 'status'
555
+ ? statusLabel(props.query.status)
556
+ : props.query[key],
459
557
  onRemove: () => {
460
558
  const next = { ...props.query };
461
559
  delete next[key];
@@ -464,11 +562,25 @@ function PackageFilters(props) {
464
562
  },
465
563
  },
466
564
  ]
467
- : []), children: _jsxs("form", { onSubmit: submit, className: "my-4 flex flex-wrap items-end gap-3", children: [_jsxs("div", { children: [_jsx(Label, { htmlFor: "package-q", children: "Name prefix" }), _jsx(Input, { id: "package-q", name: "q", maxLength: 100, defaultValue: props.query.q ?? '' })] }), _jsxs("div", { children: [_jsx(Label, { htmlFor: "package-status", children: "Status" }), _jsxs(Select, { id: "package-status", name: "status", defaultValue: props.query.status ?? '', children: [_jsx("option", { value: "", children: "All statuses" }), STATUSES.map((status) => (_jsx("option", { value: status, children: statusLabel(status) }, status)))] })] }), _jsxs("div", { children: [_jsx(Label, { htmlFor: "package-source", children: "Source ID" }), _jsx(Input, { id: "package-source", name: "source", pattern: ID.source, defaultValue: props.query.source ?? '' })] }), props.query.project === null ? (_jsxs("div", { children: [_jsx(Label, { htmlFor: "package-project", children: "Project ID" }), _jsx(Input, { id: "package-project", name: "projectId", pattern: ID.source, defaultValue: props.query.projectId ?? '' })] })) : null, _jsx(Button, { type: "submit", children: "Apply filters" }), _jsx(Button, { type: "reset", variant: "outline", onClick: () => props.onChange({ project: props.query.project }), children: "Clear filters" })] }) }));
565
+ : []), children: _jsxs("form", { onSubmit: submit, className: "my-4 flex flex-wrap items-end gap-3", children: [_jsxs("div", { children: [_jsx(Label, { htmlFor: "package-q", children: "Name prefix" }), _jsx(Input, { id: "package-q", name: "q", maxLength: 100, value: draft.q ?? '', onChange: (event) => setDraft((value) => ({ ...value, q: event.target.value })) })] }), _jsxs("div", { children: [_jsx(Label, { htmlFor: "package-status", children: "Status" }), _jsxs(Select, { id: "package-status", name: "status", value: draft.status ?? '', onChange: (event) => setDraft((value) => ({ ...value, status: event.target.value })), children: [_jsx("option", { value: "", children: "All statuses" }), STATUSES.map((status) => (_jsx("option", { value: status, children: statusLabel(status) }, status)))] })] }), _jsxs("div", { children: [_jsx(Label, { htmlFor: "package-source", children: "Source" }), _jsxs(Select, { className: "min-h-11", id: "package-source", name: "source", value: draft.source ?? '', onChange: (event) => setDraft((value) => ({ ...value, source: event.target.value })), disabled: !choicesLoaded, children: [_jsx("option", { value: "", children: "All sources" }), props.query.source && !sources.some((item) => item.id === props.query.source) && (_jsx("option", { value: props.query.source, children: "Name unavailable" })), sources.map((item) => (_jsx("option", { value: item.id, children: item.name }, item.id)))] })] }), props.query.project === null ? (_jsxs("div", { children: [_jsx(Label, { htmlFor: "package-project", children: "Project" }), _jsxs(Select, { className: "min-h-11", id: "package-project", name: "projectId", value: draft.projectId ?? '', onChange: (event) => setDraft((value) => ({ ...value, projectId: event.target.value })), disabled: !choicesLoaded, children: [_jsx("option", { value: "", children: "All projects" }), props.query.projectId &&
566
+ !projects.some((item) => item.id === props.query.projectId) && (_jsx("option", { value: props.query.projectId, children: "Name unavailable" })), projects.map((item) => (_jsx("option", { value: item.id, children: item.name }, item.id)))] })] })) : null, _jsx(Button, { type: "submit", children: "Apply filters" }), _jsx(Button, { type: "reset", variant: "outline", onClick: () => props.onChange({ project: props.query.project }), children: "Clear filters" })] }) }));
468
567
  }
469
568
  export function PackagesPage() {
470
569
  const services = useServices();
471
570
  const controller = useMemo(() => createPackagesController(services), [services]);
571
+ const [choicesRevision, setChoicesRevision] = useState(0);
572
+ const loadFilterChoices = useMemo(() => createPackageFilterChoicesLoader(services), [services]);
573
+ const sourceSignatures = useRef(new Map());
574
+ const sourcesChanged = useCallback((scope, signature) => {
575
+ if (scope !== undefined && signature !== undefined) {
576
+ const previous = sourceSignatures.current.get(scope);
577
+ sourceSignatures.current.set(scope, signature);
578
+ if (previous === undefined || previous === signature)
579
+ return;
580
+ }
581
+ loadFilterChoices.invalidate();
582
+ setChoicesRevision((value) => value + 1);
583
+ }, [loadFilterChoices]);
472
584
  const state = useSyncExternalStore(controller.subscribe, controller.snapshot, controller.snapshot);
473
585
  const [hash, setHash] = useState(() => typeof window === 'undefined' ? '#/packages' : window.location.hash);
474
586
  useEffect(() => {
@@ -477,20 +589,26 @@ export function PackagesPage() {
477
589
  return () => window.removeEventListener('hashchange', change);
478
590
  }, []);
479
591
  useEffect(() => {
592
+ if (/^#\/packages\//.test(hash))
593
+ return;
480
594
  const query = new URLSearchParams(hash.split('?')[1]);
481
595
  void controller.navigate(parsePackagesHash(hash), query.get('package') ?? undefined, query.get('versionAfter') ?? undefined);
482
596
  return () => controller.dispose();
483
597
  }, [controller, hash]);
484
598
  useEffect(() => services.subscribeReplay?.((result) => {
599
+ if (result.ok && /\/sources(?:\/|$)/.test(result.path))
600
+ sourcesChanged();
485
601
  void controller.replayed(result);
486
- }), [services, controller]);
602
+ }), [services, controller, sourcesChanged]);
487
603
  const go = (query) => {
488
604
  window.location.hash = buildPackagesHash(query);
489
605
  };
490
- return (_jsxs("section", { "aria-labelledby": "page-heading", children: [_jsx("h1", { tabIndex: -1, id: "page-heading", className: "text-2xl font-semibold", children: "Packages" }), state.selected === null ? (_jsx(PackageFilters, { query: parsePackagesHash(hash), onChange: go }, hash)) : null, _jsx(PackagesView, { state: state, onOpen: (id) => {
606
+ const detail = /^#\/packages\/([^?]+)(?:\?|$)/.exec(hash);
607
+ if (detail)
608
+ return (_jsx(PackageDetail, { services: services, id: detail[1], project: parsePackagesHash(hash).project, back: buildPackagesHash(parsePackagesHash(hash)) }, hash));
609
+ return (_jsxs("section", { "aria-labelledby": "page-heading", children: [_jsx("h1", { tabIndex: -1, id: "page-heading", className: "text-2xl font-semibold", children: "Packages" }), state.selected === null ? (_jsx(PackageWorkflow, { services: services, project: parsePackagesHash(hash).project }, state.query.project)) : null, state.selected === null ? (_jsx(PackageSourceControls, { services: services, project: state.query.project, onSourcesChanged: sourcesChanged }, state.query.project)) : null, state.selected === null ? (_jsx(PackageFilters, { loadChoices: loadFilterChoices, choicesRevision: choicesRevision, query: parsePackagesHash(hash), onChange: go })) : null, _jsx(PackagesView, { state: state, onOpen: (id) => {
491
610
  const query = new URLSearchParams(buildPackagesHash(state.query).split('?')[1]);
492
- query.set('package', id);
493
- window.location.hash = `#/packages?${query}`;
611
+ window.location.hash = `#/packages/${id}${query.size ? `?${query}` : ''}`;
494
612
  }, onBack: () => go(state.query), onAction: (id, action) => void controller.act(id, action), onNext: () => {
495
613
  if (state.next !== null)
496
614
  go({ ...state.query, after: state.next });
@@ -500,6 +618,6 @@ export function PackagesPage() {
500
618
  query.set('versionAfter', state.versionsNext);
501
619
  window.location.hash = `#/packages?${query}`;
502
620
  }
503
- }, onRefresh: () => void controller.refresh(), onConfirm: () => void controller.confirmTombstone(), onCancel: controller.cancelTombstone })] }));
621
+ }, onRefresh: () => void controller.refresh(), onConfirm: (reason) => void controller.confirmTombstone(reason), onCancel: controller.cancelTombstone })] }));
504
622
  }
505
623
  //# sourceMappingURL=packages.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"packages.js","sourceRoot":"","sources":["../../src/pages/packages.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"packages.js","sourceRoot":"","sources":["../../src/pages/packages.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ import type { ApiResult } from '../../api.js';
2
+ export type TokenScope = 'read' | 'write' | 'full';
3
+ export declare const PROJECT_SLUG_PATTERN: RegExp;
4
+ export declare const SLUG_RULE = "1\u201364 lowercase letters, numbers or hyphens. Start and end with a letter or number.";
5
+ export interface ProjectDraft {
6
+ name: string;
7
+ slug: string;
8
+ manualSlug: boolean;
9
+ tokenMaxScope: TokenScope;
10
+ }
11
+ export type FormErrors = Partial<Record<'name' | 'slug' | 'tokenMaxScope', string>>;
12
+ export declare function suggestedSlug(name: string): string;
13
+ export declare function changeName(draft: ProjectDraft, name: string): ProjectDraft;
14
+ export declare function changeSlug(draft: ProjectDraft, slug: string): ProjectDraft;
15
+ export declare function useSuggestedSlug(draft: ProjectDraft): ProjectDraft;
16
+ export declare function validateDraft(draft: ProjectDraft, editing?: boolean): FormErrors;
17
+ export declare function projectBody(draft: ProjectDraft, editing: boolean): {
18
+ slug?: string;
19
+ name: string;
20
+ tokenMaxScope: TokenScope;
21
+ };
22
+ export declare function serverFieldErrors(result: ApiResult<unknown>, editing: boolean): FormErrors;
23
+ export declare const LOWER_CAP_NOTICE = "This change limits existing personal and service tokens on their next request. Downloads can continue, but access above this limit will stop. Check any CI jobs that use these tokens.";
24
+ export declare function capNotice(saved: TokenScope, draft: TokenScope): "This change limits existing personal and service tokens on their next request. Downloads can continue, but access above this limit will stop. Check any CI jobs that use these tokens." | "Existing tokens may regain access if their scope and permissions allow it." | null;
25
+ //# sourceMappingURL=project-form-model.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-form-model.d.ts","sourceRoot":"","sources":["../../../src/pages/projects/project-form-model.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,CAAC;AACnD,eAAO,MAAM,oBAAoB,QAA2C,CAAC;AAC7E,eAAO,MAAM,SAAS,4FACgE,CAAC;AACvF,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,OAAO,CAAC;IACpB,aAAa,EAAE,UAAU,CAAC;CAC3B;AACD,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,GAAG,eAAe,EAAE,MAAM,CAAC,CAAC,CAAC;AACpF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,UAOzC;AACD,wBAAgB,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CAE1E;AACD,wBAAgB,UAAU,CAAC,KAAK,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,GAAG,YAAY,CAE1E;AACD,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,YAAY,GAAG,YAAY,CAElE;AACD,wBAAgB,aAAa,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,UAAQ,GAAG,UAAU,CAY9E;AACD,wBAAgB,WAAW,CAAC,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO;;;;EAMhE;AACD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,SAAS,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,GAAG,UAAU,CAa1F;AACD,eAAO,MAAM,gBAAgB,2LAC6J,CAAC;AAC3L,wBAAgB,SAAS,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,UAAU,kRAO7D"}
@@ -0,0 +1,69 @@
1
+ export const PROJECT_SLUG_PATTERN = /^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/;
2
+ export const SLUG_RULE = '1–64 lowercase letters, numbers or hyphens. Start and end with a letter or number.';
3
+ export function suggestedSlug(name) {
4
+ return name
5
+ .toLowerCase()
6
+ .replace(/[^a-z0-9]+/g, '-')
7
+ .replace(/^-+|-+$/g, '')
8
+ .slice(0, 64)
9
+ .replace(/-+$/g, '');
10
+ }
11
+ export function changeName(draft, name) {
12
+ return { ...draft, name, slug: draft.manualSlug ? draft.slug : suggestedSlug(name) };
13
+ }
14
+ export function changeSlug(draft, slug) {
15
+ return { ...draft, slug, manualSlug: true };
16
+ }
17
+ export function useSuggestedSlug(draft) {
18
+ return { ...draft, slug: suggestedSlug(draft.name), manualSlug: false };
19
+ }
20
+ export function validateDraft(draft, editing = false) {
21
+ const errors = {};
22
+ if (!draft.name.trim())
23
+ errors.name = 'Enter a project name.';
24
+ else if ([...draft.name].length > 100)
25
+ errors.name = 'Use 100 characters or fewer.';
26
+ else if (/[\p{Cc}\p{Cf}\p{Zl}\p{Zp}\p{Cs}]/u.test(draft.name))
27
+ errors.name = 'Use a name without control or formatting characters.';
28
+ if (!editing && !PROJECT_SLUG_PATTERN.test(draft.slug))
29
+ errors.slug =
30
+ !draft.slug && draft.name && !suggestedSlug(draft.name)
31
+ ? 'Enter a project slug using lowercase letters, numbers or hyphens.'
32
+ : SLUG_RULE;
33
+ return errors;
34
+ }
35
+ export function projectBody(draft, editing) {
36
+ return {
37
+ name: draft.name,
38
+ tokenMaxScope: draft.tokenMaxScope,
39
+ ...(editing ? {} : { slug: draft.slug }),
40
+ };
41
+ }
42
+ export function serverFieldErrors(result, editing) {
43
+ if (result.ok)
44
+ return {};
45
+ if (!editing && result.code === 'duplicate')
46
+ return { slug: 'This project slug is already in use. Choose another.' };
47
+ const errors = {};
48
+ for (const detail of result.details) {
49
+ if (detail.location && detail.location !== 'body')
50
+ continue;
51
+ if (detail.path === '/body/name')
52
+ errors.name = 'Check the entered values and try again.';
53
+ if (!editing && detail.path === '/body/slug')
54
+ errors.slug = SLUG_RULE;
55
+ if (detail.path === '/body/tokenMaxScope')
56
+ errors.tokenMaxScope = 'Check the entered values and try again.';
57
+ }
58
+ return errors;
59
+ }
60
+ export const LOWER_CAP_NOTICE = 'This change limits existing personal and service tokens on their next request. Downloads can continue, but access above this limit will stop. Check any CI jobs that use these tokens.';
61
+ export function capNotice(saved, draft) {
62
+ const scopes = ['read', 'write', 'full'];
63
+ return saved === draft
64
+ ? null
65
+ : scopes.indexOf(draft) < scopes.indexOf(saved)
66
+ ? LOWER_CAP_NOTICE
67
+ : 'Existing tokens may regain access if their scope and permissions allow it.';
68
+ }
69
+ //# sourceMappingURL=project-form-model.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-form-model.js","sourceRoot":"","sources":["../../../src/pages/projects/project-form-model.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { ApiResult } from '../../api.js';
2
+ import { projectBody, type TokenScope } from './project-form-model.js';
3
+ export interface SavedProject {
4
+ name: string;
5
+ slug: string;
6
+ tokenMaxScope: TokenScope;
7
+ requirePublishApproval: boolean;
8
+ }
9
+ export declare function ProjectForm(props: {
10
+ project?: SavedProject;
11
+ disabled: boolean;
12
+ submit: (body: ReturnType<typeof projectBody>) => Promise<ApiResult<unknown> | undefined>;
13
+ }): import("react").JSX.Element;
14
+ //# sourceMappingURL=project-form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"project-form.d.ts","sourceRoot":"","sources":["../../../src/pages/projects/project-form.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAK9C,OAAO,EAIL,WAAW,EAOX,KAAK,UAAU,EAChB,MAAM,yBAAyB,CAAC;AAwBjC,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,UAAU,CAAC;IAC1B,sBAAsB,EAAE,OAAO,CAAC;CACjC;AACD,wBAAgB,WAAW,CAAC,KAAK,EAAE;IACjC,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,CAAC,IAAI,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,KAAK,OAAO,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,SAAS,CAAC,CAAC;CAC3F,+BA+OA"}