hadron-document 8.6.2 → 8.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.
Files changed (61) hide show
  1. package/dist/document.d.ts +152 -0
  2. package/dist/document.d.ts.map +1 -1
  3. package/dist/document.js +161 -0
  4. package/dist/document.js.map +1 -1
  5. package/dist/editor/date.d.ts +36 -0
  6. package/dist/editor/date.d.ts.map +1 -1
  7. package/dist/editor/date.js +38 -0
  8. package/dist/editor/date.js.map +1 -1
  9. package/dist/editor/decimal128.d.ts +18 -0
  10. package/dist/editor/decimal128.d.ts.map +1 -1
  11. package/dist/editor/decimal128.js +18 -0
  12. package/dist/editor/decimal128.js.map +1 -1
  13. package/dist/editor/double.d.ts +25 -0
  14. package/dist/editor/double.d.ts.map +1 -1
  15. package/dist/editor/double.js +30 -1
  16. package/dist/editor/double.js.map +1 -1
  17. package/dist/editor/int32.d.ts +15 -0
  18. package/dist/editor/int32.d.ts.map +1 -1
  19. package/dist/editor/int32.js +15 -0
  20. package/dist/editor/int32.js.map +1 -1
  21. package/dist/editor/int64.d.ts +18 -0
  22. package/dist/editor/int64.d.ts.map +1 -1
  23. package/dist/editor/int64.js +18 -0
  24. package/dist/editor/int64.js.map +1 -1
  25. package/dist/editor/null.d.ts +20 -0
  26. package/dist/editor/null.d.ts.map +1 -1
  27. package/dist/editor/null.js +23 -0
  28. package/dist/editor/null.js.map +1 -1
  29. package/dist/editor/objectid.d.ts +20 -0
  30. package/dist/editor/objectid.d.ts.map +1 -1
  31. package/dist/editor/objectid.js +20 -0
  32. package/dist/editor/objectid.js.map +1 -1
  33. package/dist/editor/standard.d.ts +32 -0
  34. package/dist/editor/standard.d.ts.map +1 -1
  35. package/dist/editor/standard.js +36 -0
  36. package/dist/editor/standard.js.map +1 -1
  37. package/dist/editor/string.d.ts +8 -0
  38. package/dist/editor/string.d.ts.map +1 -1
  39. package/dist/editor/string.js +8 -0
  40. package/dist/editor/string.js.map +1 -1
  41. package/dist/editor/undefined.d.ts +20 -0
  42. package/dist/editor/undefined.d.ts.map +1 -1
  43. package/dist/editor/undefined.js +23 -0
  44. package/dist/editor/undefined.js.map +1 -1
  45. package/dist/element-events.d.ts +3 -0
  46. package/dist/element-events.d.ts.map +1 -1
  47. package/dist/element-events.js +3 -0
  48. package/dist/element-events.js.map +1 -1
  49. package/dist/element.d.ts +321 -0
  50. package/dist/element.d.ts.map +1 -1
  51. package/dist/element.js +341 -0
  52. package/dist/element.js.map +1 -1
  53. package/dist/object-generator.d.ts +96 -0
  54. package/dist/object-generator.d.ts.map +1 -1
  55. package/dist/object-generator.js +129 -0
  56. package/dist/object-generator.js.map +1 -1
  57. package/dist/utils.d.ts +22 -0
  58. package/dist/utils.d.ts.map +1 -1
  59. package/dist/utils.js +25 -0
  60. package/dist/utils.js.map +1 -1
  61. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/editor/date.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AAEvC,oCAA0C;AAC1C,0DAAwC;AAMxC,MAAqB,UAAW,SAAQ,kBAAc;IAMpD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAMD,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;SACrE;IACH,CAAC;IAOD,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,MAAM,IAAI,GAAG,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC7C,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,cAAc,EAAE;gBACtC,IAAI,CAAC,OAAO,CAAC,UAAU,CACrB,KAAK,EACL,MAAM,EACN,GAAG,MAAM,CAAC,KAAK,CAAC,gCAAgC,CACjD,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACrD;SACF;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SACrE;IACH,CAAC;IASD,IAAI,CAAC,QAAkB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QACxC,IAAI,QAAQ,EAAE;YACZ,OAAO,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACtC,CAAC,CAAC,IAAA,sBAAc,EAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,CAAC,CAAC,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAOD,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;SACnC;IACH,CAAC;IASD,KAAK;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACtD,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;SAC/B;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,eAAe;QAGb,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC,CAAC;QACxD,IAAI;YACF,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;SAClD;QAAC,MAAM;YACN,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;SACrB;IACH,CAAC;CACF;AAnGD,6BAmGC"}
