@byline/cli 4.0.0 → 4.1.0
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/manifest/deps.d.ts.map +1 -1
- package/dist/manifest/deps.js +6 -0
- package/dist/manifest/deps.js.map +1 -1
- package/dist/phases/scaffold-smoke.test.js +10 -3
- package/dist/phases/scaffold-smoke.test.js.map +1 -1
- package/dist/templates/byline/collection-types.contract.ts +1 -1
- package/dist/templates/byline/collections/index.ts +1 -1
- package/dist/templates/byline/generated/collection-types.ts +14 -6
- package/dist/templates/byline/server.config.ts +8 -1
- package/dist/templates/byline-examples/collection-types.contract.ts +1 -1
- package/dist/templates/byline-examples/collections/docs/hooks.ts +2 -2
- package/dist/templates/byline-examples/collections/index.ts +1 -1
- package/dist/templates/byline-examples/generated/collection-types.ts +138 -130
- package/dist/templates/byline-examples/scripts/import-docs.ts +3 -3
- package/dist/templates/byline-examples/scripts/regenerate-media-operation.ts +112 -0
- package/dist/templates/byline-examples/scripts/regenerate-media.ts +126 -90
- package/dist/templates/byline-examples/server.config.ts +10 -3
- package/dist/templates/ui-byline/blocks/richtext-block/index.tsx +1 -1
- package/dist/templates/ui-byline/types/content.ts +1 -1
- package/dist/ui-template-contract.test.js +27 -7
- package/dist/ui-template-contract.test.js.map +1 -1
- package/dist/workspace-root.test.js +5 -1
- package/dist/workspace-root.test.js.map +1 -1
- package/package.json +1 -1
- package/dist/templates/byline/clients.server.ts +0 -77
- package/dist/templates/byline-examples/clients.server.ts +0 -77
|
@@ -23,21 +23,28 @@
|
|
|
23
23
|
* The script orchestrates the same two-step flow the admin UI uses
|
|
24
24
|
* for an existing document — upload (createDocument: false) followed by
|
|
25
25
|
* a document update — but as a single "one-shot" Client SDK pass per
|
|
26
|
-
* media item. Variants and the original written under fresh paths
|
|
27
|
-
*
|
|
28
|
-
*
|
|
26
|
+
* media item. Variants and the original are written under fresh paths.
|
|
27
|
+
* Previous files are retained because immutable historical versions — or an
|
|
28
|
+
* older published version while the current version is draft — may still
|
|
29
|
+
* reference them. Storage reclamation requires a separate reference-aware
|
|
30
|
+
* garbage collector.
|
|
29
31
|
*
|
|
30
32
|
* Bypass-MIME images (SVG / GIF) are passed through untouched — Sharp
|
|
31
33
|
* does not produce variants for them, so the only effect is a new
|
|
32
34
|
* storagePath on a re-stored copy.
|
|
33
35
|
*
|
|
34
|
-
* Status preservation: `updateDocument`
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
36
|
+
* Status preservation: `updateDocument` stamps new versions with the
|
|
37
|
+
* workflow's default status (`'draft'` for media). The script wraps that
|
|
38
|
+
* update and a direct restoration of the captured status in one database
|
|
39
|
+
* transaction. This is a deliberate maintenance-only use of adapter
|
|
40
|
+
* commands: an archived item is never temporarily published, and callers
|
|
41
|
+
* cannot observe the intermediate draft. Run without concurrent editorial
|
|
42
|
+
* writes to the media collection.
|
|
43
|
+
*
|
|
44
|
+
* Safety: the generated variant names must exactly match the current schema
|
|
45
|
+
* before the document is changed. A failed upload/update is compensated by
|
|
46
|
+
* deleting the newly-written files, failures are collected per document, and
|
|
47
|
+
* the process exits non-zero after attempting the remaining items.
|
|
41
48
|
*
|
|
42
49
|
* Currently requires the local storage provider — pulls bytes back via
|
|
43
50
|
* the provider's `uploadDir`. Variant generation itself is provider-
|
|
@@ -53,17 +60,21 @@ import fs from 'node:fs'
|
|
|
53
60
|
import path from 'node:path'
|
|
54
61
|
|
|
55
62
|
import { createSuperAdminContext } from '@byline/auth'
|
|
56
|
-
import {
|
|
63
|
+
import { createBylineClient } from '@byline/client'
|
|
57
64
|
import {
|
|
58
65
|
type FieldUploadContext,
|
|
59
66
|
getCollectionDefinition,
|
|
60
67
|
getServerConfig,
|
|
61
|
-
getWorkflowStatuses,
|
|
62
68
|
} from '@byline/core'
|
|
63
69
|
import { extractImageMeta, generateImageVariants, isBypassMimeType } from '@byline/core/image'
|
|
64
70
|
import { uploadField as coreUploadField } from '@byline/core/services'
|
|
65
71
|
|
|
66
|
-
import type {
|
|
72
|
+
import type { MediaFields } from '@byline/generated-types'
|
|
73
|
+
import {
|
|
74
|
+
assertCompleteVariantSet,
|
|
75
|
+
replaceMediaVersionPreservingStatus,
|
|
76
|
+
storedFilePaths,
|
|
77
|
+
} from './regenerate-media-operation.js'
|
|
67
78
|
|
|
68
79
|
const COLLECTION_PATH = 'media'
|
|
69
80
|
const FIELD_NAME = 'image'
|
|
@@ -93,7 +104,7 @@ async function run(): Promise<void> {
|
|
|
93
104
|
}
|
|
94
105
|
|
|
95
106
|
const requestContext = createSuperAdminContext({ id: 'regenerate-media-script' })
|
|
96
|
-
const client = createBylineClient
|
|
107
|
+
const client = createBylineClient({ config, requestContext })
|
|
97
108
|
|
|
98
109
|
const { id: collectionId, version: collectionVersion } =
|
|
99
110
|
await client.resolveCollectionRecord(COLLECTION_PATH)
|
|
@@ -103,8 +114,8 @@ async function run(): Promise<void> {
|
|
|
103
114
|
// Snapshot the full set up-front. Each update bumps `updated_at` and
|
|
104
115
|
// reorders the default sort, so paging through a moving window would
|
|
105
116
|
// either skip or re-visit rows. Capture `status` so we can restore
|
|
106
|
-
// each doc to its original workflow slot
|
|
107
|
-
//
|
|
117
|
+
// each doc to its original workflow slot inside the replacement
|
|
118
|
+
// transaction.
|
|
108
119
|
const allDocs: {
|
|
109
120
|
id: string
|
|
110
121
|
path: string
|
|
@@ -151,8 +162,21 @@ async function run(): Promise<void> {
|
|
|
151
162
|
},
|
|
152
163
|
}
|
|
153
164
|
|
|
165
|
+
const imageField = definition.fields.find((field) => field.name === FIELD_NAME)
|
|
166
|
+
if (imageField == null || (imageField.type !== 'image' && imageField.type !== 'file')) {
|
|
167
|
+
throw new Error(
|
|
168
|
+
`regenerate-media: '${COLLECTION_PATH}.${FIELD_NAME}' is not an image/file field.`
|
|
169
|
+
)
|
|
170
|
+
}
|
|
171
|
+
if (imageField.upload == null) {
|
|
172
|
+
throw new Error(
|
|
173
|
+
`regenerate-media: '${COLLECTION_PATH}.${FIELD_NAME}' has no upload configuration.`
|
|
174
|
+
)
|
|
175
|
+
}
|
|
176
|
+
|
|
154
177
|
let processed = 0
|
|
155
178
|
let skipped = 0
|
|
179
|
+
const failures: Error[] = []
|
|
156
180
|
|
|
157
181
|
for (const doc of allDocs) {
|
|
158
182
|
const image = doc.fields[FIELD_NAME]
|
|
@@ -162,102 +186,114 @@ async function run(): Promise<void> {
|
|
|
162
186
|
continue
|
|
163
187
|
}
|
|
164
188
|
|
|
189
|
+
const oldPaths = storedFilePaths(image)
|
|
165
190
|
const sourceAbsolutePath = path.join(uploadDir, image.storagePath)
|
|
166
191
|
let buffer: Buffer
|
|
167
192
|
try {
|
|
168
193
|
buffer = await fs.promises.readFile(sourceAbsolutePath)
|
|
169
194
|
} catch (err) {
|
|
170
195
|
console.error(
|
|
171
|
-
` !
|
|
196
|
+
` ! fail ${doc.id} (${doc.path}) — failed to read original at ${sourceAbsolutePath}:`,
|
|
172
197
|
err
|
|
173
198
|
)
|
|
174
|
-
|
|
199
|
+
failures.push(asDocumentError(doc.id, doc.path, err))
|
|
175
200
|
continue
|
|
176
201
|
}
|
|
177
202
|
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
203
|
+
let freshPaths = new Set<string>()
|
|
204
|
+
try {
|
|
205
|
+
const uploadResult = await coreUploadField(
|
|
206
|
+
{ ...baseUploadCtx, requestContext },
|
|
207
|
+
{
|
|
208
|
+
buffer,
|
|
209
|
+
originalFilename: image.originalFilename || image.filename,
|
|
210
|
+
mimeType: image.mimeType,
|
|
211
|
+
fileSize: buffer.byteLength,
|
|
212
|
+
shouldCreateDocument: false,
|
|
213
|
+
}
|
|
214
|
+
)
|
|
215
|
+
freshPaths = storedFilePaths(uploadResult.storedFile)
|
|
191
216
|
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
// the slot the doc originally occupied.
|
|
197
|
-
await restoreStatus(handle, definition, doc.id, doc.status)
|
|
217
|
+
const expectedVariantNames = isBypassMimeType(image.mimeType)
|
|
218
|
+
? []
|
|
219
|
+
: (imageField.upload.sizes ?? []).map((size) => size.name)
|
|
220
|
+
assertCompleteVariantSet(uploadResult.storedFile, expectedVariantNames)
|
|
198
221
|
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
]
|
|
206
|
-
for (const orphan of orphans) {
|
|
207
|
-
try {
|
|
208
|
-
await storage.delete(orphan)
|
|
209
|
-
} catch (err) {
|
|
210
|
-
console.warn(` ! failed to delete orphan ${orphan}:`, err)
|
|
222
|
+
const collisions = [...freshPaths].filter((storagePath) => oldPaths.has(storagePath))
|
|
223
|
+
if (collisions.length > 0) {
|
|
224
|
+
throw new Error(
|
|
225
|
+
`regenerate-media: upload hooks reused existing storage path(s): ${collisions.join(', ')}. ` +
|
|
226
|
+
'Fresh paths are required for an atomic replacement.'
|
|
227
|
+
)
|
|
211
228
|
}
|
|
212
|
-
}
|
|
213
229
|
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
230
|
+
const nextFields = { ...doc.fields, [FIELD_NAME]: uploadResult.storedFile }
|
|
231
|
+
await replaceMediaVersionPreservingStatus({
|
|
232
|
+
db: config.db,
|
|
233
|
+
definition,
|
|
234
|
+
collectionId,
|
|
235
|
+
handle,
|
|
236
|
+
documentId: doc.id,
|
|
237
|
+
fields: nextFields,
|
|
238
|
+
targetStatus: doc.status,
|
|
239
|
+
})
|
|
240
|
+
|
|
241
|
+
const variantSummary =
|
|
242
|
+
uploadResult.storedFile.variants?.map((v) => `${v.name}:${v.format ?? '?'}`).join(', ') ??
|
|
243
|
+
'(none)'
|
|
244
|
+
console.log(
|
|
245
|
+
` - ${doc.id} (${doc.path}) → ${uploadResult.storedFile.storagePath} [${variantSummary}]`
|
|
246
|
+
)
|
|
247
|
+
processed += 1
|
|
248
|
+
} catch (err) {
|
|
249
|
+
// The document transaction did not commit. Remove every fresh path we
|
|
250
|
+
// know about, but never delete a path that belonged to the old value — a
|
|
251
|
+
// deterministic beforeStore hook may already have overwritten it.
|
|
252
|
+
const rollbackPaths = new Set([...freshPaths].filter((storagePath) => !oldPaths.has(storagePath)))
|
|
253
|
+
const cleanupErrors = await deletePathsBestEffort(storage, rollbackPaths)
|
|
254
|
+
const failure = asDocumentError(doc.id, doc.path, err)
|
|
255
|
+
failures.push(
|
|
256
|
+
cleanupErrors.length === 0
|
|
257
|
+
? failure
|
|
258
|
+
: new AggregateError(
|
|
259
|
+
[failure, ...cleanupErrors],
|
|
260
|
+
`regenerate-media: operation and rollback cleanup failed for '${doc.path}'`
|
|
261
|
+
)
|
|
262
|
+
)
|
|
263
|
+
console.error(` ! fail ${doc.id} (${doc.path}):`, err)
|
|
264
|
+
}
|
|
221
265
|
}
|
|
222
266
|
|
|
223
267
|
console.log(
|
|
224
|
-
`regenerate-media: done. processed=${processed}, skipped=${skipped},
|
|
268
|
+
`regenerate-media: done. processed=${processed}, skipped=${skipped}, ` +
|
|
269
|
+
`failed=${failures.length}, total=${allDocs.length}.`
|
|
225
270
|
)
|
|
271
|
+
if (failures.length > 0) {
|
|
272
|
+
throw new AggregateError(failures, `regenerate-media: ${failures.length} document(s) failed`)
|
|
273
|
+
}
|
|
226
274
|
}
|
|
227
275
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
*/
|
|
242
|
-
async function restoreStatus(
|
|
243
|
-
handle: CollectionHandle,
|
|
244
|
-
definition: Parameters<typeof getWorkflowStatuses>[0],
|
|
245
|
-
documentId: string,
|
|
246
|
-
targetStatus: string
|
|
247
|
-
): Promise<void> {
|
|
248
|
-
const statuses = getWorkflowStatuses(definition).map((s) => s.name)
|
|
249
|
-
const targetIndex = statuses.indexOf(targetStatus)
|
|
250
|
-
if (targetIndex === -1) {
|
|
251
|
-
throw new Error(
|
|
252
|
-
`restoreStatus: status '${targetStatus}' is not declared on collection ` +
|
|
253
|
-
`'${definition.path}' (declared: ${statuses.join(', ')}).`
|
|
254
|
-
)
|
|
255
|
-
}
|
|
256
|
-
// The new version is always at index 0 (workflow default). Anything at
|
|
257
|
-
// index > 0 needs that many forward transitions.
|
|
258
|
-
for (let i = 1; i <= targetIndex; i++) {
|
|
259
|
-
await handle.changeStatus(documentId, statuses[i] as string)
|
|
276
|
+
async function deletePathsBestEffort(
|
|
277
|
+
storage: NonNullable<ReturnType<typeof getServerConfig>['storage']>,
|
|
278
|
+
storagePaths: Iterable<string>
|
|
279
|
+
): Promise<Error[]> {
|
|
280
|
+
const errors: Error[] = []
|
|
281
|
+
for (const storagePath of storagePaths) {
|
|
282
|
+
try {
|
|
283
|
+
await storage.delete(storagePath)
|
|
284
|
+
} catch (err) {
|
|
285
|
+
const error = err instanceof Error ? err : new Error(String(err))
|
|
286
|
+
errors.push(error)
|
|
287
|
+
console.warn(` ! failed to delete ${storagePath}:`, error)
|
|
288
|
+
}
|
|
260
289
|
}
|
|
290
|
+
return errors
|
|
291
|
+
}
|
|
292
|
+
|
|
293
|
+
function asDocumentError(documentId: string, documentPath: string, err: unknown): Error {
|
|
294
|
+
return new Error(`regenerate-media: '${documentPath}' (${documentId}) failed`, {
|
|
295
|
+
cause: err,
|
|
296
|
+
})
|
|
261
297
|
}
|
|
262
298
|
|
|
263
299
|
run()
|
|
@@ -28,7 +28,8 @@ import {
|
|
|
28
28
|
import { migrate, postgresSearch } from '@byline/search-postgres'
|
|
29
29
|
import { localStorageProvider } from '@byline/storage-local'
|
|
30
30
|
|
|
31
|
-
import { getAdminBylineClient } from '
|
|
31
|
+
import { getAdminBylineClient } from '@byline/client/server'
|
|
32
|
+
import { registerTanstackStartHostBridge } from '@byline/host-tanstack-start/integrations/host-bridge'
|
|
32
33
|
import { collections } from './collections/index.js'
|
|
33
34
|
import { serverHooks } from './collections/server-hooks.js'
|
|
34
35
|
import { i18n } from './i18n.js'
|
|
@@ -135,6 +136,12 @@ async function buildBylineCore(): Promise<BylineCore<AdminStore>> {
|
|
|
135
136
|
signingSecret,
|
|
136
137
|
})
|
|
137
138
|
|
|
139
|
+
// Register the TanStack Start `HostRequestBridge` before any
|
|
140
|
+
// request-bound client getter (`@byline/client/server`) can run —
|
|
141
|
+
// structural at server boot rather than dependent on which host
|
|
142
|
+
// module happens to load first.
|
|
143
|
+
registerTanstackStartHostBridge()
|
|
144
|
+
|
|
138
145
|
const core = await initBylineCore<AdminStore>({
|
|
139
146
|
serverURL,
|
|
140
147
|
i18n,
|
|
@@ -208,8 +215,8 @@ async function buildBylineCore(): Promise<BylineCore<AdminStore>> {
|
|
|
208
215
|
// the admin host today — the populate phase inherits whichever
|
|
209
216
|
// actor the request resolved. A future public-facing host would
|
|
210
217
|
// register its own client whose `requestContext` factory resolves
|
|
211
|
-
// an end-user actor instead. See
|
|
212
|
-
//
|
|
218
|
+
// an end-user actor instead. See `packages/client/src/server/
|
|
219
|
+
// clients.ts` (`@byline/client/server`) for how the admin client is built.
|
|
213
220
|
//
|
|
214
221
|
// Why a getter, not a value: `getAdminBylineClient()` reads the
|
|
215
222
|
// server config singleton, which is only populated *after*
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
import { Container } from '@byline/ui/react'
|
|
4
4
|
import cx from 'classnames'
|
|
5
5
|
|
|
6
|
-
import type { RichTextBlockData } from '
|
|
6
|
+
import type { RichTextBlockData } from '@byline/generated-types'
|
|
7
7
|
|
|
8
8
|
import { LexicalRichText } from '@/ui/byline/components/richtext-lexical'
|
|
9
9
|
import type { Locale } from '@/ui/byline/types/i18n'
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { WithPopulated } from '@byline/client'
|
|
2
2
|
|
|
3
|
-
import type { DocsFields, MediaFields, PagesFields } from '
|
|
3
|
+
import type { DocsFields, MediaFields, PagesFields } from '@byline/generated-types'
|
|
4
4
|
|
|
5
5
|
type ContentBlockOf<Fields extends { content?: unknown }> =
|
|
6
6
|
NonNullable<Fields['content']> extends Array<infer Block> ? Block : never
|
|
@@ -5,6 +5,26 @@ import { describe, expect, it } from 'vitest';
|
|
|
5
5
|
const templates = resolve(dirname(fileURLToPath(import.meta.url)), 'templates');
|
|
6
6
|
const project = new Project({ skipAddingFilesFromTsConfig: true });
|
|
7
7
|
const generated = project.addSourceFileAtPath(resolve(templates, 'byline-examples/generated/collection-types.ts'));
|
|
8
|
+
// Format 2 declares every type inside the `@byline/generated-types`
|
|
9
|
+
// declaration-merge block; alias lookups search the whole file.
|
|
10
|
+
function generatedTypeAliasOrThrow(name) {
|
|
11
|
+
const alias = generated
|
|
12
|
+
.getDescendantsOfKind(SyntaxKind.TypeAliasDeclaration)
|
|
13
|
+
.find((declaration) => declaration.getName() === name);
|
|
14
|
+
if (!alias)
|
|
15
|
+
throw new Error(`Expected to find type alias named '${name}'.`);
|
|
16
|
+
return alias;
|
|
17
|
+
}
|
|
18
|
+
// The plain-module body of the generated types, for in-memory typecheck
|
|
19
|
+
// fixtures: the augmentation block unwrapped to top-level declarations.
|
|
20
|
+
function generatedModuleBody() {
|
|
21
|
+
const match = generated
|
|
22
|
+
.getFullText()
|
|
23
|
+
.match(/declare module '@byline\/generated-types' \{\n([\s\S]*?)\n\}\n\ndeclare module/);
|
|
24
|
+
if (!match?.[1])
|
|
25
|
+
throw new Error('Expected a @byline/generated-types augmentation block.');
|
|
26
|
+
return match[1].replace(/^ {2}/gm, '');
|
|
27
|
+
}
|
|
8
28
|
const contentTypes = project.addSourceFileAtPath(resolve(templates, 'ui-byline/types/content.ts'));
|
|
9
29
|
const renderer = project.addSourceFileAtPath(resolve(templates, 'ui-byline/render-blocks.tsx'));
|
|
10
30
|
describe('public block renderer templates', () => {
|
|
@@ -50,13 +70,14 @@ describe('public block renderer templates', () => {
|
|
|
50
70
|
[P in keyof F]: P extends K ? PopulatedRelation<Target> : F[P]
|
|
51
71
|
}
|
|
52
72
|
`);
|
|
53
|
-
typeProject.createSourceFile('/generated.ts',
|
|
54
|
-
|
|
55
|
-
|
|
73
|
+
typeProject.createSourceFile('/generated.ts', `type JsonValue = unknown
|
|
74
|
+
type RelatedDocumentValue = { documentId: string }
|
|
75
|
+
type StoredFileValue = { key: string }
|
|
76
|
+
${generatedModuleBody()}`);
|
|
56
77
|
typeProject.createSourceFile('/content.ts', contentTypes
|
|
57
78
|
.getFullText()
|
|
58
79
|
.replace("from '@byline/client'", "from './client.js'")
|
|
59
|
-
.replace("from '
|
|
80
|
+
.replace("from '@byline/generated-types'", "from './generated.js'"));
|
|
60
81
|
typeProject.createSourceFile('/contract.ts', `
|
|
61
82
|
import type { WithPopulated } from './client.js'
|
|
62
83
|
import type { DocsFields, MediaFields, PagesFields } from './generated.js'
|
|
@@ -102,8 +123,7 @@ describe('public block renderer templates', () => {
|
|
|
102
123
|
});
|
|
103
124
|
});
|
|
104
125
|
function contentBlockNames(collection) {
|
|
105
|
-
const content =
|
|
106
|
-
.getTypeAliasOrThrow(collection)
|
|
126
|
+
const content = generatedTypeAliasOrThrow(collection)
|
|
107
127
|
.getDescendantsOfKind(SyntaxKind.PropertySignature)
|
|
108
128
|
.find((property) => property.getName() === 'content');
|
|
109
129
|
const matches = content
|
|
@@ -113,7 +133,7 @@ function contentBlockNames(collection) {
|
|
|
113
133
|
return [...(matches ?? [])].map((match) => match[1]).filter((name) => name !== undefined);
|
|
114
134
|
}
|
|
115
135
|
function blockDiscriminant(blockName) {
|
|
116
|
-
const type =
|
|
136
|
+
const type = generatedTypeAliasOrThrow(blockName);
|
|
117
137
|
const discriminant = type
|
|
118
138
|
.getDescendantsOfKind(SyntaxKind.PropertySignature)
|
|
119
139
|
.find((property) => property.getName() === '_type')
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ui-template-contract.test.js","sourceRoot":"","sources":["../src/ui-template-contract.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"ui-template-contract.test.js","sourceRoot":"","sources":["../src/ui-template-contract.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,6 +2,7 @@ import { existsSync, mkdirSync, mkdtempSync, readFileSync, rmSync, writeFileSync
|
|
|
2
2
|
import { tmpdir } from 'node:os';
|
|
3
3
|
import { join } from 'node:path';
|
|
4
4
|
import { afterEach, describe, expect, it } from 'vitest';
|
|
5
|
+
import { CLI_PACKAGE_VERSION } from './lib/release-policy.js';
|
|
5
6
|
import { resolveWorkspaceOwnership, validateWorkspacePackageManager, workspaceManagerConstraint, } from './lib/workspace-root.js';
|
|
6
7
|
import { DEP_SPECS } from './manifest/deps.js';
|
|
7
8
|
import { depsPhase } from './phases/deps.js';
|
|
@@ -160,7 +161,10 @@ describe('workspace root ownership', () => {
|
|
|
160
161
|
const app = join(root, 'apps/webapp');
|
|
161
162
|
mkdirSync(join(root, 'packages/core'), { recursive: true });
|
|
162
163
|
writeFileSync(join(root, 'pnpm-workspace.yaml'), 'packages:\n - apps/*\n - packages/*\nallowBuilds:\n "@google/genai": true\n esbuild: true\n protobufjs: true\n sharp: true\n');
|
|
163
|
-
|
|
164
|
+
// The workspace-linked package's version must satisfy the CLI's derived
|
|
165
|
+
// release policy (`>=<cli version> <next major>`), which Changesets bumps
|
|
166
|
+
// every release — track it rather than pinning a literal that goes stale.
|
|
167
|
+
writeFileSync(join(root, 'packages/core/package.json'), `{"name":"@byline/core","version":"${CLI_PACKAGE_VERSION}"}\n`);
|
|
164
168
|
const dependencies = compatibleDependencies();
|
|
165
169
|
dependencies['@byline/core'] = 'workspace:*';
|
|
166
170
|
writeFileSync(join(app, 'package.json'), `${JSON.stringify({ dependencies })}\n`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-root.test.js","sourceRoot":"","sources":["../src/workspace-root.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workspace-root.test.js","sourceRoot":"","sources":["../src/workspace-root.test.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,77 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* This Source Code is subject to the terms of the Mozilla Public
|
|
3
|
-
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
4
|
-
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
5
|
-
*
|
|
6
|
-
* Copyright (c) Infonomic Company Limited
|
|
7
|
-
*/
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Typed, server-only access to this application's Byline clients.
|
|
11
|
-
*
|
|
12
|
-
* ```text
|
|
13
|
-
* generated/collection-types.ts
|
|
14
|
-
* `CollectionFieldsByPath`
|
|
15
|
-
* |
|
|
16
|
-
* v
|
|
17
|
-
* collections/index.ts --------------------.
|
|
18
|
-
* `BylineCollections` |
|
|
19
|
-
* v
|
|
20
|
-
* @byline/host-tanstack-start ------> clients.server.ts
|
|
21
|
-
* runtime client getters |
|
|
22
|
-
* v
|
|
23
|
-
* typed `get*BylineClient()` getters
|
|
24
|
-
* ```
|
|
25
|
-
*
|
|
26
|
-
* Why this boundary exists:
|
|
27
|
-
*
|
|
28
|
-
* The TanStack host owns the runtime admin, public, system, and viewer client
|
|
29
|
-
* singletons. It intentionally knows nothing about an application's collection
|
|
30
|
-
* schemas, so its getters cannot provide application-specific collection paths
|
|
31
|
-
* and field shapes. The generated `CollectionFieldsByPath` registry is exported
|
|
32
|
-
* as `BylineCollections` by `collections/index.ts`; this module joins the host
|
|
33
|
-
* getters and app registry once instead of repeating a type assertion at every
|
|
34
|
-
* server call site.
|
|
35
|
-
*
|
|
36
|
-
* Typical server usage:
|
|
37
|
-
*
|
|
38
|
-
* ```ts
|
|
39
|
-
* const publicClient = getPublicBylineClient() // anonymous published reads
|
|
40
|
-
* const viewerClient = getViewerBylineClient() // public or admin-preview reads
|
|
41
|
-
* const adminClient = getAdminBylineClient() // current admin request authority
|
|
42
|
-
* const systemClient = getSystemBylineClient() // trusted hooks and maintenance
|
|
43
|
-
* ```
|
|
44
|
-
*
|
|
45
|
-
* Calls to `client.collection('<collection-path>')` are therefore checked
|
|
46
|
-
* against this application's generated registry and return that collection's
|
|
47
|
-
* canonical generated field shape. `collection-types.contract.ts` separately
|
|
48
|
-
* proves that those generated shapes match the runtime schemas exactly.
|
|
49
|
-
*
|
|
50
|
-
* The `.server.ts` suffix is intentional. Import these getters only from server
|
|
51
|
-
* routes, loaders, actions, scripts, or lifecycle-hook modules; browser code
|
|
52
|
-
* must not cross this boundary.
|
|
53
|
-
*
|
|
54
|
-
* This module does not create client singletons, generate collection types, or
|
|
55
|
-
* configure the host. It only applies the app-specific client type and
|
|
56
|
-
* re-exports the host-owned getters (plus the viewer preview-state helper).
|
|
57
|
-
*/
|
|
58
|
-
import type { BylineClient } from '@byline/client'
|
|
59
|
-
import {
|
|
60
|
-
getAdminBylineClient as getHostAdminBylineClient,
|
|
61
|
-
getSystemBylineClient as getHostSystemBylineClient,
|
|
62
|
-
} from '@byline/host-tanstack-start/integrations/byline-client'
|
|
63
|
-
import { getPublicBylineClient as getHostPublicBylineClient } from '@byline/host-tanstack-start/integrations/byline-public-client'
|
|
64
|
-
import {
|
|
65
|
-
getViewerBylineClient as getHostViewerBylineClient,
|
|
66
|
-
isPreviewActive,
|
|
67
|
-
} from '@byline/host-tanstack-start/integrations/byline-viewer-client'
|
|
68
|
-
|
|
69
|
-
import type { BylineCollections } from './collections/index.js'
|
|
70
|
-
|
|
71
|
-
type AppBylineClient = BylineClient<BylineCollections>
|
|
72
|
-
|
|
73
|
-
export const getAdminBylineClient = getHostAdminBylineClient as () => AppBylineClient
|
|
74
|
-
export const getPublicBylineClient = getHostPublicBylineClient as () => AppBylineClient
|
|
75
|
-
export const getSystemBylineClient = getHostSystemBylineClient as () => AppBylineClient
|
|
76
|
-
export const getViewerBylineClient = getHostViewerBylineClient as () => AppBylineClient
|
|
77
|
-
export { isPreviewActive }
|