@widgetic/editor 3.11.4 → 4.0.1

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 (497) hide show
  1. package/README.md +245 -0
  2. package/dist/assets/fonts.json +331 -0
  3. package/dist/assets/icons/ic-browser/audio.svg +7 -0
  4. package/dist/assets/icons/ic-browser/document.svg +11 -0
  5. package/dist/assets/icons/ic-browser/error.svg +5 -0
  6. package/dist/assets/icons/ic-browser/folder.svg +28 -0
  7. package/dist/assets/icons/ic-browser/player-pause.svg +1 -0
  8. package/dist/assets/icons/ic-browser/player-play.svg +1 -0
  9. package/dist/assets/icons/ic-browser/trash.svg +1 -0
  10. package/dist/assets/icons/ic-fixed-position/background-deselected.svg +3 -0
  11. package/dist/assets/icons/ic-fixed-position/background-selected.svg +3 -0
  12. package/dist/assets/icons/ic-fixed-position/bottom-left-background-deselected.svg +3 -0
  13. package/dist/assets/icons/ic-fixed-position/bottom-left-background-selected.svg +3 -0
  14. package/dist/assets/icons/ic-fixed-position/bottom-left-icon.svg +4 -0
  15. package/dist/assets/icons/ic-fixed-position/bottom-right-background-deselected.svg +3 -0
  16. package/dist/assets/icons/ic-fixed-position/bottom-right-background-selected.svg +3 -0
  17. package/dist/assets/icons/ic-fixed-position/bottom-right-icon.svg +4 -0
  18. package/dist/assets/icons/ic-fixed-position/center-bottom-icon.svg +5 -0
  19. package/dist/assets/icons/ic-fixed-position/center-center-icon.svg +3 -0
  20. package/dist/assets/icons/ic-fixed-position/center-left-icon.svg +5 -0
  21. package/dist/assets/icons/ic-fixed-position/center-right-icon.svg +5 -0
  22. package/dist/assets/icons/ic-fixed-position/center-top-icon.svg +5 -0
  23. package/dist/assets/icons/ic-fixed-position/top-left-background-deselected.svg +3 -0
  24. package/dist/assets/icons/ic-fixed-position/top-left-background-selected.svg +3 -0
  25. package/dist/assets/icons/ic-fixed-position/top-left-icon.svg +4 -0
  26. package/dist/assets/icons/ic-fixed-position/top-right-background-deselected.svg +3 -0
  27. package/dist/assets/icons/ic-fixed-position/top-right-background-selected.svg +3 -0
  28. package/dist/assets/icons/ic-fixed-position/top-right-icon.svg +4 -0
  29. package/dist/assets/icons/trash.svg +1 -0
  30. package/dist/components/MockWidget.svelte +108 -0
  31. package/dist/components/MockWidget.svelte.d.ts +22 -0
  32. package/dist/components/WidgetPreview.svelte +852 -0
  33. package/dist/components/WidgetPreview.svelte.d.ts +100 -0
  34. package/dist/components/color-select/ColorSelect.svelte +258 -0
  35. package/dist/components/color-select/ColorSelect.svelte.d.ts +42 -0
  36. package/dist/components/color-select/color.d.ts +25 -0
  37. package/dist/components/color-select/color.js +21 -0
  38. package/dist/components/color-select/constants.d.ts +5 -0
  39. package/dist/components/color-select/constants.js +5 -0
  40. package/dist/components/color-select/render.d.ts +5 -0
  41. package/dist/components/color-select/render.js +77 -0
  42. package/dist/components/color-select/shaders.d.ts +3 -0
  43. package/dist/components/color-select/shaders.js +8 -0
  44. package/dist/components/editors/EmbedEditor.svelte +700 -0
  45. package/dist/components/editors/EmbedEditor.svelte.d.ts +50 -0
  46. package/dist/components/editors/PropsEditor.svelte +3952 -0
  47. package/dist/components/editors/PropsEditor.svelte.d.ts +62 -0
  48. package/dist/components/editors/props-editor.css +73 -0
  49. package/dist/components/ic/AngleInputController.svelte +276 -0
  50. package/dist/components/ic/AngleInputController.svelte.d.ts +26 -0
  51. package/dist/components/ic/BrowserInputController.svelte +724 -0
  52. package/dist/components/ic/BrowserInputController.svelte.d.ts +39 -0
  53. package/dist/components/ic/CheckboxInputController.svelte +203 -0
  54. package/dist/components/ic/CheckboxInputController.svelte.d.ts +41 -0
  55. package/dist/components/ic/ColorPickerInputController.svelte +1584 -0
  56. package/dist/components/ic/ColorPickerInputController.svelte.d.ts +50 -0
  57. package/dist/components/ic/DateFieldInputController.svelte +453 -0
  58. package/dist/components/ic/DateFieldInputController.svelte.d.ts +35 -0
  59. package/dist/components/ic/DatePickerInputController.svelte +364 -0
  60. package/dist/components/ic/DatePickerInputController.svelte.d.ts +28 -0
  61. package/dist/components/ic/DropdownInputController.svelte +226 -0
  62. package/dist/components/ic/DropdownInputController.svelte.d.ts +43 -0
  63. package/dist/components/ic/FixedPositionInputController.svelte +353 -0
  64. package/dist/components/ic/FixedPositionInputController.svelte.d.ts +23 -0
  65. package/dist/components/ic/FontInputController.svelte +2062 -0
  66. package/dist/components/ic/FontInputController.svelte.d.ts +47 -0
  67. package/dist/components/ic/InputControllerHeader.svelte +147 -0
  68. package/dist/components/ic/InputControllerHeader.svelte.d.ts +23 -0
  69. package/dist/components/ic/NumberControls.svelte +299 -0
  70. package/dist/components/ic/NumberControls.svelte.d.ts +30 -0
  71. package/dist/components/ic/NumberInputController.svelte +397 -0
  72. package/dist/components/ic/NumberInputController.svelte.d.ts +30 -0
  73. package/dist/components/ic/PositionInputController.svelte +252 -0
  74. package/dist/components/ic/PositionInputController.svelte.d.ts +37 -0
  75. package/dist/components/ic/RadioGroupInputController.svelte +162 -0
  76. package/dist/components/ic/RadioGroupInputController.svelte.d.ts +38 -0
  77. package/dist/components/ic/RangeCalendarInputController.svelte +262 -0
  78. package/dist/components/ic/RangeCalendarInputController.svelte.d.ts +32 -0
  79. package/dist/components/ic/RoundedCornersInputController.svelte +469 -0
  80. package/dist/components/ic/RoundedCornersInputController.svelte.d.ts +37 -0
  81. package/dist/components/ic/SliderInputController.svelte +411 -0
  82. package/dist/components/ic/SliderInputController.svelte.d.ts +46 -0
  83. package/dist/components/ic/SliderRangeInputController.svelte +155 -0
  84. package/dist/components/ic/SliderRangeInputController.svelte.d.ts +33 -0
  85. package/dist/components/ic/SwitchInputController.svelte +107 -0
  86. package/dist/components/ic/SwitchInputController.svelte.d.ts +24 -0
  87. package/dist/components/ic/TagsInputController.svelte +125 -0
  88. package/dist/components/ic/TagsInputController.svelte.d.ts +27 -0
  89. package/dist/components/ic/TextAreaInputController.svelte +1804 -0
  90. package/dist/components/ic/TextAreaInputController.svelte.d.ts +13 -0
  91. package/dist/components/ic/TextAreaPreviewInputController.svelte +476 -0
  92. package/dist/components/ic/TextAreaPreviewInputController.svelte.d.ts +28 -0
  93. package/dist/components/ic/TextInputController.svelte +70 -0
  94. package/dist/components/ic/TextInputController.svelte.d.ts +30 -0
  95. package/dist/components/ic/TimeInputController.svelte +434 -0
  96. package/dist/components/ic/TimeInputController.svelte.d.ts +25 -0
  97. package/dist/components/ic/VectorInputController.svelte +1826 -0
  98. package/dist/components/ic/VectorInputController.svelte.d.ts +47 -0
  99. package/dist/components/ic/index.d.ts +39 -0
  100. package/dist/components/ic/index.js +24 -0
  101. package/dist/components/ic/shared/CategoryTabs.svelte +40 -0
  102. package/dist/components/ic/shared/CategoryTabs.svelte.d.ts +25 -0
  103. package/dist/components/ic/shared/ItemGrid.svelte +181 -0
  104. package/dist/components/ic/shared/ItemGrid.svelte.d.ts +35 -0
  105. package/dist/components/ic/shared/RecentItemsSection.svelte +260 -0
  106. package/dist/components/ic/shared/RecentItemsSection.svelte.d.ts +35 -0
  107. package/dist/components/ic/shared/index.d.ts +8 -0
  108. package/dist/components/ic/shared/index.js +9 -0
  109. package/dist/components/icons/addnew.svelte +21 -0
  110. package/dist/components/icons/addnew.svelte.d.ts +20 -0
  111. package/dist/components/icons/drag.svelte +29 -0
  112. package/dist/components/icons/drag.svelte.d.ts +20 -0
  113. package/dist/components/icons/drag.svg +1 -0
  114. package/dist/components/icons/locked.svelte +4 -0
  115. package/dist/components/icons/locked.svelte.d.ts +26 -0
  116. package/dist/components/icons/locked.svg +4 -0
  117. package/dist/components/icons/ok.svelte +20 -0
  118. package/dist/components/icons/ok.svelte.d.ts +20 -0
  119. package/dist/components/icons/ok.svg +11 -0
  120. package/dist/components/icons/unlocked.svelte +4 -0
  121. package/dist/components/icons/unlocked.svelte.d.ts +26 -0
  122. package/dist/components/icons/unlocked.svg +4 -0
  123. package/dist/components/icons/x.svelte +14 -0
  124. package/dist/components/icons/x.svelte.d.ts +20 -0
  125. package/dist/components/icons/x.svg +5 -0
  126. package/dist/components/ui/arrows/OpacitySliderArrows.svelte +43 -0
  127. package/dist/components/ui/arrows/OpacitySliderArrows.svelte.d.ts +23 -0
  128. package/dist/components/ui/checkerboard-background/CheckerboardBackground.svelte +15 -0
  129. package/dist/components/ui/checkerboard-background/CheckerboardBackground.svelte.d.ts +20 -0
  130. package/dist/config.d.ts +5 -0
  131. package/dist/config.js +19 -0
  132. package/dist/index.d.ts +4 -0
  133. package/dist/index.js +8 -0
  134. package/dist/stores/userSession.d.ts +7 -0
  135. package/dist/stores/userSession.js +28 -0
  136. package/dist/utils/FontManager.d.ts +276 -0
  137. package/dist/utils/FontManager.js +1283 -0
  138. package/dist/utils/MediaManager.d.ts +35 -0
  139. package/dist/utils/MediaManager.js +59 -0
  140. package/dist/utils/VectorManager.d.ts +190 -0
  141. package/dist/utils/VectorManager.js +754 -0
  142. package/dist/utils/colorAutocomplete.d.ts +10 -0
  143. package/dist/utils/colorAutocomplete.js +28 -0
  144. package/dist/utils/colorNames.d.ts +3 -0
  145. package/dist/utils/colorNames.js +152 -0
  146. package/dist/utils/colorTransparency.d.ts +52 -0
  147. package/dist/utils/colorTransparency.js +114 -0
  148. package/dist/utils/fontUtils.d.ts +34 -0
  149. package/dist/utils/fontUtils.js +132 -0
  150. package/dist/utils/passiveEvents.js +20 -0
  151. package/dist/utils/recentColors.d.ts +10 -0
  152. package/dist/utils/recentColors.js +63 -0
  153. package/dist/utils/skipFonts.d.ts +3 -0
  154. package/dist/utils/skipFonts.js +49 -0
  155. package/dist/utils/vectorUtils.d.ts +34 -0
  156. package/dist/utils/vectorUtils.js +71 -0
  157. package/dist/utils.d.ts +11 -0
  158. package/dist/utils.js +38 -0
  159. package/package.json +134 -74
  160. package/.babelrc +0 -10
  161. package/.bowerrc +0 -4
  162. package/.nvmrc +0 -1
  163. package/Gruntfile.coffee +0 -69
  164. package/bower.json +0 -28
  165. package/css/browser/entries/activateable.styl +0 -29
  166. package/css/browser/entries/audio.styl +0 -39
  167. package/css/browser/entries/folder.styl +0 -79
  168. package/css/browser/entries/image.styl +0 -26
  169. package/css/browser/entries/index.styl +0 -66
  170. package/css/browser/entries/rss.styl +0 -11
  171. package/css/browser/entries/video.styl +0 -11
  172. package/css/browser/index.styl +0 -86
  173. package/css/browser/intent/index.styl +0 -61
  174. package/css/browser/nav/index.styl +0 -73
  175. package/css/browser/social-browser.styl +0 -23
  176. package/css/controls/clock.styl +0 -110
  177. package/css/controls/config.styl +0 -6
  178. package/css/controls/control-audio-details.styl +0 -63
  179. package/css/controls/control-audio.styl +0 -28
  180. package/css/controls/control-browser.styl +0 -48
  181. package/css/controls/control-color.styl +0 -423
  182. package/css/controls/control-date_time.styl +0 -191
  183. package/css/controls/control-dropdown.styl +0 -79
  184. package/css/controls/control-font.styl +0 -147
  185. package/css/controls/control-image-details.styl +0 -35
  186. package/css/controls/control-image.styl +0 -43
  187. package/css/controls/control-order-picker.styl +0 -29
  188. package/css/controls/control-position.styl +0 -390
  189. package/css/controls/control-range.styl +0 -68
  190. package/css/controls/control-scale.styl +0 -30
  191. package/css/controls/control-slider.styl +0 -38
  192. package/css/controls/control-spinner.styl +0 -39
  193. package/css/controls/control-textarea.styl +0 -52
  194. package/css/controls/control-toggle.styl +0 -34
  195. package/css/controls/control-url.styl +0 -32
  196. package/css/controls/control-video-details.styl +0 -85
  197. package/css/controls/control-video.styl +0 -43
  198. package/css/controls/general.styl +0 -98
  199. package/css/controls/index.styl +0 -25
  200. package/css/editor/colors.styl +0 -7
  201. package/css/editor/content/directinput.styl +0 -47
  202. package/css/editor/content/index.styl +0 -111
  203. package/css/editor/content/message.styl +0 -53
  204. package/css/editor/content/tabs.styl +0 -75
  205. package/css/editor/copied-from-old-style.styl +0 -197
  206. package/css/editor/details/bulk-editor.styl +0 -104
  207. package/css/editor/details/index.styl +0 -21
  208. package/css/editor/details/item.styl +0 -153
  209. package/css/editor/embed.styl +0 -106
  210. package/css/editor/footer.styl +0 -180
  211. package/css/editor/full-editor.styl +0 -16
  212. package/css/editor/index.styl +0 -124
  213. package/css/editor/login-popup.styl +0 -13
  214. package/css/editor/preview.styl +0 -257
  215. package/css/editor/skin/editor/index.styl +0 -54
  216. package/css/editor/skin/editor/tabs.styl +0 -111
  217. package/css/editor/skin/index.styl +0 -138
  218. package/css/editor/skin/popup.styl +0 -152
  219. package/css/editor/skin/presets/dropdown.styl +0 -61
  220. package/css/editor/skin/presets/index.styl +0 -86
  221. package/css/editor/skin/presets/list.styl +0 -244
  222. package/css/editor/tooltips.styl +0 -85
  223. package/css/fonts.styl +0 -47
  224. package/css/icons/BlogvioEditor.dev.svg +0 -112
  225. package/css/icons.styl +0 -16
  226. package/css/img/arrow-right-rounded-v-small.png +0 -0
  227. package/css/img/browser-folder-separator.png +0 -0
  228. package/css/img/calendar-input-icons.png +0 -0
  229. package/css/img/check.png +0 -0
  230. package/css/img/close.png +0 -0
  231. package/css/img/composition/edit-icon.png +0 -0
  232. package/css/img/content/audio-icon.png +0 -0
  233. package/css/img/content/folder-icon.png +0 -0
  234. package/css/img/content/messages/error-background.png +0 -0
  235. package/css/img/content/messages/error-icon.png +0 -0
  236. package/css/img/content/messages/notification-background.png +0 -0
  237. package/css/img/content/messages/notification-icon.png +0 -0
  238. package/css/img/content/no-files-audio.png +0 -0
  239. package/css/img/content/no-files-image.png +0 -0
  240. package/css/img/content/no-files-video.png +0 -0
  241. package/css/img/content/no-files.png +0 -0
  242. package/css/img/content/rss-icon.png +0 -0
  243. package/css/img/content/selected.png +0 -0
  244. package/css/img/content/video-icon.png +0 -0
  245. package/css/img/content/with-control-text.png +0 -0
  246. package/css/img/control-dropdown-arrow.png +0 -0
  247. package/css/img/control-image-valid.png +0 -0
  248. package/css/img/control-position-icon.png +0 -0
  249. package/css/img/control-scale-lock-icon.png +0 -0
  250. package/css/img/control-slider-arrows-hover.png +0 -0
  251. package/css/img/control-slider-arrows.png +0 -0
  252. package/css/img/control-spinner-buttons-hover.png +0 -0
  253. package/css/img/control-spinner-buttons.png +0 -0
  254. package/css/img/control-textarea-bold-active.png +0 -0
  255. package/css/img/control-textarea-bold.png +0 -0
  256. package/css/img/control-textarea-italic-active.png +0 -0
  257. package/css/img/control-textarea-italic.png +0 -0
  258. package/css/img/control-textarea-underline-active.png +0 -0
  259. package/css/img/control-textarea-underline.png +0 -0
  260. package/css/img/custom-checkbox-sprite.png +0 -0
  261. package/css/img/details/item-collapse-icon.png +0 -0
  262. package/css/img/details/item-expand-icon.png +0 -0
  263. package/css/img/details/item-sort-icon.png +0 -0
  264. package/css/img/done-arrow.png +0 -0
  265. package/css/img/fb-logo-icon-w.png +0 -0
  266. package/css/img/grid-icons.png +0 -0
  267. package/css/img/icon-reference.png +0 -0
  268. package/css/img/indicator.png +0 -0
  269. package/css/img/loader.gif +0 -0
  270. package/css/img/loaders/audio-white.png +0 -0
  271. package/css/img/loaders/audio.png +0 -0
  272. package/css/img/loaders/photo-white.png +0 -0
  273. package/css/img/loaders/photo.png +0 -0
  274. package/css/img/loaders/util-white.png +0 -0
  275. package/css/img/loaders/util.png +0 -0
  276. package/css/img/loaders/video-white.png +0 -0
  277. package/css/img/loaders/video.png +0 -0
  278. package/css/img/maximize.png +0 -0
  279. package/css/img/minimize.png +0 -0
  280. package/css/img/next-btn.png +0 -0
  281. package/css/img/search-icon-sprite.png +0 -0
  282. package/css/img/services/blogvio.png +0 -0
  283. package/css/img/services/drive.png +0 -0
  284. package/css/img/services/dropbox-login.png +0 -0
  285. package/css/img/services/dropbox.png +0 -0
  286. package/css/img/services/facebook-login.png +0 -0
  287. package/css/img/services/facebook.png +0 -0
  288. package/css/img/services/flickr-login.png +0 -0
  289. package/css/img/services/flickr.png +0 -0
  290. package/css/img/services/instagram-login.png +0 -0
  291. package/css/img/services/instagram.png +0 -0
  292. package/css/img/services/text.png +0 -0
  293. package/css/img/services/uploads.png +0 -0
  294. package/css/img/services/uploads.svg +0 -689
  295. package/css/img/services/webaddress-bw.png +0 -0
  296. package/css/img/services/webaddress.png +0 -0
  297. package/css/img/services/webadress.png +0 -0
  298. package/css/img/services/websearch.png +0 -0
  299. package/css/img/services/wix.png +0 -0
  300. package/css/img/skin/item-active-indicator.png +0 -0
  301. package/css/img/skin/item-hover-icon.png +0 -0
  302. package/css/img/skin/overwrite.png +0 -0
  303. package/css/img/skin/popup-name-icon.png +0 -0
  304. package/css/img/skin/popup-save.png +0 -0
  305. package/css/img/skin/preset.png +0 -0
  306. package/css/img/skin/presets-arrow-purple.png +0 -0
  307. package/css/img/tw-icon-w.png +0 -0
  308. package/css/img/warning.png +0 -0
  309. package/css/img/white-rounded-check.png +0 -0
  310. package/css/index.styl +0 -9
  311. package/css/mixins.styl +0 -62
  312. package/css/scrollable.styl +0 -101
  313. package/karma.conf.js +0 -73
  314. package/lib/control.js +0 -1
  315. package/lib/controls.js +0 -1
  316. package/lib/core.editor.js +0 -4
  317. package/lib/core.js +0 -1
  318. package/lib/core.vendor.js +0 -3
  319. package/lib/dev/control.js +0 -845
  320. package/lib/dev/controls.js +0 -7774
  321. package/lib/dev/core.editor.js +0 -6439
  322. package/lib/dev/core.js +0 -1486
  323. package/lib/dev/core.vendor.js +0 -10708
  324. package/lib/dev/editor.css +0 -166
  325. package/lib/dev/editor.js +0 -29710
  326. package/lib/dev/editor.vendor.js +0 -15119
  327. package/lib/dev/jquery.nanoscroller.js.map +0 -10
  328. package/lib/editor.css +0 -167
  329. package/lib/editor.js +0 -49
  330. package/lib/editor.vendor.js +0 -11
  331. package/src/api/index.coffee +0 -23
  332. package/src/api/mixin.coffee +0 -89
  333. package/src/browser/controller/entry/audio.coffee +0 -38
  334. package/src/browser/controller/entry/button.coffee +0 -16
  335. package/src/browser/controller/entry/file.coffee +0 -35
  336. package/src/browser/controller/entry/folder.coffee +0 -14
  337. package/src/browser/controller/entry/image.coffee +0 -24
  338. package/src/browser/controller/entry/index.coffee +0 -18
  339. package/src/browser/controller/entry/rss.coffee +0 -5
  340. package/src/browser/controller/entry/video.coffee +0 -4
  341. package/src/browser/controller/index.coffee +0 -289
  342. package/src/browser/controller/instagram.coffee +0 -129
  343. package/src/browser/controller/navbar.coffee +0 -48
  344. package/src/browser/controller/social.coffee +0 -213
  345. package/src/browser/model/entry.coffee +0 -18
  346. package/src/browser/model/index.coffee +0 -34
  347. package/src/core/controller/font-loader.coffee +0 -65
  348. package/src/core/controller/lazyload.coffee +0 -14
  349. package/src/core/controller/overlay.coffee +0 -146
  350. package/src/core/controller/popup.coffee +0 -36
  351. package/src/core/controller/scrollable.coffee +0 -68
  352. package/src/core/controls/audio.coffee +0 -56
  353. package/src/core/controls/browser.coffee +0 -271
  354. package/src/core/controls/color.coffee +0 -121
  355. package/src/core/controls/date-time/calendar/index.coffee +0 -99
  356. package/src/core/controls/date-time/calendar/months.coffee +0 -52
  357. package/src/core/controls/date-time/calendar/years.coffee +0 -58
  358. package/src/core/controls/date-time/clock.coffee +0 -62
  359. package/src/core/controls/date-time/helper.coffee +0 -31
  360. package/src/core/controls/date-time/index.coffee +0 -62
  361. package/src/core/controls/date-time/popup.coffee +0 -56
  362. package/src/core/controls/details/audio.coffee +0 -33
  363. package/src/core/controls/details/image.coffee +0 -19
  364. package/src/core/controls/details/video.coffee +0 -14
  365. package/src/core/controls/dropdown.coffee +0 -100
  366. package/src/core/controls/font/font-item.coffee +0 -22
  367. package/src/core/controls/font/font-list.coffee +0 -108
  368. package/src/core/controls/font/fonts-popup.coffee +0 -91
  369. package/src/core/controls/font/index.coffee +0 -66
  370. package/src/core/controls/image.coffee +0 -37
  371. package/src/core/controls/index.coffee +0 -88
  372. package/src/core/controls/orderPicker.coffee +0 -93
  373. package/src/core/controls/position/grid-panel.coffee +0 -75
  374. package/src/core/controls/position/index.coffee +0 -98
  375. package/src/core/controls/position/panel.coffee +0 -68
  376. package/src/core/controls/position/pixel-panel.coffee +0 -54
  377. package/src/core/controls/position/popup.coffee +0 -63
  378. package/src/core/controls/position/reference-panel.coffee +0 -26
  379. package/src/core/controls/range.coffee +0 -191
  380. package/src/core/controls/rss.coffee +0 -16
  381. package/src/core/controls/scale.coffee +0 -78
  382. package/src/core/controls/slider.coffee +0 -122
  383. package/src/core/controls/stepper.coffee +0 -97
  384. package/src/core/controls/text.coffee +0 -54
  385. package/src/core/controls/textarea.coffee +0 -78
  386. package/src/core/controls/toggle.coffee +0 -29
  387. package/src/core/controls/url.coffee +0 -88
  388. package/src/core/controls/video.coffee +0 -9
  389. package/src/core/embed/api.js +0 -178
  390. package/src/core/embed/controller.js +0 -331
  391. package/src/core/models/composition.coffee +0 -178
  392. package/src/core/models/content.coffee +0 -79
  393. package/src/core/models/skin.coffee +0 -91
  394. package/src/core/models/user.coffee +0 -6
  395. package/src/core/models/widget.coffee +0 -88
  396. package/src/core/router/index.coffee +0 -44
  397. package/src/core/services/container/index.js +0 -18
  398. package/src/core/services/container/instance.js +0 -3
  399. package/src/core/services/content.js +0 -80
  400. package/src/core/services/instagram.coffee +0 -47
  401. package/src/core/services/mixin/events.js +0 -17
  402. package/src/core/services/service.js +0 -1
  403. package/src/core/services/sounds.js +0 -81
  404. package/src/core/services/uploads.js +0 -299
  405. package/src/core/utils/popup.coffee +0 -67
  406. package/src/core/utils/should-show.coffee +0 -12
  407. package/src/core/views/audio-details.pug +0 -9
  408. package/src/core/views/audio.pug +0 -7
  409. package/src/core/views/browser.pug +0 -4
  410. package/src/core/views/color.pug +0 -8
  411. package/src/core/views/date-time/calendar.pug +0 -3
  412. package/src/core/views/date-time/clock.pug +0 -12
  413. package/src/core/views/date-time/grid.pug +0 -6
  414. package/src/core/views/date-time/input.pug +0 -4
  415. package/src/core/views/date-time/table.pug +0 -6
  416. package/src/core/views/dropdown.pug +0 -9
  417. package/src/core/views/font/font-item.pug +0 -3
  418. package/src/core/views/font/fonts-list.pug +0 -7
  419. package/src/core/views/font/fonts-popup.pug +0 -5
  420. package/src/core/views/font/index.pug +0 -7
  421. package/src/core/views/image-details.pug +0 -6
  422. package/src/core/views/image.pug +0 -5
  423. package/src/core/views/input-layout.pug +0 -15
  424. package/src/core/views/order-items.pug +0 -7
  425. package/src/core/views/order-picker.pug +0 -7
  426. package/src/core/views/pixelpanel.pug +0 -69
  427. package/src/core/views/position.pug +0 -10
  428. package/src/core/views/range.pug +0 -9
  429. package/src/core/views/scale.pug +0 -7
  430. package/src/core/views/slider.pug +0 -6
  431. package/src/core/views/stepper.pug +0 -6
  432. package/src/core/views/text.pug +0 -4
  433. package/src/core/views/textarea.pug +0 -8
  434. package/src/core/views/toggle.pug +0 -5
  435. package/src/core/views/video-details.pug +0 -7
  436. package/src/core/views/video.pug +0 -4
  437. package/src/core/widget/index.coffee +0 -66
  438. package/src/editor/content/browser/dropzone.html +0 -268
  439. package/src/editor/content/browser/file.html +0 -124
  440. package/src/editor/content/browser/scroll-pane.html +0 -32
  441. package/src/editor/content/browser/service.html +0 -53
  442. package/src/editor/content/browser/upload.coffee +0 -44
  443. package/src/editor/content/browser/upload.html +0 -439
  444. package/src/editor/content/index.coffee +0 -294
  445. package/src/editor/content/input/field.coffee +0 -45
  446. package/src/editor/content/input/index.coffee +0 -115
  447. package/src/editor/content/service/base/photoitem.coffee +0 -49
  448. package/src/editor/content/service/cache.coffee +0 -20
  449. package/src/editor/content/service/default.coffee +0 -59
  450. package/src/editor/content/service/dropbox.coffee +0 -71
  451. package/src/editor/content/service/facebook.coffee +0 -143
  452. package/src/editor/content/service/flickr.coffee +0 -85
  453. package/src/editor/content/service/google-drive-sdk.coffee +0 -18
  454. package/src/editor/content/service/google-drive.coffee +0 -144
  455. package/src/editor/content/service/instagram-social.coffee +0 -84
  456. package/src/editor/content/service/instagram.coffee +0 -168
  457. package/src/editor/content/service/share-popup.coffee +0 -15
  458. package/src/editor/content/service/soundcloud.coffee +0 -163
  459. package/src/editor/content/tab.coffee +0 -27
  460. package/src/editor/details/bulk-editor/attributes-panel.coffee +0 -11
  461. package/src/editor/details/bulk-editor/index.coffee +0 -86
  462. package/src/editor/details/index.coffee +0 -156
  463. package/src/editor/details/item/attributes.coffee +0 -45
  464. package/src/editor/details/item/index.coffee +0 -82
  465. package/src/editor/editor.coffee +0 -274
  466. package/src/editor/footer/breadcrumb.coffee +0 -17
  467. package/src/editor/footer/index.coffee +0 -36
  468. package/src/editor/index.coffee +0 -79
  469. package/src/editor/listeners/embed-listener.coffee +0 -143
  470. package/src/editor/login-popup.coffee +0 -29
  471. package/src/editor/notification-controller.coffee +0 -35
  472. package/src/editor/popup.coffee +0 -68
  473. package/src/editor/remote-preview.coffee +0 -68
  474. package/src/editor/save/index.coffee +0 -62
  475. package/src/editor/skin/delete.coffee +0 -33
  476. package/src/editor/skin/editor/index.coffee +0 -188
  477. package/src/editor/skin/editor/panel.coffee +0 -37
  478. package/src/editor/skin/index.coffee +0 -126
  479. package/src/editor/skin/save.coffee +0 -58
  480. package/src/editor/skin/selector/index.coffee +0 -59
  481. package/src/editor/skin/selector/item.coffee +0 -123
  482. package/src/editor/skin/selector/list.coffee +0 -97
  483. package/src/editor/views/embed.pug +0 -10
  484. package/src/editor/views/loginbutton.pug +0 -8
  485. package/src/editor/views/popup.pug +0 -17
  486. package/src/editor/views/presets.pug +0 -8
  487. package/src/editor/views/presetslist-header.pug +0 -8
  488. package/src/editor/views/skinitem.pug +0 -13
  489. package/src/modules/control.js +0 -3
  490. package/src/modules/controls.js +0 -29
  491. package/src/modules/core.js +0 -19
  492. package/src/modules/editor.js +0 -80
  493. package/test/config.js +0 -3
  494. package/test/core/models/skin-spec.js +0 -209
  495. package/webpack.config.js +0 -46
  496. package/webpack.config.prod.js +0 -9
  497. /package/{src/core/views/date-time/popup.pug → dist/utils/passiveEvents.d.ts} +0 -0
