atome 0.4.7.0 → 0.5.1.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (262) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile +1 -1
  3. data/README.md +7 -4
  4. data/Rakefile +22 -13
  5. data/app_builder_helpers/Rakefile +63 -21
  6. data/exe/atome +91 -45
  7. data/lib/atome/atome.rb +129 -0
  8. data/lib/atome/extensions/atome.rb +41 -0
  9. data/lib/atome/{kernel/helpers → extensions}/geolocation.rb +0 -0
  10. data/lib/atome/{kernel/helpers → extensions}/ping.rb +0 -0
  11. data/lib/atome/{kernel/helpers → extensions}/sha.rb +3 -1
  12. data/lib/atome/genesis/generators/atome.rb +38 -0
  13. data/lib/atome/{renderers/headless/properties/generator.rb → genesis/generators/communication.rb} +2 -0
  14. data/lib/atome/genesis/generators/effect.rb +6 -0
  15. data/lib/atome/genesis/generators/event.rb +10 -0
  16. data/lib/atome/genesis/generators/geometry.rb +6 -0
  17. data/lib/atome/genesis/generators/identity.rb +29 -0
  18. data/lib/atome/genesis/generators/material.rb +10 -0
  19. data/lib/atome/genesis/generators/spatial.rb +13 -0
  20. data/lib/atome/genesis/generators/utility.rb +31 -0
  21. data/lib/atome/genesis/genesis.rb +46 -0
  22. data/lib/atome/genesis/sparkle.rb +58 -0
  23. data/lib/atome/helpers/callbacks.rb +12 -0
  24. data/lib/atome/helpers/color_helper/color/cmyk.rb +263 -0
  25. data/lib/atome/helpers/color_helper/color/css.rb +7 -0
  26. data/lib/atome/helpers/color_helper/color/grayscale.rb +197 -0
  27. data/lib/atome/helpers/color_helper/color/hsl.rb +240 -0
  28. data/lib/atome/helpers/color_helper/color/palette/adobecolor.rb +260 -0
  29. data/lib/atome/helpers/color_helper/color/palette/gimp.rb +104 -0
  30. data/lib/atome/helpers/color_helper/color/palette/monocontrast.rb +164 -0
  31. data/lib/atome/helpers/color_helper/color/palette.rb +4 -0
  32. data/lib/atome/helpers/color_helper/color/rgb/colors.rb +167 -0
  33. data/lib/atome/helpers/color_helper/color/rgb/contrast.rb +57 -0
  34. data/lib/atome/helpers/color_helper/color/rgb/metallic.rb +28 -0
  35. data/lib/atome/helpers/color_helper/color/rgb.rb +715 -0
  36. data/lib/atome/helpers/color_helper/color/yiq.rb +62 -0
  37. data/lib/atome/helpers/color_helper/color.rb +196 -0
  38. data/lib/atome/helpers/essentials.rb +42 -0
  39. data/lib/atome/helpers/sanitizer.rb +23 -0
  40. data/lib/atome/helpers/utilities.rb +54 -0
  41. data/lib/atome/kernel/essentials.rb +23 -0
  42. data/lib/atome/kernel/universe.rb +92 -26
  43. data/lib/atome/presets/atome.rb +88 -0
  44. data/lib/atome/processors/utilities.rb +10 -0
  45. data/lib/atome/renderers/browser/atome.rb +108 -0
  46. data/lib/atome/renderers/browser/browser.rb +225 -0
  47. data/lib/atome/renderers/browser/effect.rb +23 -0
  48. data/lib/atome/renderers/browser/event.rb +37 -0
  49. data/lib/atome/renderers/browser/geometry.rb +11 -0
  50. data/lib/atome/renderers/browser/identity.rb +24 -0
  51. data/lib/atome/renderers/browser/material.rb +43 -0
  52. data/lib/atome/renderers/{opal → browser}/opal_browser.rb +0 -2
  53. data/lib/atome/renderers/browser/spatial.rb +23 -0
  54. data/lib/atome/renderers/browser/utility.rb +39 -0
  55. data/lib/atome/renderers/headless/headless.rb +10 -0
  56. data/lib/atome/renderers/headless/utility.rb +6 -0
  57. data/lib/atome/renderers/html/atome.rb +47 -0
  58. data/lib/atome/renderers/html/effect.rb +19 -0
  59. data/lib/atome/renderers/html/event.rb +9 -0
  60. data/lib/atome/renderers/html/geometry.rb +11 -0
  61. data/lib/atome/renderers/html/html.rb +42 -0
  62. data/lib/atome/renderers/html/identity.rb +14 -0
  63. data/lib/atome/renderers/html/opal_browser.rb +6 -0
  64. data/lib/atome/renderers/html/spatial.rb +28 -0
  65. data/lib/atome/renderers/html/utility.rb +17 -0
  66. data/lib/atome/renderers/opal/atome_opal_extensions.rb +1 -1
  67. data/lib/atome/renderers/opal/extensions/atome.rb +29 -0
  68. data/lib/atome/renderers/opal/opal.rb +4 -0
  69. data/lib/atome/renderers/renderer.rb +7 -7
  70. data/lib/atome/renderers/server/server.rb +10 -0
  71. data/lib/atome/renderers/server/utility.rb +6 -0
  72. data/lib/atome/version.rb +1 -2
  73. data/lib/atome.rb +25 -44
  74. data/vendor/assets/application/index.rb +3 -1
  75. data/vendor/assets/application/required_example.rb +1 -0
  76. data/vendor/assets/{build/js/application.js → aui.rb} +0 -0
  77. data/vendor/assets/build/css/style.css +51 -0
  78. data/vendor/assets/build/index.html +7 -8
  79. data/vendor/assets/build/js/atome/atome.js +141 -68
  80. data/vendor/assets/build/medias/rubies/examples/_2_solve.rb +13 -0
  81. data/vendor/assets/build/medias/rubies/examples/{animation.rb → _animation.rb} +0 -0
  82. data/vendor/assets/build/medias/rubies/examples/{drag.rb → _drag.rb} +1 -0
  83. data/vendor/assets/build/medias/rubies/examples/atome.new.rb +13 -10
  84. data/vendor/assets/build/medias/rubies/examples/auto_height.rb +2 -0
  85. data/vendor/assets/build/medias/rubies/examples/auto_width.rb +2 -0
  86. data/vendor/assets/build/medias/rubies/examples/blur.rb +4 -0
  87. data/vendor/assets/build/medias/rubies/examples/bottom.rb +3 -1
  88. data/vendor/assets/build/medias/rubies/examples/box.rb +12 -8
  89. data/vendor/assets/build/medias/rubies/examples/circle.rb +2 -0
  90. data/vendor/assets/build/medias/rubies/examples/clear.rb +2 -1
  91. data/vendor/assets/build/medias/rubies/examples/code.rb +10 -4
  92. data/vendor/assets/build/medias/rubies/examples/color.rb +47 -8
  93. data/vendor/assets/build/medias/rubies/examples/create_atome_in_atome.rb +2 -0
  94. data/vendor/assets/build/medias/rubies/examples/delete.rb +7 -0
  95. data/vendor/assets/build/medias/rubies/examples/element.rb +6 -0
  96. data/vendor/assets/build/medias/rubies/examples/fullscreen.rb +15 -0
  97. data/vendor/assets/build/medias/rubies/examples/get_renderer_list.rb +3 -1
  98. data/vendor/assets/build/medias/rubies/examples/grab.rb +2 -0
  99. data/vendor/assets/build/medias/rubies/examples/height.rb +7 -2
  100. data/vendor/assets/build/medias/rubies/examples/id.rb +14 -0
  101. data/vendor/assets/build/medias/rubies/examples/image.rb +6 -2
  102. data/vendor/assets/build/medias/rubies/examples/left.rb +7 -2
  103. data/vendor/assets/build/medias/rubies/examples/link.rb +12 -3
  104. data/vendor/assets/build/medias/rubies/examples/monitoring.rb +33 -0
  105. data/vendor/assets/build/medias/rubies/examples/on.rb +11 -7
  106. data/vendor/assets/build/medias/rubies/examples/parent.rb +7 -5
  107. data/vendor/assets/build/medias/rubies/examples/read.rb +6 -2
  108. data/vendor/assets/build/medias/rubies/examples/refresh.rb +8 -0
  109. data/vendor/assets/build/medias/rubies/examples/repeat.rb +2 -0
  110. data/vendor/assets/build/medias/rubies/examples/right.rb +3 -1
  111. data/vendor/assets/build/medias/rubies/examples/rotate.rb +2 -0
  112. data/vendor/assets/build/medias/rubies/examples/schedule.rb +8 -11
  113. data/vendor/assets/build/medias/rubies/examples/shadow.rb +30 -0
  114. data/vendor/assets/build/medias/rubies/examples/smooth.rb +2 -0
  115. data/vendor/assets/build/medias/rubies/examples/text.rb +21 -7
  116. data/vendor/assets/build/medias/rubies/examples/top.rb +3 -0
  117. data/vendor/assets/build/medias/rubies/examples/touch.rb +7 -0
  118. data/vendor/assets/build/medias/rubies/examples/video.rb +32 -23
  119. data/vendor/assets/build/medias/rubies/examples/wait.rb +8 -3
  120. data/vendor/assets/build/medias/rubies/examples/web.rb +7 -4
  121. data/vendor/assets/build/medias/rubies/examples/width.rb +6 -2
  122. data/vendor/assets/server/atome_server.rb +3 -5
  123. metadata +76 -164
  124. data/lib/atome/atome_native_extensions.rb +0 -5
  125. data/lib/atome/extensions/helper.rb +0 -112
  126. data/lib/atome/kernel/atome.rb +0 -99
  127. data/lib/atome/kernel/generators/generator.rb +0 -517
  128. data/lib/atome/kernel/generators/genesis.rb +0 -277
  129. data/lib/atome/kernel/generators/sanitizer.rb +0 -73
  130. data/lib/atome/kernel/generators/shapes.rb +0 -55
  131. data/lib/atome/kernel/helpers/internal_methods.rb +0 -173
  132. data/lib/atome/kernel/helpers/utilities.rb +0 -39
  133. data/lib/atome/kernel/properties/essential.rb +0 -77
  134. data/lib/atome/kernel/sparkle.rb +0 -38
  135. data/lib/atome/renderers/opal/properties/generator.rb +0 -1
  136. data/lib/atome/renderers/server/properties/generator.rb +0 -9
  137. data/vendor/assets/build/medias/audios/guitar.wav +0 -0
  138. data/vendor/assets/build/medias/images/beach.jpg +0 -0
  139. data/vendor/assets/build/medias/rubies/examples/Old_examples/!demos.rb +0 -111
  140. data/vendor/assets/build/medias/rubies/examples/Old_examples/action.rb +0 -12
  141. data/vendor/assets/build/medias/rubies/examples/Old_examples/add.rb +0 -26
  142. data/vendor/assets/build/medias/rubies/examples/Old_examples/alignment.rb +0 -27
  143. data/vendor/assets/build/medias/rubies/examples/Old_examples/animation.rb +0 -92
  144. data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_as_property.rb +0 -20
  145. data/vendor/assets/build/medias/rubies/examples/Old_examples/atome_list.rb +0 -4
  146. data/vendor/assets/build/medias/rubies/examples/Old_examples/atomiser.rb +0 -17
  147. data/vendor/assets/build/medias/rubies/examples/Old_examples/attach_extract.rb +0 -13
  148. data/vendor/assets/build/medias/rubies/examples/Old_examples/authorisation.rb +0 -22
  149. data/vendor/assets/build/medias/rubies/examples/Old_examples/batch.rb +0 -6
  150. data/vendor/assets/build/medias/rubies/examples/Old_examples/blend.rb +0 -15
  151. data/vendor/assets/build/medias/rubies/examples/Old_examples/blur.rb +0 -9
  152. data/vendor/assets/build/medias/rubies/examples/Old_examples/border.rb +0 -9
  153. data/vendor/assets/build/medias/rubies/examples/Old_examples/calendar.rb +0 -5
  154. data/vendor/assets/build/medias/rubies/examples/Old_examples/capture.rb +0 -57
  155. data/vendor/assets/build/medias/rubies/examples/Old_examples/center.rb +0 -21
  156. data/vendor/assets/build/medias/rubies/examples/Old_examples/child.rb +0 -18
  157. data/vendor/assets/build/medias/rubies/examples/Old_examples/clear.rb +0 -21
  158. data/vendor/assets/build/medias/rubies/examples/Old_examples/clip.rb +0 -11
  159. data/vendor/assets/build/medias/rubies/examples/Old_examples/code.rb +0 -7
  160. data/vendor/assets/build/medias/rubies/examples/Old_examples/code_editor.rb +0 -26
  161. data/vendor/assets/build/medias/rubies/examples/Old_examples/collaborate.rb +0 -115
  162. data/vendor/assets/build/medias/rubies/examples/Old_examples/convert_to_px.rb +0 -14
  163. data/vendor/assets/build/medias/rubies/examples/Old_examples/copy_paste.rb +0 -35
  164. data/vendor/assets/build/medias/rubies/examples/Old_examples/current_code.rb +0 -14
  165. data/vendor/assets/build/medias/rubies/examples/Old_examples/cursor.rb +0 -3
  166. data/vendor/assets/build/medias/rubies/examples/Old_examples/data.rb +0 -11
  167. data/vendor/assets/build/medias/rubies/examples/Old_examples/database.rb +0 -29
  168. data/vendor/assets/build/medias/rubies/examples/Old_examples/delete.rb +0 -12
  169. data/vendor/assets/build/medias/rubies/examples/Old_examples/display.rb +0 -19
  170. data/vendor/assets/build/medias/rubies/examples/Old_examples/disposition.rb +0 -10
  171. data/vendor/assets/build/medias/rubies/examples/Old_examples/double_and_long_touch.rb +0 -23
  172. data/vendor/assets/build/medias/rubies/examples/Old_examples/drag.rb +0 -61
  173. data/vendor/assets/build/medias/rubies/examples/Old_examples/drag_and_drop_import.rb +0 -1
  174. data/vendor/assets/build/medias/rubies/examples/Old_examples/drop.rb +0 -23
  175. data/vendor/assets/build/medias/rubies/examples/Old_examples/duplicate.rb +0 -11
  176. data/vendor/assets/build/medias/rubies/examples/Old_examples/edit.rb +0 -6
  177. data/vendor/assets/build/medias/rubies/examples/Old_examples/eval.rb +0 -9
  178. data/vendor/assets/build/medias/rubies/examples/Old_examples/extract_detach.rb +0 -23
  179. data/vendor/assets/build/medias/rubies/examples/Old_examples/fill.rb +0 -10
  180. data/vendor/assets/build/medias/rubies/examples/Old_examples/find.rb +0 -37
  181. data/vendor/assets/build/medias/rubies/examples/Old_examples/fit.rb +0 -44
  182. data/vendor/assets/build/medias/rubies/examples/Old_examples/fullscreen.rb +0 -28
  183. data/vendor/assets/build/medias/rubies/examples/Old_examples/generate.rb +0 -7
  184. data/vendor/assets/build/medias/rubies/examples/Old_examples/gradient.rb +0 -24
  185. data/vendor/assets/build/medias/rubies/examples/Old_examples/group.rb +0 -21
  186. data/vendor/assets/build/medias/rubies/examples/Old_examples/helper.rb +0 -64
  187. data/vendor/assets/build/medias/rubies/examples/Old_examples/history.rb +0 -7
  188. data/vendor/assets/build/medias/rubies/examples/Old_examples/hue.rb +0 -10
  189. data/vendor/assets/build/medias/rubies/examples/Old_examples/input_text.rb +0 -54
  190. data/vendor/assets/build/medias/rubies/examples/Old_examples/insert_attach.rb +0 -13
  191. data/vendor/assets/build/medias/rubies/examples/Old_examples/internationalisation.rb +0 -10
  192. data/vendor/assets/build/medias/rubies/examples/Old_examples/key.rb +0 -19
  193. data/vendor/assets/build/medias/rubies/examples/Old_examples/keyboard_shortcut.rb +0 -69
  194. data/vendor/assets/build/medias/rubies/examples/Old_examples/list_methods.rb +0 -4
  195. data/vendor/assets/build/medias/rubies/examples/Old_examples/list_types.rb +0 -4
  196. data/vendor/assets/build/medias/rubies/examples/Old_examples/listen.rb +0 -47
  197. data/vendor/assets/build/medias/rubies/examples/Old_examples/mail.rb +0 -9
  198. data/vendor/assets/build/medias/rubies/examples/Old_examples/map.rb +0 -6
  199. data/vendor/assets/build/medias/rubies/examples/Old_examples/mask.rb +0 -15
  200. data/vendor/assets/build/medias/rubies/examples/Old_examples/media_recorder.rb +0 -24
  201. data/vendor/assets/build/medias/rubies/examples/Old_examples/media_streaming.rb +0 -41
  202. data/vendor/assets/build/medias/rubies/examples/Old_examples/meteo.rb +0 -41
  203. data/vendor/assets/build/medias/rubies/examples/Old_examples/methods_chaining.rb +0 -8
  204. data/vendor/assets/build/medias/rubies/examples/Old_examples/midi.rb +0 -37
  205. data/vendor/assets/build/medias/rubies/examples/Old_examples/monitoring.rb +0 -47
  206. data/vendor/assets/build/medias/rubies/examples/Old_examples/mulitrendering.rb +0 -7
  207. data/vendor/assets/build/medias/rubies/examples/Old_examples/noise_gradient_texture.rb +0 -26
  208. data/vendor/assets/build/medias/rubies/examples/Old_examples/notification.rb +0 -9
  209. data/vendor/assets/build/medias/rubies/examples/Old_examples/object_in_object.rb +0 -13
  210. data/vendor/assets/build/medias/rubies/examples/Old_examples/on_resize.rb +0 -12
  211. data/vendor/assets/build/medias/rubies/examples/Old_examples/over.rb +0 -15
  212. data/vendor/assets/build/medias/rubies/examples/Old_examples/overflow.rb +0 -22
  213. data/vendor/assets/build/medias/rubies/examples/Old_examples/parameter.rb +0 -14
  214. data/vendor/assets/build/medias/rubies/examples/Old_examples/parent.rb +0 -19
  215. data/vendor/assets/build/medias/rubies/examples/Old_examples/particle.rb +0 -15
  216. data/vendor/assets/build/medias/rubies/examples/Old_examples/pay.rb +0 -7
  217. data/vendor/assets/build/medias/rubies/examples/Old_examples/ping.rb +0 -7
  218. data/vendor/assets/build/medias/rubies/examples/Old_examples/play.rb +0 -24
  219. data/vendor/assets/build/medias/rubies/examples/Old_examples/play_audio.rb +0 -6
  220. data/vendor/assets/build/medias/rubies/examples/Old_examples/position.rb +0 -7
  221. data/vendor/assets/build/medias/rubies/examples/Old_examples/read_file.rb +0 -9
  222. data/vendor/assets/build/medias/rubies/examples/Old_examples/reboot.rb +0 -15
  223. data/vendor/assets/build/medias/rubies/examples/Old_examples/refresh.rb +0 -17
  224. data/vendor/assets/build/medias/rubies/examples/Old_examples/remote_server.rb +0 -31
  225. data/vendor/assets/build/medias/rubies/examples/Old_examples/render.rb +0 -17
  226. data/vendor/assets/build/medias/rubies/examples/Old_examples/repeat.rb +0 -19
  227. data/vendor/assets/build/medias/rubies/examples/Old_examples/require_remote.rb +0 -3
  228. data/vendor/assets/build/medias/rubies/examples/Old_examples/restore_atome.rb +0 -11
  229. data/vendor/assets/build/medias/rubies/examples/Old_examples/resurect.rb +0 -30
  230. data/vendor/assets/build/medias/rubies/examples/Old_examples/ruby_version.rb +0 -1
  231. data/vendor/assets/build/medias/rubies/examples/Old_examples/say.rb +0 -3
  232. data/vendor/assets/build/medias/rubies/examples/Old_examples/scale.rb +0 -41
  233. data/vendor/assets/build/medias/rubies/examples/Old_examples/schedule.rb +0 -39
  234. data/vendor/assets/build/medias/rubies/examples/Old_examples/scroll.rb +0 -9
  235. data/vendor/assets/build/medias/rubies/examples/Old_examples/select.rb +0 -32
  236. data/vendor/assets/build/medias/rubies/examples/Old_examples/selector.rb +0 -6
  237. data/vendor/assets/build/medias/rubies/examples/Old_examples/shadow.rb +0 -30
  238. data/vendor/assets/build/medias/rubies/examples/Old_examples/shape_with_path.rb +0 -7
  239. data/vendor/assets/build/medias/rubies/examples/Old_examples/size.rb +0 -109
  240. data/vendor/assets/build/medias/rubies/examples/Old_examples/smooth.rb +0 -5
  241. data/vendor/assets/build/medias/rubies/examples/Old_examples/speech_renderer.rb +0 -5
  242. data/vendor/assets/build/medias/rubies/examples/Old_examples/synth.rb +0 -6
  243. data/vendor/assets/build/medias/rubies/examples/Old_examples/system.rb +0 -3
  244. data/vendor/assets/build/medias/rubies/examples/Old_examples/tags.rb +0 -18
  245. data/vendor/assets/build/medias/rubies/examples/Old_examples/text.rb +0 -33
  246. data/vendor/assets/build/medias/rubies/examples/Old_examples/text_selection.rb +0 -33
  247. data/vendor/assets/build/medias/rubies/examples/Old_examples/text_to_midi.rb +0 -22
  248. data/vendor/assets/build/medias/rubies/examples/Old_examples/touch.rb +0 -23
  249. data/vendor/assets/build/medias/rubies/examples/Old_examples/touch_stop_propagation.rb +0 -27
  250. data/vendor/assets/build/medias/rubies/examples/Old_examples/treat_object_in_object.rb +0 -26
  251. data/vendor/assets/build/medias/rubies/examples/Old_examples/type_mutations.rb +0 -27
  252. data/vendor/assets/build/medias/rubies/examples/Old_examples/video_callback.rb +0 -46
  253. data/vendor/assets/build/medias/rubies/examples/Old_examples/view_mode.rb +0 -29
  254. data/vendor/assets/build/medias/rubies/examples/Old_examples/virtual_events.rb +0 -17
  255. data/vendor/assets/build/medias/rubies/examples/Old_examples/visual.rb +0 -23
  256. data/vendor/assets/build/medias/rubies/examples/Old_examples/vr_display.rb +0 -5
  257. data/vendor/assets/build/medias/rubies/examples/Old_examples/wait.rb +0 -21
  258. data/vendor/assets/build/medias/rubies/examples/Old_examples/web.rb +0 -10
  259. data/vendor/assets/build/medias/rubies/examples/Old_examples/web_address_bar.rb +0 -14
  260. data/vendor/assets/build/medias/rubies/examples/Old_examples/websocket.rb +0 -16
  261. data/vendor/assets/build/medias/rubies/examples/Old_examples/webstate.rb +0 -10
  262. data/vendor/assets/build/medias/videos/lion_king.mp4 +0 -0
