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 +4 -4
- data/CHANGELOG.md +4 -0
- data/README.md +3 -3
- data/VERSION +1 -1
- data/glimmer-dsl-web.gemspec +3 -3
- data/lib/glimmer/web/element_proxy.rb +9 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 1b1f765a70f77192db38a6708464bd650f527c4ff178da9e3917b29badbd60af
|
4
|
+
data.tar.gz: 63ad764705abe1b4713ec103318ee1cc6259cad21c19dc8979d70225f4b503e2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
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.
|
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.
|
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.
|
1635
|
+
gem 'glimmer-dsl-web', '~> 0.6.3'
|
1636
1636
|
```
|
1637
1637
|
|
1638
1638
|
Run:
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.3
|
data/glimmer-dsl-web.gemspec
CHANGED
@@ -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.
|
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.
|
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-
|
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.
|
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-
|
11
|
+
date: 2024-10-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: glimmer
|