@@ -1,271 +0,0 @@
1
- Control = require('./index')
2
-
3
- Controller = window.require 'spine/controller'
4
- Activateable = window.require 'spine/controller/activateable'
5
- Container = window.require 'spine/controller/container'
6
-
7
- Tabs = window.require 'spine/controller/tabs'
8
- Tab = require '../../editor/content/tab'
9
-
10
- Browser = require '../../browser/controller'
11
- UploadBrowser = require 'Editor/content/browser/upload'
12
-
13
- class DirectInput extends Controller
14
- title : 'directinput'
15
- serviceTitle: 'link'
16
- className:'directinput directinputpopup'
17
- @include Activateable
18
- @include Container
19
-
20
- attributes:'authenticated':true
21
- containerClass:'directinput-field'
22
- events:
23
- 'click .field-delete':'clear'
24
- constructor:(input)->
25
- super
26
- $.extend input.options,{readonly:false}
27
- iklass = window.require(input.control)
28
- @control = new iklass({attribute:@attribute,options:input.options})
29
- @append @control, "<span class='field-delete' data-icon='⏍'></span>"
30
- @control.bind "change:#{@control.type}", @onChange
31
- @recount = =>
32
- @addEntry = (i={})=>
33
- @control.update( i.url )
34
- @tab.count (v = Boolean(i.url or false))>>0
35
- @el.toggleClass 'old',v
36
- @removeEntry = (i={})=>
37
- @control.update('')
38
- @tab.count 0
39
- @el.toggleClass 'old',false
40
- clear:=>
41
- @control.update('');
42
- @onChange()
43
-
44
- onChange:(opts={})=>
45
- @tab.count((v = Boolean(opts.value or false))>>0)
46
- @el.toggleClass 'old',v
47
- @trigger 'beforeChange'
48
- if v
49
- @trigger 'urlChange',{url:opts.value,service:null}
50
- else
51
- @trigger 'urlRemove'
52
-
53
- release: ->
54
- @control.release()
55
- super
56
-
57
- class BrowserPopup extends Tabs
58
- className : 'content-browser browser-popup'
59
- tabContainerClass : 'content-browser-tabs'
60
- containerClass : 'content-browser-container'
61
-
62
- tabRenderer : Tab
63
-
64
- @include Activateable
65
- interval:0
66
-
67
- events:
68
- 'click .message .close' : 'closeMessage'
69
- 'click .browser-logout' : 'deactivate'
70
-
71
- elements:
72
- '.message': 'message'
73
- '.message .text': 'text'
74
-
75
- constructor:(opts, inpt, @anchor) ->
76
- super
77
- @input = new DirectInput(inpt);
78
- @browsers=[]
79
-
80
- @input.bind 'beforeChange', @clearServices
81
- @input.bind 'urlChange',@contentAdd
82
- @input.bind 'urlRemove',@contentRemove
83
-
84
- # console.log("Content browser constructor sources:", @sources);
85
- delete @sources.websearch
86
- delete @sources.blogvio
87
- delete @sources.dropbox
88
- delete @sources.flickr
89
- delete @sources["google-drive"]
90
-
91
- @$bind 'click',(e)->e.stopPropagation()
92
- @listenTo $('body'),'click',=>if @isActive() then @deactivate()
93
-
94
- children: (filter = -> true) ->
95
- browser for _, browser of @browsers when filter(browser)
96
-
97
- _initBrowsers: (popup) ->
98
- popup.append(@el)
99
- @addBrowser UploadBrowser, {allowDelete: false, allowClear: false}
100
-
101
- for key,source of @sources
102
- Service = window.require source.module
103
- browser = if source.browser? then (window.require source.browser) else Browser
104
- @browsers[key] = browser = new browser {content:[], title:key, Service:Service, options: $.extend {}, @options, source.options or {} }
105
- @listenTo browser, 'add', @contentAdd
106
- @listenTo browser, 'remove', @contentRemove
107
- @listenTo browser, 'canAdd', @contentCanAdd
108
- @append browser
109
-
110
- @browsers['inpt'] = @input
111
- @append @input
112
-
113
- addBrowser: (Browser, options) =>
114
- return unless Browser.isCompatible @options.types
115
- browser = new Browser (Object.assign { filetypes: @options.types }, options)
116
-
117
- browser.on 'toggle', ({file, options}) =>
118
- @clear()
119
- if file.id isnt @item?.id
120
- item = {
121
- id: file.id,
122
- url: file.url,
123
- service: Browser.name
124
- }
125
- @item = item
126
- @trigger 'select', item
127
- else
128
- @item = null
129
- @trigger 'select'
130
-
131
- browser.observe 'selected', (selected) -> browser.tab.count selected.length
132
- # HACK copy the svelte css to the popup
133
- browser.observe(
134
- 'loading',
135
- (loading) =>
136
- css = $('style[id^=svelte]')
137
- $(@popup.head).append css.clone()
138
- { defer: true }
139
- )
140
-
141
- updateSelected = =>
142
- if @item?.service is Browser.name
143
- browser.set({ selected: [@item.id] })
144
- else
145
- browser.set({ selected: [] })
146
-
147
- @on 'select', updateSelected
148
- updateSelected()
149
-
150
- @append @browsers[Browser.name] = browser
151
-
152
- contentAdd:(item)=>
153
- if item
154
- @item = item
155
-
156
- @trigger 'select', item
157
-
158
- contentCanAdd:(callback)=>
159
- @clear()
160
- callback?.call @
161
-
162
- contentRemove:(item)=>
163
- if @item?
164
- @item = null
165
- @trigger 'select'
166
-
167
- clearServices: =>
168
- if @item
169
- @browsers[@item.service]?.removeEntry?(@item)
170
-
171
- clear:->
172
- if @item
173
- @browsers[@item.service or 'inpt'].removeEntry?(@item)
174
-
175
- set:(item)=>
176
- @clear()
177
- @item = item
178
-
179
- deactivate: =>
180
- @popup?.hide()
181
- Activateable.deactivate.apply @,arguments
182
-
183
- activate:=>
184
- @_createPopup().then =>
185
- @popup.show()
186
- if @item
187
- browser = @browsers[@item.service or 'inpt']
188
- browser.active()
189
- @set(@item)
190
- browser.recount()
191
- else if @children((i)->i.isActive()).length < 1
192
- @children()[0].active()
193
- Activateable.activate.apply @,arguments
194
-
195
- release: ->
196
- @input.release()
197
- for _, browser of @browsers
198
- browser.release()
199
- @popup?.release()
200
- super
201
-
202
- _createPopup: ->
203
- return @popupPromise if @popupPromise
204
- @popupPromise = Blogvio.UI.popup.new
205
- anchor: @anchor
206
- topOffset: 6
207
- leftOffset: -9
208
- css: [
209
- 'https://widgetic.com/bundles/blogvioapp/css/editor/editor.css'
210
- ]
211
- .then (@popup) =>
212
- @_initBrowsers @popup
213
- @popup.append @el
214
- .fail (e) ->
215
- console.error e.stack
216
-
217
- class BrowserInput extends Control
218
- template : 'core/views/browser'
219
- className : 'control control-browser'
220
-
221
- elements:
222
- '.input-browser': 'input'
223
- '.input-browser-browse': 'browseButton'
224
-
225
- events:
226
- 'click .input-browser-browse, input:text, .url-thumb': 'browse'
227
-
228
- constructor: ->
229
- super
230
-
231
- if (input = $.extend({}, @options.input))
232
- input.options.readonly = true;
233
- iklass = window.require(input.control)
234
- @control = new iklass({item:@item, attribute:@attribute, options:input.options, @isDetailInput})
235
- @input.prepend @control.el
236
-
237
- if @options.browser
238
- @browserPopup = new BrowserPopup(@options.browser, @options.input, @browseButton)
239
- @browserPopup.bind 'select', @select
240
-
241
- update: (item,type,options={}) =>
242
- if item[@attribute] and options.from isnt @ and @browserPopup
243
- @browserPopup.set item.attrMeta?(@attribute) or item.metas?[@attribute] or {url:item[@attribute]}
244
-
245
- setItem: (item) =>
246
- super
247
- @control.setItem(item)
248
-
249
- select: (item) =>
250
- @change val = if item then item.url else ''
251
- @item.attrMeta? @attribute, if item?.service then item else null
252
- # atts = {}
253
- # atts[@attribute]= if item then item.url else ''
254
- # (atts.metas = $.extend {} , @item.metas)[@attribute] = if item?.service then item else null
255
- # @item.updateAttributes atts,{ @attribute, from:@}
256
- @control.$addClass('valid')
257
- @trigger "change:#{@type or 'control'}", {@attribute, val, value: val}
258
-
259
- browse: (e) =>
260
- e.stopPropagation()
261
- if @browserPopup.isActive() then @browserPopup.deactivate() else @browserPopup.activate()
262
-
263
- release: ->
264
- @control?.release()
265
- @browserPopup?.release()
266
- super
267
-
268
- deactivate: =>
269
- @browserPopup.deactivate()
270
-
271
- module.exports = BrowserInput
@@ -1,121 +0,0 @@
1
- Control = require './index'
2
- Spinner = require './stepper'
3
- { createPopup } = require '../utils/popup'
4
-
5
- ###
6
- Initialize with {item:{skin instance},attribute:'attribute',options:{options from meta}}
7
- ###
8
- class Color extends Control
9
- template : 'core/views/color'
10
- className : 'control-color'
11
- events :
12
- 'input .control-input':'_change'
13
- 'click .color-preview-i': 'toggle'
14
- elements :
15
- '.control-input': 'input'
16
- '.color-preview': 'color'
17
- '.color-preview-i': 'colorPreview'
18
-
19
- render:=>
20
- super
21
-
22
- @_updatePreviewColor()
23
-
24
- @
25
-
26
- toggle: =>
27
- @_createPopup().then => if @popup.visible then @popup.hide() else @popup.show()
28
-
29
- update: (item, type, options = {}) =>
30
- value = if item[@attribute]? then item[@attribute] else @options.default
31
-
32
- if options.from isnt @
33
- @input.val @tinycolor(value).toString('hex6')
34
-
35
- if options.from isnt @color
36
- @spectrum @color, 'set', value
37
-
38
- color = @tinycolor(value).toRgb()
39
- @spinner?.change color.a*100, silent:true
40
- @_updatePreviewColor item
41
-
42
- _createPopup: ->
43
- return @popupPromise if @popupPromise
44
- @popupPromise = createPopup
45
- anchor: @colorPreview
46
- .then (@popup) =>
47
- @spectrum(@color,
48
- preview: @colorPreview.find(".sp-preview-inner")
49
- flat: true,
50
- showAlpha:true,
51
- showInitial:true,
52
- showInput:true,
53
- preferredFormat:'hex6',
54
- showButtons:false,
55
- clickoutFiresChange: true,
56
- change:@colorChange,
57
- move:@colorChange,
58
- color:@item[@attribute]
59
- input:(color)=>
60
- oc = color.toRgb()
61
- oc.a = @spinner.input.val()/100
62
- @spectrum @color, 'setTemp', oc
63
- @colorChange(@tinycolor(oc));
64
- )
65
-
66
- cont = @spectrum @color, 'container'
67
- alpha = (not (alp = @options.alpha)?) or String(alp) is true
68
- cont.toggleClass 'sp-alpha-enabled', alpha
69
-
70
- @spinner = new Spinner
71
- className: 'control control-stepper sp-alpha-step'
72
- attribute:'opacity',
73
- options :
74
- min : 0
75
- max : 100
76
- default : @tinycolor(@item[@attribute]).toRgb().a*100
77
- @spinner.bind 'change:stepper',@_updateOpacity
78
-
79
- cont.find('.sp-input-container').append @spinner.render().el
80
- cont.find('.sp-input-container .sp-input').attr 'maxLength','7'
81
- @popup.append(cont)
82
- .catch (err) ->
83
- console.error err.stack
84
-
85
- _updatePreviewColor: (item) ->
86
- @colorPreview.find(".sp-preview-inner").css
87
- backgroundColor: (item or @item)[@attribute]
88
-
89
- _updateOpacity: (o = {}) =>
90
- return unless @popup.visible
91
- oc = @spectrum(@color, 'get').toRgb()
92
- oc.a = o.val/100
93
- @spectrum @color, 'setTemp', oc
94
- @colorChange @tinycolor(oc)
95
-
96
- _change: =>
97
- @colorChange @tinycolor(@input.val()), from: @
98
-
99
- colorChange: (color, options = {}) =>
100
- @change color.toRgbString(), $.extend {@attribute, from: @color}, options
101
-
102
- deactivate: =>
103
- @popup?.hide()
104
-
105
- release: ->
106
- # destroy spectrum before removing @el from the DOM
107
- # as it depends on some data saved on the DOM element
108
- # which is lost after removal
109
- @spectrum @color, 'destroy'
110
- @popup?.release()
111
- super
112
-
113
- tinycolor: ->
114
- window.tinycolor arguments...
115
-
116
- spectrum: (input, data...) ->
117
- $(input).spectrum data...
118
-
119
- setPopupTargetWindow: (@targetWindow) => @
120
-
121
- module.exports = Color
@@ -1,99 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
- Activateable = window.require 'spine/controller/activateable'
3
-
4
- MonthsController = require './months'
5
- YearsController = require './years'
6
-
7
- class Calendar extends Controller
8
- className: 'calendar'
9
- @include Activateable
10
- template: 'core/views/date-time/calendar'
11
-
12
- elements:
13
- '.date-input':'input'
14
- '.datepickr-wrapper': 'calendarEl'
15
- '.date_time-content': 'content'
16
- '.date_time-footer' : 'footer'
17
-
18
- events:
19
- 'click .datepickr-current-month': 'nextView'
20
- 'click .date_time-current': 'nextView'
21
- 'change:year': '_yearChanged'
22
- 'change:month': '_monthChanged'
23
- 'click .datepickr-next-month': 'triggerResize'
24
- 'click .datepickr-prev-month': 'triggerResize'
25
-
26
- views: ['calendar', 'months', 'years']
27
-
28
- minYear: 1889
29
- maxYear: 2189
30
-
31
- constructor: ->
32
- super
33
- do @render
34
- @input.bind 'change', @_change
35
-
36
- @c = -1 #current view
37
- @l = @views.length
38
- do @nextView
39
-
40
-
41
- update: (value) ->
42
- {@date} = value
43
- [day, month, year] = @date.split '-'
44
- day=+day; month--; year=+year # convert to int, month is 0 indexed
45
-
46
- @datePickr.selectedDate = {day, month, year}
47
- [@datePickr.currentDayView, @datePickr.currentMonthView, @datePickr.currentYearView] = [day, month, year]
48
- do @datePickr.refresh
49
-
50
- @yearsController.update {year}
51
- @monthsController.update {year, month}
52
-
53
- [hours, minutes] = value.time.split ':'
54
- @footer.html "<span class=\"hh\">#{hours}</span>:<span class=\"mm\">#{minutes}</span>"
55
-
56
- render: ->
57
- super
58
- @datePickr = @input.datepickr(dateFormat: 'j-n-Y', firstDayOfWeek: 1)[0]
59
-
60
- @content.append (@monthsController = new MonthsController {@minYear, @maxYear}).el
61
- @content.append (@yearsController = new YearsController min: @minYear, max: @maxYear).el
62
-
63
- @refreshElements()
64
-
65
- _change: =>
66
- @el.trigger 'change', {date} unless (date = @input.val()) is @date
67
-
68
- _monthChanged: (ev, data) =>
69
- date = @date.replace /-\d+-\d+$/, "-#{data.month+1}-#{data.year}"
70
- @el.trigger 'change', {date}
71
- @view 'calendar'
72
-
73
- _yearChanged: (ev, data) =>
74
- date = @date.replace /\d+$/, data.year
75
- @el.trigger 'change', {date}
76
- @view 'months'
77
-
78
- nextView: =>
79
- @view @views[(@c+1)%@l] #loop through all views
80
-
81
- view: (view) =>
82
- @content.children().hide()
83
- @c = @views.indexOf view
84
- do @[view]
85
- do @triggerResize
86
-
87
- calendar: =>
88
- @calendarEl.show()
89
-
90
- months: =>
91
- @monthsController.render().show()
92
-
93
- years: =>
94
- @yearsController.render().show()
95
-
96
- triggerResize: =>
97
- @el.trigger 'resize:popup'
98
-
99
- module.exports = Calendar
@@ -1,52 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
-
3
- class MonthsController extends Controller
4
- className: 'months-view'
5
- template: window.require 'core/views/date-time/grid'
6
- table: window.require 'core/views/date-time/table'
7
-
8
- elements:
9
- '.date_time-wrapper table': 'tableEl'
10
- '.date_time-current':'title'
11
- '.selected': 'selected'
12
-
13
- events:
14
- 'click .date_time-next': 'nextYear'
15
- 'click .date_time-prev': 'prevYear'
16
- 'click .date_time-cell': '_change'
17
-
18
- constructor: ->
19
- super
20
- @months = $.datepickr::l10n.months
21
-
22
- render: ->
23
- super
24
- do @renderTable
25
- @el
26
-
27
- renderTable: ->
28
- selected = if @year is @date.year then @months.shorthand[@month] else ''
29
- @tableEl.html @table {cols: 4, selected, data: @months.shorthand}
30
- @refreshElements()
31
- @title.html "#{@year}"
32
-
33
- update: (@date) ->
34
- {@month, @year} = @date
35
- do @renderTable
36
-
37
- _change: (e) =>
38
- @selected.removeClass('selected')
39
- (target = $ e.target).parent().addClass 'selected'
40
- month = @months.shorthand.indexOf target.text()
41
-
42
- @el.trigger 'change:month', {month, @year}
43
-
44
- nextYear: =>
45
- @renderTable ++@year
46
- # @el.trigger 'change:year', year: @year+1
47
-
48
- prevYear: =>
49
- @renderTable --@year
50
- # @el.trigger 'change:year', year: @year-1
51
-
52
- module.exports = MonthsController
@@ -1,58 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
-
3
- sum = (a, b) -> a+b
4
- array_fill = (min, max) ->
5
- Array.apply(null, length: max-min).map sum.call, sum.bind null, min
6
-
7
- class YearsController extends Controller
8
- className: 'years-view'
9
- template: window.require 'core/views/date-time/grid'
10
- table: window.require 'core/views/date-time/table'
11
-
12
- elements:
13
- '.date_time-wrapper table': 'tableEl'
14
- '.selected': 'selected'
15
- '.date_time-current':'title'
16
-
17
- events:
18
- 'click .date_time-next': 'nextPage'
19
- 'click .date_time-prev': 'prevPage'
20
- 'click .date_time-cell': '_change'
21
-
22
- years: []
23
-
24
- constructor: ->
25
- super
26
-
27
- @index = @min
28
-
29
- render: ->
30
- super
31
- do @renderTable
32
- @el
33
-
34
- renderTable: ->
35
- @tableEl.html @table cols: 4, selected: @year, data: @years = array_fill @index, @index+16
36
- @refreshElements()
37
- @title.html "#{@index} - #{@index+16-1}"
38
-
39
- nextPage: =>
40
- @renderTable @index = Math.min @max-16, @index+16
41
-
42
- prevPage: =>
43
- @renderTable @index = Math.max @min, @index-16
44
-
45
- update: (date) =>
46
- {@year} = date
47
-
48
- @index = @year unless @year in @years
49
- do @renderTable
50
-
51
- _change: (e) =>
52
- @selected.removeClass('selected')
53
- (target = $ e.target).parent().addClass 'selected'
54
- year = target.text()
55
-
56
- @el.trigger 'change:year', {year} unless year is @year
57
-
58
- module.exports = YearsController
@@ -1,62 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
- Activateable = window.require 'spine/controller/activateable'
3
-
4
- class Clock extends Controller
5
- className: 'clock'
6
- @include Activateable
7
- template: window.require 'core/views/date-time/clock'
8
-
9
- events:
10
- 'click .date_time-current': 'toggleView'
11
- 'change .clockpicker': 'stopPropagation'
12
-
13
- elements:
14
- '.clockpicker': 'picker'
15
- '.clockpicker input': 'pickrInput'
16
- '.date_time-footer' : 'footer'
17
- '.hh': 'hoursEl'
18
- '.mm': 'minutesEl'
19
- '.time-elements': 'tElem'
20
-
21
- hours: '00'
22
- minutes: '00'
23
-
24
- constructor: ->
25
- super
26
- @months = $.datepickr::l10n.months
27
-
28
- do @render
29
-
30
- render: =>
31
- super
32
-
33
- activate: =>
34
- Activateable.activate.apply @, arguments
35
- @picker.clockpicker
36
- clockUpdate: (prop, val) =>
37
- @[prop] = val
38
- @time = "#{@hours}:#{@minutes}"
39
- @hoursEl.text @hours
40
- @minutesEl.text @minutes
41
- afterDone: =>
42
- @el.trigger 'change', {@time}
43
- afterViewToggle: (view) =>
44
- @tElem.removeClass 'active'
45
- @["#{view}El"].addClass 'active'
46
-
47
- toggleView: =>
48
- @picker.clockpicker 'toggleView'
49
-
50
- update: (value) =>
51
- {@date, @time} = value
52
- [@hours, @minutes] = @time.split ':'
53
- @pickrInput.val @time
54
-
55
- [day, month, year] = @date.split '-'
56
- @footer.html "#{@months.longhand[month-1]} #{year}"
57
-
58
- stopPropagation: (e) ->
59
- e.stopPropagation()
60
- e.stopImmediatePropagation()
61
-
62
- module.exports = Clock
@@ -1,31 +0,0 @@
1
- module.exports = dateHelper =
2
- setFormat: (dateFormat = 'd/m/Y H:i') ->
3
- dateHelper.format.bind dateHelper, dateFormat
4
-
5
- parseFrom: (format, date) ->
6
- parsed = {}
7
- matches = date.match(///#{format.replace /\w+/g, '(\\w+|\\d+)'}///)[1..]
8
- for fm, i in format.match /\w+/g
9
- parsed[fm] = matches[i]
10
-
11
- year = parsed.Y or parsed.y or 0
12
- month = (parsed.F or parsed.m or parsed.M or parsed.n or 0)-1
13
- day = parsed.d or parsed.D or parsed.j or 0
14
- hours = parsed.g or parsed.G or parsed.h or parsed.H or 0
15
- minutes = parsed.i or 0
16
- seconds = parsed.s or 0
17
-
18
- (new Date year, month, day, hours, minutes, seconds).getTime()
19
-
20
- changeFormat: (fromFormat, toFormat, date) ->
21
- time = dateHelper.parseFrom fromFormat, date
22
- dateHelper.format toFormat, time
23
-
24
- format: (dateFormat = 'd/m/Y H:i', milliseconds) ->
25
- if typeof milliseconds is 'string' and (new Date(milli = Date.parse milliseconds)) isnt 'Invalid Date'
26
- milliseconds = milli
27
-
28
- if typeof milliseconds is 'object' and milliseconds.date? and milliseconds.time?
29
- milliseconds = Date.parse milliseconds.date.split('-').reverse().join('/')+' '+milliseconds.time
30
-
31
- $.datepickr::formatDate dateFormat, milliseconds