@ppg_pl/tinting 0.0.5 → 0.0.7

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 (60) hide show
  1. package/dist/cjs/{index-0a139db0.js → index-b6962659.js} +51 -4
  2. package/dist/cjs/index-b6962659.js.map +1 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/modal-header_9.cjs.entry.js +127 -28
  5. package/dist/cjs/modal-header_9.cjs.entry.js.map +1 -1
  6. package/dist/cjs/tinting.cjs.js +2 -2
  7. package/dist/collection/components/colorinfo/index.js +135 -1
  8. package/dist/collection/components/colorinfo/index.js.map +1 -1
  9. package/dist/collection/components/component/index.js +64 -1
  10. package/dist/collection/components/component/index.js.map +1 -1
  11. package/dist/collection/components/modal/index.css +176 -1
  12. package/dist/collection/components/modal/index.js +50 -2
  13. package/dist/collection/components/modal/index.js.map +1 -1
  14. package/dist/collection/components/slider/index.css +24 -6
  15. package/dist/collection/components/slider/index.js +32 -21
  16. package/dist/collection/components/slider/index.js.map +1 -1
  17. package/dist/collection/types.js.map +1 -1
  18. package/dist/components/index10.js +11 -4
  19. package/dist/components/index10.js.map +1 -1
  20. package/dist/components/index8.js +80 -2
  21. package/dist/components/index8.js.map +1 -1
  22. package/dist/components/index9.js +34 -23
  23. package/dist/components/index9.js.map +1 -1
  24. package/dist/components/my-component.js +13 -2
  25. package/dist/components/my-component.js.map +1 -1
  26. package/dist/esm/{index-f3be6531.js → index-cb79645d.js} +51 -4
  27. package/dist/esm/index-cb79645d.js.map +1 -0
  28. package/dist/esm/loader.js +3 -3
  29. package/dist/esm/modal-header_9.entry.js +127 -28
  30. package/dist/esm/modal-header_9.entry.js.map +1 -1
  31. package/dist/esm/tinting.js +3 -3
  32. package/dist/tinting/p-4ec5261b.entry.js +15 -0
  33. package/dist/tinting/p-4ec5261b.entry.js.map +1 -0
  34. package/dist/tinting/p-5b9dc044.js +3 -0
  35. package/dist/tinting/p-5b9dc044.js.map +1 -0
  36. package/dist/tinting/tinting.esm.js +1 -1
  37. package/dist/tinting/tinting.esm.js.map +1 -1
  38. package/dist/types/components/colorinfo/index.d.ts +17 -1
  39. package/dist/types/components/component/index.d.ts +8 -0
  40. package/dist/types/components/modal/index.d.ts +6 -1
  41. package/dist/types/components.d.ts +16 -2
  42. package/dist/types/types.d.ts +4 -0
  43. package/package.json +3 -2
  44. package/www/build/p-4ec5261b.entry.js +15 -0
  45. package/www/build/p-4ec5261b.entry.js.map +1 -0
  46. package/www/build/p-5b9dc044.js +3 -0
  47. package/www/build/p-5b9dc044.js.map +1 -0
  48. package/www/build/tinting.esm.js +1 -1
  49. package/www/build/tinting.esm.js.map +1 -1
  50. package/www/index.html +76 -12
  51. package/dist/cjs/index-0a139db0.js.map +0 -1
  52. package/dist/esm/index-f3be6531.js.map +0 -1
  53. package/dist/tinting/p-398633de.entry.js +0 -15
  54. package/dist/tinting/p-398633de.entry.js.map +0 -1
  55. package/dist/tinting/p-b135c76f.js +0 -3
  56. package/dist/tinting/p-b135c76f.js.map +0 -1
  57. package/www/build/p-398633de.entry.js +0 -15
  58. package/www/build/p-398633de.entry.js.map +0 -1
  59. package/www/build/p-b135c76f.js +0 -3
  60. package/www/build/p-b135c76f.js.map +0 -1
@@ -131,10 +131,13 @@ const MyModalBundle = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
131
131
  super();
