@siemens/ix-icons 1.1.2 → 1.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (101) hide show
  1. package/dist/cjs/icon-f93d1754.js +125 -0
  2. package/dist/cjs/icon-f93d1754.js.map +1 -0
  3. package/dist/cjs/{index-22d7f5a7.js → index-4251dd4f.js} +51 -82
  4. package/dist/cjs/index-4251dd4f.js.map +1 -0
  5. package/dist/cjs/index.cjs.js +2 -2
  6. package/dist/cjs/ix-icon.cjs.entry.js +2 -2
  7. package/dist/cjs/ix-icons.cjs.js +3 -3
  8. package/dist/cjs/ix-icons.cjs.js.map +1 -1
  9. package/dist/cjs/loader.cjs.js +3 -3
  10. package/dist/cjs/loader.cjs.js.map +1 -1
  11. package/dist/collection/collection-manifest.json +1 -1
  12. package/dist/collection/components/icon/icon.css +771 -665
  13. package/dist/collection/components/icon/icon.js +9 -30
  14. package/dist/collection/components/icon/icon.js.map +1 -1
  15. package/dist/collection/components/icon/question.js +5 -0
  16. package/dist/collection/components/icon/question.js.map +1 -0
  17. package/dist/collection/components/icon/resolveIcon.js +19 -13
  18. package/dist/collection/components/icon/resolveIcon.js.map +1 -1
  19. package/dist/components/icon.js +32 -22
  20. package/dist/components/icon.js.map +1 -1
  21. package/dist/css/ix-icons.css +673 -641
  22. package/dist/esm/icon-6a9c5e3a.js +123 -0
  23. package/dist/esm/icon-6a9c5e3a.js.map +1 -0
  24. package/dist/esm/{index-460e19e2.js → index-68769e11.js} +51 -82
  25. package/dist/esm/index-68769e11.js.map +1 -0
  26. package/dist/esm/index.js +2 -2
  27. package/dist/esm/ix-icon.entry.js +2 -2
  28. package/dist/esm/ix-icons.js +4 -4
  29. package/dist/esm/ix-icons.js.map +1 -1
  30. package/dist/esm/loader.js +4 -4
  31. package/dist/esm/loader.js.map +1 -1
  32. package/dist/fonts/ix-icons.eot +0 -0
  33. package/dist/fonts/ix-icons.svg +738 -642
  34. package/dist/fonts/ix-icons.ttf +0 -0
  35. package/dist/fonts/ix-icons.woff +0 -0
  36. package/dist/fonts/ix-icons.woff2 +0 -0
  37. package/dist/ix-icons/index.esm.js +1 -1
  38. package/dist/ix-icons/ix-icons.esm.js +1 -1
  39. package/dist/ix-icons/ix-icons.esm.js.map +1 -1
  40. package/dist/ix-icons/p-3f1bfdd7.js +2 -0
  41. package/dist/ix-icons/p-3f1bfdd7.js.map +1 -0
  42. package/dist/ix-icons/p-56e47578.entry.js +2 -0
  43. package/dist/ix-icons/p-dedaa481.js +3 -0
  44. package/dist/ix-icons/p-dedaa481.js.map +1 -0
  45. package/dist/sample.html +1214 -670
  46. package/dist/sample.json +64 -0
  47. package/dist/svg/add-application.svg +1 -0
  48. package/dist/svg/add-user-filled.svg +1 -0
  49. package/dist/svg/add-user.svg +1 -0
  50. package/dist/svg/application-screen.svg +1 -0
  51. package/dist/svg/applications.svg +1 -0
  52. package/dist/svg/certificate-error-filled.svg +1 -0
  53. package/dist/svg/certificate-error.svg +1 -0
  54. package/dist/svg/certificate-exclamation-filled.svg +1 -0
  55. package/dist/svg/certificate-exclamation.svg +1 -0
  56. package/dist/svg/certificate-success-filled.svg +1 -0
  57. package/dist/svg/certificate-success.svg +1 -0
  58. package/dist/svg/coffee-empty-filled.svg +1 -0
  59. package/dist/svg/coffee-empty.svg +1 -0
  60. package/dist/svg/coffee-filled.svg +1 -0
  61. package/dist/svg/coffee.svg +1 -0
  62. package/dist/svg/electrical-energy-filled.svg +1 -0
  63. package/dist/svg/electrical-energy.svg +1 -0
  64. package/dist/svg/photo-camera-cancelled-filled.svg +1 -0
  65. package/dist/svg/photo-camera-cancelled.svg +1 -0
  66. package/dist/svg/project-server-filled.svg +1 -0
  67. package/dist/svg/project-server.svg +1 -0
  68. package/dist/svg/remove-application.svg +1 -0
  69. package/dist/svg/stamp-filled.svg +1 -0
  70. package/dist/svg/stamp.svg +1 -0
  71. package/dist/svg/surveillance-cancelled-filled.svg +1 -0
  72. package/dist/svg/surveillance-cancelled.svg +1 -0
  73. package/dist/svg/text-document.svg +1 -9
  74. package/dist/svg/user-reading-reading.svg +1 -0
  75. package/dist/svg/user-reading.svg +1 -0
  76. package/dist/svg/webcam-cancelled-filled.svg +1 -0
  77. package/dist/svg/webcam-cancelled.svg +1 -0
  78. package/dist/svg/workspace.svg +1 -0
  79. package/dist/svg/workspaces.svg +1 -0
  80. package/dist/types/components/icon/icon.d.ts +0 -9
  81. package/dist/types/components/icon/question.d.ts +1 -0
  82. package/dist/types/components/icon/resolveIcon.d.ts +1 -0
  83. package/dist/types/components.d.ts +0 -4
  84. package/dist/types/stencil-public-runtime.d.ts +0 -1
  85. package/icons/index.d.ts +33 -1
  86. package/icons/index.js +34 -2
  87. package/icons/index.mjs +34 -2
  88. package/icons/package.json +1 -1
  89. package/package.json +2 -2
  90. package/dist/cjs/icon-4106de76.js +0 -114
  91. package/dist/cjs/icon-4106de76.js.map +0 -1
  92. package/dist/cjs/index-22d7f5a7.js.map +0 -1
  93. package/dist/esm/icon-cb9cbf8c.js +0 -112
  94. package/dist/esm/icon-cb9cbf8c.js.map +0 -1
  95. package/dist/esm/index-460e19e2.js.map +0 -1
  96. package/dist/ix-icons/p-2a168ebc.entry.js +0 -2
  97. package/dist/ix-icons/p-37738e42.js +0 -2
  98. package/dist/ix-icons/p-37738e42.js.map +0 -1
  99. package/dist/ix-icons/p-625c25c8.js +0 -3
  100. package/dist/ix-icons/p-625c25c8.js.map +0 -1
  101. /package/dist/ix-icons/{p-2a168ebc.entry.js.map → p-56e47578.entry.js.map} +0 -0
