@rededor/cura 1.8.2-alpha.0 → 2.0.0-alpha.4

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 (72) hide show
  1. package/dist/cjs/{cura-accordion_20.cjs.entry.js → cura-accordion_21.cjs.entry.js} +1815 -20
  2. package/dist/cjs/cura-accordion_21.cjs.entry.js.map +1 -0
  3. package/dist/cjs/cura-modal.cjs.entry.js +10 -2
  4. package/dist/cjs/cura-modal.cjs.entry.js.map +1 -1
  5. package/dist/cjs/cura-modal.entry.cjs.js.map +1 -1
  6. package/dist/cjs/cura.cjs.js +1 -1
  7. package/dist/cjs/index-BK9MSAiE.js.map +1 -1
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.css +1 -1
  10. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.js +24 -4
  11. package/dist/collection/components/cura-dropdown-search/cura-dropdown-search.js.map +1 -1
  12. package/dist/collection/components/cura-modal/cura-modal.js +30 -2
  13. package/dist/collection/components/cura-modal/cura-modal.js.map +1 -1
  14. package/dist/collection/components/cura-modal/cura-modal.stories.js +10 -0
  15. package/dist/collection/components/cura-modal/cura-modal.stories.js.map +1 -1
  16. package/dist/collection/components/forms/cura-input-text/cura-input-text.js +1 -1
  17. package/dist/collection/components/forms/cura-select/cura-select.css +3 -148
  18. package/dist/collection/components/forms/cura-select/cura-select.js +103 -11
  19. package/dist/collection/components/forms/cura-select/cura-select.js.map +1 -1
  20. package/dist/collection/components/forms/cura-select-options/cura-select-option.css +15 -0
  21. package/dist/components/cura-calendar.js +1 -1
  22. package/dist/components/cura-dropdown-search.js +25 -5
  23. package/dist/components/cura-dropdown-search.js.map +1 -1
  24. package/dist/components/cura-input-date.js +3 -3
  25. package/dist/components/cura-modal.js +11 -2
  26. package/dist/components/cura-modal.js.map +1 -1
  27. package/dist/components/cura-select-option.js +1 -1
  28. package/dist/components/cura-select.js +1 -1
  29. package/dist/components/p-CvdWbsfO.js +2147 -0
  30. package/dist/components/p-CvdWbsfO.js.map +1 -0
  31. package/dist/components/p-D1cPOZpG.js.map +1 -1
  32. package/dist/components/{p-BGnJiNyu.js → p-DETZu2ie.js} +4 -4
  33. package/dist/components/{p-BGnJiNyu.js.map → p-DETZu2ie.js.map} +1 -1
  34. package/dist/components/{p-DpIu_Oxz.js → p-Dt450DkQ.js} +3 -3
  35. package/dist/components/p-Dt450DkQ.js.map +1 -0
  36. package/dist/cura/cura-modal.entry.esm.js.map +1 -1
  37. package/dist/cura/cura.esm.js +1 -1
  38. package/dist/cura/p-2ab58335.entry.js +2 -0
  39. package/dist/cura/p-2ab58335.entry.js.map +1 -0
  40. package/dist/cura/p-5ed7ce95.entry.js +2 -0
  41. package/dist/cura/p-5ed7ce95.entry.js.map +1 -0
  42. package/dist/cura/p-PPMZr_VE.js.map +1 -1
  43. package/dist/esm/{cura-accordion_20.entry.js → cura-accordion_21.entry.js} +1815 -21
  44. package/dist/esm/cura-accordion_21.entry.js.map +1 -0
  45. package/dist/esm/cura-modal.entry.js +10 -2
  46. package/dist/esm/cura-modal.entry.js.map +1 -1
  47. package/dist/esm/cura.js +1 -1
  48. package/dist/esm/index-OdKytJIH.js.map +1 -1
  49. package/dist/esm/loader.js +1 -1
  50. package/dist/types/components/cura-dropdown-search/cura-dropdown-search.d.ts +2 -0
  51. package/dist/types/components/cura-modal/cura-modal.d.ts +5 -0
  52. package/dist/types/components/cura-modal/cura-modal.stories.d.ts +11 -0
  53. package/dist/types/components/forms/cura-select/cura-select.d.ts +21 -0
  54. package/dist/types/components.d.ts +10 -0
  55. package/package.json +3 -2
  56. package/dist/cjs/cura-accordion_20.cjs.entry.js.map +0 -1
  57. package/dist/cjs/cura-card.cjs.entry.js +0 -81
  58. package/dist/cjs/cura-card.cjs.entry.js.map +0 -1
  59. package/dist/cjs/cura-card.entry.cjs.js.map +0 -1
  60. package/dist/components/p-BTt-pVTn.js +0 -442
  61. package/dist/components/p-BTt-pVTn.js.map +0 -1
  62. package/dist/components/p-DpIu_Oxz.js.map +0 -1
  63. package/dist/cura/cura-card.entry.esm.js.map +0 -1
  64. package/dist/cura/p-d8aeca82.entry.js +0 -2
  65. package/dist/cura/p-d8aeca82.entry.js.map +0 -1
  66. package/dist/cura/p-deb0b764.entry.js +0 -2
  67. package/dist/cura/p-deb0b764.entry.js.map +0 -1
  68. package/dist/cura/p-df7cb250.entry.js +0 -2
  69. package/dist/cura/p-df7cb250.entry.js.map +0 -1
  70. package/dist/esm/cura-accordion_20.entry.js.map +0 -1
  71. package/dist/esm/cura-card.entry.js +0 -79
  72. package/dist/esm/cura-card.entry.js.map +0 -1
