kritzel-stencil 0.1.78 → 0.1.80

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/dist/cjs/{index-BRZ6e6oa.js → index-CFnj_FXt.js} +36 -9
  2. package/dist/cjs/index.cjs.js +1 -1
  3. package/dist/cjs/kritzel-active-users_42.cjs.entry.js +333 -177
  4. package/dist/cjs/kritzel-brush-style.cjs.entry.js +1 -1
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/stencil.cjs.js +3 -3
  7. package/dist/cjs/{workspace.migrations-sUPrO23c.js → workspace.migrations-DUXtSb7C.js} +244 -197
  8. package/dist/collection/classes/core/core.class.js +39 -31
  9. package/dist/collection/classes/core/store.class.js +57 -16
  10. package/dist/collection/classes/core/viewport.class.js +12 -12
  11. package/dist/collection/classes/handlers/context-menu.handler.js +1 -1
  12. package/dist/collection/classes/handlers/line-handle.handler.js +7 -4
  13. package/dist/collection/classes/handlers/move.handler.js +11 -8
  14. package/dist/collection/classes/handlers/resize.handler.js +12 -3
  15. package/dist/collection/classes/handlers/rotation.handler.js +12 -3
  16. package/dist/collection/classes/handlers/selection.handler.js +20 -15
  17. package/dist/collection/classes/managers/anchor.manager.js +4 -4
  18. package/dist/collection/classes/objects/base-object.class.js +6 -6
  19. package/dist/collection/classes/objects/custom-element.class.js +2 -2
  20. package/dist/collection/classes/objects/group.class.js +10 -10
  21. package/dist/collection/classes/objects/image.class.js +2 -2
  22. package/dist/collection/classes/objects/line.class.js +7 -7
  23. package/dist/collection/classes/objects/path.class.js +5 -5
  24. package/dist/collection/classes/objects/selection-box.class.js +1 -1
  25. package/dist/collection/classes/objects/selection-group.class.js +16 -16
  26. package/dist/collection/classes/objects/shape.class.js +37 -31
  27. package/dist/collection/classes/objects/text.class.js +40 -32
  28. package/dist/collection/classes/structures/app-state-map.structure.js +18 -16
  29. package/dist/collection/classes/structures/object-map.structure.js +30 -27
  30. package/dist/collection/classes/tools/brush-tool.class.js +14 -14
  31. package/dist/collection/classes/tools/image-tool.class.js +1 -1
  32. package/dist/collection/classes/tools/line-tool.class.js +14 -14
  33. package/dist/collection/classes/tools/selection-tool.class.js +2 -2
  34. package/dist/collection/classes/tools/shape-tool.class.js +6 -6
  35. package/dist/collection/classes/tools/text-tool.class.js +2 -2
  36. package/dist/collection/collection-manifest.json +1 -1
  37. package/dist/collection/components/core/kritzel-awareness-cursors/kritzel-awareness-cursors.js +6 -6
  38. package/dist/collection/components/core/kritzel-cursor-trail/kritzel-cursor-trail.js +2 -2
  39. package/dist/collection/components/core/kritzel-editor/kritzel-editor.js +70 -11
  40. package/dist/collection/components/core/kritzel-engine/kritzel-engine.css +21 -1
  41. package/dist/collection/components/core/kritzel-engine/kritzel-engine.js +159 -60
  42. package/dist/collection/configs/default-engine-config.js +2 -2
  43. package/dist/collection/constants/version.js +1 -1
  44. package/dist/collection/helpers/keyboard.helper.js +15 -11
  45. package/dist/components/index.js +1 -1
  46. package/dist/components/kritzel-active-users.js +1 -1
  47. package/dist/components/kritzel-avatar.js +1 -1
  48. package/dist/components/kritzel-awareness-cursors.js +1 -1
  49. package/dist/components/kritzel-back-to-content.js +1 -1
  50. package/dist/components/kritzel-brush-style.js +1 -1
  51. package/dist/components/kritzel-button.js +1 -1
  52. package/dist/components/kritzel-color-palette.js +1 -1
  53. package/dist/components/kritzel-color.js +1 -1
  54. package/dist/components/kritzel-context-menu.js +1 -1
  55. package/dist/components/kritzel-controls.js +1 -1
  56. package/dist/components/kritzel-current-user-dialog.js +1 -1
  57. package/dist/components/kritzel-current-user.js +1 -1
  58. package/dist/components/kritzel-cursor-trail.js +1 -1
  59. package/dist/components/kritzel-dialog.js +1 -1
  60. package/dist/components/kritzel-dropdown.js +1 -1
  61. package/dist/components/kritzel-editor.js +1 -1
  62. package/dist/components/kritzel-engine.js +1 -1
  63. package/dist/components/kritzel-export.js +1 -1
  64. package/dist/components/kritzel-font-family.js +1 -1
  65. package/dist/components/kritzel-font-size.js +1 -1
  66. package/dist/components/kritzel-font.js +1 -1
  67. package/dist/components/kritzel-icon.js +1 -1
  68. package/dist/components/kritzel-input.js +1 -1
  69. package/dist/components/kritzel-line-endings.js +1 -1
  70. package/dist/components/kritzel-login-dialog.js +1 -1
  71. package/dist/components/kritzel-master-detail.js +1 -1
  72. package/dist/components/kritzel-menu-item.js +1 -1
  73. package/dist/components/kritzel-menu.js +1 -1
  74. package/dist/components/kritzel-more-menu.js +1 -1
  75. package/dist/components/kritzel-numeric-input.js +1 -1
  76. package/dist/components/kritzel-opacity-slider.js +1 -1
  77. package/dist/components/kritzel-pill-tabs.js +1 -1
  78. package/dist/components/kritzel-portal.js +1 -1
  79. package/dist/components/kritzel-settings.js +1 -1
  80. package/dist/components/kritzel-shape-fill.js +1 -1
  81. package/dist/components/kritzel-share-dialog.js +1 -1
  82. package/dist/components/kritzel-slide-toggle.js +1 -1
  83. package/dist/components/kritzel-split-button.js +1 -1
  84. package/dist/components/kritzel-stroke-size.js +1 -1
  85. package/dist/components/kritzel-tool-config.js +1 -1
  86. package/dist/components/kritzel-tooltip.js +1 -1
  87. package/dist/components/kritzel-utility-panel.js +1 -1
  88. package/dist/components/kritzel-workspace-manager.js +1 -1
  89. package/dist/components/{p-Md9Y-b3d.js → p-1ppb4M65.js} +1 -1
  90. package/dist/components/{p-KJ4dHzrS.js → p-7yR-sKH8.js} +1 -1
  91. package/dist/components/{p-CN8IxBlU.js → p-B-Gej_Ak.js} +1 -1
  92. package/dist/components/{p-76W5pG2O.js → p-B4F19Aqj.js} +1 -1
  93. package/dist/components/{p-BuI6Gkzg.js → p-B5WII1Lk.js} +1 -1
  94. package/dist/components/p-BWj1eE2b.js +1 -0
  95. package/dist/components/{p-ZC5YELQJ.js → p-BZ8bK8qT.js} +1 -1
  96. package/dist/components/{p-DkWWzVg8.js → p-BaaFG0p-.js} +1 -1
  97. package/dist/components/{p-6NFl6EB2.js → p-Bat829Bg.js} +1 -1
  98. package/dist/components/p-BcwZ36sO.js +1 -0
  99. package/dist/components/{p-53di1Zko.js → p-BjPmEs5A.js} +1 -1
  100. package/dist/components/{p-D5IhryUR.js → p-Brwz_Dpb.js} +1 -1
  101. package/dist/components/p-BzQmBVwr.js +9 -0
  102. package/dist/components/{p-C2l9mZ1P.js → p-C-MtTi6x.js} +1 -1
  103. package/dist/components/p-C8WnYSHi.js +1 -0
  104. package/dist/components/{p-BLsH_Oi0.js → p-C9zsWWH2.js} +1 -1
  105. package/dist/components/{p-ZQ2bKafG.js → p-CJKsuQun.js} +1 -1
  106. package/dist/components/{p-m1nVDC3G.js → p-CJzg_ejc.js} +1 -1
  107. package/dist/components/{p-Dte67BWd.js → p-CM7rYf9A.js} +1 -1
  108. package/dist/components/{p-Dr3-pKVg.js → p-CMGHx71q.js} +1 -1
  109. package/dist/components/{p-CI9Nbh-x.js → p-CNMpVlot.js} +1 -1
  110. package/dist/components/{p-DDKjsXCe.js → p-CS7r-zhx.js} +1 -1
  111. package/dist/components/{p-DaGZEV0R.js → p-C_fSm7T4.js} +1 -1
  112. package/dist/components/{p-Ck1dhpUQ.js → p-CfEGaTaV.js} +1 -1
  113. package/dist/components/{p-CWMFGEe0.js → p-CvyE2Wg-.js} +1 -1
  114. package/dist/components/{p-D3pNw-SV.js → p-D5BXoK9m.js} +1 -1
  115. package/dist/components/{p-DV7Z_qfa.js → p-D7pwbRUy.js} +1 -1
  116. package/dist/components/{p-CBslLN3-.js → p-DCH4Rlqx.js} +1 -1
  117. package/dist/components/{p-CYh7yV-K.js → p-DEOUiiyI.js} +1 -1
  118. package/dist/components/{p-pCC6t6BH.js → p-DKeBfe_l.js} +1 -1
  119. package/dist/components/{p-DWsCbu01.js → p-DUQmBcTy.js} +1 -1
  120. package/dist/components/{p-D14QNK3X.js → p-DUnKjQN7.js} +1 -1
  121. package/dist/components/{p-BrZ_gL8Q.js → p-DYcsC2zO.js} +1 -1
  122. package/dist/components/{p-D7yzmu1l.js → p-DkT0KZCm.js} +1 -1
  123. package/dist/components/{p-Cns7qSKS.js → p-DrsORMoT.js} +1 -1
  124. package/dist/components/{p-BueaqfA2.js → p-Dw0Obsn5.js} +1 -1
  125. package/dist/components/{p-DxzDda_J.js → p-Gm5hSQ-e.js} +1 -1
  126. package/dist/components/{p-C4fKLlrd.js → p-HK-6khHo.js} +1 -1
  127. package/dist/components/{p-_QEHfsIk.js → p-V3VW2JKl.js} +1 -1
  128. package/dist/components/{p-Lhyh6KeB.js → p-VxgCvVox.js} +1 -1
  129. package/dist/components/{p-l_YGO7RB.js → p-cjeDomsc.js} +1 -1
  130. package/dist/components/{p-gtQlsorg.js → p-rNu5JVNH.js} +1 -1
  131. package/dist/components/p-xYCbKFih.js +1 -0
  132. package/dist/esm/{index-BbOHefEf.js → index-D9HaikfQ.js} +36 -9
  133. package/dist/esm/index.js +1 -1
  134. package/dist/esm/kritzel-active-users_42.entry.js +333 -177
  135. package/dist/esm/kritzel-brush-style.entry.js +1 -1
  136. package/dist/esm/loader.js +3 -3
  137. package/dist/esm/stencil.js +4 -4
  138. package/dist/esm/{workspace.migrations-NhRgr2_H.js → workspace.migrations-OzSSw5kt.js} +244 -197
  139. package/dist/stencil/index.esm.js +1 -1
  140. package/dist/stencil/p-D9HaikfQ.js +2 -0
  141. package/dist/stencil/p-OzSSw5kt.js +1 -0
  142. package/dist/stencil/{p-98238bf9.entry.js → p-b0be4da1.entry.js} +1 -1
  143. package/dist/stencil/p-f7be06a8.entry.js +9 -0
  144. package/dist/stencil/stencil.esm.js +1 -1
  145. package/dist/types/classes/core/store.class.d.ts +23 -0
  146. package/dist/types/classes/objects/shape.class.d.ts +1 -0
  147. package/dist/types/classes/objects/text.class.d.ts +1 -0
  148. package/dist/types/classes/providers/hocuspocus-sync-provider.class.d.ts +1 -1
  149. package/dist/types/components/core/kritzel-editor/kritzel-editor.d.ts +7 -5
  150. package/dist/types/components/core/kritzel-engine/kritzel-engine.d.ts +10 -4
  151. package/dist/types/components.d.ts +35 -13
  152. package/dist/types/constants/version.d.ts +1 -1
  153. package/dist/types/helpers/tool-config.helper.d.ts +1 -1
  154. package/dist/types/interfaces/engine-state.interface.d.ts +10 -10
  155. package/package.json +1 -1
  156. package/dist/components/p-Ban3OlgZ.js +0 -9
  157. package/dist/components/p-CGGiwvWZ.js +0 -1
  158. package/dist/components/p-CHY71o5B.js +0 -1
  159. package/dist/components/p-DXpYcAnT.js +0 -1
  160. package/dist/components/p-pGzF7PUB.js +0 -1
  161. package/dist/stencil/p-4a4b38e4.entry.js +0 -9
  162. package/dist/stencil/p-BbOHefEf.js +0 -2
  163. package/dist/stencil/p-NhRgr2_H.js +0 -1
