kritzel-stencil 0.1.11 → 0.1.12

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.
@@ -979,7 +979,7 @@ class KritzelHTMLHelper {
979
979
  }
980
980
  }
981
981
 
982
- const kritzelDialogCss = () => `:host{display:contents}.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10002;display:flex;align-items:center;justify-content:center;background-color:var(--kritzel-dialog-backdrop-color, rgba(0, 0, 0, 0.5));opacity:1;transition:opacity 150ms ease-out}.backdrop.is-animating{opacity:0}.dialog-content{position:relative;display:flex;flex-direction:column;background-color:var(--kritzel-dialog-background-color, #ffffff);border-radius:var(--kritzel-dialog-border-radius, 12px);box-shadow:var(--kritzel-dialog-box-shadow, 0 4px 20px rgba(0, 0, 0, 0.15));border:var(--kritzel-dialog-border, 1px solid #ebebeb);max-height:var(--kritzel-dialog-max-height, 90vh);max-width:var(--kritzel-dialog-max-width, 90vw);overflow:hidden;transform:scale(1);opacity:1;transition:transform 200ms ease-out, opacity 200ms ease-out;font-family:var(--kritzel-dialog-font-family, sans-serif)}.dialog-content.is-animating{transform:scale(0.95);opacity:0}.dialog-content.size-small{width:var(--kritzel-dialog-width-small, 320px);height:var(--kritzel-dialog-height-small, auto)}.dialog-content.size-medium{width:var(--kritzel-dialog-width-medium, 480px);height:var(--kritzel-dialog-height-medium, auto)}.dialog-content.size-large{width:var(--kritzel-dialog-width-large, 640px);height:var(--kritzel-dialog-height-large, auto)}.dialog-content.size-fullscreen{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}@media (max-width: 576px){.dialog-content.fullscreen-on-mobile{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--kritzel-dialog-header-padding, 16px 20px);border-bottom:var(--kritzel-dialog-header-border, 1px solid #ebebeb);gap:12px}.dialog-title{margin:0;font-size:var(--kritzel-dialog-title-font-size, 18px);font-weight:var(--kritzel-dialog-title-font-weight, 600);color:var(--kritzel-dialog-title-color, #1a1a1a);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--kritzel-dialog-close-button-border-radius, 6px);background-color:var(--kritzel-dialog-close-button-background, transparent);color:var(--kritzel-dialog-close-button-color, #666666);cursor:var(--kritzel-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.close-button:hover{background-color:var(--kritzel-dialog-close-button-hover-background, #f5f5f5);color:var(--kritzel-dialog-close-button-hover-color, #1a1a1a)}.close-button:focus{outline:none}.close-button:focus-visible{outline:2px solid var(--kritzel-dialog-focus-ring-color, #0066cc);outline-offset:2px}.close-button:active{background-color:var(--kritzel-dialog-close-button-active-background, #ebebeb)}.dialog-body{padding:var(--kritzel-dialog-body-padding, 20px);overflow-y:auto;flex:1;scrollbar-color:#ebebeb transparent;scrollbar-width:thin}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--kritzel-dialog-footer-gap, 8px);padding:var(--kritzel-dialog-footer-padding, 16px 20px);border-top:var(--kritzel-dialog-footer-border, 1px solid #ebebeb)}::slotted([slot='header']){flex:1}::slotted([slot='footer']){display:contents}`;
982
+ const kritzelDialogCss = () => `:host{display:contents}.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10002;display:flex;align-items:center;justify-content:center;background-color:var(--kritzel-dialog-backdrop-color, rgba(0, 0, 0, 0.5));opacity:1;transition:opacity 150ms ease-out}.backdrop.is-animating{opacity:0}.dialog-content{position:relative;display:flex;flex-direction:column;background-color:var(--kritzel-dialog-background-color, #ffffff);border-radius:var(--kritzel-dialog-border-radius, 12px);box-shadow:var(--kritzel-dialog-box-shadow, 0 4px 20px rgba(0, 0, 0, 0.15));border:var(--kritzel-dialog-border, 1px solid #ebebeb);max-height:var(--kritzel-dialog-max-height, 90vh);max-width:var(--kritzel-dialog-max-width, 90vw);overflow:hidden;transform:scale(1);opacity:1;transition:transform 200ms ease-out, opacity 200ms ease-out;font-family:var(--kritzel-dialog-font-family, sans-serif)}.dialog-content.is-animating{transform:scale(0.95);opacity:0}.dialog-content.size-small{width:var(--kritzel-dialog-width-small, 320px);height:var(--kritzel-dialog-height-small, auto)}.dialog-content.size-medium{width:var(--kritzel-dialog-width-medium, 480px);height:var(--kritzel-dialog-height-medium, auto)}.dialog-content.size-large{width:var(--kritzel-dialog-width-large, 640px);height:var(--kritzel-dialog-height-large, auto)}.dialog-content.size-fullscreen{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}@media (max-width: 576px){.backdrop:has(.fullscreen-on-mobile){background-color:transparent}.dialog-content.fullscreen-on-mobile{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--kritzel-dialog-header-padding, 16px 20px);border-bottom:var(--kritzel-dialog-header-border, 1px solid #ebebeb);gap:12px}.dialog-title{margin:0;font-size:var(--kritzel-dialog-title-font-size, 18px);font-weight:var(--kritzel-dialog-title-font-weight, 600);color:var(--kritzel-dialog-title-color, #1a1a1a);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--kritzel-dialog-close-button-border-radius, 6px);background-color:var(--kritzel-dialog-close-button-background, transparent);color:var(--kritzel-dialog-close-button-color, #666666);cursor:var(--kritzel-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.close-button:hover{background-color:var(--kritzel-dialog-close-button-hover-background, #f5f5f5);color:var(--kritzel-dialog-close-button-hover-color, #1a1a1a)}.close-button:focus{outline:none}.close-button:focus-visible{outline:2px solid var(--kritzel-dialog-focus-ring-color, #0066cc);outline-offset:2px}.close-button:active{background-color:var(--kritzel-dialog-close-button-active-background, #ebebeb)}.dialog-body{padding:var(--kritzel-dialog-body-padding, 20px);overflow-y:auto;flex:1;scrollbar-color:#ebebeb transparent;scrollbar-width:thin}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--kritzel-dialog-footer-gap, 8px);padding:var(--kritzel-dialog-footer-padding, 16px 20px);border-top:var(--kritzel-dialog-footer-border, 1px solid #ebebeb)}::slotted([slot='header']){flex:1}::slotted([slot='footer']){display:contents}`;
983
983
 
