@paperless/core 2.0.1-beta.144 → 2.0.1-beta.146
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.
- package/CHANGELOG.md +22 -0
- package/dist/build/p-0514f045.entry.js +2 -0
- package/dist/build/p-0514f045.entry.js.map +1 -0
- package/dist/build/p-0875bbbb.entry.js +2 -0
- package/dist/build/p-0875bbbb.entry.js.map +1 -0
- package/dist/build/p-4b479552.entry.js +2 -0
- package/dist/build/p-4b479552.entry.js.map +1 -0
- package/dist/build/{p-8324a388.js → p-52a71685.js} +1 -1
- package/dist/build/p-attachment.entry.esm.js.map +1 -1
- package/dist/build/p-helper.p-tooltip.entry.esm.js.map +1 -1
- package/dist/build/p-info-panel.entry.esm.js.map +1 -1
- package/dist/build/paperless.esm.js +1 -1
- package/dist/cjs/p-attachment.cjs.entry.js +13 -8
- package/dist/cjs/p-attachment.cjs.entry.js.map +1 -1
- package/dist/cjs/p-attachment.entry.cjs.js.map +1 -1
- package/dist/cjs/p-helper.p-tooltip.entry.cjs.js.map +1 -1
- package/dist/cjs/p-helper_2.cjs.entry.js +4 -4
- package/dist/cjs/p-helper_2.cjs.entry.js.map +1 -1
- package/dist/cjs/p-info-panel.cjs.entry.js +2 -2
- package/dist/cjs/p-info-panel.cjs.entry.js.map +1 -1
- package/dist/cjs/p-info-panel.entry.cjs.js.map +1 -1
- package/dist/collection/components/atoms/info-panel/info-panel.component.css +1 -1
- package/dist/collection/components/atoms/info-panel/info-panel.component.js +2 -2
- package/dist/collection/components/atoms/info-panel/info-panel.component.js.map +1 -1
- package/dist/collection/components/atoms/tooltip/tooltip.component.css +1 -1
- package/dist/collection/components/atoms/tooltip/tooltip.component.js +3 -3
- package/dist/collection/components/atoms/tooltip/tooltip.component.js.map +1 -1
- package/dist/collection/components/molecules/attachment/attachment.component.css +1 -1
- package/dist/collection/components/molecules/attachment/attachment.component.js +12 -7
- package/dist/collection/components/molecules/attachment/attachment.component.js.map +1 -1
- package/dist/components/{p-BW7hL0xA.js → p-C7SA9Zu6.js} +4 -4
- package/dist/components/{p-BW7hL0xA.js.map → p-C7SA9Zu6.js.map} +1 -1
- package/dist/components/{p-DO22qLlU.js → p-D07Uh9cR.js} +6 -6
- package/dist/components/p-D07Uh9cR.js.map +1 -0
- package/dist/components/{p-OySo5x8C.js → p-DnE_NWa3.js} +5 -5
- package/dist/components/{p-OySo5x8C.js.map → p-DnE_NWa3.js.map} +1 -1
- package/dist/components/p-attachment.js +16 -11
- package/dist/components/p-attachment.js.map +1 -1
- package/dist/components/p-datepicker.js +4 -4
- package/dist/components/p-field-container.js +1 -1
- package/dist/components/p-field.js +1 -1
- package/dist/components/p-helper.js +1 -1
- package/dist/components/p-info-panel.js +2 -2
- package/dist/components/p-info-panel.js.map +1 -1
- package/dist/components/p-select.js +4 -4
- package/dist/components/p-table-header.js +1 -1
- package/dist/components/p-table.js +5 -5
- package/dist/components/p-tooltip.js +1 -1
- package/dist/components/{p-BWh9awE2.js → p-txMtX36J.js} +6 -6
- package/dist/components/{p-BWh9awE2.js.map → p-txMtX36J.js.map} +1 -1
- package/dist/components/{p-BBE-sSG0.js → p-v8w9H3NB.js} +3 -3
- package/dist/components/{p-BBE-sSG0.js.map → p-v8w9H3NB.js.map} +1 -1
- package/dist/esm/p-attachment.entry.js +13 -8
- package/dist/esm/p-attachment.entry.js.map +1 -1
- package/dist/esm/p-helper.p-tooltip.entry.js.map +1 -1
- package/dist/esm/p-helper_2.entry.js +4 -4
- package/dist/esm/p-helper_2.entry.js.map +1 -1
- package/dist/esm/p-info-panel.entry.js +2 -2
- package/dist/esm/p-info-panel.entry.js.map +1 -1
- package/dist/index.html +1 -1
- package/dist/paperless/p-0514f045.entry.js +2 -0
- package/dist/paperless/p-0514f045.entry.js.map +1 -0
- package/dist/paperless/p-0875bbbb.entry.js +2 -0
- package/dist/paperless/p-0875bbbb.entry.js.map +1 -0
- package/dist/paperless/p-4b479552.entry.js +2 -0
- package/dist/paperless/p-4b479552.entry.js.map +1 -0
- package/dist/paperless/p-attachment.entry.esm.js.map +1 -1
- package/dist/paperless/p-helper.p-tooltip.entry.esm.js.map +1 -1
- package/dist/paperless/p-info-panel.entry.esm.js.map +1 -1
- package/dist/paperless/paperless.esm.js +1 -1
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/dist/types/components.d.ts +2 -10
- package/package.json +1 -1
- package/dist/build/p-4953f4a9.entry.js +0 -2
- package/dist/build/p-4953f4a9.entry.js.map +0 -1
- package/dist/build/p-c7139e78.entry.js +0 -2
- package/dist/build/p-c7139e78.entry.js.map +0 -1
- package/dist/build/p-e0156f45.entry.js +0 -2
- package/dist/build/p-e0156f45.entry.js.map +0 -1
- package/dist/components/p-DO22qLlU.js.map +0 -1
- package/dist/paperless/p-4953f4a9.entry.js +0 -2
- package/dist/paperless/p-4953f4a9.entry.js.map +0 -1
- package/dist/paperless/p-c7139e78.entry.js +0 -2
- package/dist/paperless/p-c7139e78.entry.js.map +0 -1
- package/dist/paperless/p-e0156f45.entry.js +0 -2
- package/dist/paperless/p-e0156f45.entry.js.map +0 -1
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,F as a}from"./p-DhGo7hbh.js";import{c as r}from"./p-CBWjHURv.js";import{h as o,f as s}from"./p-B3sNjfzc.js";import{c as n}from"./p-CT54OXR2.js";import"./p-ChV9xqsO.js";const d=".block{display:block!important}*{box-sizing:border-box}:host{display:block;width:100%}.static{position:static!important}.flex{display:flex!important}.hidden{display:none!important}.h-8{height:2rem!important}.w-full{width:100%!important}.min-w-0{min-width:0!important}.flex-1{flex:1 1 0%!important}.items-start{align-items:flex-start!important}.items-center{align-items:center!important}.justify-start{justify-content:flex-start!important}.gap-2{gap:.5rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.whitespace-nowrap{white-space:nowrap!important}.rounded-lg{border-radius:.5rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-black-teal-100{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.border-negative-red{--tw-border-opacity:1!important;border-color:rgb(230 30 30/var(--tw-border-opacity,1))!important}.bg-white-600{--tw-bg-opacity:1!important;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-black-teal-200{--tw-text-opacity:1!important;color:rgb(154 170 167/var(--tw-text-opacity,1))!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.text-negative-red{--tw-text-opacity:1!important;color:rgb(230 30 30/var(--tw-text-opacity,1))!important}.empty\\:hidden:empty{display:none!important}.peer:empty~.peer-empty\\:block{display:block!important}@media (min-width:64rem){.desktop-xs\\:hidden{display:none!important}}";const l=r(["flex flex-1 items-center justify-start gap-2","h-8 min-w-0 px-2 rounded-lg","border border-solid bg-white-600"],{variants:{error:{false:"bg-white-600 border-black-teal-100 text-black-teal-200",true:"border-negative-red"}}});const p=class{constructor(i){t(this,i);this.upload=e(this,"upload",3);this.download=e(this,"download",3);this.delete=e(this,"delete",3)}enableCameraOnMobile=false;value;fileId;accept=null;label;helper;required=true;mode="read";placeholder="Upload a file...";cameraTooltip="Camera";downloadTooltip="Download";uploadTooltip="Upload";deleteTooltip="Delete";loading=false;error;upload;download;delete;_fileRef;_cameraFileRef;render(){let t=i("p-icon",{key:"98d1184d2cd2c229ec68045e1a57ebc6e77b771c",class:"text-black-teal-300",variant:"attachment"});if(this.error){t=i("p-icon",{key:"6bdf7a757ba3d4f9614ae0ff1d0ae4aab23bed94",variant:"warning",class:"text-negative-red"})}const e=o();const r="min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-sm";return i(a,{key:"d0c314631138f0418a71130e3506c9c24bb11f3e"},i("p-field-container",{key:"f11e3dc93b47c63025abde1bfc03f0cc64b6a050",variant:"write",label:this.label,helper:this.helper,error:this.error,required:this.required,forceShowTooltip:!!this.error?.length},i("div",{key:"dd8fb0529546118b6e39215f83bee385bb413aec",slot:"content",class:"flex w-full items-start gap-2"},i("div",{key:"b9263a22549e5cef936ac178b2c8277caa96ffc8",class:l({error:!!this.error?.length})},t,i("span",{key:"47cc0ed86d0996a2575785f05f93e7e8075a0a7f",class:n(r,"peer empty:hidden")},this.value),i("span",{key:"6a6c0feccdff8f71924e2461ec011ff6379f3556",class:n(r,"hidden peer-empty:block")},this.placeholder)),i("p-tooltip",{key:"6d4fbee5737e6bfbcd03d202e4f8b7606fa4eded",content:this.mode==="read"?this.downloadTooltip:this.value?.length?this.deleteTooltip:this.uploadTooltip},i("p-button",{key:"b493da0c5ac7ae1bd791b8fc72d272cb5b10a42a",slot:"trigger",variant:"secondary",iconOnly:true,icon:this.mode==="read"?"download":this.value?.length?"trash":"upload",disabled:this.loading,loading:this.loading,onOnClick:()=>this.mode==="write"&&!this.value?.length?this._uploadClick():(this.mode==="read"?this.download:this.delete).emit()})),this.enableCameraOnMobile&&this.mode==="write"&&e&&!this.value?.length&&i("p-tooltip",{key:"236de11a856b0f701ef79251aa2e4586ddd57900",content:this.cameraTooltip,class:"desktop-xs:hidden"},i("p-button",{key:"127ffe5ef98d6c5eea7be990e3631a3f066f1c7d",slot:"trigger",variant:"secondary",iconOnly:true,icon:"camera",onOnClick:()=>this._cameraClick()})))),i("input",{key:"501a70ea7830308f1b53f516a0db4c671bd5aeb7",class:"hidden",type:"file",accept:Array.isArray(this.accept)?this.accept?.join(","):this.accept,ref:t=>this._fileRef=t,onChange:t=>this._onFileChange(t)}),i("input",{key:"9be1eca163d4945987e2329d98f50a73f3f8cb2e",class:"hidden",type:"file",accept:"image/*",capture:"true",ref:t=>this._cameraFileRef=t,onChange:t=>this._onFileChange(t)}))}_uploadClick(){if(!this._fileRef||this.mode!=="write"){return}this._fileRef.click()}_cameraClick(){if(!this.enableCameraOnMobile||s()){return}if(!this._cameraFileRef||this.mode!=="write"){return}this._cameraFileRef?.click()}_onFileChange(t){const e=t.target;const i=e.files?.[0];if(i){this.loading=true;const t=new FileReader;t.onload=t=>this._onLoad(i,t?.currentTarget?.result);t.readAsDataURL(i)}}_onLoad(t,e){this.upload.emit({fileId:this.fileId,result:e,file:t});if(this._fileRef){this._fileRef.value=""}if(this._cameraFileRef){this._cameraFileRef.value=""}this.loading=false}};p.style=d;export{p as p_attachment};
|
|
2
|
-
//# sourceMappingURL=p-4953f4a9.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["attachmentComponentCss","attachment","cva","variants","error","false","true","Attachment","enableCameraOnMobile","value","fileId","accept","label","helper","required","mode","placeholder","cameraTooltip","downloadTooltip","uploadTooltip","deleteTooltip","loading","upload","download","delete","_fileRef","_cameraFileRef","render","prefix","h","key","class","variant","this","isMobileDevice","isTablet","baseText","Fragment","forceShowTooltip","length","slot","cn","content","iconOnly","icon","disabled","onOnClick","_uploadClick","emit","_cameraClick","type","Array","isArray","join","ref","el","onChange","ev","_onFileChange","capture","click","isMobile","target","file","files","reader","FileReader","onload","e","_onLoad","currentTarget","result","readAsDataURL"],"sources":["src/components/molecules/attachment/attachment.component.css?tag=p-attachment&encapsulation=shadow","src/components/molecules/attachment/attachment.component.tsx"],"sourcesContent":[":host {\n\t@apply block w-full;\n}\n","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\tFragment,\n\th,\n\tProp,\n} from '@stencil/core';\nimport { cn, isMobile, isTablet } from '../../../utils';\nimport { cva } from 'class-variance-authority';\n\nconst attachment = cva(\n\t[\n\t\t'flex flex-1 items-center justify-start gap-2',\n\t\t'h-8 min-w-0 px-2 rounded-lg',\n\t\t'border border-solid bg-white-600',\n\t],\n\t{\n\t\tvariants: {\n\t\t\terror: {\n\t\t\t\tfalse: 'bg-white-600 border-black-teal-100 text-black-teal-200',\n\t\t\t\ttrue: 'border-negative-red',\n\t\t\t},\n\t\t},\n\t}\n);\n\n@Component({\n\ttag: 'p-attachment',\n\tstyleUrl: 'attachment.component.css',\n\tshadow: true,\n})\nexport class Attachment {\n\t/**\n\t * Wether to enable the camera button on mobile\n\t */\n\t@Prop() enableCameraOnMobile = false;\n\n\t/**\n\t * The value of the attachment (usually the file name)\n\t */\n\t@Prop() value: string;\n\n\t/**\n\t * The fileID to use to track the file\n\t */\n\t@Prop() fileId: string;\n\n\t/**\n\t * The type of files to accept\n\t */\n\t@Prop() accept: string[] | string = null;\n\n\t/**\n\t * The label of the attachment\n\t */\n\t@Prop() label: string | HTMLSlotElement;\n\n\t/**\n\t * The helper of the attachment\n\t */\n\t@Prop() helper: string | HTMLSlotElement;\n\n\t/**\n\t * Wether the attachment is required\n\t */\n\t@Prop({ reflect: true }) required = true;\n\n\t/**\n\t * The variant of the attachment\n\t */\n\t@Prop() mode: 'read' | 'write' = 'read';\n\n\t/**\n\t * The placeholder of the attachment\n\t */\n\t@Prop() placeholder: string = 'Upload a file...';\n\n\t/**\n\t * The text for the camera tooltip\n\t */\n\t@Prop() cameraTooltip: string = 'Camera';\n\n\t/**\n\t * The text for the download tooltip\n\t */\n\t@Prop() downloadTooltip: string = 'Download';\n\n\t/**\n\t * The text for the upload tooltip\n\t */\n\t@Prop() uploadTooltip: string = 'Upload';\n\n\t/**\n\t * The text for the delete tooltip\n\t */\n\t@Prop() deleteTooltip: string = 'Delete';\n\n\t/**\n\t * Wether the attachment is loading\n\t */\n\t@Prop() loading = false;\n\n\t/**\n\t * The error to show\n\t */\n\t@Prop() error: string;\n\n\t/**\n\t * Event when upload is pressed\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tupload: EventEmitter<{\n\t\tfile: File;\n\t\tfileId: string;\n\t\tresult: string;\n\t}>;\n\n\t/**\n\t * Event when download is pressed\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdownload: EventEmitter<void>;\n\n\t/**\n\t * Event when delete is pressed\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdelete: EventEmitter<void>;\n\n\tprivate _fileRef: HTMLInputElement;\n\tprivate _cameraFileRef: HTMLInputElement;\n\n\trender() {\n\t\tlet prefix = (\n\t\t\t<p-icon\n\t\t\t\tclass='text-black-teal-300'\n\t\t\t\tvariant='attachment'\n\t\t\t/>\n\t\t);\n\n\t\tif (this.error) {\n\t\t\tprefix = (\n\t\t\t\t<p-icon\n\t\t\t\t\tvariant='warning'\n\t\t\t\t\tclass='text-negative-red'\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// const isMobileDevice = isMobile();\n\t\tconst isMobileDevice = isTablet();\n\n\t\tconst baseText =\n\t\t\t'min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-sm';\n\t\treturn (\n\t\t\t<Fragment>\n\t\t\t\t<p-field-container\n\t\t\t\t\tvariant='write'\n\t\t\t\t\tlabel={this.label}\n\t\t\t\t\thelper={this.helper}\n\t\t\t\t\terror={this.error}\n\t\t\t\t\trequired={this.required}\n\t\t\t\t\tforceShowTooltip={!!this.error?.length}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tslot='content'\n\t\t\t\t\t\tclass='flex w-full items-start gap-2'\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass={attachment({\n\t\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{prefix}\n\n\t\t\t\t\t\t\t<span class={cn(baseText, 'peer empty:hidden')}>\n\t\t\t\t\t\t\t\t{this.value}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span class={cn(baseText, 'hidden peer-empty:block')}>\n\t\t\t\t\t\t\t\t{this.placeholder}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\tthis.mode === 'read'\n\t\t\t\t\t\t\t\t\t? this.downloadTooltip\n\t\t\t\t\t\t\t\t\t: this.value?.length\n\t\t\t\t\t\t\t\t\t? this.deleteTooltip\n\t\t\t\t\t\t\t\t\t: this.uploadTooltip\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\t\t\tvariant='secondary'\n\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\tthis.mode === 'read'\n\t\t\t\t\t\t\t\t\t\t? 'download'\n\t\t\t\t\t\t\t\t\t\t: this.value?.length\n\t\t\t\t\t\t\t\t\t\t? 'trash'\n\t\t\t\t\t\t\t\t\t\t: 'upload'\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={this.loading}\n\t\t\t\t\t\t\t\tloading={this.loading}\n\t\t\t\t\t\t\t\tonOnClick={() =>\n\t\t\t\t\t\t\t\t\tthis.mode === 'write' && !this.value?.length\n\t\t\t\t\t\t\t\t\t\t? this._uploadClick()\n\t\t\t\t\t\t\t\t\t\t: (this.mode === 'read'\n\t\t\t\t\t\t\t\t\t\t\t\t? this.download\n\t\t\t\t\t\t\t\t\t\t\t\t: this.delete\n\t\t\t\t\t\t\t\t\t\t ).emit()\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</p-tooltip>\n\n\t\t\t\t\t\t{this.enableCameraOnMobile &&\n\t\t\t\t\t\t\tthis.mode === 'write' &&\n\t\t\t\t\t\t\tisMobileDevice &&\n\t\t\t\t\t\t\t!this.value?.length && (\n\t\t\t\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\t\t\t\tcontent={this.cameraTooltip}\n\t\t\t\t\t\t\t\t\tclass='desktop-xs:hidden'\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\t\t\t\t\tvariant='secondary'\n\t\t\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\t\t\ticon='camera'\n\t\t\t\t\t\t\t\t\t\tonOnClick={() => this._cameraClick()}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</p-tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</p-field-container>\n\n\t\t\t\t<input\n\t\t\t\t\tclass='hidden'\n\t\t\t\t\ttype='file'\n\t\t\t\t\taccept={\n\t\t\t\t\t\tArray.isArray(this.accept) ? this.accept?.join(',') : this.accept\n\t\t\t\t\t}\n\t\t\t\t\tref={el => (this._fileRef = el)}\n\t\t\t\t\tonChange={ev => this._onFileChange(ev)}\n\t\t\t\t/>\n\n\t\t\t\t<input\n\t\t\t\t\tclass='hidden'\n\t\t\t\t\ttype='file'\n\t\t\t\t\taccept='image/*'\n\t\t\t\t\tcapture='true'\n\t\t\t\t\tref={el => (this._cameraFileRef = el)}\n\t\t\t\t\tonChange={ev => this._onFileChange(ev)}\n\t\t\t\t/>\n\t\t\t</Fragment>\n\t\t);\n\t}\n\n\tprivate _uploadClick() {\n\t\tif (!this._fileRef || this.mode !== 'write') {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._fileRef.click();\n\t}\n\n\tprivate _cameraClick() {\n\t\tif (!this.enableCameraOnMobile || isMobile()) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._cameraFileRef || this.mode !== 'write') {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._cameraFileRef?.click();\n\t}\n\n\tprivate _onFileChange(ev: Event) {\n\t\tconst target = ev.target as HTMLInputElement;\n\t\tconst file = target.files?.[0];\n\n\t\tif (file) {\n\t\t\tthis.loading = true;\n\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onload = (e: any) => this._onLoad(file, e?.currentTarget?.result);\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t}\n\n\tprivate _onLoad(file: File, result: string) {\n\t\tthis.upload.emit({\n\t\t\tfileId: this.fileId,\n\t\t\tresult,\n\t\t\tfile,\n\t\t});\n\n\t\tif (this._fileRef) {\n\t\t\tthis._fileRef.value = '';\n\t\t}\n\n\t\tif (this._cameraFileRef) {\n\t\t\tthis._cameraFileRef.value = '';\n\t\t}\n\n\t\tthis.loading = false;\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,h as i,c as e,g as a,H as o}from"./p-DhGo7hbh.js";import{a as r,c as s,o as n,f as p,s as c}from"./p-DGLCmOXW.js";import{c as l}from"./p-CBWjHURv.js";import"./p-ChV9xqsO.js";const h="*{box-sizing:border-box}.absolute{position:absolute!important}.cursor-pointer{cursor:pointer!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.hover\\:text-black-teal:hover{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}";const d=class{constructor(i){t(this,i)}strategy="absolute";placement="top";render(){return i("p-tooltip",{key:"ab6ca1a855d08902f176f50db8ff60a5ddcdc2f9",placement:this.placement,strategy:this.strategy},i("div",{key:"87e1387305675572b5dc92431538ecd4633a98ce",slot:"content"},i("slot",{key:"6689e7ff6c1c6cdc1619a5d593845608fd0624d2"})),i("p-icon",{key:"d081f770445e5fc500eaa3e1dcdd43ba87d97a9b",size:"sm",class:"cursor-pointer text-black-teal-300 hover:text-black-teal",variant:"question-circle",slot:"trigger"}))}};d.style=h;const m="*{box-sizing:border-box}.pointer-events-none{pointer-events:none!important}.pointer-events-auto{pointer-events:auto!important}.visible{visibility:visible!important}.static{position:static!important}.fixed{position:fixed!important}.absolute{position:absolute!important}.relative{position:relative!important}.z-tooltip{z-index:601!important}.inline-block{display:inline-block!important}.flex{display:flex!important}.h-inherit{height:inherit!important}.w-\\[2px\\]{width:2px!important}.w-full{width:100%!important}.w-inherit{width:inherit!important}.w-max{width:max-content!important}.max-w-\\[14\\.5rem\\]{max-width:14.5rem!important}.max-w-full{max-width:100%!important}.cursor-pointer{cursor:pointer!important}.gap-2{gap:.5rem!important}.rounded-lg{border-radius:.5rem!important}.bg-black-teal{--tw-bg-opacity:1!important;background-color:rgb(3 42 36/var(--tw-bg-opacity,1))!important}.bg-negative-red{background-color:rgb(230 30 30/var(--tw-bg-opacity,1))!important}.bg-negative-red,.bg-white{--tw-bg-opacity:1!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.opacity-0{opacity:0!important}.opacity-100{opacity:1!important}.blur{--tw-blur:blur(8px)!important}.blur,.drop-shadow-3{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.drop-shadow-3{--tw-drop-shadow:drop-shadow(0 1px 1px rgba(0,2,2,.08)) drop-shadow(0 2px 2px rgba(0,2,2,.08)) drop-shadow(0 4px 4px rgba(0,2,2,.08))!important}.transition-opacity{transition-duration:.15s!important;transition-property:opacity!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}";const b=l(["inline-block px-2","text-xs","opacity-0 drop-shadow-3 transition-opacity","rounded-lg","z-tooltip","pointer-events-none"],{variants:{variant:{hover:"bg-black-teal text-white py-1",click:null,error:"max-w-full w-full"},strategy:{none:null,fixed:"fixed",absolute:"absolute"}},compoundVariants:[{variant:["hover","click"],class:"max-w-[14.5rem] w-max"},{variant:["click","error"],class:"bg-white text-black-teal-300 py-2"}]});const u=l("",{variants:{strategy:{fixed:"fixed",absolute:"absolute"}}});const f=class{constructor(i){t(this,i);this.isOpen=e(this,"isOpen",3)}variant="hover";content=null;placement;offset=8;strategy="absolute";enableUserInput=true;show=false;usePortal=false;canManuallyClose=true;isOpen;get _el(){return a(this)}_hasContentSlot=false;_loaded=false;_popover;_cleanup;componentWillLoad(){this._hasContentSlot=!!this._el.querySelector(':scope > [slot="content"]')}componentShouldUpdate(){this._update()}disconnectedCallback(){if(this._cleanup){this._cleanup();this._cleanup=null}}render(){const t={role:"popover","data-placement":this.placement,ref:t=>this._load(t)};let e;const a=i("div",{key:"75eef206b703bfb6a29905de656c5ecc7abd6b56",class:b({variant:this.variant,strategy:this.usePortal?"none":this.strategy}),...this.usePortal?{}:t},i("div",{key:"e0ad08f0d342a495c46cb60f584c97c8087514b7",class:"flex gap-2"},this.variant==="error"&&i("div",{key:"f30f7be26055aaccb9ead865189c684c2b711710",class:"w-[2px] bg-negative-red"}),this.content?this.content:i("slot",{name:"content"})));if(this.usePortal){e=i("p-portal",{key:"1c23eb5c50d1cba9aef27ca8129816cd48d7e930",class:u({strategy:this.strategy}),...t},a)}else{e=a}return i(o,{key:"30360842d6273d3861ea5546f600a08c9a191b1d",class:"flex cursor-pointer"},i("div",{key:"c4f8695b1c81b0863396e159bc5fb85052addfe3",class:"relative h-inherit w-inherit max-w-full"},i("slot",{key:"f137434492c73b66d1428437175b59f262f1e8b3",name:"trigger"}),e))}clickHandler(){if(this.variant==="hover"||!this.enableUserInput){return}if(this._popover.hasAttribute("data-show")){return}this._show()}documentClickHandler(){if(this.variant==="hover"||!this.canManuallyClose||this.show){return}if(!this._popover.hasAttribute("data-show")){return}this._hide()}mouseEnterHandler(){if(this.variant!=="hover"||!this.enableUserInput){return}this._show()}mouseLeaveHandler(){if(this.show||this.variant!=="hover"||!this.enableUserInput){return}this._hide()}onShowChange(t){if(t&&!this._popover.hasAttribute("data-show")){return this._show()}return this._hide()}_show(){if(!this._loaded){return}if(!this.content?.length&&!this._hasContentSlot){if(this._popover.hasAttribute("data-show")){this._hide()}return}this._cleanup=r(this._el,this._popover,(()=>this._update()));this._popover.setAttribute("data-show","");this._popover.classList.remove("opacity-0","pointer-events-none");this._popover.classList.add("opacity-100","pointer-events-auto");this.isOpen.emit(true)}_hide(){if(!this._loaded){return}if(this._cleanup){this._cleanup();this._cleanup=null}this._popover.removeAttribute("data-show");this._popover.classList.remove("opacity-100","pointer-events-auto");this._popover.classList.add("opacity-0","pointer-events-none");this.isOpen.emit(false)}_load(t){this._popover=t;if(t){this._update();this._loaded=true;if(this.show){setTimeout((()=>this._show()),100)}}}_update(){if(!this._popover){return}s(this._el,this._popover,{placement:this.variant==="error"&&!this.placement?"bottom-start":this.placement??"top",strategy:this.strategy,middleware:[n(this.offset),p(),c()]}).then((({x:t,y:i,placement:e})=>{this._popover.dataset.placement=e;Object.assign(this._popover.style,{top:`${i}px`,left:`${t}px`})}))}static get watchers(){return{show:["onShowChange"]}}};f.style=m;export{d as p_helper,f as p_tooltip};
|
|
2
|
-
//# sourceMappingURL=p-c7139e78.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["helperComponentCss","Helper","strategy","placement","render","h","key","this","slot","size","class","variant","tooltipComponentCss","popover","cva","variants","hover","click","error","none","fixed","absolute","compoundVariants","portal","Tooltip","content","offset","enableUserInput","show","usePortal","canManuallyClose","isOpen","_hasContentSlot","_loaded","_popover","_cleanup","componentWillLoad","_el","querySelector","componentShouldUpdate","_update","disconnectedCallback","tooltipProps","role","ref","el","_load","tooltip","tooltipElement","name","Host","clickHandler","hasAttribute","_show","documentClickHandler","_hide","mouseEnterHandler","mouseLeaveHandler","onShowChange","length","autoUpdate","setAttribute","classList","remove","add","emit","removeAttribute","setTimeout","computePosition","middleware","flip","shift","then","x","y","dataset","Object","assign","style","top","left"],"sources":["src/components/atoms/helper/helper.component.css?tag=p-helper&encapsulation=shadow","src/components/atoms/helper/helper.component.tsx","src/components/atoms/tooltip/tooltip.component.css?tag=p-tooltip&encapsulation=shadow","src/components/atoms/tooltip/tooltip.component.tsx"],"sourcesContent":[null,"import { Placement, Strategy } from '@floating-ui/dom';\nimport { Component, h, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-helper',\n\tstyleUrl: 'helper.component.css',\n\tshadow: true,\n})\nexport class Helper {\n\t/**\n\t * The strategy of the popover placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * The placement of the helper popover\n\t */\n\t@Prop() placement: Placement = 'top';\n\n\trender() {\n\t\treturn (\n\t\t\t<p-tooltip\n\t\t\t\tplacement={this.placement}\n\t\t\t\tstrategy={this.strategy}\n\t\t\t>\n\t\t\t\t<div slot='content'>\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\n\t\t\t\t<p-icon\n\t\t\t\t\tsize='sm'\n\t\t\t\t\tclass='cursor-pointer text-black-teal-300 hover:text-black-teal'\n\t\t\t\t\tvariant='question-circle'\n\t\t\t\t\tslot='trigger'\n\t\t\t\t/>\n\t\t\t</p-tooltip>\n\t\t);\n\t}\n}\n",null,"import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\n\nconst popover = cva(\n\t[\n\t\t'inline-block px-2',\n\t\t'text-xs',\n\t\t'opacity-0 drop-shadow-3 transition-opacity',\n\t\t'rounded-lg',\n\n\t\t'z-tooltip',\n\t\t'pointer-events-none',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\thover: 'bg-black-teal text-white py-1',\n\t\t\t\tclick: null,\n\t\t\t\terror: 'max-w-full w-full',\n\t\t\t},\n\t\t\tstrategy: {\n\t\t\t\tnone: null,\n\t\t\t\tfixed: 'fixed',\n\t\t\t\tabsolute: 'absolute',\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\tvariant: ['hover', 'click'],\n\t\t\t\tclass: 'max-w-[14.5rem] w-max',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['click', 'error'],\n\t\t\t\tclass: 'bg-white text-black-teal-300 py-2',\n\t\t\t},\n\t\t],\n\t}\n);\n\nconst portal = cva('', {\n\tvariants: {\n\t\tstrategy: {\n\t\t\tfixed: 'fixed',\n\t\t\tabsolute: 'absolute',\n\t\t},\n\t},\n});\n\n@Component({\n\ttag: 'p-tooltip',\n\tstyleUrl: 'tooltip.component.css',\n\tshadow: true,\n})\nexport class Tooltip {\n\t/**\n\t * The variant of the popover\n\t */\n\t@Prop() variant: 'hover' | 'click' | 'error' = 'hover';\n\n\t/**\n\t * The content of the popover\n\t */\n\t@Prop() content: any = null;\n\n\t/**\n\t * The placement of the popover\n\t */\n\t@Prop() placement: Placement;\n\n\t/**\n\t * The offset of the popover\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the popover placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether the tooltip can be shown by user input\n\t */\n\t@Prop() enableUserInput: boolean = true;\n\n\t/**\n\t * Wether to show the popover\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to use a portal for the tooltip\n\t */\n\t@Prop() usePortal: boolean = false;\n\n\t/**\n\t * Wether to someone can manually close the popover\n\t */\n\t@Prop() canManuallyClose: boolean = true;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\tprivate _hasContentSlot = false;\n\n\tprivate _loaded = false;\n\tprivate _popover: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentWillLoad() {\n\t\tthis._hasContentSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"content\"]'\n\t\t);\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\t}\n\n\trender() {\n\t\tconst tooltipProps = {\n\t\t\trole: 'popover',\n\t\t\t'data-placement': this.placement,\n\t\t\tref: el => this._load(el),\n\t\t};\n\n\t\tlet tooltip: HTMLElement;\n\n\t\tconst tooltipElement = (\n\t\t\t<div\n\t\t\t\tclass={popover({\n\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\tstrategy: this.usePortal ? 'none' : this.strategy,\n\t\t\t\t})}\n\t\t\t\t{...(this.usePortal ? {} : tooltipProps)}\n\t\t\t>\n\t\t\t\t<div class='flex gap-2'>\n\t\t\t\t\t{this.variant === 'error' && (\n\t\t\t\t\t\t<div class='w-[2px] bg-negative-red'></div>\n\t\t\t\t\t)}\n\t\t\t\t\t{this.content ? this.content : <slot name='content' />}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.usePortal) {\n\t\t\ttooltip = (\n\t\t\t\t<p-portal\n\t\t\t\t\tclass={portal({\n\t\t\t\t\t\tstrategy: this.strategy,\n\t\t\t\t\t})}\n\t\t\t\t\t{...tooltipProps}\n\t\t\t\t>\n\t\t\t\t\t{tooltipElement}\n\t\t\t\t</p-portal>\n\t\t\t);\n\t\t} else {\n\t\t\ttooltip = tooltipElement;\n\t\t}\n\n\t\treturn (\n\t\t\t<Host class='flex cursor-pointer'>\n\t\t\t\t<div class='relative h-inherit w-inherit max-w-full'>\n\t\t\t\t\t<slot name='trigger' />\n\t\t\t\t\t{tooltip}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\tprotected clickHandler() {\n\t\tif (this.variant === 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._popover.hasAttribute('data-show')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler() {\n\t\tif (this.variant === 'hover' || !this.canManuallyClose || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._popover.hasAttribute('data-show')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\t@Listen('mouseenter')\n\t@Listen('focus')\n\tprotected mouseEnterHandler() {\n\t\tif (this.variant !== 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('mouseleave')\n\t@Listen('blur')\n\tprotected mouseLeaveHandler() {\n\t\tif (this.show || this.variant !== 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\t@Watch('show')\n\tonShowChange(show: boolean) {\n\t\tif (show && !this._popover.hasAttribute('data-show')) {\n\t\t\treturn this._show();\n\t\t}\n\n\t\treturn this._hide();\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.content?.length && !this._hasContentSlot) {\n\t\t\tif (this._popover.hasAttribute('data-show')) {\n\t\t\t\tthis._hide();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._popover, () => this._update());\n\n\t\t// Make the popover visible\n\t\tthis._popover.setAttribute('data-show', '');\n\n\t\tthis._popover.classList.remove('opacity-0', 'pointer-events-none');\n\t\tthis._popover.classList.add('opacity-100', 'pointer-events-auto');\n\n\t\t// Update its position\n\t\tthis.isOpen.emit(true);\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._popover.removeAttribute('data-show');\n\n\t\tthis._popover.classList.remove('opacity-100', 'pointer-events-auto');\n\t\tthis._popover.classList.add('opacity-0', 'pointer-events-none');\n\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._popover = popover;\n\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _update() {\n\t\tif (!this._popover) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._popover, {\n\t\t\tplacement:\n\t\t\t\tthis.variant === 'error' && !this.placement\n\t\t\t\t\t? 'bottom-start'\n\t\t\t\t\t: this.placement ?? 'top',\n\t\t\tstrategy: this.strategy,\n\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._popover.dataset.placement = placement;\n\t\t\tObject.assign(this._popover.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,g as a,h as o}from"./p-DhGo7hbh.js";import{c as r}from"./p-CBWjHURv.js";import"./p-ChV9xqsO.js";const i="*{box-sizing:border-box}.static{position:static!important}.absolute{position:absolute!important}.relative{position:relative!important}.right-2{right:.5rem!important}.top-2{top:.5rem!important}.my-0{margin-bottom:0!important;margin-top:0!important}.flex{display:flex!important}.h-6{height:1.5rem!important}.w-6{width:1.5rem!important}.w-full{width:100%!important}.cursor-pointer{cursor:pointer!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.gap-1{gap:.25rem!important}.rounded-lg{border-radius:.5rem!important}.bg-amber-50{--tw-bg-opacity:1!important;background-color:rgb(255 250 224/var(--tw-bg-opacity,1))!important}.bg-negative-red-100{--tw-bg-opacity:1!important;background-color:rgb(255 221 221/var(--tw-bg-opacity,1))!important}.bg-positive-green-100{--tw-bg-opacity:1!important;background-color:rgb(213 251 199/var(--tw-bg-opacity,1))!important}.bg-supportive-lilac-200{--tw-bg-opacity:1!important;background-color:rgb(237 223 255/var(--tw-bg-opacity,1))!important}.bg-white-700{--tw-bg-opacity:1!important;background-color:rgb(242 242 242/var(--tw-bg-opacity,1))!important}.px-4{padding-left:1rem!important;padding-right:1rem!important}.py-3{padding-bottom:.75rem!important;padding-top:.75rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.font-medium{font-weight:500!important}.text-amber-800{--tw-text-opacity:1!important;color:rgb(148 77 11/var(--tw-text-opacity,1))!important}.text-black-teal-800{--tw-text-opacity:1!important;color:rgb(0 2 2/var(--tw-text-opacity,1))!important}.text-black-teal-800\\/60{color:rgba(0,2,2,.6)!important}.text-negative-red-800{--tw-text-opacity:1!important;color:rgb(141 16 16/var(--tw-text-opacity,1))!important}.text-positive-green-800{--tw-text-opacity:1!important;color:rgb(47 100 7/var(--tw-text-opacity,1))!important}.text-supportive-lilac-900{--tw-text-opacity:1!important;color:rgb(80 9 179/var(--tw-text-opacity,1))!important}.hover\\:bg-white-500\\/40:hover{background-color:hsla(0,0%,100%,.4)!important}.hover\\:text-black-teal-800\\/60:hover{color:rgba(0,2,2,.6)!important}";const n=r(["flex flex-col gap-1","w-full px-4 py-3","rounded-lg relative"],{variants:{variant:{neutral:"bg-supportive-lilac-200",positive:"bg-positive-green-100",biased:"bg-amber-50",negative:"bg-negative-red-100",feedback:"bg-white-700"}}});const p=r("text-sm font-medium",{variants:{variant:{neutral:"text-supportive-lilac-900",positive:"text-positive-green-800",biased:"text-amber-800",negative:"text-negative-red-800",feedback:"text-black-teal-800"}}});const c=r(["absolute right-2 top-2","flex items-center justify-center","rounded-lg cursor-pointer","text-black-teal-800/60 hover:text-black-teal-800/60 hover:bg-white-500/40","h-6 w-6"]);const s=class{constructor(a){t(this,a);this.closed=e(this,"closed",3)}variant="feedback";header;content;closeable=false;closed;get _el(){return a(this)}render(){const t=!!this._el.querySelector(':scope > [slot="header"]');const e=!!this._el.querySelector(':scope > [slot="content"]');return o("div",{key:"f424e56cfac5e6a45ed0d75953a8d6d25501cd44",class:n({variant:this.variant})},(this.header?.length||t)&&o("div",{key:"844a536b5998119b02633e523db7fbf6e6a1d44b",class:p({variant:this.variant})},this.header?.length?o("p",{class:"my-0"},this.header):o("slot",{name:"header"})),(this.content?.length||e)&&o("div",{key:"89b8be3cfe1729858b83e4a6f41933bf25ffc9fd",class:"text-sm text-black-teal-800/60"},this.content?.length?o("p",{class:"my-0"},this.content):o("slot",{name:"content"})),this.closeable&&o("div",{key:"d5c613697642f3b7a3e959c1755750c142c0dc06",class:c(),onClick:()=>this._close()},o("p-icon",{key:"a8ab1cee8055d971616d4076cab58b5b98dd439b",variant:"negative"})))}_close(){this.closed.emit();this._el.remove()}};s.style=i;export{s as p_info_panel};
|
|
2
|
-
//# sourceMappingURL=p-e0156f45.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["infoPanelComponentCss","infopanel","cva","variants","variant","neutral","positive","biased","negative","feedback","header","close","InfoPanel","content","closeable","closed","render","hasHeaderSlot","this","_el","querySelector","hasContentSlot","h","key","class","length","name","onClick","_close","emit","remove"],"sources":["src/components/atoms/info-panel/info-panel.component.css?tag=p-info-panel&encapsulation=shadow","src/components/atoms/info-panel/info-panel.component.tsx"],"sourcesContent":[null,"import {\n\tComponent,\n\tElement,\n\th,\n\tProp,\n\tEvent,\n\tEventEmitter,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\n\nconst infopanel = cva(\n\t['flex flex-col gap-1', 'w-full px-4 py-3', 'rounded-lg relative'],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tneutral: 'bg-supportive-lilac-200',\n\t\t\t\tpositive: 'bg-positive-green-100',\n\t\t\t\tbiased: 'bg-amber-50',\n\t\t\t\tnegative: 'bg-negative-red-100',\n\t\t\t\tfeedback: 'bg-white-700',\n\t\t\t},\n\t\t},\n\t}\n);\n\nconst header = cva('text-sm font-medium', {\n\tvariants: {\n\t\tvariant: {\n\t\t\tneutral: 'text-supportive-lilac-900',\n\t\t\tpositive: 'text-positive-green-800',\n\t\t\tbiased: 'text-amber-800',\n\t\t\tnegative: 'text-negative-red-800',\n\t\t\tfeedback: 'text-black-teal-800',\n\t\t},\n\t},\n});\n\nconst close = cva([\n\t'absolute right-2 top-2',\n\t'flex items-center justify-center',\n\n\t'rounded-lg cursor-pointer',\n\t'text-black-teal-800/60 hover:text-black-teal-800/60 hover:bg-white-500/40',\n\n\t'h-6 w-6',\n]);\n\n@Component({\n\ttag: 'p-info-panel',\n\tstyleUrl: 'info-panel.component.css',\n\tshadow: true,\n})\nexport class InfoPanel {\n\t/**\n\t * The variant of the info panel\n\t */\n\t@Prop() variant:\n\t\t| 'neutral'\n\t\t| 'positive'\n\t\t| 'biased'\n\t\t| 'negative'\n\t\t| 'feedback' = 'feedback';\n\n\t/**\n\t * The header of the info panel\n\t */\n\t@Prop() header: string;\n\n\t/**\n\t * The content of the info panel\n\t */\n\t@Prop() content: string;\n\n\t/**\n\t * Wether the panel can be closed\n\t */\n\t@Prop() closeable: boolean = false;\n\n\t/**\n\t * When the backdrop is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tclosed: EventEmitter<void>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\trender() {\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\t\tconst hasContentSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"content\"]'\n\t\t);\n\n\t\treturn (\n\t\t\t<div class={infopanel({ variant: this.variant })}>\n\t\t\t\t{(this.header?.length || hasHeaderSlot) && (\n\t\t\t\t\t<div class={header({ variant: this.variant })}>\n\t\t\t\t\t\t{this.header?.length ? (\n\t\t\t\t\t\t\t<p class='my-0'>{this.header}</p>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<slot name='header' />\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{(this.content?.length || hasContentSlot) && (\n\t\t\t\t\t<div class='text-sm text-black-teal-800/60'>\n\t\t\t\t\t\t{this.content?.length ? (\n\t\t\t\t\t\t\t<p class='my-0'>{this.content}</p>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<slot name='content' />\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{this.closeable && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass={close()}\n\t\t\t\t\t\tonClick={() => this._close()}\n\t\t\t\t\t>\n\t\t\t\t\t\t<p-icon variant='negative' />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _close() {\n\t\tthis.closed.emit();\n\t\tthis._el.remove();\n\t}\n}\n"],"mappings":"qHAAA,MAAMA,EAAwB,gnECU9B,MAAMC,EAAYC,EACjB,CAAC,sBAAuB,mBAAoB,uBAC5C,CACCC,SAAU,CACTC,QAAS,CACRC,QAAS,0BACTC,SAAU,wBACVC,OAAQ,cACRC,SAAU,sBACVC,SAAU,mBAMd,MAAMC,EAASR,EAAI,sBAAuB,CACzCC,SAAU,CACTC,QAAS,CACRC,QAAS,4BACTC,SAAU,0BACVC,OAAQ,iBACRC,SAAU,wBACVC,SAAU,0BAKb,MAAME,EAAQT,EAAI,CACjB,yBACA,mCAEA,4BACA,4EAEA,Y,MAQYU,EAAS,M,wDAIbR,QAKQ,WAKRM,OAKAG,QAKAC,UAAqB,MAQ7BC,O,yBAOA,MAAAC,GACC,MAAMC,IAAkBC,KAAKC,IAAIC,cAAc,4BAC/C,MAAMC,IAAmBH,KAAKC,IAAIC,cACjC,6BAGD,OACCE,EAAA,OAAAC,IAAA,2CAAKC,MAAOvB,EAAU,CAAEG,QAASc,KAAKd,YACnCc,KAAKR,QAAQe,QAAUR,IACxBK,EAAK,OAAAC,IAAA,2CAAAC,MAAOd,EAAO,CAAEN,QAASc,KAAKd,WACjCc,KAAKR,QAAQe,OACbH,EAAA,KAAGE,MAAM,QAAQN,KAAKR,QAEtBY,EAAA,QAAMI,KAAK,aAKZR,KAAKL,SAASY,QAAUJ,IACzBC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,kCACTN,KAAKL,SAASY,OACdH,EAAA,KAAGE,MAAM,QAAQN,KAAKL,SAEtBS,EAAM,QAAAI,KAAK,aAKbR,KAAKJ,WACLQ,EACC,OAAAC,IAAA,2CAAAC,MAAOb,IACPgB,QAAS,IAAMT,KAAKU,UAEpBN,EAAQ,UAAAC,IAAA,2CAAAnB,QAAQ,c,CAOb,MAAAwB,GACPV,KAAKH,OAAOc,OACZX,KAAKC,IAAIW,Q","ignoreList":[]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"file":"p-DO22qLlU.js","mappings":"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","names":["__stencil_proxyCustomElement","HTMLElement"],"sources":["src/components/atoms/tooltip/tooltip.component.css?tag=p-tooltip&encapsulation=shadow","src/components/atoms/tooltip/tooltip.component.tsx"],"sourcesContent":["","import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\n\nconst popover = cva(\n\t[\n\t\t'inline-block px-2',\n\t\t'text-xs',\n\t\t'opacity-0 drop-shadow-3 transition-opacity',\n\t\t'rounded-lg',\n\n\t\t'z-tooltip',\n\t\t'pointer-events-none',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\thover: 'bg-black-teal text-white py-1',\n\t\t\t\tclick: null,\n\t\t\t\terror: 'max-w-full w-full',\n\t\t\t},\n\t\t\tstrategy: {\n\t\t\t\tnone: null,\n\t\t\t\tfixed: 'fixed',\n\t\t\t\tabsolute: 'absolute',\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\tvariant: ['hover', 'click'],\n\t\t\t\tclass: 'max-w-[14.5rem] w-max',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['click', 'error'],\n\t\t\t\tclass: 'bg-white text-black-teal-300 py-2',\n\t\t\t},\n\t\t],\n\t}\n);\n\nconst portal = cva('', {\n\tvariants: {\n\t\tstrategy: {\n\t\t\tfixed: 'fixed',\n\t\t\tabsolute: 'absolute',\n\t\t},\n\t},\n});\n\n@Component({\n\ttag: 'p-tooltip',\n\tstyleUrl: 'tooltip.component.css',\n\tshadow: true,\n})\nexport class Tooltip {\n\t/**\n\t * The variant of the popover\n\t */\n\t@Prop() variant: 'hover' | 'click' | 'error' = 'hover';\n\n\t/**\n\t * The content of the popover\n\t */\n\t@Prop() content: any = null;\n\n\t/**\n\t * The placement of the popover\n\t */\n\t@Prop() placement: Placement;\n\n\t/**\n\t * The offset of the popover\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the popover placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether the tooltip can be shown by user input\n\t */\n\t@Prop() enableUserInput: boolean = true;\n\n\t/**\n\t * Wether to show the popover\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to use a portal for the tooltip\n\t */\n\t@Prop() usePortal: boolean = false;\n\n\t/**\n\t * Wether to someone can manually close the popover\n\t */\n\t@Prop() canManuallyClose: boolean = true;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\tprivate _hasContentSlot = false;\n\n\tprivate _loaded = false;\n\tprivate _popover: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentWillLoad() {\n\t\tthis._hasContentSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"content\"]'\n\t\t);\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\t}\n\n\trender() {\n\t\tconst tooltipProps = {\n\t\t\trole: 'popover',\n\t\t\t'data-placement': this.placement,\n\t\t\tref: el => this._load(el),\n\t\t};\n\n\t\tlet tooltip: HTMLElement;\n\n\t\tconst tooltipElement = (\n\t\t\t<div\n\t\t\t\tclass={popover({\n\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\tstrategy: this.usePortal ? 'none' : this.strategy,\n\t\t\t\t})}\n\t\t\t\t{...(this.usePortal ? {} : tooltipProps)}\n\t\t\t>\n\t\t\t\t<div class='flex gap-2'>\n\t\t\t\t\t{this.variant === 'error' && (\n\t\t\t\t\t\t<div class='w-[2px] bg-negative-red'></div>\n\t\t\t\t\t)}\n\t\t\t\t\t{this.content ? this.content : <slot name='content' />}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.usePortal) {\n\t\t\ttooltip = (\n\t\t\t\t<p-portal\n\t\t\t\t\tclass={portal({\n\t\t\t\t\t\tstrategy: this.strategy,\n\t\t\t\t\t})}\n\t\t\t\t\t{...tooltipProps}\n\t\t\t\t>\n\t\t\t\t\t{tooltipElement}\n\t\t\t\t</p-portal>\n\t\t\t);\n\t\t} else {\n\t\t\ttooltip = tooltipElement;\n\t\t}\n\n\t\treturn (\n\t\t\t<Host class='flex cursor-pointer'>\n\t\t\t\t<div class='relative h-inherit w-inherit max-w-full'>\n\t\t\t\t\t<slot name='trigger' />\n\t\t\t\t\t{tooltip}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\tprotected clickHandler() {\n\t\tif (this.variant === 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._popover.hasAttribute('data-show')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler() {\n\t\tif (this.variant === 'hover' || !this.canManuallyClose || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._popover.hasAttribute('data-show')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\t@Listen('mouseenter')\n\t@Listen('focus')\n\tprotected mouseEnterHandler() {\n\t\tif (this.variant !== 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('mouseleave')\n\t@Listen('blur')\n\tprotected mouseLeaveHandler() {\n\t\tif (this.show || this.variant !== 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\t@Watch('show')\n\tonShowChange(show: boolean) {\n\t\tif (show && !this._popover.hasAttribute('data-show')) {\n\t\t\treturn this._show();\n\t\t}\n\n\t\treturn this._hide();\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.content?.length && !this._hasContentSlot) {\n\t\t\tif (this._popover.hasAttribute('data-show')) {\n\t\t\t\tthis._hide();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._popover, () => this._update());\n\n\t\t// Make the popover visible\n\t\tthis._popover.setAttribute('data-show', '');\n\n\t\tthis._popover.classList.remove('opacity-0', 'pointer-events-none');\n\t\tthis._popover.classList.add('opacity-100', 'pointer-events-auto');\n\n\t\t// Update its position\n\t\tthis.isOpen.emit(true);\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._popover.removeAttribute('data-show');\n\n\t\tthis._popover.classList.remove('opacity-100', 'pointer-events-auto');\n\t\tthis._popover.classList.add('opacity-0', 'pointer-events-none');\n\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._popover = popover;\n\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _update() {\n\t\tif (!this._popover) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._popover, {\n\t\t\tplacement:\n\t\t\t\tthis.variant === 'error' && !this.placement\n\t\t\t\t\t? 'bottom-start'\n\t\t\t\t\t: this.placement ?? 'top',\n\t\t\tstrategy: this.strategy,\n\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._popover.dataset.placement = placement;\n\t\t\tObject.assign(this._popover.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n"],"version":3}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,h as i,F as a}from"./p-DhGo7hbh.js";import{c as r}from"./p-CBWjHURv.js";import{h as o,f as s}from"./p-B3sNjfzc.js";import{c as n}from"./p-CT54OXR2.js";import"./p-ChV9xqsO.js";const d=".block{display:block!important}*{box-sizing:border-box}:host{display:block;width:100%}.static{position:static!important}.flex{display:flex!important}.hidden{display:none!important}.h-8{height:2rem!important}.w-full{width:100%!important}.min-w-0{min-width:0!important}.flex-1{flex:1 1 0%!important}.items-start{align-items:flex-start!important}.items-center{align-items:center!important}.justify-start{justify-content:flex-start!important}.gap-2{gap:.5rem!important}.overflow-hidden{overflow:hidden!important}.text-ellipsis{text-overflow:ellipsis!important}.whitespace-nowrap{white-space:nowrap!important}.rounded-lg{border-radius:.5rem!important}.border{border-width:1px!important}.border-solid{border-style:solid!important}.border-black-teal-100{--tw-border-opacity:1!important;border-color:rgb(205 212 211/var(--tw-border-opacity,1))!important}.border-negative-red{--tw-border-opacity:1!important;border-color:rgb(230 30 30/var(--tw-border-opacity,1))!important}.bg-white-600{--tw-bg-opacity:1!important;background-color:rgb(250 250 250/var(--tw-bg-opacity,1))!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.text-black-teal-200{--tw-text-opacity:1!important;color:rgb(154 170 167/var(--tw-text-opacity,1))!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.text-negative-red{--tw-text-opacity:1!important;color:rgb(230 30 30/var(--tw-text-opacity,1))!important}.empty\\:hidden:empty{display:none!important}.peer:empty~.peer-empty\\:block{display:block!important}@media (min-width:64rem){.desktop-xs\\:hidden{display:none!important}}";const l=r(["flex flex-1 items-center justify-start gap-2","h-8 min-w-0 px-2 rounded-lg","border border-solid bg-white-600"],{variants:{error:{false:"bg-white-600 border-black-teal-100 text-black-teal-200",true:"border-negative-red"}}});const p=class{constructor(i){t(this,i);this.upload=e(this,"upload",3);this.download=e(this,"download",3);this.delete=e(this,"delete",3)}enableCameraOnMobile=false;value;fileId;accept=null;label;helper;required=true;mode="read";placeholder="Upload a file...";cameraTooltip="Camera";downloadTooltip="Download";uploadTooltip="Upload";deleteTooltip="Delete";loading=false;error;upload;download;delete;_fileRef;_cameraFileRef;render(){let t=i("p-icon",{key:"98d1184d2cd2c229ec68045e1a57ebc6e77b771c",class:"text-black-teal-300",variant:"attachment"});if(this.error){t=i("p-icon",{key:"6bdf7a757ba3d4f9614ae0ff1d0ae4aab23bed94",variant:"warning",class:"text-negative-red"})}const e=o();const r="min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-sm";return i(a,{key:"d0c314631138f0418a71130e3506c9c24bb11f3e"},i("p-field-container",{key:"f11e3dc93b47c63025abde1bfc03f0cc64b6a050",variant:"write",label:this.label,helper:this.helper,error:this.error,required:this.required,forceShowTooltip:!!this.error?.length},i("div",{key:"dd8fb0529546118b6e39215f83bee385bb413aec",slot:"content",class:"flex w-full items-start gap-2"},i("div",{key:"b9263a22549e5cef936ac178b2c8277caa96ffc8",class:l({error:!!this.error?.length})},t,i("span",{key:"47cc0ed86d0996a2575785f05f93e7e8075a0a7f",class:n(r,"peer empty:hidden")},this.value),i("span",{key:"6a6c0feccdff8f71924e2461ec011ff6379f3556",class:n(r,"hidden peer-empty:block")},this.placeholder)),i("p-tooltip",{key:"6d4fbee5737e6bfbcd03d202e4f8b7606fa4eded",content:this.mode==="read"?this.downloadTooltip:this.value?.length?this.deleteTooltip:this.uploadTooltip},i("p-button",{key:"b493da0c5ac7ae1bd791b8fc72d272cb5b10a42a",slot:"trigger",variant:"secondary",iconOnly:true,icon:this.mode==="read"?"download":this.value?.length?"trash":"upload",disabled:this.loading,loading:this.loading,onOnClick:()=>this.mode==="write"&&!this.value?.length?this._uploadClick():(this.mode==="read"?this.download:this.delete).emit()})),this.enableCameraOnMobile&&this.mode==="write"&&e&&!this.value?.length&&i("p-tooltip",{key:"236de11a856b0f701ef79251aa2e4586ddd57900",content:this.cameraTooltip,class:"desktop-xs:hidden"},i("p-button",{key:"127ffe5ef98d6c5eea7be990e3631a3f066f1c7d",slot:"trigger",variant:"secondary",iconOnly:true,icon:"camera",onOnClick:()=>this._cameraClick()})))),i("input",{key:"501a70ea7830308f1b53f516a0db4c671bd5aeb7",class:"hidden",type:"file",accept:Array.isArray(this.accept)?this.accept?.join(","):this.accept,ref:t=>this._fileRef=t,onChange:t=>this._onFileChange(t)}),i("input",{key:"9be1eca163d4945987e2329d98f50a73f3f8cb2e",class:"hidden",type:"file",accept:"image/*",capture:"true",ref:t=>this._cameraFileRef=t,onChange:t=>this._onFileChange(t)}))}_uploadClick(){if(!this._fileRef||this.mode!=="write"){return}this._fileRef.click()}_cameraClick(){if(!this.enableCameraOnMobile||s()){return}if(!this._cameraFileRef||this.mode!=="write"){return}this._cameraFileRef?.click()}_onFileChange(t){const e=t.target;const i=e.files?.[0];if(i){this.loading=true;const t=new FileReader;t.onload=t=>this._onLoad(i,t?.currentTarget?.result);t.readAsDataURL(i)}}_onLoad(t,e){this.upload.emit({fileId:this.fileId,result:e,file:t});if(this._fileRef){this._fileRef.value=""}if(this._cameraFileRef){this._cameraFileRef.value=""}this.loading=false}};p.style=d;export{p as p_attachment};
|
|
2
|
-
//# sourceMappingURL=p-4953f4a9.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["attachmentComponentCss","attachment","cva","variants","error","false","true","Attachment","enableCameraOnMobile","value","fileId","accept","label","helper","required","mode","placeholder","cameraTooltip","downloadTooltip","uploadTooltip","deleteTooltip","loading","upload","download","delete","_fileRef","_cameraFileRef","render","prefix","h","key","class","variant","this","isMobileDevice","isTablet","baseText","Fragment","forceShowTooltip","length","slot","cn","content","iconOnly","icon","disabled","onOnClick","_uploadClick","emit","_cameraClick","type","Array","isArray","join","ref","el","onChange","ev","_onFileChange","capture","click","isMobile","target","file","files","reader","FileReader","onload","e","_onLoad","currentTarget","result","readAsDataURL"],"sources":["src/components/molecules/attachment/attachment.component.css?tag=p-attachment&encapsulation=shadow","src/components/molecules/attachment/attachment.component.tsx"],"sourcesContent":[":host {\n\t@apply block w-full;\n}\n","import {\n\tComponent,\n\tEvent,\n\tEventEmitter,\n\tFragment,\n\th,\n\tProp,\n} from '@stencil/core';\nimport { cn, isMobile, isTablet } from '../../../utils';\nimport { cva } from 'class-variance-authority';\n\nconst attachment = cva(\n\t[\n\t\t'flex flex-1 items-center justify-start gap-2',\n\t\t'h-8 min-w-0 px-2 rounded-lg',\n\t\t'border border-solid bg-white-600',\n\t],\n\t{\n\t\tvariants: {\n\t\t\terror: {\n\t\t\t\tfalse: 'bg-white-600 border-black-teal-100 text-black-teal-200',\n\t\t\t\ttrue: 'border-negative-red',\n\t\t\t},\n\t\t},\n\t}\n);\n\n@Component({\n\ttag: 'p-attachment',\n\tstyleUrl: 'attachment.component.css',\n\tshadow: true,\n})\nexport class Attachment {\n\t/**\n\t * Wether to enable the camera button on mobile\n\t */\n\t@Prop() enableCameraOnMobile = false;\n\n\t/**\n\t * The value of the attachment (usually the file name)\n\t */\n\t@Prop() value: string;\n\n\t/**\n\t * The fileID to use to track the file\n\t */\n\t@Prop() fileId: string;\n\n\t/**\n\t * The type of files to accept\n\t */\n\t@Prop() accept: string[] | string = null;\n\n\t/**\n\t * The label of the attachment\n\t */\n\t@Prop() label: string | HTMLSlotElement;\n\n\t/**\n\t * The helper of the attachment\n\t */\n\t@Prop() helper: string | HTMLSlotElement;\n\n\t/**\n\t * Wether the attachment is required\n\t */\n\t@Prop({ reflect: true }) required = true;\n\n\t/**\n\t * The variant of the attachment\n\t */\n\t@Prop() mode: 'read' | 'write' = 'read';\n\n\t/**\n\t * The placeholder of the attachment\n\t */\n\t@Prop() placeholder: string = 'Upload a file...';\n\n\t/**\n\t * The text for the camera tooltip\n\t */\n\t@Prop() cameraTooltip: string = 'Camera';\n\n\t/**\n\t * The text for the download tooltip\n\t */\n\t@Prop() downloadTooltip: string = 'Download';\n\n\t/**\n\t * The text for the upload tooltip\n\t */\n\t@Prop() uploadTooltip: string = 'Upload';\n\n\t/**\n\t * The text for the delete tooltip\n\t */\n\t@Prop() deleteTooltip: string = 'Delete';\n\n\t/**\n\t * Wether the attachment is loading\n\t */\n\t@Prop() loading = false;\n\n\t/**\n\t * The error to show\n\t */\n\t@Prop() error: string;\n\n\t/**\n\t * Event when upload is pressed\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tupload: EventEmitter<{\n\t\tfile: File;\n\t\tfileId: string;\n\t\tresult: string;\n\t}>;\n\n\t/**\n\t * Event when download is pressed\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdownload: EventEmitter<void>;\n\n\t/**\n\t * Event when delete is pressed\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tdelete: EventEmitter<void>;\n\n\tprivate _fileRef: HTMLInputElement;\n\tprivate _cameraFileRef: HTMLInputElement;\n\n\trender() {\n\t\tlet prefix = (\n\t\t\t<p-icon\n\t\t\t\tclass='text-black-teal-300'\n\t\t\t\tvariant='attachment'\n\t\t\t/>\n\t\t);\n\n\t\tif (this.error) {\n\t\t\tprefix = (\n\t\t\t\t<p-icon\n\t\t\t\t\tvariant='warning'\n\t\t\t\t\tclass='text-negative-red'\n\t\t\t\t/>\n\t\t\t);\n\t\t}\n\n\t\t// const isMobileDevice = isMobile();\n\t\tconst isMobileDevice = isTablet();\n\n\t\tconst baseText =\n\t\t\t'min-w-0 flex-1 overflow-hidden text-ellipsis whitespace-nowrap text-sm';\n\t\treturn (\n\t\t\t<Fragment>\n\t\t\t\t<p-field-container\n\t\t\t\t\tvariant='write'\n\t\t\t\t\tlabel={this.label}\n\t\t\t\t\thelper={this.helper}\n\t\t\t\t\terror={this.error}\n\t\t\t\t\trequired={this.required}\n\t\t\t\t\tforceShowTooltip={!!this.error?.length}\n\t\t\t\t>\n\t\t\t\t\t<div\n\t\t\t\t\t\tslot='content'\n\t\t\t\t\t\tclass='flex w-full items-start gap-2'\n\t\t\t\t\t>\n\t\t\t\t\t\t<div\n\t\t\t\t\t\t\tclass={attachment({\n\t\t\t\t\t\t\t\terror: !!this.error?.length,\n\t\t\t\t\t\t\t})}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{prefix}\n\n\t\t\t\t\t\t\t<span class={cn(baseText, 'peer empty:hidden')}>\n\t\t\t\t\t\t\t\t{this.value}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t<span class={cn(baseText, 'hidden peer-empty:block')}>\n\t\t\t\t\t\t\t\t{this.placeholder}\n\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\t\tcontent={\n\t\t\t\t\t\t\t\tthis.mode === 'read'\n\t\t\t\t\t\t\t\t\t? this.downloadTooltip\n\t\t\t\t\t\t\t\t\t: this.value?.length\n\t\t\t\t\t\t\t\t\t? this.deleteTooltip\n\t\t\t\t\t\t\t\t\t: this.uploadTooltip\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\t\t\tvariant='secondary'\n\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\ticon={\n\t\t\t\t\t\t\t\t\tthis.mode === 'read'\n\t\t\t\t\t\t\t\t\t\t? 'download'\n\t\t\t\t\t\t\t\t\t\t: this.value?.length\n\t\t\t\t\t\t\t\t\t\t? 'trash'\n\t\t\t\t\t\t\t\t\t\t: 'upload'\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tdisabled={this.loading}\n\t\t\t\t\t\t\t\tloading={this.loading}\n\t\t\t\t\t\t\t\tonOnClick={() =>\n\t\t\t\t\t\t\t\t\tthis.mode === 'write' && !this.value?.length\n\t\t\t\t\t\t\t\t\t\t? this._uploadClick()\n\t\t\t\t\t\t\t\t\t\t: (this.mode === 'read'\n\t\t\t\t\t\t\t\t\t\t\t\t? this.download\n\t\t\t\t\t\t\t\t\t\t\t\t: this.delete\n\t\t\t\t\t\t\t\t\t\t ).emit()\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t</p-tooltip>\n\n\t\t\t\t\t\t{this.enableCameraOnMobile &&\n\t\t\t\t\t\t\tthis.mode === 'write' &&\n\t\t\t\t\t\t\tisMobileDevice &&\n\t\t\t\t\t\t\t!this.value?.length && (\n\t\t\t\t\t\t\t\t<p-tooltip\n\t\t\t\t\t\t\t\t\tcontent={this.cameraTooltip}\n\t\t\t\t\t\t\t\t\tclass='desktop-xs:hidden'\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<p-button\n\t\t\t\t\t\t\t\t\t\tslot='trigger'\n\t\t\t\t\t\t\t\t\t\tvariant='secondary'\n\t\t\t\t\t\t\t\t\t\ticonOnly={true}\n\t\t\t\t\t\t\t\t\t\ticon='camera'\n\t\t\t\t\t\t\t\t\t\tonOnClick={() => this._cameraClick()}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t</p-tooltip>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t</p-field-container>\n\n\t\t\t\t<input\n\t\t\t\t\tclass='hidden'\n\t\t\t\t\ttype='file'\n\t\t\t\t\taccept={\n\t\t\t\t\t\tArray.isArray(this.accept) ? this.accept?.join(',') : this.accept\n\t\t\t\t\t}\n\t\t\t\t\tref={el => (this._fileRef = el)}\n\t\t\t\t\tonChange={ev => this._onFileChange(ev)}\n\t\t\t\t/>\n\n\t\t\t\t<input\n\t\t\t\t\tclass='hidden'\n\t\t\t\t\ttype='file'\n\t\t\t\t\taccept='image/*'\n\t\t\t\t\tcapture='true'\n\t\t\t\t\tref={el => (this._cameraFileRef = el)}\n\t\t\t\t\tonChange={ev => this._onFileChange(ev)}\n\t\t\t\t/>\n\t\t\t</Fragment>\n\t\t);\n\t}\n\n\tprivate _uploadClick() {\n\t\tif (!this._fileRef || this.mode !== 'write') {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._fileRef.click();\n\t}\n\n\tprivate _cameraClick() {\n\t\tif (!this.enableCameraOnMobile || isMobile()) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._cameraFileRef || this.mode !== 'write') {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._cameraFileRef?.click();\n\t}\n\n\tprivate _onFileChange(ev: Event) {\n\t\tconst target = ev.target as HTMLInputElement;\n\t\tconst file = target.files?.[0];\n\n\t\tif (file) {\n\t\t\tthis.loading = true;\n\n\t\t\tconst reader = new FileReader();\n\t\t\treader.onload = (e: any) => this._onLoad(file, e?.currentTarget?.result);\n\t\t\treader.readAsDataURL(file);\n\t\t}\n\t}\n\n\tprivate _onLoad(file: File, result: string) {\n\t\tthis.upload.emit({\n\t\t\tfileId: this.fileId,\n\t\t\tresult,\n\t\t\tfile,\n\t\t});\n\n\t\tif (this._fileRef) {\n\t\t\tthis._fileRef.value = '';\n\t\t}\n\n\t\tif (this._cameraFileRef) {\n\t\t\tthis._cameraFileRef.value = '';\n\t\t}\n\n\t\tthis.loading = false;\n\t}\n}\n"],"mappings":"oMAAA,MAAMA,EAAyB,sqDCW/B,MAAMC,EAAaC,EAClB,CACC,+CACA,8BACA,oCAED,CACCC,SAAU,CACTC,MAAO,CACNC,MAAO,yDACPC,KAAM,0B,MAWGC,EAAU,M,0HAIdC,qBAAuB,MAKvBC,MAKAC,OAKAC,OAA4B,KAK5BC,MAKAC,OAKiBC,SAAW,KAK5BC,KAAyB,OAKzBC,YAAsB,mBAKtBC,cAAwB,SAKxBC,gBAA0B,WAK1BC,cAAwB,SAKxBC,cAAwB,SAKxBC,QAAU,MAKVjB,MAQRkB,OAYAC,SAQAC,OAEQC,SACAC,eAER,MAAAC,GACC,IAAIC,EACHC,EAAA,UAAAC,IAAA,2CACCC,MAAM,sBACNC,QAAQ,eAIV,GAAIC,KAAK7B,MAAO,CACfwB,EACCC,EACC,UAAAC,IAAA,2CAAAE,QAAQ,UACRD,MAAM,qB,CAMT,MAAMG,EAAiBC,IAEvB,MAAMC,EACL,0EACD,OACCP,EAACQ,EAAQ,CAAAP,IAAA,4CACRD,EAAA,qBAAAC,IAAA,2CACCE,QAAQ,QACRpB,MAAOqB,KAAKrB,MACZC,OAAQoB,KAAKpB,OACbT,MAAO6B,KAAK7B,MACZU,SAAUmB,KAAKnB,SACfwB,mBAAoBL,KAAK7B,OAAOmC,QAEhCV,EAAA,OAAAC,IAAA,2CACCU,KAAK,UACLT,MAAM,iCAENF,EACC,OAAAC,IAAA,2CAAAC,MAAO9B,EAAW,CACjBG,QAAS6B,KAAK7B,OAAOmC,UAGrBX,EAEDC,EAAA,QAAAC,IAAA,2CAAMC,MAAOU,EAAGL,EAAU,sBACxBH,KAAKxB,OAEPoB,EAAA,QAAAC,IAAA,2CAAMC,MAAOU,EAAGL,EAAU,4BACxBH,KAAKjB,cAIRa,EAAA,aAAAC,IAAA,2CACCY,QACCT,KAAKlB,OAAS,OACXkB,KAAKf,gBACLe,KAAKxB,OAAO8B,OACZN,KAAKb,cACLa,KAAKd,eAGTU,EAAA,YAAAC,IAAA,2CACCU,KAAK,UACLR,QAAQ,YACRW,SAAU,KACVC,KACCX,KAAKlB,OAAS,OACX,WACAkB,KAAKxB,OAAO8B,OACZ,QACA,SAEJM,SAAUZ,KAAKZ,QACfA,QAASY,KAAKZ,QACdyB,UAAW,IACVb,KAAKlB,OAAS,UAAYkB,KAAKxB,OAAO8B,OACnCN,KAAKc,gBACJd,KAAKlB,OAAS,OACbkB,KAAKV,SACLU,KAAKT,QACLwB,UAKPf,KAAKzB,sBACLyB,KAAKlB,OAAS,SACdmB,IACCD,KAAKxB,OAAO8B,QACZV,EAAA,aAAAC,IAAA,2CACCY,QAAST,KAAKhB,cACdc,MAAM,qBAENF,EAAA,YAAAC,IAAA,2CACCU,KAAK,UACLR,QAAQ,YACRW,SAAU,KACVC,KAAK,SACLE,UAAW,IAAMb,KAAKgB,oBAO5BpB,EAAA,SAAAC,IAAA,2CACCC,MAAM,SACNmB,KAAK,OACLvC,OACCwC,MAAMC,QAAQnB,KAAKtB,QAAUsB,KAAKtB,QAAQ0C,KAAK,KAAOpB,KAAKtB,OAE5D2C,IAAKC,GAAOtB,KAAKR,SAAW8B,EAC5BC,SAAUC,GAAMxB,KAAKyB,cAAcD,KAGpC5B,EACC,SAAAC,IAAA,2CAAAC,MAAM,SACNmB,KAAK,OACLvC,OAAO,UACPgD,QAAQ,OACRL,IAAKC,GAAOtB,KAAKP,eAAiB6B,EAClCC,SAAUC,GAAMxB,KAAKyB,cAAcD,K,CAM/B,YAAAV,GACP,IAAKd,KAAKR,UAAYQ,KAAKlB,OAAS,QAAS,CAC5C,M,CAGDkB,KAAKR,SAASmC,O,CAGP,YAAAX,GACP,IAAKhB,KAAKzB,sBAAwBqD,IAAY,CAC7C,M,CAGD,IAAK5B,KAAKP,gBAAkBO,KAAKlB,OAAS,QAAS,CAClD,M,CAGDkB,KAAKP,gBAAgBkC,O,CAGd,aAAAF,CAAcD,GACrB,MAAMK,EAASL,EAAGK,OAClB,MAAMC,EAAOD,EAAOE,QAAQ,GAE5B,GAAID,EAAM,CACT9B,KAAKZ,QAAU,KAEf,MAAM4C,EAAS,IAAIC,WACnBD,EAAOE,OAAUC,GAAWnC,KAAKoC,QAAQN,EAAMK,GAAGE,eAAeC,QACjEN,EAAOO,cAAcT,E,EAIf,OAAAM,CAAQN,EAAYQ,GAC3BtC,KAAKX,OAAO0B,KAAK,CAChBtC,OAAQuB,KAAKvB,OACb6D,SACAR,SAGD,GAAI9B,KAAKR,SAAU,CAClBQ,KAAKR,SAAShB,MAAQ,E,CAGvB,GAAIwB,KAAKP,eAAgB,CACxBO,KAAKP,eAAejB,MAAQ,E,CAG7BwB,KAAKZ,QAAU,K","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,h as i,c as e,g as a,H as o}from"./p-DhGo7hbh.js";import{a as r,c as s,o as n,f as p,s as c}from"./p-DGLCmOXW.js";import{c as l}from"./p-CBWjHURv.js";import"./p-ChV9xqsO.js";const h="*{box-sizing:border-box}.absolute{position:absolute!important}.cursor-pointer{cursor:pointer!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.hover\\:text-black-teal:hover{--tw-text-opacity:1!important;color:rgb(3 42 36/var(--tw-text-opacity,1))!important}";const d=class{constructor(i){t(this,i)}strategy="absolute";placement="top";render(){return i("p-tooltip",{key:"ab6ca1a855d08902f176f50db8ff60a5ddcdc2f9",placement:this.placement,strategy:this.strategy},i("div",{key:"87e1387305675572b5dc92431538ecd4633a98ce",slot:"content"},i("slot",{key:"6689e7ff6c1c6cdc1619a5d593845608fd0624d2"})),i("p-icon",{key:"d081f770445e5fc500eaa3e1dcdd43ba87d97a9b",size:"sm",class:"cursor-pointer text-black-teal-300 hover:text-black-teal",variant:"question-circle",slot:"trigger"}))}};d.style=h;const m="*{box-sizing:border-box}.pointer-events-none{pointer-events:none!important}.pointer-events-auto{pointer-events:auto!important}.visible{visibility:visible!important}.static{position:static!important}.fixed{position:fixed!important}.absolute{position:absolute!important}.relative{position:relative!important}.z-tooltip{z-index:601!important}.inline-block{display:inline-block!important}.flex{display:flex!important}.h-inherit{height:inherit!important}.w-\\[2px\\]{width:2px!important}.w-full{width:100%!important}.w-inherit{width:inherit!important}.w-max{width:max-content!important}.max-w-\\[14\\.5rem\\]{max-width:14.5rem!important}.max-w-full{max-width:100%!important}.cursor-pointer{cursor:pointer!important}.gap-2{gap:.5rem!important}.rounded-lg{border-radius:.5rem!important}.bg-black-teal{--tw-bg-opacity:1!important;background-color:rgb(3 42 36/var(--tw-bg-opacity,1))!important}.bg-negative-red{background-color:rgb(230 30 30/var(--tw-bg-opacity,1))!important}.bg-negative-red,.bg-white{--tw-bg-opacity:1!important}.bg-white{background-color:rgb(255 255 255/var(--tw-bg-opacity,1))!important}.px-2{padding-left:.5rem!important;padding-right:.5rem!important}.py-1{padding-bottom:.25rem!important;padding-top:.25rem!important}.py-2{padding-bottom:.5rem!important;padding-top:.5rem!important}.text-xs{font-size:.75rem!important;line-height:1rem!important}.text-black-teal-300{--tw-text-opacity:1!important;color:rgb(104 127 124/var(--tw-text-opacity,1))!important}.text-white{--tw-text-opacity:1!important;color:rgb(255 255 255/var(--tw-text-opacity,1))!important}.opacity-0{opacity:0!important}.opacity-100{opacity:1!important}.blur{--tw-blur:blur(8px)!important}.blur,.drop-shadow-3{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)!important}.drop-shadow-3{--tw-drop-shadow:drop-shadow(0 1px 1px rgba(0,2,2,.08)) drop-shadow(0 2px 2px rgba(0,2,2,.08)) drop-shadow(0 4px 4px rgba(0,2,2,.08))!important}.transition-opacity{transition-duration:.15s!important;transition-property:opacity!important;transition-timing-function:cubic-bezier(.4,0,.2,1)!important}";const b=l(["inline-block px-2","text-xs","opacity-0 drop-shadow-3 transition-opacity","rounded-lg","z-tooltip","pointer-events-none"],{variants:{variant:{hover:"bg-black-teal text-white py-1",click:null,error:"max-w-full w-full"},strategy:{none:null,fixed:"fixed",absolute:"absolute"}},compoundVariants:[{variant:["hover","click"],class:"max-w-[14.5rem] w-max"},{variant:["click","error"],class:"bg-white text-black-teal-300 py-2"}]});const u=l("",{variants:{strategy:{fixed:"fixed",absolute:"absolute"}}});const f=class{constructor(i){t(this,i);this.isOpen=e(this,"isOpen",3)}variant="hover";content=null;placement;offset=8;strategy="absolute";enableUserInput=true;show=false;usePortal=false;canManuallyClose=true;isOpen;get _el(){return a(this)}_hasContentSlot=false;_loaded=false;_popover;_cleanup;componentWillLoad(){this._hasContentSlot=!!this._el.querySelector(':scope > [slot="content"]')}componentShouldUpdate(){this._update()}disconnectedCallback(){if(this._cleanup){this._cleanup();this._cleanup=null}}render(){const t={role:"popover","data-placement":this.placement,ref:t=>this._load(t)};let e;const a=i("div",{key:"75eef206b703bfb6a29905de656c5ecc7abd6b56",class:b({variant:this.variant,strategy:this.usePortal?"none":this.strategy}),...this.usePortal?{}:t},i("div",{key:"e0ad08f0d342a495c46cb60f584c97c8087514b7",class:"flex gap-2"},this.variant==="error"&&i("div",{key:"f30f7be26055aaccb9ead865189c684c2b711710",class:"w-[2px] bg-negative-red"}),this.content?this.content:i("slot",{name:"content"})));if(this.usePortal){e=i("p-portal",{key:"1c23eb5c50d1cba9aef27ca8129816cd48d7e930",class:u({strategy:this.strategy}),...t},a)}else{e=a}return i(o,{key:"30360842d6273d3861ea5546f600a08c9a191b1d",class:"flex cursor-pointer"},i("div",{key:"c4f8695b1c81b0863396e159bc5fb85052addfe3",class:"relative h-inherit w-inherit max-w-full"},i("slot",{key:"f137434492c73b66d1428437175b59f262f1e8b3",name:"trigger"}),e))}clickHandler(){if(this.variant==="hover"||!this.enableUserInput){return}if(this._popover.hasAttribute("data-show")){return}this._show()}documentClickHandler(){if(this.variant==="hover"||!this.canManuallyClose||this.show){return}if(!this._popover.hasAttribute("data-show")){return}this._hide()}mouseEnterHandler(){if(this.variant!=="hover"||!this.enableUserInput){return}this._show()}mouseLeaveHandler(){if(this.show||this.variant!=="hover"||!this.enableUserInput){return}this._hide()}onShowChange(t){if(t&&!this._popover.hasAttribute("data-show")){return this._show()}return this._hide()}_show(){if(!this._loaded){return}if(!this.content?.length&&!this._hasContentSlot){if(this._popover.hasAttribute("data-show")){this._hide()}return}this._cleanup=r(this._el,this._popover,(()=>this._update()));this._popover.setAttribute("data-show","");this._popover.classList.remove("opacity-0","pointer-events-none");this._popover.classList.add("opacity-100","pointer-events-auto");this.isOpen.emit(true)}_hide(){if(!this._loaded){return}if(this._cleanup){this._cleanup();this._cleanup=null}this._popover.removeAttribute("data-show");this._popover.classList.remove("opacity-100","pointer-events-auto");this._popover.classList.add("opacity-0","pointer-events-none");this.isOpen.emit(false)}_load(t){this._popover=t;if(t){this._update();this._loaded=true;if(this.show){setTimeout((()=>this._show()),100)}}}_update(){if(!this._popover){return}s(this._el,this._popover,{placement:this.variant==="error"&&!this.placement?"bottom-start":this.placement??"top",strategy:this.strategy,middleware:[n(this.offset),p(),c()]}).then((({x:t,y:i,placement:e})=>{this._popover.dataset.placement=e;Object.assign(this._popover.style,{top:`${i}px`,left:`${t}px`})}))}static get watchers(){return{show:["onShowChange"]}}};f.style=m;export{d as p_helper,f as p_tooltip};
|
|
2
|
-
//# sourceMappingURL=p-c7139e78.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["helperComponentCss","Helper","strategy","placement","render","h","key","this","slot","size","class","variant","tooltipComponentCss","popover","cva","variants","hover","click","error","none","fixed","absolute","compoundVariants","portal","Tooltip","content","offset","enableUserInput","show","usePortal","canManuallyClose","isOpen","_hasContentSlot","_loaded","_popover","_cleanup","componentWillLoad","_el","querySelector","componentShouldUpdate","_update","disconnectedCallback","tooltipProps","role","ref","el","_load","tooltip","tooltipElement","name","Host","clickHandler","hasAttribute","_show","documentClickHandler","_hide","mouseEnterHandler","mouseLeaveHandler","onShowChange","length","autoUpdate","setAttribute","classList","remove","add","emit","removeAttribute","setTimeout","computePosition","middleware","flip","shift","then","x","y","dataset","Object","assign","style","top","left"],"sources":["src/components/atoms/helper/helper.component.css?tag=p-helper&encapsulation=shadow","src/components/atoms/helper/helper.component.tsx","src/components/atoms/tooltip/tooltip.component.css?tag=p-tooltip&encapsulation=shadow","src/components/atoms/tooltip/tooltip.component.tsx"],"sourcesContent":[null,"import { Placement, Strategy } from '@floating-ui/dom';\nimport { Component, h, Prop } from '@stencil/core';\n\n@Component({\n\ttag: 'p-helper',\n\tstyleUrl: 'helper.component.css',\n\tshadow: true,\n})\nexport class Helper {\n\t/**\n\t * The strategy of the popover placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * The placement of the helper popover\n\t */\n\t@Prop() placement: Placement = 'top';\n\n\trender() {\n\t\treturn (\n\t\t\t<p-tooltip\n\t\t\t\tplacement={this.placement}\n\t\t\t\tstrategy={this.strategy}\n\t\t\t>\n\t\t\t\t<div slot='content'>\n\t\t\t\t\t<slot />\n\t\t\t\t</div>\n\n\t\t\t\t<p-icon\n\t\t\t\t\tsize='sm'\n\t\t\t\t\tclass='cursor-pointer text-black-teal-300 hover:text-black-teal'\n\t\t\t\t\tvariant='question-circle'\n\t\t\t\t\tslot='trigger'\n\t\t\t\t/>\n\t\t\t</p-tooltip>\n\t\t);\n\t}\n}\n",null,"import {\n\tautoUpdate,\n\tcomputePosition,\n\tflip,\n\toffset,\n\tPlacement,\n\tshift,\n\tStrategy,\n} from '@floating-ui/dom';\nimport {\n\tComponent,\n\tElement,\n\tEvent,\n\tEventEmitter,\n\th,\n\tHost,\n\tListen,\n\tProp,\n\tWatch,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\n\nconst popover = cva(\n\t[\n\t\t'inline-block px-2',\n\t\t'text-xs',\n\t\t'opacity-0 drop-shadow-3 transition-opacity',\n\t\t'rounded-lg',\n\n\t\t'z-tooltip',\n\t\t'pointer-events-none',\n\t],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\thover: 'bg-black-teal text-white py-1',\n\t\t\t\tclick: null,\n\t\t\t\terror: 'max-w-full w-full',\n\t\t\t},\n\t\t\tstrategy: {\n\t\t\t\tnone: null,\n\t\t\t\tfixed: 'fixed',\n\t\t\t\tabsolute: 'absolute',\n\t\t\t},\n\t\t},\n\t\tcompoundVariants: [\n\t\t\t{\n\t\t\t\tvariant: ['hover', 'click'],\n\t\t\t\tclass: 'max-w-[14.5rem] w-max',\n\t\t\t},\n\t\t\t{\n\t\t\t\tvariant: ['click', 'error'],\n\t\t\t\tclass: 'bg-white text-black-teal-300 py-2',\n\t\t\t},\n\t\t],\n\t}\n);\n\nconst portal = cva('', {\n\tvariants: {\n\t\tstrategy: {\n\t\t\tfixed: 'fixed',\n\t\t\tabsolute: 'absolute',\n\t\t},\n\t},\n});\n\n@Component({\n\ttag: 'p-tooltip',\n\tstyleUrl: 'tooltip.component.css',\n\tshadow: true,\n})\nexport class Tooltip {\n\t/**\n\t * The variant of the popover\n\t */\n\t@Prop() variant: 'hover' | 'click' | 'error' = 'hover';\n\n\t/**\n\t * The content of the popover\n\t */\n\t@Prop() content: any = null;\n\n\t/**\n\t * The placement of the popover\n\t */\n\t@Prop() placement: Placement;\n\n\t/**\n\t * The offset of the popover\n\t */\n\t@Prop() offset: number = 8;\n\n\t/**\n\t * The strategy of the popover placement\n\t */\n\t@Prop() strategy: Strategy = 'absolute';\n\n\t/**\n\t * Wether the tooltip can be shown by user input\n\t */\n\t@Prop() enableUserInput: boolean = true;\n\n\t/**\n\t * Wether to show the popover\n\t */\n\t@Prop() show: boolean = false;\n\n\t/**\n\t * Wether to use a portal for the tooltip\n\t */\n\t@Prop() usePortal: boolean = false;\n\n\t/**\n\t * Wether to someone can manually close the popover\n\t */\n\t@Prop() canManuallyClose: boolean = true;\n\n\t/**\n\t * Open change event\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tisOpen: EventEmitter<boolean>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\tprivate _hasContentSlot = false;\n\n\tprivate _loaded = false;\n\tprivate _popover: HTMLElement;\n\tprivate _cleanup: () => void;\n\n\tcomponentWillLoad() {\n\t\tthis._hasContentSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"content\"]'\n\t\t);\n\t}\n\n\tcomponentShouldUpdate() {\n\t\tthis._update();\n\t}\n\n\tdisconnectedCallback() {\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\t}\n\n\trender() {\n\t\tconst tooltipProps = {\n\t\t\trole: 'popover',\n\t\t\t'data-placement': this.placement,\n\t\t\tref: el => this._load(el),\n\t\t};\n\n\t\tlet tooltip: HTMLElement;\n\n\t\tconst tooltipElement = (\n\t\t\t<div\n\t\t\t\tclass={popover({\n\t\t\t\t\tvariant: this.variant,\n\t\t\t\t\tstrategy: this.usePortal ? 'none' : this.strategy,\n\t\t\t\t})}\n\t\t\t\t{...(this.usePortal ? {} : tooltipProps)}\n\t\t\t>\n\t\t\t\t<div class='flex gap-2'>\n\t\t\t\t\t{this.variant === 'error' && (\n\t\t\t\t\t\t<div class='w-[2px] bg-negative-red'></div>\n\t\t\t\t\t)}\n\t\t\t\t\t{this.content ? this.content : <slot name='content' />}\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t);\n\n\t\tif (this.usePortal) {\n\t\t\ttooltip = (\n\t\t\t\t<p-portal\n\t\t\t\t\tclass={portal({\n\t\t\t\t\t\tstrategy: this.strategy,\n\t\t\t\t\t})}\n\t\t\t\t\t{...tooltipProps}\n\t\t\t\t>\n\t\t\t\t\t{tooltipElement}\n\t\t\t\t</p-portal>\n\t\t\t);\n\t\t} else {\n\t\t\ttooltip = tooltipElement;\n\t\t}\n\n\t\treturn (\n\t\t\t<Host class='flex cursor-pointer'>\n\t\t\t\t<div class='relative h-inherit w-inherit max-w-full'>\n\t\t\t\t\t<slot name='trigger' />\n\t\t\t\t\t{tooltip}\n\t\t\t\t</div>\n\t\t\t</Host>\n\t\t);\n\t}\n\n\t@Listen('click', { capture: true })\n\tprotected clickHandler() {\n\t\tif (this.variant === 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._popover.hasAttribute('data-show')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('click', { target: 'document', capture: true })\n\tprotected documentClickHandler() {\n\t\tif (this.variant === 'hover' || !this.canManuallyClose || this.show) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this._popover.hasAttribute('data-show')) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\t@Listen('mouseenter')\n\t@Listen('focus')\n\tprotected mouseEnterHandler() {\n\t\tif (this.variant !== 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._show();\n\t}\n\n\t@Listen('mouseleave')\n\t@Listen('blur')\n\tprotected mouseLeaveHandler() {\n\t\tif (this.show || this.variant !== 'hover' || !this.enableUserInput) {\n\t\t\treturn;\n\t\t}\n\n\t\tthis._hide();\n\t}\n\n\t@Watch('show')\n\tonShowChange(show: boolean) {\n\t\tif (show && !this._popover.hasAttribute('data-show')) {\n\t\t\treturn this._show();\n\t\t}\n\n\t\treturn this._hide();\n\t}\n\n\tprivate _show() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (!this.content?.length && !this._hasContentSlot) {\n\t\t\tif (this._popover.hasAttribute('data-show')) {\n\t\t\t\tthis._hide();\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tthis._cleanup = autoUpdate(this._el, this._popover, () => this._update());\n\n\t\t// Make the popover visible\n\t\tthis._popover.setAttribute('data-show', '');\n\n\t\tthis._popover.classList.remove('opacity-0', 'pointer-events-none');\n\t\tthis._popover.classList.add('opacity-100', 'pointer-events-auto');\n\n\t\t// Update its position\n\t\tthis.isOpen.emit(true);\n\t}\n\n\tprivate _hide() {\n\t\tif (!this._loaded) {\n\t\t\treturn;\n\t\t}\n\n\t\tif (this._cleanup) {\n\t\t\tthis._cleanup();\n\t\t\tthis._cleanup = null;\n\t\t}\n\n\t\t// Hide the popover\n\t\tthis._popover.removeAttribute('data-show');\n\n\t\tthis._popover.classList.remove('opacity-100', 'pointer-events-auto');\n\t\tthis._popover.classList.add('opacity-0', 'pointer-events-none');\n\n\t\tthis.isOpen.emit(false);\n\t}\n\n\tprivate _load(popover: HTMLElement) {\n\t\tthis._popover = popover;\n\n\t\tif (popover) {\n\t\t\tthis._update();\n\t\t\tthis._loaded = true;\n\n\t\t\tif (this.show) {\n\t\t\t\tsetTimeout(() => this._show(), 100);\n\t\t\t}\n\t\t}\n\t}\n\n\tprivate _update() {\n\t\tif (!this._popover) {\n\t\t\treturn;\n\t\t}\n\n\t\tcomputePosition(this._el, this._popover, {\n\t\t\tplacement:\n\t\t\t\tthis.variant === 'error' && !this.placement\n\t\t\t\t\t? 'bottom-start'\n\t\t\t\t\t: this.placement ?? 'top',\n\t\t\tstrategy: this.strategy,\n\n\t\t\tmiddleware: [offset(this.offset), flip(), shift()],\n\t\t}).then(({ x, y, placement }) => {\n\t\t\tthis._popover.dataset.placement = placement;\n\t\t\tObject.assign(this._popover.style, {\n\t\t\t\ttop: `${y}px`,\n\t\t\t\tleft: `${x}px`,\n\t\t\t});\n\t\t});\n\t}\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{r as t,c as e,g as a,h as o}from"./p-DhGo7hbh.js";import{c as r}from"./p-CBWjHURv.js";import"./p-ChV9xqsO.js";const i="*{box-sizing:border-box}.static{position:static!important}.absolute{position:absolute!important}.relative{position:relative!important}.right-2{right:.5rem!important}.top-2{top:.5rem!important}.my-0{margin-bottom:0!important;margin-top:0!important}.flex{display:flex!important}.h-6{height:1.5rem!important}.w-6{width:1.5rem!important}.w-full{width:100%!important}.cursor-pointer{cursor:pointer!important}.flex-col{flex-direction:column!important}.items-center{align-items:center!important}.justify-center{justify-content:center!important}.gap-1{gap:.25rem!important}.rounded-lg{border-radius:.5rem!important}.bg-amber-50{--tw-bg-opacity:1!important;background-color:rgb(255 250 224/var(--tw-bg-opacity,1))!important}.bg-negative-red-100{--tw-bg-opacity:1!important;background-color:rgb(255 221 221/var(--tw-bg-opacity,1))!important}.bg-positive-green-100{--tw-bg-opacity:1!important;background-color:rgb(213 251 199/var(--tw-bg-opacity,1))!important}.bg-supportive-lilac-200{--tw-bg-opacity:1!important;background-color:rgb(237 223 255/var(--tw-bg-opacity,1))!important}.bg-white-700{--tw-bg-opacity:1!important;background-color:rgb(242 242 242/var(--tw-bg-opacity,1))!important}.px-4{padding-left:1rem!important;padding-right:1rem!important}.py-3{padding-bottom:.75rem!important;padding-top:.75rem!important}.text-sm{font-size:.875rem!important;line-height:1.25rem!important}.font-medium{font-weight:500!important}.text-amber-800{--tw-text-opacity:1!important;color:rgb(148 77 11/var(--tw-text-opacity,1))!important}.text-black-teal-800{--tw-text-opacity:1!important;color:rgb(0 2 2/var(--tw-text-opacity,1))!important}.text-black-teal-800\\/60{color:rgba(0,2,2,.6)!important}.text-negative-red-800{--tw-text-opacity:1!important;color:rgb(141 16 16/var(--tw-text-opacity,1))!important}.text-positive-green-800{--tw-text-opacity:1!important;color:rgb(47 100 7/var(--tw-text-opacity,1))!important}.text-supportive-lilac-900{--tw-text-opacity:1!important;color:rgb(80 9 179/var(--tw-text-opacity,1))!important}.hover\\:bg-white-500\\/40:hover{background-color:hsla(0,0%,100%,.4)!important}.hover\\:text-black-teal-800\\/60:hover{color:rgba(0,2,2,.6)!important}";const n=r(["flex flex-col gap-1","w-full px-4 py-3","rounded-lg relative"],{variants:{variant:{neutral:"bg-supportive-lilac-200",positive:"bg-positive-green-100",biased:"bg-amber-50",negative:"bg-negative-red-100",feedback:"bg-white-700"}}});const p=r("text-sm font-medium",{variants:{variant:{neutral:"text-supportive-lilac-900",positive:"text-positive-green-800",biased:"text-amber-800",negative:"text-negative-red-800",feedback:"text-black-teal-800"}}});const c=r(["absolute right-2 top-2","flex items-center justify-center","rounded-lg cursor-pointer","text-black-teal-800/60 hover:text-black-teal-800/60 hover:bg-white-500/40","h-6 w-6"]);const s=class{constructor(a){t(this,a);this.closed=e(this,"closed",3)}variant="feedback";header;content;closeable=false;closed;get _el(){return a(this)}render(){const t=!!this._el.querySelector(':scope > [slot="header"]');const e=!!this._el.querySelector(':scope > [slot="content"]');return o("div",{key:"f424e56cfac5e6a45ed0d75953a8d6d25501cd44",class:n({variant:this.variant})},(this.header?.length||t)&&o("div",{key:"844a536b5998119b02633e523db7fbf6e6a1d44b",class:p({variant:this.variant})},this.header?.length?o("p",{class:"my-0"},this.header):o("slot",{name:"header"})),(this.content?.length||e)&&o("div",{key:"89b8be3cfe1729858b83e4a6f41933bf25ffc9fd",class:"text-sm text-black-teal-800/60"},this.content?.length?o("p",{class:"my-0"},this.content):o("slot",{name:"content"})),this.closeable&&o("div",{key:"d5c613697642f3b7a3e959c1755750c142c0dc06",class:c(),onClick:()=>this._close()},o("p-icon",{key:"a8ab1cee8055d971616d4076cab58b5b98dd439b",variant:"negative"})))}_close(){this.closed.emit();this._el.remove()}};s.style=i;export{s as p_info_panel};
|
|
2
|
-
//# sourceMappingURL=p-e0156f45.entry.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"names":["infoPanelComponentCss","infopanel","cva","variants","variant","neutral","positive","biased","negative","feedback","header","close","InfoPanel","content","closeable","closed","render","hasHeaderSlot","this","_el","querySelector","hasContentSlot","h","key","class","length","name","onClick","_close","emit","remove"],"sources":["src/components/atoms/info-panel/info-panel.component.css?tag=p-info-panel&encapsulation=shadow","src/components/atoms/info-panel/info-panel.component.tsx"],"sourcesContent":[null,"import {\n\tComponent,\n\tElement,\n\th,\n\tProp,\n\tEvent,\n\tEventEmitter,\n} from '@stencil/core';\nimport { cva } from 'class-variance-authority';\n\nconst infopanel = cva(\n\t['flex flex-col gap-1', 'w-full px-4 py-3', 'rounded-lg relative'],\n\t{\n\t\tvariants: {\n\t\t\tvariant: {\n\t\t\t\tneutral: 'bg-supportive-lilac-200',\n\t\t\t\tpositive: 'bg-positive-green-100',\n\t\t\t\tbiased: 'bg-amber-50',\n\t\t\t\tnegative: 'bg-negative-red-100',\n\t\t\t\tfeedback: 'bg-white-700',\n\t\t\t},\n\t\t},\n\t}\n);\n\nconst header = cva('text-sm font-medium', {\n\tvariants: {\n\t\tvariant: {\n\t\t\tneutral: 'text-supportive-lilac-900',\n\t\t\tpositive: 'text-positive-green-800',\n\t\t\tbiased: 'text-amber-800',\n\t\t\tnegative: 'text-negative-red-800',\n\t\t\tfeedback: 'text-black-teal-800',\n\t\t},\n\t},\n});\n\nconst close = cva([\n\t'absolute right-2 top-2',\n\t'flex items-center justify-center',\n\n\t'rounded-lg cursor-pointer',\n\t'text-black-teal-800/60 hover:text-black-teal-800/60 hover:bg-white-500/40',\n\n\t'h-6 w-6',\n]);\n\n@Component({\n\ttag: 'p-info-panel',\n\tstyleUrl: 'info-panel.component.css',\n\tshadow: true,\n})\nexport class InfoPanel {\n\t/**\n\t * The variant of the info panel\n\t */\n\t@Prop() variant:\n\t\t| 'neutral'\n\t\t| 'positive'\n\t\t| 'biased'\n\t\t| 'negative'\n\t\t| 'feedback' = 'feedback';\n\n\t/**\n\t * The header of the info panel\n\t */\n\t@Prop() header: string;\n\n\t/**\n\t * The content of the info panel\n\t */\n\t@Prop() content: string;\n\n\t/**\n\t * Wether the panel can be closed\n\t */\n\t@Prop() closeable: boolean = false;\n\n\t/**\n\t * When the backdrop is clicked\n\t */\n\t@Event({\n\t\tbubbles: false,\n\t})\n\tclosed: EventEmitter<void>;\n\n\t/**\n\t * The host element\n\t */\n\t@Element() private _el: HTMLElement;\n\n\trender() {\n\t\tconst hasHeaderSlot = !!this._el.querySelector(':scope > [slot=\"header\"]');\n\t\tconst hasContentSlot = !!this._el.querySelector(\n\t\t\t':scope > [slot=\"content\"]'\n\t\t);\n\n\t\treturn (\n\t\t\t<div class={infopanel({ variant: this.variant })}>\n\t\t\t\t{(this.header?.length || hasHeaderSlot) && (\n\t\t\t\t\t<div class={header({ variant: this.variant })}>\n\t\t\t\t\t\t{this.header?.length ? (\n\t\t\t\t\t\t\t<p class='my-0'>{this.header}</p>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<slot name='header' />\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{(this.content?.length || hasContentSlot) && (\n\t\t\t\t\t<div class='text-sm text-black-teal-800/60'>\n\t\t\t\t\t\t{this.content?.length ? (\n\t\t\t\t\t\t\t<p class='my-0'>{this.content}</p>\n\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t<slot name='content' />\n\t\t\t\t\t\t)}\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\n\t\t\t\t{this.closeable && (\n\t\t\t\t\t<div\n\t\t\t\t\t\tclass={close()}\n\t\t\t\t\t\tonClick={() => this._close()}\n\t\t\t\t\t>\n\t\t\t\t\t\t<p-icon variant='negative' />\n\t\t\t\t\t</div>\n\t\t\t\t)}\n\t\t\t</div>\n\t\t);\n\t}\n\n\tprivate _close() {\n\t\tthis.closed.emit();\n\t\tthis._el.remove();\n\t}\n}\n"],"mappings":"qHAAA,MAAMA,EAAwB,gnECU9B,MAAMC,EAAYC,EACjB,CAAC,sBAAuB,mBAAoB,uBAC5C,CACCC,SAAU,CACTC,QAAS,CACRC,QAAS,0BACTC,SAAU,wBACVC,OAAQ,cACRC,SAAU,sBACVC,SAAU,mBAMd,MAAMC,EAASR,EAAI,sBAAuB,CACzCC,SAAU,CACTC,QAAS,CACRC,QAAS,4BACTC,SAAU,0BACVC,OAAQ,iBACRC,SAAU,wBACVC,SAAU,0BAKb,MAAME,EAAQT,EAAI,CACjB,yBACA,mCAEA,4BACA,4EAEA,Y,MAQYU,EAAS,M,wDAIbR,QAKQ,WAKRM,OAKAG,QAKAC,UAAqB,MAQ7BC,O,yBAOA,MAAAC,GACC,MAAMC,IAAkBC,KAAKC,IAAIC,cAAc,4BAC/C,MAAMC,IAAmBH,KAAKC,IAAIC,cACjC,6BAGD,OACCE,EAAA,OAAAC,IAAA,2CAAKC,MAAOvB,EAAU,CAAEG,QAASc,KAAKd,YACnCc,KAAKR,QAAQe,QAAUR,IACxBK,EAAK,OAAAC,IAAA,2CAAAC,MAAOd,EAAO,CAAEN,QAASc,KAAKd,WACjCc,KAAKR,QAAQe,OACbH,EAAA,KAAGE,MAAM,QAAQN,KAAKR,QAEtBY,EAAA,QAAMI,KAAK,aAKZR,KAAKL,SAASY,QAAUJ,IACzBC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,kCACTN,KAAKL,SAASY,OACdH,EAAA,KAAGE,MAAM,QAAQN,KAAKL,SAEtBS,EAAM,QAAAI,KAAK,aAKbR,KAAKJ,WACLQ,EACC,OAAAC,IAAA,2CAAAC,MAAOb,IACPgB,QAAS,IAAMT,KAAKU,UAEpBN,EAAQ,UAAAC,IAAA,2CAAAnB,QAAQ,c,CAOb,MAAAwB,GACPV,KAAKH,OAAOc,OACZX,KAAKC,IAAIW,Q","ignoreList":[]}
|