@genexus/genexus-ide-ui 0.0.46 → 0.0.48

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. package/dist/cjs/ch-icon.cjs.entry.js +116 -0
  2. package/dist/cjs/genexus-ide-ui.cjs.js +1 -1
  3. package/dist/cjs/gx-ide-share-kb.cjs.entry.js +61 -0
  4. package/dist/cjs/{gxg-button.cjs.entry.js → gxg-button_2.cjs.entry.js} +61 -0
  5. package/dist/cjs/gxg-combo-box_2.cjs.entry.js +2 -8
  6. package/dist/cjs/gxg-form-text.cjs.entry.js +51 -4
  7. package/dist/cjs/gxg-ide-loader.cjs.entry.js +79 -0
  8. package/dist/cjs/gxg-test.cjs.entry.js +1 -3
  9. package/dist/cjs/loader.cjs.js +1 -1
  10. package/dist/collection/collection-manifest.json +2 -0
  11. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +12 -0
  12. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.ja.json +3 -0
  13. package/dist/collection/components/share-kb/gx-ide-assets/share-kb/langs/share-kb.lang.zh.json +3 -0
  14. package/dist/collection/components/share-kb/share-kb.css +183 -0
  15. package/dist/collection/components/share-kb/share-kb.js +157 -0
  16. package/dist/components/combo-box.js +2 -9
  17. package/dist/components/form-text.js +55 -4
  18. package/dist/components/gx-ide-share-kb.d.ts +11 -0
  19. package/dist/components/gx-ide-share-kb.js +152 -0
  20. package/dist/components/gxg-ide-loader.js +117 -0
  21. package/dist/components/gxg-test.js +1 -3
  22. package/dist/components/index.d.ts +1 -0
  23. package/dist/components/index.js +2 -0
  24. package/dist/esm/ch-icon.entry.js +112 -0
  25. package/dist/esm/genexus-ide-ui.js +1 -1
  26. package/dist/esm/gx-ide-share-kb.entry.js +57 -0
  27. package/dist/esm/{gxg-button.entry.js → gxg-button_2.entry.js} +62 -2
  28. package/dist/esm/gxg-combo-box_2.entry.js +2 -8
  29. package/dist/esm/gxg-form-text.entry.js +51 -4
  30. package/dist/esm/gxg-ide-loader.entry.js +75 -0
  31. package/dist/esm/gxg-test.entry.js +1 -3
  32. package/dist/esm/loader.js +1 -1
  33. package/dist/genexus-ide-ui/genexus-ide-ui.css +1 -1
  34. package/dist/genexus-ide-ui/genexus-ide-ui.esm.js +1 -1
  35. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.en.json +12 -0
  36. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.ja.json +3 -0
  37. package/dist/genexus-ide-ui/gx-ide-assets/share-kb/langs/share-kb.lang.zh.json +3 -0
  38. package/dist/genexus-ide-ui/p-447c3a31.entry.js +1 -0
  39. package/dist/genexus-ide-ui/p-510330c9.entry.js +1 -0
  40. package/dist/genexus-ide-ui/p-5ad757f4.entry.js +1 -0
  41. package/dist/genexus-ide-ui/p-6e232a6f.entry.js +1 -0
  42. package/dist/genexus-ide-ui/p-9943e7db.entry.js +1 -0
  43. package/dist/genexus-ide-ui/{p-f2f60ed8.entry.js → p-d02f6ce4.entry.js} +1 -1
  44. package/dist/genexus-ide-ui/p-d8d00971.entry.js +1 -0
  45. package/dist/node_modules/@genexus/gemini/dist/collection/components/form-text/form-text.css +8 -0
  46. package/dist/node_modules/@genexus/gemini/dist/collection/components/ide-loader/ide-loader.css +89 -0
  47. package/dist/types/common/types.d.ts +1 -0
  48. package/dist/types/components/create-kb-from-server/create-kb-from-server.d.ts +2 -3
  49. package/dist/types/components/share-kb/share-kb.d.ts +46 -0
  50. package/dist/types/components.d.ts +54 -0
  51. package/package.json +3 -3
  52. package/dist/cjs/ch-icon_2.cjs.entry.js +0 -177
  53. package/dist/esm/ch-icon_2.entry.js +0 -172
  54. package/dist/genexus-ide-ui/p-54d15f4d.entry.js +0 -1
  55. package/dist/genexus-ide-ui/p-98c6b820.entry.js +0 -1
  56. package/dist/genexus-ide-ui/p-a708db45.entry.js +0 -1
  57. package/dist/genexus-ide-ui/p-e1e53ab1.entry.js +0 -1
