scb-wc-test 0.1.307 → 0.1.309
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/all.js +1 -0
- package/mvc/components/scb-card/scb-card.js +0 -1
- package/mvc/components/scb-drop-zone/scb-drop-zone.js +9 -16
- package/mvc/components/scb-tooltip/scb-tooltip.js +2 -2
- package/mvc/components/scb-viz/scb-viz-series-differentiation-registry.js +1 -1
- package/mvc/components/scb-viz/scb-viz.js +112 -32
- package/package.json +6 -2
- package/scb-card/scb-card.js +0 -1
- package/scb-drop-zone/scb-drop-zone.d.ts +22 -12
- package/scb-drop-zone/scb-drop-zone.js +166 -143
- package/scb-tooltip/scb-tooltip.js +2 -2
- package/scb-viz/scb-viz-series-differentiation-registry.js +103 -0
- package/scb-viz/scb-viz.d.ts +7 -3
- package/scb-viz/scb-viz.js +510 -434
- package/scb-wc-test.bundle.js +535 -463
package/all.js
CHANGED
|
@@ -167,4 +167,5 @@ import './scb-textfield/scb-textfield.js';
|
|
|
167
167
|
import './scb-toc/scb-toc-item.js';
|
|
168
168
|
import './scb-toc/scb-toc.js';
|
|
169
169
|
import './scb-tooltip/scb-tooltip.js';
|
|
170
|
+
import './scb-viz/scb-viz-series-differentiation-registry.js';
|
|
170
171
|
import './scb-viz/scb-viz.js';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";import"../scb-button/scb-button.js";import"../../vendor/vendor-material.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var t=customElements.define.bind(customElements);customElements.define=function(r,i,l){try{customElements.get(r)||t(r,i,l)}catch(d){var n=String(d||"");if(n.indexOf("already been used")===-1&&n.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var g=Object.defineProperty,w=Object.getOwnPropertyDescriptor,a=(e,t,r,i)=>{for(var l=i>1?void 0:i?w(t,r):t,n=e.length-1,d;n>=0;n--)(d=e[n])&&(l=(i?d(t,r,l):d(l))||l);return i&&l&&g(t,r,l),l};let s=class extends b{constructor(){super(),this._internals=null,this.type="default",this.name="",this.multiple=!1,this.label="",this.supportingText="",this.metaText="",this.buttonLabel="",this.replaceButtonLabel="",this.removeButtonLabel="",this.previewEyebrow="",this.emptyPreviewTitle="",this.emptyPreviewMeta="",this.accept="",this.showPreview=!0,this.disabled=!1,this.previewSrc="",this.defaultImageSrc="",this.previewAlt="",this.previewTitle="",this.previewMeta="",this._isDragOver=!1,this._selectedPreviewKind="empty",this._selectedPreviewSrc="",this._selectedPreviewAlt="",this._selectedPreviewTitle="",this._selectedPreviewMeta="",this._selectedPreviewItems=[],this._dragDepth=0,this._previewSource="external",this._form=null,this._formDataHandler=null,"attachInternals"in this&&(this._internals=this.attachInternals())}get _resolvedAccept(){return this.accept.trim()||(this.type==="image"?"image/*,.png,.jpg,.jpeg,.webp,.svg,.gif,.bmp,.avif":"")}get _hasExternalPreview(){return!!this._resolvedExternalPreviewSrc||!!this.previewTitle.trim()||!!this.previewMeta.trim()}get _resolvedExternalPreviewSrc(){return this.previewSrc.trim()||this.defaultImageSrc.trim()}get _resolvedPreviewKind(){return this._previewSource==="external"&&this._hasExternalPreview?this._resolvedExternalPreviewSrc?"image":"file":this._selectedPreviewKind}get _hasPreview(){return this._resolvedPreviewKind!=="empty"}get _resolvedLabel(){return this.label||(this.type==="image"?"Ladda upp bild":"Ladda upp fil")}get _resolvedSupportingText(){return this.multiple?this.supportingText||(this.type==="image"?"Dra och släpp en eller flera bilder här, eller välj bilder från din dator.":"Dra och släpp en eller flera filer här, eller välj filer från din dator."):this.supportingText||(this.type==="image"?"Dra och släpp en bild här, eller välj en bild från din dator.":"Dra och släpp en fil här, eller välj en fil från din dator.")}get _resolvedMetaText(){return this.metaText?this.metaText:this.type==="image"?"PNG, JPG, SVG, GIF, BMP, AVIF och WebP stöds.":"Alla filtyper stöds."}get _resolvedButtonLabel(){return this.buttonLabel||(this.type==="image"?"Välj bild":"Välj fil")}get _resolvedReplaceButtonLabel(){return this.replaceButtonLabel?this.replaceButtonLabel:this.multiple||this._resolvedPreviewKind==="multi"?"Lägg till fler filer":this._resolvedPreviewKind==="image"?"Byt bild":"Byt fil"}get _resolvedRemoveButtonLabel(){return this.removeButtonLabel?this.removeButtonLabel:this._resolvedPreviewKind==="multi"?"Ta bort filer":this._resolvedPreviewKind==="image"?"Ta bort bild":"Ta bort fil"}get _resolvedPreviewEyebrow(){return this.previewEyebrow?this.previewEyebrow:this._hasPreview?this._resolvedPreviewKind==="multi"?"Uppladdade filer":this._resolvedPreviewKind==="image"?"Uppladdad bild":"Uppladdad fil":"Förhandsvisning"}get _resolvedEmptyPreviewTitle(){return this.emptyPreviewTitle?this.emptyPreviewTitle:this.multiple?this.type==="image"?"Inga bilder uppladdade":"Inga filer uppladdade":this.type==="image"?"Ingen bild uppladdad":"Ingen fil uppladdad"}get _resolvedEmptyPreviewMeta(){return this.emptyPreviewMeta?this.emptyPreviewMeta:this.multiple?this.type==="image"?"Förhandsvisningen visas här när du har laddat upp bilder.":"Förhandsvisningen visas här när du har laddat upp filer.":this.type==="image"?"Förhandsvisningen visas här när du har laddat upp en bild.":"Förhandsvisningen visas här när du har laddat upp en fil."}get _resolvedPreviewSrc(){return this._previewSource==="external"&&this._hasExternalPreview?this._resolvedExternalPreviewSrc:this._selectedPreviewSrc}get _resolvedPreviewAlt(){return this._previewSource==="external"&&this._hasExternalPreview?this.previewAlt:this._selectedPreviewAlt}get _resolvedPreviewTitle(){return this._previewSource==="external"&&this._hasExternalPreview?this.previewTitle||(this._resolvedPreviewKind==="image"?"Uppladdad bild":"Uppladdad fil"):this._selectedPreviewTitle}get _resolvedPreviewMeta(){return this._previewSource==="external"&&this._hasExternalPreview?this.previewMeta:this._selectedPreviewMeta}disconnectedCallback(){this._form&&this._formDataHandler&&this._form.removeEventListener("formdata",this._formDataHandler),this._formDataHandler=null,this._form=null,this._revokeObjectUrl(),super.disconnectedCallback()}updated(e){e.has("type")&&this.type==="image"&&this._selectedPreviewKind==="file"&&this._clearSelectedFileState(),(e.has("disabled")||e.has("name")||e.has("multiple"))&&this._syncFormValue()}connectedCallback(){super.connectedCallback(),this._syncFormValue(),this._form=this.closest("form"),this._form&&(this._formDataHandler=e=>{const t=e.formData;t&&this._appendFileToFormData(t)},this._form.addEventListener("formdata",this._formDataHandler))}formDisabledCallback(e){this.disabled=e}formResetCallback(){this.clearPreviewState()}_syncFormValue(){if(!this._internals)return;const e=this.name.trim();if(this.disabled||!e||!this._selectedPreviewItems.length){this._internals.setFormValue(null);return}if(this.multiple){const t=new FormData;this._selectedPreviewItems.forEach(r=>{t.append(e,r.file,r.file.name)}),this._internals.setFormValue(t);return}this._internals.setFormValue(this._selectedPreviewItems[0].file)}_appendFileToFormData(e){const t=this.name.trim();if(this.disabled||!t||!this._selectedPreviewItems.length)return;e.getAll(t).some(i=>i instanceof File)||this._selectedPreviewItems.forEach(i=>{e.append(t,i.file,i.file.name)})}openPicker(){if(this.disabled)return;const e=this.renderRoot.querySelector('[data-role="native-input"]');if(e){try{e.value=""}catch{}e.click()}}setPreviewState(e){this.previewSrc=e?.src??"",this.previewAlt=e?.alt??"",this.previewTitle=e?.title??"",this.previewMeta=e?.meta??"",this._previewSource="external"}clearPreviewState(){this.previewSrc="",this.previewAlt="",this.previewTitle="",this.previewMeta="",this._previewSource="external",this._clearSelectedFileState(),this._clearNativeInputValue()}_dispatch(e,t={},r=!1){const i=new CustomEvent(e,{detail:t,bubbles:!0,composed:!0,cancelable:r});return this.dispatchEvent(i),i}_handleFiles(e){const t=Array.from(e??[]).filter(l=>this._isAcceptedFile(l));if(!t.length)return;const r=this.multiple?t:[t[0]];this._setSelectedFilesState(r,this.multiple);const i=this._selectedPreviewItems.map(l=>l.file);this._dispatch("file-selected",{file:i[0],files:i,addedFiles:r}),this._dispatch("change",{file:i[0],files:i,addedFiles:r})}_onZoneClick(e){this.disabled||e.composedPath().some(i=>i instanceof HTMLElement&&i.getAttribute("data-role")==="choose-button")||this.openPicker()}_onZoneKeydown(e){this.disabled||(e.key==="Enter"||e.key===" "||e.key==="Spacebar")&&(e.preventDefault(),this.openPicker())}_preventDefaultDrag(e){e.preventDefault(),e.stopPropagation()}_onDragEnter(e){this.disabled||(this._preventDefaultDrag(e),this._dragDepth+=1,this._isDragOver=!0)}_onDragOver(e){this.disabled||(this._preventDefaultDrag(e),this._isDragOver=!0)}_onDragLeave(e){this.disabled||(this._preventDefaultDrag(e),this._dragDepth=Math.max(0,this._dragDepth-1),this._dragDepth||(this._isDragOver=!1))}_onDrop(e){this.disabled||(this._preventDefaultDrag(e),this._dragDepth=0,this._isDragOver=!1,this._handleFiles(e.dataTransfer?.files??null))}_onNativeInputChange(e){const t=e.currentTarget;this._handleFiles(t?.files??null)}_onChooseButtonClick(e){e.preventDefault(),e.stopPropagation(),this.openPicker()}_onReplaceButtonClick(e){e.preventDefault(),e.stopPropagation(),this.openPicker()}_onRemoveButtonClick(e){e.preventDefault(),e.stopPropagation(),this._dispatch("clear-request",{},!0).defaultPrevented||this.clearPreviewState()}_onRemoveSelectedItemClick(e){if(e.preventDefault(),e.stopPropagation(),this.disabled)return;const r=e.currentTarget?.getAttribute("data-index")||"",i=Number.parseInt(r,10);Number.isInteger(i)&&this._removeSelectedItemAt(i)}_isAcceptedFile(e){const t=this._resolvedAccept.trim();if(!t)return!0;const r=e.name.toLowerCase(),i=(e.type||"").toLowerCase(),l=t.split(",").map(n=>n.trim().toLowerCase()).filter(Boolean);return l.length?l.some(n=>n==="*/*"?!0:n.endsWith("/*")?i.startsWith(n.slice(0,-1)):n.startsWith(".")?r.endsWith(n):i===n):!0}_setSelectedFilesState(e,t){const r=e.filter(Boolean);if(!r.length)return;const i=t?this._selectedPreviewItems:[],l=r.map(d=>{const h=this._getPreviewKindForFile(d),v=this._getFileTypeLabel(d),m=this._formatFileSize(d.size),_=h==="image"?URL.createObjectURL(d):"";return{file:d,kind:h,src:_,alt:h==="image"?d.name||"Uppladdad bild":"",title:d.name||(h==="image"?"Uppladdad bild":"Uppladdad fil"),meta:[v,m].filter(Boolean).join(" • ")}});t||this._revokeObjectUrl();const n=this.multiple?[...i,...l]:[l[0]];!this.multiple&&i.length&&this._revokeObjectUrlsForItems(i),this._applySelectedPreviewItems(n)}_clearSelectedFileState(){this._revokeObjectUrl(),this._applySelectedPreviewItems([])}_applySelectedPreviewItems(e){this._selectedPreviewItems=e;const t=e[0];if(!t){this._selectedPreviewKind="empty",this._selectedPreviewTitle="",this._selectedPreviewMeta="",this._selectedPreviewAlt="",this._selectedPreviewSrc="",this._previewSource="internal",this._syncFormValue();return}if(e.length>1){const r=e.reduce((i,l)=>i+(Number.isFinite(l.file.size)?l.file.size:0),0);this._selectedPreviewKind="multi",this._selectedPreviewTitle=`${e.length} filer valda`,this._selectedPreviewMeta=`Totalt ${this._formatFileSize(r)}`,this._selectedPreviewAlt="",this._selectedPreviewSrc=""}else this._selectedPreviewKind=t.kind,this._selectedPreviewTitle=t.title,this._selectedPreviewMeta=t.meta,this._selectedPreviewAlt=t.alt,this._selectedPreviewSrc=t.src;this._previewSource="internal",this._syncFormValue()}_removeSelectedItemAt(e){if(e<0||e>=this._selectedPreviewItems.length)return;const t=this._selectedPreviewItems[e];t.src&&URL.revokeObjectURL(t.src);const r=this._selectedPreviewItems.filter((i,l)=>l!==e);this._applySelectedPreviewItems(r),this._dispatch("file-removed",{file:t.file,files:r.map(i=>i.file),index:e}),this._dispatch("change",{file:r[0]?.file??null,files:r.map(i=>i.file),removedFile:t.file,removedIndex:e})}_renderSelectedImageCards(){return!this.multiple||this.type!=="image"||!this._selectedPreviewItems.some(t=>t.kind==="image"&&t.src)?null:p`
|
|
1
|
+
import{a as _,n as o,r as c,i as g,x as p,t as b}from"../../vendor/vendor.js";import"../scb-button/scb-button.js";import"../../vendor/vendor-material.js";(function(){try{var e=typeof globalThis<"u"?globalThis:window;if(!e.__scb_ce_guard_installed__){e.__scb_ce_guard_installed__=!0;var t=customElements.define.bind(customElements);customElements.define=function(r,i,l){try{customElements.get(r)||t(r,i,l)}catch(d){var n=String(d||"");if(n.indexOf("already been used")===-1&&n.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var f=Object.defineProperty,w=Object.getOwnPropertyDescriptor,a=(e,t,r,i)=>{for(var l=i>1?void 0:i?w(t,r):t,n=e.length-1,d;n>=0;n--)(d=e[n])&&(l=(i?d(t,r,l):d(l))||l);return i&&l&&f(t,r,l),l};let s=class extends g{constructor(){super(),this._internals=null,this.type="default",this.name="",this.multiple=!1,this.label="",this.supportingText="",this.metaText="",this.buttonLabel="",this.replaceButtonLabel="",this.removeButtonLabel="",this.previewEyebrow="",this.emptyPreviewTitle="",this.emptyPreviewMeta="",this.accept="",this.showPreview=!0,this.showExistingPreview=!1,this.disabled=!1,this.previewSrc="",this.previewAlt="",this.previewTitle="",this.previewMeta="",this.existingValue="",this.existingValueName="",this.removeValueName="",this._isDragOver=!1,this._selectedPreviewKind="empty",this._selectedPreviewSrc="",this._selectedPreviewAlt="",this._selectedPreviewTitle="",this._selectedPreviewMeta="",this._selectedPreviewItems=[],this._markedForRemoval=!1,this._dragDepth=0,this._previewSource="external","attachInternals"in this&&(this._internals=this.attachInternals())}get _resolvedAccept(){return this.accept.trim()||(this.type==="image"?"image/*,.png,.jpg,.jpeg,.webp,.svg,.gif,.bmp,.avif":"")}get _hasExistingPreview(){return this.multiple||this._markedForRemoval||!this.showExistingPreview?!1:!!this.existingValue.trim()||!!this.previewSrc.trim()||!!this.previewTitle.trim()||!!this.previewMeta.trim()}get _resolvedPreviewKind(){return this._previewSource==="external"&&this._hasExistingPreview?this.previewSrc.trim()?"image":"file":this._selectedPreviewKind}get _hasPreview(){return this._resolvedPreviewKind!=="empty"}get _resolvedLabel(){return this.label||(this.type==="image"?"Ladda upp bild":"Ladda upp fil")}get _resolvedSupportingText(){return this.multiple?this.supportingText||(this.type==="image"?"Dra och släpp en eller flera bilder här, eller välj bilder från din dator.":"Dra och släpp en eller flera filer här, eller välj filer från din dator."):this.supportingText||(this.type==="image"?"Dra och släpp en bild här, eller välj en bild från din dator.":"Dra och släpp en fil här, eller välj en fil från din dator.")}get _resolvedMetaText(){return this.metaText?this.metaText:this.type==="image"?"PNG, JPG, SVG, GIF, BMP, AVIF och WebP stöds.":"Alla filtyper stöds."}get _resolvedButtonLabel(){return this.buttonLabel||(this.type==="image"?"Välj bild":"Välj fil")}get _resolvedReplaceButtonLabel(){return this.replaceButtonLabel?this.replaceButtonLabel:this.multiple||this._resolvedPreviewKind==="multi"?"Lägg till fler filer":this._previewSource==="external"&&this._hasExistingPreview?this._resolvedPreviewKind==="image"?"Ersätt bild":"Ersätt fil":this._resolvedPreviewKind==="image"?"Byt bild":"Byt fil"}get _resolvedRemoveButtonLabel(){return this.removeButtonLabel?this.removeButtonLabel:this._resolvedPreviewKind==="multi"?"Ta bort filer":this._previewSource==="external"&&this._hasExistingPreview?this._resolvedPreviewKind==="image"?"Ta bort befintlig bild":"Ta bort befintlig fil":this._resolvedPreviewKind==="image"?"Ta bort bild":"Ta bort fil"}get _resolvedPreviewEyebrow(){return this.previewEyebrow?this.previewEyebrow:this._hasPreview?this._resolvedPreviewKind==="multi"?"Uppladdade filer":this._previewSource==="external"&&this._hasExistingPreview?this._resolvedPreviewKind==="image"?"Befintlig bild":"Befintlig fil":this._resolvedPreviewKind==="image"?"Uppladdad bild":"Uppladdad fil":"Förhandsvisning"}get _resolvedEmptyPreviewTitle(){return this.emptyPreviewTitle?this.emptyPreviewTitle:this.multiple?this.type==="image"?"Inga bilder uppladdade":"Inga filer uppladdade":this.type==="image"?"Ingen bild uppladdad":"Ingen fil uppladdad"}get _resolvedEmptyPreviewMeta(){return this.emptyPreviewMeta?this.emptyPreviewMeta:this.multiple?this.type==="image"?"Förhandsvisningen visas här när du har laddat upp bilder.":"Förhandsvisningen visas här när du har laddat upp filer.":this.type==="image"?"Förhandsvisningen visas här när du har laddat upp en bild.":"Förhandsvisningen visas här när du har laddat upp en fil."}get _resolvedPreviewSrc(){return this._previewSource==="external"&&this._hasExistingPreview?this.previewSrc.trim():this._selectedPreviewSrc}get _resolvedPreviewAlt(){return this._previewSource==="external"&&this._hasExistingPreview?this.previewAlt:this._selectedPreviewAlt}get _resolvedPreviewTitle(){return this._previewSource==="external"&&this._hasExistingPreview?this.previewTitle||(this._resolvedPreviewKind==="image"?"Befintlig bild":"Befintlig fil"):this._selectedPreviewTitle}get _resolvedPreviewMeta(){return this._previewSource==="external"&&this._hasExistingPreview?this.previewMeta:this._selectedPreviewMeta}disconnectedCallback(){this._revokeObjectUrl(),super.disconnectedCallback()}updated(e){e.has("type")&&this.type==="image"&&this._selectedPreviewKind==="file"&&this._clearSelectedFileState(),(e.has("disabled")||e.has("name")||e.has("multiple")||e.has("existingValueName")||e.has("removeValueName")||e.has("existingValue"))&&this._syncFormValue()}formDisabledCallback(e){this.disabled=e}formResetCallback(){this._clearSelectedFileState(),this._markedForRemoval=!1,this._previewSource="external",this._clearNativeInputValue(),this._syncFormValue()}_syncFormValue(){if(!this._internals)return;const e=this.name.trim(),t=this.existingValueName.trim(),r=this.removeValueName.trim(),i=new FormData;if(!this.disabled&&e&&this._selectedPreviewItems.length&&this._selectedPreviewItems.forEach(l=>{i.append(e,l.file,l.file.name)}),!this.disabled&&!this.multiple&&t&&this.existingValue.trim()&&i.append(t,this.existingValue),!this.disabled&&!this.multiple&&r&&i.append(r,this._markedForRemoval?"true":"false"),[...i.keys()].length===0){this._internals.setFormValue(null);return}this._internals.setFormValue(i)}openPicker(){if(this.disabled)return;const e=this.renderRoot.querySelector('[data-role="native-input"]');if(e){try{e.value=""}catch{}e.click()}}setPreviewState(e){this.previewSrc=e?.src??"",this.previewAlt=e?.alt??"",this.previewTitle=e?.title??"",this.previewMeta=e?.meta??"",this._markedForRemoval=!1,this._previewSource=this._selectedPreviewItems.length?"internal":"external",this._syncFormValue()}setExistingFileState(e){if(this.multiple){this.existingValue="",this.previewSrc="",this.previewAlt="",this.previewTitle="",this.previewMeta="",this._markedForRemoval=!1,this._syncFormValue();return}this.existingValue=e?.value??"",this.previewSrc=e?.src??"",this.previewAlt=e?.alt??"",this.previewTitle=e?.title??"",this.previewMeta=e?.meta??"",this._markedForRemoval=!1,this._previewSource=this._selectedPreviewItems.length?"internal":"external",this._syncFormValue()}clearPreviewState(){this.previewSrc="",this.previewAlt="",this.previewTitle="",this.previewMeta="",this._markedForRemoval=!1,this._previewSource="external",this._clearSelectedFileState(),this._clearNativeInputValue(),this._syncFormValue()}clearExistingFileState(){this.existingValue="",this.previewSrc="",this.previewAlt="",this.previewTitle="",this.previewMeta="",this._markedForRemoval=!1,this._selectedPreviewItems.length||(this._previewSource="external"),this._syncFormValue()}_dispatch(e,t={},r=!1){const i=new CustomEvent(e,{detail:t,bubbles:!0,composed:!0,cancelable:r});return this.dispatchEvent(i),i}_handleFiles(e){const t=Array.from(e??[]).filter(l=>this._isAcceptedFile(l));if(!t.length)return;const r=this.multiple?t:[t[0]];this._setSelectedFilesState(r,this.multiple);const i=this._selectedPreviewItems.map(l=>l.file);this._dispatch("file-selected",{file:i[0],files:i,addedFiles:r,existingValue:this.existingValue,markedForRemoval:this._markedForRemoval}),this._dispatch("change",{file:i[0],files:i,addedFiles:r,existingValue:this.existingValue,markedForRemoval:this._markedForRemoval})}_onZoneClick(e){this.disabled||e.composedPath().some(i=>i instanceof HTMLElement&&i.getAttribute("data-role")==="choose-button")||this.openPicker()}_onZoneKeydown(e){this.disabled||(e.key==="Enter"||e.key===" "||e.key==="Spacebar")&&(e.preventDefault(),this.openPicker())}_preventDefaultDrag(e){e.preventDefault(),e.stopPropagation()}_onDragEnter(e){this.disabled||(this._preventDefaultDrag(e),this._dragDepth+=1,this._isDragOver=!0)}_onDragOver(e){this.disabled||(this._preventDefaultDrag(e),this._isDragOver=!0)}_onDragLeave(e){this.disabled||(this._preventDefaultDrag(e),this._dragDepth=Math.max(0,this._dragDepth-1),this._dragDepth||(this._isDragOver=!1))}_onDrop(e){this.disabled||(this._preventDefaultDrag(e),this._dragDepth=0,this._isDragOver=!1,this._handleFiles(e.dataTransfer?.files??null))}_onNativeInputChange(e){const t=e.currentTarget;this._handleFiles(t?.files??null)}_onChooseButtonClick(e){e.preventDefault(),e.stopPropagation(),this.openPicker()}_onReplaceButtonClick(e){e.preventDefault(),e.stopPropagation(),this.openPicker()}_onRemoveButtonClick(e){if(e.preventDefault(),e.stopPropagation(),!this._dispatch("clear-request",{file:this._selectedPreviewItems[0]?.file??null,files:this._selectedPreviewItems.map(r=>r.file),existingValue:this.existingValue,markedForRemoval:this._markedForRemoval},!0).defaultPrevented){if(this._selectedPreviewItems.length){this._clearSelectedFileState(),this._clearNativeInputValue(),this._previewSource=this._hasExistingPreview?"external":"internal",this._dispatch("change",{file:null,files:[],existingValue:this.existingValue,markedForRemoval:this._markedForRemoval});return}if(this._hasExistingPreview){this._markedForRemoval=!0,this._previewSource="external",this._syncFormValue(),this.requestUpdate(),this._dispatch("change",{file:null,files:[],existingValue:this.existingValue,markedForRemoval:!0});return}this.clearPreviewState()}}_onRemoveSelectedItemClick(e){if(e.preventDefault(),e.stopPropagation(),this.disabled)return;const r=e.currentTarget?.getAttribute("data-index")||"",i=Number.parseInt(r,10);Number.isInteger(i)&&this._removeSelectedItemAt(i)}_isAcceptedFile(e){const t=this._resolvedAccept.trim();if(!t)return!0;const r=e.name.toLowerCase(),i=(e.type||"").toLowerCase(),l=t.split(",").map(n=>n.trim().toLowerCase()).filter(Boolean);return l.length?l.some(n=>n==="*/*"?!0:n.endsWith("/*")?i.startsWith(n.slice(0,-1)):n.startsWith(".")?r.endsWith(n):i===n):!0}_setSelectedFilesState(e,t){const r=e.filter(Boolean);if(!r.length)return;const i=t?this._selectedPreviewItems:[],l=r.map(d=>{const h=this._getPreviewKindForFile(d),v=this._getFileTypeLabel(d),m=this._formatFileSize(d.size),u=h==="image"?URL.createObjectURL(d):"";return{file:d,kind:h,src:u,alt:h==="image"?d.name||"Uppladdad bild":"",title:d.name||(h==="image"?"Uppladdad bild":"Uppladdad fil"),meta:[v,m].filter(Boolean).join(" • ")}});t||this._revokeObjectUrl();const n=this.multiple?[...i,...l]:[l[0]];!this.multiple&&i.length&&this._revokeObjectUrlsForItems(i),this._markedForRemoval=!1,this._applySelectedPreviewItems(n)}_clearSelectedFileState(){this._revokeObjectUrl(),this._applySelectedPreviewItems([])}_applySelectedPreviewItems(e){this._selectedPreviewItems=e;const t=e[0];if(!t){this._selectedPreviewKind="empty",this._selectedPreviewTitle="",this._selectedPreviewMeta="",this._selectedPreviewAlt="",this._selectedPreviewSrc="",this._previewSource="internal",this._syncFormValue();return}if(e.length>1){const r=e.reduce((i,l)=>i+(Number.isFinite(l.file.size)?l.file.size:0),0);this._selectedPreviewKind="multi",this._selectedPreviewTitle=`${e.length} filer valda`,this._selectedPreviewMeta=`Totalt ${this._formatFileSize(r)}`,this._selectedPreviewAlt="",this._selectedPreviewSrc=""}else this._selectedPreviewKind=t.kind,this._selectedPreviewTitle=t.title,this._selectedPreviewMeta=t.meta,this._selectedPreviewAlt=t.alt,this._selectedPreviewSrc=t.src;this._previewSource="internal",this._syncFormValue()}_removeSelectedItemAt(e){if(e<0||e>=this._selectedPreviewItems.length)return;const t=this._selectedPreviewItems[e];t.src&&URL.revokeObjectURL(t.src);const r=this._selectedPreviewItems.filter((i,l)=>l!==e);this._applySelectedPreviewItems(r),this._dispatch("file-removed",{file:t.file,files:r.map(i=>i.file),index:e,existingValue:this.existingValue,markedForRemoval:this._markedForRemoval}),this._dispatch("change",{file:r[0]?.file??null,files:r.map(i=>i.file),removedFile:t.file,removedIndex:e,existingValue:this.existingValue,markedForRemoval:this._markedForRemoval})}_renderSelectedImageCards(){return!this.multiple||this.type!=="image"||!this._selectedPreviewItems.some(t=>t.kind==="image"&&t.src)?null:p`
|
|
2
2
|
<div class="scb-drop-zone__selected-images" aria-label="Valda bilder">
|
|
3
3
|
${this._selectedPreviewItems.map((t,r)=>t.kind!=="image"||!t.src?null:p`
|
|
4
4
|
<article class="scb-drop-zone__selected-image-card" aria-label=${`${t.title}, ${t.meta}`}>
|
|
@@ -54,7 +54,7 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
54
54
|
<div class="scb-drop-zone__preview-file-card">
|
|
55
55
|
<div class="scb-drop-zone__preview-file-card-inner">
|
|
56
56
|
<span class="scb-drop-zone__preview-file-extension">${this._getFileExtensionLabel(this._resolvedPreviewTitle)}</span>
|
|
57
|
-
<p class="scb-drop-zone__preview-file-label"
|
|
57
|
+
<p class="scb-drop-zone__preview-file-label">${this._previewSource==="external"?"Befintlig fil":"Vald fil"}</p>
|
|
58
58
|
</div>
|
|
59
59
|
</div>
|
|
60
60
|
`:p`
|
|
@@ -63,7 +63,7 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
63
63
|
<span class="scb-drop-zone__preview-placeholder-label">${this.type==="image"?"Bild":"Fil"}</span>
|
|
64
64
|
</div>
|
|
65
65
|
</div>
|
|
66
|
-
`}_renderPreview(){if(!this.showPreview)return null;const e=this._hasPreview?this._resolvedPreviewTitle:this._resolvedEmptyPreviewTitle,t=this._hasPreview?this._resolvedPreviewMeta:this._resolvedEmptyPreviewMeta;return p`
|
|
66
|
+
`}_renderPreview(){if(!this.showPreview||this.multiple&&this.type==="image")return null;const e=this._hasPreview?this._resolvedPreviewTitle:this._resolvedEmptyPreviewTitle,t=this._hasPreview?this._resolvedPreviewMeta:this._resolvedEmptyPreviewMeta;return p`
|
|
67
67
|
<div class="scb-drop-zone__preview">
|
|
68
68
|
<div class="scb-drop-zone__preview-media">
|
|
69
69
|
${this._renderPreviewMedia()}
|
|
@@ -115,7 +115,6 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
115
115
|
class="scb-drop-zone__native-input"
|
|
116
116
|
data-role="native-input"
|
|
117
117
|
type="file"
|
|
118
|
-
.name=${this.name}
|
|
119
118
|
.accept=${this._resolvedAccept}
|
|
120
119
|
?multiple=${this.multiple}
|
|
121
120
|
?disabled=${this.disabled}
|
|
@@ -145,7 +144,7 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
145
144
|
|
|
146
145
|
${this._renderSelectedImageCards()}
|
|
147
146
|
</div>
|
|
148
|
-
`}};s.formAssociated=!0;s.styles=
|
|
147
|
+
`}};s.formAssociated=!0;s.styles=_`
|
|
149
148
|
:host {
|
|
150
149
|
display: block;
|
|
151
150
|
width: 100%;
|
|
@@ -169,8 +168,8 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
169
168
|
grid-template-columns: minmax(0, 7fr) minmax(280px, 3fr);
|
|
170
169
|
}
|
|
171
170
|
|
|
172
|
-
:host([multiple]
|
|
173
|
-
grid-template-columns:
|
|
171
|
+
:host([multiple]) .scb-drop-zone__layout--with-preview {
|
|
172
|
+
grid-template-columns: 1fr;
|
|
174
173
|
}
|
|
175
174
|
|
|
176
175
|
.scb-drop-zone__surface,
|
|
@@ -201,8 +200,8 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
201
200
|
outline: none;
|
|
202
201
|
}
|
|
203
202
|
|
|
204
|
-
:host([multiple]
|
|
205
|
-
min-height: var(--scb-drop-zone-multi-
|
|
203
|
+
:host([multiple]) .scb-drop-zone__surface {
|
|
204
|
+
min-height: var(--scb-drop-zone-multi-min-height, min(32vh, 280px));
|
|
206
205
|
padding: var(--spacing-6, 20px);
|
|
207
206
|
}
|
|
208
207
|
|
|
@@ -269,9 +268,6 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
269
268
|
align-content: stretch;
|
|
270
269
|
}
|
|
271
270
|
|
|
272
|
-
:host([multiple][type='default']) .scb-drop-zone__preview {
|
|
273
|
-
min-height: var(--scb-drop-zone-multi-default-preview-min-height, min(42vh, 420px));
|
|
274
|
-
}
|
|
275
271
|
|
|
276
272
|
.scb-drop-zone__preview-media {
|
|
277
273
|
width: 100%;
|
|
@@ -379,9 +375,6 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
379
375
|
overflow: auto;
|
|
380
376
|
}
|
|
381
377
|
|
|
382
|
-
:host([multiple][type='default']) .scb-drop-zone__preview-list {
|
|
383
|
-
max-height: 260px;
|
|
384
|
-
}
|
|
385
378
|
|
|
386
379
|
.scb-drop-zone__preview-list-item {
|
|
387
380
|
display: flex;
|
|
@@ -559,4 +552,4 @@ import{a as u,n as o,r as c,i as b,x as p,t as f}from"../../vendor/vendor.js";im
|
|
|
559
552
|
grid-template-columns: 1fr;
|
|
560
553
|
}
|
|
561
554
|
}
|
|
562
|
-
`;a([o({type:String,reflect:!0})],s.prototype,"type",2);a([o({type:String})],s.prototype,"name",2);a([o({type:Boolean,reflect:!0})],s.prototype,"multiple",2);a([o({type:String})],s.prototype,"label",2);a([o({type:String,attribute:"supporting-text"})],s.prototype,"supportingText",2);a([o({type:String,attribute:"meta-text"})],s.prototype,"metaText",2);a([o({type:String,attribute:"button-label"})],s.prototype,"buttonLabel",2);a([o({type:String,attribute:"replace-button-label"})],s.prototype,"replaceButtonLabel",2);a([o({type:String,attribute:"remove-button-label"})],s.prototype,"removeButtonLabel",2);a([o({type:String,attribute:"preview-eyebrow"})],s.prototype,"previewEyebrow",2);a([o({type:String,attribute:"empty-preview-title"})],s.prototype,"emptyPreviewTitle",2);a([o({type:String,attribute:"empty-preview-meta"})],s.prototype,"emptyPreviewMeta",2);a([o({type:String})],s.prototype,"accept",2);a([o({type:Boolean,attribute:"show-preview",reflect:!0})],s.prototype,"showPreview",2);a([o({type:Boolean,reflect:!0})],s.prototype,"
|
|
555
|
+
`;a([o({type:String,reflect:!0})],s.prototype,"type",2);a([o({type:String})],s.prototype,"name",2);a([o({type:Boolean,reflect:!0})],s.prototype,"multiple",2);a([o({type:String})],s.prototype,"label",2);a([o({type:String,attribute:"supporting-text"})],s.prototype,"supportingText",2);a([o({type:String,attribute:"meta-text"})],s.prototype,"metaText",2);a([o({type:String,attribute:"button-label"})],s.prototype,"buttonLabel",2);a([o({type:String,attribute:"replace-button-label"})],s.prototype,"replaceButtonLabel",2);a([o({type:String,attribute:"remove-button-label"})],s.prototype,"removeButtonLabel",2);a([o({type:String,attribute:"preview-eyebrow"})],s.prototype,"previewEyebrow",2);a([o({type:String,attribute:"empty-preview-title"})],s.prototype,"emptyPreviewTitle",2);a([o({type:String,attribute:"empty-preview-meta"})],s.prototype,"emptyPreviewMeta",2);a([o({type:String})],s.prototype,"accept",2);a([o({type:Boolean,attribute:"show-preview",reflect:!0})],s.prototype,"showPreview",2);a([o({type:Boolean,attribute:"show-existing-preview",reflect:!0})],s.prototype,"showExistingPreview",2);a([o({type:Boolean,reflect:!0})],s.prototype,"disabled",2);a([o({type:String,attribute:!1})],s.prototype,"previewSrc",2);a([o({type:String,attribute:!1})],s.prototype,"previewAlt",2);a([o({type:String,attribute:!1})],s.prototype,"previewTitle",2);a([o({type:String,attribute:!1})],s.prototype,"previewMeta",2);a([o({type:String,attribute:"existing-value"})],s.prototype,"existingValue",2);a([o({type:String,attribute:"existing-value-name"})],s.prototype,"existingValueName",2);a([o({type:String,attribute:"remove-value-name"})],s.prototype,"removeValueName",2);a([c()],s.prototype,"_isDragOver",2);a([c()],s.prototype,"_selectedPreviewKind",2);a([c()],s.prototype,"_selectedPreviewSrc",2);a([c()],s.prototype,"_selectedPreviewAlt",2);a([c()],s.prototype,"_selectedPreviewTitle",2);a([c()],s.prototype,"_selectedPreviewMeta",2);a([c()],s.prototype,"_selectedPreviewItems",2);a([c()],s.prototype,"_markedForRemoval",2);s=a([b("scb-drop-zone")],s);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as I,n as p,i as V,x,E as j,k as A,t as q}from"../../vendor/vendor.js";import"../scb-button/scb-button.js";import"../../vendor/vendor-material.js";(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(o,r,i){try{customElements.get(o)||e(o,r,i)}catch(d){var c=String(d||"");if(c.indexOf("already been used")===-1&&c.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var X=Object.defineProperty,Y=Object.getOwnPropertyDescriptor,h=(t,e,o,r)=>{for(var i=r>1?void 0:r?Y(e,o):e,c=t.length-1,d;c>=0;c--)(d=t[c])&&(i=(r?d(e,o,i):d(i))||i);return r&&i&&X(e,o,i),i};let U=0,l=class extends V{constructor(){super(...arguments),this.variant="plain",this.arrow=null,this.supportingtext="",this.label="",this.trigger="hover",this.position="top",this.open=!1,this.delay=.25,this.offset=0,this._hoverActive=!1,this._clickActive=!1,this._hideTimeout=null,this._triggerEl=null,this._originalPosition="top",this._tooltipId=`scb-tooltip-${++U}`,this._onTriggerMouseEnter=()=>{this._hoverActive=!0,this.open=!0},this._onTriggerMouseLeave=()=>{this._hoverActive=!1,this._clickActive||(this.open=!1)},this._onTriggerFocus=()=>{this._hoverActive=!0,this.open=!0},this._onTriggerBlur=()=>{this._hoverActive=!1,this._clickActive||(this.open=!1)},this._onTooltipMouseEnter=()=>{(this.trigger==="hover"||this.trigger==="hover-click")&&(this._hoverActive=!0,this.open=!0)},this._onTooltipMouseLeave=()=>{(this.trigger==="hover"||this.trigger==="hover-click")&&(this._hoverActive=!1,this._clickActive||(this.open=!1))},this._onTriggerClick=()=>{this._clickActive=!this._clickActive,this._clickActive?this.open=!0:this._hoverActive||(this.open=!1)}}firstUpdated(){if(this._originalPosition=this.position,this._updateDelayCss(),this._updateTriggerElement(),this._updateTooltipHoverListeners(),this.open){const t=this._getTooltipElement();t&&this._showTooltip(t)}}updated(t){if(t.has("trigger")&&(this._updateTriggerElement(),this._updateTooltipHoverListeners()),t.has("delay")&&this._updateDelayCss(),t.has("open")){const e=this._getTooltipElement();if(!e)return;this.open?this._showTooltip(e):this._hideTooltip(e),this._dispatchOpenChanged()}}disconnectedCallback(){super.disconnectedCallback(),this._detachTriggerListeners();const t=this._getTooltipElement();t&&(t.removeEventListener("mouseenter",this._onTooltipMouseEnter),t.removeEventListener("mouseleave",this._onTooltipMouseLeave)),this._hideTimeout!==null&&(window.clearTimeout(this._hideTimeout),this._hideTimeout=null)}_getTooltipElement(){return this.renderRoot.querySelector(".scb-tooltip")}_updateDelayCss(){const t=Number.isFinite(this.delay)?this.delay:.25;this.style.setProperty("--delay",`${t}s`)}_dispatchOpenChanged(){const t={open:this.open};this.dispatchEvent(new CustomEvent("open-changed",{detail:t,bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("openchanged",{detail:t,bubbles:!0,composed:!0}))}_findTriggerElement(){const t=this.querySelector("[scb-tooltip-anchor]:not([slot])");return t||(Array.from(this.children).find(o=>o.nodeType===Node.ELEMENT_NODE)??null)}_updateTriggerElement(){const t=this._triggerEl;t&&(this._detachTriggerListeners(),t.removeAttribute("aria-describedby"));const e=this._findTriggerElement();this._triggerEl=e,e&&(e.setAttribute("aria-describedby",this._tooltipId),(this.trigger==="click"||this.trigger==="hover-click")&&e.addEventListener("click",this._onTriggerClick),(this.trigger==="hover"||this.trigger==="hover-click")&&(e.addEventListener("mouseenter",this._onTriggerMouseEnter),e.addEventListener("mouseleave",this._onTriggerMouseLeave),e.addEventListener("focus",this._onTriggerFocus),e.addEventListener("blur",this._onTriggerBlur)))}_updateTooltipHoverListeners(){const t=this._getTooltipElement();t&&(t.removeEventListener("mouseenter",this._onTooltipMouseEnter),t.removeEventListener("mouseleave",this._onTooltipMouseLeave),(this.trigger==="hover"||this.trigger==="hover-click")&&(t.addEventListener("mouseenter",this._onTooltipMouseEnter),t.addEventListener("mouseleave",this._onTooltipMouseLeave)))}_detachTriggerListeners(){const t=this._triggerEl;t&&(t.removeEventListener("click",this._onTriggerClick),t.removeEventListener("mouseenter",this._onTriggerMouseEnter),t.removeEventListener("mouseleave",this._onTriggerMouseLeave),t.removeEventListener("focus",this._onTriggerFocus),t.removeEventListener("blur",this._onTriggerBlur))}_showTooltip(t){this._hideTimeout!==null&&(window.clearTimeout(this._hideTimeout),this._hideTimeout=null);const e=this._triggerEl;this._resetPosition(),t.classList.remove("hidden"),t.setAttribute("aria-hidden","false"),requestAnimationFrame(()=>{e&&this._positionTooltip(t,e),t.setAttribute("open","")})}_hideTooltip(t){t.removeAttribute("open"),t.setAttribute("aria-hidden","true"),this._scheduleHidden(t)}_scheduleHidden(t){const e=(Number.isFinite(this.delay)?this.delay:.25)*1e3;if(e<=0){t.classList.add("hidden");return}this._hideTimeout=window.setTimeout(()=>{t.classList.add("hidden"),this._hideTimeout=null},e)}_resetPosition(){this.position=this._originalPosition}_positionTooltip(t,e){const o=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=this.getBoundingClientRect(),v=(this.offset??0)+8,f=8,b=f,y=window.innerHeight-f,T=f,w=window.innerWidth-f,O=s=>s>=b&&s+r.height<=y,$=s=>s>=T&&s+r.width<=w,E=(s,n,a,u)=>{let g=0;s<a&&(g+=a-s);const _=s+n;return _>u&&(g+=_-u),g},P=s=>{let n=0,a=0;switch(s){case"top":n=o.top-i.top-r.height-v,a=o.left-i.left+(o.width-r.width)/2;break;case"bottom":n=o.bottom-i.top+v,a=o.left-i.left+(o.width-r.width)/2;break;case"left":a=o.left-i.left-r.width-v,n=o.top-i.top+(o.height-r.height)/2;break;case"right":a=o.right-i.left+v,n=o.top-i.top+(o.height-r.height)/2;break}const u=n+i.top,g=a+i.left,_=E(u,r.height,b,y),F=E(g,r.width,T,w);return{pos:s,top:n,left:a,fitsV:O(u),fitsH:$(g),totalOverflow:_+F}},L=this.position==="top"||this.position==="bottom",k=this.position,S=this._getOppositePosition(k),M=[k,S,L?"left":"top",L?"right":"bottom"].map(P);let m=M.find(s=>s.fitsV&&s.fitsH)??M.reduce((s,n)=>n.totalOverflow<s.totalOverflow?n:s);const C=(s,n,a)=>Math.min(Math.max(s,n),a),H=b-i.top,
|
|
1
|
+
import{a as I,n as p,i as V,x,E as j,k as A,t as q}from"../../vendor/vendor.js";import"../scb-button/scb-button.js";import"../../vendor/vendor-material.js";(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(o,r,i){try{customElements.get(o)||e(o,r,i)}catch(d){var c=String(d||"");if(c.indexOf("already been used")===-1&&c.indexOf("NotSupportedError")===-1)throw d}}}}catch{}})();var X=Object.defineProperty,Y=Object.getOwnPropertyDescriptor,h=(t,e,o,r)=>{for(var i=r>1?void 0:r?Y(e,o):e,c=t.length-1,d;c>=0;c--)(d=t[c])&&(i=(r?d(e,o,i):d(i))||i);return r&&i&&X(e,o,i),i};let U=0,l=class extends V{constructor(){super(...arguments),this.variant="plain",this.arrow=null,this.supportingtext="",this.label="",this.trigger="hover",this.position="top",this.open=!1,this.delay=.25,this.offset=0,this._hoverActive=!1,this._clickActive=!1,this._hideTimeout=null,this._triggerEl=null,this._originalPosition="top",this._tooltipId=`scb-tooltip-${++U}`,this._onTriggerMouseEnter=()=>{this._hoverActive=!0,this.open=!0},this._onTriggerMouseLeave=()=>{this._hoverActive=!1,this._clickActive||(this.open=!1)},this._onTriggerFocus=()=>{this._hoverActive=!0,this.open=!0},this._onTriggerBlur=()=>{this._hoverActive=!1,this._clickActive||(this.open=!1)},this._onTooltipMouseEnter=()=>{(this.trigger==="hover"||this.trigger==="hover-click")&&(this._hoverActive=!0,this.open=!0)},this._onTooltipMouseLeave=()=>{(this.trigger==="hover"||this.trigger==="hover-click")&&(this._hoverActive=!1,this._clickActive||(this.open=!1))},this._onTriggerClick=()=>{this._clickActive=!this._clickActive,this._clickActive?this.open=!0:this._hoverActive||(this.open=!1)}}firstUpdated(){if(this._originalPosition=this.position,this._updateDelayCss(),this._updateTriggerElement(),this._updateTooltipHoverListeners(),this.open){const t=this._getTooltipElement();t&&this._showTooltip(t)}}updated(t){if(t.has("trigger")&&(this._updateTriggerElement(),this._updateTooltipHoverListeners()),t.has("delay")&&this._updateDelayCss(),t.has("open")){const e=this._getTooltipElement();if(!e)return;this.open?this._showTooltip(e):this._hideTooltip(e),this._dispatchOpenChanged()}}disconnectedCallback(){super.disconnectedCallback(),this._detachTriggerListeners();const t=this._getTooltipElement();t&&(t.removeEventListener("mouseenter",this._onTooltipMouseEnter),t.removeEventListener("mouseleave",this._onTooltipMouseLeave)),this._hideTimeout!==null&&(window.clearTimeout(this._hideTimeout),this._hideTimeout=null)}_getTooltipElement(){return this.renderRoot.querySelector(".scb-tooltip")}_updateDelayCss(){const t=Number.isFinite(this.delay)?this.delay:.25;this.style.setProperty("--delay",`${t}s`)}_dispatchOpenChanged(){const t={open:this.open};this.dispatchEvent(new CustomEvent("open-changed",{detail:t,bubbles:!0,composed:!0})),this.dispatchEvent(new CustomEvent("openchanged",{detail:t,bubbles:!0,composed:!0}))}_findTriggerElement(){const t=this.querySelector("[scb-tooltip-anchor]:not([slot])");return t||(Array.from(this.children).find(o=>o.nodeType===Node.ELEMENT_NODE)??null)}_updateTriggerElement(){const t=this._triggerEl;t&&(this._detachTriggerListeners(),t.removeAttribute("aria-describedby"));const e=this._findTriggerElement();this._triggerEl=e,e&&(e.setAttribute("aria-describedby",this._tooltipId),(this.trigger==="click"||this.trigger==="hover-click")&&e.addEventListener("click",this._onTriggerClick),(this.trigger==="hover"||this.trigger==="hover-click")&&(e.addEventListener("mouseenter",this._onTriggerMouseEnter),e.addEventListener("mouseleave",this._onTriggerMouseLeave),e.addEventListener("focus",this._onTriggerFocus),e.addEventListener("blur",this._onTriggerBlur)))}_updateTooltipHoverListeners(){const t=this._getTooltipElement();t&&(t.removeEventListener("mouseenter",this._onTooltipMouseEnter),t.removeEventListener("mouseleave",this._onTooltipMouseLeave),(this.trigger==="hover"||this.trigger==="hover-click")&&(t.addEventListener("mouseenter",this._onTooltipMouseEnter),t.addEventListener("mouseleave",this._onTooltipMouseLeave)))}_detachTriggerListeners(){const t=this._triggerEl;t&&(t.removeEventListener("click",this._onTriggerClick),t.removeEventListener("mouseenter",this._onTriggerMouseEnter),t.removeEventListener("mouseleave",this._onTriggerMouseLeave),t.removeEventListener("focus",this._onTriggerFocus),t.removeEventListener("blur",this._onTriggerBlur))}_showTooltip(t){this._hideTimeout!==null&&(window.clearTimeout(this._hideTimeout),this._hideTimeout=null);const e=this._triggerEl;this._resetPosition(),t.classList.remove("hidden"),t.setAttribute("aria-hidden","false"),requestAnimationFrame(()=>{e&&this._positionTooltip(t,e),t.setAttribute("open","")})}_hideTooltip(t){t.removeAttribute("open"),t.setAttribute("aria-hidden","true"),this._scheduleHidden(t)}_scheduleHidden(t){const e=(Number.isFinite(this.delay)?this.delay:.25)*1e3;if(e<=0){t.classList.add("hidden");return}this._hideTimeout=window.setTimeout(()=>{t.classList.add("hidden"),this._hideTimeout=null},e)}_resetPosition(){this.position=this._originalPosition}_positionTooltip(t,e){const o=e.getBoundingClientRect(),r=t.getBoundingClientRect(),i=this.getBoundingClientRect(),v=(this.offset??0)+8,f=8,b=f,y=window.innerHeight-f,T=f,w=window.innerWidth-f,O=s=>s>=b&&s+r.height<=y,$=s=>s>=T&&s+r.width<=w,E=(s,n,a,u)=>{let g=0;s<a&&(g+=a-s);const _=s+n;return _>u&&(g+=_-u),g},P=s=>{let n=0,a=0;switch(s){case"top":n=o.top-i.top-r.height-v,a=o.left-i.left+(o.width-r.width)/2;break;case"bottom":n=o.bottom-i.top+v,a=o.left-i.left+(o.width-r.width)/2;break;case"left":a=o.left-i.left-r.width-v,n=o.top-i.top+(o.height-r.height)/2;break;case"right":a=o.right-i.left+v,n=o.top-i.top+(o.height-r.height)/2;break}const u=n+i.top,g=a+i.left,_=E(u,r.height,b,y),F=E(g,r.width,T,w);return{pos:s,top:n,left:a,fitsV:O(u),fitsH:$(g),totalOverflow:_+F}},L=this.position==="top"||this.position==="bottom",k=this.position,S=this._getOppositePosition(k),M=[k,S,L?"left":"top",L?"right":"bottom"].map(P);let m=M.find(s=>s.fitsV&&s.fitsH)??M.reduce((s,n)=>n.totalOverflow<s.totalOverflow?n:s);const C=(s,n,a)=>Math.min(Math.max(s,n),a),H=b-i.top,z=y-r.height-i.top,B=T-i.left,D=w-r.width-i.left,N=C(m.top,H,z),R=C(m.left,B,D);t.style.top=`${N}px`,t.style.left=`${R}px`,this.position!==m.pos&&(this.position=m.pos)}_getOppositePosition(t){switch(t){case"top":return"bottom";case"bottom":return"top";case"left":return"right";case"right":return"left"}}_onDefaultSlotChange(){this._updateTriggerElement()}render(){const t=this.arrow?x`<svg
|
|
2
2
|
class="scb-tooltip-arrow"
|
|
3
3
|
xmlns="http://www.w3.org/2000/svg"
|
|
4
4
|
width="13"
|
|
@@ -58,7 +58,7 @@ import{a as I,n as p,i as V,x,E as j,k as A,t as q}from"../../vendor/vendor.js";
|
|
|
58
58
|
max-width: 300px;
|
|
59
59
|
opacity: 0;
|
|
60
60
|
visibility: hidden;
|
|
61
|
-
z-index:
|
|
61
|
+
z-index: var(--scb-tooltip-z-index, 1000);
|
|
62
62
|
transition:
|
|
63
63
|
opacity var(--delay) ease-in-out,
|
|
64
64
|
visibility var(--delay) ease-in-out;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var
|
|
1
|
+
(function(){try{var t=typeof globalThis<"u"?globalThis:window;if(!t.__scb_ce_guard_installed__){t.__scb_ce_guard_installed__=!0;var e=customElements.define.bind(customElements);customElements.define=function(i,n,r){try{customElements.get(i)||e(i,n,r)}catch(c){var a=String(c||"");if(a.indexOf("already been used")===-1&&a.indexOf("NotSupportedError")===-1)throw c}}}}catch{}})();const s=(t,e,i="1.25")=>{const n=document.createElementNS(t,"path");return n.setAttribute("d",e),n.setAttribute("class","scb-viz-highcharts-pattern__mark"),n.setAttribute("stroke-width",i),n.setAttribute("stroke-linecap","square"),n},o=(t,e,i,n)=>{const r=document.createElementNS(t,"circle");return r.setAttribute("cx",e),r.setAttribute("cy",i),r.setAttribute("r",n),r.setAttribute("class","scb-viz-highcharts-pattern__mark--dot"),r},l=(t,e,i,n,r)=>{const a=document.createElementNS(t,"rect");return a.setAttribute("x",e),a.setAttribute("y",i),a.setAttribute("width",n),a.setAttribute("height",r),a.setAttribute("class","scb-viz-highcharts-pattern__mark--square"),a},d={dashStyles:["Solid","ShortDash","ShortDot","ShortDashDot","ShortDashDotDot","Dot","LongDash","LongDashDot","Dash","DashDot"],markerSymbols:["circle","diamond","square","triangle","triangle-down"],defaultPatternKind:"grid",patterns:[{kind:"diagonal",appendMarks:(t,e)=>{t.appendChild(s(e,"M-2,8 l10,-10 M0,10 l10,-10 M8,12 l4,-4"))}},{kind:"dots",appendMarks:(t,e)=>{t.appendChild(o(e,"2","2","1.2")),t.appendChild(o(e,"7","7","1.2"))}},{kind:"cross",appendMarks:(t,e)=>{t.appendChild(s(e,"M0,0 L10,10 M10,0 L0,10"))}},{kind:"vertical",appendMarks:(t,e)=>{t.appendChild(s(e,"M2,0 L2,10 M7,0 L7,10"))}},{kind:"horizontal",appendMarks:(t,e)=>{t.appendChild(s(e,"M0,2 L10,2 M0,7 L10,7"))}},{kind:"grid",appendMarks:(t,e)=>{t.appendChild(s(e,"M0,0 L10,0 M0,5 L10,5 M0,10 L10,10","1"))}},{kind:"diagonal-reverse",appendMarks:(t,e)=>{t.appendChild(s(e,"M0,0 L10,10 M-2,2 L8,12 M2,-2 L12,8"))}},{kind:"dots-dense",appendMarks:(t,e)=>{t.appendChild(o(e,"2","2","1")),t.appendChild(o(e,"7","2","1")),t.appendChild(o(e,"2","7","1")),t.appendChild(o(e,"7","7","1"))}},{kind:"checker",appendMarks:(t,e)=>{t.appendChild(l(e,"0","0","4","4")),t.appendChild(l(e,"5","5","4","4"))}},{kind:"zigzag",appendMarks:(t,e)=>{t.appendChild(s(e,"M-2,8 L2,4 L6,8 L10,4 L14,8 M-2,3 L2,-1 L6,3 L10,-1 L14,3"))}}]};function p(){return d.patterns.map(({kind:t})=>t)}function h(t){return d.patterns.find(({kind:e})=>e===t)||d.patterns.find(({kind:e})=>e===d.defaultPatternKind)||d.patterns[0]}function u(t,e,i){const n=h(i);return n?.appendMarks(t,e),n?.kind||i}function k(t){const e=d.dashStyles,i=d.markerSymbols,n=p();return{dashStyle:e[t%e.length],markerSymbol:i[t%i.length],patternKind:n[t%n.length]}}export{u as a,k as b,p as g};
|