tb_core 1.4.8 → 1.5.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: cd6c66dcf54d5da5213a63e533eb04b5f64e726919654ece63a4565333c8a6d7
4
- data.tar.gz: 224a045cc261e598c21677bcf28ee60dc82d0ea0f82392dcc9801eb86117aaf8
3
+ metadata.gz: 685a39f5f0708976182b94ca4eba53159105aae179377c82506808ac3c0140aa
4
+ data.tar.gz: 8281b2db3cd5ec6ff3c68b564ebc2b30d5fb4e90b1e1fd2d5966ad18b967ab49
5
5
  SHA512:
6
- metadata.gz: 5dbc377a0b2723d633ff97989a57b41fd5e797247d442e14f7ad6c63ea5f3f402b82ea244d9eee072301dffbfcfb62896e5ffee978fb88c33858f4e8cb39558f
7
- data.tar.gz: 4e85b15b625862b800ccb12e1490822d907ee696e6434cf7d08699ca5e0fac0412f032d2153b2d2137c66f87b7f6de10c11fc78c187496ae0bb123c0df691a2e
6
+ metadata.gz: 30658044ef646b5daffa80b31eaf80b6408d9336189e01671ab523a89d85edf86da366bf09d6b8ac0842a6c787718e5570452c461f98505ce79616ddc0e81efd
7
+ data.tar.gz: 78b94c0636177d2e71249dceaf11b153c1680f39597360393aa1b8b98defccae365f1509ae19295295e6db3aa58e5fe172125aeada933bfd98ef2f50efa5398f
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- [![Build Status](https://semaphoreci.com/api/v1/moser-it/tb_core/branches/dev/shields_badge.svg)](https://semaphoreci.com/moser-it/tb_core)
1
+ [![CircleCI](https://circleci.com/bb/moser-inc/tb_core.svg?style=svg)](https://circleci.com/bb/moser-inc/tb_core)
2
2
 
3
3
  Twice Baked Core
4
4
  ================
@@ -105,7 +105,7 @@ Create a file in your app at `app/views/admin/users/_form_additions.html.erb`.
105
105
  <%= f.label :avatar, :class=>"control-label"%>
106
106
  <div class="controls">
107
107
  <%= f.file_field :avatar %>
108
- </div>
108
+ </div>
109
109
  </div>
110
110
 
111
111
  ### Adding fields to the user show action
@@ -12,7 +12,9 @@ window.spud = { admin: window.tb };
12
12
 
13
13
  document.addEventListener('DOMContentLoaded', function() {
14
14
 
15
- tb.editor.init();
15
+ if (typeof tinymce != "undefined") {
16
+ tb.editor.init();
17
+ }
16
18
 
17
19
  $("#modal_window .modal-footer .form-submit").bind('click', function() {
18
20
  $("#modal_window .modal-body form").submit();
@@ -4,7 +4,13 @@ tb.editor = {};
4
4
 
5
5
  var editor = tb.editor;
6
6
 
7
- editor.tinymce = {loaded:false};
7
+ /*
8
+ * Use tb.editor.overrides to set custom configs in your application
9
+ *
10
+ * tb.editor.overrides = { menubar: true }
11
+ *
12
+ */
13
+ editor.overrides = {};
8
14
 
9
15
  var registeredPlugins = [
10
16
  'autolink','lists','image','link','media','paste', 'code'
@@ -14,62 +20,31 @@ tb.editor = {};
14
20
  'undo', 'redo', '|',
15
21
  'bold','italic','underline','strikethrough','|',
16
22
  'formatselect','|',
17
- 'cut','copy','paste', 'pasteword','pastetext','|',
23
+ 'cut','copy','paste', '|',
18
24
  'bullist','numlist','outdent','indent','|',
19
25
  'link','unlink','image', '|', 'code', '|'
20
26
  ];
21
27
 
22
- var validElements = "@[id|class|style|title|dir<ltr?rtl|lang|xml::lang|onclick|ondblclick|" +
23
- "onmousedown|onmouseup|onmouseover|onmousemove|onmouseout|onkeypress|" +
24
- "onkeydown|onkeyup],a[rel|rev|charset|hreflang|tabindex|accesskey|type|" +
25
- "name|href|target|title|class|onfocus|onblur],strong/b,em/i,strike,u," +
26
- "#p,-ol[type|compact],-ul[type|compact],-li,br,img[longdesc|usemap|" +
27
- "src|border|alt=|title|hspace|vspace|width|height|align|hidpi_src],-sub,-sup," +
28
- "-blockquote,-table[border=0|cellspacing|cellpadding|width|frame|rules|" +
29
- "height|align|summary|bgcolor|background|bordercolor],-tr[rowspan|width|" +
30
- "height|align|valign|bgcolor|background|bordercolor],tbody,thead,tfoot," +
31
- "#td[colspan|rowspan|width|height|align|valign|bgcolor|background|bordercolor" +
32
- "|scope],#th[colspan|rowspan|width|height|align|valign|scope],caption,-div," +
33
- "-span,-code,-pre,address,-h1,-h2,-h3,-h4,-h5,-h6,hr[size|noshade],-font[face" +
34
- "|size|color],dd,dl,dt,cite,abbr,acronym,del[datetime|cite],ins[datetime|cite]," +
35
- "object[classid|width|height|codebase|*],param[name|value|_value],embed[type|width" +
36
- "|height|src|*],script[src|type],map[name],area[shape|coords|href|alt|target],bdo," +
37
- "button,col[align|char|charoff|span|valign|width],colgroup[align|char|charoff|span|" +
38
- "valign|width],dfn,fieldset,form[action|accept|accept-charset|enctype|method]," +
39
- "input[accept|alt|checked|disabled|maxlength|name|readonly|size|src|type|value]," +
40
- "kbd,label[for],legend,noscript,optgroup[label|disabled],option[disabled|label|selected|value]," +
41
- "q[cite],samp,select[disabled|multiple|name|size],small," +
42
- "textarea[cols|rows|disabled|name|readonly],tt,var,big";
43
-
44
28
  var extendedValidElements = [
45
29
  "iframe[src|width|height|name|align|frameborder|allowfullscreen]"
46
30
  ];
47
31
 
48
- editor.init = function(options) {
32
+ editor.init = function(args) {
49
33
  editor.unload();
50
- editor.checkAndCallTinyMce(options);
51
- };
52
34
 
53
- editor.initMCEWithOptions = function(element, options){
54
- var theme = options.theme || 'modern';
55
- var height = options.height || 400;
56
- var width = options.width || $(element).width();
57
- var buttons = options.buttons || registeredButtons;
58
- var plugins = options.plugins || registeredPlugins;
35
+ var selector = args ? args.selector : 'textarea.tinymce';
59
36
 
60
- $(element).tinymce({
61
- theme: theme,
62
- language: 'en',
37
+ var options = Object.assign({
38
+ selector: selector,
39
+ height: 400,
63
40
  menubar: false,
64
- plugins: plugins.join(' '),
65
- toolbar: buttons.join(' '),
66
- convert_urls: false,
67
- valid_elements: validElements,
68
- media_strict: false,
41
+ toolbar: registeredButtons.join(' '),
42
+ plugins: registeredPlugins.join(' '),
69
43
  extended_valid_elements: extendedValidElements.join(","),
70
- width: width,
71
- height: height
72
- });
44
+ convert_urls: false
45
+ }, editor.overrides);
46
+
47
+ tinymce.init(options)
73
48
  };
74
49
 
75
50
  editor.unload = function() {
@@ -111,32 +86,4 @@ tb.editor = {};
111
86
  }
112
87
  };
113
88
 
114
- var loadScript = null;
115
-
116
- editor.checkAndCallTinyMce = function(options){
117
- options = options || {};
118
- var selector = options.selector || 'textarea.tinymce';
119
- var $elements = $(selector);
120
-
121
- if($elements.length === 0){
122
- return;
123
- }
124
-
125
- if(loadScript === null){
126
- loadScript = $.when(
127
- $.ajax({url: '//cdn.tinymce.com/4.3/tinymce.min.js', dataType: 'script', cache: true}),
128
- $.ajax({url: '//cdn.tinymce.com/4.3/jquery.tinymce.min.js', dataType: 'script', cache: true})
129
- ).done(function(){
130
- $('body').trigger("tb:tinymce-loaded");
131
- editor.tinymce.loaded = true;
132
- });
133
- }
134
-
135
- loadScript.done(function(){
136
- $elements.each(function(){
137
- editor.initMCEWithOptions(this, options);
138
- });
139
- });
140
- };
141
-
142
89
  })();
@@ -8,8 +8,8 @@ class Admin::UsersController < Admin::ApplicationController
8
8
  respond_to :html, :csv
9
9
 
10
10
  sortable_by :email, :current_login_at,
11
- name: [:last_name, :first_name],
12
- default: :email
11
+ name: [:last_name, :first_name],
12
+ default: :email
13
13
 
14
14
  def index
15
15
  @spud_users = SpudUser.order(sortable_query).paginate(page: params[:page], per_page: 15)
@@ -29,6 +29,7 @@ module TbCore
29
29
  render template: error.template,
30
30
  layout: nil,
31
31
  formats: [:html],
32
+ locals: { },
32
33
  status: error.code,
33
34
  content_type: 'text/html'
34
35
  end
@@ -13,6 +13,21 @@ module TbCore::ApplicationHelper
13
13
  return form_for(record, options, &block)
14
14
  end
15
15
 
16
+ def tb_form_with(record, **options, &block)
17
+ options[:builder] = TbCore::FormBuilder
18
+
19
+ options[:html] ||= {}
20
+ if options[:html][:class]
21
+ options[:html][:class] += ' form-horizontal'
22
+ else
23
+ options[:html][:class] = 'form-horizontal'
24
+ end
25
+
26
+ options[:model] = record
27
+
28
+ return form_with(options, &block)
29
+ end
30
+
16
31
  def tb_form_errors(record, *fields_to_display)
17
32
  if record.errors.any?
18
33
  content_tag :div, class: 'form-errors test' do
@@ -56,6 +71,7 @@ module TbCore::ApplicationHelper
56
71
  end
57
72
  end
58
73
 
74
+ # rubocop:disable Rails/HelperInstanceVariable
59
75
  def tb_page_title
60
76
  if content_for?(:title)
61
77
  title = content_for(:title) + ' | ' + TbCore.site_name
@@ -66,6 +82,7 @@ module TbCore::ApplicationHelper
66
82
  end
67
83
  return content_tag :title, title
68
84
  end
85
+ # rubocop:enable Rails/HelperInstanceVariable
69
86
 
70
87
  def current_site_name
71
88
  return TbCore.config.site_name
@@ -2,26 +2,27 @@ module TbCore
2
2
  module UserModel
3
3
  extend ActiveSupport::Concern
4
4
 
5
+ # rubocop:disable Metrics/BlockLength
5
6
  included do
6
7
  self.table_name = 'spud_users'
7
8
 
8
9
  acts_as_authentic do |c|
9
- c.transition_from_crypto_providers = Authlogic::CryptoProviders::Sha512
10
10
  c.crypto_provider = Authlogic::CryptoProviders::SCrypt
11
11
  c.logged_in_timeout = 24.hours
12
12
  c.login_field = :email if TbCore.config.use_email_as_login
13
- if TbCore.config.user_password_length
14
- c.merge_validates_length_of_password_field_options(minimum: TbCore.config.user_password_length)
15
- end
13
+ c.require_password_confirmation = true
16
14
  end
17
15
 
16
+ attr_accessor :password_confirmation
17
+
18
18
  belongs_to :role,
19
- class_name: SpudRole.to_s, foreign_key: :spud_role_id, optional: true
19
+ class_name: 'SpudRole', foreign_key: :spud_role_id, optional: true
20
20
  has_many :spud_user_settings,
21
21
  dependent: :destroy, foreign_key: :spud_user_id
22
22
 
23
23
  validates :first_name, :last_name, presence: true
24
24
  before_validation :set_login_to_email, if: -> { TbCore.config.use_email_as_login }
25
+
25
26
  before_update :unset_requires_password_change
26
27
 
27
28
  scope :admins, lambda {
@@ -29,7 +30,37 @@ module TbCore
29
30
  }
30
31
 
31
32
  scope :ordered, -> { order('last_name asc, first_name asc, email asc') }
33
+
34
+ # These used to be built in to Authlogic
35
+ # See: https://github.com/binarylogic/authlogic/blob/5986e1bd056ccecc519d9f49cc83a0ba757668b4/doc/use_normal_rails_validation.md
36
+ validates :email,
37
+ format: {
38
+ with: ::TbCore::Regex::EMAIL,
39
+ message: proc {
40
+ ::Authlogic::I18n.t(
41
+ 'error_messages.email_invalid',
42
+ default: 'should look like an email address.'
43
+ )
44
+ }
45
+ },
46
+ length: { maximum: 100 },
47
+ uniqueness: {
48
+ case_sensitive: false,
49
+ if: :will_save_change_to_email?
50
+ }
51
+ validates :password,
52
+ confirmation: { if: :require_password? },
53
+ length: {
54
+ minimum: 8,
55
+ if: :require_password?
56
+ }
57
+ validates :password_confirmation,
58
+ length: {
59
+ minimum: 8,
60
+ if: :require_password?
61
+ }
32
62
  end
63
+ # rubocop:enable Metrics/BlockLength
33
64
 
34
65
  module ClassMethods
35
66
 
@@ -2,6 +2,7 @@
2
2
  <html lang="en">
3
3
  <head>
4
4
  <title><%= TbCore.config.site_name %> Admin</title>
5
+ <%= tinymce_assets unless ENV['TB_SKIP_TINYMCE'] %>
5
6
  <%= stylesheet_link_tag *TbCore.config.admin_stylesheets %>
6
7
  <%= javascript_include_tag *TbCore.config.admin_javascripts %>
7
8
  <%= csrf_meta_tags %>
@@ -7,6 +7,7 @@ require 'will_paginate-bootstrap'
7
7
  require 'breadcrumbs_on_rails'
8
8
  require 'rails-ujs'
9
9
  require 'sortable_by'
10
+ require 'tinymce-rails'
10
11
 
11
12
  module Spud
12
13
  end
@@ -15,6 +16,7 @@ module TbCore
15
16
  class Engine < ::Rails::Engine
16
17
  require "#{root}/lib/tb_core/errors"
17
18
  require "#{root}/lib/tb_core/form_builder"
19
+ require "#{root}/lib/tb_core/regex"
18
20
  require "#{root}/lib/tb_core/searchable"
19
21
  require "#{root}/lib/tb_core/spud_core"
20
22
 
@@ -219,7 +219,7 @@ class TbCore::FormBuilder < ActionView::Helpers::FormBuilder
219
219
  # Builds a file field group
220
220
  #
221
221
  def tb_file_field(attribute, options={})
222
- tb_input_field(attribute) do
222
+ tb_input_field(attribute, nil, options) do
223
223
  file_field(attribute)
224
224
  end
225
225
  end
@@ -0,0 +1,12 @@
1
+ module TbCore
2
+ module Regex
3
+ EMAIL = /
4
+ \A
5
+ [A-Z0-9_.&%+\-']+ # mailbox
6
+ @
7
+ (?:[A-Z0-9\-]+\.)+ # subdomains
8
+ (?:[A-Z]{2,25}) # TLD
9
+ \z
10
+ /ix.freeze
11
+ end
12
+ end
@@ -1,29 +1,31 @@
1
1
  require 'authlogic/test_case'
2
2
 
3
- module TbCore::SessionHelper
4
- include Authlogic::TestCase
3
+ module TbCore
4
+ module TestHelper
5
+ include Authlogic::TestCase
5
6
 
6
- # Use this helper in controller specs to establish a login session
7
- # - admin: Set to true to create a super_admin
8
- # - permissions: One or more permissions you want to assign to the user (a role will be auto generated)
9
- #
10
- def activate_session(admin: false, permissions: nil)
11
- activate_authlogic()
12
- if permissions
13
- permissions = [permissions] unless permissions.is_a?(Array)
14
- role = SpudRole.create(name: 'New Role', permission_tags: permissions)
15
- else
16
- role = nil
7
+ # Use this helper in controller specs to establish a login session
8
+ # - admin: Set to true to create a super_admin
9
+ # - permissions: One or more permissions you want to assign to the user (a role will be auto generated)
10
+ #
11
+ def activate_session(admin: false, permissions: nil)
12
+ activate_authlogic()
13
+ if permissions
14
+ permissions = [permissions] unless permissions.is_a?(Array)
15
+ role = SpudRole.create(name: 'New Role', permission_tags: permissions)
16
+ else
17
+ role = nil
18
+ end
19
+ @user = FactoryBot.create(:spud_user, super_admin: admin, role: role)
20
+ SpudUserSession.create(@user)
21
+ return @user
17
22
  end
18
- @user = FactoryBot.create(:spud_user, super_admin: admin, role: role)
19
- SpudUserSession.create(@user)
20
- return @user
21
- end
22
23
 
23
- # Returns the current user
24
- #
25
- def current_user
26
- return @user
24
+ # Returns the current user
25
+ #
26
+ def current_user
27
+ return @user
28
+ end
27
29
  end
28
30
  end
29
31
 
@@ -31,7 +33,7 @@ end
31
33
  #
32
34
  if defined?(RSpec)
33
35
  RSpec.configure do |config|
34
- config.include TbCore::SessionHelper
36
+ config.include TbCore::TestHelper
35
37
  end
36
38
  end
37
39
 
@@ -1,3 +1,3 @@
1
1
  module TbCore
2
- VERSION = '1.4.8'.freeze
2
+ VERSION = '1.5.4'.freeze
3
3
  end
@@ -69,7 +69,7 @@ RSpec.describe Admin::DashboardController, type: :controller do
69
69
  it 'should contain data array in reponse' do
70
70
  get :badges
71
71
  json = JSON.parse(response.body)
72
- expect(response.content_type).to eq('application/json')
72
+ expect(response.media_type).to eq('application/json')
73
73
  expect(json).to have_key('data')
74
74
  end
75
75
 
@@ -0,0 +1,3 @@
1
+ //= link_tree ../images
2
+ //= link_directory ../javascripts .js
3
+ //= link_directory ../stylesheets .css
@@ -12,51 +12,6 @@ module Dummy
12
12
  config.from_address = 'no-reply@dummy.com'
13
13
  end
14
14
 
15
- # Settings in config/environments/* take precedence over those specified here.
16
- # Application configuration should go into files in config/initializers
17
- # -- all .rb files in that directory are automatically loaded.
18
-
19
- # Custom directories with classes and modules you want to be autoloadable.
20
- # config.autoload_paths += %W(#{config.root}/extras)
21
-
22
- # Only load the plugins named here, in the order given (default is alphabetical).
23
- # :all can be used as a placeholder for all plugins not explicitly named.
24
- # config.plugins = [ :exception_notification, :ssl_requirement, :all ]
25
-
26
- # Activate observers that should always be running.
27
- # config.active_record.observers = :cacher, :garbage_collector, :forum_observer
28
-
29
- # Set Time.zone default to the specified zone and make Active Record auto-convert to this zone.
30
- # Run "rake -D time" for a list of tasks for finding time zone names. Default is UTC.
31
- # config.time_zone = 'Central Time (US & Canada)'
32
-
33
- # The default locale is :en and all translations from config/locales/*.rb,yml are auto loaded.
34
- # config.i18n.load_path += Dir[Rails.root.join('my', 'locales', '*.{rb,yml}').to_s]
35
- # config.i18n.default_locale = :de
36
- config.i18n.enforce_available_locales = true
37
-
38
- # Configure the default encoding used in templates for Ruby 1.9.
39
- config.encoding = 'utf-8'
40
-
41
- # Configure sensitive parameters which will be filtered from the log file.
42
- config.filter_parameters += [:password]
43
-
44
- # Use SQL instead of Active Record's schema dumper when creating the database.
45
- # This is necessary if your schema can't be completely dumped by the schema dumper,
46
- # like if you have constraints or database-specific column types
47
- # config.active_record.schema_format = :sql
48
-
49
- # Enforce whitelist mode for mass assignment.
50
- # This will create an empty whitelist of attributes available for mass-assignment for all models
51
- # in your app. As such, your models will need to explicitly whitelist or blacklist accessible
52
- # parameters by using an attr_accessible or attr_protected declaration.
53
- # config.active_record.whitelist_attributes = true
54
-
55
- # Enable the asset pipeline
56
- # config.assets.enabled = true
57
-
58
- # Version of your assets, change this if you want to expire all your assets
59
- # config.assets.version = '1.0'
60
-
15
+ config.load_defaults '6.0'
61
16
  end
62
17
  end
metadata CHANGED
@@ -1,23 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: tb_core
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.8
4
+ version: 1.5.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Greg Woods
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-07-09 00:00:00.000000000 Z
11
+ date: 2021-02-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: authlogic
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
18
- - !ruby/object:Gem::Version
19
- version: 3.4.3
20
- - - "<"
21
18
  - !ruby/object:Gem::Version
22
19
  version: '5.0'
23
20
  type: :runtime
@@ -25,9 +22,6 @@ dependencies:
25
22
  version_requirements: !ruby/object:Gem::Requirement
26
23
  requirements:
27
24
  - - ">="
28
- - !ruby/object:Gem::Version
29
- version: 3.4.3
30
- - - "<"
31
25
  - !ruby/object:Gem::Version
32
26
  version: '5.0'
33
27
  - !ruby/object:Gem::Dependency
@@ -156,6 +150,20 @@ dependencies:
156
150
  - - ">="
157
151
  - !ruby/object:Gem::Version
158
152
  version: '0'
153
+ - !ruby/object:Gem::Dependency
154
+ name: tinymce-rails
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :runtime
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
159
167
  - !ruby/object:Gem::Dependency
160
168
  name: will_paginate
161
169
  requirement: !ruby/object:Gem::Requirement
@@ -242,6 +250,20 @@ dependencies:
242
250
  version: '0'
243
251
  - !ruby/object:Gem::Dependency
244
252
  name: rspec-rails
253
+ requirement: !ruby/object:Gem::Requirement
254
+ requirements:
255
+ - - ">="
256
+ - !ruby/object:Gem::Version
257
+ version: 4.0.0.beta2
258
+ type: :development
259
+ prerelease: false
260
+ version_requirements: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - ">="
263
+ - !ruby/object:Gem::Version
264
+ version: 4.0.0.beta2
265
+ - !ruby/object:Gem::Dependency
266
+ name: rubocop
245
267
  requirement: !ruby/object:Gem::Requirement
246
268
  requirements:
247
269
  - - ">="
@@ -255,7 +277,21 @@ dependencies:
255
277
  - !ruby/object:Gem::Version
256
278
  version: '0'
257
279
  - !ruby/object:Gem::Dependency
258
- name: rubocop
280
+ name: rubocop-performance
281
+ requirement: !ruby/object:Gem::Requirement
282
+ requirements:
283
+ - - ">="
284
+ - !ruby/object:Gem::Version
285
+ version: '0'
286
+ type: :development
287
+ prerelease: false
288
+ version_requirements: !ruby/object:Gem::Requirement
289
+ requirements:
290
+ - - ">="
291
+ - !ruby/object:Gem::Version
292
+ version: '0'
293
+ - !ruby/object:Gem::Dependency
294
+ name: rubocop-rails
259
295
  requirement: !ruby/object:Gem::Requirement
260
296
  requirements:
261
297
  - - ">="
@@ -426,6 +462,7 @@ files:
426
462
  - lib/tb_core/engine.rb
427
463
  - lib/tb_core/errors.rb
428
464
  - lib/tb_core/form_builder.rb
465
+ - lib/tb_core/regex.rb
429
466
  - lib/tb_core/responder.rb
430
467
  - lib/tb_core/searchable.rb
431
468
  - lib/tb_core/spud_core.rb
@@ -442,6 +479,7 @@ files:
442
479
  - spec/controllers/tb_core/application_controller_spec.rb
443
480
  - spec/dummy/README.rdoc
444
481
  - spec/dummy/Rakefile
482
+ - spec/dummy/app/assets/config/manifest.js
445
483
  - spec/dummy/app/assets/javascripts/admin/application.js
446
484
  - spec/dummy/app/assets/javascripts/application.js
447
485
  - spec/dummy/app/assets/stylesheets/admin/application.scss
@@ -488,7 +526,7 @@ files:
488
526
  homepage: http://bitbucket.org/moser-inc/tb_core
489
527
  licenses: []
490
528
  metadata: {}
491
- post_install_message:
529
+ post_install_message:
492
530
  rdoc_options: []
493
531
  require_paths:
494
532
  - lib
@@ -503,15 +541,15 @@ required_rubygems_version: !ruby/object:Gem::Requirement
503
541
  - !ruby/object:Gem::Version
504
542
  version: '0'
505
543
  requirements: []
506
- rubyforge_project:
507
- rubygems_version: 2.7.7
508
- signing_key:
544
+ rubygems_version: 3.0.3
545
+ signing_key:
509
546
  specification_version: 4
510
547
  summary: Twice Baked Core Engine
511
548
  test_files:
512
549
  - spec/spec_helper.rb
513
550
  - spec/dummy/app/controllers/application_controller.rb
514
551
  - spec/dummy/app/views/layouts/application.html.erb
552
+ - spec/dummy/app/assets/config/manifest.js
515
553
  - spec/dummy/app/assets/javascripts/admin/application.js
516
554
  - spec/dummy/app/assets/javascripts/application.js
517
555
  - spec/dummy/app/assets/stylesheets/application.scss