@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.
- package/dist/cjs/icon-f93d1754.js +125 -0
- package/dist/cjs/icon-f93d1754.js.map +1 -0
- package/dist/cjs/{index-22d7f5a7.js → index-4251dd4f.js} +51 -82
- package/dist/cjs/index-4251dd4f.js.map +1 -0
- package/dist/cjs/index.cjs.js +2 -2
- package/dist/cjs/ix-icon.cjs.entry.js +2 -2
- package/dist/cjs/ix-icons.cjs.js +3 -3
- package/dist/cjs/ix-icons.cjs.js.map +1 -1
- package/dist/cjs/loader.cjs.js +3 -3
- package/dist/cjs/loader.cjs.js.map +1 -1
- package/dist/collection/collection-manifest.json +1 -1
- package/dist/collection/components/icon/icon.css +771 -665
- package/dist/collection/components/icon/icon.js +9 -30
- package/dist/collection/components/icon/icon.js.map +1 -1
- package/dist/collection/components/icon/question.js +5 -0
- package/dist/collection/components/icon/question.js.map +1 -0
- package/dist/collection/components/icon/resolveIcon.js +19 -13
- package/dist/collection/components/icon/resolveIcon.js.map +1 -1
- package/dist/components/icon.js +32 -22
- package/dist/components/icon.js.map +1 -1
- package/dist/css/ix-icons.css +673 -641
- package/dist/esm/icon-6a9c5e3a.js +123 -0
- package/dist/esm/icon-6a9c5e3a.js.map +1 -0
- package/dist/esm/{index-460e19e2.js → index-68769e11.js} +51 -82
- package/dist/esm/index-68769e11.js.map +1 -0
- package/dist/esm/index.js +2 -2
- package/dist/esm/ix-icon.entry.js +2 -2
- package/dist/esm/ix-icons.js +4 -4
- package/dist/esm/ix-icons.js.map +1 -1
- package/dist/esm/loader.js +4 -4
- package/dist/esm/loader.js.map +1 -1
- package/dist/fonts/ix-icons.eot +0 -0
- package/dist/fonts/ix-icons.svg +738 -642
- package/dist/fonts/ix-icons.ttf +0 -0
- package/dist/fonts/ix-icons.woff +0 -0
- package/dist/fonts/ix-icons.woff2 +0 -0
- package/dist/ix-icons/index.esm.js +1 -1
- package/dist/ix-icons/ix-icons.esm.js +1 -1
- package/dist/ix-icons/ix-icons.esm.js.map +1 -1
- package/dist/ix-icons/p-3f1bfdd7.js +2 -0
- package/dist/ix-icons/p-3f1bfdd7.js.map +1 -0
- package/dist/ix-icons/p-56e47578.entry.js +2 -0
- package/dist/ix-icons/p-dedaa481.js +3 -0
- package/dist/ix-icons/p-dedaa481.js.map +1 -0
- package/dist/sample.html +1214 -670
- package/dist/sample.json +64 -0
- package/dist/svg/add-application.svg +1 -0
- package/dist/svg/add-user-filled.svg +1 -0
- package/dist/svg/add-user.svg +1 -0
- package/dist/svg/application-screen.svg +1 -0
- package/dist/svg/applications.svg +1 -0
- package/dist/svg/certificate-error-filled.svg +1 -0
- package/dist/svg/certificate-error.svg +1 -0
- package/dist/svg/certificate-exclamation-filled.svg +1 -0
- package/dist/svg/certificate-exclamation.svg +1 -0
- package/dist/svg/certificate-success-filled.svg +1 -0
- package/dist/svg/certificate-success.svg +1 -0
- package/dist/svg/coffee-empty-filled.svg +1 -0
- package/dist/svg/coffee-empty.svg +1 -0
- package/dist/svg/coffee-filled.svg +1 -0
- package/dist/svg/coffee.svg +1 -0
- package/dist/svg/electrical-energy-filled.svg +1 -0
- package/dist/svg/electrical-energy.svg +1 -0
- package/dist/svg/photo-camera-cancelled-filled.svg +1 -0
- package/dist/svg/photo-camera-cancelled.svg +1 -0
- package/dist/svg/project-server-filled.svg +1 -0
- package/dist/svg/project-server.svg +1 -0
- package/dist/svg/remove-application.svg +1 -0
- package/dist/svg/stamp-filled.svg +1 -0
- package/dist/svg/stamp.svg +1 -0
- package/dist/svg/surveillance-cancelled-filled.svg +1 -0
- package/dist/svg/surveillance-cancelled.svg +1 -0
- package/dist/svg/text-document.svg +1 -9
- package/dist/svg/user-reading-reading.svg +1 -0
- package/dist/svg/user-reading.svg +1 -0
- package/dist/svg/webcam-cancelled-filled.svg +1 -0
- package/dist/svg/webcam-cancelled.svg +1 -0
- package/dist/svg/workspace.svg +1 -0
- package/dist/svg/workspaces.svg +1 -0
- package/dist/types/components/icon/icon.d.ts +0 -9
- package/dist/types/components/icon/question.d.ts +1 -0
- package/dist/types/components/icon/resolveIcon.d.ts +1 -0
- package/dist/types/components.d.ts +0 -4
- package/dist/types/stencil-public-runtime.d.ts +0 -1
- package/icons/index.d.ts +33 -1
- package/icons/index.js +34 -2
- package/icons/index.mjs +34 -2
- package/icons/package.json +1 -1
- package/package.json +2 -2
- package/dist/cjs/icon-4106de76.js +0 -114
- package/dist/cjs/icon-4106de76.js.map +0 -1
- package/dist/cjs/index-22d7f5a7.js.map +0 -1
- package/dist/esm/icon-cb9cbf8c.js +0 -112
- package/dist/esm/icon-cb9cbf8c.js.map +0 -1
- package/dist/esm/index-460e19e2.js.map +0 -1
- package/dist/ix-icons/p-2a168ebc.entry.js +0 -2
- package/dist/ix-icons/p-37738e42.js +0 -2
- package/dist/ix-icons/p-37738e42.js.map +0 -1
- package/dist/ix-icons/p-625c25c8.js +0 -3
- package/dist/ix-icons/p-625c25c8.js.map +0 -1
- /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
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
else {
|
426
|
+
{
|
427
|
+
if (!isSvgMode) {
|
428
|
+
isSvgMode = newVNode.$tag$ === 'svg';
|
429
|
+
}
|
426
430
|
// create element
|
427
|
-
elm = newVNode.$elm$ = (doc.
|
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 (
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
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
|
715
|
-
|
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
|
-
|
744
|
-
|
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
|
-
|
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
|
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-
|
1450
|
+
//# sourceMappingURL=index-4251dd4f.js.map
|