atome 0.5.6.4.8 → 0.5.6.5.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/atome/atome.rb +30 -30
- data/lib/atome/genesis/atomes.rb +9 -16
- data/lib/atome/genesis/genesis.rb +1 -1
- data/lib/atome/genesis/particles/effect.rb +9 -5
- data/lib/atome/genesis/particles/hierarchy.rb +7 -10
- data/lib/atome/genesis/particles/material.rb +22 -1
- data/lib/atome/genesis/particles/property.rb +40 -0
- data/lib/atome/genesis/particles/spatial.rb +6 -0
- data/lib/atome/genesis/sparkle.rb +23 -15
- data/lib/atome/kernel/universe.rb +19 -10
- data/lib/atome/presets/atome.rb +1 -1
- data/lib/atome/{helpers → utilities}/essentials.rb +2 -1
- data/lib/atome/{helpers → utilities}/utilities.rb +16 -1
- data/lib/atome/version.rb +1 -1
- data/lib/atome.rb +5 -5
- data/lib/atome_relative.rb +5 -5
- data/lib/renderers/html/effect.rb +22 -0
- data/lib/renderers/html/hierarchy.rb +11 -1
- data/lib/renderers/html/material.rb +20 -12
- data/lib/renderers/html/property.rb +0 -27
- data/lib/renderers/html/spatial.rb +9 -2
- data/vendor/assets/application/examples/border.rb +46 -15
- data/vendor/assets/application/examples/increment.rb +23 -0
- data/vendor/assets/application/examples/matrix.rb +11 -3
- data/vendor/assets/application/examples/shadow.rb +11 -1
- data/vendor/assets/server/eDen.rb +8 -1
- metadata +21 -21
- data/lib/atome/kernel/ruby +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/cmyk.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/css.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/grayscale.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/hsl.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/palette/adobecolor.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/palette/gimp.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/palette/monocontrast.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/palette.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/rgb/colors.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/rgb/contrast.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/rgb/metallic.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/rgb.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color/yiq.rb +0 -0
- /data/lib/atome/{helpers → utilities}/color_helper/color.rb +0 -0
- /data/lib/atome/{helpers → utilities}/sanitizer.rb +0 -0
- /data/lib/atome/{helpers → utilities}/security.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: 40ed4954cd1a97e3ebffa9a25d44de095ea8f1b825b91abab913ce9cf61535f6
|
4
|
+
data.tar.gz: c6da10feae807b7e738065951de242abfd3dcb31558552d2f47135bd41e67433
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 496ec64689699de33f6538034ba9ace545628ae2fcaa996521c747ffbb89d86461de0ac35580052d93ed1feb0518954cefc2e07afd6cab33f672ea44785ea299
|
7
|
+
data.tar.gz: 102a1c8266be193f3781154a597c1715e906e1da63f7df1e070e50c399f078a651947bc5f39d5f4f3a9423833fc0a7966dada61dc1199d280f086061dbe1bdce
|
data/lib/atome/atome.rb
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
class Atome
|
5
5
|
include Essentials
|
6
6
|
|
7
|
-
def aid(_v=nil)
|
7
|
+
def aid(_v = nil)
|
8
8
|
@aid
|
9
9
|
end
|
10
10
|
|
@@ -22,36 +22,36 @@ class Atome
|
|
22
22
|
# alert "atome found : #{ grab(new_atome[:id])}"
|
23
23
|
# grab(new_atome[:id])
|
24
24
|
# else
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
25
|
+
# the keys :renderers, :type and :id should be placed in the first position in the hash
|
26
|
+
@history = {}
|
27
|
+
# @language = :english
|
28
|
+
# @callback = {}
|
29
|
+
@tag = {}
|
30
|
+
@selected = false
|
31
|
+
#@metrics = {}
|
32
32
|
@unit = {}
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
33
|
+
@apply = []
|
34
|
+
@collect = {}
|
35
|
+
@int8 = {}
|
36
|
+
@css = {}
|
37
|
+
@aid = identity_generator
|
38
|
+
Universe.add_to_atomes(@aid, self)
|
39
|
+
@id = new_atome[:id] || @aid
|
40
|
+
Universe.id_to_aid(@id, @aid)
|
41
|
+
@type = new_atome[:type] || :element
|
42
|
+
@attached = []
|
43
|
+
@affect = []
|
44
|
+
@category = []
|
45
|
+
# @display = { mode: :default }
|
46
|
+
# @backup={} # mainly used to restore particle when using grid /table /list display mode
|
47
|
+
@html = HTML.new(@id, self)
|
48
|
+
@headless = Headless.new(@id, self)
|
49
|
+
# now we store the proc in a an atome's property called :bloc
|
50
|
+
new_atome[:code] = atomes_proc if atomes_proc
|
51
|
+
# we reorder the hash
|
52
|
+
reordered_atome = reorder_particles(new_atome)
|
53
|
+
# FIXME : try to remove the condition below (it crash in the method : def generator ... in genesis.rb)
|
54
|
+
collapse(reordered_atome)
|
55
55
|
# end
|
56
56
|
|
57
57
|
end
|
data/lib/atome/genesis/atomes.rb
CHANGED
@@ -35,7 +35,8 @@ new({ sanitizer: :color }) do |params|
|
|
35
35
|
params
|
36
36
|
end
|
37
37
|
# new({ post: :color }) do
|
38
|
-
#
|
38
|
+
#
|
39
|
+
# # Atome.global_monitoring(self, [:red, :blue, :blue, :alpha, :left, :right, :diffusion], [:variable1, :variable2])
|
39
40
|
# end
|
40
41
|
new({ atome: :image })
|
41
42
|
new({ sanitizer: :image }) do |params|
|
@@ -54,7 +55,6 @@ new({ post: :image }) do
|
|
54
55
|
instance_variable_set("@width", compute({ particle: :width })[:value])
|
55
56
|
instance_variable_set("@height", compute({ particle: :height })[:value])
|
56
57
|
end
|
57
|
-
|
58
58
|
new({ atome: :video })
|
59
59
|
new({ sanitizer: :video }) do |params|
|
60
60
|
unless params.instance_of? Hash
|
@@ -69,23 +69,17 @@ new({ sanitizer: :video }) do |params|
|
|
69
69
|
end
|
70
70
|
new({ atome: :www })
|
71
71
|
new({ atome: :shadow }) do |params|
|
72
|
-
# if params
|
73
|
-
# if params.delete(:affect)
|
74
|
-
# attach_value = params.delete(:affect)
|
75
|
-
# else
|
76
|
-
# attach_value=id
|
77
|
-
# end
|
78
|
-
#
|
79
|
-
# params[:affect] = attach_value
|
80
|
-
# alert "=> params : #{params}"
|
81
|
-
#
|
82
|
-
# end
|
83
|
-
|
84
72
|
if params
|
85
73
|
attach_value = params.delete(:affect)
|
86
74
|
params[:affect] = attach_value
|
87
75
|
end
|
88
|
-
|
76
|
+
params
|
77
|
+
end
|
78
|
+
new({ atome: :border }) do |params|
|
79
|
+
if params
|
80
|
+
attach_value = params.delete(:affect)
|
81
|
+
params[:affect] = attach_value
|
82
|
+
end
|
89
83
|
params
|
90
84
|
end
|
91
85
|
new({ atome: :raw })
|
@@ -130,7 +124,6 @@ end
|
|
130
124
|
new({ atome: :machine })
|
131
125
|
new({ atome: :paint })
|
132
126
|
new({ atome: :vector })
|
133
|
-
|
134
127
|
new({ atome: :matrix })
|
135
128
|
new({ atome: :atomized, type: :hash })
|
136
129
|
|
@@ -150,7 +150,7 @@ class Genesis
|
|
150
150
|
# end
|
151
151
|
# TODO : add category for atome( material/physical vs modifier : color, shadow, .. vs shape, image ..)
|
152
152
|
# then add condition same things fo code in presets/atome atome_common
|
153
|
-
if %i[color shadow paint].include?(element)
|
153
|
+
if %i[color shadow paint border].include?(element)
|
154
154
|
# we do the same for apply to be able to retrieve 'color' and other atome that apply instead of being attached
|
155
155
|
@apply.each do |attached_atome|
|
156
156
|
collected_atomes << attached_atome if grab(attached_atome).type.to_sym == element.to_sym
|
@@ -2,9 +2,13 @@
|
|
2
2
|
|
3
3
|
new({ particle: :smooth, category: :effect, type: :int })
|
4
4
|
|
5
|
-
|
6
5
|
new({ particle: :blur, category: :effect, type: :int }) do |params|
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
6
|
+
if affect.nil?
|
7
|
+
affect_to = affect
|
8
|
+
else
|
9
|
+
affect_to = [:self]
|
10
|
+
end
|
11
|
+
val= { value: params, affect: affect_to } unless params.instance_of?(Hash)
|
12
|
+
val
|
13
|
+
end
|
14
|
+
|
@@ -2,9 +2,9 @@
|
|
2
2
|
def detach_child(child)
|
3
3
|
return unless child.attach
|
4
4
|
|
5
|
-
|
6
|
-
|
7
|
-
|
5
|
+
parent = grab(child.attach)
|
6
|
+
parent.attached.delete(@id)
|
7
|
+
|
8
8
|
end
|
9
9
|
|
10
10
|
# def detach_from_parent(parent_found, child_found)
|
@@ -50,14 +50,14 @@ new({ sanitizer: :attached }) do |children_ids|
|
|
50
50
|
end
|
51
51
|
|
52
52
|
new({ particle: :apply, category: :hierarchy, type: :string, render: false, store: false }) do |parents_ids, &user_proc|
|
53
|
-
|
54
|
-
# html.reset_background
|
53
|
+
|
55
54
|
@apply ||= []
|
56
55
|
parents_ids = [parents_ids] unless parents_ids.instance_of?(Array)
|
57
56
|
parents_ids.each do |parent_id|
|
58
57
|
@apply.delete(parent_id)
|
59
58
|
@apply << parent_id
|
60
59
|
end
|
60
|
+
puts affect
|
61
61
|
parents_ids = @apply
|
62
62
|
children_ids = [id]
|
63
63
|
parents_ids.each do |parent_id|
|
@@ -66,16 +66,13 @@ new({ particle: :apply, category: :hierarchy, type: :string, render: false, stor
|
|
66
66
|
parent_found.instance_variable_set('@affect', []) unless parent_affect.instance_of? Array
|
67
67
|
affect_element = parent_found.instance_variable_get('@affect')
|
68
68
|
children_ids.each do |child_id|
|
69
|
-
# affect_element << child_id unless affect_element.include?(child_id)
|
70
69
|
affect_element.delete(child_id)
|
71
|
-
# affect_element.push(child_id)
|
72
70
|
affect_element << child_id
|
73
71
|
child_found = grab(child_id)
|
74
72
|
child_found&.render(:apply, parent_found, &user_proc)
|
75
73
|
end
|
76
74
|
end
|
77
75
|
@apply = parents_ids
|
78
|
-
|
79
76
|
parents_ids
|
80
77
|
end
|
81
78
|
|
@@ -83,9 +80,9 @@ new({ particle: :affect, category: :hierarchy, type: :string, render: false }) d
|
|
83
80
|
children_ids = [children_ids] unless children_ids.instance_of? Array
|
84
81
|
children_ids.each do |child_id|
|
85
82
|
child_found = grab(child_id)
|
86
|
-
#FIXME : found why it crash when removing the condition below
|
83
|
+
# FIXME : found why it crash when removing the condition below
|
87
84
|
unless child_found.id == :black_matter
|
88
|
-
child_found.remove({all: :paint})
|
85
|
+
child_found.remove({ all: :paint })
|
89
86
|
end
|
90
87
|
child_found.apply([id], &user_proc)
|
91
88
|
end
|
@@ -58,6 +58,10 @@ new({ post: :remove }) do |params|
|
|
58
58
|
shadow.each do |atome_id_found|
|
59
59
|
@apply.delete(atome_id_found)
|
60
60
|
end
|
61
|
+
when :border
|
62
|
+
border.each do |atome_id_found|
|
63
|
+
@apply.delete(atome_id_found)
|
64
|
+
end
|
61
65
|
else
|
62
66
|
params.each do |particle, value|
|
63
67
|
case particle
|
@@ -92,4 +96,21 @@ new({ sanitizer: :definition }) do |params|
|
|
92
96
|
end
|
93
97
|
|
94
98
|
new({ particle: :gradient, category: :material, type: :int })
|
95
|
-
|
99
|
+
|
100
|
+
new({ particle: :thickness, category: :material, type: :int })
|
101
|
+
new({ after: :thickness}) do |params|
|
102
|
+
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
103
|
+
a.each do |atome_to_refresh|
|
104
|
+
grab(atome_to_refresh).apply(id)
|
105
|
+
end
|
106
|
+
params
|
107
|
+
end
|
108
|
+
new({ particle: :pattern, category: :material, type: :string })
|
109
|
+
new({ after: :pattern })do |params|
|
110
|
+
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
111
|
+
a.each do |atome_to_refresh|
|
112
|
+
grab(atome_to_refresh).apply(id)
|
113
|
+
end
|
114
|
+
params
|
115
|
+
end
|
116
|
+
# new({ particle: :border, category: :material, type: :int })
|
@@ -7,24 +7,64 @@ def extract_rgb_alpha(color_string)
|
|
7
7
|
blue = match_data[3].to_i
|
8
8
|
alpha = match_data[4] ? match_data[4].to_f : nil
|
9
9
|
{ red: red, green: green, blue: blue, alpha: alpha }
|
10
|
+
|
10
11
|
end
|
11
12
|
|
12
13
|
new({ particle: :red, category: :property, type: :string }) do
|
14
|
+
# alert :ok
|
13
15
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
14
16
|
self
|
15
17
|
end
|
18
|
+
# FIXME we have to apply both at post and after to make it work
|
19
|
+
# used to refresh all affected atomes
|
20
|
+
new({after: :red}) do |params|
|
21
|
+
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
22
|
+
a.each do |atome_to_refresh|
|
23
|
+
grab(atome_to_refresh).apply(id)
|
24
|
+
end
|
25
|
+
params
|
26
|
+
end
|
27
|
+
|
28
|
+
|
16
29
|
new({ particle: :green, category: :property, type: :string }) do
|
17
30
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
18
31
|
self
|
19
32
|
end
|
33
|
+
|
34
|
+
# used to refresh all affected atomes
|
35
|
+
new({after: :green}) do |params|
|
36
|
+
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
37
|
+
a.each do |atome_to_refresh|
|
38
|
+
grab(atome_to_refresh).apply(id)
|
39
|
+
end
|
40
|
+
params
|
41
|
+
end
|
42
|
+
|
20
43
|
new({ particle: :blue, category: :property, type: :string }) do
|
21
44
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
22
45
|
self
|
23
46
|
end
|
47
|
+
|
48
|
+
# used to refresh all affected atomes
|
49
|
+
new({after: :blue}) do |params|
|
50
|
+
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
51
|
+
a.each do |atome_to_refresh|
|
52
|
+
grab(atome_to_refresh).apply(id)
|
53
|
+
end
|
54
|
+
params
|
55
|
+
end
|
24
56
|
new({ particle: :alpha, category: :property, type: :string }) do
|
25
57
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
26
58
|
self
|
27
59
|
end
|
60
|
+
# used to refresh all affected atomes
|
61
|
+
new({after: :alpha}) do |params|
|
62
|
+
a=affect.dup # FIXME we have to dup else some items in the array array other duplicated
|
63
|
+
a.each do |atome_to_refresh|
|
64
|
+
grab(atome_to_refresh).apply(id)
|
65
|
+
end
|
66
|
+
params
|
67
|
+
end
|
28
68
|
new({ particle: :diffusion, category: :property, type: :string }) do
|
29
69
|
# we return self to allow syntax of the type : a.color(:black).red(1).green(0.3)
|
30
70
|
self
|
@@ -90,3 +90,9 @@ new({ particle: :center, category: :spatial, type: :hash }) do |params|
|
|
90
90
|
params = { x: 0, y: 0, dynamic: true } if params == true
|
91
91
|
params
|
92
92
|
end
|
93
|
+
new ({ particle: :increment, category: :spatial, type: :hash }) do |params|
|
94
|
+
params.each do |particle, value|
|
95
|
+
prev_value=send(particle)
|
96
|
+
send(particle, value+prev_value)
|
97
|
+
end
|
98
|
+
end
|
@@ -142,13 +142,19 @@ def atome_genesis
|
|
142
142
|
atome_infos
|
143
143
|
A.server({ address: 'localhost:9292', type: 'ws' })
|
144
144
|
A.init_websocket do |msg|
|
145
|
-
puts "
|
145
|
+
puts "websocket initailsaed #{msg}"
|
146
146
|
end
|
147
147
|
end
|
148
148
|
|
149
149
|
def init_database # this method is call from JS (atome/communication) at WS connection
|
150
150
|
# we init the db file eDen
|
151
|
-
A.
|
151
|
+
A.sync({ action: :init_db, data: { database: :eDen } }) do |data|
|
152
|
+
|
153
|
+
if data[:data][:message] == 'database_ready'
|
154
|
+
Universe.database_ready = true
|
155
|
+
else
|
156
|
+
Universe.database_ready = false
|
157
|
+
end
|
152
158
|
end
|
153
159
|
# authentication : email, pass
|
154
160
|
# atome : date, particles
|
@@ -156,36 +162,37 @@ def init_database # this method is call from JS (atome/communication) at WS conn
|
|
156
162
|
|
157
163
|
particles = Universe.particle_list
|
158
164
|
# now we populate the DB
|
159
|
-
A.
|
165
|
+
A.sync({ action: :crate_db_table, data: { table: :user } }) do |_db_state|
|
166
|
+
# puts "===> #{_db_state}"
|
160
167
|
end
|
161
168
|
|
162
|
-
A.
|
169
|
+
A.sync({ action: :create_db_column, data: { table: :user, column: :email, type: :string } }) do |_db_state|
|
163
170
|
end
|
164
171
|
|
165
|
-
A.
|
172
|
+
A.sync({ action: :create_db_column, data: { table: :user, column: :password, type: :string } }) do |_db_state|
|
166
173
|
end
|
167
174
|
|
168
|
-
A.
|
175
|
+
A.sync({ action: :crate_db_table, data: { table: :history } }) do |_db_state|
|
169
176
|
end
|
170
|
-
A.
|
177
|
+
A.sync({ action: :create_db_column, data: { table: :history, column: :aid, type: :string } }) do |_db_state|
|
171
178
|
end
|
172
|
-
A.
|
179
|
+
A.sync({ action: :create_db_column, data: { table: :history, column: :particle, type: :string } }) do |_db_state|
|
173
180
|
end
|
174
|
-
A.
|
181
|
+
A.sync({ action: :create_db_column, data: { table: :history, column: :value, type: :string } }) do |_db_state|
|
175
182
|
end
|
176
|
-
A.
|
183
|
+
A.sync({ action: :create_db_column, data: { table: :history, column: :date, type: :datetime } }) do |_db_state|
|
177
184
|
end
|
178
185
|
|
179
|
-
A.
|
186
|
+
A.sync({ action: :crate_db_table, data: { table: :atome } }) do |_db_state|
|
180
187
|
end
|
181
188
|
particles.each do |particle, infos|
|
182
189
|
type = infos[:type]
|
183
|
-
A.
|
190
|
+
A.sync({ action: :create_db_column, data: { table: :atome, column: particle, type: type } }) do |_db_state|
|
184
191
|
end
|
185
192
|
end
|
186
193
|
|
187
194
|
# now we send localstorage content to the server
|
188
|
-
puts
|
195
|
+
puts "now we send localstorage send_localstorage_content to the server"
|
189
196
|
send_localstorage_content
|
190
197
|
# A.message({ action: :localstorage, data: get_localstorage_content }) do |_db_state|
|
191
198
|
# end
|
@@ -194,11 +201,12 @@ end
|
|
194
201
|
def user_login
|
195
202
|
# user = Universe.current_user
|
196
203
|
password = Black_matter.password
|
197
|
-
|
204
|
+
sync({ action: :authentication, data: { email: 'jeezs@atome.one' } }) do |email|
|
198
205
|
puts "email received : #{email}"
|
199
206
|
end
|
200
|
-
|
207
|
+
sync({ action: :authorization, data: { password: password } }) do |pass|
|
201
208
|
puts "password received : #{pass}"
|
202
209
|
end
|
203
210
|
end
|
211
|
+
|
204
212
|
# Universe.allow_history=true
|
@@ -11,18 +11,20 @@ class Universe
|
|
11
11
|
@sanitizers = {}
|
12
12
|
@specificities = {}
|
13
13
|
@messages = {}
|
14
|
-
|
14
|
+
@increment = 0
|
15
15
|
@categories = %w[atome communication effect event geometry hierarchy identity material
|
16
16
|
property security spatial time utility ]
|
17
17
|
@history = {}
|
18
18
|
@users = {}
|
19
19
|
@help = {}
|
20
20
|
@example = {}
|
21
|
-
@allow_history= false
|
21
|
+
@allow_history = false
|
22
|
+
@database_ready = false
|
22
23
|
# @historicize=false
|
23
24
|
class << self
|
24
|
-
attr_reader :atomes
|
25
|
-
attr_accessor :allow_history
|
25
|
+
attr_reader :atomes, :atomes_ids, :renderer_list, :atome_list, :particle_list, :classes, :counter, :atomes_specificities
|
26
|
+
attr_accessor :allow_history, :database_ready
|
27
|
+
|
26
28
|
def messages
|
27
29
|
@messages
|
28
30
|
end
|
@@ -124,11 +126,13 @@ class Universe
|
|
124
126
|
end
|
125
127
|
collected_id
|
126
128
|
end
|
129
|
+
|
127
130
|
def generate_uuid
|
128
|
-
uuid = SecureRandom.uuid.gsub('-','')
|
131
|
+
uuid = SecureRandom.uuid.gsub('-', '')
|
129
132
|
formatted_time = Time.now.strftime("%Y%m%d%H%M%S")
|
130
133
|
"#{uuid}#{formatted_time}"
|
131
134
|
end
|
135
|
+
|
132
136
|
def app_identity
|
133
137
|
# each app hav its own identity, this allow to generate new user identities from the
|
134
138
|
# unique_id = generate_unique_id_with_timestamp
|
@@ -237,11 +241,16 @@ class Universe
|
|
237
241
|
end
|
238
242
|
|
239
243
|
def historicize(id, operation, element, params)
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
244
|
+
|
245
|
+
if @allow_history && @database_ready
|
246
|
+
# sync
|
247
|
+
A.sync({ action: :historicize, data: { table: :user } }) do |_db_state|
|
248
|
+
# puts "===> #{_db_state}"
|
249
|
+
end
|
250
|
+
operation_timing = Time.now.strftime("%Y%m%d%H%M%S%3N") + @increment.to_s
|
251
|
+
@increment += 1
|
252
|
+
@increment = @increment % 100
|
253
|
+
JS.global[:localStorage].setItem(operation_timing, "{ #{id} => { #{operation} => { #{element} => #{params} } }, sync: false }")
|
245
254
|
@history[@history.length] = { operation_timing => { id => { operation => { element => params } }, sync: false, time: Time.now } }
|
246
255
|
end
|
247
256
|
end
|
data/lib/atome/presets/atome.rb
CHANGED
@@ -26,7 +26,7 @@ class Atome
|
|
26
26
|
# condition to handle color/shadow/paint atomes that shouldn't be attach to view
|
27
27
|
# TODO : add category for atome( material/physical vs modifier : color, shadow, .. vs shape, image ..)
|
28
28
|
# then add condition same things fo code in genesis new_atome
|
29
|
-
if %i[color shadow paint].include?(atome_preset)
|
29
|
+
if %i[color shadow paint border].include?(atome_preset)
|
30
30
|
unless params[:affect]
|
31
31
|
params[:affect] = if @id == :view
|
32
32
|
[:black_matter]
|
@@ -37,7 +37,8 @@ module Essentials
|
|
37
37
|
apply: [:text_color],
|
38
38
|
width: :auto, height: :auto, language: :english },
|
39
39
|
drm: { type: :drm, attach: :black_matter },
|
40
|
-
shadow: { type: :shadow, red: 0, green: 0, blue: 0, alpha:
|
40
|
+
shadow: { type: :shadow, red: 0, green: 0, blue: 0, alpha: 1, blur: 3, left: 3, top: 3 },
|
41
|
+
border: { type: :border, red: 0, green: 0, blue: 0, alpha: 0, pattern: :solid, thickness: 6 },
|
41
42
|
color: { type: :color, red: 0, green: 0, blue: 0, alpha: 1}
|
42
43
|
}
|
43
44
|
|
@@ -7,6 +7,8 @@ class Atome
|
|
7
7
|
class << self
|
8
8
|
|
9
9
|
|
10
|
+
|
11
|
+
|
10
12
|
def file_handler(parent, content, bloc)
|
11
13
|
grab(parent).instance_exec(content, &bloc)
|
12
14
|
end
|
@@ -303,11 +305,16 @@ class Atome
|
|
303
305
|
end
|
304
306
|
|
305
307
|
def refresh
|
308
|
+
# we get the current color because they will be removed
|
309
|
+
# prev_color=color
|
310
|
+
# alert color.class
|
306
311
|
particles_found = to_hash
|
307
312
|
particles_found.each do |particle_found, value_found|
|
308
313
|
send(particle_found, value_found)
|
309
314
|
end
|
310
|
-
|
315
|
+
color.each do |col|
|
316
|
+
apply(col)
|
317
|
+
end
|
311
318
|
end
|
312
319
|
|
313
320
|
def each(&proc)
|
@@ -449,6 +456,14 @@ class Atome
|
|
449
456
|
puts "sanitizer temp patch when an atome is passed instead of an id"
|
450
457
|
@id
|
451
458
|
end
|
459
|
+
|
460
|
+
def sync(params, &bloc)
|
461
|
+
params = { data: params } unless params.instance_of? Hash
|
462
|
+
message_id= "msg_#{Universe.messages.length}"
|
463
|
+
params[:message_id]=message_id
|
464
|
+
Universe.store_messages({msg_nb:message_id, proc: bloc })
|
465
|
+
html.send_message(params)
|
466
|
+
end
|
452
467
|
end
|
453
468
|
|
454
469
|
|
data/lib/atome/version.rb
CHANGED
data/lib/atome.rb
CHANGED
@@ -7,9 +7,9 @@ require 'atome/version'
|
|
7
7
|
require 'atome/genesis/genesis'
|
8
8
|
require 'atome/kernel/black_matter'
|
9
9
|
require 'atome/kernel/universe'
|
10
|
-
require 'atome/
|
10
|
+
require 'atome/utilities/essentials'
|
11
11
|
require 'renderers/renderer'
|
12
|
-
require 'atome/
|
12
|
+
require 'atome/utilities/color_helper/color'
|
13
13
|
require 'atome/extensions/atome'
|
14
14
|
require 'atome/extensions/mathematics'
|
15
15
|
require 'atome/atome'
|
@@ -28,12 +28,12 @@ require 'atome/genesis/particles/security'
|
|
28
28
|
require 'atome/genesis/particles/spatial'
|
29
29
|
require 'atome/genesis/particles/time'
|
30
30
|
require 'atome/genesis/particles/utility'
|
31
|
-
require 'atome/
|
32
|
-
require 'atome/
|
31
|
+
require 'atome/utilities/utilities'
|
32
|
+
require 'atome/utilities/security'
|
33
33
|
require 'renderers/html/index'
|
34
34
|
require 'renderers/headless/index'
|
35
35
|
require 'renderers/server/index'
|
36
|
-
require 'atome/
|
36
|
+
require 'atome/utilities/sanitizer'
|
37
37
|
require 'atome/genesis/sparkle'
|
38
38
|
require 'molecules/init'
|
39
39
|
# require 'eVe/lib/eVe'
|
data/lib/atome_relative.rb
CHANGED
@@ -6,9 +6,9 @@ require_relative './atome/version'
|
|
6
6
|
require_relative './atome/genesis/genesis'
|
7
7
|
require_relative 'atome/kernel/black_matter'
|
8
8
|
require_relative './atome/kernel/universe'
|
9
|
-
require_relative './atome/
|
9
|
+
require_relative './atome/utilities/essentials'
|
10
10
|
require_relative './renderers/renderer'
|
11
|
-
require_relative './atome/
|
11
|
+
require_relative './atome/utilities/color_helper/color'
|
12
12
|
require_relative './atome/extensions/atome'
|
13
13
|
require_relative './atome/extensions/mathematics'
|
14
14
|
require_relative './atome/atome'
|
@@ -27,12 +27,12 @@ require_relative './atome/genesis/particles/security'
|
|
27
27
|
require_relative './atome/genesis/particles/spatial'
|
28
28
|
require_relative './atome/genesis/particles/time'
|
29
29
|
require_relative './atome/genesis/particles/utility'
|
30
|
-
require_relative './atome/
|
31
|
-
require_relative './atome/
|
30
|
+
require_relative './atome/utilities/utilities'
|
31
|
+
require_relative './atome/utilities/security'
|
32
32
|
require_relative './renderers/html/index_relative'
|
33
33
|
require_relative './renderers/headless/index_relative'
|
34
34
|
require_relative './renderers/server/index_relative'
|
35
|
-
require_relative './atome/
|
35
|
+
require_relative './atome/utilities/sanitizer'
|
36
36
|
require_relative './atome/genesis/sparkle'
|
37
37
|
require_relative './molecules/init'
|
38
38
|
# require_relative './eVe/lib/eVe'
|
@@ -27,3 +27,25 @@ new({ renderer: :html, method: :blur, type: :integer }) do |params, _user_proc|
|
|
27
27
|
html.filter(:blur, "#{params[:value]}px")
|
28
28
|
end
|
29
29
|
end
|
30
|
+
|
31
|
+
|
32
|
+
new({ renderer: :html, method: :blur, type: :integer, specific: :shadow }) do |params, _user_proc|
|
33
|
+
if params[:affect] == :back
|
34
|
+
html.backdropFilter(:blur, "#{params[:value]}px")
|
35
|
+
else
|
36
|
+
html.filter(:blur, "#{params[:value]}px")
|
37
|
+
end
|
38
|
+
# now we refresh if needed for dynamic refresh od affected atomes
|
39
|
+
affect(affect)
|
40
|
+
end
|
41
|
+
|
42
|
+
# new({ particle: :blur, category: :effect, type: :int , specific: :shadow}) do |params|
|
43
|
+
# alert :cool
|
44
|
+
# if affect.nil?
|
45
|
+
# affect_to = affect
|
46
|
+
# else
|
47
|
+
# affect_to = [:self]
|
48
|
+
# end
|
49
|
+
# val= { value: params, affect: affect_to } unless params.instance_of?(Hash)
|
50
|
+
# val
|
51
|
+
# end
|
@@ -38,7 +38,6 @@ new({ renderer: :html, method: :apply, type: :string }) do |parent_found, _user_
|
|
38
38
|
alpha = parent_found.alpha
|
39
39
|
html.style(:backgroundColor, "rgba(#{red}, #{green}, #{blue}, #{alpha})")
|
40
40
|
when :paint
|
41
|
-
|
42
41
|
# if when found colors when use it for the gradient , else whe use the colors within the current atome
|
43
42
|
# gradient_found = params[:colors] || @apply
|
44
43
|
# we get all the paint atomes applied to the current atome
|
@@ -75,6 +74,17 @@ new({ renderer: :html, method: :apply, type: :string }) do |parent_found, _user_
|
|
75
74
|
# full_gradient_to_apply=gradients_to_apply.join(',')
|
76
75
|
full_gradient_to_apply = gradients_to_apply.last
|
77
76
|
html.style(:background, full_gradient_to_apply)
|
77
|
+
when :border
|
78
|
+
border.each do |border_id_found|
|
79
|
+
border_found = grab(border_id_found)
|
80
|
+
red = border_found.red * 255
|
81
|
+
green = border_found.green * 255
|
82
|
+
blue = border_found.blue * 255
|
83
|
+
alpha = border_found.alpha
|
84
|
+
thickness = border_found.thickness
|
85
|
+
pattern = border_found.pattern
|
86
|
+
html.style(:border, "#{pattern} #{thickness}px rgba(#{red},#{green},#{blue},#{alpha})")
|
87
|
+
end
|
78
88
|
else
|
79
89
|
#
|
80
90
|
end
|
@@ -52,16 +52,24 @@ new({ method: :remove, renderer: :html, type: :string }) do |object_id_to_remove
|
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
55
|
+
# new({ method: :border, type: :hash, renderer: :html }) do |value, _user_proc|
|
56
|
+
# thickness = value[:thickness] || 5
|
57
|
+
# type = value[:pattern] || :solid
|
58
|
+
#
|
59
|
+
# if value[:color].instance_of? Atome
|
60
|
+
# color_found = value[:color]
|
61
|
+
# else
|
62
|
+
# color_found = grab('black_matter').color(value[:color])
|
63
|
+
# end
|
64
|
+
#
|
65
|
+
# red = color_found.red * 255
|
66
|
+
# green = color_found.green * 255
|
67
|
+
# blue = color_found.blue * 255
|
68
|
+
# alpha = color_found.alpha
|
69
|
+
#
|
70
|
+
# html.style(:border, "#{type} #{thickness}px rgba(#{red},#{green},#{blue},#{alpha})")
|
71
|
+
# end
|
72
|
+
new({ method: :thickness, type: :integer, renderer: :html})
|
55
73
|
|
56
|
-
|
57
|
-
|
58
|
-
type = value[:pattern] || :solid
|
59
|
-
color = if value[:color]
|
60
|
-
color_found = value[:color]
|
61
|
-
"#{color_found.red * 255},#{color_found.green * 255},#{color_found.blue * 255},#{color_found.alpha} "
|
62
|
-
else
|
63
|
-
"0,0,0,1"
|
64
|
-
end
|
65
|
-
|
66
|
-
html.style(:border, "#{type} #{thickness}px rgba(#{color})")
|
67
|
-
end
|
74
|
+
# end
|
75
|
+
new({ method: :pattern, type: :integer, renderer: :html})
|
@@ -22,33 +22,6 @@ new({ renderer: :html, method: :edit }) do |params|
|
|
22
22
|
html.update_data(params)
|
23
23
|
end
|
24
24
|
|
25
|
-
new({ method: :border, type: :hash, renderer: :html }) do |value, _user_proc|
|
26
|
-
thickness = value[:thickness] || 5
|
27
|
-
type = value[:pattern] || :solid
|
28
|
-
# color = if value[:color]
|
29
|
-
# color_found = value[:color]
|
30
|
-
# "#{color_found.red * 255},#{color_found.green * 255},#{color_found.blue * 255},#{color_found.alpha} "
|
31
|
-
# else
|
32
|
-
# "0,0,0,1"
|
33
|
-
# end
|
34
|
-
if value[:color].instance_of? Atome
|
35
|
-
color_found= value[:color]
|
36
|
-
else
|
37
|
-
color_found=grab('black_matter').color(value[:color])
|
38
|
-
end
|
39
|
-
|
40
|
-
# alert "atome found 2 : #{color_found}"
|
41
|
-
red = color_found.red* 255
|
42
|
-
green = color_found.green* 255
|
43
|
-
blue = color_found.blue* 255
|
44
|
-
alpha = color_found.alpha
|
45
|
-
# alert "rgba(#{red},#{green},#{blue},#{alpha})"
|
46
|
-
# color_found= "#{1 * 255},#{color_found.green * 255},#{0 * 255},#{0.3} "
|
47
|
-
|
48
|
-
html.style(:border, "#{type} #{thickness}px rgba(#{red},#{green},#{blue},#{alpha})")
|
49
|
-
# html.style(:border, "#{type} #{thickness}px rgba(#{color_found})")
|
50
|
-
# html.style(:border, "solid 12px rgba(255, 255, 120, 0,3)")
|
51
|
-
end
|
52
25
|
|
53
26
|
new({ method: :clean, renderer: :html, type: :hash }) do |params|
|
54
27
|
html.table_clean(params)
|
@@ -9,6 +9,7 @@ new({ method: :top, type: :integer, renderer: :html }) do |params|
|
|
9
9
|
unit = @unit[:top] || :px if params.is_a? Numeric
|
10
10
|
js[:style][:top] = "#{params}#{unit}"
|
11
11
|
end
|
12
|
+
|
12
13
|
new({ method: :bottom, type: :integer, renderer: :html }) do |params|
|
13
14
|
unit = @unit[:bottom] || :px if params.is_a? Numeric
|
14
15
|
js[:style][:bottom] = "#{params}#{unit}"
|
@@ -20,7 +21,10 @@ new({ method: :right, type: :integer, renderer: :html }) do |params|
|
|
20
21
|
js[:style][:right] = "#{params}#{unit}"
|
21
22
|
end
|
22
23
|
|
23
|
-
new({ method: :top, type: :integer, renderer: :html, specific: :shadow })
|
24
|
+
new({ method: :top, type: :integer, renderer: :html, specific: :shadow }) do
|
25
|
+
# now we refresh if needed for dynamic refresh od affected atomes
|
26
|
+
affect(affect)
|
27
|
+
end
|
24
28
|
|
25
29
|
# new({ method: :top, type: :integer, renderer: :html, specific: :text }) do |params|
|
26
30
|
# unit = @unit[:left] || :px
|
@@ -33,7 +37,10 @@ new({ method: :top, type: :integer, renderer: :html, specific: :shadow })
|
|
33
37
|
|
34
38
|
new({ method: :left, type: :integer, specific: :color, renderer: :html })
|
35
39
|
|
36
|
-
new({ method: :left, type: :integer, renderer: :html, specific: :shadow })
|
40
|
+
new({ method: :left, type: :integer, renderer: :html, specific: :shadow }) do
|
41
|
+
# now we refresh if needed for dynamic refresh od affected atomes
|
42
|
+
affect(affect)
|
43
|
+
end
|
37
44
|
|
38
45
|
new({ method: :top, type: :integer, specific: :color, renderer: :html })
|
39
46
|
|
@@ -1,28 +1,59 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
c2=circle({top: 190, width: 99, height: 99})
|
3
|
+
# col=color({red: 1, green: 0.2, id: :the_col})
|
4
|
+
c = circle({ id: :the_circle })
|
5
|
+
b = box({ left: 333, id: :the_box })
|
6
|
+
circle({ top: 190, width: 99, height: 99, id: :dont_break_too })
|
7
|
+
c2 = circle({ top: 190, width: 99, height: 99, id: :dont_break })
|
8
8
|
# let's add the border
|
9
|
-
c2.border({ thickness: 5, color: :blue, pattern: :dotted })
|
10
|
-
c.border({ thickness: 5, color: col, pattern: :dotted })
|
11
|
-
b.border({ thickness: 5, color: col, pattern: :dotted })
|
12
|
-
|
13
9
|
wait 1 do
|
14
|
-
c2.
|
15
|
-
|
16
|
-
|
10
|
+
c2.shadow({
|
11
|
+
# id: :s1,
|
12
|
+
# affect: [:the_circle],
|
13
|
+
left: 9,
|
14
|
+
top: 3,
|
15
|
+
blur: 9,
|
16
|
+
invert: false,
|
17
|
+
option: :natural,
|
18
|
+
red: 0, green: 0, blue: 0, alpha: 1
|
19
|
+
})
|
20
|
+
c2.border({ thickness: 5, red: 1, green: 0, blue: 0, alpha: 1, pattern: :dotted, id: :borderline })
|
17
21
|
end
|
22
|
+
c.border({ thickness: 5, red: 1, green: 1, blue: 0, alpha: 1, pattern: :dotted })
|
23
|
+
b.border({ thickness: 5, red: 0, green: 1, blue: 0, alpha: 1, pattern: :dotted })
|
18
24
|
|
25
|
+
wait 2 do
|
26
|
+
c2.border({ thickness: 5, red: 1, green: 1, blue: 0, alpha: 1, pattern: :solid })
|
27
|
+
c.border({ thickness: 5, red: 1, green: 1, blue: 0, alpha: 1, pattern: :dotted })
|
28
|
+
b.border({ thickness: 3, red: 1, green: 1, blue: 0, alpha: 1, pattern: :dotted })
|
29
|
+
b.text('touch me')
|
30
|
+
end
|
31
|
+
#
|
19
32
|
b.touch(true) do
|
20
33
|
|
21
|
-
|
22
|
-
|
34
|
+
b.border({ thickness: 5, red: 1, green: 1, blue: 1, alpha: 1, pattern: :dotted, id: :the_door })
|
35
|
+
puts " no new atome added!, number of atomes: #{Universe.atomes.length}"
|
36
|
+
b.apply([:the_door])
|
37
|
+
c.apply([:the_door])
|
38
|
+
c2.apply([:the_door])
|
39
|
+
wait 1 do
|
40
|
+
# if the_door (border) is change all affect atomes are refreshed
|
41
|
+
grab(:the_door).pattern(:solid)
|
42
|
+
wait 1 do
|
43
|
+
# if the_door (border) is change all affect atomes are refreshed
|
44
|
+
grab(:the_door).thickness(20)
|
45
|
+
wait 1 do
|
46
|
+
# if the_door (border) is change all affect atomes are refreshed
|
47
|
+
grab(:the_door).red(0)
|
48
|
+
c2.color({alpha: 0})
|
49
|
+
|
50
|
+
end
|
51
|
+
end
|
52
|
+
end
|
23
53
|
end
|
54
|
+
|
24
55
|
# wait 6 do
|
25
|
-
#
|
56
|
+
# image(:red_planet)
|
26
57
|
# end
|
27
58
|
|
28
59
|
# # frozen_string_literal: true
|
@@ -0,0 +1,23 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
cc=color({red: 1, blue: 0.1,id: :the_col})
|
4
|
+
b=box({ left: 12, id: :the_first_box, apply: cc.id })
|
5
|
+
c=circle({ left: 99, top: 99 })
|
6
|
+
|
7
|
+
wait 1 do
|
8
|
+
c.increment({left: 33, top: 99})
|
9
|
+
b.increment({left: 33, top: 99})
|
10
|
+
wait 1 do
|
11
|
+
c.increment({width: 33, top: -22})
|
12
|
+
b.increment({width: 33, top: -9})
|
13
|
+
cc.increment({red: -0.5})
|
14
|
+
wait 1 do
|
15
|
+
cc.increment({blue: 1})
|
16
|
+
end
|
17
|
+
# Atome.sync(:ok)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
# wait 3 do
|
22
|
+
# color(:red)
|
23
|
+
# end
|
@@ -22,12 +22,12 @@ def matrix(id, horizontal_nb, vertical_nb, spacing, size)
|
|
22
22
|
end
|
23
23
|
box_width = available_width / horizontal_nb
|
24
24
|
box_height = available_height / vertical_nb
|
25
|
-
|
25
|
+
background=box({id: :background, width: 666, height: 666, color:{alpha: 0}})
|
26
26
|
vertical_nb.times do |y|
|
27
27
|
horizontal_nb.times do |x|
|
28
28
|
id_generated = "#{id}_#{x}_#{y}"
|
29
29
|
matrix_cells << id_generated
|
30
|
-
new_box = box({ id: id_generated })
|
30
|
+
new_box = background.box({ id: id_generated })
|
31
31
|
new_box.width(box_width)
|
32
32
|
new_box.height(box_height)
|
33
33
|
new_box.left((box_width + spacing) * x + spacing)
|
@@ -142,4 +142,12 @@ test_cell.touch(true) do
|
|
142
142
|
# test_cell.color(:blue)
|
143
143
|
# end
|
144
144
|
|
145
|
-
end
|
145
|
+
end
|
146
|
+
wait 1 do
|
147
|
+
@current_matrix.width(33)
|
148
|
+
end
|
149
|
+
@current_matrix.drag(true)
|
150
|
+
wait 2 do
|
151
|
+
grab(:background).left(666)
|
152
|
+
grab(:background).drag(true)
|
153
|
+
end
|
@@ -34,7 +34,7 @@ wait 2 do
|
|
34
34
|
end
|
35
35
|
|
36
36
|
|
37
|
-
the_text = text({ data: 'text with shadow!', center: true, top: 222, width: 777, component: { size: 66 } })
|
37
|
+
the_text = text({ data: 'text with shadow!', center: true, top: 222, width: 777, component: { size: 66 }, id: :my_text })
|
38
38
|
|
39
39
|
|
40
40
|
the_text.shadow({
|
@@ -48,3 +48,13 @@ the_text.left(255)
|
|
48
48
|
the_text.top(66)
|
49
49
|
the_text.color(:red)
|
50
50
|
|
51
|
+
wait 1 do
|
52
|
+
text_shadow= grab(:my_shadow)
|
53
|
+
text_shadow.alpha(0.5)
|
54
|
+
text_shadow.left(120)
|
55
|
+
text_shadow.blur({ value: 1 })
|
56
|
+
|
57
|
+
# grab(:my_text).refresh(true)
|
58
|
+
|
59
|
+
end
|
60
|
+
|
@@ -85,11 +85,18 @@ class EDen
|
|
85
85
|
|
86
86
|
end
|
87
87
|
|
88
|
+
def historicize(data, message_id)
|
89
|
+
# return test
|
90
|
+
# ws.send(return_message.to_json)
|
91
|
+
return { return: 'item to historicize received', authorized: true, message_id: message_id }
|
92
|
+
|
93
|
+
end
|
94
|
+
|
88
95
|
def init_db(_data, message_id)
|
89
96
|
unless File.exist?("eden.sqlite3")
|
90
97
|
Sequel.connect("sqlite://eden.sqlite3")
|
91
98
|
end
|
92
|
-
{ data: { message: '
|
99
|
+
{ data: { message: 'database_ready' }, message_id: message_id }
|
93
100
|
end
|
94
101
|
|
95
102
|
def crate_db_table(data, message_id)
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: atome
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.6.4
|
4
|
+
version: 0.5.6.5.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jean-Eric Godard
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-03-
|
11
|
+
date: 2024-03-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: artoo
|
@@ -436,28 +436,27 @@ files:
|
|
436
436
|
- lib/atome/genesis/particles/time.rb
|
437
437
|
- lib/atome/genesis/particles/utility.rb
|
438
438
|
- lib/atome/genesis/sparkle.rb
|
439
|
-
- lib/atome/helpers/color_helper/color.rb
|
440
|
-
- lib/atome/helpers/color_helper/color/cmyk.rb
|
441
|
-
- lib/atome/helpers/color_helper/color/css.rb
|
442
|
-
- lib/atome/helpers/color_helper/color/grayscale.rb
|
443
|
-
- lib/atome/helpers/color_helper/color/hsl.rb
|
444
|
-
- lib/atome/helpers/color_helper/color/palette.rb
|
445
|
-
- lib/atome/helpers/color_helper/color/palette/adobecolor.rb
|
446
|
-
- lib/atome/helpers/color_helper/color/palette/gimp.rb
|
447
|
-
- lib/atome/helpers/color_helper/color/palette/monocontrast.rb
|
448
|
-
- lib/atome/helpers/color_helper/color/rgb.rb
|
449
|
-
- lib/atome/helpers/color_helper/color/rgb/colors.rb
|
450
|
-
- lib/atome/helpers/color_helper/color/rgb/contrast.rb
|
451
|
-
- lib/atome/helpers/color_helper/color/rgb/metallic.rb
|
452
|
-
- lib/atome/helpers/color_helper/color/yiq.rb
|
453
|
-
- lib/atome/helpers/essentials.rb
|
454
|
-
- lib/atome/helpers/sanitizer.rb
|
455
|
-
- lib/atome/helpers/security.rb
|
456
|
-
- lib/atome/helpers/utilities.rb
|
457
439
|
- lib/atome/kernel/black_matter.rb
|
458
|
-
- lib/atome/kernel/ruby
|
459
440
|
- lib/atome/kernel/universe.rb
|
460
441
|
- lib/atome/presets/atome.rb
|
442
|
+
- lib/atome/utilities/color_helper/color.rb
|
443
|
+
- lib/atome/utilities/color_helper/color/cmyk.rb
|
444
|
+
- lib/atome/utilities/color_helper/color/css.rb
|
445
|
+
- lib/atome/utilities/color_helper/color/grayscale.rb
|
446
|
+
- lib/atome/utilities/color_helper/color/hsl.rb
|
447
|
+
- lib/atome/utilities/color_helper/color/palette.rb
|
448
|
+
- lib/atome/utilities/color_helper/color/palette/adobecolor.rb
|
449
|
+
- lib/atome/utilities/color_helper/color/palette/gimp.rb
|
450
|
+
- lib/atome/utilities/color_helper/color/palette/monocontrast.rb
|
451
|
+
- lib/atome/utilities/color_helper/color/rgb.rb
|
452
|
+
- lib/atome/utilities/color_helper/color/rgb/colors.rb
|
453
|
+
- lib/atome/utilities/color_helper/color/rgb/contrast.rb
|
454
|
+
- lib/atome/utilities/color_helper/color/rgb/metallic.rb
|
455
|
+
- lib/atome/utilities/color_helper/color/yiq.rb
|
456
|
+
- lib/atome/utilities/essentials.rb
|
457
|
+
- lib/atome/utilities/sanitizer.rb
|
458
|
+
- lib/atome/utilities/security.rb
|
459
|
+
- lib/atome/utilities/utilities.rb
|
461
460
|
- lib/atome/version.rb
|
462
461
|
- lib/atome_relative.rb
|
463
462
|
- lib/molecules/examples/site.rb
|
@@ -568,6 +567,7 @@ files:
|
|
568
567
|
- vendor/assets/application/examples/hypertext.rb
|
569
568
|
- vendor/assets/application/examples/image.rb
|
570
569
|
- vendor/assets/application/examples/import.rb
|
570
|
+
- vendor/assets/application/examples/increment.rb
|
571
571
|
- vendor/assets/application/examples/infos.rb
|
572
572
|
- vendor/assets/application/examples/int8.rb
|
573
573
|
- vendor/assets/application/examples/keyboard.rb
|
data/lib/atome/kernel/ruby
DELETED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|