decidim-decidim_awesome 0.7.2 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (235) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +62 -35
  3. data/Rakefile +11 -12
  4. data/app/cells/decidim/decidim_awesome/content_blocks/map/error.erb +11 -0
  5. data/app/cells/decidim/decidim_awesome/content_blocks/map/show.erb +1 -61
  6. data/app/cells/decidim/decidim_awesome/content_blocks/map_cell.rb +11 -0
  7. data/app/cells/decidim/decidim_awesome/content_blocks/map_form/show.erb +8 -4
  8. data/app/commands/decidim/decidim_awesome/admin/create_custom_redirect.rb +51 -0
  9. data/app/commands/decidim/decidim_awesome/admin/destroy_custom_redirect.rb +47 -0
  10. data/app/commands/decidim/decidim_awesome/admin/update_custom_redirect.rb +49 -0
  11. data/app/commands/decidim/decidim_awesome/create_editor_image.rb +12 -5
  12. data/app/controllers/concerns/decidim/decidim_awesome/not_found_redirect.rb +58 -0
  13. data/app/controllers/decidim/decidim_awesome/admin/checks_controller.rb +15 -22
  14. data/app/controllers/decidim/decidim_awesome/admin/config_controller.rb +9 -1
  15. data/app/controllers/decidim/decidim_awesome/admin/custom_redirects_controller.rb +91 -0
  16. data/app/controllers/decidim/decidim_awesome/admin/menu_hacks_controller.rb +5 -8
  17. data/app/controllers/decidim/decidim_awesome/blank_component_controller.rb +19 -0
  18. data/app/controllers/decidim/decidim_awesome/editor_images_controller.rb +2 -3
  19. data/app/controllers/decidim/decidim_awesome/iframe_component/iframe_controller.rb +1 -1
  20. data/app/controllers/decidim/decidim_awesome/map_component/map_controller.rb +2 -6
  21. data/app/forms/decidim/decidim_awesome/admin/config_form.rb +2 -0
  22. data/app/forms/decidim/decidim_awesome/admin/custom_redirect_form.rb +45 -0
  23. data/app/forms/decidim/decidim_awesome/editor_image_form.rb +3 -2
  24. data/app/forms/decidim/decidim_awesome/proposals/proposal_wizard_create_step_form_override.rb +38 -0
  25. data/app/helpers/decidim/decidim_awesome/admin/config_constraints_helpers.rb +22 -9
  26. data/app/helpers/decidim/decidim_awesome/admin/system_checker_helpers.rb +36 -0
  27. data/app/helpers/decidim/decidim_awesome/map_helper.rb +18 -12
  28. data/app/helpers/decidim/decidim_awesome/proposals/application_helper_override.rb +2 -2
  29. data/app/jobs/decidim/decidim_awesome/migrate_legacy_images_job.rb +106 -0
  30. data/app/models/decidim/decidim_awesome/editor_image.rb +4 -9
  31. data/app/packs/entrypoints/decidim_admin_decidim_awesome.js +5 -0
  32. data/app/packs/entrypoints/decidim_admin_decidim_awesome.scss +1 -0
  33. data/app/packs/entrypoints/decidim_admin_decidim_awesome_custom_fields.js +2 -0
  34. data/app/packs/entrypoints/decidim_decidim_awesome.js +9 -0
  35. data/app/packs/entrypoints/decidim_decidim_awesome.scss +1 -0
  36. data/app/packs/entrypoints/decidim_decidim_awesome_admin_form_exit_warn.js +1 -0
  37. data/app/packs/entrypoints/decidim_decidim_awesome_custom_fields.js +1 -0
  38. data/app/packs/entrypoints/decidim_decidim_awesome_iframe.scss +1 -0
  39. data/app/packs/entrypoints/decidim_decidim_awesome_map.js +5 -0
  40. data/app/packs/entrypoints/decidim_decidim_awesome_map.scss +1 -0
  41. data/app/{assets → packs}/images/decidim/decidim_awesome/platoniq-logo.png +0 -0
  42. data/app/{assets/javascripts/decidim/decidim_awesome/admin/auto_edit.js.es6 → packs/src/decidim/decidim_awesome/admin/auto_edit.js} +39 -34
  43. data/app/packs/src/decidim/decidim_awesome/admin/check_redirections.js +48 -0
  44. data/app/{assets/javascripts/decidim/decidim_awesome/admin/codemirror.js.es6 → packs/src/decidim/decidim_awesome/admin/codemirror.js} +4 -4
  45. data/app/packs/src/decidim/decidim_awesome/admin/constraints.js +55 -0
  46. data/app/{assets/javascripts/decidim/decidim_awesome/admin/form_builder.js.es6 → packs/src/decidim/decidim_awesome/admin/custom_fields_builder.js} +23 -26
  47. data/app/{assets/javascripts/decidim/decidim_awesome/admin/form_exit_warn.js.es6 → packs/src/decidim/decidim_awesome/admin/form_exit_warn.js} +0 -2
  48. data/app/{assets/javascripts/decidim/decidim_awesome/admin/user_picker.js.es6 → packs/src/decidim/decidim_awesome/admin/user_picker.js} +3 -3
  49. data/app/packs/src/decidim/decidim_awesome/awesome_admin.js +23 -0
  50. data/app/packs/src/decidim/decidim_awesome/awesome_application.js +17 -0
  51. data/app/{assets/javascripts/decidim/decidim_awesome/awesome_map/api_fetcher.js.es6 → packs/src/decidim/decidim_awesome/awesome_map/api/api_fetcher.js} +1 -15
  52. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/fetcher.js +131 -0
  53. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/meetings_fetcher.js +59 -0
  54. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/proposals_fetcher.js +52 -0
  55. data/app/packs/src/decidim/decidim_awesome/awesome_map/awesome_map.js +130 -0
  56. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/controller.js +112 -0
  57. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/meetings_controller.js +31 -0
  58. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/proposals_controller.js +88 -0
  59. data/app/packs/src/decidim/decidim_awesome/awesome_map/controls_ui.js +221 -0
  60. data/app/packs/src/decidim/decidim_awesome/awesome_map/load_map.js +51 -0
  61. data/app/packs/src/decidim/decidim_awesome/editors/editor.js +190 -0
  62. data/app/{assets/javascripts/decidim/decidim_awesome/editors/tabs_focus.js.es6 → packs/src/decidim/decidim_awesome/editors/tabs_focus.js} +4 -6
  63. data/app/{assets/javascripts/decidim/decidim_awesome/forms/autosave.js.es6 → packs/src/decidim/decidim_awesome/forms/autosave.js} +20 -17
  64. data/app/packs/src/decidim/decidim_awesome/forms/custom_fields_renderer.js +207 -0
  65. data/app/{assets/javascripts/decidim/decidim_awesome/forms/rich_text_plugin.js.es6 → packs/src/decidim/decidim_awesome/forms/rich_text_plugin.js} +21 -20
  66. data/app/packs/src/decidim/decidim_awesome/proposals/custom_fields.js +22 -0
  67. data/app/packs/src/decidim/decidim_awesome/proposals/images.js +25 -0
  68. data/{vendor/assets/javascripts → app/packs/src/vendor}/image-resize.min.js +0 -0
  69. data/{vendor/assets/javascripts → app/packs/src/vendor}/image-upload.min.js +0 -0
  70. data/{vendor/assets/javascripts → app/packs/src/vendor}/jquery.truncate.js +0 -0
  71. data/app/packs/src/vendor/leaflet.featuregroup.subgroup.js +184 -0
  72. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/admin/auto_edits.scss +2 -1
  73. data/app/packs/stylesheets/decidim/decidim_awesome/admin/check_redirections.scss +28 -0
  74. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/admin/codemirror.scss +8 -6
  75. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/admin/constraints.scss +13 -13
  76. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/admin/custom_fields.scss +37 -10
  77. data/app/packs/stylesheets/decidim/decidim_awesome/admin/user_picker.scss +41 -0
  78. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_admin.scss +71 -0
  79. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_application.scss +19 -0
  80. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/awesome_iframe/iframe.scss +3 -3
  81. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_map/map.scss +176 -0
  82. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/editors/markdown_editor.scss +6 -4
  83. data/app/packs/stylesheets/decidim/decidim_awesome/editors/quill_editor.scss +58 -0
  84. data/app/{assets → packs}/stylesheets/decidim/decidim_awesome/forms/autosave.scss +2 -2
  85. data/app/packs/stylesheets/vendor/select2-foundation-theme.scss +348 -0
  86. data/app/presenters/decidim/decidim_awesome/menu_item_presenter_override.rb +25 -0
  87. data/app/presenters/decidim/decidim_awesome/menu_presenter_override.rb +23 -0
  88. data/app/uploaders/decidim/cw/decidim_awesome/image_uploader.rb +26 -0
  89. data/app/uploaders/decidim/decidim_awesome/image_uploader.rb +4 -16
  90. data/app/views/decidim/decidim_awesome/admin/checks/index.html.erb +28 -22
  91. data/app/views/decidim/decidim_awesome/admin/config/_constraints.html.erb +1 -1
  92. data/app/views/decidim/decidim_awesome/admin/config/_form_admins.html.erb +1 -1
  93. data/app/views/decidim/decidim_awesome/admin/config/_form_editors.html.erb +1 -0
  94. data/app/views/decidim/decidim_awesome/admin/config/_form_proposal_custom_fields.html.erb +1 -1
  95. data/app/views/decidim/decidim_awesome/admin/config/_form_styles.html.erb +7 -6
  96. data/app/views/decidim/decidim_awesome/admin/config/_modal.html.erb +1 -1
  97. data/app/views/decidim/decidim_awesome/admin/config/show.html.erb +3 -3
  98. data/app/views/decidim/decidim_awesome/admin/constraints/new.html.erb +1 -1
  99. data/app/views/decidim/decidim_awesome/admin/custom_redirects/_form.html.erb +6 -0
  100. data/app/views/decidim/decidim_awesome/admin/custom_redirects/edit.html.erb +13 -0
  101. data/app/views/decidim/decidim_awesome/admin/custom_redirects/index.html.erb +37 -0
  102. data/app/views/decidim/decidim_awesome/admin/custom_redirects/new.html.erb +13 -0
  103. data/app/views/decidim/decidim_awesome/admin/menu_hacks/edit.html.erb +1 -1
  104. data/app/views/decidim/decidim_awesome/admin/menu_hacks/new.html.erb +1 -1
  105. data/app/views/decidim/decidim_awesome/admin/proposals/_editor.html.erb +5 -3
  106. data/app/views/decidim/decidim_awesome/iframe_component/iframe/show.html.erb +1 -1
  107. data/app/views/decidim/decidim_awesome/map_component/map/_api_ready.html.erb +3 -0
  108. data/app/views/decidim/decidim_awesome/map_component/map/_map_template.html.erb +68 -0
  109. data/app/views/decidim/decidim_awesome/map_component/map/{error.erb → error.html.erb} +2 -0
  110. data/app/views/decidim/decidim_awesome/map_component/map/show.html.erb +3 -67
  111. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +1 -1
  112. data/app/views/layouts/decidim/admin/decidim_awesome.html.erb +13 -9
  113. data/app/views/layouts/decidim/decidim_awesome/_awesome_config.html.erb +0 -2
  114. data/app/views/{v0.24 → v0.25}/decidim/proposals/collaborative_drafts/_show.html.erb +0 -0
  115. data/app/views/{v0.23 → v0.25}/layouts/decidim/_head.html.erb +12 -10
  116. data/app/views/v0.25/layouts/decidim/admin/_header.html.erb +11 -0
  117. data/app/views/{v0.23 → v0.26}/decidim/proposals/collaborative_drafts/_show.html.erb +1 -7
  118. data/app/views/{v0.24 → v0.26}/layouts/decidim/_head.html.erb +16 -10
  119. data/app/views/v0.26/layouts/decidim/admin/_header.html.erb +11 -0
  120. data/config/assets.rb +46 -0
  121. data/config/i18n-tasks.yml +6 -0
  122. data/config/locales/ca.yml +75 -13
  123. data/config/locales/cs.yml +63 -1
  124. data/config/locales/en.yml +67 -1
  125. data/config/locales/es.yml +63 -1
  126. data/config/locales/eu.yml +0 -232
  127. data/config/locales/fr.yml +115 -53
  128. data/config/locales/it.yml +63 -1
  129. data/config/locales/ja.yml +64 -3
  130. data/config/locales/nl.yml +5 -46
  131. data/config/locales/pt-BR.yml +346 -0
  132. data/config/locales/pt-PT.yml +7 -0
  133. data/config/locales/pt.yml +7 -0
  134. data/config/locales/sv.yml +67 -182
  135. data/lib/decidim/decidim_awesome/admin_engine.rb +10 -15
  136. data/lib/decidim/decidim_awesome/awesome.rb +214 -0
  137. data/lib/decidim/decidim_awesome/awesome_helpers.rb +0 -7
  138. data/lib/decidim/decidim_awesome/checksums.yml +13 -16
  139. data/lib/decidim/decidim_awesome/config.rb +1 -0
  140. data/lib/decidim/decidim_awesome/content_parsers/editor_images_parser.rb +39 -0
  141. data/lib/decidim/decidim_awesome/engine.rb +27 -55
  142. data/lib/decidim/decidim_awesome/iframe_component/admin_engine.rb +23 -0
  143. data/lib/decidim/decidim_awesome/iframe_component/component.rb +5 -5
  144. data/lib/decidim/decidim_awesome/map_component/admin_engine.rb +23 -0
  145. data/lib/decidim/decidim_awesome/map_component/component.rb +5 -4
  146. data/lib/decidim/decidim_awesome/map_component/engine.rb +34 -0
  147. data/lib/decidim/decidim_awesome/menu_hacker.rb +1 -0
  148. data/lib/decidim/decidim_awesome/test/factories.rb +2 -2
  149. data/lib/decidim/decidim_awesome/test/initializer.rb +25 -0
  150. data/lib/decidim/decidim_awesome/test/layouts/decidim/_head.html.erb +30 -2
  151. data/lib/decidim/decidim_awesome/test/layouts/decidim/admin/_header.html.erb +7 -2
  152. data/lib/decidim/decidim_awesome/test/shared_examples/config_examples.rb +18 -0
  153. data/lib/decidim/decidim_awesome/test/shared_examples/controller_examples.rb +13 -0
  154. data/lib/decidim/decidim_awesome/test/shared_examples/custom_redirects_contexts.rb +47 -0
  155. data/lib/decidim/decidim_awesome/test/shared_examples/menu_hack_contexts.rb +0 -17
  156. data/lib/decidim/decidim_awesome/test/shared_examples/scoped_admins_examples.rb +9 -17
  157. data/lib/decidim/decidim_awesome/test/shared_examples/summary_examples.rb +202 -0
  158. data/lib/decidim/decidim_awesome/version.rb +2 -2
  159. data/lib/decidim/decidim_awesome.rb +4 -152
  160. data/lib/tasks/decidim_awesome_active_storage_migrations_tasks.rake +37 -0
  161. data/lib/tasks/decidim_awesome_webpacker_tasks.rake +62 -0
  162. metadata +111 -113
  163. data/app/assets/config/decidim_admin_decidim_awesome_manifest.css +0 -3
  164. data/app/assets/config/decidim_admin_decidim_awesome_manifest.js +0 -2
  165. data/app/assets/config/decidim_decidim_awesome_manifest.css +0 -5
  166. data/app/assets/config/decidim_decidim_awesome_manifest.js +0 -4
  167. data/app/assets/config/legacy_decidim_admin_decidim_awesome_manifest.js +0 -2
  168. data/app/assets/config/legacy_decidim_decidim_awesome_manifest.js +0 -4
  169. data/app/assets/javascripts/decidim/decidim_awesome/admin/constraints.js.es6 +0 -54
  170. data/app/assets/javascripts/decidim/decidim_awesome/admin/legacy_form_builder.js.es6 +0 -80
  171. data/app/assets/javascripts/decidim/decidim_awesome/awesome_admin.js +0 -7
  172. data/app/assets/javascripts/decidim/decidim_awesome/awesome_application.js +0 -3
  173. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/categories.js.es6 +0 -25
  174. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/hashtags.js.es6 +0 -48
  175. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/layers.js.es6 +0 -107
  176. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/load_map.js.es6 +0 -15
  177. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/map.js.es6 +0 -207
  178. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/markers.js.es6 +0 -56
  179. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/meetings.js.es6 +0 -132
  180. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/proposals.js.es6 +0 -107
  181. data/app/assets/javascripts/decidim/decidim_awesome/awesome_map/utilities.js.es6 +0 -57
  182. data/app/assets/javascripts/decidim/decidim_awesome/editors/legacy_quill_editor.js.es6 +0 -172
  183. data/app/assets/javascripts/decidim/decidim_awesome/editors/quill_editor.js.es6 +0 -185
  184. data/app/assets/javascripts/decidim/decidim_awesome/forms/custom_fields_builder.js.es6 +0 -211
  185. data/app/assets/javascripts/decidim/decidim_awesome/legacy_admin.js +0 -7
  186. data/app/assets/javascripts/decidim/decidim_awesome/legacy_application.js +0 -3
  187. data/app/assets/javascripts/decidim/decidim_awesome/proposals/custom_fields.js.es6 +0 -21
  188. data/app/assets/javascripts/decidim/decidim_awesome/proposals/images.js.es6 +0 -25
  189. data/app/assets/stylesheets/decidim/decidim_awesome/admin/user_picker.scss +0 -35
  190. data/app/assets/stylesheets/decidim/decidim_awesome/awesome_admin.scss +0 -64
  191. data/app/assets/stylesheets/decidim/decidim_awesome/awesome_application.scss +0 -22
  192. data/app/assets/stylesheets/decidim/decidim_awesome/awesome_map/leaflet.scss.erb +0 -18
  193. data/app/assets/stylesheets/decidim/decidim_awesome/awesome_map/map.scss +0 -160
  194. data/app/assets/stylesheets/decidim/decidim_awesome/editors/quill_editor.scss +0 -22
  195. data/app/awesome_overrides/forms/decidim/proposals/proposal_wizard_create_step_form_override.rb +0 -28
  196. data/app/awesome_overrides/presenters/decidim/menu_presenter_override.rb +0 -39
  197. data/app/controllers/concerns/decidim/decidim_awesome/admin_not_found_redirect.rb +0 -39
  198. data/app/controllers/decidim/decidim_awesome/iframe_component/application_controller.rb +0 -15
  199. data/app/controllers/decidim/decidim_awesome/map_component/application_controller.rb +0 -15
  200. data/app/views/v0.23/layouts/decidim/admin/_header.html.erb +0 -12
  201. data/app/views/v0.24/layouts/decidim/admin/_header.html.erb +0 -12
  202. data/lib/decidim/decidim_awesome/test/themes/css.lvh.me.css +0 -3
  203. data/lib/decidim/decidim_awesome/test/themes/erb.lvh.me.scss.erb +0 -2
  204. data/lib/decidim/decidim_awesome/test/themes/scss.lvh.me.scss +0 -1
  205. data/lib/decidim/decidim_awesome/test/themes/test-theme/body.scss +0 -4
  206. data/vendor/assets/images/layers-2x.png +0 -0
  207. data/vendor/assets/images/layers.png +0 -0
  208. data/vendor/assets/images/marker-icon.png +0 -0
  209. data/vendor/assets/javascripts/codemirror-4.inline-attachment.js +0 -89
  210. data/vendor/assets/javascripts/codemirror.js +0 -9801
  211. data/vendor/assets/javascripts/delta.min.js +0 -405
  212. data/vendor/assets/javascripts/delta.min.js.map +0 -1
  213. data/vendor/assets/javascripts/europa.min.js +0 -4
  214. data/vendor/assets/javascripts/form-builder.min.js +0 -19
  215. data/vendor/assets/javascripts/form-render.min.js +0 -19
  216. data/vendor/assets/javascripts/form-storage.js +0 -824
  217. data/vendor/assets/javascripts/highlight.min.js +0 -44
  218. data/vendor/assets/javascripts/inline-attachment.js +0 -399
  219. data/vendor/assets/javascripts/inscrybmde.min.js +0 -7
  220. data/vendor/assets/javascripts/jquery-ui.min.js +0 -13
  221. data/vendor/assets/javascripts/jquery.inline-attachment.js +0 -66
  222. data/vendor/assets/javascripts/jsrender.min.js +0 -4
  223. data/vendor/assets/javascripts/keymap/sublime.js +0 -720
  224. data/vendor/assets/javascripts/leaflet.featuregroup.subgroup.js +0 -6
  225. data/vendor/assets/javascripts/mode/css/css.js +0 -864
  226. data/vendor/assets/javascripts/select2.js +0 -6147
  227. data/vendor/assets/langs/en-US.lang +0 -110
  228. data/vendor/assets/stylesheets/codemirror.css +0 -350
  229. data/vendor/assets/stylesheets/default.min.css +0 -1
  230. data/vendor/assets/stylesheets/foundation.min.css +0 -1
  231. data/vendor/assets/stylesheets/github.min.css +0 -2
  232. data/vendor/assets/stylesheets/inscrybmde.min.scss +0 -194
  233. data/vendor/assets/stylesheets/jquery-ui.min.css +0 -7
  234. data/vendor/assets/stylesheets/select2-foundation-theme.css +0 -249
  235. data/vendor/assets/stylesheets/select2.css +0 -515
