decidim-decidim_awesome 0.8.2 → 0.9.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +63 -0
  3. data/README.md +54 -45
  4. data/Rakefile +1 -1
  5. data/app/commands/decidim/decidim_awesome/admin/create_constraint.rb +1 -1
  6. data/app/commands/decidim/decidim_awesome/admin/create_custom_redirect.rb +1 -1
  7. data/app/commands/decidim/decidim_awesome/admin/create_menu_hack.rb +1 -1
  8. data/app/commands/decidim/decidim_awesome/admin/create_proposal_custom_field.rb +1 -1
  9. data/app/commands/decidim/decidim_awesome/admin/create_scoped_admin.rb +1 -1
  10. data/app/commands/decidim/decidim_awesome/admin/create_scoped_style.rb +1 -1
  11. data/app/commands/decidim/decidim_awesome/admin/destroy_constraint.rb +1 -1
  12. data/app/commands/decidim/decidim_awesome/admin/destroy_custom_redirect.rb +1 -1
  13. data/app/commands/decidim/decidim_awesome/admin/destroy_menu_hack.rb +1 -1
  14. data/app/commands/decidim/decidim_awesome/admin/destroy_proposal_custom_field.rb +1 -1
  15. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_admin.rb +1 -1
  16. data/app/commands/decidim/decidim_awesome/admin/destroy_scoped_style.rb +1 -1
  17. data/app/commands/decidim/decidim_awesome/admin/rename_scope_label.rb +1 -1
  18. data/app/commands/decidim/decidim_awesome/admin/update_config.rb +2 -3
  19. data/app/commands/decidim/decidim_awesome/admin/update_constraint.rb +2 -2
  20. data/app/commands/decidim/decidim_awesome/admin/update_custom_redirect.rb +1 -1
  21. data/app/commands/decidim/decidim_awesome/admin/update_menu_hack.rb +1 -1
  22. data/app/commands/decidim/decidim_awesome/command.rb +14 -0
  23. data/app/commands/decidim/decidim_awesome/create_editor_image.rb +1 -1
  24. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable.rb +67 -0
  25. data/app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable_helper.rb +37 -0
  26. data/app/controllers/decidim/decidim_awesome/admin/admin_accountability_controller.rb +51 -0
  27. data/app/controllers/decidim/decidim_awesome/admin/checks_controller.rb +6 -3
  28. data/app/controllers/decidim/decidim_awesome/admin/config_controller.rb +2 -0
  29. data/app/controllers/decidim/decidim_awesome/admin/custom_redirects_controller.rb +2 -0
  30. data/app/controllers/decidim/decidim_awesome/admin/menu_hacks_controller.rb +2 -0
  31. data/app/controllers/decidim/decidim_awesome/editor_images_controller.rb +0 -2
  32. data/app/forms/decidim/decidim_awesome/admin/config_form.rb +14 -0
  33. data/app/forms/decidim/decidim_awesome/admin/menu_form.rb +1 -1
  34. data/app/forms/decidim/decidim_awesome/proposals/proposal_wizard_create_step_form_override.rb +26 -8
  35. data/app/helpers/decidim/decidim_awesome/admin/config_constraints_helpers.rb +12 -8
  36. data/app/helpers/decidim/decidim_awesome/map_helper.rb +14 -11
  37. data/app/jobs/decidim/decidim_awesome/export_admin_actions_job.rb +28 -0
  38. data/app/middleware/decidim/decidim_awesome/current_config.rb +4 -0
  39. data/app/models/decidim/decidim_awesome/awesome_config.rb +0 -1
  40. data/app/models/decidim/decidim_awesome/config_constraint.rb +0 -2
  41. data/app/models/decidim/decidim_awesome/editor_image.rb +0 -3
  42. data/app/models/decidim/decidim_awesome/paper_trail_version.rb +99 -0
  43. data/app/packs/entrypoints/decidim_admin_decidim_awesome.js +3 -2
  44. data/app/packs/images/decidim/decidim_awesome/pokecode-logo.png +0 -0
  45. data/app/packs/src/decidim/decidim_awesome/admin/auto_edit.js +7 -7
  46. data/app/packs/src/decidim/decidim_awesome/admin/check_redirections.js +2 -2
  47. data/app/packs/src/decidim/decidim_awesome/admin/constraints.js +5 -5
  48. data/app/packs/src/decidim/decidim_awesome/admin/custom_fields_builder.js +11 -10
  49. data/app/packs/src/decidim/decidim_awesome/admin/form_exit_warn.js +1 -0
  50. data/app/packs/src/decidim/decidim_awesome/admin/user_picker.js +1 -0
  51. data/app/packs/src/decidim/decidim_awesome/awesome_map/api/fetcher.js +13 -13
  52. data/app/packs/src/decidim/decidim_awesome/awesome_map/awesome_map.js +14 -12
  53. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/controller.js +16 -12
  54. data/app/packs/src/decidim/decidim_awesome/awesome_map/controllers/proposals_controller.js +3 -3
  55. data/app/packs/src/decidim/decidim_awesome/awesome_map/controls_ui.js +25 -26
  56. data/app/packs/src/decidim/decidim_awesome/awesome_map/load_map.js +1 -0
  57. data/app/packs/src/decidim/decidim_awesome/editors/editor.js +33 -12
  58. data/app/packs/src/decidim/decidim_awesome/forms/autosave.js +8 -12
  59. data/app/packs/src/decidim/decidim_awesome/forms/custom_fields_renderer.js +36 -27
  60. data/app/packs/src/decidim/decidim_awesome/forms/rich_text_plugin.js +6 -4
  61. data/app/packs/src/decidim/decidim_awesome/proposals/custom_fields.js +7 -7
  62. data/app/packs/src/decidim/decidim_awesome/proposals/images.js +2 -2
  63. data/app/packs/stylesheets/decidim/decidim_awesome/awesome_admin.scss +8 -5
  64. data/app/permissions/decidim/decidim_awesome/admin/permissions.rb +15 -1
  65. data/app/permissions/decidim/decidim_awesome/permissions.rb +4 -6
  66. data/app/presenters/decidim/decidim_awesome/paper_trail_base_presenter.rb +28 -0
  67. data/app/presenters/decidim/decidim_awesome/participatory_space_role_presenter.rb +45 -0
  68. data/app/presenters/decidim/decidim_awesome/role_base_presenter.rb +102 -0
  69. data/app/presenters/decidim/decidim_awesome/user_entity_presenter.rb +50 -0
  70. data/app/serializers/decidim/decidim_awesome/paper_trail_version_serializer.rb +37 -0
  71. data/app/validators/concerns/decidim/decidim_awesome/etiquette_validator_override.rb +41 -0
  72. data/app/views/decidim/decidim_awesome/admin/admin_accountability/index.html.erb +59 -0
  73. data/app/views/decidim/decidim_awesome/admin/checks/_assets_tester.html.erb +2 -0
  74. data/app/views/decidim/decidim_awesome/admin/config/_form_proposals.html.erb +82 -2
  75. data/app/views/decidim/decidim_awesome/admin/shared/_filters_with_date.html.erb +56 -0
  76. data/app/views/decidim/proposals/admin/proposals/_form.html.erb +1 -1
  77. data/app/views/decidim/proposals/collaborative_drafts/_edit_form_fields.html.erb +9 -17
  78. data/app/views/layouts/decidim/admin/decidim_awesome.html.erb +1 -1
  79. data/app/views/layouts/decidim/decidim_awesome/_awesome_config.html.erb +1 -1
  80. data/app/views/{v0.25 → v0.27}/layouts/decidim/_head.html.erb +12 -4
  81. data/config/i18n-tasks.yml +4 -0
  82. data/config/locales/ca.yml +22 -2
  83. data/config/locales/cs.yml +7 -2
  84. data/config/locales/de.yml +355 -0
  85. data/config/locales/en.yml +90 -1
  86. data/config/locales/es.yml +2 -2
  87. data/config/locales/fr.yml +22 -2
  88. data/config/locales/it.yml +2 -2
  89. data/config/locales/ja.yml +4 -3
  90. data/config/locales/nl.yml +1 -1
  91. data/config/locales/pt-BR.yml +2 -2
  92. data/db/seeds.rb +1 -1
  93. data/lib/decidim/decidim_awesome/admin_engine.rb +15 -1
  94. data/lib/decidim/decidim_awesome/awesome.rb +55 -1
  95. data/lib/decidim/decidim_awesome/checksums.yml +13 -3
  96. data/lib/decidim/decidim_awesome/config.rb +14 -14
  97. data/lib/decidim/decidim_awesome/context_analyzers/request_analyzer.rb +1 -1
  98. data/lib/decidim/decidim_awesome/engine.rb +36 -9
  99. data/lib/decidim/decidim_awesome/iframe_component/component.rb +2 -1
  100. data/lib/decidim/decidim_awesome/menu_hacker.rb +6 -0
  101. data/lib/decidim/decidim_awesome/system_checker.rb +2 -0
  102. data/lib/decidim/decidim_awesome/test/factories.rb +8 -0
  103. data/lib/decidim/decidim_awesome/test/initializer.rb +10 -2
  104. data/lib/decidim/decidim_awesome/test/shared_examples/action_log_presenter_examples.rb +61 -0
  105. data/lib/decidim/decidim_awesome/test/shared_examples/scoped_admins_examples.rb +7 -4
  106. data/lib/decidim/decidim_awesome/test/shared_examples/summary_examples.rb +2 -2
  107. data/lib/decidim/decidim_awesome/version.rb +2 -2
  108. data/lib/tasks/decidim_awesome_active_storage_migrations_tasks.rake +1 -3
  109. data/package.json +21 -164
  110. metadata +40 -39
  111. data/app/packs/images/decidim/decidim_awesome/platoniq-logo.png +0 -0
  112. data/app/packs/src/vendor/image-resize.min.js +0 -1
  113. data/app/packs/src/vendor/image-upload.min.js +0 -6
  114. data/app/packs/src/vendor/leaflet.featuregroup.subgroup.js +0 -184
  115. /data/app/views/{v0.25 → v0.27}/decidim/proposals/collaborative_drafts/_show.html.erb +0 -0
  116. /data/app/views/{v0.25 → v0.27}/layouts/decidim/admin/_header.html.erb +0 -0
