bootstrap5-rails-extensions 0.1.1 → 0.2.0
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/CHANGELOG.md +8 -0
- data/CODE_OF_CONDUCT.md +22 -0
- data/Gemfile.lock +1 -1
- data/README.md +5 -8
- data/app/javascript/bootstrap5_rails_extensions/index.js +27 -0
- data/lib/bootstrap5_rails_extensions/version.rb +1 -1
- metadata +4 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: e04b08a7e1e9691990f85d877250fbb94a0751b7764a72ab8a6370d5e7dd7968
|
|
4
|
+
data.tar.gz: '0383ce0e398470e76959a5ae9f279988fb9e215754ffafc1c20c2c391f060d5a'
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 9237559c9d82078e8fc47f1b9594c19b858e724affde377b55701a22ea08b959f5f45c49a401fd9a5c322ccd5d48e8d366c87f92a75e05ed4e926471762c4165
|
|
7
|
+
data.tar.gz: 123846d9a8dbe4e505e29fe6e8928c8aaeb1ca464b2447e6f7b657f7d805c03956b2534494f60b9e9df93cfd09a4dd4cab9f0ff7a6b30bb273c92587d5c7cf89
|
data/CHANGELOG.md
ADDED
data/CODE_OF_CONDUCT.md
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# CODE OF CONDUCT
|
|
2
|
+
|
|
3
|
+
## 目的
|
|
4
|
+
- 本プロジェクトに関わるすべての方が安心して協力できる環境を維持することを目的としています。
|
|
5
|
+
|
|
6
|
+
## 行動指針
|
|
7
|
+
- 互いを敬意をもって扱い、思いやりのある言動を心がけてください。
|
|
8
|
+
- 建設的なフィードバックを行い、個人攻撃や誹謗中傷を避けてください。
|
|
9
|
+
- 異なる意見や経験を尊重し、多様性を歓迎してください。
|
|
10
|
+
|
|
11
|
+
## 禁止事項
|
|
12
|
+
- いかなる形であれハラスメント、差別的発言、脅迫行為を行わないでください。
|
|
13
|
+
- 公共の場に適さないコンテンツを共有しないでください。
|
|
14
|
+
|
|
15
|
+
## 報告方法
|
|
16
|
+
- 行動規範に反する事案を確認した場合は、可能な限り詳細な情報を添えてメンテナへご連絡ください。
|
|
17
|
+
|
|
18
|
+
## 適用範囲
|
|
19
|
+
- この行動規範は、オンラインおよびオフラインを問わず、本プロジェクトに関連するすべての活動に適用されます。
|
|
20
|
+
|
|
21
|
+
## 改訂
|
|
22
|
+
- 本行動規範は必要に応じて更新します。更新が行われた場合は、本リポジトリで周知します。
|
data/Gemfile.lock
CHANGED
data/README.md
CHANGED
|
@@ -28,17 +28,14 @@ Stimulusアプリケーションへの登録例です。
|
|
|
28
28
|
```javascript
|
|
29
29
|
// app/javascript/controllers/index.js
|
|
30
30
|
import { application } from "./application"
|
|
31
|
+
import { registerBootstrap5Controllers } from "bootstrap5_rails_extensions"
|
|
31
32
|
|
|
32
|
-
|
|
33
|
-
import OffcanvasController from "bootstrap5_rails_extensions/offcanvas_controller"
|
|
34
|
-
import ToastController from "bootstrap5_rails_extensions/toast_controller"
|
|
35
|
-
|
|
36
|
-
application.register("modal", ModalController)
|
|
37
|
-
application.register("offcanvas", OffcanvasController)
|
|
38
|
-
application.register("toast", ToastController)
|
|
33
|
+
registerBootstrap5Controllers(application)
|
|
39
34
|
```
|
|
40
35
|
|
|
41
|
-
ESBuildやVite
|
|
36
|
+
オプションで`registerBootstrap5Controllers`の第2引数に`{ modal: CustomModalController }`のようなハッシュを渡すと、任意のコントローラーで上書きを行えます。ESBuildやViteなどのバンドラをご利用の場合も同様に読み込んでください。
|
|
37
|
+
|
|
38
|
+
個別に登録したい場合は、従来どおり各コントローラーをインポートした上で`application.register`を呼び出してください。
|
|
42
39
|
|
|
43
40
|
### トースト用コンテナの設置
|
|
44
41
|
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import ModalController from "./modal_controller"
|
|
2
|
+
import OffcanvasController from "./offcanvas_controller"
|
|
3
|
+
import ToastController from "./toast_controller"
|
|
4
|
+
|
|
5
|
+
const defaultControllers = {
|
|
6
|
+
modal: ModalController,
|
|
7
|
+
offcanvas: OffcanvasController,
|
|
8
|
+
toast: ToastController,
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
// Stimulusアプリケーションへ本Gemのコントローラーをまとめて登録する
|
|
12
|
+
export function registerBootstrap5Controllers(application, controllers = {}) {
|
|
13
|
+
if (!application) {
|
|
14
|
+
throw new Error("Stimulusアプリケーションが未指定です。")
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
const registrationMap = { ...defaultControllers, ...controllers }
|
|
18
|
+
|
|
19
|
+
Object.entries(registrationMap).forEach(([identifier, controller]) => {
|
|
20
|
+
const alreadyRegistered = application.router?.modulesByIdentifier?.has?.(identifier)
|
|
21
|
+
if (alreadyRegistered) return
|
|
22
|
+
|
|
23
|
+
application.register(identifier, controller)
|
|
24
|
+
})
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export { ModalController, OffcanvasController, ToastController }
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: bootstrap5-rails-extensions
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.2.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Dreaw Inc.
|
|
@@ -32,6 +32,8 @@ extensions: []
|
|
|
32
32
|
extra_rdoc_files: []
|
|
33
33
|
files:
|
|
34
34
|
- ".gitignore"
|
|
35
|
+
- CHANGELOG.md
|
|
36
|
+
- CODE_OF_CONDUCT.md
|
|
35
37
|
- Gemfile
|
|
36
38
|
- Gemfile.lock
|
|
37
39
|
- LICENSE.txt
|
|
@@ -42,6 +44,7 @@ files:
|
|
|
42
44
|
- app/helpers/bootstrap5_rails_extensions/offcanvas_helper.rb
|
|
43
45
|
- app/helpers/bootstrap5_rails_extensions/table_helper.rb
|
|
44
46
|
- app/helpers/bootstrap5_rails_extensions/toast_helper.rb
|
|
47
|
+
- app/javascript/bootstrap5_rails_extensions/index.js
|
|
45
48
|
- app/javascript/bootstrap5_rails_extensions/modal_controller.js
|
|
46
49
|
- app/javascript/bootstrap5_rails_extensions/offcanvas_controller.js
|
|
47
50
|
- app/javascript/bootstrap5_rails_extensions/toast_controller.js
|