@@ -1,405 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- var fast_diff_1 = __importDefault(require("fast-diff"));
6
- var lodash_clonedeep_1 = __importDefault(require("lodash.clonedeep"));
7
- var lodash_isequal_1 = __importDefault(require("lodash.isequal"));
8
- var AttributeMap_1 = __importDefault(require("./AttributeMap"));
9
- var Op_1 = __importDefault(require("./Op"));
10
- var NULL_CHARACTER = String.fromCharCode(0); // Placeholder char for embed in diff()
11
- var Delta = /** @class */ (function () {
12
- function Delta(ops) {
13
- // Assume we are given a well formed ops
14
- if (Array.isArray(ops)) {
15
- this.ops = ops;
16
- }
17
- else if (ops != null && Array.isArray(ops.ops)) {
18
- this.ops = ops.ops;
19
- }
20
- else {
21
- this.ops = [];
22
- }
23
- }
24
- Delta.prototype.insert = function (arg, attributes) {
25
- var newOp = {};
26
- if (typeof arg === 'string' && arg.length === 0) {
27
- return this;
28
- }
29
- newOp.insert = arg;
30
- if (attributes != null &&
31
- typeof attributes === 'object' &&
32
- Object.keys(attributes).length > 0) {
33
- newOp.attributes = attributes;
34
- }
35
- return this.push(newOp);
36
- };
37
- Delta.prototype.delete = function (length) {
38
- if (length <= 0) {
39
- return this;
40
- }
41
- return this.push({ delete: length });
42
- };
43
- Delta.prototype.retain = function (length, attributes) {
44
- if (length <= 0) {
45
- return this;
46
- }
47
- var newOp = { retain: length };
48
- if (attributes != null &&
49
- typeof attributes === 'object' &&
50
- Object.keys(attributes).length > 0) {
51
- newOp.attributes = attributes;
52
- }
53
- return this.push(newOp);
54
- };
55
- Delta.prototype.push = function (newOp) {
56
- var index = this.ops.length;
57
- var lastOp = this.ops[index - 1];
58
- newOp = lodash_clonedeep_1.default(newOp);
59
- if (typeof lastOp === 'object') {
60
- if (typeof newOp.delete === 'number' &&
61
- typeof lastOp.delete === 'number') {
62
- this.ops[index - 1] = { delete: lastOp.delete + newOp.delete };
63
- return this;
64
- }
65
- // Since it does not matter if we insert before or after deleting at the same index,
66
- // always prefer to insert first
67
- if (typeof lastOp.delete === 'number' && newOp.insert != null) {
68
- index -= 1;
69
- lastOp = this.ops[index - 1];
70
- if (typeof lastOp !== 'object') {
71
- this.ops.unshift(newOp);
72
- return this;
73
- }
74
- }
75
- if (lodash_isequal_1.default(newOp.attributes, lastOp.attributes)) {
76
- if (typeof newOp.insert === 'string' &&
77
- typeof lastOp.insert === 'string') {
78
- this.ops[index - 1] = { insert: lastOp.insert + newOp.insert };
79
- if (typeof newOp.attributes === 'object') {
80
- this.ops[index - 1].attributes = newOp.attributes;
81
- }
82
- return this;
83
- }
84
- else if (typeof newOp.retain === 'number' &&
85
- typeof lastOp.retain === 'number') {
86
- this.ops[index - 1] = { retain: lastOp.retain + newOp.retain };
87
- if (typeof newOp.attributes === 'object') {
88
- this.ops[index - 1].attributes = newOp.attributes;
89
- }
90
- return this;
91
- }
92
- }
93
- }
94
- if (index === this.ops.length) {
95
- this.ops.push(newOp);
96
- }
97
- else {
98
- this.ops.splice(index, 0, newOp);
99
- }
100
- return this;
101
- };
102
- Delta.prototype.chop = function () {
103
- var lastOp = this.ops[this.ops.length - 1];
104
- if (lastOp && lastOp.retain && !lastOp.attributes) {
105
- this.ops.pop();
106
- }
107
- return this;
108
- };
109
- Delta.prototype.filter = function (predicate) {
110
- return this.ops.filter(predicate);
111
- };
112
- Delta.prototype.forEach = function (predicate) {
113
- this.ops.forEach(predicate);
114
- };
115
- Delta.prototype.map = function (predicate) {
116
- return this.ops.map(predicate);
117
- };
118
- Delta.prototype.partition = function (predicate) {
119
- var passed = [];
120
- var failed = [];
121
- this.forEach(function (op) {
122
- var target = predicate(op) ? passed : failed;
123
- target.push(op);
124
- });
125
- return [passed, failed];
126
- };
127
- Delta.prototype.reduce = function (predicate, initialValue) {
128
- return this.ops.reduce(predicate, initialValue);
129
- };
130
- Delta.prototype.changeLength = function () {
131
- return this.reduce(function (length, elem) {
132
- if (elem.insert) {
133
- return length + Op_1.default.length(elem);
134
- }
135
- else if (elem.delete) {
136
- return length - elem.delete;
137
- }
138
- return length;
139
- }, 0);
140
- };
141
- Delta.prototype.length = function () {
142
- return this.reduce(function (length, elem) {
143
- return length + Op_1.default.length(elem);
144
- }, 0);
145
- };
146
- Delta.prototype.slice = function (start, end) {
147
- if (start === void 0) { start = 0; }
148
- if (end === void 0) { end = Infinity; }
149
- var ops = [];
150
- var iter = Op_1.default.iterator(this.ops);
151
- var index = 0;
152
- while (index < end && iter.hasNext()) {
153
- var nextOp = void 0;
154
- if (index < start) {
155
- nextOp = iter.next(start - index);
156
- }
157
- else {
158
- nextOp = iter.next(end - index);
159
- ops.push(nextOp);
160
- }
161
- index += Op_1.default.length(nextOp);
162
- }
163
- return new Delta(ops);
164
- };
165
- Delta.prototype.compose = function (other) {
166
- var thisIter = Op_1.default.iterator(this.ops);
167
- var otherIter = Op_1.default.iterator(other.ops);
168
- var ops = [];
169
- var firstOther = otherIter.peek();
170
- if (firstOther != null &&
171
- typeof firstOther.retain === 'number' &&
172
- firstOther.attributes == null) {
173
- var firstLeft = firstOther.retain;
174
- while (thisIter.peekType() === 'insert' &&
175
- thisIter.peekLength() <= firstLeft) {
176
- firstLeft -= thisIter.peekLength();
177
- ops.push(thisIter.next());
178
- }
179
- if (firstOther.retain - firstLeft > 0) {
180
- otherIter.next(firstOther.retain - firstLeft);
181
- }
182
- }
183
- var delta = new Delta(ops);
184
- while (thisIter.hasNext() || otherIter.hasNext()) {
185
- if (otherIter.peekType() === 'insert') {
186
- delta.push(otherIter.next());
187
- }
188
- else if (thisIter.peekType() === 'delete') {
189
- delta.push(thisIter.next());
190
- }
191
- else {
192
- var length_1 = Math.min(thisIter.peekLength(), otherIter.peekLength());
193
- var thisOp = thisIter.next(length_1);
194
- var otherOp = otherIter.next(length_1);
195
- if (typeof otherOp.retain === 'number') {
196
- var newOp = {};
197
- if (typeof thisOp.retain === 'number') {
198
- newOp.retain = length_1;
199
- }
200
- else {
201
- newOp.insert = thisOp.insert;
202
- }
203
- // Preserve null when composing with a retain, otherwise remove it for inserts
204
- var attributes = AttributeMap_1.default.compose(thisOp.attributes, otherOp.attributes, typeof thisOp.retain === 'number');
205
- if (attributes) {
206
- newOp.attributes = attributes;
207
- }
208
- delta.push(newOp);
209
- // Optimization if rest of other is just retain
210
- if (!otherIter.hasNext() &&
211
- lodash_isequal_1.default(delta.ops[delta.ops.length - 1], newOp)) {
212
- var rest = new Delta(thisIter.rest());
213
- return delta.concat(rest).chop();
214
- }
215
- // Other op should be delete, we could be an insert or retain
216
- // Insert + delete cancels out
217
- }
218
- else if (typeof otherOp.delete === 'number' &&
219
- typeof thisOp.retain === 'number') {
220
- delta.push(otherOp);
221
- }
222
- }
223
- }
224
- return delta.chop();
225
- };
226
- Delta.prototype.concat = function (other) {
227
- var delta = new Delta(this.ops.slice());
228
- if (other.ops.length > 0) {
229
- delta.push(other.ops[0]);
230
- delta.ops = delta.ops.concat(other.ops.slice(1));
231
- }
232
- return delta;
233
- };
234
- Delta.prototype.diff = function (other, cursor) {
235
- if (this.ops === other.ops) {
236
- return new Delta();
237
- }
238
- var strings = [this, other].map(function (delta) {
239
- return delta
240
- .map(function (op) {
241
- if (op.insert != null) {
242
- return typeof op.insert === 'string' ? op.insert : NULL_CHARACTER;
243
- }
244
- var prep = delta === other ? 'on' : 'with';
245
- throw new Error('diff() called ' + prep + ' non-document');
246
- })
247
- .join('');
248
- });
249
- var retDelta = new Delta();
250
- var diffResult = fast_diff_1.default(strings[0], strings[1], cursor);
251
- var thisIter = Op_1.default.iterator(this.ops);
252
- var otherIter = Op_1.default.iterator(other.ops);
253
- diffResult.forEach(function (component) {
254
- var length = component[1].length;
255
- while (length > 0) {
256
- var opLength = 0;
257
- switch (component[0]) {
258
- case fast_diff_1.default.INSERT:
259
- opLength = Math.min(otherIter.peekLength(), length);
260
- retDelta.push(otherIter.next(opLength));
261
- break;
262
- case fast_diff_1.default.DELETE:
263
- opLength = Math.min(length, thisIter.peekLength());
264
- thisIter.next(opLength);
265
- retDelta.delete(opLength);
266
- break;
267
- case fast_diff_1.default.EQUAL:
268
- opLength = Math.min(thisIter.peekLength(), otherIter.peekLength(), length);
269
- var thisOp = thisIter.next(opLength);
270
- var otherOp = otherIter.next(opLength);
271
- if (lodash_isequal_1.default(thisOp.insert, otherOp.insert)) {
272
- retDelta.retain(opLength, AttributeMap_1.default.diff(thisOp.attributes, otherOp.attributes));
273
- }
274
- else {
275
- retDelta.push(otherOp).delete(opLength);
276
- }
277
- break;
278
- }
279
- length -= opLength;
280
- }
281
- });
282
- return retDelta.chop();
283
- };
284
- Delta.prototype.eachLine = function (predicate, newline) {
285
- if (newline === void 0) { newline = '\n'; }
286
- var iter = Op_1.default.iterator(this.ops);
287
- var line = new Delta();
288
- var i = 0;
289
- while (iter.hasNext()) {
290
- if (iter.peekType() !== 'insert') {
291
- return;
292
- }
293
- var thisOp = iter.peek();
294
- var start = Op_1.default.length(thisOp) - iter.peekLength();
295
- var index = typeof thisOp.insert === 'string'
296
- ? thisOp.insert.indexOf(newline, start) - start
297
- : -1;
298
- if (index < 0) {
299
- line.push(iter.next());
300
- }
301
- else if (index > 0) {
302
- line.push(iter.next(index));
303
- }
304
- else {
305
- if (predicate(line, iter.next(1).attributes || {}, i) === false) {
306
- return;
307
- }
308
- i += 1;
309
- line = new Delta();
310
- }
311
- }
312
- if (line.length() > 0) {
313
- predicate(line, {}, i);
314
- }
315
- };
316
- Delta.prototype.invert = function (base) {
317
- var inverted = new Delta();
318
- this.reduce(function (baseIndex, op) {
319
- if (op.insert) {
320
- inverted.delete(Op_1.default.length(op));
321
- }
322
- else if (op.retain && op.attributes == null) {
323
- inverted.retain(op.retain);
324
- return baseIndex + op.retain;
325
- }
326
- else if (op.delete || (op.retain && op.attributes)) {
327
- var length_2 = (op.delete || op.retain);
328
- var slice = base.slice(baseIndex, baseIndex + length_2);
329
- slice.forEach(function (baseOp) {
330
- if (op.delete) {
331
- inverted.push(baseOp);
332
- }
333
- else if (op.retain && op.attributes) {
334
- inverted.retain(Op_1.default.length(baseOp), AttributeMap_1.default.invert(op.attributes, baseOp.attributes));
335
- }
336
- });
337
- return baseIndex + length_2;
338
- }
339
- return baseIndex;
340
- }, 0);
341
- return inverted.chop();
342
- };
343
- Delta.prototype.transform = function (arg, priority) {
344
- if (priority === void 0) { priority = false; }
345
- priority = !!priority;
346
- if (typeof arg === 'number') {
347
- return this.transformPosition(arg, priority);
348
- }
349
- var other = arg;
350
- var thisIter = Op_1.default.iterator(this.ops);
351
- var otherIter = Op_1.default.iterator(other.ops);
352
- var delta = new Delta();
353
- while (thisIter.hasNext() || otherIter.hasNext()) {
354
- if (thisIter.peekType() === 'insert' &&
355
- (priority || otherIter.peekType() !== 'insert')) {
356
- delta.retain(Op_1.default.length(thisIter.next()));
357
- }
358
- else if (otherIter.peekType() === 'insert') {
359
- delta.push(otherIter.next());
360
- }
361
- else {
362
- var length_3 = Math.min(thisIter.peekLength(), otherIter.peekLength());
363
- var thisOp = thisIter.next(length_3);
364
- var otherOp = otherIter.next(length_3);
365
- if (thisOp.delete) {
366
- // Our delete either makes their delete redundant or removes their retain
367
- continue;
368
- }
369
- else if (otherOp.delete) {
370
- delta.push(otherOp);
371
- }
372
- else {
373
- // We retain either their retain or insert
374
- delta.retain(length_3, AttributeMap_1.default.transform(thisOp.attributes, otherOp.attributes, priority));
375
- }
376
- }
377
- }
378
- return delta.chop();
379
- };
380
- Delta.prototype.transformPosition = function (index, priority) {
381
- if (priority === void 0) { priority = false; }
382
- priority = !!priority;
383
- var thisIter = Op_1.default.iterator(this.ops);
384
- var offset = 0;
385
- while (thisIter.hasNext() && offset <= index) {
386
- var length_4 = thisIter.peekLength();
387
- var nextType = thisIter.peekType();
388
- thisIter.next();
389
- if (nextType === 'delete') {
390
- index -= Math.min(length_4, index - offset);
391
- continue;
392
- }
393
- else if (nextType === 'insert' && (offset < index || !priority)) {
394
- index += length_4;
395
- }
396
- offset += length_4;
397
- }
398
- return index;
399
- };
400
- Delta.Op = Op_1.default;
401
- Delta.AttributeMap = AttributeMap_1.default;
402
- return Delta;
403
- }());
404
- module.exports = Delta;
405
- //# sourceMappingURL=Delta.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Delta.js","sourceRoot":"","sources":["../src/Delta.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- /*! Europa v4.0.0 | (C) 2017 Alasdair Mercer, !ninja | MIT License */
2
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):e.Europa=t()}(this,function(){"use strict";function e(e,t){var r;return"function"==typeof Object.create?r=Object.create(e):(i.prototype=e,r=new i,i.prototype=null),t&&n(!0,r,t),r}function t(t,r,i,o){var a=this;return"string"!=typeof t&&(o=i,i=r,r=t,t=null),"function"!=typeof r&&(o=i,i=r,r=function(){return a.apply(this,arguments)}),n(!1,r,a,o),r.prototype=e(a.prototype,i),r.prototype.constructor=r,r.class_=t||a.class_,r.super_=a,r}function n(e,t,n){for(var r,i,u=0,s=(n=a.call(arguments,2)).length;u<s;u++){i=n[u];for(r in i)e&&!o.call(i,r)||(t[r]=i[r])}}function r(){}var i=function(){},o=Object.prototype.hasOwnProperty,a=Array.prototype.slice,u=t;r.class_="Nevis",r.super_=Object,r.extend=u;var s=r,c=s.extend(null,{forOwn:function(e,t,n){if(e)for(var r in e)c.hasOwn(e,r)&&t.call(n,e[r],r,e)},hasOwn:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},leftPad:function(e,t,n){if(null==e&&(e=""),null==t&&(t=0),null==n&&(n=" "),!n)return e;for(var r=0;r<t;r++)e=n+e;return e}}),f=c,p=s.extend(function(e,t){this.europa=e,this.options=t,this.atLeft=!0,this.atNoWhiteSpace=!0,this.atParagraph=!0,this.buffer="",this.context={},this.inCodeBlock=!1,this.inOrderedList=!1,this.inPreformattedBlock=!1,this.last=null,this.left="\n",this.listDepth=0,this.listIndex=1,this._document=e.document,this._element=null,this._tagName=null,this._window=e.window},{append:function(e){return null!=this.last&&(this.buffer+=this.last),this.last=e,this},appendParagraph:function(){return this.atParagraph?this:(this.atLeft||(this.append(this.left),this.atLeft=!0),this.append(this.left),this.atNoWhiteSpace=!0,this.atParagraph=!0,this)},output:function(e,t){return e?(e=e.replace(/\r\n/g,"\n"),t&&(e=e.replace(/\n([ \t]*\n)+/g,"\n").replace(/\n[ \t]+/g,"\n").replace(/[ \t]+/g," "),f.forOwn(p.replacements,function(t,n){e=e.replace(p.replacementsRegExp[n],t)})),this.inPreformattedBlock||(e=this.atNoWhiteSpace?e.replace(/^[ \t\n]+/,""):/^[ \t]*\n/.test(e)?e.replace(/^[ \t\n]+/,"\n"):e.replace(/^[ \t]+/," ")),e?(this.atLeft=/\n$/.test(e),this.atNoWhiteSpace=/[ \t\n]$/.test(e),this.atParagraph=/\n{2}$/.test(e),this.append(e.replace(/\n/g,this.left))):this):this},replaceLeft:function(e){return this.atLeft?this.last&&(this.last=this.last.replace(/[ ]{2,4}$/,e)):(this.append(this.left.replace(/[ ]{2,4}$/,e)),this.atLeft=!0,this.atNoWhiteSpace=!0,this.atParagraph=!0),this}},{replacements:{"\\\\":"\\\\","\\[":"\\[","\\]":"\\]",">":"\\>",_:"\\_","\\*":"\\*","`":"\\`","#":"\\#","([0-9])\\.(\\s|$)":"$1\\.$2","©":"(c)","®":"(r)","™":"(tm)"," ":" ","·":"\\*"," ":" "," ":" "," ":" ","‘":"'","’":"'","“":'"',"”":'"',"…":"...","–":"--","—":"---"},replacementsRegExp:{}});Object.defineProperties(p.prototype,{document:{get:function(){return this._document}},element:{get:function(){return this._element},set:function(e){this._element=e,this._tagName=e&&e.tagName?e.tagName.toLowerCase():null}},tagName:{get:function(){return this._tagName}},window:{get:function(){return this._window},set:function(e){this._window=e,this._document=e?e.document:null}}}),f.forOwn(p.replacements,function(e,t){p.replacementsRegExp[t]=new RegExp(t,"g")});var l=p,d=s.extend(null,{isVisible:function(e,t){var n=t.getComputedStyle(e);return"none"!==n.getPropertyValue("display")&&"hidden"!==n.getPropertyValue("visibility")}}),h=s.extend(function(e,t){this.name=e,this._defaultValue=t});Object.defineProperty(h.prototype,"defaultValue",{get:function(){var e=this._defaultValue;return"function"==typeof e?e.call(this):e}});var g=h,v=s.extend(function(e){this.options=e},{exists:function(e){return this.options.some(function(t){return t.name===e})},parse:function(e){e||(e={});var t={};return this.options.forEach(function(n){var r=n.name,i=null!=e[r]?e[r]:n.defaultValue;t[r]=i}),t}}),m=s.extend({after:function(e,t){},afterAll:function(e){},before:function(e,t){},beforeAll:function(e){},convert:function(e,t){return!0},getTagNames:function(){return[]}}),w={},x=new(s.extend(function(){this._services={}},{getService:function(e){var t=this._services[e];if(!t)throw new Error("Service is not being managed with name: "+e);return t},setService:function(e,t){if(this._services[e])throw new Error("Service is already managed with name: "+e);t&&(this._services[e]=t)}})),b=s.extend(function(e){this._options=new v([new g("absolute",!1),new g("baseUri",function(){return x.getService("window").getDefaultBaseUri()}),new g("inline",!1)]).parse(e),this._window=null},{convert:function(e){if(!e)return"";var t,n=this.document;"string"==typeof e?(t=n.createElement("div")).innerHTML=e:t=e;var r,i=new l(this,this._options);n.contains(t)||((r=n.createElement("div")).style.display="none",r.appendChild(t),n.body.appendChild(r));try{f.forOwn(w,function(e){e.beforeAll(i)}),this.convertElement(t,i),f.forOwn(w,function(e){e.afterAll(i)})}finally{r&&(n.body.removeChild(r),r.removeChild(t))}return i.append("").buffer.trim()},convertElement:function(e,t){if(e){var n,r,i,o,a=!1,u=this.window;if(e.nodeType===u.Node.ELEMENT_NODE){if(!d.isVisible(e,u))return;if(t.element=e,n={},i=w[t.tagName],a=!0,i&&(i.before(t,n),a=i.convert(t,n)),a)for(r=0;r<e.childNodes.length;r++)this.convertElement(e.childNodes[r],t);i&&i.after(t,n)}else e.nodeType===u.Node.TEXT_NODE&&(o=e.nodeValue||"",t.inPreformattedBlock?t.output(o):t.inCodeBlock?t.output(o.replace(/`/g,"\\`")):t.output(o,!0))}},release:function(){return this._window&&(x.getService("window").closeWindow(this._window),this._window=null),this}},{Plugin:m,register:function(e){e.getTagNames().forEach(function(t){w[t]=e})},use:function(e){x.setService(e.getName(),e)}});Object.defineProperties(b.prototype,{document:{get:function(){return this.window.document}},window:{get:function(){return this._window||(this._window=x.getService("window").getWindow(this._options.baseUri)),this._window}}});var N=b,y=m.extend({after:function(e,t){null!=t.value&&e.output("]"+t.value)},afterAll:function(e){var t=e.context.anchors;if(t.length){e.append("\n\n");for(var n=0;n<t.length;n++)e.append("[anchor"+n+"]: "+t[n]+"\n")}},beforeAll:function(e){e.context.anchorMap={},e.context.anchors=[]},convert:function(e,t){var n=e.element,r=e.options,i=r.absolute?n.href:n.getAttribute("href");if(!i)return!0;var o,a=e.context.anchorMap,u=e.context.anchors,s=n.getAttribute("title"),c=s?i+' "'+s+'"':i;return r.inline?t.value="("+c+")":(null==(o=a[c])&&(o=u.push(c)-1,a[c]=o),t.value="[anchor"+o+"]"),e.output("["),e.atNoWhiteSpace=!0,!0},getTagNames:function(){return["a"]}});N.register(new y);var P=m.extend({after:function(e,t){e.atLeft=!1,e.atParagraph=!1,e.left=t.previousLeft,e.appendParagraph()},before:function(e,t){t.previousLeft=e.left},convert:function(e,t){return e.left+="> ",e.atParagraph?e.append("> "):e.appendParagraph(),!0},getTagNames:function(){return["blockquote","dd"]}});N.register(new P);var _=m.extend({convert:function(e,t){return e.append(" "+e.left),e.atLeft=!0,e.atNoWhiteSpace=!0,!1},getTagNames:function(){return["br"]}});N.register(new _);var L=m.extend({after:function(e,t){t.skipped||(e.inCodeBlock=t.previousInCodeBlock,e.output("`"))},before:function(e,t){t.previousInCodeBlock=e.inCodeBlock},convert:function(e,t){return e.inPreformattedBlock?t.skipped=!0:(e.output("`"),e.inCodeBlock=!0),!0},getTagNames:function(){return["code","kbd","samp"]}});N.register(new L);var O=m.extend({after:function(e,t){e.output("**")},convert:function(e,t){return e.appendParagraph(),e.output("**"),e.atNoWhiteSpace=!0,!0},getTagNames:function(){return["dt"]}});N.register(new O);var T=m.extend({convert:function(e,t){var n=e.element;if(e.appendParagraph(),n.hasAttribute("open"))return!0;var r=n.querySelector("summary");return e.europa.convertElement(r,e),!1},getTagNames:function(){return["details"]}});N.register(new T);var E=m.extend({after:function(e,t){e.output("_")},convert:function(e,t){return e.output("_"),e.atNoWhiteSpace=!0,!0},getTagNames:function(){return["cite","dfn","em","i","u","var"]}});N.register(new E);var I=m.extend({convert:function(e,t){return!1},getTagNames:function(){return["applet","area","audio","button","canvas","datalist","embed","head","input","map","menu","meter","noframes","noscript","object","optgroup","option","param","progress","rp","rt","ruby","script","select","style","textarea","title","video"]}});N.register(new I);var S=m.extend({after:function(e,t){e.window=t.previousWindow},before:function(e,t){t.previousWindow=e.window},convert:function(e,t){var n=e.element.contentWindow;return n&&(e.window=n,e.europa.convertElement(n.document.body,e)),!1},getTagNames:function(){return["frame","iframe"]}});N.register(new S);var W=m.extend({convert:function(e,t){var n=parseInt(e.tagName.match(/([1-6])$/)[1],10);e.appendParagraph();for(var r="",i=0;i<n;i++)r+="#";return e.output(r+" "),!0},getTagNames:function(){return["h1","h2","h3","h4","h5","h6"]}});N.register(new W);var k=m.extend({convert:function(e,t){return e.appendParagraph().output("---").appendParagraph(),!1},getTagNames:function(){return["hr"]}});N.register(new k);var B=m.extend({afterAll:function(e){var t=e.context.images;if(t.length){e.append("\n\n");for(var n=0;n<t.length;n++)e.append("[image"+n+"]: "+t[n]+"\n")}},beforeAll:function(e){e.context.imageMap={},e.context.images=[]},convert:function(e,t){var n=e.element,r=e.options,i=r.absolute?n.src:n.getAttribute("src");if(!i)return!1;var o,a=n.getAttribute("alt")||"",u=e.context.imageMap,s=e.context.images,c=n.getAttribute("title"),f=c?i+' "'+c+'"':i;return r.inline?f="("+f+")":(null==(o=u[f])&&(o=s.push(f)-1,u[f]=o),f="[image"+o+"]"),e.output("!["+a+"]"+f),!1},getTagNames:function(){return["img"]}});N.register(new B);var A=m.extend({convert:function(e,t){var n=e.inOrderedList?e.listIndex+++". ":"* ";return e.atLeft?e.last&&(e.last=e.last.replace(/[ ]{2,4}$/,"\n")):(e.append(e.left.replace(/[ ]{2,4}$/,"\n")),e.atLeft=!0,e.atNoWhiteSpace=!0,e.atParagraph=!0),e.append(f.leftPad(n,2*(e.listDepth-1))),!0},getTagNames:function(){return["li"]}});N.register(new A);var C=m.extend({after:function(e,t){e.inOrderedList=t.previousInOrderedList,e.listIndex=t.previousListIndex,e.listDepth--},before:function(e,t){t.previousInOrderedList=e.inOrderedList,t.previousListIndex=e.listIndex},convert:function(e,t){return 0===e.listDepth&&e.appendParagraph(),e.inOrderedList=!0,e.listIndex=1,e.listDepth++,!0},getTagNames:function(){return["ol"]}});N.register(new C);var D=m.extend({convert:function(e,t){return e.appendParagraph(),!0},getTagNames:function(){return["address","article","aside","div","fieldset","footer","header","nav","p","section"]}});N.register(new D);var $=m.extend({after:function(e,t){e.atLeft=!1,e.atParagraph=!1,e.inPreformattedBlock=t.previousInPreformattedBlock,e.left=t.previousLeft,e.appendParagraph()},before:function(e,t){t.previousInPreformattedBlock=e.inPreformattedBlock,t.previousLeft=e.left},convert:function(e,t){return e.left+=" ",e.atParagraph?e.append(" "):e.appendParagraph(),!0},getTagNames:function(){return["pre"]}});N.register(new $);var j=m.extend({after:function(e,t){e.output('"')},convert:function(e,t){return e.output('"'),e.atNoWhiteSpace=!0,!0},getTagNames:function(){return["q"]}});N.register(new j);var V=m.extend({after:function(e,t){e.output("**")},convert:function(e,t){return e.output("**"),e.atNoWhiteSpace=!0,!0},getTagNames:function(){return["b","strong"]}});N.register(new V);var M=m.extend({after:function(e,t){e.inOrderedList=t.previousInOrderedList,e.listIndex=t.previousListIndex,e.listDepth--},before:function(e,t){t.previousInOrderedList=e.inOrderedList,t.previousListIndex=e.listIndex},convert:function(e,t){return 0===e.listDepth&&e.appendParagraph(),e.inOrderedList=!1,e.listIndex=1,e.listDepth++,!0},getTagNames:function(){return["ul"]}});N.register(new M);var U=N,R=s.extend({getName:function(){}}).extend({closeWindow:function(e){this.isCloseable(e)&&e.close()},getDefaultBaseUri:function(){},getName:function(){return"window"},getWindow:function(e){},isCloseable:function(e){return!1}}).extend({getDefaultBaseUri:function(){return window.document.baseURI},getWindow:function(e){return window}});return U.use(new R),U});
3
-
4
- //# sourceMappingURL=europa.min.js.map