@rededor/cura 1.6.1-alpha.11 → 1.6.1-alpha.13

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 (138) hide show
  1. package/dist/assets/assets/icons/iconset-default-list.ts +1 -1
  2. package/dist/assets/assets/icons/iconset-default-tmp.svg +4 -0
  3. package/dist/assets/assets/icons/iconset-default.svg +1 -1
  4. package/dist/cjs/{app-globals-28c6f5c4.js → app-globals-6d5b51b6.js} +2 -2
  5. package/dist/cjs/{app-globals-28c6f5c4.js.map → app-globals-6d5b51b6.js.map} +1 -1
  6. package/dist/cjs/{cura-accordion_18.cjs.entry.js → cura-accordion_20.cjs.entry.js} +142 -3
  7. package/dist/cjs/cura-accordion_20.cjs.entry.js.map +1 -0
  8. package/dist/cjs/cura-display.cjs.entry.js +1 -1
  9. package/dist/cjs/cura-icons-view.cjs.entry.js +1 -1
  10. package/dist/cjs/cura-icons-view.cjs.entry.js.map +1 -1
  11. package/dist/cjs/cura-tabs-button.cjs.entry.js +106 -0
  12. package/dist/cjs/cura-tabs-button.cjs.entry.js.map +1 -0
  13. package/dist/cjs/cura-tabs-transparent.cjs.entry.js +105 -0
  14. package/dist/cjs/cura-tabs-transparent.cjs.entry.js.map +1 -0
  15. package/dist/cjs/cura-tabs.definitions-b8955ad4.js +12 -0
  16. package/dist/cjs/cura-tabs.definitions-b8955ad4.js.map +1 -0
  17. package/dist/cjs/{cura-theme-module-f1e4a309.js → cura-theme-module-09bb63a4.js} +32 -1
  18. package/dist/cjs/cura-theme-module-09bb63a4.js.map +1 -0
  19. package/dist/cjs/cura.cjs.js +3 -3
  20. package/dist/cjs/index.cjs.js +1 -1
  21. package/dist/cjs/loader.cjs.js +3 -3
  22. package/dist/collection/api/theme-presets/theme-perinatal-temporary.js +32 -0
  23. package/dist/collection/api/theme-presets/theme-perinatal-temporary.js.map +1 -0
  24. package/dist/collection/api/theme-presets/theme-presets.js +2 -0
  25. package/dist/collection/api/theme-presets/theme-presets.js.map +1 -1
  26. package/dist/collection/assets/icons/iconset-default-list.js +1 -1
  27. package/dist/collection/assets/icons/iconset-default-list.js.map +1 -1
  28. package/dist/collection/assets/icons/iconset-default-tmp.svg +4 -0
  29. package/dist/collection/assets/icons/iconset-default.svg +1 -1
  30. package/dist/collection/assets-raw/icons/default/vaccine.svg +3 -0
  31. package/dist/collection/collection-manifest.json +4 -0
  32. package/dist/collection/components/forms/cura-input-text/cura-input-text.js +1 -1
  33. package/dist/collection/components/tabs/cura-tabs/cura-tabs.css +170 -0
  34. package/dist/collection/components/tabs/cura-tabs/cura-tabs.js +263 -0
  35. package/dist/collection/components/tabs/cura-tabs/cura-tabs.js.map +1 -0
  36. package/dist/collection/components/tabs/cura-tabs/cura-tabs.stories.js +89 -0
  37. package/dist/collection/components/tabs/cura-tabs/cura-tabs.stories.js.map +1 -0
  38. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.css +176 -0
  39. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.js +259 -0
  40. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.js.map +1 -0
  41. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.stories.js +96 -0
  42. package/dist/collection/components/tabs/cura-tabs-button/cura-tabs-button.stories.js.map +1 -0
  43. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.css +25 -0
  44. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.js +133 -0
  45. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.js.map +1 -0
  46. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.stories.js +65 -0
  47. package/dist/collection/components/tabs/cura-tabs-group/cura-tabs-group.stories.js.map +1 -0
  48. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.css +168 -0
  49. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.js +258 -0
  50. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.js.map +1 -0
  51. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.stories.js +89 -0
  52. package/dist/collection/components/tabs/cura-tabs-transparent/cura-tabs-transparent.stories.js.map +1 -0
  53. package/dist/collection/components/tabs/cura-tabs.definitions.js +7 -0
  54. package/dist/collection/components/tabs/cura-tabs.definitions.js.map +1 -0
  55. package/dist/collection/components/text/cura-display/cura-display.js +1 -1
  56. package/dist/collection/components/text/cura-heading/cura-heading.js +1 -1
  57. package/dist/collection/components/text/cura-paragraph/cura-paragraph.js +1 -1
  58. package/dist/components/cura-display.js +1 -1
  59. package/dist/components/cura-heading2.js +1 -1
  60. package/dist/components/cura-icons-view.js +1 -1
  61. package/dist/components/cura-icons-view.js.map +1 -1
  62. package/dist/components/cura-paragraph2.js +1 -1
  63. package/dist/components/cura-tabs-button.d.ts +11 -0
  64. package/dist/components/cura-tabs-button.js +150 -0
  65. package/dist/components/cura-tabs-button.js.map +1 -0
  66. package/dist/components/cura-tabs-group.d.ts +11 -0
  67. package/dist/components/cura-tabs-group.js +64 -0
  68. package/dist/components/cura-tabs-group.js.map +1 -0
  69. package/dist/components/cura-tabs-transparent.d.ts +11 -0
  70. package/dist/components/cura-tabs-transparent.js +143 -0
  71. package/dist/components/cura-tabs-transparent.js.map +1 -0
  72. package/dist/components/cura-tabs.d.ts +11 -0
  73. package/dist/components/cura-tabs.definitions.js +10 -0
  74. package/dist/components/cura-tabs.definitions.js.map +1 -0
  75. package/dist/components/cura-tabs.js +148 -0
  76. package/dist/components/cura-tabs.js.map +1 -0
  77. package/dist/components/index.js +39 -0
  78. package/dist/components/index.js.map +1 -1
  79. package/dist/cura/cura.esm.js +1 -1
  80. package/dist/cura/cura.esm.js.map +1 -1
  81. package/dist/cura/index.esm.js +1 -1
  82. package/dist/cura/p-53c18ed4.js +2 -0
  83. package/dist/cura/p-53c18ed4.js.map +1 -0
  84. package/dist/cura/p-5c6f9593.entry.js +2 -0
  85. package/dist/cura/p-5c6f9593.entry.js.map +1 -0
  86. package/dist/cura/{p-0c25333f.js → p-6cbd49dd.js} +2 -2
  87. package/dist/cura/{p-0c25333f.js.map → p-6cbd49dd.js.map} +1 -1
  88. package/dist/cura/p-7e2d1229.entry.js +2 -0
  89. package/dist/cura/p-7e2d1229.entry.js.map +1 -0
  90. package/dist/cura/{p-ac01bec2.entry.js → p-8aade007.entry.js} +2 -2
  91. package/dist/cura/p-9f460031.js +2 -0
  92. package/dist/cura/p-9f460031.js.map +1 -0
  93. package/dist/cura/p-b4ee956b.entry.js +2 -0
  94. package/dist/cura/p-b4ee956b.entry.js.map +1 -0
  95. package/dist/cura/p-b6ff8ac1.entry.js +2 -0
  96. package/dist/cura/p-b6ff8ac1.entry.js.map +1 -0
  97. package/dist/esm/{app-globals-ca1945d1.js → app-globals-c2abb41c.js} +2 -2
  98. package/dist/esm/{app-globals-ca1945d1.js.map → app-globals-c2abb41c.js.map} +1 -1
  99. package/dist/esm/{cura-accordion_18.entry.js → cura-accordion_20.entry.js} +141 -4
  100. package/dist/esm/cura-accordion_20.entry.js.map +1 -0
  101. package/dist/esm/cura-display.entry.js +1 -1
  102. package/dist/esm/cura-icons-view.entry.js +1 -1
  103. package/dist/esm/cura-icons-view.entry.js.map +1 -1
  104. package/dist/esm/cura-tabs-button.entry.js +102 -0
  105. package/dist/esm/cura-tabs-button.entry.js.map +1 -0
  106. package/dist/esm/cura-tabs-transparent.entry.js +101 -0
  107. package/dist/esm/cura-tabs-transparent.entry.js.map +1 -0
  108. package/dist/esm/cura-tabs.definitions-a017126e.js +10 -0
  109. package/dist/esm/cura-tabs.definitions-a017126e.js.map +1 -0
  110. package/dist/esm/{cura-theme-module-0fa5ee0b.js → cura-theme-module-bf286f68.js} +32 -1
  111. package/dist/esm/cura-theme-module-bf286f68.js.map +1 -0
  112. package/dist/esm/cura.js +3 -3
  113. package/dist/esm/index.js +1 -1
  114. package/dist/esm/loader.js +3 -3
  115. package/dist/types/api/theme-presets/theme-perinatal-temporary.d.ts +43 -0
  116. package/dist/types/api/theme-presets/theme-presets.d.ts +43 -0
  117. package/dist/types/components/tabs/cura-tabs/cura-tabs.d.ts +30 -0
  118. package/dist/types/components/tabs/cura-tabs/cura-tabs.stories.d.ts +99 -0
  119. package/dist/types/components/tabs/cura-tabs-button/cura-tabs-button.d.ts +29 -0
  120. package/dist/types/components/tabs/cura-tabs-button/cura-tabs-button.stories.d.ts +99 -0
  121. package/dist/types/components/tabs/cura-tabs-group/cura-tabs-group.d.ts +18 -0
  122. package/dist/types/components/tabs/cura-tabs-group/cura-tabs-group.stories.d.ts +57 -0
  123. package/dist/types/components/tabs/cura-tabs-transparent/cura-tabs-transparent.d.ts +29 -0
  124. package/dist/types/components/tabs/cura-tabs-transparent/cura-tabs-transparent.stories.d.ts +99 -0
  125. package/dist/types/components/tabs/cura-tabs.definitions.d.ts +6 -0
  126. package/dist/types/components.d.ts +164 -0
  127. package/package.json +2 -2
  128. package/dist/cjs/cura-accordion_18.cjs.entry.js.map +0 -1
  129. package/dist/cjs/cura-theme-module-f1e4a309.js.map +0 -1
  130. package/dist/cura/p-07817634.entry.js +0 -2
  131. package/dist/cura/p-07817634.entry.js.map +0 -1
  132. package/dist/cura/p-bf8e2037.js +0 -2
  133. package/dist/cura/p-bf8e2037.js.map +0 -1
  134. package/dist/cura/p-d936d5cf.entry.js +0 -2
  135. package/dist/cura/p-d936d5cf.entry.js.map +0 -1
  136. package/dist/esm/cura-accordion_18.entry.js.map +0 -1
  137. package/dist/esm/cura-theme-module-0fa5ee0b.js.map +0 -1
  138. /package/dist/cura/{p-ac01bec2.entry.js.map → p-8aade007.entry.js.map} +0 -0
