@things-factory/id-rule-base 9.0.0-beta.8 → 9.0.2
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/editors/grist-code-input-popup.js +67 -65
- package/dist-client/editors/grist-code-input-popup.js.map +1 -1
- package/dist-client/editors/grist-code-input.js +44 -45
- package/dist-client/editors/grist-code-input.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/controllers/id-generator.js +3 -1
- package/dist-server/controllers/id-generator.js.map +1 -1
- package/dist-server/service/doc-number/doc-number-mutation.js +24 -6
- package/dist-server/service/doc-number/doc-number-mutation.js.map +1 -1
- package/dist-server/service/id-rule/id-rule-mutation.js +8 -2
- package/dist-server/service/id-rule/id-rule-mutation.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +7 -7
|
@@ -31,7 +31,9 @@ async function generateId({ domain, type, seed }) {
|
|
|
31
31
|
catch (err) {
|
|
32
32
|
throw new Error(`Failed to evaluate rule: ${err.message}`);
|
|
33
33
|
}
|
|
34
|
-
const nextId = await evalFunc(domain,
|
|
34
|
+
const nextId = await evalFunc(domain, {
|
|
35
|
+
...seed,
|
|
36
|
+
}, getNext);
|
|
35
37
|
return nextId;
|
|
36
38
|
}
|
|
37
39
|
async function getNext({ domain, pattern, expirationDate }) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"id-generator.js","sourceRoot":"","sources":["../../server/controllers/id-generator.ts"],"names":[],"mappings":";;AAYA,gCAgCC;AAED,0BA4BC;AA1ED,qCAAkC;AAClC,iDAA6D;AAC7D,wDAAmD;AACnD,2DAAuD;AACvD,eAAY;AAQL,KAAK,UAAU,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE;IACrD,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,gBAAM,CAAC,CAAA;IACxC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QACpC,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACzB,IAAI;SACL;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,IAAI;QAAE,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAExC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC;QAClC,MAAM;QACN,IAAI;QACJ,OAAO;KACR,CAAC,CAAA;IAEF,IAAI,QAAQ,CAAA;IACZ,IAAI,CAAC;QACH,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;QAC5B,IAAI,CAAC,IAAI;OACV,CAAC,CAAA;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"id-generator.js","sourceRoot":"","sources":["../../server/controllers/id-generator.ts"],"names":[],"mappings":";;AAYA,gCAgCC;AAED,0BA4BC;AA1ED,qCAAkC;AAClC,iDAA6D;AAC7D,wDAAmD;AACnD,2DAAuD;AACvD,eAAY;AAQL,KAAK,UAAU,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE;IACrD,MAAM,UAAU,GAAG,IAAA,qBAAa,EAAC,gBAAM,CAAC,CAAA;IACxC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC;QACpC,KAAK,EAAE;YACL,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;YACzB,IAAI;SACL;KACF,CAAC,CAAA;IAEF,IAAI,CAAC,IAAI;QAAE,MAAM,KAAK,CAAC,gBAAgB,CAAC,CAAA;IAExC,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC;QAClC,MAAM;QACN,IAAI;QACJ,OAAO;KACR,CAAC,CAAA;IAEF,IAAI,QAAQ,CAAA;IACZ,IAAI,CAAC;QACH,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC;QAC5B,IAAI,CAAC,IAAI;OACV,CAAC,CAAA;IACN,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,4BAA4B,GAAG,CAAC,OAAO,EAAE,CAAC,CAAA;IAC5D,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,EAAE;QACpC,GAAG,IAAI;KACR,EACD,OAAO,CAAC,CAAA;IAER,OAAO,MAAM,CAAA;AACf,CAAC;AAEM,KAAK,UAAU,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,EAAe;IAC5E,MAAM,OAAO,GAAG,IAAA,qBAAa,EAAC,mBAAQ,CAAC,CAAA;IACvC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAA;IACtB,IAAI,IAAI,GAAG,MAAM,OAAO,CAAC,SAAS,CAAC;QACjC,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE;QACzB,OAAO;QACP,SAAS,EAAE,IAAA,kBAAQ,EAAC,GAAG,CAAC;KACzB,CAAC,CAAA;IAEF,IAAI,SAAS,GAAG,cAAc,CAAA;IAC9B,IAAI,CAAC,cAAc;QAAE,SAAS,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC,CAAA;IAE3E,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,CAAC,GAAG,EAAE,CAAA;QACV,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,MAAM,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC1B,CAAC;SAAM,CAAC;QACN,IAAI,CAAC,cAAc;YAAE,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAA;QAErD,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YACxB,MAAM;YACN,OAAO;YACP,GAAG,EAAE,CAAC;YACN,SAAS;SACV,CAAC,CAAA;IACJ,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAA;AACjB,CAAC","sourcesContent":["import { MoreThan } from 'typeorm'\nimport { Domain, getRepository } from '@things-factory/shell'\nimport { IdRule } from '../service/id-rule/id-rule'\nimport { Sequence } from '../service/sequence/sequence'\nimport 'ses'\n\ntype getNextArgs = {\n domain: Domain\n pattern: string\n expirationDate?: Date\n}\n\nexport async function generateId({ domain, type, seed }) {\n const idRuleRepo = getRepository(IdRule)\n const rule = await idRuleRepo.findOne({\n where: {\n domain: { id: domain.id },\n type\n }\n })\n\n if (!rule) throw Error('Rule not found')\n\n const compartment = new Compartment({\n domain,\n seed,\n console\n })\n\n let evalFunc\n try {\n evalFunc = compartment.evaluate(`(async (domain, seed, getNext) => {\n ${rule.rule}\n })`)\n } catch (err) {\n throw new Error(`Failed to evaluate rule: ${err.message}`)\n }\n\n const nextId = await evalFunc(domain, {\n ...seed,\n },\n getNext)\n\n return nextId\n}\n\nexport async function getNext({ domain, pattern, expirationDate }: getNextArgs) {\n const seqRepo = getRepository(Sequence)\n const now = new Date()\n let last = await seqRepo.findOneBy({\n domain: { id: domain.id },\n pattern,\n expiresAt: MoreThan(now)\n })\n\n var expiresAt = expirationDate\n if (!expirationDate) expiresAt = new Date(now.setMonth(now.getMonth() + 6))\n\n if (last) {\n last.seq++\n last.expiresAt = expiresAt\n await seqRepo.save(last)\n } else {\n if (!expirationDate) now.setMonth(now.getMonth() + 6)\n\n last = await seqRepo.save({\n domain,\n pattern,\n seq: 1,\n expiresAt\n })\n }\n\n return last.seq\n}\n"]}
|
|
@@ -8,7 +8,12 @@ const doc_number_type_1 = require("./doc-number-type");
|
|
|
8
8
|
let DocNumberMutation = class DocNumberMutation {
|
|
9
9
|
async createDocNumber(docNumber, context) {
|
|
10
10
|
const { domain, user, tx } = context.state;
|
|
11
|
-
return await tx.getRepository(doc_number_1.DocNumber).save(
|
|
11
|
+
return await tx.getRepository(doc_number_1.DocNumber).save({
|
|
12
|
+
...docNumber,
|
|
13
|
+
domain,
|
|
14
|
+
creator: user,
|
|
15
|
+
updater: user
|
|
16
|
+
});
|
|
12
17
|
}
|
|
13
18
|
async updateDocNumber(id, patch, context) {
|
|
14
19
|
const { domain, user, tx } = context.state;
|
|
@@ -17,7 +22,11 @@ let DocNumberMutation = class DocNumberMutation {
|
|
|
17
22
|
where: { domain: { id: domain.id }, id },
|
|
18
23
|
relations: ['domain', 'updater', 'creator']
|
|
19
24
|
});
|
|
20
|
-
return await repository.save(
|
|
25
|
+
return await repository.save({
|
|
26
|
+
...docNumber,
|
|
27
|
+
...patch,
|
|
28
|
+
updater: user
|
|
29
|
+
});
|
|
21
30
|
}
|
|
22
31
|
async updateMultipleDocNumber(patches, context) {
|
|
23
32
|
const { domain, user, tx } = context.state;
|
|
@@ -28,8 +37,13 @@ let DocNumberMutation = class DocNumberMutation {
|
|
|
28
37
|
if (_createRecords.length > 0) {
|
|
29
38
|
for (let i = 0; i < _createRecords.length; i++) {
|
|
30
39
|
const newRecord = _createRecords[i];
|
|
31
|
-
const result = await docNumberRepo.save(
|
|
32
|
-
|
|
40
|
+
const result = await docNumberRepo.save({
|
|
41
|
+
...newRecord,
|
|
42
|
+
domain,
|
|
43
|
+
creator: user,
|
|
44
|
+
updater: user
|
|
45
|
+
});
|
|
46
|
+
results.push({ ...result, cuFlag: '+' });
|
|
33
47
|
}
|
|
34
48
|
}
|
|
35
49
|
if (_updateRecords.length > 0) {
|
|
@@ -39,8 +53,12 @@ let DocNumberMutation = class DocNumberMutation {
|
|
|
39
53
|
where: { domain: { id: domain.id }, id: updRecord.id },
|
|
40
54
|
relations: ['domain', 'updater', 'creator']
|
|
41
55
|
});
|
|
42
|
-
const result = await docNumberRepo.save(
|
|
43
|
-
|
|
56
|
+
const result = await docNumberRepo.save({
|
|
57
|
+
...docNumber,
|
|
58
|
+
...updRecord,
|
|
59
|
+
updater: user
|
|
60
|
+
});
|
|
61
|
+
results.push({ ...result, cuFlag: 'M' });
|
|
44
62
|
}
|
|
45
63
|
}
|
|
46
64
|
return results;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doc-number-mutation.js","sourceRoot":"","sources":["../../../server/service/doc-number/doc-number-mutation.ts"],"names":[],"mappings":";;;;AACA,+CAAsE;AAEtE,6CAAwC;AACxC,uDAAgE;AAKzD,IAAM,iBAAiB,GAAvB,MAAM,iBAAiB;IAGtB,AAAN,KAAK,CAAC,eAAe,CAAmB,SAAuB,EAAS,OAAY;QAClF,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAE1C,OAAO,MAAM,EAAE,CAAC,aAAa,CAAC,sBAAS,CAAC,CAAC,IAAI,
|
|
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"]}
|
|
@@ -8,14 +8,20 @@ const id_rule_1 = require("./id-rule");
|
|
|
8
8
|
const id_rule_types_1 = require("./id-rule-types");
|
|
9
9
|
let IdRuleMutation = class IdRuleMutation {
|
|
10
10
|
async createIdRule(idRule, context) {
|
|
11
|
-
return await (0, shell_1.getRepository)(id_rule_1.IdRule).save(
|
|
11
|
+
return await (0, shell_1.getRepository)(id_rule_1.IdRule).save({
|
|
12
|
+
...idRule,
|
|
13
|
+
domain: context.state.domain
|
|
14
|
+
});
|
|
12
15
|
}
|
|
13
16
|
async updateIdRule(type, patch, context) {
|
|
14
17
|
const repository = (0, shell_1.getRepository)(id_rule_1.IdRule);
|
|
15
18
|
const idRule = await repository.findOne({
|
|
16
19
|
where: { type: type, domain: { id: context.state.domain.id } }
|
|
17
20
|
});
|
|
18
|
-
return await repository.save(
|
|
21
|
+
return await repository.save({
|
|
22
|
+
...idRule,
|
|
23
|
+
...patch
|
|
24
|
+
});
|
|
19
25
|
}
|
|
20
26
|
};
|
|
21
27
|
exports.IdRuleMutation = IdRuleMutation;
|
|
@@ -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,
|
|
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"]}
|