lakelib 0.2.5 → 0.3.0

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 (130) hide show
  1. package/README.md +5 -5
  2. package/dist/lake.css +433 -398
  3. package/dist/lake.min.js +41 -56
  4. package/dist/lake.min.js.map +1 -1
  5. package/lib/css/index.d.ts +1 -11
  6. package/lib/editor.d.ts +1 -1
  7. package/lib/i18n/en-US/index.d.ts +26 -0
  8. package/lib/i18n/ja/index.d.ts +26 -0
  9. package/lib/i18n/ko/index.d.ts +26 -0
  10. package/lib/i18n/types.d.ts +200 -4
  11. package/lib/i18n/zh-CN/index.d.ts +26 -0
  12. package/lib/index.d.ts +8 -8
  13. package/lib/lake.css +182 -147
  14. package/lib/lake.js +5494 -4280
  15. package/lib/lake.js.map +1 -1
  16. package/lib/managers/command.d.ts +4 -4
  17. package/lib/managers/selection.d.ts +6 -10
  18. package/lib/operations/insert-block.d.ts +3 -0
  19. package/lib/operations/insert-contents.d.ts +4 -0
  20. package/lib/operations/split-block.d.ts +1 -1
  21. package/lib/operations/split-marks.d.ts +1 -1
  22. package/lib/plugins/align.d.ts +1 -1
  23. package/lib/plugins/arrow-keys.d.ts +1 -1
  24. package/lib/plugins/backspace-key.d.ts +1 -1
  25. package/lib/plugins/block-quote.d.ts +1 -1
  26. package/lib/plugins/bold.d.ts +1 -1
  27. package/lib/plugins/code-block/code-block-box.d.ts +4 -0
  28. package/lib/plugins/code-block/index.d.ts +5 -0
  29. package/lib/plugins/code.d.ts +1 -1
  30. package/lib/plugins/copy.d.ts +1 -1
  31. package/lib/plugins/cut.d.ts +1 -1
  32. package/lib/plugins/delete-key.d.ts +1 -1
  33. package/lib/plugins/drop.d.ts +1 -1
  34. package/lib/plugins/emoji/emoji-box.d.ts +4 -0
  35. package/lib/plugins/emoji/index.d.ts +5 -0
  36. package/lib/plugins/enter-key.d.ts +1 -1
  37. package/lib/plugins/equation/equation-box.d.ts +4 -0
  38. package/lib/plugins/equation/index.d.ts +5 -0
  39. package/lib/plugins/escape-key.d.ts +1 -1
  40. package/lib/plugins/file/file-box.d.ts +4 -0
  41. package/lib/plugins/file/index.d.ts +5 -0
  42. package/lib/plugins/font-color.d.ts +1 -1
  43. package/lib/plugins/font-family.d.ts +1 -1
  44. package/lib/plugins/font-size.d.ts +1 -1
  45. package/lib/plugins/format-painter.d.ts +1 -1
  46. package/lib/plugins/heading.d.ts +1 -1
  47. package/lib/plugins/highlight.d.ts +1 -1
  48. package/lib/plugins/hr/hr-box.d.ts +4 -0
  49. package/lib/plugins/hr/index.d.ts +5 -0
  50. package/lib/{boxes/image.d.ts → plugins/image/image-box.d.ts} +2 -1
  51. package/lib/plugins/image/index.d.ts +5 -0
  52. package/lib/plugins/indent.d.ts +1 -1
  53. package/lib/plugins/italic.d.ts +1 -1
  54. package/lib/plugins/{link.d.ts → link/index.d.ts} +1 -1
  55. package/lib/plugins/link/insert-link.d.ts +3 -0
  56. package/lib/{ui → plugins/link}/link-popup.d.ts +3 -2
  57. package/lib/plugins/list.d.ts +1 -1
  58. package/lib/plugins/markdown.d.ts +1 -1
  59. package/lib/plugins/mention/index.d.ts +5 -0
  60. package/lib/plugins/mention/mention-box.d.ts +4 -0
  61. package/lib/{ui → plugins/mention}/mention-menu.d.ts +4 -3
  62. package/lib/plugins/paste.d.ts +1 -1
  63. package/lib/plugins/redo.d.ts +1 -1
  64. package/lib/plugins/remove-format.d.ts +1 -1
  65. package/lib/plugins/select-all.d.ts +1 -1
  66. package/lib/plugins/shift-enter-key.d.ts +1 -1
  67. package/lib/plugins/{mention.d.ts → slash/index.d.ts} +1 -1
  68. package/lib/{config → plugins/slash}/slash-items.d.ts +1 -1
  69. package/lib/{ui → plugins/slash}/slash-menu.d.ts +5 -4
  70. package/lib/{types/slash.d.ts → plugins/slash/types.d.ts} +2 -2
  71. package/lib/plugins/special-character.d.ts +1 -1
  72. package/lib/plugins/strikethrough.d.ts +1 -1
  73. package/lib/plugins/subscript.d.ts +1 -1
  74. package/lib/plugins/superscript.d.ts +1 -1
  75. package/lib/plugins/tab-key.d.ts +1 -1
  76. package/lib/plugins/table/delete-column.d.ts +2 -0
  77. package/lib/plugins/table/delete-row.d.ts +2 -0
  78. package/lib/plugins/table/delete-table.d.ts +2 -0
  79. package/lib/plugins/{slash.d.ts → table/index.d.ts} +2 -1
  80. package/lib/plugins/table/insert-column.d.ts +4 -0
  81. package/lib/plugins/table/insert-row.d.ts +4 -0
  82. package/lib/plugins/table/insert-table.d.ts +3 -0
  83. package/lib/plugins/table/merge-cells.d.ts +3 -0
  84. package/lib/plugins/table/split-cell.d.ts +3 -0
  85. package/lib/plugins/table/utils.d.ts +6 -0
  86. package/lib/plugins/underline.d.ts +1 -1
  87. package/lib/plugins/undo.d.ts +1 -1
  88. package/lib/plugins/unlink.d.ts +1 -1
  89. package/lib/plugins/video/index.d.ts +5 -0
  90. package/lib/plugins/video/video-box.d.ts +4 -0
  91. package/lib/storage/editors.d.ts +1 -1
  92. package/lib/types/corner-toolbar.d.ts +7 -0
  93. package/lib/types/dropdown.d.ts +1 -0
  94. package/lib/types/native.d.ts +0 -8
  95. package/lib/types/node.d.ts +12 -0
  96. package/lib/types/object.d.ts +0 -24
  97. package/lib/types/selection.d.ts +14 -0
  98. package/lib/types/toolbar.d.ts +5 -5
  99. package/lib/ui/corner-toolbar.d.ts +18 -0
  100. package/lib/ui/floating-toolbar.d.ts +1 -1
  101. package/lib/ui/resizer.d.ts +0 -2
  102. package/lib/ui/toolbar.d.ts +2 -2
  103. package/lib/utils/indent-block.d.ts +2 -0
  104. package/lib/utils/remove-empty-marks.d.ts +2 -0
  105. package/lib/utils/unsafe-template.d.ts +1 -0
  106. package/lib/utils/visible-info.d.ts +10 -0
  107. package/package.json +15 -14
  108. package/lib/boxes/code-block.d.ts +0 -3
  109. package/lib/boxes/emoji.d.ts +0 -3
  110. package/lib/boxes/equation.d.ts +0 -3
  111. package/lib/boxes/file.d.ts +0 -3
  112. package/lib/boxes/hr.d.ts +0 -3
  113. package/lib/boxes/mention.d.ts +0 -3
  114. package/lib/boxes/video.d.ts +0 -3
  115. package/lib/operations/fix-list.d.ts +0 -2
  116. package/lib/operations/insert-fragment.d.ts +0 -3
  117. package/lib/operations/insert-link.d.ts +0 -3
  118. package/lib/operations/insert-node.d.ts +0 -3
  119. package/lib/plugins/code-block.d.ts +0 -3
  120. package/lib/plugins/emoji.d.ts +0 -3
  121. package/lib/plugins/equation.d.ts +0 -3
  122. package/lib/plugins/file.d.ts +0 -3
  123. package/lib/plugins/hr.d.ts +0 -3
  124. package/lib/plugins/image.d.ts +0 -3
  125. package/lib/plugins/video.d.ts +0 -3
  126. package/lib/utils/index.d.ts +0 -33
  127. package/lib/utils/is-visible.d.ts +0 -8
  128. package/lib/utils/safe-template.d.ts +0 -1
  129. package/lib/utils/set-block-indent.d.ts +0 -2
  130. /package/lib/{types/mention.d.ts → plugins/mention/types.d.ts} +0 -0
