@lvce-editor/virtual-dom 6.5.0 → 6.7.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/dist/index.d.ts CHANGED
@@ -75,6 +75,8 @@ export declare const renderInto: ($Parent: any, dom: any, eventMap?: {}) => void
75
75
  */
76
76
  export declare const render: (elements: any, eventMap?: {}, newEventMap?: {}) => HTMLElement;
77
77
  declare const A: number, Abbr: number, Article: number, Aside: number, Audio$1: number, Br: number, Button: number, Cite: number, Code: number, Col: number, ColGroup: number, Data: number, Dd: number, Del: number, Div: number, Dl: number, Dt: number, Figcaption: number, Figure: number, Footer: number, H1: number, H2: number, H3: number, H4: number, H5: number, H6: number, Header: number, Hr: number, I: number, Img: number, Input: number, Ins: number, Kbd: number, Label: number, Li: number, Nav: number, Ol: number, Option$1: number, P: number, Pre: number, Root: number, Search: number, Section: number, Select: number, Span: number, Table: number, TBody: number, Td: number, Text$1: number, TextArea: number, Tfoot: number, Th: number, THead: number, Time: number, Tr: number, Ul: number, Video: number;
78
+ declare const get: (viewletId: string | number) => any;
79
+ declare const set: (viewletId: string | number, instance: any) => void;
78
80
 
79
81
  declare namespace VirtualDomElements {
80
82
  export { A, Abbr, Article, Aside, Audio$1 as Audio, Br, Button, Cite, Code, Col, ColGroup, Data, Dd, Del, Div, Dl, Dt, Figcaption, Figure, Footer, H1, H2, H3, H4, H5, H6, Header, Hr, I, Img, Input, Ins, Kbd, Label, Li, Nav, Ol, Option$1 as Option, P, Pre, Root, Search, Section, Select, Span, TBody, THead, Table, Td, Text$1 as Text, TextArea, Tfoot, Th, Time, Tr, Ul, Video };
@@ -82,6 +84,8 @@ declare namespace VirtualDomElements {
82
84
 
83
85
  export {
84
86
  VirtualDomElements,
87
+ get as getViewletInstance,
88
+ set as setViewletInstance,
85
89
  };
86
90
 
87
91
  export {};
package/dist/index.js CHANGED
@@ -356,10 +356,10 @@ const cache = new Map();
356
356
  const has = listener => {
357
357
  return cache.has(listener);
358
358
  };
359
- const set = (listener, value) => {
359
+ const set$1 = (listener, value) => {
360
360
  cache.set(listener, value);
361
361
  };
362
- const get = listener => {
362
+ const get$1 = listener => {
363
363
  return cache.get(listener);
364
364
  };
365
365
 
@@ -385,9 +385,9 @@ const getWrappedListener = (listener, returnValue) => {
385
385
  ipc.send('Viewlet.executeViewletCommand', uid, ...result);
386
386
  };
387
387
  nameAnonymousFunction(wrapped, listener.name);
388
- set(listener, wrapped);
388
+ set$1(listener, wrapped);
389
389
  }
390
- return get(listener);
390
+ return get$1(listener);
391
391
  };
392
392
 
393
393
  const getOptions = fn => {
@@ -721,18 +721,15 @@ const replace = ($Element, nodes, eventMap = {}) => {
721
721
  // Create a temporary container to render the new nodes
722
722
  const $Temp = document.createElement('div');
723
723
  renderInternal($Temp, nodes, eventMap, eventMap);
724
- // Replace the current element with the new ones
725
- let $NewElement = $Temp.firstElementChild;
726
- if (!$NewElement) {
727
- // If no element was created (e.g., only text nodes), we need to create a wrapper
728
- // In this case, we create a div and move all children to it
729
- $NewElement = document.createElement('div');
730
- while ($Temp.firstChild) {
731
- $NewElement.append($Temp.firstChild);
732
- }
724
+ // Replace the current element with the new node(s)
725
+ const $NewNode = $Temp.firstChild;
726
+ if (!$NewNode) {
727
+ // No node was created, just remove the old element
728
+ $Element.remove();
729
+ return $Element;
733
730
  }
734
- $Element.replaceWith($NewElement);
735
- return $NewElement;
731
+ $Element.replaceWith($NewNode);
732
+ return $NewNode;
736
733
  };
737
734
 
738
735
  const SetText = 1;
@@ -1228,4 +1225,12 @@ const rememberFocus = ($Viewlet, dom, eventMap, uid = 0) => {
1228
1225
  return $Viewlet;
1229
1226
  };
1230
1227
 
1231
- export { VirtualDomElements, addFileHandle, applyPatch, getComponentUid, getComponentUidFromEvent, getDragInfo, getFileHandles, registerEventListeners, rememberFocus, removeDragInfo, render, renderInto, setComponentUid, setDragInfo, setIpc };
1228
+ const instances = Object.create(null);
1229
+ const get = viewletId => {
1230
+ return instances[viewletId];
1231
+ };
1232
+ const set = (viewletId, instance) => {
1233
+ instances[viewletId] = instance;
1234
+ };
1235
+
1236
+ export { VirtualDomElements, addFileHandle, applyPatch, getComponentUid, getComponentUidFromEvent, getDragInfo, getFileHandles, get as getViewletInstance, registerEventListeners, rememberFocus, removeDragInfo, render, renderInto, setComponentUid, setDragInfo, setIpc, set as setViewletInstance };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lvce-editor/virtual-dom",
3
- "version": "6.5.0",
3
+ "version": "6.7.0",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/lvce-editor/virtual-dom.git"