@amiceli/papierjs 0.1.0 → 0.2.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.
Files changed (85) hide show
  1. package/dist/cjs/{index-e5bb90c8.js → index-1be60996.js} +301 -5
  2. package/dist/cjs/index-1be60996.js.map +1 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/p-alert.cjs.entry.js +1 -1
  5. package/dist/cjs/p-badge.cjs.entry.js +34 -0
  6. package/dist/cjs/p-badge.cjs.entry.js.map +1 -0
  7. package/dist/cjs/p-button.cjs.entry.js +2 -2
  8. package/dist/cjs/p-dropdown-item.cjs.entry.js +2 -2
  9. package/dist/cjs/p-dropdown.cjs.entry.js +3 -3
  10. package/dist/cjs/p-input-text.cjs.entry.js +2 -2
  11. package/dist/cjs/p-leaf.cjs.entry.js +26 -0
  12. package/dist/cjs/p-leaf.cjs.entry.js.map +1 -0
  13. package/dist/cjs/p-progress-bar.cjs.entry.js +2 -2
  14. package/dist/cjs/papierjs.cjs.js +2 -2
  15. package/dist/collection/collection-manifest.json +2 -0
  16. package/dist/collection/components/badge/badge.css +3222 -0
  17. package/dist/collection/components/badge/badge.js +82 -0
  18. package/dist/collection/components/badge/badge.js.map +1 -0
  19. package/dist/collection/components/button/button.js +1 -1
  20. package/dist/collection/components/dropdown/dropdown.js +2 -2
  21. package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
  22. package/dist/collection/components/input/input-text/input-text.js +1 -1
  23. package/dist/collection/components/leaf/leaf.css +3219 -0
  24. package/dist/collection/components/leaf/leaf.js +48 -0
  25. package/dist/collection/components/leaf/leaf.js.map +1 -0
  26. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  27. package/dist/components/index.js +1 -1
  28. package/dist/components/{p-92aa42e7.js → p-81e1c3fa.js} +293 -5
  29. package/dist/components/p-81e1c3fa.js.map +1 -0
  30. package/dist/components/p-alert.js +1 -1
  31. package/dist/components/p-badge.d.ts +11 -0
  32. package/dist/components/p-badge.js +52 -0
  33. package/dist/components/p-badge.js.map +1 -0
  34. package/dist/components/p-button.js +2 -2
  35. package/dist/components/p-dropdown-item.js +2 -2
  36. package/dist/components/p-dropdown.js +3 -3
  37. package/dist/components/p-input-text.js +2 -2
  38. package/dist/components/p-leaf.d.ts +11 -0
  39. package/dist/components/p-leaf.js +42 -0
  40. package/dist/components/p-leaf.js.map +1 -0
  41. package/dist/components/p-progress-bar.js +2 -2
  42. package/dist/esm/{index-809c10ff.js → index-a242df70.js} +301 -5
  43. package/dist/esm/index-a242df70.js.map +1 -0
  44. package/dist/esm/loader.js +3 -3
  45. package/dist/esm/p-alert.entry.js +1 -1
  46. package/dist/esm/p-badge.entry.js +30 -0
  47. package/dist/esm/p-badge.entry.js.map +1 -0
  48. package/dist/esm/p-button.entry.js +2 -2
  49. package/dist/esm/p-dropdown-item.entry.js +2 -2
  50. package/dist/esm/p-dropdown.entry.js +3 -3
  51. package/dist/esm/p-input-text.entry.js +2 -2
  52. package/dist/esm/p-leaf.entry.js +22 -0
  53. package/dist/esm/p-leaf.entry.js.map +1 -0
  54. package/dist/esm/p-progress-bar.entry.js +2 -2
  55. package/dist/esm/papierjs.js +3 -3
  56. package/dist/papierjs/{p-c3243b73.entry.js → p-0feb5c6d.entry.js} +2 -2
  57. package/dist/papierjs/{p-ce66a0db.entry.js → p-17353c7b.entry.js} +2 -2
  58. package/dist/papierjs/p-370e3431.entry.js +2 -0
  59. package/dist/papierjs/p-370e3431.entry.js.map +1 -0
  60. package/dist/papierjs/p-3c1781d8.js +3 -0
  61. package/dist/papierjs/p-3c1781d8.js.map +1 -0
  62. package/dist/papierjs/{p-99159731.entry.js → p-4199034f.entry.js} +2 -2
  63. package/dist/papierjs/{p-8e9a6ac4.entry.js → p-524777fc.entry.js} +2 -2
  64. package/dist/papierjs/{p-6e9110f7.entry.js → p-9cbdff58.entry.js} +3 -3
  65. package/dist/papierjs/{p-de62cf76.entry.js → p-aa9cca5f.entry.js} +2 -2
  66. package/dist/papierjs/p-b1a06c34.entry.js +2 -0
  67. package/dist/papierjs/p-b1a06c34.entry.js.map +1 -0
  68. package/dist/papierjs/papierjs.esm.js +1 -1
  69. package/dist/papierjs/papierjs.esm.js.map +1 -1
  70. package/dist/types/components/badge/badge.d.ts +9 -0
  71. package/dist/types/components/leaf/leaf.d.ts +5 -0
  72. package/dist/types/components.d.ts +32 -0
  73. package/package.json +3 -3
  74. package/readme.md +14 -6
  75. package/dist/cjs/index-e5bb90c8.js.map +0 -1
  76. package/dist/components/p-92aa42e7.js.map +0 -1
  77. package/dist/esm/index-809c10ff.js.map +0 -1
  78. package/dist/papierjs/p-45914d24.js +0 -3
  79. package/dist/papierjs/p-45914d24.js.map +0 -1
  80. /package/dist/papierjs/{p-c3243b73.entry.js.map → p-0feb5c6d.entry.js.map} +0 -0
  81. /package/dist/papierjs/{p-ce66a0db.entry.js.map → p-17353c7b.entry.js.map} +0 -0
  82. /package/dist/papierjs/{p-99159731.entry.js.map → p-4199034f.entry.js.map} +0 -0
  83. /package/dist/papierjs/{p-8e9a6ac4.entry.js.map → p-524777fc.entry.js.map} +0 -0
  84. /package/dist/papierjs/{p-6e9110f7.entry.js.map → p-9cbdff58.entry.js.map} +0 -0
  85. /package/dist/papierjs/{p-de62cf76.entry.js.map → p-aa9cca5f.entry.js.map} +0 -0
