@things-factory/id-rule-base 10.1.79 → 10.1.105

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.
@@ -80,6 +80,7 @@ let DocNumberMutation = class DocNumberMutation {
80
80
  exports.DocNumberMutation = DocNumberMutation;
81
81
  tslib_1.__decorate([
82
82
  (0, type_graphql_1.Directive)('@transaction'),
83
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
83
84
  (0, type_graphql_1.Mutation)(returns => doc_number_1.DocNumber, { description: 'To create new DocNumber' }),
84
85
  tslib_1.__param(0, (0, type_graphql_1.Arg)('docNumber')),
85
86
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -89,6 +90,7 @@ tslib_1.__decorate([
89
90
  ], DocNumberMutation.prototype, "createDocNumber", null);
90
91
  tslib_1.__decorate([
91
92
  (0, type_graphql_1.Directive)('@transaction'),
93
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
92
94
  (0, type_graphql_1.Mutation)(returns => doc_number_1.DocNumber, { description: 'To modify DocNumber information' }),
93
95
  tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
94
96
  tslib_1.__param(1, (0, type_graphql_1.Arg)('patch')),
@@ -99,6 +101,7 @@ tslib_1.__decorate([
99
101
  ], DocNumberMutation.prototype, "updateDocNumber", null);
100
102
  tslib_1.__decorate([
101
103
  (0, type_graphql_1.Directive)('@transaction'),
104
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
102
105
  (0, type_graphql_1.Mutation)(returns => [doc_number_1.DocNumber], { description: "To modify multiple DocNumbers' information" }),
103
106
  tslib_1.__param(0, (0, type_graphql_1.Arg)('patches', type => [doc_number_type_1.DocNumberPatch])),
104
107
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -108,6 +111,7 @@ tslib_1.__decorate([
108
111
  ], DocNumberMutation.prototype, "updateMultipleDocNumber", null);
109
112
  tslib_1.__decorate([
110
113
  (0, type_graphql_1.Directive)('@transaction'),
114
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
111
115
  (0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To delete DocNumber' }),
112
116
  tslib_1.__param(0, (0, type_graphql_1.Arg)('id')),
113
117
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -117,6 +121,7 @@ tslib_1.__decorate([
117
121
  ], DocNumberMutation.prototype, "deleteDocNumber", null);
118
122
  tslib_1.__decorate([
119
123
  (0, type_graphql_1.Directive)('@transaction'),
124
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
120
125
  (0, type_graphql_1.Mutation)(returns => Boolean, { description: 'To delete multiple docNumbers' }),
121
126
  tslib_1.__param(0, (0, type_graphql_1.Arg)('ids', type => [String])),
122
127
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -1 +1 @@
1
- {"version":3,"file":"doc-number-mutation.js","sourceRoot":"","sources":["../../../server/service/doc-number/doc-number-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["\nimport { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { In } from 'typeorm'\nimport { DocNumber } from './doc-number'\nimport { NewDocNumber, DocNumberPatch } from './doc-number-type'\nimport { Domain, getRepository } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\n\n@Resolver(DocNumber)\nexport class DocNumberMutation {\n @Directive('@transaction')\n @Mutation(returns => DocNumber, { description: 'To create new DocNumber' })\n async createDocNumber(@Arg('docNumber') docNumber: NewDocNumber, @Ctx() context: any): Promise<DocNumber> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(DocNumber).save({\n ...docNumber,\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => DocNumber, { description: 'To modify DocNumber information' })\n async updateDocNumber(\n @Arg('id') id: string,\n @Arg('patch') patch: DocNumberPatch,\n @Ctx() context: any\n ): Promise<DocNumber> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(DocNumber)\n const docNumber = await repository.findOne(\n {\n where: { domain: { id: domain.id }, id },\n relations: ['domain','updater','creator']\n }\n )\n\n return await repository.save({\n ...docNumber,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Mutation(returns => [DocNumber], { description: \"To modify multiple DocNumbers' information\" })\n async updateMultipleDocNumber(\n @Arg('patches', type => [DocNumberPatch]) patches: DocNumberPatch[],\n @Ctx() context: any\n ): Promise<DocNumber[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const docNumberRepo = tx.getRepository(DocNumber)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await docNumberRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updRecord = _updateRecords[i]\n const docNumber = await docNumberRepo.findOne({\n where: { domain: { id: domain.id }, id:updRecord.id },\n relations: ['domain','updater','creator']\n })\n \n const result = await docNumberRepo.save({\n ...docNumber,\n ...updRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete DocNumber' })\n async deleteDocNumber(@Arg('id') id: string, @Ctx() context: any): Promise<boolean> {\n const { domain, tx, user } = context.state\n await tx.getRepository(DocNumber).remove({ domain, id, updater:user })\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple docNumbers' })\n async deleteDocNumbers(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: any\n ): Promise<boolean> {\n const { domain, tx, user } = context.state\n\n let delEntitis = ids.map(id=>{\n return {domain,id,updater:user}\n })\n\n await tx.getRepository(DocNumber).remove(delEntitis)\n\n return true\n }\n}\n"]}
1
+ {"version":3,"file":"doc-number-mutation.js","sourceRoot":"","sources":["../../../server/service/doc-number/doc-number-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["\nimport { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { In } from 'typeorm'\nimport { DocNumber } from './doc-number'\nimport { NewDocNumber, DocNumberPatch } from './doc-number-type'\nimport { Domain, getRepository } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\n\n@Resolver(DocNumber)\nexport class DocNumberMutation {\n @Directive('@transaction')\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => DocNumber, { description: 'To create new DocNumber' })\n async createDocNumber(@Arg('docNumber') docNumber: NewDocNumber, @Ctx() context: any): Promise<DocNumber> {\n const { domain, user, tx } = context.state\n\n return await tx.getRepository(DocNumber).save({\n ...docNumber,\n domain,\n creator: user,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => DocNumber, { description: 'To modify DocNumber information' })\n async updateDocNumber(\n @Arg('id') id: string,\n @Arg('patch') patch: DocNumberPatch,\n @Ctx() context: any\n ): Promise<DocNumber> {\n const { domain, user, tx } = context.state\n\n const repository = tx.getRepository(DocNumber)\n const docNumber = await repository.findOne(\n {\n where: { domain: { id: domain.id }, id },\n relations: ['domain','updater','creator']\n }\n )\n\n return await repository.save({\n ...docNumber,\n ...patch,\n updater: user\n })\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => [DocNumber], { description: \"To modify multiple DocNumbers' information\" })\n async updateMultipleDocNumber(\n @Arg('patches', type => [DocNumberPatch]) patches: DocNumberPatch[],\n @Ctx() context: any\n ): Promise<DocNumber[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const docNumberRepo = tx.getRepository(DocNumber)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await docNumberRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updRecord = _updateRecords[i]\n const docNumber = await docNumberRepo.findOne({\n where: { domain: { id: domain.id }, id:updRecord.id },\n relations: ['domain','updater','creator']\n })\n \n const result = await docNumberRepo.save({\n ...docNumber,\n ...updRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Boolean, { description: 'To delete DocNumber' })\n async deleteDocNumber(@Arg('id') id: string, @Ctx() context: any): Promise<boolean> {\n const { domain, tx, user } = context.state\n await tx.getRepository(DocNumber).remove({ domain, id, updater:user })\n return true\n }\n\n @Directive('@transaction')\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Boolean, { description: 'To delete multiple docNumbers' })\n async deleteDocNumbers(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: any\n ): Promise<boolean> {\n const { domain, tx, user } = context.state\n\n let delEntitis = ids.map(id=>{\n return {domain,id,updater:user}\n })\n\n await tx.getRepository(DocNumber).remove(delEntitis)\n\n return true\n }\n}\n"]}
@@ -26,6 +26,7 @@ let IdRuleMutation = class IdRuleMutation {
26
26
  };
27
27
  exports.IdRuleMutation = IdRuleMutation;
28
28
  tslib_1.__decorate([
29
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
29
30
  (0, type_graphql_1.Mutation)(returns => id_rule_1.IdRule),
30
31
  tslib_1.__param(0, (0, type_graphql_1.Arg)('idRule')),
31
32
  tslib_1.__param(1, (0, type_graphql_1.Ctx)()),
@@ -34,6 +35,7 @@ tslib_1.__decorate([
34
35
  tslib_1.__metadata("design:returntype", Promise)
35
36
  ], IdRuleMutation.prototype, "createIdRule", null);
36
37
  tslib_1.__decorate([
38
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
37
39
  (0, type_graphql_1.Mutation)(returns => id_rule_1.IdRule),
38
40
  tslib_1.__param(0, (0, type_graphql_1.Arg)('type')),
39
41
  tslib_1.__param(1, (0, type_graphql_1.Arg)('patch')),
@@ -1 +1 @@
1
- {"version":3,"file":"id-rule-mutation.js","sourceRoot":"","sources":["../../../server/service/id-rule/id-rule-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAA2D;AAE3D,iDAAqD;AAErD,uCAAkC;AAClC,mDAAwD;AAGjD,IAAM,cAAc,GAApB,MAAM,cAAc;IAEnB,AAAN,KAAK,CAAC,YAAY,CAAgB,MAAiB,EAAS,OAAY;QACtE,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAM,CAAC,CAAC,IAAI,CAAC;YACtC,GAAG,MAAM;YACT,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;SAC7B,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,YAAY,CACH,IAAY,EACX,KAAkB,EACzB,OAAY;QAEnB,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,gBAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAW,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE;SACtE,CAAC,CAAA;QAEF,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC;YAC3B,GAAG,MAAM;YACT,GAAG,KAAK;SACT,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AAzBY,wCAAc;AAEnB;IADL,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,gBAAM,CAAC;IACR,mBAAA,IAAA,kBAAG,EAAC,QAAQ,CAAC,CAAA;IAAqB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAjB,yBAAS;;kDAKlD;AAGK;IADL,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,gBAAM,CAAC;IAEzB,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IACX,mBAAA,IAAA,kBAAG,EAAC,OAAO,CAAC,CAAA;IACZ,mBAAA,IAAA,kBAAG,GAAE,CAAA;;qDADe,2BAAW;;kDAYjC;yBAxBU,cAAc;IAD1B,IAAA,uBAAQ,EAAC,gBAAM,CAAC;GACJ,cAAc,CAyB1B","sourcesContent":["import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { IdRule } from './id-rule'\nimport { IdRulePatch, NewIdRule } from './id-rule-types'\n\n@Resolver(IdRule)\nexport class IdRuleMutation {\n @Mutation(returns => IdRule)\n async createIdRule(@Arg('idRule') idRule: NewIdRule, @Ctx() context: any) {\n return await getRepository(IdRule).save({\n ...idRule,\n domain: context.state.domain\n })\n }\n\n @Mutation(returns => IdRule)\n async updateIdRule(\n @Arg('type') type: string,\n @Arg('patch') patch: IdRulePatch,\n @Ctx() context: any\n ): Promise<IdRule> {\n const repository = getRepository(IdRule)\n const idRule = await repository.findOne({\n where: { type: type as any, domain: { id: context.state.domain.id } }\n })\n\n return await repository.save({\n ...idRule,\n ...patch\n })\n }\n}\n"]}
1
+ {"version":3,"file":"id-rule-mutation.js","sourceRoot":"","sources":["../../../server/service/id-rule/id-rule-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AAEtE,iDAAqD;AAErD,uCAAkC;AAClC,mDAAwD;AAGjD,IAAM,cAAc,GAApB,MAAM,cAAc;IAGnB,AAAN,KAAK,CAAC,YAAY,CAAgB,MAAiB,EAAS,OAAY;QACtE,OAAO,MAAM,IAAA,qBAAa,EAAC,gBAAM,CAAC,CAAC,IAAI,CAAC;YACtC,GAAG,MAAM;YACT,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM;SAC7B,CAAC,CAAA;IACJ,CAAC;IAIK,AAAN,KAAK,CAAC,YAAY,CACH,IAAY,EACX,KAAkB,EACzB,OAAY;QAEnB,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,gBAAM,CAAC,CAAA;QACxC,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;YACtC,KAAK,EAAE,EAAE,IAAI,EAAE,IAAW,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE;SACtE,CAAC,CAAA;QAEF,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC;YAC3B,GAAG,MAAM;YACT,GAAG,KAAK;SACT,CAAC,CAAA;IACJ,CAAC;CACF,CAAA;AA3BY,wCAAc;AAGnB;IAFL,IAAA,wBAAS,EAAC,kFAAkF,CAAC;IAC7F,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,gBAAM,CAAC;IACR,mBAAA,IAAA,kBAAG,EAAC,QAAQ,CAAC,CAAA;IAAqB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;6CAAjB,yBAAS;;kDAKlD;AAIK;IAFL,IAAA,wBAAS,EAAC,kFAAkF,CAAC;IAC7F,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,gBAAM,CAAC;IAEzB,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IACX,mBAAA,IAAA,kBAAG,EAAC,OAAO,CAAC,CAAA;IACZ,mBAAA,IAAA,kBAAG,GAAE,CAAA;;qDADe,2BAAW;;kDAYjC;yBA1BU,cAAc;IAD1B,IAAA,uBAAQ,EAAC,gBAAM,CAAC;GACJ,cAAc,CA2B1B","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { IdRule } from './id-rule'\nimport { IdRulePatch, NewIdRule } from './id-rule-types'\n\n@Resolver(IdRule)\nexport class IdRuleMutation {\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => IdRule)\n async createIdRule(@Arg('idRule') idRule: NewIdRule, @Ctx() context: any) {\n return await getRepository(IdRule).save({\n ...idRule,\n domain: context.state.domain\n })\n }\n\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => IdRule)\n async updateIdRule(\n @Arg('type') type: string,\n @Arg('patch') patch: IdRulePatch,\n @Ctx() context: any\n ): Promise<IdRule> {\n const repository = getRepository(IdRule)\n const idRule = await repository.findOne({\n where: { type: type as any, domain: { id: context.state.domain.id } }\n })\n\n return await repository.save({\n ...idRule,\n ...patch\n })\n }\n}\n"]}
@@ -43,6 +43,7 @@ let SequenceMutation = class SequenceMutation {
43
43
  };
44
44
  exports.SequenceMutation = SequenceMutation;
45
45
  tslib_1.__decorate([
46
+ (0, type_graphql_1.Directive)('@privilege(category: "id-rule", privilege: "mutation", domainOwnerGranted: true)'),
46
47
  (0, type_graphql_1.Mutation)(returns => sequence_1.Sequence),
47
48
  tslib_1.__param(0, (0, type_graphql_1.Arg)('type')),
48
49
  tslib_1.__param(1, (0, type_graphql_1.Arg)('counter')),
@@ -1 +1 @@
1
- {"version":3,"file":"sequence-mutation.js","sourceRoot":"","sources":["../../../server/service/sequence/sequence-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAA2D;AAE3D,iDAAqD;AAErD,+CAA+C;AAC/C,yCAAqC;AAG9B,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAErB,AAAN,KAAK,CAAC,cAAc,CACL,IAAY,EACT,OAAe,EACZ,UAAkB,EAC9B,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAChC,MAAM,OAAO,GAAG,IAAA,qBAAa,EAAC,mBAAQ,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;QAE7D,MAAM,UAAU,GAAQ;YACtB,IAAI;YACJ,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5C,UAAU;SACX,CAAA;QAED,MAAM,OAAO,GAAW,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAElD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;YACrC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,yBAAa,CAAC,qBAAqB,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE;SACzF,CAAC,CAAA;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,OAAO,CAAC,MAAM,CAClB,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,EACnB;gBACE,OAAO;gBACP,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;gBACxD,SAAS;gBACT,SAAS,EAAE,GAAG;aACf,CACF,CAAA;YAED,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;gBACxB,MAAM;gBACN,OAAO;gBACP,GAAG,EAAE,OAAO,IAAI,CAAC;gBACjB,SAAS;gBACT,IAAI,EAAE,yBAAa,CAAC,qBAAqB;aAC1C,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AA/CY,4CAAgB;AAErB;IADL,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,mBAAQ,CAAC;IAE3B,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IACX,mBAAA,IAAA,kBAAG,EAAC,SAAS,CAAC,CAAA;IACd,mBAAA,IAAA,kBAAG,EAAC,YAAY,CAAC,CAAA;IACjB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;sDAwCP;2BA9CU,gBAAgB;IAD5B,IAAA,uBAAQ,EAAC,mBAAQ,CAAC;GACN,gBAAgB,CA+C5B","sourcesContent":["import { Arg, Ctx, Mutation, Resolver } from 'type-graphql'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { SEQUENCE_TYPE } from '../../constants'\nimport { Sequence } from './sequence'\n\n@Resolver(Sequence)\nexport class SequenceMutation {\n @Mutation(returns => Sequence)\n async upsertSequence(\n @Arg('type') type: string,\n @Arg('counter') counter: number,\n @Arg('bizplaceId') bizplaceId: string,\n @Ctx() context: any\n ) {\n const { domain } = context.state\n const seqRepo = getRepository(Sequence)\n const now = new Date()\n const expiresAt = new Date(now.setMonth(now.getMonth() + 12))\n\n const patternObj: any = {\n type,\n date: new Date().toISOString().split('T')[0],\n bizplaceId\n }\n\n const pattern: string = JSON.stringify(patternObj)\n\n const foundSeq = await seqRepo.findOne({\n where: { pattern, type: SEQUENCE_TYPE.PRODUCT_LABEL_COUNTER, domain: { id: domain.id } }\n })\n\n if (foundSeq) {\n await seqRepo.update(\n { id: foundSeq.id },\n {\n pattern,\n seq: counter ? foundSeq.seq + counter : foundSeq.seq + 1,\n expiresAt,\n updatedAt: now\n }\n )\n\n return await seqRepo.findOneBy({ id: foundSeq.id })\n } else {\n return await seqRepo.save({\n domain,\n pattern,\n seq: counter || 1,\n expiresAt,\n type: SEQUENCE_TYPE.PRODUCT_LABEL_COUNTER\n })\n }\n }\n}\n"]}
1
+ {"version":3,"file":"sequence-mutation.js","sourceRoot":"","sources":["../../../server/service/sequence/sequence-mutation.ts"],"names":[],"mappings":";;;;AAAA,+CAAsE;AAEtE,iDAAqD;AAErD,+CAA+C;AAC/C,yCAAqC;AAG9B,IAAM,gBAAgB,GAAtB,MAAM,gBAAgB;IAGrB,AAAN,KAAK,CAAC,cAAc,CACL,IAAY,EACT,OAAe,EACZ,UAAkB,EAC9B,OAAY;QAEnB,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAChC,MAAM,OAAO,GAAG,IAAA,qBAAa,EAAC,mBAAQ,CAAC,CAAA;QACvC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;QACtB,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,CAAA;QAE7D,MAAM,UAAU,GAAQ;YACtB,IAAI;YACJ,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YAC5C,UAAU;SACX,CAAA;QAED,MAAM,OAAO,GAAW,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAA;QAElD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,OAAO,CAAC;YACrC,KAAK,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,yBAAa,CAAC,qBAAqB,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE;SACzF,CAAC,CAAA;QAEF,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,OAAO,CAAC,MAAM,CAClB,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,EACnB;gBACE,OAAO;gBACP,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,GAAG,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,GAAG,CAAC;gBACxD,SAAS;gBACT,SAAS,EAAE,GAAG;aACf,CACF,CAAA;YAED,OAAO,MAAM,OAAO,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAA;QACrD,CAAC;aAAM,CAAC;YACN,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC;gBACxB,MAAM;gBACN,OAAO;gBACP,GAAG,EAAE,OAAO,IAAI,CAAC;gBACjB,SAAS;gBACT,IAAI,EAAE,yBAAa,CAAC,qBAAqB;aAC1C,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AAhDY,4CAAgB;AAGrB;IAFL,IAAA,wBAAS,EAAC,kFAAkF,CAAC;IAC7F,IAAA,uBAAQ,EAAC,OAAO,CAAC,EAAE,CAAC,mBAAQ,CAAC;IAE3B,mBAAA,IAAA,kBAAG,EAAC,MAAM,CAAC,CAAA;IACX,mBAAA,IAAA,kBAAG,EAAC,SAAS,CAAC,CAAA;IACd,mBAAA,IAAA,kBAAG,EAAC,YAAY,CAAC,CAAA;IACjB,mBAAA,IAAA,kBAAG,GAAE,CAAA;;;;sDAwCP;2BA/CU,gBAAgB;IAD5B,IAAA,uBAAQ,EAAC,mBAAQ,CAAC;GACN,gBAAgB,CAgD5B","sourcesContent":["import { Arg, Ctx, Directive, Mutation, Resolver } from 'type-graphql'\n\nimport { getRepository } from '@things-factory/shell'\n\nimport { SEQUENCE_TYPE } from '../../constants'\nimport { Sequence } from './sequence'\n\n@Resolver(Sequence)\nexport class SequenceMutation {\n @Directive('@privilege(category: \"id-rule\", privilege: \"mutation\", domainOwnerGranted: true)')\n @Mutation(returns => Sequence)\n async upsertSequence(\n @Arg('type') type: string,\n @Arg('counter') counter: number,\n @Arg('bizplaceId') bizplaceId: string,\n @Ctx() context: any\n ) {\n const { domain } = context.state\n const seqRepo = getRepository(Sequence)\n const now = new Date()\n const expiresAt = new Date(now.setMonth(now.getMonth() + 12))\n\n const patternObj: any = {\n type,\n date: new Date().toISOString().split('T')[0],\n bizplaceId\n }\n\n const pattern: string = JSON.stringify(patternObj)\n\n const foundSeq = await seqRepo.findOne({\n where: { pattern, type: SEQUENCE_TYPE.PRODUCT_LABEL_COUNTER, domain: { id: domain.id } }\n })\n\n if (foundSeq) {\n await seqRepo.update(\n { id: foundSeq.id },\n {\n pattern,\n seq: counter ? foundSeq.seq + counter : foundSeq.seq + 1,\n expiresAt,\n updatedAt: now\n }\n )\n\n return await seqRepo.findOneBy({ id: foundSeq.id })\n } else {\n return await seqRepo.save({\n domain,\n pattern,\n seq: counter || 1,\n expiresAt,\n type: SEQUENCE_TYPE.PRODUCT_LABEL_COUNTER\n })\n }\n }\n}\n"]}