@@ -0,0 +1,89 @@
1
+ :host(.gxg--disabled) .form-element,
2
+ :host(.gxg--disabled.form-element) {
3
+ pointer-events: none;
4
+ background-color: var(--gxg-background-color--disabled) !important;
5
+ color: var(--gxg-color--disabled) !important;
6
+ border-color: var(--gxg-border-color--disabled) !important;
7
+ cursor: default !important;
8
+ }
9
+
10
+ :host {
11
+ display: block;
12
+ }
13
+
14
+ ch-window::part(mask) {
15
+ overflow: hidden;
16
+ }
17
+
18
+ ch-window::part(main) {
19
+ height: 100%;
20
+ }
21
+
22
+ ch-window::part(window) {
23
+ width: 100%;
24
+ height: 100%;
25
+ }
26
+
27
+ .loader-wrapper {
28
+ opacity: 0;
29
+ transition: var(--show-transition) opacity;
30
+ width: 100%;
31
+ height: 100%;
32
+ display: flex;
33
+ background-color: rgba(var(--color-background--rgb), 0.45);
34
+ backdrop-filter: blur(15px);
35
+ padding: var(--spacing-comp-05);
36
+ flex-direction: column;
37
+ gap: var(--spacing-comp-04);
38
+ align-items: center;
39
+ justify-content: center;
40
+ box-sizing: border-box;
41
+ -webkit-animation: wrapper 0.6s infinite alternate;
42
+ animation: wrapper 0.6s infinite alternate;
43
+ color: var(--color-on-secondary);
44
+ }
45
+ .loader-wrapper--visible {
46
+ opacity: 1;
47
+ }
48
+
49
+ .loader-spinner {
50
+ border: 2px var(--gray-01) solid;
51
+ border-top: 2px var(--color-primary-enabled) solid;
52
+ border-radius: 50%;
53
+ -webkit-animation: spinner 0.6s infinite linear;
54
+ animation: spinner 0.6s infinite linear;
55
+ width: 30px;
56
+ height: 30px;
57
+ }
58
+
59
+ .loader-description {
60
+ max-width: 400px;
61
+ text-align: center;
62
+ }
63
+
64
+ /*background color animation*/
65
+ @keyframes wrapper {
66
+ from {
67
+ background-color: rgba(var(--color-background--rgb), 0.45);
68
+ }
69
+ to {
70
+ background-color: rgba(var(--gray-02--rgb), 0.25);
71
+ }
72
+ }
73
+ /*spinner animation*/
74
+ @-webkit-keyframes spinner {
75
+ from {
76
+ -webkit-transform: rotate(0deg);
77
+ }
78
+ to {
79
+ -webkit-transform: rotate(359deg);
80
+ }
81
+ }
82
+ @keyframes spinner {
83
+ from {
84
+ transform: rotate(0deg);
85
+ }
86
+ to {
87
+ transform: rotate(359deg);
88
+ }
89
+ }
@@ -50,3 +50,4 @@ export type EntityData = {
50
50
  iconSrc?: string;
51
51
  iconColor?: IconColor;
52
52
  };
