@kritzel/editor 0.4.31 → 0.4.32

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 (195) hide show
  1. package/LICENSE.md +50 -50
  2. package/README.md +5 -5
  3. package/dist/cjs/{index-B92VHWr4.js → index-q_Tg9KUw.js} +12 -0
  4. package/dist/cjs/kritzel-active-users_46.cjs.entry.js +981 -322
  5. package/dist/cjs/kritzel-brush-style.cjs.entry.js +2 -2
  6. package/dist/cjs/kritzel-editor.cjs.js +2 -2
  7. package/dist/cjs/loader.cjs.js +2 -2
  8. package/dist/collection/components/kritzel-active-users/kritzel-active-users.css +65 -65
  9. package/dist/collection/components/kritzel-avatar/kritzel-avatar.css +58 -58
  10. package/dist/collection/components/kritzel-avatar/kritzel-avatar.js +3 -3
  11. package/dist/collection/components/kritzel-back-to-content/kritzel-back-to-content.css +42 -42
  12. package/dist/collection/components/kritzel-back-to-content/kritzel-back-to-content.js +1 -1
  13. package/dist/collection/components/kritzel-brush-style/kritzel-brush-style.css +42 -42
  14. package/dist/collection/components/kritzel-brush-style/kritzel-brush-style.js +3 -3
  15. package/dist/collection/components/kritzel-button/kritzel-button.css +73 -73
  16. package/dist/collection/components/kritzel-button/kritzel-button.js +2 -2
  17. package/dist/collection/components/kritzel-color/kritzel-color.css +24 -24
  18. package/dist/collection/components/kritzel-color/kritzel-color.js +2 -2
  19. package/dist/collection/components/kritzel-color-palette/kritzel-color-palette.css +46 -46
  20. package/dist/collection/components/kritzel-color-palette/kritzel-color-palette.js +1 -1
  21. package/dist/collection/components/kritzel-context-menu/kritzel-context-menu.css +113 -112
  22. package/dist/collection/components/kritzel-context-menu/kritzel-context-menu.js +1 -1
  23. package/dist/collection/components/kritzel-current-user/kritzel-current-user.css +11 -11
  24. package/dist/collection/components/kritzel-current-user/kritzel-current-user.js +1 -1
  25. package/dist/collection/components/kritzel-current-user-dialog/kritzel-current-user-dialog.css +39 -39
  26. package/dist/collection/components/kritzel-current-user-dialog/kritzel-current-user-dialog.js +1 -1
  27. package/dist/collection/components/kritzel-dialog/kritzel-dialog.css +209 -209
  28. package/dist/collection/components/kritzel-dropdown/kritzel-dropdown.css +190 -190
  29. package/dist/collection/components/kritzel-dropdown/kritzel-dropdown.js +2 -2
  30. package/dist/collection/components/kritzel-editor/kritzel-editor.css +160 -160
  31. package/dist/collection/components/kritzel-editor/kritzel-editor.js +72 -46
  32. package/dist/collection/components/kritzel-export/kritzel-export.css +89 -89
  33. package/dist/collection/components/kritzel-export/kritzel-export.js +1 -1
  34. package/dist/collection/components/kritzel-font/kritzel-font.css +10 -10
  35. package/dist/collection/components/kritzel-font/kritzel-font.js +1 -1
  36. package/dist/collection/components/kritzel-font-family/kritzel-font-family.css +48 -48
  37. package/dist/collection/components/kritzel-font-family/kritzel-font-family.js +2 -2
  38. package/dist/collection/components/kritzel-font-size/kritzel-font-size.css +30 -30
  39. package/dist/collection/components/kritzel-font-size/kritzel-font-size.js +1 -1
  40. package/dist/collection/components/kritzel-input/kritzel-input.css +69 -69
  41. package/dist/collection/components/kritzel-input/kritzel-input.js +1 -1
  42. package/dist/collection/components/kritzel-line-endings/kritzel-line-endings.css +60 -60
  43. package/dist/collection/components/kritzel-line-endings/kritzel-line-endings.js +3 -3
  44. package/dist/collection/components/kritzel-loading-overlay/kritzel-loading-overlay.css +54 -54
  45. package/dist/collection/components/kritzel-loading-overlay/kritzel-loading-overlay.js +1 -1
  46. package/dist/collection/components/kritzel-login-dialog/kritzel-login-dialog.css +98 -98
  47. package/dist/collection/components/kritzel-login-dialog/kritzel-login-dialog.js +1 -1
  48. package/dist/collection/components/kritzel-master-detail/kritzel-master-detail.css +190 -190
  49. package/dist/collection/components/kritzel-master-detail/kritzel-master-detail.js +3 -3
  50. package/dist/collection/components/kritzel-menu/kritzel-menu.css +35 -34
  51. package/dist/collection/components/kritzel-menu/kritzel-menu.js +1 -1
  52. package/dist/collection/components/kritzel-menu-item/kritzel-menu-item.css +166 -166
  53. package/dist/collection/components/kritzel-menu-item/kritzel-menu-item.js +3 -3
  54. package/dist/collection/components/kritzel-more-menu/kritzel-more-menu.css +58 -58
  55. package/dist/collection/components/kritzel-more-menu/kritzel-more-menu.js +4 -4
  56. package/dist/collection/components/kritzel-notification-card/kritzel-notification-card.css +101 -101
  57. package/dist/collection/components/kritzel-numeric-input/kritzel-numeric-input.css +102 -102
  58. package/dist/collection/components/kritzel-numeric-input/kritzel-numeric-input.js +1 -1
  59. package/dist/collection/components/kritzel-opacity-slider/kritzel-opacity-slider.css +85 -85
  60. package/dist/collection/components/kritzel-opacity-slider/kritzel-opacity-slider.js +1 -1
  61. package/dist/collection/components/kritzel-pill-tabs/kritzel-pill-tabs.css +68 -68
  62. package/dist/collection/components/kritzel-pill-tabs/kritzel-pill-tabs.js +2 -2
  63. package/dist/collection/components/kritzel-portal/kritzel-portal.js +1 -1
  64. package/dist/collection/components/kritzel-settings/kritzel-settings.css +137 -137
  65. package/dist/collection/components/kritzel-settings/kritzel-settings.js +1 -1
  66. package/dist/collection/components/kritzel-shape-fill/kritzel-shape-fill.css +47 -47
  67. package/dist/collection/components/kritzel-shape-fill/kritzel-shape-fill.js +4 -4
  68. package/dist/collection/components/kritzel-share-dialog/kritzel-share-dialog.css +150 -150
  69. package/dist/collection/components/kritzel-share-dialog/kritzel-share-dialog.js +2 -2
  70. package/dist/collection/components/kritzel-slide-toggle/kritzel-slide-toggle.css +48 -48
  71. package/dist/collection/components/kritzel-slide-toggle/kritzel-slide-toggle.js +1 -1
  72. package/dist/collection/components/kritzel-split-button/kritzel-split-button.css +78 -78
  73. package/dist/collection/components/kritzel-split-button/kritzel-split-button.js +3 -3
  74. package/dist/collection/components/kritzel-stroke-size/kritzel-stroke-size.css +37 -37
  75. package/dist/collection/components/kritzel-stroke-size/kritzel-stroke-size.js +1 -1
  76. package/dist/collection/components/kritzel-tool-config/kritzel-tool-config.css +38 -38
  77. package/dist/collection/components/kritzel-tool-config/kritzel-tool-config.js +1 -1
  78. package/dist/collection/components/kritzel-toolbar/kritzel-toolbar.css +347 -347
  79. package/dist/collection/components/kritzel-toolbar/kritzel-toolbar.js +12 -16
  80. package/dist/collection/components/kritzel-tooltip/kritzel-tooltip.css +18 -18
  81. package/dist/collection/components/kritzel-tooltip/kritzel-tooltip.js +2 -2
  82. package/dist/collection/components/kritzel-utility-panel/kritzel-utility-panel.css +45 -45
  83. package/dist/collection/components/kritzel-utility-panel/kritzel-utility-panel.js +1 -1
  84. package/dist/collection/components/kritzel-workspace-manager/kritzel-workspace-manager.css +16 -16
  85. package/dist/collection/components/kritzel-workspace-manager/kritzel-workspace-manager.js +1 -1
  86. package/dist/collection/components/kritzel-zoom-panel/kritzel-zoom-panel.css +72 -72
  87. package/dist/collection/components/kritzel-zoom-panel/kritzel-zoom-panel.js +1 -1
  88. package/dist/components/index.js +1 -1
  89. package/dist/components/kritzel-active-users.js +1 -1
  90. package/dist/components/kritzel-avatar.js +1 -1
  91. package/dist/components/kritzel-awareness-cursors.js +1 -1
  92. package/dist/components/kritzel-back-to-content.js +1 -1
  93. package/dist/components/kritzel-brush-style.js +4 -4
  94. package/dist/components/kritzel-button.js +1 -1
  95. package/dist/components/kritzel-color-palette.js +1 -1
  96. package/dist/components/kritzel-color.js +1 -1
  97. package/dist/components/kritzel-context-menu.js +1 -1
  98. package/dist/components/kritzel-current-user-dialog.js +1 -1
  99. package/dist/components/kritzel-current-user.js +1 -1
  100. package/dist/components/kritzel-cursor-trail.js +1 -1
  101. package/dist/components/kritzel-dialog.js +1 -1
  102. package/dist/components/kritzel-dropdown.js +1 -1
  103. package/dist/components/kritzel-editor.js +108 -81
  104. package/dist/components/kritzel-engine.js +1 -1
  105. package/dist/components/kritzel-export.js +1 -1
  106. package/dist/components/kritzel-font-family.js +1 -1
  107. package/dist/components/kritzel-font-size.js +1 -1
  108. package/dist/components/kritzel-font.js +1 -1
  109. package/dist/components/kritzel-icon.js +1 -1
  110. package/dist/components/kritzel-input.js +1 -1
  111. package/dist/components/kritzel-line-endings.js +1 -1
  112. package/dist/components/kritzel-loading-overlay.js +1 -1
  113. package/dist/components/kritzel-login-dialog.js +1 -1
  114. package/dist/components/kritzel-master-detail.js +1 -1
  115. package/dist/components/kritzel-menu-item.js +1 -1
  116. package/dist/components/kritzel-menu.js +1 -1
  117. package/dist/components/kritzel-more-menu.js +1 -1
  118. package/dist/components/kritzel-notification-card.js +1 -1
  119. package/dist/components/kritzel-numeric-input.js +1 -1
  120. package/dist/components/kritzel-opacity-slider.js +1 -1
  121. package/dist/components/kritzel-pill-tabs.js +1 -1
  122. package/dist/components/kritzel-portal.js +1 -1
  123. package/dist/components/kritzel-settings.js +1 -1
  124. package/dist/components/kritzel-shape-fill.js +1 -1
  125. package/dist/components/kritzel-share-dialog.js +1 -1
  126. package/dist/components/kritzel-slide-toggle.js +1 -1
  127. package/dist/components/kritzel-split-button.js +1 -1
  128. package/dist/components/kritzel-stroke-size.js +1 -1
  129. package/dist/components/kritzel-tool-config.js +1 -1
  130. package/dist/components/kritzel-toolbar.js +1 -1
  131. package/dist/components/kritzel-tooltip.js +1 -1
  132. package/dist/components/kritzel-utility-panel.js +1 -1
  133. package/dist/components/kritzel-watermark.js +1 -1
  134. package/dist/components/kritzel-workspace-manager.js +1 -1
  135. package/dist/components/kritzel-zoom-panel.js +1 -1
  136. package/dist/components/{p-B_gT0lCn.js → p-5tEZmBli.js} +3 -3
  137. package/dist/components/{p-B6UJztrf.js → p-B6U2JNDq.js} +4 -4
  138. package/dist/components/{p-DXuf225S.js → p-BK5rE1rd.js} +3 -3
  139. package/dist/components/{p-BZ_KnHdR.js → p-BbXTqI4t.js} +7 -7
  140. package/dist/components/{p-McY5wZ0h.js → p-BhVCoiyK.js} +2 -2
  141. package/dist/components/{p-SLnqczCS.js → p-BowLPDbq.js} +3 -3
  142. package/dist/components/{p-hQwVRh0t.js → p-BuwiCK1I.js} +7 -7
  143. package/dist/components/{p-CoNexfpB.js → p-C01XOYLF.js} +3 -3
  144. package/dist/components/{p-ClfOtiNp.js → p-C5Hw8Wv3.js} +3 -3
  145. package/dist/components/{p-CmjXRLdr.js → p-C5fgp5y4.js} +7 -7
  146. package/dist/components/{p-BfMlwIcG.js → p-CHelQjUo.js} +3 -3
  147. package/dist/components/{p-B5xYV1o3.js → p-CIm1iROq.js} +2 -2
  148. package/dist/components/{p-BjFrt1q0.js → p-COGlcEiV.js} +3 -3
  149. package/dist/components/{p-4-qLegHb.js → p-COaLQ4Z-.js} +4 -4
  150. package/dist/components/{p-CVxGF4bJ.js → p-CPfTzGnn.js} +5 -5
  151. package/dist/components/p-CViWMGoM.js +55 -0
  152. package/dist/components/{p-Blq9a1ni.js → p-CY3fGZlt.js} +6 -6
  153. package/dist/components/{p-Cy_cLtOP.js → p-CdwD9F0m.js} +18 -14
  154. package/dist/components/{p-GbCxpbQ6.js → p-CgCVe3_P.js} +3 -3
  155. package/dist/components/{p-DZsSiMnA.js → p-CiSc7ASZ.js} +722 -129
  156. package/dist/components/{p-DVv8ChhE.js → p-D0lYLWkj.js} +4 -4
  157. package/dist/components/{p-QEue33R5.js → p-D1sxfQVN.js} +3 -3
  158. package/dist/components/{p-BvG3JO85.js → p-D53Q7EDf.js} +3 -3
  159. package/dist/components/{p-CzUeIini.js → p-D5OzFEtr.js} +13 -13
  160. package/dist/components/{p-B3Tqoyl9.js → p-DAr69onU.js} +3 -3
  161. package/dist/components/{p-h_uh_Njf.js → p-DE6S-FN0.js} +3 -3
  162. package/dist/components/p-DSi2HiZW.js +214 -0
  163. package/dist/components/{p-Ckqh1tqY.js → p-DX4FbgMi.js} +27 -31
  164. package/dist/components/{p-CwBxnzYu.js → p-DYNFqwX4.js} +3 -3
  165. package/dist/components/{p-Cp4e4oTE.js → p-DZ0S2l6Z.js} +2 -2
  166. package/dist/components/{p-BrGJIoGK.js → p-DZ4rAt6k.js} +3 -3
  167. package/dist/components/{p-BDjRSoAc.js → p-Ddk64LEI.js} +2 -2
  168. package/dist/components/{p-DJxgPPfs.js → p-DoNH4OhF.js} +3 -3
  169. package/dist/components/{p-D0tPTPkR.js → p-Dtm4CEHf.js} +3 -3
  170. package/dist/components/{p-BN8VWPlq.js → p-Dwg30A00.js} +7 -7
  171. package/dist/components/{p-DXZBWJBt.js → p-DxHrSwYy.js} +4 -4
  172. package/dist/components/{p-CvaxFYS0.js → p-EpqroVCx.js} +8 -8
  173. package/dist/components/{p-R1D8Sr0l.js → p-Fzi_dVqn.js} +3 -3
  174. package/dist/components/{p-CS3YZVYE.js → p-Qk844WR4.js} +2 -2
  175. package/dist/components/{p-peZjvnkK.js → p-g6VqjbL_.js} +2 -2
  176. package/dist/components/{p-DyRJFg4w.js → p-hKGrOeEa.js} +2 -2
  177. package/dist/components/{p-5qkOM1RJ.js → p-l1BZ4pYI.js} +12 -1
  178. package/dist/components/{p-CrIEmItB.js → p-p2H4pOpF.js} +5 -5
  179. package/dist/components/{p-DqOC_Yck.js → p-pWWRmEe8.js} +6 -6
  180. package/dist/components/{p-Ds0uNtwQ.js → p-piYX2tVg.js} +4 -4
  181. package/dist/components/{p-kOINnzaR.js → p-xPpMDzPX.js} +7 -7
  182. package/dist/esm/{index-OjbYJz-P.js → index-2x7dfLlM.js} +12 -1
  183. package/dist/esm/kritzel-active-users_46.entry.js +981 -322
  184. package/dist/esm/kritzel-brush-style.entry.js +2 -2
  185. package/dist/esm/kritzel-editor.js +3 -3
  186. package/dist/esm/loader.js +3 -3
  187. package/dist/kritzel-editor/kritzel-editor.esm.js +3 -3
  188. package/dist/kritzel-editor/{p-501047d8.entry.js → p-285cdc18.entry.js} +2 -2
  189. package/dist/kritzel-editor/{p-OjbYJz-P.js → p-2x7dfLlM.js} +12 -1
  190. package/dist/kritzel-editor/{p-60319edb.entry.js → p-d5439a4f.entry.js} +981 -322
  191. package/dist/types/components/kritzel-editor/kritzel-editor.d.ts +9 -2
  192. package/dist/types/components.d.ts +15 -15
  193. package/package.json +3 -3
  194. package/dist/components/p-BGmTmdLe.js +0 -167
  195. package/dist/components/p-DOJCDPVD.js +0 -55
