@rededor/cura 1.6.1-alpha.2 → 1.6.1-alpha.3

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 (141) hide show
  1. package/dist/cjs/app-globals-5a7ddb39.js.map +1 -1
  2. package/dist/cjs/cura-accordion_18.cjs.entry.js +9 -9
  3. package/dist/cjs/cura-accordion_18.cjs.entry.js.map +1 -1
  4. package/dist/cjs/cura-button-outline.cjs.entry.js +1 -1
  5. package/dist/cjs/cura-button-outline.cjs.entry.js.map +1 -1
  6. package/dist/cjs/cura-button-select.cjs.entry.js +1 -1
  7. package/dist/cjs/cura-button-select.cjs.entry.js.map +1 -1
  8. package/dist/cjs/cura-calendar.cjs.entry.js +13 -12
  9. package/dist/cjs/cura-calendar.cjs.entry.js.map +1 -1
  10. package/dist/cjs/cura-checkbox.cjs.entry.js +1 -1
  11. package/dist/cjs/cura-checkbox.cjs.entry.js.map +1 -1
  12. package/dist/cjs/cura-display.cjs.entry.js +1 -1
  13. package/dist/cjs/cura-display.cjs.entry.js.map +1 -1
  14. package/dist/cjs/cura-modal.cjs.entry.js +1 -1
  15. package/dist/cjs/cura-modal.cjs.entry.js.map +1 -1
  16. package/dist/cjs/cura-radio.cjs.entry.js +1 -1
  17. package/dist/cjs/cura-radio.cjs.entry.js.map +1 -1
  18. package/dist/cjs/cura-switch.cjs.entry.js +1 -1
  19. package/dist/cjs/cura-switch.cjs.entry.js.map +1 -1
  20. package/dist/cjs/cura-toast.cjs.entry.js +1 -1
  21. package/dist/cjs/cura-toast.cjs.entry.js.map +1 -1
  22. package/dist/collection/components/buttons/cura-button/cura-button.js +1 -1
  23. package/dist/collection/components/buttons/cura-button/cura-button.js.map +1 -1
  24. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.js +1 -1
  25. package/dist/collection/components/buttons/cura-button-outline/cura-button-outline.js.map +1 -1
  26. package/dist/collection/components/buttons/cura-button-select/cura-button-select.js +1 -1
  27. package/dist/collection/components/buttons/cura-button-select/cura-button-select.js.map +1 -1
  28. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.js +1 -1
  29. package/dist/collection/components/buttons/cura-button-transparent/cura-button-transparent.js.map +1 -1
  30. package/dist/collection/components/cura-calendar/cura-calendar.js +13 -12
  31. package/dist/collection/components/cura-calendar/cura-calendar.js.map +1 -1
  32. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.js +1 -1
  33. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.js.map +1 -1
  34. package/dist/collection/components/cura-modal/cura-modal.js +1 -1
  35. package/dist/collection/components/cura-modal/cura-modal.js.map +1 -1
  36. package/dist/collection/components/cura-toast/cura-toast.js +1 -1
  37. package/dist/collection/components/cura-toast/cura-toast.js.map +1 -1
  38. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.js +1 -1
  39. package/dist/collection/components/forms/cura-checkbox/cura-checkbox.js.map +1 -1
  40. package/dist/collection/components/forms/cura-input-text/cura-input-text.js +2 -2
  41. package/dist/collection/components/forms/cura-input-text/cura-input-text.js.map +1 -1
  42. package/dist/collection/components/forms/cura-radio/cura-radio.js +1 -1
  43. package/dist/collection/components/forms/cura-radio/cura-radio.js.map +1 -1
  44. package/dist/collection/components/forms/cura-select/cura-select.js +3 -3
  45. package/dist/collection/components/forms/cura-select/cura-select.js.map +1 -1
  46. package/dist/collection/components/forms/cura-select-options/cura-select-option.js +1 -1
  47. package/dist/collection/components/forms/cura-select-options/cura-select-option.js.map +1 -1
  48. package/dist/collection/components/forms/cura-switch/cura-switch.js +1 -1
  49. package/dist/collection/components/forms/cura-switch/cura-switch.js.map +1 -1
  50. package/dist/collection/components/text/cura-display/cura-display.js +1 -1
  51. package/dist/collection/components/text/cura-display/cura-display.js.map +1 -1
  52. package/dist/collection/components/text/cura-heading/cura-heading.js +1 -1
  53. package/dist/collection/components/text/cura-heading/cura-heading.js.map +1 -1
  54. package/dist/components/cura-button-outline.js +1 -1
  55. package/dist/components/cura-button-outline.js.map +1 -1
  56. package/dist/components/cura-button-select.js +1 -1
  57. package/dist/components/cura-button-select.js.map +1 -1
  58. package/dist/components/cura-button-transparent2.js +1 -1
  59. package/dist/components/cura-button-transparent2.js.map +1 -1
  60. package/dist/components/cura-button.js +1 -1
  61. package/dist/components/cura-button.js.map +1 -1
  62. package/dist/components/cura-calendar2.js +13 -12
  63. package/dist/components/cura-calendar2.js.map +1 -1
  64. package/dist/components/cura-checkbox.js +1 -1
  65. package/dist/components/cura-checkbox.js.map +1 -1
  66. package/dist/components/cura-display.js +1 -1
  67. package/dist/components/cura-display.js.map +1 -1
  68. package/dist/components/cura-dropdown-search.js +1 -1
  69. package/dist/components/cura-dropdown-search.js.map +1 -1
  70. package/dist/components/cura-heading2.js +1 -1
  71. package/dist/components/cura-heading2.js.map +1 -1
  72. package/dist/components/cura-input-text2.js +1 -1
  73. package/dist/components/cura-input-text2.js.map +1 -1
  74. package/dist/components/cura-modal.js +1 -1
  75. package/dist/components/cura-modal.js.map +1 -1
  76. package/dist/components/cura-radio.js +1 -1
  77. package/dist/components/cura-radio.js.map +1 -1
  78. package/dist/components/cura-select-option2.js +1 -1
  79. package/dist/components/cura-select-option2.js.map +1 -1
  80. package/dist/components/cura-select2.js +3 -3
  81. package/dist/components/cura-select2.js.map +1 -1
  82. package/dist/components/cura-switch.js +1 -1
  83. package/dist/components/cura-switch.js.map +1 -1
  84. package/dist/components/cura-toast.js +1 -1
  85. package/dist/components/cura-toast.js.map +1 -1
  86. package/dist/components/index.js.map +1 -1
  87. package/dist/cura/cura.esm.js +1 -1
  88. package/dist/cura/{p-174d220e.entry.js → p-09ce32d6.entry.js} +2 -2
  89. package/dist/cura/{p-174d220e.entry.js.map → p-09ce32d6.entry.js.map} +1 -1
  90. package/dist/cura/{p-405a50de.entry.js → p-0d78f2ed.entry.js} +2 -2
  91. package/dist/cura/p-0d78f2ed.entry.js.map +1 -0
  92. package/dist/cura/{p-75f6e652.entry.js → p-12a4ae7e.entry.js} +2 -2
  93. package/dist/cura/p-12a4ae7e.entry.js.map +1 -0
  94. package/dist/cura/{p-186392b7.entry.js → p-3c3d330f.entry.js} +2 -2
  95. package/dist/cura/p-3c3d330f.entry.js.map +1 -0
  96. package/dist/cura/p-58511184.entry.js +2 -0
  97. package/dist/cura/p-58511184.entry.js.map +1 -0
  98. package/dist/cura/{p-fc1fd622.entry.js → p-633c13cd.entry.js} +2 -2
  99. package/dist/cura/p-633c13cd.entry.js.map +1 -0
  100. package/dist/cura/{p-d77df3f0.entry.js → p-9db912ea.entry.js} +2 -2
  101. package/dist/cura/p-9db912ea.entry.js.map +1 -0
  102. package/dist/cura/{p-a1782f0e.entry.js → p-b5464dfc.entry.js} +2 -2
  103. package/dist/cura/p-b5464dfc.entry.js.map +1 -0
  104. package/dist/cura/{p-6f7f157e.entry.js → p-b60a6aaa.entry.js} +2 -2
  105. package/dist/cura/p-b60a6aaa.entry.js.map +1 -0
  106. package/dist/cura/p-daf9feac.js.map +1 -1
  107. package/dist/cura/p-e6cf81b6.entry.js +2 -0
  108. package/dist/cura/p-e6cf81b6.entry.js.map +1 -0
  109. package/dist/esm/app-globals-83a601d0.js.map +1 -1
  110. package/dist/esm/cura-accordion_18.entry.js +9 -9
  111. package/dist/esm/cura-accordion_18.entry.js.map +1 -1
  112. package/dist/esm/cura-button-outline.entry.js +1 -1
  113. package/dist/esm/cura-button-outline.entry.js.map +1 -1
  114. package/dist/esm/cura-button-select.entry.js +1 -1
  115. package/dist/esm/cura-button-select.entry.js.map +1 -1
  116. package/dist/esm/cura-calendar.entry.js +13 -12
  117. package/dist/esm/cura-calendar.entry.js.map +1 -1
  118. package/dist/esm/cura-checkbox.entry.js +1 -1
  119. package/dist/esm/cura-checkbox.entry.js.map +1 -1
  120. package/dist/esm/cura-display.entry.js +1 -1
  121. package/dist/esm/cura-display.entry.js.map +1 -1
  122. package/dist/esm/cura-modal.entry.js +1 -1
  123. package/dist/esm/cura-modal.entry.js.map +1 -1
  124. package/dist/esm/cura-radio.entry.js +1 -1
  125. package/dist/esm/cura-radio.entry.js.map +1 -1
  126. package/dist/esm/cura-switch.entry.js +1 -1
  127. package/dist/esm/cura-switch.entry.js.map +1 -1
  128. package/dist/esm/cura-toast.entry.js +1 -1
  129. package/dist/esm/cura-toast.entry.js.map +1 -1
  130. package/package.json +2 -2
  131. package/dist/cura/p-186392b7.entry.js.map +0 -1
  132. package/dist/cura/p-38777561.entry.js +0 -2
  133. package/dist/cura/p-38777561.entry.js.map +0 -1
  134. package/dist/cura/p-405a50de.entry.js.map +0 -1
  135. package/dist/cura/p-6f7f157e.entry.js.map +0 -1
  136. package/dist/cura/p-75f6e652.entry.js.map +0 -1
  137. package/dist/cura/p-a1782f0e.entry.js.map +0 -1
  138. package/dist/cura/p-d77df3f0.entry.js.map +0 -1
  139. package/dist/cura/p-e5abb2a4.entry.js +0 -2
  140. package/dist/cura/p-e5abb2a4.entry.js.map +0 -1
  141. package/dist/cura/p-fc1fd622.entry.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"names":["curaToastCss","CuraToastStyle0","CuraToast","this","handleClose","closeContainer","close","handleChangeType","setStyle","connectedCallback","render","h","Host","key","class","getClasses","style","styles","name","getNameIcon","size","color","type","level","weight","label","marginBlock","lineHeight","closeButton","onClick","loader","autoCloseDelay","progress","componentDidLoad","openContainer","startAnimation","Object","assign","window","CuraAPI","theme","colors","getColor","firstPosition","secondPosition","position","split","classes","iconMapping","info","success","warning","error","icon","container","host","shadowRoot","querySelector","classList","add","remove","setTimeout","toastClosed","emit","intervalId","setInterval","clearInterval"],"sources":["src/components/cura-toast/cura-toast.scss?tag=cura-toast&encapsulation=shadow","src/components/cura-toast/cura-toast.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/responsive.scss';\n@import '../../../src/scss/mixins/shadows.scss';\n\n@mixin horizontalConfig($property) {\n #{$property}: 24px;\n\n &.center {\n #{$property}: -100%;\n left: 50%;\n transform: translateX(-50%);\n opacity: 0;\n transition: opacity 0.5s ease-in-out, #{$property} 0.5s ease-in-out;\n\n &.active {\n #{$property}: 24px;\n opacity: 1;\n }\n }\n}\n\n@mixin verticalConfig($property) {\n #{$property}: -100%;\n opacity: 0;\n transition: opacity 0.5s ease-in-out, #{$property} 0.5s ease-in-out;\n \n @include mobile-only() {\n right: unset;\n left: 50%;\n transform: translateX(-50%);\n }\n\n &.active {\n #{$property}: 24px;\n opacity: 1;\n }\n}\n\n:host {\n display: block;\n box-sizing: border-box;\n\n .container {\n position: fixed;\n z-index: 99999;\n display: flex;\n box-sizing: border-box;\n min-width: 328px;\n height: fit-content;\n padding: 16px;\n border: 1px solid var(--color-base);\n border-radius: 12px;\n background-color: var(--neutral-purewhite);\n overflow: hidden;\n @include shadow-level4();\n\n &.loader {\n padding: 16px 16px 20px;\n }\n\n &.top {\n @include horizontalConfig(top);\n }\n\n &.bottom {\n @include horizontalConfig(bottom);\n }\n\n &.left {\n @include verticalConfig(left);\n }\n\n &.right {\n @include verticalConfig(right);\n }\n\n .content {\n flex: 1 1 0;\n display: flex;\n flex-direction: column;\n gap: 4px;\n }\n\n .default-icon {\n margin-right: 12px;\n }\n\n .close-icon {\n margin-left: 12px;\n cursor: pointer;\n }\n }\n}","import { Component, Element, Prop, Host, h, State, Watch, Event, EventEmitter, Method } from '@stencil/core';\n\n@Component({\n tag: 'cura-toast',\n styleUrl: 'cura-toast.scss',\n shadow: true,\n})\nexport class CuraToast {\n @Element() host: HTMLElement;\n\n @Prop() type: 'info' | 'success' | 'warning' | 'error' = 'info';\n @Prop() position: 'top-left' | 'top-center' | 'top-right' | 'bottom-left' | 'bottom-center' | 'bottom-right' = 'top-right';\n @Prop({ reflect: true }) icon: string;\n @Prop({ reflect: true }) label: string;\n @Prop({ reflect: true }) closeButton = true;\n @Prop({ reflect: true }) loader = true;\n @Prop({ reflect: true }) autoCloseDelay = 10000;\n\n @State() styles = {};\n @State() progress = 0;\n\n @Event({ eventName: 'toastClosed' }) toastClosed: EventEmitter<void>;\n\n /**\n * Method to close toast component\n */\n @Method()\n async close() {\n this.closeContainer();\n }\n\n @Watch('type')\n @Watch('position')\n handleChangeType() {\n this.setStyle();\n }\n\n container: HTMLElement;\n\n connectedCallback() {\n this.setStyle();\n }\n\n render() {\n return (\n <Host>\n <div class={this.getClasses()} style={this.styles}>\n <cura-icon class=\"default-icon\" name={this.getNameIcon()} size={16} color={`${this.type}-dark`}></cura-icon>\n <div class=\"content\">\n <cura-heading level={4} size=\"xsmall\" color={`${this.type}-dark`} weight=\"bold\" margin-block=\"0\">\n {this.label}\n </cura-heading>\n <cura-paragraph color={`${this.type}-darker`} size=\"xsmall\" marginBlock=\"0\" lineHeight=\"133.33%\">\n <slot></slot>\n </cura-paragraph>\n <slot name=\"actions\"></slot>\n </div>\n {this.closeButton && <cura-icon class=\"close-icon\" name=\"close\" size={16} color=\"error-dark\" onClick={this.handleClose}></cura-icon>}\n {this.loader && !!this.autoCloseDelay && <cura-loader-bar color={`${this.type}-base`} progress={this.progress}></cura-loader-bar>}\n </div>\n </Host>\n );\n }\n\n componentDidLoad() {\n this.openContainer();\n this.startAnimation();\n }\n\n setStyle() {\n this.styles = {\n ...this.styles,\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor(`neutral-purewhite`),\n '--neutral-base': window.CuraAPI.theme.colors.getColor(`neutral-base`, 0.2),\n '--primary-base': window.CuraAPI.theme.colors.getColor(`primary-base`),\n '--color-base': window.CuraAPI.theme.colors.getColor(`${this.type}-base`)\n }\n }\n\n getClasses() {\n const [firstPosition, secondPosition] = this.position.split('-');\n const classes = {};\n\n classes['container'] = true;\n classes[firstPosition] = true;\n classes[secondPosition] = true;\n\n if (this.loader) {\n classes['loader'] = true;\n }\n\n return classes;\n }\n\n getNameIcon() {\n const iconMapping = {\n info: 'infoCircle',\n success: 'checkCircle',\n warning: 'alertCircle',\n error: 'alertTriangle',\n };\n return this.icon ? this.icon : iconMapping[this.type];\n }\n\n openContainer() {\n this.container = this.host.shadowRoot.querySelector('.container') as HTMLElement;\n this.container.classList.add('active');\n }\n\n closeContainer() {\n this.container.classList.remove('active');\n setTimeout(() => {\n this.toastClosed.emit();\n this.host.remove();\n }, 500);\n }\n\n handleClose = () => {\n this.closeContainer();\n };\n\n startAnimation() {\n if (!!this.autoCloseDelay) {\n if (this.loader) {\n this.progress = 0;\n let intervalId = setInterval(() => {\n if (this.progress >= 100) {\n clearInterval(intervalId);\n this.closeContainer();\n } else {\n this.progress++;\n }\n }, this.autoCloseDelay/100);\n } else {\n let intervalId = setInterval(() => {\n clearInterval(intervalId);\n this.closeContainer();\n }, this.autoCloseDelay);\n }\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["curaCheckboxCss","CuraCheckboxStyle0","CuraCheckbox","this","isDarkBackground","background","isDarkIconColor","iconColor","handleClick","disabled","indeterminate","checked","internals","setFormValue","value","onchange","emit","sizeHandler","styles","Object","assign","formsSizes","size","gap","setColors","colors","name","color","forEach","window","CuraAPI","theme","getColor","connectedCallback","formAssociatedCallback","form","ariaLabel","label","formStateRestoreCallback","state","formResetCallback","setValidity","formDisabledCallback","getClasses","classes","position","status","assignColor","type","statusColors","success","icon","message","error","default","getIcon","iconName","iconSize","h","class","render","Host","key","style","onClick","weight","required","lineHeight","marginBlock","tabIndex","ontabindex"],"sources":["src/components/forms/cura-checkbox/cura-checkbox.scss?tag=cura-checkbox&encapsulation=shadow","src/components/forms/cura-checkbox/cura-checkbox.tsx"],"sourcesContent":[":host {\n display: block;\n width: fit-content;\n box-sizing: border-box;\n}\n\n/* Container e Layout */\n.container {\n display: flex;\n align-items: center;\n flex-direction: row-reverse;\n gap: var(--gap);\n}\n\n.position {\n &.container {\n flex-direction: row;\n }\n\n .label-wrapper {\n justify-content: end;\n }\n\n .message {\n text-align: right;\n }\n\n .label {\n order: 1;\n }\n}\n\n.info {\n display: flex;\n flex-direction: column;\n}\n\n.label-wrapper {\n display: flex;\n justify-content: start;\n align-items: center;\n gap: 5px;\n}\n\n/* Control e Checkbox */\n.control {\n width: fit-content;\n cursor: pointer;\n position: relative;\n}\n\n.checkbox {\n appearance: none;\n border: 2px solid var(--neutral-base-neutral-medium);\n border-radius: 4px;\n background: var(--neutral-black-neutral-purewhite);\n flex: 1 0;\n display: flex;\n align-items: center;\n justify-content: center;\n position: relative;\n cursor: pointer;\n box-sizing: border-box;\n width: var(--size);\n height: var(--size);\n flex: 0 0 var(--size);\n}\n\n.icon {\n position: absolute;\n display: flex;\n opacity: 0;\n transition: opacity 0.3s;\n}\n\n/* Estados de Foco */\n.checkbox:focus {\n border-color: var(--info-base) !important;\n}\n\n/* Estado Disabled */\n.disabled .checkbox {\n background: var(--neutral-black-neutral-white);\n border-color: var(--neutral-darker-neutral-base);\n cursor: not-allowed;\n\n &:hover {\n border-color: var(--neutral-darker-neutral-base) !important;\n }\n}\n\n.disabled.checked .checkbox,\n.disabled.indeterminate .checkbox {\n background: var(--neutral-black-neutral-white);\n border-color: var(--neutral-darker-neutral-base);\n\n &:hover {\n border-color: var(--neutral-base-neutral-white);\n background: var(--primary-base-neutral-white);\n }\n}\n\n.disabled .checkbox:focus {\n border-color: var(--neutral-darker-neutral-base) !important;\n}\n\n/* Estado Checked */\n.checked .checkbox {\n border-color: var(--color-dark);\n background: var(--color-base);\n\n &:hover {\n border-color: var(--color-base) !important;\n background: var(--color-light);\n }\n}\n\n/* Estado Indeterminate */\n.indeterminate .checkbox {\n border-color: var(--color-base);\n background: var(--color-light);\n\n &:hover {\n border-color: var(--color-dark) !important;\n background: var(--color-base);\n }\n}\n\n.checked .icon,\n.indeterminate .icon {\n opacity: 1;\n}\n\n/* Hover para não disabled, default, checked, indeterminate */\n:not(.disabled):not(.checked):not(.indeterminate) .checkbox:hover {\n border-color: var(--neutral-purewhite-neutral-dark);\n}\n\n/* Estado Success */\n\n.success.dark .checkbox {\n background: var(--neutral-black) ;\n}\n\n.success .checkbox {\n border-color: var(--success-base);\n background: var(--success-lighter);\n\n &:hover {\n border-color: var(--success-base) !important;\n }\n}\n\n.success.checked .checkbox {\n border-color: var(--success-dark-base);\n background: var(--success-base-lighter);\n\n &:hover {\n border-color: var(--success-dark-base);\n }\n}\n\n/* Estado Error */\n\n.error.dark .checkbox {\n background: var(--neutral-black) ;\n}\n\n.error .checkbox {\n border-color: var(--error-base);\n background: var(--error-lighter);\n\n &:hover {\n border-color: var(--error-base) !important;\n }\n}\n\n.error.checked .checkbox {\n border-color: var(--error-dark-base);\n background: var(--error-base-lighter);\n\n &:hover {\n border-color: var(--error-dark-base);\n }\n}\n\n/* Input */\ninput {\n appearance: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n}\n","import { Component, Prop, Event, Element, h, Host, Watch, EventEmitter, State, AttachInternals } from '@stencil/core';\nimport { formsSizes } from '../cura-forms.definitions';\n\n@Component({\n tag: 'cura-checkbox',\n styleUrl: 'cura-checkbox.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class CuraCheckbox {\n /**\n * Reflects the checked state of the checkbox.\n * Mutable property allowing state change.\n */\n @Prop({ reflect: true, mutable: true }) checked: boolean = false;\n /**\n * Reflects the indeterminate state of the checkbox.\n * Mutable property allowing state change.\n */\n @Prop({ reflect: true, mutable: true }) indeterminate: boolean = false;\n /**\n * Status of the checkbox.\n * Can be 'error', 'success', or 'default'.\n */\n @Prop({ reflect: true, mutable: true }) status: 'error' | 'success' | 'default' = 'default';\n /**\n * Reflects the disabled state of the checkbox.\n */\n @Prop({ reflect: true }) disabled: boolean = false;\n /**\n * Reflects the required state of the checkbox.\n */\n @Prop({ reflect: true }) required: boolean = false;\n /**\n * Text label associated with the checkbox.\n */\n @Prop({ reflect: true }) label: string;\n /**\n * Specifies the tabindex of the checkbox.\n */\n @Prop({ reflect: true }) ontabindex: number = 0;\n /**\n * Position of the label relative to the checkbox.\n * Can be 'left' or 'right'.\n */\n @Prop({ reflect: true }) position: 'left' | 'right' = 'left';\n /**\n * Value associated with the checkbox.\n */\n @Prop({ reflect: true }) value: string;\n /**\n * Name attribute of the checkbox.\n */\n @Prop({ reflect: true }) name: string;\n /**\n * Size of the checkbox.\n * Can be 'small', 'medium', or 'large'.\n */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'medium';\n /**\n * Background theme of the checkbox.\n * Can be 'dark' or 'light'.\n */\n @Prop() background: 'dark' | 'light' = 'light';\n /**\n * iconColor theme of the checkbox.\n * Can be 'dark' or 'light'.\n */\n @Prop() iconColor: 'dark' | 'light' = 'dark';\n /**\n * Color theme of the checkbox.\n */\n @Prop() color = 'accent';\n\n @State() styles = {};\n\n @Element() host: HTMLElement;\n\n @Event() onchange: EventEmitter<{ value: string; checked: boolean; indeterminate: boolean }>;\n\n @AttachInternals() internals: ElementInternals;\n\n isDarkBackground = () => this.background === 'dark';\n\n isDarkIconColor = () => this.iconColor === 'dark';\n\n @Watch('size')\n sizeHandler() {\n this.styles = {\n ...this.styles,\n '--size': `${formsSizes[this.size].size}px`,\n '--gap': `${formsSizes[this.size].gap}px`,\n };\n }\n\n /**\n * Watches changes in color and background properties to update styles.\n */\n @Watch('color')\n @Watch('background')\n setColors() {\n const colors = [\n { name: '--color-base', background: `${this.color}-base` },\n { name: '--color-lighter', background: `${this.color}-lighter` },\n { name: '--color-light', background: `${this.color}-light` },\n { name: '--color-dark', background: `${this.color}-dark` },\n { name: '--info-base', background: 'info-base' },\n { name: '--error-base', background: 'error-base' },\n { name: '--success-lighter', background: 'success-lighter' },\n { name: '--success-base', background: 'success-base' },\n { name: '--success-dark', background: 'success-dark' },\n { name: '--error-lighter', background: 'error-lighter' },\n { name: '--neutral-black', background: 'neutral-black' },\n { name: '--primary-base-neutral-white', background: this.isDarkBackground() ? 'primary-base' : 'neutral-white' },\n { name: '--neutral-base-neutral-medium', background: this.isDarkBackground() ? 'neutral-base' : 'neutral-medium' },\n { name: '--neutral-black-neutral-purewhite', background: this.isDarkBackground() ? 'neutral-black' : 'neutral-purewhite' },\n { name: '--neutral-black-neutral-white', background: this.isDarkBackground() ? 'neutral-black' : 'neutral-white' },\n { name: '--neutral-darker-neutral-base', background: this.isDarkBackground() ? 'neutral-darker' : 'neutral-base' },\n { name: '--neutral-base-neutral-base', background: this.isDarkBackground() ? 'primary-base' : 'neutral-base' },\n { name: '--neutral-purewhite-neutral-dark', background: this.isDarkBackground() ? 'neutral-purewhite' : 'neutral-dark' },\n { name: '--primary-base-neutral-medium', background: this.isDarkBackground() ? 'primary-base' : 'neutral-medium' },\n { name: '--success-base-lighter', background: this.isDarkBackground() ? 'success-base' : 'success-lighter' },\n { name: '--success-dark-base', background: this.isDarkBackground() ? 'success-dark' : 'success-base' },\n { name: '--error-base-lighter', background: this.isDarkBackground() ? 'error-base' : 'error-lighter' },\n { name: '--error-dark-base', background: this.isDarkBackground() ? 'error-dark' : 'error-base' },\n ];\n\n colors.forEach(color => {\n this.styles[color.name] = window.CuraAPI.theme.colors.getColor(color.background);\n });\n this.styles = { ...this.styles };\n }\n\n connectedCallback() {\n this.sizeHandler();\n this.setColors();\n }\n\n /**\n * Callback for form association.\n */\n formAssociatedCallback(form: { ariaLabel: string }) {\n form.ariaLabel = this.label;\n }\n\n /**\n * Callback to restore the switch state from the form.\n */\n formStateRestoreCallback(state: { value: string; checked: boolean; indeterminate: boolean }) {\n this.value = state.value;\n this.checked = state.checked;\n this.indeterminate = state.indeterminate;\n this.internals.setFormValue(this.value);\n }\n\n /**\n * Callback to reset the switch state when the form is reset.\n */\n formResetCallback() {\n this.value = '';\n this.checked = false;\n this.indeterminate = false;\n this.internals.setValidity({});\n this.internals.setFormValue(this.value);\n }\n\n /**\n * Callback to update the switch's disabled state when the form's disabled state changes.\n */\n formDisabledCallback(disabled: boolean) {\n this.disabled = disabled;\n }\n\n handleClick = () => {\n if (this.disabled) return;\n\n this.indeterminate = false;\n this.checked = !this.checked;\n this.internals.setFormValue(this.value);\n this.onchange.emit({ value: this.value, checked: this.checked, indeterminate: this.indeterminate });\n };\n\n getClasses() {\n const classes = {};\n classes['container'] = true;\n classes['checked'] = this.checked;\n classes['disabled'] = this.disabled;\n classes[this.background] = true;\n classes['indeterminate'] = this.indeterminate;\n classes['position'] = this.position === 'right';\n classes[this.status] = true;\n\n return classes;\n }\n\n /**\n * Assigns color based on status and background theme.\n * @param defaultColor Default color.\n */\n @Watch('background')\n @Watch('iconColor')\n assignColor(type: 'icon' | 'label' | 'message') {\n if (this.disabled) return this.isDarkBackground() ? 'neutral-dark' : 'neutral-dark';\n\n const statusColors = {\n success: {\n icon: 'success-dark',\n label: this.isDarkBackground() ? 'success-lighter' : 'success-darker',\n message: this.isDarkBackground() ? 'success-base' : 'success-dark',\n },\n error: {\n icon: 'error-dark',\n label: this.isDarkBackground() ? 'error-lighter' : 'neutral-darker',\n message: this.isDarkBackground() ? 'error-base' : 'error-dark',\n },\n default: {\n icon: this.isDarkIconColor() ? 'neutral-black' : 'neutral-purewhite',\n label: this.isDarkBackground() ? 'neutral-white' : 'neutral-black',\n message: this.isDarkBackground() ? 'primary-lighter' : 'neutral-dark',\n },\n };\n\n return statusColors[this.status][type];\n }\n\n /**\n * Retrieves icon element based on checkbox state.\n */\n getIcon() {\n const iconName = this.indeterminate ? 'minus' : 'check';\n const iconColor = this.assignColor('icon');\n const iconSize = this.size === 'large' ? 20 : 'micro';\n\n return <cura-icon class=\"icon\" name={iconName} size={iconSize} color={iconColor}></cura-icon>;\n }\n\n render() {\n return (\n <Host>\n <div class={this.getClasses()} style={this.styles} onClick={this.handleClick}>\n <div class=\"info\">\n <div class=\"label-wrapper\">\n <cura-label class=\"label\" weight='bold' size={this.size === 'large' ? 'medium' : 'xsmall'} color={this.assignColor('label')}>\n {this.label}\n </cura-label>\n {this.required && <cura-paragraph lineHeight='0%' marginBlock='0' color=\"error-base\" >* </cura-paragraph>}\n </div>\n <cura-label color={this.assignColor('message')} size=\"xsmall\" class=\"message\">\n <slot></slot>\n </cura-label>\n </div>\n <div class={'checkbox'} tabIndex={this.ontabindex}>\n <input\n type=\"checkbox\"\n name={this.name}\n value={this.value}\n disabled={this.disabled}\n required={this.required}\n checked={this.checked}\n indeterminate={this.indeterminate}\n />\n {this.getIcon()}\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"names":["curaButtonOutlineCss","CuraButtonOutlineStyle0","CuraButtonOutline","connectedCallback","this","weights","window","CuraAPI","theme","fonts","getWeights","styles","spacing","getSpacing","colors","getColor","getSize","getFamily","medium","textAlign","setColors","getClasses","classes","_a","size","toLowerCase","iconPosition","iconOnly","disabled","isLoading","justify","name","thema","background","color","forEach","Object","assign","getIcon","iconName","iconSize","h","iconset","getSymbolColor","handleMouseEnter","hovered","handleMouseLeave","fontColor","handleClick","e","preventDefault","href","type","internals","form","submit","reset","render","symbolColor","labelSize","labelSizes","Host","key","target","class","style","onClick","onMouseEnter","onMouseLeave","lineHeight"],"sources":["src/components/buttons/cura-button-outline/cura-button-outline.scss?tag=cura-button-outline&encapsulation=shadow","src/components/buttons/cura-button-outline/cura-button-outline.tsx"],"sourcesContent":["@import \"../../../scss/mixins/buttons.scss\";\n\n:host {\n @include button-host();\n\n button, a {\n @include button-element() {\n background-color: transparent;\n box-sizing: border-box;\n border: none;\n\n &::before {\n content: \"\";\n width: 100%;\n height: 100%;\n position: absolute;\n left: 0px;\n top: 0px;\n box-sizing: border-box;\n border: 2px solid var(--color-dark-neutral-purewhite);\n border-radius: var(--border-radius);\n }\n\n &:not(.disabled):not(.isLoading):hover {\n background-color: var(--color-lighter-color-darker);\n }\n\n &:not(.disabled):not(.inverted):not(.isLoading):active {\n background-color: var(--color-light-color-darker);\n }\n\n };\n\n @include button-sizes();\n\n // Children Elements\n @include button-container();\n @include button-label();\n\n\n @include button-icon();\n\n // Disabled state\n @include button-disabled() {\n &::before {\n border-color: var(--neutral-dark);\n }\n };\n\n // FAB / Icon-only\n @include button-icon-only-behavior();\n\n // Loading State\n @include button-loading();\n\n }\n\n}\n","import { Component, Host, h, Prop, Watch, State, AttachInternals } from '@stencil/core';\nimport { labelSizes } from '../cura-button.definitions';\n\n@Component({\n tag: 'cura-button-outline',\n styleUrl: 'cura-button-outline.scss',\n shadow: true,\n formAssociated: true\n})\nexport class CuraButtonOutline {\n\n @AttachInternals() internals: ElementInternals;\n\n /**\n * Button type: button (default) | submit | reset\n */\n @Prop({ reflect: true }) type: 'button' | 'reset' | 'submit' = 'button';\n\n /**\n * Button size: small | medium | large (default)\n */\n @Prop({ reflect: true }) size: 'small' | 'medium' | 'large' = 'large';\n\n /**\n * Disabled state. Boolean.\n */\n @Prop({ reflect: true }) disabled = false;\n /**\n * Loading state. Boolean.\n */\n @Prop({ reflect: true }) isLoading = false;\n\n /**\n * Name of the icon to be used from iconset.\n */\n @Prop({ reflect: true }) iconName: string;\n /**\n * Custom iconset if needed.\n */\n @Prop({ reflect: true }) iconset = 'default';\n /**\n * Icon position: left (default) | right.\n */\n @Prop({ reflect: true }) iconPosition: 'left' | 'right' = 'left';\n /**\n * Set button to FAB/icon only.\n */\n @Prop({ reflect: true }) iconOnly = false;\n\n /**\n * Property href switch button to link.\n */\n @Prop({ reflect: true }) href: string;\n /**\n * Set target if link.\n */\n @Prop({ reflect: true }) target = \"_self\";\n /**\n * Color base from color scheme. Default: primary.\n */\n @Prop() color = 'primary';\n /**\n * Set the font background to dark or light.\n */\n @Prop() background: 'dark' | 'light' = 'light';\n\n /**\n * Set the font color to dark or light.\n */\n @Prop() fontColor: 'dark' | 'light' = 'dark';\n /**\n * Set text aligment for the button label.\n * Vales: left (default) | center | right.\n */\n @Prop({ reflect: true }) textAlign: 'left' | 'center' | 'right' = 'left';\n\n /**\n * Justify icons and label inside the button.\n * Vales: false (default) | true.\n */\n @Prop({ reflect: true }) justify = false;\n\n @State() styles = {};\n\n @State() hovered = false;\n\n weights;\n\n connectedCallback() {\n this.weights = window.CuraAPI.theme.fonts.getWeights();\n this.styles['--base-spacing'] = window.CuraAPI.theme.spacing.getSpacing();\n this.styles['--neutral-white'] = window.CuraAPI.theme.colors.getColor(`neutral-white`);\n this.styles['--neutral-base'] = window.CuraAPI.theme.colors.getColor(`neutral-base`);\n this.styles['--neutral-dark'] = window.CuraAPI.theme.colors.getColor(`neutral-dark`);\n this.styles['--font-size'] = window.CuraAPI.theme.fonts.getSize();\n this.styles['--font-family'] = window.CuraAPI.theme.fonts.getFamily();\n this.styles['--font-weight-medium'] = this.weights.medium;\n this.styles['--text-align'] = this.textAlign;\n this.setColors();\n }\n\n\n getClasses() {\n const classes = {};\n classes[`${this.size?.toLowerCase()}`] = true;\n classes[`icon-${this.iconPosition.toLowerCase()}`] = true;\n classes[`icon-only`] = this.iconOnly;\n classes['disabled'] = this.disabled;\n classes['isLoading'] = this.isLoading;\n classes['justify'] = this.justify;\n return classes;\n }\n\n @Watch('background')\n @Watch('color')\n setColors() {\n const colors = [\n { name: '--color-dark-neutral-purewhite', thema: `${this.background === 'light' ? `${this.color}-dark` : 'neutral-purewhite'}` },\n { name: '--color-lighter-color-darker', thema: `${this.background === 'light' ? `${this.color}-lighter` : `${this.color}-darker`}` },\n { name: '--color-light-color-darker', thema: `${this.background === 'light' ? `${this.color}-light` : `${this.color}-lighter`}` },\n { name: '--neutral-dark', thema: 'neutral-dark' },\n ]\n\n colors.forEach(color => this.styles[color.name] = window.CuraAPI.theme.colors.getColor(color.thema));\n this.styles = { ...this.styles };\n }\n\n getIcon() {\n if (!this.iconName) return '';\n const iconSize = this.size === 'large' ? 20 : 16;\n\n return <cura-icon name={this.iconName} iconset={this.iconset} size={iconSize} color={this.getSymbolColor()}></cura-icon>;\n }\n\n\n handleMouseEnter() {\n if (this.disabled) return;\n this.hovered = true;\n }\n\n handleMouseLeave() {\n this.hovered = false;\n }\n\n @Watch('fontColor')\n @Watch('color')\n getSymbolColor() {\n if (this.disabled) return 'neutral-dark';\n return this.fontColor === 'light' ? 'neutral-purewhite' : `${this.color}-darker`;\n }\n\n handleClick(e: Event) {\n if (this.disabled || this.isLoading) {\n e.preventDefault();\n return;\n }\n if (!this.href) {\n if (this.type === 'submit' && this.internals.form) this.internals.form.submit();\n if (this.type === 'reset' && this.internals.form) this.internals.form.reset();\n }\n }\n\n render() {\n const symbolColor = this.getSymbolColor();\n const labelSize = labelSizes[this.size] || labelSizes[\"default\"];\n return (\n <Host>\n {this.href ? (\n <a href={this.disabled ? '' : this.href}\n target={this.target}\n class={this.getClasses()}\n style={this.styles}\n onClick={(e) => this.handleClick(e)}\n onMouseEnter={() => this.handleMouseEnter()}\n onMouseLeave={() => this.handleMouseLeave()}>\n <span class=\"button-container\">\n {this.getIcon()}\n <cura-label size={labelSize} lineHeight='normal' color={symbolColor}><slot></slot></cura-label>\n </span>\n <cura-loader-circle size={this.size} color={symbolColor}></cura-loader-circle>\n </a>\n ) : (\n <button class={this.getClasses()}\n style={this.styles}\n disabled={this.disabled || null}\n onClick={(e) => this.handleClick(e)}\n onMouseEnter={() => this.handleMouseEnter()}\n onMouseLeave={() => this.handleMouseLeave()}\n type={this.type}>\n <span class=\"button-container\">\n {this.getIcon()}\n <cura-label size={labelSize} lineHeight='normal' color={symbolColor}><slot></slot></cura-label>\n </span>\n <cura-loader-circle size={this.size} color={symbolColor}></cura-loader-circle>\n </button>\n )}\n </Host>\n );\n }\n\n}\n"],"mappings":"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","ignoreList":[]}