@@ -1,10 +1,13 @@
1
+ # frozen_string_literal: true
2
+
1
3
  Atome.new(
2
- image: { render: [:html], id: :image1, type: :image, parent: [:view], path: "https://interactive-examples.mdn.mozilla.net/media/cc0-images/grapefruit-slice-332-332.jpg", left: 99, top: 320, width: 199, height: 199,
4
+ image: { renderers: [:browser], id: :image1, type: :image, parents: [:view], path: "https://interactive-examples.mdn.mozilla.net/media/cc0-images/grapefruit-slice-332-332.jpg", left: 99, top: 320, width: 199, height: 199,
3
5
  }
4
6
  )
5
7
 
6
-
7
8
  Atome.new(
8
- web: { render: [:html], id: :youtube1, type: :web, parent: [:view], path: "https://www.youtube.com/embed/usQDazZKWAk", left: 33, top: 33, width: 199, height: 199,
9
+ web: { renderers: [:browser], id: :youtube1, type: :web, parents: [:view], path: "https://www.youtube.com/embed/usQDazZKWAk", left: 33, top: 33, width: 199, height: 199,
9
10
  }
10
- )
11
+ )
12
+
13
+ web({path: 'https://www.youtube.com/embed/usQDazZKWAk'})
@@ -1,2 +1,6 @@
1
- b = box({ left: 333 })
2
- b.width(33)
1
+ # frozen_string_literal: true
2
+
3
+ b = box({left: 333 })
4
+ wait 1 do
5
+ b.width(33)
6
+ end
@@ -1,10 +1,9 @@
1
1
  # frozen_string_literal: true
2
+
2
3
  # atome server
3
- if RUBY_PLATFORM == 'x64-mingw32'
4
- require 'em/pure_ruby'
5
- end
4
+ require 'em/pure_ruby' if RUBY_PLATFORM == 'x64-mingw32'
6
5
  require 'atome'
7
- require '../aui.rb'
6
+ require '../aui'
8
7
  require 'digest/sha2'
9
8
  require 'faye/websocket'
10
9
  require 'geocoder'
@@ -17,7 +16,6 @@ require 'securerandom'
17
16
  require 'sequel'
18
17
 
19
18
 
20
-
21
19
  class String
22
20
  def is_json?
23
21
  begin
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.4.7.0
4
+ version: 0.5.1.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: 2022-10-29 00:00:00.000000000 Z
11
+ date: 2022-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: arduino_firmata
@@ -24,20 +24,6 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0.3'
27
- - !ruby/object:Gem::Dependency
28
- name: color
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - "~>"
32
- - !ruby/object:Gem::Version
33
- version: '1.8'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - "~>"
39
- - !ruby/object:Gem::Version
40
- version: '1.8'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: faye-websocket
43
29
  requirement: !ruby/object:Gem::Requirement
@@ -391,43 +377,86 @@ files:
391
377
  - documentation/tutorials/working_with_atome.md
392
378
  - exe/atome
393
379
  - lib/atome.rb
394
- - lib/atome/atome_native_extensions.rb
395
- - lib/atome/extensions/helper.rb
396
- - lib/atome/kernel/atome.rb
397
- - lib/atome/kernel/generators/generator.rb
398
- - lib/atome/kernel/generators/genesis.rb
399
- - lib/atome/kernel/generators/sanitizer.rb
400
- - lib/atome/kernel/generators/shapes.rb
401
- - lib/atome/kernel/helpers/geolocation.rb
402
- - lib/atome/kernel/helpers/internal_methods.rb
403
- - lib/atome/kernel/helpers/ping.rb
404
- - lib/atome/kernel/helpers/sha.rb
405
- - lib/atome/kernel/helpers/utilities.rb
406
- - lib/atome/kernel/properties/essential.rb
407
- - lib/atome/kernel/sparkle.rb
380
+ - lib/atome/atome.rb
381
+ - lib/atome/extensions/atome.rb
382
+ - lib/atome/extensions/geolocation.rb
383
+ - lib/atome/extensions/ping.rb
384
+ - lib/atome/extensions/sha.rb
385
+ - lib/atome/genesis/generators/atome.rb
386
+ - lib/atome/genesis/generators/communication.rb
387
+ - lib/atome/genesis/generators/effect.rb
388
+ - lib/atome/genesis/generators/event.rb
389
+ - lib/atome/genesis/generators/geometry.rb
390
+ - lib/atome/genesis/generators/identity.rb
391
+ - lib/atome/genesis/generators/material.rb
392
+ - lib/atome/genesis/generators/spatial.rb
393
+ - lib/atome/genesis/generators/utility.rb
394
+ - lib/atome/genesis/genesis.rb
395
+ - lib/atome/genesis/sparkle.rb
396
+ - lib/atome/helpers/callbacks.rb
397
+ - lib/atome/helpers/color_helper/color.rb
398
+ - lib/atome/helpers/color_helper/color/cmyk.rb
399
+ - lib/atome/helpers/color_helper/color/css.rb
400
+ - lib/atome/helpers/color_helper/color/grayscale.rb
401
+ - lib/atome/helpers/color_helper/color/hsl.rb
402
+ - lib/atome/helpers/color_helper/color/palette.rb
403
+ - lib/atome/helpers/color_helper/color/palette/adobecolor.rb
404
+ - lib/atome/helpers/color_helper/color/palette/gimp.rb
405
+ - lib/atome/helpers/color_helper/color/palette/monocontrast.rb
406
+ - lib/atome/helpers/color_helper/color/rgb.rb
407
+ - lib/atome/helpers/color_helper/color/rgb/colors.rb
408
+ - lib/atome/helpers/color_helper/color/rgb/contrast.rb
409
+ - lib/atome/helpers/color_helper/color/rgb/metallic.rb
410
+ - lib/atome/helpers/color_helper/color/yiq.rb
411
+ - lib/atome/helpers/essentials.rb
412
+ - lib/atome/helpers/sanitizer.rb
413
+ - lib/atome/helpers/utilities.rb
414
+ - lib/atome/kernel/essentials.rb
408
415
  - lib/atome/kernel/universe.rb
416
+ - lib/atome/presets/atome.rb
417
+ - lib/atome/processors/utilities.rb
418
+ - lib/atome/renderers/browser/atome.rb
419
+ - lib/atome/renderers/browser/browser.rb
420
+ - lib/atome/renderers/browser/effect.rb
421
+ - lib/atome/renderers/browser/event.rb
422
+ - lib/atome/renderers/browser/geometry.rb
423
+ - lib/atome/renderers/browser/identity.rb
424
+ - lib/atome/renderers/browser/material.rb
425
+ - lib/atome/renderers/browser/opal_browser.rb
426
+ - lib/atome/renderers/browser/spatial.rb
427
+ - lib/atome/renderers/browser/utility.rb
409
428
  - lib/atome/renderers/headless/headless.rb
410
- - lib/atome/renderers/headless/properties/generator.rb
429
+ - lib/atome/renderers/headless/utility.rb
430
+ - lib/atome/renderers/html/atome.rb
431
+ - lib/atome/renderers/html/effect.rb
432
+ - lib/atome/renderers/html/event.rb
433
+ - lib/atome/renderers/html/geometry.rb
434
+ - lib/atome/renderers/html/html.rb
435
+ - lib/atome/renderers/html/identity.rb
436
+ - lib/atome/renderers/html/opal_browser.rb
437
+ - lib/atome/renderers/html/spatial.rb
438
+ - lib/atome/renderers/html/utility.rb
411
439
  - lib/atome/renderers/opal/atome_opal_extensions.rb
440
+ - lib/atome/renderers/opal/extensions/atome.rb
412
441
  - lib/atome/renderers/opal/extensions/color.rb
413
442
  - lib/atome/renderers/opal/extensions/geolocation.rb
414
443
  - lib/atome/renderers/opal/extensions/ping.rb
415
444
  - lib/atome/renderers/opal/extensions/sha.rb
416
- - lib/atome/renderers/opal/opal_browser.rb
445
+ - lib/atome/renderers/opal/opal.rb
417
446
  - lib/atome/renderers/opal/opal_parser.rb
418
- - lib/atome/renderers/opal/properties/generator.rb
419
447
  - lib/atome/renderers/renderer.rb
420
- - lib/atome/renderers/server/properties/generator.rb
421
448
  - lib/atome/renderers/server/server.rb
449
+ - lib/atome/renderers/server/utility.rb
422
450
  - lib/atome/version.rb
423
451
  - sig/atome.rbs
424
452
  - vendor/assets/Guardfile
425
453
  - vendor/assets/Rakefile
426
454
  - vendor/assets/application/index.rb
455
+ - vendor/assets/application/required_example.rb
456
+ - vendor/assets/aui.rb
427
457
  - vendor/assets/build/css/style.css
428
458
  - vendor/assets/build/favicon.ico
429
459
  - vendor/assets/build/index.html
430
- - vendor/assets/build/js/application.js
431
460
  - vendor/assets/build/js/atome/atome.js
432
461
  - vendor/assets/build/js/third_parties/fabric.min.js
433
462
  - vendor/assets/build/js/third_parties/interact.min.js
@@ -441,7 +470,6 @@ files:
441
470
  - vendor/assets/build/medias/audios/audio_missing.wav
442
471
  - vendor/assets/build/medias/audios/clap.wav
443
472
  - vendor/assets/build/medias/audios/cowbell.wav
444
- - vendor/assets/build/medias/audios/guitar.wav
445
473
  - vendor/assets/build/medias/audios/hihat.wav
446
474
  - vendor/assets/build/medias/audios/kick.wav
447
475
  - vendor/assets/build/medias/audios/riff.m4a
@@ -510,7 +538,6 @@ files:
510
538
  - vendor/assets/build/medias/images/atome.svg
511
539
  - vendor/assets/build/medias/images/avion.jpg
512
540
  - vendor/assets/build/medias/images/ballanim.png
513
- - vendor/assets/build/medias/images/beach.jpg
514
541
  - vendor/assets/build/medias/images/blank.png
515
542
  - vendor/assets/build/medias/images/boat.png
516
543
  - vendor/assets/build/medias/images/cache.svg
@@ -551,133 +578,13 @@ files:
551
578
  - vendor/assets/build/medias/images/tile_white.png
552
579
  - vendor/assets/build/medias/javascripts/test.js
553
580
  - vendor/assets/build/medias/rubies/examples/!run.rb
554
- - vendor/assets/build/medias/rubies/examples/Old_examples/!demos.rb
555
- - vendor/assets/build/medias/rubies/examples/Old_examples/action.rb
556
- - vendor/assets/build/medias/rubies/examples/Old_examples/add.rb
557
- - vendor/assets/build/medias/rubies/examples/Old_examples/alignment.rb
558
- - vendor/assets/build/medias/rubies/examples/Old_examples/animation.rb
559
- - vendor/assets/build/medias/rubies/examples/Old_examples/atome_as_property.rb
560
- - vendor/assets/build/medias/rubies/examples/Old_examples/atome_list.rb
561
- - vendor/assets/build/medias/rubies/examples/Old_examples/atomiser.rb
562
- - vendor/assets/build/medias/rubies/examples/Old_examples/attach_extract.rb
563
- - vendor/assets/build/medias/rubies/examples/Old_examples/authorisation.rb
564
- - vendor/assets/build/medias/rubies/examples/Old_examples/batch.rb
565
- - vendor/assets/build/medias/rubies/examples/Old_examples/blend.rb
566
- - vendor/assets/build/medias/rubies/examples/Old_examples/blur.rb
567
- - vendor/assets/build/medias/rubies/examples/Old_examples/border.rb
568
- - vendor/assets/build/medias/rubies/examples/Old_examples/calendar.rb
569
- - vendor/assets/build/medias/rubies/examples/Old_examples/capture.rb
570
- - vendor/assets/build/medias/rubies/examples/Old_examples/center.rb
571
- - vendor/assets/build/medias/rubies/examples/Old_examples/child.rb
572
- - vendor/assets/build/medias/rubies/examples/Old_examples/clear.rb
573
- - vendor/assets/build/medias/rubies/examples/Old_examples/clip.rb
574
- - vendor/assets/build/medias/rubies/examples/Old_examples/code.rb
575
- - vendor/assets/build/medias/rubies/examples/Old_examples/code_editor.rb
576
- - vendor/assets/build/medias/rubies/examples/Old_examples/collaborate.rb
577
- - vendor/assets/build/medias/rubies/examples/Old_examples/convert_to_px.rb
578
- - vendor/assets/build/medias/rubies/examples/Old_examples/copy_paste.rb
579
- - vendor/assets/build/medias/rubies/examples/Old_examples/current_code.rb
580
- - vendor/assets/build/medias/rubies/examples/Old_examples/cursor.rb
581
- - vendor/assets/build/medias/rubies/examples/Old_examples/data.rb
582
- - vendor/assets/build/medias/rubies/examples/Old_examples/database.rb
583
- - vendor/assets/build/medias/rubies/examples/Old_examples/delete.rb
584
- - vendor/assets/build/medias/rubies/examples/Old_examples/display.rb
585
- - vendor/assets/build/medias/rubies/examples/Old_examples/disposition.rb
586
- - vendor/assets/build/medias/rubies/examples/Old_examples/double_and_long_touch.rb
587
- - vendor/assets/build/medias/rubies/examples/Old_examples/drag.rb
588
- - vendor/assets/build/medias/rubies/examples/Old_examples/drag_and_drop_import.rb
589
- - vendor/assets/build/medias/rubies/examples/Old_examples/drop.rb
590
- - vendor/assets/build/medias/rubies/examples/Old_examples/duplicate.rb
591
- - vendor/assets/build/medias/rubies/examples/Old_examples/edit.rb
592
- - vendor/assets/build/medias/rubies/examples/Old_examples/eval.rb
593
- - vendor/assets/build/medias/rubies/examples/Old_examples/extract_detach.rb
594
- - vendor/assets/build/medias/rubies/examples/Old_examples/fill.rb
595
- - vendor/assets/build/medias/rubies/examples/Old_examples/find.rb
596
- - vendor/assets/build/medias/rubies/examples/Old_examples/fit.rb
597
- - vendor/assets/build/medias/rubies/examples/Old_examples/fullscreen.rb
598
- - vendor/assets/build/medias/rubies/examples/Old_examples/generate.rb
599
- - vendor/assets/build/medias/rubies/examples/Old_examples/gradient.rb
600
- - vendor/assets/build/medias/rubies/examples/Old_examples/group.rb
601
- - vendor/assets/build/medias/rubies/examples/Old_examples/helper.rb
602
- - vendor/assets/build/medias/rubies/examples/Old_examples/history.rb
603
- - vendor/assets/build/medias/rubies/examples/Old_examples/hue.rb
604
- - vendor/assets/build/medias/rubies/examples/Old_examples/input_text.rb
605
- - vendor/assets/build/medias/rubies/examples/Old_examples/insert_attach.rb
606
- - vendor/assets/build/medias/rubies/examples/Old_examples/internationalisation.rb
607
- - vendor/assets/build/medias/rubies/examples/Old_examples/key.rb
608
- - vendor/assets/build/medias/rubies/examples/Old_examples/keyboard_shortcut.rb
609
- - vendor/assets/build/medias/rubies/examples/Old_examples/list_methods.rb
610
- - vendor/assets/build/medias/rubies/examples/Old_examples/list_types.rb
611
- - vendor/assets/build/medias/rubies/examples/Old_examples/listen.rb
612
- - vendor/assets/build/medias/rubies/examples/Old_examples/mail.rb
613
- - vendor/assets/build/medias/rubies/examples/Old_examples/map.rb
614
- - vendor/assets/build/medias/rubies/examples/Old_examples/mask.rb
615
- - vendor/assets/build/medias/rubies/examples/Old_examples/media_recorder.rb
616
- - vendor/assets/build/medias/rubies/examples/Old_examples/media_streaming.rb
617
- - vendor/assets/build/medias/rubies/examples/Old_examples/meteo.rb
618
- - vendor/assets/build/medias/rubies/examples/Old_examples/methods_chaining.rb
619
- - vendor/assets/build/medias/rubies/examples/Old_examples/midi.rb
620
- - vendor/assets/build/medias/rubies/examples/Old_examples/monitoring.rb
621
- - vendor/assets/build/medias/rubies/examples/Old_examples/mulitrendering.rb
622
- - vendor/assets/build/medias/rubies/examples/Old_examples/noise_gradient_texture.rb
623
- - vendor/assets/build/medias/rubies/examples/Old_examples/notification.rb
624
- - vendor/assets/build/medias/rubies/examples/Old_examples/object_in_object.rb
625
- - vendor/assets/build/medias/rubies/examples/Old_examples/on_resize.rb
626
- - vendor/assets/build/medias/rubies/examples/Old_examples/over.rb
627
- - vendor/assets/build/medias/rubies/examples/Old_examples/overflow.rb
628
- - vendor/assets/build/medias/rubies/examples/Old_examples/parameter.rb
629
- - vendor/assets/build/medias/rubies/examples/Old_examples/parent.rb
630
- - vendor/assets/build/medias/rubies/examples/Old_examples/particle.rb
631
- - vendor/assets/build/medias/rubies/examples/Old_examples/pay.rb
632
- - vendor/assets/build/medias/rubies/examples/Old_examples/ping.rb
633
- - vendor/assets/build/medias/rubies/examples/Old_examples/play.rb
634
- - vendor/assets/build/medias/rubies/examples/Old_examples/play_audio.rb
635
- - vendor/assets/build/medias/rubies/examples/Old_examples/position.rb
636
- - vendor/assets/build/medias/rubies/examples/Old_examples/read_file.rb
637
- - vendor/assets/build/medias/rubies/examples/Old_examples/reboot.rb
638
- - vendor/assets/build/medias/rubies/examples/Old_examples/refresh.rb
639
- - vendor/assets/build/medias/rubies/examples/Old_examples/remote_server.rb
640
- - vendor/assets/build/medias/rubies/examples/Old_examples/render.rb
641
- - vendor/assets/build/medias/rubies/examples/Old_examples/repeat.rb
642
- - vendor/assets/build/medias/rubies/examples/Old_examples/require_remote.rb
643
- - vendor/assets/build/medias/rubies/examples/Old_examples/restore_atome.rb
644
- - vendor/assets/build/medias/rubies/examples/Old_examples/resurect.rb
645
- - vendor/assets/build/medias/rubies/examples/Old_examples/ruby_version.rb
646
- - vendor/assets/build/medias/rubies/examples/Old_examples/say.rb
647
- - vendor/assets/build/medias/rubies/examples/Old_examples/scale.rb
648
- - vendor/assets/build/medias/rubies/examples/Old_examples/schedule.rb
649
- - vendor/assets/build/medias/rubies/examples/Old_examples/scroll.rb
650
- - vendor/assets/build/medias/rubies/examples/Old_examples/select.rb
651
- - vendor/assets/build/medias/rubies/examples/Old_examples/selector.rb
652
- - vendor/assets/build/medias/rubies/examples/Old_examples/shadow.rb
653
- - vendor/assets/build/medias/rubies/examples/Old_examples/shape_with_path.rb
654
- - vendor/assets/build/medias/rubies/examples/Old_examples/size.rb
655
- - vendor/assets/build/medias/rubies/examples/Old_examples/smooth.rb
656
- - vendor/assets/build/medias/rubies/examples/Old_examples/speech_renderer.rb
657
- - vendor/assets/build/medias/rubies/examples/Old_examples/synth.rb
658
- - vendor/assets/build/medias/rubies/examples/Old_examples/system.rb
659
- - vendor/assets/build/medias/rubies/examples/Old_examples/tags.rb
660
- - vendor/assets/build/medias/rubies/examples/Old_examples/text.rb
661
- - vendor/assets/build/medias/rubies/examples/Old_examples/text_selection.rb
662
- - vendor/assets/build/medias/rubies/examples/Old_examples/text_to_midi.rb
663
- - vendor/assets/build/medias/rubies/examples/Old_examples/touch.rb
664
- - vendor/assets/build/medias/rubies/examples/Old_examples/touch_stop_propagation.rb
665
- - vendor/assets/build/medias/rubies/examples/Old_examples/treat_object_in_object.rb
666
- - vendor/assets/build/medias/rubies/examples/Old_examples/type_mutations.rb
667
- - vendor/assets/build/medias/rubies/examples/Old_examples/video_callback.rb
668
- - vendor/assets/build/medias/rubies/examples/Old_examples/view_mode.rb
669
- - vendor/assets/build/medias/rubies/examples/Old_examples/virtual_events.rb
670
- - vendor/assets/build/medias/rubies/examples/Old_examples/visual.rb
671
- - vendor/assets/build/medias/rubies/examples/Old_examples/vr_display.rb
672
- - vendor/assets/build/medias/rubies/examples/Old_examples/wait.rb
673
- - vendor/assets/build/medias/rubies/examples/Old_examples/web.rb
674
- - vendor/assets/build/medias/rubies/examples/Old_examples/web_address_bar.rb
675
- - vendor/assets/build/medias/rubies/examples/Old_examples/websocket.rb
676
- - vendor/assets/build/medias/rubies/examples/Old_examples/webstate.rb
677
- - vendor/assets/build/medias/rubies/examples/animation.rb
581
+ - vendor/assets/build/medias/rubies/examples/_2_solve.rb
582
+ - vendor/assets/build/medias/rubies/examples/_animation.rb
583
+ - vendor/assets/build/medias/rubies/examples/_drag.rb
678
584
  - vendor/assets/build/medias/rubies/examples/atome.new.rb
679
585
  - vendor/assets/build/medias/rubies/examples/auto_height.rb
680
586
  - vendor/assets/build/medias/rubies/examples/auto_width.rb
587
+ - vendor/assets/build/medias/rubies/examples/blur.rb
681
588
  - vendor/assets/build/medias/rubies/examples/bottom.rb
682
589
  - vendor/assets/build/medias/rubies/examples/box.rb
683
590
  - vendor/assets/build/medias/rubies/examples/circle.rb
@@ -685,20 +592,26 @@ files:
685
592
  - vendor/assets/build/medias/rubies/examples/code.rb
686
593
  - vendor/assets/build/medias/rubies/examples/color.rb
687
594
  - vendor/assets/build/medias/rubies/examples/create_atome_in_atome.rb
688
- - vendor/assets/build/medias/rubies/examples/drag.rb
595
+ - vendor/assets/build/medias/rubies/examples/delete.rb
596
+ - vendor/assets/build/medias/rubies/examples/element.rb
597
+ - vendor/assets/build/medias/rubies/examples/fullscreen.rb
689
598
  - vendor/assets/build/medias/rubies/examples/get_renderer_list.rb
690
599
  - vendor/assets/build/medias/rubies/examples/grab.rb
691
600
  - vendor/assets/build/medias/rubies/examples/height.rb
601
+ - vendor/assets/build/medias/rubies/examples/id.rb
692
602
  - vendor/assets/build/medias/rubies/examples/image.rb
693
603
  - vendor/assets/build/medias/rubies/examples/left.rb
694
604
  - vendor/assets/build/medias/rubies/examples/link.rb
605
+ - vendor/assets/build/medias/rubies/examples/monitoring.rb
695
606
  - vendor/assets/build/medias/rubies/examples/on.rb
696
607
  - vendor/assets/build/medias/rubies/examples/parent.rb
697
608
  - vendor/assets/build/medias/rubies/examples/read.rb
609
+ - vendor/assets/build/medias/rubies/examples/refresh.rb
698
610
  - vendor/assets/build/medias/rubies/examples/repeat.rb
699
611
  - vendor/assets/build/medias/rubies/examples/right.rb
700
612
  - vendor/assets/build/medias/rubies/examples/rotate.rb
701
613
  - vendor/assets/build/medias/rubies/examples/schedule.rb
614
+ - vendor/assets/build/medias/rubies/examples/shadow.rb
702
615
  - vendor/assets/build/medias/rubies/examples/smooth.rb
703
616
  - vendor/assets/build/medias/rubies/examples/text.rb
704
617
  - vendor/assets/build/medias/rubies/examples/top.rb
@@ -713,7 +626,6 @@ files:
713
626
  - vendor/assets/build/medias/utils/infos/color.rb
714
627
  - vendor/assets/build/medias/utils/infos/width.rb
715
628
  - vendor/assets/build/medias/videos/avengers.mp4
716
- - vendor/assets/build/medias/videos/lion_king.mp4
717
629
  - vendor/assets/build/medias/videos/madmax.mp4
718
630
  - vendor/assets/build/medias/videos/starwars.mov
719
631
  - vendor/assets/build/medias/videos/superman.mp4
@@ -747,7 +659,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
747
659
  - !ruby/object:Gem::Version
748
660
  version: '0'
749
661
  requirements: []
750
- rubygems_version: 3.3.22
662
+ rubygems_version: 3.3.24
751
663
  signing_key:
752
664
  specification_version: 4
753
665
  summary: the creative framework
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'atome/kernel/helpers/sha'
4
- require 'atome/kernel/helpers/ping'
5
- require 'atome/kernel/helpers/geolocation'
@@ -1,112 +0,0 @@
1
-
2
-
3
- def grab(val)
4
- Atome.grab(val)
5
- end
6
-
7
-
8
- def read(file, action=:text)
9
- Internal.send("read_#{action}", file)
10
- end
11
-
12
- def wait(seconds)
13
- seconds = seconds.to_f
14
- `setTimeout(function(){ #{yield} }, #{seconds * 1000})`
15
- end
16
-
17
-
18
- def repeater(counter,proc)
19
- instance_exec(counter,&proc) if proc.is_a?(Proc)
20
- end
21
-
22
- def repeat(delay = 1, repeat = 0, &proc)
23
- # below we exec the call a first time
24
- instance_exec(0,&proc) if proc.is_a?(Proc)
25
- # as we exec one time above we subtract one below
26
- %x{
27
- var x = 1
28
- var intervalID = window.setInterval(function(){ Opal.Object.$repeater(x,#{proc})
29
- if (++x ===#{repeat} ) {
30
- window.clearInterval(intervalID);
31
- }}, #{delay * 1000})
32
- }
33
-
34
- end
35
-
36
-
37
- def schedule(date, &proc)
38
- date = date.to_s
39
- delimiters = [",", " ", ":", "-"]
40
- formated_date = date.split(Regexp.union(delimiters))
41
- missing_datas = Time.now
42
- missing_datas = missing_datas.to_s
43
- delimiters = [",", " ", ":", "-"]
44
- missing_datas_formated_date = missing_datas.split(Regexp.union(delimiters))
45
-
46
- case formated_date.length
47
- when 1
48
- seconds = formated_date[0]
49
- minutes = missing_datas_formated_date[4]
50
- hours = missing_datas_formated_date[3]
51
- days = missing_datas_formated_date[2]
52
- months = missing_datas_formated_date[1]
53
- years = missing_datas_formated_date[0]
54
-
55
- when 2
56
- seconds = formated_date[0]
57
- minutes = formated_date[1]
58
- hours = missing_datas_formated_date[3]
59
- days = missing_datas_formated_date[2]
60
- months = missing_datas_formated_date[1]
61
- years = missing_datas_formated_date[0]
62
- when 3
63
- seconds = formated_date[0]
64
- minutes = formated_date[1]
65
- hours = formated_date[2]
66
- days = missing_datas_formated_date[2]
67
- months = missing_datas_formated_date[1]
68
- years = missing_datas_formated_date[0]
69
- when 4
70
- seconds = formated_date[0]
71
- minutes = formated_date[1]
72
- hours = formated_date[2]
73
- days = formated_date[3]
74
- when 5
75
- seconds = formated_date[0]
76
- minutes = formated_date[1]
77
- hours = formated_date[2]
78
- days = formated_date[3]
79
- months = formated_date[4]
80
- years = missing_datas_formated_date[0]
81
- else
82
- years = formated_date[0]
83
- months = formated_date[1]
84
- days = formated_date[2]
85
- hours = formated_date[3]
86
- minutes = formated_date[4]
87
- seconds = formated_date[5]
88
- end
89
- `atome.jsSchedule(#{years},#{months},#{days},#{hours},#{minutes},#{seconds},#{proc})`
90
- end
91
-
92
-
93
- def schedule_callback(proc)
94
- instance_exec(&proc) if proc.is_a?(Proc)
95
- end
96
-
97
- def play_video(params, &proc)
98
- params[:atome].html_object.play
99
- # TODO : change timeupdate for when possible requestVideoFrameCallback (opal-browser/opal/browser/event.rb line 36)
100
- video_callback = params[:atome].bloc # this is the video callback not the play callback
101
- play_callback = params[:proc] # this is the video callback not the play callback
102
- params[:atome].html_object.on(:timeupdate) do |e|
103
- # e.prevent # Prevent the default action (eg. form submission)
104
- # You can also use `e.stop` to stop propagating the event to other handlers.
105
- instance_exec(params[:atome].html_object.currentTime, &video_callback) if video_callback.is_a?(Proc)
106
- instance_exec(params[:atome].html_object.currentTime, &play_callback) if play_callback.is_a?(Proc)
107
- end
108
- end
109
-
110
- def pause_video(params, &proc)
111
- params[:atome].html_object.pause
112
- end
@@ -1,99 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # TODO: Id generator
4
- # Add missing params (methods for noobs only?)
5
- # Sanitizer (methods for noobs only?)
6
- # Sort params (methods for noobs only?)
7
- # Pre-processor
8
- # Renderer
9
- # Store
10
- # Post-processor
11
- # Add or set
12
- # Getter
13
- # parental
14
- # modify html file to be able to add meta data
15
-
16
- # This is the main entry for Atome class
17
- class Atome
18
- include Genesis
19
- include Sanitizer
20
- include ServerRenderer
21
- include Render
22
- include Internal
23
- # include OpalRenderer
24
- # include HeadlessRenderer
25
- def self.atome(params)
26
- Atome.new(params)
27
- end
28
-
29
- def self.current_machine_decision(platform, output)
30
- case platform
31
- when /darwin/
32
- ::Regexp.last_match(1) if output =~ /en1.*?(([A-F0-9]{2}:){5}[A-F0-9]{2})/im
33
- when /win32/
34
- ::Regexp.last_match(1) if output =~ /Physical Address.*?(([A-F0-9]{2}-){5}[A-F0-9]{2})/im
35
- else
36
- # Cases for other platforms...
37
- 'unknown platform'
38
- end
39
- platform
40
- end
41
-
42
- def self.current_machine
43
- platform = RUBY_PLATFORM.downcase
44
- output = `#{platform =~ /win32/ ? 'ipconfig /all' : 'ifconfig'}`
45
- current_machine_decision(platform, output)
46
- # TODO: check the code above and create a sensible identity
47
- end
48
-
49
- def self.current_user
50
- @user
51
- end
52
-
53
- def self.current_user=(user)
54
- # TODO: create or load an existing user
55
- # if user needs to be create the current_user will be eVe
56
- @user = user
57
- end
58
-
59
- def identity_generator
60
- { date: Time.now, location: geolocation }
61
- end
62
-
63
- def additional_helper(params)
64
- virtual_atome = Atome.new({})
65
- @additional = virtual_atome
66
- params.each_with_index do |additional, index|
67
- new_atome = Atome.new({})
68
- virtual_atome.instance_variable_set("@virtual#{index}", new_atome)
69
- additional.each do |param, value|
70
- new_atome.send(param, value)
71
- end
72
- end
73
- end
74
-
75
- def additional(params = nil)
76
- if params
77
- additional_helper(params)
78
- else
79
- @additional
80
- end
81
- end
82
-
83
- def initialize(params = {}, &bloc)
84
- @render = []
85
- @child = []
86
- @html_type = :unset
87
- # # TODO: check if we need to add properties for the root object before sending the params
88
- params.each do |atome, values|
89
- send(atome, values, &bloc)
90
- end
91
- end
92
-
93
-
94
-
95
- end
96
-
97
- # initialize Universe
98
- Universe.connected
99
- # Atome.new( identity: {type: :eVe, aui: :a_97987987987})