alchemy-crop-image 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (36) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +12 -0
  3. data/.ruby-gemset +1 -0
  4. data/.ruby-version +1 -0
  5. data/Gemfile +15 -0
  6. data/Gemfile.lock +289 -0
  7. data/MIT-LICENSE +20 -0
  8. data/README.md +37 -0
  9. data/Rakefile +32 -0
  10. data/alchemy-crop-image.gemspec +42 -0
  11. data/app/assets/config/alchemy_crop_image_manifest.js +2 -0
  12. data/app/assets/images/alchemy/crop/image/.keep +0 -0
  13. data/app/assets/javascripts/alchemy/crop/image/application.js +4 -0
  14. data/app/assets/javascripts/alchemy/crop/image/cropping.js +277 -0
  15. data/app/assets/javascripts/alchemy/crop/image/routes.js.erb +1 -0
  16. data/app/assets/stylesheets/alchemy/crop/image/application.scss +17 -0
  17. data/app/assets/stylesheets/alchemy/crop/image/cropping.scss +144 -0
  18. data/app/controllers/alchemy/admin/pictures/crops_controller.rb +46 -0
  19. data/app/helpers/alchemy/crop/image/application_helper.rb +8 -0
  20. data/app/jobs/alchemy/crop/image/application_job.rb +8 -0
  21. data/app/mailers/alchemy/crop/image/application_mailer.rb +10 -0
  22. data/app/views/alchemy/admin/pictures/_cropping.html.erb +93 -0
  23. data/app/views/alchemy/admin/pictures/show.html.erb +44 -0
  24. data/app/views/layouts/alchemy/crop/image/application.html.erb +15 -0
  25. data/bin/rails +14 -0
  26. data/config/initializers/assets.rb +1 -0
  27. data/config/locales/en.yml +30 -0
  28. data/config/locales/it.yml +30 -0
  29. data/config/routes.rb +13 -0
  30. data/lib/alchemy/crop/image/configuration.rb +23 -0
  31. data/lib/alchemy/crop/image/engine.rb +13 -0
  32. data/lib/alchemy/crop/image/version.rb +7 -0
  33. data/lib/alchemy/crop/image.rb +9 -0
  34. data/lib/generators/alchemy/crop/image/install_generator.rb +26 -0
  35. data/lib/tasks/alchemy/crop/image_tasks.rake +4 -0
  36. metadata +203 -0