132
132
  this.__registerHost();
133
133
  this.onSelectedColor = createEvent(this, "onSelectedColor", 7);
134
+ this.addToBasket = createEvent(this, "addToBasket", 7);
134
135
  this.shop = undefined;
135
136
  this.product = undefined;
136
137
  this.baselink = undefined;
137
138
  this.colorname = undefined;
139
+ this.available_testers = undefined;
140
+ this.price = undefined;
138
141
  this.show = false;
139
142
  this.readyToClose = false;
140
143
  }
@@ -154,10 +157,16 @@ const MyModalBundle = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
154
157
  handleSelectedColor(event) {
155
158
  this.onSelectedColor.emit(event.detail);
156
159
  }
160
+ addToBasketHandler(event) {
161
+ this.addToBasket.emit(event.detail);
162
+ }
157
163
  render() {
158
164
  let content = null;
159
165
  if (this.show) {
160
- content = [h("my-backdrop", null), h("my-modal", { shop: this.shop, product: this.product, baselink: this.baselink, selectedcolor: this.colorname })];
166
+ content = [
167
+ h("my-backdrop", null),
168
+ h("my-modal", { shop: this.shop, product: this.product, baselink: this.baselink, selectedcolor: this.colorname, available_testers: this.available_testers ? JSON.parse(this.available_testers) : null, price: this.price }),
169
+ ];
161
170
  }
162
171
  return (h("div", { onClick: () => {
163
172
  if (this.readyToClose) {
@@ -181,11 +190,13 @@ const MyModalBundle = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
181
190
  "product": [1],
182
191
  "baselink": [1],
183
192
  "colorname": [1],
193
+ "available_testers": [1],
194
+ "price": [2],
184
195
  "show": [32],
185
196
  "readyToClose": [32],
186
197
  "open": [64],
187
198
  "close": [64]
188
- }, [[0, "readyToCLose", "setReadyToCloseHandler"], [0, "close", "closeModalHandler"], [0, "onSelectedColorEmit", "handleSelectedColor"]]]);
199
+ }, [[0, "readyToCLose", "setReadyToCloseHandler"], [0, "close", "closeModalHandler"], [0, "onSelectedColorEmit", "handleSelectedColor"], [0, "addToBasket", "addToBasketHandler"]]]);
189
200
  function defineCustomElement$1() {
190
201
  if (typeof customElements === "undefined") {
191
202
  return;
@@ -1 +1 @@
1
- {"file":"my-component.js","mappings":"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","names":["RenderTypes"],"sources":["./node_modules/@stencil/helmet/dist/util.js","./node_modules/@stencil/helmet/dist/dom.js","./node_modules/@stencil/helmet/dist/render.js","./node_modules/@stencil/helmet/dist/stencil-helmet.js","./src/components/component/index.scss?tag=my-component&encapsulation=scoped","./src/components/component/index.tsx"],"sourcesContent":["const isObject = (val) => !Array.isArray(val) && val !== null && typeof val === 'object';\nexport const hasAttributes = ({ vattrs }, requiredAttrs = []) => isObject(vattrs) && requiredAttrs.every(vattrs.hasOwnProperty.bind(vattrs));\nexport const isTextNode = ({ vtext }) => typeof vtext === 'string';\n// Can't use instanceof HTMLElement because MockHTMLElement during pre-rendering isn't\nexport const isElement = (val) => typeof val === 'object' && val.nodeType === 1 && typeof val.ownerDocument === 'object';\nexport const isElementArray = (val) => Array.isArray(val) && val.every(isElement);\n","import { isElement, isElementArray } from './util';\nexport const createElement = ({ vtag, vattrs, vchildren, vtext }, utils) => {\n if (vtext != null) {\n return document.createTextNode(vtext);\n }\n const element = document.createElement(vtag);\n if (vattrs != null) {\n for (const key in vattrs) {\n element.setAttribute(key, vattrs[key]);\n }\n }\n if (vchildren != null) {\n utils.forEach(vchildren, (child) => {\n element.appendChild(createElement(child, utils));\n });\n }\n return element;\n};\nexport const shouldApplyToHead = (val) => isElement(val) || (isElementArray(val) && val.length === 2);\nexport const applyToHead = (element) => {\n if (Array.isArray(element)) {\n return document.head.replaceChild(element[0], element[1]);\n }\n return document.head.appendChild(element);\n};\n","import { hasAttributes, isTextNode } from './util';\nimport { createElement } from './dom';\nconst hasChildren = (node) => Array.isArray(node.vchildren);\nconst getFirstChild = (vchildren, utils) => {\n let firstChild = null;\n utils.forEach(vchildren || [], (c, i) => {\n if (i === 0) {\n firstChild = c;\n return;\n }\n });\n return firstChild;\n};\nfunction title(node, head, utils) {\n const firstChild = getFirstChild(node.vchildren || [], utils);\n if (firstChild && isTextNode(firstChild)) {\n return [createElement(node, utils), head.querySelector('title')];\n }\n}\nfunction meta(node, head, utils) {\n var _a, _b, _c;\n const namePropKey = ((_a = node.vattrs) === null || _a === void 0 ? void 0 : _a.property) ? 'property' : 'name';\n const namePropValue = ((_b = node.vattrs) === null || _b === void 0 ? void 0 : _b.property) || ((_c = node.vattrs) === null || _c === void 0 ? void 0 : _c.name);\n const existingElement = head.querySelector(`meta[${namePropKey}=\"${namePropValue}\"]`);\n if (existingElement !== null) {\n return [createElement(node, utils), existingElement];\n }\n else {\n return createElement(node, utils);\n }\n}\nfunction link(node, _head, utils) {\n if (!hasChildren(node)) {\n return createElement(node, utils);\n }\n}\nfunction style(node, _head, utils) {\n const firstChild = getFirstChild(node.vchildren || [], utils);\n if (firstChild && isTextNode(firstChild)) {\n return createElement(node, utils);\n }\n}\nfunction script(node, _head, utils) {\n if (hasChildren(node) || hasAttributes(node)) {\n return createElement(node, utils);\n }\n}\nfunction base(node, _head, utils) {\n if (!hasChildren(node) && hasAttributes(node)) {\n return createElement(node, utils);\n }\n}\nconst template = createElement;\nconst noscript = createElement; // SSR only\nconst types = {\n title,\n meta,\n link,\n style,\n script,\n base,\n template,\n noscript,\n};\nexport default types;\n","import RenderTypes from './render';\nimport { shouldApplyToHead, applyToHead } from './dom';\nconst headExists = document && document.head;\nconst validTagNames = Object.keys(RenderTypes);\nconst isValidNode = (node) => validTagNames.indexOf(node.vtag) > -1;\nconst renderNode = (node, utils) => RenderTypes[node.vtag](node, document.head, utils);\nexport const Helmet = (_props, children, utils) => {\n if (!headExists) {\n return null;\n }\n const rendered = [];\n const validChildren = [];\n utils.forEach(children, (n) => {\n if (isValidNode(n)) {\n validChildren.push(n);\n rendered.push(renderNode(n, utils));\n }\n });\n // Build an HTMLElement for each provided virtual child\n rendered\n .filter(shouldApplyToHead)\n .forEach(applyToHead);\n return null;\n};\nexport default Helmet;\n",".tinting-wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n","import Helmet from '@stencil/helmet';\nimport { Component, Prop, Method, Element, State, Listen, h, Event, EventEmitter } from '@stencil/core';\nimport { Color } from '../../types';\n\n@Component({\n tag: 'my-component',\n styleUrl: 'index.scss',\n scoped: true,\n})\nexport class MyModalBundle {\n @Element() modalEl: HTMLElement;\n @Event({ bubbles: true, composed: true }) onSelectedColor: EventEmitter<Color>;\n @Prop() shop: string;\n @Prop() product: string;\n @Prop() baselink: string;\n @Prop() colorname: string | null;\n\n @State() show = false;\n @State() readyToClose = false;\n\n @Method()\n async open() {\n this.show = true;\n }\n\n @Method()\n async close() {\n this.show = false;\n }\n\n @Listen('readyToCLose')\n setReadyToCloseHandler(value: CustomEvent) {\n this.readyToClose = value.detail.observable;\n }\n\n @Listen('close')\n closeModalHandler() {\n this.show = false;\n this.readyToClose = false;\n }\n\n @Listen('onSelectedColorEmit')\n handleSelectedColor(event: CustomEvent<Color>) {\n this.onSelectedColor.emit(event.detail);\n }\n\n render() {\n let content = null;\n if (this.show) {\n content = [<my-backdrop></my-backdrop>, <my-modal shop={this.shop} product={this.product} baselink={this.baselink} selectedcolor={this.colorname}></my-modal>];\n }\n return (\n <div\n onClick={() => {\n if (this.readyToClose) {\n this.closeModalHandler();\n }\n }}\n >\n <Helmet>\n <script>\n {`(function (w, d, s, l, i) {\n w[l] = w[l] || [];\n w[l].push({ 'gtm.start': new Date().getTime(), 'event': 'gtm.js' });\n var f = d.getElementsByTagName(s)[0],\n j = d.createElement(s),\n dl = l != 'dataLayer' ? '&l=' + l : '';\n j.async = true;\n j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;\n f.parentNode.insertBefore(j, f);\n })(window, document, 'script', 'dataLayer', 'GTM-537BV9VT');`}\n </script>\n </Helmet>\n <div class=\"tinting-wrapper\">{content}</div>\n <noscript>\n <iframe src=\"https://www.googletagmanager.com/ns.html?id=GTM-537BV9VT\" height=\"0\" width=\"0\" style={{ display: 'none', visibility: 'hidden' }}></iframe>\n </noscript>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"my-component.js","mappings":"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","names":["RenderTypes"],"sources":["./node_modules/@stencil/helmet/dist/util.js","./node_modules/@stencil/helmet/dist/dom.js","./node_modules/@stencil/helmet/dist/render.js","./node_modules/@stencil/helmet/dist/stencil-helmet.js","./src/components/component/index.scss?tag=my-component&encapsulation=scoped","./src/components/component/index.tsx"],"sourcesContent":["const isObject = (val) => !Array.isArray(val) && val !== null && typeof val === 'object';\nexport const hasAttributes = ({ vattrs }, requiredAttrs = []) => isObject(vattrs) && requiredAttrs.every(vattrs.hasOwnProperty.bind(vattrs));\nexport const isTextNode = ({ vtext }) => typeof vtext === 'string';\n// Can't use instanceof HTMLElement because MockHTMLElement during pre-rendering isn't\nexport const isElement = (val) => typeof val === 'object' && val.nodeType === 1 && typeof val.ownerDocument === 'object';\nexport const isElementArray = (val) => Array.isArray(val) && val.every(isElement);\n","import { isElement, isElementArray } from './util';\nexport const createElement = ({ vtag, vattrs, vchildren, vtext }, utils) => {\n if (vtext != null) {\n return document.createTextNode(vtext);\n }\n const element = document.createElement(vtag);\n if (vattrs != null) {\n for (const key in vattrs) {\n element.setAttribute(key, vattrs[key]);\n }\n }\n if (vchildren != null) {\n utils.forEach(vchildren, (child) => {\n element.appendChild(createElement(child, utils));\n });\n }\n return element;\n};\nexport const shouldApplyToHead = (val) => isElement(val) || (isElementArray(val) && val.length === 2);\nexport const applyToHead = (element) => {\n if (Array.isArray(element)) {\n return document.head.replaceChild(element[0], element[1]);\n }\n return document.head.appendChild(element);\n};\n","import { hasAttributes, isTextNode } from './util';\nimport { createElement } from './dom';\nconst hasChildren = (node) => Array.isArray(node.vchildren);\nconst getFirstChild = (vchildren, utils) => {\n let firstChild = null;\n utils.forEach(vchildren || [], (c, i) => {\n if (i === 0) {\n firstChild = c;\n return;\n }\n });\n return firstChild;\n};\nfunction title(node, head, utils) {\n const firstChild = getFirstChild(node.vchildren || [], utils);\n if (firstChild && isTextNode(firstChild)) {\n return [createElement(node, utils), head.querySelector('title')];\n }\n}\nfunction meta(node, head, utils) {\n var _a, _b, _c;\n const namePropKey = ((_a = node.vattrs) === null || _a === void 0 ? void 0 : _a.property) ? 'property' : 'name';\n const namePropValue = ((_b = node.vattrs) === null || _b === void 0 ? void 0 : _b.property) || ((_c = node.vattrs) === null || _c === void 0 ? void 0 : _c.name);\n const existingElement = head.querySelector(`meta[${namePropKey}=\"${namePropValue}\"]`);\n if (existingElement !== null) {\n return [createElement(node, utils), existingElement];\n }\n else {\n return createElement(node, utils);\n }\n}\nfunction link(node, _head, utils) {\n if (!hasChildren(node)) {\n return createElement(node, utils);\n }\n}\nfunction style(node, _head, utils) {\n const firstChild = getFirstChild(node.vchildren || [], utils);\n if (firstChild && isTextNode(firstChild)) {\n return createElement(node, utils);\n }\n}\nfunction script(node, _head, utils) {\n if (hasChildren(node) || hasAttributes(node)) {\n return createElement(node, utils);\n }\n}\nfunction base(node, _head, utils) {\n if (!hasChildren(node) && hasAttributes(node)) {\n return createElement(node, utils);\n }\n}\nconst template = createElement;\nconst noscript = createElement; // SSR only\nconst types = {\n title,\n meta,\n link,\n style,\n script,\n base,\n template,\n noscript,\n};\nexport default types;\n","import RenderTypes from './render';\nimport { shouldApplyToHead, applyToHead } from './dom';\nconst headExists = document && document.head;\nconst validTagNames = Object.keys(RenderTypes);\nconst isValidNode = (node) => validTagNames.indexOf(node.vtag) > -1;\nconst renderNode = (node, utils) => RenderTypes[node.vtag](node, document.head, utils);\nexport const Helmet = (_props, children, utils) => {\n if (!headExists) {\n return null;\n }\n const rendered = [];\n const validChildren = [];\n utils.forEach(children, (n) => {\n if (isValidNode(n)) {\n validChildren.push(n);\n rendered.push(renderNode(n, utils));\n }\n });\n // Build an HTMLElement for each provided virtual child\n rendered\n .filter(shouldApplyToHead)\n .forEach(applyToHead);\n return null;\n};\nexport default Helmet;\n",".tinting-wrapper {\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n}\n","import Helmet from '@stencil/helmet';\nimport { Component, Prop, Method, Element, State, Listen, h, Event, EventEmitter } from '@stencil/core';\nimport { Color } from '../../types';\n\n@Component({\n tag: 'my-component',\n styleUrl: 'index.scss',\n scoped: true,\n})\nexport class MyModalBundle {\n @Element() modalEl: HTMLElement;\n @Event({ bubbles: true, composed: true }) onSelectedColor: EventEmitter<Color>;\n @Event({ bubbles: true, composed: true }) addToBasket: EventEmitter<{ id: number }>;\n @Prop() shop: string;\n @Prop() product: string;\n @Prop() baselink: string;\n @Prop() colorname: string | null;\n @Prop() available_testers: string | null;\n @Prop() price: number | null;\n\n @State() show = false;\n @State() readyToClose = false;\n\n @Method()\n async open() {\n this.show = true;\n }\n\n @Method()\n async close() {\n this.show = false;\n }\n\n @Listen('readyToCLose')\n setReadyToCloseHandler(value: CustomEvent) {\n this.readyToClose = value.detail.observable;\n }\n\n @Listen('close')\n closeModalHandler() {\n this.show = false;\n this.readyToClose = false;\n }\n\n @Listen('onSelectedColorEmit')\n handleSelectedColor(event: CustomEvent<Color>) {\n this.onSelectedColor.emit(event.detail);\n }\n\n @Listen('addToBasket')\n addToBasketHandler(event: CustomEvent<{ id: number }>) {\n this.addToBasket.emit(event.detail);\n }\n\n render() {\n let content = null;\n if (this.show) {\n content = [\n <my-backdrop></my-backdrop>,\n <my-modal\n shop={this.shop}\n product={this.product}\n baselink={this.baselink}\n selectedcolor={this.colorname}\n available_testers={this.available_testers ? JSON.parse(this.available_testers) : null}\n price={this.price}\n ></my-modal>,\n ];\n }\n return (\n <div\n onClick={() => {\n if (this.readyToClose) {\n this.closeModalHandler();\n }\n }}\n >\n <Helmet>\n <script>\n {`(function (w, d, s, l, i) {\n w[l] = w[l] || [];\n w[l].push({ 'gtm.start': new Date().getTime(), 'event': 'gtm.js' });\n var f = d.getElementsByTagName(s)[0],\n j = d.createElement(s),\n dl = l != 'dataLayer' ? '&l=' + l : '';\n j.async = true;\n j.src = 'https://www.googletagmanager.com/gtm.js?id=' + i + dl;\n f.parentNode.insertBefore(j, f);\n })(window, document, 'script', 'dataLayer', 'GTM-537BV9VT');`}\n </script>\n </Helmet>\n <div class=\"tinting-wrapper\">{content}</div>\n <noscript>\n <iframe src=\"https://www.googletagmanager.com/ns.html?id=GTM-537BV9VT\" height=\"0\" width=\"0\" style={{ display: 'none', visibility: 'hidden' }}></iframe>\n </noscript>\n </div>\n );\n }\n}\n"],"version":3}
@@ -9,6 +9,7 @@ const NAMESPACE = 'tinting';
9
9
  * Modified for Stencil's renderer and slot projection
10
10
  */
11
11
  let scopeId;
12
+ let hostTagName;
12
13
  let isSvgMode = false;
13
14
  let queuePending = false;
14
15
  const getAssetPath = (path) => {
@@ -38,6 +39,11 @@ const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
38
39
  * Don't add values to these!!
39
40
  */
40
41
  const EMPTY_OBJ = {};
42
+ /**
43
+ * Namespaces
44
+ */
45
+ const SVG_NS = 'http://www.w3.org/2000/svg';
46
+ const HTML_NS = 'http://www.w3.org/1999/xhtml';
41
47
  const isDef = (v) => v != null;
42
48
  /**
43
49
  * Check whether a value is a 'complex type', defined here as an object or a
@@ -353,7 +359,7 @@ const attachStyles = (hostRef) => {
353
359
  const elm = hostRef.$hostElement$;
354
360
  const flags = cmpMeta.$flags$;
355
361
  const endAttachStyles = createTime('attachStyles', cmpMeta.$tagName$);
356
- const scopeId = addStyle(elm.getRootNode(), cmpMeta);
362
+ const scopeId = addStyle(elm.shadowRoot ? elm.shadowRoot : elm.getRootNode(), cmpMeta);
357
363
  // TODO(STENCIL-662): Remove code related to deprecated shadowDomShim field
358
364
  if (flags & 10 /* CMP_FLAGS.needsScopedEncapsulation */) {
359
365
  // only required when we're NOT using native shadow dom (slot)
@@ -539,8 +545,15 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
539
545
  elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$);
540
546
  }
541
547
  else {
548
+ if (!isSvgMode) {
549
+ isSvgMode = newVNode.$tag$ === 'svg';
550
+ }
542
551
  // create element
543
- elm = newVNode.$elm$ = (doc.createElement(newVNode.$tag$));
552
+ elm = newVNode.$elm$ = (doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, newVNode.$tag$)
553
+ );
554
+ if (isSvgMode && newVNode.$tag$ === 'foreignObject') {
555
+ isSvgMode = false;
556
+ }
544
557
  // add css classes, attrs, props, listeners, etc.
545
558
  {
546
559
  updateElement(null, newVNode, isSvgMode);
@@ -561,6 +574,16 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
561
574
  }
562
575
  }
563
576
  }
577
+ {
578
+ if (newVNode.$tag$ === 'svg') {
579
+ // Only reset the SVG context when we're exiting <svg> element
580
+ isSvgMode = false;
581
+ }
582
+ else if (elm.tagName === 'foreignObject') {
583
+ // Reenter SVG context when we're exiting <foreignObject> element
584
+ isSvgMode = true;
585
+ }
586
+ }
564
587
  }
