@seafile/sdoc-editor 0.1.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 (219) hide show
  1. package/README.md +51 -0
  2. package/TODO.md +55 -0
  3. package/dist/assets/css/comment-dialog.css +50 -0
  4. package/dist/assets/css/diff-viewer.css +105 -0
  5. package/dist/assets/css/formula.css +19 -0
  6. package/dist/assets/css/history-viewer.css +104 -0
  7. package/dist/assets/css/image.css +134 -0
  8. package/dist/assets/css/issue-card.css +43 -0
  9. package/dist/assets/css/keyboard-shortcuts.css +58 -0
  10. package/dist/assets/css/link.css +7 -0
  11. package/dist/assets/css/markdown-editor.css +12 -0
  12. package/dist/assets/css/markdown-viewer.css +69 -0
  13. package/dist/assets/css/navbar-imgbutton.css +83 -0
  14. package/dist/assets/css/new-editor-toolbar.css +52 -0
  15. package/dist/assets/css/new-editor.css +39 -0
  16. package/dist/assets/css/outline.css +29 -0
  17. package/dist/assets/css/table.css +57 -0
  18. package/dist/assets/css/textlink-hovermenu.css +47 -0
  19. package/dist/assets/css/topbar.css +350 -0
  20. package/dist/assets/css/tree-view.css +67 -0
  21. package/dist/assets/css/user-help.css +84 -0
  22. package/dist/assets/editor/plain-editor.css +30 -0
  23. package/dist/assets/editor/seatable-editor.css +77 -0
  24. package/dist/assets/editor/simple-editor.css +77 -0
  25. package/dist/components/click-outside.js +46 -0
  26. package/dist/components/context-menu.js +97 -0
  27. package/dist/components/dialogs/add-formula-dialog.js +116 -0
  28. package/dist/components/dialogs/add-image-dialog.js +69 -0
  29. package/dist/components/dialogs/add-link-dialog.js +133 -0
  30. package/dist/components/dialogs/comment-dialog.js +97 -0
  31. package/dist/components/dialogs/shortcut-dialog.js +131 -0
  32. package/dist/components/error-boundary.js +28 -0
  33. package/dist/components/load-script/index.js +69 -0
  34. package/dist/components/loading.js +25 -0
  35. package/dist/components/markdown-lint.js +72 -0
  36. package/dist/components/menu/index.js +4 -0
  37. package/dist/components/menu/item.js +49 -0
  38. package/dist/components/menu/menu.js +38 -0
  39. package/dist/components/menu/style.css +42 -0
  40. package/dist/components/modal-portal.js +38 -0
  41. package/dist/components/outline/index.js +92 -0
  42. package/dist/components/outline/outline-item.js +58 -0
  43. package/dist/components/select/_option.js +44 -0
  44. package/dist/components/select/field-setting.js +106 -0
  45. package/dist/components/select/index.js +149 -0
  46. package/dist/components/select/style.css +144 -0
  47. package/dist/components/svg-icons/check-mark-icon.js +14 -0
  48. package/dist/components/svg-icons/column-icon.js +17 -0
  49. package/dist/components/svg-icons/text-icon.js +34 -0
  50. package/dist/components/text-link-hover-menu/index.js +123 -0
  51. package/dist/components/toast/alert.js +138 -0
  52. package/dist/components/toast/index.js +3 -0
  53. package/dist/components/toast/toast.js +159 -0
  54. package/dist/components/toast/toastManager.js +139 -0
  55. package/dist/components/toast/toaster.js +65 -0
  56. package/dist/components/toolbar/header-list.js +114 -0
  57. package/dist/components/toolbar/help-group.js +33 -0
  58. package/dist/components/toolbar/index.js +4 -0
  59. package/dist/components/toolbar/insert-image.js +106 -0
  60. package/dist/components/toolbar/insert-table.js +136 -0
  61. package/dist/components/toolbar/table-group.js +74 -0
  62. package/dist/components/toolbar/toolbar.js +317 -0
  63. package/dist/components/toolbar/widgets/button-group.js +24 -0
  64. package/dist/components/toolbar/widgets/button-item.js +129 -0
  65. package/dist/components/toolbar/widgets/drop-list.js +88 -0
  66. package/dist/components/user-help/index.js +179 -0
  67. package/dist/config-0.js +15 -0
  68. package/dist/config.js +16 -0
  69. package/dist/constants/cell-types.js +29 -0
  70. package/dist/constants/column.js +4 -0
  71. package/dist/containers/code-highlight-package.js +14 -0
  72. package/dist/containers/controller/block-element-controller.js +375 -0
  73. package/dist/containers/controller/index.js +5 -0
  74. package/dist/containers/controller/inline-element-controller.js +134 -0
  75. package/dist/containers/controller/normalize-controller.js +95 -0
  76. package/dist/containers/controller/shortcut-controller.js +385 -0
  77. package/dist/containers/controller/void-element-controller.js +9 -0
  78. package/dist/containers/custom/custom.js +18 -0
  79. package/dist/containers/custom/get-event-transfer.js +33 -0
  80. package/dist/containers/custom/getNodesByTypeAtRange.js +57 -0
  81. package/dist/containers/custom/insertNodes.js +120 -0
  82. package/dist/containers/custom/is-empty-paragraph.js +9 -0
  83. package/dist/containers/custom/set-event-transfer.js +30 -0
  84. package/dist/containers/custom/split-nodes-at-point.js +136 -0
  85. package/dist/containers/custom/unwrap-node-by-type-at-range.js +70 -0
  86. package/dist/containers/editor-context.js +85 -0
  87. package/dist/containers/editor-utils/block-element-utils/blockquote-utils.js +80 -0
  88. package/dist/containers/editor-utils/block-element-utils/code-utils.js +145 -0
  89. package/dist/containers/editor-utils/block-element-utils/formula-utils.js +51 -0
  90. package/dist/containers/editor-utils/block-element-utils/index.js +31 -0
  91. package/dist/containers/editor-utils/block-element-utils/list-utils.js +395 -0
  92. package/dist/containers/editor-utils/block-element-utils/table-utils.js +412 -0
  93. package/dist/containers/editor-utils/clear-format-utils.js +84 -0
  94. package/dist/containers/editor-utils/common-editor-utils.js +492 -0
  95. package/dist/containers/editor-utils/inline-element-utils/index.js +95 -0
  96. package/dist/containers/editor-utils/mark-utils.js +20 -0
  97. package/dist/containers/editor-utils/range-utils.js +7 -0
  98. package/dist/containers/editor-utils/selection-utils.js +30 -0
  99. package/dist/containers/editor-utils/text-utils.js +117 -0
  100. package/dist/containers/editor-widgets/check-list-item.js +53 -0
  101. package/dist/containers/editor-widgets/code-block.js +128 -0
  102. package/dist/containers/editor-widgets/column.js +100 -0
  103. package/dist/containers/editor-widgets/formula.js +67 -0
  104. package/dist/containers/editor-widgets/image.js +237 -0
  105. package/dist/containers/editor-widgets/link.js +9 -0
  106. package/dist/containers/editor-widgets/table.js +144 -0
  107. package/dist/containers/element-model/blockquote.js +13 -0
  108. package/dist/containers/element-model/column.js +19 -0
  109. package/dist/containers/element-model/image.js +16 -0
  110. package/dist/containers/element-model/link.js +16 -0
  111. package/dist/containers/element-model/table.js +57 -0
  112. package/dist/containers/element-model/text.js +10 -0
  113. package/dist/containers/render-utils/common-utils.js +80 -0
  114. package/dist/containers/render-utils/editor-utils.js +133 -0
  115. package/dist/containers/render-utils/viewer-utils.js +198 -0
  116. package/dist/containers/viewer-widgets/viewer-formula/index.js +54 -0
  117. package/dist/containers/viewer-widgets/viewer-image/index.js +70 -0
  118. package/dist/containers/viewer-widgets/viewer-image/viewer-image.css +3 -0
  119. package/dist/editors/index.js +78 -0
  120. package/dist/editors/markdown-editor.js +280 -0
  121. package/dist/editors/plain-markdown-editor.js +285 -0
  122. package/dist/editors/seatable-editor.js +210 -0
  123. package/dist/editors/simple-editor.js +200 -0
  124. package/dist/index.js +36 -0
  125. package/dist/new-editors/editor.js +77 -0
  126. package/dist/slate-extension/constants/index.js +49 -0
  127. package/dist/slate-extension/core/index.js +3 -0
  128. package/dist/slate-extension/core/queries/index.js +298 -0
  129. package/dist/slate-extension/core/transforms/focus-editor.js +11 -0
  130. package/dist/slate-extension/core/transforms/index.js +2 -0
  131. package/dist/slate-extension/core/transforms/move-children.js +28 -0
  132. package/dist/slate-extension/core/utils/index.js +17 -0
  133. package/dist/slate-extension/index.js +15 -0
  134. package/dist/slate-extension/menu/index.js +4 -0
  135. package/dist/slate-extension/menu/menu-group.js +27 -0
  136. package/dist/slate-extension/menu/menu-item.js +81 -0
  137. package/dist/slate-extension/menu/menu.css +34 -0
  138. package/dist/slate-extension/plugins/blockquote/helpers.js +49 -0
  139. package/dist/slate-extension/plugins/blockquote/index.js +14 -0
  140. package/dist/slate-extension/plugins/blockquote/menu/index.js +57 -0
  141. package/dist/slate-extension/plugins/blockquote/model.js +11 -0
  142. package/dist/slate-extension/plugins/blockquote/plugin.js +50 -0
  143. package/dist/slate-extension/plugins/blockquote/render-elem.js +7 -0
  144. package/dist/slate-extension/plugins/check-list/helpers.js +44 -0
  145. package/dist/slate-extension/plugins/check-list/index.js +7 -0
  146. package/dist/slate-extension/plugins/check-list/menu/index.js +56 -0
  147. package/dist/slate-extension/plugins/check-list/model.js +12 -0
  148. package/dist/slate-extension/plugins/check-list/plugin.js +50 -0
  149. package/dist/slate-extension/plugins/check-list/render-elem.js +67 -0
  150. package/dist/slate-extension/plugins/header/helpers.js +40 -0
  151. package/dist/slate-extension/plugins/header/index.js +10 -0
  152. package/dist/slate-extension/plugins/header/menu/index.js +115 -0
  153. package/dist/slate-extension/plugins/header/plugin.js +51 -0
  154. package/dist/slate-extension/plugins/header/render-elem.js +11 -0
  155. package/dist/slate-extension/plugins/index.js +8 -0
  156. package/dist/slate-extension/plugins/list/helpers.js +43 -0
  157. package/dist/slate-extension/plugins/list/index.js +11 -0
  158. package/dist/slate-extension/plugins/list/menu/index.js +69 -0
  159. package/dist/slate-extension/plugins/list/model.js +11 -0
  160. package/dist/slate-extension/plugins/list/plugin/index.js +34 -0
  161. package/dist/slate-extension/plugins/list/plugin/insert-break-list.js +23 -0
  162. package/dist/slate-extension/plugins/list/plugin/normalize-list.js +88 -0
  163. package/dist/slate-extension/plugins/list/plugin/on-tab-handle.js +45 -0
  164. package/dist/slate-extension/plugins/list/queries/index.js +47 -0
  165. package/dist/slate-extension/plugins/list/render-elem.js +22 -0
  166. package/dist/slate-extension/plugins/list/transforms/index.js +11 -0
  167. package/dist/slate-extension/plugins/list/transforms/insert-list-item.js +98 -0
  168. package/dist/slate-extension/plugins/list/transforms/move-list-item-down.js +46 -0
  169. package/dist/slate-extension/plugins/list/transforms/move-list-item-up.js +127 -0
  170. package/dist/slate-extension/plugins/list/transforms/move-list-items-to-list.js +56 -0
  171. package/dist/slate-extension/plugins/list/transforms/move-list-items.js +67 -0
  172. package/dist/slate-extension/plugins/list/transforms/normalize-list-item.js +123 -0
  173. package/dist/slate-extension/plugins/list/transforms/normalize-nested-list.js +33 -0
  174. package/dist/slate-extension/plugins/list/transforms/remove-first-list-item.js +17 -0
  175. package/dist/slate-extension/plugins/list/transforms/toggle-list.js +160 -0
  176. package/dist/slate-extension/plugins/list/transforms/unwrap-list.js +55 -0
  177. package/dist/slate-extension/plugins/text-style/index.js +5 -0
  178. package/dist/slate-extension/plugins/text-style/model.js +11 -0
  179. package/dist/slate-extension/plugins/text-style/render-elem.js +29 -0
  180. package/dist/slate-extension/render/render-element.js +62 -0
  181. package/dist/slate-extension/render/render-leaf.js +8 -0
  182. package/dist/slate-extension/toolbar/index.js +42 -0
  183. package/dist/utils/deserialize-html.js +260 -0
  184. package/dist/utils/diff/compare-strings.js +35 -0
  185. package/dist/utils/diff/diff.js +769 -0
  186. package/dist/utils/diff/index.js +2 -0
  187. package/dist/utils/seafile-markdown2html.js +52 -0
  188. package/dist/utils/slate2markdown/deserialize.js +588 -0
  189. package/dist/utils/slate2markdown/index.js +3 -0
  190. package/dist/utils/slate2markdown/serialize.js +366 -0
  191. package/dist/utils/utils.js +69 -0
  192. package/dist/viewer/diff-viewer.js +85 -0
  193. package/dist/viewer/index.js +4 -0
  194. package/dist/viewer/markdown-viewer.js +121 -0
  195. package/dist/viewer/seatable-viewer.js +63 -0
  196. package/dist/viewer/slate-viewer.js +71 -0
  197. package/package.json +161 -0
  198. package/public/favicon.ico +0 -0
  199. package/public/index.html +45 -0
  200. package/public/locales/cs/seafile-editor.json +169 -0
  201. package/public/locales/de/seafile-editor.json +169 -0
  202. package/public/locales/en/seafile-editor.json +226 -0
  203. package/public/locales/es/seafile-editor.json +169 -0
  204. package/public/locales/es-AR/seafile-editor.json +169 -0
  205. package/public/locales/es-MX/seafile-editor.json +169 -0
  206. package/public/locales/fr/seafile-editor.json +169 -0
  207. package/public/locales/it/seafile-editor.json +169 -0
  208. package/public/locales/ru/seafile-editor.json +169 -0
  209. package/public/locales/zh-CN/seafile-editor.json +222 -0
  210. package/public/manifest.json +15 -0
  211. package/public/media/scripts/mathjax/tex-svg.js +1 -0
  212. package/public/media/seafile-editor-font/iconfont.eot +0 -0
  213. package/public/media/seafile-editor-font/iconfont.svg +121 -0
  214. package/public/media/seafile-editor-font/iconfont.ttf +0 -0
  215. package/public/media/seafile-editor-font/iconfont.woff +0 -0
  216. package/public/media/seafile-editor-font/iconfont.woff2 +0 -0
  217. package/public/media/seafile-editor-font.css +222 -0
  218. package/public/media/seafile-logo.png +0 -0
  219. package/public/media/seafile-ui.css +9 -0