984
984
  const KritzelDialog = class {
985
985
  constructor(hostRef) {
@@ -23236,7 +23236,7 @@ const KritzelMenuItem = class {
23236
23236
  };
23237
23237
  KritzelMenuItem.style = kritzelMenuItemCss();
23238
23238
 
23239
- const kritzelMoreMenuCss = () => `:host{display:inline-flex}.more-menu-button{display:flex;align-items:center;justify-content:center;width:var(--kritzel-more-menu-button-width, 50px);height:var(--kritzel-more-menu-button-height, 50px);padding:0;border:var(--kritzel-more-menu-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-more-menu-button-border-radius, 12px);background-color:var(--kritzel-more-menu-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent}.more-menu-button:hover{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:active{background-color:var(--kritzel-more-menu-button-active-background-color, #ebebeb)}`;
23239
+ const kritzelMoreMenuCss = () => `:host{display:inline-flex}.more-menu-button{display:flex;align-items:center;justify-content:center;width:var(--kritzel-more-menu-button-width, 50px);height:var(--kritzel-more-menu-button-height, 50px);padding:0;border:var(--kritzel-more-menu-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-more-menu-button-border-radius, 12px);background-color:var(--kritzel-more-menu-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit}.more-menu-button:hover{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:focus{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:active{background-color:var(--kritzel-more-menu-button-active-background-color, #ebebeb)}`;
23240
23240
 
23241
23241
  const KritzelMoreMenu = class {
23242
23242
  constructor(hostRef) {
@@ -23649,7 +23649,7 @@ const KritzelPortal = class {
23649
23649
  * This file is auto-generated by the version bump scripts.
23650
23650
  * Do not modify manually.
23651
23651
  */
23652
- const KRITZEL_VERSION = '0.1.11';
23652
+ const KRITZEL_VERSION = '0.1.12';
23653
23653
 
23654
23654
  const kritzelSettingsCss = () => `:host{display:contents}kritzel-dialog{--kritzel-dialog-body-padding:0;--kritzel-dialog-width-large:800px;--kritzel-dialog-height-large:500px}.footer-button{padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px}.cancel-button{border:1px solid #ebebeb;background:#fff;color:inherit}.cancel-button:hover{background:#f5f5f5}.settings-content{padding:0}.settings-content h3{margin:0 0 16px 0;font-size:18px;font-weight:600;color:var(--kritzel-settings-content-heading-color, #333333)}.settings-content p{margin:0;font-size:14px;color:var(--kritzel-settings-content-text-color, #666666);line-height:1.5}.settings-group{display:flex;flex-direction:column;gap:24px}.settings-item{display:flex;flex-direction:column;gap:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-label{font-size:14px;font-weight:500;color:var(--kritzel-settings-label-color, #333333);margin:0}.settings-description{font-size:12px;color:var(--kritzel-settings-description-color, #888888);margin:0;line-height:1.4}`;
23655
23655
 
@@ -73,6 +73,10 @@
73
73
 
74
74
  /* Responsive: auto fullscreen on mobile when enabled */
75
75
  @media (max-width: 576px) {
76
+ .backdrop:has(.fullscreen-on-mobile) {
77
+ background-color: transparent;
78
+ }
79
+
76
80
  .dialog-content.fullscreen-on-mobile {
77
81
  width: 100vw;
78
82
  height: 100vh;
@@ -16,12 +16,20 @@
16
16
  box-shadow: var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));
17
17
  transition: background-color 150ms ease;
18
18
  -webkit-tap-highlight-color: transparent;
19
+ -webkit-appearance: none;
20
+ -moz-appearance: none;
21
+ appearance: none;
22
+ color: inherit;
19
23
  }
20
24
 
21
25
  .more-menu-button:hover {
22
26
  background-color: var(--kritzel-more-menu-button-hover-background-color, #f5f5f5);
23
27
  }
24
28
 
29
+ .more-menu-button:focus {
30
+ background-color: var(--kritzel-more-menu-button-hover-background-color, #f5f5f5);
31
+ }
32
+
25
33
  .more-menu-button:active {
26
34
  background-color: var(--kritzel-more-menu-button-active-background-color, #ebebeb);
27
35
  }
@@ -3,4 +3,4 @@
3
3
  * This file is auto-generated by the version bump scripts.
4
4
  * Do not modify manually.
5
5
  */
6
- export const KRITZEL_VERSION = '0.1.11';
6
+ export const KRITZEL_VERSION = '0.1.12';
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-D8A3OvXv.js";const p=o,r=s;export{p as KritzelDialog,r as defineCustomElement}
1
+ import{K as o,d as s}from"./p-DCFa1WDS.js";const a=o,p=s;export{a as KritzelDialog,p as defineCustomElement}
@@ -1 +1 @@
1
- import{p as t,H as e,c as s,h as o,d as i,t as r}from"./p-Cj-I2_Og.js";import{K as a,d as n}from"./p-DPPpa9So.js";import{D as l,S as c,h as p,e as m,f as k,g as d,i as b,j as h}from"./p-CuifaWTr.js";import{L as u,M as f,K as g,E as z,N as y}from"./p-Csm0Kf0_.js";import{K as j}from"./p-n789Y3S-.js";import{K as C}from"./p-l10It7Nm.js";import{d as x}from"./p-DSMMwH1h.js";import{d as E}from"./p-CCiIxqPN.js";import{d as w}from"./p-4IV4i5r-.js";import{d as v}from"./p-BCZgrVsy.js";import{d as S}from"./p-BvoIoyaZ.js";import{d as I}from"./p-JdxbP-1P.js";import{d as O}from"./p-D8A3OvXv.js";import{d as R}from"./p-CIiUpoDZ.js";import{d as W}from"./p-CGggCpmW.js";import{d as M}from"./p-BNYfuHT_.js";import{d as B}from"./p-DN1_B6ky.js";import{d as V}from"./p-CnO82wQT.js";import{d as P}from"./p-5Vxv1ZKh.js";import{d as T}from"./p-Bz_LzbTD.js";import{d as D,a as K}from"./p-6yo07JPM.js";import{d as A}from"./p-CgB7__HC.js";import{d as U}from"./p-BG4Z2Dwn.js";import{d as N}from"./p-yzi-W-0P.js";import{d as _}from"./p-Dm9n3RrJ.js";import{d as J}from"./p-COqRIjtS.js";import{d as F}from"./p-BdnNVYxB.js";import{d as G}from"./p-CP3i626h.js";import{d as Y}from"./p--aa4aJEU.js";import{d as Z}from"./p-K1KgiJP8.js";import{d as q}from"./p-DuK31Tjt.js";import{d as L}from"./p-zoMPunTt.js";import{d as H}from"./p-BhTMzfWj.js";import{d as X}from"./p-CXGqvg3q.js";const Q={type:"pen",color:"#000000",size:16,palettes:{pen:[...l]}},$={color:"#000000",size:8,fontFamily:"Arial",palette:[...l]},tt={color:"#000000",size:4,palette:[...l],arrows:{end:{enabled:!0,style:"triangle"}}},et={shapeType:c.Rectangle,fillColor:"transparent",strokeColor:"#000000",strokeWidth:4,fontColor:"#000000",fontSize:16,fontFamily:"Arial",palette:[...l]},st=t(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.isReady=s(this,"isReady"),this.objectsChange=s(this,"objectsChange"),this.undoStateChange=s(this,"undoStateChange")}get host(){return this}scaleMax=u;scaleMin=f;lockDrawingScale=!0;controls=[{name:"selection",type:"tool",isDefault:!0,tool:p,icon:"cursor"},{name:"brush",type:"tool",tool:m,icon:"pen",config:Q},{name:"line",type:"tool",tool:k,icon:"arrow",config:tt},{name:"eraser",type:"tool",tool:g,icon:"eraser"},{name:"text",type:"tool",tool:d,icon:"type",config:$},{name:"shape",type:"tool",tool:b,icon:"shape-rectangle",config:et,subOptions:[{id:"rectangle",icon:"shape-rectangle",label:"Rectangle",value:c.Rectangle,toolProperty:"shapeType"},{id:"ellipse",icon:"shape-ellipse",label:"Ellipse",value:c.Ellipse,toolProperty:"shapeType"},{id:"triangle",icon:"shape-triangle",label:"Triangle",value:c.Triangle,toolProperty:"shapeType"}]},{name:"image",type:"tool",tool:z,icon:"image"},{name:"config",type:"config"}];globalContextMenuItems=[{label:"Paste",icon:"paste",disabled:async()=>0===(await this.engineRef.getCopiedObjects()).length,action:t=>this.engineRef.paste(t.x,t.y)},{label:"Select All",icon:"select-all",action:()=>this.selectAllObjectsInViewport()}];objectContextMenuItems=[{label:"Copy",icon:"copy",action:()=>this.engineRef.copy()},{label:"Paste",icon:"paste",disabled:async()=>0===(await this.engineRef.getCopiedObjects()).length,action:t=>this.engineRef.paste(t.x,t.y)},{label:"Delete",icon:"delete",action:()=>this.engineRef.delete()},{label:"Bring to Front",icon:"bring-to-front",action:()=>this.engineRef.bringToFront()},{label:"Send to Back",icon:"send-to-back",action:()=>this.engineRef.sendToBack()},{label:"Group",icon:"group",disabled:async()=>(await this.engineRef.getSelectedObjects()).length<2,action:()=>this.engineRef.group()},{label:"Ungroup",icon:"ungroup",disabled:async()=>!(await this.engineRef.getSelectedObjects()).some((t=>"KritzelGroup"===t.__class__)),action:()=>this.engineRef.ungroup()}];customSvgIcons={};isControlsVisible=!0;isUtilityPanelVisible=!0;syncConfig;isReady;objectsChange;undoStateChange;isEngineReady=!1;isControlsReady=!1;isWorkspaceManagerReady=!1;workspaces=[];activeWorkspace;isVirtualKeyboardOpen=!1;undoState=null;isBackToContentButtonVisible=!1;onIsEngineReady(t){t&&this.isControlsReady&&this.checkIsReady()}onIsControlsReady(t){t&&this.isEngineReady&&this.checkIsReady()}onWorkspacesChange(t){if(this.activeWorkspace){const e=t.find((t=>t.id===this.activeWorkspace.id));e&&e!==this.activeWorkspace&&(this.activeWorkspace=e)}}onTouchStart(t){t.cancelable&&t.preventDefault()}async getObjectById(t){return this.engineRef.getObjectById(t)}async addObject(t){return this.engineRef.addObject(t)}async updateObject(t,e){return this.engineRef.updateObject(t,e)}async removeObject(t){return this.engineRef.removeObject(t)}async getSelectedObjects(){return this.engineRef.getSelectedObjects()}async selectObjects(t){return this.engineRef.selectObjects(t)}async selectAllObjectsInViewport(){return this.engineRef.selectAllObjectsInViewport()}async clearSelection(){this.engineRef.clearSelection()}async centerObjectInViewport(t){return this.engineRef.centerObjectInViewport(t)}async backToContent(){return this.engineRef.backToContent()}async createWorkspace(t,e){const s=new j("workspace-"+Date.now(),t,e);return this.engineRef.createWorkspace(s)}async updateWorkspace(t){return this.engineRef.updateWorkspace(t)}async deleteWorkspace(t){return this.engineRef.deleteWorkspace(t)}async getWorkspaces(){return this.engineRef.getWorkspaces()}async getActiveWorkspace(){return this.engineRef.getActiveWorkspace()}engineRef;controlsRef;settingsRef;exportRef;splitButtonRef;componentWillLoad(){this.loadSettingsFromStorage()}componentDidLoad(){this.registerCustomSvgIcons(),this.listenForMobileKeyboard(),this.setOsSpecificCssVariables()}loadSettingsFromStorage(){const t=localStorage.getItem("kritzel-settings");if(t)try{const e=JSON.parse(t);"number"==typeof e.scaleMin&&(this.scaleMin=e.scaleMin),"number"==typeof e.scaleMax&&(this.scaleMax=e.scaleMax),"boolean"==typeof e.lockDrawingScale&&(this.lockDrawingScale=e.lockDrawingScale)}catch{}}async checkIsReady(){await customElements.whenDefined("kritzel-editor"),await customElements.whenDefined("kritzel-workspace-manager"),await customElements.whenDefined("kritzel-controls"),await customElements.whenDefined("kritzel-engine"),this.isEngineReady&&this.isControlsReady&&this.isWorkspaceManagerReady&&this.isReady.emit(this.host)}onEngineReady(t){this.isEngineReady=!0,this.activeWorkspace=t.detail.activeWorkspace,this.workspaces=t.detail.workspaces}handleWorkspacesChange(t){this.workspaces=t.detail}handleObjectsChange(t){this.objectsChange.emit(t.detail)}handleUndoStateChange(t){this.undoStateChange.emit(t.detail),this.undoState=t.detail}handleObjectsInViewportChange(t){console.log(t.detail.length),this.isBackToContentButtonVisible=!(t.detail.length>0)}handleSettingsChange(t){this.scaleMin=t.detail.scaleMin,this.scaleMax=t.detail.scaleMax,this.lockDrawingScale=t.detail.lockDrawingScale}async handleMoreMenuItemSelect(t){const{item:e}=t.detail;if("settings"===e.id&&this.settingsRef.open(),"export"===e.id){const t=await this.engineRef.getScreenshot("png");this.exportRef.open(t)}}registerCustomSvgIcons(){for(const[t,e]of Object.entries(this.customSvgIcons))a.register(t,e)}listenForMobileKeyboard(){h.onKeyboardVisibleChanged((t=>{this.isVirtualKeyboardOpen=t}))}setOsSpecificCssVariables(){switch(C.detectOS()){case"iOS":this.host.style.setProperty("--kritzel-editor-top-left-buttons-top","14px"),this.host.style.setProperty("--kritzel-editor-top-left-buttons-left","14px"),this.host.style.setProperty("--kritzel-editor-controls-bottom","14px"),this.host.style.setProperty("--kritzel-editor-controls-transition","cubic-bezier(0.25, 0.1, 0.25, 1.0)"),this.host.style.setProperty("--kritzel-editor-controls-transform","translateY(200%)"),this.host.style.setProperty("--kritzel-editor-controls-transition-duration","0.25s");break;case"Android":this.host.style.setProperty("--kritzel-editor-top-left-buttons-top","14px"),this.host.style.setProperty("--kritzel-editor-top-left-buttons-left","14px"),this.host.style.setProperty("--kritzel-editor-controls-bottom","24px");break;default:this.host.style.setProperty("--kritzel-editor-top-left-buttons-top","14px"),this.host.style.setProperty("--kritzel-editor-top-left-buttons-left","14px"),this.host.style.setProperty("--kritzel-editor-controls-bottom","14px")}}render(){return o(i,{key:"18113021f28ed340017ed15b3db83f275a1a45e0"},o("div",{key:"75c4fc6fb48133edc3b9b2152c09d1b77dc3efc6",class:"top-left-buttons"},o("kritzel-workspace-manager",{key:"c6a68abaf70ebcf37af1870b832c9a2bd2c984fb",workspaces:this.workspaces,activeWorkspace:this.activeWorkspace,onWorkspaceChange:t=>this.activeWorkspace=t.detail,onIsWorkspaceManagerReady:()=>this.isWorkspaceManagerReady=!0}),o("kritzel-back-to-content",{key:"e2be6fadb0a44dd6cc7a061767bc25b11dde5bf3",visible:this.isBackToContentButtonVisible,onBackToContent:()=>this.backToContent()})),o("kritzel-engine",{key:"16c19e74e9a3bd61845fa3542a5a84a12a3c8a05",ref:t=>this.engineRef=t,workspace:this.activeWorkspace,syncConfig:this.syncConfig,scaleMax:this.scaleMax,lockDrawingScale:this.lockDrawingScale,scaleMin:this.scaleMin,globalContextMenuItems:this.globalContextMenuItems,objectContextMenuItems:this.objectContextMenuItems,onIsEngineReady:t=>this.onEngineReady(t),onWorkspacesChange:t=>this.handleWorkspacesChange(t),onObjectsChange:t=>this.handleObjectsChange(t),onUndoStateChange:t=>this.handleUndoStateChange(t),onObjectsInViewportChange:t=>this.handleObjectsInViewportChange(t)}),o("kritzel-controls",{key:"bb328c89b4ebbcce215e6ddf710126e7a71b5d30",class:{"keyboard-open":this.isVirtualKeyboardOpen},style:{display:this.isControlsVisible?"flex":"none"},ref:t=>this.controlsRef=t,controls:this.controls,isUtilityPanelVisible:this.isUtilityPanelVisible,undoState:this.undoState,onIsControlsReady:()=>this.isControlsReady=!0}),o("div",{key:"e7fd78379d8acc4715605c267aa352430633f6ac",class:"top-right-buttons"},o("kritzel-settings",{key:"13db94ca32cabfbd2d6664c58f55e30fcbf99221",ref:t=>this.settingsRef=t,onSettingsChange:t=>this.handleSettingsChange(t)}),o("kritzel-export",{key:"a7aa9b6ada8b0d47edf418c392d6d04598d36925",ref:t=>this.exportRef=t,onExportPng:()=>this.engineRef.exportViewportAsPng(),onExportSvg:()=>this.engineRef.exportViewportAsSvg()}),o("kritzel-more-menu",{key:"70a1a954f678e6b634d5965b23f570f79824af43",onItemSelect:t=>this.handleMoreMenuItemSelect(t)})))}static get watchers(){return{isEngineReady:[{onIsEngineReady:0}],isControlsReady:[{onIsControlsReady:0}],workspaces:[{onWorkspacesChange:0}]}}static get style(){return"kritzel-editor{display:flex;margin:0;position:relative;overflow:hidden;width:100%;height:100%;align-items:center;justify-content:center;touch-action:manipulation;user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}kritzel-workspace-manager{}kritzel-controls{position:absolute;bottom:var(--kritzel-editor-controls-bottom, 14px);transition:transform var(--kritzel-editor-controls-transition-duration, 0.1s) var(--kritzel-editor-controls-transition, ease-in-out)}kritzel-controls.keyboard-open{transform:var(--kritzel-editor-controls-transform, translateY(300%))}.top-left-buttons{position:absolute;top:var(--kritzel-editor-top-left-buttons-top, 14px);left:var(--kritzel-editor-top-left-buttons-left, 14px);display:flex;align-items:flex-start;gap:8px}.top-right-buttons{position:absolute;top:var(--kritzel-editor-top-right-buttons-top, 14px);right:var(--kritzel-editor-top-right-buttons-right, 14px);display:flex;align-items:center;gap:8px}.top-right-button{display:flex;align-items:center;justify-content:center;width:50px;height:50px;padding:0;border:var(--kritzel-split-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-split-button-border-radius, 12px);background-color:var(--kritzel-split-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-split-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent}.top-right-button:hover{background-color:#f5f5f5}.top-right-button:active{background-color:#ebebeb}"}},[512,"kritzel-editor",{scaleMax:[1026,"scale-max"],scaleMin:[1026,"scale-min"],lockDrawingScale:[1028,"lock-drawing-scale"],controls:[16],globalContextMenuItems:[16],objectContextMenuItems:[16],customSvgIcons:[16],isControlsVisible:[4,"is-controls-visible"],isUtilityPanelVisible:[4,"is-utility-panel-visible"],syncConfig:[16],isEngineReady:[32],isControlsReady:[32],isWorkspaceManagerReady:[32],workspaces:[32],activeWorkspace:[32],isVirtualKeyboardOpen:[32],undoState:[32],isBackToContentButtonVisible:[32],getObjectById:[64],addObject:[64],updateObject:[64],removeObject:[64],getSelectedObjects:[64],selectObjects:[64],selectAllObjectsInViewport:[64],clearSelection:[64],centerObjectInViewport:[64],backToContent:[64],createWorkspace:[64],updateWorkspace:[64],deleteWorkspace:[64],getWorkspaces:[64],getActiveWorkspace:[64]},[[0,"dblclick","onTouchStart"]],{isEngineReady:[{onIsEngineReady:0}],isControlsReady:[{onIsControlsReady:0}],workspaces:[{onWorkspacesChange:0}]}]),ot=st,it=function(){"undefined"!=typeof customElements&&["kritzel-editor","kritzel-back-to-content","kritzel-color","kritzel-color-palette","kritzel-context-menu","kritzel-controls","kritzel-cursor-trail","kritzel-dialog","kritzel-dropdown","kritzel-engine","kritzel-export","kritzel-font","kritzel-font-family","kritzel-font-size","kritzel-icon","kritzel-line-endings","kritzel-master-detail","kritzel-menu","kritzel-menu-item","kritzel-more-menu","kritzel-numeric-input","kritzel-opacity-slider","kritzel-portal","kritzel-settings","kritzel-shape-fill","kritzel-slide-toggle","kritzel-split-button","kritzel-stroke-size","kritzel-tool-config","kritzel-tooltip","kritzel-utility-panel","kritzel-workspace-manager"].forEach((t=>{switch(t){case"kritzel-editor":customElements.get(r(t))||customElements.define(r(t),st);break;case"kritzel-back-to-content":customElements.get(r(t))||x();break;case"kritzel-color":customElements.get(r(t))||E();break;case"kritzel-color-palette":customElements.get(r(t))||w();break;case"kritzel-context-menu":customElements.get(r(t))||v();break;case"kritzel-controls":customElements.get(r(t))||S();break;case"kritzel-cursor-trail":customElements.get(r(t))||I();break;case"kritzel-dialog":customElements.get(r(t))||O();break;case"kritzel-dropdown":customElements.get(r(t))||R();break;case"kritzel-engine":customElements.get(r(t))||y();break;case"kritzel-export":customElements.get(r(t))||W();break;case"kritzel-font":customElements.get(r(t))||M();break;case"kritzel-font-family":customElements.get(r(t))||B();break;case"kritzel-font-size":customElements.get(r(t))||V();break;case"kritzel-icon":customElements.get(r(t))||n();break;case"kritzel-line-endings":customElements.get(r(t))||P();break;case"kritzel-master-detail":customElements.get(r(t))||T();break;case"kritzel-menu":customElements.get(r(t))||K();break;case"kritzel-menu-item":customElements.get(r(t))||D();break;case"kritzel-more-menu":customElements.get(r(t))||A();break;case"kritzel-numeric-input":customElements.get(r(t))||U();break;case"kritzel-opacity-slider":customElements.get(r(t))||N();break;case"kritzel-portal":customElements.get(r(t))||_();break;case"kritzel-settings":customElements.get(r(t))||J();break;case"kritzel-shape-fill":customElements.get(r(t))||F();break;case"kritzel-slide-toggle":customElements.get(r(t))||G();break;case"kritzel-split-button":customElements.get(r(t))||Y();break;case"kritzel-stroke-size":customElements.get(r(t))||Z();break;case"kritzel-tool-config":customElements.get(r(t))||q();break;case"kritzel-tooltip":customElements.get(r(t))||L();break;case"kritzel-utility-panel":customElements.get(r(t))||H();break;case"kritzel-workspace-manager":customElements.get(r(t))||X()}}))};export{Q as D,ot as KritzelEditor,$ as a,tt as b,it as defineCustomElement}
1
+ import{p as t,H as e,c as s,h as o,d as i,t as r}from"./p-Cj-I2_Og.js";import{K as a,d as n}from"./p-DPPpa9So.js";import{D as l,S as c,h as p,e as m,f as k,g as d,i as b,j as h}from"./p-CuifaWTr.js";import{L as u,M as f,K as g,E as z,N as y}from"./p-Csm0Kf0_.js";import{K as j}from"./p-n789Y3S-.js";import{K as C}from"./p-l10It7Nm.js";import{d as x}from"./p-DSMMwH1h.js";import{d as E}from"./p-CCiIxqPN.js";import{d as w}from"./p-4IV4i5r-.js";import{d as v}from"./p-BCZgrVsy.js";import{d as S}from"./p-BvoIoyaZ.js";import{d as I}from"./p-JdxbP-1P.js";import{d as R}from"./p-DCFa1WDS.js";import{d as O}from"./p-CIiUpoDZ.js";import{d as W}from"./p-DB-e1jRv.js";import{d as M}from"./p-BNYfuHT_.js";import{d as B}from"./p-DN1_B6ky.js";import{d as V}from"./p-CnO82wQT.js";import{d as D}from"./p-5Vxv1ZKh.js";import{d as T}from"./p-Bz_LzbTD.js";import{d as P,a as K}from"./p-6yo07JPM.js";import{d as A}from"./p-BVGy2ETQ.js";import{d as J}from"./p-BG4Z2Dwn.js";import{d as U}from"./p-yzi-W-0P.js";import{d as N}from"./p-Dm9n3RrJ.js";import{d as F}from"./p-BbC4EJrJ.js";import{d as G}from"./p-BdnNVYxB.js";import{d as Y}from"./p-CP3i626h.js";import{d as Z}from"./p--aa4aJEU.js";import{d as _}from"./p-K1KgiJP8.js";import{d as L}from"./p-DuK31Tjt.js";import{d as q}from"./p-zoMPunTt.js";import{d as H}from"./p-BhTMzfWj.js";import{d as Q}from"./p-CXGqvg3q.js";const X={type:"pen",color:"#000000",size:16,palettes:{pen:[...l]}},$={color:"#000000",size:8,fontFamily:"Arial",palette:[...l]},tt={color:"#000000",size:4,palette:[...l],arrows:{end:{enabled:!0,style:"triangle"}}},et={shapeType:c.Rectangle,fillColor:"transparent",strokeColor:"#000000",strokeWidth:4,fontColor:"#000000",fontSize:16,fontFamily:"Arial",palette:[...l]},st=t(class extends e{constructor(t){super(),!1!==t&&this.__registerHost(),this.isReady=s(this,"isReady"),this.objectsChange=s(this,"objectsChange"),this.undoStateChange=s(this,"undoStateChange")}get host(){return this}scaleMax=u;scaleMin=f;lockDrawingScale=!0;controls=[{name:"selection",type:"tool",isDefault:!0,tool:p,icon:"cursor"},{name:"brush",type:"tool",tool:m,icon:"pen",config:X},{name:"line",type:"tool",tool:k,icon:"arrow",config:tt},{name:"eraser",type:"tool",tool:g,icon:"eraser"},{name:"text",type:"tool",tool:d,icon:"type",config:$},{name:"shape",type:"tool",tool:b,icon:"shape-rectangle",config:et,subOptions:[{id:"rectangle",icon:"shape-rectangle",label:"Rectangle",value:c.Rectangle,toolProperty:"shapeType"},{id:"ellipse",icon:"shape-ellipse",label:"Ellipse",value:c.Ellipse,toolProperty:"shapeType"},{id:"triangle",icon:"shape-triangle",label:"Triangle",value:c.Triangle,toolProperty:"shapeType"}]},{name:"image",type:"tool",tool:z,icon:"image"},{name:"config",type:"config"}];globalContextMenuItems=[{label:"Paste",icon:"paste",disabled:async()=>0===(await this.engineRef.getCopiedObjects()).length,action:t=>this.engineRef.paste(t.x,t.y)},{label:"Select All",icon:"select-all",action:()=>this.selectAllObjectsInViewport()}];objectContextMenuItems=[{label:"Copy",icon:"copy",action:()=>this.engineRef.copy()},{label:"Paste",icon:"paste",disabled:async()=>0===(await this.engineRef.getCopiedObjects()).length,action:t=>this.engineRef.paste(t.x,t.y)},{label:"Delete",icon:"delete",action:()=>this.engineRef.delete()},{label:"Bring to Front",icon:"bring-to-front",action:()=>this.engineRef.bringToFront()},{label:"Send to Back",icon:"send-to-back",action:()=>this.engineRef.sendToBack()},{label:"Group",icon:"group",disabled:async()=>(await this.engineRef.getSelectedObjects()).length<2,action:()=>this.engineRef.group()},{label:"Ungroup",icon:"ungroup",disabled:async()=>!(await this.engineRef.getSelectedObjects()).some((t=>"KritzelGroup"===t.__class__)),action:()=>this.engineRef.ungroup()}];customSvgIcons={};isControlsVisible=!0;isUtilityPanelVisible=!0;syncConfig;isReady;objectsChange;undoStateChange;isEngineReady=!1;isControlsReady=!1;isWorkspaceManagerReady=!1;workspaces=[];activeWorkspace;isVirtualKeyboardOpen=!1;undoState=null;isBackToContentButtonVisible=!1;onIsEngineReady(t){t&&this.isControlsReady&&this.checkIsReady()}onIsControlsReady(t){t&&this.isEngineReady&&this.checkIsReady()}onWorkspacesChange(t){if(this.activeWorkspace){const e=t.find((t=>t.id===this.activeWorkspace.id));e&&e!==this.activeWorkspace&&(this.activeWorkspace=e)}}onTouchStart(t){t.cancelable&&t.preventDefault()}async getObjectById(t){return this.engineRef.getObjectById(t)}async addObject(t){return this.engineRef.addObject(t)}async updateObject(t,e){return this.engineRef.updateObject(t,e)}async removeObject(t){return this.engineRef.removeObject(t)}async getSelectedObjects(){return this.engineRef.getSelectedObjects()}async selectObjects(t){return this.engineRef.selectObjects(t)}async selectAllObjectsInViewport(){return this.engineRef.selectAllObjectsInViewport()}async clearSelection(){this.engineRef.clearSelection()}async centerObjectInViewport(t){return this.engineRef.centerObjectInViewport(t)}async backToContent(){return this.engineRef.backToContent()}async createWorkspace(t,e){const s=new j("workspace-"+Date.now(),t,e);return this.engineRef.createWorkspace(s)}async updateWorkspace(t){return this.engineRef.updateWorkspace(t)}async deleteWorkspace(t){return this.engineRef.deleteWorkspace(t)}async getWorkspaces(){return this.engineRef.getWorkspaces()}async getActiveWorkspace(){return this.engineRef.getActiveWorkspace()}engineRef;controlsRef;settingsRef;exportRef;splitButtonRef;componentWillLoad(){this.loadSettingsFromStorage()}componentDidLoad(){this.registerCustomSvgIcons(),this.listenForMobileKeyboard(),this.setOsSpecificCssVariables()}loadSettingsFromStorage(){const t=localStorage.getItem("kritzel-settings");if(t)try{const e=JSON.parse(t);"number"==typeof e.scaleMin&&(this.scaleMin=e.scaleMin),"number"==typeof e.scaleMax&&(this.scaleMax=e.scaleMax),"boolean"==typeof e.lockDrawingScale&&(this.lockDrawingScale=e.lockDrawingScale)}catch{}}async checkIsReady(){await customElements.whenDefined("kritzel-editor"),await customElements.whenDefined("kritzel-workspace-manager"),await customElements.whenDefined("kritzel-controls"),await customElements.whenDefined("kritzel-engine"),this.isEngineReady&&this.isControlsReady&&this.isWorkspaceManagerReady&&this.isReady.emit(this.host)}onEngineReady(t){this.isEngineReady=!0,this.activeWorkspace=t.detail.activeWorkspace,this.workspaces=t.detail.workspaces}handleWorkspacesChange(t){this.workspaces=t.detail}handleObjectsChange(t){this.objectsChange.emit(t.detail)}handleUndoStateChange(t){this.undoStateChange.emit(t.detail),this.undoState=t.detail}handleObjectsInViewportChange(t){console.log(t.detail.length),this.isBackToContentButtonVisible=!(t.detail.length>0)}handleSettingsChange(t){this.scaleMin=t.detail.scaleMin,this.scaleMax=t.detail.scaleMax,this.lockDrawingScale=t.detail.lockDrawingScale}async handleMoreMenuItemSelect(t){const{item:e}=t.detail;if("settings"===e.id&&this.settingsRef.open(),"export"===e.id){const t=await this.engineRef.getScreenshot("png");this.exportRef.open(t)}}registerCustomSvgIcons(){for(const[t,e]of Object.entries(this.customSvgIcons))a.register(t,e)}listenForMobileKeyboard(){h.onKeyboardVisibleChanged((t=>{this.isVirtualKeyboardOpen=t}))}setOsSpecificCssVariables(){switch(C.detectOS()){case"iOS":this.host.style.setProperty("--kritzel-editor-top-left-buttons-top","14px"),this.host.style.setProperty("--kritzel-editor-top-left-buttons-left","14px"),this.host.style.setProperty("--kritzel-editor-controls-bottom","14px"),this.host.style.setProperty("--kritzel-editor-controls-transition","cubic-bezier(0.25, 0.1, 0.25, 1.0)"),this.host.style.setProperty("--kritzel-editor-controls-transform","translateY(200%)"),this.host.style.setProperty("--kritzel-editor-controls-transition-duration","0.25s");break;case"Android":this.host.style.setProperty("--kritzel-editor-top-left-buttons-top","14px"),this.host.style.setProperty("--kritzel-editor-top-left-buttons-left","14px"),this.host.style.setProperty("--kritzel-editor-controls-bottom","24px");break;default:this.host.style.setProperty("--kritzel-editor-top-left-buttons-top","14px"),this.host.style.setProperty("--kritzel-editor-top-left-buttons-left","14px"),this.host.style.setProperty("--kritzel-editor-controls-bottom","14px")}}render(){return o(i,{key:"18113021f28ed340017ed15b3db83f275a1a45e0"},o("div",{key:"75c4fc6fb48133edc3b9b2152c09d1b77dc3efc6",class:"top-left-buttons"},o("kritzel-workspace-manager",{key:"c6a68abaf70ebcf37af1870b832c9a2bd2c984fb",workspaces:this.workspaces,activeWorkspace:this.activeWorkspace,onWorkspaceChange:t=>this.activeWorkspace=t.detail,onIsWorkspaceManagerReady:()=>this.isWorkspaceManagerReady=!0}),o("kritzel-back-to-content",{key:"e2be6fadb0a44dd6cc7a061767bc25b11dde5bf3",visible:this.isBackToContentButtonVisible,onBackToContent:()=>this.backToContent()})),o("kritzel-engine",{key:"16c19e74e9a3bd61845fa3542a5a84a12a3c8a05",ref:t=>this.engineRef=t,workspace:this.activeWorkspace,syncConfig:this.syncConfig,scaleMax:this.scaleMax,lockDrawingScale:this.lockDrawingScale,scaleMin:this.scaleMin,globalContextMenuItems:this.globalContextMenuItems,objectContextMenuItems:this.objectContextMenuItems,onIsEngineReady:t=>this.onEngineReady(t),onWorkspacesChange:t=>this.handleWorkspacesChange(t),onObjectsChange:t=>this.handleObjectsChange(t),onUndoStateChange:t=>this.handleUndoStateChange(t),onObjectsInViewportChange:t=>this.handleObjectsInViewportChange(t)}),o("kritzel-controls",{key:"bb328c89b4ebbcce215e6ddf710126e7a71b5d30",class:{"keyboard-open":this.isVirtualKeyboardOpen},style:{display:this.isControlsVisible?"flex":"none"},ref:t=>this.controlsRef=t,controls:this.controls,isUtilityPanelVisible:this.isUtilityPanelVisible,undoState:this.undoState,onIsControlsReady:()=>this.isControlsReady=!0}),o("div",{key:"e7fd78379d8acc4715605c267aa352430633f6ac",class:"top-right-buttons"},o("kritzel-settings",{key:"13db94ca32cabfbd2d6664c58f55e30fcbf99221",ref:t=>this.settingsRef=t,onSettingsChange:t=>this.handleSettingsChange(t)}),o("kritzel-export",{key:"a7aa9b6ada8b0d47edf418c392d6d04598d36925",ref:t=>this.exportRef=t,onExportPng:()=>this.engineRef.exportViewportAsPng(),onExportSvg:()=>this.engineRef.exportViewportAsSvg()}),o("kritzel-more-menu",{key:"70a1a954f678e6b634d5965b23f570f79824af43",onItemSelect:t=>this.handleMoreMenuItemSelect(t)})))}static get watchers(){return{isEngineReady:[{onIsEngineReady:0}],isControlsReady:[{onIsControlsReady:0}],workspaces:[{onWorkspacesChange:0}]}}static get style(){return"kritzel-editor{display:flex;margin:0;position:relative;overflow:hidden;width:100%;height:100%;align-items:center;justify-content:center;touch-action:manipulation;user-select:none;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}kritzel-workspace-manager{}kritzel-controls{position:absolute;bottom:var(--kritzel-editor-controls-bottom, 14px);transition:transform var(--kritzel-editor-controls-transition-duration, 0.1s) var(--kritzel-editor-controls-transition, ease-in-out)}kritzel-controls.keyboard-open{transform:var(--kritzel-editor-controls-transform, translateY(300%))}.top-left-buttons{position:absolute;top:var(--kritzel-editor-top-left-buttons-top, 14px);left:var(--kritzel-editor-top-left-buttons-left, 14px);display:flex;align-items:flex-start;gap:8px}.top-right-buttons{position:absolute;top:var(--kritzel-editor-top-right-buttons-top, 14px);right:var(--kritzel-editor-top-right-buttons-right, 14px);display:flex;align-items:center;gap:8px}.top-right-button{display:flex;align-items:center;justify-content:center;width:50px;height:50px;padding:0;border:var(--kritzel-split-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-split-button-border-radius, 12px);background-color:var(--kritzel-split-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-split-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent}.top-right-button:hover{background-color:#f5f5f5}.top-right-button:active{background-color:#ebebeb}"}},[512,"kritzel-editor",{scaleMax:[1026,"scale-max"],scaleMin:[1026,"scale-min"],lockDrawingScale:[1028,"lock-drawing-scale"],controls:[16],globalContextMenuItems:[16],objectContextMenuItems:[16],customSvgIcons:[16],isControlsVisible:[4,"is-controls-visible"],isUtilityPanelVisible:[4,"is-utility-panel-visible"],syncConfig:[16],isEngineReady:[32],isControlsReady:[32],isWorkspaceManagerReady:[32],workspaces:[32],activeWorkspace:[32],isVirtualKeyboardOpen:[32],undoState:[32],isBackToContentButtonVisible:[32],getObjectById:[64],addObject:[64],updateObject:[64],removeObject:[64],getSelectedObjects:[64],selectObjects:[64],selectAllObjectsInViewport:[64],clearSelection:[64],centerObjectInViewport:[64],backToContent:[64],createWorkspace:[64],updateWorkspace:[64],deleteWorkspace:[64],getWorkspaces:[64],getActiveWorkspace:[64]},[[0,"dblclick","onTouchStart"]],{isEngineReady:[{onIsEngineReady:0}],isControlsReady:[{onIsControlsReady:0}],workspaces:[{onWorkspacesChange:0}]}]),ot=st,it=function(){"undefined"!=typeof customElements&&["kritzel-editor","kritzel-back-to-content","kritzel-color","kritzel-color-palette","kritzel-context-menu","kritzel-controls","kritzel-cursor-trail","kritzel-dialog","kritzel-dropdown","kritzel-engine","kritzel-export","kritzel-font","kritzel-font-family","kritzel-font-size","kritzel-icon","kritzel-line-endings","kritzel-master-detail","kritzel-menu","kritzel-menu-item","kritzel-more-menu","kritzel-numeric-input","kritzel-opacity-slider","kritzel-portal","kritzel-settings","kritzel-shape-fill","kritzel-slide-toggle","kritzel-split-button","kritzel-stroke-size","kritzel-tool-config","kritzel-tooltip","kritzel-utility-panel","kritzel-workspace-manager"].forEach((t=>{switch(t){case"kritzel-editor":customElements.get(r(t))||customElements.define(r(t),st);break;case"kritzel-back-to-content":customElements.get(r(t))||x();break;case"kritzel-color":customElements.get(r(t))||E();break;case"kritzel-color-palette":customElements.get(r(t))||w();break;case"kritzel-context-menu":customElements.get(r(t))||v();break;case"kritzel-controls":customElements.get(r(t))||S();break;case"kritzel-cursor-trail":customElements.get(r(t))||I();break;case"kritzel-dialog":customElements.get(r(t))||R();break;case"kritzel-dropdown":customElements.get(r(t))||O();break;case"kritzel-engine":customElements.get(r(t))||y();break;case"kritzel-export":customElements.get(r(t))||W();break;case"kritzel-font":customElements.get(r(t))||M();break;case"kritzel-font-family":customElements.get(r(t))||B();break;case"kritzel-font-size":customElements.get(r(t))||V();break;case"kritzel-icon":customElements.get(r(t))||n();break;case"kritzel-line-endings":customElements.get(r(t))||D();break;case"kritzel-master-detail":customElements.get(r(t))||T();break;case"kritzel-menu":customElements.get(r(t))||K();break;case"kritzel-menu-item":customElements.get(r(t))||P();break;case"kritzel-more-menu":customElements.get(r(t))||A();break;case"kritzel-numeric-input":customElements.get(r(t))||J();break;case"kritzel-opacity-slider":customElements.get(r(t))||U();break;case"kritzel-portal":customElements.get(r(t))||N();break;case"kritzel-settings":customElements.get(r(t))||F();break;case"kritzel-shape-fill":customElements.get(r(t))||G();break;case"kritzel-slide-toggle":customElements.get(r(t))||Y();break;case"kritzel-split-button":customElements.get(r(t))||Z();break;case"kritzel-stroke-size":customElements.get(r(t))||_();break;case"kritzel-tool-config":customElements.get(r(t))||L();break;case"kritzel-tooltip":customElements.get(r(t))||q();break;case"kritzel-utility-panel":customElements.get(r(t))||H();break;case"kritzel-workspace-manager":customElements.get(r(t))||Q()}}))};export{X as D,ot as KritzelEditor,$ as a,tt as b,it as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as p}from"./p-CGggCpmW.js";const s=o,m=p;export{s as KritzelExport,m as defineCustomElement}
1
+ import{K as o,d as s}from"./p-DB-e1jRv.js";const p=o,r=s;export{p as KritzelExport,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-CgB7__HC.js";const p=o,r=s;export{p as KritzelMoreMenu,r as defineCustomElement}
1
+ import{K as o,d as s}from"./p-BVGy2ETQ.js";const p=o,r=s;export{p as KritzelMoreMenu,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-COqRIjtS.js";const t=o,p=s;export{t as KritzelSettings,p as defineCustomElement}
1
+ import{K as o,d as r}from"./p-BbC4EJrJ.js";const s=o,p=r;export{s as KritzelSettings,p as defineCustomElement}
@@ -1 +1 @@
1
- import{p as e,H as t,c as o,h as r,d as i,t as n}from"./p-Cj-I2_Og.js";import{d as s}from"./p-DPPpa9So.js";import{d as c,a}from"./p-6yo07JPM.js";import{d as l}from"./p-Dm9n3RrJ.js";const m=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.itemSelect=o(this,"itemSelect")}get host(){return this}items=[{id:"export",label:"Export",icon:"download"},{id:"settings",label:"Settings",icon:"settings"}];icon="ellipsis-vertical";iconSize=24;offsetY=4;itemSelect;menuAnchor=null;buttonRef;toggleMenu=e=>{e.stopPropagation(),this.menuAnchor?this.closeMenu():this.menuAnchor=this.buttonRef};closeMenu=()=>{this.menuAnchor=null};handleMenuItemSelect=e=>{const{item:t,parent:o}=e.detail;t.action&&t.action(t,o),this.itemSelect.emit(e.detail),this.closeMenu()};render(){return r(i,{key:"461bb5cc1a4806529bb7eef05e69c40b69e746b0"},r("button",{key:"a61d549f859adedc92425fbcb5082ab827238dc1",ref:e=>this.buttonRef=e,class:"more-menu-button",onClick:this.toggleMenu},r("kritzel-icon",{key:"e57df2f59bcf988d363ed0c14ab634cc1cd766ca",name:this.icon,size:this.iconSize})),r("kritzel-portal",{key:"6dc78dc95ae139ce48489c7cf7429d66812b4c2b",anchor:this.menuAnchor,offsetY:this.offsetY,onClose:this.closeMenu},r("kritzel-menu",{key:"de0f7d5e50f69083b7214d9d6efcd72efc4a6562",items:this.items,onItemSelect:this.handleMenuItemSelect})))}static get style(){return":host{display:inline-flex}.more-menu-button{display:flex;align-items:center;justify-content:center;width:var(--kritzel-more-menu-button-width, 50px);height:var(--kritzel-more-menu-button-height, 50px);padding:0;border:var(--kritzel-more-menu-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-more-menu-button-border-radius, 12px);background-color:var(--kritzel-more-menu-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent}.more-menu-button:hover{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:active{background-color:var(--kritzel-more-menu-button-active-background-color, #ebebeb)}"}},[513,"kritzel-more-menu",{items:[16],icon:[1],iconSize:[2,"icon-size"],offsetY:[2,"offset-y"],menuAnchor:[32]}]);function u(){"undefined"!=typeof customElements&&["kritzel-more-menu","kritzel-icon","kritzel-menu","kritzel-menu-item","kritzel-portal"].forEach((e=>{switch(e){case"kritzel-more-menu":customElements.get(n(e))||customElements.define(n(e),m);break;case"kritzel-icon":customElements.get(n(e))||s();break;case"kritzel-menu":customElements.get(n(e))||a();break;case"kritzel-menu-item":customElements.get(n(e))||c();break;case"kritzel-portal":customElements.get(n(e))||l()}}))}export{m as K,u as d}
1
+ import{p as e,H as t,c as o,h as r,d as n,t as i}from"./p-Cj-I2_Og.js";import{d as s}from"./p-DPPpa9So.js";import{d as c,a}from"./p-6yo07JPM.js";import{d as m}from"./p-Dm9n3RrJ.js";const l=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.itemSelect=o(this,"itemSelect")}get host(){return this}items=[{id:"export",label:"Export",icon:"download"},{id:"settings",label:"Settings",icon:"settings"}];icon="ellipsis-vertical";iconSize=24;offsetY=4;itemSelect;menuAnchor=null;buttonRef;toggleMenu=e=>{e.stopPropagation(),this.menuAnchor?this.closeMenu():this.menuAnchor=this.buttonRef};closeMenu=()=>{this.menuAnchor=null};handleMenuItemSelect=e=>{const{item:t,parent:o}=e.detail;t.action&&t.action(t,o),this.itemSelect.emit(e.detail),this.closeMenu()};render(){return r(n,{key:"461bb5cc1a4806529bb7eef05e69c40b69e746b0"},r("button",{key:"a61d549f859adedc92425fbcb5082ab827238dc1",ref:e=>this.buttonRef=e,class:"more-menu-button",onClick:this.toggleMenu},r("kritzel-icon",{key:"e57df2f59bcf988d363ed0c14ab634cc1cd766ca",name:this.icon,size:this.iconSize})),r("kritzel-portal",{key:"6dc78dc95ae139ce48489c7cf7429d66812b4c2b",anchor:this.menuAnchor,offsetY:this.offsetY,onClose:this.closeMenu},r("kritzel-menu",{key:"de0f7d5e50f69083b7214d9d6efcd72efc4a6562",items:this.items,onItemSelect:this.handleMenuItemSelect})))}static get style(){return":host{display:inline-flex}.more-menu-button{display:flex;align-items:center;justify-content:center;width:var(--kritzel-more-menu-button-width, 50px);height:var(--kritzel-more-menu-button-height, 50px);padding:0;border:var(--kritzel-more-menu-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-more-menu-button-border-radius, 12px);background-color:var(--kritzel-more-menu-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit}.more-menu-button:hover{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:focus{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:active{background-color:var(--kritzel-more-menu-button-active-background-color, #ebebeb)}"}},[513,"kritzel-more-menu",{items:[16],icon:[1],iconSize:[2,"icon-size"],offsetY:[2,"offset-y"],menuAnchor:[32]}]);function u(){"undefined"!=typeof customElements&&["kritzel-more-menu","kritzel-icon","kritzel-menu","kritzel-menu-item","kritzel-portal"].forEach((e=>{switch(e){case"kritzel-more-menu":customElements.get(i(e))||customElements.define(i(e),l);break;case"kritzel-icon":customElements.get(i(e))||s();break;case"kritzel-menu":customElements.get(i(e))||a();break;case"kritzel-menu-item":customElements.get(i(e))||c();break;case"kritzel-portal":customElements.get(i(e))||m()}}))}export{l as K,u as d}
@@ -1 +1 @@
1
- import{p as e,H as t,c as s,h as i,d as l,t as n}from"./p-Cj-I2_Og.js";import{d as a}from"./p-D8A3OvXv.js";import{d as o}from"./p-DPPpa9So.js";import{d as r}from"./p-Bz_LzbTD.js";import{d as c}from"./p-BG4Z2Dwn.js";import{d as g}from"./p-CP3i626h.js";const d="kritzel-settings",m=[{id:"general",label:"General",icon:"settings"},{id:"about",label:"About",icon:"info"}],h=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.settingsChange=s(this,"settingsChange")}isDialogOpen=!1;selectedCategoryId=m[0].id;scaleMin=1e-4;scaleMax=1e3;lockDrawingScale=!0;settingsChange;componentWillLoad(){this.loadSettings()}loadSettings(){const e=localStorage.getItem(d);if(e)try{const t=JSON.parse(e);"number"==typeof t.scaleMin&&(this.scaleMin=t.scaleMin),"number"==typeof t.scaleMax&&(this.scaleMax=t.scaleMax),"boolean"==typeof t.lockDrawingScale&&(this.lockDrawingScale=t.lockDrawingScale)}catch{}}saveSettings(){const e={scaleMin:this.scaleMin,scaleMax:this.scaleMax,lockDrawingScale:this.lockDrawingScale};localStorage.setItem(d,JSON.stringify(e)),this.settingsChange.emit(e)}handleScaleMinChange=e=>{this.scaleMin=e.detail,this.saveSettings()};handleScaleMaxChange=e=>{this.scaleMax=e.detail,this.saveSettings()};handleLockDrawingScaleChange=e=>{this.lockDrawingScale=e.detail,this.saveSettings()};async open(){this.isDialogOpen=!0}closeDialog=()=>{this.isDialogOpen=!1};handleCategorySelect=e=>{this.selectedCategoryId=e.detail.item.id};renderCategoryContent(){switch(this.selectedCategoryId){case"general":return i("div",{class:"settings-content"},i("h3",null,"General Settings"),i("div",{class:"settings-group"},i("div",{class:"settings-item"},i("label",{class:"settings-label"},"Minimum Zoom Level"),i("p",{class:"settings-description"},"Sets the minimum zoom level. Lower values allow zooming out further to see more of the canvas."),i("kritzel-numeric-input",{value:this.scaleMin,min:1e-4,max:1,step:1e-4,onValueChange:this.handleScaleMinChange})),i("div",{class:"settings-item"},i("label",{class:"settings-label"},"Maximum Zoom Level"),i("p",{class:"settings-description"},"Sets the maximum zoom level. Higher values allow zooming in closer for detailed work."),i("kritzel-numeric-input",{value:this.scaleMax,min:1,max:1e3,step:1,onValueChange:this.handleScaleMaxChange})),i("div",{class:"settings-item"},i("label",{class:"settings-label"},"Lock Drawing Scale"),i("p",{class:"settings-description"},"When enabled, drawn objects maintain a fixed visual size regardless of the current zoom level."),i("kritzel-slide-toggle",{checked:this.lockDrawingScale,label:"Lock Drawing Scale",onCheckedChange:this.handleLockDrawingScaleChange}))));case"about":return i("div",{class:"settings-content"},i("h3",null,"About"),i("p",null,"Kritzel - A drawing application"),i("p",{class:"version-info"},"Version ","0.1.11"));default:return null}}render(){return i(l,{key:"a7c4cb00cd0a4accac4f561ed83f7044e3ec7805"},i("kritzel-dialog",{key:"21c7e2a9af084537284f318fc927c78d8513592c",isOpen:this.isDialogOpen,dialogTitle:"Settings",size:"large",onDialogClose:this.closeDialog},i("kritzel-master-detail",{key:"aac13d47df73f519ca068d67cb87f74bc6a9f212",items:m,selectedItemId:this.selectedCategoryId,onItemSelect:this.handleCategorySelect},this.renderCategoryContent())))}static get style(){return":host{display:contents}kritzel-dialog{--kritzel-dialog-body-padding:0;--kritzel-dialog-width-large:800px;--kritzel-dialog-height-large:500px}.footer-button{padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px}.cancel-button{border:1px solid #ebebeb;background:#fff;color:inherit}.cancel-button:hover{background:#f5f5f5}.settings-content{padding:0}.settings-content h3{margin:0 0 16px 0;font-size:18px;font-weight:600;color:var(--kritzel-settings-content-heading-color, #333333)}.settings-content p{margin:0;font-size:14px;color:var(--kritzel-settings-content-text-color, #666666);line-height:1.5}.settings-group{display:flex;flex-direction:column;gap:24px}.settings-item{display:flex;flex-direction:column;gap:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-label{font-size:14px;font-weight:500;color:var(--kritzel-settings-label-color, #333333);margin:0}.settings-description{font-size:12px;color:var(--kritzel-settings-description-color, #888888);margin:0;line-height:1.4}"}},[513,"kritzel-settings",{isDialogOpen:[32],selectedCategoryId:[32],scaleMin:[32],scaleMax:[32],lockDrawingScale:[32],open:[64]}]);function p(){"undefined"!=typeof customElements&&["kritzel-settings","kritzel-dialog","kritzel-icon","kritzel-master-detail","kritzel-numeric-input","kritzel-slide-toggle"].forEach((e=>{switch(e){case"kritzel-settings":customElements.get(n(e))||customElements.define(n(e),h);break;case"kritzel-dialog":customElements.get(n(e))||a();break;case"kritzel-icon":customElements.get(n(e))||o();break;case"kritzel-master-detail":customElements.get(n(e))||r();break;case"kritzel-numeric-input":customElements.get(n(e))||c();break;case"kritzel-slide-toggle":customElements.get(n(e))||g()}}))}export{h as K,p as d}
1
+ import{p as e,H as t,c as s,h as i,d as l,t as n}from"./p-Cj-I2_Og.js";import{d as a}from"./p-DCFa1WDS.js";import{d as o}from"./p-DPPpa9So.js";import{d as r}from"./p-Bz_LzbTD.js";import{d as c}from"./p-BG4Z2Dwn.js";import{d as g}from"./p-CP3i626h.js";const d="kritzel-settings",m=[{id:"general",label:"General",icon:"settings"},{id:"about",label:"About",icon:"info"}],h=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.settingsChange=s(this,"settingsChange")}isDialogOpen=!1;selectedCategoryId=m[0].id;scaleMin=1e-4;scaleMax=1e3;lockDrawingScale=!0;settingsChange;componentWillLoad(){this.loadSettings()}loadSettings(){const e=localStorage.getItem(d);if(e)try{const t=JSON.parse(e);"number"==typeof t.scaleMin&&(this.scaleMin=t.scaleMin),"number"==typeof t.scaleMax&&(this.scaleMax=t.scaleMax),"boolean"==typeof t.lockDrawingScale&&(this.lockDrawingScale=t.lockDrawingScale)}catch{}}saveSettings(){const e={scaleMin:this.scaleMin,scaleMax:this.scaleMax,lockDrawingScale:this.lockDrawingScale};localStorage.setItem(d,JSON.stringify(e)),this.settingsChange.emit(e)}handleScaleMinChange=e=>{this.scaleMin=e.detail,this.saveSettings()};handleScaleMaxChange=e=>{this.scaleMax=e.detail,this.saveSettings()};handleLockDrawingScaleChange=e=>{this.lockDrawingScale=e.detail,this.saveSettings()};async open(){this.isDialogOpen=!0}closeDialog=()=>{this.isDialogOpen=!1};handleCategorySelect=e=>{this.selectedCategoryId=e.detail.item.id};renderCategoryContent(){switch(this.selectedCategoryId){case"general":return i("div",{class:"settings-content"},i("h3",null,"General Settings"),i("div",{class:"settings-group"},i("div",{class:"settings-item"},i("label",{class:"settings-label"},"Minimum Zoom Level"),i("p",{class:"settings-description"},"Sets the minimum zoom level. Lower values allow zooming out further to see more of the canvas."),i("kritzel-numeric-input",{value:this.scaleMin,min:1e-4,max:1,step:1e-4,onValueChange:this.handleScaleMinChange})),i("div",{class:"settings-item"},i("label",{class:"settings-label"},"Maximum Zoom Level"),i("p",{class:"settings-description"},"Sets the maximum zoom level. Higher values allow zooming in closer for detailed work."),i("kritzel-numeric-input",{value:this.scaleMax,min:1,max:1e3,step:1,onValueChange:this.handleScaleMaxChange})),i("div",{class:"settings-item"},i("label",{class:"settings-label"},"Lock Drawing Scale"),i("p",{class:"settings-description"},"When enabled, drawn objects maintain a fixed visual size regardless of the current zoom level."),i("kritzel-slide-toggle",{checked:this.lockDrawingScale,label:"Lock Drawing Scale",onCheckedChange:this.handleLockDrawingScaleChange}))));case"about":return i("div",{class:"settings-content"},i("h3",null,"About"),i("p",null,"Kritzel - A drawing application"),i("p",{class:"version-info"},"Version ","0.1.12"));default:return null}}render(){return i(l,{key:"a7c4cb00cd0a4accac4f561ed83f7044e3ec7805"},i("kritzel-dialog",{key:"21c7e2a9af084537284f318fc927c78d8513592c",isOpen:this.isDialogOpen,dialogTitle:"Settings",size:"large",onDialogClose:this.closeDialog},i("kritzel-master-detail",{key:"aac13d47df73f519ca068d67cb87f74bc6a9f212",items:m,selectedItemId:this.selectedCategoryId,onItemSelect:this.handleCategorySelect},this.renderCategoryContent())))}static get style(){return":host{display:contents}kritzel-dialog{--kritzel-dialog-body-padding:0;--kritzel-dialog-width-large:800px;--kritzel-dialog-height-large:500px}.footer-button{padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px}.cancel-button{border:1px solid #ebebeb;background:#fff;color:inherit}.cancel-button:hover{background:#f5f5f5}.settings-content{padding:0}.settings-content h3{margin:0 0 16px 0;font-size:18px;font-weight:600;color:var(--kritzel-settings-content-heading-color, #333333)}.settings-content p{margin:0;font-size:14px;color:var(--kritzel-settings-content-text-color, #666666);line-height:1.5}.settings-group{display:flex;flex-direction:column;gap:24px}.settings-item{display:flex;flex-direction:column;gap:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-label{font-size:14px;font-weight:500;color:var(--kritzel-settings-label-color, #333333);margin:0}.settings-description{font-size:12px;color:var(--kritzel-settings-description-color, #888888);margin:0;line-height:1.4}"}},[513,"kritzel-settings",{isDialogOpen:[32],selectedCategoryId:[32],scaleMin:[32],scaleMax:[32],lockDrawingScale:[32],open:[64]}]);function p(){"undefined"!=typeof customElements&&["kritzel-settings","kritzel-dialog","kritzel-icon","kritzel-master-detail","kritzel-numeric-input","kritzel-slide-toggle"].forEach((e=>{switch(e){case"kritzel-settings":customElements.get(n(e))||customElements.define(n(e),h);break;case"kritzel-dialog":customElements.get(n(e))||a();break;case"kritzel-icon":customElements.get(n(e))||o();break;case"kritzel-master-detail":customElements.get(n(e))||r();break;case"kritzel-numeric-input":customElements.get(n(e))||c();break;case"kritzel-slide-toggle":customElements.get(n(e))||g()}}))}export{h as K,p as d}
@@ -1 +1 @@
1
- import{p as e,H as t,c as o,h as r,d as a,t as i}from"./p-Cj-I2_Og.js";import{d as c}from"./p-D8A3OvXv.js";import{d as n}from"./p-DPPpa9So.js";const s=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.exportPng=o(this,"exportPng"),this.exportSvg=o(this,"exportSvg")}isDialogOpen=!1;previewUrl;isLoading=!1;exportPng;exportSvg;async open(e){this.previewUrl=e,this.isDialogOpen=!0}closeDialog=()=>{this.isDialogOpen=!1};handleExportPng=()=>{this.exportPng.emit(),this.closeDialog()};handleExportSvg=()=>{this.exportSvg.emit(),this.closeDialog()};render(){return r(a,{key:"77ebbdae3c3417e37eb92a93dfe65c3e9cf3a5a4"},r("kritzel-dialog",{key:"8cd7df09f4e8e209eaac30903439351ce6de4efa",isOpen:this.isDialogOpen,dialogTitle:"Export Viewport",closable:!0,onDialogClose:this.closeDialog},r("div",{key:"de40b5f04ef75e07dd328e45363f134c6e9442dd",class:"export-content"},this.previewUrl&&r("div",{key:"7605139638c0dbacf07f2d9aaa83ad7c4236db80",class:"preview-container"},r("img",{key:"38b33df3bec109a1c2cf021d184674ef2ad0357f",src:this.previewUrl,alt:"Viewport Preview"})),r("p",{key:"4c65f9bf4673fdef87aa937c4541da22a278458f"},"Select a format to export the current viewport:"),r("div",{key:"b891c221dcf7c97093da3e8de47723f79e5e17de",class:"export-options"},r("button",{key:"12e10e98c26b9b1efa78617195cfc8420de3d0ed",class:"export-button",onClick:this.handleExportPng},r("div",{key:"5c2d747507dea56d08fbb05e198f9325e014aab6",class:"icon-container"},r("kritzel-icon",{key:"9a5dbaeca3edbf9221817220c78c6e173adc21e2",name:"image",size:24})),r("span",{key:"f369ad331406afa0dc2886e3da057c9a47c2fded"},"Export as PNG")),r("button",{key:"7434f72102828a7b8aa29b6893f947be0162e823",class:"export-button",onClick:this.handleExportSvg},r("div",{key:"b2da9040987177a9095a291dee3b78ed13564179",class:"icon-container"},r("kritzel-icon",{key:"54ce9a55281015d57159540b3565f97ec49b2a00",name:"shape-rectangle",size:24})),r("span",{key:"48252a69f5e17ec53fad400e942a7e830f88e07c"},"Export as SVG"))))))}static get style(){return":host{display:block}.export-content{display:flex;flex-direction:column;gap:16px;padding:16px 0}.preview-container{width:100%;display:flex;justify-content:center;align-items:center;box-sizing:border-box;margin-bottom:8px}.preview-container img{max-width:100%;max-height:250px;object-fit:contain;box-shadow:0 4px 8px rgba(0, 0, 0, 0.15);border-radius:4px;border:1px solid var(--kritzel-border-color, #dbdbdb)}.export-content p{margin:0;color:var(--kritzel-text-secondary, #666)}.export-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}.export-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;border:1px solid var(--kritzel-border-color, #dbdbdb);border-radius:8px;background-color:transparent;cursor:pointer;transition:all 0.2s ease;color:var(--kritzel-text-primary, #333)}.export-button:hover{background-color:var(--kritzel-hover-background, #f5f5f5);border-color:var(--kritzel-primary-color, #007bff);color:var(--kritzel-primary-color, #007bff)}.export-button .icon-container{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:var(--kritzel-background-secondary, #f0f0f0)}.export-button span{font-weight:500;font-size:14px}"}},[513,"kritzel-export",{isDialogOpen:[32],previewUrl:[32],isLoading:[32],open:[64]}]);function d(){"undefined"!=typeof customElements&&["kritzel-export","kritzel-dialog","kritzel-icon"].forEach((e=>{switch(e){case"kritzel-export":customElements.get(i(e))||customElements.define(i(e),s);break;case"kritzel-dialog":customElements.get(i(e))||c();break;case"kritzel-icon":customElements.get(i(e))||n()}}))}export{s as K,d}
1
+ import{p as e,H as t,c as o,h as r,d as a,t as i}from"./p-Cj-I2_Og.js";import{d as c}from"./p-DCFa1WDS.js";import{d as n}from"./p-DPPpa9So.js";const s=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.exportPng=o(this,"exportPng"),this.exportSvg=o(this,"exportSvg")}isDialogOpen=!1;previewUrl;isLoading=!1;exportPng;exportSvg;async open(e){this.previewUrl=e,this.isDialogOpen=!0}closeDialog=()=>{this.isDialogOpen=!1};handleExportPng=()=>{this.exportPng.emit(),this.closeDialog()};handleExportSvg=()=>{this.exportSvg.emit(),this.closeDialog()};render(){return r(a,{key:"77ebbdae3c3417e37eb92a93dfe65c3e9cf3a5a4"},r("kritzel-dialog",{key:"8cd7df09f4e8e209eaac30903439351ce6de4efa",isOpen:this.isDialogOpen,dialogTitle:"Export Viewport",closable:!0,onDialogClose:this.closeDialog},r("div",{key:"de40b5f04ef75e07dd328e45363f134c6e9442dd",class:"export-content"},this.previewUrl&&r("div",{key:"7605139638c0dbacf07f2d9aaa83ad7c4236db80",class:"preview-container"},r("img",{key:"38b33df3bec109a1c2cf021d184674ef2ad0357f",src:this.previewUrl,alt:"Viewport Preview"})),r("p",{key:"4c65f9bf4673fdef87aa937c4541da22a278458f"},"Select a format to export the current viewport:"),r("div",{key:"b891c221dcf7c97093da3e8de47723f79e5e17de",class:"export-options"},r("button",{key:"12e10e98c26b9b1efa78617195cfc8420de3d0ed",class:"export-button",onClick:this.handleExportPng},r("div",{key:"5c2d747507dea56d08fbb05e198f9325e014aab6",class:"icon-container"},r("kritzel-icon",{key:"9a5dbaeca3edbf9221817220c78c6e173adc21e2",name:"image",size:24})),r("span",{key:"f369ad331406afa0dc2886e3da057c9a47c2fded"},"Export as PNG")),r("button",{key:"7434f72102828a7b8aa29b6893f947be0162e823",class:"export-button",onClick:this.handleExportSvg},r("div",{key:"b2da9040987177a9095a291dee3b78ed13564179",class:"icon-container"},r("kritzel-icon",{key:"54ce9a55281015d57159540b3565f97ec49b2a00",name:"shape-rectangle",size:24})),r("span",{key:"48252a69f5e17ec53fad400e942a7e830f88e07c"},"Export as SVG"))))))}static get style(){return":host{display:block}.export-content{display:flex;flex-direction:column;gap:16px;padding:16px 0}.preview-container{width:100%;display:flex;justify-content:center;align-items:center;box-sizing:border-box;margin-bottom:8px}.preview-container img{max-width:100%;max-height:250px;object-fit:contain;box-shadow:0 4px 8px rgba(0, 0, 0, 0.15);border-radius:4px;border:1px solid var(--kritzel-border-color, #dbdbdb)}.export-content p{margin:0;color:var(--kritzel-text-secondary, #666)}.export-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}.export-button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:16px;border:1px solid var(--kritzel-border-color, #dbdbdb);border-radius:8px;background-color:transparent;cursor:pointer;transition:all 0.2s ease;color:var(--kritzel-text-primary, #333)}.export-button:hover{background-color:var(--kritzel-hover-background, #f5f5f5);border-color:var(--kritzel-primary-color, #007bff);color:var(--kritzel-primary-color, #007bff)}.export-button .icon-container{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background-color:var(--kritzel-background-secondary, #f0f0f0)}.export-button span{font-weight:500;font-size:14px}"}},[513,"kritzel-export",{isDialogOpen:[32],previewUrl:[32],isLoading:[32],open:[64]}]);function d(){"undefined"!=typeof customElements&&["kritzel-export","kritzel-dialog","kritzel-icon"].forEach((e=>{switch(e){case"kritzel-export":customElements.get(i(e))||customElements.define(i(e),s);break;case"kritzel-dialog":customElements.get(i(e))||c();break;case"kritzel-icon":customElements.get(i(e))||n()}}))}export{s as K,d}
@@ -1 +1 @@
1
- import{p as e,H as t,c as o,h as i,d as l,t as a}from"./p-Cj-I2_Og.js";import{K as s}from"./p-C6qB08BS.js";const r=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.dialogOpen=o(this,"dialogOpen"),this.dialogClose=o(this,"dialogClose")}get host(){return this}isOpen=!1;dialogTitle;closable=!0;closeOnBackdrop=!0;closeOnEscape=!0;autoFocus=!0;trapFocus=!0;size="medium";fullscreenOnMobile=!0;isAnimating=!1;dialogOpen;dialogClose;previousOverflow="";previousActiveElement=null;handleIsOpenChange(e){e?this.openDialog():this.closeDialog()}handleKeyDown(e){this.isOpen&&("Escape"===e.key&&this.closeOnEscape&&(e.preventDefault(),e.stopPropagation(),this.emitClose("escape")),"Tab"===e.key&&this.trapFocus&&this.handleTabKey(e))}async open(){this.isOpen||(this.isOpen=!0)}async close(e="programmatic"){this.emitClose(e)}async focusFirstElement(){this.focusFirst()}componentDidLoad(){this.isOpen&&this.openDialog()}disconnectedCallback(){this.restoreBodyScroll()}openDialog(){this.isAnimating=!0,this.previousActiveElement=document.activeElement,this.lockBodyScroll(),this.dialogOpen.emit(),this.autoFocus&&requestAnimationFrame((()=>{this.focusFirst()})),requestAnimationFrame((()=>{this.isAnimating=!1}))}closeDialog(){this.restoreBodyScroll(),this.returnFocusToPreviousElement()}emitClose(e){this.dialogClose.emit({reason:e})}lockBodyScroll(){this.previousOverflow=document.body.style.overflow,document.body.style.overflow="hidden"}restoreBodyScroll(){document.body.style.overflow=this.previousOverflow}returnFocusToPreviousElement(){this.previousActiveElement?.focus&&this.previousActiveElement.focus()}focusFirst(){const e=this.host.shadowRoot?.querySelector(".dialog-content");if(!e)return;const t=[...s.getFocusableElements(e),...this.getSlottedFocusableElements()];t.length>0?t[0].focus():e.focus()}getSlottedFocusableElements(){const e=this.host.shadowRoot?.querySelectorAll("slot")??[],t=[];return e.forEach((e=>{e.assignedElements({flatten:!0}).forEach((e=>{const o=s.getFocusableElements(e);t.push(...o),this.isFocusable(e)&&t.push(e)}))})),t}isFocusable(e){return e.matches('a[href], button:not([disabled]), input:not([disabled]), textarea:not([disabled]), select:not([disabled]), details, [tabindex]:not([tabindex="-1"])')}handleTabKey(e){const t=this.getSlottedFocusableElements(),o=this.host.shadowRoot?.querySelector(".close-button");if(o&&this.closable&&t.unshift(o),0===t.length)return;const i=t[0],l=t[t.length-1],a=this.getDeepActiveElement();e.shiftKey?a===i&&(e.preventDefault(),l.focus()):a===l&&(e.preventDefault(),i.focus())}getDeepActiveElement(){let e=document.activeElement;for(;e?.shadowRoot?.activeElement;)e=e.shadowRoot.activeElement;return e}handleBackdropClick=e=>{e.stopPropagation(),this.closeOnBackdrop&&this.emitClose("backdrop")};handleCloseButtonClick=e=>{e.stopPropagation(),this.emitClose("close-button")};handleContentClick=e=>{e.stopPropagation()};renderCloseButton(){return this.closable?i("button",{class:"close-button",type:"button","aria-label":"Close dialog",onClick:this.handleCloseButtonClick},i("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},i("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),i("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))):null}renderHeader(){const e=null!==this.host.querySelector('[slot="header"]'),t=!!this.dialogTitle;return e||t||this.closable?i("div",{class:"dialog-header"},e?i("slot",{name:"header"}):t?i("h2",{class:"dialog-title"},this.dialogTitle):null,this.renderCloseButton()):null}renderFooter(){return null!==this.host.querySelector('[slot="footer"]')?i("div",{class:"dialog-footer"},i("slot",{name:"footer"})):null}render(){return this.isOpen?i(l,null,i("div",{class:{backdrop:!0,"is-animating":this.isAnimating},onClick:this.handleBackdropClick},i("div",{class:{"dialog-content":!0,"is-animating":this.isAnimating,[`size-${this.size}`]:!0,"fullscreen-on-mobile":this.fullscreenOnMobile},role:"dialog","aria-modal":"true","aria-labelledby":this.dialogTitle?"dialog-title":void 0,tabIndex:-1,onClick:this.handleContentClick},this.renderHeader(),i("div",{class:"dialog-body"},i("slot",null)),this.renderFooter()))):null}static get watchers(){return{isOpen:[{handleIsOpenChange:0}]}}static get style(){return":host{display:contents}.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10002;display:flex;align-items:center;justify-content:center;background-color:var(--kritzel-dialog-backdrop-color, rgba(0, 0, 0, 0.5));opacity:1;transition:opacity 150ms ease-out}.backdrop.is-animating{opacity:0}.dialog-content{position:relative;display:flex;flex-direction:column;background-color:var(--kritzel-dialog-background-color, #ffffff);border-radius:var(--kritzel-dialog-border-radius, 12px);box-shadow:var(--kritzel-dialog-box-shadow, 0 4px 20px rgba(0, 0, 0, 0.15));border:var(--kritzel-dialog-border, 1px solid #ebebeb);max-height:var(--kritzel-dialog-max-height, 90vh);max-width:var(--kritzel-dialog-max-width, 90vw);overflow:hidden;transform:scale(1);opacity:1;transition:transform 200ms ease-out, opacity 200ms ease-out;font-family:var(--kritzel-dialog-font-family, sans-serif)}.dialog-content.is-animating{transform:scale(0.95);opacity:0}.dialog-content.size-small{width:var(--kritzel-dialog-width-small, 320px);height:var(--kritzel-dialog-height-small, auto)}.dialog-content.size-medium{width:var(--kritzel-dialog-width-medium, 480px);height:var(--kritzel-dialog-height-medium, auto)}.dialog-content.size-large{width:var(--kritzel-dialog-width-large, 640px);height:var(--kritzel-dialog-height-large, auto)}.dialog-content.size-fullscreen{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}@media (max-width: 576px){.dialog-content.fullscreen-on-mobile{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--kritzel-dialog-header-padding, 16px 20px);border-bottom:var(--kritzel-dialog-header-border, 1px solid #ebebeb);gap:12px}.dialog-title{margin:0;font-size:var(--kritzel-dialog-title-font-size, 18px);font-weight:var(--kritzel-dialog-title-font-weight, 600);color:var(--kritzel-dialog-title-color, #1a1a1a);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--kritzel-dialog-close-button-border-radius, 6px);background-color:var(--kritzel-dialog-close-button-background, transparent);color:var(--kritzel-dialog-close-button-color, #666666);cursor:var(--kritzel-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.close-button:hover{background-color:var(--kritzel-dialog-close-button-hover-background, #f5f5f5);color:var(--kritzel-dialog-close-button-hover-color, #1a1a1a)}.close-button:focus{outline:none}.close-button:focus-visible{outline:2px solid var(--kritzel-dialog-focus-ring-color, #0066cc);outline-offset:2px}.close-button:active{background-color:var(--kritzel-dialog-close-button-active-background, #ebebeb)}.dialog-body{padding:var(--kritzel-dialog-body-padding, 20px);overflow-y:auto;flex:1;scrollbar-color:#ebebeb transparent;scrollbar-width:thin}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--kritzel-dialog-footer-gap, 8px);padding:var(--kritzel-dialog-footer-padding, 16px 20px);border-top:var(--kritzel-dialog-footer-border, 1px solid #ebebeb)}::slotted([slot='header']){flex:1}::slotted([slot='footer']){display:contents}"}},[769,"kritzel-dialog",{isOpen:[516,"is-open"],dialogTitle:[1,"dialog-title"],closable:[4],closeOnBackdrop:[4,"close-on-backdrop"],closeOnEscape:[4,"close-on-escape"],autoFocus:[4,"auto-focus"],trapFocus:[4,"trap-focus"],size:[1],fullscreenOnMobile:[4,"fullscreen-on-mobile"],isAnimating:[32],open:[64],close:[64],focusFirstElement:[64]},[[8,"keydown","handleKeyDown"]],{isOpen:[{handleIsOpenChange:0}]}]);function n(){"undefined"!=typeof customElements&&["kritzel-dialog"].forEach((e=>{"kritzel-dialog"===e&&(customElements.get(a(e))||customElements.define(a(e),r))}))}export{r as K,n as d}
1
+ import{p as e,H as t,c as o,h as i,d as l,t as a}from"./p-Cj-I2_Og.js";import{K as s}from"./p-C6qB08BS.js";const r=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.dialogOpen=o(this,"dialogOpen"),this.dialogClose=o(this,"dialogClose")}get host(){return this}isOpen=!1;dialogTitle;closable=!0;closeOnBackdrop=!0;closeOnEscape=!0;autoFocus=!0;trapFocus=!0;size="medium";fullscreenOnMobile=!0;isAnimating=!1;dialogOpen;dialogClose;previousOverflow="";previousActiveElement=null;handleIsOpenChange(e){e?this.openDialog():this.closeDialog()}handleKeyDown(e){this.isOpen&&("Escape"===e.key&&this.closeOnEscape&&(e.preventDefault(),e.stopPropagation(),this.emitClose("escape")),"Tab"===e.key&&this.trapFocus&&this.handleTabKey(e))}async open(){this.isOpen||(this.isOpen=!0)}async close(e="programmatic"){this.emitClose(e)}async focusFirstElement(){this.focusFirst()}componentDidLoad(){this.isOpen&&this.openDialog()}disconnectedCallback(){this.restoreBodyScroll()}openDialog(){this.isAnimating=!0,this.previousActiveElement=document.activeElement,this.lockBodyScroll(),this.dialogOpen.emit(),this.autoFocus&&requestAnimationFrame((()=>{this.focusFirst()})),requestAnimationFrame((()=>{this.isAnimating=!1}))}closeDialog(){this.restoreBodyScroll(),this.returnFocusToPreviousElement()}emitClose(e){this.dialogClose.emit({reason:e})}lockBodyScroll(){this.previousOverflow=document.body.style.overflow,document.body.style.overflow="hidden"}restoreBodyScroll(){document.body.style.overflow=this.previousOverflow}returnFocusToPreviousElement(){this.previousActiveElement?.focus&&this.previousActiveElement.focus()}focusFirst(){const e=this.host.shadowRoot?.querySelector(".dialog-content");if(!e)return;const t=[...s.getFocusableElements(e),...this.getSlottedFocusableElements()];t.length>0?t[0].focus():e.focus()}getSlottedFocusableElements(){const e=this.host.shadowRoot?.querySelectorAll("slot")??[],t=[];return e.forEach((e=>{e.assignedElements({flatten:!0}).forEach((e=>{const o=s.getFocusableElements(e);t.push(...o),this.isFocusable(e)&&t.push(e)}))})),t}isFocusable(e){return e.matches('a[href], button:not([disabled]), input:not([disabled]), textarea:not([disabled]), select:not([disabled]), details, [tabindex]:not([tabindex="-1"])')}handleTabKey(e){const t=this.getSlottedFocusableElements(),o=this.host.shadowRoot?.querySelector(".close-button");if(o&&this.closable&&t.unshift(o),0===t.length)return;const i=t[0],l=t[t.length-1],a=this.getDeepActiveElement();e.shiftKey?a===i&&(e.preventDefault(),l.focus()):a===l&&(e.preventDefault(),i.focus())}getDeepActiveElement(){let e=document.activeElement;for(;e?.shadowRoot?.activeElement;)e=e.shadowRoot.activeElement;return e}handleBackdropClick=e=>{e.stopPropagation(),this.closeOnBackdrop&&this.emitClose("backdrop")};handleCloseButtonClick=e=>{e.stopPropagation(),this.emitClose("close-button")};handleContentClick=e=>{e.stopPropagation()};renderCloseButton(){return this.closable?i("button",{class:"close-button",type:"button","aria-label":"Close dialog",onClick:this.handleCloseButtonClick},i("svg",{xmlns:"http://www.w3.org/2000/svg",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2","stroke-linecap":"round","stroke-linejoin":"round"},i("line",{x1:"18",y1:"6",x2:"6",y2:"18"}),i("line",{x1:"6",y1:"6",x2:"18",y2:"18"}))):null}renderHeader(){const e=null!==this.host.querySelector('[slot="header"]'),t=!!this.dialogTitle;return e||t||this.closable?i("div",{class:"dialog-header"},e?i("slot",{name:"header"}):t?i("h2",{class:"dialog-title"},this.dialogTitle):null,this.renderCloseButton()):null}renderFooter(){return null!==this.host.querySelector('[slot="footer"]')?i("div",{class:"dialog-footer"},i("slot",{name:"footer"})):null}render(){return this.isOpen?i(l,null,i("div",{class:{backdrop:!0,"is-animating":this.isAnimating},onClick:this.handleBackdropClick},i("div",{class:{"dialog-content":!0,"is-animating":this.isAnimating,[`size-${this.size}`]:!0,"fullscreen-on-mobile":this.fullscreenOnMobile},role:"dialog","aria-modal":"true","aria-labelledby":this.dialogTitle?"dialog-title":void 0,tabIndex:-1,onClick:this.handleContentClick},this.renderHeader(),i("div",{class:"dialog-body"},i("slot",null)),this.renderFooter()))):null}static get watchers(){return{isOpen:[{handleIsOpenChange:0}]}}static get style(){return":host{display:contents}.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10002;display:flex;align-items:center;justify-content:center;background-color:var(--kritzel-dialog-backdrop-color, rgba(0, 0, 0, 0.5));opacity:1;transition:opacity 150ms ease-out}.backdrop.is-animating{opacity:0}.dialog-content{position:relative;display:flex;flex-direction:column;background-color:var(--kritzel-dialog-background-color, #ffffff);border-radius:var(--kritzel-dialog-border-radius, 12px);box-shadow:var(--kritzel-dialog-box-shadow, 0 4px 20px rgba(0, 0, 0, 0.15));border:var(--kritzel-dialog-border, 1px solid #ebebeb);max-height:var(--kritzel-dialog-max-height, 90vh);max-width:var(--kritzel-dialog-max-width, 90vw);overflow:hidden;transform:scale(1);opacity:1;transition:transform 200ms ease-out, opacity 200ms ease-out;font-family:var(--kritzel-dialog-font-family, sans-serif)}.dialog-content.is-animating{transform:scale(0.95);opacity:0}.dialog-content.size-small{width:var(--kritzel-dialog-width-small, 320px);height:var(--kritzel-dialog-height-small, auto)}.dialog-content.size-medium{width:var(--kritzel-dialog-width-medium, 480px);height:var(--kritzel-dialog-height-medium, auto)}.dialog-content.size-large{width:var(--kritzel-dialog-width-large, 640px);height:var(--kritzel-dialog-height-large, auto)}.dialog-content.size-fullscreen{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}@media (max-width: 576px){.backdrop:has(.fullscreen-on-mobile){background-color:transparent}.dialog-content.fullscreen-on-mobile{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--kritzel-dialog-header-padding, 16px 20px);border-bottom:var(--kritzel-dialog-header-border, 1px solid #ebebeb);gap:12px}.dialog-title{margin:0;font-size:var(--kritzel-dialog-title-font-size, 18px);font-weight:var(--kritzel-dialog-title-font-weight, 600);color:var(--kritzel-dialog-title-color, #1a1a1a);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--kritzel-dialog-close-button-border-radius, 6px);background-color:var(--kritzel-dialog-close-button-background, transparent);color:var(--kritzel-dialog-close-button-color, #666666);cursor:var(--kritzel-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.close-button:hover{background-color:var(--kritzel-dialog-close-button-hover-background, #f5f5f5);color:var(--kritzel-dialog-close-button-hover-color, #1a1a1a)}.close-button:focus{outline:none}.close-button:focus-visible{outline:2px solid var(--kritzel-dialog-focus-ring-color, #0066cc);outline-offset:2px}.close-button:active{background-color:var(--kritzel-dialog-close-button-active-background, #ebebeb)}.dialog-body{padding:var(--kritzel-dialog-body-padding, 20px);overflow-y:auto;flex:1;scrollbar-color:#ebebeb transparent;scrollbar-width:thin}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--kritzel-dialog-footer-gap, 8px);padding:var(--kritzel-dialog-footer-padding, 16px 20px);border-top:var(--kritzel-dialog-footer-border, 1px solid #ebebeb)}::slotted([slot='header']){flex:1}::slotted([slot='footer']){display:contents}"}},[769,"kritzel-dialog",{isOpen:[516,"is-open"],dialogTitle:[1,"dialog-title"],closable:[4],closeOnBackdrop:[4,"close-on-backdrop"],closeOnEscape:[4,"close-on-escape"],autoFocus:[4,"auto-focus"],trapFocus:[4,"trap-focus"],size:[1],fullscreenOnMobile:[4,"fullscreen-on-mobile"],isAnimating:[32],open:[64],close:[64],focusFirstElement:[64]},[[8,"keydown","handleKeyDown"]],{isOpen:[{handleIsOpenChange:0}]}]);function n(){"undefined"!=typeof customElements&&["kritzel-dialog"].forEach((e=>{"kritzel-dialog"===e&&(customElements.get(a(e))||customElements.define(a(e),r))}))}export{r as K,n as d}
@@ -977,7 +977,7 @@ class KritzelHTMLHelper {
977
977
  }
978
978
  }
979
979
 
980
- const kritzelDialogCss = () => `:host{display:contents}.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10002;display:flex;align-items:center;justify-content:center;background-color:var(--kritzel-dialog-backdrop-color, rgba(0, 0, 0, 0.5));opacity:1;transition:opacity 150ms ease-out}.backdrop.is-animating{opacity:0}.dialog-content{position:relative;display:flex;flex-direction:column;background-color:var(--kritzel-dialog-background-color, #ffffff);border-radius:var(--kritzel-dialog-border-radius, 12px);box-shadow:var(--kritzel-dialog-box-shadow, 0 4px 20px rgba(0, 0, 0, 0.15));border:var(--kritzel-dialog-border, 1px solid #ebebeb);max-height:var(--kritzel-dialog-max-height, 90vh);max-width:var(--kritzel-dialog-max-width, 90vw);overflow:hidden;transform:scale(1);opacity:1;transition:transform 200ms ease-out, opacity 200ms ease-out;font-family:var(--kritzel-dialog-font-family, sans-serif)}.dialog-content.is-animating{transform:scale(0.95);opacity:0}.dialog-content.size-small{width:var(--kritzel-dialog-width-small, 320px);height:var(--kritzel-dialog-height-small, auto)}.dialog-content.size-medium{width:var(--kritzel-dialog-width-medium, 480px);height:var(--kritzel-dialog-height-medium, auto)}.dialog-content.size-large{width:var(--kritzel-dialog-width-large, 640px);height:var(--kritzel-dialog-height-large, auto)}.dialog-content.size-fullscreen{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}@media (max-width: 576px){.dialog-content.fullscreen-on-mobile{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--kritzel-dialog-header-padding, 16px 20px);border-bottom:var(--kritzel-dialog-header-border, 1px solid #ebebeb);gap:12px}.dialog-title{margin:0;font-size:var(--kritzel-dialog-title-font-size, 18px);font-weight:var(--kritzel-dialog-title-font-weight, 600);color:var(--kritzel-dialog-title-color, #1a1a1a);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--kritzel-dialog-close-button-border-radius, 6px);background-color:var(--kritzel-dialog-close-button-background, transparent);color:var(--kritzel-dialog-close-button-color, #666666);cursor:var(--kritzel-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.close-button:hover{background-color:var(--kritzel-dialog-close-button-hover-background, #f5f5f5);color:var(--kritzel-dialog-close-button-hover-color, #1a1a1a)}.close-button:focus{outline:none}.close-button:focus-visible{outline:2px solid var(--kritzel-dialog-focus-ring-color, #0066cc);outline-offset:2px}.close-button:active{background-color:var(--kritzel-dialog-close-button-active-background, #ebebeb)}.dialog-body{padding:var(--kritzel-dialog-body-padding, 20px);overflow-y:auto;flex:1;scrollbar-color:#ebebeb transparent;scrollbar-width:thin}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--kritzel-dialog-footer-gap, 8px);padding:var(--kritzel-dialog-footer-padding, 16px 20px);border-top:var(--kritzel-dialog-footer-border, 1px solid #ebebeb)}::slotted([slot='header']){flex:1}::slotted([slot='footer']){display:contents}`;
980
+ const kritzelDialogCss = () => `:host{display:contents}.backdrop{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10002;display:flex;align-items:center;justify-content:center;background-color:var(--kritzel-dialog-backdrop-color, rgba(0, 0, 0, 0.5));opacity:1;transition:opacity 150ms ease-out}.backdrop.is-animating{opacity:0}.dialog-content{position:relative;display:flex;flex-direction:column;background-color:var(--kritzel-dialog-background-color, #ffffff);border-radius:var(--kritzel-dialog-border-radius, 12px);box-shadow:var(--kritzel-dialog-box-shadow, 0 4px 20px rgba(0, 0, 0, 0.15));border:var(--kritzel-dialog-border, 1px solid #ebebeb);max-height:var(--kritzel-dialog-max-height, 90vh);max-width:var(--kritzel-dialog-max-width, 90vw);overflow:hidden;transform:scale(1);opacity:1;transition:transform 200ms ease-out, opacity 200ms ease-out;font-family:var(--kritzel-dialog-font-family, sans-serif)}.dialog-content.is-animating{transform:scale(0.95);opacity:0}.dialog-content.size-small{width:var(--kritzel-dialog-width-small, 320px);height:var(--kritzel-dialog-height-small, auto)}.dialog-content.size-medium{width:var(--kritzel-dialog-width-medium, 480px);height:var(--kritzel-dialog-height-medium, auto)}.dialog-content.size-large{width:var(--kritzel-dialog-width-large, 640px);height:var(--kritzel-dialog-height-large, auto)}.dialog-content.size-fullscreen{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}@media (max-width: 576px){.backdrop:has(.fullscreen-on-mobile){background-color:transparent}.dialog-content.fullscreen-on-mobile{width:100vw;height:100vh;height:100dvh;max-width:100vw;max-height:100vh;max-height:100dvh;border-radius:0}}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:var(--kritzel-dialog-header-padding, 16px 20px);border-bottom:var(--kritzel-dialog-header-border, 1px solid #ebebeb);gap:12px}.dialog-title{margin:0;font-size:var(--kritzel-dialog-title-font-size, 18px);font-weight:var(--kritzel-dialog-title-font-weight, 600);color:var(--kritzel-dialog-title-color, #1a1a1a);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.close-button{display:flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--kritzel-dialog-close-button-border-radius, 6px);background-color:var(--kritzel-dialog-close-button-background, transparent);color:var(--kritzel-dialog-close-button-color, #666666);cursor:var(--kritzel-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;flex-shrink:0;-webkit-tap-highlight-color:transparent}.close-button:hover{background-color:var(--kritzel-dialog-close-button-hover-background, #f5f5f5);color:var(--kritzel-dialog-close-button-hover-color, #1a1a1a)}.close-button:focus{outline:none}.close-button:focus-visible{outline:2px solid var(--kritzel-dialog-focus-ring-color, #0066cc);outline-offset:2px}.close-button:active{background-color:var(--kritzel-dialog-close-button-active-background, #ebebeb)}.dialog-body{padding:var(--kritzel-dialog-body-padding, 20px);overflow-y:auto;flex:1;scrollbar-color:#ebebeb transparent;scrollbar-width:thin}.dialog-footer{display:flex;align-items:center;justify-content:flex-end;gap:var(--kritzel-dialog-footer-gap, 8px);padding:var(--kritzel-dialog-footer-padding, 16px 20px);border-top:var(--kritzel-dialog-footer-border, 1px solid #ebebeb)}::slotted([slot='header']){flex:1}::slotted([slot='footer']){display:contents}`;
981
981
 
982
982
  const KritzelDialog = class {
983
983
  constructor(hostRef) {
@@ -23234,7 +23234,7 @@ const KritzelMenuItem = class {
23234
23234
  };
23235
23235
  KritzelMenuItem.style = kritzelMenuItemCss();
23236
23236
 
23237
- const kritzelMoreMenuCss = () => `:host{display:inline-flex}.more-menu-button{display:flex;align-items:center;justify-content:center;width:var(--kritzel-more-menu-button-width, 50px);height:var(--kritzel-more-menu-button-height, 50px);padding:0;border:var(--kritzel-more-menu-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-more-menu-button-border-radius, 12px);background-color:var(--kritzel-more-menu-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent}.more-menu-button:hover{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:active{background-color:var(--kritzel-more-menu-button-active-background-color, #ebebeb)}`;
23237
+ const kritzelMoreMenuCss = () => `:host{display:inline-flex}.more-menu-button{display:flex;align-items:center;justify-content:center;width:var(--kritzel-more-menu-button-width, 50px);height:var(--kritzel-more-menu-button-height, 50px);padding:0;border:var(--kritzel-more-menu-button-border, 1px solid #ebebeb);border-radius:var(--kritzel-more-menu-button-border-radius, 12px);background-color:var(--kritzel-more-menu-button-background-color, #ffffff);cursor:var(--kritzel-pointer-cursor, pointer);box-shadow:var(--kritzel-more-menu-button-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));transition:background-color 150ms ease;-webkit-tap-highlight-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;color:inherit}.more-menu-button:hover{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:focus{background-color:var(--kritzel-more-menu-button-hover-background-color, #f5f5f5)}.more-menu-button:active{background-color:var(--kritzel-more-menu-button-active-background-color, #ebebeb)}`;
23238
23238
 
23239
23239
  const KritzelMoreMenu = class {
23240
23240
  constructor(hostRef) {
@@ -23647,7 +23647,7 @@ const KritzelPortal = class {
23647
23647
  * This file is auto-generated by the version bump scripts.
23648
23648
  * Do not modify manually.
23649
23649
  */
23650
- const KRITZEL_VERSION = '0.1.11';
23650
+ const KRITZEL_VERSION = '0.1.12';
23651
23651
 
23652
23652
  const kritzelSettingsCss = () => `:host{display:contents}kritzel-dialog{--kritzel-dialog-body-padding:0;--kritzel-dialog-width-large:800px;--kritzel-dialog-height-large:500px}.footer-button{padding:8px 16px;border-radius:6px;cursor:pointer;font-size:14px}.cancel-button{border:1px solid #ebebeb;background:#fff;color:inherit}.cancel-button:hover{background:#f5f5f5}.settings-content{padding:0}.settings-content h3{margin:0 0 16px 0;font-size:18px;font-weight:600;color:var(--kritzel-settings-content-heading-color, #333333)}.settings-content p{margin:0;font-size:14px;color:var(--kritzel-settings-content-text-color, #666666);line-height:1.5}.settings-group{display:flex;flex-direction:column;gap:24px}.settings-item{display:flex;flex-direction:column;gap:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.settings-label{font-size:14px;font-weight:500;color:var(--kritzel-settings-label-color, #333333);margin:0}.settings-description{font-size:12px;color:var(--kritzel-settings-description-color, #888888);margin:0;line-height:1.4}`;
23653
23653