@@ -1,5 +1,5 @@
1
1
  const NAMESPACE = 'papierjs';
2
- const BUILD = /* papierjs */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: false };
2
+ const BUILD = /* papierjs */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, cmpDidLoad: true, cmpDidRender: false, cmpDidUnload: false, cmpDidUpdate: false, cmpShouldUpdate: false, cmpWillLoad: false, cmpWillRender: false, cmpWillUpdate: false, connectedCallback: false, constructableCSS: true, cssAnnotations: true, devTools: false, disconnectedCallback: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: false, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: false, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: true, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: false, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: false, propNumber: true, propString: true, reflect: false, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: true, state: true, style: true, svg: false, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: false, vdomRender: true, vdomStyle: false, vdomText: true, vdomXlink: false, watchCallback: false };
3
3
 
4
4
  /*
5
5
  Stencil Client Platform v4.25.3 | MIT Licensed | https://stenciljs.com
@@ -58,6 +58,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
58
58
  return import(
59
59
  /* webpackMode: "lazy" */
60
60
  './p-alert.entry.js').then(processMod, consoleError);
61
+ case 'p-badge':
62
+ return import(
63
+ /* webpackMode: "lazy" */
64
+ './p-badge.entry.js').then(processMod, consoleError);
61
65
  case 'p-button':
