glimmer 0.9.5 → 0.10.4
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 +4 -4
- data/README.md +936 -147
- data/VERSION +1 -1
- data/lib/glimmer.rb +9 -14
- data/lib/glimmer/config.rb +31 -12
- data/lib/glimmer/data_binding/observable_array.rb +225 -22
- data/lib/glimmer/data_binding/observable_model.rb +5 -3
- data/lib/glimmer/data_binding/observer.rb +4 -6
- data/lib/glimmer/dsl/engine.rb +3 -3
- data/lib/glimmer/dsl/expression_handler.rb +2 -3
- metadata +24 -4
data/lib/glimmer/dsl/engine.rb
CHANGED
@@ -96,7 +96,7 @@ module Glimmer
|
|
96
96
|
dynamic_expression_chains_of_responsibility[dsl] = expression_names.reverse.map do |expression_name|
|
97
97
|
expression_class(dsl_namespace, expression_name).new
|
98
98
|
end.reduce(nil) do |last_expresion_handler, expression|
|
99
|
-
Glimmer::Config.logger
|
99
|
+
Glimmer::Config.logger.info {"Adding dynamic expression: #{expression.class.name}"}
|
100
100
|
expression_handler = ExpressionHandler.new(expression)
|
101
101
|
expression_handler.next = last_expresion_handler if last_expresion_handler
|
102
102
|
expression_handler
|
@@ -104,7 +104,7 @@ module Glimmer
|
|
104
104
|
end
|
105
105
|
|
106
106
|
def add_static_expression(static_expression)
|
107
|
-
Glimmer::Config.logger
|
107
|
+
Glimmer::Config.logger.info {"Adding static expression: #{static_expression.class.name}"}
|
108
108
|
keyword = static_expression.class.keyword
|
109
109
|
static_expression_dsl = static_expression.class.dsl
|
110
110
|
static_expressions[keyword] ||= {}
|
@@ -132,7 +132,7 @@ module Glimmer
|
|
132
132
|
if !static_expression.can_interpret?(Glimmer::DSL::Engine.parent, keyword, *args, &block)
|
133
133
|
raise Error, "Invalid use of Glimmer keyword #{keyword} with args #{args} under parent #{Glimmer::DSL::Engine.parent}"
|
134
134
|
else
|
135
|
-
Glimmer::Config.logger
|
135
|
+
Glimmer::Config.logger.info {"#{static_expression.class.name} will handle expression keyword #{keyword}"}
|
136
136
|
static_expression.interpret(Glimmer::DSL::Engine.parent, keyword, *args, &block).tap do |ui_object|
|
137
137
|
Glimmer::DSL::Engine.add_content(ui_object, static_expression, &block) unless block.nil?
|
138
138
|
Glimmer::DSL::Engine.dsl_stack.pop
|
@@ -23,9 +23,9 @@ module Glimmer
|
|
23
23
|
# Otherwise, it forwards to the next handler configured via `#next=` method
|
24
24
|
# If there is no handler next, then it raises an error
|
25
25
|
def handle(parent, keyword, *args, &block)
|
26
|
-
Glimmer::Config.logger
|
26
|
+
Glimmer::Config.logger.info {"Attempting to handle #{keyword} with #{@expression.class.name.split(":").last}"}
|
27
27
|
if @expression.can_interpret?(parent, keyword, *args, &block)
|
28
|
-
Glimmer::Config.logger
|
28
|
+
Glimmer::Config.logger.info {"#{@expression.class.name} will handle expression keyword #{keyword}"}
|
29
29
|
return @expression
|
30
30
|
elsif @next_expression_handler
|
31
31
|
return @next_expression_handler.handle(parent, keyword, *args, &block)
|
@@ -34,7 +34,6 @@ module Glimmer
|
|
34
34
|
message = "Glimmer keyword #{keyword} with args #{args} cannot be handled"
|
35
35
|
message += " inside parent #{parent}" if parent
|
36
36
|
message += "! Check the validity of the code."
|
37
|
-
# Glimmer::Config.logger&.error message
|
38
37
|
raise InvalidKeywordError, message
|
39
38
|
end
|
40
39
|
end
|
metadata
CHANGED
@@ -1,15 +1,35 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: glimmer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.10.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- AndyMaleh
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2020-
|
11
|
+
date: 2020-09-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
requirement: !ruby/object:Gem::Requirement
|
15
|
+
requirements:
|
16
|
+
- - ">="
|
17
|
+
- !ruby/object:Gem::Version
|
18
|
+
version: 1.0.2
|
19
|
+
- - "<"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 2.0.0
|
22
|
+
name: array_include_methods
|
23
|
+
type: :runtime
|
24
|
+
prerelease: false
|
25
|
+
version_requirements: !ruby/object:Gem::Requirement
|
26
|
+
requirements:
|
27
|
+
- - ">="
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 1.0.2
|
30
|
+
- - "<"
|
31
|
+
- !ruby/object:Gem::Version
|
32
|
+
version: 2.0.0
|
13
33
|
- !ruby/object:Gem::Dependency
|
14
34
|
requirement: !ruby/object:Gem::Requirement
|
15
35
|
requirements:
|
@@ -63,7 +83,7 @@ dependencies:
|
|
63
83
|
requirements:
|
64
84
|
- - "~>"
|
65
85
|
- !ruby/object:Gem::Version
|
66
|
-
version: 0.
|
86
|
+
version: 0.10.0
|
67
87
|
name: puts_debuggerer
|
68
88
|
type: :development
|
69
89
|
prerelease: false
|
@@ -71,7 +91,7 @@ dependencies:
|
|
71
91
|
requirements:
|
72
92
|
- - "~>"
|
73
93
|
- !ruby/object:Gem::Version
|
74
|
-
version: 0.
|
94
|
+
version: 0.10.0
|
75
95
|
- !ruby/object:Gem::Dependency
|
76
96
|
requirement: !ruby/object:Gem::Requirement
|
77
97
|
requirements:
|