53
+ export type GxServerAuthenticationType = "genexus" | "local";
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from "../../stencil-public-runtime";
2
- import { FormSubmitResult } from "../../common/types";
2
+ import { FormSubmitResult, GxServerAuthenticationType } from "../../common/types";
3
3
  export declare class GxIdeCreateKbFromServer {
4
4
  [key: string]: any;
5
5
  /**
@@ -71,7 +71,7 @@ export declare class GxIdeCreateKbFromServer {
71
71
  }
72
72
  export interface GXServerConnectionData {
73
73
  serverUrl: string;
74
- authenticationType: AuthenticationType;
74
+ authenticationType: GxServerAuthenticationType;
75
75
  user: string;
76
76
  password: string;
77
77
  }
@@ -87,4 +87,3 @@ export interface CreateKBData {
87
87
  id: string;
88
88
  name: string;
89
89
  }
90
- export type AuthenticationType = "genexus" | "local";
@@ -0,0 +1,46 @@
1
+ import { EventEmitter } from "../../stencil-public-runtime";
2
+ import { FormSubmitResult, GxServerAuthenticationType } from "../../common/types";
3
+ export declare class GxIdeShareKb {
4
+ /**
5
+ * The component hard-coded strings translations.
6
+ */
7
+ private _componentLocale;
8
+ el: HTMLGxIdeShareKbElement;
9
+ private kbNameEl;
10
+ private serverUrlEl;
11
+ private authTypeEl;
12
+ private userNameEl;
13
+ private passwordEl;
14
+ /**
15
+ * The name of the kb
16
+ */
17
+ readonly kbName: string;
18
+ /**
19
+ * Urls array of cataloged servers to be shown on combo
20
+ */
21
+ readonly serverUrls: string[];
22
+ /**
23
+ * True if user can introduce server url manually
24
+ */
25
+ readonly enableCustomServer: boolean;
26
+ /**
27
+ * Callback invoked when Share button is pressed
28
+ */
29
+ readonly createKBCallback: CreateKBCallback;
30
+ /**
31
+ * @description Gets fired when the component has rendered for the first time.
32
+ */
33
+ componentDidRenderEvent: EventEmitter<string>;
34
+ componentWillLoad(): Promise<void>;
35
+ componentDidRender(): void;
36
+ private createKBCallbackHandler;
37
+ render(): any;
38
+ }
39
+ export type CreateKBCallback = (data: ShareKBData) => Promise<FormSubmitResult>;
40
+ export type ShareKBData = {
41
+ name: string;
42
+ serverUrl: string;
43
+ authenticationType: GxServerAuthenticationType;
44
+ user: string;
45
+ password: string;
46
+ };
@@ -18,6 +18,7 @@ import { CancelCallback as CancelCallback1, CreateCallback as CreateCallback1, G
18
18
  import { CancelCallback as CancelCallback2, CreateCallback as CreateCallback2, NewObjectData, SelectModuleCallback, TypeCategoryData, ValidateNameCallback } from "./components/new-object/new-object";
19
19
  import { CancelCallback as CancelCallback3, LoadCallback, NewObjectCallback, ObjectType, OpenSelectionCallback, SelectModuleCallback as SelectModuleCallback1 } from "./components/object-selector/object-selector";
20
20
  import { LoadReferencesCallback, ObjectData, OpenObjectCallback, OpenSelectorDialogCallback, SelectorSourceCallback, SelectReferenceCallback } from "./components/references/references";
21
+ import { CreateKBCallback } from "./components/share-kb/share-kb";
21
22
  import { CommitCallback, CommitSelectCallback, GetRecentComment, LoadCallback as LoadCallback1, ObjectsContextMenuCallback, PendingItemsCheckedCallback } from "./components/team-dev-commit/team-dev-commit";
22
23
  import { cancelCallback, confirmCallback } from "./components/team-dev-select-recent-comment/team-dev-select-recent-comment";
23
24
  import { ConfirmCallback, GridContextMenuCallback, LoadCallback as LoadCallback2, ObjectsContextMenuCallback as ObjectsContextMenuCallback1, PendingItemsCheckedCallback as PendingItemsCheckedCallback1, UpdateCallback, UpdateFromData, UpdateSelectCallback } from "./components/team-dev-update/team-dev-update";
@@ -504,6 +505,24 @@ export namespace Components {
504
505
  */
505
506
  "selectorSourceCallback"?: SelectorSourceCallback;
506
507
  }
508
+ interface GxIdeShareKb {
509
+ /**
510
+ * Callback invoked when Share button is pressed
511
+ */
512
+ "createKBCallback": CreateKBCallback;
513
+ /**
514
+ * True if user can introduce server url manually
515
+ */
516
+ "enableCustomServer": boolean;
517
+ /**
518
+ * The name of the kb
519
+ */
520
+ "kbName": string;
521
+ /**
522
+ * Urls array of cataloged servers to be shown on combo
523
+ */
524
+ "serverUrls": string[];
525
+ }
507
526
  interface GxIdeTeamDevCommit {
508
527
  /**
509
528
  * Possible values for Categories filter
@@ -819,6 +838,10 @@ export interface GxIdeReferencesCustomEvent<T> extends CustomEvent<T> {
819
838
  detail: T;
820
839
  target: HTMLGxIdeReferencesElement;
821
840
  }
841
+ export interface GxIdeShareKbCustomEvent<T> extends CustomEvent<T> {
842
+ detail: T;
843
+ target: HTMLGxIdeShareKbElement;
844
+ }
822
845
  export interface GxIdeTeamDevCommitCustomEvent<T> extends CustomEvent<T> {
823
846
  detail: T;
824
847
  target: HTMLGxIdeTeamDevCommitElement;
@@ -914,6 +937,12 @@ declare global {
914
937
  prototype: HTMLGxIdeReferencesElement;
915
938
  new (): HTMLGxIdeReferencesElement;
916
939
  };
940
+ interface HTMLGxIdeShareKbElement extends Components.GxIdeShareKb, HTMLStencilElement {
941
+ }
942
+ var HTMLGxIdeShareKbElement: {
943
+ prototype: HTMLGxIdeShareKbElement;
944
+ new (): HTMLGxIdeShareKbElement;
945
+ };
917
946
  interface HTMLGxIdeTeamDevCommitElement extends Components.GxIdeTeamDevCommit, HTMLStencilElement {
918
947
  }
919
948
  var HTMLGxIdeTeamDevCommitElement: {
@@ -980,6 +1009,7 @@ declare global {
980
1009
  "gx-ide-new-object": HTMLGxIdeNewObjectElement;
981
1010
  "gx-ide-object-selector": HTMLGxIdeObjectSelectorElement;
982
1011
  "gx-ide-references": HTMLGxIdeReferencesElement;
1012
+ "gx-ide-share-kb": HTMLGxIdeShareKbElement;
983
1013
  "gx-ide-team-dev-commit": HTMLGxIdeTeamDevCommitElement;
984
1014
  "gx-ide-team-dev-select-recent-comment": HTMLGxIdeTeamDevSelectRecentCommentElement;
985
1015
  "gx-ide-team-dev-update": HTMLGxIdeTeamDevUpdateElement;
@@ -1514,6 +1544,28 @@ declare namespace LocalJSX {
1514
1544
  */
1515
1545
  "selectorSourceCallback"?: SelectorSourceCallback;
1516
1546
  }
1547
+ interface GxIdeShareKb {
1548
+ /**
1549
+ * Callback invoked when Share button is pressed
1550
+ */
1551
+ "createKBCallback": CreateKBCallback;
1552
+ /**
1553
+ * True if user can introduce server url manually
1554
+ */
1555
+ "enableCustomServer"?: boolean;
1556
+ /**
1557
+ * The name of the kb
1558
+ */
1559
+ "kbName": string;
1560
+ /**
1561
+ * @description Gets fired when the component has rendered for the first time.
1562
+ */
1563
+ "onComponentDidRenderEvent"?: (event: GxIdeShareKbCustomEvent<string>) => void;
1564
+ /**
1565
+ * Urls array of cataloged servers to be shown on combo
1566
+ */
1567
+ "serverUrls": string[];
1568
+ }
1517
1569
  interface GxIdeTeamDevCommit {
1518
1570
  /**
1519
1571
  * Possible values for Categories filter
@@ -1820,6 +1872,7 @@ declare namespace LocalJSX {
1820
1872
  "gx-ide-new-object": GxIdeNewObject;
1821
1873
  "gx-ide-object-selector": GxIdeObjectSelector;
1822
1874
  "gx-ide-references": GxIdeReferences;
1875
+ "gx-ide-share-kb": GxIdeShareKb;
1823
1876
  "gx-ide-team-dev-commit": GxIdeTeamDevCommit;
1824
1877
  "gx-ide-team-dev-select-recent-comment": GxIdeTeamDevSelectRecentComment;
1825
1878
  "gx-ide-team-dev-update": GxIdeTeamDevUpdate;
@@ -1846,6 +1899,7 @@ declare module "@stencil/core" {
1846
1899
  "gx-ide-new-object": LocalJSX.GxIdeNewObject & JSXBase.HTMLAttributes<HTMLGxIdeNewObjectElement>;
1847
1900
  "gx-ide-object-selector": LocalJSX.GxIdeObjectSelector & JSXBase.HTMLAttributes<HTMLGxIdeObjectSelectorElement>;
1848
1901
  "gx-ide-references": LocalJSX.GxIdeReferences & JSXBase.HTMLAttributes<HTMLGxIdeReferencesElement>;
1902
+ "gx-ide-share-kb": LocalJSX.GxIdeShareKb & JSXBase.HTMLAttributes<HTMLGxIdeShareKbElement>;
1849
1903
  "gx-ide-team-dev-commit": LocalJSX.GxIdeTeamDevCommit & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevCommitElement>;
1850
1904
  "gx-ide-team-dev-select-recent-comment": LocalJSX.GxIdeTeamDevSelectRecentComment & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevSelectRecentCommentElement>;
1851
1905
  "gx-ide-team-dev-update": LocalJSX.GxIdeTeamDevUpdate & JSXBase.HTMLAttributes<HTMLGxIdeTeamDevUpdateElement>;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genexus/genexus-ide-ui",
3
3
  "license": "Apache-2.0",
4
- "version": "0.0.46",
4
+ "version": "0.0.48",
5
5
  "description": "GeneXus IDE UI components",
6
6
  "main": "dist/index.cjs.js",
7
7
  "module": "dist/index.js",
@@ -36,10 +36,10 @@
36
36
  "@types/react": "^18.2.8"
37
37
  },
38
38
  "peerDependencies": {
39
- "@genexus/gemini": "*0.1.479"
39
+ "@genexus/gemini": "*0.1.481"
40
40
  },
41
41
  "devDependencies": {
42
- "@genexus/gemini": "*0.1.479",
42
+ "@genexus/gemini": "*0.1.481",
43
43
  "@stencil-community/eslint-plugin": "^0.5.0",
44
44
  "@stencil/core": "^2.17.0",
45
45
  "@stencil/sass": "^2.0.1",
@@ -1,177 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- const index = require('./index-5a32426a.js');
6
-
7
- const iconContent = new Map();
8
- const requests = new Map();
9
- function getSvgContent(url) {
10
- // see if we already have a request for this url
11
- let request = requests.get(url);
12
- if (!request) {
13
- // we don't already have a request
14
- request = fetch(url).then(response => {
15
- if (response.ok) {
16
- return response.text().then(svgContent => {
17
- iconContent.set(url, svgContent);
18
- return svgContent;
19
- });
20
- }
21
- iconContent.set(url, "");
22
- });
23
- // cache for the same requests
24
- requests.set(url, request);
25
- }
26
- return request;
27
- }
28
-
29
- const iconCss$1 = ":host(:not([auto-color])){}:host(:not([auto-color])) svg *{fill:var(--icon-color) !important}:host(:not([auto-color])) path.icons01{fill:var(--icons01-enabled)}:host(:not([auto-color])) path.icons02{fill:var(--icons02-enabled)}:host(:not([auto-color])) path.icons03{fill:var(--icons03-enabled)}:host(:not([auto-color])) path.icons04{fill:var(--icons04-enabled)}:host(:not([auto-color])) path.icons05{fill:var(--icons05-enabled)}:host(:not([auto-color])) path.icons06{fill:var(--icons06-enabled)}:host(:not([auto-color])) path.icons07{fill:var(--icons07-enabled)}:host(:not([auto-color])) path.icons08{fill:var(--icons08-enabled)}:host(:not([auto-color])) path.icons09{fill:var(--icons09-enabled)}:host{display:inline-flex;line-height:0}:host svg{width:var(--icon-size);height:var(--icon-size)}";
30
-
31
- const ChIcon = class {
32
- constructor(hostRef) {
33
- index.registerInstance(this, hostRef);
34
- /**
35
- * If enabled, the icon will be loaded lazily when it's visible in the viewport.
36
- */
37
- this.lazy = false;
38
- /**
39
- * If enabled, the icon will display its inherent/natural color
40
- */
41
- this.autoColor = false;
42
- /**
43
- * The URL of the icon.
44
- */
45
- this.src = "";
46
- /**
47
- * The size of the icon. Possible values: regular, small.
48
- */
49
- this.size = "regular";
50
- this.isVisible = false;
51
- }
52
- /** *******************************
53
- METHODS
54
- *********************************/
55
- connectedCallback() {
56
- // purposely do not return the promise here because loading
57
- // the svg file should not hold up loading the app
58
- // only load the svg if it's visible
59
- this.waitUntilVisible(this.element, "50px", () => {
60
- this.isVisible = true;
61
- this.getIcon();
62
- });
63
- }
64
- disconnectedCallback() {
65
- if (this.io !== undefined) {
66
- this.io.disconnect();
67
- this.io = undefined;
68
- }
69
- }
70
- waitUntilVisible(el, rootMargin, callback) {
71
- if (this.lazy &&
72
- typeof window !== "undefined" &&
73
- window.IntersectionObserver) {
74
- const io = (this.io = new window.IntersectionObserver((data) => {
75
- if (data[0].isIntersecting) {
76
- io.disconnect();
77
- this.io = undefined;
78
- callback();
79
- }
80
- }, { rootMargin }));
81
- io.observe(el);
82
- }
83
- else {
84
- // browser doesn't support IntersectionObserver
85
- // so just fallback to always show it
86
- callback();
87
- }
88
- }
89
- async getIcon() {
90
- if (this.isVisible) {
91
- if (this.src) {
92
- if (iconContent.has(this.src)) {
93
- this.svgContent = iconContent.get(this.src);
94
- }
95
- else {
96
- this.svgContent = await getSvgContent(this.src);
97
- }
98
- }
99
- else {
100
- this.svgContent = "";
101
- return;
102
- }
103
- }
104
- }
105
- render() {
106
- return index.h("div", { innerHTML: this.svgContent });
107
- }
108
- static get assetsDirs() { return ["ch-icon-assets"]; }
109
- get element() { return index.getElement(this); }
110
- static get watchers() { return {
111
- "src": ["getIcon"]
112
- }; }
113
- };
114
- ChIcon.style = iconCss$1;
115
-
116
- const iconCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0;}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px;}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-01--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-02{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-02--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-03{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-03--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-04{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-04--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-05{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em}.gxg-title-05--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em;color:var(--color-on-primary)}.gxg-text{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-text--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-text--gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--gray-05)}.gxg-quote{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;font-style:italic}.gxg-quote--negative{color:var(--color-on-primary)}.gxg-link{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--color-primary-hover)}.gxg-link:active{color:var(--color-primary-active)}.gxg-link-gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04)}.gxg-link-gray:hover{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04);color:var(--gray-06)}.gxg-alert-error{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-error-dark);display:inline-block}.gxg-alert-warning{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-warning-dark);display:inline-block}.gxg-alert-success{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-success-dark);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-button-styles{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:6px;height:6px}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}.gxg-scrollbar::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}:host{display:inline-block;line-height:0;height:20px;width:20px;display:inline-flex;align-items:center;justify-content:center}";
117
-
118
- /*********************************
119
- CONSTANTS
120
- *********************************/
121
- const COLOR_MAPPINGS = {
122
- alwaysblack: "color-always-black",
123
- disabled: "color-primary-disabled",
124
- ondisabled: "color-on-disabled",
125
- error: "color-error-dark",
126
- negative: "color-on-primary",
127
- onbackground: "color-on-background",
128
- "primary-enabled": "color-primary-enabled",
129
- "primary-active": "color-primary-active",
130
- "primary-hover": "color-primary-hover",
131
- success: "color-success-dark",
132
- warning: "color-warning-dark",
133
- };
134
- const GxgIcon = class {
135
- constructor(hostRef) {
136
- index.registerInstance(this, hostRef);
137
- /**
138
- * The size of the icon. Possible values: regular, small.
139
- */
140
- this.size = "regular";
141
- }
142
- /*********************************
143
- METHODS
144
- *********************************/
145
- getSrcPath() {
146
- return index.getAssetPath(`./icon-assets/${this.type}.svg`);
147
- }
148
- iconSize() {
149
- if (this.size === "regular") {
150
- return "16px";
151
- }
152
- else if (this.size === "small") {
153
- return "12px";
154
- }
155
- }
156
- render() {
157
- return (index.h(index.Host, null, index.h("ch-icon", { style: {
158
- "--icon-color": this.mapColorToCssVar(COLOR_MAPPINGS[this.color]),
159
- "--icon-size": this.iconSize(),
160
- }, "auto-color": this.color === "auto", src: this.getSrcPath(), part: "ch-icon" })));
161
- }
162
- mapColorToCssVar(color) {
163
- if (color) {
164
- return `var(--${color})`;
165
- }
166
- else {
167
- //default color
168
- return `var(--color-on-background)`;
169
- }
170
- }
171
- static get assetsDirs() { return ["icon-assets"]; }
172
- get element() { return index.getElement(this); }
173
- };
174
- GxgIcon.style = iconCss;
175
-
176
- exports.ch_icon = ChIcon;
177
- exports.gxg_icon = GxgIcon;
@@ -1,172 +0,0 @@
1
- import { r as registerInstance, h, g as getElement, a as getAssetPath, H as Host } from './index-0da01575.js';
2
-
3
- const iconContent = new Map();
4
- const requests = new Map();
5
- function getSvgContent(url) {
6
- // see if we already have a request for this url
7
- let request = requests.get(url);
8
- if (!request) {
9
- // we don't already have a request
10
- request = fetch(url).then(response => {
11
- if (response.ok) {
12
- return response.text().then(svgContent => {
13
- iconContent.set(url, svgContent);
14
- return svgContent;
15
- });
16
- }
17
- iconContent.set(url, "");
18
- });
19
- // cache for the same requests
20
- requests.set(url, request);
21
- }
22
- return request;
23
- }
24
-
25
- const iconCss$1 = ":host(:not([auto-color])){}:host(:not([auto-color])) svg *{fill:var(--icon-color) !important}:host(:not([auto-color])) path.icons01{fill:var(--icons01-enabled)}:host(:not([auto-color])) path.icons02{fill:var(--icons02-enabled)}:host(:not([auto-color])) path.icons03{fill:var(--icons03-enabled)}:host(:not([auto-color])) path.icons04{fill:var(--icons04-enabled)}:host(:not([auto-color])) path.icons05{fill:var(--icons05-enabled)}:host(:not([auto-color])) path.icons06{fill:var(--icons06-enabled)}:host(:not([auto-color])) path.icons07{fill:var(--icons07-enabled)}:host(:not([auto-color])) path.icons08{fill:var(--icons08-enabled)}:host(:not([auto-color])) path.icons09{fill:var(--icons09-enabled)}:host{display:inline-flex;line-height:0}:host svg{width:var(--icon-size);height:var(--icon-size)}";
26
-
27
- const ChIcon = class {
28
- constructor(hostRef) {
29
- registerInstance(this, hostRef);
30
- /**
31
- * If enabled, the icon will be loaded lazily when it's visible in the viewport.
32
- */
33
- this.lazy = false;
34
- /**
35
- * If enabled, the icon will display its inherent/natural color
36
- */
37
- this.autoColor = false;
38
- /**
39
- * The URL of the icon.
40
- */
41
- this.src = "";
42
- /**
43
- * The size of the icon. Possible values: regular, small.
44
- */
45
- this.size = "regular";
46
- this.isVisible = false;
47
- }
48
- /** *******************************
49
- METHODS
50
- *********************************/
51
- connectedCallback() {
52
- // purposely do not return the promise here because loading
53
- // the svg file should not hold up loading the app
54
- // only load the svg if it's visible
55
- this.waitUntilVisible(this.element, "50px", () => {
56
- this.isVisible = true;
57
- this.getIcon();
58
- });
59
- }
60
- disconnectedCallback() {
61
- if (this.io !== undefined) {
62
- this.io.disconnect();
63
- this.io = undefined;
64
- }
65
- }
66
- waitUntilVisible(el, rootMargin, callback) {
67
- if (this.lazy &&
68
- typeof window !== "undefined" &&
69
- window.IntersectionObserver) {
70
- const io = (this.io = new window.IntersectionObserver((data) => {
71
- if (data[0].isIntersecting) {
72
- io.disconnect();
73
- this.io = undefined;
74
- callback();
75
- }
76
- }, { rootMargin }));
77
- io.observe(el);
78
- }
79
- else {
80
- // browser doesn't support IntersectionObserver
81
- // so just fallback to always show it
82
- callback();
83
- }
84
- }
85
- async getIcon() {
86
- if (this.isVisible) {
87
- if (this.src) {
88
- if (iconContent.has(this.src)) {
89
- this.svgContent = iconContent.get(this.src);
90
- }
91
- else {
92
- this.svgContent = await getSvgContent(this.src);
93
- }
94
- }
95
- else {
96
- this.svgContent = "";
97
- return;
98
- }
99
- }
100
- }
101
- render() {
102
- return h("div", { innerHTML: this.svgContent });
103
- }
104
- static get assetsDirs() { return ["ch-icon-assets"]; }
105
- get element() { return getElement(this); }
106
- static get watchers() { return {
107
- "src": ["getIcon"]
108
- }; }
109
- };
110
- ChIcon.style = iconCss$1;
111
-
112
- const iconCss = "/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%;}body{margin:0}main{display:block}h1{font-size:2em;margin:0.67em 0}hr{box-sizing:content-box;height:0;overflow:visible;}pre{font-family:monospace, monospace;font-size:1em;}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace, monospace;font-size:1em;}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-0.25em}sup{top:-0.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0;}button,input{overflow:visible}button,select{text-transform:none}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{border-style:none;padding:0}button:-moz-focusring,[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:0.35em 0.75em 0.625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0;}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px;}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}details{display:block}summary{display:list-item}template{display:none}[hidden]{display:none}:root{--ui-animaton-speed:0.2s}.gxg-title-01{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-01--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-02{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-02--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-bold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-03{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em}.gxg-title-03--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-xs);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;text-transform:uppercase;line-height:1.556em;color:var(--color-on-primary)}.gxg-title-04{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-title-04--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-md);letter-spacing:var(--letter-spacing-md);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-title-05{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em}.gxg-title-05--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-sm);color:var(--color-on-background);text-align:start;line-height:1.556em;color:var(--color-on-primary)}.gxg-text{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em}.gxg-text--negative{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-on-primary)}.gxg-text--gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--gray-05)}.gxg-quote{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;font-style:italic}.gxg-quote--negative{color:var(--color-on-primary)}.gxg-link{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block}.gxg-link:hover{color:var(--color-primary-hover)}.gxg-link:active{color:var(--color-primary-active)}.gxg-link-gray{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04)}.gxg-link-gray:hover{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-primary);text-decoration:underline;cursor:pointer;display:inline-block;color:var(--gray-04);color:var(--gray-06)}.gxg-alert-error{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-error-dark);display:inline-block}.gxg-alert-warning{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-warning-dark);display:inline-block}.gxg-alert-success{font-family:var(--font-family-primary);font-weight:var(--font-weight-regular);font-size:var(--font-size-sm);letter-spacing:var(--letter-spacing-xs);color:var(--color-on-background);text-align:start;line-height:1.455em;color:var(--color-success-dark);display:inline-block}.gxg-tab--disabled{color:var(--color-primary-disabled);pointer-events:none}.gxg-tab--disabled[disabled]{color:var(--color-primary-disabled);pointer-events:none}.gxg-label{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-label:hover{color:var(--color-primary-hover)}.gxg-label:focus{color:var(--color-primary-active)}.gxg-label:active{color:var(--color-primary-active)}.gxg-label[disabled]{color:var(--color-primary-disabled)}.gxg-label--negative{color:var(--color-on-primary)}.gxg-label--negative[disabled]{color:var(--color-on-disabled)}.gxg-button-styles{font-family:var(--font-family-primary) !important;font-weight:var(--font-weight-semibold);font-size:var(--font-size-sm) !important;letter-spacing:var(--letter-spacing-xs);color:var(--color-primary-enabled);text-align:center;line-height:1.455em}.gxg-scrollbar{}.gxg-scrollbar::-webkit-scrollbar{width:6px;height:6px}.gxg-scrollbar::-webkit-scrollbar-track{background-color:var(--gray-02);border-radius:10px}.gxg-scrollbar::-webkit-scrollbar-thumb{background:var(--gray-05);border-radius:10px}.gxg-scrollbar::-webkit-scrollbar-thumb:hover{background:var(--gray-04);cursor:pointer}:host{display:inline-block;line-height:0;height:20px;width:20px;display:inline-flex;align-items:center;justify-content:center}";
113
-
114
- /*********************************
115
- CONSTANTS
116
- *********************************/
117
- const COLOR_MAPPINGS = {
118
- alwaysblack: "color-always-black",
119
- disabled: "color-primary-disabled",
120
- ondisabled: "color-on-disabled",
121
- error: "color-error-dark",
122
- negative: "color-on-primary",
123
- onbackground: "color-on-background",
124
- "primary-enabled": "color-primary-enabled",
125
- "primary-active": "color-primary-active",
126
- "primary-hover": "color-primary-hover",
127
- success: "color-success-dark",
128
- warning: "color-warning-dark",
129
- };
130
- const GxgIcon = class {
131
- constructor(hostRef) {
132
- registerInstance(this, hostRef);
133
- /**
134
- * The size of the icon. Possible values: regular, small.
135
- */
136
- this.size = "regular";
137
- }
138
- /*********************************
139
- METHODS
140
- *********************************/
141
- getSrcPath() {
142
- return getAssetPath(`./icon-assets/${this.type}.svg`);
143
- }
144
- iconSize() {
145
- if (this.size === "regular") {
146
- return "16px";
147
- }
148
- else if (this.size === "small") {
149
- return "12px";
150
- }
151
- }
152
- render() {
153
- return (h(Host, null, h("ch-icon", { style: {
154
- "--icon-color": this.mapColorToCssVar(COLOR_MAPPINGS[this.color]),
155
- "--icon-size": this.iconSize(),
156
- }, "auto-color": this.color === "auto", src: this.getSrcPath(), part: "ch-icon" })));
157
- }
158
- mapColorToCssVar(color) {
159
- if (color) {
160
- return `var(--${color})`;
161
- }
162
- else {
163
- //default color
164
- return `var(--color-on-background)`;
165
- }
166
- }
167
- static get assetsDirs() { return ["icon-assets"]; }
168
- get element() { return getElement(this); }
169
- };
170
- GxgIcon.style = iconCss;
171
-
172
- export { ChIcon as ch_icon, GxgIcon as gxg_icon };