@amiceli/papierjs 0.1.0 → 0.3.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 (126) hide show
  1. package/dist/cjs/{index-e5bb90c8.js → index-bb0e67a4.js} +331 -5
  2. package/dist/cjs/index-bb0e67a4.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-breadcrumb-item.cjs.entry.js +35 -0
  8. package/dist/cjs/p-breadcrumb-item.cjs.entry.js.map +1 -0
  9. package/dist/cjs/p-breadcrumb.cjs.entry.js +41 -0
  10. package/dist/cjs/p-breadcrumb.cjs.entry.js.map +1 -0
  11. package/dist/cjs/p-button.cjs.entry.js +2 -2
  12. package/dist/cjs/p-dropdown-item.cjs.entry.js +2 -2
  13. package/dist/cjs/p-dropdown.cjs.entry.js +3 -3
  14. package/dist/cjs/p-input-text.cjs.entry.js +2 -2
  15. package/dist/cjs/p-leaf.cjs.entry.js +26 -0
  16. package/dist/cjs/p-leaf.cjs.entry.js.map +1 -0
  17. package/dist/cjs/p-modal.cjs.entry.js +29 -0
  18. package/dist/cjs/p-modal.cjs.entry.js.map +1 -0
  19. package/dist/cjs/p-progress-bar.cjs.entry.js +2 -2
  20. package/dist/cjs/papierjs.cjs.js +2 -2
  21. package/dist/collection/collection-manifest.json +5 -0
  22. package/dist/collection/components/badge/badge.css +3222 -0
  23. package/dist/collection/components/badge/badge.js +82 -0
  24. package/dist/collection/components/badge/badge.js.map +1 -0
  25. package/dist/collection/components/breadcrumb/breadcrumb.css +3396 -0
  26. package/dist/collection/components/breadcrumb/breadcrumb.js +64 -0
  27. package/dist/collection/components/breadcrumb/breadcrumb.js.map +1 -0
  28. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js +97 -0
  29. package/dist/collection/components/breadcrumb-item/breadcrumb-item.js.map +1 -0
  30. package/dist/collection/components/button/button.js +1 -1
  31. package/dist/collection/components/dropdown/dropdown.js +2 -2
  32. package/dist/collection/components/dropdown-item/dropdown-item.js +1 -1
  33. package/dist/collection/components/input/input-text/input-text.js +1 -1
  34. package/dist/collection/components/leaf/leaf.css +3219 -0
  35. package/dist/collection/components/leaf/leaf.js +48 -0
  36. package/dist/collection/components/leaf/leaf.js.map +1 -0
  37. package/dist/collection/components/p-modal/p-modal.css +3224 -0
  38. package/dist/collection/components/p-modal/p-modal.js +61 -0
  39. package/dist/collection/components/p-modal/p-modal.js.map +1 -0
  40. package/dist/collection/components/p-modal/p-modal.preview.js +26 -0
  41. package/dist/collection/components/p-modal/p-modal.preview.js.map +1 -0
  42. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  43. package/dist/components/index.js +1 -1
  44. package/dist/components/{p-92aa42e7.js → p-784ab1ae.js} +294 -6
  45. package/dist/components/p-784ab1ae.js.map +1 -0
  46. package/dist/components/p-alert.js +1 -1
  47. package/dist/components/p-badge.d.ts +11 -0
  48. package/dist/components/p-badge.js +52 -0
  49. package/dist/components/p-badge.js.map +1 -0
  50. package/dist/components/p-breadcrumb-item.d.ts +11 -0
  51. package/dist/components/p-breadcrumb-item.js +54 -0
  52. package/dist/components/p-breadcrumb-item.js.map +1 -0
  53. package/dist/components/p-breadcrumb.d.ts +11 -0
  54. package/dist/components/p-breadcrumb.js +58 -0
  55. package/dist/components/p-breadcrumb.js.map +1 -0
  56. package/dist/components/p-button.js +2 -2
  57. package/dist/components/p-dropdown-item.js +2 -2
  58. package/dist/components/p-dropdown.js +3 -3
  59. package/dist/components/p-input-text.js +2 -2
  60. package/dist/components/p-leaf.d.ts +11 -0
  61. package/dist/components/p-leaf.js +42 -0
  62. package/dist/components/p-leaf.js.map +1 -0
  63. package/dist/components/p-modal.d.ts +11 -0
  64. package/dist/components/p-modal.js +48 -0
  65. package/dist/components/p-modal.js.map +1 -0
  66. package/dist/components/p-progress-bar.js +2 -2
  67. package/dist/esm/{index-809c10ff.js → index-d88148b4.js} +331 -6
  68. package/dist/esm/index-d88148b4.js.map +1 -0
  69. package/dist/esm/loader.js +3 -3
  70. package/dist/esm/p-alert.entry.js +1 -1
  71. package/dist/esm/p-badge.entry.js +30 -0
  72. package/dist/esm/p-badge.entry.js.map +1 -0
  73. package/dist/esm/p-breadcrumb-item.entry.js +31 -0
  74. package/dist/esm/p-breadcrumb-item.entry.js.map +1 -0
  75. package/dist/esm/p-breadcrumb.entry.js +37 -0
  76. package/dist/esm/p-breadcrumb.entry.js.map +1 -0
  77. package/dist/esm/p-button.entry.js +2 -2
  78. package/dist/esm/p-dropdown-item.entry.js +2 -2
  79. package/dist/esm/p-dropdown.entry.js +3 -3
  80. package/dist/esm/p-input-text.entry.js +2 -2
  81. package/dist/esm/p-leaf.entry.js +22 -0
  82. package/dist/esm/p-leaf.entry.js.map +1 -0
  83. package/dist/esm/p-modal.entry.js +25 -0
  84. package/dist/esm/p-modal.entry.js.map +1 -0
  85. package/dist/esm/p-progress-bar.entry.js +2 -2
  86. package/dist/esm/papierjs.js +3 -3
  87. package/dist/papierjs/p-022f2011.entry.js +2 -0
  88. package/dist/papierjs/p-022f2011.entry.js.map +1 -0
  89. package/dist/papierjs/p-1cac6dc4.entry.js +2 -0
  90. package/dist/papierjs/p-1cac6dc4.entry.js.map +1 -0
  91. package/dist/papierjs/p-2ed960c9.entry.js +2 -0
  92. package/dist/papierjs/p-2ed960c9.entry.js.map +1 -0
  93. package/dist/papierjs/p-5f857750.entry.js +2 -0
  94. package/dist/papierjs/p-5f857750.entry.js.map +1 -0
  95. package/dist/papierjs/{p-6e9110f7.entry.js → p-704b216f.entry.js} +3 -3
  96. package/dist/papierjs/{p-8e9a6ac4.entry.js → p-7f976699.entry.js} +2 -2
  97. package/dist/papierjs/{p-ce66a0db.entry.js → p-8240849e.entry.js} +2 -2
  98. package/dist/papierjs/p-8b96fa1d.js +3 -0
  99. package/dist/papierjs/p-8b96fa1d.js.map +1 -0
  100. package/dist/papierjs/{p-99159731.entry.js → p-ca16de19.entry.js} +2 -2
  101. package/dist/papierjs/{p-c3243b73.entry.js → p-d2178145.entry.js} +2 -2
  102. package/dist/papierjs/p-ebbd3c9d.entry.js +2 -0
  103. package/dist/papierjs/p-ebbd3c9d.entry.js.map +1 -0
  104. package/dist/papierjs/{p-de62cf76.entry.js → p-ff268801.entry.js} +2 -2
  105. package/dist/papierjs/papierjs.esm.js +1 -1
  106. package/dist/papierjs/papierjs.esm.js.map +1 -1
  107. package/dist/types/components/badge/badge.d.ts +9 -0
  108. package/dist/types/components/breadcrumb/breadcrumb.d.ts +7 -0
  109. package/dist/types/components/breadcrumb-item/breadcrumb-item.d.ts +8 -0
  110. package/dist/types/components/leaf/leaf.d.ts +5 -0
  111. package/dist/types/components/p-modal/p-modal.d.ts +6 -0
  112. package/dist/types/components/p-modal/p-modal.preview.d.ts +1 -0
  113. package/dist/types/components.d.ts +81 -0
  114. package/package.json +7 -7
  115. package/readme.md +14 -6
  116. package/dist/cjs/index-e5bb90c8.js.map +0 -1
  117. package/dist/components/p-92aa42e7.js.map +0 -1
  118. package/dist/esm/index-809c10ff.js.map +0 -1
  119. package/dist/papierjs/p-45914d24.js +0 -3
  120. package/dist/papierjs/p-45914d24.js.map +0 -1
  121. /package/dist/papierjs/{p-6e9110f7.entry.js.map → p-704b216f.entry.js.map} +0 -0
  122. /package/dist/papierjs/{p-8e9a6ac4.entry.js.map → p-7f976699.entry.js.map} +0 -0
  123. /package/dist/papierjs/{p-ce66a0db.entry.js.map → p-8240849e.entry.js.map} +0 -0
  124. /package/dist/papierjs/{p-99159731.entry.js.map → p-ca16de19.entry.js.map} +0 -0
  125. /package/dist/papierjs/{p-c3243b73.entry.js.map → p-d2178145.entry.js.map} +0 -0
  126. /package/dist/papierjs/{p-de62cf76.entry.js.map → p-ff268801.entry.js.map} +0 -0
