hadron-document 7.12.0 → 7.13.0

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,5 +1,5 @@
1
1
  import type { Element } from './element';
2
- import { LinkedList } from './element';
2
+ import { ElementList } from './element';
3
3
  import EventEmitter from 'eventemitter3';
4
4
  import type { ObjectGeneratorOptions } from './object-generator';
5
5
  import type { BSONObject, BSONValue } from './utils';
@@ -12,7 +12,7 @@ export declare class Document extends EventEmitter {
12
12
  doc: BSONObject;
13
13
  cloned: boolean;
14
14
  isUpdatable: boolean;
15
- elements: LinkedList;
15
+ elements: ElementList;
16
16
  type: 'Document';
17
17
  currentType: 'Document';
18
18
  cancel(): void;
@@ -38,13 +38,12 @@ export declare class Document extends EventEmitter {
38
38
  insertPlaceholder(): Element;
39
39
  insertBeginning(key: string | number, value: BSONValue): Element;
40
40
  insertEnd(key: string | number, value: BSONValue): Element;
41
- insertAfter(element: Element, key: string | number, value: BSONValue): Element;
41
+ insertAfter(element: Element, key: string | number, value: BSONValue): Element | undefined;
42
42
  isAdded(): boolean;
43
43
  isModified(): boolean;
44
44
  isRemoved(): boolean;
45
45
  isRoot(): this is Document;
46
- next(): void;
47
- _generateElements(): LinkedList;
46
+ _generateElements(): ElementList;
48
47
  static get Events(): typeof Events;
49
48
  static FromEJSON(input: string): Document;
50
49
  static FromEJSONArray(input: string): Document[];
@@ -1 +1 @@
1
- {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,UAAU,EAA2B,MAAM,WAAW,CAAC;AAChE,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAKlD,eAAO,MAAM,MAAM;;CAElB,CAAC;AAUF,qBAAa,QAAS,SAAQ,YAAY;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,UAAU,CAAC;IACrB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,UAAU,CAAC;IAKxB,MAAM,IAAI,IAAI;gBAeF,GAAG,EAAE,UAAU,EAAE,MAAM,UAAQ;IAW3C,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,QAAQ,GAAG,IAAI;IA6BvC,cAAc,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,UAAU;IAS5D,sBAAsB,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,UAAU;IAepE,4CAA4C,CAC1C,iBAAiB,GAAE,UAAU,GAAG,IAAW,GAC1C;QACD,KAAK,EAAE,UAAU,CAAC;QAClB,SAAS,EAAE;YAAE,IAAI,CAAC,EAAE,UAAU,CAAC;YAAC,MAAM,CAAC,EAAE,UAAU,CAAA;SAAE,CAAC;KACvD;IAqCD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAWrC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,GAAG,SAAS;IAwBxD,KAAK,IAAI,SAAS;IAgBlB,gDAAgD,CAC9C,iBAAiB,GAAE,UAAU,GAAG,IAAW,GAC1C,UAAU;IAmCb,wCAAwC,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;IAsBtE,8BAA8B,IAAI,UAAU;IA6B5C,WAAW,IAAI,IAAI,GAAG,MAAM;IAmB5B,gCAAgC,IAAI,UAAU;IAsB9C,iBAAiB,IAAI,OAAO;IAY5B,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;IAchE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;IAe1D,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,KAAK,EAAE,SAAS,GACf,OAAO;IAiBV,OAAO,IAAI,OAAO;IASlB,UAAU,IAAI,OAAO;IAcrB,SAAS,IAAI,OAAO;IASpB,MAAM,IAAI,IAAI,IAAI,QAAQ;IAO1B,IAAI,IAAI,IAAI;IAmBZ,iBAAiB,IAAI,UAAU;IAO/B,MAAM,KAAK,MAAM,IAAI,OAAO,MAAM,CAEjC;IAKD,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAWzC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAUhD,OAAO,CACL,MAAM,GAAE,UAAU,GAAG,SAAqB,EAC1C,OAAO,GAAE,kBAAuB,GAC/B,MAAM;CAOV;AAED,eAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,EAAE,WAAW,EAA2B,MAAM,WAAW,CAAC;AACjE,OAAO,YAAY,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAErD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAKlD,eAAO,MAAM,MAAM;;CAElB,CAAC;AAUF,qBAAa,QAAS,SAAQ,YAAY;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,UAAU,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,WAAW,CAAC;IACtB,IAAI,EAAE,UAAU,CAAC;IACjB,WAAW,EAAE,UAAU,CAAC;IAKxB,MAAM,IAAI,IAAI;gBAeF,GAAG,EAAE,UAAU,EAAE,MAAM,UAAQ;IAW3C,KAAK,CAAC,GAAG,EAAE,UAAU,GAAG,QAAQ,GAAG,IAAI;IA6BvC,cAAc,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,UAAU;IAS5D,sBAAsB,CAAC,OAAO,CAAC,EAAE,sBAAsB,GAAG,UAAU;IAepE,4CAA4C,CAC1C,iBAAiB,GAAE,UAAU,GAAG,IAAW,GAC1C;QACD,KAAK,EAAE,UAAU,CAAC;QAClB,SAAS,EAAE;YAAE,IAAI,CAAC,EAAE,UAAU,CAAC;YAAC,MAAM,CAAC,EAAE,UAAU,CAAA;SAAE,CAAC;KACvD;IAqCD,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,GAAG,SAAS;IAWrC,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,OAAO,GAAG,SAAS;IAwBxD,KAAK,IAAI,SAAS;IAgBlB,gDAAgD,CAC9C,iBAAiB,GAAE,UAAU,GAAG,IAAW,GAC1C,UAAU;IAmCb,wCAAwC,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;IAsBtE,8BAA8B,IAAI,UAAU;IA6B5C,WAAW,IAAI,IAAI,GAAG,MAAM;IAmB5B,gCAAgC,IAAI,UAAU;IAsB9C,iBAAiB,IAAI,OAAO;IAY5B,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;IAchE,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,KAAK,EAAE,SAAS,GAAG,OAAO;IAe1D,WAAW,CACT,OAAO,EAAE,OAAO,EAChB,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,KAAK,EAAE,SAAS,GACf,OAAO,GAAG,SAAS;IAWtB,OAAO,IAAI,OAAO;IASlB,UAAU,IAAI,OAAO;IAcrB,SAAS,IAAI,OAAO;IASpB,MAAM,IAAI,IAAI,IAAI,QAAQ;IAS1B,iBAAiB,IAAI,WAAW;IAOhC,MAAM,KAAK,MAAM,IAAI,OAAO,MAAM,CAEjC;IAKD,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ;IAWzC,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,EAAE;IAUhD,OAAO,CACL,MAAM,GAAE,UAAU,GAAG,SAAqB,EAC1C,OAAO,GAAE,kBAAuB,GAC/B,MAAM;CAOV;AAED,eAAe,QAAQ,CAAC"}
package/dist/document.js CHANGED
@@ -20,9 +20,9 @@ class Document extends eventemitter3_1.default {
20
20
  this.doc = doc;
21
21
  this.cloned = cloned || false;
22
22
  this.isUpdatable = true;
23
- this.elements = this._generateElements();
24
23
  this.type = 'Document';
25
24
  this.currentType = 'Document';
25
+ this.elements = this._generateElements();
26
26
  }
27
27
  cancel() {
28
28
  for (const element of Array.from(this.elements)) {
@@ -174,18 +174,18 @@ class Document extends eventemitter3_1.default {
174
174
  return this.insertEnd('', '');
175
175
  }
176
176
  insertBeginning(key, value) {
177
- const newElement = this.elements.insertBeginning(key, value, true, this);
177
+ const newElement = this.elements.insertBeginning(key, value);
178
178
  newElement._bubbleUp(element_1.Events.Added, newElement, this);
179
179
  return newElement;
180
180
  }
181
181
  insertEnd(key, value) {
182
- const newElement = this.elements.insertEnd(key, value, true, this);
182
+ const newElement = this.elements.insertEnd(key, value);
183
183
  newElement._bubbleUp(element_1.Events.Added, newElement, this);
184
184
  return newElement;
185
185
  }
186
186
  insertAfter(element, key, value) {
187
- const newElement = this.elements.insertAfter(element, key, value, true, this);
188
- newElement._bubbleUp(element_1.Events.Added, newElement, this);
187
+ const newElement = this.elements.insertAfter(element, key, value);
188
+ newElement === null || newElement === void 0 ? void 0 : newElement._bubbleUp(element_1.Events.Added, newElement, this);
189
189
  return newElement;
190
190
  }
191
191
  isAdded() {
@@ -205,23 +205,8 @@ class Document extends eventemitter3_1.default {
205
205
  isRoot() {
206
206
  return true;
207
207
  }
208
- next() {
209
- this.elements.flush();
210
- const lastElement = this.elements.lastElement;
211
- if (lastElement && lastElement.isAdded()) {
212
- if (lastElement.isBlank()) {
213
- lastElement.remove();
214
- }
215
- else {
216
- this.insertPlaceholder();
217
- }
218
- }
219
- else {
220
- this.insertPlaceholder();
221
- }
222
- }
223
208
  _generateElements() {
224
- return new element_1.LinkedList(this, this.doc);
209
+ return new element_1.ElementList(this, this.doc);
225
210
  }
226
211
  static get Events() {
227
212
  return exports.Events;
@@ -1 +1 @@
1
- {"version":3,"file":"document.js","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"document.js","sourceRoot":"","sources":["../src/document.ts"],"names":[],"mappings":"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"}
package/dist/element.d.ts CHANGED
@@ -16,11 +16,9 @@ export declare class Element extends EventEmitter {
16
16
  currentValue: BSONValue;
17
17
  added: boolean;
18
18
  removed: boolean;
19
- elements?: LinkedList | null;
19
+ elements?: ElementList;
20
20
  originalExpandableValue?: BSONObject | BSONArray;
21
21
  parent: Element | Document | null;
22
- previousElement: Element | null;
23
- nextElement: Element | null;
24
22
  type: TypeCastTypes;
25
23
  currentType: TypeCastTypes;
26
24
  level: number;
@@ -28,14 +26,15 @@ export declare class Element extends EventEmitter {
28
26
  invalidTypeMessage?: string;
29
27
  decrypted: boolean;
30
28
  cancel(): void;
31
- constructor(key: string | number, value: BSONValue, added?: boolean, parent?: Element | Document | null, previousElement?: Element | null, nextElement?: Element | null);
29
+ constructor(key: string | number, value: BSONValue | number, parent?: Element | Document | null, added?: boolean);
30
+ get nextElement(): Element | undefined;
31
+ get previousElement(): Element | undefined;
32
32
  _getLevel(): number;
33
33
  edit(value: BSONValue): void;
34
34
  changeType(newType: TypeCastTypes): void;
35
35
  getRoot(): Document;
36
36
  get(key: string | number): Element | undefined;
37
37
  at(i: number): Element | undefined;
38
- next(): void;
39
38
  rename(key: string | number): void;
40
39
  generateObject(options?: ObjectGeneratorOptions): BSONValue;
41
40
  generateOriginalObject(options?: ObjectGeneratorOptions): BSONValue;
@@ -72,43 +71,30 @@ export declare class Element extends EventEmitter {
72
71
  _bubbleUp(evt: typeof Events[keyof typeof Events], ...data: BSONArray): void;
73
72
  _convertToEmptyObject(): void;
74
73
  _convertToEmptyArray(): void;
75
- _isElementEmpty(this: unknown, element: Element | undefined | null): boolean;
76
- _isExpandable(this: unknown, value: BSONValue): value is BSONObject | BSONArray;
77
- _generateElements(object: BSONObject | BSONArray): LinkedList;
78
- _key(key: string, index: number): string | number;
79
- _next(): void;
74
+ _isElementEmpty(element: Element | undefined | null): boolean;
75
+ _isExpandable(value: BSONValue): value is BSONObject | BSONArray;
76
+ _generateElements(object: BSONObject | BSONArray): ElementList;
80
77
  _removeAddedElements(): void;
81
78
  static get Events(): typeof ElementEvents;
82
79
  }
83
- export declare class LinkedList {
84
- firstElement: Element | null;
85
- lastElement: Element | null;
86
- doc: Element | Document;
87
- originalDoc: BSONObject | BSONArray;
88
- keys: string[] | number[];
89
- size: number;
90
- loaded: number;
91
- _map: Record<string, Element>;
80
+ export declare class ElementList implements Iterable<Element> {
81
+ private parent;
82
+ private elements;
83
+ constructor(parent: Document | Element, originalDoc: BSONObject | BSONArray | null | undefined);
84
+ private isArray;
85
+ get size(): number;
92
86
  at(index: number): Element | undefined;
93
87
  get(key: string | number): Element | undefined;
94
- constructor(doc: Document | Element, originalDoc: BSONObject | BSONArray);
95
- insertAfter(element: Element, key: string | number, value: BSONValue, added: boolean, parent: Element | Document): Element;
96
- updateKeys(element: Element, add: number): void;
97
- handleEmptyKeys(element: Element): void;
98
- insertBefore(element: Element, key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
99
- insertBeginning(key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
100
- insertEnd(key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
101
- flush(): void;
88
+ get firstElement(): Element | undefined;
89
+ get lastElement(): Element | undefined;
90
+ insertAfter(afterElement: Element, key: string | number, value: BSONValue, added?: boolean): Element | undefined;
91
+ insertBefore(beforeElement: Element, key: string | number, value: BSONValue, added?: boolean): Element | undefined;
92
+ insertBeginning(key: string | number, value: BSONValue, added?: boolean): Element;
93
+ insertEnd(key: string | number, value: BSONValue, added?: boolean): Element;
94
+ remove(removeElement: Element): this;
95
+ findNext(el: Element): Element | undefined;
96
+ findPrevious(el: Element): Element | undefined;
102
97
  [Symbol.iterator](): Iterator<Element>;
103
- _needsLazyLoad(index: number): boolean;
104
- _needsStandardIteration(index: number): boolean;
105
- _lazyInsertEnd(key: string | number): Element;
106
- _insertEnd(key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
107
- _insertBefore(element: Element, key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
108
- _insertBeginning(key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
109
- _insertAfter(element: Element, key: string | number, value: BSONValue, added: boolean, parent: Document | Element): Element;
110
- remove(element: Element): this;
111
- findIndex(el: Element): number;
112
98
  }
113
99
  export default Element;
114
100
  //# sourceMappingURL=element.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.d.ts","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"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"}
package/dist/element.js CHANGED
@@ -3,9 +3,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.LinkedList = exports.Element = exports.isInternalFieldPath = exports.Events = exports.DATE_FORMAT = void 0;
6
+ exports.ElementList = exports.Element = exports.isInternalFieldPath = exports.Events = exports.DATE_FORMAT = void 0;
7
7
  const eventemitter3_1 = __importDefault(require("eventemitter3"));
8
- const lodash_keys_1 = __importDefault(require("lodash.keys"));
9
8
  const lodash_isplainobject_1 = __importDefault(require("lodash.isplainobject"));
10
9
  const lodash_isarray_1 = __importDefault(require("lodash.isarray"));
11
10
  const lodash_isequal_1 = __importDefault(require("lodash.isequal"));
@@ -34,26 +33,25 @@ const UNEDITABLE_TYPES = [
34
33
  'Null',
35
34
  'DBRef',
36
35
  ];
37
- const CURLY = '{';
38
- const BRACKET = '[';
39
36
  class Element extends eventemitter3_1.default {
40
- constructor(key, value, added = false, parent = null, previousElement = null, nextElement = null) {
37
+ constructor(key, value, parent = null, added = false) {
41
38
  super();
42
39
  this.uuid = new bson_1.UUID().toHexString();
43
40
  this.key = key;
44
41
  this.currentKey = key;
45
42
  this.parent = parent;
46
- this.previousElement = previousElement;
47
- this.nextElement = nextElement;
48
43
  this.added = added;
49
44
  this.removed = false;
50
45
  this.type = hadron_type_checker_1.default.type(value);
51
46
  this.currentType = this.type;
52
47
  this.level = this._getLevel();
53
48
  this.setValid();
49
+ if (typeof value === 'number') {
50
+ value = hadron_type_checker_1.default.cast(value, hadron_type_checker_1.default.type(value));
51
+ }
54
52
  if (this._isExpandable(value)) {
55
- this.elements = this._generateElements(value);
56
53
  this.originalExpandableValue = value;
54
+ this.elements = this._generateElements(value);
57
55
  }
58
56
  else {
59
57
  this.value = value;
@@ -80,6 +78,14 @@ class Element extends eventemitter3_1.default {
80
78
  this.revert();
81
79
  }
82
80
  }
81
+ get nextElement() {
82
+ var _a, _b;
83
+ return (_b = (_a = this.parent) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.findNext(this);
84
+ }
85
+ get previousElement() {
86
+ var _a, _b;
87
+ return (_b = (_a = this.parent) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.findPrevious(this);
88
+ }
83
89
  _getLevel() {
84
90
  let level = -1;
85
91
  let parent = this.parent;
@@ -107,12 +113,10 @@ class Element extends eventemitter3_1.default {
107
113
  }
108
114
  changeType(newType) {
109
115
  if (newType === 'Object') {
110
- this.edit('{');
111
- this.next();
116
+ this._convertToEmptyObject();
112
117
  }
113
118
  else if (newType === 'Array') {
114
- this.edit('[');
115
- this.next();
119
+ this._convertToEmptyArray();
116
120
  }
117
121
  else {
118
122
  try {
@@ -131,9 +135,8 @@ class Element extends eventemitter3_1.default {
131
135
  }
132
136
  }
133
137
  getRoot() {
134
- var _a;
135
138
  let parent = this.parent;
136
- while ((_a = parent) === null || _a === void 0 ? void 0 : _a.parent) {
139
+ while (parent === null || parent === void 0 ? void 0 : parent.parent) {
137
140
  parent = parent.parent;
138
141
  }
139
142
  return parent;
@@ -146,21 +149,7 @@ class Element extends eventemitter3_1.default {
146
149
  var _a;
147
150
  return (_a = this.elements) === null || _a === void 0 ? void 0 : _a.at(i);
148
151
  }
149
- next() {
150
- if (this.currentValue === CURLY) {
151
- return this._convertToEmptyObject();
152
- }
153
- else if (this.currentValue === BRACKET) {
154
- return this._convertToEmptyArray();
155
- }
156
- return this._next();
157
- }
158
152
  rename(key) {
159
- if (this.parent) {
160
- const elm = this.parent.elements._map[this.currentKey];
161
- delete this.parent.elements._map[this.currentKey];
162
- this.parent.elements._map[key] = elm;
163
- }
164
153
  this.currentKey = key;
165
154
  this._bubbleUp(element_events_1.default.Edited, this);
166
155
  }
@@ -188,16 +177,7 @@ class Element extends eventemitter3_1.default {
188
177
  if (!this.elements) {
189
178
  throw new Error('Cannot insert values on non-array/non-object elements');
190
179
  }
191
- if (this.currentType === 'Array') {
192
- if (element.currentKey === '') {
193
- this.elements.handleEmptyKeys(element);
194
- }
195
- key = element.currentKey + 1;
196
- }
197
- const newElement = this.elements.insertAfter(element, key, value, true, this);
198
- if (this.currentType === 'Array') {
199
- this.elements.updateKeys(newElement, 1);
200
- }
180
+ const newElement = this.elements.insertAfter(element, key, value);
201
181
  newElement._bubbleUp(element_events_1.default.Added, newElement, this);
202
182
  return newElement;
203
183
  }
@@ -205,17 +185,7 @@ class Element extends eventemitter3_1.default {
205
185
  if (!this.elements) {
206
186
  throw new Error('Cannot insert values on non-array/non-object elements');
207
187
  }
208
- if (this.currentType === 'Array') {
209
- this.elements.flush();
210
- key = 0;
211
- if (this.elements.lastElement) {
212
- if (this.elements.lastElement.currentKey === '') {
213
- this.elements.handleEmptyKeys(this.elements.lastElement);
214
- }
215
- key = this.elements.lastElement.currentKey + 1;
216
- }
217
- }
218
- const newElement = this.elements.insertEnd(key, value, true, this);
188
+ const newElement = this.elements.insertEnd(key, value, true);
219
189
  this._bubbleUp(element_events_1.default.Added, newElement);
220
190
  return newElement;
221
191
  }
@@ -336,8 +306,9 @@ class Element extends eventemitter3_1.default {
336
306
  return this._isKeyLegallyEditable() && !this.containsDecryptedChildren();
337
307
  }
338
308
  isInternalField() {
339
- if (!this.parent)
309
+ if (!this.parent) {
340
310
  return false;
311
+ }
341
312
  if (!this.parent.isRoot() && this.parent.isInternalField()) {
342
313
  return true;
343
314
  }
@@ -370,14 +341,10 @@ class Element extends eventemitter3_1.default {
370
341
  }
371
342
  }
372
343
  revert() {
373
- var _a;
374
344
  if (this.isAdded()) {
375
- if (((_a = this.parent) === null || _a === void 0 ? void 0 : _a.currentType) === 'Array') {
376
- this.parent.elements.updateKeys(this, -1);
377
- }
378
345
  this.parent.elements.remove(this);
379
346
  this._bubbleUp(element_events_1.default.Removed, this, this.parent);
380
- this.parent = null;
347
+ delete this.parent;
381
348
  }
382
349
  else {
383
350
  if (this.originalExpandableValue) {
@@ -386,7 +353,7 @@ class Element extends eventemitter3_1.default {
386
353
  }
387
354
  else {
388
355
  if (this.currentValue === null && this.value !== null) {
389
- this.elements = null;
356
+ delete this.elements;
390
357
  }
391
358
  else {
392
359
  this._removeAddedElements();
@@ -427,16 +394,7 @@ class Element extends eventemitter3_1.default {
427
394
  return (0, lodash_isplainobject_1.default)(value) || (0, lodash_isarray_1.default)(value);
428
395
  }
429
396
  _generateElements(object) {
430
- return new LinkedList(this, object);
431
- }
432
- _key(key, index) {
433
- return this.currentType === 'Array' ? index : key;
434
- }
435
- _next() {
436
- if (!this._isElementEmpty(this.nextElement) &&
437
- !this._isElementEmpty(this)) {
438
- this.parent.insertAfter(this, '', '');
439
- }
397
+ return new ElementList(this, object);
440
398
  }
441
399
  _removeAddedElements() {
442
400
  if (this.elements) {
@@ -452,209 +410,111 @@ class Element extends eventemitter3_1.default {
452
410
  }
453
411
  }
454
412
  exports.Element = Element;
455
- class LinkedList {
456
- constructor(doc, originalDoc) {
457
- this.firstElement = null;
458
- this.lastElement = null;
459
- this.doc = doc;
460
- this.originalDoc = originalDoc;
461
- this.keys = (0, lodash_keys_1.default)(this.originalDoc);
462
- if (this.doc.currentType === 'Array') {
463
- this.keys = this.keys.map((k) => parseInt(k, 10));
464
- }
465
- this.size = this.keys.length;
466
- this.loaded = 0;
467
- this._map = {};
413
+ class ElementList {
414
+ constructor(parent, originalDoc) {
415
+ this.parent = parent;
416
+ this.elements = Object.entries(originalDoc !== null && originalDoc !== void 0 ? originalDoc : {}).map(([k, v]) => {
417
+ return new Element(this.isArray() ? parseInt(k, 10) : k, v, parent, parent.isRoot() ? parent.cloned : false);
418
+ });
419
+ }
420
+ isArray() {
421
+ return this.parent.currentType === 'Array';
422
+ }
423
+ get size() {
424
+ return this.elements.length;
468
425
  }
469
426
  at(index) {
470
- this.flush();
471
- if (!Number.isInteger(index)) {
472
- return undefined;
473
- }
474
- let element = this.firstElement;
475
- for (let i = 0; i < index; i++) {
476
- if (!element) {
477
- return undefined;
478
- }
479
- element = element.nextElement;
480
- }
481
- return element === null ? undefined : element;
427
+ return this.elements[index];
482
428
  }
483
429
  get(key) {
484
- this.flush();
485
- return this._map[key];
486
- }
487
- insertAfter(element, key, value, added, parent) {
488
- this.flush();
489
- return this._insertAfter(element, key, value, added, parent);
490
- }
491
- updateKeys(element, add) {
492
- this.flush();
493
- while (element.nextElement) {
494
- element.nextElement.currentKey += add;
495
- element = element.nextElement;
496
- }
497
- }
498
- handleEmptyKeys(element) {
499
- if (element.currentKey === '') {
500
- let e = element;
501
- while (e.currentKey === '') {
502
- if (!e.previousElement) {
503
- e.currentKey = 0;
504
- break;
505
- }
506
- else {
507
- e = e.previousElement;
508
- }
430
+ return this.elements.find((el) => {
431
+ return el.currentKey === key;
432
+ });
433
+ }
434
+ get firstElement() {
435
+ return this.elements[0];
436
+ }
437
+ get lastElement() {
438
+ return this.elements[this.elements.length - 1];
439
+ }
440
+ insertAfter(afterElement, key, value, added = true) {
441
+ let newElement;
442
+ let newElementIdx = -1;
443
+ for (const [idx, el] of this.elements.entries()) {
444
+ if (afterElement === el) {
445
+ newElementIdx = idx + 1;
446
+ newElement = new Element(this.isArray() ? newElementIdx : key, value, this.parent, added);
447
+ continue;
509
448
  }
510
- while (e.nextElement) {
511
- e.nextElement.currentKey = e.currentKey + 1;
512
- e = e.nextElement;
449
+ if (newElement && this.isArray()) {
450
+ el.currentKey = idx + 1;
513
451
  }
514
452
  }
515
- }
516
- insertBefore(element, key, value, added, parent) {
517
- this.flush();
518
- return this._insertBefore(element, key, value, added, parent);
519
- }
520
- insertBeginning(key, value, added, parent) {
521
- this.flush();
522
- return this._insertBeginning(key, value, added, parent);
523
- }
524
- insertEnd(key, value, added, parent) {
525
- this.flush();
526
- if (!this.lastElement) {
527
- return this.insertBeginning(key, value, added, parent);
528
- }
529
- return this.insertAfter(this.lastElement, key, value, added, parent);
530
- }
531
- flush() {
532
- var _a;
533
- if (this.loaded < this.size) {
534
- for (const element of this) {
535
- (_a = element === null || element === void 0 ? void 0 : element.elements) === null || _a === void 0 ? void 0 : _a.flush();
536
- }
453
+ if (newElement) {
454
+ this.elements.splice(newElementIdx, 0, newElement);
537
455
  }
456
+ return newElement;
538
457
  }
539
- *[Symbol.iterator]() {
540
- let currentElement;
541
- let index = 0;
542
- while (true) {
543
- if (this._needsLazyLoad(index)) {
544
- const key = this.keys[index];
545
- index += 1;
546
- currentElement = this._lazyInsertEnd(key);
547
- yield currentElement;
458
+ insertBefore(beforeElement, key, value, added = true) {
459
+ let newElement;
460
+ let newElementIdx = -1;
461
+ for (const [idx, el] of this.elements.entries()) {
462
+ if (beforeElement === el) {
463
+ newElementIdx = idx;
464
+ newElement = new Element(this.isArray() ? newElementIdx : key, value, this.parent, added);
548
465
  }
549
- else if (this._needsStandardIteration(index)) {
550
- if (currentElement) {
551
- currentElement = currentElement.nextElement;
552
- }
553
- else {
554
- currentElement = this.firstElement;
555
- }
556
- if (currentElement) {
557
- index += 1;
558
- yield currentElement;
559
- }
560
- else {
561
- break;
562
- }
563
- }
564
- else {
565
- break;
466
+ if (newElement && this.isArray()) {
467
+ el.currentKey = idx + 1;
566
468
  }
567
469
  }
568
- }
569
- _needsLazyLoad(index) {
570
- return ((index === 0 && this.loaded === 0 && this.size > 0) ||
571
- (this.loaded <= index && index < this.size));
572
- }
573
- _needsStandardIteration(index) {
574
- return this.loaded > 0 && index < this.loaded && index < this.size;
575
- }
576
- _lazyInsertEnd(key) {
577
- this.size -= 1;
578
- return this._insertEnd(key, this.originalDoc[key], this.doc.cloned, this.doc);
579
- }
580
- _insertEnd(key, value, added, parent) {
581
- if (!this.lastElement) {
582
- return this._insertBeginning(key, value, added, parent);
583
- }
584
- return this._insertAfter(this.lastElement, key, value, added, parent);
585
- }
586
- _insertBefore(element, key, value, added, parent) {
587
- const newElement = new Element(key, value, added, parent, element.previousElement, element);
588
- if (element.previousElement) {
589
- element.previousElement.nextElement = newElement;
470
+ if (newElement) {
471
+ this.elements.splice(newElementIdx, 0, newElement);
590
472
  }
591
- else {
592
- this.firstElement = newElement;
593
- }
594
- element.previousElement = newElement;
595
- this._map[newElement.key] = newElement;
596
- this.size += 1;
597
- this.loaded += 1;
598
473
  return newElement;
599
474
  }
600
- _insertBeginning(key, value, added, parent) {
601
- if (!this.firstElement) {
602
- const element = new Element(key, value, added, parent, null, null);
603
- this.firstElement = this.lastElement = element;
604
- this.size += 1;
605
- this.loaded += 1;
606
- this._map[element.key] = element;
607
- return element;
608
- }
609
- const newElement = this.insertBefore(this.firstElement, key, value, added, parent);
610
- this._map[newElement.key] = newElement;
475
+ insertBeginning(key, value, added = true) {
476
+ const newElement = new Element(this.isArray() ? 0 : key, value, this.parent, added);
477
+ if (this.isArray()) {
478
+ this.elements.forEach((el) => {
479
+ el.currentKey += 1;
480
+ });
481
+ }
482
+ this.elements.unshift(newElement);
611
483
  return newElement;
612
484
  }
613
- _insertAfter(element, key, value, added, parent) {
614
- const newElement = new Element(key, value, added, parent, element, element.nextElement);
615
- if (element.nextElement) {
616
- element.nextElement.previousElement = newElement;
617
- }
618
- else {
619
- this.lastElement = newElement;
620
- }
621
- element.nextElement = newElement;
622
- this._map[newElement.key] = newElement;
623
- this.size += 1;
624
- this.loaded += 1;
485
+ insertEnd(key, value, added = true) {
486
+ const newElement = new Element(this.isArray() ? this.elements.length : key, value, this.parent, added);
487
+ this.elements.push(newElement);
625
488
  return newElement;
626
489
  }
627
- remove(element) {
628
- this.flush();
629
- if (element.previousElement) {
630
- element.previousElement.nextElement = element.nextElement;
631
- }
632
- else {
633
- this.firstElement = element.nextElement;
490
+ remove(removeElement) {
491
+ let removeIdx = -1;
492
+ for (const [idx, el] of this.elements.entries()) {
493
+ if (el === removeElement) {
494
+ removeIdx = idx;
495
+ continue;
496
+ }
497
+ if (removeIdx !== -1 && this.isArray()) {
498
+ el.currentKey -= 1;
499
+ }
634
500
  }
635
- if (element.nextElement) {
636
- element.nextElement.previousElement = element.previousElement;
501
+ if (removeIdx !== -1) {
502
+ this.elements.splice(removeIdx, 1);
637
503
  }
638
- else {
639
- this.lastElement = element.previousElement;
640
- }
641
- element.nextElement = element.previousElement = null;
642
- delete this._map[element.currentKey];
643
- this.size -= 1;
644
- this.loaded -= 1;
645
504
  return this;
646
505
  }
647
- findIndex(el) {
648
- let idx = 0;
649
- for (const item of this) {
650
- if (item === el) {
651
- return idx;
652
- }
653
- idx++;
654
- }
655
- return -1;
506
+ findNext(el) {
507
+ const idx = this.elements.indexOf(el);
508
+ return idx !== -1 ? this.elements[idx + 1] : undefined;
509
+ }
510
+ findPrevious(el) {
511
+ const idx = this.elements.indexOf(el);
512
+ return idx !== -1 ? this.elements[idx - 1] : undefined;
513
+ }
514
+ *[Symbol.iterator]() {
515
+ yield* this.elements;
656
516
  }
657
517
  }
658
- exports.LinkedList = LinkedList;
518
+ exports.ElementList = ElementList;
659
519
  exports.default = Element;
660
520
  //# sourceMappingURL=element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../src/element.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,7 +1,11 @@
1
1
  "use strict";
2
2
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
3
  if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
5
9
  }) : (function(o, m, k, k2) {
6
10
  if (k2 === undefined) k2 = k;
7
11
  o[k2] = m[k];
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAgE;AAW9D,mBAXK,kBAAQ,CAWL;AACR,+FAZ2B,iBAAc,OAY3B;AAXhB,qDAGmB;AASjB,kBAZK,iBAAO,CAYL;AACP,8FAZU,gBAAa,OAYV;AAEb,oGAbA,6BAAmB,OAaA;AAXrB,sDAAqC;AAUnC,wBAVK,gBAAa,CAUL;AAPf,kBAAe,kBAAQ,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uDAAgE;AAW9D,mBAXK,kBAAQ,CAWL;AACR,+FAZ2B,iBAAc,OAY3B;AAXhB,qDAGmB;AASjB,kBAZK,iBAAO,CAYL;AACP,8FAZU,gBAAa,OAYV;AAEb,oGAbA,6BAAmB,OAaA;AAXrB,sDAAqC;AAUnC,wBAVK,gBAAa,CAUL;AAPf,kBAAe,kBAAQ,CAAC"}
package/package.json CHANGED
@@ -7,7 +7,7 @@
7
7
  "email": "compass@mongodb.com"
8
8
  },
9
9
  "homepage": "https://github.com/mongodb-js/compass",
10
- "version": "7.12.0",
10
+ "version": "7.13.0",
11
11
  "repository": {
12
12
  "type": "git",
13
13
  "url": "https://github.com/mongodb-js/compass.git"
@@ -52,30 +52,29 @@
52
52
  "bson": "^4.4.1",
53
53
  "debug": "4.3.0",
54
54
  "eventemitter3": "^4.0.0",
55
- "hadron-type-checker": "^6.9.0",
55
+ "hadron-type-checker": "^6.10.0",
56
56
  "lodash.foreach": "^4.5.0",
57
57
  "lodash.isarray": "^4.0.0",
58
58
  "lodash.isequal": "^4.5.0",
59
59
  "lodash.isplainobject": "^4.0.6",
60
- "lodash.isstring": "^4.0.1",
61
- "lodash.keys": "^4.2.0"
60
+ "lodash.isstring": "^4.0.1"
62
61
  },
63
62
  "devDependencies": {
64
- "@mongodb-js/eslint-config-compass": "^0.10.0",
65
- "@mongodb-js/mocha-config-compass": "^0.11.0",
66
- "@mongodb-js/prettier-config-compass": "^0.5.0",
67
- "@mongodb-js/tsconfig-compass": "^0.6.0",
63
+ "@mongodb-js/eslint-config-compass": "^0.11.0",
64
+ "@mongodb-js/mocha-config-compass": "^0.12.0",
65
+ "@mongodb-js/prettier-config-compass": "^0.6.0",
66
+ "@mongodb-js/tsconfig-compass": "^0.7.0",
68
67
  "@types/lodash.isarray": "^4.0.6",
69
68
  "@types/lodash.isequal": "^4.5.5",
70
69
  "@types/lodash.isplainobject": "^4.0.6",
71
70
  "@types/lodash.isstring": "^4.0.6",
72
- "@types/lodash.keys": "^4.2.6",
73
71
  "chai": "^4.2.0",
74
72
  "depcheck": "^1.4.1",
75
73
  "eslint": "^7.25.0",
76
74
  "eslint-config-mongodb-js": "^5.0.3",
77
75
  "mocha": "^7.0.1",
78
- "moment": "^2.27.0"
76
+ "moment": "^2.27.0",
77
+ "prettier": "^2.7.1"
79
78
  },
80
- "gitHead": "a4e705ec6d13393d2e14e906838bb67548e7ae35"
79
+ "gitHead": "9f5498524c3e50d351f6f36fb015ff14163a39cf"
81
80
  }