cable_ready 4.4.0.pre2 → 4.4.0.pre3

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: 336dc16eec4f5d8fef87d25319d07bbc2381ac552c384a2066387c209efa4782
4
- data.tar.gz: 782e97d08ef9d7adf559d1e69808adb779af99f54fbabe0c40091138fbe04cb9
3
+ metadata.gz: 2a833955cf21a426b40df8ef5beb2dae7bead6f3453fa5ec7a42d6e3c4beed72
4
+ data.tar.gz: 2b6127b78508063c572b5da7a97b44acde16004cac3a4b991c1bd36a6179a43a
5
5
  SHA512:
6
- metadata.gz: f59b24c3691502cf20f6c0b0b9d665adba7b5dab021b6dc411a790579040f97483766a0e97f3ad37d288f22c64869b0eaa8c8d9bee376b433b773974132d16bf
7
- data.tar.gz: 066c91020558f7ac188fcc11fbd86c182cb2f7a527608c6ec1ecc84f50014f515224e4fd60c45d625dbe9236c631c38f3c84e8b6f83bd899b0101f9442df2a75
6
+ metadata.gz: 60c2079789ba82ae87a39e32a8310975112ef83f18f4dccf01c478d5fd250922fc57848ea0d67860013d5ac1e0a84ac60b194cd83046bca241c28663ff0caa48
7
+ data.tar.gz: be3c28a26a62bbafd395baf681459f7d388a5e37afa659aff96c16c4a1b62256c225efe3d6e5e6fa4b560532758ed480ceec2ced9a45b57e961aaf95cdffebcc
@@ -2,7 +2,25 @@
2
2
 
3
3
  ## [Unreleased](https://github.com/hopsoft/cable_ready/tree/HEAD)
4
4
 