@@ -21,7 +21,7 @@ function _interopNamespace(e) {
21
21
  }
22
22
 
23
23
  const NAMESPACE = 'papierjs';
24
- 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 };
24
+ 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: true, 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 };
25
25
 
26
26
  /*
27
27
  Stencil Client Platform v4.25.3 | MIT Licensed | https://stenciljs.com
@@ -45,6 +45,9 @@ var registerHost = (hostElement, cmpMeta) => {
45
45
  $cmpMeta$: cmpMeta,
46
46
  $instanceValues$: /* @__PURE__ */ new Map()
47
47
  };
48
+ {
49
+ hostRef.$onInstancePromise$ = new Promise((r) => hostRef.$onInstanceResolve$ = r);
50
+ }
48
51
  {
49
52
  hostRef.$onReadyPromise$ = new Promise((r) => hostRef.$onReadyResolve$ = r);
50
53
  hostElement["s-p"] = [];
@@ -80,6 +83,18 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
80
83
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
81
84
  /* webpackMode: "lazy" */
82
85
  './p-alert.cjs.entry.js')); }).then(processMod, consoleError);
86
+ case 'p-badge.cjs':
87
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
88
+ /* webpackMode: "lazy" */
89
+ './p-badge.cjs.entry.js')); }).then(processMod, consoleError);
90
+ case 'p-breadcrumb.cjs':
91
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
92
+ /* webpackMode: "lazy" */
93
+ './p-breadcrumb.cjs.entry.js')); }).then(processMod, consoleError);
94
+ case 'p-breadcrumb-item.cjs':
95
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
96
+ /* webpackMode: "lazy" */
97
+ './p-breadcrumb-item.cjs.entry.js')); }).then(processMod, consoleError);
83
98
  case 'p-button.cjs':
