@sula-tech/webcomponents 0.14.1 → 0.16.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/cjs/{index-C19aFtyq.js → index-CHZXBkfx.js} +357 -7
- package/dist/cjs/index-CHZXBkfx.js.map +1 -0
- package/dist/cjs/loader.cjs.js +2 -2
- package/dist/cjs/{sula-avatar_21.cjs.entry.js → sula-avatar_28.cjs.entry.js} +2103 -23
- package/dist/cjs/sula-avatar_28.cjs.entry.js.map +1 -0
- package/dist/cjs/webcomponents.cjs.js +2 -2
- package/dist/collection/collection-manifest.json +8 -1
- package/dist/collection/components/sula-dropdown/sula-dropdown.js +6 -6
- package/dist/collection/components/sula-dropdown/sula-dropdown.js.map +1 -1
- package/dist/collection/components/sula-icon/sula-icon.css +1 -1
- package/dist/collection/components/sula-table/model/sula-table.model.js +8 -0
- package/dist/collection/components/sula-table/model/sula-table.model.js.map +1 -0
- package/dist/collection/components/sula-table/sula-table.css +1 -0
- package/dist/collection/components/sula-table/sula-table.js +111 -0
- package/dist/collection/components/sula-table/sula-table.js.map +1 -0
- package/dist/collection/components/sula-table/sula-table.stories.js +298 -0
- package/dist/collection/components/sula-table/sula-table.stories.js.map +1 -0
- package/dist/collection/components/sula-table-body/sula-table-body.css +1 -0
- package/dist/collection/components/sula-table-body/sula-table-body.js +23 -0
- package/dist/collection/components/sula-table-body/sula-table-body.js.map +1 -0
- package/dist/collection/components/sula-table-cell/sula-table-cell.css +1 -0
- package/dist/collection/components/sula-table-cell/sula-table-cell.js +34 -0
- package/dist/collection/components/sula-table-cell/sula-table-cell.js.map +1 -0
- package/dist/collection/components/sula-table-head-cell/sula-table-head-cell.css +1 -0
- package/dist/collection/components/sula-table-head-cell/sula-table-head-cell.js +34 -0
- package/dist/collection/components/sula-table-head-cell/sula-table-head-cell.js.map +1 -0
- package/dist/collection/components/sula-table-header/sula-table-header.css +1 -0
- package/dist/collection/components/sula-table-header/sula-table-header.js +23 -0
- package/dist/collection/components/sula-table-header/sula-table-header.js.map +1 -0
- package/dist/collection/components/sula-table-row/sula-table-row.css +1 -0
- package/dist/collection/components/sula-table-row/sula-table-row.js +23 -0
- package/dist/collection/components/sula-table-row/sula-table-row.js.map +1 -0
- package/dist/collection/components/sula-tag/sula-tag.js +3 -3
- package/dist/collection/components/sula-textarea/sula-textarea.js +6 -6
- package/dist/collection/components/sula-textfield/sula-textfield.js +2 -2
- package/dist/collection/components/sula-tiles/sula-tiles.js +1 -1
- package/dist/collection/components/sula-timeline-list/sula-timeline-list.js +1 -1
- package/dist/collection/components/sula-tooltip/model/sula-tooltip.model.js +13 -0
- package/dist/collection/components/sula-tooltip/model/sula-tooltip.model.js.map +1 -0
- package/dist/collection/components/sula-tooltip/sula-tooltip.css +1 -0
- package/dist/collection/components/sula-tooltip/sula-tooltip.js +218 -0
- package/dist/collection/components/sula-tooltip/sula-tooltip.js.map +1 -0
- package/dist/collection/components/sula-tooltip/sula-tooltip.stories.js +179 -0
- package/dist/collection/components/sula-tooltip/sula-tooltip.stories.js.map +1 -0
- package/dist/collection/utils/replace-host-with-rendered-element.js +24 -0
- package/dist/collection/utils/replace-host-with-rendered-element.js.map +1 -0
- package/dist/components/index.js +355 -5
- package/dist/components/index.js.map +1 -1
- package/dist/components/{p-tr2oA4pB.js → p-BoXZrDgj.js} +3 -3
- package/dist/components/{p-tr2oA4pB.js.map → p-BoXZrDgj.js.map} +1 -1
- package/dist/components/p-CQ1I0UIz.js +12 -0
- package/dist/components/p-CQ1I0UIz.js.map +1 -0
- package/dist/components/p-DrIWCpI3.js +28 -0
- package/dist/components/p-DrIWCpI3.js.map +1 -0
- package/dist/components/{p-BlyFOqde.js → p-ExcZQ46X.js} +3 -3
- package/dist/components/{p-BlyFOqde.js.map → p-ExcZQ46X.js.map} +1 -1
- package/dist/components/sula-avatar.js +1 -1
- package/dist/components/sula-badge.js +1 -1
- package/dist/components/sula-breadcrumb.js +1 -1
- package/dist/components/sula-button.js +1 -1
- package/dist/components/sula-checkbox.js +1 -1
- package/dist/components/sula-chip.js +1 -1
- package/dist/components/sula-dropdown.js +7 -7
- package/dist/components/sula-dropdown.js.map +1 -1
- package/dist/components/sula-icon.js +1 -1
- package/dist/components/sula-modal.js +2 -2
- package/dist/components/sula-progress-bar.js +1 -1
- package/dist/components/sula-search-bar.js +1 -1
- package/dist/components/sula-segmented-control.js +1 -1
- package/dist/components/sula-table-body.d.ts +11 -0
- package/dist/components/sula-table-body.js +41 -0
- package/dist/components/sula-table-body.js.map +1 -0
- package/dist/components/sula-table-cell.d.ts +11 -0
- package/dist/components/sula-table-cell.js +52 -0
- package/dist/components/sula-table-cell.js.map +1 -0
- package/dist/components/sula-table-head-cell.d.ts +11 -0
- package/dist/components/sula-table-head-cell.js +52 -0
- package/dist/components/sula-table-head-cell.js.map +1 -0
- package/dist/components/sula-table-header.d.ts +11 -0
- package/dist/components/sula-table-header.js +41 -0
- package/dist/components/sula-table-header.js.map +1 -0
- package/dist/components/sula-table-row.d.ts +11 -0
- package/dist/components/sula-table-row.js +41 -0
- package/dist/components/sula-table-row.js.map +1 -0
- package/dist/components/sula-table.d.ts +11 -0
- package/dist/components/sula-table.js +61 -0
- package/dist/components/sula-table.js.map +1 -0
- package/dist/components/sula-tag.js +4 -4
- package/dist/components/sula-textarea.js +6 -6
- package/dist/components/sula-textfield.js +3 -3
- package/dist/components/sula-tiles.js +2 -2
- package/dist/components/sula-timeline-list.js +2 -2
- package/dist/components/sula-tooltip.d.ts +11 -0
- package/dist/components/sula-tooltip.js +1946 -0
- package/dist/components/sula-tooltip.js.map +1 -0
- package/dist/esm/{index-CwIBTB8E.js → index-CwrCjm3e.js} +357 -7
- package/dist/esm/index-CwrCjm3e.js.map +1 -0
- package/dist/esm/loader.js +3 -3
- package/dist/esm/{sula-avatar_21.entry.js → sula-avatar_28.entry.js} +2097 -24
- package/dist/esm/sula-avatar_28.entry.js.map +1 -0
- package/dist/esm/webcomponents.js +3 -3
- package/dist/types/components/sula-table/model/sula-table.model.d.ts +6 -0
- package/dist/types/components/sula-table/sula-table.d.ts +16 -0
- package/dist/types/components/sula-table/sula-table.stories.d.ts +69 -0
- package/dist/types/components/sula-table-body/sula-table-body.d.ts +5 -0
- package/dist/types/components/sula-table-cell/sula-table-cell.d.ts +6 -0
- package/dist/types/components/sula-table-head-cell/sula-table-head-cell.d.ts +6 -0
- package/dist/types/components/sula-table-header/sula-table-header.d.ts +5 -0
- package/dist/types/components/sula-table-row/sula-table-row.d.ts +5 -0
- package/dist/types/components/sula-tooltip/model/sula-tooltip.model.d.ts +10 -0
- package/dist/types/components/sula-tooltip/sula-tooltip.d.ts +40 -0
- package/dist/types/components/sula-tooltip/sula-tooltip.stories.d.ts +105 -0
- package/dist/types/components.d.ts +163 -0
- package/dist/types/utils/replace-host-with-rendered-element.d.ts +1 -0
- package/dist/webcomponents/{p-a7141407.entry.js → p-8472342b.entry.js} +3258 -1317
- package/dist/webcomponents/p-8472342b.entry.js.map +1 -0
- package/dist/webcomponents/{p-CwIBTB8E.js → p-CwrCjm3e.js} +504 -150
- package/dist/webcomponents/p-CwrCjm3e.js.map +1 -0
- package/dist/webcomponents/webcomponents.esm.js +14 -4
- package/package.json +2 -1
- package/dist/cjs/index-C19aFtyq.js.map +0 -1
- package/dist/cjs/sula-avatar_21.cjs.entry.js.map +0 -1
- package/dist/esm/index-CwIBTB8E.js.map +0 -1
- package/dist/esm/sula-avatar_21.entry.js.map +0 -1
- package/dist/webcomponents/p-CwIBTB8E.js.map +0 -1
- package/dist/webcomponents/p-a7141407.entry.js.map +0 -1
package/dist/components/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const globalStyles = "*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scroll-snap-strictness:proximity;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;}/*! tailwindcss v3.4.17 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box }:after,:before{--tw-content:\"\"}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;tab-size:4 }body{line-height:inherit;margin:0 }hr{border-top-width:1px;color:inherit;height:0 }abbr:where([title]){text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal }small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0 }button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;letter-spacing:inherit;line-height:inherit;margin:0;padding:0 }button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none }:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px }::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit }summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1 }[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle }img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}:root{text-rendering:optimizeLegibility}";
|
|
2
2
|
|
|
3
3
|
const NAMESPACE = 'webcomponents';
|
|
4
|
-
const BUILD = /* webcomponents */ { hydratedSelectorName: "hydrated", lazyLoad: false, updatable: true};
|
|
4
|
+
const BUILD = /* webcomponents */ { hydratedSelectorName: "hydrated", lazyLoad: false, slotRelocation: true, updatable: true};
|
|
5
5
|
|
|
6
6
|
/*
|
|
7
7
|
Stencil Client Platform v4.35.1 | MIT Licensed | https://stenciljs.com
|
|
@@ -193,6 +193,112 @@ function createShadowRoot(cmpMeta) {
|
|
|
193
193
|
shadowRoot.adoptedStyleSheets.push(sheet);
|
|
194
194
|
}
|
|
195
195
|
}
|
|
196
|
+
var updateFallbackSlotVisibility = (elm) => {
|
|
197
|
+
const childNodes = internalCall(elm, "childNodes");
|
|
198
|
+
if (elm.tagName && elm.tagName.includes("-") && elm["s-cr"] && elm.tagName !== "SLOT-FB") {
|
|
199
|
+
getHostSlotNodes(childNodes, elm.tagName).forEach((slotNode) => {
|
|
200
|
+
if (slotNode.nodeType === 1 /* ElementNode */ && slotNode.tagName === "SLOT-FB") {
|
|
201
|
+
if (getSlotChildSiblings(slotNode, getSlotName(slotNode), false).length) {
|
|
202
|
+
slotNode.hidden = true;
|
|
203
|
+
} else {
|
|
204
|
+
slotNode.hidden = false;
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
let i2 = 0;
|
|
210
|
+
for (i2 = 0; i2 < childNodes.length; i2++) {
|
|
211
|
+
const childNode = childNodes[i2];
|
|
212
|
+
if (childNode.nodeType === 1 /* ElementNode */ && internalCall(childNode, "childNodes").length) {
|
|
213
|
+
updateFallbackSlotVisibility(childNode);
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
};
|
|
217
|
+
var getSlottedChildNodes = (childNodes) => {
|
|
218
|
+
const result = [];
|
|
219
|
+
for (let i2 = 0; i2 < childNodes.length; i2++) {
|
|
220
|
+
const slottedNode = childNodes[i2]["s-nr"] || void 0;
|
|
221
|
+
if (slottedNode && slottedNode.isConnected) {
|
|
222
|
+
result.push(slottedNode);
|
|
223
|
+
}
|
|
224
|
+
}
|
|
225
|
+
return result;
|
|
226
|
+
};
|
|
227
|
+
function getHostSlotNodes(childNodes, hostName, slotName) {
|
|
228
|
+
let i2 = 0;
|
|
229
|
+
let slottedNodes = [];
|
|
230
|
+
let childNode;
|
|
231
|
+
for (; i2 < childNodes.length; i2++) {
|
|
232
|
+
childNode = childNodes[i2];
|
|
233
|
+
if (childNode["s-sr"] && (!hostName || childNode["s-hn"] === hostName) && (slotName === void 0)) {
|
|
234
|
+
slottedNodes.push(childNode);
|
|
235
|
+
}
|
|
236
|
+
slottedNodes = [...slottedNodes, ...getHostSlotNodes(childNode.childNodes, hostName, slotName)];
|
|
237
|
+
}
|
|
238
|
+
return slottedNodes;
|
|
239
|
+
}
|
|
240
|
+
var getSlotChildSiblings = (slot, slotName, includeSlot = true) => {
|
|
241
|
+
const childNodes = [];
|
|
242
|
+
if (includeSlot && slot["s-sr"] || !slot["s-sr"]) childNodes.push(slot);
|
|
243
|
+
let node = slot;
|
|
244
|
+
while (node = node.nextSibling) {
|
|
245
|
+
if (getSlotName(node) === slotName && (includeSlot || !node["s-sr"])) childNodes.push(node);
|
|
246
|
+
}
|
|
247
|
+
return childNodes;
|
|
248
|
+
};
|
|
249
|
+
var isNodeLocatedInSlot = (nodeToRelocate, slotName) => {
|
|
250
|
+
if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
|
|
251
|
+
if (nodeToRelocate.getAttribute("slot") === null && slotName === "") {
|
|
252
|
+
return true;
|
|
253
|
+
}
|
|
254
|
+
if (nodeToRelocate.getAttribute("slot") === slotName) {
|
|
255
|
+
return true;
|
|
256
|
+
}
|
|
257
|
+
return false;
|
|
258
|
+
}
|
|
259
|
+
if (nodeToRelocate["s-sn"] === slotName) {
|
|
260
|
+
return true;
|
|
261
|
+
}
|
|
262
|
+
return slotName === "";
|
|
263
|
+
};
|
|
264
|
+
var getSlotName = (node) => typeof node["s-sn"] === "string" ? node["s-sn"] : node.nodeType === 1 && node.getAttribute("slot") || void 0;
|
|
265
|
+
function patchSlotNode(node) {
|
|
266
|
+
if (node.assignedElements || node.assignedNodes || !node["s-sr"]) return;
|
|
267
|
+
const assignedFactory = (elementsOnly) => (function(opts) {
|
|
268
|
+
const toReturn = [];
|
|
269
|
+
const slotName = this["s-sn"];
|
|
270
|
+
if (opts == null ? void 0 : opts.flatten) {
|
|
271
|
+
console.error(`
|
|
272
|
+
Flattening is not supported for Stencil non-shadow slots.
|
|
273
|
+
You can use \`.childNodes\` to nested slot fallback content.
|
|
274
|
+
If you have a particular use case, please open an issue on the Stencil repo.
|
|
275
|
+
`);
|
|
276
|
+
}
|
|
277
|
+
const parent = this["s-cr"].parentElement;
|
|
278
|
+
const slottedNodes = parent.__childNodes ? parent.childNodes : getSlottedChildNodes(parent.childNodes);
|
|
279
|
+
slottedNodes.forEach((n) => {
|
|
280
|
+
if (slotName === getSlotName(n)) {
|
|
281
|
+
toReturn.push(n);
|
|
282
|
+
}
|
|
283
|
+
});
|
|
284
|
+
if (elementsOnly) {
|
|
285
|
+
return toReturn.filter((n) => n.nodeType === 1 /* ElementNode */);
|
|
286
|
+
}
|
|
287
|
+
return toReturn;
|
|
288
|
+
}).bind(node);
|
|
289
|
+
node.assignedElements = assignedFactory(true);
|
|
290
|
+
node.assignedNodes = assignedFactory(false);
|
|
291
|
+
}
|
|
292
|
+
function internalCall(node, method) {
|
|
293
|
+
if ("__" + method in node) {
|
|
294
|
+
const toReturn = node["__" + method];
|
|
295
|
+
if (typeof toReturn !== "function") return toReturn;
|
|
296
|
+
return toReturn.bind(node);
|
|
297
|
+
} else {
|
|
298
|
+
if (typeof node[method] !== "function") return node[method];
|
|
299
|
+
return node[method].bind(node);
|
|
300
|
+
}
|
|
301
|
+
}
|
|
196
302
|
var createTime = (fnName, tagName = "") => {
|
|
197
303
|
{
|
|
198
304
|
return () => {
|
|
@@ -203,6 +309,7 @@ var createTime = (fnName, tagName = "") => {
|
|
|
203
309
|
var h = (nodeName, vnodeData, ...children) => {
|
|
204
310
|
let child = null;
|
|
205
311
|
let key = null;
|
|
312
|
+
let slotName = null;
|
|
206
313
|
let simple = false;
|
|
207
314
|
let lastSimple = false;
|
|
208
315
|
const vNodeChildren = [];
|
|
@@ -229,6 +336,9 @@ var h = (nodeName, vnodeData, ...children) => {
|
|
|
229
336
|
if (vnodeData.key) {
|
|
230
337
|
key = vnodeData.key;
|
|
231
338
|
}
|
|
339
|
+
if (vnodeData.name) {
|
|
340
|
+
slotName = vnodeData.name;
|
|
341
|
+
}
|
|
232
342
|
{
|
|
233
343
|
const classData = vnodeData.className || vnodeData.class;
|
|
234
344
|
if (classData) {
|
|
@@ -244,6 +354,9 @@ var h = (nodeName, vnodeData, ...children) => {
|
|
|
244
354
|
{
|
|
245
355
|
vnode.$key$ = key;
|
|
246
356
|
}
|
|
357
|
+
{
|
|
358
|
+
vnode.$name$ = slotName;
|
|
359
|
+
}
|
|
247
360
|
return vnode;
|
|
248
361
|
};
|
|
249
362
|
var newVNode = (tag, text) => {
|
|
@@ -260,6 +373,9 @@ var newVNode = (tag, text) => {
|
|
|
260
373
|
{
|
|
261
374
|
vnode.$key$ = null;
|
|
262
375
|
}
|
|
376
|
+
{
|
|
377
|
+
vnode.$name$ = null;
|
|
378
|
+
}
|
|
263
379
|
return vnode;
|
|
264
380
|
};
|
|
265
381
|
var Host = {};
|
|
@@ -552,15 +668,41 @@ function sortedAttrNames(attrNames) {
|
|
|
552
668
|
attrNames
|
|
553
669
|
);
|
|
554
670
|
}
|
|
671
|
+
var contentRef;
|
|
555
672
|
var hostTagName;
|
|
673
|
+
var useNativeShadowDom = false;
|
|
674
|
+
var checkSlotFallbackVisibility = false;
|
|
675
|
+
var checkSlotRelocate = false;
|
|
556
676
|
var isSvgMode = false;
|
|
557
677
|
var createElm = (oldParentVNode, newParentVNode, childIndex) => {
|
|
678
|
+
var _a;
|
|
558
679
|
const newVNode2 = newParentVNode.$children$[childIndex];
|
|
559
680
|
let i2 = 0;
|
|
560
681
|
let elm;
|
|
561
682
|
let childNode;
|
|
683
|
+
let oldVNode;
|
|
684
|
+
if (!useNativeShadowDom) {
|
|
685
|
+
checkSlotRelocate = true;
|
|
686
|
+
if (newVNode2.$tag$ === "slot") {
|
|
687
|
+
newVNode2.$flags$ |= newVNode2.$children$ ? (
|
|
688
|
+
// slot element has fallback content
|
|
689
|
+
// still create an element that "mocks" the slot element
|
|
690
|
+
2 /* isSlotFallback */
|
|
691
|
+
) : (
|
|
692
|
+
// slot element does not have fallback content
|
|
693
|
+
// create an html comment we'll use to always reference
|
|
694
|
+
// where actual slot content should sit next to
|
|
695
|
+
1 /* isSlotReference */
|
|
696
|
+
);
|
|
697
|
+
}
|
|
698
|
+
}
|
|
562
699
|
if (newVNode2.$text$ !== null) {
|
|
563
700
|
elm = newVNode2.$elm$ = win.document.createTextNode(newVNode2.$text$);
|
|
701
|
+
} else if (newVNode2.$flags$ & 1 /* isSlotReference */) {
|
|
702
|
+
elm = newVNode2.$elm$ = slotReferenceDebugNode(newVNode2) ;
|
|
703
|
+
{
|
|
704
|
+
updateElement(null, newVNode2, isSvgMode);
|
|
705
|
+
}
|
|
564
706
|
} else {
|
|
565
707
|
if (!win.document) {
|
|
566
708
|
throw new Error(
|
|
@@ -568,7 +710,7 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
|
|
|
568
710
|
);
|
|
569
711
|
}
|
|
570
712
|
elm = newVNode2.$elm$ = win.document.createElement(
|
|
571
|
-
newVNode2.$tag$
|
|
713
|
+
!useNativeShadowDom && BUILD.slotRelocation && newVNode2.$flags$ & 2 /* isSlotFallback */ ? "slot-fb" : newVNode2.$tag$
|
|
572
714
|
);
|
|
573
715
|
{
|
|
574
716
|
updateElement(null, newVNode2, isSvgMode);
|
|
@@ -583,10 +725,43 @@ var createElm = (oldParentVNode, newParentVNode, childIndex) => {
|
|
|
583
725
|
}
|
|
584
726
|
}
|
|
585
727
|
elm["s-hn"] = hostTagName;
|
|
728
|
+
{
|
|
729
|
+
if (newVNode2.$flags$ & (2 /* isSlotFallback */ | 1 /* isSlotReference */)) {
|
|
730
|
+
elm["s-sr"] = true;
|
|
731
|
+
elm["s-cr"] = contentRef;
|
|
732
|
+
elm["s-sn"] = newVNode2.$name$ || "";
|
|
733
|
+
elm["s-rf"] = (_a = newVNode2.$attrs$) == null ? void 0 : _a.ref;
|
|
734
|
+
patchSlotNode(elm);
|
|
735
|
+
oldVNode = oldParentVNode && oldParentVNode.$children$ && oldParentVNode.$children$[childIndex];
|
|
736
|
+
if (oldVNode && oldVNode.$tag$ === newVNode2.$tag$ && oldParentVNode.$elm$) {
|
|
737
|
+
{
|
|
738
|
+
putBackInOriginalLocation(oldParentVNode.$elm$, false);
|
|
739
|
+
}
|
|
740
|
+
}
|
|
741
|
+
}
|
|
742
|
+
}
|
|
586
743
|
return elm;
|
|
587
744
|
};
|
|
745
|
+
var putBackInOriginalLocation = (parentElm, recursive) => {
|
|
746
|
+
plt.$flags$ |= 1 /* isTmpDisconnected */;
|
|
747
|
+
const oldSlotChildNodes = Array.from(parentElm.__childNodes || parentElm.childNodes);
|
|
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$ &= -2 /* isTmpDisconnected */;
|
|
762
|
+
};
|
|
588
763
|
var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
|
|
589
|
-
let containerElm = parentElm;
|
|
764
|
+
let containerElm = parentElm["s-cr"] && parentElm["s-cr"].parentNode || parentElm;
|
|
590
765
|
let childNode;
|
|
591
766
|
if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
|
|
592
767
|
containerElm = containerElm.shadowRoot;
|
|
@@ -596,7 +771,7 @@ var addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
|
|
|
596
771
|
childNode = createElm(null, parentVNode, startIdx);
|
|
597
772
|
if (childNode) {
|
|
598
773
|
vnodes[startIdx].$elm$ = childNode;
|
|
599
|
-
insertBefore(containerElm, childNode, before);
|
|
774
|
+
insertBefore(containerElm, childNode, referenceNode(before) );
|
|
600
775
|
}
|
|
601
776
|
}
|
|
602
777
|
}
|
|
@@ -608,6 +783,14 @@ var removeVnodes = (vnodes, startIdx, endIdx) => {
|
|
|
608
783
|
const elm = vnode.$elm$;
|
|
609
784
|
nullifyVNodeRefs(vnode);
|
|
610
785
|
if (elm) {
|
|
786
|
+
{
|
|
787
|
+
checkSlotFallbackVisibility = true;
|
|
788
|
+
if (elm["s-ol"]) {
|
|
789
|
+
elm["s-ol"].remove();
|
|
790
|
+
} else {
|
|
791
|
+
putBackInOriginalLocation(elm, true);
|
|
792
|
+
}
|
|
793
|
+
}
|
|
611
794
|
elm.remove();
|
|
612
795
|
}
|
|
613
796
|
}
|
|
@@ -644,11 +827,17 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
|
|
|
644
827
|
oldEndVnode = oldCh[--oldEndIdx];
|
|
645
828
|
newEndVnode = newCh[--newEndIdx];
|
|
646
829
|
} else if (isSameVnode(oldStartVnode, newEndVnode, isInitialRender)) {
|
|
830
|
+
if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
|
|
831
|
+
putBackInOriginalLocation(oldStartVnode.$elm$.parentNode, false);
|
|
832
|
+
}
|
|
647
833
|
patch(oldStartVnode, newEndVnode, isInitialRender);
|
|
648
834
|
insertBefore(parentElm, oldStartVnode.$elm$, oldEndVnode.$elm$.nextSibling);
|
|
649
835
|
oldStartVnode = oldCh[++oldStartIdx];
|
|
650
836
|
newEndVnode = newCh[--newEndIdx];
|
|
651
837
|
} else if (isSameVnode(oldEndVnode, newStartVnode, isInitialRender)) {
|
|
838
|
+
if ((oldStartVnode.$tag$ === "slot" || newEndVnode.$tag$ === "slot")) {
|
|
839
|
+
putBackInOriginalLocation(oldEndVnode.$elm$.parentNode, false);
|
|
840
|
+
}
|
|
652
841
|
patch(oldEndVnode, newStartVnode, isInitialRender);
|
|
653
842
|
insertBefore(parentElm, oldEndVnode.$elm$, oldStartVnode.$elm$);
|
|
654
843
|
oldEndVnode = oldCh[--oldEndIdx];
|
|
@@ -679,7 +868,11 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
|
|
|
679
868
|
}
|
|
680
869
|
if (node) {
|
|
681
870
|
{
|
|
682
|
-
insertBefore(
|
|
871
|
+
insertBefore(
|
|
872
|
+
referenceNode(oldStartVnode.$elm$).parentNode,
|
|
873
|
+
node,
|
|
874
|
+
referenceNode(oldStartVnode.$elm$)
|
|
875
|
+
);
|
|
683
876
|
}
|
|
684
877
|
}
|
|
685
878
|
}
|
|
@@ -699,6 +892,9 @@ var updateChildren = (parentElm, oldCh, newVNode2, newCh, isInitialRender = fals
|
|
|
699
892
|
};
|
|
700
893
|
var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
|
|
701
894
|
if (leftVNode.$tag$ === rightVNode.$tag$) {
|
|
895
|
+
if (leftVNode.$tag$ === "slot") {
|
|
896
|
+
return leftVNode.$name$ === rightVNode.$name$;
|
|
897
|
+
}
|
|
702
898
|
if (!isInitialRender) {
|
|
703
899
|
return leftVNode.$key$ === rightVNode.$key$;
|
|
704
900
|
}
|
|
@@ -709,11 +905,13 @@ var isSameVnode = (leftVNode, rightVNode, isInitialRender = false) => {
|
|
|
709
905
|
}
|
|
710
906
|
return false;
|
|
711
907
|
};
|
|
908
|
+
var referenceNode = (node) => node && node["s-ol"] || node;
|
|
712
909
|
var patch = (oldVNode, newVNode2, isInitialRender = false) => {
|
|
713
910
|
const elm = newVNode2.$elm$ = oldVNode.$elm$;
|
|
714
911
|
const oldChildren = oldVNode.$children$;
|
|
715
912
|
const newChildren = newVNode2.$children$;
|
|
716
913
|
const text = newVNode2.$text$;
|
|
914
|
+
let defaultHolder;
|
|
717
915
|
if (text === null) {
|
|
718
916
|
{
|
|
719
917
|
updateElement(oldVNode, newVNode2, isSvgMode);
|
|
@@ -731,10 +929,62 @@ var patch = (oldVNode, newVNode2, isInitialRender = false) => {
|
|
|
731
929
|
) {
|
|
732
930
|
removeVnodes(oldChildren, 0, oldChildren.length - 1);
|
|
733
931
|
}
|
|
932
|
+
} else if ((defaultHolder = elm["s-cr"])) {
|
|
933
|
+
defaultHolder.parentNode.textContent = text;
|
|
734
934
|
} else if (oldVNode.$text$ !== text) {
|
|
735
935
|
elm.data = text;
|
|
736
936
|
}
|
|
737
937
|
};
|
|
938
|
+
var relocateNodes = [];
|
|
939
|
+
var markSlotContentForRelocation = (elm) => {
|
|
940
|
+
let node;
|
|
941
|
+
let hostContentNodes;
|
|
942
|
+
let j;
|
|
943
|
+
const children = elm.__childNodes || elm.childNodes;
|
|
944
|
+
for (const childNode of children) {
|
|
945
|
+
if (childNode["s-sr"] && (node = childNode["s-cr"]) && node.parentNode) {
|
|
946
|
+
hostContentNodes = node.parentNode.__childNodes || node.parentNode.childNodes;
|
|
947
|
+
const slotName = childNode["s-sn"];
|
|
948
|
+
for (j = hostContentNodes.length - 1; j >= 0; j--) {
|
|
949
|
+
node = hostContentNodes[j];
|
|
950
|
+
if (!node["s-cn"] && !node["s-nr"] && node["s-hn"] !== childNode["s-hn"] && (true)) {
|
|
951
|
+
if (isNodeLocatedInSlot(node, slotName)) {
|
|
952
|
+
let relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
|
|
953
|
+
checkSlotFallbackVisibility = true;
|
|
954
|
+
node["s-sn"] = node["s-sn"] || slotName;
|
|
955
|
+
if (relocateNodeData) {
|
|
956
|
+
relocateNodeData.$nodeToRelocate$["s-sh"] = childNode["s-hn"];
|
|
957
|
+
relocateNodeData.$slotRefNode$ = childNode;
|
|
958
|
+
} else {
|
|
959
|
+
node["s-sh"] = childNode["s-hn"];
|
|
960
|
+
relocateNodes.push({
|
|
961
|
+
$slotRefNode$: childNode,
|
|
962
|
+
$nodeToRelocate$: node
|
|
963
|
+
});
|
|
964
|
+
}
|
|
965
|
+
if (node["s-sr"]) {
|
|
966
|
+
relocateNodes.map((relocateNode) => {
|
|
967
|
+
if (isNodeLocatedInSlot(relocateNode.$nodeToRelocate$, node["s-sn"])) {
|
|
968
|
+
relocateNodeData = relocateNodes.find((r) => r.$nodeToRelocate$ === node);
|
|
969
|
+
if (relocateNodeData && !relocateNode.$slotRefNode$) {
|
|
970
|
+
relocateNode.$slotRefNode$ = relocateNodeData.$slotRefNode$;
|
|
971
|
+
}
|
|
972
|
+
}
|
|
973
|
+
});
|
|
974
|
+
}
|
|
975
|
+
} else if (!relocateNodes.some((r) => r.$nodeToRelocate$ === node)) {
|
|
976
|
+
relocateNodes.push({
|
|
977
|
+
$nodeToRelocate$: node
|
|
978
|
+
});
|
|
979
|
+
}
|
|
980
|
+
}
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
if (childNode.nodeType === 1 /* ElementNode */) {
|
|
984
|
+
markSlotContentForRelocation(childNode);
|
|
985
|
+
}
|
|
986
|
+
}
|
|
987
|
+
};
|
|
738
988
|
var nullifyVNodeRefs = (vNode) => {
|
|
739
989
|
{
|
|
740
990
|
vNode.$attrs$ && vNode.$attrs$.ref && vNode.$attrs$.ref(null);
|
|
@@ -747,6 +997,7 @@ var insertBefore = (parent, newNode, reference) => {
|
|
|
747
997
|
}
|
|
748
998
|
};
|
|
749
999
|
var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
|
|
1000
|
+
var _a, _b, _c, _d;
|
|
750
1001
|
const hostElm = hostRef.$hostElement$;
|
|
751
1002
|
const cmpMeta = hostRef.$cmpMeta$;
|
|
752
1003
|
const oldVNode = hostRef.$vnode$ || newVNode(null, null);
|
|
@@ -770,7 +1021,90 @@ var renderVdom = (hostRef, renderFnResults, isInitialLoad = false) => {
|
|
|
770
1021
|
rootVnode.$flags$ |= 4 /* isHost */;
|
|
771
1022
|
hostRef.$vnode$ = rootVnode;
|
|
772
1023
|
rootVnode.$elm$ = oldVNode.$elm$ = hostElm.shadowRoot || hostElm ;
|
|
1024
|
+
useNativeShadowDom = !!(cmpMeta.$flags$ & 1 /* shadowDomEncapsulation */) && !(cmpMeta.$flags$ & 128 /* shadowNeedsScopedCss */);
|
|
1025
|
+
{
|
|
1026
|
+
contentRef = hostElm["s-cr"];
|
|
1027
|
+
checkSlotFallbackVisibility = false;
|
|
1028
|
+
}
|
|
773
1029
|
patch(oldVNode, rootVnode, isInitialLoad);
|
|
1030
|
+
{
|
|
1031
|
+
plt.$flags$ |= 1 /* isTmpDisconnected */;
|
|
1032
|
+
if (checkSlotRelocate) {
|
|
1033
|
+
markSlotContentForRelocation(rootVnode.$elm$);
|
|
1034
|
+
for (const relocateData of relocateNodes) {
|
|
1035
|
+
const nodeToRelocate = relocateData.$nodeToRelocate$;
|
|
1036
|
+
if (!nodeToRelocate["s-ol"] && win.document) {
|
|
1037
|
+
const orgLocationNode = originalLocationDebugNode(nodeToRelocate) ;
|
|
1038
|
+
orgLocationNode["s-nr"] = nodeToRelocate;
|
|
1039
|
+
insertBefore(nodeToRelocate.parentNode, nodeToRelocate["s-ol"] = orgLocationNode, nodeToRelocate);
|
|
1040
|
+
}
|
|
1041
|
+
}
|
|
1042
|
+
for (const relocateData of relocateNodes) {
|
|
1043
|
+
const nodeToRelocate = relocateData.$nodeToRelocate$;
|
|
1044
|
+
const slotRefNode = relocateData.$slotRefNode$;
|
|
1045
|
+
if (slotRefNode) {
|
|
1046
|
+
const parentNodeRef = slotRefNode.parentNode;
|
|
1047
|
+
let insertBeforeNode = slotRefNode.nextSibling;
|
|
1048
|
+
{
|
|
1049
|
+
let orgLocationNode = (_a = nodeToRelocate["s-ol"]) == null ? void 0 : _a.previousSibling;
|
|
1050
|
+
while (orgLocationNode) {
|
|
1051
|
+
let refNode = (_b = orgLocationNode["s-nr"]) != null ? _b : null;
|
|
1052
|
+
if (refNode && refNode["s-sn"] === nodeToRelocate["s-sn"] && parentNodeRef === (refNode.__parentNode || refNode.parentNode)) {
|
|
1053
|
+
refNode = refNode.nextSibling;
|
|
1054
|
+
while (refNode === nodeToRelocate || (refNode == null ? void 0 : refNode["s-sr"])) {
|
|
1055
|
+
refNode = refNode == null ? void 0 : refNode.nextSibling;
|
|
1056
|
+
}
|
|
1057
|
+
if (!refNode || !refNode["s-nr"]) {
|
|
1058
|
+
insertBeforeNode = refNode;
|
|
1059
|
+
break;
|
|
1060
|
+
}
|
|
1061
|
+
}
|
|
1062
|
+
orgLocationNode = orgLocationNode.previousSibling;
|
|
1063
|
+
}
|
|
1064
|
+
}
|
|
1065
|
+
const parent = nodeToRelocate.__parentNode || nodeToRelocate.parentNode;
|
|
1066
|
+
const nextSibling = nodeToRelocate.__nextSibling || nodeToRelocate.nextSibling;
|
|
1067
|
+
if (!insertBeforeNode && parentNodeRef !== parent || nextSibling !== insertBeforeNode) {
|
|
1068
|
+
if (nodeToRelocate !== insertBeforeNode) {
|
|
1069
|
+
if (!nodeToRelocate["s-hn"] && nodeToRelocate["s-ol"]) {
|
|
1070
|
+
nodeToRelocate["s-hn"] = nodeToRelocate["s-ol"].parentNode.nodeName;
|
|
1071
|
+
}
|
|
1072
|
+
insertBefore(parentNodeRef, nodeToRelocate, insertBeforeNode);
|
|
1073
|
+
if (nodeToRelocate.nodeType === 1 /* ElementNode */ && nodeToRelocate.tagName !== "SLOT-FB") {
|
|
1074
|
+
nodeToRelocate.hidden = (_c = nodeToRelocate["s-ih"]) != null ? _c : false;
|
|
1075
|
+
}
|
|
1076
|
+
}
|
|
1077
|
+
}
|
|
1078
|
+
nodeToRelocate && typeof slotRefNode["s-rf"] === "function" && slotRefNode["s-rf"](slotRefNode);
|
|
1079
|
+
} else {
|
|
1080
|
+
if (nodeToRelocate.nodeType === 1 /* ElementNode */) {
|
|
1081
|
+
if (isInitialLoad) {
|
|
1082
|
+
nodeToRelocate["s-ih"] = (_d = nodeToRelocate.hidden) != null ? _d : false;
|
|
1083
|
+
}
|
|
1084
|
+
nodeToRelocate.hidden = true;
|
|
1085
|
+
}
|
|
1086
|
+
}
|
|
1087
|
+
}
|
|
1088
|
+
}
|
|
1089
|
+
if (checkSlotFallbackVisibility) {
|
|
1090
|
+
updateFallbackSlotVisibility(rootVnode.$elm$);
|
|
1091
|
+
}
|
|
1092
|
+
plt.$flags$ &= -2 /* isTmpDisconnected */;
|
|
1093
|
+
relocateNodes.length = 0;
|
|
1094
|
+
}
|
|
1095
|
+
contentRef = void 0;
|
|
1096
|
+
};
|
|
1097
|
+
var slotReferenceDebugNode = (slotVNode) => {
|
|
1098
|
+
var _a;
|
|
1099
|
+
return (_a = win.document) == null ? void 0 : _a.createComment(
|
|
1100
|
+
`<slot${slotVNode.$name$ ? ' name="' + slotVNode.$name$ + '"' : ""}> (host=${hostTagName.toLowerCase()})`
|
|
1101
|
+
);
|
|
1102
|
+
};
|
|
1103
|
+
var originalLocationDebugNode = (nodeToRelocate) => {
|
|
1104
|
+
var _a;
|
|
1105
|
+
return (_a = win.document) == null ? void 0 : _a.createComment(
|
|
1106
|
+
`org-location for ` + (nodeToRelocate.localName ? `<${nodeToRelocate.localName}> (host=${nodeToRelocate["s-hn"]})` : `[${nodeToRelocate.textContent}]`)
|
|
1107
|
+
);
|
|
774
1108
|
};
|
|
775
1109
|
|
|
776
1110
|
// src/runtime/update-component.ts
|
|
@@ -1127,6 +1461,12 @@ var connectedCallback = (elm) => {
|
|
|
1127
1461
|
const endConnected = createTime("connectedCallback", cmpMeta.$tagName$);
|
|
1128
1462
|
if (!(hostRef.$flags$ & 1 /* hasConnected */)) {
|
|
1129
1463
|
hostRef.$flags$ |= 1 /* hasConnected */;
|
|
1464
|
+
{
|
|
1465
|
+
if (// TODO(STENCIL-854): Remove code related to legacy shadowDomShim field
|
|
1466
|
+
cmpMeta.$flags$ & (4 /* hasSlotRelocation */ | 8 /* needsShadowDomShim */)) {
|
|
1467
|
+
setContentReference(elm);
|
|
1468
|
+
}
|
|
1469
|
+
}
|
|
1130
1470
|
{
|
|
1131
1471
|
let ancestorComponent = elm;
|
|
1132
1472
|
while (ancestorComponent = ancestorComponent.parentNode || ancestorComponent.host) {
|
|
@@ -1159,6 +1499,16 @@ var connectedCallback = (elm) => {
|
|
|
1159
1499
|
endConnected();
|
|
1160
1500
|
}
|
|
1161
1501
|
};
|
|
1502
|
+
var setContentReference = (elm) => {
|
|
1503
|
+
if (!win.document) {
|
|
1504
|
+
return;
|
|
1505
|
+
}
|
|
1506
|
+
const contentRefElm = elm["s-cr"] = win.document.createComment(
|
|
1507
|
+
`content-ref (host=${elm.localName})`
|
|
1508
|
+
);
|
|
1509
|
+
contentRefElm["s-cn"] = true;
|
|
1510
|
+
insertBefore(elm, contentRefElm, elm.firstChild);
|
|
1511
|
+
};
|
|
1162
1512
|
var disconnectedCallback = async (elm) => {
|
|
1163
1513
|
if ((plt.$flags$ & 1 /* isTmpDisconnected */) === 0) {
|
|
1164
1514
|
const hostRef = getHostRef(elm);
|