@@ -1,68 +1,68 @@
1
- :host {
2
- display: block;
3
- max-width: 100%;
4
- }
5
-
6
- .pill-tabs-container {
7
- display: inline-flex;
8
- align-items: center;
9
- gap: 4px;
10
- padding: 4px;
11
- max-width: 100%;
12
- border-radius: var(--kritzel-pill-tabs-border-radius, 10px);
13
- background: var(--kritzel-pill-tabs-background, #f0f0f0);
14
- box-sizing: border-box;
15
- }
16
-
17
- .pill-tab {
18
- display: flex;
19
- align-items: center;
20
- justify-content: center;
21
- gap: 6px;
22
- min-width: 0;
23
- max-width: 100%;
24
- padding: 8px 16px;
25
- border: none;
26
- border-radius: var(--kritzel-pill-tabs-tab-border-radius, 8px);
27
- background: var(--kritzel-pill-tabs-tab-background, transparent);
28
- color: var(--kritzel-pill-tabs-tab-text-color, #666666);
29
- font-family: inherit;
30
- font-size: 14px;
31
- font-weight: 500;
32
- cursor: var(--kritzel-global-pointer-cursor, pointer);
33
- transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
34
- white-space: nowrap;
35
- }
36
-
37
- .pill-tab:hover:not(.selected) {
38
- background: var(--kritzel-pill-tabs-tab-background-hover, rgba(0, 0, 0, 0.05));
39
- }
40
-
41
- .pill-tab.selected {
42
- background: var(--kritzel-pill-tabs-tab-background-selected, #ffffff);
43
- color: var(--kritzel-pill-tabs-tab-text-color-selected, #000000);
44
- box-shadow: var(--kritzel-pill-tabs-tab-shadow-selected, 0 1px 3px rgba(0, 0, 0, 0.1));
45
- }
46
-
47
- .pill-tab:focus {
48
- outline: none;
49
- }
50
-
51
- .pill-tab:focus-visible {
52
- box-shadow: 0 0 0 2px var(--kritzel-global-focus-ring-color, rgba(0, 122, 255, 0.3));
53
- }
54
-
55
- .pill-tab-label {
56
- display: block;
57
- min-width: 0;
58
- max-width: var(--kritzel-pill-tabs-tab-label-max-width, 10rem);
59
- overflow: hidden;
60
- text-overflow: ellipsis;
61
- white-space: nowrap;
62
- line-height: 1;
63
- }
64
-
65
- /* Icon styling */
66
- .pill-tab kritzel-icon {
67
- flex-shrink: 0;
68
- }
1
+ :host {
2
+ display: block;
3
+ max-width: 100%;
4
+ }
5
+
6
+ .pill-tabs-container {
7
+ display: inline-flex;
8
+ align-items: center;
9
+ gap: 4px;
10
+ padding: 4px;
11
+ max-width: 100%;
12
+ border-radius: var(--kritzel-pill-tabs-border-radius, 10px);
13
+ background: var(--kritzel-pill-tabs-background, #f0f0f0);
14
+ box-sizing: border-box;
15
+ }
16
+
17
+ .pill-tab {
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ gap: 6px;
22
+ min-width: 0;
23
+ max-width: 100%;
24
+ padding: 8px 16px;
25
+ border: none;
26
+ border-radius: var(--kritzel-pill-tabs-tab-border-radius, 8px);
27
+ background: var(--kritzel-pill-tabs-tab-background, transparent);
28
+ color: var(--kritzel-pill-tabs-tab-text-color, #666666);
29
+ font-family: inherit;
30
+ font-size: 14px;
31
+ font-weight: 500;
32
+ cursor: var(--kritzel-global-pointer-cursor, pointer);
33
+ transition: background-color 0.15s ease, color 0.15s ease, box-shadow 0.15s ease;
34
+ white-space: nowrap;
35
+ }
36
+
37
+ .pill-tab:hover:not(.selected) {
38
+ background: var(--kritzel-pill-tabs-tab-background-hover, rgba(0, 0, 0, 0.05));
39
+ }
40
+
41
+ .pill-tab.selected {
42
+ background: var(--kritzel-pill-tabs-tab-background-selected, #ffffff);
43
+ color: var(--kritzel-pill-tabs-tab-text-color-selected, #000000);
44
+ box-shadow: var(--kritzel-pill-tabs-tab-shadow-selected, 0 1px 3px rgba(0, 0, 0, 0.1));
45
+ }
46
+
47
+ .pill-tab:focus {
48
+ outline: none;
49
+ }
50
+
51
+ .pill-tab:focus-visible {
52
+ box-shadow: 0 0 0 2px var(--kritzel-global-focus-ring-color, rgba(0, 122, 255, 0.3));
53
+ }
54
+
55
+ .pill-tab-label {
56
+ display: block;
57
+ min-width: 0;
58
+ max-width: var(--kritzel-pill-tabs-tab-label-max-width, 10rem);
59
+ overflow: hidden;
60
+ text-overflow: ellipsis;
61
+ white-space: nowrap;
62
+ line-height: 1;
63
+ }
64
+
65
+ /* Icon styling */
66
+ .pill-tab kritzel-icon {
67
+ flex-shrink: 0;
68
+ }
@@ -50,7 +50,7 @@ export class KritzelPillTabs {
50
50
  buttons?.[newIndex]?.focus();
51
51
  }
52
52
  render() {
53
- return (h(Host, { key: '16fce447fb7db0539ba115ef19771ac78f30a302' }, h("div", { key: '95487da922621b18c1ec422eb0d464131dbc28d3', class: "pill-tabs-container", role: "tablist" }, this.tabs.map((tab, index) => (h("button", { key: tab.id, class: {
53
+ return (h(Host, { key: 'f02f93ada5ec002695b62f511c847de201a8cbe4' }, h("div", { key: 'bb08ae773f1b993cb330556a5778d71fc5e91ce1', class: "pill-tabs-container", role: "tablist" }, this.tabs.map((tab, index) => (h("button", { key: tab.id, class: {
54
54
  'pill-tab': true,
55
55
  'selected': this.value === tab.id,
56
56
  }, role: "tab", "aria-selected": this.value === tab.id ? 'true' : 'false', tabIndex: this.value === tab.id ? 0 : -1, onClick: () => this.handleTabClick(tab.id), onKeyDown: (e) => this.handleKeyDown(e, index) }, tab.icon && h("kritzel-icon", { name: tab.icon, size: 16 }), h("span", { class: "pill-tab-label" }, tab.label)))))));
@@ -78,7 +78,7 @@ export class KritzelPillTabs {
78
78
  "references": {
79
79
  "KritzelPillTab": {
80
80
  "location": "local",
81
- "path": "C:/Projects/kritzel/libs/editor/core/src/components/kritzel-pill-tabs/kritzel-pill-tabs.tsx",
81
+ "path": "/home/runner/work/kritzel-private/kritzel-private/libs/editor/core/src/components/kritzel-pill-tabs/kritzel-pill-tabs.tsx",
82
82
  "id": "src/components/kritzel-pill-tabs/kritzel-pill-tabs.tsx::KritzelPillTab"
83
83
  }
84
84
  }
@@ -277,7 +277,7 @@ export class KritzelPortal {
277
277
  this.portal.style.visibility = 'visible';
278
278
  }
279
279
  render() {
280
- return (h(Host, { key: 'c92b863d46e8a96b44d318288471ad11ae04d1f4', style: { display: this.anchor ? 'block' : 'none' } }, h("slot", { key: 'd207f238571b877145c0c445e9d184cb1c4a4e2b' })));
280
+ return (h(Host, { key: 'e37e3fb0de2910fabd9379f372e477ecac929d1d', style: { display: this.anchor ? 'block' : 'none' } }, h("slot", { key: '86f8720d298201b66efea2475634ec7506b33d9c' })));
281
281
  }
282
282
  static get is() { return "kritzel-portal"; }
283
283
  static get encapsulation() { return "shadow"; }
@@ -1,137 +1,137 @@
1
- :host {
2
- display: contents;
3
- }
4
-
5
- kritzel-dialog {
6
- --kritzel-dialog-body-padding: 0;
7
- --kritzel-dialog-width-large: 800px;
8
- --kritzel-dialog-height-large: 500px;
9
- }
10
-
11
-
12
- .footer-button {
13
- padding: 8px 16px;
14
- border-radius: 6px;
15
- cursor: pointer;
16
- font-size: 14px;
17
- }
18
-
19
- .cancel-button {
20
- border: 1px solid #ebebeb;
21
- background: #fff;
22
- color: inherit;
23
- }
24
-
25
- .cancel-button:hover {
26
- background: #f5f5f5;
27
- }
28
-
29
- /* Settings Content */
30
- .settings-tab-panel {
31
- display: none;
32
- }
33
-
34
- .settings-tab-panel.is-active {
35
- display: block;
36
- }
37
-
38
- .settings-content {
39
- padding: 0;
40
- }
41
-
42
- .settings-content h3 {
43
- margin: 0 0 16px 0;
44
- font-size: 18px;
45
- font-weight: 600;
46
- color: var(--kritzel-settings-content-heading-color, #333333);
47
- }
48
-
49
- .settings-content p {
50
- margin: 0;
51
- font-size: 14px;
52
- color: var(--kritzel-settings-content-text-color, #666666);
53
- line-height: 1.5;
54
- }
55
-
56
- .settings-group {
57
- display: flex;
58
- flex-direction: column;
59
- gap: 24px;
60
- }
61
-
62
- .settings-item {
63
- display: flex;
64
- flex-direction: column;
65
- gap: 8px;
66
- }
67
-
68
- .settings-row {
69
- display: flex;
70
- align-items: center;
71
- justify-content: space-between;
72
- gap: 16px;
73
- }
74
-
75
- .settings-label {
76
- font-size: 14px;
77
- font-weight: 600;
78
- color: var(--kritzel-settings-label-color, #333333);
79
- margin: 0 0 4px 0;
80
- }
81
-
82
- .settings-description {
83
- font-size: 12px;
84
- color: var(--kritzel-settings-description-color, #888888);
85
- margin: 0;
86
- line-height: 1.4;
87
- }
88
-
89
- /* Shortcuts List */
90
- .shortcuts-list {
91
- display: flex;
92
- flex-direction: column;
93
- gap: 24px;
94
- }
95
-
96
- .shortcuts-category {
97
- display: flex;
98
- flex-direction: column;
99
- gap: 8px;
100
- }
101
-
102
- .shortcuts-category-title {
103
- font-size: 14px;
104
- font-weight: 600;
105
- color: var(--kritzel-settings-label-color, #333333);
106
- margin: 0 0 4px 0;
107
- }
108
-
109
- .shortcuts-group {
110
- display: flex;
111
- flex-direction: column;
112
- gap: 4px;
113
- }
114
-
115
- .shortcut-item {
116
- display: flex;
117
- justify-content: space-between;
118
- align-items: center;
119
- padding: 6px 8px;
120
- border-radius: 4px;
121
- background: var(--kritzel-settings-shortcut-item-bg, rgba(0, 0, 0, 0.02));
122
- }
123
-
124
- .shortcut-label {
125
- font-size: 14px;
126
- color: var(--kritzel-settings-content-text-color, #666666);
127
- }
128
-
129
- .shortcut-key {
130
- font-family: monospace;
131
- font-size: 12px;
132
- padding: 2px 8px;
133
- border-radius: 4px;
134
- background: var(--kritzel-settings-shortcut-key-bg, #f0f0f0);
135
- color: var(--kritzel-settings-shortcut-key-color, #333333);
136
- border: 1px solid var(--kritzel-settings-shortcut-key-border, #ddd);
137
- }
1
+ :host {
2
+ display: contents;
3
+ }
4
+
5
+ kritzel-dialog {
6
+ --kritzel-dialog-body-padding: 0;
7
+ --kritzel-dialog-width-large: 800px;
8
+ --kritzel-dialog-height-large: 500px;
9
+ }
10
+
11
+
12
+ .footer-button {
13
+ padding: 8px 16px;
14
+ border-radius: 6px;
15
+ cursor: pointer;
16
+ font-size: 14px;
17
+ }
18
+
19
+ .cancel-button {
20
+ border: 1px solid #ebebeb;
21
+ background: #fff;
22
+ color: inherit;
23
+ }
24
+
25
+ .cancel-button:hover {
26
+ background: #f5f5f5;
27
+ }
28
+
29
+ /* Settings Content */
30
+ .settings-tab-panel {
31
+ display: none;
32
+ }
33
+
34
+ .settings-tab-panel.is-active {
35
+ display: block;
36
+ }
37
+
38
+ .settings-content {
39
+ padding: 0;
40
+ }
41
+
42
+ .settings-content h3 {
43
+ margin: 0 0 16px 0;
44
+ font-size: 18px;
45
+ font-weight: 600;
46
+ color: var(--kritzel-settings-content-heading-color, #333333);
47
+ }
48
+
49
+ .settings-content p {
50
+ margin: 0;
51
+ font-size: 14px;
52
+ color: var(--kritzel-settings-content-text-color, #666666);
53
+ line-height: 1.5;
54
+ }
55
+
56
+ .settings-group {
57
+ display: flex;
58
+ flex-direction: column;
59
+ gap: 24px;
60
+ }
61
+
62
+ .settings-item {
63
+ display: flex;
64
+ flex-direction: column;
65
+ gap: 8px;
66
+ }
67
+
68
+ .settings-row {
69
+ display: flex;
70
+ align-items: center;
71
+ justify-content: space-between;
72
+ gap: 16px;
73
+ }
74
+
75
+ .settings-label {
76
+ font-size: 14px;
77
+ font-weight: 600;
78
+ color: var(--kritzel-settings-label-color, #333333);
79
+ margin: 0 0 4px 0;
80
+ }
81
+
82
+ .settings-description {
83
+ font-size: 12px;
84
+ color: var(--kritzel-settings-description-color, #888888);
85
+ margin: 0;
86
+ line-height: 1.4;
87
+ }
88
+
89
+ /* Shortcuts List */
90
+ .shortcuts-list {
91
+ display: flex;
92
+ flex-direction: column;
93
+ gap: 24px;
94
+ }
95
+
96
+ .shortcuts-category {
97
+ display: flex;
98
+ flex-direction: column;
99
+ gap: 8px;
100
+ }
101
+
102
+ .shortcuts-category-title {
103
+ font-size: 14px;
104
+ font-weight: 600;
105
+ color: var(--kritzel-settings-label-color, #333333);
106
+ margin: 0 0 4px 0;
107
+ }
108
+
109
+ .shortcuts-group {
110
+ display: flex;
111
+ flex-direction: column;
112
+ gap: 4px;
113
+ }
114
+
115
+ .shortcut-item {
116
+ display: flex;
117
+ justify-content: space-between;
118
+ align-items: center;
119
+ padding: 6px 8px;
120
+ border-radius: 4px;
121
+ background: var(--kritzel-settings-shortcut-item-bg, rgba(0, 0, 0, 0.02));
122
+ }
123
+
124
+ .shortcut-label {
125
+ font-size: 14px;
126
+ color: var(--kritzel-settings-content-text-color, #666666);
127
+ }
128
+
129
+ .shortcut-key {
130
+ font-family: monospace;
131
+ font-size: 12px;
132
+ padding: 2px 8px;
133
+ border-radius: 4px;
134
+ background: var(--kritzel-settings-shortcut-key-bg, #f0f0f0);
135
+ color: var(--kritzel-settings-shortcut-key-color, #333333);
136
+ border: 1px solid var(--kritzel-settings-shortcut-key-border, #ddd);
137
+ }
@@ -208,7 +208,7 @@ export class KritzelSettings {
208
208
  return (h("div", { class: "settings-categories-wrapper" }, h("div", { class: { 'settings-tab-panel': true, 'is-active': this.selectedCategoryId === 'general' } }, h("div", { class: "settings-content" }, h("h3", null, this.t('settings.general.title', 'General Settings')), h("div", { class: "settings-group" }, h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.general.theme.label', 'Theme')), h("p", { class: "settings-description" }, this.t('settings.general.theme.description', 'Select a registered color theme for the editor interface.')), h("kritzel-dropdown", { options: this.availableThemes.map(t => ({ value: t, label: t })), value: this.theme, onValueChanged: this.handleThemeChange })), this.availableLocales.length > 0 && (h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.general.language.label', 'Language')), h("p", { class: "settings-description" }, this.t('settings.general.language.description', 'Select the display language for the editor interface.')), h("kritzel-dropdown", { options: this.availableLocales.map(l => ({ value: l.code, label: l.label })), value: this.locale, onValueChanged: this.handleLocaleChange }))), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.general.lockDrawingScale.label', 'Lock Drawing Scale')), h("p", { class: "settings-description" }, this.t('settings.general.lockDrawingScale.description', 'When enabled, drawn objects maintain a fixed visual size regardless of the current zoom level.')), h("kritzel-slide-toggle", { checked: this.lockDrawingScale, label: this.t('settings.general.lockDrawingScale.label', 'Lock Drawing Scale'), onCheckedChange: this.handleLockDrawingScaleChange }))))), h("div", { class: { 'settings-tab-panel': true, 'is-active': this.selectedCategoryId === 'viewport' } }, h("div", { class: "settings-content" }, h("h3", null, this.t('settings.viewport.title', 'Viewport Settings')), h("div", { class: "settings-group" }, h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.viewport.minZoom.label', 'Minimum Zoom Level')), h("p", { class: "settings-description" }, this.t('settings.viewport.minZoom.description', 'Sets the minimum zoom level. Lower values allow zooming out further to see more of the canvas.')), h("kritzel-numeric-input", { value: this.scaleMin, min: 0.0001, max: 1, step: 0.0001, onValueChange: this.handleScaleMinChange })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.viewport.maxZoom.label', 'Maximum Zoom Level')), h("p", { class: "settings-description" }, this.t('settings.viewport.maxZoom.description', 'Sets the maximum zoom level. Higher values allow zooming in closer for detailed work.')), h("kritzel-numeric-input", { value: this.scaleMax, min: 1, max: 1000, step: 1, onValueChange: this.handleScaleMaxChange })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.viewport.boundaryLeft.label', 'Viewport Boundary Left')), h("p", { class: "settings-description" }, this.t('settings.viewport.boundaryLeft.description', 'Left boundary in world coordinates. Set to limit how far left the viewport can pan.')), h("kritzel-numeric-input", { value: this.viewportBoundaryLeft, step: 100, placeholder: this.t('settings.viewport.boundaryPlaceholder', 'Infinite'), onValueChange: this.handleViewportBoundaryLeftChange })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.viewport.boundaryRight.label', 'Viewport Boundary Right')), h("p", { class: "settings-description" }, this.t('settings.viewport.boundaryRight.description', 'Right boundary in world coordinates. Set to limit how far right the viewport can pan.')), h("kritzel-numeric-input", { value: this.viewportBoundaryRight, step: 100, placeholder: this.t('settings.viewport.boundaryPlaceholder', 'Infinite'), onValueChange: this.handleViewportBoundaryRightChange })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.viewport.boundaryTop.label', 'Viewport Boundary Top')), h("p", { class: "settings-description" }, this.t('settings.viewport.boundaryTop.description', 'Top boundary in world coordinates. Set to limit how far up the viewport can pan.')), h("kritzel-numeric-input", { value: this.viewportBoundaryTop, step: 100, placeholder: this.t('settings.viewport.boundaryPlaceholder', 'Infinite'), onValueChange: this.handleViewportBoundaryTopChange })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.viewport.boundaryBottom.label', 'Viewport Boundary Bottom')), h("p", { class: "settings-description" }, this.t('settings.viewport.boundaryBottom.description', 'Bottom boundary in world coordinates. Set to limit how far down the viewport can pan.')), h("kritzel-numeric-input", { value: this.viewportBoundaryBottom, step: 100, placeholder: this.t('settings.viewport.boundaryPlaceholder', 'Infinite'), onValueChange: this.handleViewportBoundaryBottomChange }))))), h("div", { class: { 'settings-tab-panel': true, 'is-active': this.selectedCategoryId === 'shortcuts' } }, h("div", { class: "settings-content" }, h("h3", null, this.t('settings.shortcuts.title', 'Keyboard Shortcuts')), h("div", { class: "shortcuts-list" }, Array.from(this.groupShortcutsByCategory()).map(([category, shortcuts]) => (h("div", { class: "shortcuts-category", key: category }, h("h4", { class: "shortcuts-category-title" }, category), h("div", { class: "shortcuts-group" }, shortcuts.map(shortcut => (h("div", { class: "shortcut-item", key: shortcut.key + shortcut.label }, h("span", { class: "shortcut-label" }, shortcut.label), h("kbd", { class: "shortcut-key" }, this.formatKeyCombo(shortcut)))))))))))), h("div", { class: { 'settings-tab-panel': true, 'is-active': this.selectedCategoryId === 'developer' } }, h("div", { class: "settings-content" }, h("h3", null, this.t('settings.developer.title', 'Developer Options')), h("div", { class: "settings-group" }, h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.developer.showViewportInfo.label', 'Show Viewport Info')), h("p", { class: "settings-description" }, this.t('settings.developer.showViewportInfo.description', 'Display viewport debug information such as position, zoom level, and boundaries.')), h("kritzel-slide-toggle", { checked: this.debugInfo.showViewportInfo, label: this.t('settings.developer.showViewportInfo.label', 'Show Viewport Info'), onCheckedChange: this.handleDebugInfoChange('showViewportInfo') })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.developer.showObjectInfo.label', 'Show Object Info')), h("p", { class: "settings-description" }, this.t('settings.developer.showObjectInfo.description', 'Display debug information about objects on the canvas.')), h("kritzel-slide-toggle", { checked: this.debugInfo.showObjectInfo, label: this.t('settings.developer.showObjectInfo.label', 'Show Object Info'), onCheckedChange: this.handleDebugInfoChange('showObjectInfo') })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.developer.showSyncProviderInfo.label', 'Show Sync Provider Info')), h("p", { class: "settings-description" }, this.t('settings.developer.showSyncProviderInfo.description', 'Display debug information about the sync provider connection status.')), h("kritzel-slide-toggle", { checked: this.debugInfo.showSyncProviderInfo, label: this.t('settings.developer.showSyncProviderInfo.label', 'Show Sync Provider Info'), onCheckedChange: this.handleDebugInfoChange('showSyncProviderInfo') })), h("div", { class: "settings-item" }, h("label", { class: "settings-label" }, this.t('settings.developer.showMigrationInfo.label', 'Show Migration Info')), h("p", { class: "settings-description" }, this.t('settings.developer.showMigrationInfo.description', 'Display debug information about data migrations.')), h("kritzel-slide-toggle", { checked: this.debugInfo.showMigrationInfo, label: this.t('settings.developer.showMigrationInfo.label', 'Show Migration Info'), onCheckedChange: this.handleDebugInfoChange('showMigrationInfo') }))))), h("div", { class: { 'settings-tab-panel': true, 'is-active': this.selectedCategoryId === 'about' } }, h("div", { class: "settings-content" }, h("h3", null, this.t('settings.about.title', 'About')), h("p", null, this.t('settings.about.description', 'Kritzel - A drawing application')), h("p", { class: "version-info" }, "Version ", KRITZEL_VERSION), h("p", { class: "version-info" }, "App-State Schema v", CURRENT_APP_STATE_SCHEMA_VERSION), h("p", { class: "version-info" }, "Workspace Schema v", CURRENT_WORKSPACE_SCHEMA_VERSION)))));
209
209
  }
210
210
  render() {
211
- return (h(Host, { key: '0461408163ca90999eef2885be2496264cae94ac' }, h("kritzel-dialog", { key: 'bbeb801a3024887d9e4aff94128f50d15a0a6820', isOpen: this.isDialogOpen, dialogTitle: this.t('settings.dialogTitle', 'Settings'), size: "large", contained: true, onDialogClose: this.closeDialog }, h("kritzel-master-detail", { key: 'ee2013cb3e7588b0b25c0f6175e79290de21cf09', items: this.categories, selectedItemId: this.selectedCategoryId, onItemSelect: this.handleCategorySelect }, this.renderCategoryContent()))));
211
+ return (h(Host, { key: 'a3b62913565f4823bd379da67d81545c58c49d20' }, h("kritzel-dialog", { key: 'e688b2d81f985905f65b756becb336b7d14ca8f5', isOpen: this.isDialogOpen, dialogTitle: this.t('settings.dialogTitle', 'Settings'), size: "large", contained: true, onDialogClose: this.closeDialog }, h("kritzel-master-detail", { key: '1f6db30412514bee5b087d8365eca91d76002ef8', items: this.categories, selectedItemId: this.selectedCategoryId, onItemSelect: this.handleCategorySelect }, this.renderCategoryContent()))));
212
212
  }
213
213
  static get is() { return "kritzel-settings"; }
214
214
  static get encapsulation() { return "shadow"; }
@@ -1,47 +1,47 @@
1
- :host {
2
- display: flex;
3
- flex-direction: column;
4
- gap: 12px;
5
- padding: 0;
6
- box-sizing: border-box;
7
- }
8
-
9
- .fill-row {
10
- display: flex;
11
- align-items: center;
12
- gap: 4px;
13
- }
14
-
15
- .fill-option {
16
- display: flex;
17
- justify-content: center;
18
- align-items: center;
19
- width: 48px;
20
- height: 32px;
21
- border-radius: 6px;
22
- cursor: var(--kritzel-global-pointer-cursor, pointer);
23
- border: 2px solid transparent;
24
- box-sizing: border-box;
25
- background: var(--kritzel-shape-fill-option-background, #ffffff);
26
- padding: 4px;
27
- transition: background-color 0.15s ease, border-color 0.15s ease;
28
- }
29
-
30
- .fill-option:hover {
31
- background-color: var(--kritzel-shape-fill-hover-background-color, #ebebeb);
32
- }
33
-
34
- .fill-option.selected {
35
- border-color: var(--kritzel-selection-border-color, #007AFF);
36
- background-color: var(--kritzel-shape-fill-selected-background-color, #ebebeb);
37
- }
38
-
39
- .fill-option:focus {
40
- outline: none;
41
- box-shadow: 0 0 0 2px var(--kritzel-global-focus-ring-color, rgba(0, 122, 255, 0.3));
42
- }
43
-
44
- .fill-icon {
45
- width: 100%;
46
- height: 100%;
47
- }
1
+ :host {
2
+ display: flex;
3
+ flex-direction: column;
4
+ gap: 12px;
5
+ padding: 0;
6
+ box-sizing: border-box;
7
+ }
8
+
9
+ .fill-row {
10
+ display: flex;
11
+ align-items: center;
12
+ gap: 4px;
13
+ }
14
+
15
+ .fill-option {
16
+ display: flex;
17
+ justify-content: center;
18
+ align-items: center;
19
+ width: 48px;
20
+ height: 32px;
21
+ border-radius: 6px;
22
+ cursor: var(--kritzel-global-pointer-cursor, pointer);
23
+ border: 2px solid transparent;
24
+ box-sizing: border-box;
25
+ background: var(--kritzel-shape-fill-option-background, #ffffff);
26
+ padding: 4px;
27
+ transition: background-color 0.15s ease, border-color 0.15s ease;
28
+ }
29
+
30
+ .fill-option:hover {
31
+ background-color: var(--kritzel-shape-fill-hover-background-color, #ebebeb);
32
+ }
33
+
34
+ .fill-option.selected {
35
+ border-color: var(--kritzel-selection-border-color, #007AFF);
36
+ background-color: var(--kritzel-shape-fill-selected-background-color, #ebebeb);
37
+ }
38
+
39
+ .fill-option:focus {
40
+ outline: none;
41
+ box-shadow: 0 0 0 2px var(--kritzel-global-focus-ring-color, rgba(0, 122, 255, 0.3));
42
+ }
43
+
44
+ .fill-icon {
45
+ width: 100%;
46
+ height: 100%;
47
+ }
@@ -16,10 +16,10 @@ export class KritzelShapeFill {
16
16
  return (h("svg", { viewBox: "0 0 24 24", class: "fill-icon" }, h("rect", { x: "4", y: "4", width: "16", height: "16", rx: "2", fill: strokeColor, stroke: strokeColor, "stroke-width": "2" })));
17
17
  }
18
18
  render() {
19
- return (h(Host, { key: 'ec214708dd4210e0c36734cb81fba76849114f9b' }, h("div", { key: 'd64bacdb7c50b31f3c460bdf2e939b4159d4d000', class: "fill-row" }, h("button", { key: '812735be08265145a13ab116e7153fd684f8b77f', class: {
19
+ return (h(Host, { key: '6d38a9af2e4c4c7f86ab994c63fc074007c86b48' }, h("div", { key: 'cf58f26cb0e56e274873d11024209c6908d317bb', class: "fill-row" }, h("button", { key: 'c75eed70fe0c2fcbf0fd136bb6fce75b2dbfb45d', class: {
20
20
  'fill-option': true,
21
21
  'selected': this.value === 'transparent',
22
- }, onClick: () => this.handleFillChange('transparent'), title: "Transparent background" }, this.renderFillIcon('transparent')), h("button", { key: 'cb5caf2db8aece4bef2eebca37e7ac36383bb450', class: {
22
+ }, onClick: () => this.handleFillChange('transparent'), title: "Transparent background" }, this.renderFillIcon('transparent')), h("button", { key: '5d6ede439b5d5e55598cd8c20b5851fb9f210463', class: {
23
23
  'fill-option': true,
24
24
  'selected': this.value === 'filled',
25
25
  }, onClick: () => this.handleFillChange('filled'), title: "Filled background" }, this.renderFillIcon('filled')))));
@@ -47,7 +47,7 @@ export class KritzelShapeFill {
47
47
  "references": {
48
48
  "ShapeFillType": {
49
49
  "location": "local",
50
- "path": "C:/Projects/kritzel/libs/editor/core/src/components/kritzel-shape-fill/kritzel-shape-fill.tsx",
50
+ "path": "/home/runner/work/kritzel-private/kritzel-private/libs/editor/core/src/components/kritzel-shape-fill/kritzel-shape-fill.tsx",
51
51
  "id": "src/components/kritzel-shape-fill/kritzel-shape-fill.tsx::ShapeFillType"
52
52
  }
53
53
  }
@@ -83,7 +83,7 @@ export class KritzelShapeFill {
83
83
  "references": {
84
84
  "ShapeFillType": {
85
85
  "location": "local",
86
- "path": "C:/Projects/kritzel/libs/editor/core/src/components/kritzel-shape-fill/kritzel-shape-fill.tsx",
86
+ "path": "/home/runner/work/kritzel-private/kritzel-private/libs/editor/core/src/components/kritzel-shape-fill/kritzel-shape-fill.tsx",
87
87
  "id": "src/components/kritzel-shape-fill/kritzel-shape-fill.tsx::ShapeFillType"
88
88
  }
89
89
  }