graphile-utils 4.12.2 → 5.0.0-0.3

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.
Files changed (80) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/README.md +33 -24
  3. package/dist/gql.d.ts +3 -0
  4. package/dist/gql.d.ts.map +1 -0
  5. package/dist/gql.js +60 -0
  6. package/dist/gql.js.map +1 -0
  7. package/dist/index.d.ts +8 -0
  8. package/dist/index.d.ts.map +1 -0
  9. package/dist/index.js +21 -0
  10. package/dist/index.js.map +1 -0
  11. package/dist/makeAddInflectorsPlugin.d.ts +3 -0
  12. package/dist/makeAddInflectorsPlugin.d.ts.map +1 -0
  13. package/dist/makeAddInflectorsPlugin.js +42 -0
  14. package/dist/makeAddInflectorsPlugin.js.map +1 -0
  15. package/dist/makeChangeNullabilityPlugin.d.ts +15 -0
  16. package/dist/makeChangeNullabilityPlugin.d.ts.map +1 -0
  17. package/dist/makeChangeNullabilityPlugin.js +146 -0
  18. package/dist/makeChangeNullabilityPlugin.js.map +1 -0
  19. package/dist/makeExtendSchemaPlugin.d.ts +78 -0
  20. package/dist/makeExtendSchemaPlugin.d.ts.map +1 -0
  21. package/dist/makeExtendSchemaPlugin.js +654 -0
  22. package/dist/makeExtendSchemaPlugin.js.map +1 -0
  23. package/{node8plus → dist}/makePgSmartTagsPlugin.d.ts +25 -10
  24. package/dist/makePgSmartTagsPlugin.d.ts.map +1 -0
  25. package/dist/makePgSmartTagsPlugin.js +398 -0
  26. package/dist/makePgSmartTagsPlugin.js.map +1 -0
  27. package/dist/makeProcessSchemaPlugin.d.ts +6 -0
  28. package/dist/makeProcessSchemaPlugin.d.ts.map +1 -0
  29. package/dist/makeProcessSchemaPlugin.js +20 -0
  30. package/dist/makeProcessSchemaPlugin.js.map +1 -0
  31. package/dist/makeWrapPlansPlugin.d.ts +22 -0
  32. package/dist/makeWrapPlansPlugin.d.ts.map +1 -0
  33. package/dist/makeWrapPlansPlugin.js +94 -0
  34. package/dist/makeWrapPlansPlugin.js.map +1 -0
  35. package/dist/parseIdentifierParts.d.ts +2 -0
  36. package/dist/parseIdentifierParts.d.ts.map +1 -0
  37. package/{node8plus → dist}/parseIdentifierParts.js +2 -1
  38. package/dist/parseIdentifierParts.js.map +1 -0
  39. package/package.json +38 -26
  40. package/LICENSE.md +0 -24
  41. package/node8plus/fieldHelpers.d.ts +0 -13
  42. package/node8plus/fieldHelpers.js +0 -81
  43. package/node8plus/fieldHelpers.js.map +0 -1
  44. package/node8plus/gql.d.ts +0 -11
  45. package/node8plus/gql.js +0 -76
  46. package/node8plus/gql.js.map +0 -1
  47. package/node8plus/index.d.ts +0 -12
  48. package/node8plus/index.js +0 -26
  49. package/node8plus/index.js.map +0 -1
  50. package/node8plus/introspectionHelpers.d.ts +0 -7
  51. package/node8plus/introspectionHelpers.js +0 -62
  52. package/node8plus/introspectionHelpers.js.map +0 -1
  53. package/node8plus/makeAddInflectorsPlugin.d.ts +0 -7
  54. package/node8plus/makeAddInflectorsPlugin.js +0 -21
  55. package/node8plus/makeAddInflectorsPlugin.js.map +0 -1
  56. package/node8plus/makeAddPgTableConditionPlugin.d.ts +0 -8
  57. package/node8plus/makeAddPgTableConditionPlugin.js +0 -89
  58. package/node8plus/makeAddPgTableConditionPlugin.js.map +0 -1
  59. package/node8plus/makeAddPgTableOrderByPlugin.d.ts +0 -23
  60. package/node8plus/makeAddPgTableOrderByPlugin.js +0 -76
  61. package/node8plus/makeAddPgTableOrderByPlugin.js.map +0 -1
  62. package/node8plus/makeChangeNullabilityPlugin.d.ts +0 -8
  63. package/node8plus/makeChangeNullabilityPlugin.js +0 -28
  64. package/node8plus/makeChangeNullabilityPlugin.js.map +0 -1
  65. package/node8plus/makeExtendSchemaPlugin.d.ts +0 -28
  66. package/node8plus/makeExtendSchemaPlugin.js +0 -703
  67. package/node8plus/makeExtendSchemaPlugin.js.map +0 -1
  68. package/node8plus/makePgSmartTagsPlugin.js +0 -200
  69. package/node8plus/makePgSmartTagsPlugin.js.map +0 -1
  70. package/node8plus/makePluginByCombiningPlugins.d.ts +0 -2
  71. package/node8plus/makePluginByCombiningPlugins.js +0 -11
  72. package/node8plus/makePluginByCombiningPlugins.js.map +0 -1
  73. package/node8plus/makeProcessSchemaPlugin.d.ts +0 -5
  74. package/node8plus/makeProcessSchemaPlugin.js +0 -9
  75. package/node8plus/makeProcessSchemaPlugin.js.map +0 -1
  76. package/node8plus/makeWrapResolversPlugin.d.ts +0 -30
  77. package/node8plus/makeWrapResolversPlugin.js +0 -80
  78. package/node8plus/makeWrapResolversPlugin.js.map +0 -1
  79. package/node8plus/parseIdentifierParts.d.ts +0 -1
  80. package/node8plus/parseIdentifierParts.js.map +0 -1
