@swagger-api/apidom-core 0.82.1 → 0.83.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.
- package/CHANGELOG.md +10 -0
- package/cjs/clone/errors/CloneError.cjs +1 -1
- package/cjs/identity/errors/ElementIdentityError.cjs +14 -0
- package/cjs/identity/index.cjs +63 -0
- package/cjs/index.cjs +8 -3
- package/cjs/refractor/plugins/element-identity.cjs +6 -7
- package/cjs/refractor/plugins/semantic-element-identity.cjs +6 -7
- package/dist/apidom-core.browser.js +141 -35
- package/dist/apidom-core.browser.min.js +1 -1
- package/es/clone/errors/CloneError.mjs +1 -1
- package/es/identity/errors/ElementIdentityError.mjs +10 -0
- package/es/identity/index.mjs +58 -0
- package/es/index.mjs +2 -0
- package/es/refractor/plugins/element-identity.mjs +6 -8
- package/es/refractor/plugins/semantic-element-identity.mjs +6 -8
- package/package.json +4 -4
- package/types/dist.d.ts +69 -49
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,16 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
# [0.83.0](https://github.com/swagger-api/apidom/compare/v0.82.2...v0.83.0) (2023-11-07)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
- **core:** add support for formalized element identity management ([#3366](https://github.com/swagger-api/apidom/issues/3366)) ([65dcd0e](https://github.com/swagger-api/apidom/commit/65dcd0e8a96544773001560fe142a9768a2c3668))
|
|
11
|
+
|
|
12
|
+
## [0.82.2](https://github.com/swagger-api/apidom/compare/v0.82.1...v0.82.2) (2023-11-03)
|
|
13
|
+
|
|
14
|
+
**Note:** Version bump only for package @swagger-api/apidom-core
|
|
15
|
+
|
|
6
16
|
## [0.82.1](https://github.com/swagger-api/apidom/compare/v0.82.0...v0.82.1) (2023-11-03)
|
|
7
17
|
|
|
8
18
|
**Note:** Version bump only for package @swagger-api/apidom-core
|
|
@@ -7,7 +7,7 @@ class CloneError extends _apidomError.ApiDOMStructuredError {
|
|
|
7
7
|
constructor(message, structuredOptions) {
|
|
8
8
|
super(message, structuredOptions);
|
|
9
9
|
if (typeof structuredOptions !== 'undefined') {
|
|
10
|
-
this.value = structuredOptions.
|
|
10
|
+
this.value = structuredOptions.value;
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.default = void 0;
|
|
5
|
+
var _apidomError = require("@swagger-api/apidom-error");
|
|
6
|
+
class ElementIdentityError extends _apidomError.ApiDOMStructuredError {
|
|
7
|
+
constructor(message, structuredOptions) {
|
|
8
|
+
super(message, structuredOptions);
|
|
9
|
+
if (typeof structuredOptions !== 'undefined') {
|
|
10
|
+
this.value = structuredOptions.value;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
var _default = exports.default = ElementIdentityError;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
|
+
exports.__esModule = true;
|
|
5
|
+
exports.defaultIdentityManager = exports.IdentityManager = void 0;
|
|
6
|
+
var _minim = require("minim");
|
|
7
|
+
var _stampit = _interopRequireDefault(require("stampit"));
|
|
8
|
+
var _shortUniqueId = _interopRequireDefault(require("short-unique-id"));
|
|
9
|
+
var _ElementIdentityError = _interopRequireDefault(require("./errors/ElementIdentityError.cjs"));
|
|
10
|
+
var _index = require("../predicates/index.cjs");
|
|
11
|
+
const IdentityManager = exports.IdentityManager = (0, _stampit.default)({
|
|
12
|
+
props: {
|
|
13
|
+
uuid: null,
|
|
14
|
+
length: null,
|
|
15
|
+
identityMap: null
|
|
16
|
+
},
|
|
17
|
+
init({
|
|
18
|
+
length = 6
|
|
19
|
+
} = {}) {
|
|
20
|
+
this.length = 6;
|
|
21
|
+
this.uuid = new _shortUniqueId.default({
|
|
22
|
+
length
|
|
23
|
+
});
|
|
24
|
+
this.identityMap = new WeakMap();
|
|
25
|
+
},
|
|
26
|
+
methods: {
|
|
27
|
+
identify(element) {
|
|
28
|
+
if (!(0, _index.isElement)(element)) {
|
|
29
|
+
throw new _ElementIdentityError.default('Cannot not identify the element. `element` is neither structurally compatible nor a subclass of an Element class.', {
|
|
30
|
+
value: element
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
// use already assigned identity
|
|
35
|
+
if (element.meta.hasKey('id') && (0, _index.isStringElement)(element.meta.id) && !element.meta.id.equals('')) {
|
|
36
|
+
return element.id;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
// assign identity in immutable way
|
|
40
|
+
if (this.identityMap.has(element)) {
|
|
41
|
+
return this.identityMap.get(element);
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
// return element identity
|
|
45
|
+
const id = new _minim.StringElement(this.generateId());
|
|
46
|
+
this.identityMap.set(element, id);
|
|
47
|
+
return id;
|
|
48
|
+
},
|
|
49
|
+
forget(element) {
|
|
50
|
+
if (this.identityMap.has(element)) {
|
|
51
|
+
this.identityMap.delete(element);
|
|
52
|
+
return true;
|
|
53
|
+
}
|
|
54
|
+
return false;
|
|
55
|
+
},
|
|
56
|
+
generateId() {
|
|
57
|
+
return this.uuid.randomUUID();
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
});
|
|
61
|
+
const defaultIdentityManager = exports.defaultIdentityManager = IdentityManager({
|
|
62
|
+
length: 6
|
|
63
|
+
});
|
package/cjs/index.cjs
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
var _interopRequireWildcard = require("@babel/runtime-corejs3/helpers/interopRequireWildcard").default;
|
|
4
4
|
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
5
5
|
exports.__esModule = true;
|
|
6
|
-
exports.visit = exports.traverse = exports.transclude = exports.toYAML = exports.toValue = exports.toString = exports.toJSON = exports.some = exports.sexprs = exports.reject = exports.refractorPluginSemanticElementIdentity = exports.refractorPluginElementIdentity = exports.refract = exports.parents = exports.namespace = exports.mergeAllVisitors = exports.keyMap = exports.isStringElement = exports.isSourceMapElement = exports.isRefElement = exports.isPrimitiveElement = exports.isParseResultElement = exports.isObjectElement = exports.isNumberElement = exports.isNullElement = exports.isMemberElement = exports.isLinkElement = exports.isElement = exports.isBooleanElement = exports.isArrayElement = exports.isAnnotationElement = exports.includesSymbols = exports.includesClasses = exports.hasElementSourceMap = exports.getNodeType = exports.from = exports.findAtOffset = exports.find = exports.filter = exports.dispatchRefractorPlugins = exports.dereference = exports.dehydrate = exports.deepmerge = exports.createPredicate = exports.createNamespace = exports.cloneShallow = exports.cloneNode = exports.cloneDeep = exports.Transcluder = exports.StringElement = exports.SourceMapElement = exports.ShallowCloneError = exports.RefElement = exports.ParseResultElement = exports.ObjectSlice = exports.ObjectElement = exports.NumberElement = exports.NullElement = exports.Namespace = exports.MemberElement = exports.MediaTypes = exports.LinkElement = exports.KeyValuePair = exports.Element = exports.DeepCloneError = exports.CommentElement = exports.CloneError = exports.BooleanElement = exports.BREAK = exports.ArraySlice = exports.ArrayElement = exports.AnnotationElement = void 0;
|
|
6
|
+
exports.visit = exports.traverse = exports.transclude = exports.toYAML = exports.toValue = exports.toString = exports.toJSON = exports.some = exports.sexprs = exports.reject = exports.refractorPluginSemanticElementIdentity = exports.refractorPluginElementIdentity = exports.refract = exports.parents = exports.namespace = exports.mergeAllVisitors = exports.keyMap = exports.isStringElement = exports.isSourceMapElement = exports.isRefElement = exports.isPrimitiveElement = exports.isParseResultElement = exports.isObjectElement = exports.isNumberElement = exports.isNullElement = exports.isMemberElement = exports.isLinkElement = exports.isElement = exports.isBooleanElement = exports.isArrayElement = exports.isAnnotationElement = exports.includesSymbols = exports.includesClasses = exports.hasElementSourceMap = exports.getNodeType = exports.from = exports.findAtOffset = exports.find = exports.filter = exports.dispatchRefractorPlugins = exports.dereference = exports.dehydrate = exports.defaultIdentityManager = exports.deepmerge = exports.createPredicate = exports.createNamespace = exports.cloneShallow = exports.cloneNode = exports.cloneDeep = exports.Transcluder = exports.StringElement = exports.SourceMapElement = exports.ShallowCloneError = exports.RefElement = exports.ParseResultElement = exports.ObjectSlice = exports.ObjectElement = exports.NumberElement = exports.NullElement = exports.Namespace = exports.MemberElement = exports.MediaTypes = exports.LinkElement = exports.KeyValuePair = exports.IdentityManager = exports.ElementIdentityError = exports.Element = exports.DeepCloneError = exports.CommentElement = exports.CloneError = exports.BooleanElement = exports.BREAK = exports.ArraySlice = exports.ArrayElement = exports.AnnotationElement = void 0;
|
|
7
7
|
var _index = require("./refractor/plugins/utils/index.cjs");
|
|
8
8
|
exports.dispatchRefractorPlugins = _index.dispatchPlugins;
|
|
9
9
|
var _elementIdentity = _interopRequireDefault(require("./refractor/plugins/element-identity.cjs"));
|
|
@@ -85,10 +85,15 @@ var _DeepCloneError = _interopRequireDefault(require("./clone/errors/DeepCloneEr
|
|
|
85
85
|
exports.DeepCloneError = _DeepCloneError.default;
|
|
86
86
|
var _ShallowCloneError = _interopRequireDefault(require("./clone/errors/ShallowCloneError.cjs"));
|
|
87
87
|
exports.ShallowCloneError = _ShallowCloneError.default;
|
|
88
|
+
var _index6 = require("./identity/index.cjs");
|
|
89
|
+
exports.defaultIdentityManager = _index6.defaultIdentityManager;
|
|
90
|
+
exports.IdentityManager = _index6.IdentityManager;
|
|
91
|
+
var _ElementIdentityError = _interopRequireDefault(require("./identity/errors/ElementIdentityError.cjs"));
|
|
92
|
+
exports.ElementIdentityError = _ElementIdentityError.default;
|
|
88
93
|
var _from = _interopRequireDefault(require("./transformers/from.cjs"));
|
|
89
94
|
exports.from = _from.default;
|
|
90
|
-
var
|
|
91
|
-
exports.toValue =
|
|
95
|
+
var _index7 = _interopRequireDefault(require("./transformers/serializers/value/index.cjs"));
|
|
96
|
+
exports.toValue = _index7.default;
|
|
92
97
|
var _json = _interopRequireDefault(require("./transformers/serializers/json.cjs"));
|
|
93
98
|
exports.toJSON = _json.default;
|
|
94
99
|
var _yaml = _interopRequireDefault(require("./transformers/serializers/yaml-1-2.cjs"));
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
3
|
exports.__esModule = true;
|
|
5
4
|
exports.default = void 0;
|
|
6
|
-
var _shortUniqueId = _interopRequireDefault(require("short-unique-id"));
|
|
7
5
|
var _minim = require("minim");
|
|
6
|
+
var _index = require("../../identity/index.cjs");
|
|
8
7
|
/**
|
|
9
8
|
* Plugin for decorating every element in ApiDOM tree with UUID.
|
|
10
9
|
*/
|
|
@@ -12,21 +11,21 @@ var _minim = require("minim");
|
|
|
12
11
|
const plugin = ({
|
|
13
12
|
length = 6
|
|
14
13
|
} = {}) => () => {
|
|
15
|
-
let
|
|
14
|
+
let identityManager;
|
|
16
15
|
return {
|
|
17
16
|
pre() {
|
|
18
|
-
|
|
17
|
+
identityManager = (0, _index.IdentityManager)({
|
|
19
18
|
length
|
|
20
19
|
});
|
|
21
20
|
},
|
|
22
21
|
visitor: {
|
|
23
22
|
enter(element) {
|
|
24
|
-
// eslint-disable-
|
|
25
|
-
element.id = new _minim.StringElement(uuid.randomUUID());
|
|
23
|
+
element.id = new _minim.StringElement(identityManager.generateId()); // eslint-disable-line no-param-reassign
|
|
26
24
|
}
|
|
27
25
|
},
|
|
26
|
+
|
|
28
27
|
post() {
|
|
29
|
-
|
|
28
|
+
identityManager = null;
|
|
30
29
|
}
|
|
31
30
|
};
|
|
32
31
|
};
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault").default;
|
|
4
3
|
exports.__esModule = true;
|
|
5
4
|
exports.default = void 0;
|
|
6
|
-
var _shortUniqueId = _interopRequireDefault(require("short-unique-id"));
|
|
7
5
|
var _minim = require("minim");
|
|
6
|
+
var _index = require("../../identity/index.cjs");
|
|
8
7
|
/**
|
|
9
8
|
* Plugin for decorating every semantic element in ApiDOM tree with UUID.
|
|
10
9
|
*/
|
|
@@ -14,23 +13,23 @@ const plugin = ({
|
|
|
14
13
|
} = {}) => ({
|
|
15
14
|
predicates
|
|
16
15
|
}) => {
|
|
17
|
-
let
|
|
16
|
+
let identityManager;
|
|
18
17
|
return {
|
|
19
18
|
pre() {
|
|
20
|
-
|
|
19
|
+
identityManager = (0, _index.IdentityManager)({
|
|
21
20
|
length
|
|
22
21
|
});
|
|
23
22
|
},
|
|
24
23
|
visitor: {
|
|
25
24
|
enter(element) {
|
|
26
25
|
if (!predicates.isPrimitiveElement(element)) {
|
|
27
|
-
// eslint-disable-
|
|
28
|
-
element.id = new _minim.StringElement(uuid.randomUUID());
|
|
26
|
+
element.id = new _minim.StringElement(identityManager.generateId()); // eslint-disable-line no-param-reassign
|
|
29
27
|
}
|
|
30
28
|
}
|
|
31
29
|
},
|
|
30
|
+
|
|
32
31
|
post() {
|
|
33
|
-
|
|
32
|
+
identityManager = null;
|
|
34
33
|
}
|
|
35
34
|
};
|
|
36
35
|
};
|
|
@@ -25,7 +25,7 @@ class CloneError extends _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__[
|
|
|
25
25
|
constructor(message, structuredOptions) {
|
|
26
26
|
super(message, structuredOptions);
|
|
27
27
|
if (typeof structuredOptions !== 'undefined') {
|
|
28
|
-
this.value = structuredOptions.
|
|
28
|
+
this.value = structuredOptions.value;
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
31
|
}
|
|
@@ -461,6 +461,105 @@ class SourceMap extends minim__WEBPACK_IMPORTED_MODULE_0__.ArrayElement {
|
|
|
461
461
|
|
|
462
462
|
/***/ }),
|
|
463
463
|
|
|
464
|
+
/***/ 8979:
|
|
465
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
466
|
+
|
|
467
|
+
"use strict";
|
|
468
|
+
__webpack_require__.r(__webpack_exports__);
|
|
469
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
470
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
471
|
+
/* harmony export */ });
|
|
472
|
+
/* harmony import */ var _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(9985);
|
|
473
|
+
|
|
474
|
+
class ElementIdentityError extends _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__["default"] {
|
|
475
|
+
constructor(message, structuredOptions) {
|
|
476
|
+
super(message, structuredOptions);
|
|
477
|
+
if (typeof structuredOptions !== 'undefined') {
|
|
478
|
+
this.value = structuredOptions.value;
|
|
479
|
+
}
|
|
480
|
+
}
|
|
481
|
+
}
|
|
482
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ElementIdentityError);
|
|
483
|
+
|
|
484
|
+
/***/ }),
|
|
485
|
+
|
|
486
|
+
/***/ 1285:
|
|
487
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
488
|
+
|
|
489
|
+
"use strict";
|
|
490
|
+
__webpack_require__.r(__webpack_exports__);
|
|
491
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
492
|
+
/* harmony export */ IdentityManager: () => (/* binding */ IdentityManager),
|
|
493
|
+
/* harmony export */ defaultIdentityManager: () => (/* binding */ defaultIdentityManager)
|
|
494
|
+
/* harmony export */ });
|
|
495
|
+
/* harmony import */ var minim__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7952);
|
|
496
|
+
/* harmony import */ var stampit__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6591);
|
|
497
|
+
/* harmony import */ var stampit__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(stampit__WEBPACK_IMPORTED_MODULE_1__);
|
|
498
|
+
/* harmony import */ var short_unique_id__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(6058);
|
|
499
|
+
/* harmony import */ var short_unique_id__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(short_unique_id__WEBPACK_IMPORTED_MODULE_2__);
|
|
500
|
+
/* harmony import */ var _errors_ElementIdentityError__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(8979);
|
|
501
|
+
/* harmony import */ var _predicates__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4529);
|
|
502
|
+
|
|
503
|
+
|
|
504
|
+
|
|
505
|
+
|
|
506
|
+
|
|
507
|
+
const IdentityManager = stampit__WEBPACK_IMPORTED_MODULE_1___default()({
|
|
508
|
+
props: {
|
|
509
|
+
uuid: null,
|
|
510
|
+
length: null,
|
|
511
|
+
identityMap: null
|
|
512
|
+
},
|
|
513
|
+
init({
|
|
514
|
+
length = 6
|
|
515
|
+
} = {}) {
|
|
516
|
+
this.length = 6;
|
|
517
|
+
this.uuid = new (short_unique_id__WEBPACK_IMPORTED_MODULE_2___default())({
|
|
518
|
+
length
|
|
519
|
+
});
|
|
520
|
+
this.identityMap = new WeakMap();
|
|
521
|
+
},
|
|
522
|
+
methods: {
|
|
523
|
+
identify(element) {
|
|
524
|
+
if (!(0,_predicates__WEBPACK_IMPORTED_MODULE_3__.isElement)(element)) {
|
|
525
|
+
throw new _errors_ElementIdentityError__WEBPACK_IMPORTED_MODULE_4__["default"]('Cannot not identify the element. `element` is neither structurally compatible nor a subclass of an Element class.', {
|
|
526
|
+
value: element
|
|
527
|
+
});
|
|
528
|
+
}
|
|
529
|
+
|
|
530
|
+
// use already assigned identity
|
|
531
|
+
if (element.meta.hasKey('id') && (0,_predicates__WEBPACK_IMPORTED_MODULE_3__.isStringElement)(element.meta.id) && !element.meta.id.equals('')) {
|
|
532
|
+
return element.id;
|
|
533
|
+
}
|
|
534
|
+
|
|
535
|
+
// assign identity in immutable way
|
|
536
|
+
if (this.identityMap.has(element)) {
|
|
537
|
+
return this.identityMap.get(element);
|
|
538
|
+
}
|
|
539
|
+
|
|
540
|
+
// return element identity
|
|
541
|
+
const id = new minim__WEBPACK_IMPORTED_MODULE_0__.StringElement(this.generateId());
|
|
542
|
+
this.identityMap.set(element, id);
|
|
543
|
+
return id;
|
|
544
|
+
},
|
|
545
|
+
forget(element) {
|
|
546
|
+
if (this.identityMap.has(element)) {
|
|
547
|
+
this.identityMap.delete(element);
|
|
548
|
+
return true;
|
|
549
|
+
}
|
|
550
|
+
return false;
|
|
551
|
+
},
|
|
552
|
+
generateId() {
|
|
553
|
+
return this.uuid.randomUUID();
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
});
|
|
557
|
+
const defaultIdentityManager = IdentityManager({
|
|
558
|
+
length: 6
|
|
559
|
+
});
|
|
560
|
+
|
|
561
|
+
/***/ }),
|
|
562
|
+
|
|
464
563
|
/***/ 8509:
|
|
465
564
|
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
466
565
|
|
|
@@ -743,9 +842,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
743
842
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
744
843
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
745
844
|
/* harmony export */ });
|
|
746
|
-
/* harmony import */ var
|
|
747
|
-
/* harmony import */ var
|
|
748
|
-
/* harmony import */ var minim__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7952);
|
|
845
|
+
/* harmony import */ var minim__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7952);
|
|
846
|
+
/* harmony import */ var _identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1285);
|
|
749
847
|
|
|
750
848
|
|
|
751
849
|
|
|
@@ -756,21 +854,21 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
756
854
|
const plugin = ({
|
|
757
855
|
length = 6
|
|
758
856
|
} = {}) => () => {
|
|
759
|
-
let
|
|
857
|
+
let identityManager;
|
|
760
858
|
return {
|
|
761
859
|
pre() {
|
|
762
|
-
|
|
860
|
+
identityManager = (0,_identity__WEBPACK_IMPORTED_MODULE_1__.IdentityManager)({
|
|
763
861
|
length
|
|
764
862
|
});
|
|
765
863
|
},
|
|
766
864
|
visitor: {
|
|
767
865
|
enter(element) {
|
|
768
|
-
// eslint-disable-
|
|
769
|
-
element.id = new minim__WEBPACK_IMPORTED_MODULE_1__.StringElement(uuid.randomUUID());
|
|
866
|
+
element.id = new minim__WEBPACK_IMPORTED_MODULE_0__.StringElement(identityManager.generateId()); // eslint-disable-line no-param-reassign
|
|
770
867
|
}
|
|
771
868
|
},
|
|
869
|
+
|
|
772
870
|
post() {
|
|
773
|
-
|
|
871
|
+
identityManager = null;
|
|
774
872
|
}
|
|
775
873
|
};
|
|
776
874
|
};
|
|
@@ -786,9 +884,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
786
884
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
787
885
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
788
886
|
/* harmony export */ });
|
|
789
|
-
/* harmony import */ var
|
|
790
|
-
/* harmony import */ var
|
|
791
|
-
/* harmony import */ var minim__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7952);
|
|
887
|
+
/* harmony import */ var minim__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(7952);
|
|
888
|
+
/* harmony import */ var _identity__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1285);
|
|
792
889
|
|
|
793
890
|
|
|
794
891
|
|
|
@@ -801,23 +898,23 @@ const plugin = ({
|
|
|
801
898
|
} = {}) => ({
|
|
802
899
|
predicates
|
|
803
900
|
}) => {
|
|
804
|
-
let
|
|
901
|
+
let identityManager;
|
|
805
902
|
return {
|
|
806
903
|
pre() {
|
|
807
|
-
|
|
904
|
+
identityManager = (0,_identity__WEBPACK_IMPORTED_MODULE_1__.IdentityManager)({
|
|
808
905
|
length
|
|
809
906
|
});
|
|
810
907
|
},
|
|
811
908
|
visitor: {
|
|
812
909
|
enter(element) {
|
|
813
910
|
if (!predicates.isPrimitiveElement(element)) {
|
|
814
|
-
// eslint-disable-
|
|
815
|
-
element.id = new minim__WEBPACK_IMPORTED_MODULE_1__.StringElement(uuid.randomUUID());
|
|
911
|
+
element.id = new minim__WEBPACK_IMPORTED_MODULE_0__.StringElement(identityManager.generateId()); // eslint-disable-line no-param-reassign
|
|
816
912
|
}
|
|
817
913
|
}
|
|
818
914
|
},
|
|
915
|
+
|
|
819
916
|
post() {
|
|
820
|
-
|
|
917
|
+
identityManager = null;
|
|
821
918
|
}
|
|
822
919
|
};
|
|
823
920
|
};
|
|
@@ -16726,8 +16823,9 @@ visitor, {
|
|
|
16726
16823
|
}
|
|
16727
16824
|
} while (stack !== undefined);
|
|
16728
16825
|
if (edits.length !== 0) {
|
|
16729
|
-
return edits.
|
|
16826
|
+
return edits[edits.length - 1][1]; // @TODO(vladimir.gorej@gmail.com): can be replaced by Array.prototype.at in future
|
|
16730
16827
|
}
|
|
16828
|
+
|
|
16731
16829
|
return root;
|
|
16732
16830
|
};
|
|
16733
16831
|
|
|
@@ -16878,8 +16976,9 @@ visitor, {
|
|
|
16878
16976
|
}
|
|
16879
16977
|
} while (stack !== undefined);
|
|
16880
16978
|
if (edits.length !== 0) {
|
|
16881
|
-
return edits.
|
|
16979
|
+
return edits[edits.length - 1][1]; // @TODO(vladimir.gorej@gmail.com): can be replaced by Array.prototype.at in future
|
|
16882
16980
|
}
|
|
16981
|
+
|
|
16883
16982
|
return root;
|
|
16884
16983
|
};
|
|
16885
16984
|
|
|
@@ -17138,6 +17237,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
17138
17237
|
/* harmony export */ CommentElement: () => (/* reexport safe */ _refractor_registration__WEBPACK_IMPORTED_MODULE_7__["default"]),
|
|
17139
17238
|
/* harmony export */ DeepCloneError: () => (/* reexport safe */ _clone_errors_DeepCloneError__WEBPACK_IMPORTED_MODULE_25__["default"]),
|
|
17140
17239
|
/* harmony export */ Element: () => (/* reexport safe */ minim__WEBPACK_IMPORTED_MODULE_4__.Element),
|
|
17240
|
+
/* harmony export */ ElementIdentityError: () => (/* reexport safe */ _identity_errors_ElementIdentityError__WEBPACK_IMPORTED_MODULE_28__["default"]),
|
|
17241
|
+
/* harmony export */ IdentityManager: () => (/* reexport safe */ _identity__WEBPACK_IMPORTED_MODULE_27__.IdentityManager),
|
|
17141
17242
|
/* harmony export */ KeyValuePair: () => (/* reexport safe */ minim__WEBPACK_IMPORTED_MODULE_4__.KeyValuePair),
|
|
17142
17243
|
/* harmony export */ LinkElement: () => (/* reexport safe */ minim__WEBPACK_IMPORTED_MODULE_4__.LinkElement),
|
|
17143
17244
|
/* harmony export */ MediaTypes: () => (/* reexport safe */ _media_types__WEBPACK_IMPORTED_MODULE_3__["default"]),
|
|
@@ -17158,14 +17259,15 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
17158
17259
|
/* harmony export */ cloneShallow: () => (/* reexport safe */ _clone__WEBPACK_IMPORTED_MODULE_23__.cloneShallow),
|
|
17159
17260
|
/* harmony export */ createNamespace: () => (/* reexport safe */ _namespace__WEBPACK_IMPORTED_MODULE_5__.createNamespace),
|
|
17160
17261
|
/* harmony export */ createPredicate: () => (/* reexport safe */ _predicates_helpers__WEBPACK_IMPORTED_MODULE_11__["default"]),
|
|
17161
|
-
/* harmony export */ deepmerge: () => (/* reexport safe */
|
|
17162
|
-
/* harmony export */
|
|
17262
|
+
/* harmony export */ deepmerge: () => (/* reexport safe */ _deepmerge__WEBPACK_IMPORTED_MODULE_36__["default"]),
|
|
17263
|
+
/* harmony export */ defaultIdentityManager: () => (/* reexport safe */ _identity__WEBPACK_IMPORTED_MODULE_27__.defaultIdentityManager),
|
|
17264
|
+
/* harmony export */ dehydrate: () => (/* reexport safe */ _transformers_dehydrate__WEBPACK_IMPORTED_MODULE_33__["default"]),
|
|
17163
17265
|
/* harmony export */ dereference: () => (/* reexport safe */ _util__WEBPACK_IMPORTED_MODULE_22__.dereference),
|
|
17164
17266
|
/* harmony export */ dispatchRefractorPlugins: () => (/* reexport safe */ _refractor_plugins_utils__WEBPACK_IMPORTED_MODULE_0__.dispatchPlugins),
|
|
17165
17267
|
/* harmony export */ filter: () => (/* reexport safe */ _traversal_index__WEBPACK_IMPORTED_MODULE_12__["default"]),
|
|
17166
17268
|
/* harmony export */ find: () => (/* reexport safe */ _traversal_index__WEBPACK_IMPORTED_MODULE_14__["default"]),
|
|
17167
17269
|
/* harmony export */ findAtOffset: () => (/* reexport safe */ _traversal_index__WEBPACK_IMPORTED_MODULE_15__["default"]),
|
|
17168
|
-
/* harmony export */ from: () => (/* reexport safe */
|
|
17270
|
+
/* harmony export */ from: () => (/* reexport safe */ _transformers_from__WEBPACK_IMPORTED_MODULE_29__["default"]),
|
|
17169
17271
|
/* harmony export */ getNodeType: () => (/* reexport safe */ _traversal_visitor__WEBPACK_IMPORTED_MODULE_19__.getNodeType),
|
|
17170
17272
|
/* harmony export */ hasElementSourceMap: () => (/* reexport safe */ _predicates_index__WEBPACK_IMPORTED_MODULE_10__.hasElementSourceMap),
|
|
17171
17273
|
/* harmony export */ includesClasses: () => (/* reexport safe */ _predicates_index__WEBPACK_IMPORTED_MODULE_10__.includesClasses),
|
|
@@ -17192,12 +17294,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
17192
17294
|
/* harmony export */ refractorPluginElementIdentity: () => (/* reexport safe */ _refractor_plugins_element_identity__WEBPACK_IMPORTED_MODULE_1__["default"]),
|
|
17193
17295
|
/* harmony export */ refractorPluginSemanticElementIdentity: () => (/* reexport safe */ _refractor_plugins_semantic_element_identity__WEBPACK_IMPORTED_MODULE_2__["default"]),
|
|
17194
17296
|
/* harmony export */ reject: () => (/* reexport safe */ _traversal_index__WEBPACK_IMPORTED_MODULE_13__["default"]),
|
|
17195
|
-
/* harmony export */ sexprs: () => (/* reexport safe */
|
|
17297
|
+
/* harmony export */ sexprs: () => (/* reexport safe */ _transformers_sexprs__WEBPACK_IMPORTED_MODULE_35__["default"]),
|
|
17196
17298
|
/* harmony export */ some: () => (/* reexport safe */ _traversal_index__WEBPACK_IMPORTED_MODULE_16__["default"]),
|
|
17197
|
-
/* harmony export */ toJSON: () => (/* reexport safe */
|
|
17198
|
-
/* harmony export */ toString: () => (/* reexport safe */
|
|
17199
|
-
/* harmony export */ toValue: () => (/* reexport safe */
|
|
17200
|
-
/* harmony export */ toYAML: () => (/* reexport safe */
|
|
17299
|
+
/* harmony export */ toJSON: () => (/* reexport safe */ _transformers_serializers_json__WEBPACK_IMPORTED_MODULE_31__["default"]),
|
|
17300
|
+
/* harmony export */ toString: () => (/* reexport safe */ _transformers_to_string__WEBPACK_IMPORTED_MODULE_34__["default"]),
|
|
17301
|
+
/* harmony export */ toValue: () => (/* reexport safe */ _transformers_serializers_value__WEBPACK_IMPORTED_MODULE_30__["default"]),
|
|
17302
|
+
/* harmony export */ toYAML: () => (/* reexport safe */ _transformers_serializers_yaml_1_2__WEBPACK_IMPORTED_MODULE_32__["default"]),
|
|
17201
17303
|
/* harmony export */ transclude: () => (/* reexport safe */ _transcluder_index__WEBPACK_IMPORTED_MODULE_21__.transclude),
|
|
17202
17304
|
/* harmony export */ traverse: () => (/* reexport safe */ _traversal_index__WEBPACK_IMPORTED_MODULE_17__["default"]),
|
|
17203
17305
|
/* harmony export */ visit: () => (/* reexport safe */ _traversal_visitor__WEBPACK_IMPORTED_MODULE_19__.visit)
|
|
@@ -17229,14 +17331,18 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
17229
17331
|
/* harmony import */ var _clone_errors_CloneError__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(425);
|
|
17230
17332
|
/* harmony import */ var _clone_errors_DeepCloneError__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(4775);
|
|
17231
17333
|
/* harmony import */ var _clone_errors_ShallowCloneError__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(8872);
|
|
17232
|
-
/* harmony import */ var
|
|
17233
|
-
/* harmony import */ var
|
|
17234
|
-
/* harmony import */ var
|
|
17235
|
-
/* harmony import */ var
|
|
17236
|
-
/* harmony import */ var
|
|
17237
|
-
/* harmony import */ var
|
|
17238
|
-
/* harmony import */ var
|
|
17239
|
-
/* harmony import */ var
|
|
17334
|
+
/* harmony import */ var _identity__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(1285);
|
|
17335
|
+
/* harmony import */ var _identity_errors_ElementIdentityError__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(8979);
|
|
17336
|
+
/* harmony import */ var _transformers_from__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(5138);
|
|
17337
|
+
/* harmony import */ var _transformers_serializers_value__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(7995);
|
|
17338
|
+
/* harmony import */ var _transformers_serializers_json__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(5346);
|
|
17339
|
+
/* harmony import */ var _transformers_serializers_yaml_1_2__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(2337);
|
|
17340
|
+
/* harmony import */ var _transformers_dehydrate__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(8684);
|
|
17341
|
+
/* harmony import */ var _transformers_to_string__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(8343);
|
|
17342
|
+
/* harmony import */ var _transformers_sexprs__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(4373);
|
|
17343
|
+
/* harmony import */ var _deepmerge__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(7624);
|
|
17344
|
+
|
|
17345
|
+
|
|
17240
17346
|
|
|
17241
17347
|
|
|
17242
17348
|
|