@@ -0,0 +1,30 @@
1
+ en:
2
+ alchemy:
3
+ alchemy_crop_image:
4
+ enable_cropping: "Enable editing"
5
+ cancel: "Cancel"
6
+ save_crop: "Save as new Image"
7
+
8
+ cropping_actions:
9
+ move_image: "Move image"
10
+ crop_image: "Crop image"
11
+
12
+ height_crop: Height
13
+ width_crop: Width
14
+
15
+ you_can_select_a_preset_ratio_for_cropping: You can select a cropping box's preset ratio.
16
+ preset_crop_ratio_none: None
17
+
18
+ cropped_image_not_saved: Cropped image not saved
19
+ cropped_image_succesfully_save: Cropped image saved succesfully
20
+
21
+ button_labels:
22
+ label_preview_image: Preview Image
23
+ label_crop_preset_none: No crop box preset
24
+ label_crop_preset: "Crop-box preset: %{preset}"
25
+ label_zoom_out: Zoom Out
26
+ label_zoom_in: Zoom In
27
+ label_drag_image: Drag Image
28
+
29
+
30
+
@@ -0,0 +1,30 @@
1
+ it:
2
+ alchemy:
3
+ alchemy_crop_image:
4
+ enable_cropping: "Modifica"
5
+ cancel: "Annulla"
6
+ save_crop: "Salva nuova immagine"
7
+
8
+ cropping_actions:
9
+ move_image: "Trascina immagine"
10
+ crop_image: "Ritaglia immagine"
11
+
12
+ height_crop: Altezza
13
+ width_crop: Larghezza
14
+
15
+ you_can_select_a_preset_ratio_for_cropping: Puoi selezionare un rapporto predefinito per il riquadro di ritaglio.
16
+ preset_crop_ratio_none: Nessuno
17
+
18
+ cropped_image_not_saved: Immagine non salvata
19
+ cropped_image_succesfully_save: Immagine salvata correttamente
20
+
21
+ button_labels:
22
+ label_preview_image: Visualizza immagine
23
+ label_crop_preset_none: Nessun riquadro preselezionato
24
+ label_crop_preset: "Riquadro preselezionato: %{preset}"
25
+ label_zoom_out: Zoom -
26
+ label_zoom_in: Zoom +
27
+ label_drag_image: Trascina immagine
28
+
29
+
30
+
data/config/routes.rb ADDED
@@ -0,0 +1,13 @@
1
+ Rails.application.routes.draw do
2
+
3
+
4
+ namespace :alchemy do
5
+ namespace :admin do
6
+ resources :pictures do
7
+ resource :crop, module: :pictures, only: :create
8
+ end
9
+ end
10
+ end
11
+
12
+
13
+ end
@@ -0,0 +1,23 @@
1
+ module Alchemy
2
+ module Crop
3
+ module Image
4
+ class Configuration
5
+
6
+ cattr_accessor :available_preset_cropbox
7
+ @@available_preset_cropbox = [
8
+ {
9
+ value: 16.0 / 9.0,
10
+ label: "16:9"
11
+ },
12
+ {
13
+ value: (4.0 / 3.0),
14
+ label: "4:3"
15
+ }]
16
+
17
+ def self.set
18
+ yield self
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,13 @@
1
+ require "alchemy_cms"
2
+ require "js-routes"
3
+ require_relative "./configuration"
4
+ module Alchemy
5
+ module Crop
6
+ module Image
7
+ class Engine < ::Rails::Engine
8
+ #isolate_namespace Alchemy::Crop::Image
9
+
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ module Alchemy
2
+ module Crop
3
+ module Image
4
+ VERSION = '0.1.0'
5
+ end
6
+ end
7
+ end
@@ -0,0 +1,9 @@
1
+ require "alchemy/crop/image/engine"
2
+
3
+ module Alchemy
4
+ module Crop
5
+ module Image
6
+ # Your code goes here...
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,26 @@
1
+ class Alchemy::Crop::Image::InstallGenerator < Rails::Generators::Base
2
+
3
+
4
+ desc "Add yarn needed packages"
5
+
6
+ def run_yarn_add
7
+ run("yarn add cropperjs@1.5.6")
8
+ end
9
+
10
+
11
+ desc "Add required assets"
12
+
13
+ def add_required_assets
14
+
15
+ inject_into_file "vendor/assets/javascripts/alchemy/admin/all.js", after: '//= require alchemy/admin' do
16
+ "\n//= require alchemy/crop/image/application\n"
17
+ end
18
+
19
+ inject_into_file "vendor/assets/stylesheets/alchemy/admin/all.css", after: ' *= require alchemy/admin' do
20
+ "\n *= require alchemy/crop/image/application\n"
21
+ end
22
+
23
+ end
24
+
25
+
26
+ end
@@ -0,0 +1,4 @@
1
+ # desc "Explaining what the task does"
2
+ # task :alchemy_crop_image do
3
+ # # Task goes here
4
+ # end
metadata ADDED
@@ -0,0 +1,203 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: alchemy-crop-image
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Alessandro Baccanelli
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2022-04-06 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rails
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 5.2.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: 7.0.0
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 5.2.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: 7.0.0
33
+ - !ruby/object:Gem::Dependency
34
+ name: alchemy_cms
35
+ requirement: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '4.1'
40
+ type: :runtime
41
+ prerelease: false
42
+ version_requirements: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '4.1'
47
+ - !ruby/object:Gem::Dependency
48
+ name: sprockets-rails
49
+ requirement: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 2.0.0
54
+ type: :runtime
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 2.0.0
61
+ - !ruby/object:Gem::Dependency
62
+ name: js-routes
63
+ requirement: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - "~>"
66
+ - !ruby/object:Gem::Version
67
+ version: '1.4'
68
+ - - ">="
69
+ - !ruby/object:Gem::Version
70
+ version: 1.4.9
71
+ type: :runtime
72
+ prerelease: false
73
+ version_requirements: !ruby/object:Gem::Requirement
74
+ requirements:
75
+ - - "~>"
76
+ - !ruby/object:Gem::Version
77
+ version: '1.4'
78
+ - - ">="
79
+ - !ruby/object:Gem::Version
80
+ version: 1.4.9
81
+ - !ruby/object:Gem::Dependency
82
+ name: sqlite3
83
+ requirement: !ruby/object:Gem::Requirement
84
+ requirements:
85
+ - - ">="
86
+ - !ruby/object:Gem::Version
87
+ version: '0'
88
+ type: :development
89
+ prerelease: false
90
+ version_requirements: !ruby/object:Gem::Requirement
91
+ requirements:
92
+ - - ">="
93
+ - !ruby/object:Gem::Version
94
+ version: '0'
95
+ - !ruby/object:Gem::Dependency
96
+ name: alchemy-devise
97
+ requirement: !ruby/object:Gem::Requirement
98
+ requirements:
99
+ - - "~>"
100
+ - !ruby/object:Gem::Version
101
+ version: '4.5'
102
+ type: :development
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ requirements:
106
+ - - "~>"
107
+ - !ruby/object:Gem::Version
108
+ version: '4.5'
109
+ - !ruby/object:Gem::Dependency
110
+ name: puma
111
+ requirement: !ruby/object:Gem::Requirement
112
+ requirements:
113
+ - - "~>"
114
+ - !ruby/object:Gem::Version
115
+ version: '3.11'
116
+ type: :development
117
+ prerelease: false
118
+ version_requirements: !ruby/object:Gem::Requirement
119
+ requirements:
120
+ - - "~>"
121
+ - !ruby/object:Gem::Version
122
+ version: '3.11'
123
+ - !ruby/object:Gem::Dependency
124
+ name: webpacker
125
+ requirement: !ruby/object:Gem::Requirement
126
+ requirements:
127
+ - - "~>"
128
+ - !ruby/object:Gem::Version
129
+ version: '4.0'
130
+ type: :development
131
+ prerelease: false
132
+ version_requirements: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - "~>"
135
+ - !ruby/object:Gem::Version
136
+ version: '4.0'
137
+ description: With this gem you can crop and resize images directly in Alchemy Library
138
+ and create a new verison of image
139
+ email:
140
+ - alessandro.baccanelli@archimedianet.it
141
+ executables: []
142
+ extensions: []
143
+ extra_rdoc_files: []
144
+ files:
145
+ - ".gitignore"
146
+ - ".ruby-gemset"
147
+ - ".ruby-version"
148
+ - Gemfile
149
+ - Gemfile.lock
150
+ - MIT-LICENSE
151
+ - README.md
152
+ - Rakefile
153
+ - alchemy-crop-image.gemspec
154
+ - app/assets/config/alchemy_crop_image_manifest.js
155
+ - app/assets/images/alchemy/crop/image/.keep
156
+ - app/assets/javascripts/alchemy/crop/image/application.js
157
+ - app/assets/javascripts/alchemy/crop/image/cropping.js
158
+ - app/assets/javascripts/alchemy/crop/image/routes.js.erb
159
+ - app/assets/stylesheets/alchemy/crop/image/application.scss
160
+ - app/assets/stylesheets/alchemy/crop/image/cropping.scss
161
+ - app/controllers/alchemy/admin/pictures/crops_controller.rb
162
+ - app/helpers/alchemy/crop/image/application_helper.rb
163
+ - app/jobs/alchemy/crop/image/application_job.rb
164
+ - app/mailers/alchemy/crop/image/application_mailer.rb
165
+ - app/views/alchemy/admin/pictures/_cropping.html.erb
166
+ - app/views/alchemy/admin/pictures/show.html.erb
167
+ - app/views/layouts/alchemy/crop/image/application.html.erb
168
+ - bin/rails
169
+ - config/initializers/assets.rb
170
+ - config/locales/en.yml
171
+ - config/locales/it.yml
172
+ - config/routes.rb
173
+ - lib/alchemy/crop/image.rb
174
+ - lib/alchemy/crop/image/configuration.rb
175
+ - lib/alchemy/crop/image/engine.rb
176
+ - lib/alchemy/crop/image/version.rb
177
+ - lib/generators/alchemy/crop/image/install_generator.rb
178
+ - lib/tasks/alchemy/crop/image_tasks.rake
179
+ homepage: https://github.com/ArchimediaZerogroup/alchemy-crop-image
180
+ licenses:
181
+ - MIT
182
+ metadata:
183
+ allowed_push_host: https://rubygems.org/
184
+ post_install_message:
185
+ rdoc_options: []
186
+ require_paths:
187
+ - lib
188
+ required_ruby_version: !ruby/object:Gem::Requirement
189
+ requirements:
190
+ - - ">="
191
+ - !ruby/object:Gem::Version
192
+ version: '0'
193
+ required_rubygems_version: !ruby/object:Gem::Requirement
194
+ requirements:
195
+ - - ">="
196
+ - !ruby/object:Gem::Version
197
+ version: '0'
198
+ requirements: []
199
+ rubygems_version: 3.1.2
200
+ signing_key:
201
+ specification_version: 4
202
+ summary: A gem for enable image cropping in Alchemy Library
203
+ test_files: []