@@ -1,2 +0,0 @@
1
- import{r,h as a,H as i}from"./p-PPMZr_VE.js";import"./p-BPKQjAwN.js";const d=":host{display:block;box-sizing:border-box;font-size:var(--font-size);font-family:var(--font-family)}:host ::slotted(*){display:flex;align-items:center;justify-content:center;font-size:var(--font-size);font-family:var(--font-family)}a{display:block;text-decoration:none !important;color:inherit}.solid{background-color:var(--neutral-purewhite);border:2px solid var(--neutral-base);border-radius:12px;overflow:hidden;padding:0px;box-shadow:none}.solid ::slotted(*){border-radius:0}.solid.hasPadding{padding:20px}.solid.hasPadding ::slotted(*){border-radius:4px !important}.solid.hasShadow{border:2px solid var(--neutral-base);box-shadow:0px 1px 4px 0px var(--neutral-black-shadow, rgba(38, 38, 38, 0.16))}.solid.cardLink{background-color:var(--neutral-purewhite);border:2px solid var(--primary-base);border-radius:12px;padding:0px;box-shadow:none;cursor:pointer}.solid.cardLink ::slotted(*){border-radius:0px}.solid.cardLink:hover{border:2px solid var(--primary-lighter) !important}.solid.cardLink.hasPadding{padding:20px}.solid.cardLink.hasPadding ::slotted(*){border-radius:4px !important}.solid.cardLink.hasPadding:hover{border:2px solid var(--primary-lighter) !important}.solid.cardLink.hasShadow{border:2px solid var(--primary-base);box-shadow:0px 4px 8px 0px var(--neutral-black-shadow, rgba(38, 38, 38, 0.16))}.solid.cardLink:not(.hasPadding).hasShadow ::slotted(*){border-radius:12px !important}.solid.cardLink.dark{background-color:var(--neutral-purewhite);border:2px solid var(--neutral-purewhite)}.solid.cardLink.dark:hover{border:2px solid var(--primary-lighter)}.transparent{background-color:transparent;border:0;border-radius:12px;padding:0px;overflow:hidden}.transparent ::slotted(*){border-radius:12px}.transparent.hasPadding{padding:20px}.transparent.hasPadding ::slotted(*){border-radius:4px}.transparent.cardLink{background-color:transparent;border:2px solid var(--primary-base);overflow:hidden;border-radius:12px;padding:0px;box-shadow:none}.transparent.cardLink ::slotted(*){border-radius:0px !important}.transparent.cardLink:hover{border:2px solid var(--primary-lighter) !important}.transparent.cardLink.light{background-color:var(--neutral-purewhite);border:2px solid var(--primary-base)}.transparent.cardLink.light ::slotted(*){border-radius:12px !important}.transparent.cardLink.light:hover{border-color:var(--primary-lighter) !important}.transparent.cardLink.dark{background-color:transparent;border:2px solid var(--neutral-purewhite)}.transparent.cardLink.dark:hover{border:0}.transparent.cardLink.hasPadding{padding:20px}.transparent.cardLink.hasPadding ::slotted(*){border-radius:4px !important}";const t=class{constructor(a){r(this,a);this.hasPadding=true;this.hasShadow=false;this.type="solid";this.colorMode="light";this.target="_self";this.styles={}}connectedCallback(){this.weights=window.CuraAPI.theme.fonts.getWeights();this.styles["--base-spacing"]=window.CuraAPI.theme.spacing.getSpacing();this.styles["--neutral-purewhite"]=window.CuraAPI.theme.colors.getColor(`neutral-purewhite`);this.styles["--neutral-white"]=window.CuraAPI.theme.colors.getColor(`neutral-white`);this.styles["--neutral-base"]=window.CuraAPI.theme.colors.getColor(`neutral-base`);this.styles["--neutral-dark"]=window.CuraAPI.theme.colors.getColor(`neutral-dark`);this.styles["--neutral-black"]=window.CuraAPI.theme.colors.getColor(`neutral-black`);this.styles["--neutral-black-shadow"]=window.CuraAPI.theme.colors.getColor(`neutral-black`,.16);this.styles["--primary-lighter"]=window.CuraAPI.theme.colors.getColor(`primary-lighter`);this.styles["--primary-base"]=window.CuraAPI.theme.colors.getColor(`primary-base`);this.styles["--font-size"]=window.CuraAPI.theme.fonts.getSize();this.styles["--font-family"]=window.CuraAPI.theme.fonts.getFamily();this.styles["--font-weight-medium"]=this.weights.medium}getClasses(){const r={};r[this.type]=true;r[`cardLink`]=this.href;r[this.colorMode]=true;r[`hasPadding`]=this.hasPadding;r[`hasShadow`]=this.hasShadow;return r}render(){return a(i,{key:"9478ce754c108db722dbc5bcbb00a0884b6c6f38",role:this.href?"link":"div"},this.href?a("a",{class:this.getClasses(),target:this.target,style:this.styles,href:this.href},a("slot",null)):a("div",{class:this.getClasses(),style:this.styles},a("slot",null)))}};t.style=d;export{t as cura_card};
2
- //# sourceMappingURL=p-deb0b764.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["curaCardCss","CuraCard","constructor","hostRef","this","hasPadding","hasShadow","type","colorMode","target","styles","connectedCallback","weights","window","CuraAPI","theme","fonts","getWeights","spacing","getSpacing","colors","getColor","getSize","getFamily","medium","getClasses","classes","href","render","h","Host","key","role","class","style"],"sources":["src/components/cura-card/cura-card.scss?tag=cura-card&encapsulation=shadow","src/components/cura-card/cura-card.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/shadows.scss';\n\n:host {\n display: block;\n box-sizing: border-box;\n font-size: var(--font-size);\n font-family: var(--font-family);\n ::slotted(*) {\n display: flex;\n align-items: center;\n justify-content: center;\n font-size: var(--font-size);\n font-family: var(--font-family);\n }\n \n}\n\na {\n display: block;\n text-decoration: none !important;\n color: inherit;\n}\n.solid {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-base);\n border-radius: 12px;\n overflow: hidden;\n padding: 0px;\n box-shadow: none;\n\n ::slotted(*) {\n \n border-radius: 0 ;\n }\n &.hasPadding {\n padding: 20px;\n ::slotted(*) {\n border-radius: 4px !important;\n }\n }\n\n &.hasShadow {\n border: 2px solid var(--neutral-base);\n\n @include shadow-level2(--neutral-black-shadow);\n }\n\n &.cardLink {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--primary-base);\n border-radius: 12px;\n padding: 0px;\n box-shadow: none;\n cursor: pointer;\n\n ::slotted(*) {\n border-radius: 0px;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n &.hasPadding {\n padding: 20px;\n ::slotted(*) {\n border-radius: 4px !important;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n }\n\n &.hasShadow {\n border: 2px solid var(--primary-base);\n\n @include shadow-level3(--neutral-black-shadow);\n }\n &:not(.hasPadding).hasShadow {\n ::slotted(*) {\n border-radius: 12px !important;\n }\n }\n\n &.dark {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-purewhite);\n &:hover {\n border: 2px solid var(--primary-lighter);\n }\n }\n }\n}\n\n.transparent {\n background-color: transparent;\n border: 0;\n border-radius: 12px;\n padding: 0px;\n overflow: hidden;\n ::slotted(*) {\n border-radius: 12px;\n }\n\n &.hasPadding {\n padding: 20px;\n\n ::slotted(*) {\n border-radius: 4px;\n }\n }\n\n &.cardLink {\n background-color: transparent;\n border: 2px solid var(--primary-base);\n overflow: hidden;\n border-radius: 12px;\n padding: 0px;\n box-shadow: none;\n ::slotted(*) {\n border-radius: 0px !important;\n }\n &:hover {\n border: 2px solid var(--primary-lighter) !important;\n }\n\n &.light {\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--primary-base);\n ::slotted(*) {\n border-radius: 12px !important;\n }\n &:hover {\n border-color: var(--primary-lighter) !important;\n }\n }\n &.dark {\n background-color: transparent;\n\n border: 2px solid var(--neutral-purewhite);\n\n &:hover {\n border: 0;\n }\n }\n &.hasPadding {\n padding: 20px;\n\n ::slotted(*) {\n border-radius: 4px !important;\n }\n }\n }\n}\n","import { Component, Host, Prop, State, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-card',\n styleUrl: 'cura-card.scss',\n shadow: true,\n})\nexport class CuraCard {\n /**\n * Determines whether the card should have padding.\n * @type {boolean}\n * @default false\n */\n @Prop({ mutable: true }) hasPadding: boolean = true;\n\n /**\n * Determines whether the card should have a shadow effect.\n * @type {boolean}\n * @default false\n */\n @Prop({ mutable: true }) hasShadow: boolean = false;\n\n /**\n * Sets the type of the card background.\n * - 'solid': A solid background.\n * - 'transparent': A transparent background.\n * @type {'solid' | 'transparent'}\n * @default 'solid'\n */\n @Prop({ mutable: true }) type: 'solid' | 'transparent' = 'solid';\n\n /**\n * Sets the color mode of the card.\n * - 'light': Light mode for the card.\n * - 'dark': Dark mode for the card.\n * @type {'light' | 'dark'}\n * @default 'light'\n */\n @Prop({ mutable: true }) colorMode: 'light' | 'dark' = 'light';\n\n /**\n * The URL that the card should link to (if set).\n * If not set, the card acts as a normal card.\n * @type {string | undefined}\n */\n @Prop({ mutable: true, reflect: true }) href?: string;\n\n /**\n * The target attribute for the link.\n * Applicable only if `href` is set.\n * @type {string}\n * @default '_self'\n */\n @Prop({ reflect: true }) target: string = '_self';\n\n @State() styles: any = {};\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-purewhite'] = window.CuraAPI.theme.colors.getColor(`neutral-purewhite`);\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['--neutral-black'] = window.CuraAPI.theme.colors.getColor(`neutral-black`);\n this.styles['--neutral-black-shadow'] = window.CuraAPI.theme.colors.getColor(`neutral-black`, 0.16);\n this.styles['--primary-lighter'] = window.CuraAPI.theme.colors.getColor(`primary-lighter`);\n this.styles['--primary-base'] = window.CuraAPI.theme.colors.getColor(`primary-base`);\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 }\n\n getClasses() {\n const classes = {};\n classes[this.type] = true;\n classes[`cardLink`] = this.href;\n classes[this.colorMode] = true;\n classes[`hasPadding`] = this.hasPadding;\n classes[`hasShadow`] = this.hasShadow;\n return classes;\n }\n\n render() {\n return (\n <Host role={this.href ? 'link' : 'div'}>\n {this.href ? (\n <a class={this.getClasses()} target={this.target} style={this.styles} href={this.href}>\n <slot></slot>\n </a>\n ) : (\n <div class={this.getClasses()} style={this.styles}>\n <slot></slot>\n </div>\n )}\n </Host>\n );\n }\n}\n"],"mappings":"qEAAA,MAAMA,EAAc,ikF,MCOPC,EAAQ,MALrB,WAAAC,CAAAC,G,UAW2BC,KAAUC,WAAY,KAOtBD,KAASE,UAAY,MASrBF,KAAIG,KAA4B,QAShCH,KAASI,UAAqB,QAe9BJ,KAAMK,OAAW,QAEjCL,KAAMM,OAAQ,EA6CxB,CAzCC,iBAAAC,GACEP,KAAKQ,QAAUC,OAAOC,QAAQC,MAAMC,MAAMC,aAC1Cb,KAAKM,OAAO,kBAAoBG,OAAOC,QAAQC,MAAMG,QAAQC,aAC7Df,KAAKM,OAAO,uBAAyBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,qBAC1EjB,KAAKM,OAAO,mBAAqBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,iBACtEjB,KAAKM,OAAO,kBAAoBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,gBACrEjB,KAAKM,OAAO,kBAAoBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,gBACrEjB,KAAKM,OAAO,mBAAqBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,iBACtEjB,KAAKM,OAAO,0BAA4BG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,gBAAiB,KAC9FjB,KAAKM,OAAO,qBAAuBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,mBACxEjB,KAAKM,OAAO,kBAAoBG,OAAOC,QAAQC,MAAMK,OAAOC,SAAS,gBACrEjB,KAAKM,OAAO,eAAiBG,OAAOC,QAAQC,MAAMC,MAAMM,UACxDlB,KAAKM,OAAO,iBAAmBG,OAAOC,QAAQC,MAAMC,MAAMO,YAC1DnB,KAAKM,OAAO,wBAA0BN,KAAKQ,QAAQY,M,CAGrD,UAAAC,GACE,MAAMC,EAAU,GAChBA,EAAQtB,KAAKG,MAAQ,KACrBmB,EAAQ,YAActB,KAAKuB,KAC3BD,EAAQtB,KAAKI,WAAa,KAC1BkB,EAAQ,cAAgBtB,KAAKC,WAC7BqB,EAAQ,aAAetB,KAAKE,UAC5B,OAAOoB,C,CAGT,MAAAE,GACE,OACEC,EAACC,EAAI,CAAAC,IAAA,2CAACC,KAAM5B,KAAKuB,KAAO,OAAS,OAC9BvB,KAAKuB,KACJE,EAAG,KAAAI,MAAO7B,KAAKqB,aAAchB,OAAQL,KAAKK,OAAQyB,MAAO9B,KAAKM,OAAQiB,KAAMvB,KAAKuB,MAC/EE,EAAA,cAGFA,EAAA,OAAKI,MAAO7B,KAAKqB,aAAcS,MAAO9B,KAAKM,QACzCmB,EAAA,c","ignoreList":[]}
@@ -1,2 +0,0 @@
1
- import{r as a,c as e,h as t,H as i}from"./p-PPMZr_VE.js";import"./p-BPKQjAwN.js";const s=":host{display:block}.modal{position:fixed;height:100%;width:100%;top:var(--top-offset);bottom:var(--bottom-offset);left:var(--left-offset);right:var(--right-offset);z-index:-1;margin-top:var(--offset-top)}.modal.open{z-index:var(--zIndex)}.modal.open .backdrop,.modal.open .wrapper{opacity:1;visibility:visible;animation:fadeIn 0.3s ease-out}.container{display:flex;align-items:center;justify-content:center}.backdrop,.wrapper{opacity:0;visibility:hidden;transition:opacity 0.3s ease, visibility 0.3s ease}.backdrop{background-color:var(--background-color);z-index:calc(var(--zIndex) - 10);animation:fadeIn 0.3s ease-out}.wrapper{position:fixed;background-color:var(--neutral-purewhite);border:2px solid var(--neutral-light);border-radius:calc(var(--cura-spacing-base) * 3px);max-width:600px;min-width:200px;padding:calc(calc(var(--cura-spacing-base) * 1px) / 2) calc(var(--cura-spacing-base) * 4px) calc(var(--cura-spacing-base) * 4px) calc(var(--cura-spacing-base) * 4px);z-index:var(--zIndex);box-shadow:0px 8px 16px 0px var(--neutral-black-shadow-4, rgba(38, 38, 38, 0.12));transform:scale(0.95);transition:transform 0.3s ease-out, opacity 0.3s ease, visibility 0.3s ease}.wrapper ::slotted(*){max-height:80vh;overflow:auto;padding-right:calc(var(--cura-spacing-base) * 5px)}.modal.open .wrapper{transform:scale(1);opacity:1;visibility:visible}.close{justify-self:flex-end;padding-top:calc(var(--cura-spacing-base) * 4px);background:none;border:none;cursor:pointer}.close.mobile{display:none}.close.desktop{display:flex;padding:0;margin-right:-8px}@media (max-width: 768px){.wrapper{position:fixed;bottom:0px;width:80%;padding-top:calc(var(--cura-spacing-base) * 4px);padding-bottom:0px;border-radius:calc(var(--cura-spacing-base) * 3px) calc(var(--cura-spacing-base) * 3px) 0px 0px;border-bottom:none}.close{align-items:center;border-top:1px dashed var(--neutral-light);margin-top:calc(var(--cura-spacing-base) * 4px);padding:calc(var(--cura-spacing-base) * 2px) 0px;justify-content:center;width:100%}.close.mobile{display:flex;gap:calc(var(--cura-spacing-base) * 2px)}.close.desktop{display:none}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}@keyframes fadeOut{from{opacity:1}to{opacity:0}}";const o=class{constructor(t){a(this,t);this.modalClose=e(this,"modalClose");this.open=false;this.background="light";this.top=0;this.bottom=0;this.left=0;this.right=0;this.mobileCloseLabel="Fechar";this.zindex="100";this.styles={};this.handleCloseOnEsc=a=>{if(a.key!=="Escape"||!this.open){return}this.open=false;this.modalClose.emit()};this.handleClose=()=>{this.modalClose.emit();this.open=false}}setColors(){const a={dark:window.CuraAPI.theme.colors.getColor("neutral-black",.4),light:window.CuraAPI.theme.colors.getColor("primary-darker",.8)};this.styles=Object.assign(Object.assign({},this.styles),{"--background-color":a[this.background]})}setOffset(a,e){this.styles=Object.assign(Object.assign({},this.styles),{[`--${a}-offset`]:`${e}px`})}setTop(){this.setOffset("top",this.top)}setBottom(){this.setOffset("bottom",this.bottom)}setLeft(){this.setOffset("left",this.left)}setRight(){this.setOffset("right",this.right)}connectedCallback(){this.styles=Object.assign(Object.assign({},this.styles),{"--neutral-purewhite":window.CuraAPI.theme.colors.getColor("neutral-purewhite"),"--neutral-light":window.CuraAPI.theme.colors.getColor("neutral-light"),"--base-spacing":window.CuraAPI.theme.spacing.getSpacing()});this.setColors();this.setTop();this.setBottom();this.setLeft();this.setRight()}disconnectedCallback(){window.removeEventListener("keydown",this.handleCloseOnEsc)}componentDidLoad(){window.addEventListener("keydown",this.handleCloseOnEsc)}render(){return t(i,{key:"4ccdb55c36abada0f1a7c8f44b79603e3e3432cc",role:"dialog","aria-modal":"true",style:{"--zIndex":this.zindex}},t("div",{key:"1b7248b7549a903a7a9b08aa219f209e0f159d30",class:this.open?"modal container open":"modal container",style:this.styles},t("div",{key:"6977bffb5232d6e45d217bf2db4f61748daf7ccf",class:this.open?"modal backdrop open":"modal backdrop",onClick:this.handleClose}),t("div",{key:"71f7c2cf8c56d4f0fdf443209e0f5e96e285e36e",class:"wrapper"},t("div",{key:"80b99d594ee94b214318479e815194be75f3fea7",class:"close desktop"},t("cura-button-transparent",{key:"9abea3d67b08611313ee28b44bf6775a37b9ab79",iconName:"close",color:"error",size:"small",onClick:this.handleClose,iconOnly:true})),t("slot",{key:"85364906c3b59f2ac7b95cd316babff55de10a0f"}),t("div",{key:"a4106cee880560a7fdcb92b63f98feefbe8f283a",class:"close mobile",onClick:this.handleClose},t("cura-button-transparent",{key:"794ab5cfdece8aa94ff85d37655a83c9df7a854a",color:"error",iconName:"close",size:"small"},this.mobileCloseLabel)))))}static get watchers(){return{background:["setColors"],top:["setTop"],bottom:["setBottom"],left:["setLeft"],right:["setRight"]}}};o.style=s;export{o as cura_modal};
2
- //# sourceMappingURL=p-df7cb250.entry.js.map
@@ -1 +0,0 @@
1
- {"version":3,"names":["curaModalCss","CuraModal","constructor","hostRef","this","open","background","top","bottom","left","right","mobileCloseLabel","zindex","styles","handleCloseOnEsc","evt","key","modalClose","emit","handleClose","setColors","backgroundTheme","dark","window","CuraAPI","theme","colors","getColor","light","Object","assign","setOffset","name","value","setTop","setBottom","setLeft","setRight","connectedCallback","spacing","getSpacing","disconnectedCallback","removeEventListener","componentDidLoad","addEventListener","render","h","Host","role","style","class","onClick","iconName","color","size","iconOnly"],"sources":["src/components/cura-modal/cura-modal.scss?tag=cura-modal&encapsulation=shadow","src/components/cura-modal/cura-modal.tsx"],"sourcesContent":["@import '../../../src/scss/mixins/spacing.scss';\n@import '../../../src/scss/mixins/shadows.scss';\n@import '../../../src/scss/mixins/responsive.scss';\n@import '../../../src/scss/mixins/animations.scss';\n\n:host {\n display: block;\n}\n\n.modal {\n position: fixed;\n height: 100%;\n width: 100%;\n top: var(--top-offset);\n bottom: var(--bottom-offset);\n left: var(--left-offset);\n right: var(--right-offset);\n z-index: -1;\n margin-top: var(--offset-top);\n\n &.open {\n z-index: var(--zIndex);\n\n .backdrop,\n .wrapper {\n opacity: 1;\n visibility: visible;\n animation: fadeIn 0.3s ease-out;\n }\n }\n}\n\n.container {\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.backdrop,\n.wrapper {\n opacity: 0;\n visibility: hidden;\n transition: opacity 0.3s ease, visibility 0.3s ease;\n}\n\n.backdrop {\n background-color: var(--background-color);\n z-index: calc(var(--zIndex) - 10);\n animation: fadeIn 0.3s ease-out;\n}\n\n.wrapper {\n position: fixed;\n background-color: var(--neutral-purewhite);\n border: 2px solid var(--neutral-light);\n border-radius: #{$spacing-xxxs};\n max-width: 600px;\n min-width: 200px;\n padding: calc(#{$spacing-tiny} / 2) #{$spacing-xxs} #{$spacing-xxs} #{$spacing-xxs};\n z-index: var(--zIndex);\n\n @include shadow-level4();\n\n transform: scale(0.95);\n transition: transform 0.3s ease-out, opacity 0.3s ease, visibility 0.3s ease;\n\n ::slotted(*) {\n max-height: 80vh;\n overflow: auto;\n padding-right: #{$spacing-xs};\n }\n}\n\n.modal.open .wrapper {\n transform: scale(1);\n opacity: 1;\n visibility: visible;\n}\n\n.close {\n justify-self: flex-end;\n padding-top: #{$spacing-xxs};\n background: none;\n border: none;\n cursor: pointer;\n\n &.mobile {\n display: none;\n }\n\n &.desktop {\n display: flex;\n padding: 0;\n margin-right: -8px;\n }\n}\n\n@include mobile-only() {\n .wrapper {\n position: fixed;\n bottom: #{$spacing-none};\n width: 80%;\n padding-top: #{$spacing-xxs};\n padding-bottom: #{$spacing-none};\n border-radius: #{$spacing-xxxs} #{$spacing-xxxs} #{$spacing-none} #{$spacing-none};\n border-bottom: none;\n }\n\n .close {\n align-items: center;\n border-top: 1px dashed var(--neutral-light);\n margin-top: #{$spacing-xxs};\n padding: #{$spacing-mini} #{$spacing-none};\n justify-content: center;\n width: 100%;\n\n &.mobile {\n display: flex;\n gap: #{$spacing-mini};\n }\n\n &.desktop {\n display: none;\n }\n }\n}\n\n@include fadeIn();\n@include fadeOut();\n","import { Component, Event, EventEmitter, Host, Prop, State, Watch, h } from '@stencil/core';\n\n@Component({\n tag: 'cura-modal',\n styleUrl: 'cura-modal.scss',\n shadow: true,\n})\nexport class CuraModal {\n /**\n * Property open to control modal visibility.\n * Default: false\n */\n @Prop({ mutable: true, reflect: true }) open?: boolean = false;\n /**\n * Property background to control modal backdrop color.\n * Default: light\n */\n @Prop() background?: 'dark' | 'light' = 'light';\n /**\n * Property top to control modal top position.\n * Default: 0px\n */\n @Prop() top?: number = 0;\n /**\n * Property bottom to control modal bottom position.\n * Default: 0px\n */\n @Prop() bottom?: number = 0;\n /**\n * Property left to control modal left position.\n * Default: 0px\n */\n @Prop() left?: number = 0;\n /**\n * Property right to control modal right position.\n * Default: 0px\n */\n @Prop() right?: number = 0;\n /**\n * Defines the label for the close button when the modal is viewed on mobile.\n * Default: Fechar\n */\n @Prop({ reflect: true }) mobileCloseLabel: string = 'Fechar';\n /**\n * Property zindex to control the z-index value of the component.\n * Default: 100\n */\n @Prop({ reflect: true }) zindex: string = '100';\n /**\n * Event close to handle modal close.\n */\n @Event({ eventName: 'modalClose' }) modalClose: EventEmitter<void>;\n\n @State() styles = {};\n\n @Watch('background')\n setColors() {\n const backgroundTheme = {\n dark: window.CuraAPI.theme.colors.getColor('neutral-black', 0.4),\n light: window.CuraAPI.theme.colors.getColor('primary-darker', 0.8),\n };\n\n this.styles = {\n ...this.styles,\n '--background-color': backgroundTheme[this.background],\n };\n }\n\n setOffset(name: string, value: number) {\n this.styles = {\n ...this.styles,\n [`--${name}-offset`]: `${value}px`,\n };\n }\n\n @Watch('top')\n setTop() {\n this.setOffset('top', this.top);\n }\n\n @Watch('bottom')\n setBottom() {\n this.setOffset('bottom', this.bottom);\n }\n\n @Watch('left')\n setLeft() {\n this.setOffset('left', this.left);\n }\n\n @Watch('right')\n setRight() {\n this.setOffset('right', this.right);\n }\n\n handleCloseOnEsc = (evt: KeyboardEvent) => {\n if (evt.key !== 'Escape' || !this.open) {\n return;\n }\n\n this.open = false;\n this.modalClose.emit();\n };\n\n connectedCallback() {\n this.styles = {\n ...this.styles,\n '--neutral-purewhite': window.CuraAPI.theme.colors.getColor('neutral-purewhite'),\n '--neutral-light': window.CuraAPI.theme.colors.getColor('neutral-light'),\n '--base-spacing': window.CuraAPI.theme.spacing.getSpacing(),\n };\n this.setColors();\n this.setTop();\n this.setBottom();\n this.setLeft();\n this.setRight();\n }\n\n private handleClose = () => {\n this.modalClose.emit();\n this.open = false;\n };\n\n disconnectedCallback() {\n window.removeEventListener('keydown', this.handleCloseOnEsc);\n }\n\n componentDidLoad() {\n window.addEventListener('keydown', this.handleCloseOnEsc);\n }\n\n render() {\n return (\n <Host role=\"dialog\" aria-modal=\"true\" style={{ '--zIndex': this.zindex }}>\n <div class={this.open ? 'modal container open' : 'modal container'} style={this.styles}>\n <div class={this.open ? 'modal backdrop open' : 'modal backdrop'} onClick={this.handleClose}></div>\n <div class=\"wrapper\">\n {/* Desktop button */}\n <div class=\"close desktop\">\n <cura-button-transparent iconName=\"close\" color=\"error\" size=\"small\" onClick={this.handleClose} iconOnly></cura-button-transparent>\n </div>\n <slot></slot>\n {/* Mobile button */}\n <div class=\"close mobile\" onClick={this.handleClose}>\n <cura-button-transparent color=\"error\" iconName=\"close\" size=\"small\">\n {this.mobileCloseLabel}\n </cura-button-transparent>\n </div>\n </div>\n </div>\n </Host>\n );\n }\n}\n"],"mappings":"iFAAA,MAAMA,EAAe,ypE,MCORC,EAAS,MALtB,WAAAC,CAAAC,G,+CAU0CC,KAAIC,KAAa,MAKjDD,KAAUE,WAAsB,QAKhCF,KAAGG,IAAY,EAKfH,KAAMI,OAAY,EAKlBJ,KAAIK,KAAY,EAKhBL,KAAKM,MAAY,EAKAN,KAAgBO,iBAAW,SAK3BP,KAAMQ,OAAW,MAMjCR,KAAMS,OAAG,GA0ClBT,KAAAU,iBAAoBC,IAClB,GAAIA,EAAIC,MAAQ,WAAaZ,KAAKC,KAAM,CACtC,M,CAGFD,KAAKC,KAAO,MACZD,KAAKa,WAAWC,MAAM,EAiBhBd,KAAWe,YAAG,KACpBf,KAAKa,WAAWC,OAChBd,KAAKC,KAAO,KAAK,CAiCpB,CAjGC,SAAAe,GACE,MAAMC,EAAkB,CACtBC,KAAMC,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,gBAAiB,IAC5DC,MAAOL,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,iBAAkB,KAGhEvB,KAAKS,OAAMgB,OAAAC,OAAAD,OAAAC,OAAA,GACN1B,KAAKS,QACR,sBAAsBQ,EAAgBjB,KAAKE,a,CAI/C,SAAAyB,CAAUC,EAAcC,GACtB7B,KAAKS,OAAMgB,OAAAC,OAAAD,OAAAC,OAAA,GACN1B,KAAKS,QACR,EAAC,KAAKmB,YAAgB,GAAGC,O,CAK7B,MAAAC,GACE9B,KAAK2B,UAAU,MAAO3B,KAAKG,I,CAI7B,SAAA4B,GACE/B,KAAK2B,UAAU,SAAU3B,KAAKI,O,CAIhC,OAAA4B,GACEhC,KAAK2B,UAAU,OAAQ3B,KAAKK,K,CAI9B,QAAA4B,GACEjC,KAAK2B,UAAU,QAAS3B,KAAKM,M,CAY/B,iBAAA4B,GACElC,KAAKS,OACAgB,OAAAC,OAAAD,OAAAC,OAAA,GAAA1B,KAAKS,QAAM,CACd,sBAAuBU,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,qBAC5D,kBAAmBJ,OAAOC,QAAQC,MAAMC,OAAOC,SAAS,iBACxD,iBAAkBJ,OAAOC,QAAQC,MAAMc,QAAQC,eAEjDpC,KAAKgB,YACLhB,KAAK8B,SACL9B,KAAK+B,YACL/B,KAAKgC,UACLhC,KAAKiC,U,CAQP,oBAAAI,GACElB,OAAOmB,oBAAoB,UAAWtC,KAAKU,iB,CAG7C,gBAAA6B,GACEpB,OAAOqB,iBAAiB,UAAWxC,KAAKU,iB,CAG1C,MAAA+B,GACE,OACEC,EAACC,EAAI,CAAA/B,IAAA,2CAACgC,KAAK,SAAoB,oBAAOC,MAAO,CAAE,WAAY7C,KAAKQ,SAC9DkC,EAAA,OAAA9B,IAAA,2CAAKkC,MAAO9C,KAAKC,KAAO,uBAAyB,kBAAmB4C,MAAO7C,KAAKS,QAC9EiC,EAAA,OAAA9B,IAAA,2CAAKkC,MAAO9C,KAAKC,KAAO,sBAAwB,iBAAkB8C,QAAS/C,KAAKe,cAChF2B,EAAK,OAAA9B,IAAA,2CAAAkC,MAAM,WAETJ,EAAK,OAAA9B,IAAA,2CAAAkC,MAAM,iBACTJ,EAAyB,2BAAA9B,IAAA,2CAAAoC,SAAS,QAAQC,MAAM,QAAQC,KAAK,QAAQH,QAAS/C,KAAKe,YAAaoC,SAAQ,QAE1GT,EAAa,QAAA9B,IAAA,6CAEb8B,EAAK,OAAA9B,IAAA,2CAAAkC,MAAM,eAAeC,QAAS/C,KAAKe,aACtC2B,EAAyB,2BAAA9B,IAAA,2CAAAqC,MAAM,QAAQD,SAAS,QAAQE,KAAK,SAC1DlD,KAAKO,qB","ignoreList":[]}