84
99
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
85
100
  /* webpackMode: "lazy" */
@@ -96,6 +111,14 @@ var loadModule = (cmpMeta, hostRef, hmrVersionId) => {
96
111
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
97
112
  /* webpackMode: "lazy" */
98
113
  './p-input-text.cjs.entry.js')); }).then(processMod, consoleError);
114
+ case 'p-leaf.cjs':
115
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
116
+ /* webpackMode: "lazy" */
117
+ './p-leaf.cjs.entry.js')); }).then(processMod, consoleError);
118
+ case 'p-modal.cjs':
119
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
120
+ /* webpackMode: "lazy" */
121
+ './p-modal.cjs.entry.js')); }).then(processMod, consoleError);
99
122
  case 'p-progress-bar.cjs':
100
123
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
101
124
  /* webpackMode: "lazy" */
@@ -256,6 +279,63 @@ var unwrapErr = (result) => {
256
279
  throw result.value;
257
280
  }
258
281
  };
282
+ var updateFallbackSlotVisibility = (elm) => {
283
+ const childNodes = elm.__childNodes || elm.childNodes;
284
+ if (elm.tagName && elm.tagName.includes("-") && elm["s-cr"] && elm.tagName !== "SLOT-FB") {
285
+ getHostSlotNodes(childNodes, elm.tagName).forEach((slotNode) => {
286
+ var _a;
287
+ if (slotNode.nodeType === 1 /* ElementNode */ && slotNode.tagName === "SLOT-FB") {
288
+ if ((_a = getHostSlotChildNodes(slotNode, slotNode["s-sn"], false)) == null ? void 0 : _a.length) {
289
+ slotNode.hidden = true;
290
+ } else {
291
+ slotNode.hidden = false;
292
+ }
293
+ }
294
+ });
295
+ }
296
+ for (const childNode of childNodes) {
297
+ if (childNode.nodeType === 1 /* ElementNode */ && (childNode.__childNodes || childNode.childNodes).length) {
298
+ updateFallbackSlotVisibility(childNode);
299
+ }
300
+ }
301
+ };
302
+ function getHostSlotNodes(childNodes, hostName, slotName) {
303
+ let i2 = 0;
304
+ let slottedNodes = [];
305
+ let childNode;
306
+ for (; i2 < childNodes.length; i2++) {
307
+ childNode = childNodes[i2];
308
+ if (childNode["s-sr"] && childNode["s-hn"] === hostName && (slotName === void 0 || childNode["s-sn"] === slotName)) {
309
+ slottedNodes.push(childNode);
310
+ if (typeof slotName !== "undefined") return slottedNodes;
311
+ }
312
+ slottedNodes = [...slottedNodes, ...getHostSlotNodes(childNode.childNodes, hostName, slotName)];
313
+ }
314
+ return slottedNodes;
315
+ }
316
+ var getHostSlotChildNodes = (node, slotName, includeSlot = true) => {
317
+ const childNodes = [];
318
+ if (includeSlot && node["s-sr"] || !node["s-sr"]) childNodes.push(node);
319
+ while ((node = node.nextSibling) && node["s-sn"] === slotName) {
320
+ childNodes.push(node);
321
+ }
322
+ return childNodes;
323
+ };
324
+ var isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
325
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
326
+ if (nodeToRelocate.getAttribute("slot") === null && slotName === "") {
327
+ return true;
328
+ }
329
+ if (nodeToRelocate.getAttribute("slot") === slotName) {
330
+ return true;
331
+ }
332
+ return false;
333
+ }
334
+ if (nodeToRelocate["s-sn"] === slotName) {
335
+ return true;
336
+ }
337
+ return slotName === "";
338
+ };
259
339
  var createTime = (fnName, tagName = "") => {
260
340
  {
261
341
  return () => {
@@ -273,6 +353,7 @@ var uniqueTime = (key, measureText) => {
273
353
  var h = (nodeName, vnodeData, ...children) => {
274
354
  let child = null;
275
355
  let key = null;
356
+ let slotName = null;
276
357
  let simple = false;
277
358
  let lastSimple = false;
278
359
  const vNodeChildren = [];
@@ -299,6 +380,9 @@ var h = (nodeName, vnodeData, ...children) => {
299
380
  if (vnodeData.key) {
300
381
  key = vnodeData.key;
301
382
  }
383
+ if (vnodeData.name) {
384
+ slotName = vnodeData.name;
385
+ }
302
386
  {
303
387
  const classData = vnodeData.className || vnodeData.class;
304
388
  if (classData) {
@@ -314,6 +398,9 @@ var h = (nodeName, vnodeData, ...children) => {
314
398
  {
315
399
  vnode.$key$ = key;
316
400
  }
401
+ {
402
+ vnode.$name$ = slotName;
403
+ }
317
404
  return vnode;
318
405
  };
319
406
  var newVNode = (tag, text) => {
@@ -330,6 +417,9 @@ var newVNode = (tag, text) => {
330
417
  {
331
418
  vnode.$key$ = null;
332
419
  }
420
+ {
421
+ vnode.$name$ = null;
422
+ }
333
423
  return vnode;
334
424
  };
335
425
  var Host = {};
@@ -579,16 +669,38 @@ function sortedAttrNames(attrNames) {
579
669
  attrNames
580
670
  );
581
671
  }
672
+ var contentRef;
582
673
  var hostTagName;
583
674
  var useNativeShadowDom = false;
675
+ var checkSlotFallbackVisibility = false;
676
+ var checkSlotRelocate = false;
584
677
  var isSvgMode = false;
585
678
  var createElm = (oldParentVNode, newParentVNode, childIndex) => {
679
+ var _a;
586
680
  const newVNode2 = newParentVNode.$children$[childIndex];
587
681
  let i2 = 0;
588
682
  let elm;
589
683
  let childNode;
684
+ let oldVNode;
685
+ if (!useNativeShadowDom) {
686
+ checkSlotRelocate = true;
687
+ if (newVNode2.$tag$ === "slot") {
688
+ newVNode2.$flags$ |= newVNode2.$children$ ? (
689
+ // slot element has fallback content
690
+ // still create an element that "mocks" the slot element
691
+ 2 /* isSlotFallback */
692
+ ) : (
693
+ // slot element does not have fallback content
694
+ // create an html comment we'll use to always reference
695
+ // where actual slot content should sit next to
696
+ 1 /* isSlotReference */
697
+ );
698
+ }
699
+ }
590
700
  if (newVNode2.$text$ !== null) {
591
701
  elm = newVNode2.$elm$ = doc.createTextNode(newVNode2.$text$);
702
+ } else if (newVNode2.$flags$ & 1 /* isSlotReference */) {
703
+ elm = newVNode2.$elm$ = doc.createTextNode("");
592
704
  } else {
593
705
  elm = newVNode2.$elm$ = doc.createElement(
594
706
  !useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
@@ -606,10 +718,50 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
606
718
  }
607
719
  }
608
720
  elm["s-hn"] = hostTagName;
721
+ {
722
+ if (newVNode2.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {
723
+ elm["s-sr"] = true;
724
+ elm["s-cr"] = contentRef;
725
+ elm["s-sn"] = newVNode2.$name$ || "";
726
+ elm["s-rf"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;
727
+ oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
728
+ if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {
729
+ {
730
+ putBackInOriginalLocation(oldParentVNode.$elm$, false);
731
+ }
732
+ }
733
+ }
734
+ }
609
735
  return elm;
610
736
  };
737
+ var putBackInOriginalLocation = (parentElm, recursive) => {
738
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
739
+ const oldSlotChildNodes = Array.from(parentElm.__childNodes || parentElm.childNodes);
740
+ if (parentElm["s-sr"] && BUILD.experimentalSlotFixes) {
741
+ let node = parentElm;
742
+ while (node = node.nextSibling) {
743
+ if (node && node["s-sn"] === parentElm["s-sn"] && node["s-sh"] === hostTagName) {
744
+ oldSlotChildNodes.push(node);
745
+ }
746
+ }
747
+ }
748
+ for (let i2 = oldSlotChildNodes.length - 1; i2 >= 0; i2--) {
749
+ const childNode = oldSlotChildNodes[i2];
750
+ if (childNode["s-hn"] !== hostTagName && childNode["s-ol"]) {
751
+ insertBefore(referenceNode(childNode).parentNode, childNode, referenceNode(childNode));
752
+ childNode["s-ol"].remove();
753
+ childNode["s-ol"] = void 0;
754
+ childNode["s-sh"] = void 0;
755
+ checkSlotRelocate = true;
756
+ }
757
+ if (recursive) {
758
+ putBackInOriginalLocation(childNode, recursive);
759
+ }
760
+ }
761
+ plt.$flags$ &= ~1 /* isTmpDisconnected */;
762
+ };
611
763
  var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
612
- let containerElm = parentElm;
764
+ let containerElm = parentElm["s-cr"] && parentElm["s-cr"].parentNode || parentElm;
613
765
  let childNode;
614
766
  if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
615
767
  containerElm = containerElm.shadowRoot;
@@ -619,7 +771,7 @@ var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
619
771
  childNode = createElm(null, parentVNode, startIdx);
620
772
  if (childNode) {
621
773
  vnodes[startIdx].$elm$ = childNode;
622
- insertBefore(containerElm, childNode, before);
774
+ insertBefore(containerElm, childNode, referenceNode(before) );
623
775
  }
624
776
  }
625
777
  }
@@ -630,6 +782,14 @@ var removeVnodes = (vnodes, startIdx, endIdx) => {
630
782
  if (vnode) {
631
783
  const elm = vnode.$elm$;
632
784
  if (elm) {
785
+ {
786
+ checkSlotFallbackVisibility = true;
787
+ if (elm["s-ol"]) {
788
+ elm["s-ol"].remove();
789
+ } else {
790
+ putBackInOriginalLocation(elm, true);
791
+ }
792
+ }
633
793
  elm.remove();
634
794
  }
635
795
  }
@@ -666,11 +826,17 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
666
826
  oldEndVnode = oldCh[--oldEndIdx];
667
827
  newEndVnode = newCh[--newEndIdx];
668
828
  } else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {
829
+ if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
830
+ putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
831
+ }
669
832
  patch(oldStartVnode, newEndVnode, isInitialRender);
670
833
  insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);
671
834
  oldStartVnode = oldCh[++oldStartIdx];
672
835
  newEndVnode = newCh[--newEndIdx];
673
836
  } else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {
837
+ if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
838
+ putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
839
+ }
674
840
  patch(oldEndVnode, newStartVnode, isInitialRender);
675
841
  insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);
676
842
  oldEndVnode = oldCh[--oldEndIdx];
@@ -701,7 +867,11 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
701
867
  }
702
868
  if (node) {
703
869
  {
704
- insertBefore(oldStartVnode.$elm$.parentNode, node, oldStartVnode.$elm$);
870
+ insertBefore(
871
+ referenceNode(oldStartVnode.$elm$).parentNode,
872
+ node,
873
+ referenceNode(oldStartVnode.$elm$)
874
+ );
705
875
  }
706
876
  }
707
877
  }
@@ -721,6 +891,9 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
721
891
  };
722
892
  var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
723
893
  if (leftVNode.$tag$ === rightVNode.$tag$) {
894
+ if (leftVNode.$tag$ === "slot") {
895
+ return leftVNode.$name$ === rightVNode.$name$;
896
+ }
724
897
  if (!isInitialRender) {
725
898
  return leftVNode.$key$ === rightVNode.$key$;
726
899
  }
@@ -731,12 +904,14 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
731
904
  }
732
905
  return false;
733
906
  };
907
+ var referenceNode = (node) => node && node["s-ol"] || node;
734
908
  var patch = (oldVNode, newVNode2, isInitialRender = false) => {
735
909
  const elm = newVNode2.$elm$ = oldVNode.$elm$;
736
910
  const oldChildren = oldVNode.$children$;
737
911
  const newChildren = newVNode2.$children$;
738
912
  const tag = newVNode2.$tag$;
739
913
  const text = newVNode2.$text$;
914
+ let defaultHolder;
740
915
  if (text === null) {
741
916
  {
742
917
  if (tag === "slot" && !useNativeShadowDom) ; else {
@@ -756,16 +931,69 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
756
931
  ) {
757
932
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
758
933
  }
934
+ } else if ((defaultHolder = elm["s-cr"])) {
935
+ defaultHolder.parentNode.textContent = text;
759
936
  } else if (oldVNode.$text$ !== text) {
760
937
  elm.data = text;
761
938
  }
762
939
  };
940
+ var relocateNodes = [];
941
+ var markSlotContentForRelocation = (elm) => {
942
+ let node;
943
+ let hostContentNodes;
944
+ let j;
945
+ const children = elm.__childNodes || elm.childNodes;
946
+ for (const childNode of children) {
947
+ if (childNode["s-sr"] && (node = childNode["s-cr"]) && node.parentNode) {
948
+ hostContentNodes = node.parentNode.__childNodes || node.parentNode.childNodes;
949
+ const slotName = childNode["s-sn"];
950
+ for (j = hostContentNodes.length - 1; j >= 0; j--) {
951
+ node = hostContentNodes[j];
952
+ if (!node["s-cn"] && !node["s-nr"] && node["s-hn"] !== childNode["s-hn"] && (!BUILD.experimentalSlotFixes )) {
953
+ if (isNodeLocatedInSlot(node, slotName)) {
954
+ let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
955
+ checkSlotFallbackVisibility = true;
956
+ node["s-sn"] = node["s-sn"] || slotName;
957
+ if (relocateNodeData) {
958
+ relocateNodeData.$nodeToRelocate$["s-sh"] = childNode["s-hn"];
959
+ relocateNodeData.$slotRefNode$ = childNode;
960
+ } else {
961
+ node["s-sh"] = childNode["s-hn"];
962
+ relocateNodes.push({
963
+ $slotRefNode$: childNode,
964
+ $nodeToRelocate$: node
965
+ });
966
+ }
967
+ if (node["s-sr"]) {
968
+ relocateNodes.map((relocateNode) => {
969
+ if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node["s-sn"])) {
970
+ relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
971
+ if (relocateNodeData && !relocateNode.$slotRefNode$) {
972
+ relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
973
+ }
974
+ }
975
+ });
976
+ }
977
+ } else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
978
+ relocateNodes.push({
979
+ $nodeToRelocate$: node
980
+ });
981
+ }
982
+ }
983
+ }
984
+ }
985
+ if (childNode.nodeType === 1 /* ElementNode */) {
986
+ markSlotContentForRelocation(childNode);
987
+ }
988
+ }
989
+ };
763
990
  var insertBefore = (parent, newNode, reference) => {
764
991
  {
765
992
  return parent == null ? void 0 : parent.insertBefore(newNode, reference);
766
993
  }
767
994
  };
