atome 0.5.3.8.0 → 0.5.3.8.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Rakefile +3 -3
- data/exe/atome +2 -3
- data/lib/atome/atome.rb +54 -35
- data/lib/atome/extensions/atome.rb +3 -2
- data/lib/atome/extensions/matrix.rb +27 -16
- data/lib/atome/genesis/generators/atome.rb +131 -88
- data/lib/atome/genesis/generators/identity.rb +82 -51
- data/lib/atome/genesis/generators/spatial.rb +8 -8
- data/lib/atome/genesis/generators/utility.rb +26 -17
- data/lib/atome/genesis/genesis.rb +11 -2
- data/lib/atome/genesis/sparkle.rb +6 -6
- data/lib/atome/helpers/essentials.rb +21 -17
- data/lib/atome/helpers/sanitizer.rb +10 -10
- data/lib/atome/helpers/utilities.rb +84 -28
- data/lib/atome/kernel/batch.rb +0 -1
- data/lib/atome/kernel/universe.rb +1 -1
- data/lib/atome/presets/atome.rb +22 -23
- data/lib/atome/renderers/browser/atome.rb +2 -1
- data/lib/atome/renderers/browser/helpers/browser_helper.rb +17 -0
- data/lib/atome/renderers/browser/helpers/text_helper.rb +10 -2
- data/lib/atome/renderers/browser/identity.rb +23 -5
- data/lib/atome/renderers/browser/utility.rb +5 -4
- data/lib/atome/renderers/renderer.rb +1 -0
- data/lib/atome/version.rb +1 -1
- data/sig/atome.rbs +20 -0
- data/sig/essentials.rbs +11 -0
- data/vendor/assets/src/medias/images/icons/email.svg +12 -12
- data/vendor/assets/src/medias/rubies/examples/!run.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/add.rb +2 -3
- data/vendor/assets/src/medias/rubies/examples/animation.rb +2 -2
- data/vendor/assets/src/medias/rubies/examples/atome_new.rb +18 -6
- data/vendor/assets/src/medias/rubies/examples/{parents.rb → attach.rb} +6 -6
- data/vendor/assets/src/medias/rubies/examples/attached.rb +4 -4
- data/vendor/assets/src/medias/rubies/examples/box.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/code.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/color.rb +20 -4
- data/vendor/assets/src/medias/rubies/examples/delete.rb +2 -2
- data/vendor/assets/src/medias/rubies/examples/drag.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/fullscreen.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/image.rb +2 -2
- data/vendor/assets/src/medias/rubies/examples/link.rb +7 -5
- data/vendor/assets/src/medias/rubies/examples/markers.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/materials.rb +15 -0
- data/vendor/assets/src/medias/rubies/examples/monitoring.rb +44 -18
- data/vendor/assets/src/medias/rubies/examples/read.rb +2 -2
- data/vendor/assets/src/medias/rubies/examples/shadow.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/table.rb +2 -2
- data/vendor/assets/src/medias/rubies/examples/text.rb +4 -4
- data/vendor/assets/src/medias/rubies/examples/time.rb +1 -1
- data/vendor/assets/src/medias/rubies/examples/web.rb +2 -2
- metadata +7 -5
- /data/vendor/assets/src/medias/rubies/examples/{matrix.rb → _matrix.rb} +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6e15b6625b3ba6dd5801418dd7dab9f9d0670dedb65e3ea8caa03df984f29541
|
4
|
+
data.tar.gz: 5a23055c7535a94ebe0c29b4dd226477b99564aa73a7f2640c533447bf24f52e
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ca47d04143b5d3cdec3120da89f863f3edaf84cbebee58fc257a8d12c7f1c2d699752ba6cc9e98e080cb10fbebe8900c788bd1c698705a59c7c0dfaa891073db
|
7
|
+
data.tar.gz: f1757fb74688cddb937f1a40790dd33ca121485a2446e2a5236f8de6ae9b302726b71521d2decd455e3cfca9613e37600075e91f3e96cf0777da3b5d67b4cb88
|
data/Rakefile
CHANGED
@@ -15,7 +15,7 @@ task :re_build do
|
|
15
15
|
FileUtils.copy_entry('vendor/assets/src/js/', 'test/test_app/src/js/')
|
16
16
|
FileUtils.copy_entry('vendor/assets/src/css/', 'test/test_app/src/css/')
|
17
17
|
FileUtils.copy_entry('vendor/assets/src/medias/', 'test/test_app/src/medias/')
|
18
|
-
`gem cleanup atome;yes | gem uninstall atome
|
18
|
+
`gem cleanup atome;yes | gem uninstall atome;gem build atome.gemspec;gem install atome --local`
|
19
19
|
`cd test/test_app;atome update`
|
20
20
|
puts 'solution re-build!'
|
21
21
|
# `cd test/test_app;atome update;atome run`
|
@@ -25,7 +25,7 @@ task :run_browser do
|
|
25
25
|
FileUtils.copy_entry('vendor/assets/src/js/', 'test/test_app/src/js/')
|
26
26
|
FileUtils.copy_entry('vendor/assets/src/css/', 'test/test_app/src/css/')
|
27
27
|
FileUtils.copy_entry('vendor/assets/src/medias/', 'test/test_app/src/medias/')
|
28
|
-
`gem cleanup atome;yes | gem uninstall atome
|
28
|
+
`gem cleanup atome;yes | gem uninstall atome;gem build atome.gemspec;gem install atome --local`
|
29
29
|
`cd test/test_app;atome update;atome run compile`
|
30
30
|
puts 'atome browser is running'
|
31
31
|
end
|
@@ -35,7 +35,7 @@ task :test_server do
|
|
35
35
|
FileUtils.copy_entry('vendor/assets/src/js/', 'test/test_app/src/js/')
|
36
36
|
FileUtils.copy_entry('vendor/assets/src/css/', 'test/test_app/src/css/')
|
37
37
|
FileUtils.copy_entry('vendor/assets/src/medias/', 'test/test_app/src/medias/')
|
38
|
-
`gem cleanup atome;yes | gem uninstall atome ;gem build atome.gemspec;gem install atome`
|
38
|
+
`gem cleanup atome;yes | gem uninstall atome ;gem build atome.gemspec;gem install atome --local`
|
39
39
|
`cd test/test_app;atome update;atome run server`
|
40
40
|
end
|
41
41
|
|
data/exe/atome
CHANGED
data/lib/atome/atome.rb
CHANGED
@@ -8,19 +8,20 @@
|
|
8
8
|
class Atome
|
9
9
|
# TODO : clean or delete @private_atome
|
10
10
|
include Essentials
|
11
|
+
|
11
12
|
private
|
12
13
|
|
13
14
|
def initialize(atomes = {}, &atomes_proc)
|
15
|
+
|
14
16
|
atomes.each_value do |elements|
|
15
17
|
# the instance variable below contain the id all any atomes that need to be informed when changes occurs
|
16
18
|
@broadcast = {}
|
17
19
|
# now we store the proc in a an atome's property called :bloc
|
18
20
|
elements[:code] = atomes_proc if atomes_proc
|
21
|
+
|
19
22
|
@atome = elements
|
20
|
-
# we initiate the rendering
|
21
|
-
|
22
|
-
# set type is a particle method it's dynamically generated at : generator/identity.rb
|
23
|
-
set_type(@atome[:type])
|
23
|
+
# we initiate the rendering suing set_type method,
|
24
|
+
# eg for for browser we will call :browser_type generate method in identity.rb file
|
24
25
|
collapse
|
25
26
|
end
|
26
27
|
end
|
@@ -30,7 +31,7 @@ class Atome
|
|
30
31
|
if params || params == false
|
31
32
|
# the line below execute the proc created when using the build_particle method
|
32
33
|
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
33
|
-
params = sanitize(element, params
|
34
|
+
params = sanitize(element, params, &user_proc)
|
34
35
|
create_particle(element, store, render)
|
35
36
|
send("set_#{element}", params, &user_proc)
|
36
37
|
else
|
@@ -47,41 +48,67 @@ class Atome
|
|
47
48
|
end
|
48
49
|
end
|
49
50
|
|
50
|
-
def
|
51
|
+
def atome_parsing(element, params, &user_proc)
|
51
52
|
params = sanitize(element, params)
|
53
|
+
current_atome = send(element).value
|
54
|
+
|
55
|
+
# The condition below check if we need to add or replace the newly created atome
|
56
|
+
if current_atome && !(@atome[:add] && @atome[:add][element])
|
57
|
+
detached(current_atome)
|
58
|
+
@atome[element] = []
|
59
|
+
end
|
60
|
+
|
61
|
+
|
62
|
+
# TODO :replace with the line below but need extensive testing as it crash some demos ex: animation
|
63
|
+
params = atome_common(element, params)
|
64
|
+
# ############ code to remove below
|
65
|
+
# parent_found = found_parents_and_renderers[:parent]
|
66
|
+
# render_found = found_parents_and_renderers[:renderers]
|
67
|
+
# default_params = Essentials.default_params[element] || {}
|
68
|
+
# generated_id = params[:id] || identity_generator(element)
|
69
|
+
#
|
70
|
+
# default_params = { renderers: render_found, id: generated_id, type: element,
|
71
|
+
# attach: parent_found }.merge(default_params)
|
72
|
+
# params = default_params.merge(params).merge({ clones: [] })
|
73
|
+
# ############ code to remove above
|
74
|
+
# puts params[:renderers]
|
75
|
+
# puts params[:id]
|
76
|
+
# new_params= {renderers: params[:renderers], id: params[:id]}.merge(params)
|
77
|
+
#
|
78
|
+
# params=new_params
|
79
|
+
# puts "new_params : #{params}"
|
80
|
+
###
|
81
|
+
###
|
82
|
+
# puts "params :\n #{params}\n\n, params2 :\n #{params2}"
|
52
83
|
run_optional_proc("pre_render_#{@atome[:type]}".to_sym, self, params, &user_proc)
|
53
|
-
create_atome(element)
|
54
84
|
run_optional_proc("post_render_#{@atome[:type]}".to_sym, self, params, &user_proc)
|
55
|
-
send("set_#{element}", params, &user_proc)
|
56
|
-
end
|
57
|
-
|
58
|
-
def atome_initializer(element, params = {})
|
59
|
-
temp_default = Essentials.default_params[element] || {}
|
60
|
-
generated_render = params[:renderers] || []
|
61
|
-
generated_id = params[:id] || identity_generator(:element)
|
62
|
-
|
63
|
-
generated_parents = params[:parents] || [id.value]
|
64
|
-
generated_children = params[:children] || []
|
65
|
-
temp_default[:id] = generated_id
|
66
|
-
temp_default[:parents] = generated_parents
|
67
|
-
temp_default[:clones] = []
|
68
|
-
temp_default[:renderers] = generated_render
|
69
|
-
temp_default[:children] = generated_children
|
70
|
-
temp_default.merge(params)
|
85
|
+
send("set_#{element}", params, &user_proc) # it call Atome.define_method "set_#{element}" in new_atome method
|
71
86
|
end
|
72
87
|
|
73
88
|
def new_atome(element, &method_proc)
|
74
|
-
Atome.define_method element do |params = nil, &user_proc|
|
75
89
|
|
90
|
+
# the method define below is the slowest but params are analysed and sanitized
|
91
|
+
Atome.define_method element do |params = nil, &user_proc|
|
76
92
|
if params
|
77
93
|
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
78
|
-
|
94
|
+
atome_parsing(element, params, &user_proc)
|
79
95
|
else
|
80
96
|
get_atome(element, &user_proc)
|
81
97
|
end
|
82
98
|
end
|
99
|
+
|
100
|
+
# the method define below is the fastest params are passed directly
|
101
|
+
Atome.define_method "set_#{element}" do |params, &user_proc|
|
102
|
+
# we add the newly created atome to the list of "child in it's category, eg if it's a shape we add the new atome
|
103
|
+
# to the shape particles list : @atome[:shape] << params[:id]
|
104
|
+
new_atome = Atome.new({ element => params }, &user_proc)
|
105
|
+
# Now we return the newly created atome instead of the current atome that is the parent cf: b=box; c=b.circle
|
106
|
+
# c must return the circle not the parent box
|
107
|
+
new_atome
|
108
|
+
end
|
83
109
|
# the method below generate Atome method creation at Object level
|
84
110
|
create_method_at_object_level(element)
|
111
|
+
|
85
112
|
end
|
86
113
|
|
87
114
|
def new_render_engine(renderer_name, &method_proc)
|
@@ -119,10 +146,10 @@ class Atome
|
|
119
146
|
# Params is now an instance variable so it should be passed thru different methods
|
120
147
|
instance_variable_set("@#{element}", params) if store
|
121
148
|
run_optional_proc("pre_render_#{element}".to_sym, self, params, &user_proc)
|
122
|
-
rendering(element,params, &user_proc) if render
|
149
|
+
rendering(element, params, &user_proc) if render
|
123
150
|
run_optional_proc("post_render_#{element}".to_sym, self, params, &user_proc)
|
124
151
|
broadcasting(element)
|
125
|
-
store_value(element)
|
152
|
+
store_value(element) if store
|
126
153
|
self
|
127
154
|
end
|
128
155
|
|
@@ -142,8 +169,6 @@ class Atome
|
|
142
169
|
virtual_atome.real_atome = @atome
|
143
170
|
virtual_atome.property = element
|
144
171
|
virtual_atome.user_proc = user_proc
|
145
|
-
# run_optional_proc("pre_get_#{@atome[:type]}".to_sym, 'virtual_atome', &user_proc)
|
146
|
-
# run_optional_proc("pre_get_#{element}".to_sym, self, 'virtual_atome', &user_proc)
|
147
172
|
virtual_atome
|
148
173
|
end
|
149
174
|
|
@@ -156,11 +181,5 @@ class Atome
|
|
156
181
|
virtual_atome
|
157
182
|
end
|
158
183
|
|
159
|
-
def create_atome(new_atome)
|
160
|
-
Atome.define_method "set_#{new_atome}" do |params, &user_proc|
|
161
|
-
Atome.new({ new_atome => params }, &user_proc)
|
162
|
-
end
|
163
|
-
end
|
164
|
-
|
165
184
|
Universe.connected
|
166
185
|
end
|
@@ -20,7 +20,7 @@ def new(params, &bloc)
|
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
23
|
-
def identity_generator(type
|
23
|
+
def identity_generator(type = :element)
|
24
24
|
"#{type}_#{Universe.counter}"
|
25
25
|
# { date: Time.now, location: geolocation }
|
26
26
|
end
|
@@ -46,7 +46,8 @@ end
|
|
46
46
|
def create_method_at_object_level(element)
|
47
47
|
|
48
48
|
Object.define_method element do |params, &user_proc|
|
49
|
-
|
49
|
+
default_parent=Essentials.default_params[element][:attach][0] # we get the first parents
|
50
|
+
grab(default_parent).send(element, params, &user_proc)
|
50
51
|
end
|
51
52
|
|
52
53
|
end
|
@@ -1,5 +1,4 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
#
|
3
2
|
|
4
3
|
module Matrix
|
5
4
|
def content(items = nil)
|
@@ -80,6 +79,7 @@ module Matrix
|
|
80
79
|
cells_to_alter = cells_in_column[value[0]..value[1]]
|
81
80
|
cells_to_alter.each_with_index do |cell_nb, index|
|
82
81
|
current_cell = grab("#{id.value}_#{cell_nb}")
|
82
|
+
# puts "==> current cell is #{id}"
|
83
83
|
if index.zero?
|
84
84
|
current_cell.height(cell_height * cells_to_alter.length + @margin * (cells_to_alter.length - 1))
|
85
85
|
else
|
@@ -173,9 +173,8 @@ module Matrix
|
|
173
173
|
x = (col_index + 1) * margin + col_index * cell_width
|
174
174
|
y = (row_index + 1) * margin + row_index * cell_height
|
175
175
|
current_cell = grab("#{matrix_id}_#{i}")
|
176
|
-
# puts
|
177
|
-
current_cell.
|
178
|
-
# puts "=>#{cell_width}"
|
176
|
+
# puts current_cell
|
177
|
+
current_cell.materials.each do |child|
|
179
178
|
grab(child).width(cell_width) if grab(child)
|
180
179
|
grab(child).height(cell_width) if grab(child)
|
181
180
|
end
|
@@ -189,19 +188,21 @@ module Matrix
|
|
189
188
|
|
190
189
|
# exceptions management
|
191
190
|
|
192
|
-
number_of_cells = nb_of_rows * nb_of_cols
|
191
|
+
# number_of_cells = nb_of_rows * nb_of_cols
|
193
192
|
# columns exceptions
|
193
|
+
# return
|
194
194
|
return unless exceptions
|
195
195
|
|
196
196
|
fusion({ columns: exceptions[:columns_fusion] }) if exceptions[:columns_fusion]
|
197
|
-
fusion({ rows: exceptions[:rows_fusion] }) if exceptions[:rows_fusion]
|
198
|
-
divide({ columns: exceptions[:columns_divided] }) if exceptions[:columns_divided]
|
199
|
-
divide({ rows: exceptions[:rows_divided] }) if exceptions[:rows_divided]
|
197
|
+
# fusion({ rows: exceptions[:rows_fusion] }) if exceptions[:rows_fusion]
|
198
|
+
# divide({ columns: exceptions[:columns_divided] }) if exceptions[:columns_divided]
|
199
|
+
# divide({ rows: exceptions[:rows_divided] }) if exceptions[:rows_divided]
|
200
200
|
end
|
201
201
|
|
202
202
|
def apply_style(current_cell, style)
|
203
203
|
current_cell.set(style)
|
204
204
|
end
|
205
|
+
|
205
206
|
def matrix_sanitizer(params)
|
206
207
|
default_params = {
|
207
208
|
|
@@ -213,8 +214,10 @@ module Matrix
|
|
213
214
|
}
|
214
215
|
default_params.merge(params)
|
215
216
|
end
|
217
|
+
|
216
218
|
def matrix(params = {}, &bloc)
|
217
|
-
params= matrix_sanitizer(params)
|
219
|
+
params = matrix_sanitizer(params)
|
220
|
+
|
218
221
|
columns_data = if params[:columns]
|
219
222
|
params.delete(:columns)
|
220
223
|
else
|
@@ -241,14 +244,17 @@ module Matrix
|
|
241
244
|
exceptions_data = params.delete(:exceptions)
|
242
245
|
default_renderer = Essentials.default_params[:render_engines]
|
243
246
|
atome_type = :matrix
|
244
|
-
generated_render = params[:renderers] || default_renderer
|
247
|
+
# generated_render = params[:renderers] || default_renderer
|
245
248
|
generated_id = params[:id] || identity_generator(:matrix)
|
246
|
-
|
247
|
-
generated_parents = params[:parents] || [id.value]
|
248
|
-
generated_children = params[:
|
249
|
-
params = atome_common(atome_type,
|
250
|
-
|
251
|
-
|
249
|
+
#
|
250
|
+
# generated_parents = params[:parents] || [id.value]
|
251
|
+
# generated_children = params[:shape] || []
|
252
|
+
# params = atome_common(atome_type, params)
|
253
|
+
params = atome_common(:matrix, params)
|
254
|
+
# puts "====>#{params} #{params.class}"
|
255
|
+
the_matrix = Atome.new( atome_type => params , &bloc)
|
256
|
+
# the_matrix = Atome.new(matrix: { type: :shape, id: :my_table, renderers: [:browser], parents: [] }, &bloc)
|
257
|
+
# example = Atome.new(code: { type: :code, renderers: [:headless], parents: [], children: [] })
|
252
258
|
# TODO: use the standard atome creation method (generator.build_atome(:collector)),
|
253
259
|
# TODO suite => For now its impossible to make it draggable because it return the created box not the matrix
|
254
260
|
# get necessary params
|
@@ -322,7 +328,10 @@ module Matrix
|
|
322
328
|
apply_style(current_cell, cells_data[:particles])
|
323
329
|
end
|
324
330
|
# lets create the columns and rows
|
331
|
+
|
332
|
+
# puts "(#{matrix_id}, #{matrix_width}, #{matrix_height}, #{rows}, #{columns}, #{margin}, #{exceptions})"
|
325
333
|
the_matrix.format_matrix(matrix_id, matrix_width, matrix_height, rows, columns, margin, exceptions)
|
334
|
+
|
326
335
|
the_matrix
|
327
336
|
end
|
328
337
|
|
@@ -405,3 +414,5 @@ end
|
|
405
414
|
class Atome
|
406
415
|
include Matrix
|
407
416
|
end
|
417
|
+
|
418
|
+
|
@@ -1,138 +1,181 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
new({ atome: :color })
|
3
|
+
new({ atome: :color, type: :hash })
|
4
4
|
|
5
5
|
new({ sanitizer: :color }) do |params|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
6
|
+
# TODO : when attaching color to a shadow it should colorized it , cf : c.shadow({color: :blue}) should work
|
7
|
+
# parent_found = found_parents_and_renderers[:parent]
|
8
|
+
# if parent_found == [:view]
|
9
|
+
# parent_found = [:black_matter] if parent_found == [:view]
|
10
|
+
# elsif color.value
|
11
|
+
# # we delete any previous color if there's one
|
12
|
+
# # puts "========= #{@atome[:color]}>We should delete the color now except : #{@atome[:add]} "
|
13
|
+
# unless @atome[:add] && @atome[:add][:color]
|
14
|
+
# detached(color.value)
|
15
|
+
# @atome[:color] = [] # we had the condition because the shadow may exist but
|
16
|
+
# end
|
17
|
+
# end
|
18
|
+
|
19
|
+
|
15
20
|
|
16
|
-
render_found = found_parents_and_renderers[:renderers]
|
17
|
-
generated_id = params[:id] || identity_generator(:color)
|
18
21
|
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
+
# puts "---> :: #{@atome[:add]}"
|
23
|
+
## we delete any previous shadow if there's one
|
24
|
+
# if color.value
|
25
|
+
# puts 'We should delete now'
|
26
|
+
# attached.value.delete(color.value)
|
27
|
+
# grab(color.value)&.delete(true) # we had the condition because the color may exist but
|
28
|
+
# # so it is not sanitized so it has no id
|
29
|
+
# end
|
30
|
+
# parent_found = found_parents_and_renderers[:parent]
|
31
|
+
# parent_found = [:user_view] if parent_found == [:view]
|
32
|
+
# render_found = found_parents_and_renderers[:renderers]
|
33
|
+
# generated_id = params[:id] || identity_generator(:color)
|
34
|
+
|
35
|
+
# default_params = { red: 0, green: 0, blue: 0, alpha: 1 }
|
22
36
|
params = create_color_hash(params) unless params.instance_of? Hash
|
23
|
-
new_params = default_params.merge!(params)
|
24
|
-
atome[:color] = new_params[:id]
|
25
|
-
|
37
|
+
# new_params = default_params.merge!(params)
|
38
|
+
# atome[:color] = [new_params[:id]]
|
39
|
+
# test below
|
40
|
+
# atome[:color] = [:poil]
|
41
|
+
# puts "==> #{color.value}"
|
42
|
+
# test above
|
43
|
+
# new_params
|
44
|
+
# atome[:color] << :poil
|
45
|
+
# params={}
|
46
|
+
#
|
47
|
+
params
|
26
48
|
end
|
27
49
|
|
50
|
+
# new({ sanitizer: :color }) do |params|
|
51
|
+
# parent_found = found_parents_and_renderers[:parent]
|
52
|
+
# # puts "'''''code_below_is_not_executed'''''"
|
53
|
+
# if parent_found == [:black_matter]
|
54
|
+
# alert :stop_get_out_we_are_the_strong_arm_of_the_law
|
55
|
+
# elsif color.value
|
56
|
+
# puts ">>> Code_below_is_not_executed : #{self}"
|
57
|
+
# # we delete any previous color if there's one
|
58
|
+
# # detached(color.value)
|
59
|
+
# grab(color.value)&.delete(true) # we had the condition because the color may exist but
|
60
|
+
# # so it is not sanitized so it has no id
|
61
|
+
# end
|
62
|
+
#
|
63
|
+
# render_found = found_parents_and_renderers[:renderers]
|
64
|
+
# generated_id = params[:id] || identity_generator(:color)
|
65
|
+
#
|
66
|
+
# default_params = { renderers: render_found, id: generated_id, type: :color,
|
67
|
+
# attach: parent_found,
|
68
|
+
# red: 0, green: 0, blue: 0, alpha: 1 }
|
69
|
+
# params = create_color_hash(params) unless params.instance_of? Hash
|
70
|
+
# new_params = default_params.merge!(params)
|
71
|
+
# new_params
|
72
|
+
# end
|
73
|
+
|
28
74
|
new({ atome: :image })
|
29
75
|
new({ sanitizer: :image }) do |params|
|
30
76
|
unless params.instance_of? Hash
|
31
77
|
# TODO : we have to convert all image to png or maintain a database with extension
|
32
78
|
params = { path: "./medias/images/#{params}" }
|
33
79
|
end
|
34
|
-
default_renderer = Essentials.default_params[:render_engines]
|
35
|
-
generated_id = params[:id] || identity_generator(:image)
|
36
|
-
|
37
|
-
generated_render = params[:renderers] || default_renderer
|
38
|
-
generated_parents = params[:
|
39
|
-
# TODO : the line below should get the value from default params Essentials
|
40
|
-
temp_default = { renderers: generated_render, id: generated_id, type: :image,
|
41
|
-
|
42
|
-
params = temp_default.merge(params)
|
80
|
+
# default_renderer = Essentials.default_params[:render_engines]
|
81
|
+
# generated_id = params[:id] || identity_generator(:image)
|
82
|
+
#
|
83
|
+
# generated_render = params[:renderers] || default_renderer
|
84
|
+
# generated_parents = params[:attach] || id.value
|
85
|
+
# # TODO : the line below should get the value from default params Essentials
|
86
|
+
# temp_default = { renderers: generated_render, id: generated_id, type: :image, attach: [generated_parents],
|
87
|
+
# width: 99, height: 99, path: './medias/images/atome.svg' }
|
88
|
+
# params = temp_default.merge(params)
|
43
89
|
params
|
44
90
|
end
|
45
91
|
new({ atome: :video })
|
46
|
-
new({ sanitizer: :video }) do |params|
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
end
|
55
|
-
new({ atome: :shadow })
|
92
|
+
# new({ sanitizer: :video }) do |params|
|
93
|
+
# parent_found = found_parents_and_renderers[:parent]
|
94
|
+
# render_found = found_parents_and_renderers[:renderers]
|
95
|
+
# generated_id = params[:id] || identity_generator(:video)
|
96
|
+
#
|
97
|
+
# default_params = { renderers: render_found, id: generated_id, type: :video,
|
98
|
+
# attach: parent_found }
|
99
|
+
# default_params.merge!(params)
|
100
|
+
# end
|
101
|
+
new({ atome: :shadow, type: :hash })
|
56
102
|
new({ sanitizer: :shadow }) do |params|
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
103
|
+
# TODO : when attaching color to a shadow it should colorised it , cf : c.shadow({color: :blue}) should work
|
104
|
+
# puts "############################{params}###{test}###{test2}##################################"
|
105
|
+
params = {} unless params.instance_of? Hash
|
106
|
+
# parent_found = found_parents_and_renderers[:parent]
|
107
|
+
# if parent_found == [:view]
|
108
|
+
# parent_found = [:black_matter] if parent_found == [:view]
|
109
|
+
# elsif shadow.value
|
110
|
+
# # we delete any previous color if there's one
|
111
|
+
# detached(shadow.value)
|
112
|
+
# grab(shadow.value)&.delete(true) # we had the condition because the shadow may exist but
|
113
|
+
# end
|
67
114
|
## we delete any previous shadow if there's one
|
68
115
|
# if shadow.value
|
69
116
|
# attached.value.delete(shadow.value)
|
70
|
-
# grab(shadow.value)&.delete(true) # we had the condition because the color may exist but
|
117
|
+
# grab(shadow.value)&.delete(true) # we had the condition because the color may exist but
|
71
118
|
# # so it is not sanitized so it has no id
|
72
119
|
# end
|
73
120
|
# parent_found = found_parents_and_renderers[:parent]
|
74
121
|
# parent_found = [:user_view] if parent_found == [:view]
|
75
|
-
render_found = found_parents_and_renderers[:renderers]
|
76
|
-
generated_id = params[:id] || identity_generator(:shadow)
|
122
|
+
# render_found = found_parents_and_renderers[:renderers]
|
123
|
+
# generated_id = params[:id] || identity_generator(:shadow)
|
124
|
+
|
125
|
+
# default_params = { renderers: render_found, id: generated_id, type: :shadow,
|
126
|
+
# attach: parent_found,
|
127
|
+
# red: 0, green: 0, blue: 0, alpha: 1, blur: 3, left: 3, top: 3 }
|
128
|
+
|
129
|
+
|
130
|
+
default_params = {red: 0, green: 0, blue: 0, alpha: 1, blur: 3, left: 3, top: 3 }
|
77
131
|
|
78
|
-
default_params = { renderers: render_found, id: generated_id, type: :shadow,
|
79
|
-
attach: parent_found,
|
80
|
-
red: 0, green: 0, blue: 0, alpha: 1, blur: 3, left: 3, top: 3 }
|
81
|
-
# default_params.merge!(params)
|
82
|
-
params = create_shadow_hash(params) unless params.instance_of? Hash
|
83
132
|
new_params = default_params.merge!(params)
|
84
|
-
atome[:shadow] = new_params
|
133
|
+
# atome[:shadow] = [new_params[:id]]
|
85
134
|
new_params
|
86
|
-
|
87
135
|
end
|
88
136
|
new({ atome: :shape })
|
89
137
|
new({ atome: :code })
|
90
138
|
new({ atome: :audio })
|
91
139
|
new({ atome: :element })
|
92
140
|
new({ sanitizer: :element }) do |params|
|
93
|
-
parent_found = found_parents_and_renderers[:parent]
|
94
|
-
render_found = []
|
95
|
-
generated_id = params[:id] || identity_generator(:element)
|
141
|
+
# parent_found = found_parents_and_renderers[:parent]
|
142
|
+
# render_found = []
|
143
|
+
# generated_id = params[:id] || identity_generator(:element)
|
96
144
|
|
97
|
-
default_params = {
|
98
|
-
parents: parent_found, data: '' }
|
145
|
+
default_params = { data: '' }
|
99
146
|
default_params.merge!(params)
|
100
147
|
end
|
101
148
|
new({ atome: :web })
|
102
149
|
new({ sanitizer: :web }) do |params|
|
103
|
-
default_renderer = Essentials.default_params[:render_engines]
|
104
|
-
generated_id = params[:id] || identity_generator(:web)
|
105
|
-
|
106
|
-
generated_render = params[:renderers] || default_renderer
|
107
|
-
generated_parents = params[:
|
150
|
+
# default_renderer = Essentials.default_params[:render_engines]
|
151
|
+
# generated_id = params[:id] || identity_generator(:web)
|
152
|
+
#
|
153
|
+
# generated_render = params[:renderers] || default_renderer
|
154
|
+
# generated_parents = params[:attach] || id.value
|
108
155
|
# TODO : the line below should get the value from default params Essentials
|
109
|
-
temp_default = {
|
110
|
-
children: [], width: 120, height: 120, path: 'https://www.youtube.com/embed/usQDazZKWAk' }
|
156
|
+
temp_default = { path: 'https://www.youtube.com/embed/usQDazZKWAk' }
|
111
157
|
params = temp_default.merge(params)
|
112
158
|
params
|
113
159
|
end
|
114
160
|
new({ atome: :collector })
|
115
161
|
new({ atome: :animation })
|
116
|
-
new({ sanitizer: :animation }) do |params|
|
117
|
-
|
118
|
-
|
119
|
-
|
120
|
-
|
121
|
-
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
new({ atome: :text })
|
162
|
+
# new({ sanitizer: :animation }) do |params|
|
163
|
+
# default_renderer = Essentials.default_params[:render_engines]
|
164
|
+
# atome_type = :animation
|
165
|
+
# generated_render = params[:renderers] || default_renderer
|
166
|
+
# generated_id = params[:id] || identity_generator(atome_type)
|
167
|
+
# generated_parents = params[:attach] || []
|
168
|
+
# params = atome_common(atome_type, generated_id, generated_render, generated_parents, params)
|
169
|
+
# params
|
170
|
+
# end
|
171
|
+
new({ atome: :text, type: :hash })
|
127
172
|
new({ sanitizer: :text }) do |params|
|
128
173
|
params = { data: params } unless params.instance_of? Hash
|
129
|
-
default_renderer = Essentials.default_params[:render_engines]
|
130
|
-
atome_type = :text
|
131
|
-
generated_render = params[:renderers] || default_renderer
|
132
|
-
generated_id = params[:id] || identity_generator(atome_type)
|
133
|
-
generated_parents = params[:
|
134
|
-
|
135
|
-
params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
|
174
|
+
# default_renderer = Essentials.default_params[:render_engines]
|
175
|
+
# atome_type = :text
|
176
|
+
# generated_render = params[:renderers] || default_renderer
|
177
|
+
# generated_id = params[:id] || identity_generator(atome_type)
|
178
|
+
# generated_parents = params[:attach] || [id.value]
|
179
|
+
# params = atome_common(atome_type, generated_id, generated_render, generated_parents, params)
|
136
180
|
params
|
137
181
|
end
|
138
|
-
|