@@ -1,9 +1,12 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ welcome_text = "Welcome to the Admin Panel."
4
+ welcome_text = "Welcome to the Decidim Admin Panel." if legacy_version?
5
+
3
6
  shared_examples "redirects to index" do |_link|
4
7
  it "display index page" do
5
8
  expect(page).to have_content("You are not authorized to perform this action")
6
- expect(page).to have_content("Welcome to the Decidim Admin Panel.")
9
+ expect(page).to have_content(welcome_text)
7
10
  expect(page).to have_current_path(decidim_admin.root_path, ignore_query: true)
8
11
  end
9
12
  end
@@ -85,7 +88,7 @@ shared_examples "allows external accesses" do
85
88
 
86
89
  it "shows participants access" do
87
90
  visit decidim_admin.users_path
88
- expect(page).to have_content("New user")
91
+ expect(page).to have_content(legacy_version? ? "New user" : "New admin")
89
92
  end
90
93
 
91
94
  it "shows pages access" do
@@ -110,7 +113,7 @@ shared_examples "allows all admin routes" do
110
113
  end
111
114
 
112
115
  it "allows the admin root page" do
113
- expect(page).to have_content("Welcome to the Decidim Admin Panel.")
116
+ expect(page).to have_content(welcome_text)
114
117
  end
115
118
 
116
119
  it "allows the assemblies page" do
@@ -132,7 +135,7 @@ shared_examples "allows scoped admin routes" do
132
135
  end
133
136
 
134
137
  it "allows the admin root page" do
135
- expect(page).to have_content("Welcome to the Decidim Admin Panel.")
138
+ expect(page).to have_content(welcome_text)
136
139
  end
137
140
 
138
141
  it "allows the assemblies page" do
@@ -36,6 +36,7 @@ shared_examples "activated concerns" do |enabled|
36
36
  expect(Decidim::Proposals::ApplicationHelper.included_modules).to include(Decidim::DecidimAwesome::Proposals::ApplicationHelperOverride)
37
37
  expect(Decidim::Proposals::ProposalWizardCreateStepForm.included_modules).to include(Decidim::DecidimAwesome::Proposals::ProposalWizardCreateStepFormOverride)
38
38
  expect(Decidim::AmendmentsHelper.included_modules).to include(Decidim::DecidimAwesome::AmendmentsHelperOverride)
39
+ expect(EtiquetteValidator.included_modules).to include(Decidim::DecidimAwesome::EtiquetteValidatorOverride)
39
40
  end
40
41
  else
41
42
  it "concerns are not registered" do
@@ -44,12 +45,12 @@ shared_examples "activated concerns" do |enabled|
44
45
  expect(Decidim::Proposals::ApplicationHelper.included_modules).not_to include(Decidim::DecidimAwesome::Proposals::ApplicationHelperOverride)
45
46
  expect(Decidim::Proposals::ProposalWizardCreateStepForm.included_modules).not_to include(Decidim::DecidimAwesome::Proposals::ProposalWizardCreateStepFormOverride)
46
47
  expect(Decidim::AmendmentsHelper.included_modules).not_to include(Decidim::DecidimAwesome::AmendmentsHelperOverride)
48
+ expect(EtiquetteValidator.included_modules).not_to include(Decidim::DecidimAwesome::EtiquetteValidatorOverride)
47
49
  end
48
50
  end
49
51
  end
50
52
 
51
53
  shared_examples "custom menus" do |enabled|
52
- # rubocop:disable RSpec/EmptyExampleGroup
53
54
  describe Decidim::MenuPresenter, type: :helper do
54
55
  before do
55
56
  allow(view).to receive(:current_organization).and_return(organization)
@@ -66,7 +67,6 @@ shared_examples "custom menus" do |enabled|
66
67
  end
67
68
  end
68
69
  end
69
- # rubocop:enable RSpec/EmptyExampleGroup
70
70
  end
71
71
 
72
72
  shared_examples "basic rendering" do |enabled|
@@ -3,7 +3,7 @@
3
3
  module Decidim
4
4
  # This holds the decidim-decidim_awesome version.
5
5
  module DecidimAwesome
6
- VERSION = "0.8.2"
7
- COMPAT_DECIDIM_VERSION = [">= 0.25.0", "< 0.27"].freeze
6
+ VERSION = "0.9.1"
7
+ COMPAT_DECIDIM_VERSION = [">= 0.26.0", "< 0.28"].freeze
8
8
  end
9
9
  end
@@ -15,9 +15,7 @@ namespace :decidim_awesome do
15
15
  path = Rails.root.join("tmp/decidim_awesome_editor_images_mappings.csv")
16
16
  dirname = File.dirname(path)
17
17
  FileUtils.mkdir_p(dirname) unless File.directory?(dirname)
18
- File.open(path, "wb") do |file|
19
- file.write(Decidim::Exporters::CSV.new(routes_mappings).export.read)
20
- end
18
+ File.binwrite(path, Decidim::Exporters::CSV.new(routes_mappings).export.read)
21
19
  end
22
20
  end
23
21
 
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "decidim-module-decidim_awesome",
3
- "version": "0.8.0",
3
+ "version": "0.9.0",
4
4
  "description": "Mods and tweaks for Decidim",
5
5
  "main": "index.js",
6
6
  "directories": {
@@ -16,7 +16,7 @@
16
16
  },
17
17
  "repository": {
18
18
  "type": "git",
19
- "url": "git+https://github.com/Platoniq/decidim-module-decidim_awesome.git"
19
+ "url": "git+https://github.com/decidim-ice/decidim-module-decidim_awesome.git"
20
20
  },
