cbvirtua 1.0.57 → 1.0.59

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 (653) hide show
  1. package/package.json +1 -1
  2. package/tinylib-analysis-main.zip +0 -0
  3. package//346/226/260/345/273/272 /346/226/207/346/234/254/346/226/207/346/241/243.txt" +9 -0
  4. package/README.md +0 -270
  5. package/Signature.vue +0 -493
  6. package/canvas-demo-master/canvas-demo-master/README.md +0 -7
  7. package/canvas-demo-master/canvas-demo-master/countShowBall/README.md +0 -7
  8. package/canvas-demo-master/canvas-demo-master/countShowBall/countdown.js +0 -227
  9. package/canvas-demo-master/canvas-demo-master/countShowBall/digit.js +0 -135
  10. package/canvas-demo-master/canvas-demo-master/countShowBall/index.html +0 -23
  11. package/canvas-demo-master/canvas-demo-master/write/README.md +0 -17
  12. package/canvas-demo-master/canvas-demo-master/write/css/write.css +0 -40
  13. package/canvas-demo-master/canvas-demo-master/write/index.html +0 -26
  14. package/canvas-demo-master/canvas-demo-master/write/js/controller.js +0 -43
  15. package/canvas-demo-master/canvas-demo-master/write/js/index.js +0 -10
  16. package/canvas-demo-master/canvas-demo-master/write/js/paper.js +0 -63
  17. package/canvas-demo-master/canvas-demo-master/write/js/require.js +0 -36
  18. package/canvas-demo-master/canvas-demo-master/write/js/write.js +0 -143
  19. package/canvas-demo-master/canvas-demo-master/writeRxJS/README.md +0 -17
  20. package/canvas-demo-master/canvas-demo-master/writeRxJS/css/write.css +0 -40
  21. package/canvas-demo-master/canvas-demo-master/writeRxJS/index.html +0 -27
  22. package/canvas-demo-master/canvas-demo-master/writeRxJS/js/controller.js +0 -43
  23. package/canvas-demo-master/canvas-demo-master/writeRxJS/js/index.js +0 -10
  24. package/canvas-demo-master/canvas-demo-master/writeRxJS/js/paper.js +0 -65
  25. package/canvas-demo-master/canvas-demo-master/writeRxJS/js/require.js +0 -36
  26. package/canvas-demo-master/canvas-demo-master/writeRxJS/js/write.js +0 -107
  27. package/canvas-event-system/.babelrc +0 -17
  28. package/canvas-event-system/.prettierrc +0 -9
  29. package/canvas-event-system/build/canvas-event-system/EventSimulator.d.ts +0 -20
  30. package/canvas-event-system/build/canvas-event-system/EventSimulator.js +0 -51
  31. package/canvas-event-system/build/canvas-event-system/helpers.d.ts +0 -3
  32. package/canvas-event-system/build/canvas-event-system/helpers.js +0 -21
  33. package/canvas-event-system/build/canvas-event-system/index.d.ts +0 -20
  34. package/canvas-event-system/build/canvas-event-system/index.js +0 -51
  35. package/canvas-event-system/build/canvas-event-system/shapes/Base.d.ts +0 -12
  36. package/canvas-event-system/build/canvas-event-system/shapes/Base.js +0 -26
  37. package/canvas-event-system/build/canvas-event-system/shapes/Circle.d.ts +0 -15
  38. package/canvas-event-system/build/canvas-event-system/shapes/Circle.js +0 -34
  39. package/canvas-event-system/build/canvas-event-system/shapes/Path.d.ts +0 -0
  40. package/canvas-event-system/build/canvas-event-system/shapes/Path.js +0 -0
  41. package/canvas-event-system/build/canvas-event-system/shapes/Rect.d.ts +0 -16
  42. package/canvas-event-system/build/canvas-event-system/shapes/Rect.js +0 -33
  43. package/canvas-event-system/build/canvas-event-system/shapes/index.d.ts +0 -4
  44. package/canvas-event-system/build/canvas-event-system/shapes/index.js +0 -4
  45. package/canvas-event-system/build/canvas-event-system/shapes/types.d.ts +0 -19
  46. package/canvas-event-system/build/canvas-event-system/shapes/types.js +0 -9
  47. package/canvas-event-system/build/index.d.ts +0 -1
  48. package/canvas-event-system/build/index.js +0 -24
  49. package/canvas-event-system/package-lock.json +0 -6825
  50. package/canvas-event-system/package.json +0 -40
  51. package/canvas-event-system/readme.md +0 -13
  52. package/canvas-event-system/src/canvas-event-system/EventSimulator.ts +0 -75
  53. package/canvas-event-system/src/canvas-event-system/helpers.ts +0 -27
  54. package/canvas-event-system/src/canvas-event-system/index.ts +0 -64
  55. package/canvas-event-system/src/canvas-event-system/shapes/Base.ts +0 -32
  56. package/canvas-event-system/src/canvas-event-system/shapes/Circle.ts +0 -46
  57. package/canvas-event-system/src/canvas-event-system/shapes/Path.ts +0 -0
  58. package/canvas-event-system/src/canvas-event-system/shapes/Rect.ts +0 -46
  59. package/canvas-event-system/src/canvas-event-system/shapes/index.ts +0 -5
  60. package/canvas-event-system/src/canvas-event-system/shapes/types.ts +0 -22
  61. package/canvas-event-system/src/index.html +0 -12
  62. package/canvas-event-system/src/index.ts +0 -30
  63. package/canvas-event-system/tsconfig.json +0 -17
  64. package/canvas-event-system/webpack.config.js +0 -28
  65. package/canvas-example-main/canvas-example-main/.github/workflows/main.yml +0 -62
  66. package/canvas-example-main/canvas-example-main/README.md +0 -13
  67. package/canvas-example-main/canvas-example-main/curved.html +0 -52
  68. package/canvas-example-main/canvas-example-main/eslint.config.js +0 -30
  69. package/canvas-example-main/canvas-example-main/index.html +0 -13
  70. package/canvas-example-main/canvas-example-main/package.json +0 -51
  71. package/canvas-example-main/canvas-example-main/pnpm-lock.yaml +0 -4760
  72. package/canvas-example-main/canvas-example-main/postcss.config.js +0 -6
  73. package/canvas-example-main/canvas-example-main/public/vite.svg +0 -1
  74. package/canvas-example-main/canvas-example-main/src/App.tsx +0 -17
  75. package/canvas-example-main/canvas-example-main/src/assets/github.svg +0 -1
  76. package/canvas-example-main/canvas-example-main/src/assets/react.svg +0 -1
  77. package/canvas-example-main/canvas-example-main/src/components/Iconfont/demo.css +0 -539
  78. package/canvas-example-main/canvas-example-main/src/components/Iconfont/demo_index.html +0 -418
  79. package/canvas-example-main/canvas-example-main/src/components/Iconfont/iconfont.css +0 -55
  80. package/canvas-example-main/canvas-example-main/src/components/Iconfont/iconfont.js +0 -1
  81. package/canvas-example-main/canvas-example-main/src/components/Iconfont/iconfont.json +0 -79
  82. package/canvas-example-main/canvas-example-main/src/components/Iconfont/iconfont.ttf +0 -0
  83. package/canvas-example-main/canvas-example-main/src/components/Iconfont/iconfont.woff +0 -0
  84. package/canvas-example-main/canvas-example-main/src/components/Iconfont/iconfont.woff2 +0 -0
  85. package/canvas-example-main/canvas-example-main/src/components/Iconfont/index.tsx +0 -39
  86. package/canvas-example-main/canvas-example-main/src/main.css +0 -9
  87. package/canvas-example-main/canvas-example-main/src/main.tsx +0 -10
  88. package/canvas-example-main/canvas-example-main/src/pages/2048/g2048.ts +0 -14
  89. package/canvas-example-main/canvas-example-main/src/pages/2048/index.tsx +0 -21
  90. package/canvas-example-main/canvas-example-main/src/pages/clock/index.tsx +0 -103
  91. package/canvas-example-main/canvas-example-main/src/pages/demo/index.tsx +0 -21
  92. package/canvas-example-main/canvas-example-main/src/pages/editor/components/editor/index.module.less +0 -3
  93. package/canvas-example-main/canvas-example-main/src/pages/editor/components/editor/index.tsx +0 -99
  94. package/canvas-example-main/canvas-example-main/src/pages/editor/components/header/index.module.less +0 -5
  95. package/canvas-example-main/canvas-example-main/src/pages/editor/components/header/index.tsx +0 -5
  96. package/canvas-example-main/canvas-example-main/src/pages/editor/components/material/index.module.less +0 -59
  97. package/canvas-example-main/canvas-example-main/src/pages/editor/components/material/index.tsx +0 -85
  98. package/canvas-example-main/canvas-example-main/src/pages/editor/components/setting/index.module.less +0 -7
  99. package/canvas-example-main/canvas-example-main/src/pages/editor/components/setting/index.tsx +0 -5
  100. package/canvas-example-main/canvas-example-main/src/pages/editor/core/application.ts +0 -35
  101. package/canvas-example-main/canvas-example-main/src/pages/editor/core/cmp/base.ts +0 -17
  102. package/canvas-example-main/canvas-example-main/src/pages/editor/core/cmp/factory.ts +0 -14
  103. package/canvas-example-main/canvas-example-main/src/pages/editor/core/cmp/shape.tsx +0 -43
  104. package/canvas-example-main/canvas-example-main/src/pages/editor/core/editor.ts +0 -61
  105. package/canvas-example-main/canvas-example-main/src/pages/editor/core/type.ts +0 -6
  106. package/canvas-example-main/canvas-example-main/src/pages/editor/index.module.less +0 -7
  107. package/canvas-example-main/canvas-example-main/src/pages/editor/index.tsx +0 -32
  108. package/canvas-example-main/canvas-example-main/src/pages/editor/store/component-config.ts +0 -61
  109. package/canvas-example-main/canvas-example-main/src/pages/editor/store/components.ts +0 -43
  110. package/canvas-example-main/canvas-example-main/src/pages/editor/store/layout.ts +0 -40
  111. package/canvas-example-main/canvas-example-main/src/pages/home/index.tsx +0 -59
  112. package/canvas-example-main/canvas-example-main/src/pages/jigsaw/index.tsx +0 -3
  113. package/canvas-example-main/canvas-example-main/src/pages/minesweeper/bomber.png +0 -0
  114. package/canvas-example-main/canvas-example-main/src/pages/minesweeper/index.tsx +0 -138
  115. package/canvas-example-main/canvas-example-main/src/pages/minesweeper/mark.png +0 -0
  116. package/canvas-example-main/canvas-example-main/src/pages/minesweeper/minesweeper.ts +0 -345
  117. package/canvas-example-main/canvas-example-main/src/pages/minesweeper/utils.ts +0 -24
  118. package/canvas-example-main/canvas-example-main/src/pages/pageflip/index.tsx +0 -200
  119. package/canvas-example-main/canvas-example-main/src/pages/pageflip/page1.jpg +0 -0
  120. package/canvas-example-main/canvas-example-main/src/pages/practice/draw/index.ts +0 -367
  121. package/canvas-example-main/canvas-example-main/src/pages/practice/index.module.less +0 -26
  122. package/canvas-example-main/canvas-example-main/src/pages/practice/index.tsx +0 -54
  123. package/canvas-example-main/canvas-example-main/src/pages/shape-editor/control.ts +0 -174
  124. package/canvas-example-main/canvas-example-main/src/pages/shape-editor/editor.ts +0 -91
  125. package/canvas-example-main/canvas-example-main/src/pages/shape-editor/index.raw.tsx +0 -159
  126. package/canvas-example-main/canvas-example-main/src/pages/shape-editor/index.tsx +0 -36
  127. package/canvas-example-main/canvas-example-main/src/pages/shape-editor/shape.ts +0 -248
  128. package/canvas-example-main/canvas-example-main/src/router.tsx +0 -53
  129. package/canvas-example-main/canvas-example-main/src/utils/storage.ts +0 -48
  130. package/canvas-example-main/canvas-example-main/src/vite-env.d.ts +0 -1
  131. package/canvas-example-main/canvas-example-main/tailwind.config.js +0 -8
  132. package/canvas-example-main/canvas-example-main/tsconfig.app.json +0 -30
  133. package/canvas-example-main/canvas-example-main/tsconfig.json +0 -7
  134. package/canvas-example-main/canvas-example-main/tsconfig.node.json +0 -22
  135. package/canvas-example-main/canvas-example-main/vite.config.ts +0 -18
  136. package/drawingBoard-main/drawingBoard-main/README.md +0 -32
  137. package/drawingBoard-main/drawingBoard-main/index.html +0 -13
  138. package/drawingBoard-main/drawingBoard-main/package.json +0 -31
  139. package/drawingBoard-main/drawingBoard-main/pnpm-lock.yaml +0 -2378
  140. package/drawingBoard-main/drawingBoard-main/public/vite.svg +0 -1
  141. package/drawingBoard-main/drawingBoard-main/src/App.vue +0 -64
  142. package/drawingBoard-main/drawingBoard-main/src/assets/huabi.svg +0 -1
  143. package/drawingBoard-main/drawingBoard-main/src/assets/huabigongju-juxing.svg +0 -1
  144. package/drawingBoard-main/drawingBoard-main/src/assets/huabigongju-tuoyuan.svg +0 -1
  145. package/drawingBoard-main/drawingBoard-main/src/assets/huabigongju-wenben.svg +0 -1
  146. package/drawingBoard-main/drawingBoard-main/src/assets/jiantougongju-hover.svg +0 -1
  147. package/drawingBoard-main/drawingBoard-main/src/assets/layer.svg +0 -1
  148. package/drawingBoard-main/drawingBoard-main/src/assets/layer_1.svg +0 -1
  149. package/drawingBoard-main/drawingBoard-main/src/assets/tuceng.svg +0 -1
  150. package/drawingBoard-main/drawingBoard-main/src/assets/tuceng_1.svg +0 -1
  151. package/drawingBoard-main/drawingBoard-main/src/assets/wujiaoxing.svg +0 -1
  152. package/drawingBoard-main/drawingBoard-main/src/assets/xiangpigongju.svg +0 -1
  153. package/drawingBoard-main/drawingBoard-main/src/assets/xuanzegongju.svg +0 -1
  154. package/drawingBoard-main/drawingBoard-main/src/assets/zhixiangongju.svg +0 -1
  155. package/drawingBoard-main/drawingBoard-main/src/components/plugins/LayerOptions.tsx +0 -67
  156. package/drawingBoard-main/drawingBoard-main/src/components/plugins/LineSegmentBackgroundColorPlugin.tsx +0 -25
  157. package/drawingBoard-main/drawingBoard-main/src/components/plugins/LineSegmentColorPlugin.tsx +0 -25
  158. package/drawingBoard-main/drawingBoard-main/src/components/plugins/LineSegmentSizePlugin.tsx +0 -26
  159. package/drawingBoard-main/drawingBoard-main/src/components/plugins/TextColor.tsx +0 -25
  160. package/drawingBoard-main/drawingBoard-main/src/components/plugins/TextSize.tsx +0 -27
  161. package/drawingBoard-main/drawingBoard-main/src/components/tools/Menu.scss +0 -10
  162. package/drawingBoard-main/drawingBoard-main/src/components/tools/Menu.tsx +0 -33
  163. package/drawingBoard-main/drawingBoard-main/src/components/tools/Tips.scss +0 -16
  164. package/drawingBoard-main/drawingBoard-main/src/components/tools/Tips.tsx +0 -5
  165. package/drawingBoard-main/drawingBoard-main/src/components/tools/Toolbar.scss +0 -26
  166. package/drawingBoard-main/drawingBoard-main/src/components/tools/Toolbar.tsx +0 -39
  167. package/drawingBoard-main/drawingBoard-main/src/components/tools/ToolbarMenu.scss +0 -45
  168. package/drawingBoard-main/drawingBoard-main/src/components/tools/ToolbarMenu.tsx +0 -61
  169. package/drawingBoard-main/drawingBoard-main/src/components/tools/index.tsx +0 -22
  170. package/drawingBoard-main/drawingBoard-main/src/main.scss +0 -4
  171. package/drawingBoard-main/drawingBoard-main/src/main.ts +0 -11
  172. package/drawingBoard-main/drawingBoard-main/src/shims-vue.d.ts +0 -5
  173. package/drawingBoard-main/drawingBoard-main/src/utils/App.ts +0 -24
  174. package/drawingBoard-main/drawingBoard-main/src/utils/DrawingBoard.ts +0 -213
  175. package/drawingBoard-main/drawingBoard-main/src/utils/History.ts +0 -70
  176. package/drawingBoard-main/drawingBoard-main/src/utils/Tools.ts +0 -241
  177. package/drawingBoard-main/drawingBoard-main/src/utils/types.ts +0 -55
  178. package/drawingBoard-main/drawingBoard-main/src/vite-env.d.ts +0 -1
  179. package/drawingBoard-main/drawingBoard-main/tsconfig.app.json +0 -36
  180. package/drawingBoard-main/drawingBoard-main/tsconfig.json +0 -7
  181. package/drawingBoard-main/drawingBoard-main/tsconfig.node.json +0 -23
  182. package/drawingBoard-main/drawingBoard-main/vite.config.ts +0 -16
  183. package/hidpi-canvas-polyfill-master.zip +0 -0
  184. package/index.js +0 -1
  185. package/src/dom.js +0 -227
  186. package/src/index.js +0 -106
  187. package/src/packages/alert/index.js +0 -8
  188. package/src/packages/alert/src/main.vue +0 -94
  189. package/src/packages/aside/index.js +0 -8
  190. package/src/packages/aside/src/main.vue +0 -20
  191. package/src/packages/autocomplete/index.js +0 -8
  192. package/src/packages/autocomplete/src/autocomplete-suggestions.vue +0 -76
  193. package/src/packages/autocomplete/src/autocomplete.vue +0 -285
  194. package/src/packages/avatar/index.js +0 -8
  195. package/src/packages/avatar/src/main.vue +0 -107
  196. package/src/packages/backtop/index.js +0 -8
  197. package/src/packages/backtop/src/main.vue +0 -110
  198. package/src/packages/badge/index.js +0 -8
  199. package/src/packages/badge/src/main.vue +0 -53
  200. package/src/packages/breadcrumb/index.js +0 -8
  201. package/src/packages/breadcrumb/src/breadcrumb-item.vue +0 -41
  202. package/src/packages/breadcrumb/src/breadcrumb.vue +0 -34
  203. package/src/packages/breadcrumb-item/index.js +0 -8
  204. package/src/packages/button/index.js +0 -8
  205. package/src/packages/button/src/button-group.vue +0 -10
  206. package/src/packages/button/src/button.vue +0 -78
  207. package/src/packages/button-group/index.js +0 -8
  208. package/src/packages/calendar/index.js +0 -8
  209. package/src/packages/calendar/src/date-table.vue +0 -200
  210. package/src/packages/calendar/src/main.vue +0 -280
  211. package/src/packages/card/index.js +0 -8
  212. package/src/packages/card/src/main.vue +0 -23
  213. package/src/packages/carousel/index.js +0 -8
  214. package/src/packages/carousel/src/item.vue +0 -138
  215. package/src/packages/carousel/src/main.vue +0 -315
  216. package/src/packages/carousel-item/index.js +0 -8
  217. package/src/packages/cascader/index.js +0 -8
  218. package/src/packages/cascader/src/cascader.vue +0 -663
  219. package/src/packages/cascader-panel/index.js +0 -8
  220. package/src/packages/cascader-panel/src/cascader-menu.vue +0 -138
  221. package/src/packages/cascader-panel/src/cascader-node.vue +0 -246
  222. package/src/packages/cascader-panel/src/cascader-panel.vue +0 -391
  223. package/src/packages/cascader-panel/src/node.js +0 -166
  224. package/src/packages/cascader-panel/src/store.js +0 -58
  225. package/src/packages/checkbox/index.js +0 -8
  226. package/src/packages/checkbox/src/checkbox-button.vue +0 -199
  227. package/src/packages/checkbox/src/checkbox-group.vue +0 -48
  228. package/src/packages/checkbox/src/checkbox.vue +0 -222
  229. package/src/packages/checkbox-button/index.js +0 -8
  230. package/src/packages/checkbox-group/index.js +0 -8
  231. package/src/packages/col/index.js +0 -9
  232. package/src/packages/col/src/col.js +0 -71
  233. package/src/packages/collapse/index.js +0 -9
  234. package/src/packages/collapse/src/collapse-item.vue +0 -114
  235. package/src/packages/collapse/src/collapse.vue +0 -73
  236. package/src/packages/collapse-item/index.js +0 -8
  237. package/src/packages/color-picker/index.js +0 -8
  238. package/src/packages/color-picker/src/color.js +0 -317
  239. package/src/packages/color-picker/src/components/alpha-slider.vue +0 -132
  240. package/src/packages/color-picker/src/components/hue-slider.vue +0 -123
  241. package/src/packages/color-picker/src/components/picker-dropdown.vue +0 -121
  242. package/src/packages/color-picker/src/components/predefine.vue +0 -61
  243. package/src/packages/color-picker/src/components/sv-panel.vue +0 -100
  244. package/src/packages/color-picker/src/draggable.js +0 -36
  245. package/src/packages/color-picker/src/main.vue +0 -188
  246. package/src/packages/container/index.js +0 -8
  247. package/src/packages/container/src/main.vue +0 -33
  248. package/src/packages/date-picker/index.js +0 -8
  249. package/src/packages/date-picker/src/basic/date-table.vue +0 -441
  250. package/src/packages/date-picker/src/basic/month-table.vue +0 -269
  251. package/src/packages/date-picker/src/basic/time-spinner.vue +0 -304
  252. package/src/packages/date-picker/src/basic/year-table.vue +0 -111
  253. package/src/packages/date-picker/src/panel/date-range.vue +0 -680
  254. package/src/packages/date-picker/src/panel/date.vue +0 -609
  255. package/src/packages/date-picker/src/panel/month-range.vue +0 -289
  256. package/src/packages/date-picker/src/panel/time-range.vue +0 -248
  257. package/src/packages/date-picker/src/panel/time-select.vue +0 -178
  258. package/src/packages/date-picker/src/panel/time.vue +0 -186
  259. package/src/packages/date-picker/src/picker/date-picker.js +0 -43
  260. package/src/packages/date-picker/src/picker/time-picker.js +0 -39
  261. package/src/packages/date-picker/src/picker/time-select.js +0 -21
  262. package/src/packages/date-picker/src/picker.vue +0 -956
  263. package/src/packages/descriptions/index.js +0 -8
  264. package/src/packages/descriptions/src/descriptions-item.js +0 -30
  265. package/src/packages/descriptions/src/descriptions-row.js +0 -116
  266. package/src/packages/descriptions/src/index.js +0 -180
  267. package/src/packages/descriptions-item/index.js +0 -8
  268. package/src/packages/dialog/index.js +0 -8
  269. package/src/packages/dialog/src/component.vue +0 -212
  270. package/src/packages/divider/index.js +0 -8
  271. package/src/packages/divider/src/main.vue +0 -37
  272. package/src/packages/drawer/index.js +0 -8
  273. package/src/packages/drawer/src/main.vue +0 -205
  274. package/src/packages/dropdown/index.js +0 -8
  275. package/src/packages/dropdown/src/dropdown-item.vue +0 -37
  276. package/src/packages/dropdown/src/dropdown-menu.vue +0 -63
  277. package/src/packages/dropdown/src/dropdown.vue +0 -293
  278. package/src/packages/dropdown-item/index.js +0 -8
  279. package/src/packages/dropdown-menu/index.js +0 -8
  280. package/src/packages/empty/index.js +0 -7
  281. package/src/packages/empty/src/img-empty.vue +0 -132
  282. package/src/packages/empty/src/index.vue +0 -50
  283. package/src/packages/footer/index.js +0 -8
  284. package/src/packages/footer/src/main.vue +0 -20
  285. package/src/packages/form/index.js +0 -8
  286. package/src/packages/form/src/form-item.vue +0 -324
  287. package/src/packages/form/src/form.vue +0 -182
  288. package/src/packages/form/src/label-wrap.vue +0 -78
  289. package/src/packages/form-item/index.js +0 -8
  290. package/src/packages/header/index.js +0 -8
  291. package/src/packages/header/src/main.vue +0 -20
  292. package/src/packages/icon/index.js +0 -8
  293. package/src/packages/icon/src/icon.vue +0 -13
  294. package/src/packages/image/index.js +0 -8
  295. package/src/packages/image/src/image-viewer.vue +0 -330
  296. package/src/packages/image/src/main.vue +0 -249
  297. package/src/packages/infinite-scroll/index.js +0 -8
  298. package/src/packages/infinite-scroll/src/main.js +0 -150
  299. package/src/packages/input/index.js +0 -8
  300. package/src/packages/input/src/calcTextareaHeight.js +0 -104
  301. package/src/packages/input/src/input.vue +0 -440
  302. package/src/packages/input-number/index.js +0 -8
  303. package/src/packages/input-number/src/input-number.vue +0 -283
  304. package/src/packages/link/index.js +0 -8
  305. package/src/packages/link/src/main.vue +0 -53
  306. package/src/packages/loading/index.js +0 -11
  307. package/src/packages/loading/src/directive.js +0 -133
  308. package/src/packages/loading/src/index.js +0 -106
  309. package/src/packages/loading/src/loading.vue +0 -41
  310. package/src/packages/main/index.js +0 -8
  311. package/src/packages/main/src/main.vue +0 -12
  312. package/src/packages/menu/index.js +0 -8
  313. package/src/packages/menu/src/menu-item-group.vue +0 -45
  314. package/src/packages/menu/src/menu-item.vue +0 -112
  315. package/src/packages/menu/src/menu-mixin.js +0 -44
  316. package/src/packages/menu/src/menu.vue +0 -325
  317. package/src/packages/menu/src/submenu.vue +0 -349
  318. package/src/packages/menu-item/index.js +0 -8
  319. package/src/packages/menu-item-group/index.js +0 -8
  320. package/src/packages/message/index.js +0 -2
  321. package/src/packages/message/src/main.js +0 -91
  322. package/src/packages/message/src/main.vue +0 -117
  323. package/src/packages/message-box/index.js +0 -2
  324. package/src/packages/message-box/src/main.js +0 -216
  325. package/src/packages/message-box/src/main.vue +0 -332
  326. package/src/packages/notification/index.js +0 -2
  327. package/src/packages/notification/src/main.js +0 -94
  328. package/src/packages/notification/src/main.vue +0 -152
  329. package/src/packages/option/index.js +0 -8
  330. package/src/packages/option-group/index.js +0 -8
  331. package/src/packages/page-header/index.js +0 -8
  332. package/src/packages/page-header/src/main.vue +0 -30
  333. package/src/packages/pagination/index.js +0 -8
  334. package/src/packages/pagination/src/pager.vue +0 -163
  335. package/src/packages/pagination/src/pagination.js +0 -386
  336. package/src/packages/popconfirm/index.js +0 -8
  337. package/src/packages/popconfirm/src/main.vue +0 -104
  338. package/src/packages/popover/index.js +0 -14
  339. package/src/packages/popover/src/directive.js +0 -20
  340. package/src/packages/popover/src/main.vue +0 -237
  341. package/src/packages/progress/index.js +0 -8
  342. package/src/packages/progress/src/progress.vue +0 -235
  343. package/src/packages/radio/index.js +0 -8
  344. package/src/packages/radio/src/radio-button.vue +0 -115
  345. package/src/packages/radio/src/radio-group.vue +0 -113
  346. package/src/packages/radio/src/radio.vue +0 -134
  347. package/src/packages/radio-button/index.js +0 -8
  348. package/src/packages/radio-group/index.js +0 -8
  349. package/src/packages/rate/index.js +0 -8
  350. package/src/packages/rate/src/main.vue +0 -348
  351. package/src/packages/result/index.js +0 -8
  352. package/src/packages/result/src/icon-error.vue +0 -13
  353. package/src/packages/result/src/icon-info.vue +0 -13
  354. package/src/packages/result/src/icon-success.vue +0 -13
  355. package/src/packages/result/src/icon-warning.vue +0 -13
  356. package/src/packages/result/src/index.vue +0 -65
  357. package/src/packages/row/index.js +0 -9
  358. package/src/packages/row/src/row.js +0 -44
  359. package/src/packages/scrollbar/index.js +0 -8
  360. package/src/packages/scrollbar/src/bar.js +0 -92
  361. package/src/packages/scrollbar/src/main.js +0 -130
  362. package/src/packages/scrollbar/src/util.js +0 -34
  363. package/src/packages/select/index.js +0 -8
  364. package/src/packages/select/src/navigation-mixin.js +0 -54
  365. package/src/packages/select/src/option-group.vue +0 -60
  366. package/src/packages/select/src/option.vue +0 -168
  367. package/src/packages/select/src/select-dropdown.vue +0 -74
  368. package/src/packages/select/src/select.vue +0 -900
  369. package/src/packages/skeleton/index.js +0 -8
  370. package/src/packages/skeleton/src/img-placeholder.vue +0 -16
  371. package/src/packages/skeleton/src/index.vue +0 -76
  372. package/src/packages/skeleton/src/item.vue +0 -22
  373. package/src/packages/skeleton-item/index.js +0 -8
  374. package/src/packages/slider/index.js +0 -8
  375. package/src/packages/slider/src/button.vue +0 -238
  376. package/src/packages/slider/src/main.vue +0 -427
  377. package/src/packages/slider/src/marker.js +0 -18
  378. package/src/packages/spinner/index.js +0 -8
  379. package/src/packages/spinner/src/spinner.vue +0 -27
  380. package/src/packages/statistic/index.js +0 -8
  381. package/src/packages/statistic/src/main.vue +0 -204
  382. package/src/packages/step/index.js +0 -8
  383. package/src/packages/steps/README.md +0 -69
  384. package/src/packages/steps/index.js +0 -8
  385. package/src/packages/steps/src/step.vue +0 -184
  386. package/src/packages/steps/src/steps.vue +0 -68
  387. package/src/packages/submenu/index.js +0 -8
  388. package/src/packages/switch/index.js +0 -9
  389. package/src/packages/switch/src/component.vue +0 -174
  390. package/src/packages/tab-pane/index.js +0 -8
  391. package/src/packages/table/index.js +0 -8
  392. package/src/packages/table/src/config.js +0 -124
  393. package/src/packages/table/src/dropdown.js +0 -28
  394. package/src/packages/table/src/filter-panel.vue +0 -194
  395. package/src/packages/table/src/layout-observer.js +0 -68
  396. package/src/packages/table/src/store/current.js +0 -76
  397. package/src/packages/table/src/store/expand.js +0 -65
  398. package/src/packages/table/src/store/helper.js +0 -41
  399. package/src/packages/table/src/store/index.js +0 -147
  400. package/src/packages/table/src/store/tree.js +0 -209
  401. package/src/packages/table/src/store/watcher.js +0 -381
  402. package/src/packages/table/src/table-body.js +0 -469
  403. package/src/packages/table/src/table-column.js +0 -319
  404. package/src/packages/table/src/table-footer.js +0 -153
  405. package/src/packages/table/src/table-header.js +0 -511
  406. package/src/packages/table/src/table-layout.js +0 -249
  407. package/src/packages/table/src/table-row.js +0 -101
  408. package/src/packages/table/src/table.vue +0 -712
  409. package/src/packages/table/src/util.js +0 -273
  410. package/src/packages/table-column/index.js +0 -8
  411. package/src/packages/tabs/index.js +0 -8
  412. package/src/packages/tabs/src/tab-bar.vue +0 -57
  413. package/src/packages/tabs/src/tab-nav.vue +0 -294
  414. package/src/packages/tabs/src/tab-pane.vue +0 -56
  415. package/src/packages/tabs/src/tabs.vue +0 -191
  416. package/src/packages/tag/index.js +0 -8
  417. package/src/packages/tag/src/tag.vue +0 -58
  418. package/src/packages/theme-chalk/README.md +0 -33
  419. package/src/packages/theme-chalk/gulpfile.js +0 -25
  420. package/src/packages/theme-chalk/package.json +0 -35
  421. package/src/packages/theme-chalk/src/alert.scss +0 -147
  422. package/src/packages/theme-chalk/src/aside.scss +0 -7
  423. package/src/packages/theme-chalk/src/autocomplete.scss +0 -80
  424. package/src/packages/theme-chalk/src/avatar.scss +0 -51
  425. package/src/packages/theme-chalk/src/backtop.scss +0 -22
  426. package/src/packages/theme-chalk/src/badge.scss +0 -57
  427. package/src/packages/theme-chalk/src/base.scss +0 -2
  428. package/src/packages/theme-chalk/src/breadcrumb-item.scss +0 -0
  429. package/src/packages/theme-chalk/src/breadcrumb.scss +0 -55
  430. package/src/packages/theme-chalk/src/button-group.scss +0 -0
  431. package/src/packages/theme-chalk/src/button.scss +0 -262
  432. package/src/packages/theme-chalk/src/calendar.scss +0 -79
  433. package/src/packages/theme-chalk/src/card.scss +0 -32
  434. package/src/packages/theme-chalk/src/carousel-item.scss +0 -50
  435. package/src/packages/theme-chalk/src/carousel.scss +0 -161
  436. package/src/packages/theme-chalk/src/cascader-panel.scss +0 -120
  437. package/src/packages/theme-chalk/src/cascader.scss +0 -182
  438. package/src/packages/theme-chalk/src/checkbox-button.scss +0 -0
  439. package/src/packages/theme-chalk/src/checkbox-group.scss +0 -0
  440. package/src/packages/theme-chalk/src/checkbox.scss +0 -359
  441. package/src/packages/theme-chalk/src/col.scss +0 -156
  442. package/src/packages/theme-chalk/src/collapse-item.scss +0 -0
  443. package/src/packages/theme-chalk/src/collapse.scss +0 -63
  444. package/src/packages/theme-chalk/src/color-picker.scss +0 -384
  445. package/src/packages/theme-chalk/src/common/popup.scss +0 -42
  446. package/src/packages/theme-chalk/src/common/transition.scss +0 -99
  447. package/src/packages/theme-chalk/src/common/var.scss +0 -1028
  448. package/src/packages/theme-chalk/src/container.scss +0 -14
  449. package/src/packages/theme-chalk/src/date-picker/date-picker.scss +0 -97
  450. package/src/packages/theme-chalk/src/date-picker/date-range-picker.scss +0 -101
  451. package/src/packages/theme-chalk/src/date-picker/date-table.scss +0 -151
  452. package/src/packages/theme-chalk/src/date-picker/month-table.scss +0 -82
  453. package/src/packages/theme-chalk/src/date-picker/picker-panel.scss +0 -117
  454. package/src/packages/theme-chalk/src/date-picker/picker.scss +0 -197
  455. package/src/packages/theme-chalk/src/date-picker/time-picker.scss +0 -85
  456. package/src/packages/theme-chalk/src/date-picker/time-range-picker.scss +0 -31
  457. package/src/packages/theme-chalk/src/date-picker/time-spinner.scss +0 -110
  458. package/src/packages/theme-chalk/src/date-picker/year-table.scss +0 -51
  459. package/src/packages/theme-chalk/src/date-picker.scss +0 -12
  460. package/src/packages/theme-chalk/src/descriptions-item.scss +0 -42
  461. package/src/packages/theme-chalk/src/descriptions.scss +0 -111
  462. package/src/packages/theme-chalk/src/dialog.scss +0 -123
  463. package/src/packages/theme-chalk/src/display.scss +0 -12
  464. package/src/packages/theme-chalk/src/divider.scss +0 -47
  465. package/src/packages/theme-chalk/src/drawer.scss +0 -219
  466. package/src/packages/theme-chalk/src/dropdown-item.scss +0 -0
  467. package/src/packages/theme-chalk/src/dropdown-menu.scss +0 -0
  468. package/src/packages/theme-chalk/src/dropdown.scss +0 -182
  469. package/src/packages/theme-chalk/src/empty.scss +0 -45
  470. package/src/packages/theme-chalk/src/fonts/element-icons.ttf +0 -0
  471. package/src/packages/theme-chalk/src/fonts/element-icons.woff +0 -0
  472. package/src/packages/theme-chalk/src/footer.scss +0 -8
  473. package/src/packages/theme-chalk/src/form-item.scss +0 -0
  474. package/src/packages/theme-chalk/src/form.scss +0 -167
  475. package/src/packages/theme-chalk/src/header.scss +0 -8
  476. package/src/packages/theme-chalk/src/icon.scss +0 -1167
  477. package/src/packages/theme-chalk/src/image.scss +0 -179
  478. package/src/packages/theme-chalk/src/index.scss +0 -87
  479. package/src/packages/theme-chalk/src/infinite-scroll.scss +0 -0
  480. package/src/packages/theme-chalk/src/infiniteScroll.scss +0 -0
  481. package/src/packages/theme-chalk/src/input-number.scss +0 -180
  482. package/src/packages/theme-chalk/src/input.scss +0 -360
  483. package/src/packages/theme-chalk/src/link.scss +0 -81
  484. package/src/packages/theme-chalk/src/loading.scss +0 -96
  485. package/src/packages/theme-chalk/src/main.scss +0 -12
  486. package/src/packages/theme-chalk/src/menu-item-group.scss +0 -0
  487. package/src/packages/theme-chalk/src/menu-item.scss +0 -0
  488. package/src/packages/theme-chalk/src/menu.scss +0 -289
  489. package/src/packages/theme-chalk/src/message-box.scss +0 -226
  490. package/src/packages/theme-chalk/src/message.scss +0 -120
  491. package/src/packages/theme-chalk/src/mixins/_button.scss +0 -81
  492. package/src/packages/theme-chalk/src/mixins/config.scss +0 -4
  493. package/src/packages/theme-chalk/src/mixins/function.scss +0 -44
  494. package/src/packages/theme-chalk/src/mixins/mixins.scss +0 -190
  495. package/src/packages/theme-chalk/src/mixins/utils.scss +0 -39
  496. package/src/packages/theme-chalk/src/notification.scss +0 -99
  497. package/src/packages/theme-chalk/src/option-group.scss +0 -42
  498. package/src/packages/theme-chalk/src/option.scss +0 -36
  499. package/src/packages/theme-chalk/src/page-header.scss +0 -41
  500. package/src/packages/theme-chalk/src/pagination.scss +0 -295
  501. package/src/packages/theme-chalk/src/popconfirm.scss +0 -16
  502. package/src/packages/theme-chalk/src/popover.scss +0 -40
  503. package/src/packages/theme-chalk/src/popper.scss +0 -101
  504. package/src/packages/theme-chalk/src/progress.scss +0 -141
  505. package/src/packages/theme-chalk/src/radio-button.scss +0 -113
  506. package/src/packages/theme-chalk/src/radio-group.scss +0 -9
  507. package/src/packages/theme-chalk/src/radio.scss +0 -199
  508. package/src/packages/theme-chalk/src/rate.scss +0 -49
  509. package/src/packages/theme-chalk/src/reset.scss +0 -79
  510. package/src/packages/theme-chalk/src/result.scss +0 -61
  511. package/src/packages/theme-chalk/src/row.scss +0 -43
  512. package/src/packages/theme-chalk/src/scrollbar.scss +0 -72
  513. package/src/packages/theme-chalk/src/select-dropdown.scss +0 -62
  514. package/src/packages/theme-chalk/src/select.scss +0 -152
  515. package/src/packages/theme-chalk/src/skeleton-item.scss +0 -84
  516. package/src/packages/theme-chalk/src/skeleton.scss +0 -40
  517. package/src/packages/theme-chalk/src/slider.scss +0 -250
  518. package/src/packages/theme-chalk/src/spinner.scss +0 -44
  519. package/src/packages/theme-chalk/src/statistic.scss +0 -38
  520. package/src/packages/theme-chalk/src/step.scss +0 -317
  521. package/src/packages/theme-chalk/src/steps.scss +0 -20
  522. package/src/packages/theme-chalk/src/submenu.scss +0 -0
  523. package/src/packages/theme-chalk/src/switch.scss +0 -116
  524. package/src/packages/theme-chalk/src/tab-pane.scss +0 -0
  525. package/src/packages/theme-chalk/src/table-column.scss +0 -97
  526. package/src/packages/theme-chalk/src/table.scss +0 -564
  527. package/src/packages/theme-chalk/src/tabs.scss +0 -602
  528. package/src/packages/theme-chalk/src/tag.scss +0 -163
  529. package/src/packages/theme-chalk/src/time-picker.scss +0 -8
  530. package/src/packages/theme-chalk/src/time-select.scss +0 -37
  531. package/src/packages/theme-chalk/src/timeline-item.scss +0 -86
  532. package/src/packages/theme-chalk/src/timeline.scss +0 -14
  533. package/src/packages/theme-chalk/src/tooltip.scss +0 -141
  534. package/src/packages/theme-chalk/src/transfer.scss +0 -227
  535. package/src/packages/theme-chalk/src/tree.scss +0 -123
  536. package/src/packages/theme-chalk/src/upload.scss +0 -603
  537. package/src/packages/time-picker/index.js +0 -8
  538. package/src/packages/time-select/index.js +0 -8
  539. package/src/packages/timeline/index.js +0 -8
  540. package/src/packages/timeline/src/item.vue +0 -73
  541. package/src/packages/timeline/src/main.vue +0 -33
  542. package/src/packages/timeline-item/index.js +0 -8
  543. package/src/packages/tooltip/index.js +0 -8
  544. package/src/packages/tooltip/src/main.js +0 -242
  545. package/src/packages/transfer/index.js +0 -8
  546. package/src/packages/transfer/src/main.vue +0 -231
  547. package/src/packages/transfer/src/transfer-panel.vue +0 -251
  548. package/src/packages/tree/index.js +0 -8
  549. package/src/packages/tree/src/model/node.js +0 -484
  550. package/src/packages/tree/src/model/tree-store.js +0 -340
  551. package/src/packages/tree/src/model/util.js +0 -27
  552. package/src/packages/tree/src/tree-node.vue +0 -279
  553. package/src/packages/tree/src/tree.vue +0 -496
  554. package/src/packages/upload/index.js +0 -8
  555. package/src/packages/upload/src/ajax.js +0 -85
  556. package/src/packages/upload/src/index.vue +0 -338
  557. package/src/packages/upload/src/upload-dragger.vue +0 -70
  558. package/src/packages/upload/src/upload-list.vue +0 -105
  559. package/src/packages/upload/src/upload.vue +0 -211
  560. package/src/src/directives/mousewheel.js +0 -18
  561. package/src/src/directives/repeat-click.js +0 -26
  562. package/src/src/index.js +0 -309
  563. package/src/src/locale/format.js +0 -46
  564. package/src/src/locale/index.js +0 -48
  565. package/src/src/locale/lang/af-ZA.js +0 -123
  566. package/src/src/locale/lang/ar.js +0 -122
  567. package/src/src/locale/lang/az.js +0 -126
  568. package/src/src/locale/lang/bg.js +0 -123
  569. package/src/src/locale/lang/bn.js +0 -126
  570. package/src/src/locale/lang/ca.js +0 -122
  571. package/src/src/locale/lang/cs-CZ.js +0 -125
  572. package/src/src/locale/lang/da.js +0 -122
  573. package/src/src/locale/lang/de.js +0 -124
  574. package/src/src/locale/lang/ee.js +0 -123
  575. package/src/src/locale/lang/el.js +0 -123
  576. package/src/src/locale/lang/en.js +0 -123
  577. package/src/src/locale/lang/eo.js +0 -123
  578. package/src/src/locale/lang/es.js +0 -122
  579. package/src/src/locale/lang/eu.js +0 -123
  580. package/src/src/locale/lang/fa.js +0 -123
  581. package/src/src/locale/lang/fi.js +0 -123
  582. package/src/src/locale/lang/fr.js +0 -122
  583. package/src/src/locale/lang/he.js +0 -123
  584. package/src/src/locale/lang/hr.js +0 -123
  585. package/src/src/locale/lang/hu.js +0 -122
  586. package/src/src/locale/lang/hy-AM.js +0 -123
  587. package/src/src/locale/lang/id.js +0 -123
  588. package/src/src/locale/lang/is.js +0 -124
  589. package/src/src/locale/lang/it.js +0 -122
  590. package/src/src/locale/lang/ja.js +0 -123
  591. package/src/src/locale/lang/kg.js +0 -123
  592. package/src/src/locale/lang/km.js +0 -123
  593. package/src/src/locale/lang/ko.js +0 -123
  594. package/src/src/locale/lang/ku.js +0 -123
  595. package/src/src/locale/lang/kz.js +0 -123
  596. package/src/src/locale/lang/lo-LA.js +0 -126
  597. package/src/src/locale/lang/lt.js +0 -123
  598. package/src/src/locale/lang/lv.js +0 -123
  599. package/src/src/locale/lang/mn.js +0 -123
  600. package/src/src/locale/lang/ms.js +0 -122
  601. package/src/src/locale/lang/nb-NO.js +0 -122
  602. package/src/src/locale/lang/nl.js +0 -123
  603. package/src/src/locale/lang/pl.js +0 -123
  604. package/src/src/locale/lang/pt-br.js +0 -123
  605. package/src/src/locale/lang/pt.js +0 -123
  606. package/src/src/locale/lang/ro.js +0 -123
  607. package/src/src/locale/lang/ru-RU.js +0 -123
  608. package/src/src/locale/lang/si.js +0 -123
  609. package/src/src/locale/lang/sk.js +0 -125
  610. package/src/src/locale/lang/sl.js +0 -123
  611. package/src/src/locale/lang/sr-Latn.js +0 -123
  612. package/src/src/locale/lang/sr.js +0 -123
  613. package/src/src/locale/lang/sv-SE.js +0 -123
  614. package/src/src/locale/lang/sw.js +0 -123
  615. package/src/src/locale/lang/ta.js +0 -122
  616. package/src/src/locale/lang/th.js +0 -123
  617. package/src/src/locale/lang/tk.js +0 -123
  618. package/src/src/locale/lang/tr-TR.js +0 -123
  619. package/src/src/locale/lang/ua.js +0 -123
  620. package/src/src/locale/lang/ug-CN.js +0 -123
  621. package/src/src/locale/lang/uz-UZ.js +0 -123
  622. package/src/src/locale/lang/vi.js +0 -123
  623. package/src/src/locale/lang/zh-CN.js +0 -123
  624. package/src/src/locale/lang/zh-TW.js +0 -123
  625. package/src/src/mixins/emitter.js +0 -33
  626. package/src/src/mixins/focus.js +0 -9
  627. package/src/src/mixins/locale.js +0 -9
  628. package/src/src/mixins/migrating.js +0 -54
  629. package/src/src/transitions/collapse-transition.js +0 -77
  630. package/src/src/utils/after-leave.js +0 -27
  631. package/src/src/utils/aria-dialog.js +0 -90
  632. package/src/src/utils/aria-utils.js +0 -122
  633. package/src/src/utils/clickoutside.js +0 -76
  634. package/src/src/utils/date-util.js +0 -282
  635. package/src/src/utils/date.js +0 -368
  636. package/src/src/utils/dom.js +0 -227
  637. package/src/src/utils/lodash.js +0 -18075
  638. package/src/src/utils/menu/aria-menubar.js +0 -14
  639. package/src/src/utils/menu/aria-menuitem.js +0 -49
  640. package/src/src/utils/menu/aria-submenu.js +0 -59
  641. package/src/src/utils/merge.js +0 -15
  642. package/src/src/utils/popper.js +0 -1276
  643. package/src/src/utils/popup/index.js +0 -218
  644. package/src/src/utils/popup/popup-manager.js +0 -194
  645. package/src/src/utils/resize-event.js +0 -36
  646. package/src/src/utils/scroll-into-view.js +0 -27
  647. package/src/src/utils/scrollbar-width.js +0 -29
  648. package/src/src/utils/shared.js +0 -7
  649. package/src/src/utils/types.js +0 -40
  650. package/src/src/utils/util.js +0 -245
  651. package/src/src/utils/vdom.js +0 -5
  652. package/src/src/utils/vue-popper.js +0 -198
  653. package/src//346/226/260/345/273/272 /346/226/207/346/234/254/346/226/207/346/241/243.txt" +0 -256
