@astryxdesign/cli 0.6.3-canary.f22695a → 0.6.3
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/README.md +1 -2
- package/api/build/build.type.d.mts +2 -2
- package/api/build/build.type.mjs +2 -2
- package/api/component/component.type.d.mts +6 -6
- package/api/component/component.type.mjs +19 -19
- package/api/discover/discover.type.d.mts +4 -4
- package/api/discover/discover.type.mjs +10 -10
- package/api/docs/_adapter.d.mts +24 -37
- package/api/docs/_adapter.mjs +83 -169
- package/api/docs/detail/detail.mjs +63 -14
- package/api/docs/detail/section/section.d.mts +1 -1
- package/api/docs/detail/section/section.mjs +20 -44
- package/api/docs/detail/section/section.test.mjs +0 -41
- package/api/docs/docs.d.mts +2 -7
- package/api/docs/docs.doc.mjs +10 -27
- package/api/docs/docs.mjs +9 -16
- package/api/docs/docs.test.mjs +0 -6
- package/api/docs/docs.type.d.mts +3 -40
- package/api/docs/docs.type.mjs +8 -36
- package/api/docs/integrationDocs.test.mjs +0 -106
- package/api/doctor/doctor.d.mts +0 -48
- package/api/doctor/doctor.mjs +0 -232
- package/api/doctor/doctor.test.mjs +0 -196
- package/api/hook/hook.type.d.mts +3 -3
- package/api/hook/hook.type.mjs +11 -11
- package/api/hook/list/list.d.mts +1 -1
- package/api/integration/add-contribution.mjs +3 -5
- package/api/integration/add-contribution.test.mjs +4 -4
- package/api/integration/integration-authoring.type.d.mts +1 -1
- package/api/integration/pack-check.mjs +7 -49
- package/api/integration/pack-check.test.mjs +0 -249
- package/api/search/search.d.mts +1 -1
- package/api/search/search.mjs +5 -5
- package/api/search/search.type.d.mts +2 -2
- package/api/search/search.type.mjs +1 -1
- package/api/swizzle/swizzle.type.d.mts +2 -2
- package/api/swizzle/swizzle.type.mjs +2 -2
- package/api/template/template.d.mts +1 -1
- package/api/template/template.type.d.mts +6 -6
- package/api/template/template.type.mjs +12 -12
- package/api/theme/build/build.mjs +6 -20
- package/api/theme/build/build.test.mjs +0 -127
- package/api/theme/palette/generate/generate.mjs +1 -1
- package/api/theme/palette/generate/generator.d.mts +13 -10
- package/api/theme/palette/generate/generator.mjs +3 -7
- package/api/theme/theme.type.d.mts +11 -170
- package/api/theme/theme.type.mjs +27 -94
- package/api/upgrade/_adapter.mjs +5 -71
- package/api/upgrade/upgrade.doc.mjs +3 -4
- package/api/upgrade/upgrade.type.d.mts +5 -5
- package/api/upgrade/upgrade.type.mjs +11 -11
- package/assets/codemods/integration-discovery.mjs +2 -40
- package/assets/codemods/integration-discovery.test.mjs +0 -58
- package/assets/codemods/transforms/v0.3.0/__tests__/unwrap-authoring-factories.test.mjs +5 -27
- package/assets/codemods/transforms/v0.3.0/unwrap-authoring-factories.mjs +5 -20
- package/assets/docs/README.md +0 -9
- package/assets/docs/cli-integrations.doc.mjs +15 -86
- package/assets/docs/styling-libraries.doc.mjs +1 -1
- package/assets/docs/working-with-ai.doc.mjs +1 -1
- package/assets/templates/blocks/components/Toolbar/ToolbarTableFilter.doc.mjs +3 -19
- package/assets/templates/blocks/components/Toolbar/ToolbarTableFilter.tsx +65 -383
- package/authoring/_shared/contract.ts +0 -22
- package/authoring/codemod/codemod.doc.mjs +1 -6
- package/authoring/codemod/parse.d.mts +8 -8
- package/authoring/codemod/parse.mjs +6 -8
- package/authoring/config/parse.d.mts +13 -13
- package/authoring/config/parse.mjs +8 -8
- package/authoring/config/type.ts +3 -3
- package/authoring/debug/parse.d.mts +5 -5
- package/authoring/debug/parse.mjs +3 -3
- package/authoring/doctypes/_schema.d.mts +23 -788
- package/authoring/doctypes/_schema.mjs +39 -492
- package/authoring/doctypes/base/type.ts +0 -40
- package/authoring/doctypes/command/command.doc.mjs +2 -3
- package/authoring/doctypes/command/parse.d.mts +2 -2
- package/authoring/doctypes/command/parse.mjs +1 -1
- package/authoring/doctypes/command/type.ts +2 -3
- package/authoring/doctypes/component/component.doc.mjs +3 -6
- package/authoring/doctypes/component/parse.d.mts +2 -2
- package/authoring/doctypes/component/parse.mjs +1 -1
- package/authoring/doctypes/component/type.ts +3 -4
- package/authoring/doctypes/enum/parse.d.mts +2 -2
- package/authoring/doctypes/enum/parse.mjs +1 -1
- package/authoring/doctypes/enum/type.ts +1 -3
- package/authoring/doctypes/function/function.doc.mjs +0 -4
- package/authoring/doctypes/function/parse.d.mts +2 -2
- package/authoring/doctypes/function/parse.mjs +1 -1
- package/authoring/doctypes/function/type.ts +2 -6
- package/authoring/doctypes/hook/hook.doc.mjs +0 -4
- package/authoring/doctypes/hook/parse.d.mts +2 -2
- package/authoring/doctypes/hook/parse.mjs +1 -1
- package/authoring/doctypes/hook/type.ts +2 -3
- package/authoring/doctypes/legacy.d.mts +6 -8
- package/authoring/doctypes/legacy.mjs +4 -5
- package/authoring/doctypes/parse.d.mts +18 -20
- package/authoring/doctypes/parse.mjs +10 -16
- package/authoring/doctypes/parse.test.mjs +3 -77
- package/authoring/doctypes/reference/parse.d.mts +2 -2
- package/authoring/doctypes/reference/parse.mjs +5 -8
- package/authoring/doctypes/reference/reference.doc.mjs +4 -17
- package/authoring/doctypes/reference/type.ts +5 -51
- package/authoring/doctypes/schema/parse.d.mts +2 -2
- package/authoring/doctypes/schema/parse.mjs +1 -1
- package/authoring/doctypes/schema/type.ts +2 -3
- package/authoring/doctypes/template/parse.d.mts +1 -92
- package/authoring/doctypes/template/parse.mjs +2 -36
- package/authoring/doctypes/template/parse.test.mjs +2 -8
- package/authoring/doctypes/template/template.doc.mjs +0 -4
- package/authoring/doctypes/template/type.ts +2 -5
- package/authoring/doctypes/types.ts +9 -10
- package/authoring/gap-report/parse.d.mts +10 -10
- package/authoring/gap-report/parse.mjs +6 -6
- package/authoring/gap-report/type.ts +1 -1
- package/authoring/index.d.mts +0 -1
- package/authoring/index.d.ts +17 -49
- package/authoring/index.mjs +0 -1
- package/authoring/integration/integration.doc.mjs +6 -13
- package/authoring/integration/parse.d.mts +2 -2
- package/authoring/integration/parse.mjs +1 -1
- package/authoring/integration/parse.test.mjs +1 -10
- package/authoring/integration/schema.d.mts +4 -6
- package/authoring/integration/schema.mjs +3 -9
- package/authoring/integration/type.ts +6 -23
- package/authoring/shadcn/receipt.d.mts +6 -6
- package/clients/cli/commands/docs.doc.mjs +3 -13
- package/clients/cli/commands/docs.mjs +21 -121
- package/clients/cli/commands/docs.test.mjs +0 -88
- package/clients/cli/commands/integration-authoring.test.mjs +9 -13
- package/clients/cli/commands/theme-palette-generate.doc.mjs +4 -8
- package/clients/cli/commands/upgrade.doc.mjs +2 -2
- package/clients/cli/formatters/index.mjs +1 -162
- package/clients/cli/formatters/index.test.mjs +0 -91
- package/clients/cli/lib/manifest.mjs +2 -7
- package/foundation/config/project.mjs +6 -21
- package/foundation/discovery/component-discovery.d.mts +1 -1
- package/foundation/discovery/component-discovery.mjs +1 -2
- package/foundation/discovery/docs-discovery.d.mts +4 -11
- package/foundation/discovery/docs-discovery.mjs +88 -208
- package/foundation/discovery/docs-discovery.test.mjs +13 -279
- package/foundation/discovery/template-adapter.mjs +1 -2
- package/foundation/integrations/autolink.mjs +5 -12
- package/foundation/integrations/integration-warnings.mjs +0 -6
- package/foundation/integrations/integrations.d.mts +2 -46
- package/foundation/integrations/integrations.mjs +8 -167
- package/foundation/integrations/integrations.test.mjs +1 -384
- package/foundation/integrations/validate-contributions.d.mts +0 -2
- package/foundation/integrations/validate-contributions.mjs +0 -10
- package/foundation/response/json-contract.test.mjs +17 -46
- package/foundation/response/response-types.doc.mjs +1 -6
- package/package.json +11 -9
- package/api/docs/compiled-topics.test.mjs +0 -78
- package/api/docs/index/index.d.mts +0 -18
- package/api/docs/index/index.mjs +0 -32
- package/api/docs/index/index.test.mjs +0 -62
- package/api/upgrade/project-context.test.mjs +0 -272
- package/assets/docs/authoring.doc.mjs +0 -14
- package/assets/templates/blocks/components/Timer/TimerFormats.doc.mjs +0 -14
- package/assets/templates/blocks/components/Timer/TimerFormats.tsx +0 -34
- package/assets/templates/blocks/components/Timer/TimerInline.doc.mjs +0 -14
- package/assets/templates/blocks/components/Timer/TimerInline.tsx +0 -14
- package/assets/templates/blocks/components/Timer/TimerShowcase.doc.mjs +0 -13
- package/assets/templates/blocks/components/Timer/TimerShowcase.tsx +0 -47
- package/assets/templates/blocks/components/Timer/TimerTypography.doc.mjs +0 -14
- package/assets/templates/blocks/components/Timer/TimerTypography.tsx +0 -31
- package/authoring/doctypes/base/graph-fields.doc.d.mts +0 -9
- package/authoring/doctypes/base/graph-fields.doc.mjs +0 -62
- package/authoring/doctypes/load-contract.test.mjs +0 -207
- package/authoring/doctypes/namespace/namespace.doc.d.mts +0 -9
- package/authoring/doctypes/namespace/namespace.doc.mjs +0 -132
- package/authoring/doctypes/namespace/parse.d.mts +0 -12
- package/authoring/doctypes/namespace/parse.mjs +0 -25
- package/authoring/doctypes/namespace/parse.test.mjs +0 -165
- package/authoring/doctypes/namespace/type.ts +0 -71
- package/authoring/identity/identity.doc.d.mts +0 -9
- package/authoring/identity/identity.doc.mjs +0 -61
- package/authoring/identity/type.ts +0 -132
- package/foundation/discovery/authoring-self-docs.d.mts +0 -69
- package/foundation/discovery/authoring-self-docs.mjs +0 -214
- package/foundation/discovery/authoring-self-docs.test.mjs +0 -154
- package/foundation/discovery/docs-output-budget.d.mts +0 -28
- package/foundation/discovery/docs-output-budget.mjs +0 -50
- package/foundation/discovery/docs-section-key.d.mts +0 -98
- package/foundation/discovery/docs-section-key.mjs +0 -221
- package/foundation/discovery/docs-section-key.test.mjs +0 -224
- package/foundation/doc-compiler/compile.d.mts +0 -162
- package/foundation/doc-compiler/compile.mjs +0 -262
- package/foundation/doc-compiler/doc-compiler.test.mjs +0 -687
- package/foundation/doc-compiler/ir.d.mts +0 -9
- package/foundation/doc-compiler/ir.mjs +0 -287
- package/foundation/doc-compiler/lenses.d.mts +0 -33
- package/foundation/doc-compiler/lenses.mjs +0 -127
- package/foundation/identity/provider-identity.d.mts +0 -90
- package/foundation/identity/provider-identity.mjs +0 -320
- package/foundation/identity/provider-identity.test.mjs +0 -254
- package/foundation/identity/providers.d.mts +0 -7
- package/foundation/identity/providers.mjs +0 -16
- package/foundation/integrations/provider-conflicts.test.mjs +0 -125
|
@@ -8,9 +8,6 @@ import {
|
|
|
8
8
|
list,
|
|
9
9
|
record,
|
|
10
10
|
records,
|
|
11
|
-
wrapText,
|
|
12
|
-
displayWidth,
|
|
13
|
-
WRAP_WIDTH,
|
|
14
11
|
code,
|
|
15
12
|
Block,
|
|
16
13
|
BULLET,
|
|
@@ -151,91 +148,3 @@ describe('emit', () => {
|
|
|
151
148
|
expect(spy).not.toHaveBeenCalled();
|
|
152
149
|
});
|
|
153
150
|
});
|
|
154
|
-
|
|
155
|
-
describe('wrapText', () => {
|
|
156
|
-
it('leaves short lines and its own line breaks alone', () => {
|
|
157
|
-
expect(wrapText('a b\nc')).toBe('a b\nc');
|
|
158
|
-
});
|
|
159
|
-
|
|
160
|
-
it('wraps at the width with a hanging indent', () => {
|
|
161
|
-
expect(wrapText('aaa bbb ccc', {width: 7, indent: ' '})).toBe('aaa bbb\n ccc');
|
|
162
|
-
});
|
|
163
|
-
|
|
164
|
-
it('keeps a word longer than the width whole', () => {
|
|
165
|
-
expect(wrapText('x '.concat('y'.repeat(20)), {width: 10})).toBe(
|
|
166
|
-
`x\n${'y'.repeat(20)}`,
|
|
167
|
-
);
|
|
168
|
-
});
|
|
169
|
-
});
|
|
170
|
-
|
|
171
|
-
describe('records inline layout', () => {
|
|
172
|
-
const items = [
|
|
173
|
-
{id: 'a', title: 'Alpha', summary: 'First.'},
|
|
174
|
-
{id: 'bbb', title: 'Beta', summary: ''},
|
|
175
|
-
];
|
|
176
|
-
|
|
177
|
-
it('puts one record on each line under a padded first column', () => {
|
|
178
|
-
expect(
|
|
179
|
-
records(items, {fields: ['id', 'title', 'summary'], layout: 'inline'}).toString(),
|
|
180
|
-
).toBe('a Alpha - First.\nbbb Beta');
|
|
181
|
-
});
|
|
182
|
-
|
|
183
|
-
it('wraps a long record under the first column', () => {
|
|
184
|
-
const out = records([{id: 'a', text: 'word '.repeat(40).trim()}], {
|
|
185
|
-
layout: 'inline',
|
|
186
|
-
}).toString();
|
|
187
|
-
expect(out.split('\n').length).toBeGreaterThan(1);
|
|
188
|
-
expect(out.split('\n').every(line => line.length <= WRAP_WIDTH)).toBe(true);
|
|
189
|
-
expect(out.split('\n')[1].startsWith(' word')).toBe(true);
|
|
190
|
-
});
|
|
191
|
-
|
|
192
|
-
it('keeps the first column padded on a record that wraps', () => {
|
|
193
|
-
const out = records(
|
|
194
|
-
[
|
|
195
|
-
{id: 'a', text: 'word '.repeat(40).trim()},
|
|
196
|
-
{id: 'longer', text: 'x'},
|
|
197
|
-
],
|
|
198
|
-
{layout: 'inline'},
|
|
199
|
-
).toString();
|
|
200
|
-
const lines = out.split('\n');
|
|
201
|
-
expect(lines[0].startsWith(`a${' '.repeat(7)}word`)).toBe(true);
|
|
202
|
-
expect(lines[1].startsWith(' '.repeat(8) + 'word')).toBe(true);
|
|
203
|
-
expect(lines.at(-1)).toBe('longer x');
|
|
204
|
-
expect(lines.every(line => line.length <= WRAP_WIDTH)).toBe(true);
|
|
205
|
-
});
|
|
206
|
-
|
|
207
|
-
it('cuts a long record to one line when asked', () => {
|
|
208
|
-
const out = records([{id: 'a', text: 'word '.repeat(40).trim()}], {
|
|
209
|
-
layout: 'inline',
|
|
210
|
-
overflow: 'truncate',
|
|
211
|
-
}).toString();
|
|
212
|
-
expect(out.includes('\n')).toBe(false);
|
|
213
|
-
expect(out.length).toBeLessThanOrEqual(WRAP_WIDTH);
|
|
214
|
-
expect(out.endsWith('...')).toBe(true);
|
|
215
|
-
});
|
|
216
|
-
});
|
|
217
|
-
|
|
218
|
-
describe('wide characters', () => {
|
|
219
|
-
it('counts CJK characters as two columns', () => {
|
|
220
|
-
expect(displayWidth('亮/暗模式')).toBe(9);
|
|
221
|
-
});
|
|
222
|
-
|
|
223
|
-
it('wraps CJK text, which has no spaces, by columns', () => {
|
|
224
|
-
const out = wrapText('中'.repeat(100), {width: 20});
|
|
225
|
-
expect(out.split('\n').every(line => displayWidth(line) <= 20)).toBe(true);
|
|
226
|
-
expect(out.split('\n')).toHaveLength(10);
|
|
227
|
-
});
|
|
228
|
-
|
|
229
|
-
it('keeps spaces between Latin words next to CJK', () => {
|
|
230
|
-
expect(wrapText('运行 astryx docs 查看', {width: 200})).toBe('运行 astryx docs 查看');
|
|
231
|
-
});
|
|
232
|
-
|
|
233
|
-
it('cuts an inline record to columns, not characters', () => {
|
|
234
|
-
const out = records([{id: 'a', text: '中'.repeat(100)}], {
|
|
235
|
-
layout: 'inline',
|
|
236
|
-
overflow: 'truncate',
|
|
237
|
-
}).toString();
|
|
238
|
-
expect(displayWidth(out)).toBeLessThanOrEqual(WRAP_WIDTH);
|
|
239
|
-
expect(out.endsWith('...')).toBe(true);
|
|
240
|
-
});
|
|
241
|
-
});
|
|
@@ -55,7 +55,7 @@ export const RESPONSE_TYPES = {
|
|
|
55
55
|
'component.detail.showcase',
|
|
56
56
|
'component.detail.blocks',
|
|
57
57
|
],
|
|
58
|
-
docs: ['docs.list', 'docs.
|
|
58
|
+
docs: ['docs.list', 'docs.detail', 'docs.detail.section'],
|
|
59
59
|
blog: ['blog.list', 'blog.detail'],
|
|
60
60
|
discover: [
|
|
61
61
|
'discover.list',
|
|
@@ -105,12 +105,7 @@ const EXAMPLES = {
|
|
|
105
105
|
'astryx component XDSButton',
|
|
106
106
|
'astryx component XDSButton --props --json',
|
|
107
107
|
],
|
|
108
|
-
docs: [
|
|
109
|
-
'astryx docs',
|
|
110
|
-
'astryx docs spacing --json',
|
|
111
|
-
'astryx docs theme --index',
|
|
112
|
-
'astryx docs theme quick-start',
|
|
113
|
-
],
|
|
108
|
+
docs: ['astryx docs', 'astryx docs spacing --json'],
|
|
114
109
|
discover: ['astryx discover --json'],
|
|
115
110
|
search: [
|
|
116
111
|
'astryx search modal --json',
|
|
@@ -38,7 +38,6 @@ import {parseConfig} from '../../authoring/config/parse.mjs';
|
|
|
38
38
|
import {
|
|
39
39
|
loadIntegrations,
|
|
40
40
|
loadLocalIntegration,
|
|
41
|
-
markProviderConflicts,
|
|
42
41
|
} from '../integrations/integrations.mjs';
|
|
43
42
|
import {autolinkIntegrations} from '../integrations/autolink.mjs';
|
|
44
43
|
import {
|
|
@@ -204,11 +203,10 @@ export class Project {
|
|
|
204
203
|
/** @type {ProjectIntegrationIssue[]} */
|
|
205
204
|
#issues = [];
|
|
206
205
|
/**
|
|
207
|
-
*
|
|
208
|
-
* discovery method or a direct issues() validation), so issues() can
|
|
209
|
-
* only the ones not yet visited and never double-collect.
|
|
210
|
-
*
|
|
211
|
-
* @type {Set<object>}
|
|
206
|
+
* Package names of integrations whose issues have already been collected
|
|
207
|
+
* (via a discovery method or a direct issues() validation), so issues() can
|
|
208
|
+
* fill in only the ones not yet visited and never double-collect.
|
|
209
|
+
* @type {Set<string>}
|
|
212
210
|
*/
|
|
213
211
|
#visitedIssues = new Set();
|
|
214
212
|
|
|
@@ -279,8 +277,6 @@ export class Project {
|
|
|
279
277
|
loadedIntegrations = await loadIntegrations(integrations, {
|
|
280
278
|
cwd: projectDir,
|
|
281
279
|
fresh,
|
|
282
|
-
// Provider identity is resolved once, below, over the final set.
|
|
283
|
-
resolveProviders: false,
|
|
284
280
|
});
|
|
285
281
|
}
|
|
286
282
|
|
|
@@ -314,10 +310,6 @@ export class Project {
|
|
|
314
310
|
else loadedIntegrations[existing] = localIntegration;
|
|
315
311
|
}
|
|
316
312
|
|
|
317
|
-
// Autolinked and local packages can claim a provider ID that a configured
|
|
318
|
-
// package already holds, so identity is resolved once over the final set.
|
|
319
|
-
loadedIntegrations = markProviderConflicts(loadedIntegrations);
|
|
320
|
-
|
|
321
313
|
// The debug recorder resolves its settings synchronously, long before any
|
|
322
314
|
// command gets here, so this is where a project's `debug` block gets a
|
|
323
315
|
// turn. The event is not written until process exit, so settings applied
|
|
@@ -444,13 +436,6 @@ export class Project {
|
|
|
444
436
|
* @returns {string}
|
|
445
437
|
*/
|
|
446
438
|
#pkgLabel(integration) {
|
|
447
|
-
// A set-aside package is labelled name@version, so its issue never reads as
|
|
448
|
-
// the winner's, even when both share a package name.
|
|
449
|
-
if (integration?.__providerConflict) {
|
|
450
|
-
return integration.version
|
|
451
|
-
? `${integration.name}@${integration.version}`
|
|
452
|
-
: (integration.__spec ?? integration.name);
|
|
453
|
-
}
|
|
454
439
|
return integration?.name ?? integration?.__spec ?? '(integration)';
|
|
455
440
|
}
|
|
456
441
|
|
|
@@ -478,8 +463,8 @@ export class Project {
|
|
|
478
463
|
*/
|
|
479
464
|
async #collectIssues(integration) {
|
|
480
465
|
const pkg = this.#pkgLabel(integration);
|
|
481
|
-
if (this.#visitedIssues.has(
|
|
482
|
-
this.#visitedIssues.add(
|
|
466
|
+
if (this.#visitedIssues.has(pkg)) return;
|
|
467
|
+
this.#visitedIssues.add(pkg);
|
|
483
468
|
// A manifest that failed to load (throwing import / invalid shape) is
|
|
484
469
|
// recorded as a marker by loadIntegrations — surface it as an issue and
|
|
485
470
|
// skip validation (there's no manifest to validate).
|
|
@@ -175,4 +175,4 @@ export function discoverOwnedComponents(coreDir: string, loadedIntegrations?: Ar
|
|
|
175
175
|
issuesUrl: string | undefined;
|
|
176
176
|
}>;
|
|
177
177
|
/** The owner package name for built-in (core) components. */
|
|
178
|
-
export const CORE_PACKAGE:
|
|
178
|
+
export const CORE_PACKAGE: "@astryxdesign/core";
|
|
@@ -7,12 +7,11 @@
|
|
|
7
7
|
import * as fs from 'node:fs';
|
|
8
8
|
import * as path from 'node:path';
|
|
9
9
|
import {existsCaseExact} from '../fs/paths.mjs';
|
|
10
|
-
import {CORE_PROVIDER_ID} from '../identity/providers.mjs';
|
|
11
10
|
|
|
12
11
|
const SKIP_DIRS = new Set(['hooks', 'utils', '__tests__', 'node_modules']);
|
|
13
12
|
|
|
14
13
|
/** The owner package name for built-in (core) components. */
|
|
15
|
-
export const CORE_PACKAGE =
|
|
14
|
+
export const CORE_PACKAGE = '@astryxdesign/core';
|
|
16
15
|
|
|
17
16
|
/** Conventional doc-file suffixes for integration components (same-stem). */
|
|
18
17
|
const INTEGRATION_DOC_SUFFIXES = ['.doc.ts', '.doc.mjs', '.doc.js'];
|
|
@@ -72,10 +72,9 @@ export function discoverIntegrationDocs(integration: {
|
|
|
72
72
|
errors: Error[];
|
|
73
73
|
}>;
|
|
74
74
|
/**
|
|
75
|
-
* Merge an extension onto a base topic: a section
|
|
76
|
-
* the base section
|
|
77
|
-
* title
|
|
78
|
-
* are taken from the extension when it states them.
|
|
75
|
+
* Merge an extension onto a base topic: a section whose title matches one in
|
|
76
|
+
* the base replaces it, a section the base does not have is appended, and the
|
|
77
|
+
* title/description are taken from the extension when it states them.
|
|
79
78
|
*
|
|
80
79
|
* Keyed by section TITLE rather than by position, the way the localization
|
|
81
80
|
* overlays are — position keying grafts an overlay onto whichever section
|
|
@@ -87,17 +86,12 @@ export function discoverIntegrationDocs(integration: {
|
|
|
87
86
|
* @returns {any} a new doc; neither input is mutated
|
|
88
87
|
*/
|
|
89
88
|
export function mergeTopic(base: any, overlay: any): any;
|
|
90
|
-
export { withSourceTitle };
|
|
91
89
|
/**
|
|
92
90
|
* Owner package recorded for the built-in topics. They ship inside the CLI
|
|
93
91
|
* (assets/docs), not in @astryxdesign/core, so this is the CLI's own name —
|
|
94
92
|
* unlike component discovery, whose built-ins belong to core.
|
|
95
93
|
*/
|
|
96
|
-
export const BUILTIN_DOCS_PACKAGE:
|
|
97
|
-
/** Blocks that are valid authoring but require the compiled graph renderer. */
|
|
98
|
-
export const GRAPH_BLOCK_TYPES: Set<string>;
|
|
99
|
-
/** Doc fields only the docs graph reads; a topic that sets one fails to load. */
|
|
100
|
-
export const GRAPH_ONLY_FIELDS: string[];
|
|
94
|
+
export const BUILTIN_DOCS_PACKAGE: "@astryxdesign/cli";
|
|
101
95
|
/**
|
|
102
96
|
* Every topic a project can read, and the relationships between them.
|
|
103
97
|
*
|
|
@@ -189,4 +183,3 @@ export type DocsTopicEntry = {
|
|
|
189
183
|
path: string;
|
|
190
184
|
}>;
|
|
191
185
|
};
|
|
192
|
-
import { withSourceTitle } from './docs-section-key.mjs';
|