@@ -0,0 +1,143 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { l as labelSizes } from './cura-tabs.definitions.js';
3
+ import { d as defineCustomElement$3 } from './cura-icon2.js';
4
+ import { d as defineCustomElement$2 } from './cura-label2.js';
5
+
6
+ const curaTabsTransparentCss = ":host button,:host a{outline:none;box-shadow:none;box-sizing:border-box;display:flex;width:100%;align-items:center;justify-content:center;text-decoration:none !important;font-size:var(--font-size);cursor:pointer;transition:background-color 0.07s linear, box-shadow 0.07s linear, border-color 0.07s linear;border-radius:var(--border-radius);position:relative;background-color:transparent;box-sizing:border-box;border:none;min-width:120px;width:fit-content;display:flex;align-items:center;justify-content:center}:host button:focus,:host a:focus{outline:2px solid #6EA8FF}:host button.border-bottom,:host a.border-bottom{border-bottom:1px solid var(--border-bottom-color)}:host button.small,:host a.small{padding:calc(var(--cura-spacing-base) * 2px) calc(var(--cura-spacing-base) * 2px)}:host button.medium,:host a.medium{padding:calc(var(--cura-spacing-base) * 3px) calc(var(--cura-spacing-base) * 3px)}:host button.large,:host a.large{padding:calc(var(--cura-spacing-base) * 3px) calc(var(--cura-spacing-base) * 4px)}:host button:not(.selected),:host a:not(.selected){border-color:var(--border-color)}:host button:focus,:host a:focus{border-color:var(--primary-light)}:host button:not(.disabled,.selected):hover,:host a:not(.disabled,.selected):hover{background-color:var(--background-color-hover)}:host button:not(.disabled,.selected):hover.dark,:host a:not(.disabled,.selected):hover.dark{border-color:var(--neutral-purewhite)}:host button cura-icon,:host a cura-icon{margin-right:calc(var(--cura-spacing-base) * 2px)}:host button.selected,:host a.selected{cursor:pointer}:host button.selected:not(.disabled),:host a.selected:not(.disabled){border-bottom:1px solid var(--border-bottom-color-selected)}:host button.disabled,:host a.disabled{cursor:not-allowed}";
7
+ const CuraTabsTransparentStyle0 = curaTabsTransparentCss;
8
+
9
+ const CuraTabsTransparent$1 = /*@__PURE__*/ proxyCustomElement(class CuraTabsTransparent extends HTMLElement {
10
+ constructor() {
11
+ super();
12
+ this.__registerHost();
13
+ this.__attachShadow();
14
+ this.tabSelect = createEvent(this, "tabSelect", 7);
15
+ this.name = undefined;
16
+ this.iconName = undefined;
17
+ this.selected = false;
18
+ this.disabled = false;
19
+ this.borderBottom = true;
20
+ this.size = 'large';
21
+ this.colorMode = 'light';
22
+ this.hovered = false;
23
+ this.styles = {};
24
+ }
25
+ setColors() {
26
+ const colors = [
27
+ {
28
+ name: '--border-bottom-color',
29
+ theme: this.colorMode === 'light' ? 'neutral-base' : 'primary',
30
+ },
31
+ {
32
+ name: '--border-bottom-color-selected',
33
+ theme: this.colorMode === 'light' ? 'primary-dark' : 'primary-lighter',
34
+ },
35
+ ];
36
+ colors.forEach(c => {
37
+ if (c.theme)
38
+ this.styles[c.name] = window.CuraAPI.theme.colors.getColor(c.theme);
39
+ });
40
+ this.styles = Object.assign({}, this.styles);
41
+ }
42
+ computeContentColor() {
43
+ if (this.disabled)
44
+ return 'neutral-dark';
45
+ if (this.colorMode === 'dark') {
46
+ if (this.hovered && !this.selected) {
47
+ return 'neutral-purewhite';
48
+ }
49
+ return this.selected ? 'primary-lighter' : 'neutral-purewhite';
50
+ }
51
+ if (this.hovered && !this.selected) {
52
+ return 'primary-dark';
53
+ }
54
+ return this.selected ? 'primary-base' : 'neutral-black';
55
+ }
56
+ getIcon() {
57
+ if (!this.iconName)
58
+ return '';
59
+ const iconSize = this.size === 'large' ? 20 : 16;
60
+ const iconColor = this.computeContentColor();
61
+ return h("cura-icon", { name: this.iconName, size: iconSize, color: iconColor });
62
+ }
63
+ getClasses() {
64
+ return {
65
+ [this.size]: true,
66
+ [this.colorMode]: true,
67
+ 'selected': this.selected,
68
+ 'disabled': this.disabled,
69
+ 'border-bottom': this.borderBottom,
70
+ };
71
+ }
72
+ connectedCallback() {
73
+ this.styles = Object.assign(Object.assign({}, this.styles), { '--primary-dark': window.CuraAPI.theme.colors.getColor('primary-dark'), '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'), '--base-spacing': window.CuraAPI.theme.spacing.getSpacing() });
74
+ this.setColors();
75
+ }
76
+ handleMouseEnter() {
77
+ if (this.disabled)
78
+ return;
79
+ this.hovered = true;
80
+ }
81
+ handleMouseLeave() {
82
+ this.hovered = false;
83
+ }
84
+ handleClick(e) {
85
+ if (this.disabled) {
86
+ e.preventDefault();
87
+ return;
88
+ }
89
+ this.selected = !this.selected;
90
+ this.tabSelect.emit({ name: this.name });
91
+ }
92
+ render() {
93
+ const labelSize = labelSizes[this.size] || labelSizes['default'];
94
+ const labelColor = this.computeContentColor();
95
+ return (h(Host, { key: 'd3c9e277a079381def09397dc922d697aa99d70a', role: "button", "aria-pressed": this.selected, "aria-disabled": this.disabled }, h("button", { key: 'ab4cac9782f48c367c4ada4e303f9422971dc38e', class: this.getClasses(), style: this.styles, onClick: e => this.handleClick(e), disabled: this.disabled, onMouseEnter: this.handleMouseEnter.bind(this), onMouseLeave: this.handleMouseLeave.bind(this) }, this.getIcon(), h("cura-label", { key: 'c6567bdf7b80efc3380a8a93bf52de966e1caa7d', size: labelSize, color: labelColor, lineHeight: "0", marginBlock: "0" }, h("slot", { key: '93c392107790a2c0e3499e5b7bd742219203a980' })))));
96
+ }
97
+ static get watchers() { return {
98
+ "colorMode": ["setColors"]
99
+ }; }
100
+ static get style() { return CuraTabsTransparentStyle0; }
101
+ }, [1, "cura-tabs-transparent", {
102
+ "name": [513],
103
+ "iconName": [513, "icon-name"],
104
+ "selected": [1540],
105
+ "disabled": [1540],
106
+ "borderBottom": [1540, "border-bottom"],
107
+ "size": [513],
108
+ "colorMode": [1537, "color-mode"],
109
+ "hovered": [32],
110
+ "styles": [32]
111
+ }, undefined, {
112
+ "colorMode": ["setColors"]
113
+ }]);
114
+ function defineCustomElement$1() {
115
+ if (typeof customElements === "undefined") {
116
+ return;
117
+ }
118
+ const components = ["cura-tabs-transparent", "cura-icon", "cura-label"];
119
+ components.forEach(tagName => { switch (tagName) {
120
+ case "cura-tabs-transparent":
121
+ if (!customElements.get(tagName)) {
122
+ customElements.define(tagName, CuraTabsTransparent$1);
123
+ }
124
+ break;
125
+ case "cura-icon":
126
+ if (!customElements.get(tagName)) {
127
+ defineCustomElement$3();
128
+ }
129
+ break;
130
+ case "cura-label":
131
+ if (!customElements.get(tagName)) {
132
+ defineCustomElement$2();
133
+ }
134
+ break;
135
+ } });
136
+ }
137
+
138
+ const CuraTabsTransparent = CuraTabsTransparent$1;
139
+ const defineCustomElement = defineCustomElement$1;
140
+
141
+ export { CuraTabsTransparent, defineCustomElement };
142
+
143
+ //# sourceMappingURL=cura-tabs-transparent.js.map
@@ -0,0 +1 @@
1
+ {"file":"cura-tabs-transparent.js","mappings":"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","names":["CuraTabsTransparent"],"sources":["src/components/tabs/cura-tabs-transparent/cura-tabs-transparent.scss?tag=cura-tabs-transparent&encapsulation=shadow","src/components/tabs/cura-tabs-transparent/cura-tabs-transparent.tsx"],"sourcesContent":["@import '../../../scss/mixins/spacing.scss';\n@import '../../../scss/mixins/buttons.scss';\n\n$button-sizes: (\n small: $spacing-mini $spacing-mini,\n medium: $spacing-xxxs $spacing-xxxs,\n large: $spacing-xxxs $spacing-xxs,\n);\n\n:host {\n button,\n a {\n @include button-element() {\n background-color: transparent;\n box-sizing: border-box;\n border: none;\n\n min-width: 120px;\n width: fit-content;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n &.border-bottom {\n border-bottom: 1px solid var(--border-bottom-color);\n }\n\n @each $size, $padding in $button-sizes {\n &.#{$size} {\n padding: $padding;\n }\n }\n\n &:not(.selected) {\n border-color: var(--border-color);\n }\n\n &:focus {\n border-color: var(--primary-light);\n }\n\n &:not(.disabled, .selected):hover {\n background-color: var(--background-color-hover);\n\n &.dark {\n border-color: var(--neutral-purewhite);\n }\n }\n\n cura-icon {\n margin-right: #{$spacing-mini};\n }\n\n @include button-selected() {\n &:not(.disabled) {\n border-bottom: 1px solid var(--border-bottom-color-selected);\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n }\n }\n }\n}\n","import { Component, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { labelSizes } from '../cura-tabs.definitions';\n\n@Component({\n tag: 'cura-tabs-transparent',\n styleUrl: 'cura-tabs-transparent.scss',\n shadow: true,\n})\nexport class CuraTabsTransparent {\n @Prop({ reflect: true }) name: string;\n @Prop({ reflect: true }) iconName: string;\n @Prop({ reflect: true, mutable: true }) selected: boolean = false;\n @Prop({ reflect: true, mutable: true }) disabled: boolean = false;\n @Prop({ reflect: true, mutable: true }) borderBottom: boolean = true;\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'large';\n @Prop({ reflect: true, mutable: true }) colorMode: 'dark' | 'light' = 'light';\n\n @State() hovered = false;\n @State() styles: Record<string, string> = {};\n\n @Event() tabSelect: EventEmitter<{ name: string }>;\n\n @Watch('colorMode')\n setColors() {\n const colors = [\n {\n name: '--border-bottom-color',\n theme: this.colorMode === 'light' ? 'neutral-base' : 'primary',\n },\n {\n name: '--border-bottom-color-selected',\n theme: this.colorMode === 'light' ? 'primary-dark' : 'primary-lighter',\n },\n ];\n\n colors.forEach(c => {\n if (c.theme) this.styles[c.name] = window.CuraAPI.theme.colors.getColor(c.theme);\n });\n\n this.styles = { ...this.styles };\n }\n\n computeContentColor(): string {\n if (this.disabled) return 'neutral-dark';\n\n if (this.colorMode === 'dark') {\n if (this.hovered && !this.selected) {\n return 'neutral-purewhite';\n }\n return this.selected ? 'primary-lighter' : 'neutral-purewhite';\n }\n\n if (this.hovered && !this.selected) {\n return 'primary-dark';\n }\n\n return this.selected ? 'primary-base' : 'neutral-black';\n }\n\n getIcon() {\n if (!this.iconName) return '';\n const iconSize = this.size === 'large' ? 20 : 16;\n const iconColor = this.computeContentColor();\n\n return <cura-icon name={this.iconName} size={iconSize} color={iconColor}></cura-icon>;\n }\n\n getClasses() {\n return {\n [this.size]: true,\n [this.colorMode]: true,\n 'selected': this.selected,\n 'disabled': this.disabled,\n 'border-bottom': this.borderBottom,\n };\n }\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--primary-dark': window.CuraAPI.theme.colors.getColor('primary-dark'),\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n\n this.setColors();\n }\n\n handleMouseEnter() {\n if (this.disabled) return;\n this.hovered = true;\n }\n\n handleMouseLeave() {\n this.hovered = false;\n }\n\n handleClick(e: Event) {\n if (this.disabled) {\n e.preventDefault();\n return;\n }\n\n this.selected = !this.selected;\n this.tabSelect.emit({ name: this.name });\n }\n\n render() {\n const labelSize = labelSizes[this.size] || labelSizes['default'];\n const labelColor = this.computeContentColor();\n\n return (\n <Host role=\"button\" aria-pressed={this.selected} aria-disabled={this.disabled}>\n <button\n class={this.getClasses()}\n style={this.styles}\n onClick={e => this.handleClick(e)}\n disabled={this.disabled}\n onMouseEnter={this.handleMouseEnter.bind(this)}\n onMouseLeave={this.handleMouseLeave.bind(this)}\n >\n {this.getIcon()}\n <cura-label size={labelSize} color={labelColor} lineHeight=\"0\" marginBlock=\"0\">\n <slot></slot>\n </cura-label>\n </button>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface CuraTabs extends Components.CuraTabs, HTMLElement {}
4
+ export const CuraTabs: {
5
+ prototype: CuraTabs;
6
+ new (): CuraTabs;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,10 @@
1
+ const labelSizes = {
2
+ small: 'xsmall',
3
+ medium: 'small',
4
+ large: 'medium',
5
+ default: 'medium',
6
+ };
7
+
8
+ export { labelSizes as l };
9
+
10
+ //# sourceMappingURL=cura-tabs.definitions.js.map
@@ -0,0 +1 @@
1
+ {"file":"cura-tabs.definitions.js","mappings":"MAAa,UAAU,GAAG;IACxB,KAAK,EAAE,QAAQ;IACf,MAAM,EAAE,OAAO;IACf,KAAK,EAAE,QAAQ;IACf,OAAO,EAAE,QAAQ;;;;;","names":[],"sources":["src/components/tabs/cura-tabs.definitions.tsx"],"sourcesContent":["export const labelSizes = {\n small: 'xsmall',\n medium: 'small',\n large: 'medium',\n default: 'medium',\n};\n"],"version":3}
@@ -0,0 +1,148 @@
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
+ import { l as labelSizes } from './cura-tabs.definitions.js';
3
+ import { d as defineCustomElement$3 } from './cura-icon2.js';
4
+ import { d as defineCustomElement$2 } from './cura-label2.js';
5
+
6
+ const curaTabsCss = ":host button,:host a{outline:none;box-shadow:none;box-sizing:border-box;display:flex;width:100%;align-items:center;justify-content:center;text-decoration:none !important;font-size:var(--font-size);cursor:pointer;transition:background-color 0.07s linear, box-shadow 0.07s linear, border-color 0.07s linear;border-radius:var(--border-radius);position:relative;background-color:transparent;box-sizing:border-box;border:none;min-width:120px;width:fit-content;display:flex;align-items:center;justify-content:center;border-radius:4px 4px 0 0}:host button:focus,:host a:focus{outline:2px solid #6EA8FF}:host button.border-bottom,:host a.border-bottom{border-bottom:1px solid var(--border-bottom-color)}:host button:not(.disabled,.selected):hover,:host a:not(.disabled,.selected):hover{background-color:var(--background-color-hover)}:host button:not(.disabled,.selected):hover.light,:host a:not(.disabled,.selected):hover.light{border-bottom-color:var(--primary-dark)}:host button:not(.disabled,.selected):hover.dark,:host a:not(.disabled,.selected):hover.dark{border-bottom-color:var(--neutral-purewhite)}:host button.small,:host a.small{padding:calc(var(--cura-spacing-base) * 2px) calc(var(--cura-spacing-base) * 2px)}:host button.medium,:host a.medium{padding:calc(var(--cura-spacing-base) * 3px) calc(var(--cura-spacing-base) * 3px)}:host button.large,:host a.large{padding:calc(var(--cura-spacing-base) * 3px) calc(var(--cura-spacing-base) * 4px)}:host button:focus,:host a:focus{border:2px solid var(--primary-light)}:host button cura-icon,:host a cura-icon{margin-right:calc(var(--cura-spacing-base) * 2px)}:host button.selected,:host a.selected{cursor:pointer;background-color:var(--background-color-selected)}:host button.selected.disabled,:host a.selected.disabled{background-color:var(--background-disabled-selected)}:host button.disabled,:host a.disabled{cursor:not-allowed}";
7
+ const CuraTabsStyle0 = curaTabsCss;
8
+
9
+ const CuraTabs$1 = /*@__PURE__*/ proxyCustomElement(class CuraTabs extends HTMLElement {
10
+ constructor() {
11
+ super();
12
+ this.__registerHost();
13
+ this.__attachShadow();
14
+ this.tabSelect = createEvent(this, "tabSelect", 7);
15
+ this.name = undefined;
16
+ this.iconName = undefined;
17
+ this.selected = false;
18
+ this.disabled = false;
19
+ this.borderBottom = true;
20
+ this.size = 'large';
21
+ this.colorMode = 'light';
22
+ this.hovered = false;
23
+ this.styles = {};
24
+ }
25
+ setColors() {
26
+ const colors = [
27
+ { name: '--background-color-selected', theme: this.colorMode === 'light' ? 'primary-base' : 'primary-lighter' },
28
+ { name: '--background-color-hover', theme: this.colorMode === 'light' ? 'primary-lighter' : null },
29
+ {
30
+ name: '--background-disabled-selected',
31
+ theme: this.colorMode === 'light' ? 'neutral-pale' : 'neutral-black',
32
+ },
33
+ {
34
+ name: '--border-bottom-color',
35
+ theme: this.colorMode === 'light' ? 'neutral-base' : 'primary',
36
+ },
37
+ ];
38
+ colors.forEach(c => {
39
+ if (c.theme)
40
+ this.styles[c.name] = window.CuraAPI.theme.colors.getColor(c.theme);
41
+ });
42
+ this.styles = Object.assign({}, this.styles);
43
+ }
44
+ computeContentColor() {
45
+ if (this.disabled)
46
+ return 'neutral-dark';
47
+ if (this.colorMode === 'dark') {
48
+ if (this.hovered && !this.selected) {
49
+ return 'neutral-purewhite';
50
+ }
51
+ return this.selected ? 'neutral-black' : 'primary-lighter';
52
+ }
53
+ return this.selected ? 'neutral-purewhite' : 'primary-dark';
54
+ }
55
+ updateDynamicStyles() {
56
+ if (this.colorMode === 'dark' && this.hovered && !this.selected) {
57
+ this.styles = Object.assign(Object.assign({}, this.styles), { '--border-bottom-color': window.CuraAPI.theme.colors.getColor('neutral-purewhite') });
58
+ }
59
+ }
60
+ getIcon() {
61
+ if (!this.iconName)
62
+ return '';
63
+ const iconSize = this.size === 'large' ? 20 : 16;
64
+ const iconColor = this.computeContentColor();
65
+ return h("cura-icon", { name: this.iconName, size: iconSize, color: iconColor });
66
+ }
67
+ getClasses() {
68
+ return {
69
+ [this.size]: true,
70
+ [this.colorMode]: true,
71
+ 'selected': this.selected,
72
+ 'disabled': this.disabled,
73
+ 'border-bottom': this.borderBottom,
74
+ };
75
+ }
76
+ connectedCallback() {
77
+ this.styles = Object.assign(Object.assign({}, this.styles), { '--primary-dark': window.CuraAPI.theme.colors.getColor('primary-dark'), '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'), '--base-spacing': window.CuraAPI.theme.spacing.getSpacing() });
78
+ this.setColors();
79
+ }
80
+ handleMouseEnter() {
81
+ if (this.disabled)
82
+ return;
83
+ this.hovered = true;
84
+ }
85
+ handleMouseLeave() {
86
+ this.hovered = false;
87
+ }
88
+ handleClick(e) {
89
+ if (this.disabled) {
90
+ e.preventDefault();
91
+ return;
92
+ }
93
+ this.selected = !this.selected;
94
+ this.tabSelect.emit({ name: this.name });
95
+ }
96
+ render() {
97
+ const labelSize = labelSizes[this.size] || labelSizes['default'];
98
+ const labelColor = this.computeContentColor();
99
+ this.updateDynamicStyles();
100
+ return (h(Host, { key: '3966968b73a9a51ec26f3206cdb09fbfcb3d3daf', role: "button", "aria-pressed": this.selected, "aria-disabled": this.disabled }, h("button", { key: '00cc6382c635a05c52fd74b3e02e968c2d94cacb', class: this.getClasses(), style: this.styles, onClick: e => this.handleClick(e), disabled: this.disabled, onMouseEnter: this.handleMouseEnter.bind(this), onMouseLeave: this.handleMouseLeave.bind(this) }, this.getIcon(), h("cura-label", { key: 'e193500f156c10cf0442e6f504e19d552c19f849', size: labelSize, color: labelColor, lineHeight: "0", marginBlock: "0" }, h("slot", { key: '8a0ac7c4b2ff4990093d13b4110e370616cf39f4' })))));
101
+ }
102
+ static get watchers() { return {
103
+ "colorMode": ["setColors"]
104
+ }; }
105
+ static get style() { return CuraTabsStyle0; }
106
+ }, [1, "cura-tabs", {
107
+ "name": [513],
108
+ "iconName": [513, "icon-name"],
109
+ "selected": [1540],
110
+ "disabled": [1540],
111
+ "borderBottom": [1540, "border-bottom"],
112
+ "size": [513],
113
+ "colorMode": [1537, "color-mode"],
114
+ "hovered": [32],
115
+ "styles": [32]
116
+ }, undefined, {
117
+ "colorMode": ["setColors"]
118
+ }]);
119
+ function defineCustomElement$1() {
120
+ if (typeof customElements === "undefined") {
121
+ return;
122
+ }
123
+ const components = ["cura-tabs", "cura-icon", "cura-label"];
124
+ components.forEach(tagName => { switch (tagName) {
125
+ case "cura-tabs":
126
+ if (!customElements.get(tagName)) {
127
+ customElements.define(tagName, CuraTabs$1);
128
+ }
129
+ break;
130
+ case "cura-icon":
131
+ if (!customElements.get(tagName)) {
132
+ defineCustomElement$3();
133
+ }
134
+ break;
135
+ case "cura-label":
136
+ if (!customElements.get(tagName)) {
137
+ defineCustomElement$2();
138
+ }
139
+ break;
140
+ } });
141
+ }
142
+
143
+ const CuraTabs = CuraTabs$1;
144
+ const defineCustomElement = defineCustomElement$1;
145
+
146
+ export { CuraTabs, defineCustomElement };
147
+
148
+ //# sourceMappingURL=cura-tabs.js.map
@@ -0,0 +1 @@
1
+ {"file":"cura-tabs.js","mappings":"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","names":["CuraTabs"],"sources":["src/components/tabs/cura-tabs/cura-tabs.scss?tag=cura-tabs&encapsulation=shadow","src/components/tabs/cura-tabs/cura-tabs.tsx"],"sourcesContent":["@import '../../../scss/mixins/spacing.scss';\n@import '../../../scss/mixins/buttons.scss';\n\n$button-sizes: (\n small: $spacing-mini $spacing-mini,\n medium: $spacing-xxxs $spacing-xxxs,\n large: $spacing-xxxs $spacing-xxs,\n);\n\n:host {\n button,\n a {\n @include button-element() {\n background-color: transparent;\n box-sizing: border-box;\n border: none;\n\n min-width: 120px;\n width: fit-content;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n border-radius: 4px 4px 0 0;\n\n &.border-bottom {\n border-bottom: 1px solid var(--border-bottom-color);\n }\n\n &:not(.disabled, .selected):hover {\n background-color: var(--background-color-hover);\n\n &.light {\n border-bottom-color: var(--primary-dark);\n }\n &.dark {\n border-bottom-color: var(--neutral-purewhite);\n }\n }\n\n @each $size, $padding in $button-sizes {\n &.#{$size} {\n padding: $padding;\n }\n }\n\n &:focus {\n border: 2px solid var(--primary-light);\n }\n\n cura-icon {\n margin-right: #{$spacing-mini};\n }\n\n @include button-selected() {\n background-color: var(--background-color-selected);\n\n &.disabled {\n background-color: var(--background-disabled-selected);\n }\n }\n\n &.disabled {\n cursor: not-allowed;\n }\n }\n }\n}\n","import { Component, Event, EventEmitter, h, Host, Prop, State, Watch } from '@stencil/core';\nimport { labelSizes } from '../cura-tabs.definitions';\n\n@Component({\n tag: 'cura-tabs',\n styleUrl: 'cura-tabs.scss',\n shadow: true,\n})\nexport class CuraTabs {\n @Prop({ reflect: true }) name: string;\n @Prop({ reflect: true }) iconName: string;\n @Prop({ reflect: true, mutable: true }) selected: boolean = false;\n @Prop({ reflect: true, mutable: true }) disabled: boolean = false;\n @Prop({ reflect: true, mutable: true }) borderBottom: boolean = true;\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'large';\n @Prop({ reflect: true, mutable: true }) colorMode: 'dark' | 'light' = 'light';\n\n @State() hovered = false;\n @State() styles: Record<string, string> = {};\n\n @Event() tabSelect: EventEmitter<{ name: string }>;\n\n @Watch('colorMode')\n setColors() {\n const colors = [\n { name: '--background-color-selected', theme: this.colorMode === 'light' ? 'primary-base' : 'primary-lighter' },\n { name: '--background-color-hover', theme: this.colorMode === 'light' ? 'primary-lighter' : null },\n {\n name: '--background-disabled-selected',\n theme: this.colorMode === 'light' ? 'neutral-pale' : 'neutral-black',\n },\n {\n name: '--border-bottom-color',\n theme: this.colorMode === 'light' ? 'neutral-base' : 'primary',\n },\n ];\n\n colors.forEach(c => {\n if (c.theme) this.styles[c.name] = window.CuraAPI.theme.colors.getColor(c.theme);\n });\n\n this.styles = { ...this.styles };\n }\n\n computeContentColor(): string {\n if (this.disabled) return 'neutral-dark';\n\n if (this.colorMode === 'dark') {\n if (this.hovered && !this.selected) {\n return 'neutral-purewhite';\n }\n return this.selected ? 'neutral-black' : 'primary-lighter';\n }\n\n return this.selected ? 'neutral-purewhite' : 'primary-dark';\n }\n\n private updateDynamicStyles() {\n if (this.colorMode === 'dark' && this.hovered && !this.selected) {\n this.styles = {\n ...this.styles,\n '--border-bottom-color': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n };\n }\n }\n\n getIcon() {\n if (!this.iconName) return '';\n const iconSize = this.size === 'large' ? 20 : 16;\n const iconColor = this.computeContentColor();\n\n return <cura-icon name={this.iconName} size={iconSize} color={iconColor}></cura-icon>;\n }\n\n getClasses() {\n return {\n [this.size]: true,\n [this.colorMode]: true,\n 'selected': this.selected,\n 'disabled': this.disabled,\n 'border-bottom': this.borderBottom,\n };\n }\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--primary-dark': window.CuraAPI.theme.colors.getColor('primary-dark'),\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n\n this.setColors();\n }\n\n handleMouseEnter() {\n if (this.disabled) return;\n this.hovered = true;\n }\n\n handleMouseLeave() {\n this.hovered = false;\n }\n\n handleClick(e: Event) {\n if (this.disabled) {\n e.preventDefault();\n return;\n }\n\n this.selected = !this.selected;\n this.tabSelect.emit({ name: this.name });\n }\n\n render() {\n const labelSize = labelSizes[this.size] || labelSizes['default'];\n const labelColor = this.computeContentColor();\n this.updateDynamicStyles();\n\n return (\n <Host role=\"button\" aria-pressed={this.selected} aria-disabled={this.disabled}>\n <button\n class={this.getClasses()}\n style={this.styles}\n onClick={e => this.handleClick(e)}\n disabled={this.disabled}\n onMouseEnter={this.handleMouseEnter.bind(this)}\n onMouseLeave={this.handleMouseLeave.bind(this)}\n >\n {this.getIcon()}\n <cura-label size={labelSize} color={labelColor} lineHeight=\"0\" marginBlock=\"0\">\n <slot></slot>\n </cura-label>\n </button>\n </Host>\n );\n }\n}\n"],"version":3}
@@ -37,6 +37,10 @@ import { CuraSelectOption } from './cura-select-option.js';
37
37
  import { CuraStepper } from './cura-stepper.js';
38
38
  import { CuraStepperItem } from './cura-stepper-item.js';
39
39
  import { CuraSwitch } from './cura-switch.js';
40
+ import { CuraTabs } from './cura-tabs.js';
41
+ import { CuraTabsButton } from './cura-tabs-button.js';
42
+ import { CuraTabsGroup } from './cura-tabs-group.js';
43
+ import { CuraTabsTransparent } from './cura-tabs-transparent.js';
40
44
  import { CuraToast } from './cura-toast.js';
41
45
  import { CuraTooltip } from './cura-tooltip.js';
42
46
  export { getAssetPath, setAssetPath, setNonce, setPlatformOptions } from '@stencil/core/internal/client';
@@ -216,6 +220,36 @@ const ThemeRichet = Object.assign(Object.assign({}, ThemeDefault), {
216
220
  }
217
221
  } });
