@yongdall/numbering 0.6.3 → 0.6.4

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.
@@ -1,6 +1,33 @@
1
1
  import { createField, createModel, now, uuid } from "@yongdall/model";
2
2
 
3
3
  //#region plugins/numbering/models/NumberingRule.mjs
4
+ const NumberingCategory = createModel("numberingCategory", {
5
+ value: createField("string", {
6
+ nullable: false,
7
+ primary: 1,
8
+ immutable: true,
9
+ layout: { hidden: true }
10
+ }),
11
+ label: createField("string", {
12
+ size: 255,
13
+ nullable: false,
14
+ default: "",
15
+ label: "名称",
16
+ layout: { colSpan: 6 }
17
+ })
18
+ }, {
19
+ label: "编号生成规则分组",
20
+ labelField: "label",
21
+ permissions: [{
22
+ permission: "system:numbering",
23
+ fields: ["*"],
24
+ authorizations: [
25
+ "options",
26
+ "query",
27
+ "read"
28
+ ]
29
+ }]
30
+ });
4
31
  const NumberingSequence = createModel("numbering.sequence", {
5
32
  patternId: createField("uuid", {
6
33
  nullable: false,
@@ -26,7 +53,7 @@ const NumberingSequence = createModel("numbering.sequence", {
26
53
  label: "编号生成序列",
27
54
  labelField: "label",
28
55
  permissions: [{
29
- permission: "system:pattern",
56
+ permission: "system:numbering",
30
57
  fields: ["*"],
31
58
  authorizations: [
32
59
  "options",
@@ -50,6 +77,13 @@ const NumberingRule = createModel("numbering.rule", {
50
77
  label: "名称",
51
78
  layout: { colSpan: 6 }
52
79
  }),
80
+ category: createField("string", {
81
+ nullable: true,
82
+ label: "分组",
83
+ layout: { colSpan: 6 },
84
+ model: "numberingCategory",
85
+ renderer: "select"
86
+ }),
53
87
  pattern: createField("text", {
54
88
  nullable: false,
55
89
  renderer: "string",
@@ -101,5 +135,5 @@ const NumberingRule = createModel("numbering.rule", {
101
135
  });
102
136
 
103
137
  //#endregion
104
- export { NumberingSequence as n, NumberingRule as t };
105
- //# sourceMappingURL=NumberingRule-DZRsY1di.mjs.map
138
+ export { NumberingRule as n, NumberingSequence as r, NumberingCategory as t };
139
+ //# sourceMappingURL=NumberingRule-Bpwfm032.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NumberingRule-Bpwfm032.mjs","names":[],"sources":["../../plugins/numbering/models/NumberingRule.mjs"],"sourcesContent":["import { createField, createModel, uuid, now } from '@yongdall/model';\n\nexport const NumberingCategory = createModel('numberingCategory', {\n\tvalue: createField('string', { nullable: false, primary: 1, immutable: true, layout: { hidden: true } }),\n\tlabel: createField('string', { size: 255, nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n}, {\n\tlabel: '编号生成规则分组',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ permission: 'system:numbering', fields: ['*'], authorizations: ['options', 'query', 'read'] },\n\t],\n})\nexport const NumberingSequence = createModel('numbering.sequence', {\n\tpatternId: createField('uuid', { nullable: false, primary: 1, uncreatable: true, layout: { hidden: true } }),\n\tkey: createField('text', { nullable: false, primary: 2, renderer: 'string', label: '标识模式', layout: { colSpan: 6 } }),\n\tsequence: createField('i32', { size: 255, nullable: false, default: 0, label: '当前值', layout: { colSpan: 6 } }),\n}, {\n\tlabel: '编号生成序列',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ permission: 'system:numbering', fields: ['*'], authorizations: ['options', 'query', 'read'] },\n\t],\n});\nexport const NumberingRule = createModel('numbering.rule', {\n\tid: createField('uuid', { nullable: false, default: uuid, primary: 1, uncreatable: true, layout: { hidden: true } }),\n\tlabel: createField('string', { size: 255, nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\tcategory: createField('string', { nullable: true, label: '分组', layout: { colSpan: 6 }, model: 'numberingCategory', renderer: 'select' }),\n\tpattern: createField('text', { nullable: false, renderer: 'string', label: '模式', layout: { colSpan: 6 } }),\n\tkeyPattern: createField('text', { nullable: false, renderer: 'string', default: '', label: '标识模式', layout: { colSpan: 6 } }),\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建日期', layout: { hidden: true } }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '最后更新日期', layout: { hidden: true } }),\n}, {\n\tlabel: '编号生成规则',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ permission: '', fields: ['*'], authorizations: ['options', 'query', 'read'] },\n\t\t{ permission: 'system:numbering', fields: ['*'], authorizations: ['options', 'query', 'read', 'create', 'update', 'destroy'] },\n\t],\n});\n"],"mappings":";;;AAEA,MAAa,oBAAoB,YAAY,qBAAqB;CACjE,OAAO,YAAY,UAAU;EAAE,UAAU;EAAQ,SAAS;EAAG,WAAW;EAAM,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CACzG,OAAO,YAAY,UAAU;EAAE,MAAM;EAAK,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC9G,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,YAAY;EAAoB,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAO;EAAE,CAC/F;CACD,CAAC;AACF,MAAa,oBAAoB,YAAY,sBAAsB;CAClE,WAAW,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAG,aAAa;EAAM,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAC5G,KAAK,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAG,UAAU;EAAU,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACpH,UAAU,YAAY,OAAO;EAAE,MAAM;EAAK,UAAU;EAAO,SAAS;EAAG,OAAO;EAAO,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC9G,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,YAAY;EAAoB,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAO;EAAE,CAC/F;CACD,CAAC;AACF,MAAa,gBAAgB,YAAY,kBAAkB;CAC1D,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,SAAS;EAAG,aAAa;EAAM,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CACpH,OAAO,YAAY,UAAU;EAAE,MAAM;EAAK,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC9G,UAAU,YAAY,UAAU;EAAE,UAAU;EAAM,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,OAAO;EAAqB,UAAU;EAAU,CAAC;CACxI,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAU,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC1G,YAAY,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAU,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC5H,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAChH,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAU,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAClH,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,YAAY;EAAI,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAO;EAAE,EAC/E;EAAE,YAAY;EAAoB,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAQ;GAAU;GAAU;GAAU;EAAE,CAC9H;CACD,CAAC"}
package/index.d.mts CHANGED
@@ -1,3 +1,4 @@
1
+ import { Pattern } from "@yongdall/common";
1
2
  import * as imodel0 from "imodel";
2
3
  import * as _yongdall_model0 from "@yongdall/model";
3
4
 
@@ -10,6 +11,7 @@ declare const NumberingSequence: _yongdall_model0.ModelTable<{
10
11
  declare const NumberingRule: _yongdall_model0.ModelTable<{
11
12
  id: imodel0.FieldDefine<"uuid", false, false>;
12
13
  label: imodel0.FieldDefine<"string", false, false>;
14
+ category: imodel0.FieldDefine<"string", false, true>;
13
15
  pattern: imodel0.FieldDefine<"text", false, false>;
14
16
  keyPattern: imodel0.FieldDefine<"text", false, false>;
15
17
  createdAt: imodel0.FieldDefine<"timestamp", false, false>;
@@ -17,17 +19,17 @@ declare const NumberingRule: _yongdall_model0.ModelTable<{
17
19
  }, string>;
18
20
  //#endregion
19
21
  //#region plugins/numbering/index.d.mts
20
- /**
21
- *
22
- * @param {string} id
23
- * @param {Record<string, any>} data
24
- */
25
- declare function next(id: string, data: Record<string, any>): Promise<number | null>;
26
- /**
27
- *
28
- * @param {string} id
29
- * @param {Record<string, any>} data
30
- */
31
- declare function generate(id: string, data: Record<string, any>): Promise<string | null>;
22
+ declare function run(pattern: {
23
+ keyPattern: string;
24
+ id: string;
25
+ }, data: Record<string, any>, n: number, pipelines?: Record<string, Pattern.Pipeline<any>> | null): Promise<number[]>;
26
+ declare function next(id: string, data: Record<string, any>, pipelines?: Record<string, Pattern.Pipeline<any>> | null, n?: null): Promise<number | null>;
27
+ declare function next(id: string, data: Record<string, any>, pipelines: Record<string, Pattern.Pipeline<any>> | null, n: number): Promise<number[]>;
28
+ declare function next(id: string, data: Record<string, any>, n: number, pipelines?: Record<string, Pattern.Pipeline<any>> | null): Promise<number[]>;
29
+ declare function next(id: string, data: Record<string, any>, pipelines?: Record<string, Pattern.Pipeline<any>> | null | number, n?: Record<string, Pattern.Pipeline<any>> | null | number): Promise<number | number[] | null>;
30
+ declare function generate(id: string, data: Record<string, any>, pipelines?: Record<string, Pattern.Pipeline<any>> | null, n?: null): Promise<string | null>;
31
+ declare function generate(id: string, data: Record<string, any>, pipelines: Record<string, Pattern.Pipeline<any>> | null, n: number): Promise<string[]>;
32
+ declare function generate(id: string, data: Record<string, any>, n: number, pipelines?: Record<string, Pattern.Pipeline<any>> | null): Promise<string[]>;
33
+ declare function generate(id: string, data: Record<string, any>, pipelines?: Record<string, Pattern.Pipeline<any>> | null | number, n?: Record<string, Pattern.Pipeline<any>> | null | number): Promise<string | string[] | null>;
32
34
  //#endregion
33
- export { NumberingRule, NumberingSequence, generate, next };
35
+ export { NumberingRule, NumberingSequence, generate, next, run };
package/index.mjs CHANGED
@@ -1,50 +1,40 @@
1
- import { n as NumberingSequence, t as NumberingRule } from "./NumberingRule-DZRsY1di.mjs";
1
+ import { n as NumberingRule, r as NumberingSequence } from "./NumberingRule-Bpwfm032.mjs";
2
2
  import { Query, actions, increment } from "@yongdall/model";
3
3
  import { useDatabase } from "@yongdall/connection";
4
4
  import { Pattern } from "@yongdall/common";
5
5
 
6
- //#region plugins/numbering/index.mjs
7
- /** @import { TableValue } from '@yongdall/model' */
8
- /**
9
- *
10
- * @param {string} id
11
- * @returns {Promise<TableValue<NumberingRule>?>}
12
- */
6
+ //#region plugins/numbering/index.mts
13
7
  async function find(id) {
14
8
  return await useDatabase(NumberingRule.databaseId).call(actions.first(new Query(NumberingRule).primary(id))) || null;
15
9
  }
16
- /**
17
- *
18
- * @param {string} id
19
- * @param {Record<string, any>} data
20
- */
21
- async function next(id, data) {
22
- const pattern = await find(id);
23
- if (!pattern) return null;
24
- const key = Pattern.generate(pattern.keyPattern || "", data) || "";
25
- return (await useDatabase(NumberingRule.databaseId).call(actions.upsert(NumberingSequence, {
10
+ async function run(pattern, data, n, pipelines) {
11
+ const sequence = Math.max(1, Math.floor(n) || 0);
12
+ const key = Pattern.generate(pattern.keyPattern || "", data, pipelines) || "";
13
+ const seq = await useDatabase(NumberingRule.databaseId).call(actions.upsert(NumberingSequence, {
26
14
  patternId: pattern.id,
27
15
  key,
28
- sequence: 1
29
- }, { sequence: increment(1) }))).sequence;
16
+ sequence
17
+ }, null, ["patternId", "key"], { sequence: increment(sequence) }));
18
+ return Array(sequence).fill(seq.sequence).map((max, i) => max - sequence + 1 + i);
30
19
  }
31
- /**
32
- *
33
- * @param {string} id
34
- * @param {Record<string, any>} data
35
- */
36
- async function generate(id, data) {
20
+ async function next(id, data, pipelines, n) {
21
+ const num = [pipelines, n].find((v) => typeof v === "number") || null;
37
22
  const pattern = await find(id);
38
- if (!pattern) return null;
39
- const key = Pattern.generate(pattern.keyPattern || "", data) || "";
40
- const seq = await useDatabase(NumberingRule.databaseId).call(actions.upsert(NumberingSequence, {
41
- patternId: pattern.id,
42
- key,
43
- sequence: 1
44
- }, null, ["patternId", "key"], { sequence: increment(1) }));
45
- return Pattern.generate(pattern.pattern, data, seq.sequence);
23
+ if (!pattern) return typeof num === "number" ? [] : null;
24
+ const pls = [pipelines, n].find((v) => typeof v === "object") || null;
25
+ const list = await run(pattern, data, num || 0, pls);
26
+ return num === null ? list.pop() || null : list;
27
+ }
28
+ async function generate(id, data, pipelines, n) {
29
+ const num = [pipelines, n].find((v) => typeof v === "number") || null;
30
+ const pattern = await find(id);
31
+ if (!pattern) return typeof num === "number" ? [] : null;
32
+ const pls = [pipelines, n].find((v) => typeof v === "object") || null;
33
+ const list = await run(pattern, data, num || 0, pls);
34
+ if (num === null) return Pattern.generate(pattern.pattern, data, list[0] || 0, pls);
35
+ return list.map((seq) => Pattern.generate(pattern.pattern, data, seq, pls));
46
36
  }
47
37
 
48
38
  //#endregion
49
- export { NumberingRule, NumberingSequence, generate, next };
39
+ export { NumberingRule, NumberingSequence, generate, next, run };
50
40
  //# sourceMappingURL=index.mjs.map
package/index.mjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","names":[],"sources":["../../plugins/numbering/index.mjs"],"sourcesContent":["/** @import { TableValue } from '@yongdall/model' */\nimport { useDatabase } from '@yongdall/connection';\nimport { Pattern } from '@yongdall/common';\nimport { Query, actions, increment } from '@yongdall/model';\nimport { NumberingRule, NumberingSequence } from './models/NumberingRule.mjs';\n\nexport { NumberingRule, NumberingSequence } from './models/NumberingRule.mjs';\n\n/**\n * \n * @param {string} id \n * @returns {Promise<TableValue<NumberingRule>?>}\n */\nasync function find(id) {\n\tconst database = useDatabase(NumberingRule.databaseId);\n\tconst pattern = await database.call(actions.first(new Query(NumberingRule).primary(id)));\n\treturn pattern || null;\n}\n\n\n/**\n * \n * @param {string} id \n * @param {Record<string, any>} data \n */\nexport async function next(id, data) {\n\tconst pattern = await find(id);\n\tif (!pattern) { return null; }\n\tconst key = Pattern.generate(pattern.keyPattern || '', data) || '';\n\tconst database = useDatabase(NumberingRule.databaseId);\n\tconst seq = await database.call(actions.upsert(NumberingSequence, {\n\t\tpatternId: pattern.id,\n\t\tkey,\n\t\tsequence: 1,\n\t}, { sequence: increment(1) }))\n\treturn seq.sequence;\n}\n\n/**\n * \n * @param {string} id \n * @param {Record<string, any>} data \n */\nexport async function generate(id, data) {\n\tconst pattern = await find(id);\n\tif (!pattern) { return null; }\n\tconst key = Pattern.generate(pattern.keyPattern || '', data) || '';\n\tconst database = useDatabase(NumberingRule.databaseId);\n\tconst seq = await database.call(actions.upsert(NumberingSequence, {\n\t\tpatternId: pattern.id, key, sequence: 1,\n\t}, null, ['patternId', 'key'], { sequence: increment(1) }));\n\treturn Pattern.generate(pattern.pattern, data, seq.sequence);\n}\n"],"mappings":";;;;;;;;;;;;AAaA,eAAe,KAAK,IAAI;AAGvB,QADgB,MADC,YAAY,cAAc,WAAW,CACvB,KAAK,QAAQ,MAAM,IAAI,MAAM,cAAc,CAAC,QAAQ,GAAG,CAAC,CAAC,IACtE;;;;;;;AASnB,eAAsB,KAAK,IAAI,MAAM;CACpC,MAAM,UAAU,MAAM,KAAK,GAAG;AAC9B,KAAI,CAAC,QAAW,QAAO;CACvB,MAAM,MAAM,QAAQ,SAAS,QAAQ,cAAc,IAAI,KAAK,IAAI;AAOhE,SALY,MADK,YAAY,cAAc,WAAW,CAC3B,KAAK,QAAQ,OAAO,mBAAmB;EACjE,WAAW,QAAQ;EACnB;EACA,UAAU;EACV,EAAE,EAAE,UAAU,UAAU,EAAE,EAAE,CAAC,CAAC,EACpB;;;;;;;AAQZ,eAAsB,SAAS,IAAI,MAAM;CACxC,MAAM,UAAU,MAAM,KAAK,GAAG;AAC9B,KAAI,CAAC,QAAW,QAAO;CACvB,MAAM,MAAM,QAAQ,SAAS,QAAQ,cAAc,IAAI,KAAK,IAAI;CAEhE,MAAM,MAAM,MADK,YAAY,cAAc,WAAW,CAC3B,KAAK,QAAQ,OAAO,mBAAmB;EACjE,WAAW,QAAQ;EAAI;EAAK,UAAU;EACtC,EAAE,MAAM,CAAC,aAAa,MAAM,EAAE,EAAE,UAAU,UAAU,EAAE,EAAE,CAAC,CAAC;AAC3D,QAAO,QAAQ,SAAS,QAAQ,SAAS,MAAM,IAAI,SAAS"}
1
+ {"version":3,"file":"index.mjs","names":[],"sources":["../../plugins/numbering/index.mts"],"sourcesContent":["import type { TableValue } from '@yongdall/model';\nimport { useDatabase } from '@yongdall/connection';\nimport { Pattern } from '@yongdall/common';\nimport { Query, actions, increment } from '@yongdall/model';\nimport { NumberingRule, NumberingSequence } from './models/NumberingRule.mjs';\n\nexport { NumberingRule, NumberingSequence } from './models/NumberingRule.mjs';\n\n\nasync function find(id: string): Promise<TableValue<typeof NumberingRule> | null> {\n\tconst database = useDatabase(NumberingRule.databaseId);\n\tconst pattern = await database.call(actions.first(new Query(NumberingRule).primary(id)));\n\treturn pattern || null;\n}\n\n\nexport async function run(\n\tpattern: { keyPattern: string; id: string },\n\tdata: Record<string, any>,\n\tn: number,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null,\n): Promise<number[]> {\n\tconst sequence = Math.max(1, Math.floor(n) || 0);\n\tconst key = Pattern.generate(pattern.keyPattern || '', data, pipelines) || '';\n\tconst database = useDatabase(NumberingRule.databaseId);\n\tconst seq = await database.call(actions.upsert(NumberingSequence, {\n\t\tpatternId: pattern.id, key, sequence,\n\t}, null, ['patternId', 'key'], { sequence: increment(sequence) }));\n\treturn Array(sequence).fill(seq.sequence).map((max, i) => max - sequence + 1 + i);\n}\n\n\nexport async function next(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null,\n\tn?: null,\n): Promise<number | null>\nexport async function next(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines: Record<string, Pattern.Pipeline<any>> | null,\n\tn: number,\n): Promise<number[]>\nexport async function next(\n\tid: string,\n\tdata: Record<string, any>,\n\tn: number,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null,\n): Promise<number[]>\nexport async function next(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null | number,\n\tn?: Record<string, Pattern.Pipeline<any>> | null | number,\n): Promise<number | number[] | null>\nexport async function next(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null | number,\n\tn?: Record<string, Pattern.Pipeline<any>> | null | number,\n): Promise<number | number[] | null> {\n\tconst num = [pipelines, n].find(v => typeof v === 'number') || null;\n\tconst pattern = await find(id);\n\tif (!pattern) { return typeof num === 'number' ? [] : null; }\n\tconst pls = [pipelines, n].find(v => typeof v === 'object') || null;\n\tconst list = await run(pattern, data, num || 0, pls)\n\treturn num === null ? list.pop() || null : list;\n}\n\n\nexport async function generate(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null,\n\tn?: null,\n): Promise<string | null>\nexport async function generate(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines: Record<string, Pattern.Pipeline<any>> | null,\n\tn: number,\n): Promise<string[]>\nexport async function generate(\n\tid: string,\n\tdata: Record<string, any>,\n\tn: number,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null,\n): Promise<string[]>\nexport async function generate(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null | number,\n\tn?: Record<string, Pattern.Pipeline<any>> | null | number,\n): Promise<string | string[] | null>\nexport async function generate(\n\tid: string,\n\tdata: Record<string, any>,\n\tpipelines?: Record<string, Pattern.Pipeline<any>> | null | number,\n\tn?: Record<string, Pattern.Pipeline<any>> | null | number,\n): Promise<string | string[] | null> {\n\tconst num = [pipelines, n].find(v => typeof v === 'number') || null;\n\tconst pattern = await find(id);\n\tif (!pattern) { return typeof num === 'number' ? [] : null; }\n\tconst pls = [pipelines, n].find(v => typeof v === 'object') || null;\n\tconst list = await run(pattern, data, num || 0, pls);\n\tif (num === null) {\n\t\treturn Pattern.generate(pattern.pattern, data, list[0] || 0, pls);\n\t}\n\treturn list.map(seq => Pattern.generate(pattern.pattern, data, seq, pls))\n}\n"],"mappings":";;;;;;AASA,eAAe,KAAK,IAA8D;AAGjF,QADgB,MADC,YAAY,cAAc,WAAW,CACvB,KAAK,QAAQ,MAAM,IAAI,MAAM,cAAc,CAAC,QAAQ,GAAG,CAAC,CAAC,IACtE;;AAInB,eAAsB,IACrB,SACA,MACA,GACA,WACoB;CACpB,MAAM,WAAW,KAAK,IAAI,GAAG,KAAK,MAAM,EAAE,IAAI,EAAE;CAChD,MAAM,MAAM,QAAQ,SAAS,QAAQ,cAAc,IAAI,MAAM,UAAU,IAAI;CAE3E,MAAM,MAAM,MADK,YAAY,cAAc,WAAW,CAC3B,KAAK,QAAQ,OAAO,mBAAmB;EACjE,WAAW,QAAQ;EAAI;EAAK;EAC5B,EAAE,MAAM,CAAC,aAAa,MAAM,EAAE,EAAE,UAAU,UAAU,SAAS,EAAE,CAAC,CAAC;AAClE,QAAO,MAAM,SAAS,CAAC,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,MAAM,MAAM,WAAW,IAAI,EAAE;;AA4BlF,eAAsB,KACrB,IACA,MACA,WACA,GACoC;CACpC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,MAAK,MAAK,OAAO,MAAM,SAAS,IAAI;CAC/D,MAAM,UAAU,MAAM,KAAK,GAAG;AAC9B,KAAI,CAAC,QAAW,QAAO,OAAO,QAAQ,WAAW,EAAE,GAAG;CACtD,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,MAAK,MAAK,OAAO,MAAM,SAAS,IAAI;CAC/D,MAAM,OAAO,MAAM,IAAI,SAAS,MAAM,OAAO,GAAG,IAAI;AACpD,QAAO,QAAQ,OAAO,KAAK,KAAK,IAAI,OAAO;;AA4B5C,eAAsB,SACrB,IACA,MACA,WACA,GACoC;CACpC,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,MAAK,MAAK,OAAO,MAAM,SAAS,IAAI;CAC/D,MAAM,UAAU,MAAM,KAAK,GAAG;AAC9B,KAAI,CAAC,QAAW,QAAO,OAAO,QAAQ,WAAW,EAAE,GAAG;CACtD,MAAM,MAAM,CAAC,WAAW,EAAE,CAAC,MAAK,MAAK,OAAO,MAAM,SAAS,IAAI;CAC/D,MAAM,OAAO,MAAM,IAAI,SAAS,MAAM,OAAO,GAAG,IAAI;AACpD,KAAI,QAAQ,KACX,QAAO,QAAQ,SAAS,QAAQ,SAAS,MAAM,KAAK,MAAM,GAAG,IAAI;AAElE,QAAO,KAAK,KAAI,QAAO,QAAQ,SAAS,QAAQ,SAAS,MAAM,KAAK,IAAI,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yongdall/numbering",
3
- "version": "0.6.3",
3
+ "version": "0.6.4",
4
4
  "type": "module",
5
5
  "main": "./index.mjs",
6
6
  "exports": {
@@ -11,12 +11,12 @@
11
11
  "author": "",
12
12
  "license": "ISC",
13
13
  "dependencies": {
14
- "@yongdall/common": "^0.6.2",
15
- "@yongdall/connection": "^0.6.2",
16
- "@yongdall/core": "^0.6.2",
17
- "@yongdall/model": "^0.6.2"
14
+ "@yongdall/common": "^0.6.4",
15
+ "@yongdall/connection": "^0.6.4",
16
+ "@yongdall/core": "^0.6.4",
17
+ "@yongdall/model": "^0.6.4"
18
18
  },
19
19
  "devDependencies": {
20
- "@yongdall/migrate": "^0.6.2"
20
+ "@yongdall/migrate": "^0.6.4"
21
21
  }
22
22
  }
@@ -1,9 +1,13 @@
1
- import { n as NumberingSequence, t as NumberingRule } from "../NumberingRule-DZRsY1di.mjs";
1
+ import { n as NumberingRule, r as NumberingSequence, t as NumberingCategory } from "../NumberingRule-Bpwfm032.mjs";
2
2
 
3
3
  //#region plugins/numbering/yongdall/migration.mjs
4
4
  /** @import { Profile } from '@yongdall/migrate' */
5
5
  /** @type {Profile['models']} */
6
- const models = [NumberingRule, NumberingSequence];
6
+ const models = [
7
+ NumberingCategory,
8
+ NumberingRule,
9
+ NumberingSequence
10
+ ];
7
11
 
8
12
  //#endregion
9
13
  export { models };
@@ -1 +1 @@
1
- {"version":3,"file":"migration.mjs","names":[],"sources":["../../../plugins/numbering/yongdall/migration.mjs"],"sourcesContent":["/** @import { Profile } from '@yongdall/migrate' */\n\nimport { NumberingRule, NumberingSequence } from '../models/NumberingRule.mjs';\n\n\n/** @type {Profile['models']} */\nexport const models = [\n\tNumberingRule,\n\tNumberingSequence,\n]\n"],"mappings":";;;;;AAMA,MAAa,SAAS,CACrB,eACA,kBACA"}
1
+ {"version":3,"file":"migration.mjs","names":[],"sources":["../../../plugins/numbering/yongdall/migration.mjs"],"sourcesContent":["/** @import { Profile } from '@yongdall/migrate' */\n\nimport { NumberingCategory, NumberingRule, NumberingSequence } from '../models/NumberingRule.mjs';\n\n\n/** @type {Profile['models']} */\nexport const models = [\n\tNumberingCategory,\n\tNumberingRule,\n\tNumberingSequence,\n]\n"],"mappings":";;;;;AAMA,MAAa,SAAS;CACrB;CACA;CACA;CACA"}
@@ -1,9 +1,10 @@
1
- import { n as NumberingSequence, t as NumberingRule } from "../NumberingRule-DZRsY1di.mjs";
1
+ import { n as NumberingRule, r as NumberingSequence, t as NumberingCategory } from "../NumberingRule-Bpwfm032.mjs";
2
2
 
3
3
  //#region plugins/numbering/yongdall/model.mjs
4
4
  /** @import { ModelProfile } from '@yongdall/core' */
5
5
  /** @type {ModelProfile['models']} */
6
6
  const models = {
7
+ numberingCategory: NumberingCategory,
7
8
  numberingRule: NumberingRule,
8
9
  numberingSequence: NumberingSequence
9
10
  };
@@ -1 +1 @@
1
- {"version":3,"file":"model.mjs","names":[],"sources":["../../../plugins/numbering/yongdall/model.mjs"],"sourcesContent":["/** @import { ModelProfile } from '@yongdall/core' */\nimport { NumberingRule, NumberingSequence } from '../models/NumberingRule.mjs';\n\n/** @type {ModelProfile['models']} */\nexport const models = {\n\tnumberingRule: NumberingRule,\n\tnumberingSequence: NumberingSequence,\n};\n"],"mappings":";;;;;AAIA,MAAa,SAAS;CACrB,eAAe;CACf,mBAAmB;CACnB"}
1
+ {"version":3,"file":"model.mjs","names":[],"sources":["../../../plugins/numbering/yongdall/model.mjs"],"sourcesContent":["/** @import { ModelProfile } from '@yongdall/core' */\nimport { NumberingCategory, NumberingRule, NumberingSequence } from '../models/NumberingRule.mjs';\n\n/** @type {ModelProfile['models']} */\nexport const models = {\n\tnumberingCategory: NumberingCategory,\n\tnumberingRule: NumberingRule,\n\tnumberingSequence: NumberingSequence,\n};\n"],"mappings":";;;;;AAIA,MAAa,SAAS;CACrB,mBAAmB;CACnB,eAAe;CACf,mBAAmB;CACnB"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"NumberingRule-DZRsY1di.mjs","names":[],"sources":["../../plugins/numbering/models/NumberingRule.mjs"],"sourcesContent":["import { createField, createModel, uuid, now } from '@yongdall/model';\n\nexport const NumberingSequence = createModel('numbering.sequence', {\n\tpatternId: createField('uuid', { nullable: false, primary: 1, uncreatable: true, layout: { hidden: true } }),\n\tkey: createField('text', { nullable: false, primary: 2, renderer: 'string', label: '标识模式', layout: { colSpan: 6 } }),\n\tsequence: createField('i32', { size: 255, nullable: false, default: 0, label: '当前值', layout: { colSpan: 6 } }),\n}, {\n\tlabel: '编号生成序列',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ permission: 'system:pattern', fields: ['*'], authorizations: ['options', 'query', 'read'] },\n\t],\n});\nexport const NumberingRule = createModel('numbering.rule', {\n\tid: createField('uuid', { nullable: false, default: uuid, primary: 1, uncreatable: true, layout: { hidden: true } }),\n\tlabel: createField('string', { size: 255, nullable: false, default: '', label: '名称', layout: { colSpan: 6 } }),\n\tpattern: createField('text', { nullable: false, renderer: 'string', label: '模式', layout: { colSpan: 6 } }),\n\tkeyPattern: createField('text', { nullable: false, renderer: 'string', default: '', label: '标识模式', layout: { colSpan: 6 } }),\n\tcreatedAt: createField('timestamp', { nullable: false, creating: now, label: '创建日期', layout: { hidden: true } }),\n\tupdatedAt: createField('timestamp', { nullable: false, updating: now, label: '最后更新日期', layout: { hidden: true } }),\n}, {\n\tlabel: '编号生成规则',\n\tlabelField: 'label',\n\tpermissions: [\n\t\t{ permission: '', fields: ['*'], authorizations: ['options', 'query', 'read'] },\n\t\t{ permission: 'system:numbering', fields: ['*'], authorizations: ['options', 'query', 'read', 'create', 'update', 'destroy'] },\n\t],\n});\n"],"mappings":";;;AAEA,MAAa,oBAAoB,YAAY,sBAAsB;CAClE,WAAW,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAG,aAAa;EAAM,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAC5G,KAAK,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAG,UAAU;EAAU,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CACpH,UAAU,YAAY,OAAO;EAAE,MAAM;EAAK,UAAU;EAAO,SAAS;EAAG,OAAO;EAAO,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC9G,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,YAAY;EAAkB,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAO;EAAE,CAC7F;CACD,CAAC;AACF,MAAa,gBAAgB,YAAY,kBAAkB;CAC1D,IAAI,YAAY,QAAQ;EAAE,UAAU;EAAO,SAAS;EAAM,SAAS;EAAG,aAAa;EAAM,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CACpH,OAAO,YAAY,UAAU;EAAE,MAAM;EAAK,UAAU;EAAO,SAAS;EAAI,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC9G,SAAS,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAU,OAAO;EAAM,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC1G,YAAY,YAAY,QAAQ;EAAE,UAAU;EAAO,UAAU;EAAU,SAAS;EAAI,OAAO;EAAQ,QAAQ,EAAE,SAAS,GAAG;EAAE,CAAC;CAC5H,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAQ,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAChH,WAAW,YAAY,aAAa;EAAE,UAAU;EAAO,UAAU;EAAK,OAAO;EAAU,QAAQ,EAAE,QAAQ,MAAM;EAAE,CAAC;CAClH,EAAE;CACF,OAAO;CACP,YAAY;CACZ,aAAa,CACZ;EAAE,YAAY;EAAI,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAO;EAAE,EAC/E;EAAE,YAAY;EAAoB,QAAQ,CAAC,IAAI;EAAE,gBAAgB;GAAC;GAAW;GAAS;GAAQ;GAAU;GAAU;GAAU;EAAE,CAC9H;CACD,CAAC"}