@@ -1,143 +0,0 @@
1
- /**
2
- * Created by zjy on 2016/4/22.
3
- */
4
- define(function () {
5
- var write = {
6
- canvas: null, //html中的canvas对象,主要标签
7
- context: null, //canvas对象获取的context,用于绘图
8
- isWriting: false,//是否正在下笔写字
9
- lineWidthMax: 0, //画笔最大粗细
10
- lineWidthMin: 1, //画笔最小粗细
11
-
12
- lastX: 0,//画笔上次停留位置
13
- lastY: 0,
14
- lastTime: 0, //上次笔时间
15
- lastLineWidth: 0,
16
-
17
- init: function (canvas) {
18
-
19
- this.canvas = canvas;
20
- this.lineWidthMax = canvas.width/20;
21
- this.lastLineWidth = this.lineWidthMax /2;
22
-
23
- this.context = this.canvas.getContext('2d');
24
- //描边处理,使笔画圆滑
25
- this.context.lineCap = 'round';
26
- this.context.lineJoin = 'round';
27
-
28
- //事件绑定
29
- this.bindEvent();
30
- },
31
-
32
- bindEvent: function () {
33
- var self = this;
34
- //pc端
35
- //下笔
36
- self.canvas.onmousedown = function (e) {
37
- e.preventDefault();
38
- self.startWrite(self.getCo(e.clientX, e.clientY))
39
- };
40
-
41
- //移动
42
- self.canvas.onmousemove = function (e) {
43
- e.preventDefault();
44
- if(self.isWriting){
45
- self.writing(self.getCo(e.clientX, e.clientY));
46
- }
47
- };
48
-
49
- //收笔
50
- self.canvas.onmouseup = function (e) {
51
- e.preventDefault();
52
- self.endWrite();
53
- };
54
-
55
- //出界
56
- self.canvas.onmouseout = function (e) {
57
- e.preventDefault();
58
- if(self.isWriting) {
59
- self.endWrite();
60
- }
61
- };
62
-
63
- //下笔
64
- self.canvas.addEventListener('touchstart', function (e) {
65
- e.preventDefault();
66
- var touch = e.touches[0];
67
- self.startWrite(self.getCo(touch.clientX, touch.clientY))
68
- });
69
-
70
- //移动
71
- self.canvas.addEventListener('touchmove', function (e) {
72
- e.preventDefault();
73
- if(self.isWriting){
74
- var touch = e.touches[0];
75
- self.writing(self.getCo(touch.clientX, touch.clientY));
76
- }
77
- });
78
-
79
- //收笔
80
- self.canvas.addEventListener('touchend', function (e) {
81
- e.preventDefault();
82
- self.endWrite();
83
- })
84
- },
85
-
86
- //描绘区
87
- startWrite: function (co) {
88
- this.isWriting = true;
89
- this.lastX = co.x;
90
- this.lastY = co.y;
91
- this.lastTime = new Date().getTime();
92
- this.lastLineWidth = this.lineWidthMax /2;
93
- },
94
- writing: function (co) {
95
- var curTime = new Date().getTime();
96
- if(curTime != this.lastTime){
97
- this.context.beginPath();
98
- this.context.lineWidth = this.getLineWidth(this.getS(this.lastX, this.lastY, co.x, co.y), curTime - this.lastTime);
99
- this.context.moveTo(this.lastX, this.lastY);
100
- this.context.lineTo(co.x, co.y);
101
- this.context.stroke();
102
-
103
- this.lastX = co.x;
104
- this.lastY = co.y;
105
- this.lastTime = curTime;
106
- }
107
- },
108
-
109
- endWrite: function(){
110
- this.isWriting = false;
111
- },
112
-
113
- //辅助函数区
114
- getCo: function (clientX, clientY) {
115
- var canvasLT = this.canvas.getBoundingClientRect();
116
- return {x: clientX - canvasLT.left, y: clientY - canvasLT.top};
117
- },
118
- getS: function (sx, sy, ex, ey) {
119
- return Math.sqrt((ex - sx)*(ex - sx) + (ey - sy)*(ey - sy))
120
- },
121
- getLineWidth: function (s, t) {
122
- var v = s/t;
123
- var resultLineWidth = 0;
124
- if(v < 0.1){
125
- resultLineWidth = this.lineWidthMax;
126
- }
127
- else if(v >8){
128
- resultLineWidth = this.lineWidthMin;
129
- }
130
- else{ // 根据速度赋予线条宽度值
131
- resultLineWidth = this.lineWidthMax - (v-0.1)/(8-0.1)*(this.lineWidthMax - this.lineWidthMin)
132
- }
133
-
134
- //防止变化突然,使线条平滑,借鉴上次线条粗细取值
135
- resultLineWidth = this.lastLineWidth * 3/5 + resultLineWidth * 2/5;
136
-
137
- this.lastLineWidth = resultLineWidth;
138
- return resultLineWidth;
139
-
140
- }
141
- };
142
- return write;
143
- });
@@ -1,17 +0,0 @@
1
- # 毛笔字帖
2
-
3
- 使用canvas绘图技术,可用鼠标或者手指在屏幕区写字,模仿毛笔字效果
4
- [在线演示](http://zjy.space/canvas-demo/write/)
5
-
6
- ## 效果图
7
-
8
- ### 电脑端
9
- ![](http://i2.piimg.com/3aefad286a3e104a.png)
10
-
11
- ### 手机端
12
- ![](http://i2.piimg.com/811a35eaec95a37d.jpg)
13
-
14
- ## 博客
15
- 这里有对应的一篇教程博客,有兴趣的可以参考一下,博客里也有提供慕课网[@liuyubobobo老师](http://www.imooc.com/u/108955/courses?sort=publish)的视频教程连接
16
-
17
- [利用canvas实现毛笔字帖](http://blog.zjy.space/2016/04/23/%E6%AF%9B%E7%AC%94%E5%AD%97%E5%B8%961/)
@@ -1,40 +0,0 @@
1
- #canvas{
2
- display: block; margin: 20px auto; border: #ff1722 5px solid;
3
- }
4
- /*控制器*/
5
- #controller{
6
- text-align: center;
7
- }
8
- #controller>div{
9
- display: inline-block; width: 30px; height: 30px; border: gray 2px solid;
10
- }
11
- #black{
12
- background: black;
13
- }
14
- #red{
15
- background: red;
16
- }
17
- #green{
18
- background: green;
19
- }
20
- #yellow{
21
- background: yellow;
22
- }
23
- #purple{
24
- background: purple;
25
- }
26
- #orange{
27
- background: orange;
28
- }
29
- #blue{
30
- background: blue;
31
- }
32
- #indigo{
33
- background: indigo;
34
- }
35
- #controller>div.on{
36
- border-color: red;
37
- }
38
- #reset{
39
- display: inline-block; vertical-align: top; width: 50px; height: 34px;
40
- }
@@ -1,27 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <title>毛笔字</title>
6
- <meta name="viewport" content="width=device-width;height=device-height;initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
7
- <link href="css/write.css" rel="stylesheet" type="text/css">
8
- </head>
9
- <body>
10
- <canvas id="canvas">
11
- 您的浏览器版本不支持canvas,请更新或者下载chrome
12
- </canvas>
13
- <div id="controller">
14
- <div id="black" class="on"></div>
15
- <div id="red"></div>
16
- <div id="green"></div>
17
- <div id="yellow"></div>
18
- <div id="purple"></div>
19
- <div id="orange"></div>
20
- <div id="blue"></div>
21
- <div id="indigo"></div>
22
- <button id="reset">清除</button>
23
- </div>
24
- <script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/5.0.1/Rx.min.js"></script>
25
- <script src="js/require.js" data-main="js/index"></script>
26
- </body>
27
- </html>
@@ -1,43 +0,0 @@
1
- /**
2
- * Created by zjy on 2016/4/23.
3
- */
4
- define([ 'paper' ], function (paper) {
5
- var controller = {
6
- canvas: null,
7
- context: null,
8
-
9
- init: function (canvas) {
10
- this.canvas = canvas;
11
- this.context = canvas.getContext('2d');
12
- this.bindEvent();
13
- },
14
-
15
- bindEvent: function () {
16
- var self = this;
17
- document.getElementById('controller').addEventListener('click', function (event) {
18
- var target = event.target;
19
- if(target.nodeName.toLowerCase() == 'div') {
20
- self.setColor(target);
21
- }
22
- else if(target.id == 'reset') {
23
- self.clear();
24
- }
25
- });
26
- },
27
-
28
- setColor: function (target) {
29
- //移除其他标签的class
30
- document.querySelector('.on').className = '';
31
- this.context.strokeStyle = target.id;
32
- target.className += ' on';
33
- },
34
-
35
- clear: function () {
36
- //清除
37
- this.context.clearRect(0, 0, this.canvas.width, this.canvas.height);
38
- //描写米字格
39
- paper.drawPaper();
40
- }
41
- };
42
- return controller;
43
- });
@@ -1,10 +0,0 @@
1
- /**
2
- * Created by zjy on 2016/4/22.
3
- */
4
- require([ 'paper', 'controller', 'write' ], function (paper, controller, write) {
5
- //初始化获取canvas和context
6
- var canvas = document.getElementById('canvas');
7
- paper.init(canvas);
8
- controller.init(canvas);
9
- write.init(canvas);
10
- });
@@ -1,65 +0,0 @@
1
- /**
2
- * Created by zjy on 2016/4/22.
3
- */
4
- define(function () {
5
- var paper = {
6
- canvas: null, //html中的canvas对象,主要标签
7
- context: null, //canvas对象获取的context,用于绘图
8
- init: function (canvas) {
9
- this.canvas = canvas;//接收外界canvas,赋值给自己的属性``canvas``,在下面的其他方法中需要用到
10
- this.context = canvas.getContext('2d');//通过canvas获取context,赋值给自己的属性``context``,在下面的其他方法中需要用到
11
-
12
- //动态设置canvas大小,兼容手机和pc
13
- this.canvas.width = Math.min(500, window.innerWidth - 20);// 米字格最大只能为500px
14
- this.canvas.height = this.canvas.width;
15
-
16
- this.drawPaper(); //绘制米字格背景,自己完善drawPaper方法
17
- },
18
- drawPaper: function () {
19
- this.drawDotted(0, 0, this.canvas.width, this.canvas.height);//左上角到右下角的斜线
20
- this.drawDotted(this.canvas.width, 0, 0, this.canvas.height);//左下角到右上角的斜线
21
- this.drawDotted(this.canvas.width / 2, 0, this.canvas.width / 2, this.canvas.height);//中间的横线
22
- this.drawDotted(0, this.canvas.height / 2, this.canvas.width, this.canvas.height / 2);//中间的竖线
23
- },
24
-
25
- drawDotted: function (sx, sy, ex, ey) {
26
- var lineInterval = 5;//虚线的间隔
27
- this.context.save();//保存当前的context状态(快照,用于恢复,防止状态设置紊乱污染)
28
-
29
- this.context.lineWidth = 3;//线宽
30
- this.context.strokeStyle = '#ff1722';//线条颜色
31
-
32
- //setLineDash 虚线设置接口比较新,为了保险起见,自己编写一下
33
- if(this.context.setLineDash) { // 使用h5的setLineDash方法
34
- this.context.moveTo(sx, sy);
35
- this.context.lineTo(ex, ey);
36
- this.context.setLineDash([ lineInterval, lineInterval ]);//[线宽, 间隔宽]
37
- }
38
- else{ //setLineDash不存在,自己手动处理
39
- //len 虚线要绘制成多少段
40
- //
41
- console.log('nonononono');
42
- var len = Math.ceil(Math.sqrt((ex - sx) * (ex - sx) + (ey - sy) * (ey - sy)) / lineInterval / 2);
43
- var lineIntervalX = (ex - sx) / len;//每一段间x轴上的间隔
44
- var lineIntervalY = (ey - sy) / len;//每一段间y轴上的间隔
45
- var index = 0;//计数器
46
- this.context.beginPath();
47
- while (index < len) { //开始定制路线
48
- var targetX = sx + lineIntervalX;//计算当前段绘制的终点
49
- var targetY = sy + lineIntervalY;
50
- this.context.moveTo(sx, sy);//起点
51
- this.context.lineTo(targetX, targetY);//终点
52
-
53
- sx = targetX + lineIntervalX;//计算下一段绘制的起点
54
- sy = targetY + lineIntervalY;
55
-
56
- index ++;
57
- }
58
- }
59
-
60
- this.context.stroke();//绘制线条
61
- this.context.restore();//恢复保存的状态,对应 save() 方法
62
- }
63
- };
64
- return paper;
65
- });
@@ -1,36 +0,0 @@
1
- /*
2
- RequireJS 2.2.0 Copyright jQuery Foundation and other contributors.
3
- Released under MIT license, http://github.com/requirejs/requirejs/LICENSE
4
- */
5
- var requirejs,require,define;
6
- (function(ga){function ka(b,c,d,g){return g||""}function K(b){return"[object Function]"===Q.call(b)}function L(b){return"[object Array]"===Q.call(b)}function y(b,c){if(b){var d;for(d=0;d<b.length&&(!b[d]||!c(b[d],d,b));d+=1);}}function X(b,c){if(b){var d;for(d=b.length-1;-1<d&&(!b[d]||!c(b[d],d,b));--d);}}function x(b,c){return la.call(b,c)}function e(b,c){return x(b,c)&&b[c]}function D(b,c){for(var d in b)if(x(b,d)&&c(b[d],d))break}function Y(b,c,d,g){c&&D(c,function(c,e){if(d||!x(b,e))!g||"object"!==
7
- typeof c||!c||L(c)||K(c)||c instanceof RegExp?b[e]=c:(b[e]||(b[e]={}),Y(b[e],c,d,g))});return b}function z(b,c){return function(){return c.apply(b,arguments)}}function ha(b){throw b;}function ia(b){if(!b)return b;var c=ga;y(b.split("."),function(b){c=c[b]});return c}function F(b,c,d,g){c=Error(c+"\nhttp://requirejs.org/docs/errors.html#"+b);c.requireType=b;c.requireModules=g;d&&(c.originalError=d);return c}function ma(b){function c(a,n,b){var h,k,f,c,d,l,g,r;n=n&&n.split("/");var q=p.map,m=q&&q["*"];
8
- if(a){a=a.split("/");k=a.length-1;p.nodeIdCompat&&U.test(a[k])&&(a[k]=a[k].replace(U,""));"."===a[0].charAt(0)&&n&&(k=n.slice(0,n.length-1),a=k.concat(a));k=a;for(f=0;f<k.length;f++)c=k[f],"."===c?(k.splice(f,1),--f):".."===c&&0!==f&&(1!==f||".."!==k[2])&&".."!==k[f-1]&&0<f&&(k.splice(f-1,2),f-=2);a=a.join("/")}if(b&&q&&(n||m)){k=a.split("/");f=k.length;a:for(;0<f;--f){d=k.slice(0,f).join("/");if(n)for(c=n.length;0<c;--c)if(b=e(q,n.slice(0,c).join("/")))if(b=e(b,d)){h=b;l=f;break a}!g&&m&&e(m,d)&&
9
- (g=e(m,d),r=f)}!h&&g&&(h=g,l=r);h&&(k.splice(0,l,h),a=k.join("/"))}return(h=e(p.pkgs,a))?h:a}function d(a){E&&y(document.getElementsByTagName("script"),function(n){if(n.getAttribute("data-requiremodule")===a&&n.getAttribute("data-requirecontext")===l.contextName)return n.parentNode.removeChild(n),!0})}function m(a){var n=e(p.paths,a);if(n&&L(n)&&1<n.length)return n.shift(),l.require.undef(a),l.makeRequire(null,{skipMap:!0})([a]),!0}function r(a){var n,b=a?a.indexOf("!"):-1;-1<b&&(n=a.substring(0,
10
- b),a=a.substring(b+1,a.length));return[n,a]}function q(a,n,b,h){var k,f,d=null,g=n?n.name:null,p=a,q=!0,m="";a||(q=!1,a="_@r"+(Q+=1));a=r(a);d=a[0];a=a[1];d&&(d=c(d,g,h),f=e(v,d));a&&(d?m=f&&f.normalize?f.normalize(a,function(a){return c(a,g,h)}):-1===a.indexOf("!")?c(a,g,h):a:(m=c(a,g,h),a=r(m),d=a[0],m=a[1],b=!0,k=l.nameToUrl(m)));b=!d||f||b?"":"_unnormalized"+(T+=1);return{prefix:d,name:m,parentMap:n,unnormalized:!!b,url:k,originalName:p,isDefine:q,id:(d?d+"!"+m:m)+b}}function u(a){var b=a.id,
11
- c=e(t,b);c||(c=t[b]=new l.Module(a));return c}function w(a,b,c){var h=a.id,k=e(t,h);if(!x(v,h)||k&&!k.defineEmitComplete)if(k=u(a),k.error&&"error"===b)c(k.error);else k.on(b,c);else"defined"===b&&c(v[h])}function A(a,b){var c=a.requireModules,h=!1;if(b)b(a);else if(y(c,function(b){if(b=e(t,b))b.error=a,b.events.error&&(h=!0,b.emit("error",a))}),!h)g.onError(a)}function B(){V.length&&(y(V,function(a){var b=a[0];"string"===typeof b&&(l.defQueueMap[b]=!0);G.push(a)}),V=[])}function C(a){delete t[a];
12
- delete Z[a]}function J(a,b,c){var h=a.map.id;a.error?a.emit("error",a.error):(b[h]=!0,y(a.depMaps,function(h,f){var d=h.id,g=e(t,d);!g||a.depMatched[f]||c[d]||(e(b,d)?(a.defineDep(f,v[d]),a.check()):J(g,b,c))}),c[h]=!0)}function H(){var a,b,c=(a=1E3*p.waitSeconds)&&l.startTime+a<(new Date).getTime(),h=[],k=[],f=!1,g=!0;if(!aa){aa=!0;D(Z,function(a){var l=a.map,e=l.id;if(a.enabled&&(l.isDefine||k.push(a),!a.error))if(!a.inited&&c)m(e)?f=b=!0:(h.push(e),d(e));else if(!a.inited&&a.fetched&&l.isDefine&&
13
- (f=!0,!l.prefix))return g=!1});if(c&&h.length)return a=F("timeout","Load timeout for modules: "+h,null,h),a.contextName=l.contextName,A(a);g&&y(k,function(a){J(a,{},{})});c&&!b||!f||!E&&!ja||ba||(ba=setTimeout(function(){ba=0;H()},50));aa=!1}}function I(a){x(v,a[0])||u(q(a[0],null,!0)).init(a[1],a[2])}function O(a){a=a.currentTarget||a.srcElement;var b=l.onScriptLoad;a.detachEvent&&!ca?a.detachEvent("onreadystatechange",b):a.removeEventListener("load",b,!1);b=l.onScriptError;a.detachEvent&&!ca||a.removeEventListener("error",
14
- b,!1);return{node:a,id:a&&a.getAttribute("data-requiremodule")}}function P(){var a;for(B();G.length;){a=G.shift();if(null===a[0])return A(F("mismatch","Mismatched anonymous define() module: "+a[a.length-1]));I(a)}l.defQueueMap={}}var aa,da,l,R,ba,p={waitSeconds:7,baseUrl:"./",paths:{},bundles:{},pkgs:{},shim:{},config:{}},t={},Z={},ea={},G=[],v={},W={},fa={},Q=1,T=1;R={require:function(a){return a.require?a.require:a.require=l.makeRequire(a.map)},exports:function(a){a.usingExports=!0;if(a.map.isDefine)return a.exports?
15
- v[a.map.id]=a.exports:a.exports=v[a.map.id]={}},module:function(a){return a.module?a.module:a.module={id:a.map.id,uri:a.map.url,config:function(){return e(p.config,a.map.id)||{}},exports:a.exports||(a.exports={})}}};da=function(a){this.events=e(ea,a.id)||{};this.map=a;this.shim=e(p.shim,a.id);this.depExports=[];this.depMaps=[];this.depMatched=[];this.pluginMaps={};this.depCount=0};da.prototype={init:function(a,b,c,h){h=h||{};if(!this.inited){this.factory=b;if(c)this.on("error",c);else this.events.error&&
16
- (c=z(this,function(a){this.emit("error",a)}));this.depMaps=a&&a.slice(0);this.errback=c;this.inited=!0;this.ignore=h.ignore;h.enabled||this.enabled?this.enable():this.check()}},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,--this.depCount,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0;l.startTime=(new Date).getTime();var a=this.map;if(this.shim)l.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],z(this,function(){return a.prefix?this.callPlugin():
17
- this.load()}));else return a.prefix?this.callPlugin():this.load()}},load:function(){var a=this.map.url;W[a]||(W[a]=!0,l.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id;b=this.depExports;var h=this.exports,k=this.factory;if(!this.inited)x(l.defQueueMap,c)||this.fetch();else if(this.error)this.emit("error",this.error);else if(!this.defining){this.defining=!0;if(1>this.depCount&&!this.defined){if(K(k)){if(this.events.error&&this.map.isDefine||g.onError!==
18
- ha)try{h=l.execCb(c,k,b,h)}catch(d){a=d}else h=l.execCb(c,k,b,h);this.map.isDefine&&void 0===h&&((b=this.module)?h=b.exports:this.usingExports&&(h=this.exports));if(a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?"define":"require",A(this.error=a)}else h=k;this.exports=h;if(this.map.isDefine&&!this.ignore&&(v[c]=h,g.onResourceLoad)){var f=[];y(this.depMaps,function(a){f.push(a.normalizedMap||a)});g.onResourceLoad(l,this.map,f)}C(c);
19
- this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit("defined",this.exports),this.defineEmitComplete=!0)}}},callPlugin:function(){var a=this.map,b=a.id,d=q(a.prefix);this.depMaps.push(d);w(d,"defined",z(this,function(h){var k,f,d=e(fa,this.map.id),M=this.map.name,r=this.map.parentMap?this.map.parentMap.name:null,m=l.makeRequire(a.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(h.normalize&&(M=h.normalize(M,function(a){return c(a,r,!0)})||
20
- ""),f=q(a.prefix+"!"+M,this.map.parentMap),w(f,"defined",z(this,function(a){this.map.normalizedMap=f;this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),h=e(t,f.id)){this.depMaps.push(f);if(this.events.error)h.on("error",z(this,function(a){this.emit("error",a)}));h.enable()}}else d?(this.map.url=l.nameToUrl(d),this.load()):(k=z(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),k.error=z(this,function(a){this.inited=!0;this.error=a;a.requireModules=[b];D(t,function(a){0===
21
- a.map.id.indexOf(b+"_unnormalized")&&C(a.map.id)});A(a)}),k.fromText=z(this,function(h,c){var d=a.name,f=q(d),M=S;c&&(h=c);M&&(S=!1);u(f);x(p.config,b)&&(p.config[d]=p.config[b]);try{g.exec(h)}catch(e){return A(F("fromtexteval","fromText eval for "+b+" failed: "+e,e,[b]))}M&&(S=!0);this.depMaps.push(f);l.completeLoad(d);m([d],k)}),h.load(a.name,m,k,p))}));l.enable(d,this);this.pluginMaps[d.id]=d},enable:function(){Z[this.map.id]=this;this.enabling=this.enabled=!0;y(this.depMaps,z(this,function(a,
22
- b){var c,h;if("string"===typeof a){a=q(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap);this.depMaps[b]=a;if(c=e(R,a.id)){this.depExports[b]=c(this);return}this.depCount+=1;w(a,"defined",z(this,function(a){this.undefed||(this.defineDep(b,a),this.check())}));this.errback?w(a,"error",z(this,this.errback)):this.events.error&&w(a,"error",z(this,function(a){this.emit("error",a)}))}c=a.id;h=t[c];x(R,c)||!h||h.enabled||l.enable(a,this)}));D(this.pluginMaps,z(this,function(a){var b=e(t,a.id);
23
- b&&!b.enabled&&l.enable(a,this)}));this.enabling=!1;this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]);c.push(b)},emit:function(a,b){y(this.events[a],function(a){a(b)});"error"===a&&delete this.events[a]}};l={config:p,contextName:b,registry:t,defined:v,urlFetched:W,defQueue:G,defQueueMap:{},Module:da,makeModuleMap:q,nextTick:g.nextTick,onError:A,configure:function(a){a.baseUrl&&"/"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+="/");if("string"===typeof a.urlArgs){var b=
24
- a.urlArgs;a.urlArgs=function(a,c){return(-1===c.indexOf("?")?"?":"&")+b}}var c=p.shim,h={paths:!0,bundles:!0,config:!0,map:!0};D(a,function(a,b){h[b]?(p[b]||(p[b]={}),Y(p[b],a,!0,!0)):p[b]=a});a.bundles&&D(a.bundles,function(a,b){y(a,function(a){a!==b&&(fa[a]=b)})});a.shim&&(D(a.shim,function(a,b){L(a)&&(a={deps:a});!a.exports&&!a.init||a.exportsFn||(a.exportsFn=l.makeShimExports(a));c[b]=a}),p.shim=c);a.packages&&y(a.packages,function(a){var b;a="string"===typeof a?{name:a}:a;b=a.name;a.location&&
25
- (p.paths[b]=a.location);p.pkgs[b]=a.name+"/"+(a.main||"main").replace(na,"").replace(U,"")});D(t,function(a,b){a.inited||a.map.unnormalized||(a.map=q(b,null,!0))});(a.deps||a.callback)&&l.require(a.deps||[],a.callback)},makeShimExports:function(a){return function(){var b;a.init&&(b=a.init.apply(ga,arguments));return b||a.exports&&ia(a.exports)}},makeRequire:function(a,n){function m(c,d,f){var e,r;n.enableBuildCallback&&d&&K(d)&&(d.__requireJsBuild=!0);if("string"===typeof c){if(K(d))return A(F("requireargs",
26
- "Invalid require call"),f);if(a&&x(R,c))return R[c](t[a.id]);if(g.get)return g.get(l,c,a,m);e=q(c,a,!1,!0);e=e.id;return x(v,e)?v[e]:A(F("notloaded",'Module name "'+e+'" has not been loaded yet for context: '+b+(a?"":". Use require([])")))}P();l.nextTick(function(){P();r=u(q(null,a));r.skipMap=n.skipMap;r.init(c,d,f,{enabled:!0});H()});return m}n=n||{};Y(m,{isBrowser:E,toUrl:function(b){var d,f=b.lastIndexOf("."),g=b.split("/")[0];-1!==f&&("."!==g&&".."!==g||1<f)&&(d=b.substring(f,b.length),b=b.substring(0,
27
- f));return l.nameToUrl(c(b,a&&a.id,!0),d,!0)},defined:function(b){return x(v,q(b,a,!1,!0).id)},specified:function(b){b=q(b,a,!1,!0).id;return x(v,b)||x(t,b)}});a||(m.undef=function(b){B();var c=q(b,a,!0),f=e(t,b);f.undefed=!0;d(b);delete v[b];delete W[c.url];delete ea[b];X(G,function(a,c){a[0]===b&&G.splice(c,1)});delete l.defQueueMap[b];f&&(f.events.defined&&(ea[b]=f.events),C(b))});return m},enable:function(a){e(t,a.id)&&u(a).enable()},completeLoad:function(a){var b,c,d=e(p.shim,a)||{},g=d.exports;
28
- for(B();G.length;){c=G.shift();if(null===c[0]){c[0]=a;if(b)break;b=!0}else c[0]===a&&(b=!0);I(c)}l.defQueueMap={};c=e(t,a);if(!b&&!x(v,a)&&c&&!c.inited)if(!p.enforceDefine||g&&ia(g))I([a,d.deps||[],d.exportsFn]);else return m(a)?void 0:A(F("nodefine","No define call for "+a,null,[a]));H()},nameToUrl:function(a,b,c){var d,k,f,m;(d=e(p.pkgs,a))&&(a=d);if(d=e(fa,a))return l.nameToUrl(d,b,c);if(g.jsExtRegExp.test(a))d=a+(b||"");else{d=p.paths;k=a.split("/");for(f=k.length;0<f;--f)if(m=k.slice(0,f).join("/"),
29
- m=e(d,m)){L(m)&&(m=m[0]);k.splice(0,f,m);break}d=k.join("/");d+=b||(/^data\:|^blob\:|\?/.test(d)||c?"":".js");d=("/"===d.charAt(0)||d.match(/^[\w\+\.\-]+:/)?"":p.baseUrl)+d}return p.urlArgs&&!/^blob\:/.test(d)?d+p.urlArgs(a,d):d},load:function(a,b){g.load(l,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if("load"===a.type||oa.test((a.currentTarget||a.srcElement).readyState))N=null,a=O(a),l.completeLoad(a.id)},onScriptError:function(a){var b=O(a);if(!m(b.id)){var c=[];
30
- D(t,function(a,d){0!==d.indexOf("_@r")&&y(a.depMaps,function(a){if(a.id===b.id)return c.push(d),!0})});return A(F("scripterror",'Script error for "'+b.id+(c.length?'", needed by: '+c.join(", "):'"'),a,[b.id]))}}};l.require=l.makeRequire();return l}function pa(){if(N&&"interactive"===N.readyState)return N;X(document.getElementsByTagName("script"),function(b){if("interactive"===b.readyState)return N=b});return N}var g,B,C,H,O,I,N,P,u,T,qa=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/mg,ra=/[^.]\s*require\s*\(\s*["']([^'"\s]+)["']\s*\)/g,
31
- U=/\.js$/,na=/^\.\//;B=Object.prototype;var Q=B.toString,la=B.hasOwnProperty,E=!("undefined"===typeof window||"undefined"===typeof navigator||!window.document),ja=!E&&"undefined"!==typeof importScripts,oa=E&&"PLAYSTATION 3"===navigator.platform?/^complete$/:/^(complete|loaded)$/,ca="undefined"!==typeof opera&&"[object Opera]"===opera.toString(),J={},w={},V=[],S=!1;if("undefined"===typeof define){if("undefined"!==typeof requirejs){if(K(requirejs))return;w=requirejs;requirejs=void 0}"undefined"===typeof require||
32
- K(require)||(w=require,require=void 0);g=requirejs=function(b,c,d,m){var r,q="_";L(b)||"string"===typeof b||(r=b,L(c)?(b=c,c=d,d=m):b=[]);r&&r.context&&(q=r.context);(m=e(J,q))||(m=J[q]=g.s.newContext(q));r&&m.configure(r);return m.require(b,c,d)};g.config=function(b){return g(b)};g.nextTick="undefined"!==typeof setTimeout?function(b){setTimeout(b,4)}:function(b){b()};require||(require=g);g.version="2.2.0";g.jsExtRegExp=/^\/|:|\?|\.js$/;g.isBrowser=E;B=g.s={contexts:J,newContext:ma};g({});y(["toUrl",
33
- "undef","defined","specified"],function(b){g[b]=function(){var c=J._;return c.require[b].apply(c,arguments)}});E&&(C=B.head=document.getElementsByTagName("head")[0],H=document.getElementsByTagName("base")[0])&&(C=B.head=H.parentNode);g.onError=ha;g.createNode=function(b,c,d){c=b.xhtml?document.createElementNS("http://www.w3.org/1999/xhtml","html:script"):document.createElement("script");c.type=b.scriptType||"text/javascript";c.charset="utf-8";c.async=!0;return c};g.load=function(b,c,d){var m=b&&b.config||
34
- {},e;if(E){e=g.createNode(m,c,d);e.setAttribute("data-requirecontext",b.contextName);e.setAttribute("data-requiremodule",c);!e.attachEvent||e.attachEvent.toString&&0>e.attachEvent.toString().indexOf("[native code")||ca?(e.addEventListener("load",b.onScriptLoad,!1),e.addEventListener("error",b.onScriptError,!1)):(S=!0,e.attachEvent("onreadystatechange",b.onScriptLoad));e.src=d;if(m.onNodeCreated)m.onNodeCreated(e,m,c,d);P=e;H?C.insertBefore(e,H):C.appendChild(e);P=null;return e}if(ja)try{setTimeout(function(){},
35
- 0),importScripts(d),b.completeLoad(c)}catch(q){b.onError(F("importscripts","importScripts failed for "+c+" at "+d,q,[c]))}};E&&!w.skipDataMain&&X(document.getElementsByTagName("script"),function(b){C||(C=b.parentNode);if(O=b.getAttribute("data-main"))return u=O,w.baseUrl||-1!==u.indexOf("!")||(I=u.split("/"),u=I.pop(),T=I.length?I.join("/")+"/":"./",w.baseUrl=T),u=u.replace(U,""),g.jsExtRegExp.test(u)&&(u=O),w.deps=w.deps?w.deps.concat(u):[u],!0});define=function(b,c,d){var e,g;"string"!==typeof b&&
36
- (d=c,c=b,b=null);L(c)||(d=c,c=null);!c&&K(d)&&(c=[],d.length&&(d.toString().replace(qa,ka).replace(ra,function(b,d){c.push(d)}),c=(1===d.length?["require"]:["require","exports","module"]).concat(c)));S&&(e=P||pa())&&(b||(b=e.getAttribute("data-requiremodule")),g=J[e.getAttribute("data-requirecontext")]);g?(g.defQueue.push([b,c,d]),g.defQueueMap[b]=!0):V.push([b,c,d])};define.amd={jQuery:!0};g.exec=function(b){return eval(b)};g(w)}})(this);
@@ -1,107 +0,0 @@
1
- /**
2
- * Created by zjy on 2016/4/22.
3
- */
4
- define(function () {
5
- var write = {
6
- canvas: null, //html中的canvas对象,主要标签
7
- context: null, //canvas对象获取的context,用于绘图
8
- isWriting: false, //是否正在下笔写字
9
- lineWidthMax: 0, //画笔最大粗细
10
- lineWidthMin: 0.5, //画笔最小粗细
11
-
12
- lastX: 0, //画笔上次停留位置
13
- lastY: 0,
14
- lastTime: 0, //上次笔时间
15
- lastLineWidth: 0,
16
-
17
- init: function (canvas) {
18
-
19
- this.canvas = canvas;
20
- this.lineWidthMax = canvas.width / 20;
21
- this.lastLineWidth = this.lineWidthMax / 2;
22
-
23
- this.context = this.canvas.getContext('2d');
24
- //描边处理,使笔画圆滑
25
- this.context.lineCap = 'round';
26
- this.context.lineJoin = 'round';
27
-
28
- //事件绑定
29
- this.bindEvent();
30
- },
31
-
32
- bindEvent: function () {
33
- var self = this;
34
- const canvasLT = this.canvas.getBoundingClientRect();
35
- //pc端
36
- const mouseDown$ = Rx.Observable.fromEvent(self.canvas, 'mousedown')
37
- .map(() => true);
38
- const mouseUp$ = Rx.Observable.fromEvent(self.canvas, 'mouseup')
39
- .map(() => false);
40
- const mouseOut$ = Rx.Observable.fromEvent(self.canvas, 'mouseout')
41
- .map(() => false);
42
- const mouseMove$ = Rx.Observable.fromEvent(self.canvas, 'mousemove')
43
- .map(e => ({ x: e.offsetX, y: e.offsetY, time: new Date() }))
44
- .bufferCount(2, 1);
45
-
46
- const mouse$ = mouseDown$.merge(mouseUp$, mouseOut$).switchMap(action => {
47
- return action ? mouseMove$ : Rx.Observable.empty();
48
- });
49
- mouse$.subscribe(this.writing.bind(this));
50
-
51
-
52
- //手机端
53
- const touchStart$ = Rx.Observable.fromEvent(self.canvas, 'touchstart')
54
- .map(() => true);
55
- const touchEnd$ = Rx.Observable.fromEvent(self.canvas, 'touchend')
56
- .map(() => false);
57
- const touchMove$ = Rx.Observable.fromEvent(self.canvas, 'touchmove')
58
- .map(e => ({ x: e.touches[0].clientX - canvasLT.left, y: e.touches[0].clientY - canvasLT.top, time: new Date() }))
59
- .bufferCount(2, 1);
60
-
61
- const touch$ = touchStart$.merge(touchEnd$).switchMap(action => {
62
- return action ? touchMove$ : Rx.Observable.empty();
63
- });
64
- touch$.subscribe(this.writing.bind(this));
65
- },
66
-
67
- //描绘区
68
- writing: function ([ start, end ]) {
69
- console.log(start, end);
70
- var curTime = new Date().getTime();
71
- if(curTime != this.lastTime) {
72
- this.context.beginPath();
73
- this.context.lineWidth = this.getLineWidth(this.getS(start.x, start.y, end.x, end.y), end.time - start.time);
74
- this.context.moveTo(start.x, start.y);
75
- this.context.lineTo(end.x, end.y);
76
- this.context.stroke();
77
- this.lastTime = curTime;
78
- }
79
- },
80
-
81
- getS: function (sx, sy, ex, ey) {
82
- return Math.sqrt((ex - sx) * (ex - sx) + (ey - sy) * (ey - sy));
83
- },
84
- getLineWidth: function (s, t) {
85
- var v = s / t;
86
- console.log(v);
87
- var resultLineWidth = 0;
88
- if(v < 1) {
89
- resultLineWidth = this.lineWidthMax;
90
- }
91
- else if(v > 8) {
92
- resultLineWidth = this.lineWidthMin;
93
- }
94
- else{ // 根据速度赋予线条宽度值
95
- resultLineWidth = this.lineWidthMax - (v - 0.1) / (8 - 0.1) * (this.lineWidthMax - this.lineWidthMin);
96
- }
97
-
98
- //防止变化突然,使线条平滑,借鉴上次线条粗细取值
99
- resultLineWidth = this.lastLineWidth * 3 / 5 + resultLineWidth * 2 / 5;
100
-
101
- this.lastLineWidth = resultLineWidth;
102
- return resultLineWidth;
103
-
104
- }
105
- };
106
- return write;
107
- });
@@ -1,17 +0,0 @@
1
- {
2
- "presets": [
3
- "@babel/preset-env",
4
- [
5
- "@babel/preset-typescript",
6
- {
7
- "isTSX": true,
8
- "allExtensions": true,
9
- "jsxPragma": "h"
10
- }
11
- ]
12
- ],
13
- "plugins": [
14
- "@babel/plugin-proposal-class-properties",
15
- "@babel/plugin-transform-runtime"
16
- ]
17
- }
@@ -1,9 +0,0 @@
1
- {
2
- "printWidth": 130,
3
- "tabWidth": 2,
4
- "useTabs": false,
5
- "semi": true,
6
- "jsxBracketSameLine": true,
7
- "singleQuote": true,
8
- "trailingComma": "all"
9
- }
@@ -1,20 +0,0 @@
1
- import { Listener, EventNames } from './shapes';
2
- export interface Action {
3
- type: ActionType;
4
- id: string;
5
- }
6
- export declare enum ActionType {
7
- Down = "DOWN",
8
- Up = "Up",
9
- Move = "MOVE"
10
- }
11
- export default class EventSimulator {
12
- private listenersMap;
13
- private lastDownId;
14
- private lastMoveId;
15
- addAction(action: Action, evt: MouseEvent): void;
16
- addListeners(id: string, listeners: {
17
- [eventName: string]: Listener[];
18
- }): void;
19
- fire(id: string, eventName: EventNames, evt: MouseEvent): void;
20
- }
@@ -1,51 +0,0 @@
1
- import { EventNames } from './shapes';
2
- export var ActionType;
3
- (function (ActionType) {
4
- ActionType["Down"] = "DOWN";
5
- ActionType["Up"] = "Up";
6
- ActionType["Move"] = "MOVE";
7
- })(ActionType || (ActionType = {}));
8
- export default class EventSimulator {
9
- listenersMap = {};
10
- lastDownId;
11
- lastMoveId;
12
- addAction(action, evt) {
13
- const { type, id } = action;
14
- // mousemove
15
- if (type === ActionType.Move) {
16
- this.fire(id, EventNames.mousemove, evt);
17
- }
18
- // mouseover
19
- // mouseenter
20
- if (type === ActionType.Move && (!this.lastMoveId || this.lastMoveId !== id)) {
21
- this.fire(id, EventNames.mouseenter, evt);
22
- this.fire(this.lastMoveId, EventNames.mouseleave, evt);
23
- }
24
- // mousedown
25
- if (type === ActionType.Down) {
26
- this.fire(id, EventNames.mousedown, evt);
27
- }
28
- // mouseup
29
- if (type === ActionType.Up) {
30
- this.fire(id, EventNames.mouseup, evt);
31
- }
32
- // click
33
- if (type === ActionType.Up && this.lastDownId === id) {
34
- this.fire(id, EventNames.click, evt);
35
- }
36
- if (type === ActionType.Move) {
37
- this.lastMoveId = action.id;
38
- }
39
- else if (type === ActionType.Down) {
40
- this.lastDownId = action.id;
41
- }
42
- }
43
- addListeners(id, listeners) {
44
- this.listenersMap[id] = listeners;
45
- }
46
- fire(id, eventName, evt) {
47
- if (this.listenersMap[id] && this.listenersMap[id][eventName]) {
48
- this.listenersMap[id][eventName].forEach((listener) => listener(evt));
49
- }
50
- }
51
- }
@@ -1,3 +0,0 @@
1
- export declare function idToRgba(id: string): string[];
2
- export declare function rgbaToId(rgba: [number, number, number, number]): string;
3
- export declare function createId(): string;
@@ -1,21 +0,0 @@
1
- export function idToRgba(id) {
2
- return id.split("-");
3
- }
4
- export function rgbaToId(rgba) {
5
- return rgba.join("-");
6
- }
7
- const idPool = {};
8
- export function createId() {
9
- let id = createOnceId();
10
- while (idPool[id]) {
11
- id = createOnceId();
12
- }
13
- return id;
14
- }
15
- function createOnceId() {
16
- return Array(3)
17
- .fill(0)
18
- .map(() => Math.ceil(Math.random() * 255))
19
- .concat(255)
20
- .join("-");
21
- }