package/dist/lake.css CHANGED
@@ -83,6 +83,14 @@
83
83
  padding: 0;
84
84
  margin-bottom: 8px;
85
85
  }
86
+ .lake-container a {
87
+ color: var(--lake-link-color);
88
+ text-decoration: none;
89
+ }
90
+ .lake-container a:hover {
91
+ color: var(--lake-link-hover-color);
92
+ text-decoration: underline;
93
+ }
86
94
  .lake-drop-indication {
87
95
  position: absolute;
88
96
  height: 2px;
@@ -158,45 +166,14 @@ lake-box .lake-box-container {
158
166
  display: block;
159
167
  align-self: center;
160
168
  }
161
- /* box button group */
162
- lake-box .lake-box-hovered .lake-button-group,
163
- lake-box .lake-box-focused .lake-button-group,
164
- lake-box .lake-box-activated .lake-button-group {
169
+ lake-box .lake-box-hovered .lake-corner-toolbar,
170
+ lake-box .lake-box-focused .lake-corner-toolbar,
171
+ lake-box .lake-box-activated .lake-corner-toolbar {
165
172
  display: flex;
166
173
  }
167
174
  lake-box .lake-box-focused .lake-resizer {
168
175
  display: block;
169
176
  }
170
- lake-box .lake-button-group {
171
- position: absolute;
172
- top: 8px;
173
- right: 8px;
174
- z-index: 2;
175
- border-radius: 4px;
176
- background-color: rgba(0, 0, 0, .4);
177
- line-height: 0;
178
- display: flex;
179
- align-items: center;
180
- padding: 0 6px;
181
- display: none;
182
- }
183
- lake-box .lake-button-group button {
184
- border-radius: 5px;
185
- border: 0;
186
- color: var(--lake-text-color);
187
- background-color: transparent;
188
- padding: 0;
189
- margin: 0;
190
- line-height: 0;
191
- cursor: pointer;
192
- user-select: none;
193
- }
194
- lake-box .lake-button-group button svg {
195
- fill: #fff;
196
- width: 16px;
197
- height: 16px;
198
- margin: 6px;
199
- }
200
177
 
201
178
  button.lake-button {
202
179
  border-radius: 5px;
@@ -640,6 +617,37 @@ button.lake-primary-button.lake-button-hovered {
640
617
  display: none;
641
618
  }
642
619
 
620
+ .lake-corner-toolbar {
621
+ position: absolute;
622
+ top: 8px;
623
+ right: 8px;
624
+ z-index: 2;
625
+ border-radius: 4px;
626
+ background-color: rgba(0, 0, 0, .4);
627
+ line-height: 0;
628
+ display: flex;
629
+ align-items: center;
630
+ padding: 0 6px;
631
+ display: none;
632
+ }
633
+ .lake-corner-toolbar button {
634
+ border-radius: 5px;
635
+ border: 0;
636
+ color: var(--lake-text-color);
637
+ background-color: transparent;
638
+ padding: 0;
639
+ margin: 0;
640
+ line-height: 0;
641
+ cursor: pointer;
642
+ user-select: none;
643
+ }
644
+ .lake-corner-toolbar button svg {
645
+ fill: #fff;
646
+ width: 16px;
647
+ height: 16px;
648
+ margin: 6px;
649
+ }
650
+
643
651
  .lake-container.lake-format-painter {
644
652
  /* file: ../svg/format-painter-cursor.svg */
645
653
  cursor: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='30' height='20' viewBox='0 0 600 400'%3E%3Cpath fill='none' d='M397 401H1V1h600v400H397m27.39-160.456v-37.606h5.963c41.821 0 83.642.024 125.463-.016 10.848-.01 17.325-6 17.358-16.286.096-30.823.1-61.648 0-92.471-.034-10.554-5.94-16.103-16.674-16.16-6.45-.035-12.899-.007-19.657-.007 0-8.783.063-17.08-.018-25.374-.079-7.94-3.319-11.204-11.29-11.207-73.81-.03-147.621-.034-221.432.004-8.106.004-11.091 3.142-11.096 11.293-.02 32.99-.02 65.98-.003 98.97.005 8.202 3.26 11.461 11.504 11.463 73.644.015 147.289.016 220.933-.002 8.157-.002 11.373-3.312 11.393-11.649.036-14.662.003-29.324.02-43.986.002-1.608.14-3.216.215-4.84h11.502v75.804h-5.843c-41.487 0-82.975-.005-124.462.003-12.796.002-18.147 5.394-18.162 18.306-.017 14.662.002 29.324-.015 43.987-.002 1.432-.153 2.865-.249 4.53-5.076 0-9.73.089-14.38-.027-3.776-.095-5.384 1.436-5.371 5.34.099 29.489-.097 58.98.155 88.468.142 16.617 14.312 30.632 30.552 30.954 17.736.352 32.858-12.285 33.16-29.098.542-30.313.202-60.641.302-90.963.011-3.525-1.706-4.728-4.922-4.686-3.832.05-7.676-.172-11.493.067-3.036.19-3.824-1.148-3.452-4.81M98.997 123.5v81.255H76.999v22.088h21.982c0 2.045.005 3.674 0 5.303-.087 25.83-.49 51.664-.091 77.487.143 9.23-2.38 16.953-7.836 24.049-.913 1.187-1.723 2.452-2.59 3.675-9.838 13.893-23.103 21.722-40.24 22.51-4.767.218-9.553.032-14.914.032v22.282c32.478 3.01 58.566-8.283 76.789-36.428 17.756 26.721 48.899 40.773 78.248 36.027l-1.083-21.66c-2.256 0-3.75-.08-5.232.012-21.104 1.302-37.87-6.871-50.84-23.287-6.506-8.233-10.772-16.802-10.401-28.137.833-25.47.26-50.985.26-76.482v-5.482h21.96v-22.25h-21.96v-5.966c0-32.329.294-64.663-.185-96.985-.141-9.484 1.949-17.494 7.541-25.066 12.268-16.61 27.766-26.975 49.095-26.868 3.12.015 6.24.002 10.04.002V27.314c-15.008-.802-29.72-.048-43.6 7.157-13.625 7.073-25.309 16.192-33.954 29.838-8.595-13.434-19.139-23.646-33.21-30.154-14.041-6.495-28.642-7.867-43.307-6.781V49.62c4.253 0 7.742.003 11.23 0 7.756-.006 14.966 1.724 22.189 4.873 10.95 4.774 18.144 12.992 24.784 22.4 5.426 7.69 8.207 15.646 7.43 25.118-.555 6.787-.107 13.657-.107 21.489z'/%3E%3Cpath fill='%23020202' d='M424.39 241.051c-.371 3.156.417 4.494 3.453 4.304 3.817-.239 7.661-.017 11.493-.067 3.216-.042 4.933 1.161 4.922 4.686-.1 30.322.24 60.65-.303 90.963-.3 16.813-15.423 29.45-33.159 29.098-16.24-.322-30.41-14.337-30.552-30.954-.252-29.488-.056-58.98-.155-88.469-.013-3.903 1.595-5.434 5.371-5.34 4.65.117 9.304.028 14.38.028.096-1.665.247-3.098.249-4.53.017-14.663-.002-29.325.015-43.987.015-12.912 5.366-18.304 18.162-18.306 41.487-.008 82.975-.003 124.462-.003h5.843V102.67H537.07c-.075 1.624-.213 3.232-.215 4.84-.017 14.662.016 29.324-.02 43.986-.02 8.337-3.236 11.647-11.393 11.649-73.644.018-147.289.017-220.933.002-8.244-.002-11.5-3.261-11.504-11.462-.016-32.99-.017-65.98.003-98.97.005-8.152 2.99-11.29 11.096-11.294 73.81-.038 147.622-.034 221.433-.004 7.97.003 11.21 3.266 11.289 11.207.081 8.295.018 16.59.018 25.374 6.758 0 13.208-.028 19.657.006 10.734.058 16.64 5.607 16.674 16.16.1 30.824.096 61.649 0 92.472-.033 10.286-6.51 16.275-17.358 16.286-41.821.04-83.642.016-125.463.016h-5.962v38.113z'/%3E%3Cpath fill='%23040404' d='M98.997 123c0-7.332-.448-14.202.108-20.989.776-9.472-2.005-17.429-7.431-25.118-6.64-9.408-13.834-17.626-24.784-22.4-7.223-3.15-14.433-4.879-22.189-4.873-3.488.003-6.977 0-11.23 0V27.374c14.665-1.086 29.266.286 43.307 6.78 14.071 6.51 24.615 16.72 33.21 30.155 8.645-13.646 20.33-22.765 33.954-29.838 13.88-7.205 28.592-7.959 43.6-7.157V49.61c-3.8 0-6.92.013-10.04-.002-21.329-.107-36.827 10.259-49.095 26.868-5.592 7.572-7.682 15.582-7.541 25.066.479 32.322.185 64.656.186 96.985v5.966h21.958v22.25h-21.958v5.482c0 25.497.572 51.013-.261 76.482-.37 11.335 3.895 19.904 10.4 28.137 12.97 16.416 29.737 24.589 50.84 23.287 1.483-.092 2.977-.012 5.233-.012l1.083 21.66c-29.349 4.746-60.492-9.306-78.248-36.027-18.223 28.145-44.31 39.438-76.79 36.428v-22.282c5.362 0 10.148.186 14.914-.033 17.138-.787 30.403-8.616 40.242-22.509.866-1.223 1.676-2.488 2.589-3.675 5.455-7.096 7.979-14.82 7.836-24.05-.4-25.822.004-51.656.09-77.486.006-1.63 0-3.258 0-5.303H77v-22.088h21.997V123z'/%3E%3C/svg%3E") 2 2, text;
@@ -682,53 +690,6 @@ button.lake-primary-button.lake-button-hovered {
682
690
  margin-bottom: 8px;
683
691
  }
684
692
 
685
- .lake-container a {
686
- color: var(--lake-link-color);
687
- text-decoration: none;
688
- }
689
- .lake-container a:hover {
690
- color: var(--lake-link-hover-color);
691
- text-decoration: underline;
692
- }
693
- .lake-link-popup {
694
- position: absolute;
695
- top: 0;
696
- left: 0;
697
- z-index: var(--lake-popup-z-index);
698
- border: 1px solid var(--lake-popup-border-color);
699
- border-radius: 5px;
700
- padding: 16px;
701
- width: fit-content;
702
- background-color: #fff;
703
- box-shadow: var(--lake-popup-shadow);
704
- display: none;
705
- }
706
- .lake-link-popup .lake-url-row {
707
- display: flex;
708
- align-items: center;
709
- }
710
- .lake-link-popup .lake-button-row {
711
- padding-top: 16px;
712
- display: flex;
713
- align-items: center;
714
- justify-content: space-between;
715
- }
716
- .lake-link-popup input[type="text"] {
717
- width: 220px;
718
- margin-right: 4px;
719
- }
720
- .lake-link-popup button[name="copy"] svg:first-child {
721
- display: inline;
722
- }
723
- .lake-link-popup button[name="copy"] svg:nth-child(2) {
724
- display: none;
725
- fill: var(--lake-success-color);
726
- }
727
- .lake-link-popup button[name="copy"] svg:last-child {
728
- display: none;
729
- fill: var(--lake-error-color);
730
- }
731
-
732
693
  .lake-container ol,
733
694
  .lake-container ul {
734
695
  list-style: none;
@@ -886,17 +847,120 @@ button.lake-primary-button.lake-button-hovered {
886
847
  background-color: #f43f5e24;
887
848
  }
888
849
 
850
+ .lake-toolbar {
851
+ box-sizing: border-box;
852
+ font-family: var(--lake-font-family);
853
+ font-size: 14px;
854
+ font-weight: normal;
855
+ line-height: normal;
856
+ padding: 4px;
857
+ display: flex;
858
+ flex-wrap: wrap;
859
+ align-items: center;
860
+ }
861
+ .lake-toolbar *,
862
+ .lake-toolbar ::before,
863
+ .lake-toolbar ::after {
864
+ box-sizing: border-box;
865
+ }
866
+ .lake-toolbar .lake-toolbar-divider {
867
+ width: 1px;
868
+ height: 20px;
869
+ margin: 0 4px;
870
+ border-left: 1px solid var(--lake-border-color);
871
+ user-select: none;
872
+ }
873
+ .lake-toolbar .lake-upload {
874
+ line-height: 0;
875
+ }
876
+ .lake-toolbar .lake-upload input[type="file"] {
877
+ display: none;
878
+ }
879
+
880
+ .lake-floating-toolbar {
881
+ position: absolute;
882
+ top: 0;
883
+ left: 0;
884
+ z-index: var(--lake-popup-z-index);
885
+ border: 1px solid var(--lake-border-color);
886
+ border-radius: 5px;
887
+ background-color: #fff;
888
+ box-shadow: var(--lake-button-shadow);
889
+ padding: 4px;
890
+ display: flex;
891
+ align-items: center;
892
+ }
893
+ .lake-floating-toolbar .lake-toolbar-divider {
894
+ width: 1px;
895
+ height: 20px;
896
+ margin: 0 4px;
897
+ border-left: 1px solid var(--lake-border-color);
898
+ user-select: none;
899
+ }
900
+
889
901
  .lake-container table {
890
- display: block;
902
+ display: table;
891
903
  border-collapse: collapse;
892
904
  border: 0;
893
905
  margin: 20px 0;
894
- overflow-x: auto;
906
+ overflow: visible;
907
+ }
908
+ .lake-container table tr,
909
+ .lake-container table tr:nth-child(n) {
910
+ border: 0;
911
+ background-color: transparent;
895
912
  }
896
913
  .lake-container table td {
914
+ font-size: var(--lake-font-size);
897
915
  padding: 8px 16px;
916
+ min-width: 33px;
898
917
  border: 1px solid var(--lake-border-color);
899
918
  }
919
+ .lake-container table td p {
920
+ margin-bottom: 0;
921
+ }
922
+ .lake-container table td.lake-td-focused {
923
+ outline: var(--lake-input-outline);
924
+ }
925
+
926
+ .lake-link-popup {
927
+ position: absolute;
928
+ top: 0;
929
+ left: 0;
930
+ z-index: var(--lake-popup-z-index);
931
+ border: 1px solid var(--lake-popup-border-color);
932
+ border-radius: 5px;
933
+ padding: 16px;
934
+ width: fit-content;
935
+ background-color: #fff;
936
+ box-shadow: var(--lake-popup-shadow);
937
+ display: none;
938
+ }
939
+ .lake-link-popup .lake-url-row {
940
+ display: flex;
941
+ align-items: center;
942
+ }
943
+ .lake-link-popup .lake-button-row {
944
+ padding-top: 16px;
945
+ display: flex;
946
+ align-items: center;
947
+ justify-content: space-between;
948
+ }
949
+ .lake-link-popup input[type="text"] {
950
+ width: 220px;
951
+ margin-right: 4px;
952
+ }
953
+ .lake-link-popup button[name="copy"] svg:first-child {
954
+ display: inline;
955
+ }
956
+ .lake-link-popup button[name="copy"] svg:nth-child(2) {
957
+ display: none;
958
+ fill: var(--lake-success-color);
959
+ }
960
+ .lake-link-popup button[name="copy"] svg:last-child {
961
+ display: none;
962
+ fill: var(--lake-error-color);
963
+ }
900
964
 
901
965
  lake-box[name="hr"] {
902
966
  margin-bottom: 8px;
@@ -1023,6 +1087,28 @@ lake-box[name="codeBlock"] .lake-box-activated .lake-code-block .lake-dropdown {
1023
1087
  lake-box[name="image"] .lake-box-focused .lake-image {
1024
1088
  border-color: var(--lake-box-border-focus-color);
1025
1089
  }
1090
+ .lake-image-caption {
1091
+ -webkit-user-modify: read-write-plaintext-only;
1092
+ position: relative;
1093
+ font-size: 14px;
1094
+ line-height: normal;
1095
+ text-align: start;
1096
+ color: var(--lake-secondary-text-color);
1097
+ padding-top: 2px;
1098
+ padding-bottom: 8px;
1099
+ display: none;
1100
+ }
1101
+ .lake-image-caption:focus {
1102
+ outline: 0;
1103
+ }
1104
+ .lake-image-caption.lake-placeholder::before {
1105
+ position: absolute;
1106
+ top: 2px;
1107
+ left: 0;
1108
+ color: var(--lake-secondary-text-color);
1109
+ content: attr(placeholder);
1110
+ pointer-events: none;
1111
+ }
1026
1112
  /* uploading status */
1027
1113
  .lake-image-uploading .lake-image-img {
1028
1114
  opacity: 0.5;
@@ -1091,321 +1177,6 @@ lake-box[name="image"] .lake-box-selected .lake-image-error {
1091
1177
  cursor: pointer;
1092
1178
  }
1093
1179
 
1094
- .lake-video {
1095
- position: relative;
1096
- font-size: 14px;
1097
- font-weight: normal;
1098
- line-height: 0;
1099
- border: 1px solid transparent;
1100
- }
1101
- lake-box[name="video"] .lake-box-hovered .lake-resizer {
1102
- display: block;
1103
- }
1104
- .lake-video .lake-video-form {
1105
- padding: 16px;
1106
- line-height: normal;
1107
- border: 1px solid var(--lake-box-border-color);
1108
- border-radius: 4px;
1109
- }
1110
- .lake-video input[type="text"] {
1111
- font-family: var(--lake-font-family);
1112
- font-size: 14px;
1113
- color: var(--lake-text-color);
1114
- border-radius: 5px;
1115
- border: 1px solid var(--lake-input-border-color);
1116
- padding: 4px 10px;
1117
- width: 100%;
1118
- }
1119
- .lake-video input[type="text"]:hover {
1120
- border: 1px solid var(--lake-input-border-hover-color);
1121
- }
1122
- .lake-video input[type="text"]:focus-visible {
1123
- outline: var(--lake-input-outline);
1124
- outline-offset: -2px;
1125
- }
1126
- .lake-video .lake-row {
1127
- padding-bottom: 8px;
1128
- }
1129
- .lake-video .lake-desc-row {
1130
- padding-top: 8px;
1131
- padding-bottom: 16px;
1132
- color: var(--lake-secondary-text-color);
1133
- }
1134
- .lake-video .lake-button-row {
1135
- padding-top: 16px;
1136
- }
1137
- .lake-video .lake-button-row button {
1138
- width: 100%;
1139
- }
1140
-
1141
- .lake-file {
1142
- position: relative;
1143
- font-size: var(--lake-font-size);
1144
- font-weight: normal;
1145
- line-height: 0;
1146
- border: 1px solid transparent;
1147
- border-radius: 4px;
1148
- }
1149
- .lake-container[contenteditable="true"] .lake-file {
1150
- cursor: default;
1151
- user-select: none;
1152
- }
1153
- .lake-container[contenteditable="false"] .lake-file {
1154
- cursor: pointer;
1155
- user-select: auto;
1156
- }
1157
- lake-box[name="file"] .lake-box-strip {
1158
- align-self: center;
1159
- }
1160
- .lake-file .lake-file-info {
1161
- display: flex;
1162
- align-items: center;
1163
- }
1164
- .lake-file .lake-file-type svg {
1165
- width: 16px;
1166
- height: 16px;
1167
- margin: 4px;
1168
- }
1169
- .lake-file .lake-file-name {
1170
- line-height: 24px;
1171
- margin-right: 6px;
1172
- color: var(--lake-link-color);
1173
- }
1174
- lake-box[name="file"] .lake-box-hovered .lake-file {
1175
- background-color: var(--lake-box-background-color);
1176
- }
1177
- lake-box[name="file"] .lake-box-selected .lake-file {
1178
- background-color: var(--lake-selection-background-color);
1179
- }
1180
- lake-box[name="file"] .lake-box-focused .lake-file {
1181
- background-color: var(--lake-selection-background-color);
1182
- }
1183
- /* uploading status */
1184
- .lake-file-uploading .lake-progress {
1185
- display: flex;
1186
- align-items: center;
1187
- margin-right: 6px;
1188
- }
1189
- .lake-file-uploading .lake-progress svg {
1190
- width: 16px;
1191
- height: 16px;
1192
- margin: 4px;
1193
- animation: lakerotate 1s linear 0s infinite normal none;
1194
- }
1195
- .lake-file-uploading .lake-progress .lake-percent {
1196
- line-height: 24px;
1197
- margin-left: 4px;
1198
- white-space: nowrap;
1199
- }
1200
- /* error status */
1201
- .lake-file-error .lake-file-type svg {
1202
- fill: var(--lake-error-color);
1203
- }
1204
- .lake-file-error .lake-file-name {
1205
- color: var(--lake-error-color);
1206
- }
1207
-
1208
- .lake-emoji {
1209
- line-height: 0;
1210
- border: 1px solid transparent;
1211
- border-radius: 2px;
1212
- }
1213
- .lake-emoji img {
1214
- border: 0;
1215
- border-radius: 2px;
1216
- width: 32px;
1217
- height: 32px;
1218
- }
1219
- lake-box[name="emoji"] .lake-box-focused .lake-emoji {
1220
- border-color: var(--lake-selection-background-color);
1221
- background-color: var(--lake-selection-background-color);
1222
- }
1223
-
1224
- .lake-equation {
1225
- position: relative;
1226
- font-weight: normal;
1227
- border: 1px solid transparent;
1228
- border-radius: 4px;
1229
- }
1230
- .lake-container[contenteditable="true"] .lake-equation {
1231
- user-select: none;
1232
- }
1233
- lake-box[name="equation"] .lake-box-strip {
1234
- align-self: center;
1235
- }
1236
- lake-box[name="equation"] .lake-box-selected .lake-equation {
1237
- background-color: var(--lake-selection-background-color);
1238
- }
1239
- lake-box[name="equation"] .lake-box-focused .lake-equation {
1240
- background-color: var(--lake-selection-background-color);
1241
- }
1242
- .lake-equation .lake-equation-view {
1243
- padding: 0 6px;
1244
- }
1245
- .lake-equation .lake-equation-form {
1246
- position: absolute;
1247
- top: 28px;
1248
- left: 0;
1249
- z-index: 1;
1250
- border: 1px solid var(--lake-border-color);
1251
- border-radius: 5px;
1252
- padding: 16px;
1253
- width: fit-content;
1254
- background-color: #fff;
1255
- box-shadow: var(--lake-popup-shadow);
1256
- display: none;
1257
- }
1258
- lake-box[name="equation"] .lake-box-focused .lake-equation-form,
1259
- lake-box[name="equation"] .lake-box-activated .lake-equation-form {
1260
- display: flex;
1261
- }
1262
- .lake-equation .lake-equation-form textarea {
1263
- border: 0;
1264
- font-family: Consolas, Courier, monospace;
1265
- font-size: 14px;
1266
- color: var(--lake-text-color);
1267
- padding: 0;
1268
- margin-right: 8px;
1269
- width: 300px;
1270
- height: 80px;
1271
- resize: none;
1272
- scrollbar-width: thin;
1273
- }
1274
- .lake-equation .lake-equation-form textarea:focus-visible {
1275
- outline: 0;
1276
- }
1277
- .lake-equation .lake-equation-form .lake-button-row {
1278
- display: flex;
1279
- flex-direction: column;
1280
- justify-content: space-between;
1281
- align-items: flex-end;
1282
- }
1283
- /* error status */
1284
- .lake-equation-error {
1285
- padding: 0 6px;
1286
- font-size: 14px;
1287
- color: var(--lake-error-color);
1288
- background-color: var(--lake-box-background-color);
1289
- }
1290
-
1291
- .lake-mention {
1292
- border: 1px solid transparent;
1293
- border-radius: 2px;
1294
- }
1295
- .lake-container[data-readonly="false"] .lake-mention a:hover {
1296
- color: var(--lake-link-color);
1297
- text-decoration: none;
1298
- }
1299
- lake-box[name="mention"] .lake-box-focused .lake-mention {
1300
- border-color: var(--lake-selection-background-color);
1301
- background-color: var(--lake-selection-background-color);
1302
- }
1303
- .lake-mention-menu {
1304
- max-height: 208px;
1305
- }
1306
- .lake-mention-menu .lake-mention-avatar {
1307
- margin-inline-end: 8px;
1308
- line-height: 0;
1309
- }
1310
- .lake-mention-menu .lake-mention-avatar img {
1311
- border-radius: 100%;
1312
- width: 32px;
1313
- height: 32px;
1314
- }
1315
- .lake-mention-menu .lake-mention-nickname {
1316
- margin-inline-end: 4px;
1317
- font-weight: 500;
1318
- color: var(--lake-text-color);
1319
- white-space: nowrap;
1320
- }
1321
- .lake-mention-menu .lake-mention-name {
1322
- color: #8c8c8c;
1323
- }
1324
-
1325
- .lake-slash-menu {
1326
- max-height: 330px;
1327
- }
1328
- .lake-slash-menu .lake-menu-item input[type="file"] {
1329
- display: none;
1330
- }
1331
- .lake-slash-menu .lake-slash-icon {
1332
- margin-inline-end: 8px;
1333
- border-radius: 5px;
1334
- border: 1px solid var(--lake-border-color);
1335
- background-color: #fff;
1336
- line-height: 0;
1337
- }
1338
- .lake-slash-menu .lake-slash-icon svg,
1339
- .lake-slash-menu .lake-slash-icon img {
1340
- width: 32px;
1341
- height: 32px;
1342
- margin: 6px;
1343
- }
1344
- .lake-slash-menu .lake-slash-text {
1345
- display: flex;
1346
- flex-direction: column;
1347
- justify-content: center;
1348
- }
1349
- .lake-slash-menu .lake-slash-title {
1350
- font-weight: 500;
1351
- color: var(--lake-text-color);
1352
- }
1353
- .lake-slash-menu .lake-slash-description {
1354
- color: #8c8c8c;
1355
- }
1356
-
1357
- .lake-toolbar {
1358
- box-sizing: border-box;
1359
- font-family: var(--lake-font-family);
1360
- font-size: 14px;
1361
- font-weight: normal;
1362
- line-height: normal;
1363
- padding: 4px;
1364
- display: flex;
1365
- flex-wrap: wrap;
1366
- align-items: center;
1367
- }
1368
- .lake-toolbar *,
1369
- .lake-toolbar ::before,
1370
- .lake-toolbar ::after {
1371
- box-sizing: border-box;
1372
- }
1373
- .lake-toolbar .lake-toolbar-divider {
1374
- width: 1px;
1375
- height: 20px;
1376
- margin: 0 4px;
1377
- border-left: 1px solid var(--lake-border-color);
1378
- user-select: none;
1379
- }
1380
- .lake-toolbar .lake-upload {
1381
- line-height: 0;
1382
- }
1383
- .lake-toolbar .lake-upload input[type="file"] {
1384
- display: none;
1385
- }
1386
-
1387
- .lake-floating-toolbar {
1388
- position: absolute;
1389
- top: 0;
1390
- left: 0;
1391
- z-index: var(--lake-popup-z-index);
1392
- border: 1px solid var(--lake-border-color);
1393
- border-radius: 5px;
1394
- background-color: #fff;
1395
- box-shadow: 0 2px 0 #00000005;
1396
- padding: 4px;
1397
- display: flex;
1398
- flex-wrap: wrap;
1399
- align-items: center;
1400
- }
1401
- .lake-floating-toolbar .lake-toolbar-divider {
1402
- width: 1px;
1403
- height: 20px;
1404
- margin: 0 4px;
1405
- border-left: 1px solid var(--lake-border-color);
1406
- user-select: none;
1407
- }
1408
-
1409
1180
  /*! PhotoSwipe main CSS by Dmytro Semenov | photoswipe.com */
1410
1181
 
1411
1182
  .pswp {
@@ -1826,3 +1597,267 @@ div.pswp__img--placeholder,
1826
1597
  .pswp--one-slide .pswp__counter {
1827
1598
  display: none;
1828
1599
  }
1600
+
1601
+ .lake-video {
1602
+ position: relative;
1603
+ font-size: 14px;
1604
+ font-weight: normal;
1605
+ line-height: 0;
1606
+ border: 1px solid transparent;
1607
+ }
1608
+ lake-box[name="video"] .lake-box-hovered .lake-resizer {
1609
+ display: block;
1610
+ }
1611
+ .lake-video .lake-video-form {
1612
+ padding: 16px;
1613
+ line-height: normal;
1614
+ border: 1px solid var(--lake-box-border-color);
1615
+ border-radius: 4px;
1616
+ }
1617
+ .lake-video input[type="text"] {
1618
+ font-family: var(--lake-font-family);
1619
+ font-size: 14px;
1620
+ color: var(--lake-text-color);
1621
+ border-radius: 5px;
1622
+ border: 1px solid var(--lake-input-border-color);
1623
+ padding: 4px 10px;
1624
+ width: 100%;
1625
+ }
1626
+ .lake-video input[type="text"]:hover {
1627
+ border: 1px solid var(--lake-input-border-hover-color);
1628
+ }
1629
+ .lake-video input[type="text"]:focus-visible {
1630
+ outline: var(--lake-input-outline);
1631
+ outline-offset: -2px;
1632
+ }
1633
+ .lake-video .lake-row {
1634
+ padding-bottom: 8px;
1635
+ }
1636
+ .lake-video .lake-desc-row {
1637
+ padding-top: 8px;
1638
+ padding-bottom: 16px;
1639
+ color: var(--lake-secondary-text-color);
1640
+ }
1641
+ .lake-video .lake-button-row {
1642
+ padding-top: 16px;
1643
+ }
1644
+ .lake-video .lake-button-row button {
1645
+ width: 100%;
1646
+ }
1647
+
1648
+ .lake-file {
1649
+ position: relative;
1650
+ font-size: var(--lake-font-size);
1651
+ font-weight: normal;
1652
+ line-height: 0;
1653
+ border: 1px solid transparent;
1654
+ border-radius: 4px;
1655
+ }
1656
+ .lake-container[contenteditable="true"] .lake-file {
1657
+ cursor: default;
1658
+ user-select: none;
1659
+ }
1660
+ .lake-container[contenteditable="false"] .lake-file {
1661
+ cursor: pointer;
1662
+ user-select: auto;
1663
+ }
1664
+ lake-box[name="file"] .lake-box-strip {
1665
+ align-self: center;
1666
+ }
1667
+ .lake-file .lake-file-info {
1668
+ display: flex;
1669
+ align-items: center;
1670
+ }
1671
+ .lake-file .lake-file-type svg {
1672
+ width: 16px;
1673
+ height: 16px;
1674
+ margin: 4px;
1675
+ }
1676
+ .lake-file .lake-file-name {
1677
+ line-height: 24px;
1678
+ margin-right: 6px;
1679
+ color: var(--lake-link-color);
1680
+ }
1681
+ lake-box[name="file"] .lake-box-hovered .lake-file {
1682
+ background-color: var(--lake-box-background-color);
1683
+ }
1684
+ lake-box[name="file"] .lake-box-selected .lake-file {
1685
+ background-color: var(--lake-selection-background-color);
1686
+ }
1687
+ lake-box[name="file"] .lake-box-focused .lake-file {
1688
+ background-color: var(--lake-selection-background-color);
1689
+ }
1690
+ /* uploading status */
1691
+ .lake-file-uploading .lake-progress {
1692
+ display: flex;
1693
+ align-items: center;
1694
+ margin-right: 6px;
1695
+ }
1696
+ .lake-file-uploading .lake-progress svg {
1697
+ width: 16px;
1698
+ height: 16px;
1699
+ margin: 4px;
1700
+ animation: lakerotate 1s linear 0s infinite normal none;
1701
+ }
1702
+ .lake-file-uploading .lake-progress .lake-percent {
1703
+ line-height: 24px;
1704
+ margin-left: 4px;
1705
+ white-space: nowrap;
1706
+ }
1707
+ /* error status */
1708
+ .lake-file-error .lake-file-type svg {
1709
+ fill: var(--lake-error-color);
1710
+ }
1711
+ .lake-file-error .lake-file-name {
1712
+ color: var(--lake-error-color);
1713
+ }
1714
+
1715
+ .lake-emoji {
1716
+ line-height: 0;
1717
+ border: 1px solid transparent;
1718
+ border-radius: 2px;
1719
+ }
1720
+ .lake-emoji img {
1721
+ border: 0;
1722
+ border-radius: 2px;
1723
+ width: 32px;
1724
+ height: 32px;
1725
+ }
1726
+ lake-box[name="emoji"] .lake-box-focused .lake-emoji {
1727
+ border-color: var(--lake-selection-background-color);
1728
+ background-color: var(--lake-selection-background-color);
1729
+ }
1730
+
1731
+ .lake-equation {
1732
+ position: relative;
1733
+ font-weight: normal;
1734
+ border: 1px solid transparent;
1735
+ border-radius: 4px;
1736
+ }
1737
+ .lake-container[contenteditable="true"] .lake-equation {
1738
+ user-select: none;
1739
+ }
1740
+ lake-box[name="equation"] .lake-box-strip {
1741
+ align-self: center;
1742
+ }
1743
+ lake-box[name="equation"] .lake-box-selected .lake-equation {
1744
+ background-color: var(--lake-selection-background-color);
1745
+ }
1746
+ lake-box[name="equation"] .lake-box-focused .lake-equation {
1747
+ background-color: var(--lake-selection-background-color);
1748
+ }
1749
+ .lake-equation .lake-equation-view {
1750
+ padding: 0 6px;
1751
+ }
1752
+ .lake-equation .lake-equation-form {
1753
+ position: absolute;
1754
+ top: 28px;
1755
+ left: 0;
1756
+ z-index: 1;
1757
+ border: 1px solid var(--lake-border-color);
1758
+ border-radius: 5px;
1759
+ padding: 16px;
1760
+ width: fit-content;
1761
+ background-color: #fff;
1762
+ box-shadow: var(--lake-popup-shadow);
1763
+ display: none;
1764
+ }
1765
+ lake-box[name="equation"] .lake-box-focused .lake-equation-form,
1766
+ lake-box[name="equation"] .lake-box-activated .lake-equation-form {
1767
+ display: flex;
1768
+ }
1769
+ .lake-equation .lake-equation-form textarea {
1770
+ border: 0;
1771
+ font-family: Consolas, Courier, monospace;
1772
+ font-size: 14px;
1773
+ color: var(--lake-text-color);
1774
+ padding: 0;
1775
+ margin-right: 8px;
1776
+ width: 300px;
1777
+ height: 80px;
1778
+ resize: none;
1779
+ scrollbar-width: thin;
1780
+ }
1781
+ .lake-equation .lake-equation-form textarea:focus-visible {
1782
+ outline: 0;
1783
+ }
1784
+ .lake-equation .lake-equation-form .lake-button-row {
1785
+ display: flex;
1786
+ flex-direction: column;
1787
+ justify-content: space-between;
1788
+ align-items: flex-end;
1789
+ }
1790
+ /* error status */
1791
+ .lake-equation-error {
1792
+ padding: 0 6px;
1793
+ font-size: 14px;
1794
+ color: var(--lake-error-color);
1795
+ background-color: var(--lake-box-background-color);
1796
+ }
1797
+
1798
+ .lake-mention-menu {
1799
+ max-height: 208px;
1800
+ }
1801
+ .lake-mention-menu .lake-mention-avatar {
1802
+ margin-inline-end: 8px;
1803
+ line-height: 0;
1804
+ }
1805
+ .lake-mention-menu .lake-mention-avatar img {
1806
+ border-radius: 100%;
1807
+ width: 32px;
1808
+ height: 32px;
1809
+ }
1810
+ .lake-mention-menu .lake-mention-nickname {
1811
+ margin-inline-end: 4px;
1812
+ font-weight: 500;
1813
+ color: var(--lake-text-color);
1814
+ white-space: nowrap;
1815
+ }
1816
+ .lake-mention-menu .lake-mention-name {
1817
+ color: #8c8c8c;
1818
+ }
1819
+
1820
+ .lake-mention {
1821
+ border: 1px solid transparent;
1822
+ border-radius: 2px;
1823
+ }
1824
+ .lake-container[readonly="false"] .lake-mention a:hover {
1825
+ color: var(--lake-link-color);
1826
+ text-decoration: none;
1827
+ }
1828
+ lake-box[name="mention"] .lake-box-focused .lake-mention {
1829
+ border-color: var(--lake-selection-background-color);
1830
+ background-color: var(--lake-selection-background-color);
1831
+ }
1832
+
1833
+ .lake-slash-menu {
1834
+ max-height: 330px;
1835
+ }
1836
+ .lake-slash-menu .lake-menu-item input[type="file"] {
1837
+ display: none;
1838
+ }
1839
+ .lake-slash-menu .lake-slash-icon {
1840
+ margin-inline-end: 8px;
1841
+ border-radius: 5px;
1842
+ border: 1px solid var(--lake-border-color);
1843
+ background-color: #fff;
1844
+ line-height: 0;
1845
+ }
1846
+ .lake-slash-menu .lake-slash-icon svg,
1847
+ .lake-slash-menu .lake-slash-icon img {
1848
+ width: 32px;
1849
+ height: 32px;
1850
+ margin: 6px;
1851
+ }
1852
+ .lake-slash-menu .lake-slash-text {
1853
+ display: flex;
1854
+ flex-direction: column;
1855
+ justify-content: center;
1856
+ }
1857
+ .lake-slash-menu .lake-slash-title {
1858
+ font-weight: 500;
1859
+ color: var(--lake-text-color);
1860
+ }
1861
+ .lake-slash-menu .lake-slash-description {
1862
+ color: #8c8c8c;
1863
+ }