atome 0.5.2.8 → 0.5.3.2
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/Rakefile +7 -1
- data/app_builder_helpers/Rakefile +2 -2
- data/exe/atome +1 -1
- data/lib/atome/atome.rb +28 -26
- data/lib/atome/extensions/atome.rb +4 -0
- data/lib/atome/extensions/matrix.rb +349 -122
- data/lib/atome/genesis/generators/atome.rb +5 -1
- data/lib/atome/genesis/generators/identity.rb +43 -13
- data/lib/atome/genesis/generators/material.rb +20 -5
- data/lib/atome/genesis/generators/time.rb +1 -1
- data/lib/atome/genesis/generators/utility.rb +26 -2
- data/lib/atome/genesis/genesis.rb +12 -4
- data/lib/atome/genesis/sparkle.rb +35 -3
- data/lib/atome/helpers/essentials.rb +24 -15
- data/lib/atome/helpers/utilities.rb +42 -3
- data/lib/atome/kernel/batch.rb +48 -0
- data/lib/atome/presets/atome.rb +22 -6
- data/lib/atome/renderers/browser/atome.rb +1 -3
- data/lib/atome/renderers/browser/browser.rb +14 -1
- data/lib/atome/renderers/browser/geometry.rb +10 -2
- data/lib/atome/renderers/browser/helpers/video_helper.rb +1 -1
- data/lib/atome/renderers/browser/helpers/web_helper.rb +1 -5
- data/lib/atome/renderers/browser/identity.rb +7 -11
- data/lib/atome/renderers/browser/material.rb +10 -0
- data/lib/atome/renderers/html/atome.rb +2 -0
- data/lib/atome/renderers/renderer.rb +3 -2
- data/lib/atome/version.rb +1 -1
- data/lib/atome.rb +2 -1
- data/sig/atome.rbs +14 -0
- data/vendor/assets/Rakefile +1 -1
- data/vendor/assets/src/css/style.css +6 -6
- data/vendor/assets/src/medias/rubies/examples/_2_solve.rb +41 -27
- data/vendor/assets/src/medias/rubies/examples/_attach.rb +12 -0
- data/vendor/assets/src/medias/rubies/examples/_audio.rb +81 -28
- data/vendor/assets/src/medias/rubies/examples/_dataset.rb +191 -111
- data/vendor/assets/src/medias/rubies/examples/clone.rb +4 -4
- data/vendor/assets/src/medias/rubies/examples/delete.rb +2 -2
- data/vendor/assets/src/medias/rubies/examples/drag.rb +2 -1
- data/vendor/assets/src/medias/rubies/examples/table.rb +479 -0
- data/vendor/assets/src/medias/rubies/examples/to_px.rb +10 -0
- metadata +7 -4
- data/vendor/assets/src/medias/rubies/examples/attach.rb +0 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d3b3eb14241b108a8fff26a1d336211199a4cf7a133069e399383f8c590be948
|
4
|
+
data.tar.gz: 4bab390e92b2b65a180a2537902ca68bbb7a78faed8debf8cbf2e05063647b7f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 71670c634ee463c0de14a00749d760174831029b1c6e45df1cb4fd6101ea51f083ff4c895d35a93de28a472bb63feb40ee23cd5c27d12f56571f62e6276654e6
|
7
|
+
data.tar.gz: def487b5d20de25b4c112d65d850d94a454651750dfc240a329128b3cfbd42088bb391c29667f7de65297da2ed65bda55dea446ff436580bd3195891818c7947
|
data/Rakefile
CHANGED
@@ -21,7 +21,13 @@ task :re_build do
|
|
21
21
|
# `cd test/test_app;atome update;atome run`
|
22
22
|
end
|
23
23
|
|
24
|
-
|
24
|
+
task :run_browser do
|
25
|
+
FileUtils.copy_entry('vendor/assets/src/js/', 'test/test_app/src/js/')
|
26
|
+
FileUtils.copy_entry('vendor/assets/src/css/', 'test/test_app/src/css/')
|
27
|
+
FileUtils.copy_entry('vendor/assets/src/medias/', 'test/test_app/src/medias/')
|
28
|
+
`gem cleanup atome;yes | gem uninstall atome ;gem build atome.gemspec;gem install atome`
|
29
|
+
`cd test/test_app;atome update;atome run`
|
30
|
+
end
|
25
31
|
|
26
32
|
|
27
33
|
task :test_server do
|
@@ -3,10 +3,10 @@
|
|
3
3
|
# FIXME: check when creating gem version the new gem is not always fully updated we have to type gem uninstall first
|
4
4
|
|
5
5
|
require 'opal'
|
6
|
-
require 'opal-jquery'
|
6
|
+
# require 'opal-jquery'
|
7
7
|
require 'opal-browser'
|
8
8
|
require 'parser'
|
9
|
-
require 'ruby2js'
|
9
|
+
# require 'ruby2js'
|
10
10
|
require 'uglifier'
|
11
11
|
|
12
12
|
Opal.append_path 'app'
|
data/exe/atome
CHANGED
@@ -7,7 +7,7 @@ require 'digest/sha2'
|
|
7
7
|
# below are the methods needed for atome creation and run
|
8
8
|
def test_path(project_name, arg_name, path)
|
9
9
|
if project_name != 'run' && project_name != 'guard' && !project_name.nil? &&
|
10
|
-
|
10
|
+
project_name != 'port:' && project_name != 'server' && project_name != 'build'
|
11
11
|
# the line below remove the optional parameters from the project name
|
12
12
|
project_name = project_name.sub(ARGV[ARGV.find_index(arg_name) + 1], '')
|
13
13
|
"#{path}/#{project_name}"
|
data/lib/atome/atome.rb
CHANGED
@@ -20,19 +20,20 @@ class Atome
|
|
20
20
|
elements[:code] = atomes_proc if atomes_proc
|
21
21
|
@atome = elements
|
22
22
|
# we initiate the rendering, eg for for browser we will call :browser_type generate method in identity.rb file
|
23
|
-
create_particle(:type)
|
23
|
+
create_particle(:type, true, true)
|
24
|
+
# set type is a particle method it's dynamically generated at : generator/identity.rb
|
24
25
|
set_type(@atome[:type])
|
25
26
|
collapse
|
26
27
|
end
|
27
28
|
end
|
28
29
|
|
29
|
-
def new_particle(element, &method_proc)
|
30
|
+
def new_particle(element,store,render, &method_proc)
|
30
31
|
Atome.define_method element do |params = nil, &user_proc|
|
31
32
|
if params || params == false
|
32
33
|
# the line below execute the proc created when using the build_particle method
|
33
34
|
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
34
35
|
params = sanitize(element, params)
|
35
|
-
create_particle(element)
|
36
|
+
create_particle(element,store,render)
|
36
37
|
send("set_#{element}", params, &user_proc)
|
37
38
|
else
|
38
39
|
get_particle(element, &user_proc)
|
@@ -40,14 +41,17 @@ class Atome
|
|
40
41
|
end
|
41
42
|
end
|
42
43
|
|
43
|
-
|
44
|
+
|
45
|
+
|
46
|
+
def additional_particle_methods(element,store,render , &method_proc)
|
44
47
|
Atome.define_method "#{element}=" do |params = nil, &user_proc|
|
45
48
|
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
46
49
|
params = sanitize(element, params)
|
47
|
-
particle_creation(element, params,
|
50
|
+
particle_creation(element, params, store,render,&user_proc)
|
48
51
|
end
|
49
52
|
end
|
50
53
|
|
54
|
+
|
51
55
|
def atome_creation_pre_treatment(element, params, &user_proc)
|
52
56
|
params = sanitize(element, params)
|
53
57
|
create_atome(element)
|
@@ -73,20 +77,16 @@ class Atome
|
|
73
77
|
end
|
74
78
|
end
|
75
79
|
|
76
|
-
def run_optional_proc(proc_name, atome = self,
|
80
|
+
def run_optional_proc(proc_name, atome = self, element, &user_proc)
|
81
|
+
params=instance_variable_get("@#{element}")
|
77
82
|
option_found = Universe.get_optional_method(proc_name)
|
78
|
-
atome.instance_exec(
|
83
|
+
atome.instance_exec(params, user_proc, atome, &option_found) if option_found.is_a?(Proc)
|
79
84
|
end
|
80
85
|
|
81
|
-
def inject_value(element, value)
|
82
|
-
# attention : please keep the method 'inject_value' available as it is sometimes needed to access it directly
|
83
|
-
@atome[element] = value
|
84
|
-
end
|
85
86
|
|
86
87
|
def store_value(element)
|
87
|
-
|
88
|
-
|
89
|
-
inject_value(element, @atome[element])
|
88
|
+
params=instance_variable_get("@#{element}")
|
89
|
+
@atome[element] = params
|
90
90
|
end
|
91
91
|
|
92
92
|
public
|
@@ -99,28 +99,30 @@ class Atome
|
|
99
99
|
@real_atome[@property] = value
|
100
100
|
end
|
101
101
|
|
102
|
-
def particle_creation(element, params, &user_proc)
|
102
|
+
def particle_creation(element, params,store,render, &user_proc)
|
103
103
|
return false unless security_pass(element, params)
|
104
|
-
|
105
104
|
# we create a proc holder of any new particle if user pass a bloc
|
106
105
|
store_code_bloc(element, &user_proc) if user_proc
|
107
|
-
#
|
108
|
-
|
109
|
-
run_optional_proc("pre_render_#{@atome[:type]}".to_sym, self,
|
110
|
-
run_optional_proc("pre_render_#{element}".to_sym, self,
|
111
|
-
rendering(element,
|
112
|
-
run_optional_proc("post_render_#{@atome[:type]}".to_sym, self,
|
113
|
-
run_optional_proc("post_render_#{element}".to_sym, self,
|
114
|
-
|
106
|
+
# Params is now an instance variable so it should be passed thru different methods
|
107
|
+
instance_variable_set("@#{element}", params)
|
108
|
+
run_optional_proc("pre_render_#{@atome[:type]}".to_sym, self, element, &user_proc)
|
109
|
+
run_optional_proc("pre_render_#{element}".to_sym, self, element, &user_proc)
|
110
|
+
rendering(element, &user_proc) if render
|
111
|
+
run_optional_proc("post_render_#{@atome[:type]}".to_sym, self, element, &user_proc)
|
112
|
+
run_optional_proc("post_render_#{element}".to_sym, self, element, &user_proc)
|
113
|
+
broadcasting(element)
|
114
|
+
store_value(element) if store
|
115
115
|
self
|
116
116
|
end
|
117
117
|
|
118
|
-
|
118
|
+
|
119
|
+
def create_particle(element,store,render)
|
119
120
|
Atome.define_method "set_#{element}" do |params, &user_proc|
|
120
|
-
particle_creation(element, params,
|
121
|
+
particle_creation(element, params, store,render,&user_proc)
|
121
122
|
end
|
122
123
|
end
|
123
124
|
|
125
|
+
|
124
126
|
def get(element)
|
125
127
|
@atome[element]
|
126
128
|
end
|
@@ -12,6 +12,10 @@ def circle(params = {}, &proc)
|
|
12
12
|
grab(:view).circle(params, &proc)
|
13
13
|
end
|
14
14
|
|
15
|
+
def matrix(params = {}, &proc)
|
16
|
+
grab(:view).matrix(params, &proc)
|
17
|
+
end
|
18
|
+
|
15
19
|
# the method below generate Atome method creation at Object level
|
16
20
|
def create_method_at_object_level(element)
|
17
21
|
Object.define_method element do |params = nil, &user_proc|
|