@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,79 +0,0 @@
1
- Model = window.require 'spine/model'
2
- Helper = window.require 'spine/utils/helper'
3
- isArray = Helper.isArray
4
- defaultAtts = ['order', 'metadata', 'composition_id', '_isDemoContent']
5
- class Content extends Model
6
- @records:[]
7
- @irecords:{}
8
- @crecords:{}
9
- @configure 'Content'
10
-
11
- ###
12
- Sort function used to sort items
13
- ###
14
- @comparator:(a,b)->(a.order or a.id) - (b.order or b.id)
15
-
16
- constructor:(atts={})->
17
- throw new Error('Content must be associated to a composition.') unless atts.composition_id
18
- @composition_id = atts.composition_id
19
- @_meta = atts._meta
20
- for attr of (mattr = @meta().attributes) when (!atts[attr]? and mattr[attr]?)
21
- atts[attr] = mattr[attr].options.default
22
- super(atts)
23
- @id or= @cid
24
-
25
- meta: ->
26
- @_meta or= @composition().contentMeta()
27
-
28
- composition: ->
29
- (require './composition').find(@composition_id)
30
-
31
- attributes: ->
32
- attributes = defaultAtts.slice(0) # make a clone of the defaultAtts
33
- meta_attributes = (attribute for attribute, options of @meta().attributes)
34
- attributes.push meta_attributes...
35
-
36
- result = {}
37
- for key in attributes when key of this
38
- if typeof @[key] is 'function'
39
- result[key] = @[key]()
40
- else
41
- result[key] = @[key]
42
- result.id = @id if @id
43
- result._meta = @_meta if @_meta
44
- result
45
-
46
- _metadata: (key, value, options = {}) =>
47
- # return all metadata if call is ` _metadata()`
48
- return @metadata or= {} unless key?
49
- # return key metadata if called with `_metadata(key)`
50
- return @_metadata()[key] unless value?
51
-
52
- # set key metadata to value if called with `_metadata(key, value)`
53
- # skip update if same value
54
- return @_metadata()[key] if @_metadata()[key] is value
55
- @_metadata()[key] = value
56
- options.attribute = 'metadata'
57
- @updateAttribute 'metadata', @metadata, options
58
-
59
- editedMeta: (attr, set) =>
60
- return @_metadata('edited') or [] unless attr?
61
- return 1+@editedMeta().indexOf attr if attr and !set?
62
- return unless attr and set?
63
-
64
- editedMeta = @editedMeta().concat(attr).filter (f) => set or f isnt attr
65
- @_metadata 'edited', editedMeta
66
-
67
- attrMeta: (attr, value, options) =>
68
- return @_metadata('attr_meta') or {} unless attr?
69
- return @attrMeta()[attr] if attr? and !value?
70
- if attr? and value?
71
- (attr_meta = @attrMeta())[attr] = value
72
- @_metadata 'attr_meta', attr_meta, options
73
-
74
- toJSON: ->
75
- result = super
76
- delete result._meta
77
- return result
78
-
79
- module.exports = Content
@@ -1,91 +0,0 @@
1
-
2
-
3
- Model = window.require 'spine/model'
4
- AjaxMixin = require '../../api/mixin'
5
- Helper = window.require 'spine/utils/helper'
6
- isArray = Helper.isArray
7
-
8
- defaultAtts = ["name","user_id",'uses',"metas","widget_id"]
9
-
10
- class Skin extends Model
11
- @extend AjaxMixin
12
- @configure('Skin')
13
-
14
- @change AjaxMixin.ajaxChange
15
-
16
- @meta: (widget_id) -> (require './widget').find(widget_id).skinMeta
17
-
18
- # Used by Model.sort
19
- # Sorts the presets to the top and the user skins to the bottom
20
- # @comparator: (a, b) ->
21
- # +b.isPreset() - +a.isPreset()
22
-
23
- constructor:(atts={})->
24
- # for attr of (mattr = @constructor.meta.attributes) when (!atts[attr]? and mattr[attr]?)
25
- # atts[attr] = mattr[attr].options.default
26
- atts.name or= 'Untitled Theme'
27
- atts.uses or= 0
28
- atts.metas or= {}
29
- super(atts)
30
-
31
- attributes: ->
32
- attributes = defaultAtts.slice(0)
33
- try
34
- tabs = @constructor.meta(@widget_id).tabs
35
- throw new Error("Widget[#{ @widget_id }].tabs is not loaded.") unless tabs
36
- meta_props = ($.extend {}, atts for tab,atts of tabs)
37
- meta_attributes = $.extend {}, meta_props...
38
- attributes.push (key for key,value of meta_attributes)...
39
- catch
40
- attributes = Object.keys(@)
41
- if Object.getPrototypeOf(@) instanceof Skin
42
- attributes = $.extend [], attributes, Object.keys(Object.getPrototypeOf(@))
43
-
44
- result = {}
45
- for key in attributes when key of this
46
- if typeof @[key] isnt 'function'
47
- result[key] = @[key]
48
- result.id = @id if @id
49
- result
50
-
51
- used:(inc=-1) ->
52
- @updateAttribute('uses', Math.max((@uses>>0)+inc,0),{used:true})
53
-
54
- updateAttributes: (atts, options={}) ->
55
- options.ajax = false
56
- super
57
-
58
- changeID: (id) ->
59
- Composition = require './composition' # prevent circular dependency
60
- oldId = @id
61
- super
62
- comps = Composition.findAllByAttribute('skin_id', oldId)
63
- comps.forEach((comp) => comp.updateAttribute('skin_id', @id))
64
-
65
- @used(comps.length)
66
-
67
- freeze:->
68
- @original = @attributes()
69
- @original.id = null
70
- delete @original.uses
71
- delete @original.id
72
-
73
- reset: ->
74
- @updateAttributes @original,{ajax: false}
75
-
76
- isPersisted: ->
77
- return false unless @id
78
- return @id.slice(0, 1) isnt 'c'
79
-
80
- isPreset: ->
81
- return !@user_id
82
-
83
- persist: ->
84
- if @isPersisted()
85
- promise = @ajax().update()
86
- else
87
- promise = @ajax().create()
88
-
89
- return promise
90
-
91
- module.exports = Skin
@@ -1,6 +0,0 @@
1
- Model = window.require 'spine/model'
2
- AjaxMixin = require '../../api/mixin'
3
- class User extends Model
4
- @extend AjaxMixin
5
- @configure('User','loggedIn','email','max_allowed_hosts','hosts','name','lastname','username','subscription')
6
- module.exports = User
@@ -1,88 +0,0 @@
1
-
2
- Model = window.require 'spine/model'
3
- Skin = require './skin'
4
- AjaxMixin = require '../../api/mixin'
5
-
6
- _loadSkins = (widget) ->
7
- if widget.hasAllSkins
8
- Skin.refresh(widget.skins)
9
- return widget
10
- else
11
- return Skin.ajaxFetch({widget_id: widget.id}).then (data) ->
12
- Skin.refresh(data)
13
- widget.updateAttribute('hasAllSkins', true)
14
- return widget
15
-
16
- hasRequiredFields = (w, fields) ->
17
- for field in fields
18
- return false unless w[field]
19
- return true
20
-
21
- class Widget extends Model
22
- @extend AjaxMixin
23
- @configure(
24
- 'Widget',
25
- 'name',
26
- 'module',
27
- 'category',
28
- 'slug',
29
- 'skinMeta',
30
- 'contentMeta'
31
- 'skins',
32
- 'content',
33
- 'css',
34
- 'js',
35
- 'width',
36
- 'height',
37
- # added so subsequent loads will use the cached skins
38
- # a cleaner solution should be found
39
- 'hasAllSkins'
40
- )
41
-
42
- @current: null
43
-
44
- # Loads a widget from memory or by ajax
45
- #
46
- # The local collection is searched first and if it's not found,
47
- # it's fetched from ajax.
48
- #
49
- # You can send an array into options.fields to define required
50
- # fields. If the locally stored widget does not have the fields
51
- # a full ajax refresh is performed.
52
- #
53
- # TODO: partial refresh with only required fields
54
- #
55
- # @param string id the id of the widget
56
- # @param object options
57
- # @return promise
58
- @load: (id, options) ->
59
- fields = options?.fields
60
-
61
- hasLoaded = Blogvio.Aye.defer()
62
-
63
- process = Blogvio.Aye.defer()
64
- process.promise
65
- .then(_loadSkins)
66
- .fail(hasLoaded.reject)
67
- .then(hasLoaded.resolve)
68
-
69
- try
70
- w = Widget.find(id)
71
-
72
- if fields and !hasRequiredFields(w, fields)
73
- throw new Error("Widget[#{ id }] does not have all required fields: #{ fields }")
74
-
75
- process.resolve(w)
76
- catch e
77
- console.warn(e)
78
- @ajax()
79
- .fetch({id})
80
- .then((widgets) -> widgets[0])
81
- .then(process.resolve)
82
- .fail(process.reject)
83
-
84
- return hasLoaded.promise
85
-
86
- getSkins: -> Skin.findAllByAttribute('widget_id', @id)
87
-
88
- module.exports = Widget
@@ -1,44 +0,0 @@
1
- class Router
2
- @routes: {base: ''}
3
- @base: ''
4
- @webFolder: ''
5
- @devPrefix: ''
6
-
7
- @setBase: (base) ->
8
- isAbsolute = /(http|https):\/\//.test(base)
9
- throw new Error('The base url must be absolute.') unless isAbsolute
10
- @setWebFolder base.replace /\/app_dev.php/, '' unless @webFolder
11
-
12
- isDev = (base.match(/\/app_dev.php/) or []).length isnt 0
13
- @devPrefix = if isDev then '/app_dev.php' else ''
14
-
15
- @base = base.replace /\/$/, ''
16
-
17
- @setWebFolder: (@webFolder) ->
18
-
19
- @load: (config) ->
20
- for name, route of config
21
- @routes[name] = route
22
-
23
- @url: (name, params) ->
24
- @webFolder.replace(/\/$/, '') + @path arguments...
25
-
26
- @path: (name, params) ->
27
- throw new Error("Route #{name} not in configuration.") if typeof @routes[name] is 'undefined'
28
- route = @routes[name]
29
-
30
- if params
31
- for name, value of params
32
- route = route.replace("{#{name}}", value)
33
-
34
- return @devPrefix + route
35
-
36
- @asset: (path) ->
37
- @webFolder + path
38
-
39
- @redirect: ->
40
- if arguments.length is 1 and /(http|https):\/\//.test arguments[0]
41
- return window.location.href = arguments[0]
42
- @redirect @url arguments...
43
-
44
- module.exports = Router
@@ -1,18 +0,0 @@
1
- import Bottle from "bottlejs";
2
-
3
- import ContentService from "../content";
4
- import UploadsService from "../uploads";
5
- import SoundsService from "../sounds";
6
-
7
- const bottle = new Bottle();
8
- export default {
9
- init(config) {
10
- bottle.constant("user", config.user);
11
- bottle.constant("uploadToken", config.uploadToken);
12
-
13
- bottle.service("Content", ContentService, "user");
14
- bottle.service("Uploads", UploadsService, "user", "uploadToken");
15
- bottle.service("Sounds", SoundsService);
16
- },
17
- instance: bottle.container
18
- };
@@ -1,3 +0,0 @@
1
- import container from "./index";
2
-
3
- export default container.instance;
@@ -1,80 +0,0 @@
1
- import Service from './service';
2
- import EventsMixin from './mixin/events';
3
-
4
- const ContentModel = window.require('core/models/content');
5
-
6
- export default class ContentServiceWithEvents extends EventsMixin(Service) {
7
- constructor(user) {
8
- super();
9
- this.userIsPremium = user.premium;
10
- this.events = ['change', 'error'];
11
- ContentModel.on('change', this._broadcast.change);
12
- }
13
-
14
- getItemsByService(service) {
15
- return ContentModel.select(
16
- item => (item.metadata ? item.metadata.service === service : false)
17
- );
18
- }
19
-
20
- maxContentReached(composition) {
21
- const meta = composition.contentMeta();
22
- const limit = this.userIsPremium
23
- ? meta.options.max
24
- : meta.options.free_user_limit;
25
- return composition.maxContentReached(limit);
26
- }
27
-
28
- toggleItem(composition, service, id, value, extra = {}, metadata = {}) {
29
-
30
- const item = this.getItemsByService(service)
31
- .filter(item => item.metadata.id === id)
32
- .pop();
33
- // console.log("Content toggleItem:", id, item)
34
-
35
- // remove item
36
- if (item) {
37
- item.destroy();
38
- }
39
- // add item
40
- else {
41
- this.addItem(
42
- composition,
43
- value,
44
- extra,
45
- Object.assign({}, metadata, { id, service })
46
- );
47
- }
48
- }
49
-
50
- clearContent(composition, service) {
51
- this.getItemsByService(service)
52
- .forEach(item => item.destroy())
53
- }
54
-
55
- addItem(composition, value, extra, metadata) {
56
- // TODO require metadata.id
57
- // TODO require metadata.service
58
- const meta = composition.contentMeta();
59
-
60
- if (this.maxContentReached(composition) && meta.options.max > 1) {
61
- this._broadcast.error(this.userIsPremium ? 'max' : 'maxFree');
62
- throw new Error('Cannot add more than max items');
63
- }
64
-
65
- if (this.maxContentReached(composition) && meta.options.max === 1) {
66
- ContentModel.select(
67
- item => item.composition_id === composition.id
68
- ).forEach(item => item.destroy());
69
- }
70
-
71
- const item = new ContentModel(
72
- Object.assign({}, extra, {
73
- composition_id: composition.id,
74
- metadata,
75
- [meta.options.mainAttribute]: value,
76
- })
77
- );
78
- item.save();
79
- }
80
- }
@@ -1,47 +0,0 @@
1
- Router = require 'core/router'
2
-
3
- onResponse = (data) ->
4
- @constructor.defs[@_url] = @lastDef
5
-
6
- {data, pagination} = data
7
- @callback data
8
- @lastID = pagination.next_max_tag_id
9
-
10
- class InstagramService
11
- @defs: {}
12
-
13
- @tags: (tag, callback) ->
14
- instance = new @ tag, callback or ->
15
-
16
- constructor: (@tag, @callback) ->
17
- @lastID = 0
18
-
19
- request: =>
20
- if def = @constructor.defs[@_url = @url()]
21
- return def.promise
22
-
23
- @lastDef = Blogvio.Aye.defer()
24
- @lastReq = $.getJSON(@_url, @lastDef.resolve).catch @onError
25
- @lastPromise = @lastDef.promise
26
-
27
- url: ->
28
- base = Router.url 'blogvio_instagram_proxy', {@tag}
29
- if @lastID then "#{base}?max_tag_id=#{@lastID}" else base
30
-
31
- # TODO
32
- cancel: =>
33
- # @lastDef.reject()
34
- # @lastReq.abort()
35
- @
36
-
37
- next: ->
38
- return unless @lastID?
39
- (@_queue or= Blogvio.Queue).defer (next) =>
40
- @request().then(onResponse.bind @).then(=> next())
41
- .fail @onError
42
- @
43
-
44
- onError: ->
45
- console.error 'InstagramService', arguments
46
-
47
- module.exports = InstagramService
@@ -1,17 +0,0 @@
1
- import Event from 'geval/event';
2
-
3
- export default superclass => class extends superclass {
4
- get events() {
5
- return this._events;
6
- }
7
-
8
- set events(list) {
9
- this._broadcast = {};
10
- this._events = {};
11
- for (let name of list) {
12
- const ev = new Event();
13
- this._events[name] = ev.listen;
14
- this._broadcast[name] = ev.broadcast;
15
- }
16
- }
17
- };
@@ -1 +0,0 @@
1
- export default class Service {}
@@ -1,81 +0,0 @@
1
- import Service from './service';
2
- import EventsMixin from './mixin/events';
3
-
4
- export default class SoundsService extends EventsMixin(Service) {
5
- constructor() {
6
- super();
7
- this.events = ['state'];
8
-
9
- this.sounds = {};
10
- }
11
-
12
- load(id, url) {
13
- if (this.sounds[id]) return;
14
- this._initSound(id, url);
15
- }
16
-
17
- getState(id) {
18
- return this.sounds[id] ? this.sounds[id].state : 'uninitialized';
19
- }
20
-
21
- togglePlay(id) {
22
- this._isPlaying(id) ? this.stop(id) : this.play(id);
23
- }
24
-
25
- play(id) {
26
- if (!this.sounds[id]) throw new Error('Sound must be loaded first');
27
- const sound = this.sounds[id].sound;
28
-
29
- window.soundManager.stopAll();
30
- this.sounds[id].state = 'loading';
31
- sound.setPosition(0).play();
32
- }
33
-
34
- stop(id) {
35
- if (!this.sounds[id]) throw new Error('Sound must be loaded first');
36
- const sound = this.sounds[id].sound;
37
-
38
- sound.stop();
39
- }
40
-
41
- _initSound(id, url) {
42
- const handler = this._onStatusChange.bind(this, id);
43
- const options = {
44
- url: url,
45
- volume: 100,
46
- onpause: handler,
47
- onstop: handler,
48
- onresume: handler,
49
- onfinish: handler,
50
- onload: handler,
51
- onplay: handler,
52
- };
53
- return this.sounds[id] = {
54
- sound: window.soundManager.createSound(options),
55
- state: 'paused',
56
- };
57
- }
58
-
59
- _onStatusChange(id) {
60
- const sound = this.sounds[id];
61
-
62
- sound.state = this._isPlaying(id)
63
- ? 'playing'
64
- : this._isLoading(id) ? 'loading' : 'paused';
65
- this._broadcast.state(id);
66
- }
67
-
68
- _isPlaying(id) {
69
- const sound = this.sounds[id].sound;
70
-
71
- if (!sound) return false;
72
- return !sound.paused && sound.playState === 1 && sound.readyState === 3;
73
- }
74
-
75
- _isLoading(id) {
76
- const sound = this.sounds[id].sound;
77
-
78
- if (!sound) return false;
79
- return sound.readyState === 1;
80
- }
81
- }