atome 0.4.7.0 → 0.5.1.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -1
- data/README.md +7 -4
- data/Rakefile +22 -13
- data/app_builder_helpers/Rakefile +63 -21
- data/exe/atome +91 -45
- data/lib/atome/atome_meta_engine.rb +132 -0
- data/lib/atome/extensions/atome.rb +41 -0
- data/lib/atome/{kernel/helpers → extensions}/geolocation.rb +0 -0
- data/lib/atome/{kernel/helpers → extensions}/ping.rb +0 -0
- data/lib/atome/{kernel/helpers → extensions}/sha.rb +3 -1
- data/lib/atome/genesis/generators/atome.rb +13 -0
- data/lib/atome/{renderers/headless/properties/generator.rb → genesis/generators/communication.rb} +2 -0
- data/lib/atome/genesis/generators/effect.rb +6 -0
- data/lib/atome/genesis/generators/event.rb +5 -0
- data/lib/atome/genesis/generators/geometry.rb +6 -0
- data/lib/atome/genesis/generators/identity.rb +15 -0
- data/lib/atome/genesis/generators/material.rb +10 -0
- data/lib/atome/genesis/generators/spatial.rb +12 -0
- data/lib/atome/genesis/generators/utility.rb +14 -0
- data/lib/atome/genesis/genesis.rb +51 -0
- data/lib/atome/genesis/sparkle.rb +58 -0
- data/lib/atome/helpers/color_helper/color/cmyk.rb +263 -0
- data/lib/atome/helpers/color_helper/color/css.rb +7 -0
- data/lib/atome/helpers/color_helper/color/grayscale.rb +197 -0
- data/lib/atome/helpers/color_helper/color/hsl.rb +240 -0
- data/lib/atome/helpers/color_helper/color/palette/adobecolor.rb +260 -0
- data/lib/atome/helpers/color_helper/color/palette/gimp.rb +104 -0
- data/lib/atome/helpers/color_helper/color/palette/monocontrast.rb +164 -0
- data/lib/atome/helpers/color_helper/color/palette.rb +4 -0
- data/lib/atome/helpers/color_helper/color/rgb/colors.rb +167 -0
- data/lib/atome/helpers/color_helper/color/rgb/contrast.rb +57 -0
- data/lib/atome/helpers/color_helper/color/rgb/metallic.rb +28 -0
- data/lib/atome/helpers/color_helper/color/rgb.rb +715 -0
- data/lib/atome/helpers/color_helper/color/yiq.rb +62 -0
- data/lib/atome/helpers/color_helper/color.rb +196 -0
- data/lib/atome/helpers/essentials.rb +42 -0
- data/lib/atome/helpers/sanitizer.rb +42 -0
- data/lib/atome/helpers/utilities.rb +57 -0
- data/lib/atome/kernel/essentials.rb +30 -0
- data/lib/atome/kernel/universe.rb +75 -26
- data/lib/atome/presets/atome.rb +66 -0
- data/lib/atome/processors/utilities.rb +10 -0
- data/lib/atome/renderers/browser/atome.rb +95 -0
- data/lib/atome/renderers/browser/browser.rb +158 -0
- data/lib/atome/renderers/browser/effect.rb +23 -0
- data/lib/atome/renderers/browser/event.rb +9 -0
- data/lib/atome/renderers/browser/geometry.rb +11 -0
- data/lib/atome/renderers/browser/identity.rb +20 -0
- data/lib/atome/renderers/browser/material.rb +43 -0
- data/lib/atome/renderers/{opal → browser}/opal_browser.rb +0 -2
- data/lib/atome/renderers/browser/spatial.rb +22 -0
- data/lib/atome/renderers/browser/utility.rb +26 -0
- data/lib/atome/renderers/html/atome.rb +47 -0
- data/lib/atome/renderers/html/effect.rb +19 -0
- data/lib/atome/renderers/html/event.rb +9 -0
- data/lib/atome/renderers/html/geometry.rb +11 -0
- data/lib/atome/renderers/html/html.rb +42 -0
- data/lib/atome/renderers/html/identity.rb +14 -0
- data/lib/atome/renderers/html/opal_browser.rb +6 -0
- data/lib/atome/renderers/html/spatial.rb +28 -0
- data/lib/atome/renderers/html/utility.rb +15 -0
- data/lib/atome/renderers/opal/atome_opal_extensions.rb +1 -1
- data/lib/atome/renderers/opal/extensions/atome.rb +29 -0
- data/lib/atome/renderers/opal/opal.rb +4 -0
- data/lib/atome/version.rb +1 -2
- data/lib/atome.rb +22 -45
- data/vendor/assets/application/index.rb +3 -1
- data/vendor/assets/application/required_example.rb +1 -0
- data/{lib/atome/renderers/headless/headless.rb → vendor/assets/aui.rb} +0 -0
- data/vendor/assets/build/css/style.css +51 -0
- data/vendor/assets/build/index.html +10 -7
- data/vendor/assets/build/js/atome/atome.js +61 -61
- data/{lib/atome/renderers/server/server.rb → vendor/assets/build/medias/rubies/examples/_animation.rb} +0 -0
- data/vendor/assets/build/medias/rubies/examples/_code.rb +12 -0
- data/vendor/assets/build/medias/rubies/examples/_id.rb +14 -0
- data/vendor/assets/build/medias/rubies/examples/_link.rb +17 -0
- data/vendor/assets/build/medias/rubies/examples/{on.rb → _on.rb} +3 -1
- data/vendor/assets/build/medias/rubies/examples/{read.rb → _read.rb} +2 -0
- data/vendor/assets/build/medias/rubies/examples/_refresh.rb +9 -0
- data/vendor/assets/build/medias/rubies/examples/atome.new.rb +13 -10
- data/vendor/assets/build/medias/rubies/examples/auto_height.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/auto_width.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/blur.rb +4 -0
- data/vendor/assets/build/medias/rubies/examples/bottom.rb +3 -1
- data/vendor/assets/build/medias/rubies/examples/box.rb +15 -8
- data/vendor/assets/build/medias/rubies/examples/circle.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/clear.rb +2 -1
- data/vendor/assets/build/medias/rubies/examples/color.rb +47 -8
- data/vendor/assets/build/medias/rubies/examples/create_atome_in_atome.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/delete.rb +7 -0
- data/vendor/assets/build/medias/rubies/examples/drag.rb +1 -0
- data/vendor/assets/build/medias/rubies/examples/element.rb +6 -0
- data/vendor/assets/build/medias/rubies/examples/get_renderer_list.rb +3 -1
- data/vendor/assets/build/medias/rubies/examples/grab.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/height.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/image.rb +6 -2
- data/vendor/assets/build/medias/rubies/examples/left.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/monitoring.rb +20 -0
- data/vendor/assets/build/medias/rubies/examples/parent.rb +7 -5
- data/vendor/assets/build/medias/rubies/examples/repeat.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/right.rb +3 -1
- data/vendor/assets/build/medias/rubies/examples/schedule.rb +0 -4
- data/vendor/assets/build/medias/rubies/examples/shadow.rb +30 -0
- data/vendor/assets/build/medias/rubies/examples/text.rb +21 -7
- data/vendor/assets/build/medias/rubies/examples/touch.rb +2 -0
- data/vendor/assets/build/medias/rubies/examples/video.rb +2 -2
- data/vendor/assets/build/medias/rubies/examples/web.rb +2 -2
- data/vendor/assets/server/atome_server.rb +3 -5
- metadata +74 -174
- data/lib/atome/atome_native_extensions.rb +0 -5
- data/lib/atome/extensions/helper.rb +0 -112
- data/lib/atome/kernel/atome.rb +0 -99
- data/lib/atome/kernel/generators/generator.rb +0 -517
- data/lib/atome/kernel/generators/genesis.rb +0 -277
- data/lib/atome/kernel/generators/sanitizer.rb +0 -73
- data/lib/atome/kernel/generators/shapes.rb +0 -55
- data/lib/atome/kernel/helpers/internal_methods.rb +0 -173
- data/lib/atome/kernel/helpers/utilities.rb +0 -39
- data/lib/atome/kernel/properties/essential.rb +0 -77
- data/lib/atome/kernel/sparkle.rb +0 -38
- data/lib/atome/renderers/opal/properties/generator.rb +0 -1
- data/lib/atome/renderers/renderer.rb +0 -13
- data/lib/atome/renderers/server/properties/generator.rb +0 -9
- data/vendor/assets/build/js/application.js +0 -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/Old_examples/!demos.rb +0 -111
- data/vendor/assets/build/medias/rubies/examples/Old_examples/action.rb +0 -12
- data/vendor/assets/build/medias/rubies/examples/Old_examples/add.rb +0 -26
- data/vendor/assets/build/medias/rubies/examples/Old_examples/alignment.rb +0 -27
- data/vendor/assets/build/medias/rubies/examples/Old_examples/animation.rb +0 -92
- data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_as_property.rb +0 -20
- data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_list.rb +0 -4
- data/vendor/assets/build/medias/rubies/examples/Old_examples/atomiser.rb +0 -17
- data/vendor/assets/build/medias/rubies/examples/Old_examples/attach_extract.rb +0 -13
- data/vendor/assets/build/medias/rubies/examples/Old_examples/authorisation.rb +0 -22
- data/vendor/assets/build/medias/rubies/examples/Old_examples/batch.rb +0 -6
- data/vendor/assets/build/medias/rubies/examples/Old_examples/blend.rb +0 -15
- data/vendor/assets/build/medias/rubies/examples/Old_examples/blur.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/border.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/calendar.rb +0 -5
- data/vendor/assets/build/medias/rubies/examples/Old_examples/capture.rb +0 -57
- data/vendor/assets/build/medias/rubies/examples/Old_examples/center.rb +0 -21
- data/vendor/assets/build/medias/rubies/examples/Old_examples/child.rb +0 -18
- data/vendor/assets/build/medias/rubies/examples/Old_examples/clear.rb +0 -21
- data/vendor/assets/build/medias/rubies/examples/Old_examples/clip.rb +0 -11
- data/vendor/assets/build/medias/rubies/examples/Old_examples/code.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/code_editor.rb +0 -26
- data/vendor/assets/build/medias/rubies/examples/Old_examples/collaborate.rb +0 -115
- data/vendor/assets/build/medias/rubies/examples/Old_examples/convert_to_px.rb +0 -14
- data/vendor/assets/build/medias/rubies/examples/Old_examples/copy_paste.rb +0 -35
- data/vendor/assets/build/medias/rubies/examples/Old_examples/current_code.rb +0 -14
- data/vendor/assets/build/medias/rubies/examples/Old_examples/cursor.rb +0 -3
- data/vendor/assets/build/medias/rubies/examples/Old_examples/data.rb +0 -11
- data/vendor/assets/build/medias/rubies/examples/Old_examples/database.rb +0 -29
- data/vendor/assets/build/medias/rubies/examples/Old_examples/delete.rb +0 -12
- data/vendor/assets/build/medias/rubies/examples/Old_examples/display.rb +0 -19
- data/vendor/assets/build/medias/rubies/examples/Old_examples/disposition.rb +0 -10
- data/vendor/assets/build/medias/rubies/examples/Old_examples/double_and_long_touch.rb +0 -23
- data/vendor/assets/build/medias/rubies/examples/Old_examples/drag.rb +0 -61
- data/vendor/assets/build/medias/rubies/examples/Old_examples/drag_and_drop_import.rb +0 -1
- data/vendor/assets/build/medias/rubies/examples/Old_examples/drop.rb +0 -23
- data/vendor/assets/build/medias/rubies/examples/Old_examples/duplicate.rb +0 -11
- data/vendor/assets/build/medias/rubies/examples/Old_examples/edit.rb +0 -6
- data/vendor/assets/build/medias/rubies/examples/Old_examples/eval.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/extract_detach.rb +0 -23
- data/vendor/assets/build/medias/rubies/examples/Old_examples/fill.rb +0 -10
- data/vendor/assets/build/medias/rubies/examples/Old_examples/find.rb +0 -37
- data/vendor/assets/build/medias/rubies/examples/Old_examples/fit.rb +0 -44
- data/vendor/assets/build/medias/rubies/examples/Old_examples/fullscreen.rb +0 -28
- data/vendor/assets/build/medias/rubies/examples/Old_examples/generate.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/gradient.rb +0 -24
- data/vendor/assets/build/medias/rubies/examples/Old_examples/group.rb +0 -21
- data/vendor/assets/build/medias/rubies/examples/Old_examples/helper.rb +0 -64
- data/vendor/assets/build/medias/rubies/examples/Old_examples/history.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/hue.rb +0 -10
- data/vendor/assets/build/medias/rubies/examples/Old_examples/input_text.rb +0 -54
- data/vendor/assets/build/medias/rubies/examples/Old_examples/insert_attach.rb +0 -13
- data/vendor/assets/build/medias/rubies/examples/Old_examples/internationalisation.rb +0 -10
- data/vendor/assets/build/medias/rubies/examples/Old_examples/key.rb +0 -19
- data/vendor/assets/build/medias/rubies/examples/Old_examples/keyboard_shortcut.rb +0 -69
- data/vendor/assets/build/medias/rubies/examples/Old_examples/list_methods.rb +0 -4
- data/vendor/assets/build/medias/rubies/examples/Old_examples/list_types.rb +0 -4
- data/vendor/assets/build/medias/rubies/examples/Old_examples/listen.rb +0 -47
- data/vendor/assets/build/medias/rubies/examples/Old_examples/mail.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/map.rb +0 -6
- data/vendor/assets/build/medias/rubies/examples/Old_examples/mask.rb +0 -15
- data/vendor/assets/build/medias/rubies/examples/Old_examples/media_recorder.rb +0 -24
- data/vendor/assets/build/medias/rubies/examples/Old_examples/media_streaming.rb +0 -41
- data/vendor/assets/build/medias/rubies/examples/Old_examples/meteo.rb +0 -41
- data/vendor/assets/build/medias/rubies/examples/Old_examples/methods_chaining.rb +0 -8
- data/vendor/assets/build/medias/rubies/examples/Old_examples/midi.rb +0 -37
- data/vendor/assets/build/medias/rubies/examples/Old_examples/monitoring.rb +0 -47
- data/vendor/assets/build/medias/rubies/examples/Old_examples/mulitrendering.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/noise_gradient_texture.rb +0 -26
- data/vendor/assets/build/medias/rubies/examples/Old_examples/notification.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/object_in_object.rb +0 -13
- data/vendor/assets/build/medias/rubies/examples/Old_examples/on_resize.rb +0 -12
- data/vendor/assets/build/medias/rubies/examples/Old_examples/over.rb +0 -15
- data/vendor/assets/build/medias/rubies/examples/Old_examples/overflow.rb +0 -22
- data/vendor/assets/build/medias/rubies/examples/Old_examples/parameter.rb +0 -14
- data/vendor/assets/build/medias/rubies/examples/Old_examples/parent.rb +0 -19
- data/vendor/assets/build/medias/rubies/examples/Old_examples/particle.rb +0 -15
- data/vendor/assets/build/medias/rubies/examples/Old_examples/pay.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/ping.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/play.rb +0 -24
- data/vendor/assets/build/medias/rubies/examples/Old_examples/play_audio.rb +0 -6
- data/vendor/assets/build/medias/rubies/examples/Old_examples/position.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/read_file.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/reboot.rb +0 -15
- data/vendor/assets/build/medias/rubies/examples/Old_examples/refresh.rb +0 -17
- data/vendor/assets/build/medias/rubies/examples/Old_examples/remote_server.rb +0 -31
- data/vendor/assets/build/medias/rubies/examples/Old_examples/render.rb +0 -17
- data/vendor/assets/build/medias/rubies/examples/Old_examples/repeat.rb +0 -19
- data/vendor/assets/build/medias/rubies/examples/Old_examples/require_remote.rb +0 -3
- data/vendor/assets/build/medias/rubies/examples/Old_examples/restore_atome.rb +0 -11
- data/vendor/assets/build/medias/rubies/examples/Old_examples/resurect.rb +0 -30
- data/vendor/assets/build/medias/rubies/examples/Old_examples/ruby_version.rb +0 -1
- data/vendor/assets/build/medias/rubies/examples/Old_examples/say.rb +0 -3
- data/vendor/assets/build/medias/rubies/examples/Old_examples/scale.rb +0 -41
- data/vendor/assets/build/medias/rubies/examples/Old_examples/schedule.rb +0 -39
- data/vendor/assets/build/medias/rubies/examples/Old_examples/scroll.rb +0 -9
- data/vendor/assets/build/medias/rubies/examples/Old_examples/select.rb +0 -32
- data/vendor/assets/build/medias/rubies/examples/Old_examples/selector.rb +0 -6
- data/vendor/assets/build/medias/rubies/examples/Old_examples/shadow.rb +0 -30
- data/vendor/assets/build/medias/rubies/examples/Old_examples/shape_with_path.rb +0 -7
- data/vendor/assets/build/medias/rubies/examples/Old_examples/size.rb +0 -109
- data/vendor/assets/build/medias/rubies/examples/Old_examples/smooth.rb +0 -5
- data/vendor/assets/build/medias/rubies/examples/Old_examples/speech_renderer.rb +0 -5
- data/vendor/assets/build/medias/rubies/examples/Old_examples/synth.rb +0 -6
- data/vendor/assets/build/medias/rubies/examples/Old_examples/system.rb +0 -3
- data/vendor/assets/build/medias/rubies/examples/Old_examples/tags.rb +0 -18
- data/vendor/assets/build/medias/rubies/examples/Old_examples/text.rb +0 -33
- data/vendor/assets/build/medias/rubies/examples/Old_examples/text_selection.rb +0 -33
- data/vendor/assets/build/medias/rubies/examples/Old_examples/text_to_midi.rb +0 -22
- data/vendor/assets/build/medias/rubies/examples/Old_examples/touch.rb +0 -23
- data/vendor/assets/build/medias/rubies/examples/Old_examples/touch_stop_propagation.rb +0 -27
- data/vendor/assets/build/medias/rubies/examples/Old_examples/treat_object_in_object.rb +0 -26
- data/vendor/assets/build/medias/rubies/examples/Old_examples/type_mutations.rb +0 -27
- data/vendor/assets/build/medias/rubies/examples/Old_examples/video_callback.rb +0 -46
- data/vendor/assets/build/medias/rubies/examples/Old_examples/view_mode.rb +0 -29
- data/vendor/assets/build/medias/rubies/examples/Old_examples/virtual_events.rb +0 -17
- data/vendor/assets/build/medias/rubies/examples/Old_examples/visual.rb +0 -23
- data/vendor/assets/build/medias/rubies/examples/Old_examples/vr_display.rb +0 -5
- data/vendor/assets/build/medias/rubies/examples/Old_examples/wait.rb +0 -21
- data/vendor/assets/build/medias/rubies/examples/Old_examples/web.rb +0 -10
- data/vendor/assets/build/medias/rubies/examples/Old_examples/web_address_bar.rb +0 -14
- data/vendor/assets/build/medias/rubies/examples/Old_examples/websocket.rb +0 -16
- data/vendor/assets/build/medias/rubies/examples/Old_examples/webstate.rb +0 -10
- data/vendor/assets/build/medias/rubies/examples/animation.rb +0 -0
- data/vendor/assets/build/medias/rubies/examples/code.rb +0 -5
- data/vendor/assets/build/medias/rubies/examples/link.rb +0 -11
- 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
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 62c07cd1f5c087a9dfe4e36b06cf4422e614657aa98cfee2e419f794e51f2eeb
|
4
|
+
data.tar.gz: b2d2eb46ba7599080b0f2d515a62659696375514579ce007721d8a012de15e18
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: ddd934acb39f162de762e634e3cc7f81cee597ccdba358cef0b294ace259b4766a9257c84704232447a85bf36cb4bbd331db9d486d979b5319ff4bdf6343c210
|
7
|
+
data.tar.gz: 38ce69c494f2b55e667329e72c2e87bf80ac1b8a8787cea5d3c378f7c46cd7814fbfd6b3ac868d428deeaa07b594cb64ac1482f23817122e3a236f8c7cc3bc2f
|
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -2,9 +2,10 @@ Atome
|
|
2
2
|
-
|
3
3
|
|
4
4
|
<img src="./documentation/images/3.png" width="666" />
|
5
|
-
-
|
6
5
|
|
7
6
|
|
7
|
+
Atome is powerful engine dedicated to the creation of cross-platform applications, web application and digital medias.
|
8
|
+
|
8
9
|
Cross platform ecosystem
|
9
10
|
-
|
10
11
|
|
@@ -47,7 +48,7 @@ Open source technology included
|
|
47
48
|
|
48
49
|
[comment]: <> (<img src="https://github.com/atomecorp/atome/raw/master/documentation/images/logos/freebsd.png" width="100" />)
|
49
50
|
|
50
|
-
- Tauri : Build smaller, faster, and more secure desktop applications with a web frontend
|
51
|
+
[//]: # (- Tauri : Build smaller, faster, and more secure desktop applications with a web frontend.(https://github.com/tauri-apps/tauri))
|
51
52
|
|
52
53
|
[comment]: <> (<img src="https://avatars.githubusercontent.com/u/54536011?s=200&v=4" width="100" />)
|
53
54
|
|
@@ -58,7 +59,8 @@ Open source technology included
|
|
58
59
|
<img src="./documentation/images/logos/roda.svg" width="100" />
|
59
60
|
<img src="./documentation/images/logos/freebsd.png" width="100" />
|
60
61
|
<img src="./documentation/images/logos/puma.png" width="100" />
|
61
|
-
|
62
|
+
|
63
|
+
[//]: # (<img src="./documentation/images/logos/tauri.png" width="100" /> )
|
62
64
|
|
63
65
|
## Installation
|
64
66
|
|
@@ -78,7 +80,8 @@ If bundler is not being used to manage dependencies, install the gem by executin
|
|
78
80
|
|
79
81
|
After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake test` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.
|
80
82
|
|
81
|
-
To install this gem onto your local machine, run `bundle exec rake install`.
|
83
|
+
To install this gem onto your local machine, run `bundle exec rake install`.
|
84
|
+
To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and the created tag, and push the `.gem` file to [rubygems.org](https://rubygems.org).
|
82
85
|
|
83
86
|
## Contributing
|
84
87
|
|
data/Rakefile
CHANGED
@@ -1,21 +1,30 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
# require "rake/testtask"
|
6
|
-
#
|
7
|
-
# Rake::TestTask.new(:test) do |t|
|
8
|
-
# t.libs << "test"
|
9
|
-
# t.libs << "lib"
|
10
|
-
# t.test_files = FileList["test/**/test_*.rb"]
|
11
|
-
# end
|
12
|
-
#
|
13
|
-
# task default: :test
|
3
|
+
require "bundler/gem_tasks"
|
4
|
+
require "rake/testtask"
|
14
5
|
|
15
|
-
|
16
|
-
|
6
|
+
Rake::TestTask.new(:test) do |t|
|
7
|
+
t.libs << "test"
|
8
|
+
t.libs << "lib"
|
9
|
+
t.test_files = FileList["test/**/test_*.rb"]
|
10
|
+
end
|
11
|
+
|
12
|
+
task default: :test
|
13
|
+
|
14
|
+
task :test_browser do
|
15
|
+
FileUtils.copy_entry('vendor/assets/build/js/', 'test/test_app/build/js/')
|
16
|
+
FileUtils.copy_entry('vendor/assets/build/css/', 'test/test_app/build/css/')
|
17
|
+
FileUtils.copy_entry('vendor/assets/build/css/', 'test/test_app/build/medias/')
|
17
18
|
`gem cleanup atome;yes | gem uninstall atome ;gem build atome.gemspec;gem install atome`
|
18
19
|
`cd test/test_app;atome update;atome run guard`
|
19
20
|
end
|
20
21
|
|
22
|
+
task :test_server do
|
23
|
+
FileUtils.copy_entry('vendor/assets/build/js/', 'test/test_app/build/js/')
|
24
|
+
FileUtils.copy_entry('vendor/assets/build/css/', 'test/test_app/build/css/')
|
25
|
+
FileUtils.copy_entry('vendor/assets/build/css/', 'test/test_app/build/medias/')
|
26
|
+
`gem cleanup atome;yes | gem uninstall atome ;gem build atome.gemspec;gem install atome`
|
27
|
+
`cd test/test_app;atome update;atome run server`
|
28
|
+
end
|
29
|
+
|
21
30
|
task default: :test
|
@@ -12,7 +12,11 @@ require 'uglifier'
|
|
12
12
|
Opal.append_path 'app'
|
13
13
|
|
14
14
|
def build_browser_content
|
15
|
-
Opal::Builder.build('../lib/atome/renderers/
|
15
|
+
Opal::Builder.build('../lib/atome/renderers/browser/opal_browser.rb').to_s
|
16
|
+
end
|
17
|
+
|
18
|
+
def build_opal_content
|
19
|
+
Opal::Builder.build('../lib/atome/renderers/opal/opal.rb').to_s
|
16
20
|
end
|
17
21
|
|
18
22
|
def build_opal_browser(user_project_path)
|
@@ -28,10 +32,20 @@ def build_opal_browser(user_project_path)
|
|
28
32
|
end
|
29
33
|
end
|
30
34
|
|
31
|
-
def
|
32
|
-
|
33
|
-
|
35
|
+
def build_opal(user_project_path)
|
36
|
+
opal_directory = "#{user_project_path}/build/js/opal"
|
37
|
+
opal_js = "#{opal_directory}/opal.js"
|
38
|
+
Dir.mkdir(opal_directory) unless File.directory?(opal_directory)
|
39
|
+
|
40
|
+
File.new opal_js, 'w'
|
41
|
+
browser_content = build_opal_content
|
34
42
|
|
43
|
+
File.open(opal_js, 'w') do |f|
|
44
|
+
f.puts browser_content
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
def build_aui(user_project_path)
|
35
49
|
# now we add an uniq aui to the app
|
36
50
|
aui_js = "#{user_project_path}/build/js/aui.js"
|
37
51
|
File.new aui_js, 'w'
|
@@ -113,6 +127,15 @@ def minimize_browser(user_project_path)
|
|
113
127
|
end
|
114
128
|
end
|
115
129
|
|
130
|
+
def minimize_opal(user_project_path)
|
131
|
+
opal_js = "#{user_project_path}/build/js/opal/opal.js"
|
132
|
+
opal_content = File.open(opal_js).read
|
133
|
+
opal_content = Uglifier.new.compile(opal_content)
|
134
|
+
File.open(opal_js, 'w') do |f|
|
135
|
+
f.puts opal_content
|
136
|
+
end
|
137
|
+
end
|
138
|
+
|
116
139
|
def minimize_parser(user_project_path)
|
117
140
|
parser_js = "#{user_project_path}/build/js/opal/opal_parser.js"
|
118
141
|
parser_content = File.open(parser_js).read
|
@@ -122,8 +145,17 @@ def minimize_parser(user_project_path)
|
|
122
145
|
end
|
123
146
|
end
|
124
147
|
|
125
|
-
def
|
126
|
-
|
148
|
+
def minimize_kernel(user_project_path)
|
149
|
+
kernel_js = "#{user_project_path}/build/js/atome/kernel.js"
|
150
|
+
kernel_content = File.open(kernel_js).read
|
151
|
+
kernel_content = Uglifier.new.compile(kernel_content)
|
152
|
+
File.open(kernel_js, 'w') do |f|
|
153
|
+
f.puts kernel_content
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
157
|
+
def minimize_atome(user_project_path)
|
158
|
+
atome_js = "#{user_project_path}/build/js/atome/atome.js"
|
127
159
|
atome_content = File.open(atome_js).read
|
128
160
|
atome_content = Uglifier.new.compile(atome_content)
|
129
161
|
File.open(atome_js, 'w') do |f|
|
@@ -131,14 +163,14 @@ def minimize_atome_lib(user_project_path)
|
|
131
163
|
end
|
132
164
|
end
|
133
165
|
|
134
|
-
def minimize_sparkle(user_project_path)
|
135
|
-
|
136
|
-
|
137
|
-
|
138
|
-
|
139
|
-
|
140
|
-
|
141
|
-
end
|
166
|
+
# def minimize_sparkle(user_project_path)
|
167
|
+
# opal_sparkle_js = "#{user_project_path}/build/js/opal/opal_sparkle.js"
|
168
|
+
# opal_sparkle_content = File.open(opal_sparkle_js).read
|
169
|
+
# opal_sparkle_content = Uglifier.new.compile(opal_sparkle_content)
|
170
|
+
# File.open(opal_sparkle_js, 'w') do |f|
|
171
|
+
# f.puts opal_sparkle_content
|
172
|
+
# end
|
173
|
+
# end
|
142
174
|
|
143
175
|
def minimize_opal_extensions(user_project_path)
|
144
176
|
atome_opal_extensions_js = "#{user_project_path}/build/js/opal/atome_opal_extensions.js"
|
@@ -152,19 +184,24 @@ end
|
|
152
184
|
def minimize_libraries(user_project_path)
|
153
185
|
# minimizing aui
|
154
186
|
minimize_aui(user_project_path)
|
187
|
+
# minimizing opal
|
188
|
+
minimize_opal(user_project_path)
|
155
189
|
# minimizing opal_browser
|
156
190
|
minimize_browser(user_project_path)
|
157
191
|
# minimizing opal_parser
|
158
192
|
minimize_parser(user_project_path)
|
159
193
|
# minimizing atome_lib
|
160
|
-
|
161
|
-
# minimizing
|
162
|
-
|
194
|
+
minimize_kernel(user_project_path)
|
195
|
+
# minimizing atome
|
196
|
+
minimize_atome(user_project_path)
|
163
197
|
# minimizing atome_lib
|
164
198
|
minimize_opal_extensions(user_project_path)
|
199
|
+
# minimizing application
|
200
|
+
minimize_application(user_project_path)
|
201
|
+
# minimize(user_project_path) if production == 'production'
|
165
202
|
end
|
166
203
|
|
167
|
-
def
|
204
|
+
def minimize_application(user_project_path)
|
168
205
|
# minimizing user codes
|
169
206
|
application_js = "#{user_project_path}/build/js/application.js"
|
170
207
|
application_content = File.open(application_js).read
|
@@ -176,10 +213,9 @@ end
|
|
176
213
|
|
177
214
|
task :build_user_code, :user_project_path, :production do |_t, args|
|
178
215
|
user_project_path = args[:user_project_path]
|
179
|
-
production = args[:production]
|
180
216
|
source_code = "#{user_project_path}/application/index.rb"
|
181
217
|
build_user_code(user_project_path, source_code)
|
182
|
-
|
218
|
+
minimize_application(user_project_path)
|
183
219
|
end
|
184
220
|
|
185
221
|
task :system_builder, :user_project_path, :production do |_t, args|
|
@@ -200,11 +236,17 @@ task :system_updater, :user_project_path, :production do |_t, args|
|
|
200
236
|
build_common_libraries(user_project_path, production)
|
201
237
|
end
|
202
238
|
|
239
|
+
task :minimizer, :user_project_path do |_t, args|
|
240
|
+
user_project_path = args[:user_project_path]
|
241
|
+
minimize(user_project_path)
|
242
|
+
end
|
243
|
+
|
203
244
|
task default: :run
|
204
245
|
|
205
246
|
def build_libraries(user_project_path, gem_location)
|
206
247
|
build_aui(user_project_path)
|
207
248
|
build_atome_kernel(user_project_path, gem_location)
|
249
|
+
build_opal(user_project_path)
|
208
250
|
build_opal_browser(user_project_path)
|
209
251
|
build_opal_parser(user_project_path)
|
210
252
|
build_opal_extensions(user_project_path, gem_location)
|
@@ -212,7 +254,7 @@ end
|
|
212
254
|
|
213
255
|
def minimize(user_project_path)
|
214
256
|
minimize_libraries(user_project_path)
|
215
|
-
minimize_user_code(user_project_path)
|
257
|
+
# minimize_user_code(user_project_path)
|
216
258
|
end
|
217
259
|
|
218
260
|
def build_common_libraries(user_project_path, production)
|
data/exe/atome
CHANGED
@@ -5,18 +5,28 @@ require 'fileutils'
|
|
5
5
|
require 'securerandom'
|
6
6
|
require 'digest/sha2'
|
7
7
|
# below are the methods needed for atome creation and run
|
8
|
+
def test_path(project_name, arg_name, path)
|
9
|
+
if project_name != 'run' && project_name != 'guard' && !project_name.nil? &&
|
10
|
+
project_name != 'port:' && project_name != 'server' && project_name != 'build'
|
11
|
+
# the line below remove the optional parameters from the project name
|
12
|
+
project_name = project_name.sub(ARGV[ARGV.find_index(arg_name) + 1], '')
|
13
|
+
"#{path}/#{project_name}"
|
14
|
+
end
|
15
|
+
path
|
16
|
+
end
|
8
17
|
|
9
18
|
def found_path(arg_name)
|
10
19
|
project_name = ARGV[ARGV.find_index(arg_name) + 1]
|
11
20
|
path = `pwd`.chomp
|
12
|
-
if
|
13
|
-
|
14
|
-
|
21
|
+
if ARGV[ARGV.find_index(arg_name) + 1] == 'production'
|
22
|
+
app_builder_helpers = File.join(File.dirname(__FILE__), '../app_builder_helpers')
|
23
|
+
`cd #{app_builder_helpers};rake minimizer[#{path}]`
|
15
24
|
end
|
16
|
-
path
|
25
|
+
path = `pwd`.chomp
|
26
|
+
test_path(project_name, arg_name, path)
|
17
27
|
end
|
18
28
|
|
19
|
-
def delete_all(dir, user_application =
|
29
|
+
def delete_all(dir, user_application = nil)
|
20
30
|
Dir.foreach(dir) do |e|
|
21
31
|
next if %w[. ..].include? e
|
22
32
|
|
@@ -37,10 +47,27 @@ def build_app(path, production)
|
|
37
47
|
`cd #{app_builder_helpers};rake build_user_code[#{path},#{production}]`
|
38
48
|
end
|
39
49
|
|
40
|
-
def
|
41
|
-
|
50
|
+
def content_to_add(coded_id)
|
51
|
+
<<~STR
|
52
|
+
class Atome
|
53
|
+
def self.aui
|
54
|
+
"#{coded_id}"
|
55
|
+
end
|
56
|
+
end
|
57
|
+
STR
|
58
|
+
end
|
59
|
+
|
60
|
+
def app_creation(content_to_add, current_path, project_name)
|
61
|
+
added_content = content_to_add
|
62
|
+
file_location = "#{current_path}/#{project_name}/aui.rb"
|
63
|
+
File.new file_location, 'w'
|
64
|
+
File.open(file_location, 'w') do |f|
|
65
|
+
f.puts added_content
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
69
|
+
def test_app_creation(project_name, current_path, force)
|
42
70
|
new_app_creation = false
|
43
|
-
current_path = `pwd`.chomp
|
44
71
|
unless force && File.directory?(project_name)
|
45
72
|
new_app_creation = true
|
46
73
|
Dir.mkdir project_name
|
@@ -48,20 +75,12 @@ def create_application(project_name, force, production)
|
|
48
75
|
uuid = SecureRandom.uuid
|
49
76
|
sha = Digest::SHA256.hexdigest(uuid)
|
50
77
|
coded_id = sha.gsub('-', '_')
|
51
|
-
|
52
|
-
class Atome
|
53
|
-
def self.aui
|
54
|
-
"#{coded_id}"
|
55
|
-
end
|
56
|
-
end
|
57
|
-
STR
|
58
|
-
file_location = "#{current_path}/#{project_name}/aui.rb"
|
59
|
-
File.new file_location, 'w'
|
60
|
-
File.open(file_location, 'w') do |f|
|
61
|
-
f.puts added_content
|
62
|
-
end
|
78
|
+
app_creation(content_to_add(coded_id), current_path, project_name)
|
63
79
|
end
|
80
|
+
new_app_creation
|
81
|
+
end
|
64
82
|
|
83
|
+
def build_atome_resources(current_path, project_name, production)
|
65
84
|
gem_assets_location = File.join(File.dirname(__FILE__), '../vendor/assets/')
|
66
85
|
app_builder_helpers = File.join(File.dirname(__FILE__), '../app_builder_helpers')
|
67
86
|
target_template_location = "#{current_path}/#{project_name}"
|
@@ -73,14 +92,21 @@ def create_application(project_name, force, production)
|
|
73
92
|
end
|
74
93
|
# now run the rake task to build the needed libraries (atome, renderers, etc...)
|
75
94
|
`cd #{app_builder_helpers};rake system_builder[#{current_path}/#{project_name},#{production}]`
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
|
95
|
+
end
|
96
|
+
|
97
|
+
def create_application(project_name, force, production)
|
98
|
+
# print "directory already exist, use force to overwrite"
|
99
|
+
current_path = `pwd`.chomp
|
100
|
+
new_app_creation = test_app_creation(project_name, current_path, force)
|
101
|
+
build_atome_resources(current_path, project_name, production)
|
102
|
+
return unless new_app_creation
|
103
|
+
|
104
|
+
# now adding name to the app
|
105
|
+
index_html = "#{current_path}/#{project_name}/build/index.html"
|
106
|
+
index_html_content = File.open(index_html).read
|
107
|
+
index_html_content = index_html_content.gsub('<title>atome</title>', "<title>#{project_name}</title>")
|
108
|
+
File.open(index_html, 'w') do |f|
|
109
|
+
f.puts index_html_content
|
84
110
|
end
|
85
111
|
end
|
86
112
|
|
@@ -91,37 +117,57 @@ end
|
|
91
117
|
|
92
118
|
def guard_check
|
93
119
|
loop do
|
94
|
-
sleep
|
120
|
+
sleep 3
|
95
121
|
end
|
96
122
|
nil unless ARGV.include?('guard')
|
97
123
|
end
|
98
124
|
|
99
|
-
def
|
125
|
+
def browser_case(location)
|
126
|
+
`cd #{location}/build;open index.html`
|
127
|
+
guard_check
|
128
|
+
end
|
129
|
+
|
130
|
+
def server_case(port, location)
|
131
|
+
threads = []
|
132
|
+
threads << Thread.new do
|
133
|
+
sleep 1.5
|
134
|
+
`open http://localhost:9292/index`
|
135
|
+
end
|
136
|
+
`cd #{location}/server;rackup --server puma --port #{port} --env production`
|
137
|
+
end
|
138
|
+
|
139
|
+
def test_native(build_target)
|
100
140
|
case build_target
|
101
|
-
when :
|
102
|
-
threads = []
|
103
|
-
threads << Thread.new do
|
104
|
-
sleep 1.5
|
105
|
-
`open http://localhost:9292/index`
|
106
|
-
end
|
107
|
-
`cd #{location}/server;rackup --server puma --port #{port} --env production`
|
108
|
-
when :browser
|
109
|
-
`cd #{location}/build;open index.html`
|
110
|
-
guard_check
|
111
|
-
when :native
|
112
|
-
# freebsd
|
113
|
-
when :linux
|
141
|
+
when :freebsd
|
114
142
|
# freebsd
|
115
143
|
when :osx
|
116
144
|
# osx
|
117
145
|
when :windows
|
118
146
|
# windows
|
119
147
|
else
|
120
|
-
|
121
|
-
guard_check
|
148
|
+
puts :freebsd
|
122
149
|
end
|
123
150
|
end
|
124
151
|
|
152
|
+
def run_case(build_target, location, port)
|
153
|
+
case build_target
|
154
|
+
when :server
|
155
|
+
server_case(port, location)
|
156
|
+
when :browser
|
157
|
+
browser_case(location)
|
158
|
+
when :native
|
159
|
+
test_native(build_target)
|
160
|
+
# freebsd
|
161
|
+
else
|
162
|
+
browser_case(location)
|
163
|
+
end
|
164
|
+
end
|
165
|
+
|
166
|
+
def run_application(build_target, location, port = 9292)
|
167
|
+
build_app(location, nil)
|
168
|
+
run_case(build_target, location, port)
|
169
|
+
end
|
170
|
+
|
125
171
|
# below we analyse the ARGV
|
126
172
|
location = '/'
|
127
173
|
force = nil
|
@@ -0,0 +1,132 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# TODO : remove monitoring
|
4
|
+
# TODO : remove child
|
5
|
+
# TODO : remove parents
|
6
|
+
|
7
|
+
# main entry here
|
8
|
+
class Atome
|
9
|
+
# TODO : clean or delete @private_atome
|
10
|
+
include Essentials
|
11
|
+
|
12
|
+
private
|
13
|
+
|
14
|
+
def initialize(atomes = {}, &atomes_proc)
|
15
|
+
atomes.each_value do |elements|
|
16
|
+
@broadcast = {}
|
17
|
+
Universe.add_to_atomes({ elements[:id] => self })
|
18
|
+
elements[:bloc] = atomes_proc if atomes_proc
|
19
|
+
@atome = elements
|
20
|
+
# now we initiate the rendering eg for for browser will call :browser_type generated method in identity.rb file
|
21
|
+
type(@atome[:type])
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def new_particle(element, &method_proc)
|
26
|
+
Atome.define_method element do |params = nil, &user_proc|
|
27
|
+
if params
|
28
|
+
# the line below execute the proc created when using the build_particle method
|
29
|
+
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
30
|
+
sanitize_particle(element, params, &user_proc)
|
31
|
+
else
|
32
|
+
get_particle(element, &user_proc)
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def additional_particle_methods(element, &method_proc)
|
38
|
+
Atome.define_method "#{element}=" do |params = nil, &user_proc|
|
39
|
+
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
40
|
+
sanitize_particle(element, params, &user_proc)
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
def new_atome(element, &method_proc)
|
45
|
+
Atome.define_method element do |params = nil, &user_proc|
|
46
|
+
if params
|
47
|
+
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
48
|
+
params = atome_sanitizer(element, params)
|
49
|
+
Atome.new({ element => params })
|
50
|
+
else
|
51
|
+
get_atome(element, &user_proc)
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
55
|
+
|
56
|
+
def new_render_engine(renderer_name, &method_proc)
|
57
|
+
Atome.define_method renderer_name do |params = nil, &user_proc|
|
58
|
+
instance_exec(params, user_proc, &method_proc) if method_proc.is_a?(Proc)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
def new_atome_sanitizer(sanitizer_name)
|
63
|
+
Atome.define_method sanitizer_name do |params = {}|
|
64
|
+
params
|
65
|
+
end
|
66
|
+
end
|
67
|
+
|
68
|
+
def run_optional_proc(proc_name, atome = self, value = '')
|
69
|
+
option_found = Universe.get_optionals_methods(proc_name)
|
70
|
+
atome.instance_exec(value, &option_found) if option_found.is_a?(Proc)
|
71
|
+
end
|
72
|
+
|
73
|
+
def inject_value(element, value)
|
74
|
+
@atome[element] = value
|
75
|
+
end
|
76
|
+
|
77
|
+
def store_value(element, value)
|
78
|
+
# this method save the value of the particle and broadcast to the atomes listed in broadcast
|
79
|
+
broadcasting(element, value)
|
80
|
+
inject_value(element, value)
|
81
|
+
end
|
82
|
+
|
83
|
+
public
|
84
|
+
|
85
|
+
# the line below is used for ephemera atomes
|
86
|
+
attr_accessor :property, :value, :real_atome, :user_proc
|
87
|
+
attr_reader :atome, :structure
|
88
|
+
|
89
|
+
def set(value)
|
90
|
+
@real_atome[@property] = value
|
91
|
+
end
|
92
|
+
|
93
|
+
def create_particle(element, value, &user_proc)
|
94
|
+
return false unless security_pass(element, value)
|
95
|
+
|
96
|
+
run_optional_proc("pre_save_#{element}".to_sym, self, value)
|
97
|
+
store_value(element, value)
|
98
|
+
run_optional_proc("post_save_#{element}".to_sym, self, value)
|
99
|
+
rendering(element, value, &user_proc)
|
100
|
+
run_optional_proc("post_render_#{element}".to_sym, self, value)
|
101
|
+
self
|
102
|
+
end
|
103
|
+
|
104
|
+
def get(element)
|
105
|
+
@atome[element]
|
106
|
+
end
|
107
|
+
|
108
|
+
def get_particle(element, &user_proc)
|
109
|
+
virtual_atome = Atome.new({})
|
110
|
+
virtual_atome.value = (@atome[element])
|
111
|
+
virtual_atome.real_atome = @atome
|
112
|
+
virtual_atome.property = element
|
113
|
+
virtual_atome.user_proc = user_proc
|
114
|
+
run_optional_proc("pre_get_#{element}".to_sym, virtual_atome)
|
115
|
+
virtual_atome
|
116
|
+
end
|
117
|
+
|
118
|
+
def get_atome(element, &user_proc)
|
119
|
+
virtual_atome = Atome.new({})
|
120
|
+
virtual_atome.real_atome = @atome
|
121
|
+
virtual_atome.property = element
|
122
|
+
virtual_atome.user_proc = user_proc
|
123
|
+
virtual_atome.value = @atome[element]
|
124
|
+
virtual_atome
|
125
|
+
end
|
126
|
+
|
127
|
+
def create_atome(new_atome)
|
128
|
+
Atome.new(new_atome)
|
129
|
+
end
|
130
|
+
|
131
|
+
Universe.connected
|
132
|
+
end
|
@@ -0,0 +1,41 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
def grab(atome_to_get)
|
4
|
+
Universe.atomes[atome_to_get]
|
5
|
+
end
|
6
|
+
|
7
|
+
def box(params = {}, &proc)
|
8
|
+
grab(:view).box(params, &proc)
|
9
|
+
end
|
10
|
+
|
11
|
+
def circle(params = {}, &proc)
|
12
|
+
grab(:view).circle(params, &proc)
|
13
|
+
end
|
14
|
+
|
15
|
+
def text(params = {}, &bloc)
|
16
|
+
grab(:view).text(params, &bloc)
|
17
|
+
end
|
18
|
+
|
19
|
+
def image(params = {}, &bloc)
|
20
|
+
grab(:view).image(params, &bloc)
|
21
|
+
end
|
22
|
+
|
23
|
+
def video(params = {}, &bloc)
|
24
|
+
grab(:view).video(params, &bloc)
|
25
|
+
end
|
26
|
+
|
27
|
+
def color(params = {}, &bloc)
|
28
|
+
grab(:view).color(params, &bloc)
|
29
|
+
end
|
30
|
+
|
31
|
+
def element(params = {}, &bloc)
|
32
|
+
grab(:view).element(params, &bloc)
|
33
|
+
end
|
34
|
+
|
35
|
+
def shadow(params = {}, &bloc)
|
36
|
+
grab(:view).shadow(params, &bloc)
|
37
|
+
end
|
38
|
+
|
39
|
+
def code(params = {}, &bloc)
|
40
|
+
grab(:view).code(params, &bloc)
|
41
|
+
end
|
File without changes
|
File without changes
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
generator = Genesis.generator
|
4
|
+
|
5
|
+
generator.build_atome(:color)
|
6
|
+
generator.build_atome(:shadow)
|
7
|
+
generator.build_atome(:shape)
|
8
|
+
generator.build_atome(:text)
|
9
|
+
generator.build_atome(:image)
|
10
|
+
generator.build_atome(:video)
|
11
|
+
generator.build_atome(:code)
|
12
|
+
generator.build_atome(:audio)
|
13
|
+
generator.build_atome(:element)
|