ding-image-editor 3.15.3

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 (374) hide show
  1. package/README.md +193 -0
  2. package/dist/svg/icon-a.svg +376 -0
  3. package/dist/svg/icon-b.svg +369 -0
  4. package/dist/svg/icon-c.svg +369 -0
  5. package/dist/svg/icon-d.svg +369 -0
  6. package/dist/tui-image-editor.css +6 -0
  7. package/dist/tui-image-editor.js +62329 -0
  8. package/dist/tui-image-editor.min.css +5 -0
  9. package/dist/tui-image-editor.min.js +15 -0
  10. package/index.d.ts +334 -0
  11. package/package.json +52 -0
  12. package/src/css/buttons.styl +102 -0
  13. package/src/css/checkbox.styl +86 -0
  14. package/src/css/colorpicker.styl +98 -0
  15. package/src/css/gridtable.styl +45 -0
  16. package/src/css/icon.styl +44 -0
  17. package/src/css/index.styl +17 -0
  18. package/src/css/main.styl +163 -0
  19. package/src/css/position.styl +309 -0
  20. package/src/css/range.styl +91 -0
  21. package/src/css/submenu.styl +168 -0
  22. package/src/index.js +29 -0
  23. package/src/js/action.js +686 -0
  24. package/src/js/command/addIcon.js +42 -0
  25. package/src/js/command/addImageObject.js +34 -0
  26. package/src/js/command/addObject.js +43 -0
  27. package/src/js/command/addShape.js +51 -0
  28. package/src/js/command/addText.js +73 -0
  29. package/src/js/command/applyFilter.js +95 -0
  30. package/src/js/command/changeIconColor.js +48 -0
  31. package/src/js/command/changeSelection.js +31 -0
  32. package/src/js/command/changeShape.js +84 -0
  33. package/src/js/command/changeText.js +44 -0
  34. package/src/js/command/changeTextStyle.js +80 -0
  35. package/src/js/command/clearObjects.js +33 -0
  36. package/src/js/command/flip.js +36 -0
  37. package/src/js/command/loadImage.js +58 -0
  38. package/src/js/command/removeFilter.js +38 -0
  39. package/src/js/command/removeObject.js +37 -0
  40. package/src/js/command/resize.js +41 -0
  41. package/src/js/command/resizeCanvasDimension.js +40 -0
  42. package/src/js/command/rotate.js +64 -0
  43. package/src/js/command/setObjectPosition.js +50 -0
  44. package/src/js/command/setObjectProperties.js +55 -0
  45. package/src/js/component/cropper.js +407 -0
  46. package/src/js/component/filter.js +229 -0
  47. package/src/js/component/flip.js +146 -0
  48. package/src/js/component/freeDrawing.js +144 -0
  49. package/src/js/component/icon.js +246 -0
  50. package/src/js/component/imageLoader.js +84 -0
  51. package/src/js/component/line.js +205 -0
  52. package/src/js/component/resize.js +103 -0
  53. package/src/js/component/rotation.js +91 -0
  54. package/src/js/component/shape.js +601 -0
  55. package/src/js/component/text.js +572 -0
  56. package/src/js/component/zoom.js +708 -0
  57. package/src/js/consts.js +404 -0
  58. package/src/js/drawingMode/cropper.js +35 -0
  59. package/src/js/drawingMode/freeDrawing.js +36 -0
  60. package/src/js/drawingMode/icon.js +35 -0
  61. package/src/js/drawingMode/lineDrawing.js +36 -0
  62. package/src/js/drawingMode/resize.js +35 -0
  63. package/src/js/drawingMode/shape.js +35 -0
  64. package/src/js/drawingMode/text.js +35 -0
  65. package/src/js/drawingMode/zoom.js +37 -0
  66. package/src/js/extension/arrowLine.js +172 -0
  67. package/src/js/extension/blur.js +29 -0
  68. package/src/js/extension/colorFilter.js +104 -0
  69. package/src/js/extension/cropzone.js +568 -0
  70. package/src/js/extension/emboss.js +29 -0
  71. package/src/js/extension/mask.js +90 -0
  72. package/src/js/extension/sharpen.js +29 -0
  73. package/src/js/factory/command.js +36 -0
  74. package/src/js/factory/errorMessage.js +27 -0
  75. package/src/js/graphics.js +1539 -0
  76. package/src/js/helper/imagetracer.js +1396 -0
  77. package/src/js/helper/selectionModifyHelper.js +86 -0
  78. package/src/js/helper/shapeFilterFillHelper.js +564 -0
  79. package/src/js/helper/shapeResizeHelper.js +237 -0
  80. package/src/js/imageEditor.js +1795 -0
  81. package/src/js/interface/command.js +131 -0
  82. package/src/js/interface/component.js +127 -0
  83. package/src/js/interface/drawingMode.js +47 -0
  84. package/src/js/invoker.js +292 -0
  85. package/src/js/polyfill.js +498 -0
  86. package/src/js/ui/crop.js +139 -0
  87. package/src/js/ui/draw.js +187 -0
  88. package/src/js/ui/filter.js +510 -0
  89. package/src/js/ui/flip.js +87 -0
  90. package/src/js/ui/history.js +171 -0
  91. package/src/js/ui/icon.js +191 -0
  92. package/src/js/ui/locale/locale.js +19 -0
  93. package/src/js/ui/mask.js +96 -0
  94. package/src/js/ui/panelMenu.js +130 -0
  95. package/src/js/ui/resize.js +241 -0
  96. package/src/js/ui/rotate.js +123 -0
  97. package/src/js/ui/shape.js +265 -0
  98. package/src/js/ui/submenuBase.js +122 -0
  99. package/src/js/ui/template/controls.js +21 -0
  100. package/src/js/ui/template/mainContainer.js +38 -0
  101. package/src/js/ui/template/style.js +146 -0
  102. package/src/js/ui/template/submenu/crop.js +73 -0
  103. package/src/js/ui/template/submenu/draw.js +42 -0
  104. package/src/js/ui/template/submenu/filter.js +157 -0
  105. package/src/js/ui/template/submenu/flip.js +41 -0
  106. package/src/js/ui/template/submenu/history.js +22 -0
  107. package/src/js/ui/template/submenu/icon.js +108 -0
  108. package/src/js/ui/template/submenu/mask.js +30 -0
  109. package/src/js/ui/template/submenu/resize.js +54 -0
  110. package/src/js/ui/template/submenu/rotate.js +32 -0
  111. package/src/js/ui/template/submenu/shape.js +45 -0
  112. package/src/js/ui/template/submenu/text.js +67 -0
  113. package/src/js/ui/template/submenu/zoom.js +41 -0
  114. package/src/js/ui/text.js +279 -0
  115. package/src/js/ui/theme/standard.js +220 -0
  116. package/src/js/ui/theme/theme.js +249 -0
  117. package/src/js/ui/tools/colorpicker.js +250 -0
  118. package/src/js/ui/tools/range.js +390 -0
  119. package/src/js/ui.js +858 -0
  120. package/src/js/util.js +551 -0
  121. package/src/svg/default.svg +335 -0
  122. package/src/svg/icon-a/ic-apply.svg +6 -0
  123. package/src/svg/icon-a/ic-cancel.svg +6 -0
  124. package/src/svg/icon-a/ic-color-transparent-w.svg +12 -0
  125. package/src/svg/icon-a/ic-crop.svg +7 -0
  126. package/src/svg/icon-a/ic-delete-all.svg +6 -0
  127. package/src/svg/icon-a/ic-delete.svg +6 -0
  128. package/src/svg/icon-a/ic-draw-free.svg +5 -0
  129. package/src/svg/icon-a/ic-draw-line.svg +5 -0
  130. package/src/svg/icon-a/ic-draw.svg +6 -0
  131. package/src/svg/icon-a/ic-filter.svg +7 -0
  132. package/src/svg/icon-a/ic-flip-reset.svg +7 -0
  133. package/src/svg/icon-a/ic-flip-x.svg +6 -0
  134. package/src/svg/icon-a/ic-flip-y.svg +6 -0
  135. package/src/svg/icon-a/ic-flip.svg +6 -0
  136. package/src/svg/icon-a/ic-history-check.svg +5 -0
  137. package/src/svg/icon-a/ic-history-crop.svg +7 -0
  138. package/src/svg/icon-a/ic-history-delete.svg +9 -0
  139. package/src/svg/icon-a/ic-history-draw.svg +7 -0
  140. package/src/svg/icon-a/ic-history-filter.svg +8 -0
  141. package/src/svg/icon-a/ic-history-flip.svg +6 -0
  142. package/src/svg/icon-a/ic-history-group.svg +9 -0
  143. package/src/svg/icon-a/ic-history-icon.svg +6 -0
  144. package/src/svg/icon-a/ic-history-load.svg +7 -0
  145. package/src/svg/icon-a/ic-history-mask.svg +9 -0
  146. package/src/svg/icon-a/ic-history-resize.svg +12 -0
  147. package/src/svg/icon-a/ic-history-rotate.svg +16 -0
  148. package/src/svg/icon-a/ic-history-shape.svg +7 -0
  149. package/src/svg/icon-a/ic-history-text.svg +8 -0
  150. package/src/svg/icon-a/ic-history.svg +6 -0
  151. package/src/svg/icon-a/ic-icon-arrow-2.svg +5 -0
  152. package/src/svg/icon-a/ic-icon-arrow-3.svg +5 -0
  153. package/src/svg/icon-a/ic-icon-arrow.svg +5 -0
  154. package/src/svg/icon-a/ic-icon-bubble.svg +5 -0
  155. package/src/svg/icon-a/ic-icon-heart.svg +5 -0
  156. package/src/svg/icon-a/ic-icon-load.svg +8 -0
  157. package/src/svg/icon-a/ic-icon-location.svg +8 -0
  158. package/src/svg/icon-a/ic-icon-polygon.svg +5 -0
  159. package/src/svg/icon-a/ic-icon-star-2.svg +5 -0
  160. package/src/svg/icon-a/ic-icon-star.svg +5 -0
  161. package/src/svg/icon-a/ic-icon.svg +5 -0
  162. package/src/svg/icon-a/ic-mask-load.svg +8 -0
  163. package/src/svg/icon-a/ic-mask.svg +6 -0
  164. package/src/svg/icon-a/ic-redo.svg +7 -0
  165. package/src/svg/icon-a/ic-reset.svg +7 -0
  166. package/src/svg/icon-a/ic-resize.svg +13 -0
  167. package/src/svg/icon-a/ic-rotate-clockwise.svg +7 -0
  168. package/src/svg/icon-a/ic-rotate-counterclockwise.svg +7 -0
  169. package/src/svg/icon-a/ic-rotate.svg +7 -0
  170. package/src/svg/icon-a/ic-shape-circle.svg +5 -0
  171. package/src/svg/icon-a/ic-shape-rectangle.svg +5 -0
  172. package/src/svg/icon-a/ic-shape-triangle.svg +5 -0
  173. package/src/svg/icon-a/ic-shape.svg +6 -0
  174. package/src/svg/icon-a/ic-text-align-center.svg +6 -0
  175. package/src/svg/icon-a/ic-text-align-left.svg +6 -0
  176. package/src/svg/icon-a/ic-text-align-right.svg +6 -0
  177. package/src/svg/icon-a/ic-text-bold.svg +7 -0
  178. package/src/svg/icon-a/ic-text-italic.svg +6 -0
  179. package/src/svg/icon-a/ic-text-underline.svg +7 -0
  180. package/src/svg/icon-a/ic-text.svg +7 -0
  181. package/src/svg/icon-a/ic-undo.svg +7 -0
  182. package/src/svg/icon-a/ic-zoom-hand.svg +8 -0
  183. package/src/svg/icon-a/ic-zoom-zoom-in.svg +10 -0
  184. package/src/svg/icon-a/ic-zoom-zoom-out.svg +9 -0
  185. package/src/svg/icon-a/img-bi.svg +5 -0
  186. package/src/svg/icon-b/ic-apply.svg +6 -0
  187. package/src/svg/icon-b/ic-cancel.svg +6 -0
  188. package/src/svg/icon-b/ic-crop.svg +7 -0
  189. package/src/svg/icon-b/ic-delete-all.svg +6 -0
  190. package/src/svg/icon-b/ic-delete.svg +6 -0
  191. package/src/svg/icon-b/ic-draw-free.svg +5 -0
  192. package/src/svg/icon-b/ic-draw-line.svg +5 -0
  193. package/src/svg/icon-b/ic-draw.svg +6 -0
  194. package/src/svg/icon-b/ic-filter.svg +7 -0
  195. package/src/svg/icon-b/ic-flip-reset.svg +7 -0
  196. package/src/svg/icon-b/ic-flip-x.svg +6 -0
  197. package/src/svg/icon-b/ic-flip-y.svg +6 -0
  198. package/src/svg/icon-b/ic-flip.svg +6 -0
  199. package/src/svg/icon-b/ic-history-check.svg +5 -0
  200. package/src/svg/icon-b/ic-history-crop.svg +7 -0
  201. package/src/svg/icon-b/ic-history-delete.svg +9 -0
  202. package/src/svg/icon-b/ic-history-draw.svg +7 -0
  203. package/src/svg/icon-b/ic-history-filter.svg +8 -0
  204. package/src/svg/icon-b/ic-history-flip.svg +6 -0
  205. package/src/svg/icon-b/ic-history-group.svg +9 -0
  206. package/src/svg/icon-b/ic-history-icon.svg +6 -0
  207. package/src/svg/icon-b/ic-history-load.svg +7 -0
  208. package/src/svg/icon-b/ic-history-mask.svg +9 -0
  209. package/src/svg/icon-b/ic-history-resize.svg +12 -0
  210. package/src/svg/icon-b/ic-history-rotate.svg +16 -0
  211. package/src/svg/icon-b/ic-history-shape.svg +7 -0
  212. package/src/svg/icon-b/ic-history-text.svg +8 -0
  213. package/src/svg/icon-b/ic-history.svg +6 -0
  214. package/src/svg/icon-b/ic-icon-arrow-2.svg +5 -0
  215. package/src/svg/icon-b/ic-icon-arrow-3.svg +5 -0
  216. package/src/svg/icon-b/ic-icon-arrow.svg +5 -0
  217. package/src/svg/icon-b/ic-icon-bubble.svg +5 -0
  218. package/src/svg/icon-b/ic-icon-heart.svg +5 -0
  219. package/src/svg/icon-b/ic-icon-load.svg +8 -0
  220. package/src/svg/icon-b/ic-icon-location.svg +8 -0
  221. package/src/svg/icon-b/ic-icon-polygon.svg +5 -0
  222. package/src/svg/icon-b/ic-icon-star-2.svg +5 -0
  223. package/src/svg/icon-b/ic-icon-star.svg +5 -0
  224. package/src/svg/icon-b/ic-icon.svg +5 -0
  225. package/src/svg/icon-b/ic-mask-load.svg +8 -0
  226. package/src/svg/icon-b/ic-mask.svg +6 -0
  227. package/src/svg/icon-b/ic-redo.svg +7 -0
  228. package/src/svg/icon-b/ic-reset.svg +7 -0
  229. package/src/svg/icon-b/ic-resize.svg +13 -0
  230. package/src/svg/icon-b/ic-rotate-clockwise.svg +7 -0
  231. package/src/svg/icon-b/ic-rotate-counterclockwise.svg +7 -0
  232. package/src/svg/icon-b/ic-rotate.svg +7 -0
  233. package/src/svg/icon-b/ic-shape-circle.svg +5 -0
  234. package/src/svg/icon-b/ic-shape-rectangle.svg +5 -0
  235. package/src/svg/icon-b/ic-shape-triangle.svg +5 -0
  236. package/src/svg/icon-b/ic-shape.svg +6 -0
  237. package/src/svg/icon-b/ic-text-align-center.svg +6 -0
  238. package/src/svg/icon-b/ic-text-align-left.svg +6 -0
  239. package/src/svg/icon-b/ic-text-align-right.svg +6 -0
  240. package/src/svg/icon-b/ic-text-bold.svg +7 -0
  241. package/src/svg/icon-b/ic-text-italic.svg +6 -0
  242. package/src/svg/icon-b/ic-text-underline.svg +7 -0
  243. package/src/svg/icon-b/ic-text.svg +7 -0
  244. package/src/svg/icon-b/ic-undo.svg +7 -0
  245. package/src/svg/icon-b/ic-zoom-hand.svg +8 -0
  246. package/src/svg/icon-b/ic-zoom-zoom-in.svg +12 -0
  247. package/src/svg/icon-b/ic-zoom-zoom-out.svg +11 -0
  248. package/src/svg/icon-b/img-bi.svg +5 -0
  249. package/src/svg/icon-c/ic-apply.svg +6 -0
  250. package/src/svg/icon-c/ic-cancel.svg +6 -0
  251. package/src/svg/icon-c/ic-crop.svg +7 -0
  252. package/src/svg/icon-c/ic-delete-all.svg +6 -0
  253. package/src/svg/icon-c/ic-delete.svg +6 -0
  254. package/src/svg/icon-c/ic-draw-free.svg +5 -0
  255. package/src/svg/icon-c/ic-draw-line.svg +5 -0
  256. package/src/svg/icon-c/ic-draw.svg +6 -0
  257. package/src/svg/icon-c/ic-filter.svg +7 -0
  258. package/src/svg/icon-c/ic-flip-reset.svg +7 -0
  259. package/src/svg/icon-c/ic-flip-x.svg +6 -0
  260. package/src/svg/icon-c/ic-flip-y.svg +6 -0
  261. package/src/svg/icon-c/ic-flip.svg +6 -0
  262. package/src/svg/icon-c/ic-history-check.svg +5 -0
  263. package/src/svg/icon-c/ic-history-crop.svg +7 -0
  264. package/src/svg/icon-c/ic-history-delete.svg +9 -0
  265. package/src/svg/icon-c/ic-history-draw.svg +7 -0
  266. package/src/svg/icon-c/ic-history-filter.svg +8 -0
  267. package/src/svg/icon-c/ic-history-flip.svg +6 -0
  268. package/src/svg/icon-c/ic-history-group.svg +9 -0
  269. package/src/svg/icon-c/ic-history-icon.svg +6 -0
  270. package/src/svg/icon-c/ic-history-load.svg +7 -0
  271. package/src/svg/icon-c/ic-history-mask.svg +9 -0
  272. package/src/svg/icon-c/ic-history-resize.svg +12 -0
  273. package/src/svg/icon-c/ic-history-rotate.svg +16 -0
  274. package/src/svg/icon-c/ic-history-shape.svg +7 -0
  275. package/src/svg/icon-c/ic-history-text.svg +8 -0
  276. package/src/svg/icon-c/ic-history.svg +6 -0
  277. package/src/svg/icon-c/ic-icon-arrow-2.svg +5 -0
  278. package/src/svg/icon-c/ic-icon-arrow-3.svg +5 -0
  279. package/src/svg/icon-c/ic-icon-arrow.svg +5 -0
  280. package/src/svg/icon-c/ic-icon-bubble.svg +5 -0
  281. package/src/svg/icon-c/ic-icon-heart.svg +5 -0
  282. package/src/svg/icon-c/ic-icon-load.svg +8 -0
  283. package/src/svg/icon-c/ic-icon-location.svg +8 -0
  284. package/src/svg/icon-c/ic-icon-polygon.svg +5 -0
  285. package/src/svg/icon-c/ic-icon-star-2.svg +5 -0
  286. package/src/svg/icon-c/ic-icon-star.svg +5 -0
  287. package/src/svg/icon-c/ic-icon.svg +5 -0
  288. package/src/svg/icon-c/ic-mask-load.svg +8 -0
  289. package/src/svg/icon-c/ic-mask.svg +6 -0
  290. package/src/svg/icon-c/ic-redo.svg +7 -0
  291. package/src/svg/icon-c/ic-reset.svg +7 -0
  292. package/src/svg/icon-c/ic-resize.svg +13 -0
  293. package/src/svg/icon-c/ic-rotate-clockwise.svg +7 -0
  294. package/src/svg/icon-c/ic-rotate-counterclockwise.svg +7 -0
  295. package/src/svg/icon-c/ic-rotate.svg +7 -0
  296. package/src/svg/icon-c/ic-shape-circle.svg +5 -0
  297. package/src/svg/icon-c/ic-shape-rectangle.svg +5 -0
  298. package/src/svg/icon-c/ic-shape-triangle.svg +5 -0
  299. package/src/svg/icon-c/ic-shape.svg +6 -0
  300. package/src/svg/icon-c/ic-text-align-center.svg +6 -0
  301. package/src/svg/icon-c/ic-text-align-left.svg +6 -0
  302. package/src/svg/icon-c/ic-text-align-right.svg +6 -0
  303. package/src/svg/icon-c/ic-text-bold.svg +7 -0
  304. package/src/svg/icon-c/ic-text-italic.svg +6 -0
  305. package/src/svg/icon-c/ic-text-underline.svg +7 -0
  306. package/src/svg/icon-c/ic-text.svg +7 -0
  307. package/src/svg/icon-c/ic-undo.svg +7 -0
  308. package/src/svg/icon-c/ic-zoom-hand.svg +8 -0
  309. package/src/svg/icon-c/ic-zoom-zoom-in.svg +12 -0
  310. package/src/svg/icon-c/ic-zoom-zoom-out.svg +11 -0
  311. package/src/svg/icon-c/img-bi.svg +5 -0
  312. package/src/svg/icon-d/ic-apply.svg +6 -0
  313. package/src/svg/icon-d/ic-cancel.svg +6 -0
  314. package/src/svg/icon-d/ic-crop.svg +7 -0
  315. package/src/svg/icon-d/ic-delete-all.svg +6 -0
  316. package/src/svg/icon-d/ic-delete.svg +6 -0
  317. package/src/svg/icon-d/ic-draw-free.svg +5 -0
  318. package/src/svg/icon-d/ic-draw-line.svg +5 -0
  319. package/src/svg/icon-d/ic-draw.svg +6 -0
  320. package/src/svg/icon-d/ic-filter.svg +7 -0
  321. package/src/svg/icon-d/ic-flip-reset.svg +7 -0
  322. package/src/svg/icon-d/ic-flip-x.svg +6 -0
  323. package/src/svg/icon-d/ic-flip-y.svg +6 -0
  324. package/src/svg/icon-d/ic-flip.svg +6 -0
  325. package/src/svg/icon-d/ic-history-check.svg +5 -0
  326. package/src/svg/icon-d/ic-history-crop.svg +7 -0
  327. package/src/svg/icon-d/ic-history-delete.svg +9 -0
  328. package/src/svg/icon-d/ic-history-draw.svg +7 -0
  329. package/src/svg/icon-d/ic-history-filter.svg +8 -0
  330. package/src/svg/icon-d/ic-history-flip.svg +6 -0
  331. package/src/svg/icon-d/ic-history-group.svg +9 -0
  332. package/src/svg/icon-d/ic-history-icon.svg +6 -0
  333. package/src/svg/icon-d/ic-history-load.svg +7 -0
  334. package/src/svg/icon-d/ic-history-mask.svg +9 -0
  335. package/src/svg/icon-d/ic-history-resize.svg +12 -0
  336. package/src/svg/icon-d/ic-history-rotate.svg +16 -0
  337. package/src/svg/icon-d/ic-history-shape.svg +7 -0
  338. package/src/svg/icon-d/ic-history-text.svg +8 -0
  339. package/src/svg/icon-d/ic-history.svg +6 -0
  340. package/src/svg/icon-d/ic-icon-arrow-2.svg +5 -0
  341. package/src/svg/icon-d/ic-icon-arrow-3.svg +5 -0
  342. package/src/svg/icon-d/ic-icon-arrow.svg +5 -0
  343. package/src/svg/icon-d/ic-icon-bubble.svg +5 -0
  344. package/src/svg/icon-d/ic-icon-heart.svg +5 -0
  345. package/src/svg/icon-d/ic-icon-load.svg +8 -0
  346. package/src/svg/icon-d/ic-icon-location.svg +8 -0
  347. package/src/svg/icon-d/ic-icon-polygon.svg +5 -0
  348. package/src/svg/icon-d/ic-icon-star-2.svg +5 -0
  349. package/src/svg/icon-d/ic-icon-star.svg +5 -0
  350. package/src/svg/icon-d/ic-icon.svg +5 -0
  351. package/src/svg/icon-d/ic-mask-load.svg +8 -0
  352. package/src/svg/icon-d/ic-mask.svg +6 -0
  353. package/src/svg/icon-d/ic-redo.svg +7 -0
  354. package/src/svg/icon-d/ic-reset.svg +7 -0
  355. package/src/svg/icon-d/ic-resize.svg +13 -0
  356. package/src/svg/icon-d/ic-rotate-clockwise.svg +7 -0
  357. package/src/svg/icon-d/ic-rotate-counterclockwise.svg +7 -0
  358. package/src/svg/icon-d/ic-rotate.svg +7 -0
  359. package/src/svg/icon-d/ic-shape-circle.svg +5 -0
  360. package/src/svg/icon-d/ic-shape-rectangle.svg +5 -0
  361. package/src/svg/icon-d/ic-shape-triangle.svg +5 -0
  362. package/src/svg/icon-d/ic-shape.svg +6 -0
  363. package/src/svg/icon-d/ic-text-align-center.svg +6 -0
  364. package/src/svg/icon-d/ic-text-align-left.svg +6 -0
  365. package/src/svg/icon-d/ic-text-align-right.svg +6 -0
  366. package/src/svg/icon-d/ic-text-bold.svg +7 -0
  367. package/src/svg/icon-d/ic-text-italic.svg +6 -0
  368. package/src/svg/icon-d/ic-text-underline.svg +7 -0
  369. package/src/svg/icon-d/ic-text.svg +7 -0
  370. package/src/svg/icon-d/ic-undo.svg +7 -0
  371. package/src/svg/icon-d/ic-zoom-hand.svg +8 -0
  372. package/src/svg/icon-d/ic-zoom-zoom-in.svg +12 -0
  373. package/src/svg/icon-d/ic-zoom-zoom-out.svg +11 -0
  374. package/src/svg/icon-d/img-bi.svg +5 -0