62
66
  return import(
63
67
  /* webpackMode: "lazy" */
@@ -74,6 +78,10 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
74
78
  return import(
75
79
  /* webpackMode: "lazy" */
76
80
  './p-input-text.entry.js').then(processMod, consoleError);
81
+ case 'p-leaf':
82
+ return import(
83
+ /* webpackMode: "lazy" */
84
+ './p-leaf.entry.js').then(processMod, consoleError);
77
85
  case 'p-progress-bar':
78
86
  return import(
79
87
  /* webpackMode: "lazy" */
@@ -234,6 +242,63 @@ var unwrapErr = (result) => {
234
242
  throw result.value;
235
243
  }
236
244
  };
245
+ var updateFallbackSlotVisibility = (elm) => {
246
+ const childNodes = elm.__childNodes || elm.childNodes;
247
+ if (elm.tagName && elm.tagName.includes("-") && elm["s-cr"] && elm.tagName !== "SLOT-FB") {
248
+ getHostSlotNodes(childNodes, elm.tagName).forEach((slotNode) => {
249
+ var _a;
250
+ if (slotNode.nodeType === 1 /* ElementNode */ && slotNode.tagName === "SLOT-FB") {
251
+ if ((_a = getHostSlotChildNodes(slotNode, slotNode["s-sn"], false)) == null ? void 0 : _a.length) {
252
+ slotNode.hidden = true;
253
+ } else {
254
+ slotNode.hidden = false;
255
+ }
256
+ }
257
+ });
258
+ }
259
+ for (const childNode of childNodes) {
260
+ if (childNode.nodeType === 1 /* ElementNode */ && (childNode.__childNodes || childNode.childNodes).length) {
261
+ updateFallbackSlotVisibility(childNode);
262
+ }
263
+ }
264
+ };
265
+ function getHostSlotNodes(childNodes, hostName, slotName) {
266
+ let i2 = 0;
267
+ let slottedNodes = [];
268
+ let childNode;
269
+ for (; i2 < childNodes.length; i2++) {
270
+ childNode = childNodes[i2];
271
+ if (childNode["s-sr"] && childNode["s-hn"] === hostName && (slotName === void 0 || childNode["s-sn"] === slotName)) {
272
+ slottedNodes.push(childNode);
273
+ if (typeof slotName !== "undefined") return slottedNodes;
274
+ }
275
+ slottedNodes = [...slottedNodes, ...getHostSlotNodes(childNode.childNodes, hostName, slotName)];
276
+ }
277
+ return slottedNodes;
278
+ }
279
+ var getHostSlotChildNodes = (node, slotName, includeSlot = true) => {
280
+ const childNodes = [];
281
+ if (includeSlot && node["s-sr"] || !node["s-sr"]) childNodes.push(node);
282
+ while ((node = node.nextSibling) && node["s-sn"] === slotName) {
283
+ childNodes.push(node);
284
+ }
285
+ return childNodes;
286
+ };
287
+ var isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
288
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
289
+ if (nodeToRelocate.getAttribute("slot") === null && slotName === "") {
290
+ return true;
291
+ }
292
+ if (nodeToRelocate.getAttribute("slot") === slotName) {
293
+ return true;
294
+ }
295
+ return false;
296
+ }
297
+ if (nodeToRelocate["s-sn"] === slotName) {
298
+ return true;
299
+ }
300
+ return slotName === "";
301
+ };
237
302
  var createTime = (fnName, tagName = "") => {
238
303
  {
239
304
  return () => {
@@ -251,6 +316,7 @@ var uniqueTime = (key, measureText) => {
251
316
  var h = (nodeName, vnodeData, ...children) => {
252
317
  let child = null;
253
318
  let key = null;
319
+ let slotName = null;
254
320
  let simple = false;
255
321
  let lastSimple = false;
256
322
  const vNodeChildren = [];
@@ -277,6 +343,9 @@ var h = (nodeName, vnodeData, ...children) => {
277
343
  if (vnodeData.key) {
278
344
  key = vnodeData.key;
279
345
  }
346
+ if (vnodeData.name) {
347
+ slotName = vnodeData.name;
348
+ }
280
349
  {
281
350
  const classData = vnodeData.className || vnodeData.class;
282
351
  if (classData) {
@@ -292,6 +361,9 @@ var h = (nodeName, vnodeData, ...children) => {
292
361
  {
293
362
  vnode.$key$ = key;
294
363
  }
364
+ {
365
+ vnode.$name$ = slotName;
366
+ }
295
367
  return vnode;
296
368
  };
297
369
  var newVNode = (tag, text) => {
@@ -308,6 +380,9 @@ var newVNode = (tag, text) => {
308
380
  {
309
381
  vnode.$key$ = null;
310
382
  }
383
+ {
384
+ vnode.$name$ = null;
385
+ }
311
386
  return vnode;
312
387
  };
313
388
  var Host = {};
@@ -557,16 +632,38 @@ function sortedAttrNames(attrNames) {
557
632
  attrNames
558
633
  );
559
634
  }
635
+ var contentRef;
560
636
  var hostTagName;
561
637
  var useNativeShadowDom = false;
638
+ var checkSlotFallbackVisibility = false;
639
+ var checkSlotRelocate = false;
562
640
  var isSvgMode = false;
563
641
  var createElm = (oldParentVNode, newParentVNode, childIndex) => {
642
+ var _a;
564
643
  const newVNode2 = newParentVNode.$children$[childIndex];
565
644
  let i2 = 0;
566
645
  let elm;
567
646
  let childNode;
647
+ let oldVNode;
648
+ if (!useNativeShadowDom) {
649
+ checkSlotRelocate = true;
650
+ if (newVNode2.$tag$ === "slot") {
651
+ newVNode2.$flags$ |= newVNode2.$children$ ? (
652
+ // slot element has fallback content
653
+ // still create an element that "mocks" the slot element
654
+ 2 /* isSlotFallback */
655
+ ) : (
656
+ // slot element does not have fallback content
657
+ // create an html comment we'll use to always reference
658
+ // where actual slot content should sit next to
659
+ 1 /* isSlotReference */
660
+ );
661
+ }
662
+ }
568
663
  if (newVNode2.$text$ !== null) {
569
664
  elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);
665
+ } else if (newVNode2.$flags$ & 1 /* isSlotReference */) {
666
+ elm = newVNode2.$elm$ = doc.createTextNode("");
570
667
  } else {
571
668
  elm = newVNode2.$elm$ = doc.createElement(
572
669
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
@@ -584,10 +681,50 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
584
681
  }
585
682
  }
586
683
  elm["s-hn"] = hostTagName;
684
+ {
685
+ if (newVNode2.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {
686
+ elm["s-sr"] = true;
687
+ elm["s-cr"] = contentRef;
688
+ elm["s-sn"] = newVNode2.$name$ || "";
689
+ elm["s-rf"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;
690
+ oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
691
+ if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {
692
+ {
693
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
694
+ }
695
+ }
696
+ }
697
+ }
587
698
  return elm;
588
699
  };
700
+ var putBackInOriginalLocation = (parentElm, recursive) => {
701
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
702
+ const oldSlotChildNodes = Array.from(parentElm.__childNodes || parentElm.childNodes);
703
+ if (parentElm["s-sr"] && BUILD.experimentalSlotFixes) {
704
+ let node = parentElm;
705
+ while (node = node.nextSibling) {
706
+ if (node && node["s-sn"] === parentElm["s-sn"] && node["s-sh"] === hostTagName) {
707
+ oldSlotChildNodes.push(node);
708
+ }
709
+ }
710
+ }
711
+ for (let i2 = oldSlotChildNodes.length - 1; i2 >= 0; i2--) {
712
+ const childNode = oldSlotChildNodes[i2];
713
+ if (childNode["s-hn"] !== hostTagName && childNode["s-ol"]) {
714
+ insertBefore(referenceNode(childNode).parentNode, childNode, referenceNode(childNode));
715
+ childNode["s-ol"].remove();
716
+ childNode["s-ol"] = void 0;
717
+ childNode["s-sh"] = void 0;
718
+ checkSlotRelocate = true;
719
+ }
720
+ if (recursive) {
721
+ putBackInOriginalLocation(childNode, recursive);
722
+ }
723
+ }
724
+ plt.$flags$ &= ~1 /* isTmpDisconnected */;
725
+ };
589
726
  var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
590
- let containerElm = parentElm;
727
+ let containerElm = parentElm["s-cr"] && parentElm["s-cr"].parentNode || parentElm;
591
728
  let childNode;
592
729
  if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
593
730
  containerElm = containerElm.shadowRoot;
@@ -597,7 +734,7 @@ var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
597
734
  childNode = createElm(null, parentVNode, startIdx);
598
735
  if (childNode) {
599
736
  vnodes[startIdx].$elm$ = childNode;
600
- insertBefore(containerElm, childNode, before);
737
+ insertBefore(containerElm, childNode, referenceNode(before) );
601
738
  }
602
739
  }
603
740
  }
@@ -608,6 +745,14 @@ var removeVnodes = (vnodes, startIdx, endIdx) => {
608
745
  if (vnode) {
609
746
  const elm = vnode.$elm$;
610
747
  if (elm) {
748
+ {
749
+ checkSlotFallbackVisibility = true;
750
+ if (elm["s-ol"]) {
751
+ elm["s-ol"].remove();
752
+ } else {
753
+ putBackInOriginalLocation(elm, true);
754
+ }
755
+ }
611
756
  elm.remove();
612
757
  }
613
758
  }
@@ -644,11 +789,17 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
644
789
  oldEndVnode = oldCh[--oldEndIdx];
645
790
  newEndVnode = newCh[--newEndIdx];
646
791
  } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {
792
+ if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
793
+ putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
794
+ }
647
795
  patch(oldStartVnode, newEndVnode, isInitialRender);
648
796
  insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);
649
797
  oldStartVnode = oldCh[++oldStartIdx];
650
798
  newEndVnode = newCh[--newEndIdx];
651
799
  } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {
800
+ if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
801
+ putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
802
+ }
652
803
  patch(oldEndVnode, newStartVnode, isInitialRender);
653
804
  insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);
654
805
  oldEndVnode = oldCh[--oldEndIdx];
@@ -679,7 +830,11 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
679
830
  }
680
831
  if (node) {
681
832
  {
682
- insertBefore(oldStartVnode.$elm$.parentNode, node, oldStartVnode.$elm$);
833
+ insertBefore(
834
+ referenceNode(oldStartVnode.$elm$).parentNode,
835
+ node,
836
+ referenceNode(oldStartVnode.$elm$)
837
+ );
683
838
  }
684
839
  }
685
840
  }
@@ -699,6 +854,9 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
699
854
  };
700
855
  var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
701
856
  if (leftVNode.$tag$ === rightVNode.$tag$) {
857
+ if (leftVNode.$tag$ === "slot") {
858
+ return leftVNode.$name$ === rightVNode.$name$;
859
+ }
702
860
  if (!isInitialRender) {
703
861
  return leftVNode.$key$ === rightVNode.$key$;
704
862
  }
@@ -709,12 +867,14 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
709
867
  }
710
868
  return false;
711
869
  };