565
588
  return elm;
566
589
  };
@@ -582,6 +605,9 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
582
605
  const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) => {
583
606
  let containerElm = (parentElm);
584
607
  let childNode;
608
+ if (containerElm.shadowRoot && containerElm.tagName === hostTagName) {
609
+ containerElm = containerElm.shadowRoot;
610
+ }
585
611
  for (; startIdx <= endIdx; ++startIdx) {
586
612
  if (vnodes[startIdx]) {
587
613
  childNode = createElm(null, parentVNode, startIdx);
@@ -863,8 +889,14 @@ const patch = (oldVNode, newVNode) => {
863
889
  const elm = (newVNode.$elm$ = oldVNode.$elm$);
864
890
  const oldChildren = oldVNode.$children$;
865
891
  const newChildren = newVNode.$children$;
892
+ const tag = newVNode.$tag$;
866
893
  const text = newVNode.$text$;
867
894
  if (text === null) {
895
+ {
896
+ // test if we're rendering an svg element, or still rendering nodes inside of one
897
+ // only add this to the when the compiler sees we're using an svg somewhere
898
+ isSvgMode = tag === 'svg' ? true : tag === 'foreignObject' ? false : isSvgMode;
899
+ }
868
900
  {
869
901
  {
870
902
  // either this is the first render of an element OR it's an update
@@ -891,6 +923,9 @@ const patch = (oldVNode, newVNode) => {
891
923
  // no new child vnodes, but there are old child vnodes to remove
892
924
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
893
925
  }
926
+ if (isSvgMode && tag === 'svg') {
927
+ isSvgMode = false;
928
+ }
894
929
  }
895
930
  else if (oldVNode.$text$ !== text) {
896
931
  // update the text content for the text only vnode
@@ -914,10 +949,11 @@ const renderVdom = (hostRef, renderFnResults) => {
914
949
  const hostElm = hostRef.$hostElement$;
915
950
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
916
951
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
952
+ hostTagName = hostElm.tagName;
917
953
  rootVnode.$tag$ = null;
918
954
  rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
919
955
  hostRef.$vnode$ = rootVnode;
920
- rootVnode.$elm$ = oldVNode.$elm$ = (hostElm);
956
+ rootVnode.$elm$ = oldVNode.$elm$ = (hostElm.shadowRoot || hostElm );
921
957
  {
922
958
  scopeId = hostElm['s-sc'];
923
959
  }
@@ -1429,6 +1465,17 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1429
1465
  super(self);
1430
1466
  self = this;
1431
1467
  registerHost(self, cmpMeta);
1468
+ if (cmpMeta.$flags$ & 1 /* CMP_FLAGS.shadowDomEncapsulation */) {
1469
+ // this component is using shadow dom
1470
+ // and this browser supports shadow dom
1471
+ // add the read-only property "shadowRoot" to the host element
1472
+ // adding the shadow root build conditionals to minimize runtime
1473
+ {
1474
+ {
1475
+ self.attachShadow({ mode: 'open' });
1476
+ }
1477
+ }
1478
+ }
1432
1479
  }
1433
1480
  connectedCallback() {
1434
1481
  if (appLoadFallback) {
@@ -1635,4 +1682,4 @@ const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
1635
1682
 
1636
1683
  export { getElement as a, bootstrapLazy as b, createEvent as c, getAssetPath as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
1637
1684
 
1638
- //# sourceMappingURL=index-f3be6531.js.map
1685
+ //# sourceMappingURL=index-cb79645d.js.map