@@ -0,0 +1,125 @@
1
+ 'use strict';
2
+
3
+ const index = require('./index-4251dd4f.js');
4
+
5
+ /*
6
+ * COPYRIGHT (c) Siemens AG 2018-2023 ALL RIGHTS RESERVED.
7
+ */
8
+ const question = "data:image/svg+xml;utf8,<?xml version='1.0' encoding='UTF-8'?><svg width='512px' height='512px' viewBox='0 0 512 512' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'><title>question</title><g id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'><g id='add' transform='translate(42.666667, 42.666667)'><path d='M291.76704,163.504 C291.76704,177.01952 288.33216,188.82176 281.479253,198.90112 C275.828267,207.371093 266.358187,216.549547 253.042987,226.434987 C245.378987,231.682347 240.331947,236.618667 237.916587,241.257813 C234.87744,246.90624 233.376213,255.371093 233.376213,266.666667 L190.710827,266.666667 C190.710827,249.530027 192.53504,237.027413 196.165333,229.162667 C200.394453,219.679573 209.571627,210.098773 223.686187,200.42048 C230.350293,195.374933 235.188693,190.2368 238.214827,184.994773 C241.839787,179.143253 243.664,172.49216 243.664,165.028693 C243.664,153.13024 240.125013,144.26304 233.070293,138.404907 C227.4336,134.177067 220.56768,132.059947 212.501333,132.059947 C199.39328,132.059947 189.911467,136.398507 184.065067,145.069013 C179.829333,151.518293 177.7056,159.787733 177.7056,169.868587 L177.7056,170.173227 L132.34368,170.173227 C132.34368,143.751253 140.703147,123.790507 157.43488,110.274773 C171.554773,98.9922133 189.007787,93.3346133 209.77344,93.3346133 C227.933653,93.3346133 243.865813,96.86848 257.571627,103.9232 C280.37504,115.62624 291.76704,135.494827 291.76704,163.504 Z M426.666667,213.333333 C426.666667,331.153707 331.153707,426.666667 213.333333,426.666667 C95.51296,426.666667 3.55271368e-14,331.153707 3.55271368e-14,213.333333 C3.55271368e-14,95.51168 95.51296,3.55271368e-14 213.333333,3.55271368e-14 C331.153707,3.55271368e-14 426.666667,95.51168 426.666667,213.333333 Z M384,213.333333 C384,119.226667 307.43872,42.6666667 213.333333,42.6666667 C119.227947,42.6666667 42.6666667,119.226667 42.6666667,213.333333 C42.6666667,307.43872 119.227947,384 213.333333,384 C307.43872,384 384,307.43872 384,213.333333 Z M213.332053,282.666667 C198.60416,282.666667 186.665387,294.60544 186.665387,309.333333 C186.665387,324.061227 198.60416,336 213.332053,336 C228.059947,336 239.99872,324.061227 239.99872,309.333333 C239.99872,294.60544 228.059947,282.666667 213.332053,282.666667 Z' id='Shape'/></g></g></svg>";
9
+
10
+ const isSvgDataUrl = (url) => {
11
+ if (!url) {
12
+ return false;
13
+ }
14
+ if (typeof url !== 'string') {
15
+ return false;
16
+ }
17
+ return url.startsWith('data:image/svg+xml');
18
+ };
19
+ let parser = null;
20
+ function parseSVGDataContent(content) {
21
+ if (typeof window['DOMParser'] === 'undefined') {
22
+ console.warn('DOMParser not supported by your browser.');
23
+ return;
24
+ }
25
+ if (parser === null) {
26
+ parser = new window['DOMParser']();
27
+ }
28
+ const svgDocument = parser.parseFromString(content, 'text/html');
29
+ const svgElement = svgDocument.querySelector('svg');
30
+ if (!svgElement) {
31
+ throw Error('No valid svg data provided');
32
+ }
33
+ return svgElement.outerHTML;
34
+ }
35
+ async function fetchSVG(url) {
36
+ const response = await fetch(url);
37
+ const responseText = await response.text();
38
+ if (!response.ok) {
39
+ console.error(responseText);
40
+ throw Error(responseText);
41
+ }
42
+ return parseSVGDataContent(responseText);
43
+ }
44
+ const urlRegex = /^(?:(?:https?|ftp):\/\/)?(?:\S+(?::\S*)?@)?(?:www\.)?(?:\S+\.\S+)(?:\S*)$/i;
45
+ function isValidUrl(url) {
46
+ return urlRegex.test(url);
47
+ }
48
+ async function resolveIcon(icon) {
49
+ const { name } = icon;
50
+ if (!name) {
51
+ return;
52
+ }
53
+ if (isSvgDataUrl(name)) {
54
+ return parseSVGDataContent(name);
55
+ }
56
+ if (isValidUrl(name)) {
57
+ try {
58
+ return await fetchSVG(name);
59
+ }
60
+ catch (error) {
61
+ throw error;
62
+ }
63
+ }
64
+ //Fallback return undefined to render web font icon
65
+ return;
66
+ }
67
+
68
+ const iconCss = ".glyph{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1;font-family:\"ix-icons\";font-size:1.5rem;font-weight:500}.glyph-lg{font-size:1.3333333333em;line-height:0.75em;vertical-align:-15%}.glyph-2x{font-size:2em}.glyph-3x{font-size:3em}.glyph-4x{font-size:4em}.glyph-5x{font-size:5em}.glyph-fw{width:1.2857142857em;text-align:center}.glyph-12{font-size:0.75rem}.glyph-16{font-size:1rem}.glyph-24{font-size:1.5rem}.glyph-32{font-size:2rem}.glyph-about-filled:before{content:\"\\ea01\"}.glyph-about:before{content:\"\\ea02\"}.glyph-add-application:before{content:\"\\ea03\"}.glyph-add-circle-filled:before{content:\"\\ea04\"}.glyph-add-circle:before{content:\"\\ea05\"}.glyph-add-document-note:before{content:\"\\ea06\"}.glyph-add-eye-filled:before{content:\"\\ea07\"}.glyph-add-eye:before{content:\"\\ea08\"}.glyph-add-task-list:before{content:\"\\ea09\"}.glyph-add-task:before{content:\"\\ea0a\"}.glyph-add-user-filled:before{content:\"\\ea0b\"}.glyph-add-user:before{content:\"\\ea0c\"}.glyph-add:before{content:\"\\ea0d\"}.glyph-ai:before{content:\"\\ea0e\"}.glyph-alarm-bell-cancelled-filled:before{content:\"\\ea0f\"}.glyph-alarm-bell-cancelled:before{content:\"\\ea10\"}.glyph-alarm-bell-filled:before{content:\"\\ea11\"}.glyph-alarm-bell:before{content:\"\\ea12\"}.glyph-alarm-clock-filled:before{content:\"\\ea13\"}.glyph-alarm-clock:before{content:\"\\ea14\"}.glyph-alarm-filled:before{content:\"\\ea15\"}.glyph-alarm:before{content:\"\\ea16\"}.glyph-analyze:before{content:\"\\ea17\"}.glyph-anomaly-found:before{content:\"\\ea18\"}.glyph-anomaly:before{content:\"\\ea19\"}.glyph-app-menu:before{content:\"\\ea1a\"}.glyph-application-screen:before{content:\"\\ea1b\"}.glyph-applications:before{content:\"\\ea1c\"}.glyph-apps:before{content:\"\\ea1d\"}.glyph-arrow-down-right:before{content:\"\\ea1e\"}.glyph-arrow-down:before{content:\"\\ea1f\"}.glyph-arrow-left:before{content:\"\\ea20\"}.glyph-arrow-right-down:before{content:\"\\ea21\"}.glyph-arrow-right:before{content:\"\\ea22\"}.glyph-arrow-up:before{content:\"\\ea23\"}.glyph-attach:before{content:\"\\ea24\"}.glyph-attachment-upload:before{content:\"\\ea25\"}.glyph-audio-description1:before{content:\"\\ea26\"}.glyph-audio-description2:before{content:\"\\ea27\"}.glyph-audit-report:before{content:\"\\ea28\"}.glyph-average:before{content:\"\\ea29\"}.glyph-backup-filled:before{content:\"\\ea2a\"}.glyph-backup:before{content:\"\\ea2b\"}.glyph-bar-code:before{content:\"\\ea2c\"}.glyph-barchart:before{content:\"\\ea2d\"}.glyph-battery-check:before{content:\"\\ea2e\"}.glyph-battery-empty-question:before{content:\"\\ea2f\"}.glyph-battery-empty:before{content:\"\\ea30\"}.glyph-battery-exclamation:before{content:\"\\ea31\"}.glyph-battery-full-check:before{content:\"\\ea32\"}.glyph-battery-full:before{content:\"\\ea33\"}.glyph-battery-half:before{content:\"\\ea34\"}.glyph-battery-low:before{content:\"\\ea35\"}.glyph-battery-quarter:before{content:\"\\ea36\"}.glyph-battery-slash:before{content:\"\\ea37\"}.glyph-battery-three-quarter:before{content:\"\\ea38\"}.glyph-battery-xmark:before{content:\"\\ea39\"}.glyph-bezier-curve:before{content:\"\\ea3a\"}.glyph-binoculars-filled:before{content:\"\\ea3b\"}.glyph-binoculars:before{content:\"\\ea3c\"}.glyph-blazor:before{content:\"\\ea3d\"}.glyph-book:before{content:\"\\ea3e\"}.glyph-bookmark-filled:before{content:\"\\ea3f\"}.glyph-bookmark:before{content:\"\\ea40\"}.glyph-boundary-signals:before{content:\"\\ea41\"}.glyph-building1-filled:before{content:\"\\ea42\"}.glyph-building1:before{content:\"\\ea43\"}.glyph-building2-filled:before{content:\"\\ea44\"}.glyph-building2:before{content:\"\\ea45\"}.glyph-bulb-filled:before{content:\"\\ea46\"}.glyph-bulb:before{content:\"\\ea47\"}.glyph-calendar-filled:before{content:\"\\ea48\"}.glyph-calendar-settings:before{content:\"\\ea49\"}.glyph-calendar:before{content:\"\\ea4a\"}.glyph-cancel:before{content:\"\\ea4b\"}.glyph-cancelled:before{content:\"\\ea4c\"}.glyph-capacity-filled:before{content:\"\\ea4d\"}.glyph-capacity:before{content:\"\\ea4e\"}.glyph-capture:before{content:\"\\ea4f\"}.glyph-car-filled:before{content:\"\\ea50\"}.glyph-car:before{content:\"\\ea51\"}.glyph-card-layout-filled:before{content:\"\\ea52\"}.glyph-card-layout:before{content:\"\\ea53\"}.glyph-certificate-error-filled:before{content:\"\\ea54\"}.glyph-certificate-error:before{content:\"\\ea55\"}.glyph-certificate-exclamation-filled:before{content:\"\\ea56\"}.glyph-certificate-exclamation:before{content:\"\\ea57\"}.glyph-certificate-success-filled:before{content:\"\\ea58\"}.glyph-certificate-success:before{content:\"\\ea59\"}.glyph-chart-cursor:before{content:\"\\ea5a\"}.glyph-chart-curve-linear:before{content:\"\\ea5b\"}.glyph-chart-curve-spline:before{content:\"\\ea5c\"}.glyph-chart-curve-stepped:before{content:\"\\ea5d\"}.glyph-chart-diagram-add:before{content:\"\\ea5e\"}.glyph-chart-diagram:before{content:\"\\ea5f\"}.glyph-chart-diagrams:before{content:\"\\ea60\"}.glyph-chart-labels-filled:before{content:\"\\ea61\"}.glyph-chart-labels:before{content:\"\\ea62\"}.glyph-check-in:before{content:\"\\ea63\"}.glyph-check-out:before{content:\"\\ea64\"}.glyph-checkbox-component-checked:before{content:\"\\ea65\"}.glyph-checkbox-component-mixed:before{content:\"\\ea66\"}.glyph-checkbox-component-unchecked:before{content:\"\\ea67\"}.glyph-checkbox-filled:before{content:\"\\ea68\"}.glyph-checkbox:before{content:\"\\ea69\"}.glyph-checkboxes-filled:before{content:\"\\ea6a\"}.glyph-checkboxes:before{content:\"\\ea6b\"}.glyph-chevron-down-small:before{content:\"\\ea6c\"}.glyph-chevron-down:before{content:\"\\ea6d\"}.glyph-chevron-left-small:before{content:\"\\ea6e\"}.glyph-chevron-left:before{content:\"\\ea6f\"}.glyph-chevron-right-small:before{content:\"\\ea70\"}.glyph-chevron-right:before{content:\"\\ea71\"}.glyph-chevron-up-small:before{content:\"\\ea72\"}.glyph-chevron-up:before{content:\"\\ea73\"}.glyph-circle-dot-filled:before{content:\"\\ea74\"}.glyph-circle-dot:before{content:\"\\ea75\"}.glyph-circle-filled:before{content:\"\\ea76\"}.glyph-circle-pause-filled:before{content:\"\\ea77\"}.glyph-circle-pause:before{content:\"\\ea78\"}.glyph-circle-play-filled:before{content:\"\\ea79\"}.glyph-circle-play:before{content:\"\\ea7a\"}.glyph-circle-stop-filled:before{content:\"\\ea7b\"}.glyph-circle-stop:before{content:\"\\ea7c\"}.glyph-circle:before{content:\"\\ea7d\"}.glyph-clear-filter-filled:before{content:\"\\ea7e\"}.glyph-clear-filter:before{content:\"\\ea7f\"}.glyph-clear:before{content:\"\\ea80\"}.glyph-clock-filled:before{content:\"\\ea81\"}.glyph-clock:before{content:\"\\ea82\"}.glyph-close-small:before{content:\"\\ea83\"}.glyph-close:before{content:\"\\ea84\"}.glyph-cloud-download-add-filled:before{content:\"\\ea85\"}.glyph-cloud-download-add:before{content:\"\\ea86\"}.glyph-cloud-download-filled:before{content:\"\\ea87\"}.glyph-cloud-download-list-filled:before{content:\"\\ea88\"}.glyph-cloud-download-list:before{content:\"\\ea89\"}.glyph-cloud-download:before{content:\"\\ea8a\"}.glyph-cloud-filled:before{content:\"\\ea8b\"}.glyph-cloud-new-filled:before{content:\"\\ea8c\"}.glyph-cloud-new:before{content:\"\\ea8d\"}.glyph-cloud-success-filled:before{content:\"\\ea8e\"}.glyph-cloud-success:before{content:\"\\ea8f\"}.glyph-cloud-upload-filled:before{content:\"\\ea90\"}.glyph-cloud-upload:before{content:\"\\ea91\"}.glyph-cloud:before{content:\"\\ea92\"}.glyph-code:before{content:\"\\ea93\"}.glyph-coffee-empty-filled:before{content:\"\\ea94\"}.glyph-coffee-empty:before{content:\"\\ea95\"}.glyph-coffee-filled:before{content:\"\\ea96\"}.glyph-coffee:before{content:\"\\ea97\"}.glyph-cogwheel-filled:before{content:\"\\ea98\"}.glyph-cogwheel:before{content:\"\\ea99\"}.glyph-combine:before{content:\"\\ea9a\"}.glyph-compact-disc-filled:before{content:\"\\ea9b\"}.glyph-compact-disc:before{content:\"\\ea9c\"}.glyph-compound-block:before{content:\"\\ea9d\"}.glyph-configuration:before{content:\"\\ea9e\"}.glyph-configure-filled:before{content:\"\\ea9f\"}.glyph-configure:before{content:\"\\eaa0\"}.glyph-connected:before{content:\"\\eaa1\"}.glyph-connector-chart-filled:before{content:\"\\eaa2\"}.glyph-connector-chart:before{content:\"\\eaa3\"}.glyph-connector-filled:before{content:\"\\eaa4\"}.glyph-connector-hex-filled:before{content:\"\\eaa5\"}.glyph-connector-hex:before{content:\"\\eaa6\"}.glyph-connector-rect-filled:before{content:\"\\eaa7\"}.glyph-connector-rect:before{content:\"\\eaa8\"}.glyph-connector-rhomb-filled:before{content:\"\\eaa9\"}.glyph-connector-rhomb:before{content:\"\\eaaa\"}.glyph-connector:before{content:\"\\eaab\"}.glyph-consistency-check:before{content:\"\\eaac\"}.glyph-contact-details-filled:before{content:\"\\eaad\"}.glyph-contact-details:before{content:\"\\eaae\"}.glyph-context-menu:before{content:\"\\eaaf\"}.glyph-controlled-device:before{content:\"\\eab0\"}.glyph-controller-device:before{content:\"\\eab1\"}.glyph-copy:before{content:\"\\eab2\"}.glyph-corner-arrow-up-left:before{content:\"\\eab3\"}.glyph-couch-filled:before{content:\"\\eab4\"}.glyph-couch:before{content:\"\\eab5\"}.glyph-create-plant-filled:before{content:\"\\eab6\"}.glyph-create-plant:before{content:\"\\eab7\"}.glyph-cut:before{content:\"\\eab8\"}.glyph-cycle:before{content:\"\\eab9\"}.glyph-data-egress:before{content:\"\\eaba\"}.glyph-data-ingress-egress:before{content:\"\\eabb\"}.glyph-data-ingress:before{content:\"\\eabc\"}.glyph-database-filled:before{content:\"\\eabd\"}.glyph-database:before{content:\"\\eabe\"}.glyph-details:before{content:\"\\eabf\"}.glyph-diagram-module-library:before{content:\"\\eac0\"}.glyph-diagram-module-new:before{content:\"\\eac1\"}.glyph-diagram-module:before{content:\"\\eac2\"}.glyph-diamond:before{content:\"\\eac3\"}.glyph-disconnected:before{content:\"\\eac4\"}.glyph-disk-filled:before{content:\"\\eac5\"}.glyph-disk-pen:before{content:\"\\eac6\"}.glyph-disk:before{content:\"\\eac7\"}.glyph-distribution:before{content:\"\\eac8\"}.glyph-doc-document:before{content:\"\\eac9\"}.glyph-document-bulk:before{content:\"\\eaca\"}.glyph-document-info:before{content:\"\\eacb\"}.glyph-document-link:before{content:\"\\eacc\"}.glyph-document-management:before{content:\"\\eacd\"}.glyph-document-reference:before{content:\"\\eace\"}.glyph-document-settings:before{content:\"\\eacf\"}.glyph-document-success:before{content:\"\\ead0\"}.glyph-document:before{content:\"\\ead1\"}.glyph-double-check:before{content:\"\\ead2\"}.glyph-double-chevron-down:before{content:\"\\ead3\"}.glyph-double-chevron-left:before{content:\"\\ead4\"}.glyph-double-chevron-right:before{content:\"\\ead5\"}.glyph-double-chevron-up:before{content:\"\\ead6\"}.glyph-doublet-filled:before{content:\"\\ead7\"}.glyph-doublet:before{content:\"\\ead8\"}.glyph-download-add:before{content:\"\\ead9\"}.glyph-download-list:before{content:\"\\eada\"}.glyph-download:before{content:\"\\eadb\"}.glyph-drop:before{content:\"\\eadc\"}.glyph-duplicate-document:before{content:\"\\eadd\"}.glyph-duplicate:before{content:\"\\eade\"}.glyph-e-mail-filled:before{content:\"\\eadf\"}.glyph-e-mail:before{content:\"\\eae0\"}.glyph-earth-filled:before{content:\"\\eae1\"}.glyph-earth:before{content:\"\\eae2\"}.glyph-edit-plant:before{content:\"\\eae3\"}.glyph-electrical-energy-filled:before{content:\"\\eae4\"}.glyph-electrical-energy:before{content:\"\\eae5\"}.glyph-ellipse-arc:before{content:\"\\eae6\"}.glyph-ellipse-filled:before{content:\"\\eae7\"}.glyph-ellipse:before{content:\"\\eae8\"}.glyph-error-filled:before{content:\"\\eae9\"}.glyph-error:before{content:\"\\eaea\"}.glyph-explore-filled:before{content:\"\\eaeb\"}.glyph-explore:before{content:\"\\eaec\"}.glyph-export:before{content:\"\\eaed\"}.glyph-eye-cancelled-filled:before{content:\"\\eaee\"}.glyph-eye-cancelled:before{content:\"\\eaef\"}.glyph-eye-filled:before{content:\"\\eaf0\"}.glyph-eye:before{content:\"\\eaf1\"}.glyph-factory-reset-filled:before{content:\"\\eaf2\"}.glyph-factory-reset:before{content:\"\\eaf3\"}.glyph-filter-filled:before{content:\"\\eaf4\"}.glyph-filter-outline:before{content:\"\\eaf5\"}.glyph-filter:before{content:\"\\eaf6\"}.glyph-flag-filled:before{content:\"\\eaf7\"}.glyph-flag:before{content:\"\\eaf8\"}.glyph-folder-down-filled:before{content:\"\\eaf9\"}.glyph-folder-down:before{content:\"\\eafa\"}.glyph-folder-filled:before{content:\"\\eafb\"}.glyph-folder-new-filled:before{content:\"\\eafc\"}.glyph-folder-new-outline:before{content:\"\\eafd\"}.glyph-folder-new:before{content:\"\\eafe\"}.glyph-folder-open-filled:before{content:\"\\eaff\"}.glyph-folder-open-outline:before{content:\"\\eb00\"}.glyph-folder-open:before{content:\"\\eb01\"}.glyph-folder-outline:before{content:\"\\eb02\"}.glyph-folder-up-filled:before{content:\"\\eb03\"}.glyph-folder-up:before{content:\"\\eb04\"}.glyph-folder:before{content:\"\\eb05\"}.glyph-full-screeen-exit:before{content:\"\\eb06\"}.glyph-full-screeen:before{content:\"\\eb07\"}.glyph-function-block-library:before{content:\"\\eb08\"}.glyph-function-block-new:before{content:\"\\eb09\"}.glyph-function-block:before{content:\"\\eb0a\"}.glyph-function-diagram-new:before{content:\"\\eb0b\"}.glyph-function-diagram:before{content:\"\\eb0c\"}.glyph-gauge-filled:before{content:\"\\eb0d\"}.glyph-gauge:before{content:\"\\eb0e\"}.glyph-gaugechart:before{content:\"\\eb0f\"}.glyph-global-plant-filled:before{content:\"\\eb10\"}.glyph-global-plant:before{content:\"\\eb11\"}.glyph-globe-filled:before{content:\"\\eb12\"}.glyph-globe:before{content:\"\\eb13\"}.glyph-goto:before{content:\"\\eb14\"}.glyph-group:before{content:\"\\eb15\"}.glyph-hard-reset:before{content:\"\\eb16\"}.glyph-hardware-cabinet:before{content:\"\\eb17\"}.glyph-health-filled:before{content:\"\\eb18\"}.glyph-health:before{content:\"\\eb19\"}.glyph-heart-filled:before{content:\"\\eb1a\"}.glyph-heart:before{content:\"\\eb1b\"}.glyph-hexagon-vertical-bars-database-filled:before{content:\"\\eb1c\"}.glyph-hexagon-vertical-bars-database:before{content:\"\\eb1d\"}.glyph-hexagon-vertical-bars-filled:before{content:\"\\eb1e\"}.glyph-hexagon-vertical-bars:before{content:\"\\eb1f\"}.glyph-hierarchy:before{content:\"\\eb20\"}.glyph-highlight-filled:before{content:\"\\eb21\"}.glyph-highlight:before{content:\"\\eb22\"}.glyph-history-list:before{content:\"\\eb23\"}.glyph-history:before{content:\"\\eb24\"}.glyph-home-filled:before{content:\"\\eb25\"}.glyph-home:before{content:\"\\eb26\"}.glyph-hourglass:before{content:\"\\eb27\"}.glyph-image-filled:before{content:\"\\eb28\"}.glyph-image:before{content:\"\\eb29\"}.glyph-import:before{content:\"\\eb2a\"}.glyph-info-feed:before{content:\"\\eb2b\"}.glyph-info-filled:before{content:\"\\eb2c\"}.glyph-info:before{content:\"\\eb2d\"}.glyph-ingestion-report:before{content:\"\\eb2e\"}.glyph-ingestion:before{content:\"\\eb2f\"}.glyph-ink-pen:before{content:\"\\eb30\"}.glyph-inquiry-filled:before{content:\"\\eb31\"}.glyph-inquiry-mail:before{content:\"\\eb32\"}.glyph-inquiry:before{content:\"\\eb33\"}.glyph-item-details-filled:before{content:\"\\eb34\"}.glyph-item-details:before{content:\"\\eb35\"}.glyph-label-filled:before{content:\"\\eb36\"}.glyph-label:before{content:\"\\eb37\"}.glyph-language-filled:before{content:\"\\eb38\"}.glyph-language:before{content:\"\\eb39\"}.glyph-layers-filled:before{content:\"\\eb3a\"}.glyph-layers:before{content:\"\\eb3b\"}.glyph-leaf:before{content:\"\\eb3c\"}.glyph-legal:before{content:\"\\eb3d\"}.glyph-library-new:before{content:\"\\eb3e\"}.glyph-library:before{content:\"\\eb3f\"}.glyph-license:before{content:\"\\eb40\"}.glyph-light-dark:before{content:\"\\eb41\"}.glyph-line-diagonal:before{content:\"\\eb42\"}.glyph-link:before{content:\"\\eb43\"}.glyph-list:before{content:\"\\eb44\"}.glyph-live-schedule:before{content:\"\\eb45\"}.glyph-location-filled:before{content:\"\\eb46\"}.glyph-location-outline:before{content:\"\\eb47\"}.glyph-location:before{content:\"\\eb48\"}.glyph-lock-filled:before{content:\"\\eb49\"}.glyph-lock-key-filled:before{content:\"\\eb4a\"}.glyph-lock-key:before{content:\"\\eb4b\"}.glyph-lock:before{content:\"\\eb4c\"}.glyph-log-in:before{content:\"\\eb4d\"}.glyph-log-out:before{content:\"\\eb4e\"}.glyph-log:before{content:\"\\eb4f\"}.glyph-logic-diagram:before{content:\"\\eb50\"}.glyph-lower-limit:before{content:\"\\eb51\"}.glyph-mail-filled:before{content:\"\\eb52\"}.glyph-mail:before{content:\"\\eb53\"}.glyph-maintenance-documents:before{content:\"\\eb54\"}.glyph-maintenance-info:before{content:\"\\eb55\"}.glyph-maintenance-warning-filled:before{content:\"\\eb56\"}.glyph-maintenance-warning:before{content:\"\\eb57\"}.glyph-maintenance:before{content:\"\\eb58\"}.glyph-mandatory-done:before{content:\"\\eb59\"}.glyph-mandatory:before{content:\"\\eb5a\"}.glyph-map:before{content:\"\\eb5b\"}.glyph-maximize:before{content:\"\\eb5c\"}.glyph-microphone-filled:before{content:\"\\eb5d\"}.glyph-microphone:before{content:\"\\eb5e\"}.glyph-minimize:before{content:\"\\eb5f\"}.glyph-minus:before{content:\"\\eb60\"}.glyph-mix:before{content:\"\\eb61\"}.glyph-monitor-filled:before{content:\"\\eb62\"}.glyph-monitor-trend:before{content:\"\\eb63\"}.glyph-monitor:before{content:\"\\eb64\"}.glyph-monitoring-add:before{content:\"\\eb65\"}.glyph-monitoring:before{content:\"\\eb66\"}.glyph-monitorings:before{content:\"\\eb67\"}.glyph-moon-filled:before{content:\"\\eb68\"}.glyph-moon:before{content:\"\\eb69\"}.glyph-more-menu:before{content:\"\\eb6a\"}.glyph-mouse-click-filled:before{content:\"\\eb6b\"}.glyph-mouse-click:before{content:\"\\eb6c\"}.glyph-mouse-select-filled:before{content:\"\\eb6d\"}.glyph-mouse-select:before{content:\"\\eb6e\"}.glyph-mp4-document:before{content:\"\\eb6f\"}.glyph-namur-check-function-filled:before{content:\"\\eb70\"}.glyph-namur-check-function:before{content:\"\\eb71\"}.glyph-namur-failure-filled:before{content:\"\\eb72\"}.glyph-namur-failure:before{content:\"\\eb73\"}.glyph-namur-maintenance-required-filled:before{content:\"\\eb74\"}.glyph-namur-maintenance-required:before{content:\"\\eb75\"}.glyph-namur-ok-filled:before{content:\"\\eb76\"}.glyph-namur-ok:before{content:\"\\eb77\"}.glyph-namur-out-of-spec-filled:before{content:\"\\eb78\"}.glyph-namur-out-of-spec:before{content:\"\\eb79\"}.glyph-navigation-filled:before{content:\"\\eb7a\"}.glyph-navigation-left:before{content:\"\\eb7b\"}.glyph-navigation-right:before{content:\"\\eb7c\"}.glyph-navigation:before{content:\"\\eb7d\"}.glyph-new-indicator-filled:before{content:\"\\eb7e\"}.glyph-new-indicator:before{content:\"\\eb7f\"}.glyph-no-filter-filled:before{content:\"\\eb80\"}.glyph-no-filter:before{content:\"\\eb81\"}.glyph-no-image:before{content:\"\\eb82\"}.glyph-note-filled:before{content:\"\\eb83\"}.glyph-note:before{content:\"\\eb84\"}.glyph-notification-filled:before{content:\"\\eb85\"}.glyph-notification:before{content:\"\\eb86\"}.glyph-notifications-filled:before{content:\"\\eb87\"}.glyph-notifications:before{content:\"\\eb88\"}.glyph-ontology-filled:before{content:\"\\eb89\"}.glyph-ontology:before{content:\"\\eb8a\"}.glyph-open-external:before{content:\"\\eb8b\"}.glyph-open-file-filled:before{content:\"\\eb8c\"}.glyph-open-file:before{content:\"\\eb8d\"}.glyph-operate-plant-filled:before{content:\"\\eb8e\"}.glyph-operate-plant:before{content:\"\\eb8f\"}.glyph-optimize:before{content:\"\\eb90\"}.glyph-p-and-i-symbols:before{content:\"\\eb91\"}.glyph-p-i-diagram:before{content:\"\\eb92\"}.glyph-pan:before{content:\"\\eb93\"}.glyph-paste:before{content:\"\\eb94\"}.glyph-pause:before{content:\"\\eb95\"}.glyph-pc-tower-filled:before{content:\"\\eb96\"}.glyph-pc-tower:before{content:\"\\eb97\"}.glyph-pdf-document:before{content:\"\\eb98\"}.glyph-pen-filled:before{content:\"\\eb99\"}.glyph-pen:before{content:\"\\eb9a\"}.glyph-phone-filled:before{content:\"\\eb9b\"}.glyph-phone:before{content:\"\\eb9c\"}.glyph-photo-camera-add:before{content:\"\\eb9d\"}.glyph-photo-camera-cancelled-filled:before{content:\"\\eb9e\"}.glyph-photo-camera-cancelled:before{content:\"\\eb9f\"}.glyph-photo-camera-filled:before{content:\"\\eba0\"}.glyph-photo-camera:before{content:\"\\eba1\"}.glyph-photo-cameras:before{content:\"\\eba2\"}.glyph-piechart-filled:before{content:\"\\eba3\"}.glyph-piechart:before{content:\"\\eba4\"}.glyph-pin-filled:before{content:\"\\eba5\"}.glyph-pin:before{content:\"\\eba6\"}.glyph-plant-filled:before{content:\"\\eba7\"}.glyph-plant-handbook-filled:before{content:\"\\eba8\"}.glyph-plant-handbook:before{content:\"\\eba9\"}.glyph-plant-outline:before{content:\"\\ebaa\"}.glyph-plant-security:before{content:\"\\ebab\"}.glyph-plant-settings-filled:before{content:\"\\ebac\"}.glyph-plant-settings:before{content:\"\\ebad\"}.glyph-plant-user-filled:before{content:\"\\ebae\"}.glyph-plant-user:before{content:\"\\ebaf\"}.glyph-plant:before{content:\"\\ebb0\"}.glyph-plants-filled:before{content:\"\\ebb1\"}.glyph-plants:before{content:\"\\ebb2\"}.glyph-play-filled:before{content:\"\\ebb3\"}.glyph-play-pause-filled:before{content:\"\\ebb4\"}.glyph-play-pause:before{content:\"\\ebb5\"}.glyph-play-stepwise-filled:before{content:\"\\ebb6\"}.glyph-play-stepwise:before{content:\"\\ebb7\"}.glyph-play:before{content:\"\\ebb8\"}.glyph-plus-minus-times-divide:before{content:\"\\ebb9\"}.glyph-plus:before{content:\"\\ebba\"}.glyph-point-up-filled:before{content:\"\\ebbb\"}.glyph-point-up:before{content:\"\\ebbc\"}.glyph-polar-plot:before{content:\"\\ebbd\"}.glyph-polygon-filled:before{content:\"\\ebbe\"}.glyph-polygon-line:before{content:\"\\ebbf\"}.glyph-polygon:before{content:\"\\ebc0\"}.glyph-ppt-document:before{content:\"\\ebc1\"}.glyph-print-filled:before{content:\"\\ebc2\"}.glyph-print:before{content:\"\\ebc3\"}.glyph-prio-high:before{content:\"\\ebc4\"}.glyph-prio-low:before{content:\"\\ebc5\"}.glyph-prio-middle:before{content:\"\\ebc6\"}.glyph-product-catalog:before{content:\"\\ebc7\"}.glyph-product-management:before{content:\"\\ebc8\"}.glyph-product:before{content:\"\\ebc9\"}.glyph-project-configuration:before{content:\"\\ebca\"}.glyph-project-new:before{content:\"\\ebcb\"}.glyph-project-scenarios:before{content:\"\\ebcc\"}.glyph-project-server-filled:before{content:\"\\ebcd\"}.glyph-project-server:before{content:\"\\ebce\"}.glyph-project:before{content:\"\\ebcf\"}.glyph-protocol:before{content:\"\\ebd0\"}.glyph-publish-document:before{content:\"\\ebd1\"}.glyph-publish:before{content:\"\\ebd2\"}.glyph-qr-code:before{content:\"\\ebd3\"}.glyph-quality-report:before{content:\"\\ebd4\"}.glyph-question-filled:before{content:\"\\ebd5\"}.glyph-question:before{content:\"\\ebd6\"}.glyph-radarchart:before{content:\"\\ebd7\"}.glyph-radio-waves-off:before{content:\"\\ebd8\"}.glyph-radio-waves:before{content:\"\\ebd9\"}.glyph-random-filled:before{content:\"\\ebda\"}.glyph-random:before{content:\"\\ebdb\"}.glyph-reboot:before{content:\"\\ebdc\"}.glyph-rectangle-filled:before{content:\"\\ebdd\"}.glyph-rectangle:before{content:\"\\ebde\"}.glyph-redo:before{content:\"\\ebdf\"}.glyph-reference:before{content:\"\\ebe0\"}.glyph-refresh-cancelled:before{content:\"\\ebe1\"}.glyph-refresh:before{content:\"\\ebe2\"}.glyph-reload:before{content:\"\\ebe3\"}.glyph-remove-application:before{content:\"\\ebe4\"}.glyph-remove-eye-filled:before{content:\"\\ebe5\"}.glyph-remove-eye:before{content:\"\\ebe6\"}.glyph-rename:before{content:\"\\ebe7\"}.glyph-replace:before{content:\"\\ebe8\"}.glyph-report-barchart:before{content:\"\\ebe9\"}.glyph-report-linechart:before{content:\"\\ebea\"}.glyph-report-text:before{content:\"\\ebeb\"}.glyph-reset:before{content:\"\\ebec\"}.glyph-restore-backup-filled:before{content:\"\\ebed\"}.glyph-restore-backup-pc:before{content:\"\\ebee\"}.glyph-restore-backup:before{content:\"\\ebef\"}.glyph-rhomb-filled:before{content:\"\\ebf0\"}.glyph-rhomb:before{content:\"\\ebf1\"}.glyph-road-filled:before{content:\"\\ebf2\"}.glyph-road:before{content:\"\\ebf3\"}.glyph-rocket-filled:before{content:\"\\ebf4\"}.glyph-rocket:before{content:\"\\ebf5\"}.glyph-route-target:before{content:\"\\ebf6\"}.glyph-route:before{content:\"\\ebf7\"}.glyph-scatterplot:before{content:\"\\ebf8\"}.glyph-scheduler-filled:before{content:\"\\ebf9\"}.glyph-scheduler:before{content:\"\\ebfa\"}.glyph-screen-filled:before{content:\"\\ebfb\"}.glyph-screen:before{content:\"\\ebfc\"}.glyph-screenshot-filled:before{content:\"\\ebfd\"}.glyph-screenshot:before{content:\"\\ebfe\"}.glyph-script-add:before{content:\"\\ebff\"}.glyph-script:before{content:\"\\ec00\"}.glyph-scripts:before{content:\"\\ec01\"}.glyph-search:before{content:\"\\ec02\"}.glyph-share-filled:before{content:\"\\ec03\"}.glyph-share:before{content:\"\\ec04\"}.glyph-shopping-cart-filled:before{content:\"\\ec05\"}.glyph-shopping-cart:before{content:\"\\ec06\"}.glyph-shout-filled:before{content:\"\\ec07\"}.glyph-shout:before{content:\"\\ec08\"}.glyph-sign-language:before{content:\"\\ec09\"}.glyph-signal-strength-0:before{content:\"\\ec0a\"}.glyph-signal-strength-1:before{content:\"\\ec0b\"}.glyph-signal-strength-2:before{content:\"\\ec0c\"}.glyph-signal-strength-3:before{content:\"\\ec0d\"}.glyph-signal-strength-4:before{content:\"\\ec0e\"}.glyph-signal-strength-5:before{content:\"\\ec0f\"}.glyph-signal-strength-6:before{content:\"\\ec10\"}.glyph-signal-strength-7:before{content:\"\\ec11\"}.glyph-signal-strength-8:before{content:\"\\ec12\"}.glyph-simit-component:before{content:\"\\ec13\"}.glyph-simit-macro-component-editor:before{content:\"\\ec14\"}.glyph-simit-macro:before{content:\"\\ec15\"}.glyph-single-check:before{content:\"\\ec16\"}.glyph-skip-back-filled:before{content:\"\\ec17\"}.glyph-skip-back:before{content:\"\\ec18\"}.glyph-skip-filled:before{content:\"\\ec19\"}.glyph-skip:before{content:\"\\ec1a\"}.glyph-snowflake:before{content:\"\\ec1b\"}.glyph-sort-ascending:before{content:\"\\ec1c\"}.glyph-sort-descending:before{content:\"\\ec1d\"}.glyph-sort:before{content:\"\\ec1e\"}.glyph-sound-loud-filled:before{content:\"\\ec1f\"}.glyph-sound-loud:before{content:\"\\ec20\"}.glyph-sound-mute-filled:before{content:\"\\ec21\"}.glyph-sound-mute:before{content:\"\\ec22\"}.glyph-sound-off-filled:before{content:\"\\ec23\"}.glyph-sound-off:before{content:\"\\ec24\"}.glyph-sound-quiet-filled:before{content:\"\\ec25\"}.glyph-sound-quiet:before{content:\"\\ec26\"}.glyph-spatial:before{content:\"\\ec27\"}.glyph-split-horizontally:before{content:\"\\ec28\"}.glyph-split-vertically:before{content:\"\\ec29\"}.glyph-stamp-filled:before{content:\"\\ec2a\"}.glyph-stamp:before{content:\"\\ec2b\"}.glyph-standby:before{content:\"\\ec2c\"}.glyph-star-add-filled:before{content:\"\\ec2d\"}.glyph-star-add:before{content:\"\\ec2e\"}.glyph-star-cancelled-filled:before{content:\"\\ec2f\"}.glyph-star-cancelled:before{content:\"\\ec30\"}.glyph-star-filled:before{content:\"\\ec31\"}.glyph-star-list-filled:before{content:\"\\ec32\"}.glyph-star-list:before{content:\"\\ec33\"}.glyph-star:before{content:\"\\ec34\"}.glyph-start-data-analysis:before{content:\"\\ec35\"}.glyph-steering-user-filled:before{content:\"\\ec36\"}.glyph-steering-user:before{content:\"\\ec37\"}.glyph-steering:before{content:\"\\ec38\"}.glyph-stethoscope:before{content:\"\\ec39\"}.glyph-stop-filled:before{content:\"\\ec3a\"}.glyph-stop:before{content:\"\\ec3b\"}.glyph-success-filled:before{content:\"\\ec3c\"}.glyph-success:before{content:\"\\ec3d\"}.glyph-sun-filled:before{content:\"\\ec3e\"}.glyph-sun:before{content:\"\\ec3f\"}.glyph-support:before{content:\"\\ec40\"}.glyph-surveillance-cancelled-filled:before{content:\"\\ec41\"}.glyph-surveillance-cancelled:before{content:\"\\ec42\"}.glyph-surveillance-filled:before{content:\"\\ec43\"}.glyph-surveillance:before{content:\"\\ec44\"}.glyph-svg-document:before{content:\"\\ec45\"}.glyph-swap-left-right:before{content:\"\\ec46\"}.glyph-switch-slider:before{content:\"\\ec47\"}.glyph-table-columns:before{content:\"\\ec48\"}.glyph-table-rows:before{content:\"\\ec49\"}.glyph-table-settings:before{content:\"\\ec4a\"}.glyph-table:before{content:\"\\ec4b\"}.glyph-tag-filled:before{content:\"\\ec4c\"}.glyph-tag-plus-filled:before{content:\"\\ec4d\"}.glyph-tag-plus:before{content:\"\\ec4e\"}.glyph-tag:before{content:\"\\ec4f\"}.glyph-tasks-all:before{content:\"\\ec50\"}.glyph-tasks-done:before{content:\"\\ec51\"}.glyph-tasks-open:before{content:\"\\ec52\"}.glyph-text-circle-rectangle-filled:before{content:\"\\ec53\"}.glyph-text-circle-rectangle:before{content:\"\\ec54\"}.glyph-text-document:before{content:\"\\ec55\"}.glyph-text:before{content:\"\\ec56\"}.glyph-threshold-cancelled:before{content:\"\\ec57\"}.glyph-threshold-off:before{content:\"\\ec58\"}.glyph-threshold-on:before{content:\"\\ec59\"}.glyph-to-be-published:before{content:\"\\ec5a\"}.glyph-to-search:before{content:\"\\ec5b\"}.glyph-topic-filled:before{content:\"\\ec5c\"}.glyph-topic:before{content:\"\\ec5d\"}.glyph-touch-filled:before{content:\"\\ec5e\"}.glyph-touch:before{content:\"\\ec5f\"}.glyph-trashcan-filled:before{content:\"\\ec60\"}.glyph-trashcan:before{content:\"\\ec61\"}.glyph-tree:before{content:\"\\ec62\"}.glyph-trend:before{content:\"\\ec63\"}.glyph-triangle-filled:before{content:\"\\ec64\"}.glyph-triangle:before{content:\"\\ec65\"}.glyph-truck-filled:before{content:\"\\ec66\"}.glyph-truck:before{content:\"\\ec67\"}.glyph-tulip-filled:before{content:\"\\ec68\"}.glyph-tulip:before{content:\"\\ec69\"}.glyph-txt-document:before{content:\"\\ec6a\"}.glyph-undo:before{content:\"\\ec6b\"}.glyph-ungroup:before{content:\"\\ec6c\"}.glyph-unlock-filled:before{content:\"\\ec6d\"}.glyph-unlock-plant-filled:before{content:\"\\ec6e\"}.glyph-unlock-plant:before{content:\"\\ec6f\"}.glyph-unlock:before{content:\"\\ec70\"}.glyph-upload-document-note:before{content:\"\\ec71\"}.glyph-upload-success:before{content:\"\\ec72\"}.glyph-upload:before{content:\"\\ec73\"}.glyph-upper-limit:before{content:\"\\ec74\"}.glyph-user-check-filled:before{content:\"\\ec75\"}.glyph-user-check:before{content:\"\\ec76\"}.glyph-user-filled:before{content:\"\\ec77\"}.glyph-user-management-filled:before{content:\"\\ec78\"}.glyph-user-management:before{content:\"\\ec79\"}.glyph-user-profile-filled:before{content:\"\\ec7a\"}.glyph-user-profile:before{content:\"\\ec7b\"}.glyph-user-reading-reading:before{content:\"\\ec7c\"}.glyph-user-reading:before{content:\"\\ec7d\"}.glyph-user-settings-filled:before{content:\"\\ec7e\"}.glyph-user-settings:before{content:\"\\ec7f\"}.glyph-user:before{content:\"\\ec80\"}.glyph-validate:before{content:\"\\ec81\"}.glyph-vdi-folder:before{content:\"\\ec82\"}.glyph-version-history:before{content:\"\\ec83\"}.glyph-video-file-filled:before{content:\"\\ec84\"}.glyph-video-file:before{content:\"\\ec85\"}.glyph-warning-filled:before{content:\"\\ec86\"}.glyph-warning-rhomb-filled:before{content:\"\\ec87\"}.glyph-warning-rhomb:before{content:\"\\ec88\"}.glyph-warning:before{content:\"\\ec89\"}.glyph-water-bathing:before{content:\"\\ec8a\"}.glyph-water-fish:before{content:\"\\ec8b\"}.glyph-water-sunbathing:before{content:\"\\ec8c\"}.glyph-waveform:before{content:\"\\ec8d\"}.glyph-webcam-cancelled-filled:before{content:\"\\ec8e\"}.glyph-webcam-cancelled:before{content:\"\\ec8f\"}.glyph-webcam-filled:before{content:\"\\ec90\"}.glyph-webcam:before{content:\"\\ec91\"}.glyph-wlan-off:before{content:\"\\ec92\"}.glyph-wlan-strength-0:before{content:\"\\ec93\"}.glyph-wlan-strength-1:before{content:\"\\ec94\"}.glyph-wlan-strength-2:before{content:\"\\ec95\"}.glyph-wlan-strength-3:before{content:\"\\ec96\"}.glyph-work-case-filled:before{content:\"\\ec97\"}.glyph-work-case:before{content:\"\\ec98\"}.glyph-workspace:before{content:\"\\ec99\"}.glyph-workspaces:before{content:\"\\ec9a\"}.glyph-x-axis-settings:before{content:\"\\ec9b\"}.glyph-xls-document:before{content:\"\\ec9c\"}.glyph-xml-document:before{content:\"\\ec9d\"}.glyph-y-axis-settings:before{content:\"\\ec9e\"}.glyph-youtube-filled:before{content:\"\\ec9f\"}.glyph-youtube:before{content:\"\\eca0\"}.glyph-zoom-in:before{content:\"\\eca1\"}.glyph-zoom-out:before{content:\"\\eca2\"}.glyph-zoom-selection:before{content:\"\\eca3\"}:host{display:inline-flex;height:1.5rem;width:1.5rem}:host i{color:inherit;transition:color 150ms}:host .svg-container{display:block;position:relative;width:100%;height:100%}:host .svg-container>svg{height:1.5rem;width:1.5rem}:host .svg-container>svg[fill],:host .svg-container>svg [fill]{fill:var(--ix-icon-color, var(--theme-color-std-text))}:host(.size-12){height:0.75rem;width:0.75rem}:host(.size-12) .svg-container>svg{height:0.75rem;width:0.75rem}:host(.size-16){height:1rem;width:1rem}:host(.size-16) .svg-container>svg{height:1rem;width:1rem}:host(.size-32){height:2rem;width:2rem}:host(.size-32) .svg-container>svg{height:2rem;width:2rem}";
69
+
70
+ const Icon = class {
71
+ constructor(hostRef) {
72
+ index.registerInstance(this, hostRef);
73
+ this.size = undefined;
74
+ this.color = undefined;
75
+ this.name = undefined;
76
+ this.svgContent = undefined;
77
+ }
78
+ connectedCallback() {
79
+ this.loadIconContent();
80
+ }
81
+ async loadIconContent() {
82
+ try {
83
+ this.svgContent = await resolveIcon(this);
84
+ }
85
+ catch (error) {
86
+ this.svgContent = parseSVGDataContent(question);
87
+ }
88
+ }
89
+ render() {
90
+ const style = {};
91
+ if (this.color) {
92
+ style['color'] = `var(--theme-${this.color})`;
93
+ }
94
+ if (this.name && !this.svgContent) {
95
+ const iconName = this.name;
96
+ return (index.h(index.Host, { style: style, class: {
97
+ ['size-12']: this.size === '12',
98
+ ['size-16']: this.size === '16',
99
+ ['size-24']: this.size === '24',
100
+ ['size-32']: this.size === '32',
101
+ } }, index.h("i", { class: {
102
+ 'glyph': true,
103
+ [`glyph-${iconName}`]: true,
104
+ 'glyph-12': this.size === '12',
105
+ 'glyph-16': this.size === '16',
106
+ 'glyph-24': this.size === '24',
107
+ 'glyph-32': this.size === '32',
108
+ } })));
109
+ }
110
+ return (index.h(index.Host, { style: style, class: {
111
+ ['size-12']: this.size === '12',
112
+ ['size-16']: this.size === '16',
113
+ ['size-24']: this.size === '24',
114
+ ['size-32']: this.size === '32',
115
+ } }, index.h("div", { class: 'svg-container', innerHTML: this.svgContent })));
116
+ }
117
+ static get watchers() { return {
118
+ "name": ["loadIconContent"]
119
+ }; }
120
+ };
121
+ Icon.style = iconCss;
122
+
123
+ exports.Icon = Icon;
124
+
125
+ //# sourceMappingURL=icon-f93d1754.js.map
@@ -0,0 +1 @@
1
+ {"file":"icon-f93d1754.js","mappings":"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","names":["h","Host"],"sources":["./src/components/icon/question.ts","./src/components/icon/resolveIcon.ts","./src/components/icon/icon.scss?tag=ix-icon&encapsulation=shadow","./src/components/icon/icon.tsx"],"sourcesContent":["/*\n * COPYRIGHT (c) Siemens AG 2018-2023 ALL RIGHTS RESERVED.\n */\nexport const question =\n \"data:image/svg+xml;utf8,<?xml version='1.0' encoding='UTF-8'?><svg width='512px' height='512px' viewBox='0 0 512 512' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'><title>question</title><g id='Page-1' stroke='none' stroke-width='1' fill='none' fill-rule='evenodd'><g id='add' transform='translate(42.666667, 42.666667)'><path d='M291.76704,163.504 C291.76704,177.01952 288.33216,188.82176 281.479253,198.90112 C275.828267,207.371093 266.358187,216.549547 253.042987,226.434987 C245.378987,231.682347 240.331947,236.618667 237.916587,241.257813 C234.87744,246.90624 233.376213,255.371093 233.376213,266.666667 L190.710827,266.666667 C190.710827,249.530027 192.53504,237.027413 196.165333,229.162667 C200.394453,219.679573 209.571627,210.098773 223.686187,200.42048 C230.350293,195.374933 235.188693,190.2368 238.214827,184.994773 C241.839787,179.143253 243.664,172.49216 243.664,165.028693 C243.664,153.13024 240.125013,144.26304 233.070293,138.404907 C227.4336,134.177067 220.56768,132.059947 212.501333,132.059947 C199.39328,132.059947 189.911467,136.398507 184.065067,145.069013 C179.829333,151.518293 177.7056,159.787733 177.7056,169.868587 L177.7056,170.173227 L132.34368,170.173227 C132.34368,143.751253 140.703147,123.790507 157.43488,110.274773 C171.554773,98.9922133 189.007787,93.3346133 209.77344,93.3346133 C227.933653,93.3346133 243.865813,96.86848 257.571627,103.9232 C280.37504,115.62624 291.76704,135.494827 291.76704,163.504 Z M426.666667,213.333333 C426.666667,331.153707 331.153707,426.666667 213.333333,426.666667 C95.51296,426.666667 3.55271368e-14,331.153707 3.55271368e-14,213.333333 C3.55271368e-14,95.51168 95.51296,3.55271368e-14 213.333333,3.55271368e-14 C331.153707,3.55271368e-14 426.666667,95.51168 426.666667,213.333333 Z M384,213.333333 C384,119.226667 307.43872,42.6666667 213.333333,42.6666667 C119.227947,42.6666667 42.6666667,119.226667 42.6666667,213.333333 C42.6666667,307.43872 119.227947,384 213.333333,384 C307.43872,384 384,307.43872 384,213.333333 Z M213.332053,282.666667 C198.60416,282.666667 186.665387,294.60544 186.665387,309.333333 C186.665387,324.061227 198.60416,336 213.332053,336 C228.059947,336 239.99872,324.061227 239.99872,309.333333 C239.99872,294.60544 228.059947,282.666667 213.332053,282.666667 Z' id='Shape'/></g></g></svg>\";\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Icon } from './icon';\n\nexport const isSvgDataUrl = (url: string) => {\n if (!url) {\n return false;\n }\n\n if (typeof url !== 'string') {\n return false;\n }\n\n return url.startsWith('data:image/svg+xml');\n};\n\nlet parser = null;\n\nexport function parseSVGDataContent(content: string) {\n if (typeof window['DOMParser'] === 'undefined') {\n console.warn('DOMParser not supported by your browser.');\n return;\n }\n\n if (parser === null) {\n parser = new window['DOMParser']();\n }\n\n const svgDocument = parser.parseFromString(content, 'text/html');\n const svgElement = svgDocument.querySelector('svg') as HTMLElement;\n\n if (!svgElement) {\n throw Error('No valid svg data provided');\n }\n\n return svgElement.outerHTML;\n}\n\nasync function fetchSVG(url: string) {\n const response = await fetch(url);\n const responseText = await response.text();\n\n if (!response.ok) {\n console.error(responseText);\n throw Error(responseText);\n }\n\n return parseSVGDataContent(responseText);\n}\nconst urlRegex = /^(?:(?:https?|ftp):\\/\\/)?(?:\\S+(?::\\S*)?@)?(?:www\\.)?(?:\\S+\\.\\S+)(?:\\S*)$/i;\n\nfunction isValidUrl(url: string) {\n return urlRegex.test(url);\n}\n\nexport async function resolveIcon(icon: Icon) {\n const { name } = icon;\n\n if (!name) {\n return;\n }\n\n if (isSvgDataUrl(name)) {\n return parseSVGDataContent(name);\n }\n\n if (isValidUrl(name)) {\n try {\n return await fetchSVG(name);\n } catch (error) {\n throw error;\n }\n }\n\n //Fallback return undefined to render web font icon\n return;\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n@import './generated/ix-icons';\n\n:host {\n display: inline-flex;\n height: 1.5rem;\n width: 1.5rem;\n\n i {\n color: inherit;\n transition: color 150ms;\n }\n\n .svg-container {\n display: block;\n position: relative;\n width: 100%;\n height: 100%;\n }\n\n .svg-container > svg {\n height: 1.5rem;\n width: 1.5rem;\n }\n\n .svg-container > svg[fill],\n .svg-container > svg [fill] {\n fill: var(--ix-icon-color, var(--theme-color-std-text));\n }\n}\n\n:host(.size-12) {\n height: 0.75rem;\n width: 0.75rem;\n\n .svg-container > svg {\n height: 0.75rem;\n width: 0.75rem;\n }\n}\n\n:host(.size-16) {\n height: 1rem;\n width: 1rem;\n\n .svg-container > svg {\n height: 1rem;\n width: 1rem;\n }\n}\n\n:host(.size-32) {\n height: 2rem;\n width: 2rem;\n\n .svg-container > svg {\n height: 2rem;\n width: 2rem;\n }\n}\n","/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\nimport { Component, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { question } from './question';\nimport { parseSVGDataContent, resolveIcon } from './resolveIcon';\n\n@Component({\n tag: 'ix-icon',\n styleUrl: 'icon.scss',\n shadow: true,\n})\nexport class Icon {\n /**\n * Size of the icon\n */\n @Prop() size: '12' | '16' | '24' | '32';\n\n /**\n * Color of the icon\n */\n @Prop() color: string;\n\n /**\n * Use one of our defined icon names e.g. `copy`\n *\n * https://ix.siemens.io/docs/icon-library/icons\n *\n * or the import variant\n *\n * ```\n * import { rocket } from '@siemens/ix-icons/icons';\n *\n * <ix-icon name={rocket}></ix-icon>\n * ```\n */\n @Prop() name: string;\n\n @State() svgContent?: string;\n\n connectedCallback() {\n this.loadIconContent();\n }\n\n @Watch('name')\n async loadIconContent() {\n try {\n this.svgContent = await resolveIcon(this);\n } catch (error) {\n this.svgContent = parseSVGDataContent(question);\n }\n }\n\n render() {\n const style: {\n [key: string]: string;\n } = {};\n\n if (this.color) {\n style['color'] = `var(--theme-${this.color})`;\n }\n\n if (this.name && !this.svgContent) {\n const iconName = this.name;\n return (\n <Host\n style={style}\n class={{\n ['size-12']: this.size === '12',\n ['size-16']: this.size === '16',\n ['size-24']: this.size === '24',\n ['size-32']: this.size === '32',\n }}\n >\n <i\n class={{\n 'glyph': true,\n [`glyph-${iconName}`]: true,\n 'glyph-12': this.size === '12',\n 'glyph-16': this.size === '16',\n 'glyph-24': this.size === '24',\n 'glyph-32': this.size === '32',\n }}\n ></i>\n </Host>\n );\n }\n\n return (\n <Host\n style={style}\n class={{\n ['size-12']: this.size === '12',\n ['size-16']: this.size === '16',\n ['size-24']: this.size === '24',\n ['size-32']: this.size === '32',\n }}\n >\n <div class={'svg-container'} innerHTML={this.svgContent}></div>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -57,6 +57,11 @@ const HYDRATED_CSS = '{visibility:hidden}.hydrated{visibility:inherit}';
57
57
  * Don't add values to these!!
58
58
  */
59
59
  const EMPTY_OBJ = {};
60
+ /**
61
+ * Namespaces
62
+ */
63
+ const SVG_NS = 'http://www.w3.org/2000/svg';
64
+ const HTML_NS = 'http://www.w3.org/1999/xhtml';
60
65
  const isDef = (v) => v != null;
61
66
  /**
62
67
  * Check whether a value is a 'complex type', defined here as an object or a
@@ -418,13 +423,16 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
418
423
  let i = 0;
419
424
  let elm;
420
425
  let childNode;
421
- if (newVNode.$text$ !== null) {
422
- // create text node
423
- elm = newVNode.$elm$ = doc.createTextNode(newVNode.$text$);
424
- }
425
- else {
426
+ {
427
+ if (!isSvgMode) {
428
+ isSvgMode = newVNode.$tag$ === 'svg';
429
+ }
426
430
  // create element
427
- elm = newVNode.$elm$ = (doc.createElement(newVNode.$tag$));
431
+ elm = newVNode.$elm$ = (doc.createElementNS(isSvgMode ? SVG_NS : HTML_NS, newVNode.$tag$)
432
+ );
433
+ if (isSvgMode && newVNode.$tag$ === 'foreignObject') {
434
+ isSvgMode = false;
435
+ }
428
436
  // add css classes, attrs, props, listeners, etc.
429
437
  {
430
438
  updateElement(null, newVNode, isSvgMode);
@@ -445,6 +453,16 @@ const createElm = (oldParentVNode, newParentVNode, childIndex, parentElm) => {
445
453
  }
446
454
  }
447
455
  }
456
+ {
457
+ if (newVNode.$tag$ === 'svg') {
458
+ // Only reset the SVG context when we're exiting <svg> element
459
+ isSvgMode = false;
460
+ }
461
+ else if (elm.tagName === 'foreignObject') {
462
+ // Reenter SVG context when we're exiting <foreignObject> element
463
+ isSvgMode = true;
464
+ }
465
+ }
448
466
  }
449
467
  return elm;
450
468
  };
@@ -489,16 +507,15 @@ const addVnodes = (parentElm, before, parentVNode, vnodes, startIdx, endIdx) =>
489
507
  * @param vnodes a list of virtual DOM nodes to remove
490
508
  * @param startIdx the index at which to start removing nodes (inclusive)
491
509
  * @param endIdx the index at which to stop removing nodes (inclusive)
510
+ * @param vnode a VNode
511
+ * @param elm an element
492
512
  */
493
- const removeVnodes = (vnodes, startIdx, endIdx) => {
494
- for (let index = startIdx; index <= endIdx; ++index) {
495
- const vnode = vnodes[index];
496
- if (vnode) {
497
- const elm = vnode.$elm$;
498
- if (elm) {
499
- // remove the vnode's element from the dom
500
- elm.remove();
501
- }
513
+ const removeVnodes = (vnodes, startIdx, endIdx, vnode, elm) => {
514
+ for (; startIdx <= endIdx; ++startIdx) {
515
+ if ((vnode = vnodes[startIdx])) {
516
+ elm = vnode.$elm$;
517
+ // remove the vnode's element from the dom
518
+ elm.remove();
502
519
  }
503
520
  }
504
521
  };
@@ -711,8 +728,13 @@ const patch = (oldVNode, newVNode) => {
711
728
  const elm = (newVNode.$elm$ = oldVNode.$elm$);
712
729
  const oldChildren = oldVNode.$children$;
713
730
  const newChildren = newVNode.$children$;
714
- const text = newVNode.$text$;
715
- if (text === null) {
731
+ const tag = newVNode.$tag$;
732
+ {
733
+ {
734
+ // test if we're rendering an svg element, or still rendering nodes inside of one
735
+ // only add this to the when the compiler sees we're using an svg somewhere
736
+ isSvgMode = tag === 'svg' ? true : tag === 'foreignObject' ? false : isSvgMode;
737
+ }
716
738
  {
717
739
  {
718
740
  // either this is the first render of an element OR it's an update
@@ -727,11 +749,6 @@ const patch = (oldVNode, newVNode) => {
727
749
  updateChildren(elm, oldChildren, newVNode, newChildren);
728
750
  }
729
751
  else if (newChildren !== null) {
730
- // no old child vnodes, but there are new child vnodes to add
731
- if (oldVNode.$text$ !== null) {
732
- // the old vnode was text, so be sure to clear it out
733
- elm.textContent = '';
734
- }
735
752
  // add the new vnode children
736
753
  addVnodes(elm, null, newVNode, newChildren, 0, newChildren.length - 1);
737
754
  }
@@ -739,11 +756,9 @@ const patch = (oldVNode, newVNode) => {
739
756
  // no new child vnodes, but there are old child vnodes to remove
740
757
  removeVnodes(oldChildren, 0, oldChildren.length - 1);
741
758
  }
742
- }
743
- else if (oldVNode.$text$ !== text) {
744
- // update the text content for the text only vnode
745
- // and also only if the text is different than before
746
- elm.data = text;
759
+ if (isSvgMode && tag === 'svg') {
760
+ isSvgMode = false;
761
+ }
747
762
  }
748
763
  };
749
764
  /**
@@ -760,14 +775,9 @@ const patch = (oldVNode, newVNode) => {
760
775
  */
761
776
  const renderVdom = (hostRef, renderFnResults) => {
762
777
  const hostElm = hostRef.$hostElement$;
763
- const cmpMeta = hostRef.$cmpMeta$;
764
778
  const oldVNode = hostRef.$vnode$ || newVNode(null, null);
765
779
  const rootVnode = isHost(renderFnResults) ? renderFnResults : h(null, null, renderFnResults);
766
780
  hostTagName = hostElm.tagName;
767
- if (cmpMeta.$attrsToReflect$) {
768
- rootVnode.$attrs$ = rootVnode.$attrs$ || {};
769
- cmpMeta.$attrsToReflect$.map(([propName, attribute]) => (rootVnode.$attrs$[attribute] = hostElm[propName]));
770
- }
771
781
  rootVnode.$tag$ = null;
772
782
  rootVnode.$flags$ |= 4 /* VNODE_FLAGS.isHost */;
773
783
  hostRef.$vnode$ = rootVnode;
@@ -798,53 +808,15 @@ const scheduleUpdate = (hostRef, isInitialLoad) => {
798
808
  const dispatch = () => dispatchHooks(hostRef, isInitialLoad);
799
809
  return writeTask(dispatch) ;
800
810
  };
801
- /**
802
- * Dispatch initial-render and update lifecycle hooks, enqueuing calls to
803
- * component lifecycle methods like `componentWillLoad` as well as
804
- * {@link updateComponent}, which will kick off the virtual DOM re-render.
805
- *
806
- * @param hostRef a reference to a host DOM node
807
- * @param isInitialLoad whether we're on the initial load or not
808
- * @returns an empty Promise which is used to enqueue a series of operations for
809
- * the component
810
- */
811
811
  const dispatchHooks = (hostRef, isInitialLoad) => {
812
812
  const endSchedule = createTime('scheduleUpdate', hostRef.$cmpMeta$.$tagName$);
813
813
  const instance = hostRef.$lazyInstance$ ;
814
- // We're going to use this variable together with `enqueue` to implement a
815
- // little promise-based queue. We start out with it `undefined`. When we add
816
- // the first function to the queue we'll set this variable to be that
817
- // function's return value. When we attempt to add subsequent values to the
818
- // queue we'll check that value and, if it was a `Promise`, we'll then chain
819
- // the new function off of that `Promise` using `.then()`. This will give our
820
- // queue two nice properties:
821
- //
822
- // 1. If all functions added to the queue are synchronous they'll be called
823
- // synchronously right away.
824
- // 2. If all functions added to the queue are asynchronous they'll all be
825
- // called in order after `dispatchHooks` exits.
826
- let maybePromise;
814
+ let promise;
827
815
  endSchedule();
828
- return enqueue(maybePromise, () => updateComponent(hostRef, instance, isInitialLoad));
816
+ return then(promise, () => updateComponent(hostRef, instance, isInitialLoad));
829
817
  };
830
- /**
831
- * This function uses a Promise to implement a simple first-in, first-out queue
832
- * of functions to be called.
833
- *
834
- * The queue is ordered on the basis of the first argument. If it's
835
- * `undefined`, then nothing is on the queue yet, so the provided function can
836
- * be called synchronously (although note that this function may return a
837
- * `Promise`). The idea is that then the return value of that enqueueing
838
- * operation is kept around, so that if it was a `Promise` then subsequent
839
- * functions can be enqueued by calling this function again with that `Promise`
840
- * as the first argument.
841
- *
842
- * @param maybePromise either a `Promise` which should resolve before the next function is called or an 'empty' sentinel
843
- * @param fn a function to enqueue
844
- * @returns either a `Promise` or the return value of the provided function
845
- */
846
- const enqueue = (maybePromise, fn) => maybePromise instanceof Promise ? maybePromise.then(fn) : fn();
847
818
  const updateComponent = async (hostRef, instance, isInitialLoad) => {
819
+ // updateComponent
848
820
  const elm = hostRef.$hostElement$;
849
821
  const endUpdate = createTime('update', hostRef.$cmpMeta$.$tagName$);
850
822
  const rc = elm['s-rc'];
@@ -960,6 +932,9 @@ const safeCall = (instance, method, arg) => {
960
932
  }
961
933
  return undefined;
962
934
  };
935
+ const then = (promise, thenFn) => {
936
+ return promise && promise.then ? promise.then(thenFn) : thenFn();
937
+ };
963
938
  const addHydratedFlag = (elm) => elm.classList.add('hydrated')
964
939
  ;
965
940
  const getValue = (ref, propName) => getHostRef(ref).$instanceValues$.get(propName);
@@ -1101,9 +1076,6 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1101
1076
  .map(([propName, m]) => {
1102
1077
  const attrName = m[1] || propName;
1103
1078
  attrNameToPropName.set(attrName, propName);
1104
- if (m[0] & 512 /* MEMBER_FLAGS.ReflectAttr */) {
1105
- cmpMeta.$attrsToReflect$.push([propName, attrName]);
1106
- }
1107
1079
  return attrName;
1108
1080
  });
1109
1081
  }
@@ -1113,9 +1085,9 @@ const proxyComponent = (Cstr, cmpMeta, flags) => {
1113
1085
  const initializeComponent = async (elm, hostRef, cmpMeta, hmrVersionId, Cstr) => {
1114
1086
  // initializeComponent
1115
1087
  if ((hostRef.$flags$ & 32 /* HOST_FLAGS.hasInitializedComponent */) === 0) {
1116
- // Let the runtime know that the component has been initialized
1117
- hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
1118
1088
  {
1089
+ // we haven't initialized this element yet
1090
+ hostRef.$flags$ |= 32 /* HOST_FLAGS.hasInitializedComponent */;
1119
1091
  // lazy loaded components
1120
1092
  // request the component's implementation to be
1121
1093
  // wired up with the host element
@@ -1269,9 +1241,6 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1269
1241
  {
1270
1242
  cmpMeta.$members$ = compactMeta[2];
1271
1243
  }
1272
- {
1273
- cmpMeta.$attrsToReflect$ = [];
1274
- }
1275
1244
  {
1276
1245
  cmpMeta.$watchers$ = {};
1277
1246
  }
@@ -1478,4 +1447,4 @@ exports.promiseResolve = promiseResolve;
1478
1447
  exports.registerInstance = registerInstance;
1479
1448
  exports.setNonce = setNonce;
1480
1449
 
1481
- //# sourceMappingURL=index-22d7f5a7.js.map
1450
+ //# sourceMappingURL=index-4251dd4f.js.map