@@ -1,89 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function makeAddPgTableConditionPlugin(schemaName, tableName, conditionFieldName, conditionFieldSpecGenerator, conditionGenerator) {
4
- const displayName = `makeAddPgTableConditionPlugin__${schemaName}__${tableName}__${conditionFieldName}`;
5
- const plugin = builder => {
6
- const instance = Symbol(displayName);
7
- builder.hook("build", function trackSeen(build) {
8
- if (!build._pluginMeta) {
9
- // eslint-disable-next-line no-param-reassign
10
- build._pluginMeta = {};
11
- }
12
- // eslint-disable-next-line no-param-reassign
13
- build._pluginMeta[instance] = {
14
- seen: false,
15
- };
16
- return build;
17
- });
18
- builder.hook("finalize", function checkSeen(schema, build) {
19
- const meta = build._pluginMeta[instance];
20
- if (!meta.seen) {
21
- // eslint-disable-next-line no-console
22
- console.error(`WARNING: failed to add condition '${conditionFieldName}' to table "${schemaName}"."${tableName}"; did you get the schema/table name right?`);
23
- }
24
- return schema;
25
- });
26
- builder.hook("GraphQLInputObjectType:fields", function addConditionInputField(fields, build, context) {
27
- const { scope: { isPgCondition, pgIntrospection: table }, fieldWithHooks, } = context;
28
- if (!isPgCondition ||
29
- !table ||
30
- table.kind !== "class" ||
31
- table.namespaceName !== schemaName ||
32
- table.name !== tableName) {
33
- return fields;
34
- }
35
- const conditionFieldSpec = conditionFieldSpecGenerator(build);
36
- const meta = build._pluginMeta[instance];
37
- meta.seen = true;
38
- return build.extend(fields, {
39
- [conditionFieldName]: fieldWithHooks(conditionFieldName, conditionFieldSpec, {
40
- addPgTableCondition: {
41
- schemaName,
42
- tableName,
43
- conditionFieldSpec,
44
- conditionFieldName,
45
- },
46
- }),
47
- });
48
- });
49
- builder.hook("GraphQLObjectType:fields:field:args", function addSqlWhereClause(args, build, context) {
50
- const { pgSql: sql } = build;
51
- const { scope: { isPgFieldConnection, isPgFieldSimpleCollection, pgFieldIntrospection: procOrTable, pgFieldIntrospectionTable: tableIfProc, }, addArgDataGenerator, } = context;
52
- const table = tableIfProc || procOrTable;
53
- if ((!isPgFieldConnection && !isPgFieldSimpleCollection) ||
54
- !table ||
55
- table.kind !== "class" ||
56
- table.namespaceName !== schemaName ||
57
- table.name !== tableName) {
58
- return args;
59
- }
60
- addArgDataGenerator(function conditionSQLBuilder({ condition, }) {
61
- if (!condition || !(conditionFieldName in condition)) {
62
- return {};
63
- }
64
- const { [conditionFieldName]: conditionValue } = condition;
65
- return {
66
- pgQuery: (queryBuilder) => {
67
- const sqlCondition = conditionGenerator(conditionValue, {
68
- queryBuilder,
69
- sql,
70
- sqlTableAlias: queryBuilder.getTableAlias(),
71
- }, build);
72
- if (sqlCondition) {
73
- queryBuilder.where(sqlCondition);
74
- }
75
- },
76
- };
77
- });
78
- return args;
79
- }, [],
80
- // Make sure we're loaded before PgConnectionArgOrderBy, otherwise
81
- // ordering added by conditions will be overridden by the default
82
- // ordering.
83
- ["PgConnectionArgOrderBy"], []);
84
- };
85
- plugin.displayName = displayName;
86
- return plugin;
87
- }
88
- exports.default = makeAddPgTableConditionPlugin;
89
- //# sourceMappingURL=makeAddPgTableConditionPlugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"makeAddPgTableConditionPlugin.js","sourceRoot":"","sources":["../src/makeAddPgTableConditionPlugin.ts"],"names":[],"mappings":"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"}
@@ -1,23 +0,0 @@
1
- import type { SQL, QueryBuilder } from "graphile-build-pg";
2
- import type { Build, Plugin } from "graphile-build";
3
- declare type OrderBySpecIdentity = string | SQL | ((options: {
4
- queryBuilder: QueryBuilder;
5
- }) => SQL);
6
- declare type OrderSpec = [OrderBySpecIdentity, boolean] | [OrderBySpecIdentity, boolean, boolean];
7
- export interface MakeAddPgTableOrderByPluginOrders {
8
- [orderByEnumValue: string]: {
9
- value: {
10
- alias?: string;
11
- specs: Array<OrderSpec>;
12
- unique: boolean;
13
- };
14
- };
15
- }
16
- export default function makeAddPgTableOrderByPlugin(schemaName: string, tableName: string, ordersGenerator: (build: Build) => MakeAddPgTableOrderByPluginOrders, hint?: string): Plugin;
17
- export declare type NullsSortMethod = "first" | "last" | "first-iff-ascending" | "last-iff-ascending" | undefined;
18
- export interface OrderByAscDescOptions {
19
- unique?: boolean;
20
- nulls?: NullsSortMethod;
21
- }
22
- export declare function orderByAscDesc(baseName: string, columnOrSqlFragment: OrderBySpecIdentity, uniqueOrOptions?: boolean | OrderByAscDescOptions): MakeAddPgTableOrderByPluginOrders;
23
- export {};
@@ -1,76 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.orderByAscDesc = void 0;
4
- function makeAddPgTableOrderByPlugin(schemaName, tableName, ordersGenerator, hint = `Adding orders with makeAddPgTableOrderByPlugin to "${schemaName}"."${tableName}"`) {
5
- const displayName = `makeAddPgTableOrderByPlugin_${schemaName}_${tableName}`;
6
- const plugin = builder => {
7
- builder.hook("GraphQLEnumType:values", (values, build, context) => {
8
- const { extend } = build;
9
- const { scope: { isPgRowSortEnum, pgIntrospection: table }, } = context;
10
- if (!isPgRowSortEnum ||
11
- !table ||
12
- table.kind !== "class" ||
13
- table.namespaceName !== schemaName ||
14
- table.name !== tableName) {
15
- return values;
16
- }
17
- const newValues = ordersGenerator(build);
18
- return extend(values, newValues, hint);
19
- });
20
- };
21
- plugin.displayName = displayName;
22
- return plugin;
23
- }
24
- exports.default = makeAddPgTableOrderByPlugin;
25
- function orderByAscDesc(baseName, columnOrSqlFragment, uniqueOrOptions = false) {
26
- const options = typeof uniqueOrOptions === "boolean"
27
- ? { unique: uniqueOrOptions }
28
- : uniqueOrOptions !== null && uniqueOrOptions !== void 0 ? uniqueOrOptions : {};
29
- const { unique = false, nulls } = options;
30
- if (typeof unique !== "boolean") {
31
- throw new Error(`Invalid value for "unique" passed to orderByAscDesc for ${baseName}. Unique must be a boolean.`);
32
- }
33
- const isValidNullsOption = [
34
- "first",
35
- "last",
36
- "first-iff-ascending",
37
- "last-iff-ascending",
38
- undefined,
39
- ].includes(nulls);
40
- if (!isValidNullsOption) {
41
- throw new Error(`Invalid value for "nulls" passed to orderByAscDesc for ${baseName}. Nulls must be sorted by one of: undefined | "first" | "last" | "first-iff-ascending" | "last-iff-ascending".`);
42
- }
43
- const defaultAscendingSpec = [columnOrSqlFragment, true];
44
- const defaultDescendingSpec = [columnOrSqlFragment, false];
45
- const ascendingSpec = typeof nulls === "undefined"
46
- ? defaultAscendingSpec
47
- : [
48
- ...defaultAscendingSpec,
49
- ["first", "first-iff-ascending"].includes(nulls),
50
- ];
51
- const descendingSpec = typeof nulls === "undefined"
52
- ? defaultDescendingSpec
53
- : [
54
- ...defaultDescendingSpec,
55
- ["first", "last-iff-ascending"].includes(nulls),
56
- ];
57
- const orders = {
58
- [`${baseName}_ASC`]: {
59
- value: {
60
- alias: `${baseName}_ASC`,
61
- specs: [ascendingSpec],
62
- unique,
63
- },
64
- },
65
- [`${baseName}_DESC`]: {
66
- value: {
67
- alias: `${baseName}_DESC`,
68
- specs: [descendingSpec],
69
- unique,
70
- },
71
- },
72
- };
73
- return orders;
74
- }
75
- exports.orderByAscDesc = orderByAscDesc;
76
- //# sourceMappingURL=makeAddPgTableOrderByPlugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"makeAddPgTableOrderByPlugin.js","sourceRoot":"","sources":["../src/makeAddPgTableOrderByPlugin.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { Plugin } from "graphile-build";
2
- interface ChangeNullabilityRules {
3
- [typeName: string]: {
4
- [fieldName: string]: boolean;
5
- };
6
- }
7
- export default function makeChangeNullabilityPlugin(rules: ChangeNullabilityRules): Plugin;
8
- export {};
@@ -1,28 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- function makeChangeNullabilityPlugin(rules) {
4
- return (builder, _options) => {
5
- function changeNullability(field, build, context) {
6
- const { Self, scope: { fieldName }, } = context;
7
- const typeRules = rules[Self.name];
8
- if (!typeRules) {
9
- return field;
10
- }
11
- const shouldBeNullable = typeRules[fieldName];
12
- if (shouldBeNullable == null) {
13
- return field;
14
- }
15
- const { graphql: { getNullableType, GraphQLNonNull }, } = build;
16
- const nullableType = getNullableType(field.type);
17
- return Object.assign(Object.assign({}, field), { type: shouldBeNullable
18
- ? nullableType
19
- : nullableType === field.type
20
- ? new GraphQLNonNull(field.type)
21
- : field.type });
22
- }
23
- builder.hook("GraphQLInputObjectType:fields:field", changeNullability);
24
- builder.hook("GraphQLObjectType:fields:field", changeNullability);
25
- };
26
- }
27
- exports.default = makeChangeNullabilityPlugin;
28
- //# sourceMappingURL=makeChangeNullabilityPlugin.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"makeChangeNullabilityPlugin.js","sourceRoot":"","sources":["../src/makeChangeNullabilityPlugin.ts"],"names":[],"mappings":";;AAeA,SAAwB,2BAA2B,CACjD,KAA6B;IAE7B,OAAO,CAAC,OAAsB,EAAE,QAAiB,EAAE,EAAE;QACnD,SAAS,iBAAiB,CAExB,KAAY,EAAE,KAAY,EAAE,OAAuB;YACnD,MAAM,EACJ,IAAI,EACJ,KAAK,EAAE,EAAE,SAAS,EAAE,GACrB,GAAG,OAAO,CAAC;YACZ,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,SAAS,EAAE;gBACd,OAAO,KAAK,CAAC;aACd;YACD,MAAM,gBAAgB,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;YAC9C,IAAI,gBAAgB,IAAI,IAAI,EAAE;gBAC5B,OAAO,KAAK,CAAC;aACd;YACD,MAAM,EACJ,OAAO,EAAE,EAAE,eAAe,EAAE,cAAc,EAAE,GAC7C,GAAG,KAAK,CAAC;YACV,MAAM,YAAY,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACjD,uCACK,KAAK,KACR,IAAI,EAAE,gBAAgB;oBACpB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,YAAY,KAAK,KAAK,CAAC,IAAI;wBAC7B,CAAC,CAAC,IAAI,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC;wBAChC,CAAC,CAAC,KAAK,CAAC,IAAI,IACd;QACJ,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,qCAAqC,EAAE,iBAAiB,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,iBAAiB,CAAC,CAAC;IACpE,CAAC,CAAC;AACJ,CAAC;AAnCD,8CAmCC"}
@@ -1,28 +0,0 @@
1
- import type { Build, Plugin, Options } from "graphile-build";
2
- import type { GraphQLIsTypeOfFn, GraphQLTypeResolver, GraphQLResolveInfo, DocumentNode } from "graphql";
3
- import { GraphileHelpers } from "./fieldHelpers";
4
- export declare type AugmentedGraphQLFieldResolver<TSource, TContext, TArgs = {
5
- [argName: string]: any;
6
- }> = (parent: TSource, args: TArgs, context: TContext, info: GraphQLResolveInfo & {
7
- graphile: GraphileHelpers<TSource>;
8
- }, useInfoDotGraphileInstead: GraphileHelpers<TSource>) => any;
9
- export interface ObjectFieldResolver<TSource = any, TContext = any> {
10
- resolve?: AugmentedGraphQLFieldResolver<TSource, TContext>;
11
- subscribe?: AugmentedGraphQLFieldResolver<TSource, TContext>;
12
- __resolveType?: GraphQLTypeResolver<TSource, TContext>;
13
- __isTypeOf?: GraphQLIsTypeOfFn<TSource, TContext>;
14
- }
15
- export interface ObjectResolver<TSource = any, TContext = any> {
16
- [key: string]: AugmentedGraphQLFieldResolver<TSource, TContext> | ObjectFieldResolver<TSource, TContext>;
17
- }
18
- export interface EnumResolver {
19
- [key: string]: string | number | Array<any> | Record<string, any> | symbol;
20
- }
21
- export interface Resolvers<TSource = any, TContext = any> {
22
- [key: string]: ObjectResolver<TSource, TContext> | EnumResolver;
23
- }
24
- export interface ExtensionDefinition {
25
- typeDefs: DocumentNode | DocumentNode[];
26
- resolvers?: Resolvers;
27
- }
28
- export default function makeExtendSchemaPlugin(generator: ExtensionDefinition | ((build: Build, schemaOptions: Options) => ExtensionDefinition), uniqueId?: string): Plugin;