@based/schema 1.0.7 → 1.0.9

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/error.d.ts CHANGED
@@ -12,5 +12,6 @@ export declare enum ParseError {
12
12
  'requiredFieldNotDefined' = 10,
13
13
  'languageNotSupported' = 11,
14
14
  'invalidJSON' = 12,
15
- 'noLanguageFound' = 13
15
+ 'noLanguageFound' = 13,
16
+ 'cannotDeleteNodeFromModify' = 14
16
17
  }
package/dist/error.js CHANGED
@@ -17,5 +17,6 @@ var ParseError;
17
17
  ParseError[ParseError["languageNotSupported"] = 11] = "languageNotSupported";
18
18
  ParseError[ParseError["invalidJSON"] = 12] = "invalidJSON";
19
19
  ParseError[ParseError["noLanguageFound"] = 13] = "noLanguageFound";
20
+ ParseError[ParseError["cannotDeleteNodeFromModify"] = 14] = "cannotDeleteNodeFromModify";
20
21
  })(ParseError = exports.ParseError || (exports.ParseError = {}));
21
22
  //# sourceMappingURL=error.js.map
package/dist/error.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAeX;AAfD,WAAY,UAAU;IACpB,uEAAoB,CAAA;IACpB,qEAAmB,CAAA;IACnB,+DAAgB,CAAA;IAChB,iEAAiB,CAAA;IACjB,qEAAmB,CAAA;IACnB,iEAAiB,CAAA;IACjB,mFAA0B,CAAA;IAC1B,iEAAiB,CAAA;IACjB,yEAAqB,CAAA;IACrB,2FAA8B,CAAA;IAC9B,kFAAyB,CAAA;IACzB,4EAAsB,CAAA;IACtB,0DAAa,CAAA;IACb,kEAAiB,CAAA;AACnB,CAAC,EAfW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAerB"}
1
+ {"version":3,"file":"error.js","sourceRoot":"","sources":["../src/error.ts"],"names":[],"mappings":";;;AAAA,IAAY,UAgBX;AAhBD,WAAY,UAAU;IACpB,uEAAoB,CAAA;IACpB,qEAAmB,CAAA;IACnB,+DAAgB,CAAA;IAChB,iEAAiB,CAAA;IACjB,qEAAmB,CAAA;IACnB,iEAAiB,CAAA;IACjB,mFAA0B,CAAA;IAC1B,iEAAiB,CAAA;IACjB,yEAAqB,CAAA;IACrB,2FAA8B,CAAA;IAC9B,kFAAyB,CAAA;IACzB,4EAAsB,CAAA;IACtB,0DAAa,CAAA;IACb,kEAAiB,CAAA;IACjB,wFAA4B,CAAA;AAC9B,CAAC,EAhBW,UAAU,GAAV,kBAAU,KAAV,kBAAU,QAgBrB"}
@@ -12,8 +12,8 @@ const parseArray = async (args, value) => {
12
12
  path: [i],
13
13
  value: fromValue[i],
14
14
  fieldSchema: args.fieldSchema.values,
15
- collect: (args, v) => {
16
- (0, utils_1.setByPath)(arr, args.path, v);
15
+ collect: (args) => {
16
+ (0, utils_1.setByPath)(arr, args.path, args.value);
17
17
  },
18
18
  }));
19
19
  }
@@ -35,7 +35,7 @@ const operations = {
35
35
  args.collect(value);
36
36
  },
37
37
  $unshift: async (args, value) => {
38
- value.$unshift = await parseArray(args, value.$push);
38
+ value.$unshift = await parseArray(args, value.$unshift);
39
39
  args.collect(value);
40
40
  },
