atome 0.4.5.4 → 0.4.7.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -3
- data/Rakefile +1 -0
- data/app_builder_helpers/Rakefile +2 -0
- data/lib/atome/atome_native_extensions.rb +3 -3
- data/lib/atome/extensions/helper.rb +20 -31
- data/lib/atome/kernel/atome.rb +9 -8
- data/lib/atome/kernel/generators/generator.rb +210 -80
- data/lib/atome/kernel/generators/genesis.rb +58 -46
- data/lib/atome/kernel/generators/sanitizer.rb +3 -7
- data/lib/atome/kernel/generators/shapes.rb +25 -10
- data/lib/atome/{extensions → kernel/helpers}/geolocation.rb +0 -0
- data/lib/atome/kernel/helpers/internal_methods.rb +173 -0
- data/lib/atome/kernel/helpers/ping.rb +17 -0
- data/lib/atome/{extensions → kernel/helpers}/sha.rb +0 -0
- data/lib/atome/{extensions → kernel/helpers}/utilities.rb +5 -5
- data/lib/atome/kernel/properties/essential.rb +35 -1
- data/lib/atome/kernel/sparkle.rb +2 -1
- data/lib/atome/kernel/universe.rb +12 -4
- data/lib/atome/renderers/opal/extensions/geolocation.rb +0 -1
- data/lib/atome/renderers/renderer.rb +1 -0
- data/lib/atome/renderers/server/properties/generator.rb +1 -1
- data/lib/atome/version.rb +2 -1
- data/lib/atome.rb +6 -15
- data/vendor/assets/build/css/style.css +4 -0
- data/vendor/assets/build/index.html +4 -2
- data/vendor/assets/build/js/atome/atome.js +25 -11
- data/vendor/assets/build/js/third_parties/interact.min.js +2 -3
- data/vendor/assets/build/js/{ping.min.js → third_parties/ping.min.js} +0 -0
- data/vendor/assets/build/js/{utilities → third_parties}/w3color.js +0 -0
- data/vendor/assets/build/js/third_parties/zim.min.js +1 -0
- data/vendor/assets/build/medias/audios/guitar.wav +0 -0
- data/vendor/assets/build/medias/images/beach.jpg +0 -0
- data/vendor/assets/build/medias/rubies/examples/!run.rb +16 -0
- data/vendor/assets/build/medias/rubies/examples/box.rb +16 -1
- data/vendor/assets/build/medias/rubies/examples/circle.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/clear.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/code.rb +5 -0
- data/vendor/assets/build/medias/rubies/examples/drag.rb +42 -4
- data/vendor/assets/build/medias/rubies/examples/link.rb +8 -10
- data/vendor/assets/build/medias/rubies/examples/on.rb +16 -0
- data/vendor/assets/build/medias/rubies/examples/parent.rb +2 -1
- data/vendor/assets/build/medias/rubies/examples/read.rb +1 -1
- data/vendor/assets/build/medias/rubies/examples/text.rb +17 -4
- data/vendor/assets/build/medias/rubies/examples/video.rb +51 -3
- data/vendor/assets/build/medias/rubies/examples/web.rb +3 -2
- data/vendor/assets/build/medias/videos/avengers.mp4 +0 -0
- data/vendor/assets/build/medias/videos/lion_king.mp4 +0 -0
- data/vendor/assets/build/medias/videos/madmax.mp4 +0 -0
- data/vendor/assets/build/medias/videos/starwars.mov +0 -0
- data/vendor/assets/build/medias/videos/superman.mp4 +0 -0
- metadata +24 -12
- data/lib/atome/extensions/ping.rb +0 -13
- data/vendor/assets/build/js/third_parties/createjs.min.js +0 -19
@@ -3,6 +3,8 @@
|
|
3
3
|
<head>
|
4
4
|
<meta name='viewport' content='initial-scale=1, width=device-width, viewport-fit=cover'>
|
5
5
|
<meta charset='UTF-8'/>
|
6
|
+
<meta Cross-Origin-Opener-Policy= "same-origin"/>
|
7
|
+
<meta Cross-Origin-Embedder-Policy= "require-corp"/>
|
6
8
|
<meta name="format-detection" content="telephone=no">
|
7
9
|
<meta name="msapplication-tap-highlight" content="no">
|
8
10
|
<meta name="viewport" content="initial-scale=1, width=device-width, viewport-fit=cover">
|
@@ -12,8 +14,8 @@
|
|
12
14
|
<script type="text/javascript" src="js/third_parties/interact.min.js"></script>
|
13
15
|
<script type="text/javascript" src="js/third_parties/popmotion.min.js"></script>
|
14
16
|
<script type="text/javascript" src="js/third_parties/sha256.min.js"></script>
|
15
|
-
<script type="text/javascript" src="js/ping.min.js"></script>
|
16
|
-
<script src='js/
|
17
|
+
<script type="text/javascript" src="js/third_parties/ping.min.js"></script>
|
18
|
+
<script src='js/third_parties/w3color.js'></script>
|
17
19
|
<script src='js/opal/opal_browser.js'></script>
|
18
20
|
<script src='js/opal/opal_parser.js'></script>
|
19
21
|
<script src='js/aui.js'></script>
|
@@ -2,11 +2,15 @@ class AtomeDrag {
|
|
2
2
|
constructor() {
|
3
3
|
}
|
4
4
|
|
5
|
-
drag() {
|
5
|
+
drag(atome_drag_id) {
|
6
6
|
// target elements with the "draggable" class
|
7
|
-
|
7
|
+
self.current_obj = Opal.Utilities.$grab(atome_drag_id)
|
8
|
+
interact('.'+atome_drag_id)
|
8
9
|
.draggable({
|
9
10
|
// enable inertial throwing
|
11
|
+
startAxis: 'x',
|
12
|
+
lockAxis: 'x',
|
13
|
+
// lockAxis: ''+lock_axis,
|
10
14
|
inertia: true,
|
11
15
|
// keep the element within the area of it's parent
|
12
16
|
modifiers: [
|
@@ -25,10 +29,9 @@ class AtomeDrag {
|
|
25
29
|
start(event) {
|
26
30
|
//TODO: optimise this passing the proc to the drag callback
|
27
31
|
// lets get the current atome Object
|
28
|
-
self.current_obj = Opal.Utilities.$grab(
|
32
|
+
// self.current_obj = Opal.Utilities.$grab(atome_drag_id)
|
29
33
|
// now get the grab proc
|
30
|
-
self.proc_meth = current_obj
|
31
|
-
// self.proc_meth = proc_found;
|
34
|
+
self.proc_meth = current_obj.bloc
|
32
35
|
},
|
33
36
|
// call this function on every dragend event
|
34
37
|
end(event) {
|
@@ -45,24 +48,35 @@ class AtomeDrag {
|
|
45
48
|
const y = (parseFloat(target.getAttribute('data-y')) || 0) + event.dy
|
46
49
|
// translate the element
|
47
50
|
target.style.transform = 'translate(' + x + 'px, ' + y + 'px)'
|
48
|
-
|
49
51
|
// update the position attributes
|
50
52
|
target.setAttribute('data-x', x)
|
51
53
|
target.setAttribute('data-y', y)
|
52
54
|
// CallBack here
|
53
|
-
|
54
|
-
|
55
|
+
self.current_obj.$dragCallback(event.pageX, event.pageY, event.rect.left, event.rect.top, self.current_obj, self.proc_meth);
|
55
56
|
}
|
56
57
|
}
|
57
58
|
|
58
59
|
}
|
59
60
|
|
60
61
|
// Usage:
|
61
|
-
let atomeDrag = new AtomeDrag();
|
62
|
-
atomeDrag.drag();
|
62
|
+
// let atomeDrag = new AtomeDrag();
|
63
|
+
// atomeDrag.drag('atome_id', 'options');
|
64
|
+
|
63
65
|
|
66
|
+
class Atomeanimation {
|
64
67
|
|
65
|
-
class Atomeanimation{
|
66
68
|
|
69
|
+
}
|
70
|
+
|
71
|
+
// TODO: put in a class
|
67
72
|
|
73
|
+
const atome = {
|
74
|
+
jsSchedule: function (years, months, days, hours, minutes, seconds, proc) {
|
75
|
+
const now = new Date();
|
76
|
+
const formatedDate = new Date(years, months - 1, days, hours, minutes, seconds);
|
77
|
+
const diffTime = Math.abs(formatedDate - now);
|
78
|
+
setTimeout(function () {
|
79
|
+
Opal.Object.$schedule_callback(proc);
|
80
|
+
}, diffTime);
|
81
|
+
}
|
68
82
|
}
|