stimulus-rails 0.3.8 → 0.3.9

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: a64fee1feee0e56676344567cace01dacfa01bb35d26ab4e6854f1f7883ac59f
4
- data.tar.gz: afaa2386c12cb57d2dc6d027cb0f0e8fd412ce52f3f622b349cc6dfc3947b8e4
3
+ metadata.gz: 6f291e5c1c237cc6c6358da9753353f40f3f7bad4c97ace2626a2c030ec8101a
4
+ data.tar.gz: 14f486833999a5ba37ea05143091a0ff186cc78c998a5fc59bd37d2dfc7c7b0b
5
5
  SHA512:
6
- metadata.gz: e9358c33379e5daddcf7ca18f81de2cbb74d1306f4183892f58529c351a76575287abc8d5139570edbaa1b95399f514ea9ca1d05b881c21650ef1ea94a230dc1
7
- data.tar.gz: 9201fd2044696e5c30feeef59ea819a9c5260832483107ce5da89037debc1aadd37f1f1f710a8fae3d15ee6764b90866a3527ae80fe4e821f7d89e9b8e75cbca
6
+ metadata.gz: fb8ca5dcda94fbf1f68ca45aa8037c2d8b11424b35ffae3af25dd8d9973954a8abbee2369aa62e54d2e881d58640ce07d39107c75d8c12edf7f9b8b9696b835f
7
+ data.tar.gz: 68f78448fd30aa9ba5703ec8e20089811c4732ded2e9323c325920e68af65ab40d851022013846808b4cb50ced6e352a57b5830c9cec812cb185312a17524eab
@@ -1,14 +1,21 @@
1
1
  import { Application } from "@hotwired/stimulus"
2
2
 
3
- const application = Application.start()
4
-
5
- const importmap = JSON.parse(document.querySelector("script[type=importmap]").text)
6
- const importedControllerPaths = Object.keys(importmap.imports).filter((e) => e.match("controllers/"))
3
+ function registerControllersFrom(under) {
4
+ const paths = Object.keys(importmap).filter(path => path.match(new RegExp(`^${under}/.*_controller$`)))
5
+ paths.forEach(path => registerControllerFromPath(path, under))
6
+ }
7
7
 
8
- importedControllerPaths.forEach(function(path) {
9
- const name = path.replace("controllers/", "").replace("_controller", "").replace(/\//g, "--").replace(/_/g, "-")
8
+ function registerControllerFromPath(path, under) {
9
+ const name = path.replace(`${under}/`, "").replace("_controller", "").replace(/\//g, "--").replace(/_/g, "-")
10
10
 
11
11
  import(path)
12
12
  .then(module => application.register(name, module.default))
13
- .catch(error => console.log(`Failed to autoload controller: ${name}`, error))
14
- })
13
+ .catch(error => console.log(`Failed to register controller: ${name} (${path})`, error))
14
+ }
15
+
16
+ const application = Application.start()
17
+ const importmap = JSON.parse(document.querySelector("script[type=importmap]").text).imports
18
+
19
+ registerControllersFrom("controllers")
20
+
21
+ export { application, registerControllersFrom }
@@ -22,6 +22,6 @@ if IMPORTMAP_PATH.exist?
22
22
  after: "Rails.application.config.importmap.draw do\n"
23
23
  else
24
24
  say <<~INSTRUCTIONS, :red
25
- You must add @rails/actiontext and trix to your importmap to reference them via ESM.
25
+ You must add @hotwired/stimulus and @hotwired/stimulus-importmap-autoloader to your importmap to reference them via ESM.
26
26
  INSTRUCTIONS
27
27
  end
@@ -1,3 +1,3 @@
1
1
  module Stimulus
2
- VERSION = "0.3.8"
2
+ VERSION = "0.3.9"
3
3
  end
metadata CHANGED
@@ -1,16 +1,16 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: stimulus-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.8
4
+ version: 0.3.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sam Stephenson
8
8
  - Javan Mahkmali
9
9
  - David Heinemeier Hansson
10
- autorequire:
10
+ autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2021-08-20 00:00:00.000000000 Z
13
+ date: 2021-08-25 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rails
@@ -26,7 +26,7 @@ dependencies:
26
26
  - - ">="
27
27
  - !ruby/object:Gem::Version
28
28
  version: 6.0.0
29
- description:
29
+ description:
30
30
  email: david@loudthinking.com
31
31
  executables: []
32
32
  extensions: []
@@ -53,7 +53,7 @@ licenses:
53
53
  metadata:
54
54
  homepage_uri: https://stimulus.hotwired.dev
55
55
  source_code_uri: https://github.com/hotwired/stimulus-rails
56
- post_install_message:
56
+ post_install_message:
57
57
  rdoc_options: []
58
58
  require_paths:
59
59
  - lib
@@ -69,7 +69,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
69
69
  version: '0'
70
70
  requirements: []
71
71
  rubygems_version: 3.1.4
72
- signing_key:
72
+ signing_key:
73
73
  specification_version: 4
74
74
  summary: A modest JavaScript framework for the HTML you already have.
75
75
  test_files: []