glimmer-dsl-web 0.6.2 → 0.6.3

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: eecb0321e7308184ed4fb10bb9811c76a5e118cd7157e9956c29427e15717573
4
- data.tar.gz: 61561e5ca787eb1bda14e6d2cb62fcc0b312900b0ecd1b34fcdaf16d9b9b58da
3
+ metadata.gz: 1b1f765a70f77192db38a6708464bd650f527c4ff178da9e3917b29badbd60af
4
+ data.tar.gz: 63ad764705abe1b4713ec103318ee1cc6259cad21c19dc8979d70225f4b503e2
5
5
  SHA512:
6
- metadata.gz: 1a19b667b26371cce71670e8cb081130802712f125cab5be871f0b28bc6e8f4ee5ec391ce6b67203d52efe5f81da928f21ac0831a6484d2617c64e5ad9d0da1c
7
- data.tar.gz: 751743fa39296af6e62c0af64b3a54a9b40ecb74cabc8192f77f539d3e196112522e5efd8a7fa5eb61a9fe86894d0c82128294bf6ab37a4f2efb39e2d364b255
6
+ metadata.gz: fb1f03ef156c17f36ad9748f79a1fd4a74045c9904a3ee491d32c40a9f2d658b748a7cfd6733e60dc3aa0374ddba65d5ef2ccdb827bb3afe9267cdabcfa5767a
7
+ data.tar.gz: 257427e76c455af64f6230beddd30b85d1ea555eb604ad920e86eb4306039eabbe85908457776633381821934e63a9d22c760bca75c4614ae57ddbbaaf91e71c
data/CHANGELOG.md CHANGED
@@ -1,5 +1,9 @@
1
1
  # Change Log
2
2
 
3
+ ## 0.6.3
4
+
5
+ - Fix issue with not finding `inner_html=` on self in `ElementProxy` after Content Data-Binding and removal, due to forgetting to unregister all Content Data-Binding observers on remove of an element
6
+
3
7
  ## 0.6.2
4
8
 
5
9
  - Support specifying default slot in a Component with slots (e.g. `default_slot :some_slot`) to allow consumers to insert content into default slot by adding content directly under consumed component instead of opening a block with slot name explicitly
data/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # [<img src="https://raw.githubusercontent.com/AndyObtiva/glimmer/master/images/glimmer-logo-hi-res.png" height=85 />](https://github.com/AndyObtiva/glimmer) Glimmer DSL for Web 0.6.2 (Beta)
1
+ # [<img src="https://raw.githubusercontent.com/AndyObtiva/glimmer/master/images/glimmer-logo-hi-res.png" height=85 />](https://github.com/AndyObtiva/glimmer) Glimmer DSL for Web 0.6.3 (Beta)
2
2
  ## Ruby-in-the-Browser Web Frontend Framework
3
3
  ### The "Rails" of Frontend Frameworks!!!
4
4
  #### Finally, Ruby Developer Productivity, Happiness, and Fun in the Frontend!!!
@@ -1403,7 +1403,7 @@ rails new glimmer_app_server
1403
1403
  Add the following to `Gemfile`:
1404
1404
 
1405
1405
  ```
1406
- gem 'glimmer-dsl-web', '~> 0.6.2'
1406
+ gem 'glimmer-dsl-web', '~> 0.6.3'
1407
1407
  ```
1408
1408
 
1409
1409
  Run:
@@ -1632,7 +1632,7 @@ Disable the `webpacker` gem line in `Gemfile`:
1632
1632
  Add the following to `Gemfile`:
1633
1633
 
1634
1634
  ```ruby
1635
- gem 'glimmer-dsl-web', '~> 0.6.2'
1635
+ gem 'glimmer-dsl-web', '~> 0.6.3'
1636
1636
  ```
1637
1637
 
1638
1638
  Run:
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.6.2
1
+ 0.6.3
@@ -2,16 +2,16 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: glimmer-dsl-web 0.6.2 ruby lib
5
+ # stub: glimmer-dsl-web 0.6.3 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "glimmer-dsl-web".freeze
9
- s.version = "0.6.2"
9
+ s.version = "0.6.3"
10
10
 
11
11
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
12
  s.require_paths = ["lib".freeze]
13
13
  s.authors = ["Andy Maleh".freeze]
14
- s.date = "2024-09-30"
14
+ s.date = "2024-10-01"
15
15
  s.description = "Glimmer DSL for Web (Ruby in the Browser Web Frontend Framework) enables building Web Frontends using Ruby in the Browser, as per Matz's recommendation in his RubyConf 2022 keynote speech to replace JavaScript with Ruby. It aims at providing the simplest, most intuitive, most straight-forward, and most productive frontend framework in existence. The framework follows the Ruby way (with DSLs and TIMTOWTDI) and the Rails way (Convention over Configuration) in building Isomorphic Ruby on Rails Applications. It provides a Ruby HTML DSL, which uniquely enables writing both structure code and logic code in one language. It supports both Unidirectional (One-Way) Data-Binding (using <=) and Bidirectional (Two-Way) Data-Binding (using <=>). Dynamic rendering (and re-rendering) of HTML content is also supported via Content Data-Binding. Modular design is supported with Glimmer Web Components, Component Slots, and Component Custom Event Listeners. And, a Ruby CSS DSL is supported with the included Glimmer DSL for CSS. Many samples are demonstrated in the Rails sample app (there is a very minimal Standalone [No Rails] sample app too). You can finally live in pure Rubyland on the Web in both the frontend and backend with Glimmer DSL for Web! This gem relies on Opal Ruby.".freeze
16
16
  s.email = "andy.am@gmail.com".freeze
17
17
  s.extra_rdoc_files = [
@@ -249,6 +249,10 @@ module Glimmer
249
249
  element_binding.unregister_all_observables
250
250
  end
251
251
  data_bindings.clear
252
+ content_binding_observer_registrations.each do |observer_registration|
253
+ observer_registration.unregister
254
+ end
255
+ content_binding_observer_registrations.clear
252
256
  end
253
257
 
254
258
  # Subclasses can override with their own selector
@@ -695,10 +699,14 @@ module Glimmer
695
699
  end
696
700
  model_binding_observer = Glimmer::DataBinding::ModelBinding.new(*binding_args)
697
701
  content_binding_observer = Glimmer::DataBinding::Observer.proc(&content_binding_work)
698
- content_binding_observer.observe(model_binding_observer)
702
+ content_binding_observer_registrations << content_binding_observer.observe(model_binding_observer)
699
703
  content_binding_work.call # TODO inspect if we need to pass args here (from observed attributes) [but it's simpler not to pass anything at first]
700
704
  end
701
705
 
706
+ def content_binding_observer_registrations
707
+ @content_binding_observer_registrations ||= []
708
+ end
709
+
702
710
  def respond_to_missing?(method_name, include_private = false)
703
711
  # TODO consider doing more correct checking of availability of properties/methods using native ticks
704
712
  property_name = property_name_for(method_name)
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: glimmer-dsl-web
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.2
4
+ version: 0.6.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Andy Maleh
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-30 00:00:00.000000000 Z
11
+ date: 2024-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: glimmer