@widgetic/editor 3.11.4 → 4.0.2

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 +4009 -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 +731 -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 +2098 -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 +1932 -0
  90. package/dist/components/ic/TextAreaInputController.svelte.d.ts +14 -0
  91. package/dist/components/ic/TextAreaPreviewInputController.svelte +478 -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 +11 -0
  131. package/dist/config.js +31 -0
  132. package/dist/index.d.ts +5 -0
  133. package/dist/index.js +9 -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 +278 -0
  137. package/dist/utils/FontManager.js +1302 -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,48 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
- Activator = window.require 'spine/controller/activator'
3
- Activateable = window.require 'spine/controller/activateable'
4
- Popup = require '../../editor/popup'
5
-
6
- $body = $ 'body'
7
-
8
- class NavItem extends Controller
9
- className : 'browser-nav-item'
10
- @include Activateable
11
-
12
- constructor:(options)->
13
- super
14
- if @item.root then @el.attr('title',@item.navTitle).addClass 'root' else @el.html(@item.name)
15
- @$bind 'click', =>
16
- return if @isActive()
17
- @parent().trigger 'select', @item
18
- @active().el.nextAll().each (i,el)->$(el).controller().release()
19
-
20
- class NavBar extends Activator
21
- className : 'browser-nav'
22
- constructor: ->
23
- super
24
-
25
- return unless @disconnectBtn
26
-
27
- @popup = new Popup
28
- title: 'Sure about disconnecting?'
29
- confirmBtn: 'Yes, Disconnect'
30
- cancelBtn: 'Cancel'
31
- confirmBtnClass: 'green-button button--uc no-icons'
32
- cancelBtnClass: 'dim-button button--uc no-icons'
33
- @append @logout=$("<div class='browser-logout' title='Disconnect from server' data-icon='↯'></div>")
34
-
35
- @logout.bind 'click', (e) =>
36
- do e.stopPropagation
37
- @popup.pop @el.closest('body'), =>
38
- (@$trigger 'logout').trigger 'logout'
39
- @children (i) -> i.release()
40
-
41
- addItem: (item) ->
42
- @children (child) ->
43
- unless child.item.root or ///^#{child.item.path.replace /\//ig, '\/'}(\/|$)///.test item.path
44
- child.release()
45
- @append child = new NavItem {item}
46
- child.active()
47
-
48
- module.exports = NavBar
@@ -1,213 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
- Activateable = window.require 'spine/controller/activateable'
3
- Container = window.require 'spine/controller/container'
4
- Scrollable = require 'Core/controller/scrollable'
5
-
6
- h = window.virtualDom.h
7
- diff = window.virtualDom.diff
8
- patch = window.virtualDom.patch
9
- createElement = window.virtualDom.create
10
-
11
- NavBar = require './navbar'
12
-
13
- Intent = """
14
- <div class=\"browser-login\">
15
- <div class=\"browser-login-cont\">
16
- <div class=\"browser-login-message\">add content from your account</div>
17
- <div class=\"browser-login-button\"></div>
18
- </div>
19
- </div>"
20
- """
21
-
22
- stripFalse = (obj) ->
23
- for key, value of obj
24
- if value is false
25
- delete obj[key]
26
- return obj
27
-
28
- class SocialBrowser extends Controller
29
- className: 'browser social-browser'
30
-
31
- @include Container
32
- @include Activateable
33
- @include Scrollable
34
-
35
- scrollOptions: {}
36
-
37
- events:
38
- 'click .browser-login-button': 'auth'
39
-
40
- constructor: ->
41
- super
42
- @attribute = @options.attribute
43
-
44
- @service = new @Service @title, @options
45
- @serviceTitle or= @service.title
46
- @authenticated = false
47
- @el.attr { @authenticated }
48
-
49
- @nav = new NavBar disconnectBtn: true
50
- @intent = $ Intent
51
- @_dropdownDisplay = 'none'
52
-
53
- @el.addClass @title
54
- @render()
55
-
56
- @on('activate', @auth)
57
- @listenTo @service, 'auth', @onAuth
58
- @listenTo @nav, 'logout', @onLogout
59
-
60
- auth: (e) ->
61
- return true if @authenticated
62
- @service.auth e?.type is 'click'
63
- true
64
-
65
- onAuth: (@authenticated) =>
66
- @el.attr { @authenticated }
67
- @$trigger "editor:browser:auth", service: @Service.name, @authenticated
68
-
69
- onLogout: =>
70
- @service.deauth()
71
-
72
- render: ->
73
- if !@rootNode
74
- @tree = @_render()
75
- @rootNode = createElement(@tree)
76
- else
77
- newTree = @_render();
78
- patches = diff(@tree, newTree);
79
- @rootNode = patch(@rootNode, patches);
80
- @tree = newTree;
81
- @$('input').each (index, i) =>
82
- return unless @content[index]
83
- i.value = @content[index].value
84
-
85
- @delay => @tab.count @content.length
86
-
87
- _render: ->
88
- h('ul', [
89
- @content.map (i) => @['_render_' + i.type](i, @onItemUpdate(i), true)
90
- @['_render_' + @newItem.type](@newItem, @onItemCreate) if @newItem
91
- @_render_select()
92
- ])
93
-
94
- _render_user_id: (i) ->
95
- @_render_input('@', i, null, true)
96
-
97
- _render_username: (i, callback, allowDelete) ->
98
- @_render_input('@', i, callback, allowDelete)
99
-
100
- _render_hashtag: (i, callback, allowDelete) ->
101
- @_render_input('#', i, callback, allowDelete)
102
-
103
- _render_input: (symbol, i, callback, allowDelete) ->
104
- h('li.directinput-field.social-browser__input', [
105
- h('div.control.control-url.social-browser__control', [
106
- h('span', symbol),
107
- h('input.control-input.input-text', {
108
- onblur: callback,
109
- attributes: stripFalse {
110
- type: 'text',
111
- placeholder: 'username',
112
- value: i.value
113
- readonly: !callback
114
- }
115
- })
116
- ]),
117
- h('span.field-delete', {
118
- onclick: @onDeleteClicked(i),
119
- attributes: { 'data-icon': '⏍' }
120
- }) if allowDelete
121
- ])
122
-
123
- _render_select: ->
124
- accountTypeItems = @content.filter (i) => i.type is 'user_id' and i.token is @service.getToken()
125
- accountNotConnected = accountTypeItems.length is 0
126
- h('li.social-browser__input',
127
- h('div.control.control-dropdown', [
128
- h('div.input-dropdown',
129
- h('div.input-dropdown-default', { onclick: @_toggleDropdown }, [
130
- h('span', 'Add'),
131
- h('div.dropdown-arrow')
132
- ])
133
- ),
134
- h('ul.input-dropdown-list', { style: { display: @_dropdownDisplay }}, [
135
- h('li', { onclick: @_addInput('user_id') }, 'My account') if accountNotConnected,
136
- h('li', { onclick: @_addInput('username') }, 'Username' ),
137
- h('li', { onclick: @_addInput('hashtag') }, 'Hashtag' )
138
- ])
139
- ])
140
- )
141
-
142
- _toggleDropdown: =>
143
- @_dropdownDisplay = if @_dropdownDisplay is 'block' then 'none' else 'block'
144
- @render()
145
-
146
- _addInput: (type) => (e) =>
147
- @_toggleDropdown()
148
-
149
- @trigger 'canAdd', => @__addInput(type)
150
-
151
- __addInput: (type) ->
152
- @newItem = {}
153
- @newItem.service = @title
154
- @newItem.type = type
155
- @newItem.token = @service.getToken()
156
-
157
- if type is 'user_id'
158
- @newItem.id = @service.user.id
159
- @_add(@service.user.username)
160
- else
161
- @render()
162
- @$('input[type=text]:last').focus()
163
-
164
- onItemCreate: (e) =>
165
- val = e.currentTarget.value
166
- return unless val
167
-
168
- @_add(val)
169
-
170
- _add: (val) ->
171
- @newItem.value = val
172
- @newItem[@attribute] = @_attributeVal(@newItem)
173
- @trigger 'add', @newItem
174
- @newItem = undefined
175
- @render()
176
-
177
- _attributeVal: (item) -> 'Instagram: ' + (if item.type is 'hashtag' then '#' else '@') + item.value
178
-
179
- onItemUpdate: (item) => (e) =>
180
- val = e.currentTarget.value
181
- return unless val
182
- return unless val != item.value
183
-
184
- item.value = val
185
- item[@attribute] = @_attributeVal(item)
186
- @trigger 'update', item, @attribute, item[@attribute]
187
-
188
- onDeleteClicked: (item) => (e) =>
189
- @trigger 'remove', item
190
- @removeEntry(item)
191
-
192
- addEntry: (item) ->
193
- @content.push(item)
194
- @render()
195
-
196
- removeEntry: (item) ->
197
- return unless @content.indexOf(item) >= 0
198
- @content.splice @content.indexOf(item), 1
199
- @render()
200
-
201
- active: ->
202
- Activateable.active.apply @, arguments
203
- @scrollOptions.documentContext = @el.get(0).ownerDocument
204
- @scroll()
205
- @el.append @nav.el, @intent
206
- @append @rootNode
207
- @delay =>
208
- @$trigger 'editor:browser:active', service: @Service.name, @authenticated
209
-
210
- deactivate: =>
211
- Activateable.deactivate.apply @, arguments
212
-
213
- module.exports = SocialBrowser
@@ -1,18 +0,0 @@
1
- Module = window.require 'spine/core/module'
2
- Events = window.require 'spine/core/events'
3
-
4
- ###
5
- ###
6
- class Entry extends Module
7
- @include Events
8
- stat: 0
9
-
10
- constructor:(atts={})->
11
- super
12
- for key, value of atts
13
- if atts.hasOwnProperty(key) and typeof @[key] is 'function'
14
- @[key](value)
15
- else
16
- @[key] = value
17
-
18
- module.exports = Entry
@@ -1,34 +0,0 @@
1
- Module = window.require 'spine/core/module'
2
- Events = window.require 'spine/core/events'
3
- Entry = require '../model/entry'
4
-
5
- class Service extends Module
6
- @browser: 'browser/controller'
7
- @authenticating: false
8
- @include Events
9
-
10
- constructor: (title,options)->
11
- super
12
- @title = title
13
- @root = new Entry type:'folder', path:'/', root:true
14
- @options = options
15
- @listenTo @, 'auth', => clearTimeout @authFailInterval
16
-
17
- ###
18
- The abstract auth function calls the _auth implementation function.
19
- Rate-limited at 300 ms.
20
- ###
21
- auth: ->
22
- # console.log("Service auth:", @authenticating)
23
- return if @authenticating
24
- @authenticating = true
25
- setTimeout (=>@authenticating = false), 300
26
-
27
- clearTimeout @authFailInterval
28
- @authFailInterval = setTimeout =>
29
- @trigger 'auth', @authenticated = false
30
- , 3000
31
-
32
- @_auth arguments...
33
-
34
- module.exports = Service
@@ -1,65 +0,0 @@
1
- readyDef = new $.Deferred
2
- readyPromise = readyDef.promise()
3
-
4
- class FontLoader
5
- fontList: {}
6
-
7
- constructor: ->
8
- @loadFontLoader()
9
-
10
- loadFontLoader: ->
11
- wf = document.createElement 'script'
12
- wf.src = 'https://ajax.googleapis.com/ajax/libs/webfont/1.6.16/webfont.js'
13
- wf.type = 'text/javascript'
14
- wf.async = 'true'
15
- wf.onload = -> readyDef.resolve()
16
- s = document.getElementsByTagName('script')[0]
17
- s.parentNode.insertBefore(wf, s)
18
-
19
- load: (options = {}, context = window, source) -> readyPromise.then ->
20
- fontFamily = options.families[0]
21
-
22
- source or= options.source or 'google'
23
- if context.fontDefs? and context.fontDefs[fontFamily]?
24
- return context.fontDefs[fontFamily]
25
-
26
- context.fontDefs or= {}
27
- if source is 'local'
28
- return context.fontDefs[fontFamily] = (new $.Deferred).resolve().promise()
29
-
30
- context.fontDefs[fontFamily] = fl.loadGoogleFont options, context
31
-
32
- loadGoogleFont: (options, context) =>
33
- def = new $.Deferred
34
- WebFont.load
35
- google: options
36
- context: context
37
- fontactive: do (def) -> -> def.resolve arguments
38
- fontinactive: do (def) -> -> def.resolve arguments
39
- timeout: 600
40
-
41
- return def.promise()
42
-
43
- loadFontList: =>
44
- return @fontListRdy if @fontListRdy?
45
- def = Blogvio.Aye.defer()
46
- @_getFontList().then =>
47
- def.resolve $.extend {}, (f for _, f of @fontList)...
48
- @fontListRdy = def.promise
49
-
50
- _getFontList: =>
51
- def = new $.Deferred
52
- rdy = (source, fonts) ->
53
- if source
54
- fonts[font].source = source for font, opts of fonts
55
- @fontList[source] = fonts
56
- else
57
- @fontList = $.extend {}, @fontList, fonts
58
- def.resolve() if @fontList.google? and @fontList.local?
59
-
60
- $.getJSON('/fonts-list').then rdy.bind @, null
61
- $.getJSON('/fonts.json').then rdy.bind @, 'local'
62
-
63
- return def.promise()
64
-
65
- module.exports = fl = new FontLoader
@@ -1,14 +0,0 @@
1
- Lazyload =
2
- lazyLoad: ->
3
- clearTimeout @loadTimeout
4
- @loadTimeout = setTimeout =>
5
- top = (elTop = @el.offset().top) - (@offsetToPreLoad or 150)
6
- bottom = elTop + @el.height() + (@offsetToPreLoad or 150)
7
-
8
- lazyItems = @lazyItems?() or @children?() or []
9
- for child, i in lazyItems
10
- if (childTop = child.el.offset().top) > top and childTop < bottom
11
- child.show?()
12
- , 50
13
-
14
- module.exports = Lazyload
@@ -1,146 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
-
3
- # Creates a 'overlay' type popup and wraps it in a friendly API
4
- #
5
- # The popup is created only when it is needed (right before showing)
6
- #
7
- # The creation of the popup suffers from some lag because of the cost of
8
- # iframe creation and resource loading
9
- # To reduce the lag, you can call preload() preemptively to create
10
- # the popup in the background
11
- # Avoid preloading multiple popups at the same time, as this will block
12
- # browser rendering
13
- #
14
- # The Widget's CSS (from stylus) is copied into the popup's stylesheet
15
- # upon creation (handled automatically by UI.popup)
16
- #
17
- # @example How to create an overlay and add elements and bind events
18
- # class PhotoOverlayWidget extends Widget
19
- # className: 'widget photo-overlay-widget'
20
- # events:
21
- # 'click .image': '_onImageClick'
22
- #
23
- # overlayEvents:
24
- # 'click .close': '_onCloseClick'
25
- # 'click .image': '_rotate'
26
- # 'overlay-hidden': '_onOverlayHidden'
27
- # 'overlay-shown': '_onOverlayShown'
28
- #
29
- # constructor: ->
30
- # @overlay = new Overlay { parent: @, events: @overlayEvents }
31
- # @ic = new ImageController item: {image:'http://placehold.it/100x200'}
32
- #
33
- # @overlay.append @closeButton = $('<div class="close">close nao!!</div>')
34
- # @overlay.append @ic
35
- #
36
- # super
37
- #
38
- # @example How to do a fade in / fade out animation
39
- # # Overlay.show/hide are asynchronous but instant (changes display prop on the iframe)
40
- # # To show the overlay with a fade in you must:
41
- # # first hide the overlay.el
42
- # # then make the popup iframe visible using show()
43
- # # then animate the overlay.el opacity after show() is done (the promise is resolved)
44
- # _onImageClick: (ev) ->
45
- # @overlay.el.css { opacity: 0 }
46
- # @overlay.show().then =>
47
- # @overlay.el.animate { opacity: 1 }, 300
48
- #
49
- # # To hide the overlay using a fade out you must:
50
- # # first animate the opacity to 0
51
- # # then hide() the overlay after the animation is done
52
- # _onCloseClick: (ev) =>
53
- # @overlay.el.animate { opacity: 0 }, 300, => @overlay.hide()
54
- #
55
- # @example How to style the contents of the popup
56
- # changeSkin: (skin, options) =>
57
- # @el.css('background-color', skin.backgroundcolor)
58
- #
59
- # overlayStyle = ".overlay { background-color: #{ skin.overlayBackgroundColor } }"
60
- # overlayStyle += ".image { position:absolute; top: 50%; left: 50%; border-width: #{ skin.strokeThickness }px}"
61
- #
62
- # @overlay.style(overlayStyle)
63
- class Overlay extends Controller
64
- className: 'overlay'
65
-
66
- # Construct a new Overlay
67
- #
68
- # @param [Object] options
69
- # @option options [Object] events an object containing the events to be delegated
70
- # @option options [Controller] parent the Controller that will handle the events
71
- constructor: (options = {}) ->
72
- throw new Error('The parent option is missing!') unless options.parent
73
- throw new Error('The events option is missing!') unless options.events
74
-
75
- super
76
-
77
- # override spine controller delegateEvents to delegate to the @parent controller
78
- delegateEvents: (events = @events) ->
79
- @eventsDelegated = true
80
- for key, method of events
81
- if @parent[method]
82
- match = key.match(@eventSplitter)
83
- eventName = match[1]
84
- selector = match[2]
85
- method = do (method) => =>
86
- @parent[method] arguments...
87
- true
88
- if selector is ''
89
- @el.bind(eventName, method )
90
- else
91
- @el.on(eventName, selector, method)
92
-
93
- # Append a jquery element or a Controller inside the popup
94
- append: (el) ->
95
- el = el.el if el.el
96
- @el.append el
97
-
98
- # Force the creation of the popup to reduce the lag before showing
99
- # @return [Promise]
100
- preload: -> @_createPopup()
101
-
102
- # Convenience method to toggle the visibility of the popup
103
- # @return [Promise]
104
- toggle: -> @_createPopup().then => if @popup.visible then @_hide() else @_show()
105
-
106
- # Makes the popup appear
107
- # @return [Promise]
108
- show: -> @_createPopup().then @_show
109
-
110
- # Makes the popup hide
111
- # @return [Promise]
112
- hide: -> @_createPopup().then @_hide
113
-
114
- # Replace the popup's stylesheet
115
- # @param [String] style the css string to replace the popup stylesheet with
116
- style: (style) ->
117
- @styleCache = style if style
118
-
119
- return unless @popup
120
- @popup.style @styleCache
121
-
122
- # Standard Controller release method that also releases the popup
123
- release: ->
124
- super
125
- @eventsDelegated = false
126
- @popupPromise = null
127
- @popup.release()
128
- @
129
-
130
- _show: => @popup.show().then => @el.trigger 'overlay-shown'
131
-
132
- _hide: => @popup.hide().then => @el.trigger 'overlay-hidden'
133
-
134
- _createPopup: ->
135
- return @popupPromise if @popupPromise
136
- @popupPromise = Blogvio.UI.popup.new
137
- type: 'overlay'
138
- .then (@popup) =>
139
- @style()
140
- @popup.append(@el)
141
- @delegateEvents() unless @eventsDelegated
142
- .fail (err) ->
143
- console.error err.stack
144
-
145
-
146
- module.exports = Overlay
@@ -1,36 +0,0 @@
1
- Controller = window.require 'spine/controller'
2
-
3
- class Popup extends Controller
4
- document: $ document
5
- window: $ window
6
-
7
- show: =>
8
- @popup?.show()
9
- setTimeout => @document.bind 'click', @hide
10
-
11
- hide: =>
12
- @popup?.hide()
13
- @document.unbind 'click', @hide
14
-
15
- toggle: => @_createPopup().then => if @popup.visible then @hide() else @show()
16
-
17
- release: ->
18
- super
19
- @popup?.release()
20
-
21
- _createPopup: ->
22
- return @popupPromise if @popupPromise
23
- @popupPromise = Blogvio.UI.popup.new($.extend {}, {@anchor, css: @getPopupCSS(), @targetWindow}, (@popupOptions or {}))
24
- .then (@popup) => @popup.append(@el)
25
- .fail (err) -> console.error err.stack
26
-
27
- getPopupCSS: =>
28
- @css or= [
29
- 'https://widgetic.com/bundles/blogvioapp/css/editor/editor.css'
30
- ]
31
-
32
- setPopupCSS: (@css) => @
33
-
34
- setPopupTargetWindow: (@targetWindow) => @
35
-
36
- module.exports = Popup
@@ -1,68 +0,0 @@
1
- ###
2
- @mixin
3
- Provides implementation for a controller that can activate
4
- ###
5
- prevent = (e) -> e.preventDefault()
6
- class Scroll
7
- defaults:
8
- preventPageScrolling: true
9
- disableResize: true #SHOULD TRY WITH IT ON FALSE
10
- contentClass: 'scroll-content'
11
- alwaysVisible: false
12
- paneClass: 'scroll-pane'
13
-
14
- constructor: (@el, options={}) ->
15
- @render()
16
-
17
- @callbacks = options.callbacks
18
- delete options.callbacks
19
-
20
- @$box.nanoScroller @options = $.extend true, {}, @defaults, options
21
- @bindEvents @callbacks
22
-
23
- render: ->
24
- $content = $ '<div class="scroll-content"></div>'
25
- @$box = $ '<div class="nano scrolling-container">'
26
-
27
- @el.append(@$box.append $content.append @el.children()).addClass 'scroll-box'
28
- @container = $content
29
-
30
- update: ->
31
- @$box.nanoScroller()
32
- @
33
- scrollTo: (to, opts={}) ->
34
- to = if typeof to is 'number' then scrollTop: to else scrollTo: to
35
- @$box.nanoScroller(to)
36
- @
37
- detach:->
38
- # @el.mCustomScrollbar 'destroy'
39
- @
40
- disable:->
41
- @$box.nanoScroller stop: true
42
- @container.bind 'mousewheel', prevent
43
- @
44
- enable: ->
45
- @container.unbind 'mousewheel', prevent
46
- @update()
47
- offset: ->
48
- top: @container.scrollTop(), left: @container.scrollLeft()
49
-
50
- bindEvents: (events) =>
51
- @$box.bind 'update', events.whileScrolling
52
- @$box.bind 'update', events.onScroll
53
-
54
- Scrollable =
55
- onScroll: ->
56
- whileScrolling: ->
57
-
58
- scroll: ->
59
- scrollOptions =
60
- callbacks: {@onScroll, @whileScrolling}
61
- unless @_scroll
62
- @_scroll = new Scroll @scrollContainer or @el, $.extend true, {}, scrollOptions, @scrollOptions
63
- @bind 'release', => @delay => @_scroll.detach()
64
- # unless @containerClass
65
- @container = @_scroll.container
66
- @_scroll
67
-
68
- module.exports = Scrollable
@@ -1,56 +0,0 @@
1
- URL = require './url'
2
-
3
- class Audio extends URL
4
- className : 'control-audio'
5
- template : 'core/views/audio'
6
- elements : 'input': 'input'
7
- type : 'audio'
8
-
9
- elements:
10
- '.url-thumb': 'toggleBtn'
11
-
12
- events:
13
- 'click .play-btn,.pause-btn': 'toggle'
14
-
15
- constructor: ->
16
- super
17
- @deflt =
18
- volume: 100
19
- onpause: @status
20
- onresume: @status
21
- onfinish: @status
22
- onplay: @status
23
-
24
- render: ->
25
- super
26
- @toggleBtn.toggle soundManager?
27
- @delay =>@update(@item)
28
- @
29
-
30
- update: (item,t,options={}) =>
31
- @input.val @lastURL = (item[@attribute] or '')
32
- @onURL true, silent: true
33
-
34
- onInput: (e) ->
35
- super
36
- @sound?.destruct()
37
- @status()
38
-
39
- toggle: -> @sound?.togglePause()
40
-
41
- status: => @el.toggleClass 'playing', !@sound?.paused and @sound?.playState is 1
42
-
43
- onURL: (exists) =>
44
- super
45
- if soundManager? and exists and @lastURL?.length
46
- doit = => @sound = soundManager.createSound($.extend {url:@lastURL}, @deflt) or null
47
- if soundManager.enabled then doit() else soundManager.onready doit
48
-
49
- if exists and not @item[@attribute]
50
- @$removeClass('valid')
51
-
52
- @
53
-
54
- release: -> super?.sound?.destruct()
55
-
56
- module.exports = Audio