@@ -1 +1 @@
1
- import{K as s,d as o}from"./p-DWsCbu01.js";const p=s,r=o;export{p as KritzelNumericInput,r as defineCustomElement}
1
+ import{K as o,d as s}from"./p-DUQmBcTy.js";const m=o,p=s;export{m as KritzelNumericInput,p as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-ZQ2bKafG.js";const a=o,p=s;export{a as KritzelOpacitySlider,p as defineCustomElement}
1
+ import{K as s,d as o}from"./p-CJKsuQun.js";const p=s,r=o;export{p as KritzelOpacitySlider,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as r}from"./p-BrZ_gL8Q.js";const s=o,p=r;export{s as KritzelPillTabs,p as defineCustomElement}
1
+ import{K as s,d as o}from"./p-DYcsC2zO.js";const p=s,r=o;export{p as KritzelPillTabs,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as p}from"./p-Dr3-pKVg.js";const r=o,s=p;export{r as KritzelPortal,s as defineCustomElement}
1
+ import{K as o,d as s}from"./p-CMGHx71q.js";const p=o,r=s;export{p as KritzelPortal,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-DaGZEV0R.js";const a=o,p=s;export{a as KritzelSettings,p as defineCustomElement}
1
+ import{K as o,d as s}from"./p-C_fSm7T4.js";const m=o,p=s;export{m as KritzelSettings,p as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-Dte67BWd.js";const t=o,p=s;export{t as KritzelShapeFill,p as defineCustomElement}
1
+ import{K as o,d as r}from"./p-CM7rYf9A.js";const s=o,p=r;export{s as KritzelShapeFill,p as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as r}from"./p-C4fKLlrd.js";const s=o,p=r;export{s as KritzelShareDialog,p as defineCustomElement}
1
+ import{K as o,d as s}from"./p-HK-6khHo.js";const p=o,r=s;export{p as KritzelShareDialog,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as p}from"./p-Ck1dhpUQ.js";const s=o,r=p;export{s as KritzelSlideToggle,r as defineCustomElement}
1
+ import{K as a,d as o}from"./p-CfEGaTaV.js";const s=a,p=o;export{s as KritzelSlideToggle,p as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as p}from"./p-pCC6t6BH.js";const s=o,t=p;export{s as KritzelSplitButton,t as defineCustomElement}
1
+ import{K as o,d as s}from"./p-DKeBfe_l.js";const e=o,p=s;export{e as KritzelSplitButton,p as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-Lhyh6KeB.js";const p=o,r=s;export{p as KritzelStrokeSize,r as defineCustomElement}
1
+ import{K as o,d as s}from"./p-VxgCvVox.js";const p=o,r=s;export{p as KritzelStrokeSize,r as defineCustomElement}
@@ -1 +1 @@
1
- import{a as o,d as s}from"./p-CWMFGEe0.js";const a=o,p=s;export{a as KritzelToolConfig,p as defineCustomElement}
1
+ import{a as o,d as s}from"./p-CvyE2Wg-.js";const a=o,p=s;export{a as KritzelToolConfig,p as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-BuI6Gkzg.js";const p=o,r=s;export{p as KritzelTooltip,r as defineCustomElement}
1
+ import{K as o,d as s}from"./p-B5WII1Lk.js";const p=o,r=s;export{p as KritzelTooltip,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as o,d as s}from"./p-m1nVDC3G.js";const m=o,p=s;export{m as KritzelUtilityPanel,p as defineCustomElement}
1
+ import{K as o,d as s}from"./p-CJzg_ejc.js";const p=o,r=s;export{p as KritzelUtilityPanel,r as defineCustomElement}
@@ -1 +1 @@
1
- import{K as s,d as o}from"./p-_QEHfsIk.js";const p=s,r=o;export{p as KritzelWorkspaceManager,r as defineCustomElement}
1
+ import{K as o,d as s}from"./p-V3VW2JKl.js";const p=o,r=s;export{p as KritzelWorkspaceManager,r as defineCustomElement}
@@ -1 +1 @@
1
- import{p as e,H as n,c as t,h as o,d as i,t as r}from"./p-CGGiwvWZ.js";const s=e(class extends n{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.valueChange=t(this,"valueChange")}styles=["none","triangle"];value;valueChange;getStartEnding(){return this.value?.start?.enabled?this.value.start.style??"triangle":"none"}getEndEnding(){return this.value?.end?.enabled?this.value.end.style??"triangle":"none"}handleStartChange(e){const n={...this.value,start:"none"===e?{enabled:!1}:{enabled:!0,style:e}};this.value=n,this.valueChange.emit(n)}handleEndChange(e){const n={...this.value,end:"none"===e?{enabled:!1}:{enabled:!0,style:e}};this.value=n,this.valueChange.emit(n)}getEndingPath(e){switch(e){case"triangle":return"M 0 0 L 10 5 L 0 10 Z";case"open":return"M 0 0 L 10 5 L 0 10";case"diamond":return"M 0 5 L 5 0 L 10 5 L 5 10 Z";case"circle":return"M 10 5 A 5 5 0 1 1 0 5 A 5 5 0 1 1 10 5 Z";default:return""}}renderEndingIcon(e,n){const t="var(--kritzel-global-text-primary)";if("none"===e)return o("svg",{viewBox:"0 0 24 12",class:"ending-icon"},o("line",{x1:n?4:2,y1:"6",x2:n?22:20,y2:"6",stroke:t,"stroke-width":"2","stroke-linecap":"round"}));const i=this.getEndingPath(e),r="open"===e;return o("svg",{viewBox:"0 0 24 12",class:"ending-icon"},n?o("g",null,o("line",{x1:"12",y1:"6",x2:"22",y2:"6",stroke:t,"stroke-width":"2","stroke-linecap":"round"}),o("g",{transform:"translate(2, 1) scale(1, 1)"},o("path",{d:i,fill:r?"none":t,stroke:t,"stroke-width":r?2:0,"stroke-linecap":"round","stroke-linejoin":"round",transform:"scale(-1, 1) translate(-10, 0)"}))):o("g",null,o("line",{x1:"2",y1:"6",x2:"12",y2:"6",stroke:t,"stroke-width":"2","stroke-linecap":"round"}),o("g",{transform:"translate(12, 1)"},o("path",{d:i,fill:r?"none":t,stroke:t,"stroke-width":r?2:0,"stroke-linecap":"round","stroke-linejoin":"round"}))))}render(){const e=this.getStartEnding(),n=this.getEndEnding();return o(i,{key:"fd254becee71940867504c80b47d56a69ae2ab12"},o("div",{key:"be03727ba2f5802a8adadc90b28dd7488d1bfe1c",class:"endings-section"},o("div",{key:"0ba2fcefeb3690f7eee01c7b1c3f6db58ed8e918",class:"endings-row"},this.styles.map((n=>o("button",{class:{"ending-option":!0,selected:e===n},onClick:()=>this.handleStartChange(n),title:"none"===n?"No start arrow":`${n} start arrow`},this.renderEndingIcon(n,!0)))))),o("div",{key:"058ce9870084adc6f1b061aba50e830c0e8b4a01",class:"endings-section"},o("div",{key:"69c4ced0ddb8a47ea1fdd290431eee7bae95e192",class:"endings-row"},this.styles.map((e=>o("button",{class:{"ending-option":!0,selected:n===e},onClick:()=>this.handleEndChange(e),title:"none"===e?"No end arrow":`${e} end arrow`},this.renderEndingIcon(e,!1)))))))}static get style(){return":host{display:flex;flex-direction:column;gap:12px;padding:0;box-sizing:border-box}.endings-section{display:flex;flex-direction:column;gap:6px}.section-label{font-size:12px;font-weight:500;color:var(--kritzel-line-endings-label-color, #666666);padding-left:4px}.endings-row{display:flex;align-items:center;gap:4px}.ending-option{display:flex;justify-content:center;align-items:center;width:48px;height:32px;border-radius:6px;cursor:var(--kritzel-global-pointer-cursor, pointer);border:2px solid transparent;box-sizing:border-box;background:var(--kritzel-line-endings-option-background, #ffffff);padding:4px;transition:background-color 0.15s ease, border-color 0.15s ease}.ending-option:hover{background-color:var(--kritzel-line-endings-hover-background-color, #ebebeb)}.ending-option.selected{border-color:var(--kritzel-selection-border-color, #007AFF);background-color:var(--kritzel-line-endings-selected-background-color, #ebebeb)}.ending-option:focus{outline:none;box-shadow:0 0 0 2px var(--kritzel-global-focus-ring-color, rgba(0, 122, 255, 0.3))}.ending-icon{width:100%;height:100%}"}},[513,"kritzel-line-endings",{styles:[16],value:[1040]}]);function a(){"undefined"!=typeof customElements&&["kritzel-line-endings"].forEach((e=>{"kritzel-line-endings"===e&&(customElements.get(r(e))||customElements.define(r(e),s))}))}export{s as K,a as d}
1
+ import{p as e,H as n,c as t,h as o,d as i,t as r}from"./p-BWj1eE2b.js";const s=e(class extends n{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.valueChange=t(this,"valueChange")}styles=["none","triangle"];value;valueChange;getStartEnding(){return this.value?.start?.enabled?this.value.start.style??"triangle":"none"}getEndEnding(){return this.value?.end?.enabled?this.value.end.style??"triangle":"none"}handleStartChange(e){const n={...this.value,start:"none"===e?{enabled:!1}:{enabled:!0,style:e}};this.value=n,this.valueChange.emit(n)}handleEndChange(e){const n={...this.value,end:"none"===e?{enabled:!1}:{enabled:!0,style:e}};this.value=n,this.valueChange.emit(n)}getEndingPath(e){switch(e){case"triangle":return"M 0 0 L 10 5 L 0 10 Z";case"open":return"M 0 0 L 10 5 L 0 10";case"diamond":return"M 0 5 L 5 0 L 10 5 L 5 10 Z";case"circle":return"M 10 5 A 5 5 0 1 1 0 5 A 5 5 0 1 1 10 5 Z";default:return""}}renderEndingIcon(e,n){const t="var(--kritzel-global-text-primary)";if("none"===e)return o("svg",{viewBox:"0 0 24 12",class:"ending-icon"},o("line",{x1:n?4:2,y1:"6",x2:n?22:20,y2:"6",stroke:t,"stroke-width":"2","stroke-linecap":"round"}));const i=this.getEndingPath(e),r="open"===e;return o("svg",{viewBox:"0 0 24 12",class:"ending-icon"},n?o("g",null,o("line",{x1:"12",y1:"6",x2:"22",y2:"6",stroke:t,"stroke-width":"2","stroke-linecap":"round"}),o("g",{transform:"translate(2, 1) scale(1, 1)"},o("path",{d:i,fill:r?"none":t,stroke:t,"stroke-width":r?2:0,"stroke-linecap":"round","stroke-linejoin":"round",transform:"scale(-1, 1) translate(-10, 0)"}))):o("g",null,o("line",{x1:"2",y1:"6",x2:"12",y2:"6",stroke:t,"stroke-width":"2","stroke-linecap":"round"}),o("g",{transform:"translate(12, 1)"},o("path",{d:i,fill:r?"none":t,stroke:t,"stroke-width":r?2:0,"stroke-linecap":"round","stroke-linejoin":"round"}))))}render(){const e=this.getStartEnding(),n=this.getEndEnding();return o(i,{key:"fd254becee71940867504c80b47d56a69ae2ab12"},o("div",{key:"be03727ba2f5802a8adadc90b28dd7488d1bfe1c",class:"endings-section"},o("div",{key:"0ba2fcefeb3690f7eee01c7b1c3f6db58ed8e918",class:"endings-row"},this.styles.map((n=>o("button",{class:{"ending-option":!0,selected:e===n},onClick:()=>this.handleStartChange(n),title:"none"===n?"No start arrow":`${n} start arrow`},this.renderEndingIcon(n,!0)))))),o("div",{key:"058ce9870084adc6f1b061aba50e830c0e8b4a01",class:"endings-section"},o("div",{key:"69c4ced0ddb8a47ea1fdd290431eee7bae95e192",class:"endings-row"},this.styles.map((e=>o("button",{class:{"ending-option":!0,selected:n===e},onClick:()=>this.handleEndChange(e),title:"none"===e?"No end arrow":`${e} end arrow`},this.renderEndingIcon(e,!1)))))))}static get style(){return":host{display:flex;flex-direction:column;gap:12px;padding:0;box-sizing:border-box}.endings-section{display:flex;flex-direction:column;gap:6px}.section-label{font-size:12px;font-weight:500;color:var(--kritzel-line-endings-label-color, #666666);padding-left:4px}.endings-row{display:flex;align-items:center;gap:4px}.ending-option{display:flex;justify-content:center;align-items:center;width:48px;height:32px;border-radius:6px;cursor:var(--kritzel-global-pointer-cursor, pointer);border:2px solid transparent;box-sizing:border-box;background:var(--kritzel-line-endings-option-background, #ffffff);padding:4px;transition:background-color 0.15s ease, border-color 0.15s ease}.ending-option:hover{background-color:var(--kritzel-line-endings-hover-background-color, #ebebeb)}.ending-option.selected{border-color:var(--kritzel-selection-border-color, #007AFF);background-color:var(--kritzel-line-endings-selected-background-color, #ebebeb)}.ending-option:focus{outline:none;box-shadow:0 0 0 2px var(--kritzel-global-focus-ring-color, rgba(0, 122, 255, 0.3))}.ending-icon{width:100%;height:100%}"}},[513,"kritzel-line-endings",{styles:[16],value:[1040]}]);function a(){"undefined"!=typeof customElements&&["kritzel-line-endings"].forEach((e=>{"kritzel-line-endings"===e&&(customElements.get(r(e))||customElements.define(r(e),s))}))}export{s as K,a as d}
@@ -1 +1 @@
1
- import{p as e,H as t,c as i,h as n,d as o,t as s}from"./p-CGGiwvWZ.js";import{d as r}from"./p-DxzDda_J.js";const a=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.actionSelected=i(this,"actionSelected"),this.close=i(this,"close")}get host(){return this}items;onItemsChanged(){this.updateMenuItems()}objects;actionSelected;close;processedItems=[];openSubmenuIndex=null;submenuPosition="right";submenuTimer=null;submenuRefs=new Map;menuItemWrapperRefs=new Map;handleOutsideClick(e){e.composedPath().includes(this.host)||this.close.emit()}componentWillLoad(){this.updateMenuItems()}componentDidLoad(){this.adjustPositionToViewport()}componentDidUpdate(){this.adjustPositionToViewport(),this.adjustSubmenuPosition()}disconnectedCallback(){this.submenuTimer&&clearTimeout(this.submenuTimer)}adjustPositionToViewport(){const e=this.host.getBoundingClientRect(),t=window.innerWidth,i=window.innerHeight,n=parseFloat(this.host.style.left)||0,o=parseFloat(this.host.style.top)||0;let s=n,r=o;e.right>t-8&&(s=t-e.width-8),e.bottom>i-8&&(r=i-e.height-8),s<8&&(s=8),r<8&&(r=8),s===n&&r===o||(this.host.style.left=`${s}px`,this.host.style.top=`${r}px`)}adjustSubmenuPosition(){if(null===this.openSubmenuIndex)return;const e=this.submenuRefs.get(this.openSubmenuIndex);if(!e)return;const t=e.getBoundingClientRect(),i=window.innerHeight;e.style.top=t.bottom>i-8?-(t.bottom-(i-8))+"px":"0px"}handleItemClick(e,t,i){t||i||e.action&&this.actionSelected.emit(e)}handleItemMouseEnter(e,t){this.submenuTimer&&(clearTimeout(this.submenuTimer),this.submenuTimer=null),this.submenuTimer=t?setTimeout((()=>{const t=this.menuItemWrapperRefs.get(e);if(t){const e=t.getBoundingClientRect(),i=window.innerWidth;this.submenuPosition=e.right+160>i-8?"left":"right"}else this.submenuPosition="right";this.openSubmenuIndex=e}),150):setTimeout((()=>{this.openSubmenuIndex=null}),150)}handleSubmenuMouseEnter(){this.submenuTimer&&(clearTimeout(this.submenuTimer),this.submenuTimer=null)}handleSubmenuMouseLeave(){this.submenuTimer=setTimeout((()=>{this.openSubmenuIndex=null}),150)}async updateMenuItems(){this.processedItems=await this.processItems(this.items)}async processItems(e){const t=[];for(const i of e)if(await this.evaluateProperty(i.visible,!0)){const e=await this.evaluateProperty(i.disabled,!1);let n;i.children&&i.children.length>0&&(n=await this.processItems(i.children)),t.push({item:i,isDisabled:e,processedChildren:n})}return t}async evaluateProperty(e,t){return"boolean"==typeof e?e:"function"==typeof e?await Promise.resolve(e(null,this.objects)):t}renderSubmenu(e,t){return n("div",{class:{"submenu-container":!0,"position-left":"left"===this.submenuPosition},ref:e=>e&&this.submenuRefs.set(t,e),onMouseEnter:()=>this.handleSubmenuMouseEnter(),onMouseLeave:()=>this.handleSubmenuMouseLeave()},e.map((({item:t,isDisabled:i,processedChildren:o},s)=>{const r=s>0?e[s-1].item:null,a=o&&o.length>0;return[r&&r.group!==t.group&&n("div",{class:"menu-divider",key:`submenu-divider-${s}`}),n("button",{key:`submenu-${t.label}-${s}`,class:{"menu-item":!0,disabled:i,"has-children":a},onClick:()=>this.handleItemClick(t,i,a),disabled:i},t.icon&&n("kritzel-icon",{name:t.icon,size:16}),n("span",{class:"label"},t.label),a&&n("kritzel-icon",{name:"chevron-right",size:12,class:"submenu-arrow"}))]})))}render(){return n(o,{key:"11f279a1ef329569988b1c1ce6311a1f81695ebe"},n("div",{key:"e0aa8ab22df018ae0a2b1c22513575d67099d35d",class:"menu-container"},this.processedItems.map((({item:e,isDisabled:t,processedChildren:i},o)=>{const s=o>0?this.processedItems[o-1].item:null,r=i&&i.length>0,a=this.openSubmenuIndex===o;return[s&&s.group!==e.group&&n("div",{class:"menu-divider",key:`divider-${o}`}),n("div",{class:"menu-item-wrapper",ref:e=>e&&this.menuItemWrapperRefs.set(o,e),onMouseEnter:()=>this.handleItemMouseEnter(o,r)},n("button",{key:`${e.label}-${o}`,class:{"menu-item":!0,disabled:t,"has-children":r,"submenu-open":a},onClick:()=>this.handleItemClick(e,t,r),disabled:t&&!r},e.icon&&n("kritzel-icon",{name:e.icon,size:16}),n("span",{class:"label"},e.label),r&&n("kritzel-icon",{name:"chevron-right",size:12,class:"submenu-arrow"})),r&&a&&this.renderSubmenu(i,o))]}))))}static get watchers(){return{items:[{onItemsChanged:0}]}}static get style(){return":host{display:block}.menu-container{display:flex;flex-direction:column;gap:var(--kritzel-context-menu-item-spacing, 2px);background-color:var(--kritzel-context-menu-background-color, #ffffff);border-radius:var(--kritzel-context-menu-border-radius, 12px);box-shadow:var(--kritzel-context-menu-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.12));border:var(--kritzel-context-menu-border, 1px solid #ebebeb);padding:var(--kritzel-context-menu-padding, 4px);min-width:var(--kritzel-context-menu-min-width, 140px)}.menu-item-wrapper{position:relative}.menu-item{display:flex;align-items:center;gap:var(--kritzel-context-menu-item-gap, 8px);background:none;border:none;text-align:left;padding:var(--kritzel-context-menu-item-padding, 8px);border-radius:var(--kritzel-context-menu-item-border-radius, 12px);cursor:var(--kritzel-global-pointer-cursor, pointer);font-size:var(--kritzel-context-menu-item-font-size, 14px);color:var(--kritzel-context-menu-item-color, #333333);white-space:nowrap;-webkit-tap-highlight-color:transparent;width:100%}.menu-item:not(.disabled):hover,.menu-item.submenu-open{background-color:var(--kritzel-context-menu-item-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.menu-item:not(.disabled):active{background-color:var(--kritzel-context-menu-item-active-background-color, hsl(0, 0%, 0%, 8.6%))}.menu-item.disabled{color:var(--kritzel-context-menu-item-disabled-color, #aaaaaa)}.menu-item.has-children.disabled{cursor:var(--kritzel-global-pointer-cursor, pointer);color:var(--kritzel-context-menu-item-color, #333333)}.menu-item kritzel-icon{opacity:0.8;flex-shrink:0}.menu-item.disabled kritzel-icon{opacity:0.4}.menu-item.has-children.disabled kritzel-icon{opacity:0.8}.label{flex-grow:1}.submenu-arrow{margin-left:auto;opacity:0.5}.menu-divider{height:1px;background-color:var(--kritzel-context-menu-divider-color, rgba(0, 0, 0, 0.1));margin:var(--kritzel-context-menu-divider-margin, 4px 8px)}.submenu-container{position:absolute;top:0;left:100%;margin-left:4px;display:flex;flex-direction:column;gap:var(--kritzel-context-menu-item-spacing, 2px);background-color:var(--kritzel-context-menu-background-color, #ffffff);border-radius:var(--kritzel-context-menu-border-radius, 12px);box-shadow:var(--kritzel-context-menu-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.12));border:var(--kritzel-context-menu-border, 1px solid #ebebeb);padding:var(--kritzel-context-menu-padding, 4px);min-width:120px}.submenu-container.position-left{left:auto;right:100%;margin-left:0;margin-right:4px}"}},[513,"kritzel-context-menu",{items:[16],objects:[16],processedItems:[32],openSubmenuIndex:[32],submenuPosition:[32]},[[9,"pointerdown","handleOutsideClick"]],{items:[{onItemsChanged:0}]}]);function l(){"undefined"!=typeof customElements&&["kritzel-context-menu","kritzel-icon"].forEach((e=>{switch(e){case"kritzel-context-menu":customElements.get(s(e))||customElements.define(s(e),a);break;case"kritzel-icon":customElements.get(s(e))||r()}}))}export{a as K,l as d}
1
+ import{p as e,H as t,c as i,h as n,d as o,t as s}from"./p-BWj1eE2b.js";import{d as r}from"./p-Gm5hSQ-e.js";const a=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.actionSelected=i(this,"actionSelected"),this.close=i(this,"close")}get host(){return this}items;onItemsChanged(){this.updateMenuItems()}objects;actionSelected;close;processedItems=[];openSubmenuIndex=null;submenuPosition="right";submenuTimer=null;submenuRefs=new Map;menuItemWrapperRefs=new Map;handleOutsideClick(e){e.composedPath().includes(this.host)||this.close.emit()}componentWillLoad(){this.updateMenuItems()}componentDidLoad(){this.adjustPositionToViewport()}componentDidUpdate(){this.adjustPositionToViewport(),this.adjustSubmenuPosition()}disconnectedCallback(){this.submenuTimer&&clearTimeout(this.submenuTimer)}adjustPositionToViewport(){const e=this.host.getBoundingClientRect(),t=window.innerWidth,i=window.innerHeight,n=parseFloat(this.host.style.left)||0,o=parseFloat(this.host.style.top)||0;let s=n,r=o;e.right>t-8&&(s=t-e.width-8),e.bottom>i-8&&(r=i-e.height-8),s<8&&(s=8),r<8&&(r=8),s===n&&r===o||(this.host.style.left=`${s}px`,this.host.style.top=`${r}px`)}adjustSubmenuPosition(){if(null===this.openSubmenuIndex)return;const e=this.submenuRefs.get(this.openSubmenuIndex);if(!e)return;const t=e.getBoundingClientRect(),i=window.innerHeight;e.style.top=t.bottom>i-8?-(t.bottom-(i-8))+"px":"0px"}handleItemClick(e,t,i){t||i||e.action&&this.actionSelected.emit(e)}handleItemMouseEnter(e,t){this.submenuTimer&&(clearTimeout(this.submenuTimer),this.submenuTimer=null),this.submenuTimer=t?setTimeout((()=>{const t=this.menuItemWrapperRefs.get(e);if(t){const e=t.getBoundingClientRect(),i=window.innerWidth;this.submenuPosition=e.right+160>i-8?"left":"right"}else this.submenuPosition="right";this.openSubmenuIndex=e}),150):setTimeout((()=>{this.openSubmenuIndex=null}),150)}handleSubmenuMouseEnter(){this.submenuTimer&&(clearTimeout(this.submenuTimer),this.submenuTimer=null)}handleSubmenuMouseLeave(){this.submenuTimer=setTimeout((()=>{this.openSubmenuIndex=null}),150)}async updateMenuItems(){this.processedItems=await this.processItems(this.items)}async processItems(e){const t=[];for(const i of e)if(await this.evaluateProperty(i.visible,!0)){const e=await this.evaluateProperty(i.disabled,!1);let n;i.children&&i.children.length>0&&(n=await this.processItems(i.children)),t.push({item:i,isDisabled:e,processedChildren:n})}return t}async evaluateProperty(e,t){return"boolean"==typeof e?e:"function"==typeof e?await Promise.resolve(e(null,this.objects)):t}renderSubmenu(e,t){return n("div",{class:{"submenu-container":!0,"position-left":"left"===this.submenuPosition},ref:e=>e&&this.submenuRefs.set(t,e),onMouseEnter:()=>this.handleSubmenuMouseEnter(),onMouseLeave:()=>this.handleSubmenuMouseLeave()},e.map((({item:t,isDisabled:i,processedChildren:o},s)=>{const r=s>0?e[s-1].item:null,a=o&&o.length>0;return[r&&r.group!==t.group&&n("div",{class:"menu-divider",key:`submenu-divider-${s}`}),n("button",{key:`submenu-${t.label}-${s}`,class:{"menu-item":!0,disabled:i,"has-children":a},onClick:()=>this.handleItemClick(t,i,a),disabled:i},t.icon&&n("kritzel-icon",{name:t.icon,size:16}),n("span",{class:"label"},t.label),a&&n("kritzel-icon",{name:"chevron-right",size:12,class:"submenu-arrow"}))]})))}render(){return n(o,{key:"11f279a1ef329569988b1c1ce6311a1f81695ebe"},n("div",{key:"e0aa8ab22df018ae0a2b1c22513575d67099d35d",class:"menu-container"},this.processedItems.map((({item:e,isDisabled:t,processedChildren:i},o)=>{const s=o>0?this.processedItems[o-1].item:null,r=i&&i.length>0,a=this.openSubmenuIndex===o;return[s&&s.group!==e.group&&n("div",{class:"menu-divider",key:`divider-${o}`}),n("div",{class:"menu-item-wrapper",ref:e=>e&&this.menuItemWrapperRefs.set(o,e),onMouseEnter:()=>this.handleItemMouseEnter(o,r)},n("button",{key:`${e.label}-${o}`,class:{"menu-item":!0,disabled:t,"has-children":r,"submenu-open":a},onClick:()=>this.handleItemClick(e,t,r),disabled:t&&!r},e.icon&&n("kritzel-icon",{name:e.icon,size:16}),n("span",{class:"label"},e.label),r&&n("kritzel-icon",{name:"chevron-right",size:12,class:"submenu-arrow"})),r&&a&&this.renderSubmenu(i,o))]}))))}static get watchers(){return{items:[{onItemsChanged:0}]}}static get style(){return":host{display:block}.menu-container{display:flex;flex-direction:column;gap:var(--kritzel-context-menu-item-spacing, 2px);background-color:var(--kritzel-context-menu-background-color, #ffffff);border-radius:var(--kritzel-context-menu-border-radius, 12px);box-shadow:var(--kritzel-context-menu-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.12));border:var(--kritzel-context-menu-border, 1px solid #ebebeb);padding:var(--kritzel-context-menu-padding, 4px);min-width:var(--kritzel-context-menu-min-width, 140px)}.menu-item-wrapper{position:relative}.menu-item{display:flex;align-items:center;gap:var(--kritzel-context-menu-item-gap, 8px);background:none;border:none;text-align:left;padding:var(--kritzel-context-menu-item-padding, 8px);border-radius:var(--kritzel-context-menu-item-border-radius, 12px);cursor:var(--kritzel-global-pointer-cursor, pointer);font-size:var(--kritzel-context-menu-item-font-size, 14px);color:var(--kritzel-context-menu-item-color, #333333);white-space:nowrap;-webkit-tap-highlight-color:transparent;width:100%}.menu-item:not(.disabled):hover,.menu-item.submenu-open{background-color:var(--kritzel-context-menu-item-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.menu-item:not(.disabled):active{background-color:var(--kritzel-context-menu-item-active-background-color, hsl(0, 0%, 0%, 8.6%))}.menu-item.disabled{color:var(--kritzel-context-menu-item-disabled-color, #aaaaaa)}.menu-item.has-children.disabled{cursor:var(--kritzel-global-pointer-cursor, pointer);color:var(--kritzel-context-menu-item-color, #333333)}.menu-item kritzel-icon{opacity:0.8;flex-shrink:0}.menu-item.disabled kritzel-icon{opacity:0.4}.menu-item.has-children.disabled kritzel-icon{opacity:0.8}.label{flex-grow:1}.submenu-arrow{margin-left:auto;opacity:0.5}.menu-divider{height:1px;background-color:var(--kritzel-context-menu-divider-color, rgba(0, 0, 0, 0.1));margin:var(--kritzel-context-menu-divider-margin, 4px 8px)}.submenu-container{position:absolute;top:0;left:100%;margin-left:4px;display:flex;flex-direction:column;gap:var(--kritzel-context-menu-item-spacing, 2px);background-color:var(--kritzel-context-menu-background-color, #ffffff);border-radius:var(--kritzel-context-menu-border-radius, 12px);box-shadow:var(--kritzel-context-menu-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.12));border:var(--kritzel-context-menu-border, 1px solid #ebebeb);padding:var(--kritzel-context-menu-padding, 4px);min-width:120px}.submenu-container.position-left{left:auto;right:100%;margin-left:0;margin-right:4px}"}},[513,"kritzel-context-menu",{items:[16],objects:[16],processedItems:[32],openSubmenuIndex:[32],submenuPosition:[32]},[[9,"pointerdown","handleOutsideClick"]],{items:[{onItemsChanged:0}]}]);function l(){"undefined"!=typeof customElements&&["kritzel-context-menu","kritzel-icon"].forEach((e=>{switch(e){case"kritzel-context-menu":customElements.get(s(e))||customElements.define(s(e),a);break;case"kritzel-icon":customElements.get(s(e))||r()}}))}export{a as K,l as d}
@@ -1 +1 @@
1
- import{p as t,H as o,c as e,h as r,d as i,t as l}from"./p-CGGiwvWZ.js";import{h as n,d as s,f as a,e as c,g as d}from"./p-pGzF7PUB.js";import{K as p}from"./p-jGOpkGDl.js";import{K as h,d as k}from"./p-CWMFGEe0.js";import{a as f}from"./p-CjazGGq3.js";import{d as u}from"./p-ZC5YELQJ.js";import{d as b}from"./p-D5IhryUR.js";import{d as g}from"./p-l_YGO7RB.js";import{d as z}from"./p-DDKjsXCe.js";import{d as m}from"./p-DV7Z_qfa.js";import{d as v}from"./p-D7yzmu1l.js";import{d as y}from"./p-DxzDda_J.js";import{d as x}from"./p-Md9Y-b3d.js";import{d as w}from"./p-ZQ2bKafG.js";import{d as C}from"./p-Dte67BWd.js";import{d as j}from"./p-Lhyh6KeB.js";import{d as E}from"./p-BuI6Gkzg.js";import{d as T}from"./p-m1nVDC3G.js";const S=t(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.isControlsReady=e(this,"isControlsReady")}get host(){return this}controls=[];activeControl=null;isUtilityPanelVisible=!0;undoState=null;theme;isControlsReady;firstConfig=null;isTouchDevice=p.isTouchDevice();selectedSubOptions=new Map;canScrollLeft=!1;canScrollRight=!1;needsScrolling=!1;displayValues=null;handleKeyDown(t){"Escape"===t.key&&(t.preventDefault(),this.closeTooltip(),this.kritzelEngine?.enable())}async handleActiveToolChange(t){this.activeControl=this.controls.find((o=>o.tool===t.detail))||null,this.activeControl?.tool&&this.updateDisplayValues(this.activeControl.tool),this.closeTooltip()}handleSelectionChange(){this.activeControl?.tool instanceof n&&this.updateDisplayValues(this.activeControl.tool)}onThemeChange(){this.activeControl?.tool&&this.updateDisplayValues(this.activeControl.tool)}async closeTooltip(){document.dispatchEvent(new CustomEvent("kritzelTooltipCloseAll"))}kritzelEngine=null;toolsScrollRef=null;configTriggerRef=null;get activeToolAsTextTool(){return this.activeControl?.tool}get activeToolAsBrushTool(){return this.activeControl?.tool}get activeToolAsLineTool(){return this.activeControl?.tool}get activeToolAsShapeTool(){return this.activeControl?.tool}handleDisplayValuesChange=t=>{const o=t.detail;this.displayValues&&this.displayValues.color===o.color&&this.displayValues.size===o.size&&this.displayValues.fontFamily===o.fontFamily||(this.displayValues=o)};updateDisplayValues(t){const o=h.getToolConfig(t);if(!o)return void(this.displayValues=null);const e=t[o.sizeProperty],r={color:f.applyOpacity(t[o.colorProperty],t[o.opacityProperty]??1,this.theme),size:e};t instanceof a&&(r.fontFamily=t.fontFamily),this.displayValues&&this.displayValues.color===r.color&&this.displayValues.size===r.size&&this.displayValues.fontFamily===r.fontFamily||(this.displayValues=r)}async componentWillLoad(){await this.initializeEngine(),await this.initializeTools(),this.isControlsReady.emit()}componentDidLoad(){this.updateScrollIndicators()}componentDidRender(){this.updateScrollIndicators()}updateScrollIndicators(){if(!this.toolsScrollRef)return;const{scrollLeft:t,scrollWidth:o,clientWidth:e}=this.toolsScrollRef,r=t>2,i=t+e<o-2,l=o>e;this.canScrollLeft!==r&&(this.canScrollLeft=r),this.canScrollRight!==i&&(this.canScrollRight=i),this.needsScrolling!==l&&(this.needsScrolling=l)}handleToolsScroll=()=>{this.updateScrollIndicators()};async initializeEngine(){if(await customElements.whenDefined("kritzel-engine"),this.kritzelEngine=this.host.parentElement.querySelector("kritzel-engine"),!this.kritzelEngine)throw new Error("kritzel-engine not found in parent element.")}async initializeTools(){for(const t of this.controls)"tool"===t.type&&t.tool&&(t.tool=await this.kritzelEngine.registerTool(t.name,t.tool,t.config)),"tool"===t.type&&t.isDefault&&t.tool&&(await this.kritzelEngine.changeActiveTool(t.tool),this.activeControl=t,this.updateDisplayValues(t.tool)),"config"===t.type&&(null===this.firstConfig?this.firstConfig=t:console.warn("Only one config control is allowed. The first one will be used."))}async handleControlClick(t){this.activeControl=t,"tool"===this.activeControl.type&&(this.updateDisplayValues(this.activeControl.tool),await this.kritzelEngine.changeActiveTool(this.activeControl.tool))}async handleToolChange(t){this.activeControl={...this.activeControl,tool:t.detail},await this.kritzelEngine.changeActiveTool(this.activeControl.tool)}getSelectedSubOption(t){if(t.subOptions?.length)return this.selectedSubOptions.get(t.name)||t.subOptions[0]}async selectSubOption(t,o){const e=new Map(this.selectedSubOptions);e.set(t.name,o),this.selectedSubOptions=e,t.tool&&"function"!=typeof t.tool&&(t.tool[o.toolProperty]=o.value),this.closeTooltip(),await this.handleControlClick(t)}render(){const t=this.activeControl?.tool instanceof s||this.activeControl?.tool instanceof a||this.activeControl?.tool instanceof c||this.activeControl?.tool instanceof d||this.activeControl?.tool instanceof n&&this.activeControl.tool.hasSelection(),o=this.controls.filter((t=>"tool"===t.type||"separator"===t.type)),e=this.controls.find((t=>"config"===t.type&&t.name===this.firstConfig?.name));return r(i,{key:"fa03f9eae6ebc0a043d6ac3cb774ae32491ae943",class:{mobile:this.isTouchDevice}},this.isUtilityPanelVisible&&r("kritzel-utility-panel",{key:"2e789118656dc3366f131b520f2be4386e5889c8",style:{position:"absolute",bottom:"56px",left:"12px"},undoState:this.undoState,onUndo:()=>this.kritzelEngine?.undo(),onRedo:()=>this.kritzelEngine?.redo(),onDelete:()=>this.kritzelEngine?.delete()}),r("div",{key:"29b4d14746f81f7def022ec5769c9d1bf21a6dab",class:"kritzel-controls"},r("div",{key:"eb5a4ddd2c0ee9d77c008ddae1223e4ce4449116",class:{"scroll-indicator-left":!0,visible:this.canScrollLeft}}),r("div",{key:"5c41c8fc6770ef5eae7e5b03752f0fe65bcf30e1",class:"kritzel-tools-scroll",ref:t=>this.toolsScrollRef=t,onScroll:this.handleToolsScroll},o.map((t=>{if(t.subOptions?.length){const o=this.getSelectedSubOption(t),e=this.activeControl?.name===t.name;return r("div",{class:{"kritzel-control-split":!0,selected:e},key:t.name,"data-testid":`tool-${t.name}`,ref:o=>{o&&(t._anchorRef=o)}},r("button",{class:"kritzel-control-main",onClick:()=>this.handleControlClick(t),title:o?.label,"data-testid":`tool-${t.name}-main`},r("kritzel-icon",{name:o?.icon||t.icon})),r("button",{class:{"kritzel-control-dropdown":!0,visible:e},ref:o=>{o&&(t._triggerRef=o)},"aria-label":"Select shape type","data-testid":`tool-${t.name}-dropdown`,tabIndex:e?0:-1},r("kritzel-icon",{name:"chevron-down",size:12})),r("kritzel-tooltip",{anchorElement:t._anchorRef,triggerElement:t._triggerRef},r("div",{class:"kritzel-submenu-content"},t.subOptions.map((e=>r("button",{class:{"kritzel-submenu-item":!0,active:e.id===o?.id},key:e.id,"data-testid":`suboption-${e.id}`,onClick:()=>this.selectSubOption(t,e)},r("kritzel-icon",{name:e.icon,size:20}),r("span",null,e.label)))))))}return"separator"===t.type?r("div",{class:"kritzel-control-separator",key:t.name}):r("button",{class:{"kritzel-control":!0,selected:this.activeControl?.name===t?.name},key:t.name,"data-testid":`tool-${t.name}`,onClick:()=>this.handleControlClick?.(t)},r("kritzel-icon",{name:t.icon}))}))),r("div",{key:"a924ed9102961f992b27afe6945732c8541c13a0",class:{"scroll-indicator-right":!0,visible:this.canScrollRight&&!(e&&this.activeControl&&t)}}),e&&this.activeControl&&r("div",{class:{"kritzel-config-container":!0,visible:t},key:e.name},r("div",{key:"9709b046ceb6ba0982ca45b93212b2d449c2b2fe",class:{"config-gradient-left":!0,visible:this.needsScrolling}}),r("kritzel-tooltip",{key:"b2a2521c810f176f54ef8accff5b98a4a1acf42d",anchorElement:this.host.shadowRoot?.querySelector(".kritzel-config-container"),triggerElement:this.configTriggerRef},r("kritzel-tool-config",{key:"cdfc29f2b8a3cd800789f68879216e73700d546e",tool:this.activeControl.tool,theme:this.theme,onToolChange:t=>this.handleToolChange?.(t),onDisplayValuesChange:this.handleDisplayValuesChange,style:{width:"100%",height:"100%"}})),r("div",{key:"09d77705945e3e52eff40107c3bcbccbb636586d",tabIndex:t?0:-1,class:"kritzel-config","data-testid":"tool-config",ref:t=>{t&&(this.configTriggerRef=t)},onKeyDown:t=>{"Enter"===t.key&&t.target.click()},style:{cursor:"pointer"}},this.activeControl.tool instanceof a&&this.displayValues?r("div",{class:"font-container"},r("kritzel-font",{fontFamily:this.displayValues.fontFamily,size:this.displayValues.size,color:this.displayValues.color})):this.displayValues&&r("div",{class:"color-container"},r("kritzel-color",{value:this.displayValues.color,theme:this.theme,size:this.displayValues.size,style:{borderRadius:"50%",border:"none"}}))))))}static get assetsDirs(){return["../assets"]}static get watchers(){return{theme:[{onThemeChange:0}]}}static get style(){return":host{display:flex;flex-direction:column;user-select:none;max-width:calc(100vw - 16px)}:host(.mobile){--kritzel-controls-control-hover-background-color:transparent;--kritzel-controls-control-active-background-color:transparent}.kritzel-controls{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--kritzel-controls-gap, 8px);height:100%;padding:var(--kritzel-controls-padding, 8px);background-color:var(--kritzel-controls-background-color, #ffffff);border-radius:var(--kritzel-controls-border-radius, 16px);box-shadow:var(--kritzel-controls-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));border:var(--kritzel-controls-border, 1px solid #ebebeb);z-index:10000;position:relative;max-width:100%;overflow:hidden}.kritzel-tools-scroll{display:flex;flex-direction:row;align-items:center;gap:var(--kritzel-controls-gap, 8px);overflow-x:auto;overflow-y:hidden;flex:1 1 auto;min-width:0;padding:4px;margin:-4px;scrollbar-width:none;-ms-overflow-style:none}.kritzel-tools-scroll::-webkit-scrollbar{display:none}.scroll-indicator-left,.scroll-indicator-right{position:absolute;top:0;bottom:0;width:32px;pointer-events:none;opacity:0;transition:opacity 0.2s ease-out;z-index:1}.scroll-indicator-left{left:0;background:linear-gradient(to right, var(--kritzel-controls-background-color, #ffffff), transparent);border-radius:var(--kritzel-controls-border-radius, 16px) 0 0 var(--kritzel-controls-border-radius, 16px)}.scroll-indicator-right{right:0;background:linear-gradient(to left, var(--kritzel-controls-background-color, #ffffff), transparent);border-radius:0 var(--kritzel-controls-border-radius, 16px) var(--kritzel-controls-border-radius, 16px) 0}.scroll-indicator-left.visible,.scroll-indicator-right.visible{opacity:1}.kritzel-control{display:flex;justify-content:center;align-items:center;color:var(--kritzel-controls-control-color, #000000);border-radius:var(--kritzel-controls-control-border-radius, 12px);padding:var(--kritzel-controls-control-padding, 8px);border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);-webkit-tap-highlight-color:transparent;font-weight:bold}.kritzel-control:focus,.kritzel-control:hover{background-color:var(--kritzel-controls-control-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.kritzel-control:active{background-color:var(--kritzel-controls-control-active-background-color, hsl(0, 0%, 0%, 8.6%))}.kritzel-control.selected,.kritzel-control.selected:hover,.kritzel-control.selected:active{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF) !important;color:var(--kritzel-controls-control-selected-color, #ffffff) !important}.kritzel-control.selected:focus{background-color:var(--kritzel-controls-control-selected-background-color, #007bffe3) !important}.kritzel-control-separator{width:1px;height:24px;background-color:var(--kritzel-controls-border, #ebebeb);margin:0 4px}.kritzel-control-split{position:relative;display:flex;align-items:center;border-radius:var(--kritzel-controls-control-border-radius, 12px);color:var(--kritzel-controls-control-color, #000000)}.kritzel-control-split .kritzel-control-main{display:flex;justify-content:center;align-items:center;padding:var(--kritzel-controls-control-padding, 8px);border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);-webkit-tap-highlight-color:transparent;border-radius:var(--kritzel-controls-control-border-radius, 12px);color:inherit}.kritzel-control-split.selected .kritzel-control-main{border-radius:var(--kritzel-controls-control-border-radius, 12px) 0 0 var(--kritzel-controls-control-border-radius, 12px)}.kritzel-control-split .kritzel-control-dropdown{display:flex;justify-content:center;align-items:center;align-self:stretch;border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);-webkit-tap-highlight-color:transparent;border-radius:0 var(--kritzel-controls-control-border-radius, 12px) var(--kritzel-controls-control-border-radius, 12px) 0;color:inherit;width:0;padding:0;opacity:0;overflow:hidden;pointer-events:none;transition:width 0.15s ease-out, padding 0.15s ease-out, opacity 0.15s ease-out}.kritzel-control-split .kritzel-control-dropdown.visible{width:auto;padding:0 6px;opacity:1;pointer-events:auto}.kritzel-control-split .kritzel-control-main:focus,.kritzel-control-split .kritzel-control-main:hover,.kritzel-control-split .kritzel-control-dropdown:focus,.kritzel-control-split .kritzel-control-dropdown:hover{background-color:var(--kritzel-controls-control-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.kritzel-control-split .kritzel-control-main:active,.kritzel-control-split .kritzel-control-dropdown:active{background-color:var(--kritzel-controls-control-active-background-color, hsl(0, 0%, 0%, 8.6%))}.kritzel-control-split.selected{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF) !important;color:var(--kritzel-controls-control-selected-color, #ffffff) !important}.kritzel-control-split.selected .kritzel-control-main:hover,.kritzel-control-split.selected .kritzel-control-dropdown:hover{background-color:rgba(255, 255, 255, 0.15)}.kritzel-submenu-content{display:flex;flex-direction:column;gap:var(--kritzel-submenu-gap, 4px);min-width:140px}.kritzel-submenu-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);border-radius:8px;color:var(--kritzel-controls-control-color, #000000);font-size:14px;text-align:left;white-space:nowrap;-webkit-tap-highlight-color:transparent}.kritzel-submenu-item:hover{background-color:var(--kritzel-controls-control-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.kritzel-submenu-item.active{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF);color:var(--kritzel-controls-control-selected-color, #ffffff)}.kritzel-submenu-item.active:hover{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF)}.kritzel-config-container{position:relative;display:flex;justify-content:center;align-items:center;height:40px;box-sizing:border-box;-webkit-tap-highlight-color:transparent;flex-shrink:0;width:0;opacity:0;overflow:hidden;pointer-events:none;margin-left:calc(-1 * var(--kritzel-controls-gap, 8px));transition:width 0.2s ease-out, opacity 0.2s ease-out, margin-left 0.2s ease-out}.kritzel-config-container.visible{width:40px;opacity:1;pointer-events:auto;margin-left:0;overflow:visible}.config-gradient-left{position:absolute;top:0;bottom:0;left:-32px;width:32px;background:linear-gradient(to right, transparent, var(--kritzel-controls-background-color, #ffffff));pointer-events:none;z-index:1;opacity:0;transition:opacity 0.2s ease-out}.config-gradient-left.visible{opacity:1}.kritzel-config{display:flex;justify-content:center;align-items:center;cursor:var(--kritzel-global-pointer-cursor, pointer);border-radius:50%}.color-container{display:flex;justify-content:center;align-items:center;width:32px;height:32px;border-radius:50%;cursor:var(--kritzel-global-pointer-cursor, pointer);border:2px solid transparent;box-sizing:border-box;background-color:var(--kritzel-color-palette-hover-background-color, #ebebeb)}.font-container{display:flex;justify-content:center;align-items:center;width:32px;height:32px;border-radius:50%;cursor:var(--kritzel-global-pointer-cursor, pointer);border:2px solid transparent;box-sizing:border-box;background-color:var(--kritzel-color-palette-hover-background-color, #ebebeb)}.no-config{height:24px;width:24px;border-radius:50%;border:1px dashed gray}kritzel-tooltip{z-index:10001}"}},[513,"kritzel-controls",{controls:[16],activeControl:[1040],isUtilityPanelVisible:[4,"is-utility-panel-visible"],undoState:[16],theme:[1],firstConfig:[32],isTouchDevice:[32],selectedSubOptions:[32],canScrollLeft:[32],canScrollRight:[32],needsScrolling:[32],displayValues:[32],closeTooltip:[64]},[[8,"keydown","handleKeyDown"],[4,"activeToolChange","handleActiveToolChange"],[4,"objectsSelectionChange","handleSelectionChange"]],{theme:[{onThemeChange:0}]}]);function D(){"undefined"!=typeof customElements&&["kritzel-controls","kritzel-color","kritzel-color-palette","kritzel-dropdown","kritzel-font","kritzel-font-family","kritzel-font-size","kritzel-icon","kritzel-line-endings","kritzel-opacity-slider","kritzel-shape-fill","kritzel-stroke-size","kritzel-tool-config","kritzel-tooltip","kritzel-utility-panel"].forEach((t=>{switch(t){case"kritzel-controls":customElements.get(l(t))||customElements.define(l(t),S);break;case"kritzel-color":customElements.get(l(t))||u();break;case"kritzel-color-palette":customElements.get(l(t))||b();break;case"kritzel-dropdown":customElements.get(l(t))||g();break;case"kritzel-font":customElements.get(l(t))||z();break;case"kritzel-font-family":customElements.get(l(t))||m();break;case"kritzel-font-size":customElements.get(l(t))||v();break;case"kritzel-icon":customElements.get(l(t))||y();break;case"kritzel-line-endings":customElements.get(l(t))||x();break;case"kritzel-opacity-slider":customElements.get(l(t))||w();break;case"kritzel-shape-fill":customElements.get(l(t))||C();break;case"kritzel-stroke-size":customElements.get(l(t))||j();break;case"kritzel-tool-config":customElements.get(l(t))||k();break;case"kritzel-tooltip":customElements.get(l(t))||E();break;case"kritzel-utility-panel":customElements.get(l(t))||T()}}))}export{S as K,D as d}
1
+ import{p as t,H as o,c as e,h as r,d as i,t as l}from"./p-BWj1eE2b.js";import{h as n,d as s,f as a,e as c,g as d}from"./p-BcwZ36sO.js";import{K as p}from"./p-jGOpkGDl.js";import{K as h,d as k}from"./p-CvyE2Wg-.js";import{a as f}from"./p-CjazGGq3.js";import{d as u}from"./p-BZ8bK8qT.js";import{d as b}from"./p-Brwz_Dpb.js";import{d as g}from"./p-cjeDomsc.js";import{d as z}from"./p-CS7r-zhx.js";import{d as m}from"./p-D7pwbRUy.js";import{d as v}from"./p-DkT0KZCm.js";import{d as x}from"./p-Gm5hSQ-e.js";import{d as y}from"./p-1ppb4M65.js";import{d as w}from"./p-CJKsuQun.js";import{d as C}from"./p-CM7rYf9A.js";import{d as j}from"./p-VxgCvVox.js";import{d as E}from"./p-B5WII1Lk.js";import{d as T}from"./p-CJzg_ejc.js";const S=t(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.isControlsReady=e(this,"isControlsReady")}get host(){return this}controls=[];activeControl=null;isUtilityPanelVisible=!0;undoState=null;theme;isControlsReady;firstConfig=null;isTouchDevice=p.isTouchDevice();selectedSubOptions=new Map;canScrollLeft=!1;canScrollRight=!1;needsScrolling=!1;displayValues=null;handleKeyDown(t){"Escape"===t.key&&(t.preventDefault(),this.closeTooltip(),this.kritzelEngine?.enable())}async handleActiveToolChange(t){this.activeControl=this.controls.find((o=>o.tool===t.detail))||null,this.activeControl?.tool&&this.updateDisplayValues(this.activeControl.tool),this.closeTooltip()}handleSelectionChange(){this.activeControl?.tool instanceof n&&this.updateDisplayValues(this.activeControl.tool)}onThemeChange(){this.activeControl?.tool&&this.updateDisplayValues(this.activeControl.tool)}async closeTooltip(){document.dispatchEvent(new CustomEvent("kritzelTooltipCloseAll"))}kritzelEngine=null;toolsScrollRef=null;configTriggerRef=null;get activeToolAsTextTool(){return this.activeControl?.tool}get activeToolAsBrushTool(){return this.activeControl?.tool}get activeToolAsLineTool(){return this.activeControl?.tool}get activeToolAsShapeTool(){return this.activeControl?.tool}handleDisplayValuesChange=t=>{const o=t.detail;this.displayValues&&this.displayValues.color===o.color&&this.displayValues.size===o.size&&this.displayValues.fontFamily===o.fontFamily||(this.displayValues=o)};updateDisplayValues(t){const o=h.getToolConfig(t);if(!o)return void(this.displayValues=null);const e=t[o.sizeProperty],r={color:f.applyOpacity(t[o.colorProperty],t[o.opacityProperty]??1,this.theme),size:e};t instanceof a&&(r.fontFamily=t.fontFamily),this.displayValues&&this.displayValues.color===r.color&&this.displayValues.size===r.size&&this.displayValues.fontFamily===r.fontFamily||(this.displayValues=r)}async componentWillLoad(){await this.initializeEngine(),await this.initializeTools(),this.isControlsReady.emit()}componentDidLoad(){this.updateScrollIndicators()}componentDidRender(){this.updateScrollIndicators()}updateScrollIndicators(){if(!this.toolsScrollRef)return;const{scrollLeft:t,scrollWidth:o,clientWidth:e}=this.toolsScrollRef,r=t>2,i=t+e<o-2,l=o>e;this.canScrollLeft!==r&&(this.canScrollLeft=r),this.canScrollRight!==i&&(this.canScrollRight=i),this.needsScrolling!==l&&(this.needsScrolling=l)}handleToolsScroll=()=>{this.updateScrollIndicators()};async initializeEngine(){if(await customElements.whenDefined("kritzel-engine"),this.kritzelEngine=this.host.parentElement.querySelector("kritzel-engine"),!this.kritzelEngine)throw new Error("kritzel-engine not found in parent element.")}async initializeTools(){for(const t of this.controls)"tool"===t.type&&t.tool&&(t.tool=await this.kritzelEngine.registerTool(t.name,t.tool,t.config)),"tool"===t.type&&t.isDefault&&t.tool&&(await this.kritzelEngine.changeActiveTool(t.tool),this.activeControl=t,this.updateDisplayValues(t.tool)),"config"===t.type&&(null===this.firstConfig?this.firstConfig=t:console.warn("Only one config control is allowed. The first one will be used."))}async handleControlClick(t){this.activeControl=t,"tool"===this.activeControl.type&&(this.updateDisplayValues(this.activeControl.tool),await this.kritzelEngine.changeActiveTool(this.activeControl.tool))}async handleToolChange(t){this.activeControl={...this.activeControl,tool:t.detail},await this.kritzelEngine.changeActiveTool(this.activeControl.tool)}getSelectedSubOption(t){if(t.subOptions?.length)return this.selectedSubOptions.get(t.name)||t.subOptions[0]}async selectSubOption(t,o){const e=new Map(this.selectedSubOptions);e.set(t.name,o),this.selectedSubOptions=e,t.tool&&"function"!=typeof t.tool&&(t.tool[o.toolProperty]=o.value),this.closeTooltip(),await this.handleControlClick(t)}render(){const t=this.activeControl?.tool instanceof s||this.activeControl?.tool instanceof a||this.activeControl?.tool instanceof c||this.activeControl?.tool instanceof d||this.activeControl?.tool instanceof n&&this.activeControl.tool.hasSelection(),o=this.controls.filter((t=>"tool"===t.type||"separator"===t.type)),e=this.controls.find((t=>"config"===t.type&&t.name===this.firstConfig?.name));return r(i,{key:"fa03f9eae6ebc0a043d6ac3cb774ae32491ae943",class:{mobile:this.isTouchDevice}},this.isUtilityPanelVisible&&r("kritzel-utility-panel",{key:"2e789118656dc3366f131b520f2be4386e5889c8",style:{position:"absolute",bottom:"56px",left:"12px"},undoState:this.undoState,onUndo:()=>this.kritzelEngine?.undo(),onRedo:()=>this.kritzelEngine?.redo(),onDelete:()=>this.kritzelEngine?.delete()}),r("div",{key:"29b4d14746f81f7def022ec5769c9d1bf21a6dab",class:"kritzel-controls"},r("div",{key:"eb5a4ddd2c0ee9d77c008ddae1223e4ce4449116",class:{"scroll-indicator-left":!0,visible:this.canScrollLeft}}),r("div",{key:"5c41c8fc6770ef5eae7e5b03752f0fe65bcf30e1",class:"kritzel-tools-scroll",ref:t=>this.toolsScrollRef=t,onScroll:this.handleToolsScroll},o.map((t=>{if(t.subOptions?.length){const o=this.getSelectedSubOption(t),e=this.activeControl?.name===t.name;return r("div",{class:{"kritzel-control-split":!0,selected:e},key:t.name,"data-testid":`tool-${t.name}`,ref:o=>{o&&(t._anchorRef=o)}},r("button",{class:"kritzel-control-main",onClick:()=>this.handleControlClick(t),title:o?.label,"data-testid":`tool-${t.name}-main`},r("kritzel-icon",{name:o?.icon||t.icon})),r("button",{class:{"kritzel-control-dropdown":!0,visible:e},ref:o=>{o&&(t._triggerRef=o)},"aria-label":"Select shape type","data-testid":`tool-${t.name}-dropdown`,tabIndex:e?0:-1},r("kritzel-icon",{name:"chevron-down",size:12})),r("kritzel-tooltip",{anchorElement:t._anchorRef,triggerElement:t._triggerRef},r("div",{class:"kritzel-submenu-content"},t.subOptions.map((e=>r("button",{class:{"kritzel-submenu-item":!0,active:e.id===o?.id},key:e.id,"data-testid":`suboption-${e.id}`,onClick:()=>this.selectSubOption(t,e)},r("kritzel-icon",{name:e.icon,size:20}),r("span",null,e.label)))))))}return"separator"===t.type?r("div",{class:"kritzel-control-separator",key:t.name}):r("button",{class:{"kritzel-control":!0,selected:this.activeControl?.name===t?.name},key:t.name,"data-testid":`tool-${t.name}`,onClick:()=>this.handleControlClick?.(t)},r("kritzel-icon",{name:t.icon}))}))),r("div",{key:"a924ed9102961f992b27afe6945732c8541c13a0",class:{"scroll-indicator-right":!0,visible:this.canScrollRight&&!(e&&this.activeControl&&t)}}),e&&this.activeControl&&r("div",{class:{"kritzel-config-container":!0,visible:t},key:e.name},r("div",{key:"9709b046ceb6ba0982ca45b93212b2d449c2b2fe",class:{"config-gradient-left":!0,visible:this.needsScrolling}}),r("kritzel-tooltip",{key:"b2a2521c810f176f54ef8accff5b98a4a1acf42d",anchorElement:this.host.shadowRoot?.querySelector(".kritzel-config-container"),triggerElement:this.configTriggerRef},r("kritzel-tool-config",{key:"cdfc29f2b8a3cd800789f68879216e73700d546e",tool:this.activeControl.tool,theme:this.theme,onToolChange:t=>this.handleToolChange?.(t),onDisplayValuesChange:this.handleDisplayValuesChange,style:{width:"100%",height:"100%"}})),r("div",{key:"09d77705945e3e52eff40107c3bcbccbb636586d",tabIndex:t?0:-1,class:"kritzel-config","data-testid":"tool-config",ref:t=>{t&&(this.configTriggerRef=t)},onKeyDown:t=>{"Enter"===t.key&&t.target.click()},style:{cursor:"pointer"}},this.activeControl.tool instanceof a&&this.displayValues?r("div",{class:"font-container"},r("kritzel-font",{fontFamily:this.displayValues.fontFamily,size:this.displayValues.size,color:this.displayValues.color})):this.displayValues&&r("div",{class:"color-container"},r("kritzel-color",{value:this.displayValues.color,theme:this.theme,size:this.displayValues.size,style:{borderRadius:"50%",border:"none"}}))))))}static get assetsDirs(){return["../assets"]}static get watchers(){return{theme:[{onThemeChange:0}]}}static get style(){return":host{display:flex;flex-direction:column;user-select:none;max-width:calc(100vw - 16px)}:host(.mobile){--kritzel-controls-control-hover-background-color:transparent;--kritzel-controls-control-active-background-color:transparent}.kritzel-controls{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:var(--kritzel-controls-gap, 8px);height:100%;padding:var(--kritzel-controls-padding, 8px);background-color:var(--kritzel-controls-background-color, #ffffff);border-radius:var(--kritzel-controls-border-radius, 16px);box-shadow:var(--kritzel-controls-box-shadow, 0 0 3px rgba(0, 0, 0, 0.08));border:var(--kritzel-controls-border, 1px solid #ebebeb);z-index:10000;position:relative;max-width:100%;overflow:hidden}.kritzel-tools-scroll{display:flex;flex-direction:row;align-items:center;gap:var(--kritzel-controls-gap, 8px);overflow-x:auto;overflow-y:hidden;flex:1 1 auto;min-width:0;padding:4px;margin:-4px;scrollbar-width:none;-ms-overflow-style:none}.kritzel-tools-scroll::-webkit-scrollbar{display:none}.scroll-indicator-left,.scroll-indicator-right{position:absolute;top:0;bottom:0;width:32px;pointer-events:none;opacity:0;transition:opacity 0.2s ease-out;z-index:1}.scroll-indicator-left{left:0;background:linear-gradient(to right, var(--kritzel-controls-background-color, #ffffff), transparent);border-radius:var(--kritzel-controls-border-radius, 16px) 0 0 var(--kritzel-controls-border-radius, 16px)}.scroll-indicator-right{right:0;background:linear-gradient(to left, var(--kritzel-controls-background-color, #ffffff), transparent);border-radius:0 var(--kritzel-controls-border-radius, 16px) var(--kritzel-controls-border-radius, 16px) 0}.scroll-indicator-left.visible,.scroll-indicator-right.visible{opacity:1}.kritzel-control{display:flex;justify-content:center;align-items:center;color:var(--kritzel-controls-control-color, #000000);border-radius:var(--kritzel-controls-control-border-radius, 12px);padding:var(--kritzel-controls-control-padding, 8px);border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);-webkit-tap-highlight-color:transparent;font-weight:bold}.kritzel-control:focus,.kritzel-control:hover{background-color:var(--kritzel-controls-control-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.kritzel-control:active{background-color:var(--kritzel-controls-control-active-background-color, hsl(0, 0%, 0%, 8.6%))}.kritzel-control.selected,.kritzel-control.selected:hover,.kritzel-control.selected:active{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF) !important;color:var(--kritzel-controls-control-selected-color, #ffffff) !important}.kritzel-control.selected:focus{background-color:var(--kritzel-controls-control-selected-background-color, #007bffe3) !important}.kritzel-control-separator{width:1px;height:24px;background-color:var(--kritzel-controls-border, #ebebeb);margin:0 4px}.kritzel-control-split{position:relative;display:flex;align-items:center;border-radius:var(--kritzel-controls-control-border-radius, 12px);color:var(--kritzel-controls-control-color, #000000)}.kritzel-control-split .kritzel-control-main{display:flex;justify-content:center;align-items:center;padding:var(--kritzel-controls-control-padding, 8px);border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);-webkit-tap-highlight-color:transparent;border-radius:var(--kritzel-controls-control-border-radius, 12px);color:inherit}.kritzel-control-split.selected .kritzel-control-main{border-radius:var(--kritzel-controls-control-border-radius, 12px) 0 0 var(--kritzel-controls-control-border-radius, 12px)}.kritzel-control-split .kritzel-control-dropdown{display:flex;justify-content:center;align-items:center;align-self:stretch;border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);-webkit-tap-highlight-color:transparent;border-radius:0 var(--kritzel-controls-control-border-radius, 12px) var(--kritzel-controls-control-border-radius, 12px) 0;color:inherit;width:0;padding:0;opacity:0;overflow:hidden;pointer-events:none;transition:width 0.15s ease-out, padding 0.15s ease-out, opacity 0.15s ease-out}.kritzel-control-split .kritzel-control-dropdown.visible{width:auto;padding:0 6px;opacity:1;pointer-events:auto}.kritzel-control-split .kritzel-control-main:focus,.kritzel-control-split .kritzel-control-main:hover,.kritzel-control-split .kritzel-control-dropdown:focus,.kritzel-control-split .kritzel-control-dropdown:hover{background-color:var(--kritzel-controls-control-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.kritzel-control-split .kritzel-control-main:active,.kritzel-control-split .kritzel-control-dropdown:active{background-color:var(--kritzel-controls-control-active-background-color, hsl(0, 0%, 0%, 8.6%))}.kritzel-control-split.selected{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF) !important;color:var(--kritzel-controls-control-selected-color, #ffffff) !important}.kritzel-control-split.selected .kritzel-control-main:hover,.kritzel-control-split.selected .kritzel-control-dropdown:hover{background-color:rgba(255, 255, 255, 0.15)}.kritzel-submenu-content{display:flex;flex-direction:column;gap:var(--kritzel-submenu-gap, 4px);min-width:140px}.kritzel-submenu-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:none;background:none;cursor:var(--kritzel-global-pointer-cursor, pointer);border-radius:8px;color:var(--kritzel-controls-control-color, #000000);font-size:14px;text-align:left;white-space:nowrap;-webkit-tap-highlight-color:transparent}.kritzel-submenu-item:hover{background-color:var(--kritzel-controls-control-hover-background-color, hsl(0, 0%, 0%, 4.3%))}.kritzel-submenu-item.active{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF);color:var(--kritzel-controls-control-selected-color, #ffffff)}.kritzel-submenu-item.active:hover{background-color:var(--kritzel-controls-control-selected-background-color, #007AFF)}.kritzel-config-container{position:relative;display:flex;justify-content:center;align-items:center;height:40px;box-sizing:border-box;-webkit-tap-highlight-color:transparent;flex-shrink:0;width:0;opacity:0;overflow:hidden;pointer-events:none;margin-left:calc(-1 * var(--kritzel-controls-gap, 8px));transition:width 0.2s ease-out, opacity 0.2s ease-out, margin-left 0.2s ease-out}.kritzel-config-container.visible{width:40px;opacity:1;pointer-events:auto;margin-left:0;overflow:visible}.config-gradient-left{position:absolute;top:0;bottom:0;left:-32px;width:32px;background:linear-gradient(to right, transparent, var(--kritzel-controls-background-color, #ffffff));pointer-events:none;z-index:1;opacity:0;transition:opacity 0.2s ease-out}.config-gradient-left.visible{opacity:1}.kritzel-config{display:flex;justify-content:center;align-items:center;cursor:var(--kritzel-global-pointer-cursor, pointer);border-radius:50%}.color-container{display:flex;justify-content:center;align-items:center;width:32px;height:32px;border-radius:50%;cursor:var(--kritzel-global-pointer-cursor, pointer);border:2px solid transparent;box-sizing:border-box;background-color:var(--kritzel-color-palette-hover-background-color, #ebebeb)}.font-container{display:flex;justify-content:center;align-items:center;width:32px;height:32px;border-radius:50%;cursor:var(--kritzel-global-pointer-cursor, pointer);border:2px solid transparent;box-sizing:border-box;background-color:var(--kritzel-color-palette-hover-background-color, #ebebeb)}.no-config{height:24px;width:24px;border-radius:50%;border:1px dashed gray}kritzel-tooltip{z-index:10001}"}},[513,"kritzel-controls",{controls:[16],activeControl:[1040],isUtilityPanelVisible:[4,"is-utility-panel-visible"],undoState:[16],theme:[1],firstConfig:[32],isTouchDevice:[32],selectedSubOptions:[32],canScrollLeft:[32],canScrollRight:[32],needsScrolling:[32],displayValues:[32],closeTooltip:[64]},[[8,"keydown","handleKeyDown"],[4,"activeToolChange","handleActiveToolChange"],[4,"objectsSelectionChange","handleSelectionChange"]],{theme:[{onThemeChange:0}]}]);function D(){"undefined"!=typeof customElements&&["kritzel-controls","kritzel-color","kritzel-color-palette","kritzel-dropdown","kritzel-font","kritzel-font-family","kritzel-font-size","kritzel-icon","kritzel-line-endings","kritzel-opacity-slider","kritzel-shape-fill","kritzel-stroke-size","kritzel-tool-config","kritzel-tooltip","kritzel-utility-panel"].forEach((t=>{switch(t){case"kritzel-controls":customElements.get(l(t))||customElements.define(l(t),S);break;case"kritzel-color":customElements.get(l(t))||u();break;case"kritzel-color-palette":customElements.get(l(t))||b();break;case"kritzel-dropdown":customElements.get(l(t))||g();break;case"kritzel-font":customElements.get(l(t))||z();break;case"kritzel-font-family":customElements.get(l(t))||m();break;case"kritzel-font-size":customElements.get(l(t))||v();break;case"kritzel-icon":customElements.get(l(t))||x();break;case"kritzel-line-endings":customElements.get(l(t))||y();break;case"kritzel-opacity-slider":customElements.get(l(t))||w();break;case"kritzel-shape-fill":customElements.get(l(t))||C();break;case"kritzel-stroke-size":customElements.get(l(t))||j();break;case"kritzel-tool-config":customElements.get(l(t))||k();break;case"kritzel-tooltip":customElements.get(l(t))||E();break;case"kritzel-utility-panel":customElements.get(l(t))||T()}}))}export{S as K,D as d}
@@ -1 +1 @@
1
- import{p as a,t,H as e,h as r,d as s}from"./p-CGGiwvWZ.js";import{d as i}from"./p-BueaqfA2.js";const o=a(class extends e{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow()}users=[];avatarSize=40;maxVisible=3;overlap=20;getDisplayName(a){return a.displayName??([a.firstName,a.lastName].filter(Boolean).join(" ")||a.email||"User")}render(){if(!this.users||0===this.users.length)return r(s,{style:{display:"none"}});const a=this.users.slice(0,this.maxVisible),t=this.users.length-this.maxVisible;return r(s,{style:{"--avatar-overlap":`-${this.overlap}px`}},r("div",{class:"avatars"},a.map(((t,e)=>r("div",{class:"avatar-wrapper",style:{marginLeft:e>0?"var(--avatar-overlap)":"0px",zIndex:""+(a.length-e)}},r("kritzel-avatar",{user:t,size:this.avatarSize}),r("span",{class:"avatar-tooltip"},this.getDisplayName(t)))))),t>0&&r("span",{class:"overflow-count"},"+",t,r("span",{class:"avatar-tooltip"},this.users.slice(this.maxVisible).map((a=>r("div",null,this.getDisplayName(a)))))))}static get style(){return":host{display:inline-flex;align-items:center}.avatars{display:flex;align-items:center}.avatar-wrapper{position:relative;transition:margin-left 200ms ease}.avatar-wrapper kritzel-avatar{border-radius:50%;box-shadow:0 0 0 2px var(--kritzel-active-users-avatar-border-color, #ffffff)}.avatars:hover .avatar-wrapper{margin-left:-6px !important}.avatar-tooltip{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:12px;padding:4px 8px;background-color:var(--kritzel-active-users-tooltip-background, #333333);color:var(--kritzel-active-users-tooltip-color, #ffffff);font-family:sans-serif;font-size:12px;font-weight:500;border-radius:4px;white-space:nowrap;width:max-content;pointer-events:none;opacity:0;transition:opacity 150ms ease}.avatar-wrapper:hover .avatar-tooltip,.overflow-count:hover .avatar-tooltip{opacity:1}.overflow-count{position:relative;margin-left:8px;font-family:sans-serif;font-size:var(--kritzel-active-users-overflow-font-size, 14px);font-weight:500;color:var(--kritzel-active-users-overflow-color, #666666);white-space:nowrap;cursor:default}.overflow-count .avatar-tooltip{white-space:nowrap;text-align:left;margin-top:20px}"}},[513,"kritzel-active-users",{users:[16],avatarSize:[2,"avatar-size"],maxVisible:[2,"max-visible"],overlap:[2]}]);function l(){"undefined"!=typeof customElements&&["kritzel-active-users","kritzel-avatar"].forEach((a=>{switch(a){case"kritzel-active-users":customElements.get(t(a))||customElements.define(t(a),o);break;case"kritzel-avatar":customElements.get(t(a))||i()}}))}export{o as K,l as d}
1
+ import{p as a,t,H as e,h as r,d as s}from"./p-BWj1eE2b.js";import{d as i}from"./p-Dw0Obsn5.js";const o=a(class extends e{constructor(a){super(),!1!==a&&this.__registerHost(),this.__attachShadow()}users=[];avatarSize=40;maxVisible=3;overlap=20;getDisplayName(a){return a.displayName??([a.firstName,a.lastName].filter(Boolean).join(" ")||a.email||"User")}render(){if(!this.users||0===this.users.length)return r(s,{style:{display:"none"}});const a=this.users.slice(0,this.maxVisible),t=this.users.length-this.maxVisible;return r(s,{style:{"--avatar-overlap":`-${this.overlap}px`}},r("div",{class:"avatars"},a.map(((t,e)=>r("div",{class:"avatar-wrapper",style:{marginLeft:e>0?"var(--avatar-overlap)":"0px",zIndex:""+(a.length-e)}},r("kritzel-avatar",{user:t,size:this.avatarSize}),r("span",{class:"avatar-tooltip"},this.getDisplayName(t)))))),t>0&&r("span",{class:"overflow-count"},"+",t,r("span",{class:"avatar-tooltip"},this.users.slice(this.maxVisible).map((a=>r("div",null,this.getDisplayName(a)))))))}static get style(){return":host{display:inline-flex;align-items:center}.avatars{display:flex;align-items:center}.avatar-wrapper{position:relative;transition:margin-left 200ms ease}.avatar-wrapper kritzel-avatar{border-radius:50%;box-shadow:0 0 0 2px var(--kritzel-active-users-avatar-border-color, #ffffff)}.avatars:hover .avatar-wrapper{margin-left:-6px !important}.avatar-tooltip{position:absolute;top:100%;left:50%;transform:translateX(-50%);margin-top:12px;padding:4px 8px;background-color:var(--kritzel-active-users-tooltip-background, #333333);color:var(--kritzel-active-users-tooltip-color, #ffffff);font-family:sans-serif;font-size:12px;font-weight:500;border-radius:4px;white-space:nowrap;width:max-content;pointer-events:none;opacity:0;transition:opacity 150ms ease}.avatar-wrapper:hover .avatar-tooltip,.overflow-count:hover .avatar-tooltip{opacity:1}.overflow-count{position:relative;margin-left:8px;font-family:sans-serif;font-size:var(--kritzel-active-users-overflow-font-size, 14px);font-weight:500;color:var(--kritzel-active-users-overflow-color, #666666);white-space:nowrap;cursor:default}.overflow-count .avatar-tooltip{white-space:nowrap;text-align:left;margin-top:20px}"}},[513,"kritzel-active-users",{users:[16],avatarSize:[2,"avatar-size"],maxVisible:[2,"max-visible"],overlap:[2]}]);function l(){"undefined"!=typeof customElements&&["kritzel-active-users","kritzel-avatar"].forEach((a=>{switch(a){case"kritzel-active-users":customElements.get(t(a))||customElements.define(t(a),o);break;case"kritzel-avatar":customElements.get(t(a))||i()}}))}export{o as K,l as d}
@@ -1 +1 @@
1
- import{p as t,H as i,c as e,h as s,d as o,t as n}from"./p-CGGiwvWZ.js";import{K as l}from"./p-BML28BJR.js";const h=t(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.tooltipClosed=e(this,"tooltipClosed"),this.tooltipOpened=e(this,"tooltipOpened")}get host(){return this}isVisible=!1;anchorElement;triggerElement;offsetY=24;tooltipClosed;tooltipOpened;positionX=0;positionY=0;handleOutsideClick(t){if(!this.isVisible)return;const i=t.composedPath(),e=i.some((t=>t===this.host)),s=this.triggerElement&&i.some((t=>t===this.triggerElement));e||s||this.close()}handleOutsidePointerDown(t){if(!this.isVisible)return;const i=t.composedPath(),e=i.some((t=>t===this.host)),s=this.triggerElement&&i.some((t=>t===this.triggerElement));e||s||(t.stopPropagation(),t.preventDefault(),this.close())}handleCloseAll(t){t.detail!==this.host&&this.close()}handleWindowResize(){this.calculateAdjustedPosition()}handleTriggerElementChange(t,i){i&&i.removeEventListener("click",this.handleTriggerClick),t&&t.addEventListener("click",this.handleTriggerClick)}handleVisibilityChange(t){t&&(this.calculateAdjustedPosition(),requestAnimationFrame((()=>{this.focusContent()})))}async open(){this.isVisible||(document.dispatchEvent(new CustomEvent("kritzelTooltipCloseAll",{detail:this.host})),this.isVisible=!0,this.tooltipOpened.emit())}async close(){this.isVisible&&(this.isVisible=!1,this.tooltipClosed.emit())}async toggle(){this.isVisible?this.close():this.open()}async focusContent(){const t=l.getFocusableElements(this.host);t.length>0&&t[0].focus()}connectedCallback(){this.triggerElement&&this.triggerElement.addEventListener("click",this.handleTriggerClick)}componentDidLoad(){this.triggerElement&&this.triggerElement.addEventListener("click",this.handleTriggerClick)}componentWillLoad(){this.calculateAdjustedPosition()}componentWillUpdate(){this.calculateAdjustedPosition()}disconnectedCallback(){this.triggerElement&&this.triggerElement.removeEventListener("click",this.handleTriggerClick)}handleTriggerClick=t=>{t.stopPropagation(),this.toggle()};calculateAdjustedPosition(){if(this.isVisible&&this.anchorElement){const t=this.anchorElement.getBoundingClientRect(),i=this.host.shadowRoot?.querySelector(".tooltip-content"),e=i?.getBoundingClientRect(),s=e?.width||0,o=12,n=window.innerWidth-s-o;this.positionX=Math.max(o,Math.min(t.left+t.width/2-s/2,n)),this.positionY=window.innerHeight-t.top+this.offsetY}}render(){return s(o,{key:"0f67bc5736d65b2dcb277bfea3a052e165213c01",style:{position:"fixed",zIndex:"9999",transition:"opacity 0.3s ease-in-out, transform 0.3s ease-in-out",visibility:this.isVisible?"visible":"hidden",left:`${this.positionX}px`,bottom:`${this.positionY}px`}},s("div",{key:"d193b1b6dd28022da87bcce832ae72d630fcd7e0",class:"tooltip-content",onClick:t=>t.stopPropagation(),onPointerDown:t=>t.stopPropagation(),onMouseDown:t=>t.stopPropagation()},s("slot",{key:"a06478f4a9c995bad3558287341003effa6fc834"})))}static get watchers(){return{triggerElement:[{handleTriggerElementChange:0}],isVisible:[{handleVisibilityChange:0}]}}static get style(){return":host{width:auto}.tooltip-content{position:relative;padding:8px 12px;border-radius:4px;width:fit-content;background-color:var(--kritzel-tooltip-background-color, #ffffff);color:var(--kritzel-tooltip-color, #000000);padding:var(--kritzel-tooltip-padding, 12px);border:var(--kritzel-tooltip-border, 1px solid #ebebeb);border-radius:var(--kritzel-tooltip-border-radius, 16px);white-space:nowrap;box-shadow:var(--kritzel-tooltip-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.12))}"}},[769,"kritzel-tooltip",{isVisible:[1028,"is-visible"],anchorElement:[16],triggerElement:[16],offsetY:[2,"offset-y"],positionX:[32],positionY:[32],open:[64],close:[64],toggle:[64],focusContent:[64]},[[4,"click","handleOutsideClick"],[6,"pointerdown","handleOutsidePointerDown"],[4,"kritzelTooltipCloseAll","handleCloseAll"],[9,"resize","handleWindowResize"]],{triggerElement:[{handleTriggerElementChange:0}],isVisible:[{handleVisibilityChange:0}]}]);function r(){"undefined"!=typeof customElements&&["kritzel-tooltip"].forEach((t=>{"kritzel-tooltip"===t&&(customElements.get(n(t))||customElements.define(n(t),h))}))}export{h as K,r as d}
1
+ import{p as t,H as i,c as e,h as s,d as o,t as n}from"./p-BWj1eE2b.js";import{K as l}from"./p-BML28BJR.js";const h=t(class extends i{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.tooltipClosed=e(this,"tooltipClosed"),this.tooltipOpened=e(this,"tooltipOpened")}get host(){return this}isVisible=!1;anchorElement;triggerElement;offsetY=24;tooltipClosed;tooltipOpened;positionX=0;positionY=0;handleOutsideClick(t){if(!this.isVisible)return;const i=t.composedPath(),e=i.some((t=>t===this.host)),s=this.triggerElement&&i.some((t=>t===this.triggerElement));e||s||this.close()}handleOutsidePointerDown(t){if(!this.isVisible)return;const i=t.composedPath(),e=i.some((t=>t===this.host)),s=this.triggerElement&&i.some((t=>t===this.triggerElement));e||s||(t.stopPropagation(),t.preventDefault(),this.close())}handleCloseAll(t){t.detail!==this.host&&this.close()}handleWindowResize(){this.calculateAdjustedPosition()}handleTriggerElementChange(t,i){i&&i.removeEventListener("click",this.handleTriggerClick),t&&t.addEventListener("click",this.handleTriggerClick)}handleVisibilityChange(t){t&&(this.calculateAdjustedPosition(),requestAnimationFrame((()=>{this.focusContent()})))}async open(){this.isVisible||(document.dispatchEvent(new CustomEvent("kritzelTooltipCloseAll",{detail:this.host})),this.isVisible=!0,this.tooltipOpened.emit())}async close(){this.isVisible&&(this.isVisible=!1,this.tooltipClosed.emit())}async toggle(){this.isVisible?this.close():this.open()}async focusContent(){const t=l.getFocusableElements(this.host);t.length>0&&t[0].focus()}connectedCallback(){this.triggerElement&&this.triggerElement.addEventListener("click",this.handleTriggerClick)}componentDidLoad(){this.triggerElement&&this.triggerElement.addEventListener("click",this.handleTriggerClick)}componentWillLoad(){this.calculateAdjustedPosition()}componentWillUpdate(){this.calculateAdjustedPosition()}disconnectedCallback(){this.triggerElement&&this.triggerElement.removeEventListener("click",this.handleTriggerClick)}handleTriggerClick=t=>{t.stopPropagation(),this.toggle()};calculateAdjustedPosition(){if(this.isVisible&&this.anchorElement){const t=this.anchorElement.getBoundingClientRect(),i=this.host.shadowRoot?.querySelector(".tooltip-content"),e=i?.getBoundingClientRect(),s=e?.width||0,o=12,n=window.innerWidth-s-o;this.positionX=Math.max(o,Math.min(t.left+t.width/2-s/2,n)),this.positionY=window.innerHeight-t.top+this.offsetY}}render(){return s(o,{key:"0f67bc5736d65b2dcb277bfea3a052e165213c01",style:{position:"fixed",zIndex:"9999",transition:"opacity 0.3s ease-in-out, transform 0.3s ease-in-out",visibility:this.isVisible?"visible":"hidden",left:`${this.positionX}px`,bottom:`${this.positionY}px`}},s("div",{key:"d193b1b6dd28022da87bcce832ae72d630fcd7e0",class:"tooltip-content",onClick:t=>t.stopPropagation(),onPointerDown:t=>t.stopPropagation(),onMouseDown:t=>t.stopPropagation()},s("slot",{key:"a06478f4a9c995bad3558287341003effa6fc834"})))}static get watchers(){return{triggerElement:[{handleTriggerElementChange:0}],isVisible:[{handleVisibilityChange:0}]}}static get style(){return":host{width:auto}.tooltip-content{position:relative;padding:8px 12px;border-radius:4px;width:fit-content;background-color:var(--kritzel-tooltip-background-color, #ffffff);color:var(--kritzel-tooltip-color, #000000);padding:var(--kritzel-tooltip-padding, 12px);border:var(--kritzel-tooltip-border, 1px solid #ebebeb);border-radius:var(--kritzel-tooltip-border-radius, 16px);white-space:nowrap;box-shadow:var(--kritzel-tooltip-box-shadow, 0 1px 6px rgba(0, 0, 0, 0.12))}"}},[769,"kritzel-tooltip",{isVisible:[1028,"is-visible"],anchorElement:[16],triggerElement:[16],offsetY:[2,"offset-y"],positionX:[32],positionY:[32],open:[64],close:[64],toggle:[64],focusContent:[64]},[[4,"click","handleOutsideClick"],[6,"pointerdown","handleOutsidePointerDown"],[4,"kritzelTooltipCloseAll","handleCloseAll"],[9,"resize","handleWindowResize"]],{triggerElement:[{handleTriggerElementChange:0}],isVisible:[{handleVisibilityChange:0}]}]);function r(){"undefined"!=typeof customElements&&["kritzel-tooltip"].forEach((t=>{"kritzel-tooltip"===t&&(customElements.get(n(t))||customElements.define(n(t),h))}))}export{h as K,r as d}
@@ -0,0 +1 @@
1
+ function t(t,e,n){const l="undefined"!=typeof HTMLElement?HTMLElement.prototype:null;for(;t&&t!==l;){const l=Object.getOwnPropertyDescriptor(t,e);if(l&&(!n||l.get))return l;t=Object.getPrototypeOf(t)}}var e,n=(e,n)=>{var l;Object.entries(null!=(l=n.l.t)?l:{}).map((([l,[o]])=>{if(31&o||32&o){const o=e[l],s=t(Object.getPrototypeOf(e),l,!0)||Object.getOwnPropertyDescriptor(e,l);s&&Object.defineProperty(e,l,{get(){return s.get.call(this)},set(t){s.set.call(this,t)},configurable:!0,enumerable:!0}),n.o.has(l)?e[l]=n.o.get(l):void 0!==o&&(e[l]=o)}}))},l=t=>{if(t.__stencil__getHostRef)return t.__stencil__getHostRef()},o=(t,e)=>e in t,s=(t,e)=>(0,console.error)(t,e),r=new Map,i="undefined"!=typeof window?window:{},c=i.HTMLElement||class{},u={i:0,u:"",jmp:t=>t(),raf:t=>requestAnimationFrame(t),ael:(t,e,n,l)=>t.addEventListener(e,n,l),rel:(t,e,n,l)=>t.removeEventListener(e,n,l),ce:(t,e)=>new CustomEvent(t,e)},f=(()=>{var t;let e=!1;try{null==(t=i.document)||t.addEventListener("e",null,Object.defineProperty({},"passive",{get(){e=!0}}))}catch(t){}return e})(),a=(()=>{try{return!!i.document.adoptedStyleSheets&&(new CSSStyleSheet,"function"==typeof(new CSSStyleSheet).replaceSync)}catch(t){}return!1})(),d=!!a&&(()=>!!i.document&&Object.getOwnPropertyDescriptor(i.document.adoptedStyleSheets,"length").writable)(),p=!1,h=[],b=[],m=(t,e)=>n=>{t.push(n),p||(p=!0,e&&4&u.i?$(y):u.raf(y))},v=t=>{for(let e=0;e<t.length;e++)try{t[e](performance.now())}catch(t){s(t)}t.length=0},y=()=>{v(h),v(b),(p=h.length>0)&&u.raf(y)},$=t=>Promise.resolve(undefined).then(t),g=m(b,!0),w=t=>{const e=new URL(t,u.u);return e.origin!==i.location.origin?e.href:e.pathname},j=t=>u.u=t;function O(){const t=this.attachShadow({mode:"open"});void 0===e&&(e=null),e&&(d?t.adoptedStyleSheets.push(e):t.adoptedStyleSheets=[...t.adoptedStyleSheets,e])}var S,k=new WeakMap,M=t=>"sc-"+t.p,E=t=>"object"==(t=typeof t)||"function"===t,A=(t,e,...n)=>{let l=null,o=null,s=!1,r=!1;const i=[],c=e=>{for(let n=0;n<e.length;n++)l=e[n],Array.isArray(l)?c(l):null!=l&&"boolean"!=typeof l&&((s="function"!=typeof t&&!E(l))&&(l=String(l)),s&&r?i[i.length-1].h+=l:i.push(s?C(null,l):l),r=s)};if(c(n),e){e.key&&(o=e.key);{const t=e.className||e.class;t&&(e.class="object"!=typeof t?t:Object.keys(t).filter((e=>t[e])).join(" "))}}const u=C(t,null);return u.m=e,i.length>0&&(u.v=i),u.$=o,u},C=(t,e)=>({i:0,j:t,h:null!=e?e:null,O:null,v:null,m:null,$:null}),x={},L=t=>{if(!t)return;const e=Object.keys(t);if(0===e.length)return;let n=!1;for(const l of e){if(n)break;for(const e of t[l])if("string"==typeof e){n=!0;break}}if(!n)return t;const l={};for(const n of e)l[n]=t[n].map((t=>"string"==typeof t?{[t]:0}:t));return l},N=(t,e)=>null==t||E(t)?t:4&e?"false"!==t&&(""===t||!!t):2&e?"string"==typeof t?parseFloat(t):"number"==typeof t?t:NaN:1&e?String(t):t,_=(t,e)=>{const n=t;return{emit:t=>D(n,e,{bubbles:!0,composed:!0,cancelable:!0,detail:t})}},D=(t,e,n)=>{const l=u.ce(e,n);return t.dispatchEvent(l),l},H=(t,e,n,s,r,c)=>{if(n===s)return;let f=o(t,e),a=e.toLowerCase();if("class"===e){const e=t.classList,l=R(n);let o=R(s);e.remove(...l.filter((t=>t&&!o.includes(t)))),e.add(...o.filter((t=>t&&!l.includes(t))))}else if("style"===e){for(const e in n)s&&null!=s[e]||(e.includes("-")?t.style.removeProperty(e):t.style[e]="");for(const e in s)n&&s[e]===n[e]||(e.includes("-")?t.style.setProperty(e,s[e]):t.style[e]=s[e])}else if("key"===e);else if("ref"===e)s&&Q(s,t);else if(t.__lookupSetter__(e)||"o"!==e[0]||"n"!==e[1]){if("a"===e[0]&&e.startsWith("attr:")){const n=e.slice(5);let o;{const e=l(t);if(e&&e.l&&e.l.t){const t=e.l.t[n];t&&t[1]&&(o=t[1])}}return o||(o=n.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),void(null==s||!1===s?!1===s&&""!==t.getAttribute(o)||t.removeAttribute(o):t.setAttribute(o,!0===s?"":s))}if("p"===e[0]&&e.startsWith("prop:")){const n=e.slice(5);try{t[n]=s}catch(t){}return}{const l=E(s);if((f||l&&null!==s)&&!r)try{if(t.tagName.includes("-"))t[e]!==s&&(t[e]=s);else{const l=null==s?"":s;"list"===e?f=!1:null!=n&&t[e]===l||("function"==typeof t.__lookupSetter__(e)?t[e]=l:t.setAttribute(e,l))}}catch(t){}null==s||!1===s?!1===s&&""!==t.getAttribute(e)||t.removeAttribute(e):(!f||4&c||r)&&!l&&1===t.nodeType&&t.setAttribute(e,s=!0===s?"":s)}}else if(e="-"===e[2]?e.slice(3):o(i,a)?a.slice(2):a[2]+e.slice(3),n||s){const l=e.endsWith(U);e=e.replace(W,""),n&&u.rel(t,e,n,l),s&&u.ael(t,e,s,l)}},P=/\s/,R=t=>("object"==typeof t&&t&&"baseVal"in t&&(t=t.baseVal),t&&"string"==typeof t?t.split(P):[]),U="Capture",W=new RegExp(U+"$"),F=(t,e,n)=>{const l=11===e.O.nodeType&&e.O.host?e.O.host:e.O,o=t&&t.m||{},s=e.m||{};for(const t of V(Object.keys(o)))t in s||H(l,t,o[t],void 0,n,e.i);for(const t of V(Object.keys(s)))H(l,t,o[t],s[t],n,e.i)};function V(t){return t.includes("ref")?[...t.filter((t=>"ref"!==t)),"ref"]:t}var q=!1,z=!1,T=[],Y=[],Z=(t,e,n)=>{const l=e.v[n];let o,s,r=0;if(null!=l.h)o=l.O=i.document.createTextNode(l.h);else{if(z||(z="svg"===l.j),!i.document)throw new Error("You are trying to render a Stencil component in an environment that doesn't support the DOM.");if(o=l.O=i.document.createElementNS(z?"http://www.w3.org/2000/svg":"http://www.w3.org/1999/xhtml",l.j),z&&"foreignObject"===l.j&&(z=!1),F(null,l,z),l.v){const e="template"===l.j?o.content:o;for(r=0;r<l.v.length;++r)s=Z(t,l,r),s&&e.appendChild(s)}"svg"===l.j?z=!1:"foreignObject"===o.tagName&&(z=!0)}return o["s-hn"]=S,o},B=(t,e,n,l,o,s)=>{let r,i=t;for(i.shadowRoot&&i.tagName===S&&(i=i.shadowRoot),"template"===n.j&&(i=i.content);o<=s;++o)l[o]&&(r=Z(null,n,o),r&&(l[o].O=r,X(i,r,e)))},G=(t,e,n)=>{for(let l=e;l<=n;++l){const e=t[l];if(e){const t=e.O;K(e),t&&t.remove()}}},I=(t,e,n=!1)=>t.j===e.j&&(n?(n&&!t.$&&e.$&&(t.$=e.$),!0):t.$===e.$),J=(t,e,n=!1)=>{const l=e.O=t.O,o=t.v,s=e.v,r=e.j,i=e.h;null==i?(z="svg"===r||"foreignObject"!==r&&z,"slot"!==r||q||t.S!==e.S&&(e.O["s-sn"]=e.S||"",(t=>{u.i|=1;const e=t.closest(S.toLowerCase());if(null!=e){const n=Array.from(e.__childNodes||e.childNodes).find((t=>t["s-cr"])),l=Array.from(t.__childNodes||t.childNodes);for(const t of n?l.reverse():l)null!=t["s-sh"]&&(X(e,t,null!=n?n:null),t["s-sh"]=void 0)}u.i&=-2})(e.O.parentElement)),F(t,e,z),null!==o&&null!==s?((t,e,n,l,o=!1)=>{let s,r,i=0,c=0,u=0,f=0,a=e.length-1,d=e[0],p=e[a],h=l.length-1,b=l[0],m=l[h];const v="template"===n.j?t.content:t;for(;i<=a&&c<=h;)if(null==d)d=e[++i];else if(null==p)p=e[--a];else if(null==b)b=l[++c];else if(null==m)m=l[--h];else if(I(d,b,o))J(d,b,o),d=e[++i],b=l[++c];else if(I(p,m,o))J(p,m,o),p=e[--a],m=l[--h];else if(I(d,m,o))J(d,m,o),X(v,d.O,p.O.nextSibling),d=e[++i],m=l[--h];else if(I(p,b,o))J(p,b,o),X(v,p.O,d.O),p=e[--a],b=l[++c];else{for(u=-1,f=i;f<=a;++f)if(e[f]&&null!==e[f].$&&e[f].$===b.$){u=f;break}u>=0?(r=e[u],r.j!==b.j?s=Z(e&&e[c],n,u):(J(r,b,o),e[u]=void 0,s=r.O),b=l[++c]):(s=Z(e&&e[c],n,c),b=l[++c]),s&&X(d.O.parentNode,s,d.O)}i>a?B(t,null==l[h+1]?null:l[h+1].O,n,l,c,h):c>h&&G(e,i,a)})(l,o,e,s,n):null!==s?(null!==t.h&&(l.textContent=""),B(l,null,e,s,0,s.length-1)):!n&&null!==o&&G(o,0,o.length-1),z&&"svg"===r&&(z=!1)):t.h!==i&&(l.data=i)},K=t=>{t.m&&t.m.ref&&T.push((()=>t.m.ref(null))),t.v&&t.v.map(K)},Q=(t,e)=>{Y.push((()=>t(e)))},X=(t,e,n)=>t.__insertBefore?t.__insertBefore(e,n):null==t?void 0:t.insertBefore(e,n),tt=(t,e,n=!1)=>{const l=t.$hostElement$,o=t.l,s=t.k||C(null,null);var r;const i=(r=e)&&r.j===x?e:A(null,null,e);if(S=l.tagName,o.M&&(i.m=i.m||{},o.M.forEach((([t,e])=>{i.m[e]=l[t]}))),n&&i.m)for(const t of Object.keys(i.m))l.hasAttribute(t)&&!["key","ref","style","class"].includes(t)&&(i.m[t]=l[t]);i.j=null,i.i|=4,t.k=i,i.O=s.O=l.shadowRoot||l,q=!(!(1&o.i)||128&o.i),J(s,i,n),T.forEach((t=>t())),T.length=0,Y.forEach((t=>t())),Y.length=0},et=(t,e)=>{if(e&&!t.A&&e["s-p"]){const n=e["s-p"].push(new Promise((l=>t.A=()=>{e["s-p"].splice(n-1,1),l()})))}},nt=(t,e)=>{if(t.i|=16,4&t.i)return void(t.i|=512);et(t,t.C);const n=()=>lt(t,e);if(!e)return g(n);queueMicrotask((()=>{n()}))},lt=(t,e)=>{const n=t.$hostElement$,l=n;if(!l)throw new Error(`Can't render component <${n.tagName.toLowerCase()} /> with invalid Stencil runtime! Make sure this imported component is compiled with a \`externalRuntime: true\` flag. For more information, please refer to https://stenciljs.com/docs/custom-elements#externalruntime`);let o;return o=ft(l,e?"componentWillLoad":"componentWillUpdate",void 0,n),o=ot(o,(()=>ft(l,"componentWillRender",void 0,n))),ot(o,(()=>rt(t,l,e)))},ot=(t,e)=>st(t)?t.then(e).catch((t=>{console.error(t),e()})):e(),st=t=>t instanceof Promise||t&&t.then&&"function"==typeof t.then,rt=async(t,e,n)=>{var l;const o=t.$hostElement$,s=o["s-rc"];n&&(t=>{const e=t.l,n=t.$hostElement$,l=e.i,o=((t,e)=>{var n,l,o;const s=M(e),c=r.get(s);if(!i.document)return s;if(t=11===t.nodeType?t:i.document,c)if("string"==typeof c){let o,r=k.get(t=t.head||t);if(r||k.set(t,r=new Set),!r.has(s)){o=i.document.createElement("style"),o.textContent=c;const f=null!=(n=u.L)?n:function(){var t,e,n;return null!=(n=null==(e=null==(t=i.document.head)?void 0:t.querySelector('meta[name="csp-nonce"]'))?void 0:e.getAttribute("content"))?n:void 0}();if(null!=f&&o.setAttribute("nonce",f),!(1&e.i))if("HEAD"===t.nodeName){const e=t.querySelectorAll("link[rel=preconnect]"),n=e.length>0?e[e.length-1].nextSibling:t.querySelector("style");t.insertBefore(o,(null==n?void 0:n.parentNode)===t?n:null)}else if("host"in t)if(a){const e=new(null!=(l=t.defaultView)?l:t.ownerDocument.defaultView).CSSStyleSheet;e.replaceSync(c),d?t.adoptedStyleSheets.unshift(e):t.adoptedStyleSheets=[e,...t.adoptedStyleSheets]}else{const e=t.querySelector("style");e?e.textContent=c+e.textContent:t.prepend(o)}else t.append(o);1&e.i&&t.insertBefore(o,null),4&e.i&&(o.textContent+="slot-fb{display:contents}slot-fb[hidden]{display:none}"),r&&r.add(s)}}else{let e=k.get(t);if(e||k.set(t,e=new Set),!e.has(s)){const n=null!=(o=t.defaultView)?o:t.ownerDocument.defaultView;let l;if(c.constructor===n.CSSStyleSheet)l=c;else{l=new n.CSSStyleSheet;for(let t=0;t<c.cssRules.length;t++)l.insertRule(c.cssRules[t].cssText,t)}d?t.adoptedStyleSheets.push(l):t.adoptedStyleSheets=[...t.adoptedStyleSheets,l],e.add(s)}}return s})(n.shadowRoot?n.shadowRoot:n.getRootNode(),e);10&l&&(n["s-sc"]=o,n.classList.add(o+"-h"))})(t);it(t,e,o,n),s&&(s.map((t=>t())),o["s-rc"]=void 0);{const e=null!=(l=o["s-p"])?l:[],n=()=>ct(t);0===e.length?n():(Promise.all(e).then(n).catch(n),t.i|=4,e.length=0)}},it=(t,e,n,l)=>{try{e=e.render(),t.i&=-17,t.i|=2,tt(t,e,l)}catch(e){s(e,t.$hostElement$)}return null},ct=t=>{const e=t.$hostElement$,n=e,l=t.C;ft(n,"componentDidRender",void 0,e),64&t.i?ft(n,"componentDidUpdate",void 0,e):(t.i|=64,at(e),ft(n,"componentDidLoad",void 0,e),t.N(e),l||ut()),t.A&&(t.A(),t.A=void 0),512&t.i&&$((()=>nt(t,!1))),t.i&=-517},ut=()=>{$((()=>D(i,"appload",{detail:{namespace:"stencil"}})))},ft=(t,e,n,l)=>{if(t&&t[e])try{return t[e](n)}catch(t){s(t,l)}},at=t=>t.classList.add("hydrated"),dt=(t,e,n,o)=>{const r=l(t);if(!r)return;const i=t,c=r.o.get(e),u=r.i,f=i;n=N(n,o.t[e][0]);const a=Number.isNaN(c)&&Number.isNaN(n);if(n!==c&&!a){if(r.o.set(e,n),o._){const t=o._[e];t&&t.map((t=>{try{const[[l,o]]=Object.entries(t);(128&u||1&o)&&(f?f[l](n,c,e):r.D.push((()=>{r.H[l](n,c,e)})))}catch(t){s(t,i)}}))}if(2&u){if(f.componentShouldUpdate&&!1===f.componentShouldUpdate(n,c,e)&&!(16&u))return;16&u||nt(r,!1)}}},pt=(e,n)=>{var o,s;const r=e.prototype;{e.watchers&&!n._&&(n._=L(e.watchers)),e.deserializers&&!n.P&&(n.P=e.deserializers),e.serializers&&!n.R&&(n.R=e.serializers);const i=Object.entries(null!=(o=n.t)?o:{});i.map((([e,[o]])=>{if(31&o||32&o){const{get:s,set:i}=t(r,e)||{};s&&(n.t[e][0]|=2048),i&&(n.t[e][0]|=4096),Object.defineProperty(r,e,{get(){return s?s.apply(this):(t=e,l(this).o.get(t));var t},configurable:!0,enumerable:!0}),Object.defineProperty(r,e,{set(t){const s=l(this);if(s){if(i)return void 0===(32&o?this[e]:s.$hostElement$[e])&&s.o.get(e)&&(t=s.o.get(e)),i.apply(this,[N(t,o)]),void dt(this,e,t=32&o?this[e]:s.$hostElement$[e],n);dt(this,e,t,n)}}})}}));{const t=new Map;r.attributeChangedCallback=function(e,o,s){u.jmp((()=>{var c;const u=t.get(e),f=l(this);if(this.hasOwnProperty(u),r.hasOwnProperty(u)&&"number"==typeof this[u]&&this[u]==s)return;if(null==u){const t=null==f?void 0:f.i;if(f&&t&&!(8&t)&&s!==o){const l=this,r=null==(c=n._)?void 0:c[e];null==r||r.forEach((n=>{const[[r,i]]=Object.entries(n);null!=l[r]&&(128&t||1&i)&&l[r].call(l,s,o,e)}))}return}const a=i.find((([t])=>t===u)),d=a&&4&a[1][0],p=d&&null===s&&void 0===this[u];d&&(s=null!==s&&"false"!==s);const h=Object.getOwnPropertyDescriptor(r,u);p||s==this[u]||h.get&&!h.set||(this[u]=s)}))},e.observedAttributes=Array.from(new Set([...Object.keys(null!=(s=n._)?s:{}),...i.filter((([t,e])=>31&e[0])).map((([e,l])=>{var o;const s=l[1]||e;return t.set(s,e),512&l[0]&&(null==(o=n.M)||o.push([e,s])),s}))]))}}return e},ht=(t,e)=>{const o={i:e[0],p:e[1]};try{o.t=e[2],o.U=e[3],o._=L(t._),o.P=t.P,o.R=t.R,o.M=[];const i=t.prototype.connectedCallback,c=t.prototype.disconnectedCallback;return Object.assign(t.prototype,{__hasHostListenerAttached:!1,__registerHost(){((t,e)=>{const l={i:0,$hostElement$:t,l:e,o:new Map,W:new Map};l.F=new Promise((t=>l.N=t)),t["s-p"]=[],t["s-rc"]=[];const o=l;t.__stencil__getHostRef=()=>o,512&e.i&&n(t,l)})(this,o)},connectedCallback(){if(!this.__hasHostListenerAttached){const t=l(this);if(!t)return;bt(this,t,o.U),this.__hasHostListenerAttached=!0}(t=>{if(!(1&u.i)){const e=l(t);if(!e)return;const n=e.l,o=()=>{};if(1&e.i)bt(t,e,n.U),(null==e?void 0:e.H)||(null==e?void 0:e.F)&&e.F.then((()=>{}));else{e.i|=1;{let n=t;for(;n=n.parentNode||n.host;)if(n["s-p"]){et(e,e.C=n);break}}n.t&&Object.entries(n.t).map((([e,[n]])=>{if(31&n&&Object.prototype.hasOwnProperty.call(t,e)){const n=t[e];delete t[e],t[e]=n}})),(async(t,e,n)=>{let l;try{if(!(32&e.i)&&(e.i|=32,l=t.constructor,customElements.whenDefined(t.localName).then((()=>e.i|=128)),l&&l.style)){let t;"string"==typeof l.style&&(t=l.style);const e=M(n);if(!r.has(e)){const l=()=>{};((t,e,n)=>{let l=r.get(t);a&&n?(l=l||new CSSStyleSheet,"string"==typeof l?l=e:l.replaceSync(e)):l=e,r.set(t,l)})(e,t,!!(1&n.i)),l()}}const o=e.C,s=()=>nt(e,!0);o&&o["s-rc"]?o["s-rc"].push(s):s()}catch(n){s(n,t),e.A&&(e.A(),e.A=void 0),e.N&&e.N(t)}})(t,e,n)}o()}})(this),i&&i.call(this)},disconnectedCallback(){(async t=>{if(!(1&u.i)){const e=l(t);(null==e?void 0:e.V)&&(e.V.map((t=>t())),e.V=void 0)}k.has(t)&&k.delete(t),t.shadowRoot&&k.has(t.shadowRoot)&&k.delete(t.shadowRoot)})(this),c&&c.call(this)},__attachShadow(){if(this.shadowRoot){if("open"!==this.shadowRoot.mode)throw new Error(`Unable to re-use existing shadow root for ${o.p}! Mode is set to ${this.shadowRoot.mode} but Stencil only supports open shadow roots.`)}else O.call(this,o)}}),Object.defineProperty(t,"is",{value:o.p,configurable:!0}),pt(t,o)}catch(e){return s(e),t}},bt=(t,e,n)=>{n&&i.document&&n.map((([n,l,o])=>{const s=vt(i.document,t,n),r=mt(e,o),c=yt(n);u.ael(s,l,r,c),(e.V=e.V||[]).push((()=>u.rel(s,l,r,c)))}))},mt=(t,e)=>n=>{try{t.$hostElement$[e](n)}catch(e){s(e,t.$hostElement$)}},vt=(t,e,n)=>4&n?t:8&n?i:e,yt=t=>f?{passive:!!(1&t),capture:!!(2&t)}:!!(2&t),$t=t=>u.L=t,gt=t=>Object.assign(u,t),wt=new WeakMap;function jt(t,e){let n=wt.get(e);n||(n={i:0,l:{i:0,p:e.tagName},$hostElement$:e},wt.set(e,n)),tt(n,t)}function Ot(t){return t}export{c as H,$t as a,gt as b,_ as c,x as d,w as g,A as h,ht as p,jt as r,j as s,Ot as t}
@@ -1 +1 @@
1
- import{p as e,H as r,h as t,d as i,t as o}from"./p-CGGiwvWZ.js";import{a as s}from"./p-CjazGGq3.js";const c=e(class extends r{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow()}value;theme;size=24;resolveColor(){return this.value?"string"==typeof this.value?this.value:s.resolveThemeColor(this.value,this.theme):""}isLightColor(e){if(!e)return!1;let r=0,t=0,i=0,o=e.startsWith("#")?e.slice(1):e;if(3===o.length)r=parseInt(o[0]+o[0],16),t=parseInt(o[1]+o[1],16),i=parseInt(o[2]+o[2],16);else{if(6!==o.length)return!1;r=parseInt(o.substring(0,2),16),t=parseInt(o.substring(2,4),16),i=parseInt(o.substring(4,6),16)}return!(isNaN(r)||isNaN(t)||isNaN(i))&&.299*r+.587*t+.114*i>220}render(){const e=this.resolveColor(),r=this.isLightColor(e);return t(i,{key:"7e36e97c383cff73b3146279e971526dd5c7f0f7"},t("div",{key:"e8ad3ca5e9771c51a96a846627ea20c75212ceeb",class:"checkerboard-bg",style:{width:`${this.size}px`,height:`${this.size}px`,borderRadius:"50%",display:"inline-block",position:"relative"}},t("div",{key:"9269087c7694604d70d50d846cedb6ce022373cd",class:{"color-circle":!0,white:r},style:{backgroundColor:e,width:`${this.size}px`,height:`${this.size}px`,borderRadius:"50%",position:"absolute",top:"0",left:"0",display:"inline-block"}})))}static get style(){return":host{display:flex}.checkerboard-bg{background:repeating-conic-gradient( var(--kritzel-checkerboard-color-dark, #ccc) 0% 25%, var(--kritzel-checkerboard-color-light, #fff) 0% 50% ) 50% / 8px 8px;position:relative;overflow:hidden}.color-circle{width:24px;height:24px;border-radius:50%;box-sizing:border-box;display:block}.color-circle.white{border:1px solid var(--kritzel-color-palette-circle-border-color, #dddcdc)}"}},[513,"kritzel-color",{value:[1],theme:[1],size:[2]}]);function l(){"undefined"!=typeof customElements&&["kritzel-color"].forEach((e=>{"kritzel-color"===e&&(customElements.get(o(e))||customElements.define(o(e),c))}))}export{c as K,l as d}
1
+ import{p as e,H as r,h as t,d as i,t as o}from"./p-BWj1eE2b.js";import{a as s}from"./p-CjazGGq3.js";const c=e(class extends r{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow()}value;theme;size=24;resolveColor(){return this.value?"string"==typeof this.value?this.value:s.resolveThemeColor(this.value,this.theme):""}isLightColor(e){if(!e)return!1;let r=0,t=0,i=0,o=e.startsWith("#")?e.slice(1):e;if(3===o.length)r=parseInt(o[0]+o[0],16),t=parseInt(o[1]+o[1],16),i=parseInt(o[2]+o[2],16);else{if(6!==o.length)return!1;r=parseInt(o.substring(0,2),16),t=parseInt(o.substring(2,4),16),i=parseInt(o.substring(4,6),16)}return!(isNaN(r)||isNaN(t)||isNaN(i))&&.299*r+.587*t+.114*i>220}render(){const e=this.resolveColor(),r=this.isLightColor(e);return t(i,{key:"7e36e97c383cff73b3146279e971526dd5c7f0f7"},t("div",{key:"e8ad3ca5e9771c51a96a846627ea20c75212ceeb",class:"checkerboard-bg",style:{width:`${this.size}px`,height:`${this.size}px`,borderRadius:"50%",display:"inline-block",position:"relative"}},t("div",{key:"9269087c7694604d70d50d846cedb6ce022373cd",class:{"color-circle":!0,white:r},style:{backgroundColor:e,width:`${this.size}px`,height:`${this.size}px`,borderRadius:"50%",position:"absolute",top:"0",left:"0",display:"inline-block"}})))}static get style(){return":host{display:flex}.checkerboard-bg{background:repeating-conic-gradient( var(--kritzel-checkerboard-color-dark, #ccc) 0% 25%, var(--kritzel-checkerboard-color-light, #fff) 0% 50% ) 50% / 8px 8px;position:relative;overflow:hidden}.color-circle{width:24px;height:24px;border-radius:50%;box-sizing:border-box;display:block}.color-circle.white{border:1px solid var(--kritzel-color-palette-circle-border-color, #dddcdc)}"}},[513,"kritzel-color",{value:[1],theme:[1],size:[2]}]);function l(){"undefined"!=typeof customElements&&["kritzel-color"].forEach((e=>{"kritzel-color"===e&&(customElements.get(o(e))||customElements.define(o(e),c))}))}export{c as K,l as d}
@@ -1 +1 @@
1
- import{p as e,H as t,c as i,h as a,d as r,t as l}from"./p-CGGiwvWZ.js";import{d as o}from"./p-DxzDda_J.js";const s=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.itemSelect=i(this,"itemSelect")}get host(){return this}items=[];selectedItemId;itemSelect;focusedIndex=-1;showMobileDetail=!1;tabRefs=[];watchSelectedItemId(e,t){e!==t&&(this.showMobileDetail=!0)}componentWillRender(){this.tabRefs=[]}handleItemClick=e=>{e.disabled||(this.itemSelect.emit({item:e}),this.showMobileDetail=!0)};handleBackClick=()=>{this.showMobileDetail=!1};handleKeyDown=(e,t,i)=>{const a=this.items.map(((e,t)=>e.disabled?-1:t)).filter((e=>-1!==e)),r=a.indexOf(i);switch(e.key){case"ArrowDown":e.preventDefault(),this.focusTab(a[(r+1)%a.length]);break;case"ArrowUp":e.preventDefault(),this.focusTab(a[(r-1+a.length)%a.length]);break;case"Home":e.preventDefault(),this.focusTab(a[0]);break;case"End":e.preventDefault(),this.focusTab(a[a.length-1]);break;case"Enter":case" ":e.preventDefault(),this.handleItemClick(t)}};focusTab(e){this.focusedIndex=e;const t=this.tabRefs[e];t&&t.focus()}handleFocus=e=>{this.focusedIndex=e};handleBlur=()=>{this.focusedIndex=-1};setTabRef=(e,t)=>{e&&(this.tabRefs[t]=e)};getTabIndex(e,t){return e.disabled?-1:0}render(){const e=this.items.find((e=>e.id===this.selectedItemId)),t="master-detail-panel",i=e?`tab-${e.id}`:void 0;return a(r,{key:"25913464ef131f1332146a5372c0caf9f7050f24"},a("div",{key:"206346f9bee671f1b283ebfaca4c4401706a074f",class:{"master-detail-container":!0,"is-mobile-detail-visible":this.showMobileDetail}},a("nav",{key:"f4cf41f060d1d25887d2b11a264de040e878d25c",class:"master-menu",role:"tablist","aria-orientation":"vertical","aria-label":"Settings categories"},this.items.map(((e,i)=>a("button",{key:e.id,id:`tab-${e.id}`,ref:e=>this.setTabRef(e,i),class:{"menu-item":!0,"is-selected":e.id===this.selectedItemId,"is-disabled":!!e.disabled,"is-focused":i===this.focusedIndex},role:"tab","aria-selected":e.id===this.selectedItemId?"true":"false","aria-controls":t,"aria-disabled":e.disabled?"true":void 0,tabIndex:this.getTabIndex(e,i),disabled:e.disabled,onClick:()=>this.handleItemClick(e),onKeyDown:t=>this.handleKeyDown(t,e,i),onFocus:()=>this.handleFocus(i),onBlur:this.handleBlur},e.icon&&a("kritzel-icon",{name:e.icon,size:20,class:"menu-item-icon"}),a("span",{class:"menu-item-label"},e.label),a("span",{class:"menu-item-chevron","aria-hidden":"true"},a("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"},a("path",{d:"m9 18 6-6-6-6"}))))))),a("div",{key:"efb20b2c1c6dfcf03bee2c1ef06c2c7a6de27e7a",id:t,class:"detail-panel",role:"tabpanel","aria-labelledby":i},a("button",{key:"13b97670c0c0b7f8fe493438d26179cd5039cd9c",class:"mobile-back-button",onClick:this.handleBackClick,"aria-label":"Back to menu"},a("kritzel-icon",{key:"6a52e00dd7fc61bcacce71127bf78637bbff7e30",name:"chevron-left",size:20,class:"mobile-back-icon"}),"Back"),a("slot",{key:"99bd31682d0e8accc6c2eacfcbaf6778f3b92d05"}))))}static get watchers(){return{selectedItemId:[{watchSelectedItemId:0}]}}static get style(){return":host{display:block;width:100%;height:100%}.master-detail-container{display:flex;width:100%;height:100%;min-height:var(--kritzel-master-detail-min-height, 300px);gap:var(--kritzel-master-detail-gap, 0);background-color:var(--kritzel-master-detail-background-color, transparent)}.master-menu{display:flex;flex-direction:column;width:var(--kritzel-master-detail-menu-width, 200px);min-width:var(--kritzel-master-detail-menu-min-width, 160px);padding:var(--kritzel-master-detail-menu-padding, 8px);background-color:var(--kritzel-master-detail-menu-background-color, #ffffff);border-right:var(--kritzel-master-detail-menu-border-right, 1px solid #ebebeb);gap:var(--kritzel-master-detail-menu-gap, 4px);overflow-y:auto}.menu-item{display:flex;align-items:center;gap:var(--kritzel-master-detail-menu-item-gap, 10px);padding:var(--kritzel-master-detail-menu-item-padding, 10px 12px);border:none;border-radius:var(--kritzel-master-detail-menu-item-border-radius, 6px);background-color:var(--kritzel-master-detail-menu-item-background-color, transparent);color:var(--kritzel-master-detail-menu-item-color, #333333);font-family:inherit;font-size:var(--kritzel-master-detail-menu-item-font-size, 14px);font-weight:var(--kritzel-master-detail-menu-item-font-weight, 400);text-align:left;cursor:var(--kritzel-global-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;-webkit-tap-highlight-color:transparent}.menu-item:hover:not(.is-disabled){background-color:var(--kritzel-master-detail-menu-item-hover-background-color, #ebebeb)}.menu-item:active:not(.is-disabled){background-color:var(--kritzel-master-detail-menu-item-active-background-color, #e0e0e0)}.menu-item.is-selected{background-color:var(--kritzel-master-detail-menu-item-selected-background-color, #0066cc);color:var(--kritzel-master-detail-menu-item-selected-color, #ffffff);font-weight:var(--kritzel-master-detail-menu-item-selected-font-weight, 500)}.menu-item.is-selected:hover{background-color:var(--kritzel-master-detail-menu-item-selected-hover-background-color, #0052a3)}.menu-item.is-disabled{color:var(--kritzel-master-detail-menu-item-disabled-color, #999999);cursor:not-allowed;opacity:0.6}.menu-item:focus-visible{outline:var(--kritzel-master-detail-menu-item-focus-outline, revert);outline-offset:var(--kritzel-master-detail-menu-item-focus-outline-offset, revert)}.menu-item-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.menu-item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-panel{flex:1;min-height:0;padding:var(--kritzel-master-detail-detail-padding, 16px);background-color:var(--kritzel-master-detail-detail-background-color, #ffffff);overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-color:var(--kritzel-global-scrollbar-thumb-color, #ebebeb) transparent;scrollbar-width:thin}.detail-panel:focus{outline:none}.detail-panel:focus-visible{outline:var(--kritzel-master-detail-detail-focus-outline, revert);outline-offset:var(--kritzel-master-detail-detail-focus-outline-offset, revert)}.mobile-back-button{display:none;align-items:center;gap:8px;background:none;border:none;padding:0 0 16px 0;cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--kritzel-master-detail-back-button-color, #333333);font-weight:500;font-size:14px;font-family:inherit}.mobile-back-icon{display:flex;align-items:center;flex-shrink:0}.menu-item-chevron{display:none;flex-shrink:0;margin-left:auto;color:var(--kritzel-master-detail-menu-item-chevron-color, #999999)}.menu-item-chevron svg{width:16px;height:16px;stroke:currentColor}@media (max-width: 768px){.master-menu{width:100%;border-right:none}.detail-panel{display:none;width:100%}.master-detail-container.is-mobile-detail-visible .master-menu{display:none}.master-detail-container.is-mobile-detail-visible .detail-panel{display:block}.mobile-back-button{display:flex}.menu-item.is-selected{background-color:transparent;color:var(--kritzel-master-detail-menu-item-color, #333333);font-weight:var(--kritzel-master-detail-menu-item-font-weight, 400)}.menu-item.is-selected:hover{background-color:var(--kritzel-master-detail-menu-item-hover-background-color, #ebebeb)}.menu-item-chevron{display:flex;align-items:center}}"}},[769,"kritzel-master-detail",{items:[16],selectedItemId:[1,"selected-item-id"],focusedIndex:[32],showMobileDetail:[32]},void 0,{selectedItemId:[{watchSelectedItemId:0}]}]);function n(){"undefined"!=typeof customElements&&["kritzel-master-detail","kritzel-icon"].forEach((e=>{switch(e){case"kritzel-master-detail":customElements.get(l(e))||customElements.define(l(e),s);break;case"kritzel-icon":customElements.get(l(e))||o()}}))}export{s as K,n as d}
1
+ import{p as e,H as t,c as i,h as a,d as r,t as l}from"./p-BWj1eE2b.js";import{d as o}from"./p-Gm5hSQ-e.js";const s=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.__attachShadow(),this.itemSelect=i(this,"itemSelect")}get host(){return this}items=[];selectedItemId;itemSelect;focusedIndex=-1;showMobileDetail=!1;tabRefs=[];watchSelectedItemId(e,t){e!==t&&(this.showMobileDetail=!0)}componentWillRender(){this.tabRefs=[]}handleItemClick=e=>{e.disabled||(this.itemSelect.emit({item:e}),this.showMobileDetail=!0)};handleBackClick=()=>{this.showMobileDetail=!1};handleKeyDown=(e,t,i)=>{const a=this.items.map(((e,t)=>e.disabled?-1:t)).filter((e=>-1!==e)),r=a.indexOf(i);switch(e.key){case"ArrowDown":e.preventDefault(),this.focusTab(a[(r+1)%a.length]);break;case"ArrowUp":e.preventDefault(),this.focusTab(a[(r-1+a.length)%a.length]);break;case"Home":e.preventDefault(),this.focusTab(a[0]);break;case"End":e.preventDefault(),this.focusTab(a[a.length-1]);break;case"Enter":case" ":e.preventDefault(),this.handleItemClick(t)}};focusTab(e){this.focusedIndex=e;const t=this.tabRefs[e];t&&t.focus()}handleFocus=e=>{this.focusedIndex=e};handleBlur=()=>{this.focusedIndex=-1};setTabRef=(e,t)=>{e&&(this.tabRefs[t]=e)};getTabIndex(e,t){return e.disabled?-1:0}render(){const e=this.items.find((e=>e.id===this.selectedItemId)),t="master-detail-panel",i=e?`tab-${e.id}`:void 0;return a(r,{key:"25913464ef131f1332146a5372c0caf9f7050f24"},a("div",{key:"206346f9bee671f1b283ebfaca4c4401706a074f",class:{"master-detail-container":!0,"is-mobile-detail-visible":this.showMobileDetail}},a("nav",{key:"f4cf41f060d1d25887d2b11a264de040e878d25c",class:"master-menu",role:"tablist","aria-orientation":"vertical","aria-label":"Settings categories"},this.items.map(((e,i)=>a("button",{key:e.id,id:`tab-${e.id}`,ref:e=>this.setTabRef(e,i),class:{"menu-item":!0,"is-selected":e.id===this.selectedItemId,"is-disabled":!!e.disabled,"is-focused":i===this.focusedIndex},role:"tab","aria-selected":e.id===this.selectedItemId?"true":"false","aria-controls":t,"aria-disabled":e.disabled?"true":void 0,tabIndex:this.getTabIndex(e,i),disabled:e.disabled,onClick:()=>this.handleItemClick(e),onKeyDown:t=>this.handleKeyDown(t,e,i),onFocus:()=>this.handleFocus(i),onBlur:this.handleBlur},e.icon&&a("kritzel-icon",{name:e.icon,size:20,class:"menu-item-icon"}),a("span",{class:"menu-item-label"},e.label),a("span",{class:"menu-item-chevron","aria-hidden":"true"},a("svg",{viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"1.5","stroke-linecap":"round","stroke-linejoin":"round"},a("path",{d:"m9 18 6-6-6-6"}))))))),a("div",{key:"efb20b2c1c6dfcf03bee2c1ef06c2c7a6de27e7a",id:t,class:"detail-panel",role:"tabpanel","aria-labelledby":i},a("button",{key:"13b97670c0c0b7f8fe493438d26179cd5039cd9c",class:"mobile-back-button",onClick:this.handleBackClick,"aria-label":"Back to menu"},a("kritzel-icon",{key:"6a52e00dd7fc61bcacce71127bf78637bbff7e30",name:"chevron-left",size:20,class:"mobile-back-icon"}),"Back"),a("slot",{key:"99bd31682d0e8accc6c2eacfcbaf6778f3b92d05"}))))}static get watchers(){return{selectedItemId:[{watchSelectedItemId:0}]}}static get style(){return":host{display:block;width:100%;height:100%}.master-detail-container{display:flex;width:100%;height:100%;min-height:var(--kritzel-master-detail-min-height, 300px);gap:var(--kritzel-master-detail-gap, 0);background-color:var(--kritzel-master-detail-background-color, transparent)}.master-menu{display:flex;flex-direction:column;width:var(--kritzel-master-detail-menu-width, 200px);min-width:var(--kritzel-master-detail-menu-min-width, 160px);padding:var(--kritzel-master-detail-menu-padding, 8px);background-color:var(--kritzel-master-detail-menu-background-color, #ffffff);border-right:var(--kritzel-master-detail-menu-border-right, 1px solid #ebebeb);gap:var(--kritzel-master-detail-menu-gap, 4px);overflow-y:auto}.menu-item{display:flex;align-items:center;gap:var(--kritzel-master-detail-menu-item-gap, 10px);padding:var(--kritzel-master-detail-menu-item-padding, 10px 12px);border:none;border-radius:var(--kritzel-master-detail-menu-item-border-radius, 6px);background-color:var(--kritzel-master-detail-menu-item-background-color, transparent);color:var(--kritzel-master-detail-menu-item-color, #333333);font-family:inherit;font-size:var(--kritzel-master-detail-menu-item-font-size, 14px);font-weight:var(--kritzel-master-detail-menu-item-font-weight, 400);text-align:left;cursor:var(--kritzel-global-pointer-cursor, pointer);transition:background-color 150ms ease, color 150ms ease;-webkit-tap-highlight-color:transparent}.menu-item:hover:not(.is-disabled){background-color:var(--kritzel-master-detail-menu-item-hover-background-color, #ebebeb)}.menu-item:active:not(.is-disabled){background-color:var(--kritzel-master-detail-menu-item-active-background-color, #e0e0e0)}.menu-item.is-selected{background-color:var(--kritzel-master-detail-menu-item-selected-background-color, #0066cc);color:var(--kritzel-master-detail-menu-item-selected-color, #ffffff);font-weight:var(--kritzel-master-detail-menu-item-selected-font-weight, 500)}.menu-item.is-selected:hover{background-color:var(--kritzel-master-detail-menu-item-selected-hover-background-color, #0052a3)}.menu-item.is-disabled{color:var(--kritzel-master-detail-menu-item-disabled-color, #999999);cursor:not-allowed;opacity:0.6}.menu-item:focus-visible{outline:var(--kritzel-master-detail-menu-item-focus-outline, revert);outline-offset:var(--kritzel-master-detail-menu-item-focus-outline-offset, revert)}.menu-item-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.menu-item-label{flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.detail-panel{flex:1;min-height:0;padding:var(--kritzel-master-detail-detail-padding, 16px);background-color:var(--kritzel-master-detail-detail-background-color, #ffffff);overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-color:var(--kritzel-global-scrollbar-thumb-color, #ebebeb) transparent;scrollbar-width:thin}.detail-panel:focus{outline:none}.detail-panel:focus-visible{outline:var(--kritzel-master-detail-detail-focus-outline, revert);outline-offset:var(--kritzel-master-detail-detail-focus-outline-offset, revert)}.mobile-back-button{display:none;align-items:center;gap:8px;background:none;border:none;padding:0 0 16px 0;cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--kritzel-master-detail-back-button-color, #333333);font-weight:500;font-size:14px;font-family:inherit}.mobile-back-icon{display:flex;align-items:center;flex-shrink:0}.menu-item-chevron{display:none;flex-shrink:0;margin-left:auto;color:var(--kritzel-master-detail-menu-item-chevron-color, #999999)}.menu-item-chevron svg{width:16px;height:16px;stroke:currentColor}@media (max-width: 768px){.master-menu{width:100%;border-right:none}.detail-panel{display:none;width:100%}.master-detail-container.is-mobile-detail-visible .master-menu{display:none}.master-detail-container.is-mobile-detail-visible .detail-panel{display:block}.mobile-back-button{display:flex}.menu-item.is-selected{background-color:transparent;color:var(--kritzel-master-detail-menu-item-color, #333333);font-weight:var(--kritzel-master-detail-menu-item-font-weight, 400)}.menu-item.is-selected:hover{background-color:var(--kritzel-master-detail-menu-item-hover-background-color, #ebebeb)}.menu-item-chevron{display:flex;align-items:center}}"}},[769,"kritzel-master-detail",{items:[16],selectedItemId:[1,"selected-item-id"],focusedIndex:[32],showMobileDetail:[32]},void 0,{selectedItemId:[{watchSelectedItemId:0}]}]);function n(){"undefined"!=typeof customElements&&["kritzel-master-detail","kritzel-icon"].forEach((e=>{switch(e){case"kritzel-master-detail":customElements.get(l(e))||customElements.define(l(e),s);break;case"kritzel-icon":customElements.get(l(e))||o()}}))}export{s as K,n as d}
@@ -1 +1 @@
1
- import{p as t,H as o,c as r,h as e,d as n,t as a}from"./p-CGGiwvWZ.js";const i=t(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.buttonClick=r(this,"buttonClick")}variant="primary";disabled=!1;type="button";buttonClick;handleClick=t=>{this.disabled||(t.stopPropagation(),this.buttonClick.emit())};render(){return e(n,{key:"3a285bfdc1b336fb450304856aa81c1bd9c4e5e3"},e("button",{key:"f3119bfe9cf8ca1b6e031cdcc8bee9549c18e620",type:this.type,class:{"kritzel-button":!0,[this.variant]:!0,disabled:this.disabled},disabled:this.disabled,onClick:this.handleClick},e("slot",{key:"5a26eee0781c5fafc7a41260364b2a2c11f192a6"})))}static get style(){return":host{display:inline-block;font-family:sans-serif}button{border:none;background-color:transparent;padding:0;margin:0;font-family:inherit;font-size:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:var(--kritzel-global-pointer-cursor, pointer);display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--kritzel-button-border-radius, 8px);padding:var(--kritzel-button-padding, 12px 20px);font-size:var(--kritzel-button-font-size, 14px);font-weight:var(--kritzel-button-font-weight, 500);transition:background-color 0.15s ease, opacity 0.15s ease;-webkit-tap-highlight-color:transparent}button.primary{background-color:var(--kritzel-button-primary-background-color, #007AFF);color:var(--kritzel-button-primary-color, #ffffff)}button.primary:hover{background-color:var(--kritzel-button-primary-hover-background-color, #006ae6)}button.primary:active{background-color:var(--kritzel-button-primary-active-background-color, #005bbf)}button.secondary{background-color:var(--kritzel-button-secondary-background-color, #f0f0f0);color:var(--kritzel-button-secondary-color, #333333)}button.secondary:hover{background-color:var(--kritzel-button-secondary-hover-background-color, #e0e0e0)}button.secondary:active{background-color:var(--kritzel-button-secondary-active-background-color, #d0d0d0)}button.text{background-color:transparent;color:var(--kritzel-button-text-color, #007AFF)}button.text:hover{background-color:var(--kritzel-button-text-hover-background-color, rgba(0, 122, 255, 0.08))}button.text:active{background-color:var(--kritzel-button-text-active-background-color, rgba(0, 122, 255, 0.15))}button.disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}"}},[769,"kritzel-button",{variant:[1],disabled:[4],type:[1]}]);function c(){"undefined"!=typeof customElements&&["kritzel-button"].forEach((t=>{"kritzel-button"===t&&(customElements.get(a(t))||customElements.define(a(t),i))}))}export{i as K,c as d}
1
+ import{p as t,H as o,c as r,h as e,d as n,t as a}from"./p-BWj1eE2b.js";const i=t(class extends o{constructor(t){super(),!1!==t&&this.__registerHost(),this.__attachShadow(),this.buttonClick=r(this,"buttonClick")}variant="primary";disabled=!1;type="button";buttonClick;handleClick=t=>{this.disabled||(t.stopPropagation(),this.buttonClick.emit())};render(){return e(n,{key:"3a285bfdc1b336fb450304856aa81c1bd9c4e5e3"},e("button",{key:"f3119bfe9cf8ca1b6e031cdcc8bee9549c18e620",type:this.type,class:{"kritzel-button":!0,[this.variant]:!0,disabled:this.disabled},disabled:this.disabled,onClick:this.handleClick},e("slot",{key:"5a26eee0781c5fafc7a41260364b2a2c11f192a6"})))}static get style(){return":host{display:inline-block;font-family:sans-serif}button{border:none;background-color:transparent;padding:0;margin:0;font-family:inherit;font-size:inherit;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:var(--kritzel-global-pointer-cursor, pointer);display:inline-flex;align-items:center;justify-content:center;gap:6px;border-radius:var(--kritzel-button-border-radius, 8px);padding:var(--kritzel-button-padding, 12px 20px);font-size:var(--kritzel-button-font-size, 14px);font-weight:var(--kritzel-button-font-weight, 500);transition:background-color 0.15s ease, opacity 0.15s ease;-webkit-tap-highlight-color:transparent}button.primary{background-color:var(--kritzel-button-primary-background-color, #007AFF);color:var(--kritzel-button-primary-color, #ffffff)}button.primary:hover{background-color:var(--kritzel-button-primary-hover-background-color, #006ae6)}button.primary:active{background-color:var(--kritzel-button-primary-active-background-color, #005bbf)}button.secondary{background-color:var(--kritzel-button-secondary-background-color, #f0f0f0);color:var(--kritzel-button-secondary-color, #333333)}button.secondary:hover{background-color:var(--kritzel-button-secondary-hover-background-color, #e0e0e0)}button.secondary:active{background-color:var(--kritzel-button-secondary-active-background-color, #d0d0d0)}button.text{background-color:transparent;color:var(--kritzel-button-text-color, #007AFF)}button.text:hover{background-color:var(--kritzel-button-text-hover-background-color, rgba(0, 122, 255, 0.08))}button.text:active{background-color:var(--kritzel-button-text-active-background-color, rgba(0, 122, 255, 0.15))}button.disabled{opacity:0.4;cursor:not-allowed;pointer-events:none}"}},[769,"kritzel-button",{variant:[1],disabled:[4],type:[1]}]);function c(){"undefined"!=typeof customElements&&["kritzel-button"].forEach((t=>{"kritzel-button"===t&&(customElements.get(a(t))||customElements.define(a(t),i))}))}export{i as K,c as d}