bootstrap-honoka-rails 4.3.1.1 → 4.4.1.0

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: 960ddd9b36cb894fbc7b24b9c2ed4a9208114288dc39a59a99d55e4eb788b61d
4
- data.tar.gz: 8c4da3e3e22f35bc69fa8d3e1c06a874917773e66cf159de190be12253f91607
3
+ metadata.gz: 30502af37f49e2d22b95da3743139fc78c806a5bed72ffc4551da8cec87ba125
4
+ data.tar.gz: 44c1c08858ac4aa24341677513729a571277e92a4044e13c8dcb63bc7fb81208
5
5
  SHA512:
6
- metadata.gz: e86aba730896e422abff48480b6f299d31b3ed94034d6cdd0d2338d84cbc94dbc984ea9daaeb86359d9d83feeac069d50fbe3bfcfccab5ede73faeca35006d47
7
- data.tar.gz: 1cbe45d3ac1c8b2a8fb3d3f3132d23d75d5067a99cc550652a96e6d562bf85b261ffdaf685ad7f368ae3929411ba06fbfa63e4312a80af651d4aa3c754d9b040
6
+ metadata.gz: 3cc62783e4d24156f2dd665a1382680137fda4c6f560b717ec735e1434e5eaf812fe2114354a0e9504585110272ad1ecabc9fafa03a4fb7c883e05b7b707d03a
7
+ data.tar.gz: 93565cfae5454943616a648487def2c86313fc6b26b8d5fa78d5aafec6e7dcb1058e2e9074da1b87e24ef40ef6e36f7e4ef80b9dc17942764640d7bdc1ee0204
data/README.md CHANGED
@@ -1,17 +1,16 @@
1
1
  # Bootstrap-Honoka-Rails
2
2
 
