graphile-build 5.0.0-beta.24 → 5.0.0-beta.26
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/CHANGELOG.md +93 -0
- package/README.md +2 -0
- package/dist/SchemaBuilder.d.ts +1 -0
- package/dist/SchemaBuilder.d.ts.map +1 -1
- package/dist/SchemaBuilder.js +10 -4
- package/dist/SchemaBuilder.js.map +1 -1
- package/dist/behavior.d.ts +26 -6
- package/dist/behavior.d.ts.map +1 -1
- package/dist/behavior.js +406 -88
- package/dist/behavior.js.map +1 -1
- package/dist/global.d.ts +7 -0
- package/dist/global.d.ts.map +1 -1
- package/dist/index.d.ts +23 -5
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/makeNewBuild.d.ts.map +1 -1
- package/dist/makeNewBuild.js +12 -5
- package/dist/makeNewBuild.js.map +1 -1
- package/dist/newWithHooks/index.d.ts.map +1 -1
- package/dist/newWithHooks/index.js +4 -1
- package/dist/newWithHooks/index.js.map +1 -1
- package/dist/plugins/AddInterfaceSubtypesToTypesPlugin.d.ts +10 -0
- package/dist/plugins/AddInterfaceSubtypesToTypesPlugin.d.ts.map +1 -0
- package/dist/plugins/AddInterfaceSubtypesToTypesPlugin.js +31 -0
- package/dist/plugins/AddInterfaceSubtypesToTypesPlugin.js.map +1 -0
- package/dist/plugins/AddNodeInterfaceToSuitableTypesPlugin.d.ts +7 -0
- package/dist/plugins/AddNodeInterfaceToSuitableTypesPlugin.d.ts.map +1 -1
- package/dist/plugins/AddNodeInterfaceToSuitableTypesPlugin.js +2 -1
- package/dist/plugins/AddNodeInterfaceToSuitableTypesPlugin.js.map +1 -1
- package/dist/plugins/BuiltinScalarConnectionsPlugin.d.ts +7 -0
- package/dist/plugins/BuiltinScalarConnectionsPlugin.d.ts.map +1 -1
- package/dist/plugins/BuiltinScalarConnectionsPlugin.js.map +1 -1
- package/dist/plugins/ClientMutationIdDescriptionPlugin.d.ts +10 -0
- package/dist/plugins/ClientMutationIdDescriptionPlugin.d.ts.map +1 -1
- package/dist/plugins/ClientMutationIdDescriptionPlugin.js.map +1 -1
- package/dist/plugins/CollectReferencedTypesPlugin.d.ts +10 -0
- package/dist/plugins/CollectReferencedTypesPlugin.d.ts.map +1 -0
- package/dist/plugins/CollectReferencedTypesPlugin.js +34 -0
- package/dist/plugins/CollectReferencedTypesPlugin.js.map +1 -0
- package/dist/plugins/CommonBehaviorsPlugin.d.ts +16 -0
- package/dist/plugins/CommonBehaviorsPlugin.d.ts.map +1 -0
- package/dist/plugins/CommonBehaviorsPlugin.js +44 -0
- package/dist/plugins/CommonBehaviorsPlugin.js.map +1 -0
- package/dist/plugins/CommonTypesPlugin.d.ts +5 -0
- package/dist/plugins/CommonTypesPlugin.d.ts.map +1 -1
- package/dist/plugins/CommonTypesPlugin.js.map +1 -1
- package/dist/plugins/ConnectionPlugin.d.ts +5 -0
- package/dist/plugins/ConnectionPlugin.d.ts.map +1 -1
- package/dist/plugins/ConnectionPlugin.js.map +1 -1
- package/dist/plugins/CursorTypePlugin.d.ts +8 -0
- package/dist/plugins/CursorTypePlugin.d.ts.map +1 -1
- package/dist/plugins/CursorTypePlugin.js.map +1 -1
- package/dist/plugins/MutationPayloadQueryPlugin.d.ts +10 -0
- package/dist/plugins/MutationPayloadQueryPlugin.d.ts.map +1 -1
- package/dist/plugins/MutationPayloadQueryPlugin.js.map +1 -1
- package/dist/plugins/MutationPlugin.d.ts +10 -0
- package/dist/plugins/MutationPlugin.d.ts.map +1 -1
- package/dist/plugins/MutationPlugin.js.map +1 -1
- package/dist/plugins/NodeAccessorPlugin.d.ts +5 -0
- package/dist/plugins/NodeAccessorPlugin.d.ts.map +1 -1
- package/dist/plugins/NodeAccessorPlugin.js.map +1 -1
- package/dist/plugins/NodeIdCodecBase64JSONPlugin.d.ts +7 -0
- package/dist/plugins/NodeIdCodecBase64JSONPlugin.d.ts.map +1 -1
- package/dist/plugins/NodeIdCodecBase64JSONPlugin.js.map +1 -1
- package/dist/plugins/NodeIdCodecPipeStringPlugin.d.ts +7 -0
- package/dist/plugins/NodeIdCodecPipeStringPlugin.d.ts.map +1 -1
- package/dist/plugins/NodeIdCodecPipeStringPlugin.js.map +1 -1
- package/dist/plugins/NodePlugin.d.ts +5 -0
- package/dist/plugins/NodePlugin.d.ts.map +1 -1
- package/dist/plugins/NodePlugin.js.map +1 -1
- package/dist/plugins/PageInfoStartEndCursorPlugin.d.ts +5 -0
- package/dist/plugins/PageInfoStartEndCursorPlugin.d.ts.map +1 -1
- package/dist/plugins/PageInfoStartEndCursorPlugin.js.map +1 -1
- package/dist/plugins/QueryPlugin.d.ts +10 -0
- package/dist/plugins/QueryPlugin.d.ts.map +1 -1
- package/dist/plugins/QueryPlugin.js.map +1 -1
- package/dist/plugins/QueryQueryPlugin.d.ts +7 -0
- package/dist/plugins/QueryQueryPlugin.d.ts.map +1 -1
- package/dist/plugins/QueryQueryPlugin.js.map +1 -1
- package/dist/plugins/RegisterQueryNodePlugin.d.ts +7 -0
- package/dist/plugins/RegisterQueryNodePlugin.d.ts.map +1 -1
- package/dist/plugins/RegisterQueryNodePlugin.js.map +1 -1
- package/dist/plugins/StreamDeferPlugin.d.ts +7 -0
- package/dist/plugins/StreamDeferPlugin.d.ts.map +1 -1
- package/dist/plugins/StreamDeferPlugin.js.map +1 -1
- package/dist/plugins/SubscriptionPlugin.d.ts +10 -0
- package/dist/plugins/SubscriptionPlugin.d.ts.map +1 -1
- package/dist/plugins/SubscriptionPlugin.js.map +1 -1
- package/dist/plugins/SwallowErrorsPlugin.d.ts +10 -0
- package/dist/plugins/SwallowErrorsPlugin.d.ts.map +1 -1
- package/dist/plugins/SwallowErrorsPlugin.js.map +1 -1
- package/dist/plugins/TrimEmptyDescriptionsPlugin.d.ts +7 -0
- package/dist/plugins/TrimEmptyDescriptionsPlugin.d.ts.map +1 -1
- package/dist/plugins/TrimEmptyDescriptionsPlugin.js.map +1 -1
- package/dist/plugins/index.d.ts +4 -1
- package/dist/plugins/index.d.ts.map +1 -1
- package/dist/plugins/index.js +7 -1
- package/dist/plugins/index.js.map +1 -1
- package/dist/preset.d.ts.map +1 -1
- package/dist/preset.js +4 -0
- package/dist/preset.js.map +1 -1
- package/dist/utils.d.ts +2 -2
- package/dist/utils.d.ts.map +1 -1
- package/dist/utils.js +3 -0
- package/dist/utils.js.map +1 -1
- package/dist/vendor/collectReferencedTypes.d.ts +3 -0
- package/dist/vendor/collectReferencedTypes.d.ts.map +1 -0
- package/dist/vendor/collectReferencedTypes.js +62 -0
- package/dist/vendor/collectReferencedTypes.js.map +1 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +5 -5
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,98 @@
|
|
|
1
1
|
# graphile-build
|
|
2
2
|
|
|
3
|
+
## 5.0.0-beta.26
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- [#2207](https://github.com/graphile/crystal/pull/2207)
|
|
8
|
+
[`0b1f7b577`](https://github.com/graphile/crystal/commit/0b1f7b577114a49b8e3283823845ec6e37484240)
|
|
9
|
+
Thanks [@benjie](https://github.com/benjie)! - Fix overwhelming logs and
|
|
10
|
+
errors being output by the new behavior system
|
|
11
|
+
|
|
12
|
+
## 5.0.0-beta.25
|
|
13
|
+
|
|
14
|
+
### Patch Changes
|
|
15
|
+
|
|
16
|
+
- [#2156](https://github.com/graphile/crystal/pull/2156)
|
|
17
|
+
[`653929af0`](https://github.com/graphile/crystal/commit/653929af0a99a8a4d52b66e66c736be668b8700a)
|
|
18
|
+
Thanks [@benjie](https://github.com/benjie)! - Improve error message when
|
|
19
|
+
`build.getTypeByName` and related methods are called before the 'init' phase
|
|
20
|
+
is complete.
|
|
21
|
+
|
|
22
|
+
- [#2198](https://github.com/graphile/crystal/pull/2198)
|
|
23
|
+
[`eb69c7361`](https://github.com/graphile/crystal/commit/eb69c7361fc7bf8c5b1ce342eeb698bd28c9e013)
|
|
24
|
+
Thanks [@benjie](https://github.com/benjie)! - Fix incorrect context type used
|
|
25
|
+
for GraphQLSchema_types hook, and add `config` to same context.
|
|
26
|
+
|
|
27
|
+
- [#2160](https://github.com/graphile/crystal/pull/2160)
|
|
28
|
+
[`54054b873`](https://github.com/graphile/crystal/commit/54054b8733236ba7b2f2fa47d84e085f7196e3f9)
|
|
29
|
+
Thanks [@benjie](https://github.com/benjie)! - Fix bug where creating the
|
|
30
|
+
build object also initialized it; this is incorrect since if you just want the
|
|
31
|
+
build object you don't necessarily want to register all of the GraphQL types
|
|
32
|
+
(and potentially discover naming conflicts) at that moment. Introduced new
|
|
33
|
+
`schemaBuilder.initBuild(schemaBuilder.createBuild(input))` API to explicitly
|
|
34
|
+
handle initing if you need an initialized build object.
|
|
35
|
+
|
|
36
|
+
- [#2160](https://github.com/graphile/crystal/pull/2160)
|
|
37
|
+
[`426e9320e`](https://github.com/graphile/crystal/commit/426e9320e76ef95927eebb6fe4072050b6208771)
|
|
38
|
+
Thanks [@benjie](https://github.com/benjie)! - Massive overhaul of the
|
|
39
|
+
behavior system which now has a centralized registry of known behaviors and
|
|
40
|
+
applies behaviors in a more careful and nuanced way, removing many hacks and
|
|
41
|
+
workarounds, and ultimately meaning that `defaultBehavior: "-*"` should now
|
|
42
|
+
operate correctly. Importantly, `addBehaviorToTags()` has been removed - you
|
|
43
|
+
should use `plugin.schema.entityBehaviors` to indicate behaviors as shown in
|
|
44
|
+
this PR - do not mod the tags directly unless they're explicitly meant to be
|
|
45
|
+
overrides.
|
|
46
|
+
|
|
47
|
+
Technically this is a significant breaking change (besides the removal of the
|
|
48
|
+
`addBehaviorToTags()` helper) because the order in which behaviors are applied
|
|
49
|
+
has changed, and so a different behavior might ultimately "win". This shows up
|
|
50
|
+
in places where there is ambiguity, for example if you add `@filterable` to a
|
|
51
|
+
function that you don't have execute permissions on, that function will now
|
|
52
|
+
show up in the schema since user overrides (smart tags) "win" versus inferred
|
|
53
|
+
behaviors such as introspected permissions; this wasn't the case before.
|
|
54
|
+
Hopefully most users will not notice any difference, and for those who do, the
|
|
55
|
+
`graphile behavior debug` CLI may be able to help you figure out what's going
|
|
56
|
+
on.
|
|
57
|
+
|
|
58
|
+
Be sure to print your schema before and after this update and look for
|
|
59
|
+
changes; if there are changes then you likely need to fix the relevant
|
|
60
|
+
behaviors/smart tags. (Hopefully there's no changes for you!)
|
|
61
|
+
|
|
62
|
+
You'll also need to change any places where you're specifying behaviors that
|
|
63
|
+
will be type checked; you can either cast your existing strings e.g.
|
|
64
|
+
`defaultBehavior: "+connection -list" as GraphileBuild.BehaviorString`, or
|
|
65
|
+
preferably you can specify your behaviors as an array, which should give you
|
|
66
|
+
auto-complete on each entry; e.g. `defaultBehavior: ["connection", "-list"]`.
|
|
67
|
+
|
|
68
|
+
- [#2199](https://github.com/graphile/crystal/pull/2199)
|
|
69
|
+
[`3b09b414f`](https://github.com/graphile/crystal/commit/3b09b414ff43c34593373fa1f242481b0c7ada70)
|
|
70
|
+
Thanks [@benjie](https://github.com/benjie)! - Database enum comments are now
|
|
71
|
+
reflected in the schema.
|
|
72
|
+
|
|
73
|
+
- [#2155](https://github.com/graphile/crystal/pull/2155)
|
|
74
|
+
[`8b472cd51`](https://github.com/graphile/crystal/commit/8b472cd51cd66d8227f9f2722d09c0a774792b0f)
|
|
75
|
+
Thanks [@benjie](https://github.com/benjie)! - `disablePlugins` now supports
|
|
76
|
+
TypeScript auto-completion of known plugin names. Other names are still
|
|
77
|
+
accepted without error, so this is just a minor DX improvement rather than
|
|
78
|
+
type safety.
|
|
79
|
+
|
|
80
|
+
- [#2198](https://github.com/graphile/crystal/pull/2198)
|
|
81
|
+
[`ba637b56d`](https://github.com/graphile/crystal/commit/ba637b56d79a14f82fe555739921724eab0c07f7)
|
|
82
|
+
Thanks [@benjie](https://github.com/benjie)! - Ensure that interface subtypes
|
|
83
|
+
are added to schema even if not referenced directly.
|
|
84
|
+
- Updated dependencies
|
|
85
|
+
[[`d5834def1`](https://github.com/graphile/crystal/commit/d5834def1fb84f3e2c0c0a6f146f8249a6df890a),
|
|
86
|
+
[`42b982463`](https://github.com/graphile/crystal/commit/42b9824637a6c05e02935f2b05b5e8e0c61965a6),
|
|
87
|
+
[`884a4b429`](https://github.com/graphile/crystal/commit/884a4b4297af90fdadaf73addd524f1fbbcfdcce),
|
|
88
|
+
[`38835313a`](https://github.com/graphile/crystal/commit/38835313ad93445206dccdd4cf07b90c5a6e4377),
|
|
89
|
+
[`cc0941731`](https://github.com/graphile/crystal/commit/cc0941731a1679bc04ce7b7fd4254009bb5f1f62),
|
|
90
|
+
[`b0865d169`](https://github.com/graphile/crystal/commit/b0865d1691105b5419009954c98c8109a27a5d81),
|
|
91
|
+
[`8b472cd51`](https://github.com/graphile/crystal/commit/8b472cd51cd66d8227f9f2722d09c0a774792b0f),
|
|
92
|
+
[`9cd9bb522`](https://github.com/graphile/crystal/commit/9cd9bb5222a9f0398ee4b8bfa4f741b6de2a2192)]:
|
|
93
|
+
- grafast@0.1.1-beta.15
|
|
94
|
+
- graphile-config@0.0.1-beta.10
|
|
95
|
+
|
|
3
96
|
## 5.0.0-beta.24
|
|
4
97
|
|
|
5
98
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -42,6 +42,8 @@ And please give some love to our featured sponsors 🤩:
|
|
|
42
42
|
<td align="center"><a href="https://dovetailapp.com/"><img src="https://graphile.org/images/sponsors/dovetail.png" width="90" height="90" alt="Dovetail" /><br />Dovetail</a> *</td>
|
|
43
43
|
<td align="center"><a href="https://stellate.co/"><img src="https://graphile.org/images/sponsors/Stellate.png" width="90" height="90" alt="Stellate" /><br />Stellate</a> *</td>
|
|
44
44
|
<td align="center"><a href="https://gosteelhead.com/"><img src="https://graphile.org/images/sponsors/steelhead.svg" width="90" height="90" alt="Steelhead" /><br />Steelhead</a> *</td>
|
|
45
|
+
</tr><tr>
|
|
46
|
+
<td align="center"><a href=""><img src="https://graphile.org/images/sponsors/latchbio.jpg" width="90" height="90" alt="LatchBio" /><br />LatchBio</a> *</td>
|
|
45
47
|
</tr></table>
|
|
46
48
|
|
|
47
49
|
<em>\* Sponsors the entire Graphile suite</em>
|
package/dist/SchemaBuilder.d.ts
CHANGED
|
@@ -45,6 +45,7 @@ declare class SchemaBuilder<TBuild extends GraphileBuild.Build = GraphileBuild.B
|
|
|
45
45
|
* Create the 'Build' object.
|
|
46
46
|
*/
|
|
47
47
|
createBuild(input: GraphileBuild.BuildInput): TBuild;
|
|
48
|
+
initBuild(build: TBuild): TBuild;
|
|
48
49
|
/**
|
|
49
50
|
* Given the `input` (result of the "gather" phase), builds the GraphQL
|
|
50
51
|
* schema synchronously.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaBuilder.d.ts","sourceRoot":"","sources":["../src/SchemaBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAkB,MAAM,iBAAiB,CAAC;AAOhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAepE;;;GAGG;AACH,cAAM,aAAa,CACjB,MAAM,SAAS,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CACxD,SAAQ,YAAY;IAclB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAdpB,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEhD,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAE9C;;;OAGG;IACH,YAAY,EAAE,oBAAoB,CAAC;gBAGzB,cAAc,EAAE,cAAc,CAAC,cAAc,EAC7C,UAAU,EAAE,aAAa,CAAC,UAAU;IAwB9C,OAAO,CAAC,cAAc;IAItB;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,SAAS,SAAS,MAAM,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,EACnE,QAAQ,EAAE,SAAS,EACnB,EAAE,EAAE,aAAa,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GACtD,IAAI;IAWP;;;OAGG;IACH,UAAU,CAAC,SAAS,SAAS,MAAM,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,EACzE,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,UAAU,CACf,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC,EACJ,KAAK,EAAE,UAAU,CACf,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC,EACJ,OAAO,EAAE,UAAU,CACjB,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC,EACJ,QAAQ,SAAK,GACZ,UAAU,CACX,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC;IAkFJ;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,UAAU,GAAG,MAAM;
|
|
1
|
+
{"version":3,"file":"SchemaBuilder.d.ts","sourceRoot":"","sources":["../src/SchemaBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,aAAa,CAAC;AAGrB,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAEtC,OAAO,EAAE,aAAa,EAAkB,MAAM,iBAAiB,CAAC;AAOhE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAepE;;;GAGG;AACH,cAAM,aAAa,CACjB,MAAM,SAAS,aAAa,CAAC,KAAK,GAAG,aAAa,CAAC,KAAK,CACxD,SAAQ,YAAY;IAclB,OAAO,CAAC,cAAc;IACtB,OAAO,CAAC,UAAU;IAdpB,OAAO,EAAE,aAAa,CAAC,aAAa,CAAC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEhD,kBAAkB,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAE9C;;;OAGG;IACH,YAAY,EAAE,oBAAoB,CAAC;gBAGzB,cAAc,EAAE,cAAc,CAAC,cAAc,EAC7C,UAAU,EAAE,aAAa,CAAC,UAAU;IAwB9C,OAAO,CAAC,cAAc;IAItB;;;;;;;;;;;;;OAaG;IACH,IAAI,CAAC,SAAS,SAAS,MAAM,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,EACnE,QAAQ,EAAE,SAAS,EACnB,EAAE,EAAE,aAAa,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,GACtD,IAAI;IAWP;;;OAGG;IACH,UAAU,CAAC,SAAS,SAAS,MAAM,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,EACzE,QAAQ,EAAE,SAAS,EACnB,KAAK,EAAE,UAAU,CACf,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC,EACJ,KAAK,EAAE,UAAU,CACf,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC,EACJ,OAAO,EAAE,UAAU,CACjB,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC,EACJ,QAAQ,SAAK,GACZ,UAAU,CACX,aAAa,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,CAC5D,CAAC,CAAC,CAAC;IAkFJ;;OAEG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,UAAU,GAAG,MAAM;IAgCpD,SAAS,CAAC,KAAK,EAAE,MAAM;IAavB;;;OAGG;IACH,WAAW,CAAC,KAAK,EAAE,aAAa,CAAC,UAAU,GAAG,aAAa;CAgD5D;AAED,eAAe,aAAa,CAAC"}
|
package/dist/SchemaBuilder.js
CHANGED
|
@@ -138,20 +138,26 @@ class SchemaBuilder extends events_1.EventEmitter {
|
|
|
138
138
|
Object.freeze(finalBuild);
|
|
139
139
|
finalBuild.behavior.freeze();
|
|
140
140
|
finalBuild.status.isBuildPhaseComplete = true;
|
|
141
|
+
return finalBuild;
|
|
142
|
+
}
|
|
143
|
+
initBuild(build) {
|
|
144
|
+
if (build.status.isInitPhaseComplete) {
|
|
145
|
+
return build;
|
|
146
|
+
}
|
|
141
147
|
const initContext = {
|
|
142
148
|
scope: Object.create(null),
|
|
143
149
|
type: "init",
|
|
144
150
|
};
|
|
145
|
-
this.applyHooks("init", INIT_OBJECT,
|
|
146
|
-
|
|
147
|
-
return
|
|
151
|
+
this.applyHooks("init", INIT_OBJECT, build, initContext);
|
|
152
|
+
build.status.isInitPhaseComplete = true;
|
|
153
|
+
return build;
|
|
148
154
|
}
|
|
149
155
|
/**
|
|
150
156
|
* Given the `input` (result of the "gather" phase), builds the GraphQL
|
|
151
157
|
* schema synchronously.
|
|
152
158
|
*/
|
|
153
159
|
buildSchema(input) {
|
|
154
|
-
const build = this.createBuild(input);
|
|
160
|
+
const build = this.initBuild(this.createBuild(input));
|
|
155
161
|
const schemaSpec = {
|
|
156
162
|
directives: [...build.graphql.specifiedDirectives],
|
|
157
163
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SchemaBuilder.js","sourceRoot":"","sources":["../src/SchemaBuilder.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"SchemaBuilder.js","sourceRoot":"","sources":["../src/SchemaBuilder.ts"],"names":[],"mappings":"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"}
|
package/dist/behavior.d.ts
CHANGED
|
@@ -4,14 +4,15 @@ interface BehaviorSpec {
|
|
|
4
4
|
scope: BehaviorScope;
|
|
5
5
|
}
|
|
6
6
|
export type BehaviorDynamicMethods = {
|
|
7
|
-
[entityType in keyof GraphileBuild.BehaviorEntities as `${entityType}Matches`]: (entity: GraphileBuild.BehaviorEntities[entityType], filter:
|
|
7
|
+
[entityType in keyof GraphileBuild.BehaviorEntities as `${entityType}Matches`]: (entity: GraphileBuild.BehaviorEntities[entityType], filter: keyof GraphileBuild.BehaviorStrings) => boolean | undefined;
|
|
8
8
|
} & {
|
|
9
|
-
[entityType in keyof GraphileBuild.BehaviorEntities as `${entityType}Behavior`]: (entity: GraphileBuild.BehaviorEntities[entityType]
|
|
9
|
+
[entityType in keyof GraphileBuild.BehaviorEntities as `${entityType}Behavior`]: (entity: GraphileBuild.BehaviorEntities[entityType]) => string;
|
|
10
10
|
};
|
|
11
11
|
export declare class Behavior {
|
|
12
12
|
private resolvedPreset;
|
|
13
13
|
private build;
|
|
14
14
|
private behaviorEntities;
|
|
15
|
+
private behaviorRegistry;
|
|
15
16
|
behaviorEntityTypes: (keyof GraphileBuild.BehaviorEntities)[];
|
|
16
17
|
private globalDefaultBehavior;
|
|
17
18
|
constructor(resolvedPreset: GraphileConfig.ResolvedPreset, build: GraphileBuild.Build);
|
|
@@ -25,7 +26,7 @@ export declare class Behavior {
|
|
|
25
26
|
* @param localBehaviorSpecsString - the behavior of the entity as determined by details on the entity itself and any applicable ancestors
|
|
26
27
|
* @param filter - the behavior the plugin specifies
|
|
27
28
|
*/
|
|
28
|
-
entityMatches<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, entity: GraphileBuild.BehaviorEntities[TEntityType], filter:
|
|
29
|
+
entityMatches<TEntityType extends keyof GraphileBuild.BehaviorEntities, TFilter extends keyof GraphileBuild.BehaviorStrings>(entityType: TEntityType, entity: GraphileBuild.BehaviorEntities[TEntityType], filter: TFilter): boolean | undefined;
|
|
29
30
|
/**
|
|
30
31
|
* Given the entity `rawEntity` of type `entityType`, this function will
|
|
31
32
|
* return the final behavior string for this entity, respecting all the
|
|
@@ -38,13 +39,24 @@ export declare class Behavior {
|
|
|
38
39
|
* entities) then you should represent it as a tuple and we'll automatically
|
|
39
40
|
* cache that.
|
|
40
41
|
*/
|
|
41
|
-
getBehaviorForEntity<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, rawEntity: GraphileBuild.BehaviorEntities[TEntityType]
|
|
42
|
+
getBehaviorForEntity<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, rawEntity: GraphileBuild.BehaviorEntities[TEntityType]): ResolvedBehavior;
|
|
43
|
+
getInferredBehaviorForEntity<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, rawEntity: GraphileBuild.BehaviorEntities[TEntityType]): ResolvedBehavior;
|
|
44
|
+
getOverrideBehaviorForEntity<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, rawEntity: GraphileBuild.BehaviorEntities[TEntityType]): ResolvedBehavior;
|
|
45
|
+
getCombinedBehaviorForEntities<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, sources: {
|
|
46
|
+
[entityType in keyof GraphileBuild.BehaviorEntities]?: GraphileBuild.BehaviorEntities[entityType];
|
|
47
|
+
}): ResolvedBehavior;
|
|
48
|
+
getPreferencesAppliedBehaviors<TEntityType extends keyof GraphileBuild.BehaviorEntities>(entityType: TEntityType, inferredBehavior: ResolvedBehavior, overrideBehavior: ResolvedBehavior): ResolvedBehavior;
|
|
42
49
|
/** @deprecated Please use entityMatches or stringMatches instead */
|
|
43
50
|
matches(localBehaviorSpecsString: string | string[] | null | undefined, filter: string, defaultBehavior?: string): boolean | undefined;
|
|
44
51
|
parseBehaviorString(behaviorString: string): BehaviorSpec[];
|
|
45
52
|
parseScope(filter: string): BehaviorScope;
|
|
53
|
+
private resolveBehavior;
|
|
54
|
+
private validateBehavior;
|
|
55
|
+
_defaultBehaviorByEntityTypeCache: Map<"string", string>;
|
|
56
|
+
getDefaultBehaviorFor(entityType: keyof GraphileBuild.BehaviorEntities): string;
|
|
46
57
|
}
|
|
47
|
-
export declare function joinBehaviors(strings: ReadonlyArray<string | null | undefined>):
|
|
58
|
+
export declare function joinBehaviors(strings: ReadonlyArray<string | null | undefined>): GraphileBuild.BehaviorString;
|
|
59
|
+
export declare function joinResolvedBehaviors(behaviors: ReadonlyArray<ResolvedBehavior>): ResolvedBehavior;
|
|
48
60
|
interface StackItem {
|
|
49
61
|
source: string;
|
|
50
62
|
prefix: string;
|
|
@@ -52,7 +64,15 @@ interface StackItem {
|
|
|
52
64
|
}
|
|
53
65
|
interface ResolvedBehavior {
|
|
54
66
|
stack: ReadonlyArray<StackItem>;
|
|
55
|
-
behaviorString:
|
|
67
|
+
behaviorString: GraphileBuild.BehaviorString;
|
|
68
|
+
toString(): string;
|
|
56
69
|
}
|
|
70
|
+
/**
|
|
71
|
+
* We're strict with this because we want to be able to expand this in future.
|
|
72
|
+
* For example I want to allow `@behavior all some` to operate the same as
|
|
73
|
+
* `@behavior all\n@behavior some`. I also want to be able to add
|
|
74
|
+
* `@behavior -all` to remove a previously enabled behavior.
|
|
75
|
+
*/
|
|
76
|
+
export declare function isValidBehaviorString(behavior: unknown): behavior is GraphileBuild.BehaviorString;
|
|
57
77
|
export {};
|
|
58
78
|
//# sourceMappingURL=behavior.d.ts.map
|
package/dist/behavior.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"behavior.d.ts","sourceRoot":"","sources":["../src/behavior.ts"],"names":[],"mappings":"AAGA,KAAK,aAAa,GAAG,MAAM,EAAE,CAAC;AAC9B,UAAU,YAAY;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,EAAE,aAAa,CAAC;CACtB;
|
|
1
|
+
{"version":3,"file":"behavior.d.ts","sourceRoot":"","sources":["../src/behavior.ts"],"names":[],"mappings":"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"}
|