768
995
  var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
996
+ var _a, _b, _c, _d;
769
997
  const hostElm = hostRef.$hostElement$;
770
998
  const cmpMeta = hostRef.$cmpMeta$;
771
999
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
@@ -783,7 +1011,77 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
783
1011
  hostRef.$vnode$ = rootVnode;
784
1012
  rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
785
1013
  useNativeShadowDom = (cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) !== 0;
1014
+ {
1015
+ contentRef = hostElm["s-cr"];
1016
+ checkSlotFallbackVisibility = false;
1017
+ }
786
1018
  patch(oldVNode, rootVnode, isInitialLoad);
1019
+ {
1020
+ plt.$flags$ |= 1 /* isTmpDisconnected */;
1021
+ if (checkSlotRelocate) {
1022
+ markSlotContentForRelocation(rootVnode.$elm$);
1023
+ for (const relocateData of relocateNodes) {
1024
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1025
+ if (!nodeToRelocate["s-ol"]) {
1026
+ const orgLocationNode = doc.createTextNode("");
1027
+ orgLocationNode["s-nr"] = nodeToRelocate;
1028
+ insertBefore(nodeToRelocate.parentNode, nodeToRelocate["s-ol"] = orgLocationNode, nodeToRelocate);
1029
+ }
1030
+ }
1031
+ for (const relocateData of relocateNodes) {
1032
+ const nodeToRelocate = relocateData.$nodeToRelocate$;
1033
+ const slotRefNode = relocateData.$slotRefNode$;
1034
+ if (slotRefNode) {
1035
+ const parentNodeRef = slotRefNode.parentNode;
1036
+ let insertBeforeNode = slotRefNode.nextSibling;
1037
+ {
1038
+ let orgLocationNode = (_a = nodeToRelocate["s-ol"]) == null ? void 0 : _a.previousSibling;
1039
+ while (orgLocationNode) {
1040
+ let refNode = (_b = orgLocationNode["s-nr"]) != null ? _b : null;
1041
+ if (refNode && refNode["s-sn"] === nodeToRelocate["s-sn"] && parentNodeRef === (refNode.__parentNode || refNode.parentNode)) {
1042
+ refNode = refNode.nextSibling;
1043
+ while (refNode === nodeToRelocate || (refNode == null ? void 0 : refNode["s-sr"])) {
1044
+ refNode = refNode == null ? void 0 : refNode.nextSibling;
1045
+ }
1046
+ if (!refNode || !refNode["s-nr"]) {
1047
+ insertBeforeNode = refNode;
1048
+ break;
1049
+ }
1050
+ }
1051
+ orgLocationNode = orgLocationNode.previousSibling;
1052
+ }
1053
+ }
1054
+ const parent = nodeToRelocate.__parentNode || nodeToRelocate.parentNode;
1055
+ const nextSibling = nodeToRelocate.__nextSibling || nodeToRelocate.nextSibling;
1056
+ if (!insertBeforeNode && parentNodeRef !== parent || nextSibling !== insertBeforeNode) {
1057
+ if (nodeToRelocate !== insertBeforeNode) {
1058
+ if (!nodeToRelocate["s-hn"] && nodeToRelocate["s-ol"]) {
1059
+ nodeToRelocate["s-hn"] = nodeToRelocate["s-ol"].parentNode.nodeName;
1060
+ }
1061
+ insertBefore(parentNodeRef, nodeToRelocate, insertBeforeNode);
1062
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */ && nodeToRelocate.tagName !== "SLOT-FB") {
1063
+ nodeToRelocate.hidden = (_c = nodeToRelocate["s-ih"]) != null ? _c : false;
1064
+ }
1065
+ }
1066
+ }
1067
+ nodeToRelocate && typeof slotRefNode["s-rf"] === "function" && slotRefNode["s-rf"](nodeToRelocate);
1068
+ } else {
1069
+ if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
1070
+ if (isInitialLoad) {
1071
+ nodeToRelocate["s-ih"] = (_d = nodeToRelocate.hidden) != null ? _d : false;
1072
+ }
1073
+ nodeToRelocate.hidden = true;
1074
+ }
1075
+ }
1076
+ }
1077
+ }
1078
+ if (checkSlotFallbackVisibility) {
1079
+ updateFallbackSlotVisibility(rootVnode.$elm$);
1080
+ }
1081
+ plt.$flags$ &= ~1 /* isTmpDisconnected */;
1082
+ relocateNodes.length = 0;
1083
+ }
1084
+ contentRef = void 0;
787
1085
  };
