graphile-utils 5.0.0-beta.4 → 5.0.0-beta.41
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 +936 -0
- package/README.md +55 -34
- package/dist/exportable.d.ts +1 -1
- package/dist/exportable.d.ts.map +1 -1
- package/dist/exportable.js +3 -3
- package/dist/exportable.js.map +1 -1
- package/dist/gql.js +1 -2
- package/dist/gql.js.map +1 -1
- package/dist/index.d.ts +7 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/makeAddInflectorsPlugin.js +2 -3
- package/dist/makeAddInflectorsPlugin.js.map +1 -1
- package/dist/makeAddPgTableConditionPlugin.d.ts +4 -4
- package/dist/makeAddPgTableConditionPlugin.d.ts.map +1 -1
- package/dist/makeAddPgTableConditionPlugin.js +11 -10
- package/dist/makeAddPgTableConditionPlugin.js.map +1 -1
- package/dist/makeAddPgTableOrderByPlugin.d.ts +10 -9
- package/dist/makeAddPgTableOrderByPlugin.d.ts.map +1 -1
- package/dist/makeAddPgTableOrderByPlugin.js +38 -33
- package/dist/makeAddPgTableOrderByPlugin.js.map +1 -1
- package/dist/makeChangeNullabilityPlugin.d.ts.map +1 -1
- package/dist/makeChangeNullabilityPlugin.js +1 -2
- package/dist/makeChangeNullabilityPlugin.js.map +1 -1
- package/dist/makeExtendSchemaPlugin.d.ts +38 -25
- package/dist/makeExtendSchemaPlugin.d.ts.map +1 -1
- package/dist/makeExtendSchemaPlugin.js +317 -54
- package/dist/makeExtendSchemaPlugin.js.map +1 -1
- package/dist/makePgSmartTagsPlugin.d.ts +8 -1
- package/dist/makePgSmartTagsPlugin.d.ts.map +1 -1
- package/dist/makePgSmartTagsPlugin.js +6 -6
- package/dist/makePgSmartTagsPlugin.js.map +1 -1
- package/dist/makeProcessSchemaPlugin.js +1 -2
- package/dist/makeProcessSchemaPlugin.js.map +1 -1
- package/dist/makeWrapPlansPlugin.d.ts +1 -1
- package/dist/makeWrapPlansPlugin.d.ts.map +1 -1
- package/dist/makeWrapPlansPlugin.js +23 -10
- package/dist/makeWrapPlansPlugin.js.map +1 -1
- package/dist/parseIdentifierParts.js +1 -2
- package/dist/parseIdentifierParts.js.map +1 -1
- package/package.json +25 -22
package/README.md
CHANGED
|
@@ -21,9 +21,9 @@ PRs to improve documentation are always welcome!
|
|
|
21
21
|
|
|
22
22
|
## Crowd-funded open-source software
|
|
23
23
|
|
|
24
|
-
To help us develop this software sustainably
|
|
25
|
-
|
|
26
|
-
|
|
24
|
+
To help us develop this software sustainably, we ask all individuals and
|
|
25
|
+
businesses that use it to help support its ongoing maintenance and development
|
|
26
|
+
via sponsorship.
|
|
27
27
|
|
|
28
28
|
### [Click here to find out more about sponsors and sponsorship.](https://www.graphile.org/sponsor/)
|
|
29
29
|
|
|
@@ -31,13 +31,7 @@ And please give some love to our featured sponsors 🤩:
|
|
|
31
31
|
|
|
32
32
|
<table><tr>
|
|
33
33
|
<td align="center"><a href="https://www.the-guild.dev/"><img src="https://graphile.org/images/sponsors/theguild.png" width="90" height="90" alt="The Guild" /><br />The Guild</a> *</td>
|
|
34
|
-
<td align="center"><a href="https://
|
|
35
|
-
<td align="center"><a href="https://qwick.com/"><img src="https://graphile.org/images/sponsors/qwick.png" width="90" height="90" alt="Qwick" /><br />Qwick</a> *</td>
|
|
36
|
-
<td align="center"><a href="https://www.netflix.com/"><img src="https://graphile.org/images/sponsors/Netflix.png" width="90" height="90" alt="Netflix" /><br />Netflix</a> *</td>
|
|
37
|
-
</tr><tr>
|
|
38
|
-
<td align="center"><a href=""><img src="https://graphile.org/images/sponsors/chadf.png" width="90" height="90" alt="Chad Furman" /><br />Chad Furman</a> *</td>
|
|
39
|
-
<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>
|
|
40
|
-
<td align="center"><a href="https://www.accenture.com/"><img src="https://graphile.org/images/sponsors/accenture.svg" width="90" height="90" alt="Accenture" /><br />Accenture</a> *</td>
|
|
34
|
+
<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>
|
|
41
35
|
</tr></table>
|
|
42
36
|
|
|
43
37
|
<em>\* Sponsors the entire Graphile suite</em>
|
|
@@ -74,7 +68,9 @@ const MySchemaExtensionPlugin =
|
|
|
74
68
|
makeExtendSchemaPlugin(
|
|
75
69
|
build => ({
|
|
76
70
|
typeDefs: gql`...`,
|
|
77
|
-
|
|
71
|
+
objects: {...},
|
|
72
|
+
interfaces: {...},
|
|
73
|
+
unions: {...},
|
|
78
74
|
})
|
|
79
75
|
);
|
|
80
76
|
|
|
@@ -84,32 +80,44 @@ module.exports = MySchemaExtensionPlugin;
|
|
|
84
80
|
e.g.:
|
|
85
81
|
|
|
86
82
|
```js
|
|
87
|
-
makeExtendSchemaPlugin((build) =>
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
83
|
+
makeExtendSchemaPlugin((build) => {
|
|
84
|
+
const {
|
|
85
|
+
grafast: { constant },
|
|
86
|
+
} = build;
|
|
87
|
+
return {
|
|
88
|
+
typeDefs: gql`
|
|
89
|
+
type Random {
|
|
90
|
+
float: Float!
|
|
91
|
+
number(min: Int!, max: Int!): Int!
|
|
92
|
+
}
|
|
93
|
+
extend type Query {
|
|
94
|
+
random: Random
|
|
95
|
+
}
|
|
96
|
+
`,
|
|
97
|
+
objects: {
|
|
98
|
+
Query: {
|
|
99
|
+
plans: {
|
|
100
|
+
random() {
|
|
101
|
+
return constant({});
|
|
102
|
+
},
|
|
103
|
+
},
|
|
101
104
|
},
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
105
|
+
Random: {
|
|
106
|
+
plans: {
|
|
107
|
+
float() {
|
|
108
|
+
return lambda(null, () => Math.random());
|
|
109
|
+
},
|
|
110
|
+
number(_parent, { $min, $max }) {
|
|
111
|
+
return lambda(
|
|
112
|
+
[$min, $max],
|
|
113
|
+
([min, max]) => min + Math.floor(Math.random() * (max - min + 1)),
|
|
114
|
+
);
|
|
115
|
+
},
|
|
116
|
+
},
|
|
109
117
|
},
|
|
110
118
|
},
|
|
111
|
-
}
|
|
112
|
-
})
|
|
119
|
+
};
|
|
120
|
+
});
|
|
113
121
|
```
|
|
114
122
|
|
|
115
123
|
### `makeAddInflectorsPlugin`
|
|
@@ -140,3 +148,16 @@ Docs: https://www.graphile.org/postgraphile/make-wrap-resolvers-plugin/
|
|
|
140
148
|
Enables you to wrap the field resolvers in the generated GraphQL API, allowing
|
|
141
149
|
you to take an action before or after the resolver, or even modify the resolver
|
|
142
150
|
result.
|
|
151
|
+
|
|
152
|
+
## Developing
|
|
153
|
+
|
|
154
|
+
### Testing
|
|
155
|
+
|
|
156
|
+
Make sure you first follow the instructions in the
|
|
157
|
+
[CONTRIBUTING.md file at the root of the repository](../../CONTRIBUTING.md),
|
|
158
|
+
then run the test with the following commands:
|
|
159
|
+
|
|
160
|
+
```bash
|
|
161
|
+
yarn prepack
|
|
162
|
+
yarn test
|
|
163
|
+
```
|
package/dist/exportable.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare function EXPORTABLE<T, TScope extends any[]>(factory: (...args: TScope) => T, args: [...TScope]): T;
|
|
1
|
+
export declare function EXPORTABLE<T, TScope extends any[]>(factory: (...args: TScope) => T, args: [...TScope], nameHint?: string): T;
|
|
2
2
|
//# sourceMappingURL=exportable.d.ts.map
|
package/dist/exportable.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportable.d.ts","sourceRoot":"","sources":["../src/exportable.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,SAAS,GAAG,EAAE,EAChD,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,CAAC,EAC/B,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,GAChB,CAAC,
|
|
1
|
+
{"version":3,"file":"exportable.d.ts","sourceRoot":"","sources":["../src/exportable.ts"],"names":[],"mappings":"AAAA,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,SAAS,GAAG,EAAE,EAChD,OAAO,EAAE,CAAC,GAAG,IAAI,EAAE,MAAM,KAAK,CAAC,EAC/B,IAAI,EAAE,CAAC,GAAG,MAAM,CAAC,EACjB,QAAQ,CAAC,EAAE,MAAM,GAChB,CAAC,CAaH"}
|
package/dist/exportable.js
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EXPORTABLE =
|
|
4
|
-
function EXPORTABLE(factory, args) {
|
|
3
|
+
exports.EXPORTABLE = EXPORTABLE;
|
|
4
|
+
function EXPORTABLE(factory, args, nameHint) {
|
|
5
5
|
const fn = factory(...args);
|
|
6
6
|
if ((typeof fn === "function" || (typeof fn === "object" && fn !== null)) &&
|
|
7
7
|
!("$exporter$factory" in fn)) {
|
|
8
8
|
Object.defineProperties(fn, {
|
|
9
9
|
$exporter$args: { value: args },
|
|
10
10
|
$exporter$factory: { value: factory },
|
|
11
|
+
$exporter$name: { writable: true, value: nameHint },
|
|
11
12
|
});
|
|
12
13
|
}
|
|
13
14
|
return fn;
|
|
14
15
|
}
|
|
15
|
-
exports.EXPORTABLE = EXPORTABLE;
|
|
16
16
|
//# sourceMappingURL=exportable.js.map
|
package/dist/exportable.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportable.js","sourceRoot":"","sources":["../src/exportable.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exportable.js","sourceRoot":"","sources":["../src/exportable.ts"],"names":[],"mappings":";;AAAA,gCAiBC;AAjBD,SAAgB,UAAU,CACxB,OAA+B,EAC/B,IAAiB,EACjB,QAAiB;IAEjB,MAAM,EAAE,GAAM,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC;IAC/B,IACE,CAAC,OAAO,EAAE,KAAK,UAAU,IAAI,CAAC,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,KAAK,IAAI,CAAC,CAAC;QACrE,CAAC,CAAC,mBAAmB,IAAI,EAAE,CAAC,EAC5B,CAAC;QACD,MAAM,CAAC,gBAAgB,CAAC,EAAE,EAAE;YAC1B,cAAc,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE;YAC/B,iBAAiB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE;YACrC,cAAc,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE;SACpD,CAAC,CAAC;IACL,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
|
package/dist/gql.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.gql =
|
|
3
|
+
exports.gql = gql;
|
|
4
4
|
// eslint-disable-next-line no-restricted-syntax
|
|
5
5
|
const graphql_1 = require("grafast/graphql");
|
|
6
6
|
function isGraphQLDocument(input) {
|
|
@@ -56,5 +56,4 @@ function gql(strings, ...interpolatedValues) {
|
|
|
56
56
|
const astWithPlaceholdersReplaced = (0, graphql_1.visit)(ast, visitor);
|
|
57
57
|
return astWithPlaceholdersReplaced;
|
|
58
58
|
}
|
|
59
|
-
exports.gql = gql;
|
|
60
59
|
//# sourceMappingURL=gql.js.map
|
package/dist/gql.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gql.js","sourceRoot":"","sources":["../src/gql.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"gql.js","sourceRoot":"","sources":["../src/gql.ts"],"names":[],"mappings":";;AAaA,kBAmDC;AA/DD,gDAAgD;AAChD,6CAA+C;AAE/C,SAAS,iBAAiB,CAAC,KAAU;IACnC,OAAO,CACL,KAAK;QACL,OAAO,KAAK,KAAK,QAAQ;QACzB,KAAK,CAAC,IAAI,KAAK,UAAU;QACzB,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,CACjC,CAAC;AACJ,CAAC;AAED,SAAgB,GAAG,CACjB,OAA6B,EAC7B,GAAG,kBAAgD;IAEnD,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,qBAAqB,GAA0B,EAAE,CAAC;IACxD,KAAK,IAAI,GAAG,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,EAAE,EAAE,CAAC;QAC/D,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;QAC9B,IAAI,GAAG,KAAK,MAAM,GAAG,CAAC,EAAE,CAAC;YACvB,uDAAuD;QACzD,CAAC;aAAM,CAAC;YACN,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;YAClD,IAAI,OAAO,iBAAiB,KAAK,QAAQ,EAAE,CAAC;gBAC1C,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC;YAC7C,CAAC;iBAAM,IAAI,iBAAiB,CAAC,iBAAiB,CAAC,EAAE,CAAC;gBAChD,qBAAqB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;YAC/D,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,KAAK,CACb,eACE,GAAG,GAAG,CACR,+DAA+D,OAAO,iBAAiB,sBAAsB,UAAU,CAAC,IAAI,CAC1H,EAAE,CACH,GAAG,CACL,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,MAAM,GAAG,GAAG,IAAA,eAAK,EAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;IACvC,MAAM,OAAO,GAAG;QACd,KAAK,EAAE,CAAC,IAAa,EAAE,EAAE;YACvB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC7B,OAAO;oBACL,GAAG,IAAI;oBACP,WAAW,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,GAAG,qBAAqB,CAAC;iBAC7D,CAAC;YACJ,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;gBACpC,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;oBACtC,IAAI,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;wBACnC,OAAO;4BACL,GAAG,IAAI;4BACP,KAAK,EAAE,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC;yBACtC,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,OAAO,SAAS,CAAC;QACnB,CAAC;KACF,CAAC;IACF,MAAM,2BAA2B,GAAG,IAAA,eAAK,EAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACxD,OAAO,2BAA2B,CAAC;AACrC,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,11 +1,17 @@
|
|
|
1
|
+
import type { BaseGraphQLArguments, Step } from "grafast";
|
|
1
2
|
export { EXPORTABLE } from "./exportable.js";
|
|
2
3
|
export { gql } from "./gql.js";
|
|
3
4
|
export { makeAddInflectorsPlugin } from "./makeAddInflectorsPlugin.js";
|
|
4
5
|
export { makeAddPgTableConditionPlugin } from "./makeAddPgTableConditionPlugin.js";
|
|
5
6
|
export { makeAddPgTableOrderByPlugin, MakeAddPgTableOrderByPluginOrders, NullsSortMethod, orderByAscDesc, OrderByAscDescOptions, } from "./makeAddPgTableOrderByPlugin.js";
|
|
6
7
|
export { ChangeNullabilityRules, ChangeNullabilityTypeRules, makeChangeNullabilityPlugin, NullabilitySpec, NullabilitySpecString, } from "./makeChangeNullabilityPlugin.js";
|
|
7
|
-
export { EnumResolver, ExtensionDefinition, makeExtendSchemaPlugin,
|
|
8
|
+
export { EnumResolver, ExtensionDefinition, makeExtendSchemaPlugin, ObjectPlan, ObjectResolver, Plans, Resolvers, } from "./makeExtendSchemaPlugin.js";
|
|
8
9
|
export { makeJSONPgSmartTagsPlugin, makePgSmartTagsFromFilePlugin, makePgSmartTagsPlugin, TagsFilePlugin, } from "./makePgSmartTagsPlugin.js";
|
|
9
10
|
export { makeProcessSchemaPlugin } from "./makeProcessSchemaPlugin.js";
|
|
10
11
|
export { makeWrapPlansPlugin, PlanWrapperFilter, PlanWrapperFilterRule, PlanWrapperFn, PlanWrapperRule, PlanWrapperRules, PlanWrapperRulesGenerator, } from "./makeWrapPlansPlugin.js";
|
|
12
|
+
declare module "grafast" {
|
|
13
|
+
interface ObjectFieldConfig<TSource extends Step = Step, TArgs extends BaseGraphQLArguments = any, TResultStep extends Step = Step> {
|
|
14
|
+
scope?: Omit<GraphileBuild.ScopeObjectFieldsField, "fieldName">;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
11
17
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EACL,2BAA2B,EAC3B,iCAAiC,EACjC,eAAe,EACf,cAAc,EACd,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,EACtB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAC/B,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EAAE,6BAA6B,EAAE,MAAM,oCAAoC,CAAC;AACnF,OAAO,EACL,2BAA2B,EAC3B,iCAAiC,EACjC,eAAe,EACf,cAAc,EACd,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,2BAA2B,EAC3B,eAAe,EACf,qBAAqB,GACtB,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EACL,YAAY,EACZ,mBAAmB,EACnB,sBAAsB,EACtB,UAAU,EACV,cAAc,EACd,KAAK,EACL,SAAS,GACV,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,qBAAqB,EACrB,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AACvE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,qBAAqB,EACrB,aAAa,EACb,eAAe,EACf,gBAAgB,EAChB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC;AAGlC,OAAO,QAAQ,SAAS,CAAC;IACvB,UAAU,iBAAiB,CACzB,OAAO,SAAS,IAAI,GAAG,IAAI,EAC3B,KAAK,SAAS,oBAAoB,GAAG,GAAG,EACxC,WAAW,SAAS,IAAI,GAAG,IAAI;QAE/B,KAAK,CAAC,EAAE,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,WAAW,CAAC,CAAC;KACjE;CACF"}
|
package/dist/index.js
CHANGED
|
@@ -25,4 +25,5 @@ var makeProcessSchemaPlugin_js_1 = require("./makeProcessSchemaPlugin.js");
|
|
|
25
25
|
Object.defineProperty(exports, "makeProcessSchemaPlugin", { enumerable: true, get: function () { return makeProcessSchemaPlugin_js_1.makeProcessSchemaPlugin; } });
|
|
26
26
|
var makeWrapPlansPlugin_js_1 = require("./makeWrapPlansPlugin.js");
|
|
27
27
|
Object.defineProperty(exports, "makeWrapPlansPlugin", { enumerable: true, get: function () { return makeWrapPlansPlugin_js_1.makeWrapPlansPlugin; } });
|
|
28
|
+
/* eslint-enable @typescript-eslint/no-unused-vars */
|
|
28
29
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAEA,iDAA6C;AAApC,2GAAA,UAAU,OAAA;AACnB,mCAA+B;AAAtB,6FAAA,GAAG,OAAA;AACZ,2EAAuE;AAA9D,qIAAA,uBAAuB,OAAA;AAChC,uFAAmF;AAA1E,iJAAA,6BAA6B,OAAA;AACtC,mFAM0C;AALxC,6IAAA,2BAA2B,OAAA;AAG3B,gIAAA,cAAc,OAAA;AAGhB,mFAM0C;AAHxC,6IAAA,2BAA2B,OAAA;AAI7B,yEAQqC;AALnC,mIAAA,sBAAsB,OAAA;AAMxB,uEAKoC;AAJlC,qIAAA,yBAAyB,OAAA;AACzB,yIAAA,6BAA6B,OAAA;AAC7B,iIAAA,qBAAqB,OAAA;AACrB,0HAAA,cAAc,OAAA;AAEhB,2EAAuE;AAA9D,qIAAA,uBAAuB,OAAA;AAChC,mEAQkC;AAPhC,6HAAA,mBAAmB,OAAA;AAmBrB,qDAAqD"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeAddInflectorsPlugin =
|
|
3
|
+
exports.makeAddInflectorsPlugin = makeAddInflectorsPlugin;
|
|
4
4
|
/** @deprecated Build a plugin directly */
|
|
5
5
|
function makeAddInflectorsPlugin() {
|
|
6
6
|
throw new Error(`makeAddInflectorsPlugin is no longer supported; the new plugin system makes it a little easier to write it yourself:
|
|
@@ -29,7 +29,7 @@ export const MyInflectorPlugin: GraphileConfig.Plugin = {
|
|
|
29
29
|
...args
|
|
30
30
|
) {
|
|
31
31
|
if (name === "Query") return "RootQuery";
|
|
32
|
-
return previous
|
|
32
|
+
return previous(...args);
|
|
33
33
|
}
|
|
34
34
|
}
|
|
35
35
|
}
|
|
@@ -38,5 +38,4 @@ export const MyInflectorPlugin: GraphileConfig.Plugin = {
|
|
|
38
38
|
|
|
39
39
|
`);
|
|
40
40
|
}
|
|
41
|
-
exports.makeAddInflectorsPlugin = makeAddInflectorsPlugin;
|
|
42
41
|
//# sourceMappingURL=makeAddInflectorsPlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAddInflectorsPlugin.js","sourceRoot":"","sources":["../src/makeAddInflectorsPlugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"makeAddInflectorsPlugin.js","sourceRoot":"","sources":["../src/makeAddInflectorsPlugin.ts"],"names":[],"mappings":";;AACA,0DAmCC;AApCD,0CAA0C;AAC1C,SAAgB,uBAAuB;IACrC,MAAM,IAAI,KAAK,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiCjB,CAAC,CAAC;AACH,CAAC"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import
|
|
2
|
-
import type {
|
|
1
|
+
import { sqlValueWithCodec } from "@dataplan/pg";
|
|
2
|
+
import type { GrafastInputFieldConfig } from "grafast";
|
|
3
3
|
import type { SQL, sql } from "pg-sql2";
|
|
4
4
|
export declare function makeAddPgTableConditionPlugin(match: {
|
|
5
5
|
serviceName?: string;
|
|
6
6
|
schemaName: string;
|
|
7
7
|
tableName: string;
|
|
8
|
-
}, conditionFieldName: string, conditionFieldSpecGenerator: (build: GraphileBuild.Build) => GrafastInputFieldConfig
|
|
9
|
-
$condition: PgConditionStep<PgSelectStep>;
|
|
8
|
+
}, conditionFieldName: string, conditionFieldSpecGenerator: (build: GraphileBuild.Build) => GrafastInputFieldConfig, conditionGenerator?: (value: unknown, helpers: {
|
|
10
9
|
sql: typeof sql;
|
|
11
10
|
sqlTableAlias: SQL;
|
|
11
|
+
sqlValueWithCodec: typeof sqlValueWithCodec;
|
|
12
12
|
build: GraphileBuild.Build;
|
|
13
13
|
}) => SQL | null | undefined): GraphileConfig.Plugin;
|
|
14
14
|
//# sourceMappingURL=makeAddPgTableConditionPlugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAddPgTableConditionPlugin.d.ts","sourceRoot":"","sources":["../src/makeAddPgTableConditionPlugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"makeAddPgTableConditionPlugin.d.ts","sourceRoot":"","sources":["../src/makeAddPgTableConditionPlugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,SAAS,CAAC;AAIxC,wBAAgB,6BAA6B,CAC3C,KAAK,EAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EACtE,kBAAkB,EAAE,MAAM,EAC1B,2BAA2B,EAAE,CAC3B,KAAK,EAAE,aAAa,CAAC,KAAK,KACvB,uBAAuB,EAC5B,kBAAkB,CAAC,EAAE,CACnB,KAAK,EAAE,OAAO,EACd,OAAO,EAAE;IACP,GAAG,EAAE,OAAO,GAAG,CAAC;IAChB,aAAa,EAAE,GAAG,CAAC;IACnB,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,KAAK,EAAE,aAAa,CAAC,KAAK,CAAC;CAG5B,KACE,GAAG,GAAG,IAAI,GAAG,SAAS,GAC1B,cAAc,CAAC,MAAM,CAmGvB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeAddPgTableConditionPlugin =
|
|
3
|
+
exports.makeAddPgTableConditionPlugin = makeAddPgTableConditionPlugin;
|
|
4
|
+
const pg_1 = require("@dataplan/pg");
|
|
4
5
|
const exportable_js_1 = require("./exportable.js");
|
|
5
6
|
function makeAddPgTableConditionPlugin(match, conditionFieldName, conditionFieldSpecGenerator, conditionGenerator) {
|
|
6
7
|
const { serviceName = "main", schemaName, tableName } = match;
|
|
@@ -39,10 +40,10 @@ function makeAddPgTableConditionPlugin(match, conditionFieldName, conditionField
|
|
|
39
40
|
return fields;
|
|
40
41
|
}
|
|
41
42
|
const conditionFieldSpec = conditionFieldSpecGenerator(build);
|
|
42
|
-
if (conditionFieldSpec.
|
|
43
|
-
conditionFieldSpec.extensions?.grafast?.
|
|
43
|
+
if (conditionFieldSpec.apply ||
|
|
44
|
+
conditionFieldSpec.extensions?.grafast?.apply) {
|
|
44
45
|
if (conditionGenerator) {
|
|
45
|
-
throw new Error(`${displayName}: You supplied '
|
|
46
|
+
throw new Error(`${displayName}: You supplied 'apply' for your field spec, so you cannot also supply a 'conditionGenerator'`);
|
|
46
47
|
}
|
|
47
48
|
// Done.
|
|
48
49
|
}
|
|
@@ -51,17 +52,18 @@ function makeAddPgTableConditionPlugin(match, conditionFieldName, conditionField
|
|
|
51
52
|
throw new Error(`${displayName}: You have not supplied 'applyPlan' for your field spec, nor a 'conditionGenerator', so we don't know what to do with this condition`);
|
|
52
53
|
}
|
|
53
54
|
// build applyPlan
|
|
54
|
-
conditionFieldSpec.
|
|
55
|
+
conditionFieldSpec.apply = (0, exportable_js_1.EXPORTABLE)((build, conditionGenerator, sql, sqlValueWithCodec) => function apply(condition, val) {
|
|
55
56
|
const expression = conditionGenerator(val, {
|
|
56
|
-
$condition,
|
|
57
57
|
sql,
|
|
58
|
-
sqlTableAlias:
|
|
58
|
+
sqlTableAlias: condition.alias,
|
|
59
|
+
sqlValueWithCodec,
|
|
59
60
|
build,
|
|
61
|
+
condition,
|
|
60
62
|
});
|
|
61
63
|
if (expression) {
|
|
62
|
-
|
|
64
|
+
condition.where(expression);
|
|
63
65
|
}
|
|
64
|
-
}, [build, conditionGenerator, sql]);
|
|
66
|
+
}, [build, conditionGenerator, sql, pg_1.sqlValueWithCodec]);
|
|
65
67
|
}
|
|
66
68
|
const meta = build._pluginMeta[displayName];
|
|
67
69
|
meta.seen = true;
|
|
@@ -76,5 +78,4 @@ function makeAddPgTableConditionPlugin(match, conditionFieldName, conditionField
|
|
|
76
78
|
};
|
|
77
79
|
return plugin;
|
|
78
80
|
}
|
|
79
|
-
exports.makeAddPgTableConditionPlugin = makeAddPgTableConditionPlugin;
|
|
80
81
|
//# sourceMappingURL=makeAddPgTableConditionPlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAddPgTableConditionPlugin.js","sourceRoot":"","sources":["../src/makeAddPgTableConditionPlugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"makeAddPgTableConditionPlugin.js","sourceRoot":"","sources":["../src/makeAddPgTableConditionPlugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,8 @@
|
|
|
1
|
-
import type { PgOrderSpec,
|
|
2
|
-
type
|
|
1
|
+
import type { PgOrderSpec, PgSelectQueryBuilder } from "@dataplan/pg";
|
|
2
|
+
import type { GraphQLEnumValueConfig } from "graphql";
|
|
3
|
+
type OrderBySpecIdentity = string | Omit<PgOrderSpec, "direction"> | ((queryBuilder: PgSelectQueryBuilder) => Omit<PgOrderSpec, "direction">);
|
|
3
4
|
export interface MakeAddPgTableOrderByPluginOrders {
|
|
4
|
-
[orderByEnumValue: string]:
|
|
5
|
-
extensions: {
|
|
6
|
-
grafast: {
|
|
7
|
-
applyPlan($select: PgSelectStep): void;
|
|
8
|
-
};
|
|
9
|
-
};
|
|
10
|
-
};
|
|
5
|
+
[orderByEnumValue: string]: GraphQLEnumValueConfig;
|
|
11
6
|
}
|
|
12
7
|
export declare function makeAddPgTableOrderByPlugin(match: {
|
|
13
8
|
serviceName?: string;
|
|
@@ -18,6 +13,12 @@ export type NullsSortMethod = "first" | "last" | "first-iff-ascending" | "last-i
|
|
|
18
13
|
export interface OrderByAscDescOptions {
|
|
19
14
|
unique?: boolean;
|
|
20
15
|
nulls?: NullsSortMethod;
|
|
16
|
+
/**
|
|
17
|
+
* If this expression/column is nullable, you must set this true otherwise
|
|
18
|
+
* cursor pagination over null values will break. If `nulls` is specified,
|
|
19
|
+
* we'll default this to true.
|
|
20
|
+
*/
|
|
21
|
+
nullable?: boolean;
|
|
21
22
|
}
|
|
22
23
|
export declare function orderByAscDesc(baseName: string, attributeOrSqlFragment: OrderBySpecIdentity, uniqueOrOptions?: boolean | OrderByAscDescOptions): MakeAddPgTableOrderByPluginOrders;
|
|
23
24
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAddPgTableOrderByPlugin.d.ts","sourceRoot":"","sources":["../src/makeAddPgTableOrderByPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"makeAddPgTableOrderByPlugin.d.ts","sourceRoot":"","sources":["../src/makeAddPgTableOrderByPlugin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,oBAAoB,EAErB,MAAM,cAAc,CAAC;AACtB,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAC;AAItD,KAAK,mBAAmB,GACpB,MAAM,GACN,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,GAC9B,CAAC,CAAC,YAAY,EAAE,oBAAoB,KAAK,IAAI,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC,CAAC;AAE7E,MAAM,WAAW,iCAAiC;IAChD,CAAC,gBAAgB,EAAE,MAAM,GAAG,sBAAsB,CAAC;CACpD;AAID,wBAAgB,2BAA2B,CACzC,KAAK,EAAE;IACL,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;CACnB,EACD,eAAe,EAAE,CACf,KAAK,EAAE,aAAa,CAAC,KAAK,KACvB,iCAAiC,EACtC,IAAI,SAAiG,GACpG,cAAc,CAAC,MAAM,CAyCvB;AAED,MAAM,MAAM,eAAe,GACvB,OAAO,GACP,MAAM,GACN,qBAAqB,GACrB,oBAAoB,GACpB,SAAS,CAAC;AAEd,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,eAAe,CAAC;IACxB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,sBAAsB,EAAE,mBAAmB,EAC3C,eAAe,GAAE,OAAO,GAAG,qBAA6B,GACvD,iCAAiC,CAgKnC"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.makeAddPgTableOrderByPlugin = makeAddPgTableOrderByPlugin;
|
|
4
|
+
exports.orderByAscDesc = orderByAscDesc;
|
|
4
5
|
const exportable_js_1 = require("./exportable.js");
|
|
5
6
|
const counterByName = new Map();
|
|
6
7
|
function makeAddPgTableOrderByPlugin(match, ordersGenerator, hint = `Adding orders with makeAddPgTableOrderByPlugin to "${match.schemaName}"."${match.tableName}"`) {
|
|
@@ -37,12 +38,11 @@ function makeAddPgTableOrderByPlugin(match, ordersGenerator, hint = `Adding orde
|
|
|
37
38
|
};
|
|
38
39
|
return plugin;
|
|
39
40
|
}
|
|
40
|
-
exports.makeAddPgTableOrderByPlugin = makeAddPgTableOrderByPlugin;
|
|
41
41
|
function orderByAscDesc(baseName, attributeOrSqlFragment, uniqueOrOptions = false) {
|
|
42
42
|
const options = typeof uniqueOrOptions === "boolean"
|
|
43
43
|
? { unique: uniqueOrOptions }
|
|
44
|
-
: uniqueOrOptions ?? {};
|
|
45
|
-
const { unique = false, nulls } = options;
|
|
44
|
+
: (uniqueOrOptions ?? {});
|
|
45
|
+
const { unique = false, nulls, nullable = nulls != null } = options;
|
|
46
46
|
if (typeof unique !== "boolean") {
|
|
47
47
|
throw new Error(`Invalid value for "unique" passed to orderByAscDesc for ${baseName}. Unique must be a boolean.`);
|
|
48
48
|
}
|
|
@@ -67,89 +67,94 @@ function orderByAscDesc(baseName, attributeOrSqlFragment, uniqueOrOptions = fals
|
|
|
67
67
|
? "FIRST"
|
|
68
68
|
: "LAST";
|
|
69
69
|
let spec;
|
|
70
|
-
const
|
|
71
|
-
? (0, exportable_js_1.EXPORTABLE)((ascendingNulls, attributeOrSqlFragment, unique) => function
|
|
72
|
-
|
|
70
|
+
const ascendingCb = typeof attributeOrSqlFragment === "string"
|
|
71
|
+
? (0, exportable_js_1.EXPORTABLE)((ascendingNulls, attributeOrSqlFragment, nullable, unique) => function apply(queryBuilder) {
|
|
72
|
+
queryBuilder.orderBy({
|
|
73
73
|
nulls: ascendingNulls,
|
|
74
74
|
attribute: attributeOrSqlFragment,
|
|
75
75
|
direction: "ASC",
|
|
76
|
+
nullable,
|
|
76
77
|
});
|
|
77
78
|
if (unique) {
|
|
78
|
-
|
|
79
|
+
queryBuilder.setOrderIsUnique();
|
|
79
80
|
}
|
|
80
|
-
}, [ascendingNulls, attributeOrSqlFragment, unique])
|
|
81
|
+
}, [ascendingNulls, attributeOrSqlFragment, nullable, unique])
|
|
81
82
|
: typeof attributeOrSqlFragment === "function"
|
|
82
|
-
? (0, exportable_js_1.EXPORTABLE)((ascendingNulls, attributeOrSqlFragment, unique) => function
|
|
83
|
-
|
|
83
|
+
? (0, exportable_js_1.EXPORTABLE)((ascendingNulls, attributeOrSqlFragment, nullable, unique) => function apply(queryBuilder) {
|
|
84
|
+
queryBuilder.orderBy({
|
|
84
85
|
nulls: ascendingNulls,
|
|
85
|
-
...attributeOrSqlFragment(
|
|
86
|
+
...attributeOrSqlFragment(queryBuilder),
|
|
86
87
|
direction: "ASC",
|
|
88
|
+
nullable,
|
|
87
89
|
});
|
|
88
90
|
if (unique) {
|
|
89
|
-
|
|
91
|
+
queryBuilder.setOrderIsUnique();
|
|
90
92
|
}
|
|
91
|
-
}, [ascendingNulls, attributeOrSqlFragment, unique])
|
|
93
|
+
}, [ascendingNulls, attributeOrSqlFragment, nullable, unique])
|
|
92
94
|
: ((spec = {
|
|
93
95
|
nulls: ascendingNulls,
|
|
94
96
|
...attributeOrSqlFragment,
|
|
95
97
|
direction: "ASC",
|
|
98
|
+
nullable,
|
|
96
99
|
}),
|
|
97
|
-
(0, exportable_js_1.EXPORTABLE)((spec, unique) => function
|
|
98
|
-
|
|
100
|
+
(0, exportable_js_1.EXPORTABLE)((spec, unique) => function apply(queryBuilder) {
|
|
101
|
+
queryBuilder.orderBy(spec);
|
|
99
102
|
if (unique) {
|
|
100
|
-
|
|
103
|
+
queryBuilder.setOrderIsUnique();
|
|
101
104
|
}
|
|
102
105
|
}, [spec, unique]));
|
|
103
|
-
const
|
|
104
|
-
? (0, exportable_js_1.EXPORTABLE)((attributeOrSqlFragment, descendingNulls, unique) => function
|
|
105
|
-
|
|
106
|
+
const descendingCb = typeof attributeOrSqlFragment === "string"
|
|
107
|
+
? (0, exportable_js_1.EXPORTABLE)((attributeOrSqlFragment, descendingNulls, nullable, unique) => function apply(queryBuilder) {
|
|
108
|
+
queryBuilder.orderBy({
|
|
106
109
|
nulls: descendingNulls,
|
|
107
110
|
attribute: attributeOrSqlFragment,
|
|
108
111
|
direction: "DESC",
|
|
112
|
+
nullable,
|
|
109
113
|
});
|
|
110
114
|
if (unique) {
|
|
111
|
-
|
|
115
|
+
queryBuilder.setOrderIsUnique();
|
|
112
116
|
}
|
|
113
|
-
}, [attributeOrSqlFragment, descendingNulls, unique])
|
|
117
|
+
}, [attributeOrSqlFragment, descendingNulls, nullable, unique])
|
|
114
118
|
: typeof attributeOrSqlFragment === "function"
|
|
115
|
-
? (0, exportable_js_1.EXPORTABLE)((attributeOrSqlFragment, descendingNulls, unique) => function
|
|
116
|
-
|
|
119
|
+
? (0, exportable_js_1.EXPORTABLE)((attributeOrSqlFragment, descendingNulls, nullable, unique) => function apply(queryBuilder) {
|
|
120
|
+
queryBuilder.orderBy({
|
|
117
121
|
nulls: descendingNulls,
|
|
118
|
-
...attributeOrSqlFragment(
|
|
122
|
+
...attributeOrSqlFragment(queryBuilder),
|
|
119
123
|
direction: "DESC",
|
|
124
|
+
nullable,
|
|
120
125
|
});
|
|
121
126
|
if (unique) {
|
|
122
|
-
|
|
127
|
+
queryBuilder.setOrderIsUnique();
|
|
123
128
|
}
|
|
124
|
-
}, [attributeOrSqlFragment, descendingNulls, unique])
|
|
129
|
+
}, [attributeOrSqlFragment, descendingNulls, nullable, unique])
|
|
125
130
|
: ((spec = {
|
|
126
131
|
nulls: descendingNulls,
|
|
127
132
|
...attributeOrSqlFragment,
|
|
128
133
|
direction: "DESC",
|
|
134
|
+
nullable,
|
|
129
135
|
}),
|
|
130
|
-
(0, exportable_js_1.EXPORTABLE)((spec, unique) => function
|
|
131
|
-
|
|
136
|
+
(0, exportable_js_1.EXPORTABLE)((spec, unique) => function apply(queryBuilder) {
|
|
137
|
+
queryBuilder.orderBy(spec);
|
|
132
138
|
if (unique) {
|
|
133
|
-
|
|
139
|
+
queryBuilder.setOrderIsUnique();
|
|
134
140
|
}
|
|
135
141
|
}, [spec, unique]));
|
|
136
142
|
const orders = {
|
|
137
143
|
[`${baseName}_ASC`]: {
|
|
138
144
|
extensions: {
|
|
139
145
|
grafast: {
|
|
140
|
-
|
|
146
|
+
apply: ascendingCb,
|
|
141
147
|
},
|
|
142
148
|
},
|
|
143
149
|
},
|
|
144
150
|
[`${baseName}_DESC`]: {
|
|
145
151
|
extensions: {
|
|
146
152
|
grafast: {
|
|
147
|
-
|
|
153
|
+
apply: descendingCb,
|
|
148
154
|
},
|
|
149
155
|
},
|
|
150
156
|
},
|
|
151
157
|
};
|
|
152
158
|
return orders;
|
|
153
159
|
}
|
|
154
|
-
exports.orderByAscDesc = orderByAscDesc;
|
|
155
160
|
//# sourceMappingURL=makeAddPgTableOrderByPlugin.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeAddPgTableOrderByPlugin.js","sourceRoot":"","sources":["../src/makeAddPgTableOrderByPlugin.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"makeAddPgTableOrderByPlugin.js","sourceRoot":"","sources":["../src/makeAddPgTableOrderByPlugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"makeChangeNullabilityPlugin.d.ts","sourceRoot":"","sources":["../src/makeChangeNullabilityPlugin.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,qBAAqB,GAC7B,EAAE,GACF,GAAG,GACH,IAAI,GACJ,KAAK,GACL,KAAK,GACL,MAAM,GACN,MAAM,GACN,OAAO,GACP,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,SAAS,CAAC;AAGd,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,qBAAqB,CAAC;AAE9D,MAAM,WAAW,0BAA0B;IACzC,CAAC,SAAS,EAAE,MAAM,GACd,eAAe,GACf;QACE,IAAI,CAAC,EAAE,eAAe,CAAC;QACvB,IAAI,CAAC,EAAE;YACL,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAC;SACpC,CAAC;KACH,CAAC;CACP;AACD,MAAM,WAAW,sBAAsB;IACrC,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,CAAC;CAChD;AA+ED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,sBAAsB,GAC5B,cAAc,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"makeChangeNullabilityPlugin.d.ts","sourceRoot":"","sources":["../src/makeChangeNullabilityPlugin.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,qBAAqB,GAC7B,EAAE,GACF,GAAG,GACH,IAAI,GACJ,KAAK,GACL,KAAK,GACL,MAAM,GACN,MAAM,GACN,OAAO,GACP,OAAO,GACP,QAAQ,GACR,OAAO,GACP,QAAQ,GACR,QAAQ,GACR,SAAS,CAAC;AAGd,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,qBAAqB,CAAC;AAE9D,MAAM,WAAW,0BAA0B;IACzC,CAAC,SAAS,EAAE,MAAM,GACd,eAAe,GACf;QACE,IAAI,CAAC,EAAE,eAAe,CAAC;QACvB,IAAI,CAAC,EAAE;YACL,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,CAAC;SACpC,CAAC;KACH,CAAC;CACP;AACD,MAAM,WAAW,sBAAsB;IACrC,CAAC,QAAQ,EAAE,MAAM,GAAG,0BAA0B,CAAC;CAChD;AA+ED,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,sBAAsB,GAC5B,cAAc,CAAC,MAAM,CAoIvB"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.makeChangeNullabilityPlugin =
|
|
3
|
+
exports.makeChangeNullabilityPlugin = makeChangeNullabilityPlugin;
|
|
4
4
|
const node_util_1 = require("node:util");
|
|
5
5
|
let counter = 0;
|
|
6
6
|
function doIt(inType, rawSpec, graphql, location, originalSpec = rawSpec) {
|
|
@@ -135,5 +135,4 @@ function makeChangeNullabilityPlugin(rules) {
|
|
|
135
135
|
},
|
|
136
136
|
};
|
|
137
137
|
}
|
|
138
|
-
exports.makeChangeNullabilityPlugin = makeChangeNullabilityPlugin;
|
|
139
138
|
//# sourceMappingURL=makeChangeNullabilityPlugin.js.map
|