polen 0.11.0-next.10 → 0.11.0-next.11
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/build/api/api.d.ts +2 -1
- package/build/api/api.d.ts.map +1 -1
- package/build/api/api.js +5 -1
- package/build/api/api.js.map +1 -1
- package/build/api/iso/$$.d.ts +2 -0
- package/build/api/iso/$$.d.ts.map +1 -0
- package/build/api/iso/$$.js +2 -0
- package/build/api/iso/$$.js.map +1 -0
- package/build/api/iso/$.d.ts +2 -0
- package/build/api/iso/$.d.ts.map +1 -0
- package/build/api/iso/$.js +2 -0
- package/build/api/iso/$.js.map +1 -0
- package/build/api/iso/schema/$$.d.ts +4 -0
- package/build/api/iso/schema/$$.d.ts.map +1 -0
- package/build/api/iso/schema/$$.js +3 -0
- package/build/api/iso/schema/$$.js.map +1 -0
- package/build/api/iso/schema/$.d.ts +2 -0
- package/build/api/iso/schema/$.d.ts.map +1 -0
- package/build/api/iso/schema/$.js +2 -0
- package/build/api/iso/schema/$.js.map +1 -0
- package/build/api/iso/schema/constants.d.ts +25 -0
- package/build/api/iso/schema/constants.d.ts.map +1 -0
- package/build/api/iso/schema/constants.js +42 -0
- package/build/api/iso/schema/constants.js.map +1 -0
- package/build/api/iso/schema/routing.d.ts +22 -0
- package/build/api/iso/schema/routing.d.ts.map +1 -0
- package/build/api/iso/schema/routing.js +39 -0
- package/build/api/iso/schema/routing.js.map +1 -0
- package/build/api/iso.d.ts +2 -0
- package/build/api/iso.d.ts.map +1 -0
- package/build/api/iso.js +2 -0
- package/build/api/iso.js.map +1 -0
- package/build/api/schema/schema.d.ts +3 -25
- package/build/api/schema/schema.d.ts.map +1 -1
- package/build/api/schema/schema.js +5 -42
- package/build/api/schema/schema.js.map +1 -1
- package/build/api/vite/plugins/core.d.ts.map +1 -1
- package/build/api/vite/plugins/core.js +3 -6
- package/build/api/vite/plugins/core.js.map +1 -1
- package/build/template/components/GraphQLInteractive/lib/parser.d.ts.map +1 -1
- package/build/template/components/GraphQLInteractive/lib/parser.js +32 -10
- package/build/template/components/GraphQLInteractive/lib/parser.js.map +1 -1
- package/build/template/components/HamburgerMenu.d.ts +1 -0
- package/build/template/components/HamburgerMenu.d.ts.map +1 -1
- package/build/template/components/HamburgerMenu.js +2 -2
- package/build/template/components/HamburgerMenu.js.map +1 -1
- package/build/template/components/ReferenceLink.d.ts.map +1 -1
- package/build/template/components/ReferenceLink.js +2 -4
- package/build/template/components/ReferenceLink.js.map +1 -1
- package/build/template/components/VersionSelector.d.ts +3 -2
- package/build/template/components/VersionSelector.d.ts.map +1 -1
- package/build/template/components/VersionSelector.js +7 -15
- package/build/template/components/VersionSelector.js.map +1 -1
- package/build/template/components/sidebar/Sidebar.d.ts +3 -2
- package/build/template/components/sidebar/Sidebar.d.ts.map +1 -1
- package/build/template/components/sidebar/Sidebar.js +7 -6
- package/build/template/components/sidebar/Sidebar.js.map +1 -1
- package/build/template/components/sidebar/SidebarContext.d.ts +6 -0
- package/build/template/components/sidebar/SidebarContext.d.ts.map +1 -0
- package/build/template/components/sidebar/SidebarContext.js +3 -0
- package/build/template/components/sidebar/SidebarContext.js.map +1 -0
- package/build/template/components/sidebar/SidebarItem.d.ts.map +1 -1
- package/build/template/components/sidebar/SidebarItem.js +11 -4
- package/build/template/components/sidebar/SidebarItem.js.map +1 -1
- package/build/template/hooks/useVersionPath.d.ts.map +1 -1
- package/build/template/hooks/useVersionPath.js +3 -1
- package/build/template/hooks/useVersionPath.js.map +1 -1
- package/build/template/layouts/SidebarLayout.d.ts +3 -2
- package/build/template/layouts/SidebarLayout.d.ts.map +1 -1
- package/build/template/layouts/SidebarLayout.js +2 -2
- package/build/template/layouts/SidebarLayout.js.map +1 -1
- package/build/template/routes/reference.d.ts.map +1 -1
- package/build/template/routes/reference.js +6 -9
- package/build/template/routes/reference.js.map +1 -1
- package/build/template/server/ssg/get-route-paths.d.ts.map +1 -1
- package/build/template/server/ssg/get-route-paths.js +47 -14
- package/build/template/server/ssg/get-route-paths.js.map +1 -1
- package/package.json +4 -1
- package/src/api/api.ts +7 -1
- package/src/api/iso/$$.ts +1 -0
- package/src/api/iso/$.ts +1 -0
- package/src/api/iso/schema/$$.ts +5 -0
- package/src/api/iso/schema/$.ts +1 -0
- package/src/api/iso/schema/constants.ts +49 -0
- package/src/api/iso/schema/routing.ts +53 -0
- package/src/api/iso.ts +1 -0
- package/src/api/schema/schema.ts +6 -53
- package/src/api/vite/plugins/core.ts +3 -6
- package/src/template/components/GraphQLInteractive/lib/parser.ts +32 -16
- package/src/template/components/HamburgerMenu.tsx +3 -1
- package/src/template/components/ReferenceLink.tsx +7 -4
- package/src/template/components/VersionSelector.tsx +10 -18
- package/src/template/components/sidebar/Sidebar.tsx +20 -16
- package/src/template/components/sidebar/SidebarContext.tsx +7 -0
- package/src/template/components/sidebar/SidebarItem.tsx +11 -4
- package/src/template/hooks/useVersionPath.ts +3 -1
- package/src/template/layouts/SidebarLayout.tsx +5 -3
- package/src/template/routes/reference.tsx +7 -10
- package/src/template/server/ssg/get-route-paths.test.ts +13 -0
- package/src/template/server/ssg/get-route-paths.ts +47 -14
- package/build/template/lib/schema-utils/constants.d.ts +0 -5
- package/build/template/lib/schema-utils/constants.d.ts.map +0 -1
- package/build/template/lib/schema-utils/constants.js +0 -5
- package/build/template/lib/schema-utils/constants.js.map +0 -1
- package/src/template/lib/schema-utils/constants.ts +0 -4
package/build/api/api.d.ts
CHANGED
@@ -1,7 +1,8 @@
|
|
1
|
+
export * from './iso/$$.js';
|
1
2
|
export * from './builder/index.js';
|
2
3
|
export * from './config-resolver/index.js';
|
3
4
|
export * from './config/index.js';
|
4
5
|
export * as Project from './project/index.js';
|
5
|
-
export * from './schema/index.js';
|
6
6
|
export * from './static/index.js';
|
7
|
+
export { Schema } from './schema/index.js';
|
7
8
|
//# sourceMappingURL=api.d.ts.map
|
package/build/api/api.d.ts.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"AACA,cAAc,aAAa,CAAA;AAG3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,cAAc,mBAAmB,CAAA;AAGjC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA"}
|
package/build/api/api.js
CHANGED
@@ -1,7 +1,11 @@
|
|
1
|
+
// Re-export everything from isomorphic layer
|
2
|
+
export * from './iso/$$.js';
|
3
|
+
// Server-only exports
|
1
4
|
export * from './builder/index.js';
|
2
5
|
export * from './config-resolver/index.js';
|
3
6
|
export * from './config/index.js';
|
4
7
|
export * as Project from './project/index.js';
|
5
|
-
export * from './schema/index.js';
|
6
8
|
export * from './static/index.js';
|
9
|
+
// Re-export schema with server-only extensions
|
10
|
+
export { Schema } from './schema/index.js';
|
7
11
|
//# sourceMappingURL=api.js.map
|
package/build/api/api.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"AAAA,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,cAAc,mBAAmB,CAAA;
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/api/api.ts"],"names":[],"mappings":"AAAA,6CAA6C;AAC7C,cAAc,aAAa,CAAA;AAE3B,sBAAsB;AACtB,cAAc,oBAAoB,CAAA;AAClC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mBAAmB,CAAA;AACjC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAA;AAC7C,cAAc,mBAAmB,CAAA;AAEjC,+CAA+C;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../src/api/iso/$$.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$$.js","sourceRoot":"","sources":["../../../src/api/iso/$$.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$.d.ts","sourceRoot":"","sources":["../../../src/api/iso/$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,SAAS,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$.js","sourceRoot":"","sources":["../../../src/api/iso/$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,SAAS,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../../src/api/iso/schema/$$.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAGvC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$$.js","sourceRoot":"","sources":["../../../../src/api/iso/schema/$$.ts"],"names":[],"mappings":"AAAA,cAAc,gBAAgB,CAAA;AAC9B,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$.d.ts","sourceRoot":"","sources":["../../../../src/api/iso/schema/$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,SAAS,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"$.js","sourceRoot":"","sources":["../../../../src/api/iso/schema/$.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,SAAS,CAAA"}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
/**
|
2
|
+
* Constants for schema versioning
|
3
|
+
*/
|
4
|
+
/**
|
5
|
+
* The version identifier for the latest schema
|
6
|
+
*/
|
7
|
+
export declare const VERSION_LATEST = "latest";
|
8
|
+
/**
|
9
|
+
* Fallback version name when date parsing fails
|
10
|
+
*/
|
11
|
+
export declare const VERSION_UNKNOWN_FALLBACK = "unknown";
|
12
|
+
/**
|
13
|
+
* Convert a date to a version string in YYYY-MM-DD format
|
14
|
+
*/
|
15
|
+
export declare const dateToVersionString: (date: Date) => string;
|
16
|
+
/**
|
17
|
+
* Convert a version string back to a Date
|
18
|
+
*/
|
19
|
+
export declare const versionStringToDate: (version: string) => Date;
|
20
|
+
/**
|
21
|
+
* Determine if a version at the given index should have a changelog file.
|
22
|
+
* Only non-oldest versions get changelog files.
|
23
|
+
*/
|
24
|
+
export declare const shouldVersionHaveChangelog: (versionIndex: number, totalVersions: number) => boolean;
|
25
|
+
//# sourceMappingURL=constants.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../../src/api/iso/schema/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,eAAO,MAAM,cAAc,WAAW,CAAA;AAEtC;;GAEG;AACH,eAAO,MAAM,wBAAwB,YAAY,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,MAAM,IAAI,KAAG,MAEhD,CAAA;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,GAAI,SAAS,MAAM,KAAG,IAgBrD,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAI,cAAc,MAAM,EAAE,eAAe,MAAM,KAAG,OAExF,CAAA"}
|
@@ -0,0 +1,42 @@
|
|
1
|
+
/**
|
2
|
+
* Constants for schema versioning
|
3
|
+
*/
|
4
|
+
/**
|
5
|
+
* The version identifier for the latest schema
|
6
|
+
*/
|
7
|
+
export const VERSION_LATEST = `latest`;
|
8
|
+
/**
|
9
|
+
* Fallback version name when date parsing fails
|
10
|
+
*/
|
11
|
+
export const VERSION_UNKNOWN_FALLBACK = `unknown`;
|
12
|
+
/**
|
13
|
+
* Convert a date to a version string in YYYY-MM-DD format
|
14
|
+
*/
|
15
|
+
export const dateToVersionString = (date) => {
|
16
|
+
return date.toLocaleDateString('en-CA');
|
17
|
+
};
|
18
|
+
/**
|
19
|
+
* Convert a version string back to a Date
|
20
|
+
*/
|
21
|
+
export const versionStringToDate = (version) => {
|
22
|
+
if (version === VERSION_LATEST) {
|
23
|
+
return new Date();
|
24
|
+
}
|
25
|
+
// Use modern date parsing - the version string should be in YYYY-MM-DD format
|
26
|
+
// which is ISO 8601 compatible
|
27
|
+
const parsedDate = new Date(version + 'T00:00:00Z');
|
28
|
+
// Check if the date is valid
|
29
|
+
if (!isNaN(parsedDate.getTime())) {
|
30
|
+
return parsedDate;
|
31
|
+
}
|
32
|
+
// Throw error for invalid dates instead of silently defaulting
|
33
|
+
throw new Error(`Invalid version string: ${version}`);
|
34
|
+
};
|
35
|
+
/**
|
36
|
+
* Determine if a version at the given index should have a changelog file.
|
37
|
+
* Only non-oldest versions get changelog files.
|
38
|
+
*/
|
39
|
+
export const shouldVersionHaveChangelog = (versionIndex, totalVersions) => {
|
40
|
+
return versionIndex < totalVersions - 1;
|
41
|
+
};
|
42
|
+
//# sourceMappingURL=constants.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../../src/api/iso/schema/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,QAAQ,CAAA;AAEtC;;GAEG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,SAAS,CAAA;AAEjD;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,IAAU,EAAU,EAAE;IACxD,OAAO,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;AACzC,CAAC,CAAA;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,OAAe,EAAQ,EAAE;IAC3D,IAAI,OAAO,KAAK,cAAc,EAAE,CAAC;QAC/B,OAAO,IAAI,IAAI,EAAE,CAAA;IACnB,CAAC;IAED,8EAA8E;IAC9E,+BAA+B;IAC/B,MAAM,UAAU,GAAG,IAAI,IAAI,CAAC,OAAO,GAAG,YAAY,CAAC,CAAA;IAEnD,6BAA6B;IAC7B,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,EAAE,CAAC;QACjC,OAAO,UAAU,CAAA;IACnB,CAAC;IAED,+DAA+D;IAC/D,MAAM,IAAI,KAAK,CAAC,2BAA2B,OAAO,EAAE,CAAC,CAAA;AACvD,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,YAAoB,EAAE,aAAqB,EAAW,EAAE;IACjG,OAAO,YAAY,GAAG,aAAa,GAAG,CAAC,CAAA;AACzC,CAAC,CAAA"}
|
@@ -0,0 +1,22 @@
|
|
1
|
+
export interface ReferencePathParts {
|
2
|
+
version?: string;
|
3
|
+
type?: string;
|
4
|
+
field?: string;
|
5
|
+
}
|
6
|
+
export declare const createReferencePath: (parts: ReferencePathParts) => string;
|
7
|
+
/**
|
8
|
+
* Create a base path for reference pages based on the current version
|
9
|
+
* Used for sidebar navigation and other UI components that need version-aware paths
|
10
|
+
*/
|
11
|
+
export declare const createReferenceBasePath: (version?: string) => string;
|
12
|
+
export declare const segmentLiterals: {
|
13
|
+
reference: string;
|
14
|
+
version: string;
|
15
|
+
};
|
16
|
+
/**
|
17
|
+
* Create a base path for reference pages based on the current version
|
18
|
+
* Used for sidebar navigation and other UI components that need version-aware paths
|
19
|
+
*/
|
20
|
+
export declare const createReferenceVersionPath: (version?: string) => string;
|
21
|
+
export declare const joinSegmentsAndPaths: (...segmentsOrPaths: (string | undefined | null | (string | null | undefined)[])[]) => string;
|
22
|
+
//# sourceMappingURL=routing.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"routing.d.ts","sourceRoot":"","sources":["../../../../src/api/iso/schema/routing.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,eAAO,MAAM,mBAAmB,GAAI,OAAO,kBAAkB,KAAG,MAG/D,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,GAAI,UAAU,MAAM,KAAG,MAE1D,CAAA;AAED,eAAO,MAAM,eAAe;;;CAG3B,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,0BAA0B,GAAI,UAAU,MAAM,KAAG,MAK7D,CAAA;AAED,eAAO,MAAM,oBAAoB,GAC/B,GAAG,iBAAiB,CAAC,MAAM,GAAG,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAAE,CAAC,EAAE,KAChF,MAaF,CAAA"}
|
@@ -0,0 +1,39 @@
|
|
1
|
+
import { VERSION_LATEST } from './constants.js';
|
2
|
+
export const createReferencePath = (parts) => {
|
3
|
+
const basePath = createReferenceBasePath(parts.version);
|
4
|
+
return joinSegmentsAndPaths(basePath, parts.type, parts.field);
|
5
|
+
};
|
6
|
+
/**
|
7
|
+
* Create a base path for reference pages based on the current version
|
8
|
+
* Used for sidebar navigation and other UI components that need version-aware paths
|
9
|
+
*/
|
10
|
+
export const createReferenceBasePath = (version) => {
|
11
|
+
return joinSegmentsAndPaths(segmentLiterals.reference, createReferenceVersionPath(version));
|
12
|
+
};
|
13
|
+
export const segmentLiterals = {
|
14
|
+
reference: 'reference',
|
15
|
+
version: 'version',
|
16
|
+
};
|
17
|
+
/**
|
18
|
+
* Create a base path for reference pages based on the current version
|
19
|
+
* Used for sidebar navigation and other UI components that need version-aware paths
|
20
|
+
*/
|
21
|
+
export const createReferenceVersionPath = (version) => {
|
22
|
+
if (version === undefined)
|
23
|
+
return '';
|
24
|
+
return version === VERSION_LATEST
|
25
|
+
? ``
|
26
|
+
: `/${segmentLiterals.version}/${version}`;
|
27
|
+
};
|
28
|
+
export const joinSegmentsAndPaths = (...segmentsOrPaths) => {
|
29
|
+
const path = '/' + segmentsOrPaths
|
30
|
+
.flat()
|
31
|
+
.filter((_) => _ !== undefined && _ !== null)
|
32
|
+
.map(chunkUnformatted => chunkUnformatted
|
33
|
+
.replace(/^\//, '')
|
34
|
+
.replace(/\/$/, ''))
|
35
|
+
.filter(Boolean)
|
36
|
+
.join('/');
|
37
|
+
return path;
|
38
|
+
};
|
39
|
+
//# sourceMappingURL=routing.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"routing.js","sourceRoot":"","sources":["../../../../src/api/iso/schema/routing.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AAQ/C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,KAAyB,EAAU,EAAE;IACvE,MAAM,QAAQ,GAAG,uBAAuB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAA;IACvD,OAAO,oBAAoB,CAAC,QAAQ,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;AAChE,CAAC,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,OAAgB,EAAU,EAAE;IAClE,OAAO,oBAAoB,CAAC,eAAe,CAAC,SAAS,EAAE,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAA;AAC7F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;CACnB,CAAA;AAED;;;GAGG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,OAAgB,EAAU,EAAE;IACrE,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,EAAE,CAAA;IACpC,OAAO,OAAO,KAAK,cAAc;QAC/B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,IAAI,eAAe,CAAC,OAAO,IAAI,OAAO,EAAE,CAAA;AAC9C,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAClC,GAAG,eAA8E,EACzE,EAAE;IACV,MAAM,IAAI,GAAG,GAAG,GAAG,eAAe;SAC/B,IAAI,EAAE;SACN,MAAM,CAAC,CAAC,CAAC,EAAe,EAAE,CAAC,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,IAAI,CAAC;SACzD,GAAG,CAAC,gBAAgB,CAAC,EAAE,CACtB,gBAAgB;SACb,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;SAClB,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CACtB;SACA,MAAM,CAAC,OAAO,CAAC;SACf,IAAI,CAAC,GAAG,CAAC,CAAA;IAEZ,OAAO,IAAI,CAAA;AACb,CAAC,CAAA"}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"iso.d.ts","sourceRoot":"","sources":["../../src/api/iso.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
package/build/api/iso.js
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"iso.js","sourceRoot":"","sources":["../../src/api/iso.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAA"}
|
@@ -1,7 +1,9 @@
|
|
1
1
|
import type { GraphqlChangeset } from '#lib/graphql-changeset/index';
|
2
|
+
export * from '../iso/schema/constants.js';
|
3
|
+
export * as Routing from '../iso/schema/routing.js';
|
2
4
|
export * as DataSources from './data-sources/data-sources.js';
|
3
|
-
export * from './read.js';
|
4
5
|
export * from './metadata.js';
|
6
|
+
export * from './read.js';
|
5
7
|
export type ChangeSets = GraphqlChangeset.ChangeSet[];
|
6
8
|
export type NonEmptyChangeSets = [GraphqlChangeset.ChangeSet, ...GraphqlChangeset.ChangeSet[]];
|
7
9
|
/**
|
@@ -11,28 +13,4 @@ export interface ChangelogData {
|
|
11
13
|
changes: GraphqlChangeset.ChangeSet['changes'];
|
12
14
|
date: string;
|
13
15
|
}
|
14
|
-
/**
|
15
|
-
* Constants for schema versioning
|
16
|
-
*/
|
17
|
-
/**
|
18
|
-
* The version identifier for the latest schema
|
19
|
-
*/
|
20
|
-
export declare const VERSION_LATEST = "latest";
|
21
|
-
/**
|
22
|
-
* Fallback version name when date parsing fails
|
23
|
-
*/
|
24
|
-
export declare const VERSION_UNKNOWN_FALLBACK = "unknown";
|
25
|
-
/**
|
26
|
-
* Convert a date to a version string in YYYY-MM-DD format
|
27
|
-
*/
|
28
|
-
export declare const dateToVersionString: (date: Date) => string;
|
29
|
-
/**
|
30
|
-
* Determine if a version at the given index should have a changelog file.
|
31
|
-
* Only non-oldest versions get changelog files.
|
32
|
-
*/
|
33
|
-
export declare const shouldVersionHaveChangelog: (versionIndex: number, totalVersions: number) => boolean;
|
34
|
-
/**
|
35
|
-
* Convert a version string back to a Date
|
36
|
-
*/
|
37
|
-
export declare const versionStringToDate: (version: string) => Date;
|
38
16
|
//# sourceMappingURL=schema.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/api/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../../src/api/schema/schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAGpE,cAAc,4BAA4B,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAA;AAGnD,OAAO,KAAK,WAAW,MAAM,gCAAgC,CAAA;AAC7D,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AAEzB,MAAM,MAAM,UAAU,GAAG,gBAAgB,CAAC,SAAS,EAAE,CAAA;AAErD,MAAM,MAAM,kBAAkB,GAAG,CAAC,gBAAgB,CAAC,SAAS,EAAE,GAAG,gBAAgB,CAAC,SAAS,EAAE,CAAC,CAAA;AAE9F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,gBAAgB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAA;IAC9C,IAAI,EAAE,MAAM,CAAA;CACb"}
|
@@ -1,45 +1,8 @@
|
|
1
|
+
// Re-export everything from isomorphic layer
|
2
|
+
export * from '../iso/schema/constants.js';
|
3
|
+
export * as Routing from '../iso/schema/routing.js';
|
4
|
+
// Server-only exports
|
1
5
|
export * as DataSources from './data-sources/data-sources.js';
|
2
|
-
export * from './read.js';
|
3
6
|
export * from './metadata.js';
|
4
|
-
|
5
|
-
* Constants for schema versioning
|
6
|
-
*/
|
7
|
-
/**
|
8
|
-
* The version identifier for the latest schema
|
9
|
-
*/
|
10
|
-
export const VERSION_LATEST = `latest`;
|
11
|
-
/**
|
12
|
-
* Fallback version name when date parsing fails
|
13
|
-
*/
|
14
|
-
export const VERSION_UNKNOWN_FALLBACK = `unknown`;
|
15
|
-
/**
|
16
|
-
* Convert a date to a version string in YYYY-MM-DD format
|
17
|
-
*/
|
18
|
-
export const dateToVersionString = (date) => {
|
19
|
-
return date.toLocaleDateString('en-CA');
|
20
|
-
};
|
21
|
-
/**
|
22
|
-
* Determine if a version at the given index should have a changelog file.
|
23
|
-
* Only non-oldest versions get changelog files.
|
24
|
-
*/
|
25
|
-
export const shouldVersionHaveChangelog = (versionIndex, totalVersions) => {
|
26
|
-
return versionIndex < totalVersions - 1;
|
27
|
-
};
|
28
|
-
/**
|
29
|
-
* Convert a version string back to a Date
|
30
|
-
*/
|
31
|
-
export const versionStringToDate = (version) => {
|
32
|
-
if (version === VERSION_LATEST) {
|
33
|
-
return new Date();
|
34
|
-
}
|
35
|
-
// Use modern date parsing - the version string should be in YYYY-MM-DD format
|
36
|
-
// which is ISO 8601 compatible
|
37
|
-
const parsedDate = new Date(version + 'T00:00:00Z');
|
38
|
-
// Check if the date is valid
|
39
|
-
if (!isNaN(parsedDate.getTime())) {
|
40
|
-
return parsedDate;
|
41
|
-
}
|
42
|
-
// Throw error for invalid dates instead of silently defaulting
|
43
|
-
throw new Error(`Invalid version string: ${version}`);
|
44
|
-
};
|
7
|
+
export * from './read.js';
|
45
8
|
//# sourceMappingURL=schema.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/api/schema/schema.ts"],"names":[],"mappings":"AAEA,
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../src/api/schema/schema.ts"],"names":[],"mappings":"AAEA,6CAA6C;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,OAAO,KAAK,OAAO,MAAM,0BAA0B,CAAA;AAEnD,sBAAsB;AACtB,OAAO,KAAK,WAAW,MAAM,gCAAgC,CAAA;AAC7D,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../src/api/vite/plugins/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAK/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../../../src/api/vite/plugins/core.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAA;AAK/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAC1D,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAA;AAE3C,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAA;AAarD,eAAO,MAAM,aAAa,mCAA+E,CAAA;AACzG,eAAO,MAAM,eAAe,mCAAiF,CAAA;AAE7G,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,WAAW,CAAC,WAAW,EAAE,CAAA;CAClC;AAED,eAAO,MAAM,IAAI,GAAI,QAAQ,MAAM,CAAC,MAAM,KAAG,IAAI,CAAC,YAAY,EA8M7D,CAAA"}
|
@@ -1,18 +1,14 @@
|
|
1
1
|
import { Content } from '#api/content/$';
|
2
2
|
import { createNavbar } from '#api/content/navbar';
|
3
|
+
import { Api } from '#api/index';
|
3
4
|
import { VitePluginSelfContainedMode } from '#cli/_/self-contained-mode';
|
4
|
-
import { Hono } from '#dep/hono/index';
|
5
5
|
import { VitePluginJson } from '#lib/vite-plugin-json/index';
|
6
6
|
import { ViteVirtual } from '#lib/vite-virtual/index';
|
7
7
|
import { debugPolen } from '#singletons/debug';
|
8
8
|
import { superjson } from '#singletons/superjson';
|
9
|
-
import * as HonoNodeServer from '@hono/node-server';
|
10
|
-
import { serveStatic } from '@hono/node-server/serve-static';
|
11
9
|
import { Json, Str } from '@wollybeard/kit';
|
12
|
-
import * as NodePath from 'node:path';
|
13
10
|
import { SchemaAugmentation } from '../../schema-augmentation/index.js';
|
14
11
|
import { Schema } from '../../schema/index.js';
|
15
|
-
import { createLogger } from '../logger.js';
|
16
12
|
import { polenVirtual } from '../vi.js';
|
17
13
|
import { Pages } from './pages.js';
|
18
14
|
import { SchemaAssets } from './schema-assets.js';
|
@@ -170,7 +166,8 @@ export const Core = (config) => {
|
|
170
166
|
// Without the leading slash, React Router treats paths as relative, which causes
|
171
167
|
// hydration mismatches between SSR (where base path is prepended) and client
|
172
168
|
// (where basename is configured). This ensures consistent behavior.
|
173
|
-
|
169
|
+
const referencePath = Api.Schema.Routing.createReferenceBasePath();
|
170
|
+
navbar.push({ pathExp: referencePath, title: `Reference` });
|
174
171
|
if (schemaResult.data.length > 1) {
|
175
172
|
navbar.push({ pathExp: `/changelog`, title: `Changelog` });
|
176
173
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/api/vite/plugins/core.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAA;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAClD,OAAO,EAAE,
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../../../../src/api/vite/plugins/core.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../../src/template/components/GraphQLInteractive/lib/parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
1
|
+
{"version":3,"file":"parser.d.ts","sourceRoot":"","sources":["../../../../../src/template/components/GraphQLInteractive/lib/parser.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AACnD,OAAO,EASL,KAAK,aAAa,EAInB,MAAM,SAAS,CAAA;AAEhB,OAAO,KAAK,aAAa,MAAM,iBAAiB,CAAA;AAGhD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAWvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,YAAY;IAC3B,mEAAmE;IACnE,cAAc,EAAE,aAAa,CAAC,IAAI,CAAA;IAElC;;;OAGG;IACH,QAAQ,CAAC,EAAE,YAAY,CAAA;IAEvB,iEAAiE;IACjE,IAAI,IAAI,IAAI,MAAM,CAAA;IAElB,mFAAmF;IACnF,IAAI,KAAK,IAAI,MAAM,CAAA;IAEnB,iFAAiF;IACjF,IAAI,GAAG,IAAI,MAAM,CAAA;IAEjB,yEAAyE;IACzE,KAAK,EAAE;QACL,sEAAsE;QACtE,aAAa,EAAE,MAAM,OAAO,CAAA;QAC5B,sEAAsE;QACtE,eAAe,EAAE,MAAM,MAAM,GAAG,IAAI,CAAA;KACrC,CAAA;IAED,wCAAwC;IACxC,WAAW,EAAE;QACX,oDAAoD;QACpD,WAAW,EAAE,MAAM,MAAM,CAAA;KAC1B,CAAA;IAED,4DAA4D;IAC5D,QAAQ,EAAE;QACR,6DAA6D;QAC7D,WAAW,EAAE,cAAc,EAAE,CAAA;KAC9B,CAAA;CACF;AA0ZD;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAC9C,IAAI,EAAE,MAAM,EACZ,WAAW,GAAE,cAAc,EAAO,EAClC,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,YAAY,EAAE,CAAC,CAiDzB"}
|
@@ -4,11 +4,12 @@
|
|
4
4
|
* This module combines tree-sitter syntax parsing with GraphQL semantic
|
5
5
|
* analysis to create unified tokens for interactive code blocks.
|
6
6
|
*/
|
7
|
+
import { Api } from '#api/iso';
|
7
8
|
import { getNamedType, GraphQLEnumType, GraphQLInputObjectType, GraphQLInterfaceType, GraphQLObjectType, GraphQLScalarType, GraphQLUnionType, isInterfaceType, isObjectType, } from 'graphql';
|
8
9
|
import graphqlWasmUrl from 'tree-sitter-graphql-grammar-wasm/grammar.wasm?url';
|
9
10
|
import * as WebTreeSitter from 'web-tree-sitter';
|
10
11
|
import treeSitterWasmUrl from 'web-tree-sitter/tree-sitter.wasm?url';
|
11
|
-
import { isKeywordNodeType,
|
12
|
+
import { isKeywordNodeType, isPunctuationNodeType } from './graphql-node-types.js';
|
12
13
|
import { isArgument, isFragment, isInputField, isInvalidField, isOperation, isOutputField, isVariable, } from './semantic-nodes.js';
|
13
14
|
/**
|
14
15
|
* Implementation of unified token
|
@@ -152,34 +153,55 @@ class UnifiedToken {
|
|
152
153
|
return null;
|
153
154
|
// Arguments - use #<field>__<argument> pattern
|
154
155
|
if (isArgument(this.semantic)) {
|
155
|
-
|
156
|
+
const basePath = Api.Schema.Routing.createReferencePath({
|
157
|
+
type: this.semantic.parentType.name,
|
158
|
+
});
|
159
|
+
return `${basePath}#${this.semantic.parentField.name}__${this.semantic.argumentDef.name}`;
|
156
160
|
}
|
157
161
|
// Output fields - use hash links since field routes aren't connected yet
|
158
162
|
if (isOutputField(this.semantic)) {
|
159
|
-
|
163
|
+
const basePath = Api.Schema.Routing.createReferencePath({
|
164
|
+
type: this.semantic.parentType.name,
|
165
|
+
});
|
166
|
+
return `${basePath}#${this.semantic.fieldDef.name}`;
|
160
167
|
}
|
161
168
|
// Input fields - use hash links since field routes aren't connected yet
|
162
169
|
if (isInputField(this.semantic)) {
|
163
|
-
|
170
|
+
const basePath = Api.Schema.Routing.createReferencePath({
|
171
|
+
type: this.semantic.parentType.name,
|
172
|
+
});
|
173
|
+
return `${basePath}#${this.semantic.fieldDef.name}`;
|
164
174
|
}
|
165
175
|
// Type references - use :type pattern
|
166
176
|
if (this.semantic instanceof GraphQLObjectType) {
|
167
|
-
return
|
177
|
+
return Api.Schema.Routing.createReferencePath({
|
178
|
+
type: this.semantic.name,
|
179
|
+
});
|
168
180
|
}
|
169
181
|
if (this.semantic instanceof GraphQLScalarType) {
|
170
|
-
return
|
182
|
+
return Api.Schema.Routing.createReferencePath({
|
183
|
+
type: this.semantic.name,
|
184
|
+
});
|
171
185
|
}
|
172
186
|
if (this.semantic instanceof GraphQLInterfaceType) {
|
173
|
-
return
|
187
|
+
return Api.Schema.Routing.createReferencePath({
|
188
|
+
type: this.semantic.name,
|
189
|
+
});
|
174
190
|
}
|
175
191
|
if (this.semantic instanceof GraphQLUnionType) {
|
176
|
-
return
|
192
|
+
return Api.Schema.Routing.createReferencePath({
|
193
|
+
type: this.semantic.name,
|
194
|
+
});
|
177
195
|
}
|
178
196
|
if (this.semantic instanceof GraphQLEnumType) {
|
179
|
-
return
|
197
|
+
return Api.Schema.Routing.createReferencePath({
|
198
|
+
type: this.semantic.name,
|
199
|
+
});
|
180
200
|
}
|
181
201
|
if (this.semantic instanceof GraphQLInputObjectType) {
|
182
|
-
return
|
202
|
+
return Api.Schema.Routing.createReferencePath({
|
203
|
+
type: this.semantic.name,
|
204
|
+
});
|
183
205
|
}
|
184
206
|
return null;
|
185
207
|
}
|