beyond_canvas 0.15.3.pre → 0.18.0.pre
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +0 -6
- data/Rakefile +3 -3
- data/app/assets/config/beyond_canvas_manifest.js +1 -0
- data/app/assets/images/icons/arrow_right.svg +1 -0
- data/app/assets/images/icons/close.svg +1 -0
- data/app/assets/images/icons/home.svg +1 -0
- data/app/assets/javascripts/beyond_canvas/base.js +120 -246
- data/app/assets/stylesheets/beyond_canvas/base.scss +10 -1
- data/app/assets/stylesheets/beyond_canvas/components/_action_bar.scss +28 -0
- data/app/assets/stylesheets/beyond_canvas/components/_breadcrumbs.scss +29 -0
- data/app/assets/stylesheets/beyond_canvas/components/_buttons.scss +1 -1
- data/app/assets/stylesheets/beyond_canvas/components/_debug.scss +10 -0
- data/app/assets/stylesheets/beyond_canvas/components/_forms.scss +11 -14
- data/app/assets/stylesheets/beyond_canvas/components/_grids.scss +12 -0
- data/app/assets/stylesheets/beyond_canvas/components/_main.scss +12 -13
- data/app/assets/stylesheets/beyond_canvas/components/_margins.scss +8 -0
- data/app/assets/stylesheets/beyond_canvas/components/_menu.scss +40 -0
- data/app/assets/stylesheets/beyond_canvas/components/_modals.scss +35 -0
- data/app/assets/stylesheets/beyond_canvas/components/_scrollbox.scss +35 -0
- data/app/assets/stylesheets/beyond_canvas/components/_sidebar.scss +53 -0
- data/app/assets/stylesheets/beyond_canvas/components/_titles.scss +7 -0
- data/app/assets/stylesheets/beyond_canvas/settings/_breakpoints.scss +6 -6
- data/app/assets/stylesheets/beyond_canvas/settings/_variables.scss +77 -22
- data/app/controllers/beyond_canvas/application_controller.rb +2 -0
- data/app/controllers/beyond_canvas/authentications_controller.rb +69 -0
- data/app/controllers/concerns/beyond_canvas/authentication.rb +13 -0
- data/app/controllers/concerns/beyond_canvas/locale_management.rb +5 -4
- data/app/helpers/beyond_canvas/authentications_helper.rb +28 -0
- data/app/helpers/beyond_canvas/cockpit_app_helper.rb +17 -0
- data/app/helpers/beyond_canvas/debug_helper.rb +9 -0
- data/app/helpers/beyond_canvas/locale_switch_helper.rb +5 -1
- data/app/javascript/beyond_canvas/base.js +3 -0
- data/app/javascript/beyond_canvas/initializers/buttons.js +65 -19
- data/app/javascript/beyond_canvas/initializers/flash.js +9 -2
- data/app/javascript/beyond_canvas/initializers/inputs.js +4 -1
- data/app/javascript/beyond_canvas/initializers/modals.js +14 -0
- data/app/views/beyond_canvas/authentications/new.html.erb +27 -0
- data/app/views/beyond_canvas/shared/_action_bar.html.erb +15 -0
- data/app/views/beyond_canvas/shared/_breadcrumbs.html.erb +14 -0
- data/app/views/beyond_canvas/shared/_flash.html.erb +22 -12
- data/app/views/beyond_canvas/shared/_locales.html.erb +8 -0
- data/app/views/beyond_canvas/shared/_menu.html.erb +31 -0
- data/app/views/beyond_canvas/shared/_modal.html.erb +6 -0
- data/app/views/beyond_canvas/shared/_sidebar.html.erb +16 -0
- data/app/views/layouts/beyond_canvas/application.html.erb +31 -0
- data/app/views/layouts/beyond_canvas/public.html.erb +10 -1
- data/config/locales/en.yml +9 -0
- data/config/routes.rb +8 -1
- data/lib/beyond_canvas.rb +18 -2
- data/lib/beyond_canvas/configuration.rb +11 -3
- data/lib/beyond_canvas/engine.rb +6 -0
- data/lib/beyond_canvas/menu_item_registration.rb +19 -0
- data/lib/beyond_canvas/parameter_sanitizer.rb +43 -0
- data/lib/beyond_canvas/rails/routes.rb +22 -0
- data/lib/beyond_canvas/version.rb +1 -1
- data/lib/generators/beyond_canvas/controller/controller_generator.rb +19 -0
- data/lib/generators/beyond_canvas/controller/templates/controller.erb +20 -0
- data/lib/generators/beyond_canvas/custom_menu/custom_menu_generator.rb +13 -0
- data/lib/generators/beyond_canvas/custom_menu/templates/beyond_canvas_custom_menu.html.erb +32 -0
- data/lib/generators/beyond_canvas/custom_styles/custom_styles_generator.rb +1 -1
- data/lib/generators/beyond_canvas/custom_styles/templates/beyond_canvas_custom_styles.scss +199 -0
- data/lib/generators/beyond_canvas/install/install_generator.rb +13 -5
- data/lib/generators/beyond_canvas/install/templates/beyond_canvas.rb.erb +55 -6
- data/lib/generators/beyond_canvas/model/model_generator.rb +49 -0
- data/lib/generators/beyond_canvas/model/templates/migration.erb +18 -0
- data/lib/generators/beyond_canvas/model/templates/model.erb +5 -0
- data/lib/generators/beyond_canvas/views/views_generator.rb +17 -0
- data/lib/models/concerns/authentication.rb +57 -0
- data/lib/models/concerns/utils.rb +79 -0
- data/lib/models/shop.rb +12 -0
- metadata +97 -12
- data/app/javascript/beyond_canvas/initializers/functions.js +0 -41
- data/app/views/beyond_canvas/locales/_edit.html.erb +0 -8
- data/lib/generators/beyond_canvas/custom_styles/templates/beyond_canvas_custom_styles.sass +0 -123
@@ -15,10 +15,6 @@ module BeyondCanvas
|
|
15
15
|
template 'beyond_canvas.rb.erb', 'config/initializers/beyond_canvas.rb'
|
16
16
|
end
|
17
17
|
|
18
|
-
def setup_routes
|
19
|
-
route "mount BeyondCanvas::Engine => '/'"
|
20
|
-
end
|
21
|
-
|
22
18
|
def create_assets
|
23
19
|
if options[:skip_webpacker]
|
24
20
|
generate 'beyond_canvas:assets'
|
@@ -28,7 +24,19 @@ module BeyondCanvas
|
|
28
24
|
end
|
29
25
|
|
30
26
|
def install_beyond_api
|
31
|
-
generate 'beyond_api
|
27
|
+
generate 'beyond_canvas:beyond_api'
|
28
|
+
end
|
29
|
+
|
30
|
+
def generate_model
|
31
|
+
generate 'beyond_canvas:model shop'
|
32
|
+
end
|
33
|
+
|
34
|
+
def setup_routes
|
35
|
+
route 'beyond_canvas_routes'
|
36
|
+
end
|
37
|
+
|
38
|
+
def copy_locale
|
39
|
+
copy_file '../../../../../config/locales/en.yml', 'config/locales/beyond_canvas.en.yml'
|
32
40
|
end
|
33
41
|
end
|
34
42
|
end
|
@@ -1,9 +1,41 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
BeyondCanvas.setup do |config|
|
4
|
+
# Carefully read and fill this configuration file.
|
5
|
+
#
|
6
|
+
# All uncommented configuration parameters are necessary for proper operation
|
7
|
+
# of Beyond Canvas.
|
8
|
+
|
9
|
+
# ==> Engine configuration
|
10
|
+
|
11
|
+
# Set the namespace where the Engine is going to be mounted.
|
12
|
+
#
|
13
|
+
# config.namespace = '/'
|
14
|
+
|
15
|
+
# Set the url or path where a shop is going to be redirected after a
|
16
|
+
# succesful authentication.
|
17
|
+
#
|
18
|
+
config.open_app_url = nil
|
19
|
+
|
20
|
+
# Set if your app ig going to run as a cockpit app. If you are not sure about
|
21
|
+
# this, please contact apps@epages.com.
|
22
|
+
#
|
23
|
+
# config.cockpit_app = false
|
24
|
+
|
25
|
+
# Set if your app is going to be preinstalled on packages. If you are not sure
|
26
|
+
# about this, please contact apps@epages.com.
|
27
|
+
#
|
28
|
+
# config.preinstalled = false
|
29
|
+
|
30
|
+
# Set if you want to enable the available debug mode Beyond Canvas offers.
|
31
|
+
# This options displays a parameter debug as well as some custom Beyond Canvas
|
32
|
+
# logs.
|
33
|
+
#
|
34
|
+
# config.debug_mode = false
|
35
|
+
|
4
36
|
# ==> Site configuration
|
5
37
|
|
6
|
-
# Set the title that is displayed on the main layout
|
38
|
+
# Set the title that is displayed on the main layout.
|
7
39
|
#
|
8
40
|
config.site_title = '<%= Rails.application.class.name.split("::").first.humanize %>'
|
9
41
|
|
@@ -17,24 +49,41 @@ BeyondCanvas.setup do |config|
|
|
17
49
|
#
|
18
50
|
# config.favicon = 'favicon.ico'
|
19
51
|
|
52
|
+
# Set the menu items that will be displayed on the top of your app.
|
53
|
+
# It accepts 3 parameters:
|
54
|
+
# 1. name: the text displayed on the link tag. Supports any string or an I18n compatible path.
|
55
|
+
# 2. url: the href of the link tag. Supports any string or a symbolized route.
|
56
|
+
# 3. options: any html attributes that will be added to the link tag.
|
57
|
+
# You can also run `rails g beyond_canvas:custom_menu` to generate a menu template you can override.
|
58
|
+
# See examples:
|
59
|
+
#
|
60
|
+
# config.register_menu_item 'Contact', '/contact/, class: 'contact'
|
61
|
+
# config.register_menu_item 'menu_item.about_us', :root_path, class: 'about-us', id: 'about-us'
|
62
|
+
# config.register_menu_item 'Our website', 'https://epages.com', target: :_blank
|
63
|
+
|
20
64
|
# ==> Stylesheets & Javascripts
|
21
65
|
|
22
66
|
# We recommend using the built in Beyond Canvas layout and loading up your own
|
23
67
|
# stylesheets / javascripts to customize the look and feel.
|
24
68
|
#
|
25
69
|
# To load a stylesheet:
|
26
|
-
#
|
70
|
+
# config.register_stylesheet 'my_stylesheet.css'
|
27
71
|
#
|
28
|
-
# You can provide an options hash for more control, which is passed along
|
29
|
-
#
|
72
|
+
# You can provide an options hash for more control, which is passed along
|
73
|
+
# to stylesheet_link_tag():
|
74
|
+
# config.register_stylesheet 'my_print_stylesheet.css', media: :print
|
30
75
|
#
|
31
76
|
# To load a javascript file:
|
32
|
-
#
|
77
|
+
# config.register_javascript 'my_javascript.js'
|
33
78
|
|
34
79
|
# ==> Webpacker
|
35
80
|
|
36
|
-
# By default,
|
81
|
+
# By default, Beyond Canvas uses Webpacker.
|
37
82
|
# You can switch to using Sprocket's asset pipeline here.
|
38
83
|
#
|
39
84
|
<% unless @skip_webpacker %># <% end %>config.skip_webpacker = <%= @skip_webpacker %>
|
85
|
+
|
86
|
+
# ==> Authentication with ePages Beyond API
|
87
|
+
|
88
|
+
config.encryption_key = '<%= SecureRandom.hex(32) %>'
|
40
89
|
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'rails/generators/active_record'
|
4
|
+
|
5
|
+
module BeyondCanvas
|
6
|
+
module Generators
|
7
|
+
class ModelGenerator < ActiveRecord::Generators::Base # :nodoc:
|
8
|
+
desc 'Generates a model with the given name and provides a method to authenticate in Beyond Backend'
|
9
|
+
|
10
|
+
argument :attributes, type: :array, default: [], banner: 'field:type field:type'
|
11
|
+
|
12
|
+
source_root File.expand_path('templates', __dir__)
|
13
|
+
|
14
|
+
def copy_beyond_canvas_migration
|
15
|
+
migration_path = File.join('db', 'migrate')
|
16
|
+
migration_template 'migration.erb',
|
17
|
+
"#{migration_path}/beyond_canvas_create_#{table_name}.rb",
|
18
|
+
migration_version: migration_version
|
19
|
+
end
|
20
|
+
|
21
|
+
def generate_model
|
22
|
+
template 'model.erb', File.join("app/models/#{file_path}.rb")
|
23
|
+
end
|
24
|
+
|
25
|
+
private
|
26
|
+
|
27
|
+
def rails5_and_up?
|
28
|
+
Rails::VERSION::MAJOR >= 5
|
29
|
+
end
|
30
|
+
|
31
|
+
def migration_version
|
32
|
+
"[#{Rails::VERSION::MAJOR}.#{Rails::VERSION::MINOR}]" if rails5_and_up?
|
33
|
+
end
|
34
|
+
|
35
|
+
def migration_data
|
36
|
+
<<RUBY
|
37
|
+
t.string :beyond_api_url, null: false
|
38
|
+
|
39
|
+
t.text :encrypted_beyond_access_token, null: true
|
40
|
+
t.text :encrypted_beyond_access_token_iv, null: true
|
41
|
+
|
42
|
+
t.text :encrypted_beyond_refresh_token, null: true
|
43
|
+
t.text :encrypted_beyond_refresh_token_iv, null: true
|
44
|
+
|
45
|
+
RUBY
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
class BeyondCanvasCreate<%= table_name.camelize %> < ActiveRecord::Migration<%= migration_version %>
|
4
|
+
def change
|
5
|
+
create_table :<%= table_name %><%= primary_key_type %> do |t|
|
6
|
+
<%= migration_data -%>
|
7
|
+
<% attributes.each do |attribute| -%>
|
8
|
+
t.<%= attribute.type %> :<%= attribute.name %>
|
9
|
+
|
10
|
+
<% end -%>
|
11
|
+
t.timestamps null: false
|
12
|
+
end
|
13
|
+
|
14
|
+
add_index :<%= table_name %>, :beyond_api_url, unique: true
|
15
|
+
add_index :<%= table_name %>, :encrypted_beyond_access_token_iv, unique: true
|
16
|
+
add_index :<%= table_name %>, :encrypted_beyond_refresh_token_iv, unique: true
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'rails/generators/active_record'
|
4
|
+
|
5
|
+
module BeyondCanvas
|
6
|
+
module Generators
|
7
|
+
class ViewsGenerator < Rails::Generators::Base # :nodoc:
|
8
|
+
desc 'Creates all Beyond Canvas views to overwrite them'
|
9
|
+
|
10
|
+
source_root File.expand_path('../../../../app/views/beyond_canvas', __dir__)
|
11
|
+
|
12
|
+
def copy_views
|
13
|
+
directory 'authentications', 'app/views/beyond_canvas/authentications'
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,57 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BeyondCanvas
|
4
|
+
module Models
|
5
|
+
module Concerns
|
6
|
+
module Authentication # :nodoc:
|
7
|
+
extend ActiveSupport::Concern
|
8
|
+
|
9
|
+
included do
|
10
|
+
attr_accessor :code, :signature, :access_token_url, :api_url, :return_url, :terms
|
11
|
+
|
12
|
+
##############################################################################
|
13
|
+
# Encrypted attribute configuration
|
14
|
+
##############################################################################
|
15
|
+
|
16
|
+
attr_encrypted :beyond_access_token, key: [BeyondCanvas.configuration.encryption_key].pack('H*')
|
17
|
+
attr_encrypted :beyond_refresh_token, key: [BeyondCanvas.configuration.encryption_key].pack('H*')
|
18
|
+
|
19
|
+
##############################################################################
|
20
|
+
# Validations
|
21
|
+
##############################################################################
|
22
|
+
|
23
|
+
# Database fields
|
24
|
+
|
25
|
+
validates :beyond_api_url,
|
26
|
+
presence: true
|
27
|
+
validates :beyond_access_token,
|
28
|
+
presence: true,
|
29
|
+
unless: -> { encrypted_beyond_access_token_was.blank? }
|
30
|
+
validates :beyond_refresh_token,
|
31
|
+
presence: true,
|
32
|
+
unless: -> { encrypted_beyond_refresh_token_was.blank? }
|
33
|
+
|
34
|
+
##############################################################################
|
35
|
+
# Instance methods
|
36
|
+
##############################################################################
|
37
|
+
|
38
|
+
#
|
39
|
+
# Get and save access_token and refresh_token using the authentication code
|
40
|
+
# NOTE: This method is used during the shop creation, as it is the only point
|
41
|
+
# we know about the authentication code
|
42
|
+
#
|
43
|
+
def authenticate(params_code)
|
44
|
+
session = BeyondApi::Session.new(api_url: beyond_api_url)
|
45
|
+
session.token.create(params_code)
|
46
|
+
update(beyond_access_token: session.access_token,
|
47
|
+
beyond_refresh_token: session.refresh_token)
|
48
|
+
end
|
49
|
+
|
50
|
+
def authenticated?
|
51
|
+
beyond_access_token.present? && beyond_refresh_token.present?
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
end
|
@@ -0,0 +1,79 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require 'jwt'
|
4
|
+
|
5
|
+
module BeyondCanvas
|
6
|
+
module Models
|
7
|
+
module Concerns
|
8
|
+
module Utils # :nodoc:
|
9
|
+
extend ActiveSupport::Concern
|
10
|
+
|
11
|
+
included do
|
12
|
+
##############################################################################
|
13
|
+
# Instance methods
|
14
|
+
##############################################################################
|
15
|
+
|
16
|
+
#
|
17
|
+
# Generates a new access_token and refresh_token
|
18
|
+
#
|
19
|
+
def refresh_token
|
20
|
+
beyond_session = BeyondApi::Session.new(api_url: beyond_api_url, refresh_token: beyond_refresh_token)
|
21
|
+
beyond_session.token.refresh
|
22
|
+
|
23
|
+
update(beyond_access_token: beyond_session.access_token,
|
24
|
+
beyond_refresh_token: beyond_session.refresh_token)
|
25
|
+
end
|
26
|
+
|
27
|
+
#
|
28
|
+
# Generates a new access_token and refresh_token if they have expired
|
29
|
+
#
|
30
|
+
def refresh_token_if_needed
|
31
|
+
token_timestamp = decoded_jwt['exp']
|
32
|
+
current_timestamp = DateTime.now.to_i
|
33
|
+
return unless token_timestamp - current_timestamp <= 3600
|
34
|
+
|
35
|
+
refresh_token
|
36
|
+
end
|
37
|
+
|
38
|
+
#
|
39
|
+
# Returns a BeyondApi::Session object with api_url, access_token and refresh_token attributes
|
40
|
+
#
|
41
|
+
def to_session
|
42
|
+
BeyondApi::Session.new(api_url: beyond_api_url,
|
43
|
+
access_token: beyond_access_token,
|
44
|
+
refresh_token: beyond_refresh_token)
|
45
|
+
end
|
46
|
+
|
47
|
+
#
|
48
|
+
# Returns the shop url
|
49
|
+
#
|
50
|
+
def url
|
51
|
+
"https://#{URI.parse(beyond_api_url).host}"
|
52
|
+
end
|
53
|
+
|
54
|
+
def has_scope?(scope)
|
55
|
+
return unless scope.include?(':')
|
56
|
+
|
57
|
+
base, scope = scope.split(':')
|
58
|
+
!!(decoded_jwt['scope'].find { |s| s.split(':').first == base } =~ /#{base}:.*#{scope}.*/)
|
59
|
+
end
|
60
|
+
|
61
|
+
##############################################################################
|
62
|
+
# Class methods
|
63
|
+
##############################################################################
|
64
|
+
|
65
|
+
def self.find_session(id)
|
66
|
+
shop = find(id)
|
67
|
+
shop.to_session
|
68
|
+
end
|
69
|
+
|
70
|
+
private
|
71
|
+
|
72
|
+
def decoded_jwt
|
73
|
+
JWT.decode(beyond_access_token, nil, false).first
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
79
|
+
end
|
data/lib/models/shop.rb
ADDED
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module BeyondCanvas
|
4
|
+
module Models
|
5
|
+
module Shop # :nodoc:
|
6
|
+
extend ActiveSupport::Concern
|
7
|
+
|
8
|
+
include ::BeyondCanvas::Models::Concerns::Authentication
|
9
|
+
include ::BeyondCanvas::Models::Concerns::Utils
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
metadata
CHANGED
@@ -1,29 +1,45 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: beyond_canvas
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.18.0.pre
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Unai Abrisketa
|
8
|
-
|
8
|
+
- Kathia Salazar
|
9
|
+
- German San Emeterio
|
10
|
+
autorequire:
|
9
11
|
bindir: bin
|
10
12
|
cert_chain: []
|
11
|
-
date: 2020-06
|
13
|
+
date: 2020-10-06 00:00:00.000000000 Z
|
12
14
|
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: attr_encrypted
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '3.1'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '3.1'
|
13
29
|
- !ruby/object:Gem::Dependency
|
14
30
|
name: beyond_api
|
15
31
|
requirement: !ruby/object:Gem::Requirement
|
16
32
|
requirements:
|
17
33
|
- - "~>"
|
18
34
|
- !ruby/object:Gem::Version
|
19
|
-
version: '0.
|
35
|
+
version: '0.11'
|
20
36
|
type: :runtime
|
21
37
|
prerelease: false
|
22
38
|
version_requirements: !ruby/object:Gem::Requirement
|
23
39
|
requirements:
|
24
40
|
- - "~>"
|
25
41
|
- !ruby/object:Gem::Version
|
26
|
-
version: '0.
|
42
|
+
version: '0.11'
|
27
43
|
- !ruby/object:Gem::Dependency
|
28
44
|
name: bourbon
|
29
45
|
requirement: !ruby/object:Gem::Requirement
|
@@ -142,6 +158,34 @@ dependencies:
|
|
142
158
|
- - "<"
|
143
159
|
- !ruby/object:Gem::Version
|
144
160
|
version: '4.1'
|
161
|
+
- !ruby/object:Gem::Dependency
|
162
|
+
name: loaf
|
163
|
+
requirement: !ruby/object:Gem::Requirement
|
164
|
+
requirements:
|
165
|
+
- - "~>"
|
166
|
+
- !ruby/object:Gem::Version
|
167
|
+
version: '0.9'
|
168
|
+
type: :runtime
|
169
|
+
prerelease: false
|
170
|
+
version_requirements: !ruby/object:Gem::Requirement
|
171
|
+
requirements:
|
172
|
+
- - "~>"
|
173
|
+
- !ruby/object:Gem::Version
|
174
|
+
version: '0.9'
|
175
|
+
- !ruby/object:Gem::Dependency
|
176
|
+
name: jwt
|
177
|
+
requirement: !ruby/object:Gem::Requirement
|
178
|
+
requirements:
|
179
|
+
- - "~>"
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
version: '2.2'
|
182
|
+
type: :runtime
|
183
|
+
prerelease: false
|
184
|
+
version_requirements: !ruby/object:Gem::Requirement
|
185
|
+
requirements:
|
186
|
+
- - "~>"
|
187
|
+
- !ruby/object:Gem::Version
|
188
|
+
version: '2.2'
|
145
189
|
- !ruby/object:Gem::Dependency
|
146
190
|
name: rubocop-rails
|
147
191
|
requirement: !ruby/object:Gem::Requirement
|
@@ -160,7 +204,9 @@ description: |2
|
|
160
204
|
Beyond Canvas is an open-source framework that provides CSS styles for apps
|
161
205
|
designed and developed for the online shop software Beyond
|
162
206
|
email:
|
163
|
-
-
|
207
|
+
- uabrisketa@epages.com
|
208
|
+
- ksalazar@epages.com
|
209
|
+
- gsanemeterio@epages.com
|
164
210
|
executables: []
|
165
211
|
extensions: []
|
166
212
|
extra_rdoc_files: []
|
@@ -169,36 +215,48 @@ files:
|
|
169
215
|
- README.md
|
170
216
|
- Rakefile
|
171
217
|
- app/assets/config/beyond_canvas_manifest.js
|
218
|
+
- app/assets/images/icons/arrow_right.svg
|
172
219
|
- app/assets/images/icons/checkbox_checked.svg
|
173
220
|
- app/assets/images/icons/checkbox_unchecked.svg
|
221
|
+
- app/assets/images/icons/close.svg
|
174
222
|
- app/assets/images/icons/file.svg
|
175
223
|
- app/assets/images/icons/flash_checkbox.svg
|
176
224
|
- app/assets/images/icons/flash_close.svg
|
177
225
|
- app/assets/images/icons/flash_error.svg
|
178
226
|
- app/assets/images/icons/flash_info.svg
|
179
227
|
- app/assets/images/icons/flash_warning.svg
|
228
|
+
- app/assets/images/icons/home.svg
|
180
229
|
- app/assets/images/icons/radiobutton_checked.svg
|
181
230
|
- app/assets/images/icons/radiobutton_unchecked.svg
|
182
231
|
- app/assets/javascripts/beyond_canvas/base.js
|
183
232
|
- app/assets/stylesheets/beyond_canvas/base.scss
|
233
|
+
- app/assets/stylesheets/beyond_canvas/components/_action_bar.scss
|
184
234
|
- app/assets/stylesheets/beyond_canvas/components/_actions.scss
|
235
|
+
- app/assets/stylesheets/beyond_canvas/components/_breadcrumbs.scss
|
185
236
|
- app/assets/stylesheets/beyond_canvas/components/_buttons.scss
|
186
237
|
- app/assets/stylesheets/beyond_canvas/components/_cards.scss
|
187
238
|
- app/assets/stylesheets/beyond_canvas/components/_comments.scss
|
188
239
|
- app/assets/stylesheets/beyond_canvas/components/_containers.scss
|
240
|
+
- app/assets/stylesheets/beyond_canvas/components/_debug.scss
|
189
241
|
- app/assets/stylesheets/beyond_canvas/components/_flash.scss
|
190
242
|
- app/assets/stylesheets/beyond_canvas/components/_forms.scss
|
243
|
+
- app/assets/stylesheets/beyond_canvas/components/_grids.scss
|
191
244
|
- app/assets/stylesheets/beyond_canvas/components/_inputs.scss
|
192
245
|
- app/assets/stylesheets/beyond_canvas/components/_layouts.scss
|
193
246
|
- app/assets/stylesheets/beyond_canvas/components/_links.scss
|
194
247
|
- app/assets/stylesheets/beyond_canvas/components/_main.scss
|
195
248
|
- app/assets/stylesheets/beyond_canvas/components/_margins.scss
|
196
249
|
- app/assets/stylesheets/beyond_canvas/components/_markdown.scss
|
250
|
+
- app/assets/stylesheets/beyond_canvas/components/_menu.scss
|
251
|
+
- app/assets/stylesheets/beyond_canvas/components/_modals.scss
|
197
252
|
- app/assets/stylesheets/beyond_canvas/components/_notices.scss
|
198
253
|
- app/assets/stylesheets/beyond_canvas/components/_relative.scss
|
254
|
+
- app/assets/stylesheets/beyond_canvas/components/_scrollbox.scss
|
255
|
+
- app/assets/stylesheets/beyond_canvas/components/_sidebar.scss
|
199
256
|
- app/assets/stylesheets/beyond_canvas/components/_spinner.scss
|
200
257
|
- app/assets/stylesheets/beyond_canvas/components/_tables.scss
|
201
258
|
- app/assets/stylesheets/beyond_canvas/components/_texts.scss
|
259
|
+
- app/assets/stylesheets/beyond_canvas/components/_titles.scss
|
202
260
|
- app/assets/stylesheets/beyond_canvas/mailer.scss
|
203
261
|
- app/assets/stylesheets/beyond_canvas/settings/_breakpoints.scss
|
204
262
|
- app/assets/stylesheets/beyond_canvas/settings/_reset_css.scss
|
@@ -207,54 +265,81 @@ files:
|
|
207
265
|
- app/assets/stylesheets/beyond_canvas/utilities/_functions.scss
|
208
266
|
- app/assets/stylesheets/beyond_canvas/utilities/_mixins.scss
|
209
267
|
- app/controllers/beyond_canvas/application_controller.rb
|
268
|
+
- app/controllers/beyond_canvas/authentications_controller.rb
|
210
269
|
- app/controllers/beyond_canvas/system_controller.rb
|
270
|
+
- app/controllers/concerns/beyond_canvas/authentication.rb
|
211
271
|
- app/controllers/concerns/beyond_canvas/locale_management.rb
|
212
272
|
- app/controllers/concerns/beyond_canvas/request_validation.rb
|
213
273
|
- app/controllers/concerns/beyond_canvas/status_codes.rb
|
214
274
|
- app/form_builders/beyond_canvas/form_builder.rb
|
215
275
|
- app/helpers/beyond_canvas/application_helper.rb
|
276
|
+
- app/helpers/beyond_canvas/authentications_helper.rb
|
277
|
+
- app/helpers/beyond_canvas/cockpit_app_helper.rb
|
278
|
+
- app/helpers/beyond_canvas/debug_helper.rb
|
216
279
|
- app/helpers/beyond_canvas/locale_switch_helper.rb
|
217
280
|
- app/javascript/beyond_canvas/base.js
|
218
281
|
- app/javascript/beyond_canvas/initializers/buttons.js
|
219
282
|
- app/javascript/beyond_canvas/initializers/flash.js
|
220
|
-
- app/javascript/beyond_canvas/initializers/functions.js
|
221
283
|
- app/javascript/beyond_canvas/initializers/inputs.js
|
284
|
+
- app/javascript/beyond_canvas/initializers/modals.js
|
285
|
+
- app/views/beyond_canvas/authentications/new.html.erb
|
222
286
|
- app/views/beyond_canvas/custom/_public_head.html.erb
|
223
|
-
- app/views/beyond_canvas/locales/_edit.html.erb
|
224
287
|
- app/views/beyond_canvas/mailer/_button.html.erb
|
225
288
|
- app/views/beyond_canvas/mailer/_footer.html.erb
|
226
289
|
- app/views/beyond_canvas/mailer/_header.html.erb
|
227
290
|
- app/views/beyond_canvas/mailer/_text.html.erb
|
291
|
+
- app/views/beyond_canvas/shared/_action_bar.html.erb
|
292
|
+
- app/views/beyond_canvas/shared/_breadcrumbs.html.erb
|
228
293
|
- app/views/beyond_canvas/shared/_flash.html.erb
|
229
294
|
- app/views/beyond_canvas/shared/_head.html.erb
|
295
|
+
- app/views/beyond_canvas/shared/_locales.html.erb
|
230
296
|
- app/views/beyond_canvas/shared/_logo.html.erb
|
297
|
+
- app/views/beyond_canvas/shared/_menu.html.erb
|
298
|
+
- app/views/beyond_canvas/shared/_modal.html.erb
|
299
|
+
- app/views/beyond_canvas/shared/_sidebar.html.erb
|
300
|
+
- app/views/layouts/beyond_canvas/application.html.erb
|
231
301
|
- app/views/layouts/beyond_canvas/mailer.html.erb
|
232
302
|
- app/views/layouts/beyond_canvas/public.html.erb
|
233
303
|
- config/initializers/beyond_canvas/filter_parameter_logging.rb
|
234
304
|
- config/initializers/beyond_canvas/form_utils.rb
|
305
|
+
- config/locales/en.yml
|
235
306
|
- config/routes.rb
|
236
307
|
- lib/beyond_canvas.rb
|
237
308
|
- lib/beyond_canvas/asset_registration.rb
|
238
309
|
- lib/beyond_canvas/configuration.rb
|
239
310
|
- lib/beyond_canvas/engine.rb
|
311
|
+
- lib/beyond_canvas/menu_item_registration.rb
|
312
|
+
- lib/beyond_canvas/parameter_sanitizer.rb
|
313
|
+
- lib/beyond_canvas/rails/routes.rb
|
240
314
|
- lib/beyond_canvas/version.rb
|
241
315
|
- lib/generators/beyond_canvas/assets/assets_generator.rb
|
242
316
|
- lib/generators/beyond_canvas/assets/templates/beyond_canvas.js
|
243
317
|
- lib/generators/beyond_canvas/assets/templates/beyond_canvas.scss
|
244
318
|
- lib/generators/beyond_canvas/beyond_api/beyond_api_generator.rb
|
319
|
+
- lib/generators/beyond_canvas/controller/controller_generator.rb
|
320
|
+
- lib/generators/beyond_canvas/controller/templates/controller.erb
|
321
|
+
- lib/generators/beyond_canvas/custom_menu/custom_menu_generator.rb
|
322
|
+
- lib/generators/beyond_canvas/custom_menu/templates/beyond_canvas_custom_menu.html.erb
|
245
323
|
- lib/generators/beyond_canvas/custom_styles/custom_styles_generator.rb
|
246
|
-
- lib/generators/beyond_canvas/custom_styles/templates/beyond_canvas_custom_styles.
|
324
|
+
- lib/generators/beyond_canvas/custom_styles/templates/beyond_canvas_custom_styles.scss
|
247
325
|
- lib/generators/beyond_canvas/install/install_generator.rb
|
248
326
|
- lib/generators/beyond_canvas/install/templates/beyond_canvas.rb.erb
|
327
|
+
- lib/generators/beyond_canvas/model/model_generator.rb
|
328
|
+
- lib/generators/beyond_canvas/model/templates/migration.erb
|
329
|
+
- lib/generators/beyond_canvas/model/templates/model.erb
|
330
|
+
- lib/generators/beyond_canvas/views/views_generator.rb
|
249
331
|
- lib/generators/beyond_canvas/webpacker/plugins/jquery.js
|
250
332
|
- lib/generators/beyond_canvas/webpacker/templates/beyond_canvas.js
|
251
333
|
- lib/generators/beyond_canvas/webpacker/templates/beyond_canvas.scss
|
252
334
|
- lib/generators/beyond_canvas/webpacker/webpacker_generator.rb
|
335
|
+
- lib/models/concerns/authentication.rb
|
336
|
+
- lib/models/concerns/utils.rb
|
337
|
+
- lib/models/shop.rb
|
253
338
|
homepage: https://github.com/ePages-de/beyond_canvas
|
254
339
|
licenses:
|
255
340
|
- MIT
|
256
341
|
metadata: {}
|
257
|
-
post_install_message:
|
342
|
+
post_install_message:
|
258
343
|
rdoc_options: []
|
259
344
|
require_paths:
|
260
345
|
- lib
|
@@ -269,8 +354,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
269
354
|
- !ruby/object:Gem::Version
|
270
355
|
version: 1.3.1
|
271
356
|
requirements: []
|
272
|
-
rubygems_version: 3.
|
273
|
-
signing_key:
|
357
|
+
rubygems_version: 3.1.4
|
358
|
+
signing_key:
|
274
359
|
specification_version: 4
|
275
360
|
summary: Open-source framework that provides CSS styles
|
276
361
|
test_files: []
|