870
+ var referenceNode = (node) => node && node["s-ol"] || node;
712
871
  var patch = (oldVNode, newVNode2, isInitialRender = false) => {
713
872
  const elm = newVNode2.$elm$ = oldVNode.$elm$;
714
873
  const oldChildren = oldVNode.$children$;
715
874
  const newChildren = newVNode2.$children$;
716
875
  const tag = newVNode2.$tag$;
717
876
  const text = newVNode2.$text$;
877
+ let defaultHolder;
718
878
  if (text === null) {
719
879
  {
720
880
  if (tag === "slot" && !useNativeShadowDom) ; else {
@@ -734,16 +894,69 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
734
894
  ) {
735
895
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
736
896
  }
897
+ } else if ((defaultHolder = elm["s-cr"])) {
898
+ defaultHolder.parentNode.textContent = text;
737
899
  } else if (oldVNode.$text$ !== text) {
738
900
  elm.data = text;
739
901
  }
740
902
  };
903
+ var relocateNodes = [];
904
+ var markSlotContentForRelocation = (elm) => {
905
+ let node;
906
+ let hostContentNodes;
907
+ let j;
908
+ const children = elm.__childNodes || elm.childNodes;
909
+ for (const childNode of children) {
910
+ if (childNode["s-sr"] && (node = childNode["s-cr"]) && node.parentNode) {
911
+ hostContentNodes = node.parentNode.__childNodes || node.parentNode.childNodes;
912
+ const slotName = childNode["s-sn"];
913
+ for (j = hostContentNodes.length - 1; j >= 0; j--) {
914
+ node = hostContentNodes[j];
915
+ if (!node["s-cn"] && !node["s-nr"] && node["s-hn"] !== childNode["s-hn"] && (!BUILD.experimentalSlotFixes )) {
916
+ if (isNodeLocatedInSlot(node, slotName)) {
917
+ let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
918
+ checkSlotFallbackVisibility = true;
919
+ node["s-sn"] = node["s-sn"] || slotName;
920
+ if (relocateNodeData) {
921
+ relocateNodeData.$nodeToRelocate$["s-sh"] = childNode["s-hn"];
922
+ relocateNodeData.$slotRefNode$ = childNode;
923
+ } else {
924
+ node["s-sh"] = childNode["s-hn"];
925
+ relocateNodes.push({
926
+ $slotRefNode$: childNode,
927
+ $nodeToRelocate$: node
928
+ });
929
+ }
930
+ if (node["s-sr"]) {
931
+ relocateNodes.map((relocateNode) => {
932
+ if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node["s-sn"])) {
933
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
934
+ if (relocateNodeData && !relocateNode.$slotRefNode$) {
935
+ relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
936
+ }
937
+ }
938
+ });
939
+ }
940
+ } else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
941
+ relocateNodes.push({
942
+ $nodeToRelocate$: node
943
+ });
944
+ }
945
+ }
946
+ }
947
+ }
948
+ if (childNode.nodeType === 1 /* ElementNode */) {
949
+ markSlotContentForRelocation(childNode);
950
+ }
951
+ }
952
+ };
741
953
  var insertBefore = (parent, newNode, reference) => {
742
954
  {
743
955
  return parent == null ? void 0 : parent.insertBefore(newNode, reference);
744
956
  }
745
957
  };
