polen 0.10.0-next.21 → 0.10.0-next.23
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 +4 -11
- package/build/api/builder/builder.d.ts.map +1 -1
- package/build/api/builder/builder.js +4 -3
- 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.d.ts.map +1 -1
- package/build/api/config/merge.js +8 -0
- package/build/api/config/merge.js.map +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/cli/commands/build.js +11 -7
- package/build/cli/commands/build.js.map +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 +8 -13
- package/src/api/config/configurator.ts +72 -11
- package/src/api/config/merge.ts +13 -0
- package/src/api/vite/plugins/core.ts +1 -0
- package/src/cli/commands/build.ts +11 -7
- package/src/lib/kit-temp.test.ts +9 -9
- 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.23",
|
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",
|
@@ -1,31 +1,26 @@
|
|
1
1
|
import { ConfigResolver } from '#api/config-resolver/index'
|
2
|
+
import type { ConfigInput } from '#api/config/configurator'
|
2
3
|
import { Config } from '#api/config/index'
|
3
4
|
import { Vite } from '#dep/vite/index'
|
4
5
|
import { Fs } from '@wollybeard/kit'
|
5
6
|
import consola from 'consola'
|
6
7
|
|
7
|
-
interface
|
8
|
+
interface BuildInput {
|
8
9
|
dir: string
|
9
|
-
|
10
|
-
base?: string
|
11
|
-
server?: {
|
12
|
-
port?: number
|
13
|
-
}
|
14
|
-
advanced?: {
|
15
|
-
debug?: boolean
|
16
|
-
}
|
10
|
+
overrides?: Partial<ConfigInput>
|
17
11
|
}
|
18
12
|
|
19
|
-
export const build = async (input:
|
13
|
+
export const build = async (input: BuildInput) => {
|
20
14
|
const viteUserConfig = await ConfigResolver.fromFile({
|
21
15
|
dir: input.dir,
|
22
|
-
overrides: input,
|
16
|
+
overrides: input.overrides,
|
23
17
|
})
|
24
18
|
|
25
19
|
const builder = await Vite.createBuilder(viteUserConfig)
|
26
20
|
await builder.buildApp()
|
27
21
|
|
28
|
-
|
22
|
+
const architecture = viteUserConfig._polen.build.architecture
|
23
|
+
if (architecture === `ssg`) {
|
29
24
|
consola.info(`Generating static site...`)
|
30
25
|
await import(viteUserConfig._polen.paths.project.absolute.build.serverEntrypoint)
|
31
26
|
// Clean up server file which should now be done being used for SSG geneation.
|
@@ -33,7 +28,7 @@ export const build = async (input: BuildConfigInput) => {
|
|
33
28
|
// todo: there is also some kind of prompt js asset that we probably need to clean up or review...
|
34
29
|
consola.success(`Done`)
|
35
30
|
consola.info(`try it: npx serve ${viteUserConfig._polen.paths.project.relative.build.root} -p 4000`)
|
36
|
-
} else if (
|
31
|
+
} else if (architecture === `ssr`) {
|
37
32
|
consola.info(`try it: node ${viteUserConfig._polen.paths.project.relative.build.root}/app.js`)
|
38
33
|
consola.info(`Then visit http://localhost:${viteUserConfig._polen.server.port}`)
|
39
34
|
}
|
@@ -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
@@ -31,6 +31,19 @@ export const mergeInputs = (
|
|
31
31
|
merged.server = spreadShallow(base.server, overrides.server)
|
32
32
|
}
|
33
33
|
|
34
|
+
// Merge warnings config
|
35
|
+
if (base.warnings ?? overrides.warnings) {
|
36
|
+
merged.warnings = spreadShallow(base.warnings, overrides.warnings)
|
37
|
+
|
38
|
+
// Merge interactiveWithoutSchema config
|
39
|
+
if (base.warnings?.interactiveWithoutSchema ?? overrides.warnings?.interactiveWithoutSchema) {
|
40
|
+
merged.warnings.interactiveWithoutSchema = spreadShallow(
|
41
|
+
base.warnings?.interactiveWithoutSchema,
|
42
|
+
overrides.warnings?.interactiveWithoutSchema,
|
43
|
+
)
|
44
|
+
}
|
45
|
+
}
|
46
|
+
|
34
47
|
// Merge advanced config
|
35
48
|
if (base.advanced ?? overrides.advanced) {
|
36
49
|
merged.advanced = spreadShallow(base.advanced, overrides.advanced)
|
@@ -44,12 +44,16 @@ if (!await Api.Project.validateProjectDirectory(dir)) {
|
|
44
44
|
|
45
45
|
await Api.Builder.build({
|
46
46
|
dir,
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
47
|
+
overrides: {
|
48
|
+
build: {
|
49
|
+
architecture: args.architecture,
|
50
|
+
base: args.base,
|
51
|
+
},
|
52
|
+
server: {
|
53
|
+
port: args.port,
|
54
|
+
},
|
55
|
+
advanced: {
|
56
|
+
debug: args.debug,
|
57
|
+
},
|
54
58
|
},
|
55
59
|
})
|
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'
|
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
|
+
})
|
@@ -1,6 +1,7 @@
|
|
1
1
|
import { type HighlightedCode, Pre } from 'codehike/code'
|
2
2
|
import React from 'react'
|
3
|
-
import
|
3
|
+
import PROJECT_DATA from 'virtual:polen/project/data.jsonsuper'
|
4
|
+
import { GraphQLInteractive } from './GraphQLInteractive/index.js'
|
4
5
|
|
5
6
|
interface CodeBlockProps {
|
6
7
|
codeblock: HighlightedCode
|
@@ -18,15 +19,11 @@ export const CodeBlock: React.FC<CodeBlockProps> = ({ codeblock }) => {
|
|
18
19
|
: null
|
19
20
|
|
20
21
|
return (
|
21
|
-
<
|
22
|
+
<GraphQLInteractive
|
23
|
+
codeblock={codeblock}
|
22
24
|
schema={schema}
|
23
|
-
|
24
|
-
|
25
|
-
renderCode: () => <Pre code={codeblock} />,
|
26
|
-
}}
|
27
|
-
>
|
28
|
-
{codeblock.value}
|
29
|
-
</GraphQLDocument>
|
25
|
+
showWarningIfNoSchema={PROJECT_DATA.warnings.interactiveWithoutSchema.enabled}
|
26
|
+
/>
|
30
27
|
)
|
31
28
|
}
|
32
29
|
|