41
41
  $remove: async (args, value) => {
@@ -1 +1 @@
1
- {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/set/fields/array.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"array.js","sourceRoot":"","sources":["../../../src/set/fields/array.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,7 @@ exports.fields = {
50
50
  args.collect();
51
51
  },
52
52
  json: async (args) => {
53
+ args.stop();
53
54
  try {
54
55
  const parsedValue = JSON.stringify(args.value);
55
56
  args.collect(parsedValue);
@@ -59,6 +60,7 @@ exports.fields = {
59
60
  }
60
61
  },
61
62
  enum: async (args) => {
63
+ args.stop();
62
64
  const enumValues = args.fieldSchema.enum;
63
65
  for (let i = 0; i < enumValues.length; i++) {
64
66
  if ((0, utils_1.deepEqual)(enumValues[i], args.value)) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/set/fields/index.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AAExC,mCAA+B;AAC/B,qCAAyC;AACzC,qCAAqD;AACrD,qCAAuC;AACvC,6CAAoD;AACpD,+BAA2B;AAC3B,sCAA4D;AAC5D,wCAAwC;AAE3B,QAAA,MAAM,GAA0C;IAC3D,KAAK,EAAL,aAAK;IACL,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,OAAO,EAAP,gBAAO;IACP,SAAS,EAAT,kBAAS;IACT,MAAM,EAAN,eAAM;IACN,GAAG,EAAH,SAAG;IACH,IAAI,EAAJ,aAAI;IACJ,SAAS,EAAT,sBAAS;IACT,UAAU,EAAV,uBAAU;IACV,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC1B,IAAI,WAAmB,CAAA;QACvB,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YAChD,IAAI,CAAC,IAAI,EAAE,CAAA;YACX,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE;gBACrC,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,mBAAmB,CAAC,CAAA;gBAC1C,OAAM;aACP;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;gBACnC,WAAW,GAAG,IAAA,+BAAwB,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;aACvE;iBAAM;gBACL,WAAW,GAAG,IAAA,+BAAwB,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;aAChE;SACF;aAAM;YACL,WAAW,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;SAC5C;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,eAAe,CAAC,CAAA;YACtC,OAAM;SACP;QACD,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IAED,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACnB,IAAI;YACF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC9C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;SAC1B;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,WAAW,CAAC,CAAA;SACnC;IACH,CAAC;IACD,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACnB,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,IAAA,iBAAS,EAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;gBACf,OAAM;aACP;SACF;QACD,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,eAAe,CAAC,CAAA;IACxC,CAAC;CACF,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/set/fields/index.ts"],"names":[],"mappings":";;;AACA,uCAAwC;AAExC,mCAA+B;AAC/B,qCAAyC;AACzC,qCAAqD;AACrD,qCAAuC;AACvC,6CAAoD;AACpD,+BAA2B;AAC3B,sCAA4D;AAC5D,wCAAwC;AAE3B,QAAA,MAAM,GAA0C;IAC3D,KAAK,EAAL,aAAK;IACL,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,MAAM,EAAN,eAAM;IACN,OAAO,EAAP,gBAAO;IACP,SAAS,EAAT,kBAAS;IACT,MAAM,EAAN,eAAM;IACN,GAAG,EAAH,SAAG;IACH,IAAI,EAAJ,aAAI;IACJ,SAAS,EAAT,sBAAS;IACT,UAAU,EAAV,uBAAU;IACV,WAAW,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QAC1B,IAAI,WAAmB,CAAA;QACvB,IAAI,IAAI,CAAC,KAAK,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE;YAChD,IAAI,CAAC,IAAI,EAAE,CAAA;YACX,IAAI,IAAI,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE;gBACrC,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,mBAAmB,CAAC,CAAA;gBAC1C,OAAM;aACP;YACD,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE;gBACnC,WAAW,GAAG,IAAA,+BAAwB,EAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;aACvE;iBAAM;gBACL,WAAW,GAAG,IAAA,+BAAwB,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;aAChE;SACF;aAAM;YACL,WAAW,GAAG,IAAA,WAAI,EAAC,IAAI,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;SAC5C;QACD,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;IAC3B,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACtB,IAAI,OAAO,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE;YACnC,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,eAAe,CAAC,CAAA;YACtC,OAAM;SACP;QACD,IAAI,CAAC,OAAO,EAAE,CAAA;IAChB,CAAC;IACD,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACnB,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,IAAI;YACF,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;YAC9C,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,CAAA;SAC1B;QAAC,OAAO,GAAG,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,WAAW,CAAC,CAAA;SACnC;IACH,CAAC;IACD,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;QACnB,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,CAAC,IAAI,CAAA;QACxC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC1C,IAAI,IAAA,iBAAS,EAAC,UAAU,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,EAAE;gBACxC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;gBACf,OAAM;aACP;SACF;QACD,IAAI,CAAC,KAAK,CAAC,kBAAU,CAAC,eAAe,CAAC,CAAA;IACxC,CAAC;CACF,CAAA"}
package/dist/set/index.js CHANGED
@@ -8,6 +8,32 @@ const isValidId_1 = require("./isValidId");
8
8
  const opts = {
9
9
  parsers: {
10
10
  keys: {
11
+ $delete: async (args) => {
12
+ if (args.prev === args.root) {
13
+ args.error(error_1.ParseError.cannotDeleteNodeFromModify);
14
+ return;
15
+ }
16
+ if (args.value === true) {
17
+ args.stop();
18
+ args.prev.collect();
19
+ args.prev.stop();
20
+ return;
21
+ }
22
+ },
23
+ $alias: async (args) => {
24
+ if (Array.isArray(args.value)) {
25
+ for (const field of args.value) {
26
+ if (typeof field !== 'string') {
27
+ args.error(error_1.ParseError.incorrectFormat);
28
+ return;
29
+ }
30
+ }
31
+ return;
32
+ }
33
+ if (typeof args.value !== 'string') {
34
+ args.error(error_1.ParseError.incorrectFormat);
35
+ }
36
+ },
11
37
  $id: async (args) => {
12
38
  if (!(0, isValidId_1.isValidId)(args.schema, args.value)) {
13
39
  args.error(error_1.ParseError.incorrectFormat);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/set/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/set/index.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ const isValidId = (schema, id) => {
8
8
  if (id === 'root') {
9
9
  return true;
10
10
  }
11
- if (id.length > 10) {
11
+ if (id.length > 16) {
12
12
  return false;
13
13
  }
14
14
  const prefix = id.slice(0, 2);
@@ -4,6 +4,7 @@ import { ArgsOpts, Path, Opts, Stopped, Collect } from './types';
4
4
  import { ParseError } from '../error';
5
5
  export declare class ArgsClass<T, K extends keyof BasedSchemaFields = keyof BasedSchemaFields> {
6
6
  errors: any[];
7
+ id: number;
7
8
  prev: ArgsClass<T, K>;
8
9
  root: ArgsClass<T, K>;
9
10
  _opts: Opts<T>;
@@ -26,6 +27,9 @@ export declare class ArgsClass<T, K extends keyof BasedSchemaFields = keyof Base
26
27
  stop(onllyStopFieldSchemaParser?: boolean): void;
27
28
  create(opts?: ArgsOpts<T>): ArgsClass<T>;
28
29
  parse(opts?: ArgsOpts<T>): Promise<ArgsClass<T> | void>;
30
+ getTopPaths(): Path[];
31
+ getBackTrackTarget(): ArgsClass<T>;
32
+ getCollectTarget(): void;
29
33
  collect(value?: any): void;
30
34
  error(code: ParseError): void;
31
35
  }
@@ -3,8 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ArgsClass = void 0;
4
4
  const types_1 = require("./types");
5
5
  const parse_1 = require("./parse");
6
+ const utils_1 = require("@saulx/utils");
7
+ let id = 0;
6
8
  class ArgsClass {
7
9
  constructor(opts, prev) {
10
+ this.id = ++id;
8
11
  this.fromBackTrack = [];
9
12
  this.collectedCommands = [];
10
13
  if (opts.prev) {
@@ -25,6 +28,8 @@ class ArgsClass {
25
28
  this.path = [...prev.path, opts.key];
26
29
  }
27
30
  else if (opts && prev) {
31
+ // this.collectedCommands = prev.collectedCommands
32
+ // this.fromBackTrack = prev.fromBackTrack
28
33
  this.path = prev.path;
29
34
  }
30
35
  else {
@@ -94,22 +99,63 @@ class ArgsClass {
94
99
  }
95
100
  else {
96
101
  const newArgs = new ArgsClass(opts, this);
102
+ if (newArgs.value === undefined) {
103
+ newArgs.value = this.value;
104
+ }
97
105
  if (this._collectOverride) {
98
106
  newArgs._collectOverride = this._collectOverride;
99
107
  }
100
108
  return newArgs.parse();
101
109
  }
102
110
  }
111
+ getTopPaths() {
112
+ let argPath = [];
113
+ let p = this;
114
+ while (p) {
115
+ argPath.unshift({ path: p.path, id: p.id });
116
+ // @ts-ignore
117
+ p = p.prev;
118
+ }
119
+ return argPath;
120
+ }
121
+ getBackTrackTarget() {
122
+ let p = this;
123
+ while (p) {
124
+ if (p.prev) {
125
+ if ((0, utils_1.deepEqual)(p.prev.path, p.path)) {
126
+ p = p.prev;
127
+ }
128
+ else {
129
+ p = p.prev;
130
+ break;
131
+ }
132
+ }
133
+ else {
134
+ break;
135
+ }
136
+ }
137
+ // console.log(
138
+ // 'SELECTED TARGET',
139
+ // p && p.id,
140
+ // p && p.path,
141
+ // p && p.getTopPaths(),
142
+ // 'END'
143
+ // )
144
+ return p;
145
+ }
146
+ getCollectTarget() { }
103
147
  collect(value) {
104
148
  if (this.skipCollection) {
105
149
  return;
106
150
  }
107
151
  const collectArgs = value !== undefined ? new ArgsClass({ value }, this) : this;
152
+ // this is prob still wrong
153
+ let collectTarget = this.prev;
108
154
  if (this._collectOverride) {
109
- this.collectedCommands.push(this._collectOverride(collectArgs));
155
+ collectTarget.collectedCommands.push(this._collectOverride(collectArgs));
110
156
  }
111
157
  else {
112
- this.collectedCommands.push(this.root._opts.collect(collectArgs));
158
+ collectTarget.collectedCommands.push(this.root._opts.collect(collectArgs));
113
159
  }
114
160
  }
115
161
  error(code) {
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/walker/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../src/walker/args.ts"],"names":[],"mappings":";;;AAEA,mCAA8E;AAC9E,mCAA+B;AAE/B,wCAAwC;AAExC,IAAI,EAAE,GAAG,CAAC,CAAA;AAEV,MAAa,SAAS;IAuCpB,YAAY,IAAoB,EAAE,IAAsB;QACtD,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,CAAA;QACd,IAAI,CAAC,aAAa,GAAG,EAAE,CAAA;QACvB,IAAI,CAAC,iBAAiB,GAAG,EAAE,CAAA;QAC3B,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;SACjB;QACD,IAAI,IAAI,CAAC,aAAa,EAAE;YACtB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,aAAa,CAAA;SACxC;QACD,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;YAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;YACrB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;SACpC;QACD,IAAI,IAAI,CAAC,IAAI,EAAE;YACb,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;SACtB;aAAM,IAAI,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,SAAS,EAAE;YACzC,IAAI,CAAC,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,CAAC,CAAA;SACrC;aAAM,IAAI,IAAI,IAAI,IAAI,EAAE;YACvB,kDAAkD;YAClD,0CAA0C;YAE1C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAA;SACtB;aAAM;YACL,IAAI,CAAC,IAAI,GAAG,EAAE,CAAA;SACf;QACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACvB,IAAI,IAAI,CAAC,WAAW,EAAE;YACpB,4BAA4B;YAC5B,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC,WAAW,CAAA;SACpC;QACD,IAAI,IAAI,CAAC,UAAU,EAAE;YACnB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAA;SAClC;QACD,IAAI,IAAI,CAAC,MAAM,EAAE;YACf,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,MAAM,CAAA;SAC3B;QACD,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,OAAO,CAAA;SACrC;QACD,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,cAAc,CAAA;SAC1C;IACH,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,IAAI,CAAC,MAAM,CAAA;SACnB;QACD,OAAO,IAAI,CAAC,IAAI,CAAC,OAAO,CAAA;IAC1B,CAAC;IAED,IAAI,GAAG;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;IAC9C,CAAC;IAED,IAAI,MAAM;QACR,IAAI,IAAI,CAAC,OAAO,EAAE;YAChB,OAAO,IAAI,CAAC,OAAO,CAAA;SACpB;QACD,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,CAAA;QACjB,OAAO,CAAC,EAAE;YACR,IAAI,CAAC,CAAC,OAAO,EAAE;gBACb,OAAO,CAAC,CAAC,OAAO,CAAA;aACjB;YACD,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;SACX;IACH,CAAC;IAED,IAAI,CAAC,0BAAoC;QACvC,MAAM,MAAM,GAAG,IAAI,CAAA;QACnB,IAAI,0BAA0B,EAAE;YAC9B,MAAM,CAAC,OAAO,GAAG,eAAO,CAAC,mBAAmB,CAAA;SAC7C;aAAM;YACL,MAAM,CAAC,OAAO,GAAG,eAAO,CAAC,OAAO,CAAA;SACjC;IACH,CAAC;IAED,MAAM,CAAC,IAAkB;QACvB,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QACzC,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAA;SACjD;QACD,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,CAAC,EAAE;YACtB,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;SAC3B;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,IAAkB;QAC5B,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,IAAA,aAAK,EAAC,IAAI,CAAC,CAAA;SACnB;aAAM;YACL,MAAM,OAAO,GAAG,IAAI,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;YACzC,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE;gBAC/B,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;aAC3B;YACD,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzB,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,CAAA;aACjD;YACD,OAAO,OAAO,CAAC,KAAK,EAAE,CAAA;SACvB;IACH,CAAC;IAED,WAAW;QACT,IAAI,OAAO,GAAG,EAAE,CAAA;QAChB,IAAI,CAAC,GAAG,IAAI,CAAA;QACZ,OAAO,CAAC,EAAE;YACR,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;YAC3C,aAAa;YACb,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;SACX;QACD,OAAO,OAAO,CAAA;IAChB,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,GAAiB,IAAI,CAAA;QAC1B,OAAO,CAAC,EAAE;YACR,IAAI,CAAC,CAAC,IAAI,EAAE;gBACV,IAAI,IAAA,iBAAS,EAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE;oBAClC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;iBACX;qBAAM;oBACL,CAAC,GAAG,CAAC,CAAC,IAAI,CAAA;oBACV,MAAK;iBACN;aACF;iBAAM;gBACL,MAAK;aACN;SACF;QAED,eAAe;QACf,uBAAuB;QACvB,eAAe;QACf,iBAAiB;QACjB,0BAA0B;QAC1B,UAAU;QACV,IAAI;QAEJ,OAAO,CAAC,CAAA;IACV,CAAC;IAED,gBAAgB,KAAI,CAAC;IAErB,OAAO,CAAC,KAAW;QACjB,IAAI,IAAI,CAAC,cAAc,EAAE;YACvB,OAAM;SACP;QACD,MAAM,WAAW,GACf,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,EAAE,KAAK,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;QAE7D,2BAA2B;QAC3B,IAAI,aAAa,GAAG,IAAI,CAAC,IAAI,CAAA;QAE7B,IAAI,IAAI,CAAC,gBAAgB,EAAE;YACzB,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC,CAAA;SACzE;aAAM;YACL,aAAa,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,CAAA;SAC3E;IACH,CAAC;IAED,KAAK,CAAC,IAAgB;QACpB,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;CACF;AA3MD,8BA2MC"}
@@ -1,2 +1,3 @@
1
1
  import { ArgsClass } from './args';
2
+ export type ParseResult<T> = ArgsClass<T> | void;
2
3
  export declare function parse<T>(args: ArgsClass<T>): Promise<ArgsClass<T> | void>;
@@ -11,7 +11,10 @@ function createOrUseArgs(from, newArgs) {
11
11
  if (newArgs instanceof args_1.ArgsClass) {
12
12
  return newArgs;
13
13
  }
14
- return from.create(newArgs);
14
+ const x = from.create(newArgs);
15
+ // x.collectedCommands = from.collectedCommands
16
+ // x.fromBackTrack = from.fromBackTrack
17
+ return x;
15
18
  }
16
19
  async function parseKey(from, key, parser) {
17
20
  const keyArgs = new args_1.ArgsClass({
@@ -19,6 +22,7 @@ async function parseKey(from, key, parser) {
19
22
  value: from.value[key],
20
23
  fieldSchema: from.fieldSchema,
21
24
  }, from);
25
+ // if same
22
26
  const newArgs = createOrUseArgs(keyArgs, await parser(keyArgs));
23
27
  if (newArgs) {
24
28
  return newArgs.parse();
@@ -57,6 +61,7 @@ async function parse(args) {
57
61
  }
58
62
  }
59
63
  await Promise.all(keyQ);
64
+ // schema
60
65
  if (args.stopped === undefined) {
61
66
  const fieldQ = [];
62
67
  if (args.typeSchema && !args.fieldSchema) {
@@ -101,6 +106,7 @@ async function parse(args) {
101
106
  }
102
107
  await Promise.all(fieldQ);
103
108
  }
109
+ // any
104
110
  if (args.stopped !== types_1.Stopped.stopAll) {
105
111
  const parser = opts.parsers.any || opts.parsers.catch;
106
112
  if (parser) {
@@ -115,6 +121,7 @@ async function parse(args) {
115
121
  }
116
122
  else {
117
123
  for (const key in args.value) {
124
+ // console.info(' -> parse field: ', args.path, '->', key)
118
125
  if ((!opts.parsers.any && keysHandled.has(key)) || allKeysHandled) {
119
126
  continue;
120
127
  }
@@ -124,19 +131,30 @@ async function parse(args) {
124
131
  await Promise.all(q);
125
132
  }
126
133
  }
134
+ // console.log(
135
+ // ' OBJECT COMPLETE ------------->',
136
+ // args.id,
137
+ // args.path,
138
+ // 'collected: ',
139
+ // args.collectedCommands,
140
+ // 'backtracked: ',
141
+ // args.fromBackTrack
142
+ // )
127
143
  if (opts.backtrack &&
128
144
  !args.skipCollection &&
129
145
  (args.fromBackTrack.length || args.collectedCommands.length)) {
130
- const backtracked = opts.backtrack(this, args.fromBackTrack ?? [], args.collectedCommands ?? []);
131
- if (backtracked && this.prev) {
132
- if (!this.prev.fromBackTrack) {
133
- this.prev.fromBackTrack = [];
146
+ const backtracked = opts.backtrack(args, args.fromBackTrack ?? [], args.collectedCommands ?? []);
147
+ if (backtracked) {
148
+ const target = args.getBackTrackTarget();
149
+ if (!target.fromBackTrack) {
150
+ target.fromBackTrack = [];
134
151
  }
135
- this.prev.fromBackTrack.push(backtracked);
152
+ target.fromBackTrack.push(backtracked);
136
153
  }
137
154
  }
138
155
  }
139
156
  else {
157
+ // more
140
158
  if (args.fieldSchema) {
141
159
  const fieldParser = getFieldParser(args);
142
160
  if (fieldParser) {
@@ -151,6 +169,13 @@ async function parse(args) {
151
169
  anyParser(args);
152
170
  }
153
171
  }
172
+ else {
173
+ // console.info(
174
+ // ' ---->',
175
+ // 'parse non object (no field parser skip)',
176
+ // args.path
177
+ // )
178
+ }
154
179
  }
155
180
  }
156
181
  exports.parse = parse;
@@ -1 +1 @@
1
- {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/walker/parse.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parse.js","sourceRoot":"","sources":["../../src/walker/parse.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@based/schema",
3
- "version": "1.0.7",
3
+ "version": "1.0.9",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
package/src/error.ts CHANGED
@@ -13,4 +13,5 @@ export enum ParseError {
13
13
  'languageNotSupported',
14
14
  'invalidJSON',
15
15
  'noLanguageFound',
16
+ 'cannotDeleteNodeFromModify',
16
17
  }
@@ -16,8 +16,8 @@ const parseArray = async (
16
16
  path: [i],
17
17
  value: fromValue[i],
18
18
  fieldSchema: args.fieldSchema.values,
19
- collect: (args, v) => {
20
- setByPath(arr, args.path, v)
19
+ collect: (args) => {
20
+ setByPath(arr, args.path, args.value)
21
21
  },
22
22
  })
23
23
  )
@@ -48,7 +48,7 @@ const operations: {
48
48
  args.collect(value)
49
49
  },
50
50
  $unshift: async (args, value) => {
51
- value.$unshift = await parseArray(args, value.$push)
51
+ value.$unshift = await parseArray(args, value.$unshift)
52
52
  args.collect(value)
53
53
  },
54
54
  $remove: async (args, value) => {
@@ -47,8 +47,8 @@ export const fields: Partial<FieldParsers<BasedSetTarget>> = {
47
47
  }
48
48
  args.collect()
49
49
  },
50
-
51
50
  json: async (args) => {
51
+ args.stop()
52
52
  try {
53
53
  const parsedValue = JSON.stringify(args.value)
54
54
  args.collect(parsedValue)
@@ -57,6 +57,7 @@ export const fields: Partial<FieldParsers<BasedSetTarget>> = {
57
57
  }
58
58
  },
59
59
  enum: async (args) => {
60
+ args.stop()
60
61
  const enumValues = args.fieldSchema.enum
61
62
  for (let i = 0; i < enumValues.length; i++) {
62
63
  if (deepEqual(enumValues[i], args.value)) {
package/src/set/index.ts CHANGED
@@ -7,6 +7,33 @@ import { isValidId } from './isValidId'
7
7
  const opts: Opts<BasedSetTarget> = {
8
8
  parsers: {
9
9
  keys: {
10
+ $delete: async (args) => {
11
+ if (args.prev === args.root) {
12
+ args.error(ParseError.cannotDeleteNodeFromModify)
13
+ return
14
+ }
15
+
16
+ if (args.value === true) {
17
+ args.stop()
18
+ args.prev.collect()
19
+ args.prev.stop()
20
+ return
21
+ }
22
+ },
23
+ $alias: async (args) => {
24
+ if (Array.isArray(args.value)) {
25
+ for (const field of args.value) {
26
+ if (typeof field !== 'string') {
27
+ args.error(ParseError.incorrectFormat)
28
+ return
29
+ }
30
+ }
31
+ return
32
+ }
33
+ if (typeof args.value !== 'string') {
34
+ args.error(ParseError.incorrectFormat)
35
+ }
36
+ },
10
37
  $id: async (args) => {
11
38
  if (!isValidId(args.schema, args.value)) {
12
39
  args.error(ParseError.incorrectFormat)
@@ -9,7 +9,7 @@ export const isValidId = (schema: BasedSchema, id: any): boolean => {
9
9
  return true
10
10
  }
11
11
 
12
- if (id.length > 10) {
12
+ if (id.length > 16) {
13
13
  return false
14
14
  }
15
15
 
@@ -3,6 +3,9 @@ import { BasedSchemaType, BasedSchemaFields } from '../types'
3
3
  import { ArgsOpts, Path, Opts, Stopped, ErrorHandler, Collect } from './types'
4
4
  import { parse } from './parse'
5
5
  import { ParseError } from '../error'
6
+ import { deepEqual } from '@saulx/utils'
7
+
8
+ let id = 0
6
9
 
7
10
  export class ArgsClass<
8
11
  T,
@@ -10,6 +13,8 @@ export class ArgsClass<
10
13
  > {
11
14
  errors: any[]
12
15
 
16
+ id: number
17
+
13
18
  prev: ArgsClass<T, K>
14
19
 
15
20
  root: ArgsClass<T, K> // getter
@@ -42,6 +47,7 @@ export class ArgsClass<
42
47
  collectedCommands: any[]
43
48
 
44
49
  constructor(opts: ArgsOpts<T, K>, prev?: ArgsClass<T, K>) {
50
+ this.id = ++id
45
51
  this.fromBackTrack = []
46
52
  this.collectedCommands = []
47
53
  if (opts.prev) {
@@ -60,6 +66,9 @@ export class ArgsClass<
60
66
  } else if (prev && opts.key !== undefined) {
61
67
  this.path = [...prev.path, opts.key]
62
68
  } else if (opts && prev) {
69
+ // this.collectedCommands = prev.collectedCommands
70
+ // this.fromBackTrack = prev.fromBackTrack
71
+
63
72
  this.path = prev.path
64
73
  } else {
65
74
  this.path = []
@@ -132,6 +141,9 @@ export class ArgsClass<
132
141
  return parse(this)
133
142
  } else {
134
143
  const newArgs = new ArgsClass(opts, this)
144
+ if (newArgs.value === undefined) {
145
+ newArgs.value = this.value
146
+ }
135
147
  if (this._collectOverride) {
136
148
  newArgs._collectOverride = this._collectOverride
137
149
  }
@@ -139,6 +151,45 @@ export class ArgsClass<
139
151
  }
140
152
  }
141
153
 
154
+ getTopPaths(): Path[] {
155
+ let argPath = []
156
+ let p = this
157
+ while (p) {
158
+ argPath.unshift({ path: p.path, id: p.id })
159
+ // @ts-ignore
160
+ p = p.prev
161
+ }
162
+ return argPath
163
+ }
164
+
165
+ getBackTrackTarget(): ArgsClass<T> {
166
+ let p: ArgsClass<T> = this
167
+ while (p) {
168
+ if (p.prev) {
169
+ if (deepEqual(p.prev.path, p.path)) {
170
+ p = p.prev
171
+ } else {
172
+ p = p.prev
173
+ break
174
+ }
175
+ } else {
176
+ break
177
+ }
178
+ }
179
+
180
+ // console.log(
181
+ // 'SELECTED TARGET',
182
+ // p && p.id,
183
+ // p && p.path,
184
+ // p && p.getTopPaths(),
185
+ // 'END'
186
+ // )
187
+
188
+ return p
189
+ }
190
+
191
+ getCollectTarget() {}
192
+
142
193
  collect(value?: any) {
143
194
  if (this.skipCollection) {
144
195
  return
@@ -146,10 +197,13 @@ export class ArgsClass<
146
197
  const collectArgs =
147
198
  value !== undefined ? new ArgsClass({ value }, this) : this
148
199
 
200
+ // this is prob still wrong
201
+ let collectTarget = this.prev
202
+
149
203
  if (this._collectOverride) {
150
- this.collectedCommands.push(this._collectOverride(collectArgs))
204
+ collectTarget.collectedCommands.push(this._collectOverride(collectArgs))
151
205
  } else {
152
- this.collectedCommands.push(this.root._opts.collect(collectArgs))
206
+ collectTarget.collectedCommands.push(this.root._opts.collect(collectArgs))
153
207
  }
154
208
  }
155
209