218
222
 
223
+ /**
224
+ * Perinatal temporary Theme
225
+ */
226
+ const ThemePerinatalTemporary = Object.assign(Object.assign({}, ThemeDefault), {
227
+ /* Custom */
228
+ /* Colors */
229
+ color: {
230
+ primary: {
231
+ '100': '239,226,228',
232
+ '300': '226,196,200',
233
+ '500': '199,134,141',
234
+ '700': '175,91,109',
235
+ '900': '147,58,77'
236
+ },
237
+ secondary: {
238
+ '100': '233,226,220',
239
+ '300': '211,196,186',
240
+ '500': '189,167,151',
241
+ '700': '95,84,76',
242
+ '900': '38,33,30'
243
+ },
244
+ accent: {
245
+ '100': '219,189,196',
246
+ '300': '183,124,136',
247
+ '500': '147,58,77',
248
+ '700': '74,29,39',
249
+ '900': '29,12,15'
250
+ }
251
+ } });
252
+
219
253
  /**
220
254
  * Legacy Default Theme
221
255
  */
@@ -267,6 +301,7 @@ const ThemePresets = {
267
301
  'maternidade': ThemeMaternity,
268
302
  'oncologia': ThemeOncology,
269
303
  'richet': ThemeRichet,
304
+ 'perinatalTemp': ThemePerinatalTemporary,
270
305
  'legacyDefault': ThemeLegacyDefault
271
306
  };
