polen 0.10.0-next.20 → 0.10.0-next.22
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/builder/builder.d.ts.map +1 -1
- package/build/api/builder/builder.js +1 -2
- package/build/api/builder/builder.js.map +1 -1
- package/build/api/config/configurator.d.ts +62 -11
- package/build/api/config/configurator.d.ts.map +1 -1
- package/build/api/config/configurator.js +9 -0
- package/build/api/config/configurator.js.map +1 -1
- package/build/api/config/merge.js +6 -6
- package/build/api/content/scan.js +1 -1
- package/build/api/content/sidebar.js +4 -4
- package/build/api/vite/plugins/build.js +1 -1
- package/build/api/vite/plugins/core.d.ts.map +1 -1
- package/build/api/vite/plugins/core.js +1 -0
- package/build/api/vite/plugins/core.js.map +1 -1
- package/build/lib/react-router-aid/get-paths-patterns.js +1 -1
- package/build/project-data.d.ts +1 -0
- package/build/project-data.d.ts.map +1 -1
- package/build/sandbox.js +40 -17
- package/build/sandbox.js.map +1 -1
- package/build/template/components/CodeBlock.d.ts.map +1 -1
- package/build/template/components/CodeBlock.js +3 -5
- package/build/template/components/CodeBlock.js.map +1 -1
- package/build/template/components/Field.js +1 -1
- package/build/template/components/Field.js.map +1 -1
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.d.ts +31 -0
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.js +275 -0
- package/build/template/components/GraphQLInteractive/GraphQLInteractive.js.map +1 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLErrorBoundary.d.ts +39 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLErrorBoundary.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLErrorBoundary.js +51 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLErrorBoundary.js.map +1 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLTokenPopover.d.ts +33 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLTokenPopover.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLTokenPopover.js +242 -0
- package/build/template/components/GraphQLInteractive/components/GraphQLTokenPopover.js.map +1 -0
- package/build/template/components/GraphQLInteractive/hooks/use-popover-state.d.ts +45 -0
- package/build/template/components/GraphQLInteractive/hooks/use-popover-state.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/hooks/use-popover-state.js +176 -0
- package/build/template/components/GraphQLInteractive/hooks/use-popover-state.js.map +1 -0
- package/build/template/components/GraphQLInteractive/index.d.ts +2 -0
- package/build/template/components/GraphQLInteractive/index.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/index.js +2 -0
- package/build/template/components/GraphQLInteractive/index.js.map +1 -0
- package/build/template/components/GraphQLInteractive/lib/graphql-node-types.d.ts +52 -0
- package/build/template/components/GraphQLInteractive/lib/graphql-node-types.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/lib/graphql-node-types.js +34 -0
- package/build/template/components/GraphQLInteractive/lib/graphql-node-types.js.map +1 -0
- package/build/template/components/GraphQLInteractive/lib/parser.d.ts +71 -0
- package/build/template/components/GraphQLInteractive/lib/parser.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/lib/parser.js +836 -0
- package/build/template/components/GraphQLInteractive/lib/parser.js.map +1 -0
- package/build/template/components/GraphQLInteractive/lib/semantic-nodes.d.ts +98 -0
- package/build/template/components/GraphQLInteractive/lib/semantic-nodes.d.ts.map +1 -0
- package/build/template/components/GraphQLInteractive/lib/semantic-nodes.js +31 -0
- package/build/template/components/GraphQLInteractive/lib/semantic-nodes.js.map +1 -0
- package/build/template/components/content/$$.d.ts +0 -1
- package/build/template/components/content/$$.d.ts.map +1 -1
- package/build/template/components/content/$$.js +0 -1
- package/build/template/components/content/$$.js.map +1 -1
- package/package.json +5 -21
- package/src/api/builder/builder.ts +1 -2
- package/src/api/config/configurator.ts +72 -11
- package/src/api/config/merge.ts +6 -6
- package/src/api/content/scan.ts +1 -1
- package/src/api/content/sidebar.ts +4 -4
- package/src/api/vite/plugins/build.ts +1 -1
- package/src/api/vite/plugins/core.ts +1 -0
- package/src/lib/kit-temp.test.ts +9 -9
- package/src/lib/react-router-aid/get-paths-patterns.ts +1 -1
- package/src/project-data.ts +1 -0
- package/src/sandbox.ts +40 -17
- package/src/template/components/CodeBlock.tsx +6 -9
- package/src/template/components/Field.tsx +1 -1
- package/src/template/components/GraphQLInteractive/GraphQLInteractive.tsx +464 -0
- package/src/template/components/GraphQLInteractive/components/GraphQLErrorBoundary.tsx +96 -0
- package/src/template/components/GraphQLInteractive/components/GraphQLTokenPopover.tsx +492 -0
- package/src/template/components/GraphQLInteractive/hooks/use-popover-state.ts +244 -0
- package/src/template/components/GraphQLInteractive/index.ts +1 -0
- package/src/template/components/GraphQLInteractive/lib/graphql-node-types.ts +217 -0
- package/src/template/components/GraphQLInteractive/lib/parser.ts +1075 -0
- package/src/template/components/GraphQLInteractive/lib/semantic-nodes.ts +154 -0
- package/src/template/components/GraphQLInteractive/tests/parser-comment.test.ts +33 -0
- package/src/template/components/GraphQLInteractive/tests/parser-error-hint.test.ts +102 -0
- package/src/template/components/GraphQLInteractive/tests/parser.test.ts +131 -0
- package/src/template/components/content/$$.ts +0 -1
- package/build/template/components/content/GraphQLDocumentWithSchema.d.ts +0 -8
- package/build/template/components/content/GraphQLDocumentWithSchema.d.ts.map +0 -1
- package/build/template/components/content/GraphQLDocumentWithSchema.js +0 -13
- package/build/template/components/content/GraphQLDocumentWithSchema.js.map +0 -1
- package/build/template/components/content/GraphQLDocumentWrapper.d.ts +0 -7
- package/build/template/components/content/GraphQLDocumentWrapper.d.ts.map +0 -1
- package/build/template/components/content/GraphQLDocumentWrapper.js +0 -48
- package/build/template/components/content/GraphQLDocumentWrapper.js.map +0 -1
- package/src/template/components/content/GraphQLDocumentWithSchema.tsx +0 -13
- package/src/template/components/content/GraphQLDocumentWrapper.tsx +0 -72
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"parser.js","sourceRoot":"","sources":["../../../../../src/template/components/GraphQLInteractive/lib/parser.ts"],"names":[],"mappings":"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"}
|
@@ -0,0 +1,98 @@
|
|
1
|
+
/**
|
2
|
+
* Semantic Node Types for GraphQL Interactive
|
3
|
+
*
|
4
|
+
* This module defines the semantic node types used to represent
|
5
|
+
* GraphQL schema information alongside tree-sitter syntax nodes.
|
6
|
+
*/
|
7
|
+
import type { GraphQLArgument, GraphQLEnumType, GraphQLField, GraphQLInputField, GraphQLInputObjectType, GraphQLInputType, GraphQLInterfaceType, GraphQLNamedType, GraphQLObjectType, GraphQLScalarType, GraphQLUnionType } from 'graphql';
|
8
|
+
/**
|
9
|
+
* Wrapper for output fields that need parent type context
|
10
|
+
*/
|
11
|
+
export interface OutputFieldNode {
|
12
|
+
kind: 'OutputField';
|
13
|
+
parentType: GraphQLObjectType | GraphQLInterfaceType;
|
14
|
+
fieldDef: GraphQLField<any, any>;
|
15
|
+
}
|
16
|
+
/**
|
17
|
+
* Wrapper for input fields that need parent type context
|
18
|
+
*/
|
19
|
+
export interface InputFieldNode {
|
20
|
+
kind: 'InputField';
|
21
|
+
parentType: GraphQLInputObjectType;
|
22
|
+
fieldDef: GraphQLInputField;
|
23
|
+
}
|
24
|
+
/**
|
25
|
+
* Wrapper for arguments that need parent field context
|
26
|
+
*/
|
27
|
+
export interface ArgumentNode {
|
28
|
+
kind: 'Argument';
|
29
|
+
parentType: GraphQLObjectType | GraphQLInterfaceType;
|
30
|
+
parentField: GraphQLField<any, any>;
|
31
|
+
argumentDef: GraphQLArgument;
|
32
|
+
}
|
33
|
+
/**
|
34
|
+
* Wrapper for operation definitions
|
35
|
+
*/
|
36
|
+
export interface OperationNode {
|
37
|
+
kind: 'Operation';
|
38
|
+
type: 'query' | 'mutation' | 'subscription';
|
39
|
+
name?: string;
|
40
|
+
}
|
41
|
+
/**
|
42
|
+
* Wrapper for variable references
|
43
|
+
*/
|
44
|
+
export interface VariableNode {
|
45
|
+
kind: 'Variable';
|
46
|
+
name: string;
|
47
|
+
type?: GraphQLInputType;
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* Wrapper for fragment definitions
|
51
|
+
*/
|
52
|
+
export interface FragmentNode {
|
53
|
+
kind: 'Fragment';
|
54
|
+
name: string;
|
55
|
+
onType: GraphQLNamedType;
|
56
|
+
}
|
57
|
+
/**
|
58
|
+
* Wrapper for invalid fields that don't exist in the schema
|
59
|
+
*/
|
60
|
+
export interface InvalidFieldNode {
|
61
|
+
kind: 'InvalidField';
|
62
|
+
fieldName: string;
|
63
|
+
parentType: GraphQLObjectType | GraphQLInterfaceType;
|
64
|
+
suggestion?: string;
|
65
|
+
}
|
66
|
+
/**
|
67
|
+
* Union of all semantic node types
|
68
|
+
*
|
69
|
+
* This union represents the different kinds of semantic information that can
|
70
|
+
* be attached to GraphQL tokens during parsing. It includes both GraphQL's
|
71
|
+
* native type classes (for type references) and our custom wrapper interfaces
|
72
|
+
* (for context-dependent elements like fields and arguments).
|
73
|
+
*
|
74
|
+
* @example
|
75
|
+
* ```typescript
|
76
|
+
* // Type reference - uses GraphQL native class
|
77
|
+
* const userType: SemanticNode = schema.getType('User')
|
78
|
+
*
|
79
|
+
* // Field reference - uses custom wrapper with context
|
80
|
+
* const fieldSemantic: SemanticNode = {
|
81
|
+
* kind: 'OutputField',
|
82
|
+
* parentType: userType,
|
83
|
+
* fieldDef: userType.getFields()['name']
|
84
|
+
* }
|
85
|
+
* ```
|
86
|
+
*/
|
87
|
+
export type SemanticNode = GraphQLObjectType | GraphQLScalarType | GraphQLInterfaceType | GraphQLUnionType | GraphQLEnumType | GraphQLInputObjectType | OutputFieldNode | InputFieldNode | ArgumentNode | OperationNode | VariableNode | FragmentNode | InvalidFieldNode;
|
88
|
+
/**
|
89
|
+
* Type guards for our custom wrapper types
|
90
|
+
*/
|
91
|
+
export declare function isOutputField(node: SemanticNode | undefined): node is OutputFieldNode;
|
92
|
+
export declare function isInputField(node: SemanticNode | undefined): node is InputFieldNode;
|
93
|
+
export declare function isArgument(node: SemanticNode | undefined): node is ArgumentNode;
|
94
|
+
export declare function isOperation(node: SemanticNode | undefined): node is OperationNode;
|
95
|
+
export declare function isVariable(node: SemanticNode | undefined): node is VariableNode;
|
96
|
+
export declare function isFragment(node: SemanticNode | undefined): node is FragmentNode;
|
97
|
+
export declare function isInvalidField(node: SemanticNode | undefined): node is InvalidFieldNode;
|
98
|
+
//# sourceMappingURL=semantic-nodes.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"semantic-nodes.d.ts","sourceRoot":"","sources":["../../../../../src/template/components/GraphQLInteractive/lib/semantic-nodes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,eAAe,EACf,eAAe,EACf,YAAY,EACZ,iBAAiB,EACjB,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,EACpB,gBAAgB,EAChB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EACjB,MAAM,SAAS,CAAA;AAEhB;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,aAAa,CAAA;IACnB,UAAU,EAAE,iBAAiB,GAAG,oBAAoB,CAAA;IACpD,QAAQ,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,YAAY,CAAA;IAClB,UAAU,EAAE,sBAAsB,CAAA;IAClC,QAAQ,EAAE,iBAAiB,CAAA;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAA;IAChB,UAAU,EAAE,iBAAiB,GAAG,oBAAoB,CAAA;IACpD,WAAW,EAAE,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACnC,WAAW,EAAE,eAAe,CAAA;CAC7B;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,WAAW,CAAA;IACjB,IAAI,EAAE,OAAO,GAAG,UAAU,GAAG,cAAc,CAAA;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAA;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,gBAAgB,CAAA;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,UAAU,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,gBAAgB,CAAA;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,cAAc,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,UAAU,EAAE,iBAAiB,GAAG,oBAAoB,CAAA;IACpD,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,MAAM,YAAY,GAEpB,iBAAiB,GACjB,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,eAAe,GACf,sBAAsB,GAEtB,eAAe,GACf,cAAc,GACd,YAAY,GACZ,aAAa,GACb,YAAY,GACZ,YAAY,GACZ,gBAAgB,CAAA;AAEpB;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,eAAe,CAErF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,cAAc,CAEnF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,YAAY,CAE/E;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,aAAa,CAEjF;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,YAAY,CAE/E;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,YAAY,CAE/E;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,SAAS,GAAG,IAAI,IAAI,gBAAgB,CAEvF"}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
/**
|
2
|
+
* Semantic Node Types for GraphQL Interactive
|
3
|
+
*
|
4
|
+
* This module defines the semantic node types used to represent
|
5
|
+
* GraphQL schema information alongside tree-sitter syntax nodes.
|
6
|
+
*/
|
7
|
+
/**
|
8
|
+
* Type guards for our custom wrapper types
|
9
|
+
*/
|
10
|
+
export function isOutputField(node) {
|
11
|
+
return node != null && 'kind' in node && node.kind === 'OutputField';
|
12
|
+
}
|
13
|
+
export function isInputField(node) {
|
14
|
+
return node != null && 'kind' in node && node.kind === 'InputField';
|
15
|
+
}
|
16
|
+
export function isArgument(node) {
|
17
|
+
return node != null && 'kind' in node && node.kind === 'Argument';
|
18
|
+
}
|
19
|
+
export function isOperation(node) {
|
20
|
+
return node != null && 'kind' in node && node.kind === 'Operation';
|
21
|
+
}
|
22
|
+
export function isVariable(node) {
|
23
|
+
return node != null && 'kind' in node && node.kind === 'Variable';
|
24
|
+
}
|
25
|
+
export function isFragment(node) {
|
26
|
+
return node != null && 'kind' in node && node.kind === 'Fragment';
|
27
|
+
}
|
28
|
+
export function isInvalidField(node) {
|
29
|
+
return node != null && 'kind' in node && node.kind === 'InvalidField';
|
30
|
+
}
|
31
|
+
//# sourceMappingURL=semantic-nodes.js.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"semantic-nodes.js","sourceRoot":"","sources":["../../../../../src/template/components/GraphQLInteractive/lib/semantic-nodes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuHH;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,IAA8B;IAC1D,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,aAAa,CAAA;AACtE,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAA8B;IACzD,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,YAAY,CAAA;AACrE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAA8B;IACvD,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,IAA8B;IACxD,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,CAAA;AACpE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAA8B;IACvD,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,IAA8B;IACvD,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,cAAc,CAAC,IAA8B;IAC3D,OAAO,IAAI,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,cAAc,CAAA;AACvE,CAAC"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../../src/template/components/content/$$.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA
|
1
|
+
{"version":3,"file":"$$.d.ts","sourceRoot":"","sources":["../../../../src/template/components/content/$$.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"$$.js","sourceRoot":"","sources":["../../../../src/template/components/content/$$.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA
|
1
|
+
{"version":3,"file":"$$.js","sourceRoot":"","sources":["../../../../src/template/components/content/$$.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAA"}
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "polen",
|
3
|
-
"version": "0.10.0-next.
|
3
|
+
"version": "0.10.0-next.22",
|
4
4
|
"type": "module",
|
5
5
|
"description": "A framework for delightful GraphQL developer portals",
|
6
6
|
"author": {
|
@@ -47,24 +47,6 @@
|
|
47
47
|
"#lib/task/task": {
|
48
48
|
"default": "./build/lib/task/$$.js"
|
49
49
|
},
|
50
|
-
"#lib/graphql-document": {
|
51
|
-
"default": "./build/lib/graphql-document/$.js"
|
52
|
-
},
|
53
|
-
"#lib/graphql-document/graphql-document": {
|
54
|
-
"default": "./build/lib/graphql-document/$$.js"
|
55
|
-
},
|
56
|
-
"#lib/graphql-document/components/index": {
|
57
|
-
"default": "./build/lib/graphql-document/components/index.js"
|
58
|
-
},
|
59
|
-
"#lib/graphql-document/components/GraphQLDocumentWithSchema": {
|
60
|
-
"default": "./build/lib/graphql-document/components/GraphQLDocumentWithSchema.js"
|
61
|
-
},
|
62
|
-
"#lib/graphql-document/components/GraphQLDocument": {
|
63
|
-
"default": "./build/lib/graphql-document/components/GraphQLDocument.js"
|
64
|
-
},
|
65
|
-
"#lib/graphql-document/schema-context": {
|
66
|
-
"default": "./build/lib/graphql-document/schema-context.js"
|
67
|
-
},
|
68
50
|
"#template/components/content/$$": {
|
69
51
|
"default": "./build/template/components/content/$$.js"
|
70
52
|
},
|
@@ -107,6 +89,7 @@
|
|
107
89
|
"@hiogawa/vite-plugin-ssr-css": "^0.0.1",
|
108
90
|
"@hono/node-server": "^1.15.0",
|
109
91
|
"@mdx-js/mdx": "^3.1.0",
|
92
|
+
"@mdx-js/react": "^3.1.0",
|
110
93
|
"@mdx-js/rollup": "^3.1.0",
|
111
94
|
"@radix-ui/react-icons": "^1.3.2",
|
112
95
|
"@radix-ui/themes": "^3.2.1",
|
@@ -148,6 +131,7 @@
|
|
148
131
|
"source-map": "^0.7.4",
|
149
132
|
"superjson": "^2.2.2",
|
150
133
|
"tinyglobby": "^0.2.14",
|
134
|
+
"tree-sitter-graphql-grammar-wasm": "^1.0.0",
|
151
135
|
"tsx": "^4.20.3",
|
152
136
|
"typescript": "^5.8.3",
|
153
137
|
"unified": "^11.0.5",
|
@@ -155,9 +139,9 @@
|
|
155
139
|
"vite": "npm:rolldown-vite@^7.0.4",
|
156
140
|
"vite-plugin-inspect": "^11.3.0",
|
157
141
|
"vite-plugin-restart": "^0.4.2",
|
142
|
+
"web-tree-sitter": "^0.25.6",
|
158
143
|
"youch-core": "^0.3.3",
|
159
|
-
"zx": "8.6.1"
|
160
|
-
"@mdx-js/react": "^3.1.0"
|
144
|
+
"zx": "8.6.1"
|
161
145
|
},
|
162
146
|
"devDependencies": {
|
163
147
|
"@actions/core": "^1.11.1",
|
@@ -35,7 +35,6 @@ export const build = async (input: BuildConfigInput) => {
|
|
35
35
|
consola.info(`try it: npx serve ${viteUserConfig._polen.paths.project.relative.build.root} -p 4000`)
|
36
36
|
} else if (input.architecture === `ssr`) {
|
37
37
|
consola.info(`try it: node ${viteUserConfig._polen.paths.project.relative.build.root}/app.js`)
|
38
|
-
|
39
|
-
consola.info(`Then visit http://localhost:3001`)
|
38
|
+
consola.info(`Then visit http://localhost:${viteUserConfig._polen.server.port}`)
|
40
39
|
}
|
41
40
|
}
|
@@ -53,22 +53,34 @@ export interface ConfigInput {
|
|
53
53
|
*/
|
54
54
|
schema?: SchemaConfigInput
|
55
55
|
/**
|
56
|
-
* Programmatically
|
56
|
+
* Programmatically enhance your GraphQL schema documentation without modifying the schema files.
|
57
57
|
*
|
58
|
-
*
|
58
|
+
* Perfect for adding implementation details, usage examples, deprecation notices,
|
59
|
+
* or any additional context that helps developers understand your API better.
|
59
60
|
*
|
60
61
|
* @example
|
61
62
|
* ```ts
|
62
|
-
* schemaAugmentations: [
|
63
|
-
*
|
64
|
-
*
|
65
|
-
*
|
66
|
-
*
|
67
|
-
*
|
68
|
-
*
|
69
|
-
*
|
63
|
+
* schemaAugmentations: [
|
64
|
+
* {
|
65
|
+
* type: 'description',
|
66
|
+
* on: {
|
67
|
+
* type: 'TargetType',
|
68
|
+
* name: 'User'
|
69
|
+
* },
|
70
|
+
* placement: 'after',
|
71
|
+
* content: '\n\nSee the [User Guide](/guides/users) for detailed usage.'
|
72
|
+
* },
|
73
|
+
* {
|
74
|
+
* type: 'description',
|
75
|
+
* on: {
|
76
|
+
* type: 'TargetField',
|
77
|
+
* targetType: 'Query',
|
78
|
+
* name: 'users'
|
79
|
+
* },
|
80
|
+
* placement: 'after',
|
81
|
+
* content: '\n\n**Rate limit:** 100 requests per minute'
|
70
82
|
* }
|
71
|
-
*
|
83
|
+
* ]
|
72
84
|
* ```
|
73
85
|
*/
|
74
86
|
schemaAugmentations?: SchemaAugmentation.Augmentation[]
|
@@ -159,6 +171,40 @@ export interface ConfigInput {
|
|
159
171
|
*/
|
160
172
|
port?: number
|
161
173
|
}
|
174
|
+
/**
|
175
|
+
* Configuration for developer experience warnings.
|
176
|
+
*
|
177
|
+
* Polen can show helpful warnings for common issues or misconfigurations.
|
178
|
+
* Each warning type can be individually enabled or disabled.
|
179
|
+
*
|
180
|
+
* @example
|
181
|
+
* ```ts
|
182
|
+
* warnings: {
|
183
|
+
* interactiveWithoutSchema: {
|
184
|
+
* enabled: false // Disable warning when interactive code blocks are used without a schema
|
185
|
+
* }
|
186
|
+
* }
|
187
|
+
* ```
|
188
|
+
*/
|
189
|
+
warnings?: {
|
190
|
+
/**
|
191
|
+
* Warning shown when GraphQL code blocks have the `interactive` flag
|
192
|
+
* but no schema is configured.
|
193
|
+
*
|
194
|
+
* Interactive features require a schema to provide field validation,
|
195
|
+
* type information, and auto-completion.
|
196
|
+
*
|
197
|
+
* @default { enabled: true }
|
198
|
+
*/
|
199
|
+
interactiveWithoutSchema?: {
|
200
|
+
/**
|
201
|
+
* Whether to show this warning.
|
202
|
+
*
|
203
|
+
* @default true
|
204
|
+
*/
|
205
|
+
enabled?: boolean
|
206
|
+
}
|
207
|
+
}
|
162
208
|
/**
|
163
209
|
* Advanced configuration options.
|
164
210
|
*
|
@@ -295,6 +341,11 @@ export interface Config {
|
|
295
341
|
ssr: {
|
296
342
|
enabled: boolean
|
297
343
|
}
|
344
|
+
warnings: {
|
345
|
+
interactiveWithoutSchema: {
|
346
|
+
enabled: boolean
|
347
|
+
}
|
348
|
+
}
|
298
349
|
paths: {
|
299
350
|
project: {
|
300
351
|
rootDir: string
|
@@ -355,6 +406,11 @@ const configInputDefaults: Config = {
|
|
355
406
|
ssr: {
|
356
407
|
enabled: true,
|
357
408
|
},
|
409
|
+
warnings: {
|
410
|
+
interactiveWithoutSchema: {
|
411
|
+
enabled: true,
|
412
|
+
},
|
413
|
+
},
|
358
414
|
paths: buildPaths(process.cwd()),
|
359
415
|
advanced: {
|
360
416
|
isSelfContainedMode: false,
|
@@ -451,5 +507,10 @@ export const normalizeInput = async (
|
|
451
507
|
config.server.port = configInput.server.port
|
452
508
|
}
|
453
509
|
|
510
|
+
// Process warnings configuration
|
511
|
+
if (configInput?.warnings?.interactiveWithoutSchema?.enabled !== undefined) {
|
512
|
+
config.warnings.interactiveWithoutSchema.enabled = configInput.warnings.interactiveWithoutSchema.enabled
|
513
|
+
}
|
514
|
+
|
454
515
|
return config
|
455
516
|
}
|
package/src/api/config/merge.ts
CHANGED
@@ -17,33 +17,33 @@ export const mergeInputs = (
|
|
17
17
|
const merged: ConfigInput = spreadShallow(base, overrides)
|
18
18
|
|
19
19
|
// Merge schema if both have it
|
20
|
-
if (base.schema
|
20
|
+
if (base.schema ?? overrides.schema) {
|
21
21
|
merged.schema = overrides.schema ?? base.schema
|
22
22
|
}
|
23
23
|
|
24
24
|
// Merge build config
|
25
|
-
if (base.build
|
25
|
+
if (base.build ?? overrides.build) {
|
26
26
|
merged.build = spreadShallow(base.build, overrides.build)
|
27
27
|
}
|
28
28
|
|
29
29
|
// Merge server config
|
30
|
-
if (base.server
|
30
|
+
if (base.server ?? overrides.server) {
|
31
31
|
merged.server = spreadShallow(base.server, overrides.server)
|
32
32
|
}
|
33
33
|
|
34
34
|
// Merge advanced config
|
35
|
-
if (base.advanced
|
35
|
+
if (base.advanced ?? overrides.advanced) {
|
36
36
|
merged.advanced = spreadShallow(base.advanced, overrides.advanced)
|
37
37
|
|
38
38
|
// Merge advanced.watch config
|
39
|
-
if (base.advanced?.watch
|
39
|
+
if (base.advanced?.watch ?? overrides.advanced?.watch) {
|
40
40
|
merged.advanced.watch = spreadShallow(
|
41
41
|
base.advanced?.watch,
|
42
42
|
overrides.advanced?.watch,
|
43
43
|
)
|
44
44
|
|
45
45
|
// Merge watch.also arrays
|
46
|
-
if (base.advanced?.watch?.also
|
46
|
+
if (base.advanced?.watch?.also ?? overrides.advanced?.watch?.also) {
|
47
47
|
merged.advanced.watch.also = [
|
48
48
|
...(base.advanced?.watch?.also ?? []),
|
49
49
|
...(overrides.advanced?.watch?.also ?? []),
|
package/src/api/content/scan.ts
CHANGED
@@ -73,7 +73,7 @@ export const scan = async (options: {
|
|
73
73
|
// Update pages to have virtual root as parent if they don't have one
|
74
74
|
const pagesWithVirtualRoot = pagesWithIds.map(page => ({
|
75
75
|
...page,
|
76
|
-
parentId: page.parentId
|
76
|
+
parentId: page.parentId ?? `__virtual_root__`,
|
77
77
|
}))
|
78
78
|
|
79
79
|
tree = Tree.fromList([virtualRoot, ...pagesWithVirtualRoot])
|
@@ -173,13 +173,13 @@ const buildSidebarForDirectory = (topLevelDir: string, pages: Page[]): Sidebar =
|
|
173
173
|
}
|
174
174
|
|
175
175
|
// Process top-level pages (direct children of the directory)
|
176
|
-
const topLevelPages = pagesByParent.get(topLevelDir)
|
176
|
+
const topLevelPages = pagesByParent.get(topLevelDir) ?? []
|
177
177
|
|
178
178
|
// Sort pages by their directory order (extracted from file path)
|
179
179
|
const sortedTopLevelPages = [...topLevelPages].sort((a, b) => {
|
180
180
|
// For sections, we need to look at the directory name in the file path
|
181
|
-
const dirA = a.route.file.path.relative.dir.split(`/`).pop()
|
182
|
-
const dirB = b.route.file.path.relative.dir.split(`/`).pop()
|
181
|
+
const dirA = a.route.file.path.relative.dir.split(`/`).pop() ?? ``
|
182
|
+
const dirB = b.route.file.path.relative.dir.split(`/`).pop() ?? ``
|
183
183
|
|
184
184
|
// Extract order from directory names like "10_b", "20_c"
|
185
185
|
const orderMatchA = /^(\d+)[_-]/.exec(dirA)
|
@@ -197,7 +197,7 @@ const buildSidebarForDirectory = (topLevelDir: string, pages: Page[]): Sidebar =
|
|
197
197
|
for (const page of sortedTopLevelPages) {
|
198
198
|
const pageName = page.route.logical.path[page.route.logical.path.length - 1]!
|
199
199
|
const childPath = page.route.logical.path.join(`/`)
|
200
|
-
const childPages = pagesByParent.get(childPath)
|
200
|
+
const childPages = pagesByParent.get(childPath) ?? []
|
201
201
|
|
202
202
|
if (childPages.length > 0 || FileRouter.routeIsFromIndexFile(page.route)) {
|
203
203
|
// This is a section (has children or is an index page for a subdirectory)
|
@@ -162,7 +162,7 @@ const BuildManifest = (config: Config.Config): Vite.Plugin => {
|
|
162
162
|
const manifest: PolenBuildManifest = {
|
163
163
|
type: config.build.architecture === `ssr` ? `ssr` : `ssg`,
|
164
164
|
version: packageJson.version,
|
165
|
-
basePath: config.build.base
|
165
|
+
basePath: config.build.base ?? `/`,
|
166
166
|
}
|
167
167
|
|
168
168
|
// Emit the manifest as an asset
|
package/src/lib/kit-temp.test.ts
CHANGED
@@ -141,17 +141,17 @@ describe('property-based tests', () => {
|
|
141
141
|
describe('mergeShallow', () => {
|
142
142
|
test('merges objects while omitting undefined values', () => {
|
143
143
|
const base = { a: 1, b: 2, c: 3 }
|
144
|
-
const override = { b: undefined, c: 4, d: 5 }
|
144
|
+
const override = { a: 1, b: undefined, c: 4, d: 5 }
|
145
145
|
|
146
|
-
expect(spreadShallow(base, override)).toEqual({ a: 1, b: 2, c: 4, d: 5 })
|
146
|
+
expect(spreadShallow<any>(base, override)).toEqual({ a: 1, b: 2, c: 4, d: 5 })
|
147
147
|
})
|
148
148
|
|
149
149
|
test('handles multiple objects', () => {
|
150
150
|
const obj1 = { a: 1, b: 2 }
|
151
|
-
const obj2 = { b: undefined, c: 3 }
|
152
|
-
const obj3 = { c: undefined, d: 4 }
|
151
|
+
const obj2 = { a: 1, b: undefined, c: 3 }
|
152
|
+
const obj3 = { a: 1, b: 2, c: undefined, d: 4 }
|
153
153
|
|
154
|
-
expect(spreadShallow(obj1, obj2, obj3)).toEqual({ a: 1, b: 2, c: 3, d: 4 })
|
154
|
+
expect(spreadShallow<any>(obj1, obj2, obj3)).toEqual({ a: 1, b: 2, c: 3, d: 4 })
|
155
155
|
})
|
156
156
|
|
157
157
|
test('handles empty objects', () => {
|
@@ -178,8 +178,8 @@ describe('mergeShallow', () => {
|
|
178
178
|
|
179
179
|
test('preserves null values', () => {
|
180
180
|
const obj1 = { a: 1, b: null }
|
181
|
-
const obj2 = { b: 2, c: null }
|
182
|
-
expect(spreadShallow(obj1, obj2)).toEqual({ a: 1, b: 2, c: null })
|
181
|
+
const obj2 = { a: 1, b: 2, c: null }
|
182
|
+
expect(spreadShallow<any>(obj1, obj2)).toEqual({ a: 1, b: 2, c: null })
|
183
183
|
})
|
184
184
|
|
185
185
|
test('preserves false and 0 values', () => {
|
@@ -191,7 +191,7 @@ describe('mergeShallow', () => {
|
|
191
191
|
test('property-based: never includes undefined values', () => {
|
192
192
|
fc.assert(
|
193
193
|
fc.property(
|
194
|
-
fc.array(fc.
|
194
|
+
fc.array(fc.dictionary(fc.string(), fc.option(fc.anything()))),
|
195
195
|
(objects) => {
|
196
196
|
const result = spreadShallow(...objects)
|
197
197
|
Object.values(result).forEach(value => {
|
@@ -208,7 +208,7 @@ describe('mergeShallow', () => {
|
|
208
208
|
fc.object(),
|
209
209
|
fc.object(),
|
210
210
|
fc.string(),
|
211
|
-
fc.anything(
|
211
|
+
fc.anything().filter(v => v !== undefined),
|
212
212
|
(obj1, obj2, key, value) => {
|
213
213
|
// Set the same key in both objects
|
214
214
|
obj1[key] = 'first'
|
@@ -41,7 +41,7 @@ export const _getPathsRecurse = (
|
|
41
41
|
if (isIndexRoute(route)) {
|
42
42
|
// Index route uses the parent's accumulated path.
|
43
43
|
// If parentPath is empty (implying root), it should be ROOT_PATH
|
44
|
-
collectedPaths.add(parentPath
|
44
|
+
collectedPaths.add(parentPath ?? ROOT_PATH)
|
45
45
|
|
46
46
|
continue
|
47
47
|
}
|
package/src/project-data.ts
CHANGED
package/src/sandbox.ts
CHANGED
@@ -1,20 +1,43 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
1
|
+
import { buildSchema } from 'graphql'
|
2
|
+
import { parseGraphQLWithTreeSitter } from './template/components/GraphQLInteractive/lib/parser.js'
|
3
3
|
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
4
|
+
const schema = buildSchema(`
|
5
|
+
type Pokemon {
|
6
|
+
id: ID!
|
7
|
+
name: String!
|
8
|
+
types: [PokemonType!]!
|
9
|
+
abilities: [Ability!]!
|
10
|
+
}
|
11
|
+
|
12
|
+
type Ability {
|
13
|
+
name: String!
|
14
|
+
description: String!
|
15
|
+
}
|
16
|
+
|
17
|
+
enum PokemonType {
|
18
|
+
FIRE
|
19
|
+
WATER
|
20
|
+
GRASS
|
21
|
+
ELECTRIC
|
22
|
+
PSYCHIC
|
23
|
+
}
|
24
|
+
|
25
|
+
type Query {
|
26
|
+
pokemon(id: ID!): Pokemon
|
27
|
+
}
|
28
|
+
`)
|
9
29
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
30
|
+
const code = `query GetPokemon($id: ID!) {
|
31
|
+
pokemon(id: $id) {
|
32
|
+
id
|
33
|
+
name
|
34
|
+
}
|
35
|
+
}`
|
15
36
|
|
16
|
-
|
17
|
-
const
|
18
|
-
|
19
|
-
console.log(
|
20
|
-
|
37
|
+
console.log('Testing GraphQL parser...')
|
38
|
+
const tokens = await parseGraphQLWithTreeSitter(code, [], schema)
|
39
|
+
console.log('\nTotal tokens:', tokens.length)
|
40
|
+
console.log('\nInteractive tokens:')
|
41
|
+
tokens.filter(t => t.polen.isInteractive()).forEach(t => {
|
42
|
+
console.log(`- "${t.text}" (${t.highlighter.getCssClass()}) -> ${t.polen.getReferenceUrl()}`)
|
43
|
+
})
|