live 0.15.0 → 0.16.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: 35d2a64d31fa83855d4dd194f497ef9c948c9d03fde7fabf73256bdccec8d03e
4
- data.tar.gz: 161456e3ee4ded05ff1c6e58e81d78a098ed28a19d33d9da4217f2d4bc190db1
3
+ metadata.gz: 960ab85523261e6aed7869a0bdaf9d0287b78a1582f7a45ed5d7de9d664fb1bb
4
+ data.tar.gz: '0848d0c2cc6c14702eb886a7eb719bf81e15e51f52b8500e736602743860213c'
5
5
  SHA512:
6
- metadata.gz: ba9b1e779713e8330e440d1d3f3fbb67b4ef41708e0d549828790d135f4e7e80e4420292e923dad5941be0e9ff538c6184383600773490fd6ee36ec8e796228c
7
- data.tar.gz: f1f9df657949d4c56d5b99ccb2a280e4f9599d45152a1a96db3ca039401593d48df0fbe5e510d749f98e719b768fdd5fa9211bd58a25fa0c48e40b23fd137954
6
+ metadata.gz: aa1822962cb839eac75ae7cef53abd80d3ede0bfb12d0844520aa1862328c0be64ea77df95388f12acb4d29b19005a872df7d008d50582ea28c6e22ba291063e
7
+ data.tar.gz: d4450a385662da48c87b2ed7f586ade4b44f2019889bf62a883edfedcf61a6397b44e7430e3a1a089e689558950d27027b4244932f4d252d99d793987f2ed54a
checksums.yaml.gz.sig CHANGED
Binary file
data/lib/live/element.rb CHANGED
@@ -16,18 +16,30 @@ module Live
16
16
  SecureRandom.uuid
17
17
  end
18
18
 
19
+ # Mount an element within a parent element.
19
20
  def self.mount(parent, id, data = {})
20
21
  full_id = parent.id + ":" + id
21
22
 
22
23
  self.new(full_id, data)
23
24
  end
24
25
 
26
+ # Create a new element with a convenient syntax for specifying the id and data.
27
+ #
25
28
  # @parameter id [String] The unique identifier within the page.
26
29
  # @parameter data [Hash] The data associated with the element, typically stored as `data-` attributes.
27
- def initialize(id = Element.unique_id, data = {})
30
+ def self.[](id = self.unique_id, **data)
31
+ self.new(id, data)
32
+ end
33
+
34
+ # Initialize the element with the specified id and data.
35
+ #
36
+ # @parameter id [String] The unique identifier within the page.
37
+ # @parameter data [Hash] The data associated with the element, typically stored as `data-` attributes.
38
+ def initialize(id = self.class.unique_id, data = {})
39
+ data[:class] ||= self.class.name
40
+
28
41
  @id = id
29
42
  @data = data
30
- @data[:class] ||= self.class.name
31
43
  @page = nil
32
44
  end
33
45
 
data/lib/live/version.rb CHANGED
@@ -4,5 +4,5 @@
4
4
  # Copyright, 2021-2024, by Samuel Williams.
5
5
 
6
6
  module Live
7
- VERSION = "0.15.0"
7
+ VERSION = "0.16.0"
8
8
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: live
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.15.0
4
+ version: 0.16.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
@@ -39,7 +39,7 @@ cert_chain:
39
39
  Q2K9NVun/S785AP05vKkXZEFYxqG6EW012U4oLcFl5MySFajYXRYbuUpH6AY+HP8
40
40
  voD0MPg1DssDLKwXyt1eKD/+Fq0bFWhwVM/1XiAXL7lyYUyOq24KHgQ2Csg=
41
41
  -----END CERTIFICATE-----
42
- date: 2024-10-28 00:00:00.000000000 Z
42
+ date: 2024-11-24 00:00:00.000000000 Z
43
43
  dependencies:
44
44
  - !ruby/object:Gem::Dependency
45
45
  name: async-websocket
@@ -118,7 +118,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
118
118
  - !ruby/object:Gem::Version
119
119
  version: '0'
120
120
  requirements: []
121
- rubygems_version: 3.5.11
121
+ rubygems_version: 3.5.22
122
122
  signing_key:
123
123
  specification_version: 4
124
124
  summary: Live HTML tags updated via a WebSocket.
metadata.gz.sig CHANGED
Binary file