272
307
 
@@ -605,6 +640,10 @@ const defineCustomElements = (opts) => {
605
640
  CuraStepper,
606
641
  CuraStepperItem,
607
642
  CuraSwitch,
643
+ CuraTabs,
644
+ CuraTabsButton,
645
+ CuraTabsGroup,
646
+ CuraTabsTransparent,
608
647
  CuraToast,
609
648
  CuraTooltip,
610
649
  ].forEach(cmp => {
@@ -1 +1 @@
1
- {"file":"index.js","mappings":"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","names":[],"sources":["src/api/theme-presets/theme-default.ts","src/api/theme-presets/theme-maternity.ts","src/api/theme-presets/theme-oncology.ts","src/api/theme-presets/theme-richet.ts","src/api/theme-presets/theme-legacy-default.ts","src/api/theme-presets/theme-presets.ts","src/api/modules/cura-theme-colors-module.ts","src/api/modules/cura-theme-spacing-module.ts","src/api/modules/cura-theme-fonts-module.ts","src/api/modules/cura-theme-breakpoints-module.ts","src/api/modules/cura-theme-module.ts","src/api/cura-api.ts","src/rededor-cura-start.ts","@stencil/core/internal/app-globals","src/index.ts"],"sourcesContent":["/**\n * Cura Default Theme\n */\nexport const ThemeDefault = {\n /* Colors */\n color: {\n primary: {\n '100': '113,197,232',\n '300': '68,142,205',\n '500': '0,61,165',\n '700': '0,48,117',\n '900': '0,40,85'\n },\n secondary: {\n '100': '245,236,227',\n '300': '221,192,162',\n '500': '204,160,116',\n '700': '136,107,77',\n '900': '41,32,23'\n },\n accent: {\n '100': '255,194,123',\n '300': '255,168,74',\n '500': '255,130,0',\n '700': '215,114,10',\n '900': '155,90,26'\n }\n },\n /* Spacing */\n spacing: {\n base: 4,\n },\n /* Fonts */\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Gotham', Arial, Helvetica, sans-serif\",\n heading: \"'Gotham', Arial, Helvetica, sans-serif\",\n display: \"'Gotham', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","/**\n * Maternity Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeMaternity = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '248,227,226',\n '300': '255,179,171',\n '500': '218,113,111',\n '700': '145,75,74',\n '900': '73,38,37'\n },\n secondary: {\n '100': '253,251,249',\n '300': '247,244,238',\n '500': '245,236,227',\n '700': '204,197,189',\n '900': '163,157,151'\n },\n accent: {\n '100': '236,239,249',\n '300': '133,153,203',\n '500': '11,20,151',\n '700': '7,13,101',\n '900': '4,7,50'\n }\n },\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Gotham', Arial, Helvetica, sans-serif\",\n heading: \"'Gotham', Arial, Helvetica, sans-serif\",\n display: \"'Gotham', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","/**\n * Oncology Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeOncology = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '170,190,225',\n '300': '85,126,196',\n '500': '0,61,166',\n '700': '0,41,111',\n '900': '0,12,33'\n },\n secondary: {\n '100': '205,215,227',\n '300': '155,175,199',\n '500': '104,134,171',\n '700': '54,95,143',\n '900': '4,54,115',\n },\n accent: {\n '100': '153,207,255',\n '300': '71,169,255',\n '500': '0,131,245',\n '700': '0,109,204',\n '900': '0,88,164',\n },\n aux: {\n '100': '218,242,239',\n '300': '132,212,202',\n '500': '71,191,176',\n '700': '33,100,92',\n '900': '14,38,35',\n },\n },\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Hanken Grotesk', Arial, Helvetica, sans-serif\",\n heading: \"'Hanken Grotesk', Arial, Helvetica, sans-serif\",\n display: \"'Hanken Grotesk', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","/**\n * Richet Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeRichet = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '153,197,255',\n '300': '67,142,241',\n '500': '0,47,108',\n '700': '1,39,91',\n '900': '0,33,77'\n },\n secondary: {\n '100': '243,237,227',\n '300': '216,194,163',\n '500': '208,173,103',\n '700': '201,155,64',\n '900': '149,104,15'\n },\n accent: {\n '100': '167,230,215',\n '300': '130,225,209',\n '500': '44,213,196',\n '700': '26,188,169',\n '900': '0,150,129'\n }\n },\n};\n","/**\n * Legacy Default Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeLegacyDefault = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '204,217,231',\n '300': '85,128,174',\n '500': '0,65,134',\n '700': '0,43,89',\n '900': '0,13,27'\n },\n secondary: {\n '100': '238,232,206',\n '300': '198,180,92',\n '500': '170,142,11',\n '700': '113,95,7',\n '900': '34,28,2'\n },\n accent: {\n '100': '249,232,213',\n '300': '228,160,79',\n '500': '223,141,44',\n '700': '149,94,29',\n '900': '45,28,9'\n }\n },\n /* Fonts */\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Roboto', Arial, Helvetica, sans-serif\",\n heading: \"'Roboto', Arial, Helvetica, sans-serif\",\n display: \"'Roboto', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","import { ThemeDefault } from './theme-default';\nimport { ThemeMaternity } from './theme-maternity';\nimport { ThemeOncology } from './theme-oncology';\nimport { ThemeRichet } from './theme-richet';\nimport { ThemeLegacyDefault } from './theme-legacy-default';\n\nexport const ThemePresets = {\n 'default': ThemeDefault,\n 'maternidade': ThemeMaternity,\n 'oncologia': ThemeOncology,\n 'richet': ThemeRichet,\n 'legacyDefault': ThemeLegacyDefault\n};\n","import { Static } from \"../theme-presets/static\";\n\nexport default class CuraThemeColorsModule {\n\n NeutralDepthAlias = {\n 'purewhite': '0',\n 'white': '100',\n 'pale': '200',\n 'lighter': '300',\n 'light': '400',\n 'base': '500',\n 'medium': '600',\n 'dark': '700',\n 'darker': '800',\n 'black': '900',\n };\n\n ColorDepthAlias = {\n 'lighter': '100',\n 'light': '300',\n 'base': '500',\n 'dark': '700',\n 'darker': '900'\n }\n\n constructor() {}\n\n /**\n * Get theme color.\n * @param colorWithDepth string Ex.: primary-light\n * @returns RGBA value.\n */\n getColor(colorWithDepth: string = \"primary-base\", opacity = 1): string {\n const { color, depth } = this.splitColorDepth(colorWithDepth);\n const staticColor = this.getStatic(color, depth, opacity);\n if (staticColor) return staticColor;\n return this.getDynamic(color, depth, opacity);\n }\n\n /**\n * Internal: Look for static color by name and depth.\n * @param color Color name.\n * @param depth Depth number or alias.\n * @returns RGBA value.\n */\n getStatic(color: string, depth: string, opacity = 1) {\n const colorObj = Static.color[color];\n if (!colorObj) return null;\n const alias = color === 'neutral' ? this.NeutralDepthAlias[depth] : this.ColorDepthAlias[depth];\n return Static.color[color]?.[alias]\n ? `rgba(${Static.color[color]?.[alias]}, ${opacity})`\n : `rgba(${Static.color[color]?.[depth]}, ${opacity})`;\n }\n\n /**\n * Internal: Look for theme dynamic colors.\n * @param color Color name.\n * @param depth Color depth.\n * @returns RGBA value.\n */\n getDynamic(color: string, depth: string, opacity: number) {\n const themeVar = this.ColorDepthAlias[depth]\n ? `--cura-color-${color}-${this.ColorDepthAlias[depth]}`\n : `--cura-color-${color}-${depth}`;\n return getComputedStyle(document.documentElement).getPropertyValue(themeVar)\n ? `rgba(var(${themeVar}), ${opacity})`\n : `rgba(var(--cura-color-primary-500), ${opacity})`;\n }\n\n /**\n * Internal: Split color strings\n * @param colorWithDepth Color string [color]-[depth]. Ex.: primary-dark.\n * @returns Object { color: string, depth: string }.\n */\n private splitColorDepth(colorWithDepth: string): { color: string, depth: string } {\n const [ color, depth ] = colorWithDepth.toLowerCase().split(/-(.*)/);\n return { color: color ?? \"primary\", depth: depth ?? \"base\" };\n }\n\n}\n","export default class CuraThemeSpacingModule {\n\n private curaSpacing = '--cura-spacing-base';\n\n constructor() {}\n\n /** Returns the base spacing var defined in the theme */\n getSpacing(): string {\n if (getComputedStyle(document.body).getPropertyValue(this.curaSpacing)) {\n return `var(${this.curaSpacing})`;\n }\n return '4';\n }\n}\n","import { ThemeDefault } from \"../theme-presets/theme-default\";\n\nexport default class CuraThemeFontsModule {\n\n constructor() {}\n\n /**\n * Get the CSS variable related to the font family defined by the theme.\n * @param type 'body' | 'heading' | 'display'\n * @returns Related css variable as a string.\n */\n getFamily(type: string = \"body\"): string {\n const curaFontFamilyCSSVar = `--cura-font-${type.toLowerCase()}`;\n return getComputedStyle(document.body).getPropertyValue(curaFontFamilyCSSVar)\n ? `var(${curaFontFamilyCSSVar})`\n : 'var(--cura-font-body)';\n }\n\n /**\n * Get the CSS variables related to font weights defined by the theme.\n * @returns Object with CSS vars weights definitions for thin, light, regular, medium, bold and black fonts.\n */\n getWeights(): any {\n const weights = {};\n Object.keys(ThemeDefault.font.weights).forEach((key) => weights[key] = `var(--cura-font-weights-${key})`);\n return weights;\n }\n\n /**\n * Get the CSS variable related to the font size base defined by the theme.\n * @returns Related CSS variable as a string.\n */\n getSize = () => `var(--cura-font-size)`;\n\n /**\n * Get CSS variable related to the font color defined by the theme.\n * @returns Related CSS variable as a string.\n */\n getColor = () => `var(--cura-font-color)`;\n\n}\n","import { Static } from '../theme-presets/static';\n\nexport default class CuraThemeBreakpointsModule {\n\n constructor() {}\n\n /** Returns the base spacing var defined in the theme */\n get(size: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' = null, position: 'min' | 'max' = null): any {\n if (size) {\n const breakpoint = position ? Static.breakpoints[size][position] : Static.breakpoints[size];\n if (breakpoint || breakpoint === 0) return breakpoint;\n }\n return Static.breakpoints;\n }\n}\n","import { ThemePresets } from '../theme-presets/theme-presets';\nimport { CuraCustomTheme } from '../cura-api.type';\nimport CuraThemeColorsModule from './cura-theme-colors-module';\nimport CuraThemeSpacingModule from './cura-theme-spacing-module';\nimport CuraThemeFontsModule from './cura-theme-fonts-module';\nimport CuraThemeBreakpointsModule from './cura-theme-breakpoints-module';\n\nexport default class CuraThemeModule {\n rootElement: HTMLElement;\n prefix = '--cura';\n colors = new CuraThemeColorsModule();\n spacing = new CuraThemeSpacingModule();\n fonts = new CuraThemeFontsModule();\n breakpoints = new CuraThemeBreakpointsModule();\n groupObject = {};\n\n constructor() {\n if (typeof window === 'undefined') return;\n\n this.rootElement = window?.document?.documentElement;\n }\n\n /**\n * Load a theme.\n * @param theme Theme tag.\n */\n load(theme = 'default') {\n const preset = ThemePresets[theme] ? ThemePresets[theme] : ThemePresets.default;\n this.buildCssVars(this.prefix, preset);\n }\n\n loadVarsSSR(theme = 'default') {\n const preset = ThemePresets[theme] ? ThemePresets[theme] : ThemePresets.default;\n this.buildCssVars(this.prefix, preset, true);\n\n return this.groupObject;\n }\n\n /**\n * Define a custom theme\n * @param customTheme Custom theme object definition\n */\n setCustom(customTheme: CuraCustomTheme) {\n const customTag = customTheme.name;\n if (customTag in ThemePresets) {\n console.log('Error building custom theme. Theme %s already exists. Loading default theme.', customTag);\n this.load('default');\n } else {\n const preset = customTheme.fromPreset && customTheme.fromPreset in ThemePresets ? ThemePresets[customTheme.fromPreset] : ThemePresets.default;\n const newTheme = { ...JSON.parse(JSON.stringify(preset)) };\n this.mergeObject(customTheme.definitions, newTheme);\n ThemePresets[customTag] = newTheme;\n this.load(customTag);\n }\n }\n\n /* Private */\n\n /** Set css var based on object structure */\n setCssVar = (prop, path) => {\n const varName = this.groupPath(path, prop[0]);\n this.rootElement.style.setProperty(varName, prop[1]);\n };\n\n groupPath = (a, b) => `${a}-${b}`;\n\n isObject = val => {\n return val && typeof val === 'object' && !Array.isArray(val);\n };\n\n /** Deep merge objects */\n mergeObject = (from, to) => {\n const entries = Object.entries(from);\n for (let e of entries) {\n if (this.isObject(e[1])) {\n this.mergeObject(e[1], to[e[0]]);\n } else {\n to[e[0]] = e[1];\n }\n }\n };\n\n /** Set css vars from preset object */\n buildCssVars = (path, obj, isGroup = false) => {\n const entries = Object.entries(obj);\n for (let e of entries) {\n if (this.isObject(e[1])) {\n this.buildCssVars(this.groupPath(path, e[0]), e[1], isGroup);\n } else {\n if (isGroup) {\n const varName = this.groupPath(path, e[0]);\n\n this.groupObject[varName] = e[1];\n } else {\n this.setCssVar(e, path);\n }\n }\n }\n };\n}\n","import { CuraConfig, APIThemeFunctions, CuraCustomTheme } from './cura-api.type';\nimport CuraThemeModule from './modules/cura-theme-module';\n\nexport default class CuraAPI {\n\n theme: APIThemeFunctions;\n localAssetsPath: string;\n\n constructor (config?: CuraConfig) {\n this.localAssetsPath = config && config.localAssetsPath ? config.localAssetsPath : `/assets`;\n const themeModule = new CuraThemeModule();\n this.theme = {\n load: function(themeTag: string) { themeModule.load(themeTag); },\n setCustom: function(customThemeDefinitions: CuraCustomTheme) { themeModule.setCustom(customThemeDefinitions); },\n colors: {\n getColor: function(colorWithDepth?: string, opacity?: number) { return themeModule.colors.getColor(colorWithDepth, opacity) },\n },\n fonts: {\n getFamily: function(type?: string) { return themeModule.fonts.getFamily(type) },\n getWeights: function() { return themeModule.fonts.getWeights() },\n getSize: function() { return themeModule.fonts.getSize() },\n getColor: function() { return themeModule.fonts.getColor() }\n },\n spacing: {\n getSpacing: function() { return themeModule.spacing.getSpacing(); },\n },\n breakpoints: {\n get: function(size?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge', position?: 'min' | 'max') { return themeModule.breakpoints.get(size, position); }\n }\n };\n this._addGlobalClasses();\n if (config && config.customTheme) {\n this.theme.setCustom(config.customTheme);\n } else {\n const theme = config && config.theme ? config.theme : 'default';\n this.theme.load(theme);\n }\n }\n\n _addGlobalClasses() {\n const styleId = \"cura_global_classes\";\n let styleElement = document.head.querySelector(`#${styleId}`);\n if (!styleElement) {\n styleElement = document.createElement(\"style\");\n styleElement.id = styleId;\n styleElement.textContent = `\n .cura-body-scroll-lock {\n overflow: hidden;\n position: fixed;\n left: 0;\n right: 0;\n top: 0;\n }\n `;\n document.head.appendChild(styleElement);\n }\n }\n\n}\n","import CuraAPI from './api/cura-api';\nimport { CuraConfig } from './api/cura-api.type';\n// import { setAssetPath } from '@stencil/core';\n\n// setAssetPath(import.meta.url);\ndeclare global {\n interface Window {\n CuraAPI?: CuraAPI,\n CuraInit?: CuraConfig\n }\n}\n\nexport default function() {\n const config = window.CuraInit;\n window.CuraAPI = config ? new CuraAPI(config) : new CuraAPI();\n const api = window.CuraAPI;\n window.dispatchEvent(new CustomEvent(\"CuraAPIReady\", { detail: {api} }));\n if (config && typeof config.onReady === 'function') config.onReady(api);\n}\n","import appGlobalScript from '/Users/fellipesoares/Code/cura/packages/component-lib/src/rededor-cura-start.ts';\nexport const globalScripts = appGlobalScript;\n","export { Components, JSX } from './components';\nimport CuraAPI from './api/cura-api';\nimport { CuraConfig } from './api/cura-api.type';\nimport CuraThemeModule from './api/modules/cura-theme-module';\n\ndeclare global {\n export interface Window {\n CuraAPI?: CuraAPI;\n CuraInit?: CuraConfig;\n }\n}\n\nexport function CuraInit(options: CuraConfig, w = window) {\n w.CuraInit = options;\n}\n\nexport function InitVarsTheme(theme: string) {\n const themeModule = new CuraThemeModule();\n return themeModule.loadVarsSSR(theme);\n}\n"],"version":3}
1
+ {"file":"index.js","mappings":"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","names":[],"sources":["src/api/theme-presets/theme-default.ts","src/api/theme-presets/theme-maternity.ts","src/api/theme-presets/theme-oncology.ts","src/api/theme-presets/theme-richet.ts","src/api/theme-presets/theme-perinatal-temporary.ts","src/api/theme-presets/theme-legacy-default.ts","src/api/theme-presets/theme-presets.ts","src/api/modules/cura-theme-colors-module.ts","src/api/modules/cura-theme-spacing-module.ts","src/api/modules/cura-theme-fonts-module.ts","src/api/modules/cura-theme-breakpoints-module.ts","src/api/modules/cura-theme-module.ts","src/api/cura-api.ts","src/rededor-cura-start.ts","@stencil/core/internal/app-globals","src/index.ts"],"sourcesContent":["/**\n * Cura Default Theme\n */\nexport const ThemeDefault = {\n /* Colors */\n color: {\n primary: {\n '100': '113,197,232',\n '300': '68,142,205',\n '500': '0,61,165',\n '700': '0,48,117',\n '900': '0,40,85'\n },\n secondary: {\n '100': '245,236,227',\n '300': '221,192,162',\n '500': '204,160,116',\n '700': '136,107,77',\n '900': '41,32,23'\n },\n accent: {\n '100': '255,194,123',\n '300': '255,168,74',\n '500': '255,130,0',\n '700': '215,114,10',\n '900': '155,90,26'\n }\n },\n /* Spacing */\n spacing: {\n base: 4,\n },\n /* Fonts */\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Gotham', Arial, Helvetica, sans-serif\",\n heading: \"'Gotham', Arial, Helvetica, sans-serif\",\n display: \"'Gotham', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","/**\n * Maternity Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeMaternity = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '248,227,226',\n '300': '255,179,171',\n '500': '218,113,111',\n '700': '145,75,74',\n '900': '73,38,37'\n },\n secondary: {\n '100': '253,251,249',\n '300': '247,244,238',\n '500': '245,236,227',\n '700': '204,197,189',\n '900': '163,157,151'\n },\n accent: {\n '100': '236,239,249',\n '300': '133,153,203',\n '500': '11,20,151',\n '700': '7,13,101',\n '900': '4,7,50'\n }\n },\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Gotham', Arial, Helvetica, sans-serif\",\n heading: \"'Gotham', Arial, Helvetica, sans-serif\",\n display: \"'Gotham', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","/**\n * Oncology Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeOncology = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '170,190,225',\n '300': '85,126,196',\n '500': '0,61,166',\n '700': '0,41,111',\n '900': '0,12,33'\n },\n secondary: {\n '100': '205,215,227',\n '300': '155,175,199',\n '500': '104,134,171',\n '700': '54,95,143',\n '900': '4,54,115',\n },\n accent: {\n '100': '153,207,255',\n '300': '71,169,255',\n '500': '0,131,245',\n '700': '0,109,204',\n '900': '0,88,164',\n },\n aux: {\n '100': '218,242,239',\n '300': '132,212,202',\n '500': '71,191,176',\n '700': '33,100,92',\n '900': '14,38,35',\n },\n },\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Hanken Grotesk', Arial, Helvetica, sans-serif\",\n heading: \"'Hanken Grotesk', Arial, Helvetica, sans-serif\",\n display: \"'Hanken Grotesk', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","/**\n * Richet Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeRichet = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '153,197,255',\n '300': '67,142,241',\n '500': '0,47,108',\n '700': '1,39,91',\n '900': '0,33,77'\n },\n secondary: {\n '100': '243,237,227',\n '300': '216,194,163',\n '500': '208,173,103',\n '700': '201,155,64',\n '900': '149,104,15'\n },\n accent: {\n '100': '167,230,215',\n '300': '130,225,209',\n '500': '44,213,196',\n '700': '26,188,169',\n '900': '0,150,129'\n }\n },\n};\n","/**\n * Perinatal temporary Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemePerinatalTemporary = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '239,226,228',\n '300': '226,196,200',\n '500': '199,134,141',\n '700': '175,91,109',\n '900': '147,58,77'\n },\n secondary: {\n '100': '233,226,220',\n '300': '211,196,186',\n '500': '189,167,151',\n '700': '95,84,76',\n '900': '38,33,30'\n },\n accent: {\n '100': '219,189,196',\n '300': '183,124,136',\n '500': '147,58,77',\n '700': '74,29,39',\n '900': '29,12,15'\n }\n },\n};\n","/**\n * Legacy Default Theme\n */\nimport { ThemeDefault } from \"./theme-default\";\n\nexport const ThemeLegacyDefault = {\n /* Get default theme */\n ...ThemeDefault,\n\n /* Custom */\n /* Colors */\n color: {\n primary: {\n '100': '204,217,231',\n '300': '85,128,174',\n '500': '0,65,134',\n '700': '0,43,89',\n '900': '0,13,27'\n },\n secondary: {\n '100': '238,232,206',\n '300': '198,180,92',\n '500': '170,142,11',\n '700': '113,95,7',\n '900': '34,28,2'\n },\n accent: {\n '100': '249,232,213',\n '300': '228,160,79',\n '500': '223,141,44',\n '700': '149,94,29',\n '900': '45,28,9'\n }\n },\n /* Fonts */\n font: {\n size: '14px',\n color: '#4A4A4A',\n body: \"'Roboto', Arial, Helvetica, sans-serif\",\n heading: \"'Roboto', Arial, Helvetica, sans-serif\",\n display: \"'Roboto', Arial, Helvetica, sans-serif\",\n weights: {\n thin: 100,\n light: 300,\n regular: 400,\n medium: 500,\n bold: 700,\n black: 900\n },\n }\n};\n","import { ThemeDefault } from './theme-default';\nimport { ThemeMaternity } from './theme-maternity';\nimport { ThemeOncology } from './theme-oncology';\nimport { ThemeRichet } from './theme-richet';\nimport { ThemePerinatalTemporary } from './theme-perinatal-temporary';\nimport { ThemeLegacyDefault } from './theme-legacy-default';\n\nexport const ThemePresets = {\n 'default': ThemeDefault,\n 'maternidade': ThemeMaternity,\n 'oncologia': ThemeOncology,\n 'richet': ThemeRichet,\n 'perinatalTemp': ThemePerinatalTemporary,\n 'legacyDefault': ThemeLegacyDefault\n};\n","import { Static } from \"../theme-presets/static\";\n\nexport default class CuraThemeColorsModule {\n\n NeutralDepthAlias = {\n 'purewhite': '0',\n 'white': '100',\n 'pale': '200',\n 'lighter': '300',\n 'light': '400',\n 'base': '500',\n 'medium': '600',\n 'dark': '700',\n 'darker': '800',\n 'black': '900',\n };\n\n ColorDepthAlias = {\n 'lighter': '100',\n 'light': '300',\n 'base': '500',\n 'dark': '700',\n 'darker': '900'\n }\n\n constructor() {}\n\n /**\n * Get theme color.\n * @param colorWithDepth string Ex.: primary-light\n * @returns RGBA value.\n */\n getColor(colorWithDepth: string = \"primary-base\", opacity = 1): string {\n const { color, depth } = this.splitColorDepth(colorWithDepth);\n const staticColor = this.getStatic(color, depth, opacity);\n if (staticColor) return staticColor;\n return this.getDynamic(color, depth, opacity);\n }\n\n /**\n * Internal: Look for static color by name and depth.\n * @param color Color name.\n * @param depth Depth number or alias.\n * @returns RGBA value.\n */\n getStatic(color: string, depth: string, opacity = 1) {\n const colorObj = Static.color[color];\n if (!colorObj) return null;\n const alias = color === 'neutral' ? this.NeutralDepthAlias[depth] : this.ColorDepthAlias[depth];\n return Static.color[color]?.[alias]\n ? `rgba(${Static.color[color]?.[alias]}, ${opacity})`\n : `rgba(${Static.color[color]?.[depth]}, ${opacity})`;\n }\n\n /**\n * Internal: Look for theme dynamic colors.\n * @param color Color name.\n * @param depth Color depth.\n * @returns RGBA value.\n */\n getDynamic(color: string, depth: string, opacity: number) {\n const themeVar = this.ColorDepthAlias[depth]\n ? `--cura-color-${color}-${this.ColorDepthAlias[depth]}`\n : `--cura-color-${color}-${depth}`;\n return getComputedStyle(document.documentElement).getPropertyValue(themeVar)\n ? `rgba(var(${themeVar}), ${opacity})`\n : `rgba(var(--cura-color-primary-500), ${opacity})`;\n }\n\n /**\n * Internal: Split color strings\n * @param colorWithDepth Color string [color]-[depth]. Ex.: primary-dark.\n * @returns Object { color: string, depth: string }.\n */\n private splitColorDepth(colorWithDepth: string): { color: string, depth: string } {\n const [ color, depth ] = colorWithDepth.toLowerCase().split(/-(.*)/);\n return { color: color ?? \"primary\", depth: depth ?? \"base\" };\n }\n\n}\n","export default class CuraThemeSpacingModule {\n\n private curaSpacing = '--cura-spacing-base';\n\n constructor() {}\n\n /** Returns the base spacing var defined in the theme */\n getSpacing(): string {\n if (getComputedStyle(document.body).getPropertyValue(this.curaSpacing)) {\n return `var(${this.curaSpacing})`;\n }\n return '4';\n }\n}\n","import { ThemeDefault } from \"../theme-presets/theme-default\";\n\nexport default class CuraThemeFontsModule {\n\n constructor() {}\n\n /**\n * Get the CSS variable related to the font family defined by the theme.\n * @param type 'body' | 'heading' | 'display'\n * @returns Related css variable as a string.\n */\n getFamily(type: string = \"body\"): string {\n const curaFontFamilyCSSVar = `--cura-font-${type.toLowerCase()}`;\n return getComputedStyle(document.body).getPropertyValue(curaFontFamilyCSSVar)\n ? `var(${curaFontFamilyCSSVar})`\n : 'var(--cura-font-body)';\n }\n\n /**\n * Get the CSS variables related to font weights defined by the theme.\n * @returns Object with CSS vars weights definitions for thin, light, regular, medium, bold and black fonts.\n */\n getWeights(): any {\n const weights = {};\n Object.keys(ThemeDefault.font.weights).forEach((key) => weights[key] = `var(--cura-font-weights-${key})`);\n return weights;\n }\n\n /**\n * Get the CSS variable related to the font size base defined by the theme.\n * @returns Related CSS variable as a string.\n */\n getSize = () => `var(--cura-font-size)`;\n\n /**\n * Get CSS variable related to the font color defined by the theme.\n * @returns Related CSS variable as a string.\n */\n getColor = () => `var(--cura-font-color)`;\n\n}\n","import { Static } from '../theme-presets/static';\n\nexport default class CuraThemeBreakpointsModule {\n\n constructor() {}\n\n /** Returns the base spacing var defined in the theme */\n get(size: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge' = null, position: 'min' | 'max' = null): any {\n if (size) {\n const breakpoint = position ? Static.breakpoints[size][position] : Static.breakpoints[size];\n if (breakpoint || breakpoint === 0) return breakpoint;\n }\n return Static.breakpoints;\n }\n}\n","import { ThemePresets } from '../theme-presets/theme-presets';\nimport { CuraCustomTheme } from '../cura-api.type';\nimport CuraThemeColorsModule from './cura-theme-colors-module';\nimport CuraThemeSpacingModule from './cura-theme-spacing-module';\nimport CuraThemeFontsModule from './cura-theme-fonts-module';\nimport CuraThemeBreakpointsModule from './cura-theme-breakpoints-module';\n\nexport default class CuraThemeModule {\n rootElement: HTMLElement;\n prefix = '--cura';\n colors = new CuraThemeColorsModule();\n spacing = new CuraThemeSpacingModule();\n fonts = new CuraThemeFontsModule();\n breakpoints = new CuraThemeBreakpointsModule();\n groupObject = {};\n\n constructor() {\n if (typeof window === 'undefined') return;\n\n this.rootElement = window?.document?.documentElement;\n }\n\n /**\n * Load a theme.\n * @param theme Theme tag.\n */\n load(theme = 'default') {\n const preset = ThemePresets[theme] ? ThemePresets[theme] : ThemePresets.default;\n this.buildCssVars(this.prefix, preset);\n }\n\n loadVarsSSR(theme = 'default') {\n const preset = ThemePresets[theme] ? ThemePresets[theme] : ThemePresets.default;\n this.buildCssVars(this.prefix, preset, true);\n\n return this.groupObject;\n }\n\n /**\n * Define a custom theme\n * @param customTheme Custom theme object definition\n */\n setCustom(customTheme: CuraCustomTheme) {\n const customTag = customTheme.name;\n if (customTag in ThemePresets) {\n console.log('Error building custom theme. Theme %s already exists. Loading default theme.', customTag);\n this.load('default');\n } else {\n const preset = customTheme.fromPreset && customTheme.fromPreset in ThemePresets ? ThemePresets[customTheme.fromPreset] : ThemePresets.default;\n const newTheme = { ...JSON.parse(JSON.stringify(preset)) };\n this.mergeObject(customTheme.definitions, newTheme);\n ThemePresets[customTag] = newTheme;\n this.load(customTag);\n }\n }\n\n /* Private */\n\n /** Set css var based on object structure */\n setCssVar = (prop, path) => {\n const varName = this.groupPath(path, prop[0]);\n this.rootElement.style.setProperty(varName, prop[1]);\n };\n\n groupPath = (a, b) => `${a}-${b}`;\n\n isObject = val => {\n return val && typeof val === 'object' && !Array.isArray(val);\n };\n\n /** Deep merge objects */\n mergeObject = (from, to) => {\n const entries = Object.entries(from);\n for (let e of entries) {\n if (this.isObject(e[1])) {\n this.mergeObject(e[1], to[e[0]]);\n } else {\n to[e[0]] = e[1];\n }\n }\n };\n\n /** Set css vars from preset object */\n buildCssVars = (path, obj, isGroup = false) => {\n const entries = Object.entries(obj);\n for (let e of entries) {\n if (this.isObject(e[1])) {\n this.buildCssVars(this.groupPath(path, e[0]), e[1], isGroup);\n } else {\n if (isGroup) {\n const varName = this.groupPath(path, e[0]);\n\n this.groupObject[varName] = e[1];\n } else {\n this.setCssVar(e, path);\n }\n }\n }\n };\n}\n","import { CuraConfig, APIThemeFunctions, CuraCustomTheme } from './cura-api.type';\nimport CuraThemeModule from './modules/cura-theme-module';\n\nexport default class CuraAPI {\n\n theme: APIThemeFunctions;\n localAssetsPath: string;\n\n constructor (config?: CuraConfig) {\n this.localAssetsPath = config && config.localAssetsPath ? config.localAssetsPath : `/assets`;\n const themeModule = new CuraThemeModule();\n this.theme = {\n load: function(themeTag: string) { themeModule.load(themeTag); },\n setCustom: function(customThemeDefinitions: CuraCustomTheme) { themeModule.setCustom(customThemeDefinitions); },\n colors: {\n getColor: function(colorWithDepth?: string, opacity?: number) { return themeModule.colors.getColor(colorWithDepth, opacity) },\n },\n fonts: {\n getFamily: function(type?: string) { return themeModule.fonts.getFamily(type) },\n getWeights: function() { return themeModule.fonts.getWeights() },\n getSize: function() { return themeModule.fonts.getSize() },\n getColor: function() { return themeModule.fonts.getColor() }\n },\n spacing: {\n getSpacing: function() { return themeModule.spacing.getSpacing(); },\n },\n breakpoints: {\n get: function(size?: 'xsmall' | 'small' | 'medium' | 'large' | 'xlarge', position?: 'min' | 'max') { return themeModule.breakpoints.get(size, position); }\n }\n };\n this._addGlobalClasses();\n if (config && config.customTheme) {\n this.theme.setCustom(config.customTheme);\n } else {\n const theme = config && config.theme ? config.theme : 'default';\n this.theme.load(theme);\n }\n }\n\n _addGlobalClasses() {\n const styleId = \"cura_global_classes\";\n let styleElement = document.head.querySelector(`#${styleId}`);\n if (!styleElement) {\n styleElement = document.createElement(\"style\");\n styleElement.id = styleId;\n styleElement.textContent = `\n .cura-body-scroll-lock {\n overflow: hidden;\n position: fixed;\n left: 0;\n right: 0;\n top: 0;\n }\n `;\n document.head.appendChild(styleElement);\n }\n }\n\n}\n","import CuraAPI from './api/cura-api';\nimport { CuraConfig } from './api/cura-api.type';\n// import { setAssetPath } from '@stencil/core';\n\n// setAssetPath(import.meta.url);\ndeclare global {\n interface Window {\n CuraAPI?: CuraAPI,\n CuraInit?: CuraConfig\n }\n}\n\nexport default function() {\n const config = window.CuraInit;\n window.CuraAPI = config ? new CuraAPI(config) : new CuraAPI();\n const api = window.CuraAPI;\n window.dispatchEvent(new CustomEvent(\"CuraAPIReady\", { detail: {api} }));\n if (config && typeof config.onReady === 'function') config.onReady(api);\n}\n","import appGlobalScript from '/Users/danilodomingos/repos/cura/packages/component-lib/src/rededor-cura-start.ts';\nexport const globalScripts = appGlobalScript;\n","export { Components, JSX } from './components';\nimport CuraAPI from './api/cura-api';\nimport { CuraConfig } from './api/cura-api.type';\nimport CuraThemeModule from './api/modules/cura-theme-module';\n\ndeclare global {\n export interface Window {\n CuraAPI?: CuraAPI;\n CuraInit?: CuraConfig;\n }\n}\n\nexport function CuraInit(options: CuraConfig, w = window) {\n w.CuraInit = options;\n}\n\nexport function InitVarsTheme(theme: string) {\n const themeModule = new CuraThemeModule();\n return themeModule.loadVarsSSR(theme);\n}\n"],"version":3}