package/README.md ADDED
@@ -0,0 +1,51 @@
1
+ # Seafile-editor
2
+
3
+ 项目是基于 react-slate 组件库的二次封装, 用于满足公司富文本编辑器的使用需求
4
+
5
+ ## 目录结构
6
+
7
+ ```
8
+ seafile-editor/
9
+ dist // 打包后的文件
10
+ node_modules/ // 依赖第三方组件库
11
+ public/ // 公共资源文件库
12
+ index.html
13
+ favicon.ico
14
+ site(demo 模块, 基于组件库创建的测试模块)
15
+ _i18n // 国际化模块
16
+ api // api 模块
17
+ assets // css 文件, 图片文件
18
+ commons // 公共组件
19
+ components // 应用组件
20
+ containers // 容器组件
21
+ pages // 页面组件
22
+ app.js // 应用对象
23
+ index.html // 主页
24
+ index.js // 应用入口
25
+ setting.js // 应用配置文件
26
+ setting.local.dist.js // 应用配置模版
27
+ setting.local.dist // 用户基于 setting.local.dist.js copy 一份的配置文件
28
+ src/(组件库)
29
+ assets // css 文件, 资源文件
30
+ components // 封装的视图组件
31
+ editor // 封装的编辑器组件
32
+ lib // 底层接口
33
+ utils // 工具接口
34
+ viewer // 封装的视图组件
35
+ index.js // 组件库导出内容入口文件
36
+ tests // 测试
37
+ webpack // site 打包文件
38
+ config.js // site 打包配置文件
39
+ dev-server.js // site 后端服务器
40
+ package.json
41
+ readme.md // 组件库说明文档
42
+ ```
43
+
44
+ ## 本地测试步骤
45
+ 1. 新增本地配置文件 setting.local.js(基于 /site/setting.local.dist.js copy 一份)
46
+ 2. 在 seahub 项目创建一个测试文件, 根据需要的配置信息完善配置内容
47
+ 3. 执行 npm run start, 启动测试服务, 可以打开相应的网址, 对封装的组件进行测试
48
+
49
+ ## 新版本发布
50
+ 1. 更新 package.json 中的 version 属性
51
+ 2. 执行 npm publish 完成新版本发布
package/TODO.md ADDED
@@ -0,0 +1,55 @@
1
+ ## Version beta 1
2
+
3
+ Release data: 2018.05.30
4
+
5
+ * [X] Support table (https://github.com/GitbookIO/slate-edit-table)
6
+ * [X] Support coding blocks
7
+ * [X] Support list editing (https://github.com/GitbookIO/slate-edit-list)
8
+ * [X] Support images
9
+
10
+ ### Image
11
+
12
+ * [x] Slate image node
13
+ * [x] renderNode() supports readering image node to <img>
14
+ * [x] Add image icon, click image icon, popup a dialog to let user input an image
15
+
16
+ ## Version beta 2
17
+
18
+ * [x] Improve table
19
+ * [x] Improve CSS
20
+ * [x] Copy/paste image from clipboard
21
+ * [-] Improve code block
22
+ * [-] Change toolbar button icons
23
+ * [-] Support task list
24
+
25
+ ### Tree view
26
+
27
+ * [-] Folder/File icons
28
+ * [-] Click and show content
29
+ * [-] Drag and create link
30
+
31
+ ## Version beta 3
32
+
33
+ * Switch to plain markdown editor
34
+
35
+
36
+ ## Future versions
37
+
38
+
39
+ Not important
40
+
41
+ * Support quotation
42
+
43
+ Integrating into Seafile
44
+
45
+ * Support TOC
46
+
47
+ ### Tree view
48
+
49
+ * [] Add file
50
+
51
+
52
+
53
+ ### Plain react markdown editor
54
+
55
+ https://github.com/rexxars/react-markdown
@@ -0,0 +1,50 @@
1
+ .seafile-editor-comment.comment-dialog {
2
+ width: 500px;
3
+ position: absolute;
4
+ top: 30%;
5
+ right: 0;
6
+ padding: 15px;
7
+ background-color: #fafafa;
8
+ border: 1px solid rgba(0,0,0,.2);
9
+ border-radius: .3rem;
10
+ box-shadow: 0 0 3px #ccc;
11
+ z-index: 1000;
12
+ }
13
+
14
+ .seafile-editor-comment.comment-dialog .comment-dialog-triangle {
15
+ position: absolute;
16
+ left: -5px;
17
+ top: 50%;
18
+ transform: rotate(45deg);
19
+ border: 1px solid rgba(0,0,0,.2);
20
+ border-top: none;
21
+ border-right: none;
22
+ width: 10px;
23
+ height: 10px;
24
+ background-color: #fafafa;
25
+ box-shadow: -1px 1px #ccc;
26
+ }
27
+
28
+ .seafile-editor-comment.comment-dialog textarea {
29
+ width: 100%;
30
+ min-height: 100px;
31
+ max-height: 300px;
32
+ padding: 5px;
33
+ background-color: #fff;
34
+ }
35
+
36
+ .seafile-editor-comment.comment-dialog .button-group .btn {
37
+ margin-right: 10px;
38
+ }
39
+
40
+ .seafile-editor-comment.comment-dialog .comment-dialog-quote {
41
+ margin-top: 10px;
42
+ max-height: 6rem;
43
+ overflow: auto;
44
+ padding-left: 1rem;
45
+ }
46
+
47
+ .seafile-editor-comment.comment-dialog .comment-dialog-quote ul,
48
+ .seafile-editor-comment.comment-dialog .comment-dialog-quote ol {
49
+ padding-left: 1rem;
50
+ }
@@ -0,0 +1,105 @@
1
+ .diff-added {
2
+ padding: 0 5px;
3
+ margin: 0 -5px;
4
+ background-color: #e6ffed;
5
+ overflow: hidden;
6
+ }
7
+
8
+ .diff-removed {
9
+ padding: 0 5px;
10
+ margin: 0 -5px;
11
+ overflow: hidden;
12
+ background-color: #ffeef0;
13
+ }
14
+
15
+ .diff-removed * {
16
+ border-left: none;
17
+ padding-left: 0
18
+ }
19
+
20
+ .diff-added * {
21
+ padding-left: 0;
22
+ border-left: none;
23
+ }
24
+
25
+
26
+ .diff-replaced {
27
+ padding-left: 2px;
28
+ margin-left: -5px;
29
+ border-left: 3px solid #f9c513;
30
+ }
31
+
32
+ .diff-replaced .diff-added {
33
+ background-color: #e6ffed;
34
+ margin-left: 0;
35
+ padding-left: 0;
36
+ overflow: visible;
37
+ }
38
+
39
+ .diff-replaced .diff-removed {
40
+ overflow: visible;
41
+ padding-left: 0;
42
+ color: #cb2431;
43
+ margin-left: 0;
44
+ background-color: #ffeef0;
45
+ }
46
+
47
+ .diff-replaced .diff-replaced {
48
+ border-left: none;
49
+ margin-left: 0;
50
+ overflow: visible;
51
+ }
52
+
53
+ .diff-replaced .diff-removed-container {
54
+ padding: 0 5px;
55
+ margin: 0 -5px;
56
+ background-color: #ffeef0;
57
+ box-sizing: border-box;
58
+ overflow: hidden;
59
+ }
60
+
61
+ .diff-replaced .diff-added-container {
62
+ padding: 0 5px;
63
+ margin: 0 -5px;
64
+ background-color: #e6ffed;
65
+ box-sizing: border-box;
66
+ overflow: hidden;
67
+ }
68
+
69
+
70
+ .diff-replaced table .diff-added {
71
+ background-color: #e6ffed;
72
+ padding: 0 0;
73
+ margin: 0;
74
+ }
75
+
76
+ .diff-replaced table .diff-removed {
77
+ background-color: #ffeef0;
78
+ margin: 0;
79
+ padding: 0 0;
80
+ }
81
+
82
+ .diff-replaced table tr.diff-replaced {
83
+ padding-left: 0;
84
+ }
85
+
86
+ .diff-replaced del {
87
+ background-color: #fdb8c0;
88
+ text-decoration: none;
89
+ color: #cb2431;
90
+ }
91
+
92
+ .diff-replaced ins {
93
+ background-color: #acf2bd;
94
+ text-decoration: none;
95
+ }
96
+
97
+ .article .diff-replaced .old-paragraph {
98
+ background-color: #ffeef0;
99
+ margin-bottom: 0;
100
+ }
101
+
102
+ .article .diff-replaced .new-paragraph {
103
+ background-color: #e6ffed;
104
+ margin-top: 0;
105
+ }
@@ -0,0 +1,19 @@
1
+ .seafile-editor-module .selected-formula {
2
+ outline: 2px solid #007bff;
3
+ }
4
+
5
+ .seafile-editor-module .block-formula {
6
+ display: block;
7
+ user-select: none;
8
+ }
9
+
10
+ .seafile-editor-module .MathJax {
11
+ margin: 0;
12
+ }
13
+
14
+ .formula-preview {
15
+ padding: 10px;
16
+ border: 2px dashed #ebebeb;
17
+ min-height: 40px;
18
+ overflow-x: auto;
19
+ }
@@ -0,0 +1,104 @@
1
+ .seafile-history-side-panel {
2
+ user-select: none;
3
+ border-left: 1px solid #e5e5e5;
4
+ background-color: #fff;
5
+ display: flex;
6
+ flex-direction: column;
7
+ flex: 0 0 auto;
8
+ }
9
+
10
+ .history-side-panel-title {
11
+ height: 50px;
12
+ border-bottom: 1px solid #e5e5e5;
13
+ line-height: 50px;
14
+ font-size: 1rem;
15
+ padding: 0 10px;
16
+ box-sizing: border-box;
17
+ background-color: rgb(250,250,249);
18
+ display: flex;
19
+ flex-direction: row;
20
+ justify-content: space-between;
21
+ }
22
+
23
+ .history-side-panel-title .history-tile-text {
24
+ font-weight: bolder;
25
+ }
26
+
27
+
28
+ .history-side-panel-title .history-title-close {
29
+ color: #b9b9b9;
30
+ }
31
+
32
+ .history-side-panel-title .history-title-close:hover {
33
+ color: #888;
34
+ }
35
+
36
+
37
+ .history-list-container {
38
+ height: calc(100% - 36px);
39
+ overflow-y: hidden;
40
+ }
41
+ .history-list-container:hover {
42
+ overflow-y: auto;
43
+ }
44
+
45
+ .item-active {
46
+ background-color: #fdc297;
47
+ }
48
+
49
+ .history-item-container {
50
+ padding: 0.5rem .8rem;
51
+ }
52
+
53
+ .history-item-container:not(.item-active):hover {
54
+ background-color: #ffe7d5;
55
+ }
56
+
57
+ .history-item-container div {
58
+ width: 100%;
59
+ }
60
+
61
+ .history-item-container .owner {
62
+ margin-top: 0.2rem;
63
+ }
64
+
65
+ .history-item-container .owner i {
66
+ color: #549b5a;
67
+ font-size: 0.2rem;
68
+ margin-right: 0.2rem;
69
+ vertical-align: middle;
70
+ }
71
+
72
+ .history-item-container .owner span {
73
+ vertical-align: middle;
74
+ }
75
+
76
+ .diff-container {
77
+ flex: 1 1 auto;
78
+ overflow: auto;
79
+ box-sizing: border-box;
80
+ }
81
+
82
+ .diff-wrapper {
83
+ width: 90%;
84
+ border: 1px solid #e5e5e5;
85
+ margin: 20px auto;
86
+ background-color: #fff;
87
+ min-height: calc(100% - 40px);
88
+ padding: 70px 75px;
89
+ }
90
+
91
+ @media (max-width:991.8px) {
92
+ .diff-container {
93
+ width: 100%;
94
+ box-sizing: border-box;
95
+ }
96
+ .diff-wrapper {
97
+ padding: 20px;
98
+ }
99
+ }
100
+ @media (min-width:992px) {
101
+ .seafile-history-side-panel {
102
+ width: 260px;
103
+ }
104
+ }
@@ -0,0 +1,134 @@
1
+ .seafile-ed-image {
2
+ position: relative;
3
+ display: inline-block;
4
+ max-width: 100%;
5
+ }
6
+
7
+ .seafile-ed-image .seafile-ed-image-inResizing {
8
+ box-shadow: 0 0 0 2px #007bff;
9
+ }
10
+
11
+ .seafile-ed-image .image-resizer {
12
+ width: 10px;
13
+ height: 10px;
14
+ position: absolute;
15
+ right: -5px;
16
+ bottom: -5px;
17
+ transform: ();
18
+ background-color: #007bff;
19
+ border: 1px solid #fff;
20
+ cursor: se-resize;
21
+ }
22
+
23
+ .image-size {
24
+ display: inline-block;
25
+ padding: 5px;
26
+ height: 22px;
27
+ position: absolute;
28
+ bottom: -25px;
29
+ left: 100%;
30
+ transform: translateX(5px);
31
+ border-radius: 3px;
32
+ line-height: 12px;
33
+ color: #fff;
34
+ background-color: #4c4c4c;
35
+ font-size: 12px;
36
+ }
37
+
38
+ .seafile-ed-image .image-full-button {
39
+ position: absolute;
40
+ height: 26px;
41
+ display: inline-block;
42
+ width: 26px;
43
+ top: 0;
44
+ right: -32px;
45
+ text-align: center;
46
+ line-height: 20px;
47
+ padding: 2px;
48
+ box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.2);
49
+ border-radius: 3px;
50
+ border: 1px solid rgba(0, 40, 100, 0.12);
51
+ background-color: #fff;
52
+ user-select: none!important;
53
+ z-index: 1000;
54
+ }
55
+
56
+ .seafile-ed-image-viwer:hover .image-full-button {
57
+ display: inline-block;
58
+ }
59
+
60
+ .seafile-ed-image-viwer .image-full-button {
61
+ position: absolute;
62
+ top: 5px;
63
+ right: 5px;
64
+ display: none;
65
+ background-color: #efefef;
66
+ cursor: pointer;
67
+ }
68
+
69
+ .image-full-button:hover{
70
+ display: block;
71
+ background-color: #efefef;
72
+ }
73
+
74
+ .image-tooltip {
75
+ display: none;
76
+ position: absolute;
77
+ box-shadow: 0 0px 5px rgba(0, 0, 0, 0.2);
78
+ left: 50%;
79
+ bottom: -10px;
80
+ transform: translate(-50%, 100%);
81
+ background: #fff;
82
+ padding: 2px;
83
+ border-radius: 2px;
84
+ white-space:nowrap;
85
+ }
86
+
87
+ .image-tooltip::before{
88
+ position: absolute;
89
+ content: '';
90
+ top: -5px;
91
+ left: 50%;
92
+ margin-left: -5px;
93
+ transform: rotate(45deg);
94
+ border-width: 5px;
95
+ border-style: solid;
96
+ box-shadow: -2px -2px 3px rgba(0, 0, 0, 0.1);
97
+ border-color:#fff transparent transparent #fff;
98
+ }
99
+
100
+ .image-full-button:hover .image-tooltip {
101
+ display: inline;
102
+ }
103
+
104
+ /* set button font style in image previewer */
105
+ .sf-editor-image-previewer button.dtable-icon-fork-number,
106
+ .sf-editor-image-previewer .dtable-icon-right,
107
+ .sf-editor-image-previewer .dtable-icon-left {
108
+ font-family: "iconfont" !important;
109
+ font-style: normal;
110
+ -webkit-font-smoothing: antialiased;
111
+ -moz-osx-font-smoothing: grayscale;
112
+ }
113
+
114
+ .sf-editor-image-previewer button.dtable-icon-fork-number {
115
+ font-size: 16px;
116
+ line-height: normal;
117
+ }
118
+
119
+ .sf-editor-image-previewer .dtable-icon-left:before {
120
+ content: "\e756";
121
+ }
122
+
123
+ .sf-editor-image-previewer .dtable-icon-right:before {
124
+ content: "\e755";
125
+ }
126
+
127
+ .sf-editor-image-previewer .dtable-icon-fork-number:before {
128
+ content: "\e6ce";
129
+ }
130
+
131
+ .sf-editor-image-previewer.ril__outer .ril__navButtonPrev.dtable-font,
132
+ .sf-editor-image-previewer.ril__outer .ril__navButtonNext.dtable-font {
133
+ padding: 40px 30px 80px;
134
+ }
@@ -0,0 +1,43 @@
1
+ .issue-container {
2
+ width: 100%;
3
+ padding: 0 10px 10px 10px;
4
+ margin-top: -10px;
5
+ }
6
+
7
+ .issue-card {
8
+ background-color: #fff;
9
+ border: 1px solid rgba(0, 40, 100, 0.12);
10
+ border-radius: 5px;
11
+ padding-left: 5px;
12
+ margin-top: 10px;
13
+ position: relative;
14
+ word-break: break-word;
15
+ box-shadow: 0 5px 5px -2px rgba(200,200,200, 0.5);
16
+ }
17
+
18
+ .issue-card:before {
19
+ position: absolute;
20
+ left: 0;
21
+ top: 0;
22
+ bottom: 0;
23
+ width: 3px;
24
+ content: '';
25
+ background-color: rgb(217, 130, 43);
26
+ border-radius: 3px 0 0 3px;
27
+ }
28
+ .issue-card-title {
29
+ font-size: 16px;
30
+ padding: 5px 10px 3px 10px;
31
+ }
32
+
33
+ .issue-card-description {
34
+ padding: 0 10px 5px 10px;
35
+ color: #aaa;
36
+ }
37
+
38
+ .size-panel-no-content {
39
+ width: 100%;
40
+ text-align: center;
41
+ color: #9a9a9a;
42
+ padding-top: 10px;
43
+ }
@@ -0,0 +1,58 @@
1
+ .keyboard-shortcut-dialog {
2
+ max-width: 500px;
3
+ }
4
+
5
+ .keyboard-shortcut-dialog .modal-body {
6
+ max-height: 390px;
7
+ overflow: auto;
8
+ }
9
+
10
+ .keyboard-shortcut-container {
11
+ line-height: 1.5;
12
+ border-radius: 3px;
13
+ padding-top: .5rem;
14
+ padding-bottom: .5rem;
15
+ box-sizing: border-box;
16
+ display: flex;
17
+ align-items: center;
18
+ margin-top: 3px;
19
+ background-color: rgb(248, 248, 248);
20
+ }
21
+
22
+ .keyboard-shortcut-title {
23
+ font-size: 0.9rem;
24
+ }
25
+
26
+ .keyboard-shortcut-container>div:first-child {
27
+ text-align: right;
28
+ }
29
+
30
+ .keyboard-shortcut-container>div:last-child {
31
+ padding-left: 1rem;
32
+ padding-right: 1rem;
33
+ }
34
+
35
+ .keyboard-shortcut {
36
+ display: inline-block;
37
+ }
38
+
39
+ .keyboard-shortcut kbd {
40
+ font: inherit;
41
+ background-color: hsla(0,0%,100%,0.25);
42
+ border-color: rgba(0,0,0,0.1);
43
+ text-transform: uppercase;
44
+ text-align: center;
45
+ border-radius: 3px;
46
+ color: #333333;
47
+ box-sizing: border-box;
48
+ border-style: solid;
49
+ border-width: 1px;
50
+ display: inline-block;
51
+ border-bottom-width: 2px;
52
+ font-size: 12px;
53
+ margin-left: 1px;
54
+ margin-right: 1px;
55
+ margin-bottom: 0px;
56
+ min-width: 12px;
57
+ padding: 1px 3px;
58
+ }
@@ -0,0 +1,7 @@
1
+ .article .virtual-link {
2
+ color: #eb8205;
3
+ }
4
+
5
+ .article .virtual-link:hover {
6
+ text-decoration: underline;
7
+ }
@@ -0,0 +1,12 @@
1
+ .rendered-markdown.article {
2
+ padding:0 20px 20px;
3
+ }
4
+
5
+ .rendered-markdown tbody tr:first-child {
6
+ font-weight: 400;
7
+ }
8
+
9
+ .CodeMirror {
10
+ height: auto;
11
+ font-size: 0.8125rem;
12
+ }
@@ -0,0 +1,69 @@
1
+ #root {
2
+ height: 100%;
3
+ }
4
+ .seafile-md-viewer-content .article {
5
+ padding: 0;
6
+ }
7
+ .seafile-md-viewer-content {
8
+ background: #fff;
9
+ padding: 70px 75px;
10
+ border:1px solid #e6e6dd;
11
+ min-height: calc(100% - 60px);
12
+ }
13
+ .seafile-md-viewer-outline-heading2,
14
+ .seafile-md-viewer-outline-heading3 {
15
+ margin-left: .75rem;
16
+ line-height: 2.5;
17
+ color:#666;
18
+ white-space: nowrap;
19
+ overflow:hidden;
20
+ text-overflow:ellipsis;
21
+ cursor:pointer;
22
+ }
23
+ .seafile-md-viewer-outline-heading3 {
24
+ margin-left: 2rem;
25
+ }
26
+ .seafile-md-viewer-outline-heading2:hover,
27
+ .seafile-md-viewer-outline-heading3:hover {
28
+ color: #eb8205;
29
+ }
30
+ .seafile-markdown-outline {
31
+ position: fixed;
32
+ padding-right: 1rem;
33
+ top: 97px;
34
+ right: 0;
35
+ width: 200px;
36
+ overflow: auto;
37
+ height: 80%;
38
+ }
39
+ .seafile-editor-outline {
40
+ border-left: 1px solid #ddd;
41
+ }
42
+ .seafile-markdown-outline .active {
43
+ color: #eb8205;
44
+ border-left: 1px solid #eb8205;
45
+ }
46
+ .seafile-markdown-outline .outline-h2, .seafile-markdown-outline .outline-h3 {
47
+ height: 30px;
48
+ margin-left: 0;
49
+ white-space: nowrap;
50
+ overflow: hidden;
51
+ text-overflow: ellipsis;
52
+ font-size: 14px;
53
+ }
54
+ .seafile-markdown-outline .outline-h2 {
55
+ padding-left: 20px;
56
+ }
57
+ .seafile-markdown-outline .outline-h3 {
58
+ padding-left: 40px;
59
+ }
60
+ @media (max-width:991.8px) {
61
+ .seafile-md-viewer-content {
62
+ padding: 40px;
63
+ }
64
+ }
65
+ @media (max-width:768px) {
66
+ .seafile-md-viewer-content {
67
+ padding: 20px;
68
+ }
69
+ }