MCPcopy Create free account
hub / github.com/bigskysoftware/_hyperscript / _createPersistentIds

Function _createPersistentIds

www/js/_hyperscript-max.js:3717–3730  ·  view source on GitHub ↗
(oldIdElements, newIdElements)

Source from the content-addressed store, hash-verified

3715 return { persistentIds, idMap };
3716 }
3717 function _createPersistentIds(oldIdElements, newIdElements) {
3718 var duplicateIds = /* @__PURE__ */ new Set(), oldIdTagNameMap = /* @__PURE__ */ new Map();
3719 for (var { id, tagName } of oldIdElements) {
3720 if (oldIdTagNameMap.has(id)) duplicateIds.add(id);
3721 else if (id) oldIdTagNameMap.set(id, tagName);
3722 }
3723 var persistentIds = /* @__PURE__ */ new Set();
3724 for (var { id, tagName } of newIdElements) {
3725 if (persistentIds.has(id)) duplicateIds.add(id);
3726 else if (oldIdTagNameMap.get(id) === tagName) persistentIds.add(id);
3727 }
3728 for (var id of duplicateIds) persistentIds.delete(id);
3729 return persistentIds;
3730 }
3731 function _populateIdMapWithTree(idMap, persistentIds, root, elements) {
3732 for (var elt of elements) {
3733 if (persistentIds.has(elt.id)) {

Callers 1

_createIdMapsFunction · 0.70

Calls 3

setMethod · 0.45
getMethod · 0.45
deleteMethod · 0.45

Tested by

no test coverage detected