@@ -0,0 +1,45 @@
1
+ /* GRID VISUAL OF FLIP AND ROTATE MENU */
2
+ .{prefix}-container
3
+ .{prefix}-grid-visual
4
+ display: none;
5
+ position: absolute;
6
+ width: 100%;
7
+ height: 100%;
8
+ border: 1px solid rgba(255,255,255,0.7);
9
+ .{prefix}-main.{prefix}-menu-flip,
10
+ .{prefix}-main.{prefix}-menu-rotate
11
+ .tui-image-editor
12
+ transition: none;
13
+ .{prefix}-main.{prefix}-menu-flip .{prefix}-grid-visual,
14
+ .{prefix}-main.{prefix}-menu-rotate .{prefix}-grid-visual,
15
+ .{prefix}-main.{prefix}-menu-resize .{prefix}-grid-visual
16
+ display: block;
17
+ .{prefix}-grid-visual
18
+ table
19
+ width: 100%;
20
+ height: 100%;
21
+ border-collapse: collapse;
22
+ td
23
+ border: 1px solid rgba(255,255,255,0.3);
24
+ td.dot:before
25
+ content: '';
26
+ position: absolute;
27
+ box-sizing: border-box;
28
+ width: 10px;
29
+ height: 10px;
30
+ border: 0;
31
+ box-shadow: 0 0 1px 0 rgba(0,0,0,0.3);
32
+ border-radius: 100%;
33
+ background-color: #fff;
34
+ td.dot.left-top:before
35
+ top: -5px;
36
+ left: -5px;
37
+ td.dot.right-top:before
38
+ top: -5px;
39
+ right: -5px;
40
+ td.dot.left-bottom:before
41
+ bottom: -5px;
42
+ left: -5px;
43
+ td.dot.right-bottom:before
44
+ bottom: -5px;
45
+ right: -5px;
@@ -0,0 +1,44 @@
1
+ /* ICON */
2
+ .{prefix}-container
3
+ .tie-icon-add-button .{prefix}-button
4
+ min-width: 42px;
5
+ .svg_ic-menu
6
+ .svg_ic-helpmenu
7
+ width: 24px;
8
+ height: 24px;
9
+ .svg_ic-submenu
10
+ width: 32px;
11
+ height: 32px;
12
+ .svg_img-bi
13
+ width: 257px;
14
+ height: 26px;
15
+
16
+ .{prefix}-help-menu
17
+ .{prefix}-controls
18
+ svg > use
19
+ display: none;
20
+ .enabled svg:hover > use.hover
21
+ .normal svg:hover > use.hover
22
+ display: block;
23
+ .active svg:hover > use.hover
24
+ display: none;
25
+ .on svg > use.hover,
26
+ .opened svg > use.hover
27
+ display: block;
28
+ svg > use.normal
29
+ display: block;
30
+ .active svg > use.active
31
+ display: block;
32
+ .enabled svg > use.enabled
33
+ display: block;
34
+ .active svg > use.normal,
35
+ .enabled svg > use.normal
36
+ display: none;
37
+ .help svg > use.disabled,
38
+ .help.enabled svg > use.normal
39
+ display: block;
40
+ .help.enabled svg > use.disabled
41
+ display: none;
42
+
43
+ .{prefix}-controls:hover
44
+ z-index: 3;
@@ -0,0 +1,17 @@
1
+ prefix = 'tui-image-editor'
2
+
3
+ @import 'main.styl'
4
+ @import 'gridtable.styl'
5
+ @import 'submenu.styl'
6
+ @import 'checkbox.styl'
7
+ @import 'range.styl'
8
+ @import 'position.styl'
9
+ @import 'icon.styl'
10
+ @import 'colorpicker.styl'
11
+ @import 'buttons.styl'
12
+ .{prefix}-container.top
13
+ &.{prefix}-top-optimization
14
+ .{prefix}-controls ul
15
+ text-align: right;
16
+ .{prefix}-controls-logo
17
+ display: none;
@@ -0,0 +1,163 @@
1
+ body > textarea
2
+ position: fixed !important;
3
+
4
+ +prefix-classes(prefix)
5
+ .-container
6
+ margin: 0;
7
+ padding: 0;
8
+ box-sizing: border-box;
9
+ min-height: 300px;
10
+ height: 100%;
11
+ position: relative;
12
+ background-color: #282828;
13
+ overflow: hidden;
14
+ letter-spacing: 0.3px;
15
+
16
+ div, ul, label, input, li
17
+ box-sizing: border-box;
18
+ margin: 0;
19
+ padding: 0;
20
+ -ms-user-select: none;
21
+ -moz-user-select: -moz-none;
22
+ -khtml-user-select: none;
23
+ -webkit-user-select: none;
24
+ user-select: none;
25
+
26
+ .-header
27
+ /* BUTTON AND LOGO */
28
+ min-width: 533px;
29
+ position: absolute;
30
+ background-color: #151515;
31
+ top: 0;
32
+ width: 100%;
33
+ .-header-buttons,
34
+ .-controls-buttons
35
+ float: right;
36
+ margin: 8px;
37
+
38
+ .-header-logo,
39
+ .-controls-logo
40
+ float: left;
41
+ width: 30%;
42
+ padding: 17px;
43
+
44
+ .-controls-logo,
45
+ .-controls-buttons
46
+ width: 270px;
47
+ height: 100%;
48
+ display: none;
49
+
50
+ .-header-buttons button,
51
+ .-header-buttons div,
52
+ .-controls-buttons button,
53
+ .-controls-buttons div
54
+ display: inline-block;
55
+ position: relative;
56
+ width: 120px;
57
+ height: 40px;
58
+ padding: 0;
59
+ line-height: 40px;
60
+ outline: none;
61
+ border-radius: 20px;
62
+ border: 1px solid #ddd;
63
+ font-family: 'Noto Sans', sans-serif;
64
+ font-size: 12px;
65
+ font-weight: bold;
66
+ cursor: pointer;
67
+ vertical-align: middle;
68
+ letter-spacing: 0.3px;
69
+ text-align: center;
70
+
71
+ .-download-btn
72
+ background-color: #fdba3b;
73
+ border-color: #fdba3b;
74
+ color: #fff;
75
+ .-load-btn
76
+ position: absolute;
77
+ left: 0;
78
+ right: 0;
79
+ display: inline-block;
80
+ top: 0;
81
+ bottom: 0;
82
+ width: 100%;
83
+ cursor: pointer;
84
+ opacity: 0;
85
+ .-main-container
86
+ position: absolute;
87
+ width: 100%;
88
+ top: 0;
89
+ bottom: 64px;
90
+ .-main
91
+ position: absolute;
92
+ text-align: center;
93
+ top: 64px;
94
+ bottom: 0;
95
+ right: 0;
96
+ left: 0;
97
+ .-wrap
98
+ position: absolute;
99
+ bottom: 0;
100
+ width: 100%;
101
+ overflow: auto;
102
+ .-size-wrap
103
+ display: table;
104
+ width: 100%;
105
+ height: 100%
106
+ .-align-wrap
107
+ display: table-cell;
108
+ vertical-align: middle;
109
+ .
110
+ position: relative;
111
+ display: inline-block;
112
+
113
+
114
+ /* BIG MENU */
115
+ .{prefix}-container
116
+ .{prefix}-menu, .{prefix}-help-menu
117
+ width: auto;
118
+ list-style: none;
119
+ padding: 0;
120
+ margin: 0 auto;
121
+ display: table-cell;
122
+ text-align: center;
123
+ vertical-align: middle;
124
+ white-space: nowrap;
125
+ > .{prefix}-item
126
+ position: relative;
127
+ display: inline-block;
128
+ border-radius: 2px;
129
+ padding: 7px 8px 3px 8px;
130
+ cursor: pointer;
131
+ margin: 0 4px;
132
+ > .{prefix}-item[tooltip-content]:hover
133
+ &:before
134
+ content: '';
135
+ position: absolute;
136
+ display: inline-block;
137
+ margin: 0 auto 0;
138
+ width: 0;
139
+ height: 0;
140
+ border-right: 7px solid transparent;
141
+ border-top: 7px solid #2f2f2f;
142
+ border-left: 7px solid transparent;
143
+ left: 13px;
144
+ top: -2px;
145
+ &:after
146
+ content: attr(tooltip-content);
147
+ position: absolute;
148
+ display: inline-block;
149
+ background-color: #2f2f2f;
150
+ color: #fff;
151
+ padding: 5px 8px;
152
+ font-size: 11px;
153
+ font-weight: lighter;
154
+ border-radius: 3px;
155
+ max-height: 23px;
156
+ top: -25px;
157
+ left: 0;
158
+ min-width: 24px;
159
+ > .{prefix}-item.active
160
+ background-color: #fff;
161
+ transition: all .3s ease;
162
+ .{prefix}-wrap
163
+ position: absolute;
@@ -0,0 +1,309 @@
1
+ /* POSITION LEFT */
2
+ .{prefix}-container
3
+ &.left
4
+ .{prefix}-menu
5
+ > .{prefix}-item[tooltip-content]
6
+ &:before
7
+ left: 28px;
8
+ top: 11px;
9
+ border-right: 7px solid #2f2f2f;
10
+ border-top: 7px solid transparent;
11
+ border-bottom: 7px solid transparent;
12
+ &:after
13
+ top: 7px;
14
+ left: 42px;
15
+ white-space: nowrap;
16
+ .{prefix}-submenu
17
+ left: 0;
18
+ height: 100%;
19
+ width: 248px;
20
+ .{prefix}-main-container
21
+ left: 64px;
22
+ width: calc(100% - 64px);
23
+ height: 100%;
24
+ .{prefix}-controls
25
+ width: 64px;
26
+ height: 100%;
27
+ display: table;
28
+
29
+ /* POSITION LEFT & RIGHT */
30
+ .{prefix}-container
31
+ &.left, &.right
32
+ .{prefix}-menu
33
+ white-space: inherit;
34
+ .{prefix}-submenu
35
+ white-space: normal;
36
+ > div
37
+ vertical-align: middle;
38
+ .{prefix}-controls li
39
+ display: inline-block;
40
+ margin: 4px auto;
41
+ .{prefix}-icpartition
42
+ position: relative;
43
+ top: -7px;
44
+ width: 24px;
45
+ height: 1px;
46
+ .{prefix}-submenu
47
+ .{prefix}-partition
48
+ display: block;
49
+ width: 75%;
50
+ margin: auto;
51
+ > div
52
+ border-left: 0;
53
+ height:10px;
54
+ border-bottom: 1px solid #3c3c3c;
55
+ width: 100%;
56
+ margin: 0;
57
+ .{prefix}-submenu-align
58
+ margin-right: 0;
59
+ .{prefix}-submenu-item
60
+ li
61
+ margin-top: 15px;
62
+ .tui-colorpicker-clearfix li
63
+ margin-top: 0;
64
+
65
+ .{prefix}-checkbox-wrap.fixed-width
66
+ width: 182px;
67
+ white-space: normal;
68
+ .{prefix}-range-wrap.{prefix}-newline label.range
69
+ display: block;
70
+ text-align: left;
71
+ width: 75%;
72
+ margin: auto;
73
+ .{prefix}-range
74
+ width: 136px;
75
+
76
+
77
+ /* POSITION RIGHT */
78
+ .{prefix}-container
79
+ &.right
80
+ .{prefix}-menu
81
+ > .{prefix}-item[tooltip-content]
82
+ &:before
83
+ left: -3px;
84
+ top: 11px;
85
+ border-left: 7px solid #2f2f2f;
86
+ border-top: 7px solid transparent;
87
+ border-bottom: 7px solid transparent;
88
+ &:after
89
+ top: 7px;
90
+ left: unset;
91
+ right: 43px;
92
+ white-space: nowrap;
93
+ .{prefix}-submenu
94
+ right: 0;
95
+ height: 100%;
96
+ width: 248px;
97
+ .{prefix}-main-container
98
+ right: 64px;
99
+ width: calc(100% - 64px);
100
+ height: 100%;
101
+ .{prefix}-controls
102
+ right: 0;
103
+ width: 64px;
104
+ height: 100%;
105
+ display: table;
106
+
107
+
108
+ /* POSITION TOP & BOTTOM */
109
+ .{prefix}-container
110
+ &.top, &.bottom
111
+ .{prefix}-submenu
112
+ .{prefix}-partition.only-left-right
113
+ display: none;
114
+
115
+
116
+ /* POSITION BOTTOM */
117
+ .{prefix}-container
118
+ &.bottom .tui-image-editor-submenu > div
119
+ padding-bottom: 24px;
120
+
121
+ /* POSITION TOP */
122
+ .{prefix}-container
123
+ &.top
124
+ .color-picker-control .triangle
125
+ top: -8px;
126
+ border-right: 7px solid transparent;
127
+ border-top: 0px;
128
+ border-left: 7px solid transparent;
129
+ border-bottom: 8px solid #fff;
130
+ .{prefix}-size-wrap
131
+ height: 100%;
132
+ .{prefix}-main-container
133
+ bottom: 0;
134
+ .{prefix}-menu
135
+ > .{prefix}-item[tooltip-content]
136
+ &:before
137
+ left: 13px;
138
+ border-top: 0;
139
+ border-bottom: 7px solid #2f2f2f;
140
+ top: 33px;
141
+ &:after
142
+ top: 38px;
143
+ .{prefix}-submenu
144
+ top: 0;
145
+ bottom: auto;
146
+ > div
147
+ padding-top: 24px;
148
+ vertical-align: top;
149
+ .{prefix}-controls-logo
150
+ display: table-cell;
151
+ .{prefix}-controls-buttons
152
+ display: table-cell;
153
+ .{prefix}-main
154
+ top: 64px;
155
+ height: calc(100% - 64px);
156
+ .{prefix}-controls
157
+ top: 0;
158
+ bottom: inherit;
159
+
160
+ /* HELP MENUBAR POSITION TOP */
161
+ .{prefix}-container
162
+ .{prefix}-help-menu
163
+ &.top
164
+ white-space: nowrap;
165
+ width: 506px;
166
+ height: 40px;
167
+ top: 8px;
168
+ left: 50%;
169
+ transform: translateX(-50%);
170
+ .tie-panel-history
171
+ top: 45px;
172
+ .opened .tie-panel-history:before
173
+ border-right: 8px solid transparent;
174
+ border-left: 8px solid transparent;
175
+ border-bottom: 8px solid #fff;
176
+ left: 90px;
177
+ top: -8px;
178
+ > .{prefix}-item[tooltip-content]
179
+ &:before
180
+ left: 13px;
181
+ top: 35px;
182
+ border: none;
183
+ border-bottom: 7px solid #2f2f2f;
184
+ border-left: 7px solid transparent;
185
+ border-right: 7px solid transparent;
186
+ &:after
187
+ top: 41px;
188
+ left: -4px;
189
+ white-space: nowrap;
190
+ > .{prefix}-item[tooltip-content].opened
191
+ &:before,
192
+ &:after
193
+ content: none;
194
+
195
+ /* HELP MENUBAR POSITION BOTTOM */
196
+ .{prefix}-container
197
+ .{prefix}-help-menu
198
+ &.bottom
199
+ white-space: nowrap;
200
+ width: 506px;
201
+ height: 40px;
202
+ bottom: 8px;
203
+ left: 50%;
204
+ transform: translateX(-50%);
205
+ .tie-panel-history
206
+ bottom: 45px;
207
+ .opened .tie-panel-history:before
208
+ border-right: 8px solid transparent;
209
+ border-left: 8px solid transparent;
210
+ border-top: 8px solid #fff;
211
+ left: 90px;
212
+ bottom: -8px;
213
+ > .{prefix}-item[tooltip-content]
214
+ &:before
215
+ left: 13px;
216
+ top: auto;
217
+ bottom: 36px;
218
+ border: none;
219
+ border-top: 7px solid #2f2f2f;
220
+ border-left: 7px solid transparent;
221
+ border-right: 7px solid transparent;
222
+ &:after
223
+ top: auto;
224
+ left: -4px;
225
+ bottom: 41px;
226
+ white-space: nowrap;
227
+ > .{prefix}-item[tooltip-content].opened
228
+ &:before,
229
+ &:after
230
+ content: none;
231
+
232
+ /* HELP MENUBAR POSITION LEFT */
233
+ .{prefix}-container
234
+ .{prefix}-help-menu
235
+ &.left
236
+ white-space: inherit;
237
+ width: 40px;
238
+ height: 506px;
239
+ left: 8px;
240
+ top: 50%;
241
+ transform: translateY(-50%);
242
+ .tie-panel-history
243
+ left: 140px;
244
+ top: -4px;
245
+ .opened .tie-panel-history:before
246
+ border-top: 8px solid transparent;
247
+ border-bottom: 8px solid transparent;
248
+ border-right: 8px solid #fff;
249
+ left: -8px;
250
+ top: 14px;
251
+ .{prefix}-item
252
+ margin: 4px auto;
253
+ padding: 6px 8px;
254
+ > .{prefix}-item[tooltip-content]
255
+ &:before
256
+ left: 27px;
257
+ top: 11px;
258
+ border: none;
259
+ border-right: 7px solid #2f2f2f;
260
+ border-top: 7px solid transparent;
261
+ border-bottom: 7px solid transparent;
262
+ &:after
263
+ top: 7px;
264
+ left: 40px;
265
+ white-space: nowrap;
266
+ > .{prefix}-item[tooltip-content].opened
267
+ &:before,
268
+ &:after
269
+ content: none;
270
+
271
+ /* HELP MENUBAR POSITION RIGHT */
272
+ .{prefix}-container
273
+ .{prefix}-help-menu
274
+ &.right
275
+ white-space: inherit;
276
+ width: 40px;
277
+ height: 506px;
278
+ right: 8px;
279
+ top: 50%;
280
+ transform: translateY(-50%);
281
+ .tie-panel-history
282
+ right: -30px;
283
+ top: -4px;
284
+ .opened .tie-panel-history:before
285
+ border-top: 8px solid transparent;
286
+ border-bottom: 8px solid transparent;
287
+ border-left: 8px solid #fff;
288
+ right: -8px;
289
+ top: 14px;
290
+ .{prefix}-item
291
+ margin: 4px auto;
292
+ padding: 6px 8px;
293
+ > .{prefix}-item[tooltip-content]
294
+ &:before
295
+ left: -6px;
296
+ top: 11px;
297
+ border: none;
298
+ border-left: 7px solid #2f2f2f;
299
+ border-top: 7px solid transparent;
300
+ border-bottom: 7px solid transparent;
301
+ &:after
302
+ top: 7px;
303
+ left: auto;
304
+ right: 39px;
305
+ white-space: nowrap;
306
+ > .{prefix}-item[tooltip-content].opened
307
+ &:before,
308
+ &:after
309
+ content: none;
@@ -0,0 +1,91 @@
1
+ /* VIRTUAL RANGE */
2
+ .{prefix}-container
3
+
4
+ .{prefix}-virtual-range-bar
5
+ .{prefix}-virtual-range-subbar
6
+ .{prefix}-virtual-range-pointer
7
+ .{prefix}-disabled
8
+ background-color: red;
9
+
10
+ .{prefix}-range
11
+ position: relative;
12
+ top: 5px;
13
+ width: 166px;
14
+ height: 17px;
15
+ display: inline-block;
16
+ .{prefix}-virtual-range-bar
17
+ top: 7px;
18
+ position: absolute;
19
+ width: 100%;
20
+ height: 2px;
21
+ background-color: #666666;
22
+ .{prefix}-virtual-range-subbar
23
+ position: absolute;
24
+ height: 100%;
25
+ left: 0;
26
+ right: 0;
27
+ background-color: #d1d1d1;
28
+ .{prefix}-virtual-range-pointer
29
+ position: absolute;
30
+ cursor: pointer;
31
+ top: -5px;
32
+ left: 0;
33
+ width: 12px;
34
+ height: 12px;
35
+ background-color: #fff;
36
+ border-radius: 100%;
37
+ .{prefix}-range-wrap
38
+ display: inline-block;
39
+ margin-left: 4px;
40
+ &.short .tui-image-editor-range
41
+ width: 100px;
42
+ .color-picker-control
43
+ .{prefix}-range
44
+ width: 108px;
45
+ margin-left: 10px;
46
+ .{prefix}-virtual-range-pointer
47
+ background-color: #333;
48
+ .{prefix}-virtual-range-bar
49
+ background-color: #ccc;
50
+ .{prefix}-virtual-range-subbar
51
+ background-color: #606060;
52
+ .{prefix}-range-wrap.{prefix}-newline.short
53
+ margin-top: -2px;
54
+ margin-left: 19px;
55
+ label
56
+ color: #8e8e8e;
57
+ font-weight: normal;
58
+ .{prefix}-range-wrap label
59
+ vertical-align: baseline;
60
+ font-size: 11px;
61
+ margin-right: 7px;
62
+ color: #fff;
63
+ .{prefix}-range-value
64
+ cursor: default;
65
+ width: 40px;
66
+ height: 24px;
67
+ outline: none;
68
+ border-radius: 2px;
69
+ box-shadow: none;
70
+ border: 1px solid #d5d5d5;
71
+ text-align: center;
72
+ background-color: #1c1c1c;
73
+ color: #fff;
74
+ font-weight: lighter;
75
+ vertical-align: baseline;
76
+ font-family: 'Noto Sans', sans-serif;
77
+ margin-top: 15px;
78
+ margin-left: 4px;
79
+ .{prefix}-controls
80
+ position: absolute;
81
+ background-color: #151515;
82
+ width: 100%;
83
+ height: 64px;
84
+ display: table;
85
+ bottom: 0;
86
+ z-index: 2;
87
+ .{prefix}-icpartition
88
+ display: inline-block;
89
+ background-color: #444;
90
+ width: 1px;
91
+ height: 24px;