788
1086
 
789
1087
  // src/runtime/update-component.ts
@@ -913,6 +1211,9 @@ var postUpdateComponent = (hostRef) => {
913
1211
  } else {
914
1212
  endPostUpdate();
915
1213
  }
1214
+ {
1215
+ hostRef.$onInstanceResolve$(elm);
1216
+ }
916
1217
  {
917
1218
  if (hostRef.$onRenderResolve$) {
918
1219
  hostRef.$onRenderResolve$();
@@ -1038,6 +1339,17 @@ var proxyComponent = (Cstr, cmpMeta, flags) => {
1038
1339
  }
1039
1340
  }
1040
1341
  });
1342
+ } else if (flags & 1 /* isElementConstructor */ && memberFlags & 64 /* Method */) {
1343
+ Object.defineProperty(prototype, memberName, {
1344
+ value(...args) {
1345
+ var _a2;
1346
+ const ref = getHostRef(this);
1347
+ return (_a2 = ref == null ? void 0 : ref.$onInstancePromise$) == null ? void 0 : _a2.then(() => {
1348
+ var _a3;
1349
+ return (_a3 = ref.$lazyInstance$) == null ? void 0 : _a3[memberName](...args);
1350
+ });
1351
+ }
1352
+ });
1041
1353
  }