1
+ {"version":3,"file":"date.js","sourceRoot":"","sources":["../../src/editor/date.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AAEvC,oCAA0C;AAC1C,0DAAwC;AAGxC;;GAEG;AACH,MAAqB,UAAW,SAAQ,kBAAc;IACpD;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,MAAM,CAAC,CAAC,CAAC;SACrE;IACH,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,MAAM,IAAI,GAAG,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAC7C,IAAI,IAAI,CAAC,QAAQ,EAAE,KAAK,cAAc,EAAE;gBACtC,IAAI,CAAC,OAAO,CAAC,UAAU,CACrB,KAAK,EACL,MAAM,EACN,GAAG,MAAM,CAAC,KAAK,CAAC,gCAAgC,CACjD,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACrD;SACF;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SACrE;IACH,CAAC;IAED;;;;;;OAMG;IACH,IAAI,CAAC,QAAkB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QACxC,IAAI,QAAQ,EAAE;YACZ,OAAO,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;SAC9B;QACD,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE;YACtC,CAAC,CAAC,IAAA,sBAAc,EAAC,IAAI,CAAC,eAAe,EAAE,CAAC;YACxC,CAAC,CAAC,IAAA,sBAAc,EAAC,KAAK,CAAC,CAAC;IAC5B,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,CAAC;SACnC;IACH,CAAC;IAED;;;;;;OAMG;IACH,KAAK;QACH,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACtD,OAAO,IAAI,CAAC,eAAe,EAAE,CAAC;SAC/B;QACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;IACvB,CAAC;IAED,eAAe;QACb,+DAA+D;QAC/D,wDAAwD;QACxD,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC,CAAC;QACxD,IAAI;YACF,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;SAClD;QAAC,MAAM;YACN,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC;SACrB;IACH,CAAC;CACF;AAnGD,6BAmGC"}
@@ -1,9 +1,27 @@
1
1
  import StandardEditor from './standard';
2
2
  import type Element from '../element';
3
3
  import type { BSONValue } from '../utils';
4
+ /**
5
+ * CRUD editor for decimal128 values.
6
+ */
4
7
  export default class Decimal128Editor extends StandardEditor {
8
+ /**
9
+ * Create the editor with the element.
10
+ *
11
+ * @param {Element} element - The hadron document element.
12
+ */
5
13
  constructor(element: Element);
14
+ /**
15
+ * Complete the decimal128 edit by converting the valid string to a decimal128
16
+ * value or leaving as invalid.
17
+ */
6
18
  complete(): void;
19
+ /**
20
+ * Edit Decimal128 element. Check if the value is a Decimal128 before setting typed
21
+ * up value.
22
+ *
23
+ * @param {Object} value - The new value.
24
+ */
7
25
  edit(value: BSONValue): void;
8
26
  }
9
27
  //# sourceMappingURL=decimal128.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"decimal128.d.ts","sourceRoot":"","sources":["../../src/editor/decimal128.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAK1C,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,cAAc;gBAM9C,OAAO,EAAE,OAAO;IAQ5B,QAAQ,IAAI,IAAI;IAehB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAU7B"}
1
+ {"version":3,"file":"decimal128.d.ts","sourceRoot":"","sources":["../../src/editor/decimal128.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,cAAc;IAC1D;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAShB;;;;;OAKG;IACH,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAU7B"}
@@ -6,16 +6,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const hadron_type_checker_1 = __importDefault(require("hadron-type-checker"));
7
7
  const element_events_1 = __importDefault(require("../element-events"));
8
8
  const standard_1 = __importDefault(require("./standard"));
9
+ /**
10
+ * CRUD editor for decimal128 values.
11
+ */
9
12
  class Decimal128Editor extends standard_1.default {
13
+ /**
14
+ * Create the editor with the element.
15
+ *
16
+ * @param {Element} element - The hadron document element.
17
+ */
10
18
  constructor(element) {
11
19
  super(element);
12
20
  }
21
+ /**
22
+ * Complete the decimal128 edit by converting the valid string to a decimal128
23
+ * value or leaving as invalid.
24
+ */
13
25
  complete() {
14
26
  super.complete();
15
27
  if (this.element.isCurrentTypeValid()) {
16
28
  this.element.edit(hadron_type_checker_1.default.cast(this.element.currentValue, 'Decimal128'));
17
29
  }
18
30
  }
31
+ /**
32
+ * Edit Decimal128 element. Check if the value is a Decimal128 before setting typed
33
+ * up value.
34
+ *
35
+ * @param {Object} value - The new value.
36
+ */
19
37
  edit(value) {
20
38
  try {
21
39
  hadron_type_checker_1.default.cast(value, 'Decimal128');
@@ -1 +1 @@
1
- {"version":3,"file":"decimal128.js","sourceRoot":"","sources":["../../src/editor/decimal128.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AACvC,0DAAwC;AAOxC,MAAqB,gBAAiB,SAAQ,kBAAc;IAM1D,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAMD,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAC1D,CAAC;SACH;IACH,CAAC;IAQD,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACrD;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACzE;IACH,CAAC;CACF;AAvCD,mCAuCC"}
1
+ {"version":3,"file":"decimal128.js","sourceRoot":"","sources":["../../src/editor/decimal128.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AACvC,0DAAwC;AAIxC;;GAEG;AACH,MAAqB,gBAAiB,SAAQ,kBAAc;IAC1D;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,YAAY,CAAC,CAC1D,CAAC;SACH;IACH,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,YAAY,CAAC,CAAC;YACtC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACrD;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACzE;IACH,CAAC;CACF;AAvCD,mCAuCC"}
@@ -1,10 +1,35 @@
1
1
  import type { BSONValue } from '../utils';
2
2
  import StandardEditor from './standard';
3
3
  import type Element from '../element';
4
+ /**
5
+ * CRUD editor for double values.
6
+ */
4
7
  export default class DoubleEditor extends StandardEditor {
8
+ /**
9
+ * Create the editor with the element.
10
+ *
11
+ * @param {Element} element - The hadron document element.
12
+ */
5
13
  constructor(element: Element);
14
+ /**
15
+ * Complete the double edit by converting the valid string to a double
16
+ * value or leaving as invalid.
17
+ */
6
18
  complete(): void;
19
+ /**
20
+ * Edit Double element. Check if the value is a Double before setting tped
21
+ * up value.
22
+ *
23
+ * @param {Object} value - The new value.
24
+ */
7
25
  edit(value: BSONValue): void;
26
+ /**
27
+ * Get the number of characters the value should display.
28
+ *
29
+ * @param {Boolean} editMode - If the element is being edited.
30
+ *
31
+ * @returns {Number} The number of characters.
32
+ */
8
33
  size(): number;
9
34
  }
10
35
  //# sourceMappingURL=double.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"double.d.ts","sourceRoot":"","sources":["../../src/editor/double.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAKtC,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,cAAc;gBAM1C,OAAO,EAAE,OAAO;IAQ5B,QAAQ,IAAI,IAAI;IAahB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IA0B5B,IAAI,IAAI,MAAM;CAWf"}
1
+ {"version":3,"file":"double.d.ts","sourceRoot":"","sources":["../../src/editor/double.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,cAAc;IACtD;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAOhB;;;;;OAKG;IACH,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAmB5B;;;;;;OAMG;IACH,IAAI,IAAI,MAAM;CAWf"}
@@ -7,16 +7,34 @@ const hadron_type_checker_1 = __importDefault(require("hadron-type-checker"));
7
7
  const element_events_1 = __importDefault(require("../element-events"));
8
8
  const utils_1 = require("../utils");
9
9
  const standard_1 = __importDefault(require("./standard"));
10
+ /**
11
+ * CRUD editor for double values.
12
+ */
10
13
  class DoubleEditor extends standard_1.default {
14
+ /**
15
+ * Create the editor with the element.
16
+ *
17
+ * @param {Element} element - The hadron document element.
18
+ */
11
19
  constructor(element) {
12
20
  super(element);
13
21
  }
22
+ /**
23
+ * Complete the double edit by converting the valid string to a double
24
+ * value or leaving as invalid.
25
+ */
14
26
  complete() {
15
27
  super.complete();
16
28
  if (this.element.isCurrentTypeValid()) {
17
29
  this.element.edit(hadron_type_checker_1.default.cast(this.element.currentValue, 'Double'));
18
30
  }
19
31
  }
32
+ /**
33
+ * Edit Double element. Check if the value is a Double before setting tped
34
+ * up value.
35
+ *
36
+ * @param {Object} value - The new value.
37
+ */
20
38
  edit(value) {
21
39
  try {
22
40
  const double = hadron_type_checker_1.default.cast(value, 'Double');
@@ -33,9 +51,20 @@ class DoubleEditor extends standard_1.default {
33
51
  this.element.setInvalid(value, this.element.currentType, error.message);
34
52
  }
35
53
  }
54
+ /**
55
+ * Get the number of characters the value should display.
56
+ *
57
+ * @param {Boolean} editMode - If the element is being edited.
58
+ *
59
+ * @returns {Number} The number of characters.
60
+ */
36
61
  size() {
37
62
  const currentValue = this.element.currentValue;
38
- return (0, utils_1.fieldStringLen)(typeof currentValue.valueOf === 'function'
63
+ return (0, utils_1.fieldStringLen)(
64
+ // Not all values that will be checked here are bson types with a `value`
65
+ // property, using valueOf is a more resilient way of getting the "native"
66
+ // value from `currentValue`
67
+ typeof currentValue.valueOf === 'function'
39
68
  ? currentValue.valueOf()
40
69
  : currentValue);
41
70
  }
@@ -1 +1 @@
1
- {"version":3,"file":"double.js","sourceRoot":"","sources":["../../src/editor/double.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AAEvC,oCAA0C;AAC1C,0DAAwC;AAMxC,MAAqB,YAAa,SAAQ,kBAAc;IAMtD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAMD,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;SAC1E;IACH,CAAC;IAQD,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,MAAM,MAAM,GAAG,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBACvB,IAAI,CAAC,OAAO,CAAC,UAAU,CACrB,KAAK,EACL,QAAQ,EACR,GAAG,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAChD,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACrD;SACF;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACzE;IACH,CAAC;IASD,IAAI;QACF,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC;QACtD,OAAO,IAAA,sBAAc,EAInB,OAAO,YAAY,CAAC,OAAO,KAAK,UAAU;YACxC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE;YACxB,CAAC,CAAC,YAAY,CACjB,CAAC;IACJ,CAAC;CACF;AAhED,+BAgEC"}
1
+ {"version":3,"file":"double.js","sourceRoot":"","sources":["../../src/editor/double.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AAEvC,oCAA0C;AAC1C,0DAAwC;AAGxC;;GAEG;AACH,MAAqB,YAAa,SAAQ,kBAAc;IACtD;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;SAC1E;IACH,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,MAAM,MAAM,GAAG,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;YACjD,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBACvB,IAAI,CAAC,OAAO,CAAC,UAAU,CACrB,KAAK,EACL,QAAQ,EACR,GAAG,MAAM,CAAC,KAAK,CAAC,+BAA+B,CAChD,CAAC;aACH;iBAAM;gBACL,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;gBAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;gBACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;aACrD;SACF;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACzE;IACH,CAAC;IAED;;;;;;OAMG;IACH,IAAI;QACF,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,CAAC,YAAmB,CAAC;QACtD,OAAO,IAAA,sBAAc;QACnB,yEAAyE;QACzE,0EAA0E;QAC1E,4BAA4B;QAC5B,OAAO,YAAY,CAAC,OAAO,KAAK,UAAU;YACxC,CAAC,CAAC,YAAY,CAAC,OAAO,EAAE;YACxB,CAAC,CAAC,YAAY,CACjB,CAAC;IACJ,CAAC;CACF;AAhED,+BAgEC"}
@@ -1,7 +1,22 @@
1
1
  import StandardEditor from './standard';
2
2
  import type Element from '../element';
3
+ /**
4
+ * CRUD editor for int32 values.
5
+ */
3
6
  export default class Int32Editor extends StandardEditor {
7
+ /**
8
+ * Create the editor with the element.
9
+ *
10
+ * @param {Element} element - The hadron document element.
11
+ */
4
12
  constructor(element: Element);
13
+ /**
14
+ * Get the number of characters the value should display.
15
+ *
16
+ * @param {Boolean} editMode - If the element is being edited.
17
+ *
18
+ * @returns {Number} The number of characters.
19
+ */
5
20
  size(): number;
6
21
  }
7
22
  //# sourceMappingURL=int32.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"int32.d.ts","sourceRoot":"","sources":["../../src/editor/int32.ts"],"names":[],"mappings":"AACA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAKtC,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;gBAMzC,OAAO,EAAE,OAAO;IAW5B,IAAI,IAAI,MAAM;CAKf"}
1
+ {"version":3,"file":"int32.d.ts","sourceRoot":"","sources":["../../src/editor/int32.ts"],"names":[],"mappings":"AACA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAEtC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;IACrD;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;;;;OAMG;IACH,IAAI,IAAI,MAAM;CAKf"}
@@ -5,10 +5,25 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const utils_1 = require("../utils");
7
7
  const standard_1 = __importDefault(require("./standard"));
8
+ /**
9
+ * CRUD editor for int32 values.
10
+ */
8
11
  class Int32Editor extends standard_1.default {
12
+ /**
13
+ * Create the editor with the element.
14
+ *
15
+ * @param {Element} element - The hadron document element.
16
+ */
9
17
  constructor(element) {
10
18
  super(element);
11
19
  }
20
+ /**
21
+ * Get the number of characters the value should display.
22
+ *
23
+ * @param {Boolean} editMode - If the element is being edited.
24
+ *
25
+ * @returns {Number} The number of characters.
26
+ */
12
27
  size() {
13
28
  return (0, utils_1.fieldStringLen)(this.element.currentValue.valueOf());
14
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"int32.js","sourceRoot":"","sources":["../../src/editor/int32.ts"],"names":[],"mappings":";;;;;AAAA,oCAA0C;AAC1C,0DAAwC;AAMxC,MAAqB,WAAY,SAAQ,kBAAc;IAMrD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IASD,IAAI;QACF,OAAO,IAAA,sBAAc,EAClB,IAAI,CAAC,OAAO,CAAC,YAA8B,CAAC,OAAO,EAAE,CACvD,CAAC;IACJ,CAAC;CACF;AAtBD,8BAsBC"}
1
+ {"version":3,"file":"int32.js","sourceRoot":"","sources":["../../src/editor/int32.ts"],"names":[],"mappings":";;;;;AAAA,oCAA0C;AAC1C,0DAAwC;AAGxC;;GAEG;AACH,MAAqB,WAAY,SAAQ,kBAAc;IACrD;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,IAAI;QACF,OAAO,IAAA,sBAAc,EAClB,IAAI,CAAC,OAAO,CAAC,YAA8B,CAAC,OAAO,EAAE,CACvD,CAAC;IACJ,CAAC;CACF;AAtBD,8BAsBC"}
@@ -1,9 +1,27 @@
1
1
  import StandardEditor from './standard';
2
2
  import type Element from '../element';
3
3
  import type { BSONValue } from '../utils';
4
+ /**
5
+ * CRUD editor for int32 values.
6
+ */
4
7
  export default class Int64Editor extends StandardEditor {
8
+ /**
9
+ * Create the editor with the element.
10
+ *
11
+ * @param {Element} element - The hadron document element.
12
+ */
5
13
  constructor(element: Element);
14
+ /**
15
+ * Complete the int64 edit by converting the valid string to a int64
16
+ * value or leaving as invalid.
17
+ */
6
18
  complete(): void;
19
+ /**
20
+ * Edit Int64 element. Check if the value is a Int64 before setting typed
21
+ * up value.
22
+ *
23
+ * @param {Object} value - The new value.
24
+ */
7
25
  edit(value: BSONValue): void;
8
26
  }
9
27
  //# sourceMappingURL=int64.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"int64.d.ts","sourceRoot":"","sources":["../../src/editor/int64.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAK1C,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;gBAMzC,OAAO,EAAE,OAAO;IAQ5B,QAAQ,IAAI,IAAI;IAahB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAU7B"}
1
+ {"version":3,"file":"int64.d.ts","sourceRoot":"","sources":["../../src/editor/int64.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,cAAc;IACrD;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAOhB;;;;;OAKG;IACH,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAU7B"}
@@ -6,16 +6,34 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const hadron_type_checker_1 = __importDefault(require("hadron-type-checker"));
7
7
  const element_events_1 = __importDefault(require("../element-events"));
8
8
  const standard_1 = __importDefault(require("./standard"));
9
+ /**
10
+ * CRUD editor for int32 values.
11
+ */
9
12
  class Int64Editor extends standard_1.default {
13
+ /**
14
+ * Create the editor with the element.
15
+ *
16
+ * @param {Element} element - The hadron document element.
17
+ */
10
18
  constructor(element) {
11
19
  super(element);
12
20
  }
21
+ /**
22
+ * Complete the int64 edit by converting the valid string to a int64
23
+ * value or leaving as invalid.
24
+ */
13
25
  complete() {
14
26
  super.complete();
15
27
  if (this.element.isCurrentTypeValid()) {
16
28
  this.element.edit(hadron_type_checker_1.default.cast(this.element.currentValue, 'Int64'));
17
29
  }
18
30
  }
31
+ /**
32
+ * Edit Int64 element. Check if the value is a Int64 before setting typed
33
+ * up value.
34
+ *
35
+ * @param {Object} value - The new value.
36
+ */
19
37
  edit(value) {
20
38
  try {
21
39
  hadron_type_checker_1.default.cast(value, 'Int64');
@@ -1 +1 @@
1
- {"version":3,"file":"int64.js","sourceRoot":"","sources":["../../src/editor/int64.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AACvC,0DAAwC;AAOxC,MAAqB,WAAY,SAAQ,kBAAc;IAMrD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAMD,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;SACzE;IACH,CAAC;IAQD,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACrD;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACzE;IACH,CAAC;CACF;AArCD,8BAqCC"}
1
+ {"version":3,"file":"int64.js","sourceRoot":"","sources":["../../src/editor/int64.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AACvC,0DAAwC;AAIxC;;GAEG;AACH,MAAqB,WAAY,SAAQ,kBAAc;IACrD;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;SACzE;IACH,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YACjC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACrD;QAAC,OAAO,KAAU,EAAE;YACnB,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;SACzE;IACH,CAAC;CACF;AArCD,8BAqCC"}
@@ -1,8 +1,28 @@
1
1
  import StandardEditor from './standard';
2
2
  import type Element from '../element';
3
+ /**
4
+ * CRUD editor for null values.
5
+ */
3
6
  export default class NullEditor extends StandardEditor {
7
+ /**
8
+ * Create the editor with the element.
9
+ *
10
+ * @param {Element} element - The hadron document element.
11
+ */
4
12
  constructor(element: Element);
13
+ /**
14
+ * Get the number of characters the value should display.
15
+ *
16
+ * @param {Boolean} editMode - If the element is being edited.
17
+ *
18
+ * @returns {Number} The number of characters.
19
+ */
5
20
  size(): number;
21
+ /**
22
+ * Get the value being edited.
23
+ *
24
+ * @returns {Object} The value.
25
+ */
6
26
  value(): 'null';
7
27
  }
8
28
  //# sourceMappingURL=null.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"null.d.ts","sourceRoot":"","sources":["../../src/editor/null.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAUtC,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,cAAc;gBAMxC,OAAO,EAAE,OAAO;IAW5B,IAAI,IAAI,MAAM;IASd,KAAK,IAAI,MAAM;CAGhB"}
1
+ {"version":3,"file":"null.d.ts","sourceRoot":"","sources":["../../src/editor/null.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAOtC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,cAAc;IACpD;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;;;;OAMG;IACH,IAAI,IAAI,MAAM;IAId;;;;OAIG;IACH,KAAK,IAAI,MAAM;CAGhB"}
@@ -4,14 +4,37 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const standard_1 = __importDefault(require("./standard"));
7
+ /**
8
+ * Null is always 'null'
9
+ */
7
10
  const VALUE = 'null';
11
+ /**
12
+ * CRUD editor for null values.
13
+ */
8
14
  class NullEditor extends standard_1.default {
15
+ /**
16
+ * Create the editor with the element.
17
+ *
18
+ * @param {Element} element - The hadron document element.
19
+ */
9
20
  constructor(element) {
10
21
  super(element);
11
22
  }
23
+ /**
24
+ * Get the number of characters the value should display.
25
+ *
26
+ * @param {Boolean} editMode - If the element is being edited.
27
+ *
28
+ * @returns {Number} The number of characters.
29
+ */
12
30
  size() {
13
31
  return 4;
14
32
  }
33
+ /**
34
+ * Get the value being edited.
35
+ *
36
+ * @returns {Object} The value.
37
+ */
15
38
  value() {
16
39
  return VALUE;
17
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"null.js","sourceRoot":"","sources":["../../src/editor/null.ts"],"names":[],"mappings":";;;;;AAAA,0DAAwC;AAMxC,MAAM,KAAK,GAAG,MAAM,CAAC;AAKrB,MAAqB,UAAW,SAAQ,kBAAc;IAMpD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IASD,IAAI;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAOD,KAAK;QACH,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA7BD,6BA6BC"}
1
+ {"version":3,"file":"null.js","sourceRoot":"","sources":["../../src/editor/null.ts"],"names":[],"mappings":";;;;;AAAA,0DAAwC;AAGxC;;GAEG;AACH,MAAM,KAAK,GAAG,MAAM,CAAC;AAErB;;GAEG;AACH,MAAqB,UAAW,SAAQ,kBAAc;IACpD;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;;;;OAMG;IACH,IAAI;QACF,OAAO,CAAC,CAAC;IACX,CAAC;IAED;;;;OAIG;IACH,KAAK;QACH,OAAO,KAAK,CAAC;IACf,CAAC;CACF;AA7BD,6BA6BC"}
@@ -1,10 +1,30 @@
1
1
  import StandardEditor from './standard';
2
2
  import type Element from '../element';
3
3
  import type { BSONValue } from '../utils';
4
+ /**
5
+ * CRUD editor for object id values.
6
+ */
4
7
  export default class ObjectIdEditor extends StandardEditor {
8
+ /**
9
+ * Create the editor with the element.
10
+ *
11
+ * @param {Element} element - The hadron document element.
12
+ */
5
13
  constructor(element: Element);
14
+ /**
15
+ * Complete the object id edit by converting the valid string to an object id
16
+ * object or leaving as invalid.
17
+ */
6
18
  complete(): void;
19
+ /**
20
+ * Edit the element with the provided value.
21
+ *
22
+ * @param {Object} value - The new value.
23
+ */
7
24
  edit(value: BSONValue): void;
25
+ /**
26
+ * Start the object id edit.
27
+ */
8
28
  start(): void;
9
29
  }
10
30
  //# sourceMappingURL=objectid.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"objectid.d.ts","sourceRoot":"","sources":["../../src/editor/objectid.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAK1C,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;gBAM5C,OAAO,EAAE,OAAO;IAQ5B,QAAQ,IAAI,IAAI;IAchB,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAc5B,KAAK,IAAI,IAAI;CAMd"}
1
+ {"version":3,"file":"objectid.d.ts","sourceRoot":"","sources":["../../src/editor/objectid.ts"],"names":[],"mappings":"AAEA,OAAO,cAAc,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AACtC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,cAAc;IACxD;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAI5B;;;OAGG;IACH,QAAQ,IAAI,IAAI;IAShB;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAW5B;;OAEG;IACH,KAAK,IAAI,IAAI;CAMd"}
@@ -6,16 +6,33 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const hadron_type_checker_1 = __importDefault(require("hadron-type-checker"));
7
7
  const element_events_1 = __importDefault(require("../element-events"));
8
8
  const standard_1 = __importDefault(require("./standard"));
9
+ /**
10
+ * CRUD editor for object id values.
11
+ */
9
12
  class ObjectIdEditor extends standard_1.default {
13
+ /**
14
+ * Create the editor with the element.
15
+ *
16
+ * @param {Element} element - The hadron document element.
17
+ */
10
18
  constructor(element) {
11
19
  super(element);
12
20
  }
21
+ /**
22
+ * Complete the object id edit by converting the valid string to an object id
23
+ * object or leaving as invalid.
24
+ */
13
25
  complete() {
14
26
  super.complete();
15
27
  if (this.element.isCurrentTypeValid()) {
16
28
  this.element.edit(hadron_type_checker_1.default.cast(this.element.currentValue, 'ObjectId'));
17
29
  }
18
30
  }
31
+ /**
32
+ * Edit the element with the provided value.
33
+ *
34
+ * @param {Object} value - The new value.
35
+ */
19
36
  edit(value) {
20
37
  try {
21
38
  hadron_type_checker_1.default.cast(value, 'ObjectId');
@@ -27,6 +44,9 @@ class ObjectIdEditor extends standard_1.default {
27
44
  this.element.setInvalid(value, this.element.currentType, e.message);
28
45
  }
29
46
  }
47
+ /**
48
+ * Start the object id edit.
49
+ */
30
50
  start() {
31
51
  super.start();
32
52
  if (this.element.isCurrentTypeValid()) {
@@ -1 +1 @@
1
- {"version":3,"file":"objectid.js","sourceRoot":"","sources":["../../src/editor/objectid.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AACvC,0DAAwC;AAOxC,MAAqB,cAAe,SAAQ,kBAAc;IAMxD,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAMD,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CACxD,CAAC;SACH;IACH,CAAC;IAOD,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACrD;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SACrE;IACH,CAAC;IAKD,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;SAC9C;IACH,CAAC;CACF;AAhDD,iCAgDC"}
1
+ {"version":3,"file":"objectid.js","sourceRoot":"","sources":["../../src/editor/objectid.ts"],"names":[],"mappings":";;;;;AAAA,8EAA8C;AAC9C,uEAAuC;AACvC,0DAAwC;AAIxC;;GAEG;AACH,MAAqB,cAAe,SAAQ,kBAAc;IACxD;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,QAAQ;QACN,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,6BAAW,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CACxD,CAAC;SACH;IACH,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,KAAgB;QACnB,IAAI;YACF,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,CAAC;YACpC,IAAI,CAAC,OAAO,CAAC,YAAY,GAAG,KAAK,CAAC;YAClC,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;YACxB,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACrD;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SACrE;IACH,CAAC;IAED;;OAEG;IACH,KAAK;QACH,KAAK,CAAC,KAAK,EAAE,CAAC;QACd,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,EAAE;YACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC;SAC9C;IACH,CAAC;CACF;AAhDD,iCAgDC"}
@@ -1,14 +1,46 @@
1
1
  import type { TypeCastTypes } from 'hadron-type-checker';
2
2
  import type { BSONValue } from '../utils';
3
3
  import type Element from '../element';
4
+ /**
5
+ * CRUD editor for standard values.
6
+ */
4
7
  export default class StandardEditor {
5
8
  element: Element;
6
9
  type: TypeCastTypes;
7
10
  editing: boolean;
11
+ /**
12
+ * Create the editor with the element.
13
+ *
14
+ * @param {Element} element - The hadron document element.
15
+ */
8
16
  constructor(element: Element);
17
+ /**
18
+ * Edit the element with the provided value.
19
+ *
20
+ * @param {Object} value - The new value.
21
+ */
9
22
  edit(value: BSONValue): void;
23
+ /**
24
+ * Edit the element via a paste.
25
+ *
26
+ * @param {String} value - The value.
27
+ */
10
28
  paste(value: string): void;
29
+ /**
30
+ * Get the number of characters the value should display.
31
+ *
32
+ * @param {Boolean} editMode - If the element is being edited.
33
+ *
34
+ * @returns {Number} The number of characters.
35
+ */
11
36
  size(): number;
37
+ /**
38
+ * Get the value being edited. Always returns a string because this value will
39
+ * always be used by browser input elements that operate on nothing but
40
+ * strings
41
+ *
42
+ * @returns {string} The value.
43
+ */
12
44
  value(): string;
13
45
  start(): void;
14
46
  complete(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../src/editor/standard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAUtC,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;gBAOL,OAAO,EAAE,OAAO;IAW5B,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAe5B,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAgB1B,IAAI,IAAI,MAAM;IAWd,KAAK,IAAI,MAAM;IAKf,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,IAAI;CAGjB"}
1
+ {"version":3,"file":"standard.d.ts","sourceRoot":"","sources":["../../src/editor/standard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGzD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,OAAO,KAAK,OAAO,MAAM,YAAY,CAAC;AAOtC;;GAEG;AACH,MAAM,CAAC,OAAO,OAAO,cAAc;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,aAAa,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IAEjB;;;;OAIG;gBACS,OAAO,EAAE,OAAO;IAM5B;;;;OAIG;IACH,IAAI,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAU5B;;;;OAIG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAS1B;;;;;;OAMG;IACH,IAAI,IAAI,MAAM;IAId;;;;;;OAMG;IACH,KAAK,IAAI,MAAM;IAKf,KAAK,IAAI,IAAI;IAIb,QAAQ,IAAI,IAAI;CAGjB"}
@@ -6,13 +6,29 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const hadron_type_checker_1 = __importDefault(require("hadron-type-checker"));
7
7
  const element_events_1 = __importDefault(require("../element-events"));
8
8
  const utils_1 = require("../utils");
9
+ /**
10
+ * Regex to match an array or object string.
11
+ */
9
12
  const ARRAY_OR_OBJECT = /^(\[|\{)(.+)(\]|\})$/;
13
+ /**
14
+ * CRUD editor for standard values.
15
+ */
10
16
  class StandardEditor {
17
+ /**
18
+ * Create the editor with the element.
19
+ *
20
+ * @param {Element} element - The hadron document element.
21
+ */
11
22
  constructor(element) {
12
23
  this.element = element;
13
24
  this.type = element.currentType;
14
25
  this.editing = false;
15
26
  }
27
+ /**
28
+ * Edit the element with the provided value.
29
+ *
30
+ * @param {Object} value - The new value.
31
+ */
16
32
  edit(value) {
17
33
  const currentType = this.element.currentType;
18
34
  try {
@@ -23,6 +39,11 @@ class StandardEditor {
23
39
  this.element.setInvalid(value, currentType, e.message);
24
40
  }
25
41
  }
42
+ /**
43
+ * Edit the element via a paste.
44
+ *
45
+ * @param {String} value - The value.
46
+ */
26
47
  paste(value) {
27
48
  if (ARRAY_OR_OBJECT.exec(value)) {
28
49
  this.edit(JSON.parse(value));
@@ -32,12 +53,27 @@ class StandardEditor {
32
53
  this.edit(value);
33
54
  }
34
55
  }
56
+ /**
57
+ * Get the number of characters the value should display.
58
+ *
59
+ * @param {Boolean} editMode - If the element is being edited.
60
+ *
61
+ * @returns {Number} The number of characters.
62
+ */
35
63
  size() {
36
64
  return (0, utils_1.fieldStringLen)(this.element.currentValue);
37
65
  }
66
+ /**
67
+ * Get the value being edited. Always returns a string because this value will
68
+ * always be used by browser input elements that operate on nothing but
69
+ * strings
70
+ *
71
+ * @returns {string} The value.
72
+ */
38
73
  value() {
39
74
  return String(this.element.currentValue);
40
75
  }
76
+ // Standard editing requires no special start/complete behaviour.
41
77
  start() {
42
78
  this.editing = true;
43
79
  }
@@ -1 +1 @@
1
- {"version":3,"file":"standard.js","sourceRoot":"","sources":["../../src/editor/standard.ts"],"names":[],"mappings":";;;;;AACA,8EAA8C;AAC9C,uEAAuC;AAEvC,oCAA0C;AAM1C,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAK/C,MAAqB,cAAc;IAUjC,YAAY,OAAgB;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAOD,IAAI,CAAC,KAAgB;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAC7C,IAAI;YACF,MAAM,QAAQ,GAAG,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACtD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC7B;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SACxD;IACH,CAAC;IAOD,KAAK,CAAC,KAAa;QACjB,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACxD;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAClB;IACH,CAAC;IASD,IAAI;QACF,OAAO,IAAA,sBAAc,EAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;IASD,KAAK;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAGD,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;CACF;AA3ED,iCA2EC"}
1
+ {"version":3,"file":"standard.js","sourceRoot":"","sources":["../../src/editor/standard.ts"],"names":[],"mappings":";;;;;AACA,8EAA8C;AAC9C,uEAAuC;AAEvC,oCAA0C;AAG1C;;GAEG;AACH,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAE/C;;GAEG;AACH,MAAqB,cAAc;IAKjC;;;;OAIG;IACH,YAAY,OAAgB;QAC1B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC;QAChC,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;IAED;;;;OAIG;IACH,IAAI,CAAC,KAAgB;QACnB,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;QAC7C,IAAI;YACF,MAAM,QAAQ,GAAG,6BAAW,CAAC,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACtD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;SAC7B;QAAC,OAAO,CAAM,EAAE;YACf,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,OAAO,CAAC,CAAC;SACxD;IACH,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,KAAa;QACjB,IAAI,eAAe,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;YAC/B,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,wBAAM,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;SACxD;aAAM;YACL,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;SAClB;IACH,CAAC;IAED;;;;;;OAMG;IACH,IAAI;QACF,OAAO,IAAA,sBAAc,EAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IACnD,CAAC;IAED;;;;;;OAMG;IACH,KAAK;QACH,OAAO,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;IAC3C,CAAC;IAED,iEAAiE;IACjE,KAAK;QACH,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;IACtB,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;IACvB,CAAC;CACF;AA3ED,iCA2EC"}