746
958
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
959
+ var _a, _b, _c, _d;
747
960
  const hostElm = hostRef.$hostElement$;
748
961
  const cmpMeta = hostRef.$cmpMeta$;
749
962
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
@@ -761,7 +974,77 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
761
974
  hostRef.$vnode$ = rootVnode;
762
975
  rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
763
976
  useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;
977
+ {
978
+ contentRef = hostElm["s-cr"];
979
+ checkSlotFallbackVisibility = false;
980
+ }
764
981
  patch(oldVNode, rootVnode, isInitialLoad);
982
+ {
983
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
984
+ if (checkSlotRelocate) {
985
+ markSlotContentForRelocation(rootVnode.$elm$);
986
+ for (const relocateData of relocateNodes) {
987
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
988
+ if (!nodeToRelocate["s-ol"]) {
989
+ const orgLocationNode = doc.createTextNode("");
990
+ orgLocationNode["s-nr"] = nodeToRelocate;
991
+ insertBefore(nodeToRelocate.parentNode, nodeToRelocate["s-ol"] = orgLocationNode, nodeToRelocate);
992
+ }
993
+ }
994
+ for (const relocateData of relocateNodes) {
995
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
996
+ const slotRefNode = relocateData.$slotRefNode$;
997
+ if (slotRefNode) {
998
+ const parentNodeRef = slotRefNode.parentNode;
999
+ let insertBeforeNode = slotRefNode.nextSibling;
1000
+ {
1001
+ let orgLocationNode = (_a = nodeToRelocate["s-ol"]) == null ? void 0 : _a.previousSibling;
1002
+ while (orgLocationNode) {
1003
+ let refNode = (_b = orgLocationNode["s-nr"]) != null ? _b : null;
1004
+ if (refNode && refNode["s-sn"] === nodeToRelocate["s-sn"] && parentNodeRef === (refNode.__parentNode || refNode.parentNode)) {
1005
+ refNode = refNode.nextSibling;
1006
+ while (refNode === nodeToRelocate || (refNode == null ? void 0 : refNode["s-sr"])) {
1007
+ refNode = refNode == null ? void 0 : refNode.nextSibling;
1008
+ }
1009
+ if (!refNode || !refNode["s-nr"]) {
1010
+ insertBeforeNode = refNode;
1011
+ break;
1012
+ }
1013
+ }
1014
+ orgLocationNode = orgLocationNode.previousSibling;
1015
+ }
1016
+ }
1017
+ const parent = nodeToRelocate.__parentNode || nodeToRelocate.parentNode;
1018
+ const nextSibling = nodeToRelocate.__nextSibling || nodeToRelocate.nextSibling;
1019
+ if (!insertBeforeNode && parentNodeRef !== parent || nextSibling !== insertBeforeNode) {
1020
+ if (nodeToRelocate !== insertBeforeNode) {
1021
+ if (!nodeToRelocate["s-hn"] && nodeToRelocate["s-ol"]) {
1022
+ nodeToRelocate["s-hn"] = nodeToRelocate["s-ol"].parentNode.nodeName;
1023
+ }
1024
+ insertBefore(parentNodeRef, nodeToRelocate, insertBeforeNode);
1025
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */ && nodeToRelocate.tagName !== "SLOT-FB") {
1026
+ nodeToRelocate.hidden = (_c = nodeToRelocate["s-ih"]) != null ? _c : false;
1027
+ }
1028
+ }
1029
+ }
1030
+ nodeToRelocate && typeof slotRefNode["s-rf"] === "function" && slotRefNode["s-rf"](nodeToRelocate);
1031
+ } else {
1032
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
1033
+ if (isInitialLoad) {
1034
+ nodeToRelocate["s-ih"] = (_d = nodeToRelocate.hidden) != null ? _d : false;
1035
+ }
1036
+ nodeToRelocate.hidden = true;
1037
+ }
1038
+ }
1039
+ }
1040
+ }
1041
+ if (checkSlotFallbackVisibility) {
1042
+ updateFallbackSlotVisibility(rootVnode.$elm$);
1043
+ }
1044
+ plt.$flags$ &= ~1 /* isTmpDisconnected */;
1045
+ relocateNodes.length = 0;
1046
+ }
1047
+ contentRef = void 0;
765
1048
  };
