jamdesk 1.1.215 → 1.1.217
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/__tests__/unit/migrate-resolve-theme.test.js +4 -6
- package/dist/__tests__/unit/migrate-resolve-theme.test.js.map +1 -1
- package/dist/commands/migrate/index.d.ts.map +1 -1
- package/dist/commands/migrate/index.js +1 -4
- package/dist/commands/migrate/index.js.map +1 -1
- package/dist/commands/migrate/types.d.ts +1 -1
- package/dist/commands/migrate/types.d.ts.map +1 -1
- package/dist/commands/migrate/types.js +2 -3
- package/dist/commands/migrate/types.js.map +1 -1
- package/package.json +1 -1
- package/vendored/app/api/og/route.tsx +60 -55
- package/vendored/lib/docs-types.ts +17 -0
- package/vendored/lib/og-card.ts +119 -0
- package/vendored/lib/seo.ts +197 -60
- package/vendored/lib/theme-preview.ts +3 -5
- package/vendored/schema/docs-schema.json +40 -0
- package/vendored/themes/index.ts +5 -0
- package/vendored/themes/types.ts +7 -0
- package/vendored/workspace-package-lock.json +61 -61
- package/dist/__tests__/unit/dusk-embargo.test.d.ts +0 -2
- package/dist/__tests__/unit/dusk-embargo.test.d.ts.map +0 -1
- package/dist/__tests__/unit/dusk-embargo.test.js +0 -26
- package/dist/__tests__/unit/dusk-embargo.test.js.map +0 -1
- package/dist/lib/dusk-embargo.d.ts +0 -15
- package/dist/lib/dusk-embargo.d.ts.map +0 -1
- package/dist/lib/dusk-embargo.js +0 -15
- package/dist/lib/dusk-embargo.js.map +0 -1
- package/vendored/lib/dusk-embargo.ts +0 -16
|
@@ -37,14 +37,12 @@ describe('migrate/resolveTheme', () => {
|
|
|
37
37
|
expect(resolveTheme({ verbose: false, yes: true }, true, 'mint')).toBe('jam');
|
|
38
38
|
expect(resolveTheme({ verbose: false }, true, 'mint')).toBeNull();
|
|
39
39
|
});
|
|
40
|
-
//
|
|
41
|
-
//
|
|
42
|
-
|
|
43
|
-
// instead of silently being rewritten to jam.
|
|
44
|
-
it('accepts dusk as an explicit --theme while embargoed', () => {
|
|
40
|
+
// An existing or explicit dusk theme must round-trip unchanged instead of
|
|
41
|
+
// silently being rewritten to jam.
|
|
42
|
+
it('accepts dusk as an explicit --theme', () => {
|
|
45
43
|
expect(resolveTheme({ verbose: false, theme: 'dusk' }, false, undefined)).toBe('dusk');
|
|
46
44
|
});
|
|
47
|
-
it('preserves an existing dusk theme for legacy Jamdesk configs
|
|
45
|
+
it('preserves an existing dusk theme for legacy Jamdesk configs', () => {
|
|
48
46
|
expect(resolveTheme({ verbose: false }, true, 'dusk')).toBe('dusk');
|
|
49
47
|
expect(resolveTheme({ verbose: false, yes: true }, true, 'dusk')).toBe('dusk');
|
|
50
48
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrate-resolve-theme.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-resolve-theme.test.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"migrate-resolve-theme.test.js","sourceRoot":"","sources":["../../../src/__tests__/unit/migrate-resolve-theme.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAmBH,OAAO,EAAsB,KAAK,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvF;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,gBAAgB,EACzB,eAAe,EAAE,OAAO,EACxB,aAAa,EAAE,OAAO,GACrB,SAAS,GAAG,IAAI,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAmBH,OAAO,EAAsB,KAAK,gBAAgB,EAAE,KAAK,SAAS,EAAE,MAAM,YAAY,CAAC;AAEvF;;;;GAIG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,gBAAgB,EACzB,eAAe,EAAE,OAAO,EACxB,aAAa,EAAE,OAAO,GACrB,SAAS,GAAG,IAAI,CAoBlB;AAgFD,wBAAsB,OAAO,CAAC,OAAO,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoatE"}
|
|
@@ -30,10 +30,7 @@ import { ALL_THEMES, THEMES } from './types.js';
|
|
|
30
30
|
* pure makes the non-interactive contract unit-testable.
|
|
31
31
|
*/
|
|
32
32
|
export function resolveTheme(options, isLegacyJamdesk, existingTheme) {
|
|
33
|
-
//
|
|
34
|
-
// explicit --theme or an existing docs.json theme naming an embargoed
|
|
35
|
-
// theme (e.g. dusk) is still a real Jamdesk theme and must round-trip
|
|
36
|
-
// unchanged, even though THEMES hides it from the prompt/default.
|
|
33
|
+
// An explicit --theme naming a real Jamdesk theme round-trips unchanged.
|
|
37
34
|
if (options.theme && ALL_THEMES.some((t) => t.name === options.theme)) {
|
|
38
35
|
return options.theme;
|
|
39
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/migrate/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,cAAc,EACd,mBAAmB,EACnB,aAAa,EACb,iBAAiB,GAClB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC1E,OAAO,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAyB,MAAM,wBAAwB,CAAC;AACvF,OAAO,EAAE,kBAAkB,EAA2B,MAAM,qBAAqB,CAAC;AAClF,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,EAAyC,MAAM,YAAY,CAAC;AAEvF;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAyB,EACzB,eAAwB,EACxB,aAAsB;IAEtB,yEAAyE;IACzE,IAAI,OAAO,CAAC,KAAK,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACtE,OAAO,OAAO,CAAC,KAAkB,CAAC;IACpC,CAAC;IACD,4EAA4E;IAC5E,2EAA2E;IAC3E,4EAA4E;IAC5E,oCAAoC;IACpC,IACE,eAAe;QACf,OAAO,aAAa,KAAK,QAAQ;QACjC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,aAAa,CAAC,EAChD,CAAC;QACD,OAAO,aAA0B,CAAC;IACpC,CAAC;IACD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;QAChB,OAAO,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,kDAAkD;IAC3E,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,gBAAgB,CACvB,MAAwB,EACxB,IAAgC,EAChC,OAAgB;IAEhB,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,IAAI,CAAC,IAAI,CAAC,iCAAiC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;IACtE,CAAC;SAAM,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,IAAI,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;IACjD,CAAC;SAAM,CAAC;QACN,MAAM,YAAY,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC;QAClE,MAAM,QAAQ,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,YAAY,CAAC;QACpD,IAAI,QAAQ,GAAG,CAAC,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YACrC,IAAI,CAAC,OAAO,CACV,SAAS,QAAQ,qCAAqC,YAAY,GAAG;gBACrE,oEAAoE,CACrE,CAAC;QACJ,CAAC;aAAM,IAAI,YAAY,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,OAAO,CACV,WAAW,YAAY,qCAAqC;gBAC5D,gDAAgD,CACjD,CAAC;QACJ,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,OAAO,CAAC,SAAS,MAAM,CAAC,KAAK,CAAC,MAAM,0BAA0B,CAAC,CAAC;QACvE,CAAC;QACD,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAChC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7C,MAAM,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IACD,IAAI,OAAO,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAClD,CAAC;IACH,CAAC;AACH,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC9B,UAAkB,EAClB,KAAe,EACf,OAAgB;IAEhB,MAAM,IAAI,GAAG,OAAO,CAAC,wDAAwD,CAAC,CAAC;IAC/E,IAAI,MAA0B,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QACxC,MAAM,CAAC,KAAK,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC/D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7D,IAAI,CAAC,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC9C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,CACV,gDAAgD,MAAM,CAAC,KAAK,CAAC,MAAM,UAAU,CAC9E,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YAC7B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC9F,CAAC;IACH,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;IACjE,CAAC;IAED,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;QACzC,MAAM,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,mCAAmC,CAAC,CAAC;QACzE,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IAED,OAAO,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAyB;IACrD,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;IAC5B,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAEjC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;IACnC,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,wCAAwC;IACxC,IAAI,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,yBAAyB,UAAU,EAAE,CAAC,CAAC;IAEhE,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;IAEhD,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,MAAM,CAAC,KAAK,CAAC,uDAAuD,CAAC,CAAC;QACtE,MAAM,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;QACzF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,OAAO;QAAE,MAAM,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE3D,0BAA0B;IAC1B,MAAM,UAAU,GAAG,cAAc,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACvD,MAAM,eAAe,GAAG,mBAAmB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IACjE,MAAM,iBAAiB,GAAG,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;IAE7D,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;QACrC,MAAM,CAAC,IAAI,CACT,4EAA4E,CAC7E,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,uEAAuE;IACvE,IAAI,iBAAiB,IAAI,CAAC,UAAU,IAAI,CAAC,eAAe,EAAE,CAAC;QACzD,IAAI,UAAU,GAAG,KAAK,CAAC;QAEvB,MAAM,SAAS,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;QAC3D,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAC9C,UAAU,EACV,YAAY,CAAC,MAAM,CACpB,CAAC;QACF,IAAI,WAAW,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;YAAE,UAAU,GAAG,IAAI,CAAC;QACpD,gBAAgB,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;QAElD,gEAAgE;QAChE,MAAM,OAAO,GAAG,OAAO,CAAC,iDAAiD,CAAC,CAAC;QAC3E,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,IAAI,SAAS,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,OAAO,CAAC,YAAY,SAAS,CAAC,aAAa,YAAY,SAAS,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAC3G,UAAU,GAAG,IAAI,CAAC;YAElB,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;oBACvC,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;oBACjC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpC,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,OAAO,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/F,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACxB,kEAAkE;gBAClE,kEAAkE;gBAClE,4CAA4C;gBAC5C,MAAM,CAAC,IAAI,CACT,GAAG,iBAAiB,CAAC,MAAM,wCAAwC;oBACnE,0EAA0E,CAC3E,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,8BAA8B,CAAC,CAAC;gBACvE,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;oBACvC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;wBACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,yCAAyC;QACzC,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;QAChD,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,WAAW,CAAC,mBAAmB,GAAG,CAAC;YACxD,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;YACxC,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;YACxC,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;QAE3C,IAAI,cAAc,EAAE,CAAC;YACnB,UAAU,GAAG,IAAI,CAAC;YAElB,IAAI,WAAW,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,CAAC,OAAO,CACZ,aAAa,WAAW,CAAC,mBAAmB,aAAa,WAAW,CAAC,mBAAmB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,0BAA0B,CACpI,CAAC;YACJ,CAAC;YAED,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,OAAO,CAAC,aAAa,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAChG,CAAC;YAED,IAAI,WAAW,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,qCAAqC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACjG,CAAC;YAED,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;gBAC/E,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;oBACtD,MAAM,CAAC,IAAI,CAAC,OAAO,SAAS,CAAC,YAAY,mDAAmD,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBAC/I,CAAC;YACH,CAAC;YAED,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,8CAA8C,CAAC,CAAC;gBAC5D,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;oBACpD,MAAM,CAAC,IAAI,CAAC,OAAO,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,YAAY,iBAAiB,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;YAED,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;gBACjC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBACrC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,WAAW,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC9F,CAAC;YACH,CAAC;YAED,IAAI,WAAW,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;QAED,uEAAuE;QACvE,sEAAsE;QACtE,mEAAmE;QACnE,YAAY;QACZ,IAAI,MAAM,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC;YAAE,UAAU,GAAG,IAAI,CAAC;QAE9E,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;YACxB,mEAAmE;YACnE,kEAAkE;YAClE,gCAAgC;QAClC,CAAC;aAAM,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxC,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,CAAC,IAAI,CACT,GAAG,iBAAiB,CAAC,MAAM,wCAAwC;gBACnE,+DAA+D,CAChE,CAAC;YACF,MAAM,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;QACpG,CAAC;aAAM,IAAI,UAAU,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,MAAM,CAAC,OAAO,CAAC,+CAA+C,CAAC,CAAC;QAClE,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,OAAO,CAAC,6CAA6C,CAAC,CAAC;QAChE,CAAC;QAED,OAAO;IACT,CAAC;IAED,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,CAAC,OAAO,CAAC,8BAA8B,YAAY,CAAC,QAAQ,EAAE,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CAAC,wDAAwD,CAAC,CAAC;IAC3E,CAAC;IAED,wEAAwE;IACxE,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QACjB,MAAM,OAAO,GAAG,MAAM,uBAAuB,EAAE,CAAC;QAChD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;YACpC,OAAO;QACT,CAAC;IACH,CAAC;IAED,yFAAyF;IACzF,MAAM,aAAa,GAAG,YAAY,CAChC,OAAO,EACP,eAAe,EACf,YAAY,CAAC,MAAM,CAAC,KAAK,CAC1B,CAAC;IACF,MAAM,KAAK,GAAc,aAAa,IAAI,CAAC,MAAM,WAAW,EAAE,CAAC,CAAC;IAChE,IAAI,OAAO,IAAI,aAAa;QAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,KAAK,EAAE,CAAC,CAAC;IAEnE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,IAAI,OAAO,EAAE,CAAC;QACZ,MAAM,CAAC,IAAI,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC,UAAU,KAAK,EAAE,CAAC,CAAC;IACjC,CAAC;IAED,yCAAyC;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAAC;IAE3D,IAAI,CAAC;QACH,mEAAmE;QACnE,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC,UAAU,CAAC,CAAC;QAC5D,MAAM,aAAa,GAAG,wBAAwB,CAC5C,YAAY,CAAC,MAAM,EACnB,KAAK,EACL,eAAe,CAChB,CAAC;QACF,IAAI,OAAO,IAAI,eAAe,EAAE,CAAC;YAC/B,MAAM,GAAG,GAAG,aAAa,CAAC,GAAwC,CAAC;YACnE,IAAI,GAAG,EAAE,OAAO,KAAK,eAAe,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,4BAA4B,eAAe,EAAE,CAAC,CAAC;YAC7D,CAAC;QACH,CAAC;QAED,+CAA+C;QAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;QACzD,MAAM,EAAE,CAAC,SAAS,CAAC,aAAa,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC;QAEhE,iDAAiD;QACjD,IAAI,YAAY,CAAC,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC1C,MAAM,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;YACzD,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjC,MAAM,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;YACjC,CAAC;QACH,CAAC;QAED,WAAW,CAAC,OAAO,CAAC,yBAAyB,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,WAAW,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,sEAAsE;IACtE,qDAAqD;IACrD,MAAM,SAAS,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,CAAC;IACxE,MAAM,SAAS,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAAC;IAC3D,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;IACxE,gBAAgB,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAElD,4BAA4B;IAC5B,MAAM,OAAO,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAClD,IAAI,QAAQ,GAAa,EAAE,CAAC;IAC5B,IAAI,sBAAsB,GAAG,CAAC,CAAC;IAE/B,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,YAAY,CAAC,UAAU,CAAC,CAAC;QAC1C,MAAM,SAAS,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;QAEpD,IAAI,SAAS,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;YAChC,OAAO,CAAC,OAAO,CAAC,YAAY,SAAS,CAAC,aAAa,YAAY,SAAS,CAAC,aAAa,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;YAE3G,IAAI,OAAO,EAAE,CAAC;gBACZ,KAAK,MAAM,MAAM,IAAI,SAAS,CAAC,OAAO,EAAE,CAAC;oBACvC,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;oBACjC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpC,MAAM,CAAC,IAAI,CAAC,SAAS,MAAM,EAAE,CAAC,CAAC;oBACjC,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAC3C,CAAC;QAED,MAAM,iBAAiB,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC/F,sBAAsB,GAAG,iBAAiB,CAAC,MAAM,CAAC;QAClD,IAAI,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACjC,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACxB,MAAM,CAAC,IAAI,CACT,GAAG,iBAAiB,CAAC,MAAM,wCAAwC;oBACnE,0EAA0E,CAC3E,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,MAAM,8BAA8B,CAAC,CAAC;gBACvE,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;oBACvC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,QAAQ,IAAI,EAAE,EAAE,CAAC;wBACtC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;oBAC1B,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC;QAC5C,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,+DAA+D;IAC/D,MAAM,SAAS,GAAG,OAAO,CAAC,kDAAkD,CAAC,CAAC;IAE9E,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,MAAM,sBAAsB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAEvE,MAAM,cAAc,GAAG,WAAW,CAAC,mBAAmB,GAAG,CAAC;YACxD,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;YACxC,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;YACxC,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC;QAE3C,IAAI,cAAc,EAAE,CAAC;YACnB,IAAI,WAAW,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;gBACxC,SAAS,CAAC,OAAO,CACf,aAAa,WAAW,CAAC,mBAAmB,aAAa,WAAW,CAAC,mBAAmB,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,0BAA0B,CACpI,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,SAAS,CAAC,OAAO,CAAC,6BAA6B,CAAC,CAAC;YACnD,CAAC;YAED,uBAAuB;YACvB,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,OAAO,CAAC,eAAe,WAAW,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAClG,CAAC;YAED,+BAA+B;YAC/B,IAAI,WAAW,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,MAAM,CAAC,IAAI,CAAC,2CAA2C,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACvG,CAAC;YAED,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,mEAAmE,CAAC,CAAC;gBACjF,KAAK,MAAM,SAAS,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;oBACtD,MAAM,CAAC,IAAI,CAAC,SAAS,SAAS,CAAC,YAAY,mDAAmD,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;gBACjJ,CAAC;YACH,CAAC;YAED,gCAAgC;YAChC,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBAClE,KAAK,MAAM,OAAO,IAAI,WAAW,CAAC,iBAAiB,EAAE,CAAC;oBACpD,MAAM,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,IAAI,MAAM,OAAO,CAAC,YAAY,iBAAiB,CAAC,CAAC;gBAChF,CAAC;YACH,CAAC;YAED,kEAAkE;YAClE,KAAK,MAAM,MAAM,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACzC,MAAM,CAAC,IAAI,CAAC,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,CAAC;gBACjC,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;oBACrC,MAAM,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,MAAM,IAAI,CAAC,WAAW,cAAc,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC9F,CAAC;YACH,CAAC;YAED,IAAI,WAAW,CAAC,mBAAmB,GAAG,CAAC,EAAE,CAAC;gBACxC,MAAM,CAAC,IAAI,CAAC,iFAAiF,CAAC,CAAC;YACjG,CAAC;QACH,CAAC;aAAM,CAAC;YACN,SAAS,CAAC,OAAO,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,SAAS,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC;QACpD,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,yEAAyE;IACzE,wEAAwE;IACxE,yCAAyC;IACzC,MAAM,iBAAiB,CAAC,UAAU,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEvD,qDAAqD;IACrD,MAAM,cAAc,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IACjD,IAAI,aAAa,GAAG,KAAK,CAAC;IAC1B,IAAI,aAAa,GAAG,EAAE,CAAC;IAEvB,IAAI,cAAc,KAAK,UAAU,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC;QAClD,oEAAoE;QACpE,wCAAwC;QACxC,MAAM,YAAY,GAAG,MAAM,kBAAkB,EAAE,CAAC;QAEhD,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;YAC3C,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YAEhD,yCAAyC;YACzC,IAAI,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;YAC3F,CAAC;iBAAM,CAAC;gBACN,MAAM,UAAU,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;gBACjD,IAAI,CAAC;oBACH,MAAM,EAAE,CAAC,MAAM,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;oBAC3C,wDAAwD;oBACxD,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;oBAC7B,aAAa,GAAG,IAAI,CAAC;oBACrB,UAAU,CAAC,OAAO,CAAC,4BAA4B,CAAC,CAAC;gBACnD,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,UAAU,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;oBAC3C,MAAM,CAAC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;oBACrE,MAAM,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,gBAAgB;IAChB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,yEAAyE;IACzE,IAAI,WAAW,CAAC,OAAO;QAAE,OAAO;IAEhC,MAAM,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACtC,IAAI,gBAAgB,CAAC,SAAoC,CAAC,EAAE,CAAC;QAC3D,MAAM,CAAC,IAAI,CACT,kFAAkF;YAClF,kFAAkF;YAClF,kCAAkC,CACnC,CAAC;IACJ,CAAC;IACD,IAAI,sBAAsB,GAAG,CAAC,EAAE,CAAC;QAC/B,MAAM,CAAC,IAAI,CACT,GAAG,sBAAsB,2DAA2D;YACpF,4EAA4E;YAC5E,qDAAqD,CACtD,CAAC;IACJ,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;IAC3B,IAAI,aAAa,EAAE,CAAC;QAClB,MAAM,CAAC,IAAI,CAAC,SAAS,aAAa,EAAE,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACrC,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,oCAAoC,CAAC,CAAC;QAClD,MAAM,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
|
|
@@ -18,7 +18,7 @@ export interface ThemeOption {
|
|
|
18
18
|
}
|
|
19
19
|
export declare const ALL_THEMES: ThemeOption[];
|
|
20
20
|
export declare const THEMES: ThemeOption[];
|
|
21
|
-
/** "jam, nebula, pulsar, halo" — the names the help text advertises. */
|
|
21
|
+
/** "jam, nebula, pulsar, halo, dusk" — the names the help text advertises. */
|
|
22
22
|
export declare function themeListText(): string;
|
|
23
23
|
export declare const JAMDESK_SCHEMA_URL = "https://www.jamdesk.com/docs.json";
|
|
24
24
|
export declare const MINTLIFY_SCHEMA_URL = "https://mintlify.com/schema.json";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/commands/migrate/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC;AAEzC,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,MAAM,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtE,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,UAAU,EAAE,WAAW,EA0BnC,CAAC;AAGF,eAAO,MAAM,MAAM,EAAE,WAAW,EAAe,CAAC;AAEhD,8EAA8E;AAC9E,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED,eAAO,MAAM,kBAAkB,sCAAsC,CAAC;AACtE,eAAO,MAAM,mBAAmB,qCAAqC,CAAC"}
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
* Supports converting Mintlify mint.json structure to Jamdesk docs.json format.
|
|
5
5
|
* Designed to be extensible for future migration sources (GitBook, etc.).
|
|
6
6
|
*/
|
|
7
|
-
import { DUSK_PUBLIC } from '../../lib/dusk-embargo.js';
|
|
8
7
|
export const ALL_THEMES = [
|
|
9
8
|
{
|
|
10
9
|
name: 'jam',
|
|
@@ -33,8 +32,8 @@ export const ALL_THEMES = [
|
|
|
33
32
|
},
|
|
34
33
|
];
|
|
35
34
|
// jam stays first: it is the non-interactive default (THEMES[0]).
|
|
36
|
-
export const THEMES = ALL_THEMES
|
|
37
|
-
/** "jam, nebula, pulsar, halo" — the names the help text advertises. */
|
|
35
|
+
export const THEMES = ALL_THEMES;
|
|
36
|
+
/** "jam, nebula, pulsar, halo, dusk" — the names the help text advertises. */
|
|
38
37
|
export function themeListText() {
|
|
39
38
|
return THEMES.map((t) => t.name).join(', ');
|
|
40
39
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/migrate/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/commands/migrate/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,MAAM,CAAC,MAAM,UAAU,GAAkB;IACvC;QACE,IAAI,EAAE,KAAK;QACX,WAAW,EAAE,KAAK;QAClB,WAAW,EAAE,mDAAmD;KACjE;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE,6CAA6C;KAC3D;IACD;QACE,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,QAAQ;QACrB,WAAW,EAAE,kDAAkD;KAChE;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,uDAAuD;KACrE;IACD;QACE,IAAI,EAAE,MAAM;QACZ,WAAW,EAAE,MAAM;QACnB,WAAW,EAAE,0DAA0D;KACxE;CACF,CAAC;AAEF,kEAAkE;AAClE,MAAM,CAAC,MAAM,MAAM,GAAkB,UAAU,CAAC;AAEhD,8EAA8E;AAC9E,MAAM,UAAU,aAAa;IAC3B,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,MAAM,CAAC,MAAM,kBAAkB,GAAG,mCAAmC,CAAC;AACtE,MAAM,CAAC,MAAM,mBAAmB,GAAG,kCAAkC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "jamdesk",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.217",
|
|
4
4
|
"description": "CLI for Jamdesk — build, preview, and deploy documentation sites from MDX. Dev server with hot reload, 50+ components, OpenAPI support, AI search, and Mintlify migration",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"jamdesk",
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
import { ImageResponse } from '@vercel/og';
|
|
2
2
|
import { NextRequest } from 'next/server';
|
|
3
3
|
import { sanitizeLogoUrl } from '@/lib/sanitize-url';
|
|
4
|
+
import { parseCardOptions } from '@/lib/og-card';
|
|
4
5
|
|
|
5
6
|
export const runtime = 'edge';
|
|
6
7
|
|
|
7
|
-
//
|
|
8
|
-
const ACCENT_COLOR = '#ff3621';
|
|
9
|
-
const ACCENT_GRADIENT = `linear-gradient(90deg, ${ACCENT_COLOR} 0%, #e02e1a 50%, #c4200f 100%)`;
|
|
10
|
-
const BG_GRADIENT = 'linear-gradient(135deg, #faf8f5 0%, #f3f0eb 100%)';
|
|
11
|
-
const TEXT_COLOR = '#1b3139';
|
|
12
|
-
const MUTED_COLOR = '#5a6b73';
|
|
13
|
-
const BADGE_BG = `rgba(255, 54, 33, 0.08)`; // ACCENT_COLOR at 8% opacity
|
|
8
|
+
// Colors live in lib/og-card.ts; with no theme/accent params it reproduces the original warm cream/red-orange card.
|
|
14
9
|
const MAX_DESCRIPTION_LENGTH = 120;
|
|
15
10
|
const LONG_TITLE_THRESHOLD = 40;
|
|
16
11
|
const FONT_STACK =
|
|
@@ -54,7 +49,10 @@ async function fetchDataUri(url: string): Promise<string> {
|
|
|
54
49
|
* - siteName: Site name (optional, defaults to "Documentation")
|
|
55
50
|
* - logo: URL to the project's logo (optional)
|
|
56
51
|
* - bg: URL to a custom background image rendered behind the text (optional)
|
|
57
|
-
* - theme:
|
|
52
|
+
* - theme: 'light' (default, warm cream) or 'dark'
|
|
53
|
+
* - accent: hex color (3 or 6 digits, '#' optional) for the badge and bottom bar; low-contrast values fall back to a readable color
|
|
54
|
+
* - hideBar: '1' hides the bottom accent bar
|
|
55
|
+
* - hideName: '1' hides the site name (the logo, if any, still renders)
|
|
58
56
|
*
|
|
59
57
|
* Example:
|
|
60
58
|
* /api/og?title=Introduction§ion=Get%20Started&siteName=Acme%20Docs&logo=https://...
|
|
@@ -66,6 +64,7 @@ export async function GET(request: NextRequest) {
|
|
|
66
64
|
const description = searchParams.get('description') || '';
|
|
67
65
|
const section = searchParams.get('section') || '';
|
|
68
66
|
const siteName = searchParams.get('siteName') || 'Documentation';
|
|
67
|
+
const card = parseCardOptions(searchParams);
|
|
69
68
|
// SSRF guard: HTTPS-only, blocks private/loopback/metadata IPs (incl. encoded forms).
|
|
70
69
|
const logoUrl = sanitizeLogoUrl(searchParams.get('logo') || '');
|
|
71
70
|
const bgUrl = sanitizeLogoUrl(searchParams.get('bg') || '');
|
|
@@ -85,7 +84,7 @@ export async function GET(request: NextRequest) {
|
|
|
85
84
|
height: '100%',
|
|
86
85
|
width: '100%',
|
|
87
86
|
display: 'flex',
|
|
88
|
-
background:
|
|
87
|
+
background: card.palette.background,
|
|
89
88
|
fontFamily: FONT_STACK,
|
|
90
89
|
}}
|
|
91
90
|
>
|
|
@@ -116,42 +115,46 @@ export async function GET(request: NextRequest) {
|
|
|
116
115
|
padding: '60px',
|
|
117
116
|
}}
|
|
118
117
|
>
|
|
119
|
-
{/* Logo and site name */}
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
display: 'flex',
|
|
123
|
-
flexDirection: 'column',
|
|
124
|
-
alignItems: 'flex-start',
|
|
125
|
-
marginBottom: '40px',
|
|
126
|
-
}}
|
|
127
|
-
>
|
|
128
|
-
{logo && (
|
|
129
|
-
<img
|
|
130
|
-
src={logo}
|
|
131
|
-
alt=""
|
|
132
|
-
width={360}
|
|
133
|
-
height={48}
|
|
134
|
-
style={{
|
|
135
|
-
height: '48px',
|
|
136
|
-
maxWidth: '360px',
|
|
137
|
-
objectFit: 'contain',
|
|
138
|
-
marginBottom: '16px',
|
|
139
|
-
borderRadius: '8px',
|
|
140
|
-
}}
|
|
141
|
-
/>
|
|
142
|
-
)}
|
|
143
|
-
<span
|
|
118
|
+
{/* Logo and site name. Skipped when both are hidden so its 40px margin doesn't push the title down. */}
|
|
119
|
+
{(logo || card.showSiteName) && (
|
|
120
|
+
<div
|
|
144
121
|
style={{
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
letterSpacing: '0.05em',
|
|
122
|
+
display: 'flex',
|
|
123
|
+
flexDirection: 'column',
|
|
124
|
+
alignItems: 'flex-start',
|
|
125
|
+
marginBottom: '40px',
|
|
150
126
|
}}
|
|
151
127
|
>
|
|
152
|
-
{
|
|
153
|
-
|
|
154
|
-
|
|
128
|
+
{logo && (
|
|
129
|
+
<img
|
|
130
|
+
src={logo}
|
|
131
|
+
alt=""
|
|
132
|
+
width={360}
|
|
133
|
+
height={48}
|
|
134
|
+
style={{
|
|
135
|
+
height: '48px',
|
|
136
|
+
maxWidth: '360px',
|
|
137
|
+
objectFit: 'contain',
|
|
138
|
+
marginBottom: card.showSiteName ? '16px' : 0,
|
|
139
|
+
borderRadius: '8px',
|
|
140
|
+
}}
|
|
141
|
+
/>
|
|
142
|
+
)}
|
|
143
|
+
{card.showSiteName && (
|
|
144
|
+
<span
|
|
145
|
+
style={{
|
|
146
|
+
fontSize: '24px',
|
|
147
|
+
fontWeight: 600,
|
|
148
|
+
color: card.palette.muted,
|
|
149
|
+
textTransform: 'uppercase',
|
|
150
|
+
letterSpacing: '0.05em',
|
|
151
|
+
}}
|
|
152
|
+
>
|
|
153
|
+
{siteName}
|
|
154
|
+
</span>
|
|
155
|
+
)}
|
|
156
|
+
</div>
|
|
157
|
+
)}
|
|
155
158
|
|
|
156
159
|
{/* Section badge */}
|
|
157
160
|
{section && (
|
|
@@ -165,9 +168,9 @@ export async function GET(request: NextRequest) {
|
|
|
165
168
|
style={{
|
|
166
169
|
fontSize: '18px',
|
|
167
170
|
fontWeight: 500,
|
|
168
|
-
color:
|
|
171
|
+
color: card.palette.badgeText,
|
|
169
172
|
padding: '8px 16px',
|
|
170
|
-
background:
|
|
173
|
+
background: card.palette.badgeBg,
|
|
171
174
|
borderRadius: '20px',
|
|
172
175
|
}}
|
|
173
176
|
>
|
|
@@ -189,7 +192,7 @@ export async function GET(request: NextRequest) {
|
|
|
189
192
|
style={{
|
|
190
193
|
fontSize: titleFontSize,
|
|
191
194
|
fontWeight: 700,
|
|
192
|
-
color:
|
|
195
|
+
color: card.palette.title,
|
|
193
196
|
lineHeight: 1.2,
|
|
194
197
|
margin: 0,
|
|
195
198
|
maxWidth: '900px',
|
|
@@ -202,7 +205,7 @@ export async function GET(request: NextRequest) {
|
|
|
202
205
|
<p
|
|
203
206
|
style={{
|
|
204
207
|
fontSize: '28px',
|
|
205
|
-
color:
|
|
208
|
+
color: card.palette.muted,
|
|
206
209
|
marginTop: '24px',
|
|
207
210
|
lineHeight: 1.4,
|
|
208
211
|
maxWidth: '800px',
|
|
@@ -214,15 +217,17 @@ export async function GET(request: NextRequest) {
|
|
|
214
217
|
</div>
|
|
215
218
|
|
|
216
219
|
{/* Bottom accent bar */}
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
220
|
+
{card.showAccentBar && (
|
|
221
|
+
<div
|
|
222
|
+
style={{
|
|
223
|
+
display: 'flex',
|
|
224
|
+
height: '6px',
|
|
225
|
+
background: card.palette.bar,
|
|
226
|
+
borderRadius: '3px',
|
|
227
|
+
marginTop: '40px',
|
|
228
|
+
}}
|
|
229
|
+
/>
|
|
230
|
+
)}
|
|
226
231
|
</div>
|
|
227
232
|
</div>
|
|
228
233
|
),
|
|
@@ -723,6 +723,22 @@ export interface ChatConfig {
|
|
|
723
723
|
starterQuestions?: string[];
|
|
724
724
|
}
|
|
725
725
|
|
|
726
|
+
/**
|
|
727
|
+
* Options for the generated social sharing card (og:image).
|
|
728
|
+
*/
|
|
729
|
+
export interface SocialCardConfig {
|
|
730
|
+
/** Card text/background style (default: 'light') */
|
|
731
|
+
theme?: 'light' | 'dark';
|
|
732
|
+
/** Use colors.primary for the accent bar and section badge (default: false) */
|
|
733
|
+
brandColor?: boolean;
|
|
734
|
+
/** Show the colored bar along the bottom (default: true) */
|
|
735
|
+
accentBar?: boolean;
|
|
736
|
+
/** Show the site name under the logo (default: true) */
|
|
737
|
+
siteName?: boolean;
|
|
738
|
+
/** 'background' draws the title over a custom og:image; 'replace' uses it as-is (default: 'background') */
|
|
739
|
+
customImage?: 'background' | 'replace';
|
|
740
|
+
}
|
|
741
|
+
|
|
726
742
|
/**
|
|
727
743
|
* SEO configuration
|
|
728
744
|
*/
|
|
@@ -732,6 +748,7 @@ export interface SeoConfig {
|
|
|
732
748
|
/** Include hidden pages in sitemap (default: false) */
|
|
733
749
|
indexHiddenPages?: boolean;
|
|
734
750
|
ai?: { llmsTxt?: boolean }; // default true; false suppresses llms.txt + llms-full.txt
|
|
751
|
+
socialCard?: SocialCardConfig;
|
|
735
752
|
}
|
|
736
753
|
|
|
737
754
|
/**
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Pure helpers for the social card (app/api/og). No imports: the route runs on
|
|
3
|
+
* the edge runtime and this must stay dependency-free.
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export type CardTheme = 'light' | 'dark';
|
|
7
|
+
|
|
8
|
+
export const DEFAULT_ACCENT = '#ff3621';
|
|
9
|
+
|
|
10
|
+
/** Today's bar, kept verbatim so a card with no new params renders exactly as before. */
|
|
11
|
+
export const LEGACY_ACCENT_GRADIENT = 'linear-gradient(90deg, #ff3621 0%, #e02e1a 50%, #c4200f 100%)';
|
|
12
|
+
|
|
13
|
+
export interface CardPalette {
|
|
14
|
+
background: string; // CSS background (gradient) used when there is no bg image
|
|
15
|
+
surface: string; // solid hex the gradient starts from; used for contrast checks
|
|
16
|
+
title: string;
|
|
17
|
+
muted: string;
|
|
18
|
+
accent: string; // resolved accent hex
|
|
19
|
+
bar: string; // CSS background for the bar
|
|
20
|
+
badgeText: string;
|
|
21
|
+
badgeBg: string;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
export interface CardOptions {
|
|
25
|
+
theme: CardTheme;
|
|
26
|
+
palette: CardPalette;
|
|
27
|
+
showAccentBar: boolean;
|
|
28
|
+
showSiteName: boolean;
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
const THEMES = {
|
|
32
|
+
light: {
|
|
33
|
+
surface: '#faf8f5',
|
|
34
|
+
background: 'linear-gradient(135deg, #faf8f5 0%, #f3f0eb 100%)',
|
|
35
|
+
title: '#1b3139',
|
|
36
|
+
muted: '#5a6b73',
|
|
37
|
+
badgeAlpha: 0.08,
|
|
38
|
+
},
|
|
39
|
+
dark: {
|
|
40
|
+
surface: '#12161a',
|
|
41
|
+
background: 'linear-gradient(135deg, #12161a 0%, #1c2228 100%)',
|
|
42
|
+
title: '#f5f3ef',
|
|
43
|
+
muted: '#a3b1b8',
|
|
44
|
+
badgeAlpha: 0.16,
|
|
45
|
+
},
|
|
46
|
+
} as const;
|
|
47
|
+
|
|
48
|
+
// Accent text under 3:1 is hard to read at badge size; a bar under 1.5:1 all but vanishes.
|
|
49
|
+
const MIN_TEXT_CONTRAST = 3;
|
|
50
|
+
const MIN_BAR_CONTRAST = 1.5;
|
|
51
|
+
|
|
52
|
+
/** Accepts 3- or 6-digit hex with or without '#'. Anything else is null, so the value is safe to inline in CSS. */
|
|
53
|
+
export function normalizeHex(input: string | null | undefined): string | null {
|
|
54
|
+
if (!input) return null;
|
|
55
|
+
const m = /^#?([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(input);
|
|
56
|
+
if (!m) return null;
|
|
57
|
+
const h = m[1].toLowerCase();
|
|
58
|
+
const full = h.length === 3 ? h.split('').map((c) => c + c).join('') : h;
|
|
59
|
+
return `#${full}`;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
function channels(hex: string): [number, number, number] {
|
|
63
|
+
const n = parseInt(hex.slice(1), 16);
|
|
64
|
+
return [(n >> 16) & 255, (n >> 8) & 255, n & 255];
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
export function hexToRgba(hex: string, alpha: number): string {
|
|
68
|
+
const [r, g, b] = channels(hex);
|
|
69
|
+
return `rgba(${r}, ${g}, ${b}, ${alpha})`;
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
function luminance(hex: string): number {
|
|
73
|
+
const [r, g, b] = channels(hex).map((v) => {
|
|
74
|
+
const c = v / 255;
|
|
75
|
+
return c <= 0.03928 ? c / 12.92 : Math.pow((c + 0.055) / 1.055, 2.4);
|
|
76
|
+
});
|
|
77
|
+
return 0.2126 * r + 0.7152 * g + 0.0722 * b;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
export function contrastRatio(a: string, b: string): number {
|
|
81
|
+
const la = luminance(a);
|
|
82
|
+
const lb = luminance(b);
|
|
83
|
+
return (Math.max(la, lb) + 0.05) / (Math.min(la, lb) + 0.05);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
export function resolveCardPalette(theme: CardTheme, accent: string | null): CardPalette {
|
|
87
|
+
const t = THEMES[theme];
|
|
88
|
+
const base = { background: t.background, surface: t.surface, title: t.title, muted: t.muted };
|
|
89
|
+
|
|
90
|
+
// No accent means every pre-existing card URL: reproduce today's colors with no contrast logic.
|
|
91
|
+
if (accent === null) {
|
|
92
|
+
return {
|
|
93
|
+
...base,
|
|
94
|
+
accent: DEFAULT_ACCENT,
|
|
95
|
+
bar: LEGACY_ACCENT_GRADIENT,
|
|
96
|
+
badgeText: DEFAULT_ACCENT,
|
|
97
|
+
badgeBg: hexToRgba(DEFAULT_ACCENT, t.badgeAlpha),
|
|
98
|
+
};
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
const contrast = contrastRatio(accent, t.surface);
|
|
102
|
+
return {
|
|
103
|
+
...base,
|
|
104
|
+
accent,
|
|
105
|
+
bar: contrast >= MIN_BAR_CONTRAST ? accent : t.muted,
|
|
106
|
+
badgeText: contrast >= MIN_TEXT_CONTRAST ? accent : t.title,
|
|
107
|
+
badgeBg: hexToRgba(accent, t.badgeAlpha),
|
|
108
|
+
};
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
export function parseCardOptions(params: URLSearchParams): CardOptions {
|
|
112
|
+
const theme: CardTheme = params.get('theme') === 'dark' ? 'dark' : 'light';
|
|
113
|
+
return {
|
|
114
|
+
theme,
|
|
115
|
+
palette: resolveCardPalette(theme, normalizeHex(params.get('accent'))),
|
|
116
|
+
showAccentBar: params.get('hideBar') !== '1',
|
|
117
|
+
showSiteName: params.get('hideName') !== '1',
|
|
118
|
+
};
|
|
119
|
+
}
|