@contember/client-content 1.3.0-alpha.7 → 1.3.0-alpha.8
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/dist/development/ContentQueryBuilder.cjs.map +1 -1
- package/dist/development/ContentQueryBuilder.js.map +1 -1
- package/dist/development/nodes/ContentEntitySelection.cjs.map +1 -1
- package/dist/development/nodes/ContentEntitySelection.js.map +1 -1
- package/dist/development/utils/createListArgs.cjs.map +1 -1
- package/dist/development/utils/createListArgs.js.map +1 -1
- package/dist/production/ContentQueryBuilder.cjs.map +1 -1
- package/dist/production/ContentQueryBuilder.js.map +1 -1
- package/dist/production/nodes/ContentEntitySelection.cjs.map +1 -1
- package/dist/production/nodes/ContentEntitySelection.js.map +1 -1
- package/dist/production/utils/createListArgs.cjs.map +1 -1
- package/dist/production/utils/createListArgs.js.map +1 -1
- package/dist/types/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentQueryBuilder.cjs","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":["ContentEntitySelection","createTypedArgs","GraphQlField","ContentOperation","createListArgs","createMutationOperationSet","GraphQlFragmentSpread"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentQueryBuilder.cjs","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":["ContentEntitySelection","createTypedArgs","GraphQlField","ContentOperation","createListArgs","createMutationOperationSet","GraphQlFragmentSpread"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentQueryBuilder.js","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentQueryBuilder.js","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentEntitySelection.cjs","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":["GraphQlField","createListArgs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentEntitySelection.cjs","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":["GraphQlField","createListArgs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentEntitySelection.js","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentEntitySelection.js","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createListArgs.cjs","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"createListArgs.cjs","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO,IAAI;AAAA,MAC3B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,SAAS;AAAA,MACR,aAAa,IAAI,OAAO,IAAI;AAAA,MAC5B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,UAAU,OAAO,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,WAAW,MAAM,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,EAAA;AAEF;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createListArgs.js","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":"AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"createListArgs.js","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":"AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO,IAAI;AAAA,MAC3B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,SAAS;AAAA,MACR,aAAa,IAAI,OAAO,IAAI;AAAA,MAC5B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,UAAU,OAAO,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,WAAW,MAAM,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,EAAA;AAEF;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentQueryBuilder.cjs","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":["ContentEntitySelection","createTypedArgs","GraphQlField","ContentOperation","createListArgs","createMutationOperationSet","GraphQlFragmentSpread"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentQueryBuilder.cjs","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":["ContentEntitySelection","createTypedArgs","GraphQlField","ContentOperation","createListArgs","createMutationOperationSet","GraphQlFragmentSpread"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentQueryBuilder.js","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentQueryBuilder.js","sources":["../../src/ContentQueryBuilder.ts"],"sourcesContent":["import { ContentClientInput, MutationResult, SchemaNames, TransactionResult } from './types'\nimport {\n\tContentEntitySelection,\n\tContentEntitySelectionCallback,\n\tContentEntitySelectionContext,\n\tContentMutation,\n\tContentOperation,\n\tContentQuery,\n} from './nodes'\nimport { createListArgs } from './utils/createListArgs'\nimport { createTypedArgs } from './utils/createTypedArgs'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFragmentSpread, GraphQlSelectionSet } from '@contember/graphql-builder'\nimport { createMutationOperationSet } from './utils/createMutationOperationSet'\n\nexport type EntitySelectionOrCallback =\n\t| ContentEntitySelection\n\t| ContentEntitySelectionCallback\n\nexport type MutationTransactionOptions = {\n\tdeferForeignKeyConstraints?: boolean\n\tdeferUniqueConstraints?: boolean\n}\n\nexport class ContentQueryBuilder {\n\tconstructor(private readonly schema: SchemaNames) {\n\t}\n\n\n\tpublic fragment(name: string, fieldsCallback?: ContentEntitySelectionCallback): ContentEntitySelection {\n\t\tconst context = this.createContext(name)\n\n\t\tconst entitySelection = new ContentEntitySelection(context, [])\n\t\tif (!fieldsCallback) {\n\t\t\treturn entitySelection\n\t\t}\n\t\treturn fieldsCallback(entitySelection)\n\t}\n\n\n\n\tpublic count(name: string, args: Pick<ContentClientInput.AnyListQueryInput, 'filter'>): ContentQuery<number> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `paginate${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'pageInfo', {}, [\n\t\t\t\tnew GraphQlField(null, 'totalCount'),\n\t\t\t]),\n\t\t]\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet, it => {\n\t\t\treturn it.pageInfo.totalCount\n\t\t})\n\t}\n\n\n\tpublic list(name: string, args: ContentClientInput.AnyListQueryInput, fields: EntitySelectionOrCallback): ContentQuery<any[]> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `list${name}`\n\t\tconst typedArgs = createListArgs(context.entity, args)\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic get(name: string, args: Input.UniqueQueryInput, fields: EntitySelectionOrCallback): ContentQuery<Record<string, unknown> | null> {\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `get${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.resolveSelectionSet(fields, context)\n\n\t\treturn new ContentOperation('query', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic create(name: string, args: Input.CreateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `create${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}CreateInput!`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('create', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic update(name: string, args: Input.UpdateInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `update${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tdata: `${context.entity.name}UpdateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst selectionSet = this.createMutationSelection('update', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic upsert(name: string, args: Input.UpsertInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst fieldName = `upsert${name}`\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tupdate: `${context.entity.name}UpdateInput!`,\n\t\t\tcreate: `${context.entity.name}CreateInput!`,\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\n\t\tconst selectionSet = this.createMutationSelection('upsert', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\n\tpublic delete(name: string, args: Input.UniqueQueryInput, fields?: EntitySelectionOrCallback): ContentMutation<MutationResult> {\n\n\t\tconst context = this.createContext(name)\n\t\tconst typedArgs = createTypedArgs(args, {\n\t\t\tby: `${context.entity.name}UniqueWhere!`,\n\t\t\tfilter: `${context.entity.name}Where`,\n\t\t})\n\t\tconst fieldName = `delete${name}`\n\t\tconst selectionSet = this.createMutationSelection('delete', fields ? this.resolveSelectionSet(fields, context) : undefined)\n\n\t\treturn new ContentOperation('mutation', fieldName, typedArgs, selectionSet)\n\t}\n\n\tpublic transaction(\n\t\tinput: Record<string, ContentMutation<any> | ContentQuery<any>> | ContentMutation<any> | ContentMutation<any>[],\n\t\toptions: MutationTransactionOptions = {},\n\t): ContentMutation<TransactionResult<any>> {\n\t\tconst combined = createMutationOperationSet(input)\n\n\t\tconst transactionArgs = createTypedArgs({ options }, {\n\t\t\toptions: 'MutationTransactionOptions',\n\t\t})\n\t\tconst items = [\n\t\t\t...this.createMutationSelection('transaction'),\n\t\t\t...combined.selection,\n\t\t]\n\t\treturn new ContentOperation<TransactionResult<any>, 'mutation'>('mutation', 'transaction', transactionArgs, items, ({ ok, errorMessage, errors, validation, ...data }) => {\n\t\t\treturn {\n\t\t\t\tok,\n\t\t\t\terrorMessage,\n\t\t\t\terrors,\n\t\t\t\tvalidation,\n\t\t\t\tdata: combined.parse(data),\n\t\t\t}\n\t\t})\n\t}\n\n\tprivate createMutationSelection(operation: 'create' | 'update' | 'delete' | 'upsert' | 'transaction', selection?: GraphQlSelectionSet): GraphQlSelectionSet {\n\t\tconst items: GraphQlSelectionSet = [\n\t\t\tnew GraphQlField(null, 'ok'),\n\t\t\tnew GraphQlField(null, 'errorMessage'),\n\t\t\tnew GraphQlField(null, 'errors', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('MutationError'),\n\t\t\t]),\n\t\t]\n\t\tif (operation !== 'delete') {\n\t\t\titems.push(new GraphQlField(null, 'validation', {}, [\n\t\t\t\tnew GraphQlFragmentSpread('ValidationResult'),\n\t\t\t]))\n\t\t}\n\t\tif (selection) {\n\t\t\titems.push(new GraphQlField(null, 'node', {}, selection))\n\t\t}\n\t\treturn items\n\t}\n\n\n\tprivate resolveSelectionSet(\n\t\tfields: EntitySelectionOrCallback,\n\t\tcontext: ContentEntitySelectionContext<string>,\n\t) {\n\t\treturn (typeof fields === 'function' ? fields(new ContentEntitySelection(context, [])) : fields).selectionSet\n\t}\n\n\tprivate createContext(\n\t\tname: string,\n\t): ContentEntitySelectionContext<string> {\n\t\tconst entity = this.schema.entities[name]\n\t\tif (!entity) {\n\t\t\tthrow new Error(`Entity ${name} not found`)\n\t\t}\n\t\treturn {\n\t\t\tentity: entity,\n\t\t\tschema: this.schema,\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentEntitySelection.cjs","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":["GraphQlField","createListArgs"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentEntitySelection.cjs","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":["GraphQlField","createListArgs"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContentEntitySelection.js","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ContentEntitySelection.js","sources":["../../../src/nodes/ContentEntitySelection.ts"],"sourcesContent":["import { createListArgs } from '../utils/createListArgs'\nimport { ContentClientInput, SchemaEntityNames, SchemaNames } from '../types'\nimport { Input } from '@contember/schema'\nimport { GraphQlField, GraphQlFieldTypedArgs, GraphQlSelectionSet } from '@contember/graphql-builder'\n\n/**\n * @internal\n */\nexport type ContentEntitySelectionContext<Name extends string> = {\n\tentity: SchemaEntityNames<Name>\n\tschema: SchemaNames\n}\n\nexport type ContentEntitySelectionCallback = (select: ContentEntitySelection) => ContentEntitySelection\n\nexport type EntitySelectionCommonInput<Alias extends string | null = string | null> = { as?: Alias }\nexport type EntitySelectionManyArgs<Alias extends string | null = string | null> = ContentClientInput.AnyListQueryInput & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionManyByArgs<Alias extends string | null = string | null> = { by: Input.UniqueWhere; filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionOneArgs<Alias extends string | null = string | null> = { filter?: Input.Where } & EntitySelectionCommonInput<Alias>\nexport type EntitySelectionColumnArgs<Alias extends string | null = string | null> = EntitySelectionCommonInput<Alias>\n\nexport type EntitySelectionAnyArgs =\n\t| EntitySelectionColumnArgs\n\t| EntitySelectionManyArgs\n\t| EntitySelectionManyByArgs\n\t| EntitySelectionOneArgs\n\nexport type ContentEntitySelectionOrCallback = ContentEntitySelectionCallback | ContentEntitySelection\n\n\nexport class ContentEntitySelection {\n\n\t/**\n\t * @internal\n\t */\n\tconstructor(\n\t\t/** @internal */\n\t\tpublic readonly context: ContentEntitySelectionContext<string>,\n\t\t/** @internal */\n\t\tpublic readonly selectionSet: GraphQlSelectionSet,\n\t) {\n\t}\n\n\n\t$(field: string, args?: EntitySelectionColumnArgs): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionManyByArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, args: EntitySelectionOneArgs, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\t$(field: string, selection: ContentEntitySelectionOrCallback): ContentEntitySelection\n\n\t$(field: string, argsOrSelection?: EntitySelectionAnyArgs | ContentEntitySelectionOrCallback, selectionIn?: ContentEntitySelectionOrCallback): ContentEntitySelection {\n\t\tconst [args, selection] = typeof argsOrSelection === 'function' || argsOrSelection instanceof ContentEntitySelection\n\t\t\t? [{}, argsOrSelection]\n\t\t\t: [argsOrSelection ?? {}, selectionIn]\n\t\tif (field === '__typename') {\n\t\t\treturn this.withField(new GraphQlField(args.as ?? null, '__typename'))\n\t\t}\n\t\tconst fieldInfo = this.context.entity.fields[field]\n\t\tif (!fieldInfo) {\n\t\t\tif ('by' in args && field.includes('By')) {\n\t\t\t\tif (!selection) {\n\t\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t\t}\n\t\t\t\treturn this._manyBy(field, args as EntitySelectionManyByArgs, selection)\n\t\t\t}\n\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${field} does not exist.`)\n\t\t}\n\t\tif (fieldInfo.type === 'column') {\n\t\t\treturn this._column(field, args as EntitySelectionColumnArgs)\n\t\t}\n\t\tif (fieldInfo.type === 'many') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._many(field, args as EntitySelectionManyArgs, selection)\n\t\t}\n\t\tif (fieldInfo.type === 'one') {\n\t\t\tif (!selection) {\n\t\t\t\tthrow new Error(`Selection is required for ${this.context.entity.name}.${field}.`)\n\t\t\t}\n\t\t\treturn this._one(field, args as EntitySelectionOneArgs, selection)\n\t\t}\n\t\tthrow new Error(`Unknown field type ${fieldInfo.type}.`)\n\t}\n\n\t$$(): ContentEntitySelection {\n\t\tconst columns = this.context.entity.scalars\n\t\tconst nodes = [\n\t\t\t...this.selectionSet,\n\t\t\t...columns.map(col => new GraphQlField(null, col)),\n\t\t]\n\t\treturn new ContentEntitySelection(this.context, nodes)\n\t}\n\n\tprivate _column(\n\t\tname: string,\n\t\targs: EntitySelectionCommonInput = {},\n\t): ContentEntitySelection {\n\t\tlet fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'column') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a column.`)\n\t\t}\n\n\t\tconst alias = args.as ?? name\n\n\t\tconst field = new GraphQlField(alias, name, {})\n\t\treturn this.withField(field)\n\t}\n\n\n\tprivate _many(\n\t\tname: string,\n\t\targs: EntitySelectionManyArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection{\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, [])) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\tcreateListArgs(entity, args),\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate _manyBy(\n\t\tname: string,\n\t\targs: EntitySelectionManyByArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst byField = Object.keys(args.by)[0]\n\t\tconst relationField = name.substring(0, name.length - byField.length - 2)\n\n\t\tconst field = this.context.entity.fields[relationField]\n\t\tif (!field) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} does not exist.`)\n\t\t}\n\t\tif (field?.type !== 'many') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${relationField} is not a has-many relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[field.entity]\n\t\tconst newContext = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst fieldUpperFirst = name.charAt(0).toUpperCase() + name.slice(1)\n\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t\tby: {\n\t\t\t\tgraphQlType: `${this.context.entity.name}${fieldUpperFirst}UniqueWhere!`,\n\t\t\t\tvalue: args.by,\n\t\t\t},\n\t\t}\n\n\t\tconst entitySelection = typeof fields === 'function' ? fields(new ContentEntitySelection(newContext, []) as any) : fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\tprivate _one(\n\t\tname: string,\n\t\targs: EntitySelectionOneArgs,\n\t\tfields:\n\t\t\t| ContentEntitySelectionCallback\n\t\t\t| ContentEntitySelection,\n\t): ContentEntitySelection {\n\t\tconst alias = args.as ?? name\n\t\tconst fieldInfo = this.context.entity.fields[name]\n\t\tif (!fieldInfo) {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} does not exist.`)\n\t\t}\n\t\tif (fieldInfo?.type !== 'one') {\n\t\t\tthrow new Error(`Field ${this.context.entity.name}.${name} is not a has-one relation.`)\n\t\t}\n\t\tconst entity = this.context.schema.entities[fieldInfo.entity]\n\n\t\tconst newContext: ContentEntitySelectionContext<(typeof entity)['name']> = {\n\t\t\tentity: entity,\n\t\t\tschema: this.context.schema,\n\t\t}\n\t\tconst argsWithType: GraphQlFieldTypedArgs = {\n\t\t\tfilter: {\n\t\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\t\tvalue: args.filter,\n\t\t\t},\n\t\t}\n\t\tconst entitySelection = typeof fields === 'function'\n\t\t\t? fields(new ContentEntitySelection(newContext, []) as any)\n\t\t\t: fields\n\t\tconst newObjectField = new GraphQlField(\n\t\t\talias,\n\t\t\tname,\n\t\t\targsWithType,\n\t\t\tentitySelection.selectionSet,\n\t\t)\n\t\treturn this.withField(newObjectField)\n\t}\n\n\n\tprivate withField(field: GraphQlField) {\n\t\treturn new ContentEntitySelection(this.context, [\n\t\t\t...this.selectionSet,\n\t\t\tfield,\n\t\t])\n\t}\n}\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createListArgs.cjs","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"createListArgs.cjs","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":";;AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO,IAAI;AAAA,MAC3B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,SAAS;AAAA,MACR,aAAa,IAAI,OAAO,IAAI;AAAA,MAC5B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,UAAU,OAAO,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,WAAW,MAAM,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,EAAA;AAEF;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createListArgs.js","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":"AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO;AAAA,
|
|
1
|
+
{"version":3,"file":"createListArgs.js","sources":["../../../src/utils/createListArgs.ts"],"sourcesContent":["import { SchemaEntityNames } from '../types'\nimport { GraphQlFieldTypedArgs } from '@contember/graphql-builder'\n\nexport const createListArgs = (entity: SchemaEntityNames<string>, args: { filter?: any, orderBy?: any, limit?: number, offset?: number }, type: 'list' | 'paginate' = 'list'): GraphQlFieldTypedArgs => {\n\treturn {\n\t\tfilter: {\n\t\t\tgraphQlType: `${entity.name}Where`,\n\t\t\tvalue: args.filter,\n\t\t},\n\t\torderBy: {\n\t\t\tgraphQlType: `[${entity.name}OrderBy!]`,\n\t\t\tvalue: args.orderBy,\n\t\t},\n\t\t[type === 'list' ? 'limit' : 'first']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.limit,\n\t\t},\n\t\t[type === 'list' ? 'offset' : 'skip']: {\n\t\t\tgraphQlType: 'Int',\n\t\t\tvalue: args.offset,\n\t\t},\n\t}\n}\n"],"names":[],"mappings":"AAGO,MAAM,iBAAiB,CAAC,QAAmC,MAAwE,OAA4B,WAAkC;AAChM,SAAA;AAAA,IACN,QAAQ;AAAA,MACP,aAAa,GAAG,OAAO,IAAI;AAAA,MAC3B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,SAAS;AAAA,MACR,aAAa,IAAI,OAAO,IAAI;AAAA,MAC5B,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,UAAU,OAAO,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,IACA,CAAC,SAAS,SAAS,WAAW,MAAM,GAAG;AAAA,MACtC,aAAa;AAAA,MACb,OAAO,KAAK;AAAA,IACb;AAAA,EAAA;AAEF;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../node_modules/typescript/lib/lib.es2023.d.ts","../../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../node_modules/@types/react/ts5.0/global.d.ts","../../../../node_modules/@types/react/node_modules/csstype/index.d.ts","../../../../node_modules/@types/prop-types/index.d.ts","../../../../node_modules/@types/scheduler/tracing.d.ts","../../../../node_modules/@types/react/ts5.0/index.d.ts","../../../../node_modules/@types/react/ts5.0/jsx-runtime.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlFragmentSpread.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlInlineFragment.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/value.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/input.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/json.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/acl.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/actions.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/model.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/result.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/validation.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/settings.d.ts","../../../../node_modules/@contember/schema/dist/src/ProjectRole.d.ts","../../../../node_modules/@contember/schema/dist/src/index.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlField.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlFragment.d.ts","../../../graphql-builder/dist/types/nodes/index.d.ts","../../../graphql-builder/dist/types/GraphQlQueryPrinter.d.ts","../../../graphql-builder/dist/types/index.d.ts","../../src/utils/mutationFragments.ts","../../../graphql-client/dist/types/GraphQlClientRequestOptions.d.ts","../../../graphql-client/dist/types/GraphQlClient.d.ts","../../../graphql-client/dist/types/GraphQlClientError.d.ts","../../../graphql-client/dist/types/index.d.ts","../../src/types/Schema.ts","../../src/types/Input.ts","../../src/types/Result.ts","../../src/types/index.ts","../../src/utils/createListArgs.ts","../../src/nodes/ContentEntitySelection.ts","../../src/nodes/ContentOperation.ts","../../src/nodes/TypedEntitySelection.ts","../../src/nodes/index.ts","../../src/utils/ContentOperationSet.ts","../../src/utils/createMutationOperationSet.ts","../../src/utils/createQueryOperationSet.ts","../../src/ContentClient.ts","../../src/utils/createTypedArgs.ts","../../src/ContentQueryBuilder.ts","../../src/TypedContentQueryBuilder.ts","../../src/index.ts","../../../../node_modules/vite/types/hmrPayload.d.ts","../../../../node_modules/vite/types/customEvent.d.ts","../../../../node_modules/vite/types/hot.d.ts","../../../../node_modules/vite/types/importGlob.d.ts","../../../../node_modules/vite/types/importMeta.d.ts","../../../../node_modules/vite/client.d.ts"],"fileInfos":[{"version":"6a6b471e7e43e15ef6f8fe617a22ce4ecb0e34efa6c3dfcfe7cebd392bcca9d2","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","dc48272d7c333ccf58034c0026162576b7d50ea0e69c3b9292f803fc20720fd5","27147504487dc1159369da4f4da8a26406364624fa9bc3db632f7d94a5bae2c3","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","f4e736d6c8d69ae5b3ab0ddfcaa3dc365c3e76909d6660af5b4e979b3934ac20","eeeb3aca31fbadef8b82502484499dfd1757204799a6f5b33116201c810676ec",{"version":"fcd3ecc9f764f06f4d5c467677f4f117f6abf49dee6716283aa204ff1162498b","affectsGlobalScope":true},{"version":"9a60b92bca4c1257db03b349d58e63e4868cfc0d1c8d0ba60c2dbc63f4e6c9f6","affectsGlobalScope":true},{"version":"f296963760430fb65b4e5d91f0ed770a91c6e77455bacf8fa23a1501654ede0e","affectsGlobalScope":true},{"version":"5114a95689b63f96b957e00216bc04baf9e1a1782aa4d8ee7e5e9acbf768e301","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"ab22100fdd0d24cfc2cc59d0a00fc8cf449830d9c4030dc54390a46bd562e929","affectsGlobalScope":true},{"version":"f7bd636ae3a4623c503359ada74510c4005df5b36de7f23e1db8a5c543fd176b","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"0c20f4d2358eb679e4ae8a4432bdd96c857a2960fd6800b21ec4008ec59d60ea","affectsGlobalScope":true},{"version":"36ae84ccc0633f7c0787bc6108386c8b773e95d3b052d9464a99cd9b8795fbec","affectsGlobalScope":true},{"version":"82d0d8e269b9eeac02c3bd1c9e884e85d483fcb2cd168bccd6bc54df663da031","affectsGlobalScope":true},{"version":"b8deab98702588840be73d67f02412a2d45a417a3c097b2e96f7f3a42ac483d1","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"376d554d042fb409cb55b5cbaf0b2b4b7e669619493c5d18d5fa8bd67273f82a","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"c4138a3dd7cd6cf1f363ca0f905554e8d81b45844feea17786cdf1626cb8ea06","affectsGlobalScope":true},{"version":"6ff3e2452b055d8f0ec026511c6582b55d935675af67cdb67dd1dc671e8065df","affectsGlobalScope":true},{"version":"03de17b810f426a2f47396b0b99b53a82c1b60e9cba7a7edda47f9bb077882f4","affectsGlobalScope":true},{"version":"8184c6ddf48f0c98429326b428478ecc6143c27f79b79e85740f17e6feb090f1","affectsGlobalScope":true},{"version":"261c4d2cf86ac5a89ad3fb3fafed74cbb6f2f7c1d139b0540933df567d64a6ca","affectsGlobalScope":true},{"version":"6af1425e9973f4924fca986636ac19a0cf9909a7e0d9d3009c349e6244e957b6","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"15a630d6817718a2ddd7088c4f83e4673fde19fa992d2eae2cf51132a302a5d3","affectsGlobalScope":true},{"version":"b7e9f95a7387e3f66be0ed6db43600c49cec33a3900437ce2fd350d9b7cb16f2","affectsGlobalScope":true},{"version":"01e0ee7e1f661acedb08b51f8a9b7d7f959e9cdb6441360f06522cc3aea1bf2e","affectsGlobalScope":true},{"version":"ac17a97f816d53d9dd79b0d235e1c0ed54a8cc6a0677e9a3d61efb480b2a3e4e","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"9cc66b0513ad41cb5f5372cca86ef83a0d37d1c1017580b7dace3ea5661836df","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"709efdae0cb5df5f49376cde61daacc95cdd44ae4671da13a540da5088bf3f30","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"61ed9b6d07af959e745fb11f9593ecd743b279418cc8a99448ea3cd5f3b3eb22","affectsGlobalScope":true},{"version":"038a2f66a34ee7a9c2fbc3584c8ab43dff2995f8c68e3f566f4c300d2175e31e","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"f5c92f2c27b06c1a41b88f6db8299205aee52c2a2943f7ed29bd585977f254e8","affectsGlobalScope":true},{"version":"b7feb7967c6c6003e11f49efa8f5de989484e0a6ba2e5a6c41b55f8b8bd85dba","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"b9ea5778ff8b50d7c04c9890170db34c26a5358cccba36844fe319f50a43a61a","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"25de46552b782d43cb7284df22fe2a265de387cf0248b747a7a1b647d81861f6","affectsGlobalScope":true},{"version":"307c8b7ebbd7f23a92b73a4c6c0a697beca05b06b036c23a34553e5fe65e4fdc","affectsGlobalScope":true},{"version":"189c0703923150aa30673fa3de411346d727cc44a11c75d05d7cf9ef095daa22","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"49a253ec027e56c55c7450a0c331cfe96212b3d1cc215b1710ba94a083404cf3","affectsGlobalScope":true},"1c29793071152b207c01ea1954e343be9a44d85234447b2b236acae9e709a383","6a386ff939f180ae8ef064699d8b7b6e62bc2731a62d7fbf5e02589383838dea","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"278fe30e638dad09488d130287c728f99f61cb315ed86b70c36040e4311f9cf5","affectsGlobalScope":true},"af7fd2870746deed40e130fc0a3966de74e8f52a97ec114d0fbb35876ab05ca9","34e5c5b2be8aa1b3f75ccd21529ae8b9163f510dbdabae4caae3fec3010cc33b","45fb3525f5c652416e54f91bd8378464d41e22b0ccc108de7db918cf8e92ffd3","3ae62be455efcb1874e7fd1f30f2bb83144757d2f349ceb0c6523bb9f7f7a860","be0f711ade459d8e51739f8544a565bc7d2ea56a9dda7ef6d5edd9d864737276","b1296831e111197bd9ebd73f0d15ad0fe2e11fcc51a6302edb23ffd93794db36","5610e8177b34fa50394973f3faba06fd5268b1264a2f4f7daaa71fee1194a94d","4dc29833bfcaa8597097a99fd486d72a0de9c38bb7a6dcd1dadb70e1b9c17282","9869fe612661e4bb3a63b339b3a0d0cdbb6c9e85dd4a59209c86383179e3fbd9","f42116e2e8ad600dc90bdf8ceade9dcf593c35812d8aaba9c03a3f1dbb87330e","dff2fee737ebe5174f549c9f28e114c0cabac4b5fe4e364654465ba528979ba4","86c9954d4c0c270f2952a8695b90fbf4a58210deae10911be98b6c31b84cc8db","466df547af9cf3861658b08baf3ecbd41c0eaad2101378fadfa54ab24db103e6","66b37de2f4b108cf4467570730a30cac8aa7d9ec94a0e335825c9192c1188094","e2402a646d4471b0985495b6bfca6c9c731d335195bf206e8c982d8ca362692f","08d34fcbf615950f6d3dd6858437159f0c0af08d5af645ec415ebfeaeacf3bd0","13ce162c8088b92a985e41a2ddf61cbb191101c280214a74dd9e8d2fd3c9c905","d2689735d2498972d6f02fbaff989b1fa500b5a140af7e7c08a15fbc36c1d3d3","4b47e095287cc1351b5fa9c5112d1d2d255bd8916ce76347225837b244e97ed5",{"version":"455a08fab96b932e98609df4cdf283f4e73267a61649f586f2ecd3daa6fd9467","signature":"016e695348eb662b9adead21973e3da689bbff9c65811491644e2ed594fca800"},"8c56ed339fb7ea09a933aae91daa038e669730da6b6d422275d0a7e5293b46a7","711255f9dda18a35389ec1e3fa8ebe6e906e67902550afad96b0ac6c5a5de327","4d023a0827a63ad5e6b498f92830d79e40e6fd487ed6b7c6fc2528eb9b3c0937","e17fbde86ef68adc663fff12c63cce11175482b3f108afd90fa3c11754afe6c6",{"version":"67b72bf4a4743058cd6cd80c632d8d918bd70d72cb4f6a02ac99e5ed9c4ff9e8","signature":"aae8862b104ce076ea1b097bc886c37b33a338efeb9960157f4725fdb5a5862b"},{"version":"621d5b34fac63e9ac87b4649ce24c5522561508115d17ea50fac99235c79d30f","signature":"1f17acf9613ec0789322f68d2c26f5c3f46a2e82bbe00d3264373ea1ae045ffc"},{"version":"48efacca2f03c964cafd13eabcd5ca0e61c06cbdf2aa02f7bf1cbdea4a9a0dc6","signature":"f289c5204b0819632486cefeec845a20a7a9c769180fb6bede63b0d7f24839d2"},{"version":"e094ee9f701b35c8089fa4bf0708ca687f9a98d8a3b04ace0769ec76b6e06d68","signature":"feaceef383869ce3addd7d620c89fa6ff1d5753f7b451cffb1e926998df2b5e4"},{"version":"1ce34a0f5a33f3ec3d13879fa6a2c573eba987beef0c44dedd271e1f6127d038","signature":"072aa9647706bfec733119a60c7c6c1184ef8bedd0f11a32d0553b2b939c9f2d"},{"version":"aa2a2bc669516f05a7c0fbb47d0f67bd25f18140b5cbdcbfbcb2fc1d390844cf","signature":"f104ff2c22b3c0919c63450b8b77fa227d183a47eed6ef54203ec40678674cb5"},{"version":"acb7dbfa3ccf09b7f56bcfc1c027f5a774fe6454d2089d39e789c8e251885a06","signature":"06c1e22ce1921cfd383c800f9e191972c5dfaca8996cca54d85c4b4cb41db49d"},{"version":"7cca51c7aa8f5c0d4199ef5e4e72f5e517efc33057ca0bdc0dde5d3f8c10440b","signature":"217866763d14f5c35e7613c29767c4b12debbfe01eec434a79ff7444fadedbbc"},{"version":"af5f7c439c7cf5c91cc7b734dd5994c187f853e8ce4d5e37fc193625099418c5","signature":"6c7327831239ec38e57c18eb15c5b191aa258ada0528de8dc93092efcba20896"},{"version":"a6481312c14c551004515f78ecb8b766ef32d74f1db6e5961875e419e937453d","signature":"0cd8eca2ce06522c71d3b9eb3ca87f6641f1ca48ee143c424eb0a6ca5946e444"},{"version":"2f8ef76dcd86e19af088905c3c014c898804e216db510091784717474db2dcee","signature":"d29f4556a53aa2660b9bbfe2d93770781740b6e9274e16ea13b38dcec35ce42e"},{"version":"5d0650fd8b5826f32bd9d97bb9e31fa62738ec20bb673fffd1fc8e34e9700375","signature":"b8373beeb8e2f6ffb2ed25801fa5366661bac945fc2e3b43c40a22b609992b8a"},{"version":"5a1711ac5f47090722b7160cfadbd77c4c8bb4aed84b64c4923d0c29ce0c1d6a","signature":"3c4de8d194c64b484827151ff14582884166268c345cbb13f9c19e4be3912f54"},{"version":"4aae859123123ed6d4745fe16fb27f13192735eb12952cbabfe9fbc8f1eddc6b","signature":"5f64acae0d67819d1fccb6663c89df4ef8b38461ebfbe45824d780ab928cdb47"},{"version":"734dd3ee55d31527b178af5907d6af3a846f9a19558ca23939d8ff909d53c3e6","signature":"ea924fbabda99a62bb4cde7f6a01048597027815366db11bff03c08ed576fed8"},{"version":"9edc6523ce772fcf5ed7af49675b623982c113473c6884c85487f41546da9185","signature":"5e8c7ad4619cc15007aa5bc3f4e1a30cb01540c14beaa609fb8d17d21acaceba"},{"version":"ebc1c42c3c87594615b879a8dd9503908a09023b2f11e0876f489b46f34509cb","signature":"f202558a35a4093e2eb6a5a2aa9f517f883dc3b949a350c9b36906f8c1a3e20a"},"bcb6ea18f23dae2c48459d7b86d3adccd6898f824fcbf9da08b935f559896580","0aa7220845f5f3902fe043f646f9d9218bd7dd6c4046e8471580866ea6b03aa2","4d5fb5d6b35f731b2ae4d9d7c592d48e91d6de531dd130628edf4eba16add893","739c2c46edc112421fc023c24b4898b1f413f792bb6a02b40ba182c648e56c2f",{"version":"df93bb67d5ae7be3d599323de42e12cb8da59f0b490c3186ae91d493632b5e36","affectsGlobalScope":true},{"version":"f8b8b34c4f7651c9f7b126af8affda4139a0499e62e74f0f8dc2be36e9f14b59","affectsGlobalScope":true}],"root":[86,[91,107]],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":4,"module":99,"noEmitOnError":true,"noImplicitOverride":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"target":7,"useDefineForClassFields":true},"fileIdsList":[[70,71,72,73,74,75,76,77,78,79],[71,72],[72],[70],[71],[62,63,64,65],[66],[112],[108],[109],[110,111],[67,85,86,90,99,101,102],[67,80,85,94,95,99,101,104],[67,94,99,105],[67,94,99,103,105,106],[67,80,85,94,95],[67,85],[67,91,94],[67,96,97,98],[67,80,91],[67,80],[67,91,92,93],[67,85,94],[67,85,99,100],[80,83],[83,84],[68,69,80],[81],[68,69,81,82],[87],[87,88,89],[90,99],[80,94,99],[94,99,105],[94,99,103,105,106],[80,85,94],[85],[91,94],[96,97,98],[80,91],[80],[91,92,93],[85,94],[99,100]],"referencedMap":[[80,1],[73,2],[74,3],[71,4],[75,5],[76,4],[77,3],[66,6],[67,7],[113,8],[109,9],[110,10],[112,11],[103,12],[105,13],[106,14],[107,15],[96,16],[97,17],[98,18],[99,19],[92,20],[93,21],[91,21],[94,22],[100,17],[95,23],[101,24],[102,24],[104,17],[86,17],[84,25],[85,26],[81,27],[82,28],[69,28],[83,29],[88,30],[90,31]],"exportedModulesMap":[[80,1],[73,2],[74,3],[71,4],[75,5],[76,4],[77,3],[66,6],[67,7],[113,8],[109,9],[110,10],[112,11],[103,32],[105,33],[106,34],[107,35],[96,36],[97,37],[98,38],[99,39],[92,40],[93,41],[91,41],[94,42],[100,37],[95,43],[101,44],[102,44],[104,37],[86,37],[84,25],[85,26],[81,27],[82,28],[69,28],[83,29],[88,30],[90,31]],"semanticDiagnosticsPerFile":[79,80,73,74,71,72,75,76,78,77,70,64,63,62,66,67,65,60,61,12,13,15,14,2,16,17,18,19,20,21,22,23,3,4,27,24,25,26,28,29,30,5,31,32,33,34,6,38,35,36,37,39,7,40,45,46,41,42,43,44,8,50,47,48,49,51,9,52,53,54,57,55,56,58,10,1,11,59,113,109,108,110,111,112,103,105,106,107,96,97,98,99,92,93,91,94,100,95,101,102,104,86,84,85,81,82,68,69,83,88,89,87,90],"latestChangedDtsFile":"./index.d.ts"},"version":"5.0.4"}
|
|
1
|
+
{"program":{"fileNames":["../../../../node_modules/typescript/lib/lib.es5.d.ts","../../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../../node_modules/typescript/lib/lib.es2022.d.ts","../../../../node_modules/typescript/lib/lib.es2023.d.ts","../../../../node_modules/typescript/lib/lib.esnext.d.ts","../../../../node_modules/typescript/lib/lib.dom.d.ts","../../../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.array.d.ts","../../../../node_modules/typescript/lib/lib.es2022.error.d.ts","../../../../node_modules/typescript/lib/lib.es2022.intl.d.ts","../../../../node_modules/typescript/lib/lib.es2022.object.d.ts","../../../../node_modules/typescript/lib/lib.es2022.sharedmemory.d.ts","../../../../node_modules/typescript/lib/lib.es2022.string.d.ts","../../../../node_modules/typescript/lib/lib.es2022.regexp.d.ts","../../../../node_modules/typescript/lib/lib.es2023.array.d.ts","../../../../node_modules/typescript/lib/lib.es2023.collection.d.ts","../../../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../../../node_modules/typescript/lib/lib.esnext.disposable.d.ts","../../../../node_modules/typescript/lib/lib.esnext.decorators.d.ts","../../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../node_modules/@types/react/global.d.ts","../../../../node_modules/csstype/index.d.ts","../../../../node_modules/@types/prop-types/index.d.ts","../../../../node_modules/@types/scheduler/tracing.d.ts","../../../../node_modules/@types/react/index.d.ts","../../../../node_modules/@types/react/jsx-runtime.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlFragmentSpread.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlInlineFragment.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/value.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/input.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/json.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/acl.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/actions.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/model.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/result.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/validation.d.ts","../../../../node_modules/@contember/schema/dist/src/schema/settings.d.ts","../../../../node_modules/@contember/schema/dist/src/ProjectRole.d.ts","../../../../node_modules/@contember/schema/dist/src/index.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlField.d.ts","../../../graphql-builder/dist/types/nodes/GraphQlFragment.d.ts","../../../graphql-builder/dist/types/nodes/index.d.ts","../../../graphql-builder/dist/types/GraphQlQueryPrinter.d.ts","../../../graphql-builder/dist/types/index.d.ts","../../src/utils/mutationFragments.ts","../../../graphql-client/dist/types/GraphQlClientRequestOptions.d.ts","../../../graphql-client/dist/types/GraphQlClient.d.ts","../../../graphql-client/dist/types/GraphQlClientError.d.ts","../../../graphql-client/dist/types/index.d.ts","../../src/types/Schema.ts","../../src/types/Input.ts","../../src/types/Result.ts","../../src/types/index.ts","../../src/utils/createListArgs.ts","../../src/nodes/ContentEntitySelection.ts","../../src/nodes/ContentOperation.ts","../../src/nodes/TypedEntitySelection.ts","../../src/nodes/index.ts","../../src/utils/ContentOperationSet.ts","../../src/utils/createMutationOperationSet.ts","../../src/utils/createQueryOperationSet.ts","../../src/ContentClient.ts","../../src/utils/createTypedArgs.ts","../../src/ContentQueryBuilder.ts","../../src/TypedContentQueryBuilder.ts","../../src/index.ts","../../../../node_modules/vite/types/hmrPayload.d.ts","../../../../node_modules/vite/types/customEvent.d.ts","../../../../node_modules/vite/types/hot.d.ts","../../../../node_modules/vite/types/importGlob.d.ts","../../../../node_modules/vite/types/importMeta.d.ts","../../../../node_modules/vite/client.d.ts"],"fileInfos":[{"version":"f33e5332b24c3773e930e212cbb8b6867c8ba3ec4492064ea78e55a524d57450","affectsGlobalScope":true},"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","26f2f787e82c4222710f3b676b4d83eb5ad0a72fa7b746f03449e7a026ce5073","9a68c0c07ae2fa71b44384a839b7b8d81662a236d4b9ac30916718f7510b1b2d","5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","feecb1be483ed332fad555aff858affd90a48ab19ba7272ee084704eb7167569","5514e54f17d6d74ecefedc73c504eadffdeda79c7ea205cf9febead32d45c4bc","1c0cdb8dc619bc549c3e5020643e7cf7ae7940058e8c7e5aefa5871b6d86f44b","bed7b7ba0eb5a160b69af72814b4dde371968e40b6c5e73d3a9f7bee407d158c",{"version":"21e41a76098aa7a191028256e52a726baafd45a925ea5cf0222eb430c96c1d83","affectsGlobalScope":true},{"version":"35299ae4a62086698444a5aaee27fc7aa377c68cbb90b441c9ace246ffd05c97","affectsGlobalScope":true},{"version":"138fb588d26538783b78d1e3b2c2cc12d55840b97bf5e08bca7f7a174fbe2f17","affectsGlobalScope":true},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true},{"version":"4443e68b35f3332f753eacc66a04ac1d2053b8b035a0e0ac1d455392b5e243b3","affectsGlobalScope":true},{"version":"bc47685641087c015972a3f072480889f0d6c65515f12bd85222f49a98952ed7","affectsGlobalScope":true},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true},{"version":"93495ff27b8746f55d19fcbcdbaccc99fd95f19d057aed1bd2c0cafe1335fbf0","affectsGlobalScope":true},{"version":"6fc23bb8c3965964be8c597310a2878b53a0306edb71d4b5a4dfe760186bcc01","affectsGlobalScope":true},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true},{"version":"bb42a7797d996412ecdc5b2787720de477103a0b2e53058569069a0e2bae6c7e","affectsGlobalScope":true},{"version":"4738f2420687fd85629c9efb470793bb753709c2379e5f85bc1815d875ceadcd","affectsGlobalScope":true},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true},{"version":"9fc46429fbe091ac5ad2608c657201eb68b6f1b8341bd6d670047d32ed0a88fa","affectsGlobalScope":true},{"version":"61c37c1de663cf4171e1192466e52c7a382afa58da01b1dc75058f032ddf0839","affectsGlobalScope":true},{"version":"b541a838a13f9234aba650a825393ffc2292dc0fc87681a5d81ef0c96d281e7a","affectsGlobalScope":true},{"version":"e0275cd0e42990dc3a16f0b7c8bca3efe87f1c8ad404f80c6db1c7c0b828c59f","affectsGlobalScope":true},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true},{"version":"49ed889be54031e1044af0ad2c603d627b8bda8b50c1a68435fe85583901d072","affectsGlobalScope":true},{"version":"e93d098658ce4f0c8a0779e6cab91d0259efb88a318137f686ad76f8410ca270","affectsGlobalScope":true},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true},{"version":"bf14a426dbbf1022d11bd08d6b8e709a2e9d246f0c6c1032f3b2edb9a902adbe","affectsGlobalScope":true},{"version":"ec0104fee478075cb5171e5f4e3f23add8e02d845ae0165bfa3f1099241fa2aa","affectsGlobalScope":true},{"version":"2b72d528b2e2fe3c57889ca7baef5e13a56c957b946906d03767c642f386bbc3","affectsGlobalScope":true},{"version":"acae90d417bee324b1372813b5a00829d31c7eb670d299cd7f8f9a648ac05688","affectsGlobalScope":true},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true},{"version":"af3dd424cf267428f30ccfc376f47a2c0114546b55c44d8c0f1d57d841e28d74","affectsGlobalScope":true},{"version":"995c005ab91a498455ea8dfb63aa9f83fa2ea793c3d8aa344be4a1678d06d399","affectsGlobalScope":true},{"version":"51e547984877a62227042850456de71a5c45e7fe86b7c975c6e68896c86fa23b","affectsGlobalScope":true},{"version":"62a4966981264d1f04c44eb0f4b5bdc3d81c1a54725608861e44755aa24ad6a5","affectsGlobalScope":true},{"version":"4fa6ed14e98aa80b91f61b9805c653ee82af3502dc21c9da5268d3857772ca05","affectsGlobalScope":true},{"version":"e6633e05da3ff36e6da2ec170d0d03ccf33de50ca4dc6f5aeecb572cedd162fb","affectsGlobalScope":true},{"version":"86a34c7a13de9cabc43161348f663624b56871ed80986e41d214932ddd8d6719","affectsGlobalScope":true},{"version":"8444af78980e3b20b49324f4a16ba35024fef3ee069a0eb67616ea6ca821c47a","affectsGlobalScope":true},{"version":"caccc56c72713969e1cfe5c3d44e5bab151544d9d2b373d7dbe5a1e4166652be","affectsGlobalScope":true},{"version":"3287d9d085fbd618c3971944b65b4be57859f5415f495b33a6adc994edd2f004","affectsGlobalScope":true},{"version":"50d53ccd31f6667aff66e3d62adf948879a3a16f05d89882d1188084ee415bbc","affectsGlobalScope":true},{"version":"08a58483392df5fcc1db57d782e87734f77ae9eab42516028acbfe46f29a3ef7","affectsGlobalScope":true},{"version":"436aaf437562f276ec2ddbee2f2cdedac7664c1e4c1d2c36839ddd582eeb3d0a","affectsGlobalScope":true},{"version":"13f6e6380c78e15e140243dc4be2fa546c287c6d61f4729bc2dd7cf449605471","affectsGlobalScope":true},{"version":"4350e5922fecd4bedda2964d69c213a1436349d0b8d260dd902795f5b94dc74b","affectsGlobalScope":true},{"version":"d4b1d2c51d058fc21ec2629fff7a76249dec2e36e12960ea056e3ef89174080f","affectsGlobalScope":true},{"version":"33358442698bb565130f52ba79bfd3d4d484ac85fe33f3cb1759c54d18201393","affectsGlobalScope":true},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true},{"version":"0bd5e7096c7bc02bf70b2cc017fc45ef489cb19bd2f32a71af39ff5787f1b56a","affectsGlobalScope":true},"8a8eb4ebffd85e589a1cc7c178e291626c359543403d58c9cd22b81fab5b1fb9","6a386ff939f180ae8ef064699d8b7b6e62bc2731a62d7fbf5e02589383838dea","f5a8b384f182b3851cec3596ccc96cb7464f8d3469f48c74bf2befb782a19de5",{"version":"369b91cb44fdb8a8fa15de2bd6c28a7abfe6cc16d483ea42291cc7b1efff88d4","affectsGlobalScope":true},"2879a055439b6c0c0132a1467120a0f85b56b5d735c973ad235acd958b1b5345","34e5c5b2be8aa1b3f75ccd21529ae8b9163f510dbdabae4caae3fec3010cc33b","45fb3525f5c652416e54f91bd8378464d41e22b0ccc108de7db918cf8e92ffd3","3ae62be455efcb1874e7fd1f30f2bb83144757d2f349ceb0c6523bb9f7f7a860","be0f711ade459d8e51739f8544a565bc7d2ea56a9dda7ef6d5edd9d864737276","b1296831e111197bd9ebd73f0d15ad0fe2e11fcc51a6302edb23ffd93794db36","5610e8177b34fa50394973f3faba06fd5268b1264a2f4f7daaa71fee1194a94d","4dc29833bfcaa8597097a99fd486d72a0de9c38bb7a6dcd1dadb70e1b9c17282","9869fe612661e4bb3a63b339b3a0d0cdbb6c9e85dd4a59209c86383179e3fbd9","f42116e2e8ad600dc90bdf8ceade9dcf593c35812d8aaba9c03a3f1dbb87330e","dff2fee737ebe5174f549c9f28e114c0cabac4b5fe4e364654465ba528979ba4","86c9954d4c0c270f2952a8695b90fbf4a58210deae10911be98b6c31b84cc8db","466df547af9cf3861658b08baf3ecbd41c0eaad2101378fadfa54ab24db103e6","66b37de2f4b108cf4467570730a30cac8aa7d9ec94a0e335825c9192c1188094","e2402a646d4471b0985495b6bfca6c9c731d335195bf206e8c982d8ca362692f","08d34fcbf615950f6d3dd6858437159f0c0af08d5af645ec415ebfeaeacf3bd0","13ce162c8088b92a985e41a2ddf61cbb191101c280214a74dd9e8d2fd3c9c905","d2689735d2498972d6f02fbaff989b1fa500b5a140af7e7c08a15fbc36c1d3d3","4b47e095287cc1351b5fa9c5112d1d2d255bd8916ce76347225837b244e97ed5",{"version":"455a08fab96b932e98609df4cdf283f4e73267a61649f586f2ecd3daa6fd9467","signature":"016e695348eb662b9adead21973e3da689bbff9c65811491644e2ed594fca800"},"8c56ed339fb7ea09a933aae91daa038e669730da6b6d422275d0a7e5293b46a7","711255f9dda18a35389ec1e3fa8ebe6e906e67902550afad96b0ac6c5a5de327","4d023a0827a63ad5e6b498f92830d79e40e6fd487ed6b7c6fc2528eb9b3c0937","e17fbde86ef68adc663fff12c63cce11175482b3f108afd90fa3c11754afe6c6",{"version":"67b72bf4a4743058cd6cd80c632d8d918bd70d72cb4f6a02ac99e5ed9c4ff9e8","signature":"aae8862b104ce076ea1b097bc886c37b33a338efeb9960157f4725fdb5a5862b"},{"version":"621d5b34fac63e9ac87b4649ce24c5522561508115d17ea50fac99235c79d30f","signature":"1f17acf9613ec0789322f68d2c26f5c3f46a2e82bbe00d3264373ea1ae045ffc"},{"version":"48efacca2f03c964cafd13eabcd5ca0e61c06cbdf2aa02f7bf1cbdea4a9a0dc6","signature":"f289c5204b0819632486cefeec845a20a7a9c769180fb6bede63b0d7f24839d2"},{"version":"e094ee9f701b35c8089fa4bf0708ca687f9a98d8a3b04ace0769ec76b6e06d68","signature":"feaceef383869ce3addd7d620c89fa6ff1d5753f7b451cffb1e926998df2b5e4"},{"version":"1ce34a0f5a33f3ec3d13879fa6a2c573eba987beef0c44dedd271e1f6127d038","signature":"072aa9647706bfec733119a60c7c6c1184ef8bedd0f11a32d0553b2b939c9f2d"},{"version":"aa2a2bc669516f05a7c0fbb47d0f67bd25f18140b5cbdcbfbcb2fc1d390844cf","signature":"f104ff2c22b3c0919c63450b8b77fa227d183a47eed6ef54203ec40678674cb5"},{"version":"acb7dbfa3ccf09b7f56bcfc1c027f5a774fe6454d2089d39e789c8e251885a06","signature":"06c1e22ce1921cfd383c800f9e191972c5dfaca8996cca54d85c4b4cb41db49d"},{"version":"7cca51c7aa8f5c0d4199ef5e4e72f5e517efc33057ca0bdc0dde5d3f8c10440b","signature":"217866763d14f5c35e7613c29767c4b12debbfe01eec434a79ff7444fadedbbc"},{"version":"af5f7c439c7cf5c91cc7b734dd5994c187f853e8ce4d5e37fc193625099418c5","signature":"6c7327831239ec38e57c18eb15c5b191aa258ada0528de8dc93092efcba20896"},{"version":"a6481312c14c551004515f78ecb8b766ef32d74f1db6e5961875e419e937453d","signature":"0cd8eca2ce06522c71d3b9eb3ca87f6641f1ca48ee143c424eb0a6ca5946e444"},{"version":"2f8ef76dcd86e19af088905c3c014c898804e216db510091784717474db2dcee","signature":"d29f4556a53aa2660b9bbfe2d93770781740b6e9274e16ea13b38dcec35ce42e"},{"version":"5d0650fd8b5826f32bd9d97bb9e31fa62738ec20bb673fffd1fc8e34e9700375","signature":"b8373beeb8e2f6ffb2ed25801fa5366661bac945fc2e3b43c40a22b609992b8a"},{"version":"5a1711ac5f47090722b7160cfadbd77c4c8bb4aed84b64c4923d0c29ce0c1d6a","signature":"3c4de8d194c64b484827151ff14582884166268c345cbb13f9c19e4be3912f54"},{"version":"4aae859123123ed6d4745fe16fb27f13192735eb12952cbabfe9fbc8f1eddc6b","signature":"5f64acae0d67819d1fccb6663c89df4ef8b38461ebfbe45824d780ab928cdb47"},{"version":"734dd3ee55d31527b178af5907d6af3a846f9a19558ca23939d8ff909d53c3e6","signature":"ea924fbabda99a62bb4cde7f6a01048597027815366db11bff03c08ed576fed8"},{"version":"9edc6523ce772fcf5ed7af49675b623982c113473c6884c85487f41546da9185","signature":"5e8c7ad4619cc15007aa5bc3f4e1a30cb01540c14beaa609fb8d17d21acaceba"},{"version":"ebc1c42c3c87594615b879a8dd9503908a09023b2f11e0876f489b46f34509cb","signature":"f202558a35a4093e2eb6a5a2aa9f517f883dc3b949a350c9b36906f8c1a3e20a"},"bcb6ea18f23dae2c48459d7b86d3adccd6898f824fcbf9da08b935f559896580","1363ba7d52f2353d0c4306d0ecdaf171bf4509c0148842f9fd8d3986c098a2eb","cbe726263ae9a7bf32352380f7e8ab66ee25b3457137e316929269c19e18a2be","21092de52736dc30f478fe5f1e88ad1b545ce4b276062999302aa65b30a6787a",{"version":"4025a454b1ca489b179ee8c684bdd70ff8c1967e382076ade53e7e4653e1daec","affectsGlobalScope":true},{"version":"84d68135178bf014e5cdc27e88c9148fc22f82e1a733dc6e1869a5263e58d5db","affectsGlobalScope":true}],"root":[90,[95,111]],"options":{"allowSyntheticDefaultImports":true,"composite":true,"declaration":true,"declarationMap":true,"emitDeclarationOnly":true,"esModuleInterop":true,"experimentalDecorators":true,"jsx":4,"module":99,"noEmitOnError":true,"noImplicitOverride":true,"outDir":"./","skipLibCheck":true,"sourceMap":true,"strict":true,"target":7,"useDefineForClassFields":true},"fileIdsList":[[74,75,76,77,78,79,80,81,82,83],[75,76],[76],[74],[75],[66,67,68,69],[70],[116],[112],[113],[114,115],[71,89,90,94,103,105,106],[71,84,89,98,99,103,105,108],[71,98,103,109],[71,98,103,107,109,110],[71,84,89,98,99],[71,89],[71,95,98],[71,100,101,102],[71,84,95],[71,84],[71,95,96,97],[71,89,98],[71,89,103,104],[84,87],[87,88],[72,73,84],[85],[72,73,85,86],[91],[91,92,93],[94,103],[84,98,103],[98,103,109],[98,103,107,109,110],[84,89,98],[89],[95,98],[100,101,102],[84,95],[84],[95,96,97],[89,98],[103,104]],"referencedMap":[[84,1],[77,2],[78,3],[75,4],[79,5],[80,4],[81,3],[70,6],[71,7],[117,8],[113,9],[114,10],[116,11],[107,12],[109,13],[110,14],[111,15],[100,16],[101,17],[102,18],[103,19],[96,20],[97,21],[95,21],[98,22],[104,17],[99,23],[105,24],[106,24],[108,17],[90,17],[88,25],[89,26],[85,27],[86,28],[73,28],[87,29],[92,30],[94,31]],"exportedModulesMap":[[84,1],[77,2],[78,3],[75,4],[79,5],[80,4],[81,3],[70,6],[71,7],[117,8],[113,9],[114,10],[116,11],[107,32],[109,33],[110,34],[111,35],[100,36],[101,37],[102,38],[103,39],[96,40],[97,41],[95,41],[98,42],[104,37],[99,43],[105,44],[106,44],[108,37],[90,37],[88,25],[89,26],[85,27],[86,28],[73,28],[87,29],[92,30],[94,31]],"semanticDiagnosticsPerFile":[83,84,77,78,75,76,79,80,82,81,74,68,66,70,71,69,67,64,65,12,13,15,14,2,16,17,18,19,20,21,22,23,3,4,24,28,25,26,27,29,30,31,5,32,33,34,35,6,39,36,37,38,40,7,41,46,47,42,43,44,45,8,51,48,49,50,52,9,53,54,55,58,56,57,59,60,10,1,11,63,62,61,117,113,112,114,115,116,107,109,110,111,100,101,102,103,96,97,95,98,104,99,105,106,108,90,88,89,85,86,72,73,87,92,93,91,94],"latestChangedDtsFile":"./index.d.ts"},"version":"5.3.3"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@contember/client-content",
|
|
3
3
|
"license": "Apache-2.0",
|
|
4
|
-
"version": "1.3.0-alpha.
|
|
4
|
+
"version": "1.3.0-alpha.8",
|
|
5
5
|
"main": "./dist/production/index.js",
|
|
6
6
|
"exports": {
|
|
7
7
|
".": {
|
|
@@ -35,8 +35,8 @@
|
|
|
35
35
|
"test": "vitest"
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
|
-
"@contember/graphql-builder": "1.3.0-alpha.
|
|
39
|
-
"@contember/graphql-client": "1.3.0-alpha.
|
|
38
|
+
"@contember/graphql-builder": "1.3.0-alpha.8",
|
|
39
|
+
"@contember/graphql-client": "1.3.0-alpha.8",
|
|
40
40
|
"@contember/schema": "^1.3.6"
|
|
41
41
|
},
|
|
42
42
|
"repository": {
|