766
1049
 
767
1050
  // src/runtime/update-component.ts
@@ -1138,6 +1421,12 @@ var connectedCallback = (elm) => {
1138
1421
  const endConnected = createTime("connectedCallback", cmpMeta.$tagName$);
1139
1422
  if (!(hostRef.$flags$ & 1 /* hasConnected */)) {
1140
1423
  hostRef.$flags$ |= 1 /* hasConnected */;
1424
+ {
1425
+ if (// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
1426
+ cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */)) {
1427
+ setContentReference(elm);
1428
+ }
1429
+ }
1141
1430
  {
1142
1431
  let ancestorComponent = elm;
1143
1432
  while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {
@@ -1168,6 +1457,13 @@ var connectedCallback = (elm) => {
1168
1457
  endConnected();
1169
1458
  }
1170
1459
  };
1460
+ var setContentReference = (elm) => {
1461
+ const contentRefElm = elm["s-cr"] = doc.createComment(
1462
+ ""
1463
+ );
1464
+ contentRefElm["s-cn"] = true;
1465
+ insertBefore(elm, contentRefElm, elm.firstChild);
1466
+ };
1171
1467
  var disconnectInstance = (instance, elm) => {
1172
1468
  };
1173
1469
  var disconnectedCallback = async (elm) => {
@@ -1357,4 +1653,4 @@ var setNonce = (nonce) => plt.$nonce$ = nonce;
1357
1653
 
1358
1654
  export { bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
1359
1655
 
1360
- //# sourceMappingURL=index-809c10ff.js.map
1656
+ //# sourceMappingURL=index-a242df70.js.map