3
- [Honoka](https://github.com/windyakin/Honoka) is a Bootstrap theme that can display Japanese beautifully.
4
- bootstrap-honoka-rails can easily install [Honoka](https://github.com/windyakin/Honoka),[Umi](https://ysakasin.github.io/Umi/) , [Nico](https://nico.kubosho.com/) and [Rin](https://rinhoshizo.la/) on Rails.
3
+ [engilish](README.md)/[japanese](README_ja.md)
5
4
 
6
- [Honoka](https://github.com/windyakin/Honoka) は日本語も美しく表示できる Bootstrap テーマです。
7
- bootstrap-honoka-rails [Honoka](https://github.com/windyakin/Honoka) [Umi](https://ysakasin.github.io/Umi/) [Nico](https://nico.kubosho.com/) [Rin](https://rinhoshizo.la/) Rails 上に簡単にインストールできます。
5
+ [Honoka](https://github.com/windyakin/Honoka) is a Bootstrap theme that can display Japanese beautifully.
6
+ bootstrap-honoka-rails can easily install [Honoka](https://github.com/windyakin/Honoka), [Umi](https://ysakasin.github.io/Umi/) , [Nico](https://nico.kubosho.com/) and [Rin](https://rinhoshizo.la/) on Rails.
8
7
 
9
8
  ## Installation
10
9
 
11
10
  Add this line to your application's Gemfile:
12
11
 
13
12
  ```ruby
14
- gem 'bootstrap-honoka-rails' , '~>4.3.1' # or '~> 3.3.7'
13
+ gem 'bootstrap-honoka-rails' , '~>4.4.1' # or '~> 3.3.7'
15
14
  ```
16
15
 
17
16
  And then execute:
@@ -22,36 +21,35 @@ Or install it yourself as:
22
21
 
23
22
  $ gem install bootstrap-honoka-rails
24
23
 
25
- [日本語訳]
26
- gemfile にこれ書いておけばいいと思います。
27
-
28
- ```ruby
29
- gem 'bootstrap-honoka-rails' , '~>4.3.1' # or '~> 3.3.7'
30
- ```
31
-
32
24
  ## Usage
33
25
 
34
26
  Add to application.css `*= require _honoka` <br>
35
27
  For bootstrap ver3 you need `*= _bootstrap-sprockets`.
36
28
 
37
- ```css app/assets/stylesheets/application.css
29
+ app/assets/stylesheets/application.css
30
+
31
+ ```css
38
32
  /*
39
- *= require _bootstrap-sprockets # Add line v3 only
33
+ *= require _bootstrap-sprockets # Add line * v3 only
40
34
  *= require _honoka # Add line
41
35
  *= require_self
42
36
  */
43
37
  ```
44
38
 
45
39
  and add to application.js <br>
46
- `//= require popper` (bootstrap ver4 later), <br>
47
- `//= require bootstrap-sprockets` , <br>
48
- `//= require bootstrap.min`
49
40
 
50
- ```js app/assets/javascripts/application.js
41
+ ```js
42
+ `//= require popper` // * bootstrap ver4 later
43
+ `//= require bootstrap-sprockets`
44
+ ```
45
+
46
+ app/assets/javascripts/application.js
47
+
48
+ ```js
51
49
  //= require jquery2
52
50
  //= require rails-ujs
53
51
  //= require activestorage
54
- //= require popper # add line v4 later
52
+ //= require popper # add line * v4 later
55
53
  //= require bootstrap-sprockets # add line
56
54
  //= require turbolinks
57
55
  //= require_tree .
@@ -62,59 +60,47 @@ Because Dropdown features may not work properly.<br>
62
60
  Please check [here](https://github.com/twbs/bootstrap-sass/issues/714) for more details.<br>
63
61
  (It has been tested on production environment. The sample app is in the 'test/dummy' directory. )
64
62
 
65
- [日本語訳]
66
- とりあえずインストール後、上記を application.css と application.js に追加すれば OK です。<br>
67
- 注意点として `bootstrap-sprockets` を読み込むと思いますが、その場合 `bootstrap.min` は読み込む必要がありません。<br>
68
- 何故なら Dropdown が正しく動作しない可能性があります。 <br>
69
- 詳細は[こちら](https://github.com/twbs/bootstrap-sass/issues/714)をご確認ください。
70
- ※production 環境で動作することを確認済み。 サンプルアプリは 'test/dummy' ディレクトリ内 にあります。
71
63
 
72
64
  ---
73
65
 
74
66
  Certain [versions](VERSIONS.md) also support Nico , Umi and Rin.
75
67
 
76
- ```css app/assets/stylesheets/application.css
68
+ app/assets/stylesheets/application.css
69
+
70
+ ```css
77
71
  *= require _umi # Add line
78
72
  *= require_self
79
73
  ```
80
74
 
81
75
  or
82
76
 
83
- ```css app/assets/stylesheets/application.css
77
+ ```css
84
78
  *= require _nico # Add line
85
79
  *= require_self
86
80
  ```
87
81
 
88
82
  or
89
83
 
90
- ```css app/assets/stylesheets/application.css
84
+ ```css
91
85
  *= require _rin # Add line
92
86
  *= require_self
93
87
  ```
94
88
 
95
89
  Please check [VERSIONS.md](VERSIONS.md) for Honoka Nico Umi Rin compatible Ver.
96
90
 
97
- [日本語訳][特定のバージョン](VERSIONS.md)では "Nico"と "Umi" と "Rin" も対応しています。
98
- `_honoka` の代わりに `*= require _nico` と書けば Nico になりますし、 `_umi` と書けば Umi デザインになります。
99
- Rin も Ver によっては `_rin` と書けば対応出来ます。<br>
100
- Honoka Nico Umi Rin の対応 Ver は[VERSIONS.md](VERSIONS.md)をご確認ください。
101
-
102
91
  ## Notice
103
92
 
104
93
  bootstrap-honoka-rails uses bootstrap or bootstrap-sass internally.
105
94
 
106
- [日本語訳]
107
- bootstrap-honoka-rails は bootstrap 又は bootstrap-sass を内部的に使っています。
108
-
109
95
  ## License
110
96
 
111
97
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
112
98
 
113
- ## Use Bootstrap Theme
99
+ ## Supported bootstrap themes
114
100
 
115
- #### [Honoka](https://github.com/windyakin/Honoka)
101
+ #### [Honoka](http://honokak.osaka/)
116
102
 
117
- Source Url ... [https://github.com/windyakin/Honoka](https://github.com/windyakin/Honoka)
103
+ Source URL ... [https://github.com/windyakin/Honoka](https://github.com/windyakin/Honoka)
118
104
 
119
105
  > The MIT License (MIT)
120
106
  >
@@ -124,7 +110,7 @@ Source Url ... [https://github.com/windyakin/Honoka](https://github.com/windyaki
124
110
 
125
111
  #### [Umi](https://ysakasin.github.io/Umi/)
126
112
 
127
- Source Url ... [https://github.com/ysakasin/Umi](https://github.com/ysakasin/Umi)
113
+ Source URL ... [https://github.com/ysakasin/Umi](https://github.com/ysakasin/Umi)
128
114
 
129
115
  > The MIT License (MIT)
130
116
  >
@@ -134,7 +120,7 @@ Source Url ... [https://github.com/ysakasin/Umi](https://github.com/ysakasin/Umi
134
120
 
135
121
  #### [Nico](https://nico.kubosho.com/)
136
122
 
137
- Source Url ... [https://github.com/kubosho/Nico](https://github.com/kubosho/Nico)
123
+ Source URL ... [https://github.com/kubosho/Nico](https://github.com/kubosho/Nico)
138
124
 
139
125
  > The MIT License (MIT)
140
126
  >
@@ -144,7 +130,7 @@ Source Url ... [https://github.com/kubosho/Nico](https://github.com/kubosho/Nico
144
130
 
145
131
  #### [Rin](https://rinhoshizo.la/)
146
132
 
147
- Source Url ... [https://github.com/raryosu/Rin](https://github.com/raryosu/Rin)
133
+ Source URL ... [https://github.com/raryosu/Rin](https://github.com/raryosu/Rin)
148
134
 
149
135
  > The MIT License (MIT)
150
136
  >
data/README_ja.md ADDED
@@ -0,0 +1,140 @@
1
+ # Bootstrap-Honoka-Rails
2
+
3
+ [engilish](README.md)/[japanese](README_ja.md)
4
+
5
+ [Honoka](https://github.com/windyakin/Honoka) は日本語も美しく表示できる Bootstrap テーマです。
6
+ bootstrap-honoka-rails は [Honoka](https://github.com/windyakin/Honoka) や [Umi](https://ysakasin.github.io/Umi/) や [Nico](https://nico.kubosho.com/) や [Rin](https://rinhoshizo.la/) を Rails 上に簡単にインストールできます。
7
+
8
+ ## Installation
9
+
10
+ gemfile に下記記載します。
11
+
12
+ ```ruby
13
+ gem 'bootstrap-honoka-rails' , '~>4.4.1' # or '~> 3.3.7'
14
+ ```
15
+
16
+ そして下記コマンドでインストール :
17
+
18
+ $ bundle
19
+
20
+ 又は gemに直接インストールします:
21
+
22
+ $ gem install bootstrap-honoka-rails
23
+
24
+ ## Usage
25
+
26
+ application.cssに `*= require _honoka` を追加します。<br>
27
+ bootstrap3の場合は `*= _bootstrap-sprockets`. も追加します。
28
+
29
+ app/assets/stylesheets/application.css
30
+
31
+ ```css
32
+ /*
33
+ *= require _bootstrap-sprockets # 追加行 ※ v3 のみ
34
+ *= require _honoka # 追加行
35
+ *= require_self
36
+ */
37
+ ```
38
+
39
+
40
+ 次にapplication.jsに下記を追加しましょう。 <br>
41
+
42
+ ```js
43
+ `//= require popper` // * bootstrap ver4 以降
44
+ `//= require bootstrap-sprockets`
45
+ ```
46
+
47
+ app/assets/javascripts/application.js
48
+
49
+ ```js
50
+ //= require jquery2
51
+ //= require rails-ujs
52
+ //= require activestorage
53
+ //= require popper # add line ※ ver4 以降
54
+ //= require bootstrap-sprockets # 追加行
55
+ //= require turbolinks
56
+ //= require_tree .
57
+ ```
58
+
59
+ インストール後、上記を application.css と application.js に追加すれば OK です。<br>
60
+ 注意点として `bootstrap-sprockets` を読み込むと思いますが、その場合 `bootstrap.min` は読み込む必要がありません。<br>
61
+ 何故なら Dropdown が正しく動作しない可能性がある為です。 <br>
62
+ 詳細は[こちら](https://github.com/twbs/bootstrap-sass/issues/714)をご確認ください。<br>
63
+ ※production 環境で動作することを確認済み。 サンプルアプリは 'test/dummy' ディレクトリ内 にあります。
64
+
65
+ ---
66
+
67
+ [特定のバージョン](VERSIONS.md)では "Nico"と "Umi" と "Rin" も対応しています。
68
+
69
+ app/assets/stylesheets/application.css
70
+
71
+ ```css
72
+ *= require _umi # 追加行
73
+ *= require_self
74
+ ```
75
+
76
+ or
77
+
78
+ ```css
79
+ *= require _nico # 追加行
80
+ *= require_self
81
+ ```
82
+
83
+ or
84
+
85
+ ```css
86
+ *= require _rin # 追加行
87
+ *= require_self
88
+ ```
89
+
90
+ Honoka Nico Umi Rin の対応 Ver は[VERSIONS.md](VERSIONS.md)をご確認ください。
91
+
92
+ ## Notice
93
+
94
+ bootstrap-honoka-rails は bootstrap 又は bootstrap-sass を内部的に使っています。
95
+
96
+ ## License
97
+
98
+ 本gemは[MITライセンス]((https://opensource.org/licenses/MIT))の条件の下でオープンソースとして利用可能です。
99
+
100
+ ## Supported bootstrap themes
101
+
102
+ #### [Honoka](http://honokak.osaka/)
103
+
104
+ Source URL ... [https://github.com/windyakin/Honoka](https://github.com/windyakin/Honoka)
105
+
106
+ > The MIT License (MIT)
107
+ >
108
+ > Copyright (c) 2015 windyakin
109
+
110
+ [License View All](https://github.com/windyakin/Honoka/blob/master/LICENSE)
111
+
112
+ #### [Umi](https://ysakasin.github.io/Umi/)
113
+
114
+ Source URL ... [https://github.com/ysakasin/Umi](https://github.com/ysakasin/Umi)
115
+
116
+ > The MIT License (MIT)
117
+ >
118
+ > Copyright (c) 2015 ysakasin
119
+
120
+ [License View All](https://github.com/ysakasin/Umi/blob/master/LICENSE)
121
+
122
+ #### [Nico](https://nico.kubosho.com/)
123
+
124
+ Source URL ... [https://github.com/kubosho/Nico](https://github.com/kubosho/Nico)
125
+
126
+ > The MIT License (MIT)
127
+ >
128
+ > Copyright (c) 2015 windyakin, kubosho
129
+
130
+ [License View All](https://github.com/kubosho/Nico/blob/master/LICENSE)
131
+
132
+ #### [Rin](https://rinhoshizo.la/)
133
+
134
+ Source URL ... [https://github.com/raryosu/Rin](https://github.com/raryosu/Rin)
135
+
136
+ > The MIT License (MIT)
137
+ >
138
+ > Copyright (c) 2016 Hagihara Ryosuke
139
+
140
+ [License View All](https://github.com/raryosu/Rin/blob/master/LICENSE)
data/Rakefile CHANGED
@@ -1,33 +1,57 @@
1
+ # frozen_string_literal: true
2
+
1
3
  begin
4
+ # bundlerでインストールしたgemをrequireで読み取り可能とする。
2
5
  require 'bundler/setup'
3
6
  rescue LoadError
4
7
  puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
5
8
  end
6
9
 
7
- require 'rdoc/task'
10
+ # requires
11
+ require 'bundler/gem_tasks' # build, clobber, release などのコマンドを使用可能とする。
12
+ require 'rdoc/task' # RDoc::Taskクラスのrequireを行う。
13
+ require 'rake/testtask' # Rake::TestTaskクラスのrequireを行う。
14
+ require 'rake/file_utils_ext' # rake用file_utilsの拡張
8
15
 
16
+ # rdoc, clobber_rdoc コマンド定義
9
17
  RDoc::Task.new(:rdoc) do |rdoc|
10
18
  rdoc.rdoc_dir = 'rdoc'
11
- rdoc.title = 'Bootstrap::Honoka4'
19
+ rdoc.title = 'Bootstrap::Honoka::Rails'
12
20
  rdoc.options << '--line-numbers'
13
- rdoc.rdoc_files.include('README.md')
14
- rdoc.rdoc_files.include('lib/**/*.rb')
21
+ rdoc.rdoc_files.include('README.md', 'VERSIONS.md', 'lib/**/*.rb')
15
22
  end
16
23
 
17
- APP_RAKEFILE = File.expand_path('test/dummy/Rakefile', __dir__)
18
- load 'rails/tasks/engine.rake'
19
-
20
- load 'rails/tasks/statistics.rake'
21
-
22
- require 'bundler/gem_tasks'
23
-
24
- require 'rake/testtask'
25
-
24
+ # test コマンド定義
26
25
  Rake::TestTask.new(:test) do |t|
27
- t.libs << 'test'
28
- t.pattern = 'test/**/*_test.rb'
29
- t.verbose = false
30
- t.warning = false
26
+ t.libs << 'test' # require pathの追加
27
+ t.pattern = 'test/**/*_test.rb' # 実行するテストコマンド
28
+ t.verbose = false # 詳細なテキストを非表示化
29
+ t.warning = false # 警告を非表示
30
+ end
31
+
32
+ # test clobberコマンド定義
33
+ desc 'Remove files generated during test'
34
+ task :clobber_test do
35
+ # 下記 rm_rf を使用するとbegin rescueで囲む必要もないが、
36
+ # あえて rm_r を使用している理由は下記の通り。
37
+ #
38
+ # - 本処理は主にシステムのデフォルトで用意されているrdocに倣っている。
39
+ # ※rdocの削除処理に対して [secure属性] だけは追加している。
40
+ # - rdocの削除である `rake clobber_rdoc` コマンドを使用すると
41
+ # ::Rake::Fileutils::rm_r が使用されている。
42
+ # - その rm_r コマンドでは `rm_r @rdoc_dir rescue nil` というように
43
+ # no such file or directoryエラーが発生する事も考慮して、
44
+ # rescueを行う処理となっていた。
45
+ #
46
+ # 以上の事から、rm_rf ではなく rm_r を使用している。
47
+ begin
48
+ ::Rake::FileUtilsExt.rm_r('tmp', secure: true)
49
+ rescue StandardError
50
+ end
31
51
  end
32
52
 
53
+ # clobberコマンドで clobber_testが動作するようにする。
54
+ task clobber: [:clobber_test]
55
+
56
+ # test コマンドをrakeのデフォルト動作とする。
33
57
  task default: :test
data/VERSIONS.md CHANGED
@@ -1,10 +1,15 @@
1
1
  # Support Version
2
2
 
3
- - O ... Supported and test completed(使用可能)
4
- - X ... Not supported(使用不可)
5
-
6
- | Gem | Honoka | Nico | Umi | Rin |
7
- | ----- | ------ | ---- | --- | --- |
8
- | 4.3.1 | O | X | X | X |
9
- | 4.0.0 | O | O | O | X |
10
- | 3.3.7 | O | O | O | O |
3
+ - O ... Supported and test completed(使用可能)
4
+ - X ... Not supported(使用不可)
5
+
6
+ | Gem | Honoka | Nico | Umi | Rin |
7
+ | ----- | ------ | ------ | --- | --- |
8
+ | 4.4.1 | O | X | X | X |
9
+ | 4.3.1 | O | O(\*1) | X | X |
10
+ | 4.0.0 | O | O | O | X |
11
+ | 3.3.7 | O | O | O | O |
12
+
13
+ #### notice
14
+
15
+ \*1 The nico of version 4.3.1 is actually using [nico theme 4.3.2](https://github.com/kubosho/Nico/releases/tag/v4.3.2).
@@ -48,4 +48,4 @@
48
48
  @import "bootstrap/print";
49
49
 
50
50
  // Honoka original setting
51
- @import "honoka/override";
51
+ @import "honoka/override";
@@ -102,6 +102,13 @@ $yiq-contrasted-threshold: 150 !default;
102
102
  $yiq-text-dark: $gray-900 !default;
103
103
  $yiq-text-light: $white !default;
104
104
 
105
+ // Characters which are escaped by the escape-svg function
106
+ $escaped-characters: (
107
+ ("<","%3c"),
108
+ (">","%3e"),
109
+ ("#","%23"),
110
+ ) !default;
111
+
105
112
 
106
113
  // Options
107
114
  //
@@ -221,6 +228,7 @@ $container-max-widths: (
221
228
 
222
229
  $grid-columns: 12 !default;
223
230
  $grid-gutter-width: 30px !default;
231
+ $grid-row-columns: 6 !default;
224
232
 
225
233
 
226
234
  // Components
@@ -368,7 +376,6 @@ $table-dark-accent-bg: rgba($white, .05) !default;
368
376
  $table-dark-hover-color: $table-dark-color !default;
369
377
  $table-dark-hover-bg: rgba($white, .075) !default;
370
378
  $table-dark-border-color: lighten($table-dark-bg, 7.5%) !default;
371
- $table-dark-color: $white !default;
372
379
 
373
380
  $table-striped-order: odd !default;
374
381
 
@@ -414,6 +421,7 @@ $btn-padding-x: $input-btn-padding-x !default;
414
421
  $btn-font-family: $input-btn-font-family !default;
415
422
  $btn-font-size: $input-btn-font-size !default;
416
423
  $btn-line-height: $input-btn-line-height !default;
424
+ $btn-white-space: null !default; // Set to `nowrap` to prevent text wrapping
417
425
 
418
426
  $btn-padding-y-sm: $input-btn-padding-y-sm !default;
419
427
  $btn-padding-x-sm: $input-btn-padding-x-sm !default;
@@ -490,13 +498,13 @@ $input-plaintext-color: $body-color !default;
490
498
 
491
499
  $input-height-border: $input-border-width * 2 !default;
492
500
 
493
- $input-height-inner: calc(#{$input-line-height * 1em} + #{$input-padding-y * 2}) !default;
494
- $input-height-inner-half: calc(#{$input-line-height * .5em} + #{$input-padding-y}) !default;
495
- $input-height-inner-quarter: calc(#{$input-line-height * .25em} + #{$input-padding-y / 2}) !default;
501
+ $input-height-inner: add($input-line-height * 1em, $input-padding-y * 2) !default;
502
+ $input-height-inner-half: add($input-line-height * .5em, $input-padding-y) !default;
503
+ $input-height-inner-quarter: add($input-line-height * .25em, $input-padding-y / 2) !default;
496
504
 
497
- $input-height: calc(#{$input-line-height * 1em} + #{$input-padding-y * 2} + #{$input-height-border}) !default;
498
- $input-height-sm: calc(#{$input-line-height-sm * 1em} + #{$input-btn-padding-y-sm * 2} + #{$input-height-border}) !default;
499
- $input-height-lg: calc(#{$input-line-height-lg * 1em} + #{$input-btn-padding-y-lg * 2} + #{$input-height-border}) !default;
505
+ $input-height: add($input-line-height * 1em, add($input-padding-y * 2, $input-height-border, false)) !default;
506
+ $input-height-sm: add($input-line-height-sm * 1em, add($input-padding-y-sm * 2, $input-height-border, false)) !default;
507
+ $input-height-lg: add($input-line-height-lg * 1em, add($input-padding-y-lg * 2, $input-height-border, false)) !default;
500
508
 
501
509
  $input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;
502
510
 
@@ -520,6 +528,7 @@ $custom-forms-transition: background-color .15s ease-in-out, borde
520
528
 
521
529
  $custom-control-gutter: .5rem !default;
522
530
  $custom-control-spacer-x: 1rem !default;
531
+ $custom-control-cursor: null !default;
523
532
 
524
533
  $custom-control-indicator-size: 1rem !default;
525
534
  $custom-control-indicator-bg: $input-bg !default;
@@ -529,6 +538,8 @@ $custom-control-indicator-box-shadow: $input-box-shadow !default;
529
538
  $custom-control-indicator-border-color: $gray-500 !default;
530
539
  $custom-control-indicator-border-width: $input-border-width !default;
531
540
 
541
+ $custom-control-label-color: null !default;
542
+
532
543
  $custom-control-indicator-disabled-bg: $input-disabled-bg !default;
533
544
  $custom-control-label-disabled-color: $gray-600 !default;
534
545
 
@@ -547,20 +558,20 @@ $custom-control-indicator-active-box-shadow: none !default;
547
558
  $custom-control-indicator-active-border-color: $custom-control-indicator-active-bg !default;
548
559
 
549
560
  $custom-checkbox-indicator-border-radius: $border-radius !default;
550
- $custom-checkbox-indicator-icon-checked: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e"), "#", "%23") !default;
561
+ $custom-checkbox-indicator-icon-checked: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><path fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/></svg>") !default;
551
562
 
552
563
  $custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;
553
564
  $custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;
554
- $custom-checkbox-indicator-icon-indeterminate: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3e%3cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3e%3c/svg%3e"), "#", "%23") !default;
565
+ $custom-checkbox-indicator-icon-indeterminate: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'><path stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/></svg>") !default;
555
566
  $custom-checkbox-indicator-indeterminate-box-shadow: none !default;
556
567
  $custom-checkbox-indicator-indeterminate-border-color: $custom-checkbox-indicator-indeterminate-bg !default;
557
568
 
558
569
  $custom-radio-indicator-border-radius: 50% !default;
559
- $custom-radio-indicator-icon-checked: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3e%3c/svg%3e"), "#", "%23") !default;
570
+ $custom-radio-indicator-icon-checked: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'><circle r='3' fill='#{$custom-control-indicator-checked-color}'/></svg>") !default;
560
571
 
561
572
  $custom-switch-width: $custom-control-indicator-size * 1.75 !default;
562
573
  $custom-switch-indicator-border-radius: $custom-control-indicator-size / 2 !default;
563
- $custom-switch-indicator-size: calc(#{$custom-control-indicator-size} - #{$custom-control-indicator-border-width * 4}) !default;
574
+ $custom-switch-indicator-size: subtract($custom-control-indicator-size, $custom-control-indicator-border-width * 4) !default;
564
575
 
565
576
  $custom-select-padding-y: $input-padding-y !default;
566
577
  $custom-select-padding-x: $input-padding-x !default;
@@ -576,10 +587,10 @@ $custom-select-bg: $input-bg !default;
576
587
  $custom-select-disabled-bg: $gray-200 !default;
577
588
  $custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions
578
589
  $custom-select-indicator-color: $gray-800 !default;
579
- $custom-select-indicator: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e"), "#", "%23") !default;
580
- $custom-select-background: $custom-select-indicator no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
590
+ $custom-select-indicator: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'><path fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/></svg>") !default;
591
+ $custom-select-background: escape-svg($custom-select-indicator) no-repeat right $custom-select-padding-x center / $custom-select-bg-size !default; // Used so we can have multiple background elements (e.g., arrow and feedback icon)
581
592
 
582
- $custom-select-feedback-icon-padding-right: calc((1em + #{2 * $custom-select-padding-y}) * 3 / 4 + #{$custom-select-padding-x + $custom-select-indicator-padding}) !default;
593
+ $custom-select-feedback-icon-padding-right: add(1em * .75, (2 * $custom-select-padding-y * .75) + $custom-select-padding-x + $custom-select-indicator-padding) !default;
583
594
  $custom-select-feedback-icon-position: center right ($custom-select-padding-x + $custom-select-indicator-padding) !default;
584
595
  $custom-select-feedback-icon-size: $input-height-inner-half $input-height-inner-half !default;
585
596
 
@@ -653,9 +664,9 @@ $form-feedback-valid-color: theme-color("success") !default;
653
664
  $form-feedback-invalid-color: theme-color("danger") !default;
654
665
 
655
666
  $form-feedback-icon-valid-color: $form-feedback-valid-color !default;
656
- $form-feedback-icon-valid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e"), "#", "%23") !default;
667
+ $form-feedback-icon-valid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'><path fill='#{$form-feedback-icon-valid-color}' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/></svg>") !default;
657
668
  $form-feedback-icon-invalid-color: $form-feedback-invalid-color !default;
658
- $form-feedback-icon-invalid: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$form-feedback-icon-invalid-color}' viewBox='-2 -2 7 7'%3e%3cpath stroke='#{$form-feedback-icon-invalid-color}' d='M0 0l3 3m0-3L0 3'/%3e%3ccircle r='.5'/%3e%3ccircle cx='3' r='.5'/%3e%3ccircle cy='3' r='.5'/%3e%3ccircle cx='3' cy='3' r='.5'/%3e%3c/svg%3E"), "#", "%23") !default;
669
+ $form-feedback-icon-invalid: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='#{$form-feedback-icon-invalid-color}' viewBox='0 0 12 12'><circle cx='6' cy='6' r='4.5'/><path stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/><circle cx='6' cy='8.2' r='.6' fill='#{$form-feedback-icon-invalid-color}' stroke='none'/></svg>") !default;
659
670
 
660
671
  $form-validation-states: () !default;
661
672
  // stylelint-disable-next-line scss/dollar-variable-default
@@ -730,14 +741,14 @@ $navbar-dark-color: rgba($white, .5) !default;
730
741
  $navbar-dark-hover-color: rgba($white, .75) !default;
731
742
  $navbar-dark-active-color: $white !default;
732
743
  $navbar-dark-disabled-color: rgba($white, .25) !default;
733
- $navbar-dark-toggler-icon-bg: str-replace(url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"), "#", "%23") !default;
744
+ $navbar-dark-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'><path stroke='#{$navbar-dark-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
734
745
  $navbar-dark-toggler-border-color: rgba($white, .1) !default;
735
746
 
736
747
  $navbar-light-color: rgba($black, .5) !default;
737
748
  $navbar-light-hover-color: rgba($black, .7) !default;
738
749
  $navbar-light-active-color: rgba($black, .9) !default;
739
750
  $navbar-light-disabled-color: rgba($black, .3) !default;
740
- $navbar-light-toggler-icon-bg: str-replace(url("data:image/svg+xml,%3csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3e%3cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e"), "#", "%23") !default;
751
+ $navbar-light-toggler-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'><path stroke='#{$navbar-light-color}' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/></svg>") !default;
741
752
  $navbar-light-toggler-border-color: rgba($black, .1) !default;
742
753
 
743
754
  $navbar-light-brand-color: $navbar-light-active-color !default;
@@ -759,7 +770,7 @@ $dropdown-bg: $white !default;
759
770
  $dropdown-border-color: rgba($black, .15) !default;
760
771
  $dropdown-border-radius: $border-radius !default;
761
772
  $dropdown-border-width: $border-width !default;
762
- $dropdown-inner-border-radius: calc(#{$dropdown-border-radius} - #{$dropdown-border-width}) !default;
773
+ $dropdown-inner-border-radius: subtract($dropdown-border-radius, $dropdown-border-width) !default;
763
774
  $dropdown-divider-bg: $gray-200 !default;
764
775
  $dropdown-divider-margin-y: $nav-divider-margin-y !default;
765
776
  $dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;
@@ -824,9 +835,10 @@ $card-spacer-x: 1.25rem !default;
824
835
  $card-border-width: $border-width !default;
825
836
  $card-border-radius: $border-radius !default;
826
837
  $card-border-color: rgba($black, .125) !default;
827
- $card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;
838
+ $card-inner-border-radius: subtract($card-border-radius, $card-border-width) !default;
828
839
  $card-cap-bg: rgba($black, .03) !default;
829
840
  $card-cap-color: null !default;
841
+ $card-height: null !default;
830
842
  $card-color: null !default;
831
843
  $card-bg: $white !default;
832
844
 
@@ -873,6 +885,7 @@ $popover-max-width: 276px !default;
873
885
  $popover-border-width: $border-width !default;
874
886
  $popover-border-color: rgba($black, .2) !default;
875
887
  $popover-border-radius: $border-radius-lg !default;
888
+ $popover-inner-border-radius: subtract($popover-border-radius, $popover-border-width) !default;
876
889
  $popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;
877
890
 
878
891
  $popover-header-bg: darken($popover-bg, 3%) !default;
@@ -931,6 +944,9 @@ $badge-pill-border-radius: 10rem !default;
931
944
  // Padding applied to the modal body
932
945
  $modal-inner-padding: 1rem !default;
933
946
 
947
+ // Margin between elements in footer, must be lower than or equal to 2 * $modal-inner-padding
948
+ $modal-footer-margin-between: .5rem !default;
949
+
934
950
  $modal-dialog-margin: .5rem !default;
935
951
  $modal-dialog-margin-y-sm-up: 1.75rem !default;
936
952
 
@@ -941,6 +957,7 @@ $modal-content-bg: $white !default;
941
957
  $modal-content-border-color: rgba($black, .2) !default;
942
958
  $modal-content-border-width: $border-width !default;
943
959
  $modal-content-border-radius: $border-radius-lg !default;
960
+ $modal-content-inner-border-radius: subtract($modal-content-border-radius, $modal-content-border-width) !default;
944
961
  $modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;
945
962
  $modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;
946
963
 
@@ -962,6 +979,7 @@ $modal-sm: 300px !default;
962
979
  $modal-fade-transform: translate(0, -50px) !default;
963
980
  $modal-show-transform: none !default;
964
981
  $modal-transition: transform .3s ease-out !default;
982
+ $modal-scale-transform: scale(1.02) !default;
965
983
 
966
984
 
967
985
  // Alerts
@@ -1037,6 +1055,8 @@ $figure-caption-color: $gray-600 !default;
1037
1055
 
1038
1056
  // Breadcrumbs
1039
1057
 
1058
+ $breadcrumb-font-size: null !default;
1059
+
1040
1060
  $breadcrumb-padding-y: .75rem !default;
1041
1061
  $breadcrumb-padding-x: 1rem !default;
1042
1062
  $breadcrumb-item-padding: .5rem !default;
@@ -1071,8 +1091,8 @@ $carousel-caption-color: $white !default;
1071
1091
 
1072
1092
  $carousel-control-icon-width: 20px !default;
1073
1093
 
1074
- $carousel-control-prev-icon-bg: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3e%3c/svg%3e"), "#", "%23") !default;
1075
- $carousel-control-next-icon-bg: str-replace(url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3e%3c/svg%3e"), "#", "%23") !default;
1094
+ $carousel-control-prev-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' width='8' height='8' viewBox='0 0 8 8'><path d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/></svg>") !default;
1095
+ $carousel-control-next-icon-bg: url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' width='8' height='8' viewBox='0 0 8 8'><path d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/></svg>") !default;
1076
1096
 
1077
1097
  $carousel-transition-duration: .6s !default;
1078
1098
  $carousel-transition: transform $carousel-transition-duration ease-in-out !default; // Define transform transition first if using multiple transitions (e.g., `transform 2s ease, opacity .5s ease-out`)