1042
1354
  });
1043
1355
  if ((flags & 1 /* isElementConstructor */)) {
@@ -1160,6 +1472,12 @@ var connectedCallback = (elm) => {
1160
1472
  const endConnected = createTime("connectedCallback", cmpMeta.$tagName$);
1161
1473
  if (!(hostRef.$flags$ & 1 /* hasConnected */)) {
1162
1474
  hostRef.$flags$ |= 1 /* hasConnected */;
1475
+ {
1476
+ if (// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
1477
+ cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */)) {
1478
+ setContentReference(elm);
1479
+ }
1480
+ }
1163
1481
  {
1164
1482
  let ancestorComponent = elm;
1165
1483
  while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {
@@ -1190,6 +1508,13 @@ var connectedCallback = (elm) => {
1190
1508
  endConnected();
1191
1509
  }
1192
1510
  };
1511
+ var setContentReference = (elm) => {
1512
+ const contentRefElm = elm["s-cr"] = doc.createComment(
1513
+ ""
1514
+ );
1515
+ contentRefElm["s-cn"] = true;
1516
+ insertBefore(elm, contentRefElm, elm.firstChild);
1517
+ };
1193
1518
  var disconnectInstance = (instance, elm) => {
1194
1519
  };
1195
1520
  var disconnectedCallback = async (elm) => {
@@ -1377,6 +1702,7 @@ var hostListenerOpts = (flags) => supportsListenerOptions ? {
1377
1702
  // src/runtime/nonce.ts
1378
1703
  var setNonce = (nonce) => plt.$nonce$ = nonce;
1379
1704
 
1705
+ exports.Host = Host;
1380
1706
  exports.bootstrapLazy = bootstrapLazy;
1381
1707
  exports.createEvent = createEvent;
1382
1708
  exports.getElement = getElement;
@@ -1385,4 +1711,4 @@ exports.promiseResolve = promiseResolve;
1385
1711
  exports.registerInstance = registerInstance;
1386
1712
  exports.setNonce = setNonce;
1387
1713
 
1388
- //# sourceMappingURL=index-e5bb90c8.js.map
1714
+ //# sourceMappingURL=index-bb0e67a4.js.map