5
- [Full Changelog](https://github.com/hopsoft/cable_ready/compare/v4.4.0.pre1...HEAD)
5
+ [Full Changelog](https://github.com/hopsoft/cable_ready/compare/v4.4.0.pre2...HEAD)
6
+
7
+ **Closed issues:**
8
+
9
+ - CableReady detected an error in insertAdjacentHtml. Object doesn't support this action - IE11 only [\#76](https://github.com/hopsoft/cable_ready/issues/76)
10
+ - shouldMorph doesn't work well with some form elements [\#70](https://github.com/hopsoft/cable_ready/issues/70)
11
+ - Operations go missing before broadcasting [\#64](https://github.com/hopsoft/cable_ready/issues/64)
12
+
13
+ **Merged pull requests:**
14
+
15
+ - method chaining [\#78](https://github.com/hopsoft/cable_ready/pull/78) ([leastbad](https://github.com/leastbad))
16
+ - jquery support [\#75](https://github.com/hopsoft/cable_ready/pull/75) ([leastbad](https://github.com/leastbad))
17
+ - Removed isEqualNode comparison [\#71](https://github.com/hopsoft/cable_ready/pull/71) ([adank92](https://github.com/adank92))
18
+
19
+ # Changelog
20
+
21
+ ## [v4.4.0.pre2](https://github.com/hopsoft/cable_ready/tree/v4.4.0.pre2) (2020-11-02)
22
+
23
+ [Full Changelog](https://github.com/hopsoft/cable_ready/compare/v4.4.0.pre1...v4.4.0.pre2)
6
24
 
7
25
  **Merged pull requests:**
8
26
 
@@ -309,4 +327,7 @@
309
327
 
310
328
 
311
329
 
330
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
331
+
332
+
312
333
  \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
@@ -1,62 +1,62 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- cable_ready (4.4.0.pre2)
4
+ cable_ready (4.4.0.pre3)
5
5
  rails (>= 5.2)
6
6
 
7
7
  GEM
8
8
  remote: https://rubygems.org/
9
9
  specs:
10
- actioncable (6.0.3.3)
11
- actionpack (= 6.0.3.3)
10
+ actioncable (6.0.3.4)
11
+ actionpack (= 6.0.3.4)
12
12
  nio4r (~> 2.0)
13
13
  websocket-driver (>= 0.6.1)
14
- actionmailbox (6.0.3.3)
15
- actionpack (= 6.0.3.3)
16
- activejob (= 6.0.3.3)
17
- activerecord (= 6.0.3.3)
18
- activestorage (= 6.0.3.3)
19
- activesupport (= 6.0.3.3)
14
+ actionmailbox (6.0.3.4)
15
+ actionpack (= 6.0.3.4)
16
+ activejob (= 6.0.3.4)
17
+ activerecord (= 6.0.3.4)
18
+ activestorage (= 6.0.3.4)
19
+ activesupport (= 6.0.3.4)
20
20
  mail (>= 2.7.1)
21
- actionmailer (6.0.3.3)
22
- actionpack (= 6.0.3.3)
23
- actionview (= 6.0.3.3)
24
- activejob (= 6.0.3.3)
21
+ actionmailer (6.0.3.4)
22
+ actionpack (= 6.0.3.4)
23
+ actionview (= 6.0.3.4)
24
+ activejob (= 6.0.3.4)
25
25
  mail (~> 2.5, >= 2.5.4)
26
26
  rails-dom-testing (~> 2.0)
27
- actionpack (6.0.3.3)
28
- actionview (= 6.0.3.3)
29
- activesupport (= 6.0.3.3)
27
+ actionpack (6.0.3.4)
28
+ actionview (= 6.0.3.4)
29
+ activesupport (= 6.0.3.4)
30
30
  rack (~> 2.0, >= 2.0.8)
31
31
  rack-test (>= 0.6.3)
32
32
  rails-dom-testing (~> 2.0)
33
33
  rails-html-sanitizer (~> 1.0, >= 1.2.0)
34
- actiontext (6.0.3.3)
35
- actionpack (= 6.0.3.3)
36
- activerecord (= 6.0.3.3)
37
- activestorage (= 6.0.3.3)
38
- activesupport (= 6.0.3.3)
34
+ actiontext (6.0.3.4)
35
+ actionpack (= 6.0.3.4)
36
+ activerecord (= 6.0.3.4)
37
+ activestorage (= 6.0.3.4)
38
+ activesupport (= 6.0.3.4)
39
39
  nokogiri (>= 1.8.5)
40
- actionview (6.0.3.3)
41
- activesupport (= 6.0.3.3)
40
+ actionview (6.0.3.4)
41
+ activesupport (= 6.0.3.4)
42
42
  builder (~> 3.1)
43
43
  erubi (~> 1.4)
44
44
  rails-dom-testing (~> 2.0)
45
45
  rails-html-sanitizer (~> 1.1, >= 1.2.0)
46
- activejob (6.0.3.3)
47
- activesupport (= 6.0.3.3)
46
+ activejob (6.0.3.4)
47
+ activesupport (= 6.0.3.4)
48
48
  globalid (>= 0.3.6)
49
- activemodel (6.0.3.3)
50
- activesupport (= 6.0.3.3)
51
- activerecord (6.0.3.3)
52
- activemodel (= 6.0.3.3)
53
- activesupport (= 6.0.3.3)
54
- activestorage (6.0.3.3)
55
- actionpack (= 6.0.3.3)
56
- activejob (= 6.0.3.3)
57
- activerecord (= 6.0.3.3)
49
+ activemodel (6.0.3.4)
50
+ activesupport (= 6.0.3.4)
51
+ activerecord (6.0.3.4)
52
+ activemodel (= 6.0.3.4)
53
+ activesupport (= 6.0.3.4)
54
+ activestorage (6.0.3.4)
55
+ actionpack (= 6.0.3.4)
56
+ activejob (= 6.0.3.4)
57
+ activerecord (= 6.0.3.4)
58
58
  marcel (~> 0.3.1)
59
- activesupport (6.0.3.3)
59
+ activesupport (6.0.3.4)
60
60
  concurrent-ruby (~> 1.0, >= 1.0.2)
61
61
  i18n (>= 0.7, < 2)
62
62
  minitest (~> 5.1)
@@ -70,8 +70,9 @@ GEM
70
70
  concurrent-ruby (1.1.7)
71
71
  crass (1.0.6)
72
72
  erubi (1.9.0)
73
- faraday (1.0.1)
73
+ faraday (1.1.0)
74
74
  multipart-post (>= 1.2, < 3)
75
+ ruby2_keywords
75
76
  faraday-http-cache (2.2.0)
76
77
  faraday (>= 0.8)
77
78
  github_changelog_generator (1.15.2)
@@ -89,7 +90,7 @@ GEM
89
90
  loofah (2.7.0)
90
91
  crass (~> 1.0.2)
91
92
  nokogiri (>= 1.5.9)
92
- magic_frozen_string_literal (1.1.0)
93
+ magic_frozen_string_literal (1.2.0)
93
94
  mail (2.7.1)
94
95
  mini_mime (>= 0.1.1)
95
96
  marcel (0.3.3)
@@ -104,11 +105,11 @@ GEM
104
105
  nio4r (2.5.4)
105
106
  nokogiri (1.10.10)
106
107
  mini_portile2 (~> 2.4.0)
107
- octokit (4.18.0)
108
+ octokit (4.19.0)
108
109
  faraday (>= 0.9)
109
110
  sawyer (~> 0.8.0, >= 0.5.3)
110
- parallel (1.19.2)
111
- parser (2.7.1.5)
111
+ parallel (1.20.0)
112
+ parser (2.7.2.0)
112
113
  ast (~> 2.4.1)
113
114
  pry (0.12.2)
114
115
  coderay (~> 1.1.0)
@@ -119,52 +120,53 @@ GEM
119
120
  rack (2.2.3)
120
121
  rack-test (1.1.0)
121
122
  rack (>= 1.0, < 3)
122
- rails (6.0.3.3)
123
- actioncable (= 6.0.3.3)
124
- actionmailbox (= 6.0.3.3)
125
- actionmailer (= 6.0.3.3)
126
- actionpack (= 6.0.3.3)
127
- actiontext (= 6.0.3.3)
128
- actionview (= 6.0.3.3)
129
- activejob (= 6.0.3.3)
130
- activemodel (= 6.0.3.3)
131
- activerecord (= 6.0.3.3)
132
- activestorage (= 6.0.3.3)
133
- activesupport (= 6.0.3.3)
123
+ rails (6.0.3.4)
124
+ actioncable (= 6.0.3.4)
125
+ actionmailbox (= 6.0.3.4)
126
+ actionmailer (= 6.0.3.4)
127
+ actionpack (= 6.0.3.4)
128
+ actiontext (= 6.0.3.4)
129
+ actionview (= 6.0.3.4)
130
+ activejob (= 6.0.3.4)
131
+ activemodel (= 6.0.3.4)
132
+ activerecord (= 6.0.3.4)
133
+ activestorage (= 6.0.3.4)
134
+ activesupport (= 6.0.3.4)
134
135
  bundler (>= 1.3.0)
135
- railties (= 6.0.3.3)
136
+ railties (= 6.0.3.4)
136
137
  sprockets-rails (>= 2.0.0)
137
138
  rails-dom-testing (2.0.3)
138
139
  activesupport (>= 4.2.0)
139
140
  nokogiri (>= 1.6)
140
141
  rails-html-sanitizer (1.3.0)
141
142
  loofah (~> 2.3)
142
- railties (6.0.3.3)
143
- actionpack (= 6.0.3.3)
144
- activesupport (= 6.0.3.3)
143
+ railties (6.0.3.4)
144
+ actionpack (= 6.0.3.4)
145
+ activesupport (= 6.0.3.4)
145
146
  method_source
146
147
  rake (>= 0.8.7)
147
148
  thor (>= 0.20.3, < 2.0)
148
149
  rainbow (3.0.0)
149
150
  rake (13.0.1)
150
- regexp_parser (1.8.0)
151
+ regexp_parser (1.8.2)
151
152
  retriable (3.1.2)
152
153
  rexml (3.2.4)
153
- rubocop (0.92.0)
154
+ rubocop (1.2.0)
154
155
  parallel (~> 1.10)
155
156
  parser (>= 2.7.1.5)
156
157
  rainbow (>= 2.2.2, < 4.0)
157
- regexp_parser (>= 1.7)
158
+ regexp_parser (>= 1.8)
158
159
  rexml
159
- rubocop-ast (>= 0.5.0)
160
+ rubocop-ast (>= 1.0.1)
160
161
  ruby-progressbar (~> 1.7)
161
162
  unicode-display_width (>= 1.4.0, < 2.0)
162
- rubocop-ast (0.5.1)
163
+ rubocop-ast (1.1.1)
163
164
  parser (>= 2.7.1.5)
164
165
  rubocop-performance (1.8.1)
165
166
  rubocop (>= 0.87.0)
166
167
  rubocop-ast (>= 0.4.0)
167
168
  ruby-progressbar (1.10.1)
169
+ ruby2_keywords (0.0.2)
168
170
  sawyer (0.8.2)
169
171
  addressable (>= 2.3.5)
170
172
  faraday (> 0.8, < 2.0)
@@ -175,20 +177,20 @@ GEM
175
177
  actionpack (>= 4.0)
176
178
  activesupport (>= 4.0)
177
179
  sprockets (>= 3.0.0)
178
- standard (0.7)
179
- rubocop (= 0.92)
180
+ standard (0.9.0)
181
+ rubocop (= 1.2.0)
180
182
  rubocop-performance (= 1.8.1)
181
183
  standardrb (1.0.0)
182
184
  standard
183
185
  thor (1.0.1)
184
186
  thread_safe (0.3.6)
185
- tzinfo (1.2.7)
187
+ tzinfo (1.2.8)
186
188
  thread_safe (~> 0.1)
187
189
  unicode-display_width (1.7.0)
188
190
  websocket-driver (0.7.3)
189
191
  websocket-extensions (>= 0.1.0)
190
192
  websocket-extensions (0.1.5)
191
- zeitwerk (2.4.0)
193
+ zeitwerk (2.4.1)
192
194
 
193
195
  PLATFORMS
194
196
  ruby
data/README.md CHANGED
@@ -11,7 +11,7 @@
11
11
  <img alt="License: MIT" src="https://img.shields.io/badge/license-MIT-brightgreen.svg" target="_blank" />
12
12
  </a>
13
13
  <a href="http://blog.codinghorror.com/the-best-code-is-no-code-at-all/" target="_blank">
14
- <img alt="Lines of Code" src="https://img.shields.io/badge/lines_of_code-409-brightgreen.svg?style=flat" />
14
+ <img alt="Lines of Code" src="https://img.shields.io/badge/lines_of_code-416-brightgreen.svg?style=flat" />
15
15
  </a>
16
16
  <a href="https://cableready.stimulusreflex.com" target="_blank">
17
17
  <img alt="Documentation" src="https://img.shields.io/badge/documentation-yes-brightgreen.svg" />
@@ -84,8 +84,8 @@ Please run `./bin/standardize` prior submitting pull requests.
84
84
  1. Bump version number at `lib/cable_ready/version.rb`
85
85
  1. Run `rake build`
86
86
  1. Run `rake release`
87
- 1. Change directories `cd ./javascript`
88
- 1. Run `yarn publish` - NOTE: this will throw a fatal error because the tag already exists but the package will still publish
87
+ 1. Run `yarn publish --no-git-tag-version`
88
+ 1. Commit and push changes to the `package.json` file
89
89
 
90
90
  ## 📝 License
91
91
 
@@ -2,4 +2,4 @@
2
2
 
3
3
  bundle exec magic_frozen_string_literal
4
4
  bundle exec standardrb --fix
5
- cd ./javascript && yarn run prettier-standard cable_ready.js
5
+ yarn run prettier-standard ./javascript/*.js
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  require File.expand_path("../lib/cable_ready/version", __FILE__)
2
4
 
3
5
  Gem::Specification.new do |gem|
@@ -13,24 +13,33 @@ module CableReady
13
13
  end
14
14
  end
15
15
 
16
- def broadcast(clear)
16
+ def channel_broadcast(clear)
17
17
  operations.select! { |_, list| list.present? }
18
18
  operations.deep_transform_keys! { |key| key.to_s.camelize(:lower) }
19
19
  ActionCable.server.broadcast identifier, {"cableReady" => true, "operations" => operations}
20
20
  reset if clear
21
21
  end
22
22
 
23
- def broadcast_to(model, clear)
23
+ def channel_broadcast_to(model, clear)
24
24
  operations.select! { |_, list| list.present? }
25
25
  operations.deep_transform_keys! { |key| key.to_s.camelize(:lower) }
26
26
  identifier.broadcast_to model, {"cableReady" => true, "operations" => operations}
27
27
  reset if clear
28
28
  end
29
29
 
30
+ def broadcast(clear = true)
31
+ CableReady::Channels.instance.broadcast(identifier, clear)
32
+ end
33
+
34
+ def broadcast_to(model, clear = true)
35
+ CableReady::Channels.instance.broadcast_to(model, identifier, clear)
36
+ end
37
+
30
38
  private
31
39
 
32
- def add_operation(key, options)
40
+ def enqueue_operation(key, options)
33
41
  operations[key] << options
42
+ self
34
43
  end
35
44
 
36
45
  def reset
@@ -43,7 +43,7 @@ module CableReady
43
43
  end
44
44
 
45
45
  def add_operation(operation, &implementation)
46
- @operations[operation] = implementation || ->(options = {}) { add_operation(operation, options) }
46
+ @operations[operation] = implementation || ->(options = {}) { enqueue_operation(operation, options) }
47
47
  end
48
48
 
49
49
  def [](identifier)
@@ -56,7 +56,7 @@ module CableReady
56
56
  .reject { |channel| identifiers.any? && identifiers.exclude?(channel.identifier) }
57
57
  .select { |channel| channel.identifier.is_a?(String) }
58
58
  .tap do |channels|
59
- channels.each { |channel| @channels[channel.identifier].broadcast(clear) }
59
+ channels.each { |channel| @channels[channel.identifier].channel_broadcast(clear) }
60
60
  channels.each { |channel| @channels.except!(channel.identifier) if clear }
61
61
  end
62
62
  end
@@ -68,7 +68,7 @@ module CableReady
68
68
  .reject { |channel| identifiers.any? && identifiers.exclude?(channel.identifier) }
69
69
  .reject { |channel| channel.identifier.is_a?(String) }
70
70
  .tap do |channels|
71
- channels.each { |channel| @channels[channel.identifier].broadcast_to(model, clear) }
71
+ channels.each { |channel| @channels[channel.identifier].channel_broadcast_to(model, clear) }
72
72
  channels.each { |channel| @channels.except!(channel.identifier) if clear }
73
73
  end
74
74
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module CableReady
4
- VERSION = "4.4.0.pre2"
4
+ VERSION = "4.4.0.pre3"
5
5
  end
@@ -0,0 +1,36 @@
1
+ {
2
+ "name": "cable_ready",
3
+ "version": "4.4.0-pre2",
4
+ "description": "CableReady helps you create great real-time user experiences by making it simple to trigger client-side DOM changes from server-side Ruby.",
5
+ "keywords": [
6
+ "ruby",
7
+ "rails",
8
+ "websockets",
9
+ "actioncable",
10
+ "cable",
11
+ "ssr",
12
+ "stimulus_reflex",
13
+ "client-side",
14
+ "dom"
15
+ ],
16
+ "homepage": "https://cableready.stimulusreflex.com/",
17
+ "bugs": {
18
+ "url": "https://github.com/hopsoft/cable_ready/issues"
19
+ },
20
+ "repository": {
21
+ "type": "git",
22
+ "url": "git+https://github.com:hopsoft/cable_ready.git"
23
+ },
24
+ "license": "MIT",
25
+ "author": "Nathan Hopkins <natehop@gmail.com>",
26
+ "main": "./javascript/cable_ready.js",
27
+ "scripts": {
28
+ "prettier-standard-check": "yarn run prettier-standard --check ./javascript/**/*.js"
29
+ },
30
+ "dependencies": {
31
+ "morphdom": "^2.6.1"
32
+ },
33
+ "devDependencies": {
34
+ "prettier-standard": "^16.1.0"
35
+ }
36
+ }
data/tags CHANGED
@@ -14,20 +14,22 @@ Channel lib/cable_ready/channel.rb /^ class Channel$/;" c class:CableReady
14
14
  Channels lib/cable_ready/channels.rb /^ class Channels$/;" c class:CableReady
15
15
  Engine lib/cable_ready.rb /^ class Engine < Rails::Engine$/;" c class:CableReady
16
16
  [] lib/cable_ready/channels.rb /^ def [](identifier)$/;" f class:CableReady.Channels
17
- add_operation lib/cable_ready/channel.rb /^ def add_operation(key, options)$/;" f class:CableReady.Channel
18
17
  add_operation lib/cable_ready/channels.rb /^ def add_operation(operation, &implementation)$/;" f class:CableReady.Channels
19
- broadcast lib/cable_ready/channel.rb /^ def broadcast(clear)$/;" f class:CableReady.Channel
18
+ broadcast lib/cable_ready/channel.rb /^ def broadcast(clear = true)$/;" f class:CableReady.Channel
20
19
  broadcast lib/cable_ready/channels.rb /^ def broadcast(*identifiers, clear: true)$/;" f class:CableReady.Channels
21
- broadcast_to lib/cable_ready/channel.rb /^ def broadcast_to(model, clear)$/;" f class:CableReady.Channel
20
+ broadcast_to lib/cable_ready/channel.rb /^ def broadcast_to(model, clear = true)$/;" f class:CableReady.Channel
22
21
  broadcast_to lib/cable_ready/channels.rb /^ def broadcast_to(model, *identifiers, clear: true)$/;" f class:CableReady.Channels
23
22
  cable_ready lib/cable_ready/broadcaster.rb /^ def cable_ready$/;" f class:CableReady.Broadcaster
23
+ channel_broadcast lib/cable_ready/channel.rb /^ def channel_broadcast(clear)$/;" f class:CableReady.Channel
24
+ channel_broadcast_to lib/cable_ready/channel.rb /^ def channel_broadcast_to(model, clear)$/;" f class:CableReady.Channel
24
25
  configure lib/cable_ready/channels.rb /^ def self.configure$/;" F class:CableReady.Channels
25
- const.bubbles javascript/cable_ready.js /^ const init = { bubbles: true, cancelable: true }$/;" p
26
- const.cancelable javascript/cable_ready.js /^ const init = { bubbles: true, cancelable: true }$/;" p
26
+ const.bubbles javascript/cable_ready.js /^ const init = { bubbles: true, cancelable: true, detail: detail }$/;" p
27
+ const.cancelable javascript/cable_ready.js /^ const init = { bubbles: true, cancelable: true, detail: detail }$/;" p
27
28
  const.color javascript/cable_ready.js /^ color: true,$/;" p
28
29
  const.date javascript/cable_ready.js /^ date: true,$/;" p
29
30
  const.datetime javascript/cable_ready.js /^ datetime: true,$/;" p
30
31
  const.datetime-local javascript/cable_ready.js /^ 'datetime-local': true,$/;" p
32
+ const.detail javascript/cable_ready.js /^ const init = { bubbles: true, cancelable: true, detail: detail }$/;" p
31
33
  const.email javascript/cable_ready.js /^ email: true,$/;" p
32
34
  const.month javascript/cable_ready.js /^ month: true,$/;" p
33
35
  const.number javascript/cable_ready.js /^ number: true,$/;" p
@@ -45,6 +47,7 @@ const.url javascript/cable_ready.js /^ url: true,$/;" p
45
47
  const.value javascript/cable_ready.js /^ const ignore = { value: true }$/;" p
46
48
  const.week javascript/cable_ready.js /^ week: true$/;" p
47
49
  dom_id lib/cable_ready/broadcaster.rb /^ def dom_id(record, prefix = nil)$/;" f class:CableReady.Broadcaster
50
+ enqueue_operation lib/cable_ready/channel.rb /^ def enqueue_operation(key, options)$/;" f class:CableReady.Channel
48
51
  import.INPUT javascript/cable_ready.js /^ INPUT: true,$/;" p
49
52
  import.SELECT javascript/cable_ready.js /^ SELECT: true$/;" p
50
53
  import.TEXTAREA javascript/cable_ready.js /^ TEXTAREA: true,$/;" p