21
21
  "keywords": [
22
22
  "decidim"
@@ -24,176 +24,33 @@
24
24
  "author": "ivan@platoniq.net",
25
25
  "license": "AGPL-3.0-or-later",
26
26
  "bugs": {
27
- "url": "https://github.com/Platoniq/decidim-module-decidim_awesome/issues"
27
+ "url": "https://github.com/decidim-ice/decidim-module-decidim_awesome/issues"
28
28
  },
29
- "homepage": "https://github.com/Platoniq/decidim-module-decidim_awesome#readme",
29
+ "homepage": "https://github.com/decidim-ice/decidim-module-decidim_awesome#readme",
30
30
  "stylelint": {
31
- "rules": {
32
- "at-rule-empty-line-before": [
33
- "always",
34
- {
35
- "except": [
36
- "blockless-after-same-name-blockless",
37
- "first-nested"
38
- ],
39
- "ignore": [
40
- "after-comment"
41
- ],
42
- "ignoreAtRules": [
43
- "else"
44
- ]
45
- }
46
- ],
47
- "at-rule-name-case": "lower",
48
- "at-rule-semicolon-newline-after": "always",
49
- "block-closing-brace-empty-line-before": "never",
50
- "block-closing-brace-newline-after": "always",
51
- "block-closing-brace-newline-before": "always-multi-line",
52
- "block-closing-brace-space-before": "always-single-line",
53
- "block-no-empty": true,
54
- "block-opening-brace-newline-after": "always-multi-line",
55
- "block-opening-brace-space-after": "always-single-line",
56
- "block-opening-brace-space-before": "always",
57
- "color-hex-case": "lower",
58
- "color-hex-length": "short",
59
- "color-no-invalid-hex": true,
60
- "comment-empty-line-before": [
61
- "always",
62
- {
63
- "except": [
64
- "first-nested"
65
- ],
66
- "ignore": [
67
- "stylelint-commands"
68
- ]
69
- }
70
- ],
71
- "comment-no-empty": true,
72
- "comment-whitespace-inside": "always",
73
- "custom-property-empty-line-before": [
74
- "always",
75
- {
76
- "except": [
77
- "after-custom-property",
78
- "first-nested"
79
- ],
80
- "ignore": [
81
- "after-comment",
82
- "inside-single-line-block"
83
- ]
84
- }
85
- ],
86
- "declaration-bang-space-after": "never",
87
- "declaration-bang-space-before": "always",
88
- "declaration-block-no-duplicate-properties": [
89
- true,
90
- {
91
- "ignore": [
92
- "consecutive-duplicates-with-different-values"
93
- ]
94
- }
95
- ],
96
- "declaration-block-no-redundant-longhand-properties": true,
97
- "declaration-block-no-shorthand-property-overrides": true,
98
- "declaration-block-semicolon-newline-after": "always-multi-line",
99
- "declaration-block-semicolon-space-after": "always-single-line",
100
- "declaration-block-semicolon-space-before": "never",
101
- "declaration-block-single-line-max-declarations": 1,
102
- "declaration-block-trailing-semicolon": "always",
103
- "declaration-colon-newline-after": "always-multi-line",
104
- "declaration-colon-space-after": "always-single-line",
105
- "declaration-colon-space-before": "never",
106
- "declaration-empty-line-before": [
107
- "always",
108
- {
109
- "except": [
110
- "after-declaration",
111
- "first-nested"
112
- ],
113
- "ignore": [
114
- "after-comment",
115
- "inside-single-line-block"
116
- ]
117
- }
118
- ],
119
- "function-calc-no-unspaced-operator": true,
120
- "function-comma-newline-after": "always-multi-line",
121
- "function-comma-space-after": "always-single-line",
122
- "function-comma-space-before": "never",
123
- "function-linear-gradient-no-nonstandard-direction": true,
124
- "function-max-empty-lines": 0,
125
- "function-name-case": "lower",
126
- "function-parentheses-newline-inside": "always-multi-line",
127
- "function-parentheses-space-inside": "never-single-line",
128
- "function-whitespace-after": "always",
129
- "indentation": 2,
130
- "keyframe-declaration-no-important": true,
131
- "length-zero-no-unit": true,
132
- "max-empty-lines": 1,
133
- "media-feature-colon-space-after": "always",
134
- "media-feature-colon-space-before": "never",
135
- "media-feature-name-case": "lower",
136
- "media-feature-name-no-unknown": true,
137
- "media-feature-parentheses-space-inside": "never",
138
- "media-feature-range-operator-space-after": "always",
139
- "media-feature-range-operator-space-before": "always",
140
- "media-query-list-comma-newline-after": "always-multi-line",
141
- "media-query-list-comma-space-after": "always-single-line",
142
- "media-query-list-comma-space-before": "never",
143
- "no-empty-source": true,
144
- "no-eol-whitespace": true,
145
- "no-extra-semicolons": true,
146
- "no-invalid-double-slash-comments": true,
147
- "no-missing-end-of-source-newline": true,
148
- "number-leading-zero": "never",
149
- "number-no-trailing-zeros": true,
150
- "property-case": "lower",
151
- "property-no-unknown": true,
152
- "rule-empty-line-before": [
153
- "always-multi-line",
154
- {
155
- "except": [
156
- "first-nested"
157
- ],
158
- "ignore": [
159
- "after-comment"
160
- ]
161
- }
162
- ],
163
- "selector-attribute-brackets-space-inside": "never",
164
- "selector-attribute-operator-space-after": "never",
165
- "selector-attribute-operator-space-before": "never",
166
- "selector-combinator-space-after": "always",
167
- "selector-combinator-space-before": "always",
168
- "selector-descendant-combinator-no-non-space": true,
169
- "selector-list-comma-newline-after": "always",
170
- "selector-list-comma-space-before": "never",
171
- "selector-max-empty-lines": 0,
172
- "selector-pseudo-class-case": "lower",
173
- "selector-pseudo-class-no-unknown": true,
174
- "selector-pseudo-class-parentheses-space-inside": "never",
175
- "selector-pseudo-element-case": "lower",
176
- "selector-pseudo-element-colon-notation": "double",
177
- "selector-pseudo-element-no-unknown": true,
178
- "selector-type-case": "lower",
179
- "selector-type-no-unknown": true,
180
- "shorthand-property-no-redundant-values": true,
181
- "string-no-newline": true,
182
- "unit-case": "lower",
183
- "unit-no-unknown": true,
184
- "value-list-comma-newline-after": "always-multi-line",
185
- "value-list-comma-space-after": "always-single-line",
186
- "value-list-comma-space-before": "never",
187
- "value-list-max-empty-lines": 0
31
+ "extends": "@decidim/stylelint-config",
32
+ "rules" : {
33
+ "block-opening-brace-space-before": "always"
188
34
  }
189
35
  },
190
36
  "devDependencies": {
191
- "eslint": "^7.32.0",
192
- "eslint": "^7.25.0",
37
+ "@babel/eslint-parser": "^7.19.1",
38
+ "@babel/plugin-proposal-class-properties": "^7.18.6",
39
+ "@babel/plugin-proposal-private-methods": "^7.18.6",
40
+ "@babel/plugin-proposal-private-property-in-object": "^7.20.5",
41
+ "@babel/plugin-transform-classes": "^7.20.7",
42
+ "@babel/plugin-transform-regenerator": "^7.20.5",
43
+ "@babel/plugin-transform-runtime": "^7.19.6",
44
+ "@babel/preset-env": "^7.20.2",
45
+ "@babel/preset-react": "^7.18.6",
46
+ "@decidim/dev": "0.27.1",
47
+ "@decidim/eslint-config": "0.27.1",
48
+ "@decidim/stylelint-config": "0.27.1",
193
49
  "eslint-config-prettier": "^8.2.0",
194
50
  "eslint-config-standard": "^11.0.0",
195
51
  "eslint-plugin-import": "^2.22.0",
196
- "stylelint": "13.11.0"
52
+ "eslint-plugin-standard": "^3.1.0",
53
+ "sass-embedded": "~1.57.1"
197
54
  },
198
55
  "dependencies": {
199
56
  "codemirror": "^5.65.0",
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: decidim-decidim_awesome
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.2
4
+ version: 0.9.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ivan Vergés
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-04-21 00:00:00.000000000 Z
11
+ date: 2023-04-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: decidim-admin
@@ -16,40 +16,40 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.25.0
19
+ version: 0.26.0
20
20
  - - "<"
21
21
  - !ruby/object:Gem::Version
22
- version: '0.27'
22
+ version: '0.28'
23
23
  type: :runtime
24
24
  prerelease: false
25
25
  version_requirements: !ruby/object:Gem::Requirement
26
26
  requirements:
27
27
  - - ">="
28
28
  - !ruby/object:Gem::Version
29
- version: 0.25.0
29
+ version: 0.26.0
30
30
  - - "<"
31
31
  - !ruby/object:Gem::Version
32
- version: '0.27'
32
+ version: '0.28'
33
33
  - !ruby/object:Gem::Dependency
34
34
  name: decidim-core
35
35
  requirement: !ruby/object:Gem::Requirement
36
36
  requirements:
37
37
  - - ">="
38
38
  - !ruby/object:Gem::Version
39
- version: 0.25.0
39
+ version: 0.26.0
40
40
  - - "<"
41
41
  - !ruby/object:Gem::Version
42
- version: '0.27'
42
+ version: '0.28'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - ">="
48
48
  - !ruby/object:Gem::Version
49
- version: 0.25.0
49
+ version: 0.26.0
50
50
  - - "<"
51
51
  - !ruby/object:Gem::Version
52
- version: '0.27'
52
+ version: '0.28'
53
53
  - !ruby/object:Gem::Dependency
54
54
  name: sassc
55
55
  requirement: !ruby/object:Gem::Requirement
@@ -64,43 +64,29 @@ dependencies:
64
64
  - - "~>"
65
65
  - !ruby/object:Gem::Version
66
66
  version: '2.3'
67
- - !ruby/object:Gem::Dependency
68
- name: appraisal
69
- requirement: !ruby/object:Gem::Requirement
70
- requirements:
71
- - - ">="
72
- - !ruby/object:Gem::Version
73
- version: '0'
74
- type: :development
75
- prerelease: false
76
- version_requirements: !ruby/object:Gem::Requirement
77
- requirements:
78
- - - ">="
79
- - !ruby/object:Gem::Version
80
- version: '0'
81
67
  - !ruby/object:Gem::Dependency
82
68
  name: decidim-dev
83
69
  requirement: !ruby/object:Gem::Requirement
84
70
  requirements:
85
71
  - - ">="
86
72
  - !ruby/object:Gem::Version
87
- version: 0.25.0
73
+ version: 0.26.0
88
74
  - - "<"
89
75
  - !ruby/object:Gem::Version
90
- version: '0.27'
76
+ version: '0.28'
91
77
  type: :development
92
78
  prerelease: false
93
79
  version_requirements: !ruby/object:Gem::Requirement
94
80
  requirements:
95
81
  - - ">="
96
82
  - !ruby/object:Gem::Version
97
- version: 0.25.0
83
+ version: 0.26.0
98
84
  - - "<"
99
85
  - !ruby/object:Gem::Version
100
- version: '0.27'
86
+ version: '0.28'
101
87
  description: Some usability and UX tweaks for Decidim.
102
88
  email:
103
- - ivan@platoniq.net
89
+ - ivan@pokecode.net
104
90
  executables: []
105
91
  extensions: []
106
92
  extra_rdoc_files: []
@@ -132,9 +118,13 @@ files:
132
118
  - app/commands/decidim/decidim_awesome/admin/update_constraint.rb
133
119
  - app/commands/decidim/decidim_awesome/admin/update_custom_redirect.rb
134
120
  - app/commands/decidim/decidim_awesome/admin/update_menu_hack.rb
121
+ - app/commands/decidim/decidim_awesome/command.rb
135
122
  - app/commands/decidim/decidim_awesome/create_editor_image.rb
123
+ - app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable.rb
124
+ - app/controllers/concerns/decidim/decidim_awesome/admin_accountability/admin/filterable_helper.rb
136
125
  - app/controllers/concerns/decidim/decidim_awesome/needs_awesome_config.rb
137
126
  - app/controllers/concerns/decidim/decidim_awesome/not_found_redirect.rb
127
+ - app/controllers/decidim/decidim_awesome/admin/admin_accountability_controller.rb
138
128
  - app/controllers/decidim/decidim_awesome/admin/application_controller.rb
139
129
  - app/controllers/decidim/decidim_awesome/admin/checks_controller.rb
140
130
  - app/controllers/decidim/decidim_awesome/admin/config_controller.rb
@@ -161,12 +151,14 @@ files:
161
151
  - app/helpers/decidim/decidim_awesome/amendments_helper_override.rb
162
152
  - app/helpers/decidim/decidim_awesome/map_helper.rb
163
153
  - app/helpers/decidim/decidim_awesome/proposals/application_helper_override.rb
154
+ - app/jobs/decidim/decidim_awesome/export_admin_actions_job.rb
164
155
  - app/jobs/decidim/decidim_awesome/migrate_legacy_images_job.rb
165
156
  - app/middleware/decidim/decidim_awesome/current_config.rb
166
157
  - app/models/decidim/decidim_awesome/application_record.rb
167
158
  - app/models/decidim/decidim_awesome/awesome_config.rb
168
159
  - app/models/decidim/decidim_awesome/config_constraint.rb
169
160
  - app/models/decidim/decidim_awesome/editor_image.rb
161
+ - app/models/decidim/decidim_awesome/paper_trail_version.rb
170
162
  - app/models/decidim/decidim_awesome/user_override.rb
171
163
  - app/packs/entrypoints/decidim_admin_decidim_awesome.js
172
164
  - app/packs/entrypoints/decidim_admin_decidim_awesome.scss
@@ -178,7 +170,7 @@ files:
178
170
  - app/packs/entrypoints/decidim_decidim_awesome_iframe.scss
179
171
  - app/packs/entrypoints/decidim_decidim_awesome_map.js
180
172
  - app/packs/entrypoints/decidim_decidim_awesome_map.scss
181
- - app/packs/images/decidim/decidim_awesome/platoniq-logo.png
173
+ - app/packs/images/decidim/decidim_awesome/pokecode-logo.png
182
174
  - app/packs/src/decidim/decidim_awesome/admin/auto_edit.js
183
175
  - app/packs/src/decidim/decidim_awesome/admin/check_redirections.js
184
176
  - app/packs/src/decidim/decidim_awesome/admin/codemirror.js
@@ -205,10 +197,7 @@ files:
205
197
  - app/packs/src/decidim/decidim_awesome/forms/rich_text_plugin.js
206
198
  - app/packs/src/decidim/decidim_awesome/proposals/custom_fields.js
207
199
  - app/packs/src/decidim/decidim_awesome/proposals/images.js
208
- - app/packs/src/vendor/image-resize.min.js
209
- - app/packs/src/vendor/image-upload.min.js
210
200
  - app/packs/src/vendor/jquery.truncate.js
211
- - app/packs/src/vendor/leaflet.featuregroup.subgroup.js
212
201
  - app/packs/stylesheets/decidim/decidim_awesome/admin/auto_edits.scss
213
202
  - app/packs/stylesheets/decidim/decidim_awesome/admin/check_redirections.scss
214
203
  - app/packs/stylesheets/decidim/decidim_awesome/admin/codemirror.scss
@@ -227,8 +216,16 @@ files:
227
216
  - app/permissions/decidim/decidim_awesome/permissions.rb
228
217
  - app/presenters/decidim/decidim_awesome/menu_item_presenter_override.rb
229
218
  - app/presenters/decidim/decidim_awesome/menu_presenter_override.rb
219
+ - app/presenters/decidim/decidim_awesome/paper_trail_base_presenter.rb
220
+ - app/presenters/decidim/decidim_awesome/participatory_space_role_presenter.rb
221
+ - app/presenters/decidim/decidim_awesome/role_base_presenter.rb
222
+ - app/presenters/decidim/decidim_awesome/user_entity_presenter.rb
223
+ - app/serializers/decidim/decidim_awesome/paper_trail_version_serializer.rb
230
224
  - app/uploaders/decidim/cw/decidim_awesome/image_uploader.rb
231
225
  - app/uploaders/decidim/decidim_awesome/image_uploader.rb
226
+ - app/validators/concerns/decidim/decidim_awesome/etiquette_validator_override.rb
227
+ - app/views/decidim/decidim_awesome/admin/admin_accountability/index.html.erb
228
+ - app/views/decidim/decidim_awesome/admin/checks/_assets_tester.html.erb
232
229
  - app/views/decidim/decidim_awesome/admin/checks/index.html.erb
233
230
  - app/views/decidim/decidim_awesome/admin/config/_autoedit_box_label.html.erb
234
231
  - app/views/decidim/decidim_awesome/admin/config/_constraints.html.erb
@@ -253,6 +250,7 @@ files:
253
250
  - app/views/decidim/decidim_awesome/admin/menu_hacks/index.html.erb
254
251
  - app/views/decidim/decidim_awesome/admin/menu_hacks/new.html.erb
255
252
  - app/views/decidim/decidim_awesome/admin/proposals/_editor.html.erb
253
+ - app/views/decidim/decidim_awesome/admin/shared/_filters_with_date.html.erb
256
254
  - app/views/decidim/decidim_awesome/custom_fields/_form_render.html.erb
257
255
  - app/views/decidim/decidim_awesome/iframe_component/iframe/show.html.erb
258
256
  - app/views/decidim/decidim_awesome/map_component/map/_api_ready.html.erb
@@ -268,16 +266,17 @@ files:
268
266
  - app/views/layouts/decidim/decidim_awesome/_awesome_config.html.erb
269
267
  - app/views/layouts/decidim/decidim_awesome/_custom_styles.html.erb
270
268
  - app/views/layouts/decidim/decidim_awesome/_intergram_widget.html.erb
271
- - app/views/v0.25/decidim/proposals/collaborative_drafts/_show.html.erb
272
- - app/views/v0.25/layouts/decidim/_head.html.erb
273
- - app/views/v0.25/layouts/decidim/admin/_header.html.erb
274
269
  - app/views/v0.26/decidim/proposals/collaborative_drafts/_show.html.erb
275
270
  - app/views/v0.26/layouts/decidim/_head.html.erb
276
271
  - app/views/v0.26/layouts/decidim/admin/_header.html.erb
272
+ - app/views/v0.27/decidim/proposals/collaborative_drafts/_show.html.erb
273
+ - app/views/v0.27/layouts/decidim/_head.html.erb
274
+ - app/views/v0.27/layouts/decidim/admin/_header.html.erb
277
275
  - config/assets.rb
278
276
  - config/i18n-tasks.yml
279
277
  - config/locales/ca.yml
280
278
  - config/locales/cs.yml
279
+ - config/locales/de.yml
281
280
  - config/locales/en.yml
282
281
  - config/locales/es.yml
283
282
  - config/locales/eu.yml
@@ -320,6 +319,7 @@ files:
320
319
  - lib/decidim/decidim_awesome/test/initializer.rb
321
320
  - lib/decidim/decidim_awesome/test/layouts/decidim/_head.html.erb
322
321
  - lib/decidim/decidim_awesome/test/layouts/decidim/admin/_header.html.erb
322
+ - lib/decidim/decidim_awesome/test/shared_examples/action_log_presenter_examples.rb
323
323
  - lib/decidim/decidim_awesome/test/shared_examples/box_label_editor.rb
324
324
  - lib/decidim/decidim_awesome/test/shared_examples/config_examples.rb
325
325
  - lib/decidim/decidim_awesome/test/shared_examples/controller_examples.rb
@@ -333,10 +333,11 @@ files:
333
333
  - lib/tasks/decidim_awesome_active_storage_migrations_tasks.rake
334
334
  - lib/tasks/decidim_awesome_webpacker_tasks.rake
335
335
  - package.json
336
- homepage: https://github.com/platoniq/decidim-module-decidim_awesome
336
+ homepage: https://github.com/decidim-ice/decidim-module-decidim_awesome
337
337
  licenses:
338
338
  - AGPL-3.0
339
- metadata: {}
339
+ metadata:
340
+ rubygems_mfa_required: 'true'
340
341
  post_install_message:
341
342
  rdoc_options: []
342
343
  require_paths:
@@ -352,7 +353,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
352
353
  - !ruby/object:Gem::Version
353
354
  version: '0'
354
355
  requirements: []
355
- rubygems_version: 3.1.6
356
+ rubygems_version: 3.2.33
356
357
  signing_key:
357
358
  specification_version: 4
358
359
  summary: A decidim decidim_awesome module
@@ -1 +0,0 @@
1
- !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.ImageResize=e():t.ImageResize=e()}(this,function(){return function(t){function e(o){if(n[o])return n[o].exports;var r=n[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var n={};return e.m=t,e.c=n,e.i=function(t){return t},e.d=function(t,n,o){e.o(t,n)||Object.defineProperty(t,n,{configurable:!1,enumerable:!0,get:o})},e.n=function(t){var n=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(n,"a",n),n},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="",e(e.s=38)}([function(t,e){function n(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}t.exports=n},function(t,e,n){var o=n(22),r="object"==typeof self&&self&&self.Object===Object&&self,i=o||r||Function("return this")();t.exports=i},function(t,e){function n(t){return null!=t&&"object"==typeof t}t.exports=n},function(t,e,n){function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var o=t[e];this.set(o[0],o[1])}}var r=n(75),i=n(76),a=n(77),s=n(78),u=n(79);o.prototype.clear=r,o.prototype.delete=i,o.prototype.get=a,o.prototype.has=s,o.prototype.set=u,t.exports=o},function(t,e,n){function o(t,e){for(var n=t.length;n--;)if(r(t[n][0],e))return n;return-1}var r=n(8);t.exports=o},function(t,e,n){function o(t){return null==t?void 0===t?u:s:c&&c in Object(t)?i(t):a(t)}var r=n(16),i=n(64),a=n(87),s="[object Null]",u="[object Undefined]",c=r?r.toStringTag:void 0;t.exports=o},function(t,e,n){function o(t,e){var n=t.__data__;return r(e)?n["string"==typeof e?"string":"hash"]:n.map}var r=n(73);t.exports=o},function(t,e,n){var o=n(11),r=o(Object,"create");t.exports=r},function(t,e){function n(t,e){return t===e||t!==t&&e!==e}t.exports=n},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}n.d(e,"a",function(){return r});var r=function t(e){o(this,t),this.onCreate=function(){},this.onDestroy=function(){},this.onUpdate=function(){},this.overlay=e.overlay,this.img=e.img,this.options=e.options,this.requestUpdate=e.onUpdate}},function(t,e,n){function o(t,e,n){"__proto__"==e&&r?r(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n}var r=n(21);t.exports=o},function(t,e,n){function o(t,e){var n=i(t,e);return r(n)?n:void 0}var r=n(48),i=n(65);t.exports=o},function(t,e,n){function o(t){return null!=t&&i(t.length)&&!r(t)}var r=n(13),i=n(30);t.exports=o},function(t,e,n){function o(t){if(!i(t))return!1;var e=r(t);return e==s||e==u||e==a||e==c}var r=n(5),i=n(0),a="[object AsyncFunction]",s="[object Function]",u="[object GeneratorFunction]",c="[object Proxy]";t.exports=o},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e,n){var o=n(11),r=n(1),i=o(r,"Map");t.exports=i},function(t,e,n){var o=n(1),r=o.Symbol;t.exports=r},function(t,e){function n(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}t.exports=n},function(t,e,n){function o(t,e,n){(void 0===n||i(t[e],n))&&(void 0!==n||e in t)||r(t,e,n)}var r=n(10),i=n(8);t.exports=o},function(t,e,n){function o(t,e,n,l,f){t!==e&&a(e,function(a,c){if(u(a))f||(f=new r),s(t,e,c,n,o,l,f);else{var p=l?l(t[c],a,c+"",t,e,f):void 0;void 0===p&&(p=a),i(t,c,p)}},c)}var r=n(41),i=n(18),a=n(46),s=n(51),u=n(0),c=n(32);t.exports=o},function(t,e,n){function o(t,e){return a(i(t,e,r),t+"")}var r=n(26),i=n(89),a=n(90);t.exports=o},function(t,e,n){var o=n(11),r=function(){try{var t=o(Object,"defineProperty");return t({},"",{}),t}catch(t){}}();t.exports=r},function(t,e,n){(function(e){var n="object"==typeof e&&e&&e.Object===Object&&e;t.exports=n}).call(e,n(107))},function(t,e,n){var o=n(88),r=o(Object.getPrototypeOf,Object);t.exports=r},function(t,e){function n(t,e){return!!(e=null==e?o:e)&&("number"==typeof t||r.test(t))&&t>-1&&t%1==0&&t<e}var o=9007199254740991,r=/^(?:0|[1-9]\d*)$/;t.exports=n},function(t,e){function n(t){var e=t&&t.constructor;return t===("function"==typeof e&&e.prototype||o)}var o=Object.prototype;t.exports=n},function(t,e){function n(t){return t}t.exports=n},function(t,e,n){var o=n(47),r=n(2),i=Object.prototype,a=i.hasOwnProperty,s=i.propertyIsEnumerable,u=o(function(){return arguments}())?o:function(t){return r(t)&&a.call(t,"callee")&&!s.call(t,"callee")};t.exports=u},function(t,e){var n=Array.isArray;t.exports=n},function(t,e,n){(function(t){var o=n(1),r=n(102),i="object"==typeof e&&e&&!e.nodeType&&e,a=i&&"object"==typeof t&&t&&!t.nodeType&&t,s=a&&a.exports===i,u=s?o.Buffer:void 0,c=u?u.isBuffer:void 0,l=c||r;t.exports=l}).call(e,n(14)(t))},function(t,e){function n(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=o}var o=9007199254740991;t.exports=n},function(t,e,n){var o=n(49),r=n(54),i=n(86),a=i&&i.isTypedArray,s=a?r(a):o;t.exports=s},function(t,e,n){function o(t){return a(t)?r(t,!0):i(t)}var r=n(43),i=n(50),a=n(12);t.exports=o},function(t,e,n){"use strict";e.a={modules:["DisplaySize","Toolbar","Resize"],overlayStyles:{position:"absolute",boxSizing:"border-box",border:"1px dashed #444"},handleStyles:{position:"absolute",height:"12px",width:"12px",backgroundColor:"white",border:"1px solid #777",boxSizing:"border-box",opacity:"0.80"},displayStyles:{position:"absolute",font:"12px/1.0 Arial, Helvetica, sans-serif",padding:"4px 8px",textAlign:"center",backgroundColor:"white",color:"#333",border:"1px solid #777",boxSizing:"border-box",opacity:"0.80",cursor:"default"},toolbarStyles:{position:"absolute",top:"-12px",right:"0",left:"0",height:"0",minWidth:"100px",font:"12px/1.0 Arial, Helvetica, sans-serif",textAlign:"center",color:"#333",boxSizing:"border-box",cursor:"default"},toolbarButtonStyles:{display:"inline-block",width:"24px",height:"24px",background:"white",border:"1px solid #999",verticalAlign:"middle"},toolbarButtonSvgStyles:{fill:"#444",stroke:"#444",strokeWidth:"2"}}},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var a=n(9);n.d(e,"a",function(){return s});var s=function(t){function e(){var t,n,i,a;o(this,e);for(var s=arguments.length,u=Array(s),c=0;c<s;c++)u[c]=arguments[c];return n=i=r(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(u))),i.onCreate=function(){i.display=document.createElement("div"),Object.assign(i.display.style,i.options.displayStyles),i.overlay.appendChild(i.display)},i.onDestroy=function(){},i.onUpdate=function(){if(i.display&&i.img){var t=i.getCurrentSize();if(i.display.innerHTML=t.join(" &times; "),t[0]>120&&t[1]>30)Object.assign(i.display.style,{right:"4px",bottom:"4px",left:"auto"});else if("right"==i.img.style.float){var e=i.display.getBoundingClientRect();Object.assign(i.display.style,{right:"auto",bottom:"-"+(e.height+4)+"px",left:"-"+(e.width+4)+"px"})}else{var n=i.display.getBoundingClientRect();Object.assign(i.display.style,{right:"-"+(n.width+4)+"px",bottom:"-"+(n.height+4)+"px",left:"auto"})}}},i.getCurrentSize=function(){return[i.img.width,Math.round(i.img.width/i.img.naturalWidth*i.img.naturalHeight)]},a=n,r(i,a)}return i(e,t),e}(a.a)},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var a=n(9);n.d(e,"a",function(){return s});var s=function(t){function e(){var t,n,i,a;o(this,e);for(var s=arguments.length,u=Array(s),c=0;c<s;c++)u[c]=arguments[c];return n=i=r(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(u))),i.onCreate=function(){i.boxes=[],i.addBox("nwse-resize"),i.addBox("nesw-resize"),i.addBox("nwse-resize"),i.addBox("nesw-resize"),i.positionBoxes()},i.onDestroy=function(){i.setCursor("")},i.positionBoxes=function(){var t=-parseFloat(i.options.handleStyles.width)/2+"px",e=-parseFloat(i.options.handleStyles.height)/2+"px";[{left:t,top:e},{right:t,top:e},{right:t,bottom:e},{left:t,bottom:e}].forEach(function(t,e){Object.assign(i.boxes[e].style,t)})},i.addBox=function(t){var e=document.createElement("div");Object.assign(e.style,i.options.handleStyles),e.style.cursor=t,e.style.width=i.options.handleStyles.width+"px",e.style.height=i.options.handleStyles.height+"px",e.addEventListener("mousedown",i.handleMousedown,!1),i.overlay.appendChild(e),i.boxes.push(e)},i.handleMousedown=function(t){i.dragBox=t.target,i.dragStartX=t.clientX,i.preDragWidth=i.img.width||i.img.naturalWidth,i.setCursor(i.dragBox.style.cursor),document.addEventListener("mousemove",i.handleDrag,!1),document.addEventListener("mouseup",i.handleMouseup,!1)},i.handleMouseup=function(){i.setCursor(""),document.removeEventListener("mousemove",i.handleDrag),document.removeEventListener("mouseup",i.handleMouseup)},i.handleDrag=function(t){if(i.img){var e=t.clientX-i.dragStartX;i.dragBox===i.boxes[0]||i.dragBox===i.boxes[3]?i.img.width=Math.round(i.preDragWidth-e):i.img.width=Math.round(i.preDragWidth+e),i.requestUpdate()}},i.setCursor=function(t){[document.body,i.img].forEach(function(e){e.style.cursor=t})},a=n,r(i,a)}return i(e,t),e}(a.a)},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function i(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var a=n(105),s=n.n(a),u=n(104),c=n.n(u),l=n(106),f=n.n(l),p=n(9);n.d(e,"a",function(){return b});var d=window.Quill.imports.parchment,h=new d.Attributor.Style("float","float"),y=new d.Attributor.Style("margin","margin"),v=new d.Attributor.Style("display","display"),b=function(t){function e(){var t,n,i,a;o(this,e);for(var u=arguments.length,l=Array(u),p=0;p<u;p++)l[p]=arguments[p];return n=i=r(this,(t=e.__proto__||Object.getPrototypeOf(e)).call.apply(t,[this].concat(l))),i.onCreate=function(){i.toolbar=document.createElement("div"),Object.assign(i.toolbar.style,i.options.toolbarStyles),i.overlay.appendChild(i.toolbar),i._defineAlignments(),i._addToolbarButtons()},i.onDestroy=function(){},i.onUpdate=function(){},i._defineAlignments=function(){i.alignments=[{icon:s.a,apply:function(){v.add(i.img,"inline"),h.add(i.img,"left"),y.add(i.img,"0 1em 1em 0")},isApplied:function(){return"left"==h.value(i.img)}},{icon:c.a,apply:function(){v.add(i.img,"block"),h.remove(i.img),y.add(i.img,"auto")},isApplied:function(){return"auto"==y.value(i.img)}},{icon:f.a,apply:function(){v.add(i.img,"inline"),h.add(i.img,"right"),y.add(i.img,"0 0 1em 1em")},isApplied:function(){return"right"==h.value(i.img)}}]},i._addToolbarButtons=function(){var t=[];i.alignments.forEach(function(e,n){var o=document.createElement("span");t.push(o),o.innerHTML=e.icon,o.addEventListener("click",function(){t.forEach(function(t){return t.style.filter=""}),e.isApplied()?(h.remove(i.img),y.remove(i.img),v.remove(i.img)):(i._selectButton(o),e.apply()),i.requestUpdate()}),Object.assign(o.style,i.options.toolbarButtonStyles),n>0&&(o.style.borderLeftWidth="0"),Object.assign(o.children[0].style,i.options.toolbarButtonSvgStyles),e.isApplied()&&i._selectButton(o),i.toolbar.appendChild(o)})},i._selectButton=function(t){t.style.filter="invert(20%)"},a=n,r(i,a)}return i(e,t),e}(p.a)},function(t,e,n){var o=n(17),r=n(20),i=n(63),a=n(101),s=r(function(t){return t.push(void 0,i),o(a,void 0,t)});t.exports=s},function(t,e,n){"use strict";function o(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(e,"__esModule",{value:!0});var r=n(37),i=n.n(r),a=n(33),s=n(34),u=n(36),c=n(35),l={DisplaySize:s.a,Toolbar:u.a,Resize:c.a},f=function t(e){var n=this,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};o(this,t),this.initializeModules=function(){n.removeModules(),n.modules=n.moduleClasses.map(function(t){return new(l[t]||t)(n)}),n.modules.forEach(function(t){t.onCreate()}),n.onUpdate()},this.onUpdate=function(){n.repositionElements(),n.modules.forEach(function(t){t.onUpdate()})},this.removeModules=function(){n.modules.forEach(function(t){t.onDestroy()}),n.modules=[]},this.handleClick=function(t){if(t.target&&t.target.tagName&&"IMG"===t.target.tagName.toUpperCase()){if(n.img===t.target)return;n.img&&n.hide(),n.show(t.target)}else n.img&&n.hide()},this.show=function(t){n.img=t,n.showOverlay(),n.initializeModules()},this.showOverlay=function(){n.overlay&&n.hideOverlay(),n.quill.setSelection(null),n.setUserSelect("none"),document.addEventListener("keyup",n.checkImage,!0),n.quill.root.addEventListener("input",n.checkImage,!0),n.overlay=document.createElement("div"),Object.assign(n.overlay.style,n.options.overlayStyles),n.quill.root.parentNode.appendChild(n.overlay),n.repositionElements()},this.hideOverlay=function(){n.overlay&&(n.quill.root.parentNode.removeChild(n.overlay),n.overlay=void 0,document.removeEventListener("keyup",n.checkImage),n.quill.root.removeEventListener("input",n.checkImage),n.setUserSelect(""))},this.repositionElements=function(){if(n.overlay&&n.img){var t=n.quill.root.parentNode,e=n.img.getBoundingClientRect(),o=t.getBoundingClientRect();Object.assign(n.overlay.style,{left:e.left-o.left-1+t.scrollLeft+"px",top:e.top-o.top+t.scrollTop+"px",width:e.width+"px",height:e.height+"px"})}},this.hide=function(){n.hideOverlay(),n.removeModules(),n.img=void 0},this.setUserSelect=function(t){["userSelect","mozUserSelect","webkitUserSelect","msUserSelect"].forEach(function(e){n.quill.root.style[e]=t,document.documentElement.style[e]=t})},this.checkImage=function(t){n.img&&(46!=t.keyCode&&8!=t.keyCode||window.Quill.find(n.img).deleteAt(0),n.hide())},this.quill=e;var s=!1;r.modules&&(s=r.modules.slice()),this.options=i()({},r,a.a),s!==!1&&(this.options.modules=s),document.execCommand("enableObjectResizing",!1,"false"),this.quill.root.addEventListener("click",this.handleClick,!1),this.quill.root.parentNode.style.position=this.quill.root.parentNode.style.position||"relative",this.moduleClasses=this.options.modules,this.modules=[]};e.default=f,window.Quill&&window.Quill.register("modules/imageResize",f)},function(t,e,n){function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var o=t[e];this.set(o[0],o[1])}}var r=n(66),i=n(67),a=n(68),s=n(69),u=n(70);o.prototype.clear=r,o.prototype.delete=i,o.prototype.get=a,o.prototype.has=s,o.prototype.set=u,t.exports=o},function(t,e,n){function o(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var o=t[e];this.set(o[0],o[1])}}var r=n(80),i=n(81),a=n(82),s=n(83),u=n(84);o.prototype.clear=r,o.prototype.delete=i,o.prototype.get=a,o.prototype.has=s,o.prototype.set=u,t.exports=o},function(t,e,n){function o(t){var e=this.__data__=new r(t);this.size=e.size}var r=n(3),i=n(92),a=n(93),s=n(94),u=n(95),c=n(96);o.prototype.clear=i,o.prototype.delete=a,o.prototype.get=s,o.prototype.has=u,o.prototype.set=c,t.exports=o},function(t,e,n){var o=n(1),r=o.Uint8Array;t.exports=r},function(t,e,n){function o(t,e){var n=a(t),o=!n&&i(t),l=!n&&!o&&s(t),p=!n&&!o&&!l&&c(t),d=n||o||l||p,h=d?r(t.length,String):[],y=h.length;for(var v in t)!e&&!f.call(t,v)||d&&("length"==v||l&&("offset"==v||"parent"==v)||p&&("buffer"==v||"byteLength"==v||"byteOffset"==v)||u(v,y))||h.push(v);return h}var r=n(53),i=n(27),a=n(28),s=n(29),u=n(24),c=n(31),l=Object.prototype,f=l.hasOwnProperty;t.exports=o},function(t,e,n){function o(t,e,n){var o=t[e];s.call(t,e)&&i(o,n)&&(void 0!==n||e in t)||r(t,e,n)}var r=n(10),i=n(8),a=Object.prototype,s=a.hasOwnProperty;t.exports=o},function(t,e,n){var o=n(0),r=Object.create,i=function(){function t(){}return function(e){if(!o(e))return{};if(r)return r(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();t.exports=i},function(t,e,n){var o=n(62),r=o();t.exports=r},function(t,e,n){function o(t){return i(t)&&r(t)==a}var r=n(5),i=n(2),a="[object Arguments]";t.exports=o},function(t,e,n){function o(t){return!(!a(t)||i(t))&&(r(t)?d:u).test(s(t))}var r=n(13),i=n(74),a=n(0),s=n(97),u=/^\[object .+?Constructor\]$/,c=Function.prototype,l=Object.prototype,f=c.toString,p=l.hasOwnProperty,d=RegExp("^"+f.call(p).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");t.exports=o},function(t,e,n){function o(t){return a(t)&&i(t.length)&&!!s[r(t)]}var r=n(5),i=n(30),a=n(2),s={};s["[object Float32Array]"]=s["[object Float64Array]"]=s["[object Int8Array]"]=s["[object Int16Array]"]=s["[object Int32Array]"]=s["[object Uint8Array]"]=s["[object Uint8ClampedArray]"]=s["[object Uint16Array]"]=s["[object Uint32Array]"]=!0,s["[object Arguments]"]=s["[object Array]"]=s["[object ArrayBuffer]"]=s["[object Boolean]"]=s["[object DataView]"]=s["[object Date]"]=s["[object Error]"]=s["[object Function]"]=s["[object Map]"]=s["[object Number]"]=s["[object Object]"]=s["[object RegExp]"]=s["[object Set]"]=s["[object String]"]=s["[object WeakMap]"]=!1,t.exports=o},function(t,e,n){function o(t){if(!r(t))return a(t);var e=i(t),n=[];for(var o in t)("constructor"!=o||!e&&u.call(t,o))&&n.push(o);return n}var r=n(0),i=n(25),a=n(85),s=Object.prototype,u=s.hasOwnProperty;t.exports=o},function(t,e,n){function o(t,e,n,o,g,x,m){var _=t[n],j=e[n],w=m.get(j);if(w)return void r(t,n,w);var O=x?x(_,j,n+"",t,e,m):void 0,S=void 0===O;if(S){var E=l(j),A=!E&&p(j),z=!E&&!A&&v(j);O=j,E||A||z?l(_)?O=_:f(_)?O=s(_):A?(S=!1,O=i(j,!0)):z?(S=!1,O=a(j,!0)):O=[]:y(j)||c(j)?(O=_,c(_)?O=b(_):(!h(_)||o&&d(_))&&(O=u(j))):S=!1}S&&(m.set(j,O),g(O,j,o,x,m),m.delete(j)),r(t,n,O)}var r=n(18),i=n(56),a=n(57),s=n(58),u=n(71),c=n(27),l=n(28),f=n(99),p=n(29),d=n(13),h=n(0),y=n(100),v=n(31),b=n(103);t.exports=o},function(t,e,n){var o=n(98),r=n(21),i=n(26),a=r?function(t,e){return r(t,"toString",{configurable:!0,enumerable:!1,value:o(e),writable:!0})}:i;t.exports=a},function(t,e){function n(t,e){for(var n=-1,o=Array(t);++n<t;)o[n]=e(n);return o}t.exports=n},function(t,e){function n(t){return function(e){return t(e)}}t.exports=n},function(t,e,n){function o(t){var e=new t.constructor(t.byteLength);return new r(e).set(new r(t)),e}var r=n(42);t.exports=o},function(t,e,n){(function(t){function o(t,e){if(e)return t.slice();var n=t.length,o=c?c(n):new t.constructor(n);return t.copy(o),o}var r=n(1),i="object"==typeof e&&e&&!e.nodeType&&e,a=i&&"object"==typeof t&&t&&!t.nodeType&&t,s=a&&a.exports===i,u=s?r.Buffer:void 0,c=u?u.allocUnsafe:void 0;t.exports=o}).call(e,n(14)(t))},function(t,e,n){function o(t,e){var n=e?r(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}var r=n(55);t.exports=o},function(t,e){function n(t,e){var n=-1,o=t.length;for(e||(e=Array(o));++n<o;)e[n]=t[n];return e}t.exports=n},function(t,e,n){function o(t,e,n,o){var a=!n;n||(n={});for(var s=-1,u=e.length;++s<u;){var c=e[s],l=o?o(n[c],t[c],c,n,t):void 0;void 0===l&&(l=t[c]),a?i(n,c,l):r(n,c,l)}return n}var r=n(44),i=n(10);t.exports=o},function(t,e,n){var o=n(1),r=o["__core-js_shared__"];t.exports=r},function(t,e,n){function o(t){return r(function(e,n){var o=-1,r=n.length,a=r>1?n[r-1]:void 0,s=r>2?n[2]:void 0;for(a=t.length>3&&"function"==typeof a?(r--,a):void 0,s&&i(n[0],n[1],s)&&(a=r<3?void 0:a,r=1),e=Object(e);++o<r;){var u=n[o];u&&t(e,u,o,a)}return e})}var r=n(20),i=n(72);t.exports=o},function(t,e){function n(t){return function(e,n,o){for(var r=-1,i=Object(e),a=o(e),s=a.length;s--;){var u=a[t?s:++r];if(n(i[u],u,i)===!1)break}return e}}t.exports=n},function(t,e,n){function o(t,e,n,a,s,u){return i(t)&&i(e)&&(u.set(e,t),r(t,e,void 0,o,u),u.delete(e)),t}var r=n(19),i=n(0);t.exports=o},function(t,e,n){function o(t){var e=a.call(t,u),n=t[u];try{t[u]=void 0}catch(t){}var o=s.call(t);return e?t[u]=n:delete t[u],o}var r=n(16),i=Object.prototype,a=i.hasOwnProperty,s=i.toString,u=r?r.toStringTag:void 0;t.exports=o},function(t,e){function n(t,e){return null==t?void 0:t[e]}t.exports=n},function(t,e,n){function o(){this.__data__=r?r(null):{},this.size=0}var r=n(7);t.exports=o},function(t,e){function n(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e}t.exports=n},function(t,e,n){function o(t){var e=this.__data__;if(r){var n=e[t];return n===i?void 0:n}return s.call(e,t)?e[t]:void 0}var r=n(7),i="__lodash_hash_undefined__",a=Object.prototype,s=a.hasOwnProperty;t.exports=o},function(t,e,n){function o(t){var e=this.__data__;return r?void 0!==e[t]:a.call(e,t)}var r=n(7),i=Object.prototype,a=i.hasOwnProperty;t.exports=o},function(t,e,n){function o(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=r&&void 0===e?i:e,this}var r=n(7),i="__lodash_hash_undefined__";t.exports=o},function(t,e,n){function o(t){return"function"!=typeof t.constructor||a(t)?{}:r(i(t))}var r=n(45),i=n(23),a=n(25);t.exports=o},function(t,e,n){function o(t,e,n){if(!s(n))return!1;var o=typeof e;return!!("number"==o?i(n)&&a(e,n.length):"string"==o&&e in n)&&r(n[e],t)}var r=n(8),i=n(12),a=n(24),s=n(0);t.exports=o},function(t,e){function n(t){var e=typeof t;return"string"==e||"number"==e||"symbol"==e||"boolean"==e?"__proto__"!==t:null===t}t.exports=n},function(t,e,n){function o(t){return!!i&&i in t}var r=n(60),i=function(){var t=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return t?"Symbol(src)_1."+t:""}();t.exports=o},function(t,e){function n(){this.__data__=[],this.size=0}t.exports=n},function(t,e,n){function o(t){var e=this.__data__,n=r(e,t);return!(n<0)&&(n==e.length-1?e.pop():a.call(e,n,1),--this.size,!0)}var r=n(4),i=Array.prototype,a=i.splice;t.exports=o},function(t,e,n){function o(t){var e=this.__data__,n=r(e,t);return n<0?void 0:e[n][1]}var r=n(4);t.exports=o},function(t,e,n){function o(t){return r(this.__data__,t)>-1}var r=n(4);t.exports=o},function(t,e,n){function o(t,e){var n=this.__data__,o=r(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this}var r=n(4);t.exports=o},function(t,e,n){function o(){this.size=0,this.__data__={hash:new r,map:new(a||i),string:new r}}var r=n(39),i=n(3),a=n(15);t.exports=o},function(t,e,n){function o(t){var e=r(this,t).delete(t);return this.size-=e?1:0,e}var r=n(6);t.exports=o},function(t,e,n){function o(t){return r(this,t).get(t)}var r=n(6);t.exports=o},function(t,e,n){function o(t){return r(this,t).has(t)}var r=n(6);t.exports=o},function(t,e,n){function o(t,e){var n=r(this,t),o=n.size;return n.set(t,e),this.size+=n.size==o?0:1,this}var r=n(6);t.exports=o},function(t,e){function n(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e}t.exports=n},function(t,e,n){(function(t){var o=n(22),r="object"==typeof e&&e&&!e.nodeType&&e,i=r&&"object"==typeof t&&t&&!t.nodeType&&t,a=i&&i.exports===r,s=a&&o.process,u=function(){try{return s&&s.binding&&s.binding("util")}catch(t){}}();t.exports=u}).call(e,n(14)(t))},function(t,e){function n(t){return r.call(t)}var o=Object.prototype,r=o.toString;t.exports=n},function(t,e){function n(t,e){return function(n){return t(e(n))}}t.exports=n},function(t,e,n){function o(t,e,n){return e=i(void 0===e?t.length-1:e,0),function(){for(var o=arguments,a=-1,s=i(o.length-e,0),u=Array(s);++a<s;)u[a]=o[e+a];a=-1;for(var c=Array(e+1);++a<e;)c[a]=o[a];return c[e]=n(u),r(t,this,c)}}var r=n(17),i=Math.max;t.exports=o},function(t,e,n){var o=n(52),r=n(91),i=r(o);t.exports=i},function(t,e){function n(t){var e=0,n=0;return function(){var a=i(),s=r-(a-n);if(n=a,s>0){if(++e>=o)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}var o=800,r=16,i=Date.now;t.exports=n},function(t,e,n){function o(){this.__data__=new r,this.size=0}var r=n(3);t.exports=o},function(t,e){function n(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n}t.exports=n},function(t,e){function n(t){return this.__data__.get(t)}t.exports=n},function(t,e){function n(t){return this.__data__.has(t)}t.exports=n},function(t,e,n){function o(t,e){var n=this.__data__;if(n instanceof r){var o=n.__data__;if(!i||o.length<s-1)return o.push([t,e]),this.size=++n.size,this;n=this.__data__=new a(o)}return n.set(t,e),this.size=n.size,this}var r=n(3),i=n(15),a=n(40),s=200;t.exports=o},function(t,e){function n(t){if(null!=t){try{return r.call(t)}catch(t){}try{return t+""}catch(t){}}return""}var o=Function.prototype,r=o.toString;t.exports=n},function(t,e){function n(t){return function(){return t}}t.exports=n},function(t,e,n){function o(t){return i(t)&&r(t)}var r=n(12),i=n(2);t.exports=o},function(t,e,n){function o(t){if(!a(t)||r(t)!=s)return!1;var e=i(t);if(null===e)return!0;var n=f.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&l.call(n)==p}var r=n(5),i=n(23),a=n(2),s="[object Object]",u=Function.prototype,c=Object.prototype,l=u.toString,f=c.hasOwnProperty,p=l.call(Object);t.exports=o},function(t,e,n){var o=n(19),r=n(61),i=r(function(t,e,n,r){o(t,e,n,r)});t.exports=i},function(t,e){function n(){return!1}t.exports=n},function(t,e,n){function o(t){return r(t,i(t))}var r=n(59),i=n(32);t.exports=o},function(t,e){t.exports='<svg viewbox="0 0 18 18">\n <line class="ql-stroke" x1="15" x2="3" y1="9" y2="9"></line>\n <line class="ql-stroke" x1="14" x2="4" y1="14" y2="14"></line>\n <line class="ql-stroke" x1="12" x2="6" y1="4" y2="4"></line>\n</svg>'},function(t,e){t.exports='<svg viewbox="0 0 18 18">\n <line class="ql-stroke" x1="3" x2="15" y1="9" y2="9"></line>\n <line class="ql-stroke" x1="3" x2="13" y1="14" y2="14"></line>\n <line class="ql-stroke" x1="3" x2="9" y1="4" y2="4"></line>\n</svg>'},function(t,e){t.exports='<svg viewbox="0 0 18 18">\n <line class="ql-stroke" x1="15" x2="3" y1="9" y2="9"></line>\n <line class="ql-stroke" x1="15" x2="5" y1="14" y2="14"></line>\n <line class="ql-stroke" x1="15" x2="9" y1="4" y2="4"></line>\n</svg>'},function(t,e){var n;n=function(){return this}();try{n=n||Function("return this")()||(0,eval)("this")}catch(t){"object"==typeof window&&(n=window)}t.exports=n}])});
@@ -1,6 +0,0 @@
1
- /* Origin: https://github.com/Platoniq/quill-image-upload */
2
- (function () {
3
- var exports = {};
4
- "use strict";Object.defineProperty(exports,"__esModule",{value:true});var _createClass=function(){function e(e,t){for(var a=0;a<t.length;a++){var i=t[a];i.enumerable=i.enumerable||false;i.configurable=true;if("value"in i)i.writable=true;Object.defineProperty(e,i.key,i)}}return function(t,a,i){if(a)e(t.prototype,a);if(i)e(t,i);return t}}();function _classCallCheck(e,t){if(!(e instanceof t)){throw new TypeError("Cannot call a class as a function")}}var ImageUpload=exports.ImageUpload=function(){function e(t){var a=arguments.length>1&&arguments[1]!==undefined?arguments[1]:{};_classCallCheck(this,e);this.quill=t;this.options=a;this.quill.getModule("toolbar").addHandler("image",this.selectLocalImage.bind(this));this.handleDrop=this.handleDrop.bind(this);this.handlePaste=this.handlePaste.bind(this);this.quill.root.addEventListener("drop",this.handleDrop,false);this.quill.root.addEventListener("paste",this.handlePaste,false)}_createClass(e,[{key:"selectLocalImage",value:function e(){var t=this;var a=document.createElement("input");a.setAttribute("type","file");a.click();a.onchange=function(){var e=a.files[0];if(/^image\//.test(e.type)){var i=t.options.checkBeforeSend||t.checkBeforeSend.bind(t);i(e,t.sendToServer.bind(t))}else{console.warn("You could only upload images.")}}}},{key:"checkBeforeSend",value:function e(t,a){a(t)}},{key:"sendToServer",value:function e(t){var a=this;if(this.options.customUploader){this.options.customUploader(t,function(e){a.insert(e)})}else{var i=this.options.url,n=this.options.method||"POST",s=this.options.name||"image",o=this.options.headers||{},r=this.options.callbackOK||this.uploadImageCallbackOK.bind(this),l=this.options.callbackKO||this.uploadImageCallbackKO.bind(this);if(i){var d=new FormData;d.append(s,t);if(this.options.csrf){d.append(this.options.csrf.token,this.options.csrf.hash)}var c=new XMLHttpRequest;c.open(n,i,true);for(var u in o){c.setRequestHeader(u,o[u])}c.onload=function(){if(c.status===200){r(JSON.parse(c.responseText),a.insert.bind(a))}else{l({code:c.status,type:c.statusText,body:c.responseText})}};if(this.options.withCredentials){c.withCredentials=true}c.send(d)}else{var f=new FileReader;f.onload=function(e){r(e.target.result,a.insert.bind(a))};f.readAsDataURL(t)}}}},{key:"handleDrop",value:function e(t){t.preventDefault();if(t.dataTransfer&&t.dataTransfer.files&&t.dataTransfer.files.length){if(document.caretRangeFromPoint){var a=document.getSelection();var i=document.caretRangeFromPoint(t.clientX,t.clientY);if(a&&i){a.setBaseAndExtent(i.startContainer,i.startOffset,i.startContainer,i.startOffset)}}this.readFiles(t.dataTransfer.files,this.sendToServer.bind(this))}}},{key:"handlePaste",value:function e(t){var a=this;var i=Quill.import("delta");if(t.clipboardData&&t.clipboardData.items&&t.clipboardData.items.length){this.readFiles(t.clipboardData.items,function(e){var t=a.quill.getSelection();if(t){a.quill.updateContents((new i).retain(t.index-1).delete(1))}setTimeout(function(){return a.sendToServer(e.getAsFile())},0)})}}},{key:"readFiles",value:function e(t,a){var i=this;[].forEach.call(t,function(e){if(!/^image\//.test(e.type)){return}var t=new FileReader;t.onload=function(t){var n=i.options.checkBeforeSend||i.checkBeforeSend.bind(i);n(e,a)};var n=e.getAsFile?e.getAsFile():e;if(n instanceof Blob){t.readAsDataURL(n)}})}},{key:"insert",value:function e(t){var a=(this.quill.getSelection()||{}).index||this.quill.getLength();this.quill.insertEmbed(a,"image",t,"user")}},{key:"uploadImageCallbackOK",value:function e(t,a){a(t)}},{key:"uploadImageCallbackKO",value:function e(t){alert(t)}}]);return e}();
5
- window.Quill.register('modules/imageUpload', exports.ImageUpload);
6
- })();