@contember/client 0.8.0-alpha.6 → 1.0.0-alpha.1

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/client.d.ts CHANGED
@@ -45,7 +45,9 @@ declare class CrudQueryBuilder_2 {
45
45
  update(name: string, query: WriteBuilder.BuilderFactory<UpdateMutationArguments, UpdateMutationFields, WriteOperation.Update>, alias?: string): Omit<CrudQueryBuilder_2, Queries>;
46
46
  create(name: string, query: WriteBuilder.BuilderFactory<CreateMutationArguments, CreateMutationFields, WriteOperation.Create>, alias?: string): Omit<CrudQueryBuilder_2, Queries>;
47
47
  delete(name: string, query: WriteBuilder.BuilderFactory<DeleteMutationArguments, DeleteMutationFields, WriteOperation.Delete>, alias?: string): Omit<CrudQueryBuilder_2, Queries>;
48
- inTransaction(alias?: string): CrudQueryBuilder_2;
48
+ inTransaction(alias?: string, options?: {
49
+ deferForeignKeyConstraints?: boolean;
50
+ }): CrudQueryBuilder_2;
49
51
  getGql(): string;
50
52
  }
51
53
 
@@ -53,30 +55,6 @@ declare type DeleteMutationArguments = 'by';
53
55
 
54
56
  declare type DeleteMutationFields = 'ok' | 'node' | 'errors' | 'errorMessage';
55
57
 
56
- export declare const diffQuery = "query($stage: String!, $filter: [TreeFilter!]!) {\n\tdiff(stage: $stage, filter: $filter) {\n\t\tok\n\t\terrors\n\t\tresult {\n\t\t\tbase {\n\t\t\t\tid\n\t\t\t\tname\n\t\t\t\tslug\n\t\t\t}\n\t\t\thead {\n\t\t\t\tid\n\t\t\t\tname\n\t\t\t\tslug\n\t\t\t}\n\t\t\tevents {\n\t\t\t\tid\n\t\t\t\ttype\n\t\t\t\ttransactionId\n\t\t\t\tdependencies\n\t\t\t\tdescription\n\t\t\t\tcreatedAt\n\t\t\t\tidentityDescription\n\t\t\t}\n\t\t}\n\t}\n}";
57
-
58
- export declare interface DiffQueryResponse {
59
- data: {
60
- diff: {
61
- ok: boolean;
62
- errors: Array<'STAGE_NOT_FOUND' | 'MISSING_BASE' | 'NOT_REBASED'>;
63
- result: null | {
64
- head: {
65
- id: string;
66
- name: string;
67
- slug: string;
68
- };
69
- base: {
70
- id: string;
71
- name: string;
72
- slug: string;
73
- };
74
- events: SystemEvent[];
75
- };
76
- };
77
- };
78
- }
79
-
80
58
  export declare interface FileUploader<Result = any, Error extends FileUploadError = FileUploadError> {
81
59
  upload: (files: Map<File, UploadedFileMetadata>, options: FileUploaderInitializeOptions<Result, Error>) => Promise<void>;
82
60
  destroy?: (files: Result[]) => Promise<void>;
@@ -472,17 +450,6 @@ export declare interface RelationFilter {
472
450
  relations: RelationFilter[];
473
451
  }
474
452
 
475
- export declare const releaseTreeMutation = "mutation ($stage: String!, $filter: [TreeFilter!]!) {\n\treleaseTree(stage: $stage, tree: $filter) {\n\t\tok\n\t\terrors\n\t}\n}";
476
-
477
- export declare interface ReleaseTreeMutationResponse {
478
- data: {
479
- releaseTree: {
480
- ok: boolean;
481
- errors: Array<'STAGE_NOT_FOUND' | 'MISSING_BASE' | 'FORBIDDEN' | 'NOT_REBASED'>;
482
- };
483
- };
484
- }
485
-
486
453
  export declare namespace Result {
487
454
  export type MutationFieldResult = CreateResult | UpdateResult | DeleteResult;
488
455
  export interface CreateResult {
@@ -76,18 +76,9 @@ class CrudQueryBuilder {
76
76
  const [objectName, objectBuilder] = typeof alias === "string" ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder];
77
77
  return new CrudQueryBuilder("mutation", this.rootObjectBuilder.object(objectName, objectBuilder));
78
78
  }
79
- inTransaction(alias) {
80
- const name = "transaction";
81
- const [objectName, objectBuilder, fragments] = typeof alias === "string" ? [
82
- alias,
83
- new ObjectBuilder(void 0, { ...this.rootObjectBuilder.objects }, void 0, void 0, void 0, name),
84
- this.rootObjectBuilder.fragmentDefinitions
85
- ] : [
86
- name,
87
- new ObjectBuilder(void 0, { ...this.rootObjectBuilder.objects }),
88
- this.rootObjectBuilder.fragmentDefinitions
89
- ];
90
- return new CrudQueryBuilder(this.type, new RootObjectBuilder({ [objectName]: objectBuilder }, fragments));
79
+ inTransaction(alias = "transaction", options = {}) {
80
+ const objectBuilder = new ObjectBuilder(void 0, { ...this.rootObjectBuilder.objects }, { options }, void 0, void 0, "transaction");
81
+ return new CrudQueryBuilder(this.type, new RootObjectBuilder({ [alias]: objectBuilder }, this.rootObjectBuilder.fragmentDefinitions));
91
82
  }
92
83
  getGql() {
93
84
  const builder = new QueryBuilder();
@@ -1 +1 @@
1
- {"version":3,"file":"CrudQueryBuilder.js","sources":["../../../src/crudQueryBuilder/CrudQueryBuilder.ts"],"sourcesContent":["import { ObjectBuilder, QueryBuilder, RootObjectBuilder } from '../graphQlBuilder'\nimport { isEmptyObject } from '../utils'\nimport { CrudQueryBuilderError } from './CrudQueryBuilderError'\nimport { ReadBuilder } from './ReadBuilder'\nimport type {\n\tCreateMutationArguments,\n\tCreateMutationFields,\n\tDeleteMutationArguments,\n\tDeleteMutationFields,\n\tGetQueryArguments,\n\tListQueryArguments,\n\tMutations,\n\tPaginateQueryArguments,\n\tQueries,\n\tUpdateMutationArguments,\n\tUpdateMutationFields,\n\tWriteOperation,\n} from './types'\nimport { WriteBuilder } from './WriteBuilder'\n\nexport class CrudQueryBuilder {\n\tconstructor(\n\t\tprivate type: undefined | 'query' | 'mutation' = undefined,\n\t\tprivate rootObjectBuilder: RootObjectBuilder = new RootObjectBuilder(),\n\t) {}\n\n\tpublic fragment(name: string, typeName: string, query: ReadBuilder.BuilderFactory<never>): CrudQueryBuilder {\n\t\tconst readBuilder = ReadBuilder.instantiateFromFactory(query)\n\t\tconst objectBuilder = readBuilder.objectBuilder.name(typeName)\n\n\t\treturn new CrudQueryBuilder(this.type, this.rootObjectBuilder.fragment(name, objectBuilder))\n\t}\n\n\tpublic list(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<ListQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `list${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic paginate(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<PaginateQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `paginate${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic get(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<GetQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `get${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic update(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<UpdateMutationArguments, UpdateMutationFields, WriteOperation.Update>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `update${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic create(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<CreateMutationArguments, CreateMutationFields, WriteOperation.Create>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `create${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic delete(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<DeleteMutationArguments, DeleteMutationFields, WriteOperation.Delete>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `delete${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic inTransaction(alias?: string): CrudQueryBuilder {\n\t\tconst name = 'transaction'\n\t\tconst [objectName, objectBuilder, fragments] =\n\t\t\ttypeof alias === 'string'\n\t\t\t\t? [\n\t\t\t\t\t\talias,\n\t\t\t\t\t\tnew ObjectBuilder(undefined, { ...this.rootObjectBuilder.objects }, undefined, undefined, undefined, name),\n\t\t\t\t\t\tthis.rootObjectBuilder.fragmentDefinitions,\n\t\t\t\t ]\n\t\t\t\t: [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tnew ObjectBuilder(undefined, { ...this.rootObjectBuilder.objects }),\n\t\t\t\t\t\tthis.rootObjectBuilder.fragmentDefinitions,\n\t\t\t\t ]\n\t\treturn new CrudQueryBuilder(this.type, new RootObjectBuilder({ [objectName]: objectBuilder }, fragments))\n\t}\n\n\tgetGql(): string {\n\t\tconst builder = new QueryBuilder()\n\t\tswitch (this.type) {\n\t\t\tcase 'mutation':\n\t\t\t\treturn builder.mutation(this.rootObjectBuilder)\n\t\t\tcase 'query':\n\t\t\t\treturn builder.query(this.rootObjectBuilder)\n\t\t\tdefault:\n\t\t\t\tthrow new CrudQueryBuilderError(`Invalid type ${this.type}`)\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"CrudQueryBuilder.js","sources":["../../../src/crudQueryBuilder/CrudQueryBuilder.ts"],"sourcesContent":["import { ObjectBuilder, QueryBuilder, RootObjectBuilder } from '../graphQlBuilder'\nimport { isEmptyObject } from '../utils'\nimport { CrudQueryBuilderError } from './CrudQueryBuilderError'\nimport { ReadBuilder } from './ReadBuilder'\nimport type {\n\tCreateMutationArguments,\n\tCreateMutationFields,\n\tDeleteMutationArguments,\n\tDeleteMutationFields,\n\tGetQueryArguments,\n\tListQueryArguments,\n\tMutations,\n\tPaginateQueryArguments,\n\tQueries,\n\tUpdateMutationArguments,\n\tUpdateMutationFields,\n\tWriteOperation,\n} from './types'\nimport { WriteBuilder } from './WriteBuilder'\n\nexport class CrudQueryBuilder {\n\tconstructor(\n\t\tprivate type: undefined | 'query' | 'mutation' = undefined,\n\t\tprivate rootObjectBuilder: RootObjectBuilder = new RootObjectBuilder(),\n\t) {}\n\n\tpublic fragment(name: string, typeName: string, query: ReadBuilder.BuilderFactory<never>): CrudQueryBuilder {\n\t\tconst readBuilder = ReadBuilder.instantiateFromFactory(query)\n\t\tconst objectBuilder = readBuilder.objectBuilder.name(typeName)\n\n\t\treturn new CrudQueryBuilder(this.type, this.rootObjectBuilder.fragment(name, objectBuilder))\n\t}\n\n\tpublic list(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<ListQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `list${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic paginate(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<PaginateQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `paginate${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic get(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<GetQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `get${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic update(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<UpdateMutationArguments, UpdateMutationFields, WriteOperation.Update>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `update${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic create(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<CreateMutationArguments, CreateMutationFields, WriteOperation.Create>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `create${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic delete(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<DeleteMutationArguments, DeleteMutationFields, WriteOperation.Delete>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `delete${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic inTransaction(alias: string = 'transaction', options: { deferForeignKeyConstraints?: boolean } = {}): CrudQueryBuilder {\n\t\tconst objectBuilder = new ObjectBuilder(undefined, { ...this.rootObjectBuilder.objects }, { options }, undefined, undefined, 'transaction')\n\t\treturn new CrudQueryBuilder(this.type, new RootObjectBuilder({ [alias]: objectBuilder }, this.rootObjectBuilder.fragmentDefinitions))\n\t}\n\n\tgetGql(): string {\n\t\tconst builder = new QueryBuilder()\n\t\tswitch (this.type) {\n\t\t\tcase 'mutation':\n\t\t\t\treturn builder.mutation(this.rootObjectBuilder)\n\t\t\tcase 'query':\n\t\t\t\treturn builder.query(this.rootObjectBuilder)\n\t\t\tdefault:\n\t\t\t\tthrow new CrudQueryBuilderError(`Invalid type ${this.type}`)\n\t\t}\n\t}\n}\n"],"names":[],"mappings":";;;;;;;;uBAoB8B;AAAA,EAC7B,YACS,OAAyC,QACzC,oBAAuC,IAAI,qBAClD;AAFO;AACA;AAAA;AAAA,EAGF,SAAS,MAAc,UAAkB,OAA4D;AAC3G,UAAM,cAAc,YAAY,uBAAuB;AACvD,UAAM,gBAAgB,YAAY,cAAc,KAAK;AAErD,WAAO,IAAI,iBAAiB,KAAK,MAAM,KAAK,kBAAkB,SAAS,MAAM;AAAA;AAAA,EAGvE,KACN,MACA,OACA,OACoC;AACpC,QAAI,KAAK,SAAS,YAAY;AAC7B,YAAM,IAAI,sBAAsB;AAAA;AAEjC,WAAO,OAAO;AACd,YAAQ,YAAY,uBAAuB;AAE3C,UAAM,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;AAEpF,WAAO,IAAI,iBAAiB,SAAS,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAGzE,SACN,MACA,OACA,OACoC;AACpC,QAAI,KAAK,SAAS,YAAY;AAC7B,YAAM,IAAI,sBAAsB;AAAA;AAEjC,WAAO,WAAW;AAClB,YAAQ,YAAY,uBAAuB;AAE3C,UAAM,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;AAEpF,WAAO,IAAI,iBAAiB,SAAS,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAGzE,IACN,MACA,OACA,OACoC;AACpC,QAAI,KAAK,SAAS,YAAY;AAC7B,YAAM,IAAI,sBAAsB;AAAA;AAEjC,WAAO,MAAM;AACb,YAAQ,YAAY,uBAAuB;AAE3C,UAAM,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;AAEpF,WAAO,IAAI,iBAAiB,SAAS,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAGzE,OACN,MACA,OACA,OACkC;AAClC,QAAI,KAAK,SAAS,SAAS;AAC1B,YAAM,IAAI,sBAAsB;AAAA;AAEjC,WAAO,SAAS;AAChB,YAAQ,aAAa,uBAAuB;AAE5C,QAAI,cAAc,MAAM,cAAc,KAAK,OAAO;AACjD,aAAO;AAAA;AAGR,UAAM,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;AAEpF,WAAO,IAAI,iBAAiB,YAAY,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAG5E,OACN,MACA,OACA,OACkC;AAClC,QAAI,KAAK,SAAS,SAAS;AAC1B,YAAM,IAAI,sBAAsB;AAAA;AAEjC,WAAO,SAAS;AAChB,YAAQ,aAAa,uBAAuB;AAE5C,QAAI,cAAc,MAAM,cAAc,KAAK,OAAO;AACjD,aAAO;AAAA;AAGR,UAAM,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;AAEpF,WAAO,IAAI,iBAAiB,YAAY,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAG5E,OACN,MACA,OACA,OACkC;AAClC,QAAI,KAAK,SAAS,SAAS;AAC1B,YAAM,IAAI,sBAAsB;AAAA;AAEjC,WAAO,SAAS;AAChB,YAAQ,aAAa,uBAAuB;AAE5C,UAAM,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;AAEpF,WAAO,IAAI,iBAAiB,YAAY,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAG5E,cAAc,QAAgB,eAAe,UAAoD,IAAsB;AAC7H,UAAM,gBAAgB,IAAI,cAAc,QAAW,KAAK,KAAK,kBAAkB,WAAW,EAAE,WAAW,QAAW,QAAW;AAC7H,WAAO,IAAI,iBAAiB,KAAK,MAAM,IAAI,kBAAkB,GAAG,QAAQ,iBAAiB,KAAK,kBAAkB;AAAA;AAAA,EAGjH,SAAiB;AAChB,UAAM,UAAU,IAAI;AACpB,YAAQ,KAAK;AAAA,WACP;AACJ,eAAO,QAAQ,SAAS,KAAK;AAAA,WACzB;AACJ,eAAO,QAAQ,MAAM,KAAK;AAAA;AAE1B,cAAM,IAAI,sBAAsB,gBAAgB,KAAK;AAAA;AAAA;AAAA;;;;"}
@@ -9,9 +9,7 @@ export { S3FileUploader } from './content/upload/S3FileUploader.js';
9
9
  export { whereToFilter } from './content/params/whereToFilter.js';
10
10
  export { formatContentApiRelativeUrl } from './content/formatContentApiRelativeUrl.js';
11
11
  export { GraphQlClient } from './graphQlClient/GraphQlClient.js';
12
- export { diffQuery } from './system/diffQuery.js';
13
12
  export { formatSystemApiRelativeUrl } from './system/formatSystemApiRelativeUrl.js';
14
- export { releaseTreeMutation } from './system/releaseTreeMutation.js';
15
13
  export { loginMutation } from './tenant/loginMutation.js';
16
14
  export { tenantApiRelativeUrl } from './tenant/tenantApiRelativeUrl.js';
17
15
  export { getTenantErrorMessage, tenantErrorMessages } from './tenant/tenantErrorMessages.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;"}
@@ -75,18 +75,9 @@ class CrudQueryBuilder {
75
75
  const [objectName, objectBuilder] = typeof alias === "string" ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder];
76
76
  return new CrudQueryBuilder("mutation", this.rootObjectBuilder.object(objectName, objectBuilder));
77
77
  }
78
- inTransaction(alias) {
79
- const name = "transaction";
80
- const [objectName, objectBuilder, fragments] = typeof alias === "string" ? [
81
- alias,
82
- new ObjectBuilder(void 0, { ...this.rootObjectBuilder.objects }, void 0, void 0, void 0, name),
83
- this.rootObjectBuilder.fragmentDefinitions
84
- ] : [
85
- name,
86
- new ObjectBuilder(void 0, { ...this.rootObjectBuilder.objects }),
87
- this.rootObjectBuilder.fragmentDefinitions
88
- ];
89
- return new CrudQueryBuilder(this.type, new RootObjectBuilder({ [objectName]: objectBuilder }, fragments));
78
+ inTransaction(alias = "transaction", options = {}) {
79
+ const objectBuilder = new ObjectBuilder(void 0, { ...this.rootObjectBuilder.objects }, { options }, void 0, void 0, "transaction");
80
+ return new CrudQueryBuilder(this.type, new RootObjectBuilder({ [alias]: objectBuilder }, this.rootObjectBuilder.fragmentDefinitions));
90
81
  }
91
82
  getGql() {
92
83
  const builder = new QueryBuilder();
@@ -1 +1 @@
1
- {"version":3,"file":"CrudQueryBuilder.js","sources":["../../../src/crudQueryBuilder/CrudQueryBuilder.ts"],"sourcesContent":["import { ObjectBuilder, QueryBuilder, RootObjectBuilder } from '../graphQlBuilder'\nimport { isEmptyObject } from '../utils'\nimport { CrudQueryBuilderError } from './CrudQueryBuilderError'\nimport { ReadBuilder } from './ReadBuilder'\nimport type {\n\tCreateMutationArguments,\n\tCreateMutationFields,\n\tDeleteMutationArguments,\n\tDeleteMutationFields,\n\tGetQueryArguments,\n\tListQueryArguments,\n\tMutations,\n\tPaginateQueryArguments,\n\tQueries,\n\tUpdateMutationArguments,\n\tUpdateMutationFields,\n\tWriteOperation,\n} from './types'\nimport { WriteBuilder } from './WriteBuilder'\n\nexport class CrudQueryBuilder {\n\tconstructor(\n\t\tprivate type: undefined | 'query' | 'mutation' = undefined,\n\t\tprivate rootObjectBuilder: RootObjectBuilder = new RootObjectBuilder(),\n\t) {}\n\n\tpublic fragment(name: string, typeName: string, query: ReadBuilder.BuilderFactory<never>): CrudQueryBuilder {\n\t\tconst readBuilder = ReadBuilder.instantiateFromFactory(query)\n\t\tconst objectBuilder = readBuilder.objectBuilder.name(typeName)\n\n\t\treturn new CrudQueryBuilder(this.type, this.rootObjectBuilder.fragment(name, objectBuilder))\n\t}\n\n\tpublic list(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<ListQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `list${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic paginate(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<PaginateQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `paginate${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic get(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<GetQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `get${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic update(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<UpdateMutationArguments, UpdateMutationFields, WriteOperation.Update>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `update${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic create(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<CreateMutationArguments, CreateMutationFields, WriteOperation.Create>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `create${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic delete(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<DeleteMutationArguments, DeleteMutationFields, WriteOperation.Delete>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `delete${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic inTransaction(alias?: string): CrudQueryBuilder {\n\t\tconst name = 'transaction'\n\t\tconst [objectName, objectBuilder, fragments] =\n\t\t\ttypeof alias === 'string'\n\t\t\t\t? [\n\t\t\t\t\t\talias,\n\t\t\t\t\t\tnew ObjectBuilder(undefined, { ...this.rootObjectBuilder.objects }, undefined, undefined, undefined, name),\n\t\t\t\t\t\tthis.rootObjectBuilder.fragmentDefinitions,\n\t\t\t\t ]\n\t\t\t\t: [\n\t\t\t\t\t\tname,\n\t\t\t\t\t\tnew ObjectBuilder(undefined, { ...this.rootObjectBuilder.objects }),\n\t\t\t\t\t\tthis.rootObjectBuilder.fragmentDefinitions,\n\t\t\t\t ]\n\t\treturn new CrudQueryBuilder(this.type, new RootObjectBuilder({ [objectName]: objectBuilder }, fragments))\n\t}\n\n\tgetGql(): string {\n\t\tconst builder = new QueryBuilder()\n\t\tswitch (this.type) {\n\t\t\tcase 'mutation':\n\t\t\t\treturn builder.mutation(this.rootObjectBuilder)\n\t\t\tcase 'query':\n\t\t\t\treturn builder.query(this.rootObjectBuilder)\n\t\t\tdefault:\n\t\t\t\tthrow new CrudQueryBuilderError(`Invalid type ${this.type}`)\n\t\t}\n\t}\n}\n"],"names":[],"mappings":";;;;;;;uBAoB8B;AAAA,EAC7B,YACS,OAAyC,QACzC,oBAAuC,IAAI,qBAClD;;;;EAEK,SAAS,MAAc,UAAkB,OAA4D;UACrG,cAAc,YAAY,uBAAuB;UACjD,gBAAgB,YAAY,cAAc,KAAK;WAE9C,IAAI,iBAAiB,KAAK,MAAM,KAAK,kBAAkB,SAAS,MAAM;AAAA;AAAA,EAGvE,KACN,MACA,OACA,OACoC;QAChC,KAAK,SAAS,YAAY;YACvB,IAAI,sBAAsB;AAAA;WAE1B,OAAO;YACN,YAAY,uBAAuB;UAErC,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;WAE7E,IAAI,iBAAiB,SAAS,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAGzE,SACN,MACA,OACA,OACoC;QAChC,KAAK,SAAS,YAAY;YACvB,IAAI,sBAAsB;AAAA;WAE1B,WAAW;YACV,YAAY,uBAAuB;UAErC,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;WAE7E,IAAI,iBAAiB,SAAS,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAGzE,IACN,MACA,OACA,OACoC;QAChC,KAAK,SAAS,YAAY;YACvB,IAAI,sBAAsB;AAAA;WAE1B,MAAM;YACL,YAAY,uBAAuB;UAErC,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;WAE7E,IAAI,iBAAiB,SAAS,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAGzE,OACN,MACA,OACA,OACkC;QAC9B,KAAK,SAAS,SAAS;YACpB,IAAI,sBAAsB;AAAA;WAE1B,SAAS;YACR,aAAa,uBAAuB;QAExC,cAAc,MAAM,cAAc,KAAK,OAAO;aAC1C;AAAA;UAGF,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;WAE7E,IAAI,iBAAiB,YAAY,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAG5E,OACN,MACA,OACA,OACkC;QAC9B,KAAK,SAAS,SAAS;YACpB,IAAI,sBAAsB;AAAA;WAE1B,SAAS;YACR,aAAa,uBAAuB;QAExC,cAAc,MAAM,cAAc,KAAK,OAAO;aAC1C;AAAA;UAGF,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;WAE7E,IAAI,iBAAiB,YAAY,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAG5E,OACN,MACA,OACA,OACkC;QAC9B,KAAK,SAAS,SAAS;YACpB,IAAI,sBAAsB;AAAA;WAE1B,SAAS;YACR,aAAa,uBAAuB;UAEtC,CAAC,YAAY,iBAClB,OAAO,UAAU,WAAW,CAAC,OAAO,MAAM,cAAc,KAAK,SAAS,CAAC,MAAM,MAAM;WAE7E,IAAI,iBAAiB,YAAY,KAAK,kBAAkB,OAAO,YAAY;AAAA;AAAA,EAG5E,cAAc,OAAkC;UAChD,OAAO;UACP,CAAC,YAAY,eAAe,aACjC,OAAO,UAAU,WACd;AAAA,MACA;AAAA,MACA,IAAI,cAAc,QAAW,KAAK,KAAK,kBAAkB,WAAW,QAAW,QAAW,QAAW;AAAA,MACrG,KAAK,kBAAkB;AAAA,QAEvB;AAAA,MACA;AAAA,MACA,IAAI,cAAc,QAAW,KAAK,KAAK,kBAAkB;AAAA,MACzD,KAAK,kBAAkB;AAAA;WAEpB,IAAI,iBAAiB,KAAK,MAAM,IAAI,kBAAkB,GAAG,aAAa,iBAAiB;AAAA;AAAA,EAG/F,SAAiB;UACV,UAAU,IAAI;YACZ,KAAK;AAAA,WACP;eACG,QAAQ,SAAS,KAAK;AAAA,WACzB;eACG,QAAQ,MAAM,KAAK;AAAA;cAEpB,IAAI,sBAAsB,gBAAgB,KAAK;AAAA;AAAA;AAAA;;"}
1
+ {"version":3,"file":"CrudQueryBuilder.js","sources":["../../../src/crudQueryBuilder/CrudQueryBuilder.ts"],"sourcesContent":["import { ObjectBuilder, QueryBuilder, RootObjectBuilder } from '../graphQlBuilder'\nimport { isEmptyObject } from '../utils'\nimport { CrudQueryBuilderError } from './CrudQueryBuilderError'\nimport { ReadBuilder } from './ReadBuilder'\nimport type {\n\tCreateMutationArguments,\n\tCreateMutationFields,\n\tDeleteMutationArguments,\n\tDeleteMutationFields,\n\tGetQueryArguments,\n\tListQueryArguments,\n\tMutations,\n\tPaginateQueryArguments,\n\tQueries,\n\tUpdateMutationArguments,\n\tUpdateMutationFields,\n\tWriteOperation,\n} from './types'\nimport { WriteBuilder } from './WriteBuilder'\n\nexport class CrudQueryBuilder {\n\tconstructor(\n\t\tprivate type: undefined | 'query' | 'mutation' = undefined,\n\t\tprivate rootObjectBuilder: RootObjectBuilder = new RootObjectBuilder(),\n\t) {}\n\n\tpublic fragment(name: string, typeName: string, query: ReadBuilder.BuilderFactory<never>): CrudQueryBuilder {\n\t\tconst readBuilder = ReadBuilder.instantiateFromFactory(query)\n\t\tconst objectBuilder = readBuilder.objectBuilder.name(typeName)\n\n\t\treturn new CrudQueryBuilder(this.type, this.rootObjectBuilder.fragment(name, objectBuilder))\n\t}\n\n\tpublic list(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<ListQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `list${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic paginate(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<PaginateQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `paginate${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic get(\n\t\tname: string,\n\t\tquery: ReadBuilder.BuilderFactory<GetQueryArguments>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Mutations> {\n\t\tif (this.type === 'mutation') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `get${name}`\n\t\tquery = ReadBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('query', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic update(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<UpdateMutationArguments, UpdateMutationFields, WriteOperation.Update>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `update${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic create(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<CreateMutationArguments, CreateMutationFields, WriteOperation.Create>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `create${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tif (isEmptyObject(query.objectBuilder.args.data)) {\n\t\t\treturn this\n\t\t}\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic delete(\n\t\tname: string,\n\t\tquery: WriteBuilder.BuilderFactory<DeleteMutationArguments, DeleteMutationFields, WriteOperation.Delete>,\n\t\talias?: string,\n\t): Omit<CrudQueryBuilder, Queries> {\n\t\tif (this.type === 'query') {\n\t\t\tthrow new CrudQueryBuilderError('Cannot combine queries and mutations')\n\t\t}\n\t\tname = `delete${name}`\n\t\tquery = WriteBuilder.instantiateFromFactory(query)\n\n\t\tconst [objectName, objectBuilder] =\n\t\t\ttypeof alias === 'string' ? [alias, query.objectBuilder.name(name)] : [name, query.objectBuilder]\n\n\t\treturn new CrudQueryBuilder('mutation', this.rootObjectBuilder.object(objectName, objectBuilder))\n\t}\n\n\tpublic inTransaction(alias: string = 'transaction', options: { deferForeignKeyConstraints?: boolean } = {}): CrudQueryBuilder {\n\t\tconst objectBuilder = new ObjectBuilder(undefined, { ...this.rootObjectBuilder.objects }, { options }, undefined, undefined, 'transaction')\n\t\treturn new CrudQueryBuilder(this.type, new RootObjectBuilder({ [alias]: objectBuilder }, this.rootObjectBuilder.fragmentDefinitions))\n\t}\n\n\tgetGql(): string {\n\t\tconst builder = new QueryBuilder()\n\t\tswitch (this.type) {\n\t\t\tcase 'mutation':\n\t\t\t\treturn builder.mutation(this.rootObjectBuilder)\n\t\t\tcase 'query':\n\t\t\t\treturn builder.query(this.rootObjectBuilder)\n\t\t\tdefault:\n\t\t\t\tthrow new CrudQueryBuilderError(`Invalid type ${this.type}`)\n\t\t}\n\t}\n}\n"],"names":[],"mappings":"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"}
@@ -9,9 +9,7 @@ export { S3FileUploader } from "./content/upload/S3FileUploader.js";
9
9
  export { whereToFilter } from "./content/params/whereToFilter.js";
10
10
  export { formatContentApiRelativeUrl } from "./content/formatContentApiRelativeUrl.js";
11
11
  export { GraphQlClient } from "./graphQlClient/GraphQlClient.js";
12
- export { diffQuery } from "./system/diffQuery.js";
13
12
  export { formatSystemApiRelativeUrl } from "./system/formatSystemApiRelativeUrl.js";
14
- export { releaseTreeMutation } from "./system/releaseTreeMutation.js";
15
13
  export { loginMutation } from "./tenant/loginMutation.js";
16
14
  export { tenantApiRelativeUrl } from "./tenant/tenantApiRelativeUrl.js";
17
15
  export { getTenantErrorMessage, tenantErrorMessages } from "./tenant/tenantErrorMessages.js";
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@contember/client",
3
3
  "license": "Apache-2.0",
4
- "version": "0.8.0-alpha.6",
4
+ "version": "1.0.0-alpha.1",
5
5
  "main": "./dist/production/index.js",
6
6
  "exports": {
7
7
  ".": {
@@ -1,30 +0,0 @@
1
- const diffQuery = `query($stage: String!, $filter: [TreeFilter!]!) {
2
- diff(stage: $stage, filter: $filter) {
3
- ok
4
- errors
5
- result {
6
- base {
7
- id
8
- name
9
- slug
10
- }
11
- head {
12
- id
13
- name
14
- slug
15
- }
16
- events {
17
- id
18
- type
19
- transactionId
20
- dependencies
21
- description
22
- createdAt
23
- identityDescription
24
- }
25
- }
26
- }
27
- }`;
28
-
29
- export { diffQuery };
30
- //# sourceMappingURL=diffQuery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"diffQuery.js","sources":["../../../src/system/diffQuery.ts"],"sourcesContent":["import type { SystemEvent } from './events'\n\nexport interface DiffQueryResponse {\n\tdata: {\n\t\tdiff: {\n\t\t\tok: boolean\n\t\t\terrors: Array<'STAGE_NOT_FOUND' | 'MISSING_BASE' | 'NOT_REBASED'>\n\t\t\tresult: null | {\n\t\t\t\thead: {\n\t\t\t\t\tid: string\n\t\t\t\t\tname: string\n\t\t\t\t\tslug: string\n\t\t\t\t}\n\t\t\t\tbase: {\n\t\t\t\t\tid: string\n\t\t\t\t\tname: string\n\t\t\t\t\tslug: string\n\t\t\t\t}\n\t\t\t\tevents: SystemEvent[]\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport const diffQuery = `query($stage: String!, $filter: [TreeFilter!]!) {\n\tdiff(stage: $stage, filter: $filter) {\n\t\tok\n\t\terrors\n\t\tresult {\n\t\t\tbase {\n\t\t\t\tid\n\t\t\t\tname\n\t\t\t\tslug\n\t\t\t}\n\t\t\thead {\n\t\t\t\tid\n\t\t\t\tname\n\t\t\t\tslug\n\t\t\t}\n\t\t\tevents {\n\t\t\t\tid\n\t\t\t\ttype\n\t\t\t\ttransactionId\n\t\t\t\tdependencies\n\t\t\t\tdescription\n\t\t\t\tcreatedAt\n\t\t\t\tidentityDescription\n\t\t\t}\n\t\t}\n\t}\n}`\n"],"names":[],"mappings":"MAwBa,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;;"}
@@ -1,9 +0,0 @@
1
- const releaseTreeMutation = `mutation ($stage: String!, $filter: [TreeFilter!]!) {
2
- releaseTree(stage: $stage, tree: $filter) {
3
- ok
4
- errors
5
- }
6
- }`;
7
-
8
- export { releaseTreeMutation };
9
- //# sourceMappingURL=releaseTreeMutation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"releaseTreeMutation.js","sources":["../../../src/system/releaseTreeMutation.ts"],"sourcesContent":["export interface ReleaseTreeMutationResponse {\n\tdata: {\n\t\treleaseTree: {\n\t\t\tok: boolean\n\t\t\terrors: Array<'STAGE_NOT_FOUND' | 'MISSING_BASE' | 'FORBIDDEN' | 'NOT_REBASED'>\n\t\t}\n\t}\n}\n\nexport const releaseTreeMutation = `mutation ($stage: String!, $filter: [TreeFilter!]!) {\n\treleaseTree(stage: $stage, tree: $filter) {\n\t\tok\n\t\terrors\n\t}\n}`\n"],"names":[],"mappings":"MASa,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;;;;"}
@@ -1,29 +0,0 @@
1
- const diffQuery = `query($stage: String!, $filter: [TreeFilter!]!) {
2
- diff(stage: $stage, filter: $filter) {
3
- ok
4
- errors
5
- result {
6
- base {
7
- id
8
- name
9
- slug
10
- }
11
- head {
12
- id
13
- name
14
- slug
15
- }
16
- events {
17
- id
18
- type
19
- transactionId
20
- dependencies
21
- description
22
- createdAt
23
- identityDescription
24
- }
25
- }
26
- }
27
- }`;
28
- export { diffQuery };
29
- //# sourceMappingURL=diffQuery.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"diffQuery.js","sources":["../../../src/system/diffQuery.ts"],"sourcesContent":["import type { SystemEvent } from './events'\n\nexport interface DiffQueryResponse {\n\tdata: {\n\t\tdiff: {\n\t\t\tok: boolean\n\t\t\terrors: Array<'STAGE_NOT_FOUND' | 'MISSING_BASE' | 'NOT_REBASED'>\n\t\t\tresult: null | {\n\t\t\t\thead: {\n\t\t\t\t\tid: string\n\t\t\t\t\tname: string\n\t\t\t\t\tslug: string\n\t\t\t\t}\n\t\t\t\tbase: {\n\t\t\t\t\tid: string\n\t\t\t\t\tname: string\n\t\t\t\t\tslug: string\n\t\t\t\t}\n\t\t\t\tevents: SystemEvent[]\n\t\t\t}\n\t\t}\n\t}\n}\n\nexport const diffQuery = `query($stage: String!, $filter: [TreeFilter!]!) {\n\tdiff(stage: $stage, filter: $filter) {\n\t\tok\n\t\terrors\n\t\tresult {\n\t\t\tbase {\n\t\t\t\tid\n\t\t\t\tname\n\t\t\t\tslug\n\t\t\t}\n\t\t\thead {\n\t\t\t\tid\n\t\t\t\tname\n\t\t\t\tslug\n\t\t\t}\n\t\t\tevents {\n\t\t\t\tid\n\t\t\t\ttype\n\t\t\t\ttransactionId\n\t\t\t\tdependencies\n\t\t\t\tdescription\n\t\t\t\tcreatedAt\n\t\t\t\tidentityDescription\n\t\t\t}\n\t\t}\n\t}\n}`\n"],"names":[],"mappings":"MAwBa,YAAY;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;"}
@@ -1,8 +0,0 @@
1
- const releaseTreeMutation = `mutation ($stage: String!, $filter: [TreeFilter!]!) {
2
- releaseTree(stage: $stage, tree: $filter) {
3
- ok
4
- errors
5
- }
6
- }`;
7
- export { releaseTreeMutation };
8
- //# sourceMappingURL=releaseTreeMutation.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"releaseTreeMutation.js","sources":["../../../src/system/releaseTreeMutation.ts"],"sourcesContent":["export interface ReleaseTreeMutationResponse {\n\tdata: {\n\t\treleaseTree: {\n\t\t\tok: boolean\n\t\t\terrors: Array<'STAGE_NOT_FOUND' | 'MISSING_BASE' | 'FORBIDDEN' | 'NOT_REBASED'>\n\t\t}\n\t}\n}\n\nexport const releaseTreeMutation = `mutation ($stage: String!, $filter: [TreeFilter!]!) {\n\treleaseTree(stage: $stage, tree: $filter) {\n\t\tok\n\t\terrors\n\t}\n}`\n"],"names":[],"mappings":"MASa,sBAAsB;AAAA;AAAA;AAAA;AAAA;AAAA;;"}