atome 0.5.3.4 → 0.5.3.7.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (150) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +8 -3
  3. data/app_builder_helpers/Rakefile +8 -2
  4. data/exe/atome +6 -19
  5. data/lib/atome/atome.rb +29 -19
  6. data/lib/atome/extensions/atome.rb +23 -1
  7. data/lib/atome/extensions/matrix.rb +10 -5
  8. data/lib/atome/genesis/generators/atome.rb +149 -22
  9. data/lib/atome/genesis/generators/effect.rb +8 -3
  10. data/lib/atome/genesis/generators/event.rb +77 -34
  11. data/lib/atome/genesis/generators/geometry.rb +21 -5
  12. data/lib/atome/genesis/generators/identity.rb +110 -57
  13. data/lib/atome/genesis/generators/material.rb +74 -16
  14. data/lib/atome/genesis/generators/spatial.rb +8 -9
  15. data/lib/atome/genesis/generators/time.rb +1 -1
  16. data/lib/atome/genesis/generators/utility.rb +66 -39
  17. data/lib/atome/genesis/genesis.rb +7 -5
  18. data/lib/atome/genesis/sparkle.rb +8 -2
  19. data/lib/atome/helpers/essentials.rb +2 -6
  20. data/lib/atome/helpers/utilities.rb +15 -0
  21. data/lib/atome/kernel/universe.rb +2 -2
  22. data/lib/atome/presets/atome.rb +60 -61
  23. data/lib/atome/renderers/browser/event.rb +6 -3
  24. data/lib/atome/renderers/browser/geometry.rb +18 -10
  25. data/lib/atome/renderers/browser/helpers/browser_helper.rb +9 -0
  26. data/lib/atome/renderers/browser/helpers/color_helper.rb +4 -4
  27. data/lib/atome/renderers/browser/helpers/event_helper.rb +24 -12
  28. data/lib/atome/renderers/browser/helpers/shape_helper.rb +4 -4
  29. data/lib/atome/renderers/browser/helpers/text_helper.rb +4 -4
  30. data/lib/atome/renderers/browser/helpers/video_helper.rb +1 -1
  31. data/lib/atome/renderers/browser/helpers/web_helper.rb +4 -4
  32. data/lib/atome/renderers/browser/identity.rb +4 -0
  33. data/lib/atome/renderers/browser/material.rb +20 -1
  34. data/lib/atome/renderers/browser/spatial.rb +4 -0
  35. data/lib/atome/version.rb +1 -1
  36. data/sig/atome.rbs +12 -0
  37. data/sig/genesis.rbs +3 -0
  38. data/vendor/assets/application/index.rb +2 -0
  39. data/vendor/assets/src/index.html +1 -1
  40. data/vendor/assets/src/js/atome/atome.js +2 -1
  41. data/vendor/assets/src/medias/images/icons/email.svg +13 -0
  42. data/vendor/assets/src/medias/images/icons/mail_gray.svg +6 -0
  43. data/vendor/assets/src/medias/images/icons/mail_green.svg +6 -0
  44. data/vendor/assets/src/medias/images/icons/mail_orange.svg +6 -0
  45. data/vendor/assets/src/medias/images/icons/undo.svg +4 -0
  46. data/vendor/assets/src/medias/images/logos/Orange/Facebook.svg +8 -0
  47. data/vendor/assets/src/medias/images/logos/Orange/TikTok.svg +11 -0
  48. data/vendor/assets/src/medias/images/logos/Orange/Twitter.svg +8 -0
  49. data/vendor/assets/src/medias/images/logos/Orange/instagram.svg +8 -0
  50. data/vendor/assets/src/medias/images/logos/Orange/vimeo.svg +8 -0
  51. data/vendor/assets/src/medias/images/logos/Orange/youtube.svg +7 -0
  52. data/vendor/assets/src/medias/images/logos/freebsd.svg +8 -0
  53. data/vendor/assets/src/medias/images/logos/gray/Facebook.svg +8 -0
  54. data/vendor/assets/src/medias/images/logos/gray/TikTok.svg +11 -0
  55. data/vendor/assets/src/medias/images/logos/gray/Twitter.svg +8 -0
  56. data/vendor/assets/src/medias/images/logos/gray/instagram.svg +8 -0
  57. data/vendor/assets/src/medias/images/logos/gray/vimeo.svg +8 -0
  58. data/vendor/assets/src/medias/images/logos/gray/youtube.svg +7 -0
  59. data/vendor/assets/src/medias/images/logos/gray/youtube2.svg +13 -0
  60. data/vendor/assets/src/medias/images/logos/vimeo.svg +17 -0
  61. data/vendor/assets/src/medias/rubies/examples/_table2.rb +106 -36
  62. data/vendor/assets/src/medias/rubies/examples/add.rb +1 -3
  63. data/vendor/assets/src/medias/rubies/examples/attached.rb +16 -0
  64. data/vendor/assets/src/medias/rubies/examples/class.rb +13 -0
  65. data/vendor/assets/src/medias/rubies/examples/depth.rb +6 -0
  66. data/vendor/assets/src/medias/rubies/examples/detached.rb +13 -0
  67. data/vendor/assets/src/medias/rubies/examples/matrix.rb +1 -1
  68. data/vendor/assets/src/medias/rubies/examples/opacity.rb +5 -0
  69. data/vendor/assets/src/medias/rubies/examples/over.rb +19 -0
  70. data/vendor/assets/src/medias/rubies/examples/read.rb +1 -0
  71. data/vendor/assets/src/medias/rubies/examples/text.rb +12 -11
  72. data/vendor/assets/src/medias/rubies/examples/time.rb +5 -1
  73. metadata +31 -81
  74. data/vendor/assets/src/medias/audios/Binrpilot.mp3 +0 -0
  75. data/vendor/assets/src/medias/fonts/Dancing_Script/DancingScript-VariableFont_wght.ttf +0 -0
  76. data/vendor/assets/src/medias/fonts/Dancing_Script/OFL.txt +0 -93
  77. data/vendor/assets/src/medias/fonts/Dancing_Script/README.txt +0 -66
  78. data/vendor/assets/src/medias/fonts/Dancing_Script/static/DancingScript-Bold.ttf +0 -0
  79. data/vendor/assets/src/medias/fonts/Dancing_Script/static/DancingScript-Medium.ttf +0 -0
  80. data/vendor/assets/src/medias/fonts/Dancing_Script/static/DancingScript-Regular.ttf +0 -0
  81. data/vendor/assets/src/medias/fonts/Dancing_Script/static/DancingScript-SemiBold.ttf +0 -0
  82. data/vendor/assets/src/medias/fonts/Mate_SC/MateSC-Regular.ttf +0 -0
  83. data/vendor/assets/src/medias/fonts/Mate_SC/OFL.txt +0 -94
  84. data/vendor/assets/src/medias/fonts/Raleway/OFL.txt +0 -93
  85. data/vendor/assets/src/medias/fonts/Raleway/README.txt +0 -81
  86. data/vendor/assets/src/medias/fonts/Raleway/Raleway-Italic-VariableFont_wght.ttf +0 -0
  87. data/vendor/assets/src/medias/fonts/Raleway/Raleway-VariableFont_wght.ttf +0 -0
  88. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Black.ttf +0 -0
  89. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-BlackItalic.ttf +0 -0
  90. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Bold.ttf +0 -0
  91. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-BoldItalic.ttf +0 -0
  92. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-ExtraBold.ttf +0 -0
  93. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-ExtraBoldItalic.ttf +0 -0
  94. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-ExtraLight.ttf +0 -0
  95. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-ExtraLightItalic.ttf +0 -0
  96. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Italic.ttf +0 -0
  97. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Light.ttf +0 -0
  98. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-LightItalic.ttf +0 -0
  99. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Medium.ttf +0 -0
  100. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-MediumItalic.ttf +0 -0
  101. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Regular.ttf +0 -0
  102. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-SemiBold.ttf +0 -0
  103. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-SemiBoldItalic.ttf +0 -0
  104. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-Thin.ttf +0 -0
  105. data/vendor/assets/src/medias/fonts/Raleway/static/Raleway-ThinItalic.ttf +0 -0
  106. data/vendor/assets/src/medias/fonts/Vollkorn/OFL.txt +0 -93
  107. data/vendor/assets/src/medias/fonts/Vollkorn/README.txt +0 -75
  108. data/vendor/assets/src/medias/fonts/Vollkorn/Vollkorn-Italic-VariableFont_wght.ttf +0 -0
  109. data/vendor/assets/src/medias/fonts/Vollkorn/Vollkorn-VariableFont_wght.ttf +0 -0
  110. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-Black.ttf +0 -0
  111. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-BlackItalic.ttf +0 -0
  112. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-Bold.ttf +0 -0
  113. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-BoldItalic.ttf +0 -0
  114. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-ExtraBold.ttf +0 -0
  115. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-ExtraBoldItalic.ttf +0 -0
  116. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-Italic.ttf +0 -0
  117. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-Medium.ttf +0 -0
  118. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-MediumItalic.ttf +0 -0
  119. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-Regular.ttf +0 -0
  120. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-SemiBold.ttf +0 -0
  121. data/vendor/assets/src/medias/fonts/Vollkorn/static/Vollkorn-SemiBoldItalic.ttf +0 -0
  122. data/vendor/assets/src/medias/images/Icon_Help.png +0 -0
  123. data/vendor/assets/src/medias/images/avion.jpg +0 -0
  124. data/vendor/assets/src/medias/images/boat.png +0 -0
  125. data/vendor/assets/src/medias/images/cache.svg +0 -10
  126. data/vendor/assets/src/medias/images/dices.png +0 -0
  127. data/vendor/assets/src/medias/images/eVe_back.png +0 -0
  128. data/vendor/assets/src/medias/images/elephant.png +0 -0
  129. data/vendor/assets/src/medias/images/eyes.jpg +0 -0
  130. data/vendor/assets/src/medias/images/freebsd.png +0 -0
  131. data/vendor/assets/src/medias/images/grain_texture.png +0 -0
  132. data/vendor/assets/src/medias/images/green_planet.png +0 -0
  133. data/vendor/assets/src/medias/images/image_missing.svg +0 -9
  134. data/vendor/assets/src/medias/images/jeezs.png +0 -0
  135. data/vendor/assets/src/medias/images/keyboard.png +0 -0
  136. data/vendor/assets/src/medias/images/killer.jpg +0 -0
  137. data/vendor/assets/src/medias/images/living_room.png +0 -0
  138. data/vendor/assets/src/medias/images/logo.svg +0 -14
  139. data/vendor/assets/src/medias/images/logos/GitHub-Mark.eps +0 -7696
  140. data/vendor/assets/src/medias/images/moto.png +0 -0
  141. data/vendor/assets/src/medias/images/piano.png +0 -0
  142. data/vendor/assets/src/medias/images/poisson.jpg +0 -0
  143. data/vendor/assets/src/medias/images/sky.jpg +0 -0
  144. data/vendor/assets/src/medias/images/the_mask.svg +0 -8
  145. data/vendor/assets/src/medias/images/tile_black.png +0 -0
  146. data/vendor/assets/src/medias/images/tile_white.png +0 -0
  147. data/vendor/assets/src/medias/videos/avengers.mp4 +0 -0
  148. data/vendor/assets/src/medias/videos/madmax.mp4 +0 -0
  149. data/vendor/assets/src/medias/videos/starwars.mov +0 -0
  150. data/vendor/assets/src/medias/videos/superman.mp4 +0 -0
@@ -17,7 +17,6 @@ class Atome
17
17
  temp_default.merge(params)
18
18
  end
19
19
 
20
-
21
20
  def box(params = {}, &bloc)
22
21
  default_renderer = Essentials.default_params[:render_engines]
23
22
  atome_type = :box
@@ -28,13 +27,6 @@ class Atome
28
27
 
29
28
  params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
30
29
 
31
- # params2 = { renderers: [:browser], id: generated_id, type: :shape, parents: [generated_parents], children: [],
32
- # width: 99, height: 99,
33
- # color: { renderers: [:browser], id: "#{params[:id]}_color", type: :color, attach: [params[:id]],
34
- # red: 0.15, green: 0.30, blue: 0.6, alpha: 1 },
35
- # left: 100, top: 100, clones: [], preset: :box
36
- # }
37
- # params[:children]=[]
38
30
  Atome.new({ atome_type => params }, &bloc)
39
31
  end
40
32
 
@@ -49,60 +41,67 @@ class Atome
49
41
  Atome.new({ atome_type => params }, &bloc)
50
42
  end
51
43
 
52
- def image(params = {}, &bloc)
53
- default_renderer = Essentials.default_params[:render_engines]
54
- generated_id = params[:id] || "image_#{Universe.atomes.length}"
55
- generated_render = params[:renderers] || default_renderer
56
- generated_parents = params[:parents] || id.value
57
- # TODO : the line below should get the value from default params Essentials
58
- temp_default = { renderers: generated_render, id: generated_id, type: :image, parents: [generated_parents],
59
- children: [], width: 99, height: 99, path: './medias/images/atome.svg' }
60
- params = temp_default.merge(params)
61
- Atome.new({ image: params }, &bloc)
62
- end
63
-
64
- def text(params = {}, &bloc)
65
- default_renderer = Essentials.default_params[:render_engines]
66
- atome_type = :text
67
- generated_render = params[:renderers] || default_renderer
68
- generated_id = params[:id] || "#{atome_type}_#{Universe.atomes.length}"
69
- generated_parents = params[:parents] || [id.value]
70
- generated_children = params[:children] || []
71
- params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
72
- Atome.new({ atome_type => params }, &bloc)
73
- end
74
-
75
- def element(params = {}, &bloc)
76
- atome_type = :element
77
- generated_render = params[:renderers] || []
78
- generated_id = params[:id] || "#{atome_type}_#{Universe.atomes.length}"
79
- generated_parents = params[:parents] || [id.value]
80
- generated_children = params[:children] || []
81
- params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
82
- Atome.new({ atome_type => params }, &bloc)
83
- end
44
+ # def image(params = {}, &bloc)
45
+ # default_renderer = Essentials.default_params[:render_engines]
46
+ # generated_id = params[:id] || "image_#{Universe.atomes.length}"
47
+ # generated_render = params[:renderers] || default_renderer
48
+ # generated_parents = params[:parents] || id.value
49
+ # # TODO : the line below should get the value from default params Essentials
50
+ # temp_default = { renderers: generated_render, id: generated_id, type: :image, parents: [generated_parents],
51
+ # children: [], width: 99, height: 99, path: './medias/images/atome.svg' }
52
+ # params = temp_default.merge(params)
53
+ # Atome.new({ image: params }, &bloc)
54
+ # end
55
+ #
56
+ # def text(params = {}, &bloc)
57
+ # default_renderer = Essentials.default_params[:render_engines]
58
+ # atome_type = :text
59
+ # generated_render = params[:renderers] || default_renderer
60
+ # generated_id = params[:id] || "#{atome_type}_#{Universe.atomes.length}"
61
+ # generated_parents = params[:parents] || [id.value]
62
+ # generated_children = params[:children] || []
63
+ # params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
64
+ # Atome.new({ atome_type => params }, &bloc)
65
+ # end
84
66
 
85
- def web(params = {}, &bloc)
86
- default_renderer = Essentials.default_params[:render_engines]
67
+ # def element(params = 'kjh', &bloc)
68
+ # atome_type = :element
69
+ #
70
+ # generated_render = params[:renderers] || []
71
+ #
72
+ # generated_id = params[:id] || "#{atome_type}_#{Universe.atomes.length}"
73
+ # generated_parents = params[:parents] || [id.value]
74
+ # generated_children = params[:children] || []
75
+ #
76
+ # generated_data = ""
77
+ # params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
78
+ # # FIXME: do not merge generated_data like this but change the atomecommon
79
+ # params.merge(generated_data)
80
+ #
81
+ # Atome.new({ atome_type => params }, &bloc)
82
+ # end
87
83
 
88
- generated_id = params[:id] || "web_#{Universe.atomes.length}"
89
- generated_render = params[:renderers] || default_renderer
90
- generated_parents = params[:parents] || id.value
91
- # TODO : the line below should get the value from default params Essentials
92
- temp_default = { renderers: generated_render, id: generated_id, type: :web, parents: [generated_parents],
93
- children: [], width: 120, height: 120, path: 'https://www.youtube.com/embed/usQDazZKWAk' }
94
- params = temp_default.merge(params)
95
- Atome.new({ image: params }, &bloc)
96
- end
84
+ # def web(params = {}, &bloc)
85
+ # default_renderer = Essentials.default_params[:render_engines]
86
+ #
87
+ # generated_id = params[:id] || "web_#{Universe.atomes.length}"
88
+ # generated_render = params[:renderers] || default_renderer
89
+ # generated_parents = params[:parents] || id.value
90
+ # # TODO : the line below should get the value from default params Essentials
91
+ # temp_default = { renderers: generated_render, id: generated_id, type: :web, parents: [generated_parents],
92
+ # children: [], width: 120, height: 120, path: 'https://www.youtube.com/embed/usQDazZKWAk' }
93
+ # params = temp_default.merge(params)
94
+ # Atome.new({ image: params }, &bloc)
95
+ # end
97
96
 
98
- def animation(params = {}, &bloc)
99
- default_renderer = Essentials.default_params[:render_engines]
100
- atome_type = :animation
101
- generated_render = params[:renderers] || default_renderer
102
- generated_id = params[:id] || "#{atome_type}_#{Universe.atomes.length}"
103
- generated_parents = params[:parents] || []
104
- generated_children = params[:children] || []
105
- params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
106
- Atome.new({ atome_type => params }, &bloc)
107
- end
97
+ # def animation(params = {}, &bloc)
98
+ # default_renderer = Essentials.default_params[:render_engines]
99
+ # atome_type = :animation
100
+ # generated_render = params[:renderers] || default_renderer
101
+ # generated_id = params[:id] || "#{atome_type}_#{Universe.atomes.length}"
102
+ # generated_parents = params[:parents] || []
103
+ # generated_children = params[:children] || []
104
+ # params = atome_common(atome_type, generated_id, generated_render, generated_parents, generated_children, params)
105
+ # Atome.new({ atome_type => params }, &bloc)
106
+ # end
108
107
  end
@@ -4,8 +4,11 @@ generator = Genesis.generator
4
4
 
5
5
  generator.build_render(:browser_touch) do |value, proc|
6
6
  atome_id = @browser_object.attribute(:id)
7
- BrowserHelper.send("browser_touch_#{value}", atome_id, proc)
8
- # end
7
+ BrowserHelper.send("browser_touch_#{value}", atome_id,self, proc)
8
+ end
9
+
10
+ generator.build_render(:browser_over) do |value, proc|
11
+ BrowserHelper.send("browser_over_#{value}", @browser_object,self, proc)
9
12
  end
10
13
 
11
14
  generator.build_render(:browser_play) do |value, proc|
@@ -62,7 +65,7 @@ end
62
65
  generator.build_render(:browser_unbind) do |options, _proc|
63
66
  id_found = self.atome[:id]
64
67
  `
65
- const el = document.getElementById(#{id_found});
68
+ //const el = document.getElementById(#{id_found});
66
69
  interact('#'+#{id_found}).unset(#{options});
67
70
  `
68
71
  end
@@ -3,17 +3,25 @@
3
3
  generator = Genesis.generator
4
4
 
5
5
  generator.build_render(:browser_width) do |value|
6
- @browser_object.style[:width] = if value.instance_of? String
7
- value
8
- else
9
- "#{value}px"
10
- end
6
+
7
+ # aa=BrowserHelper.value_parse(value)
8
+ # # alert "value_parse : #{aa}"≈
9
+ # alert "#{value} : #{value.class} : value_parse : #{aa}"
10
+ # @browser_object.style[:width] = if value.instance_of? String
11
+ # value
12
+ # else
13
+ # "#{value}px"
14
+ # end
15
+
16
+
17
+ @browser_object.style[:width] = BrowserHelper.value_parse(value)
11
18
  end
12
19
 
13
20
  generator.build_render(:browser_height) do |value|
14
- @browser_object.style[:height] = if value.instance_of? String
15
- value
16
- else
17
- "#{value}px"
18
- end
21
+ # @browser_object.style[:height] = if value.instance_of? String
22
+ # value
23
+ # else
24
+ # "#{value}px"
25
+ # end
26
+ @browser_object.style[:height] = BrowserHelper.value_parse(value)
19
27
  end
@@ -14,4 +14,13 @@ module BrowserHelper
14
14
  def self.browser_attach_style(parents, _html_object, atome)
15
15
  browser_document[parents].add_class(atome[:id])
16
16
  end
17
+
18
+ def self.value_parse(value)
19
+ if value.instance_of?(String)
20
+ value
21
+ else
22
+ "#{value}px"
23
+ end
24
+
25
+ end
17
26
  end
@@ -16,18 +16,18 @@ module BrowserHelper
16
16
  end
17
17
 
18
18
  def self.browser_left_color(_value, _browser_object, _atome)
19
- puts 'code to write when implementing gradient'
19
+ # puts 'code to write when implementing gradient'
20
20
  end
21
21
 
22
22
  def self.browser_right_color(_value, _browser_object, _atome)
23
- puts 'code to write when implementing gradient'
23
+ # puts 'code to write when implementing gradient'
24
24
  end
25
25
 
26
26
  def self.browser_top_color(_value, _browser_object, _atome)
27
- puts 'code to write when implementing gradient'
27
+ # puts 'code to write when implementing gradient'
28
28
  end
29
29
 
30
30
  def self.browser_bottom_color(_value, _browser_object, _atome)
31
- puts 'code to write when implementing gradient'
31
+ # puts 'code to write when implementing gradient'
32
32
  end
33
33
  end
@@ -3,57 +3,69 @@
3
3
  # for browser rendering
4
4
  module BrowserHelper
5
5
 
6
- def self.touch_helper_callback(event, proc)
7
- instance_exec(event, &proc) if proc.is_a?(Proc)
6
+ def self.touch_helper_callback(event,atome, proc)
7
+ atome.instance_exec(event, &proc) if proc.is_a?(Proc)
8
8
  end
9
9
 
10
- def self.browser_touch_true(browser_object, proc)
10
+ def self.browser_touch_true(browser_object,atome, proc)
11
11
  `
12
12
  interact('#'+#{browser_object})
13
13
  .on('tap', function (event) {
14
- Opal.BrowserHelper.$touch_helper_callback(event,#{proc});
14
+ Opal.BrowserHelper.$touch_helper_callback(event,#{atome},#{proc});
15
15
  })
16
16
  `
17
17
  end
18
18
 
19
- def self.browser_touch_long(browser_object, proc)
19
+ def self.browser_touch_long(browser_object,atome, proc)
20
20
  `
21
21
  interact('#'+#{browser_object})
22
22
  .on('hold', function (event) {
23
- Opal.BrowserHelper.$touch_helper_callback(event,#{proc});
23
+ Opal.BrowserHelper.$touch_helper_callback(event,#{atome},#{proc});
24
24
  })
25
25
  `
26
26
  end
27
27
 
28
- def self.browser_touch_double(browser_object, proc)
28
+ def self.browser_touch_double(browser_object,atome, proc)
29
29
  `
30
30
  interact('#'+#{browser_object})
31
31
  .on('doubletap', function (event) {
32
- Opal.BrowserHelper.$touch_helper_callback(event,#{proc});
32
+ Opal.BrowserHelper.$touch_helper_callback(event,#{atome},#{proc});
33
33
  })
34
34
  `
35
35
  end
36
36
 
37
- def self.browser_touch_down(browser_object, proc)
37
+ def self.browser_touch_down(browser_object,atome, proc)
38
38
 
39
39
  `
40
40
  interact('#'+#{browser_object})
41
41
  .on('down', function (event) {
42
- Opal.BrowserHelper.$touch_helper_callback(event,#{proc});
42
+ Opal.BrowserHelper.$touch_helper_callback(event,#{atome},#{proc});
43
43
  })
44
44
 
45
45
  `
46
46
  end
47
47
 
48
- def self.browser_touch_up(browser_object, proc)
48
+ def self.browser_touch_up(browser_object, atome,proc)
49
49
  `
50
50
  interact('#'+#{browser_object})
51
51
  .on('up', function (event) {
52
- Opal.BrowserHelper.$touch_helper_callback(event,#{proc});
52
+ Opal.BrowserHelper.$touch_helper_callback(event,#{atome},#{proc});
53
53
  })
54
54
  `
55
55
  end
56
56
 
57
+ def self.browser_over_enter(browser_object,atome, proc)
58
+ browser_object.on :mouseover do |event|
59
+ atome.instance_exec(event, &proc) if proc.is_a?(Proc)
60
+ end
61
+ end
62
+
63
+ def self.browser_over_leave(browser_object, atome,proc)
64
+ browser_object.on :mouseout do |event|
65
+ atome.instance_exec(event, &proc) if proc.is_a?(Proc)
66
+ end
67
+ end
68
+
57
69
  end
58
70
 
59
71
 
@@ -4,19 +4,19 @@
4
4
  module BrowserHelper
5
5
 
6
6
  def self.browser_left_shape(value, browser_object, _atome)
7
- browser_object.style[:left] = "#{value}px"
7
+ browser_object.style[:left] = BrowserHelper.value_parse(value)
8
8
  end
9
9
 
10
10
  def self.browser_right_shape(value, browser_object, _atome)
11
- browser_object.style[:right] = "#{value}px"
11
+ browser_object.style[:right] = BrowserHelper.value_parse(value)
12
12
  end
13
13
 
14
14
  def self.browser_top_shape(value, browser_object, _atome)
15
- browser_object.style[:top] = "#{value}px"
15
+ browser_object.style[:top] = BrowserHelper.value_parse(value)
16
16
  end
17
17
 
18
18
  def self.browser_bottom_shape(value, browser_object, _atome)
19
- browser_object.style[:bottom] = "#{value}px"
19
+ browser_object.style[:bottom] = BrowserHelper.value_parse(value)
20
20
  end
21
21
 
22
22
  end
@@ -4,19 +4,19 @@
4
4
  module BrowserHelper
5
5
  # text
6
6
  def self.browser_left_text(value, browser_object, _atome)
7
- browser_object.style[:left] = "#{value}px"
7
+ browser_object.style[:left] = BrowserHelper.value_parse(value)
8
8
  end
9
9
 
10
10
  def self.browser_right_text(value, browser_object, _atome)
11
- browser_object.style[:right] = "#{value}px"
11
+ browser_object.style[:right] = BrowserHelper.value_parse(value)
12
12
  end
13
13
 
14
14
  def self.browser_top_text(value, browser_object, _atome)
15
- browser_object.style[:top] = "#{value}px"
15
+ browser_object.style[:top] = BrowserHelper.value_parse(value)
16
16
  end
17
17
 
18
18
  def self.browser_bottom_text(value, browser_object, _atome)
19
- browser_object.style[:bottom] = "#{value}px"
19
+ browser_object.style[:bottom] = BrowserHelper.value_parse(value)
20
20
  end
21
21
 
22
22
  def self.browser_data_text(value,atome_send)
@@ -7,7 +7,7 @@ module BrowserHelper
7
7
  browser_object.style[:left] = "#{value}px"
8
8
  end
9
9
 
10
- def self.browser_right_videob(value, browser_object, _atome)
10
+ def self.browser_right_video(value, browser_object, _atome)
11
11
  browser_object.style[:right] = "#{value}px"
12
12
  end
13
13
 
@@ -4,19 +4,19 @@
4
4
  module BrowserHelper
5
5
  # web
6
6
  def self.browser_left_web(value, browser_object, _atome)
7
- browser_object.style[:left] = "#{value}px"
7
+ browser_object.style[:left] = BrowserHelper.value_parse(value)
8
8
  end
9
9
 
10
10
  def self.browser_right_web(value, browser_object, _atome)
11
- browser_object.style[:right] = "#{value}px"
11
+ browser_object.style[:right] = BrowserHelper.value_parse(value)
12
12
  end
13
13
 
14
14
  def self.browser_top_web(value, browser_object, _atome)
15
- browser_object.style[:top] = "#{value}px"
15
+ browser_object.style[:top] = BrowserHelper.value_parse(value)
16
16
  end
17
17
 
18
18
  def self.browser_bottom_web(value, browser_object, _atome)
19
- browser_object.style[:bottom] = "#{value}px"
19
+ browser_object.style[:bottom] = BrowserHelper.value_parse(value)
20
20
  end
21
21
 
22
22
  def self.browser_path_web(value, browser_object, _atome)
@@ -25,3 +25,7 @@ generator.build_render(:browser_attach) do |parents_found|
25
25
  end
26
26
  end
27
27
 
28
+ generator.build_render(:browser_detached) do |value, _user_proc|
29
+ @browser_object.remove_class(value)
30
+ end
31
+
@@ -49,7 +49,13 @@ generator.build_render(:alpha) do |value|
49
49
  end
50
50
 
51
51
  generator.build_render(:visual) do |value|
52
- browser_object.style['font-size'] = "#{value[:size]}px"
52
+ # value = if value[:size].instance_of?(String)
53
+ # value[:size]
54
+ # else
55
+ # "#{value[:size]}px"
56
+ # end
57
+ value = BrowserHelper.value_parse(value[:size])
58
+ browser_object.style['font-size'] = value
53
59
  end
54
60
 
55
61
  generator.build_render(:browser_edit) do |value|
@@ -74,3 +80,16 @@ generator.build_render(:browser_hide) do |value|
74
80
  @browser_object.style[:display] = "none"
75
81
 
76
82
  end
83
+
84
+ generator.build_render(:browser_classes) do |value, _user_proc|
85
+ @browser_object.add_class(value)
86
+ # TODO : don't forget to remove class
87
+ end
88
+
89
+ generator.build_render(:browser_remove_classes) do |value, _user_proc|
90
+ @browser_object.remove_class(value)
91
+ end
92
+
93
+ new ({browser: :opacity}) do |value|
94
+ @browser_object.style['opacity'] = value
95
+ end
@@ -52,3 +52,7 @@ generator.build_render(:browser_center) do |value, _user_proc|
52
52
 
53
53
  end
54
54
 
55
+ new ({browser: :depth}) do |value|
56
+ @browser_object.style['z-index'] = value
57
+ end
58
+
data/lib/atome/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  class Atome
4
- VERSION = '0.5.3.4'
4
+ VERSION = '0.5.3.7.3'
5
5
  end
data/sig/atome.rbs CHANGED
@@ -9,6 +9,18 @@ module Atome
9
9
 
10
10
  def apply_style: -> untyped
11
11
 
12
+ def auto_render_generator: -> untyped
13
+
14
+ def build_atome: -> Atome
15
+
16
+ def build_option: -> untyped
17
+
18
+ def build_particle: -> untyped
19
+
20
+ def build_render: -> untyped
21
+
22
+ def build_sanitizer: -> untyped
23
+
12
24
  def format_matrix: -> untyped
13
25
 
14
26
  def get_column: -> untyped
data/sig/genesis.rbs ADDED
@@ -0,0 +1,3 @@
1
+ class Genesis
2
+ def self.generator: -> Atome
3
+ end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  # my code here ..
2
4
 
3
5
  # open the console in your browser ou your native app and should see the text below
@@ -18,7 +18,7 @@
18
18
  <script src='js/opal/opal.js'></script>
19
19
  <script src='js/opal/opal_browser.js'></script>
20
20
  <!-- TODO: we line below is commented when using stand alone mode and loaded on demand when using server mode-->
21
- <!-- <script type="text/javascript" src="js/third_parties/fabric.min.js"></script>-->
21
+ <script type="text/javascript" src="js/third_parties/fabric.min.js"></script>
22
22
  <!-- <script type="text/javascript" src="js/third_parties/three.min.js"></script>-->
23
23
  <!-- <script src='js/opal/opal_parser.js'></script>-->
24
24
  <script src='js/aui.js'></script>
@@ -1,5 +1,6 @@
1
1
  const atomeJS = Object.assign(atomeAnimate,atomeDrag,atomeFile,atomeSort, atomeTime, atomeVideo);
2
-
2
+ // This const is used to store and get all atome created canvas by id
3
+ const Atome_canvas={}
3
4
  // // class AtomeDrag {
4
5
  // // constructor() {
5
6
  // // }
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
3
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4
+ <svg fill="#000000" height="800px" width="800px" version="1.1" id="Capa_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
5
+ viewBox="0 0 493.497 493.497" xml:space="preserve">
6
+ <path d="M444.556,85.218H48.942C21.954,85.218,0,107.171,0,134.16v225.177c0,26.988,21.954,48.942,48.942,48.942h395.613
7
+ c26.988,0,48.941-21.954,48.941-48.942V134.16C493.497,107.171,471.544,85.218,444.556,85.218z M460.87,134.16v225.177
8
+ c0,2.574-0.725,4.924-1.793,7.09L343.74,251.081l117.097-117.097C460.837,134.049,460.87,134.096,460.87,134.16z M32.628,359.336
9
+ V134.16c0-0.064,0.033-0.11,0.033-0.175l117.097,117.097L34.413,366.426C33.353,364.26,32.628,361.911,32.628,359.336z
10
+ M251.784,296.902c-2.692,2.691-7.378,2.691-10.07,0L62.667,117.846h368.172L251.784,296.902z M172.827,274.152l45.818,45.819
11
+ c7.512,7.511,17.493,11.645,28.104,11.645c10.61,0,20.592-4.134,28.104-11.645l45.82-45.819l101.49,101.499H71.327L172.827,274.152z
12
+ "/>
13
+ </svg>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="800" height="800" xml:space="preserve" id="emptyemailsvgrepocomCanvas">
4
+ <!-- Generated by PaintCode - http://www.paintcodeapp.com -->
5
+ <path id="emptyemailsvgrepocomCanvas-bezier" stroke="none" fill="rgb(161, 161, 161)" d="M 720.66,138.15 L 79.34,138.15 C 35.59,138.15 0,173.73 0,217.48 L 0,582.52 C 0,626.27 35.59,661.85 79.34,661.85 L 720.66,661.85 C 764.41,661.85 800,626.27 800,582.52 L 800,217.48 C 800,173.73 764.41,138.15 720.66,138.15 Z M 747.11,217.48 L 747.11,582.52 C 747.11,586.69 745.93,590.5 744.2,594.01 L 557.23,407.02 747.06,217.2 C 747.06,217.3 747.11,217.38 747.11,217.48 Z M 52.89,582.51 L 52.89,217.48 C 52.89,217.38 52.95,217.31 52.95,217.2 L 242.77,407.02 55.79,594.01 C 54.07,590.5 52.89,586.69 52.89,582.51 Z M 408.16,481.3 C 403.8,485.67 396.2,485.67 391.84,481.3 L 101.59,191.04 698.43,191.04 408.16,481.3 Z M 280.17,444.42 L 354.44,518.7 C 366.62,530.88 382.8,537.58 400,537.58 417.2,537.58 433.38,530.88 445.56,518.7 L 519.84,444.42 684.36,608.96 115.63,608.96 280.17,444.42 Z M 280.17,444.42" />
6
+ </svg>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="800" height="800" xml:space="preserve" id="emptyemailsvgrepocomCanvas">
4
+ <!-- Generated by PaintCode - http://www.paintcodeapp.com -->
5
+ <path id="emptyemailsvgrepocomCanvas-bezier" stroke="none" fill="rgb(34, 255, 29)" d="M 720.66,138.15 L 79.34,138.15 C 35.59,138.15 0,173.73 0,217.48 L 0,582.52 C 0,626.27 35.59,661.85 79.34,661.85 L 720.66,661.85 C 764.41,661.85 800,626.27 800,582.52 L 800,217.48 C 800,173.73 764.41,138.15 720.66,138.15 Z M 747.11,217.48 L 747.11,582.52 C 747.11,586.69 745.93,590.5 744.2,594.01 L 557.23,407.02 747.06,217.2 C 747.06,217.3 747.11,217.38 747.11,217.48 Z M 52.89,582.51 L 52.89,217.48 C 52.89,217.38 52.95,217.31 52.95,217.2 L 242.77,407.02 55.79,594.01 C 54.07,590.5 52.89,586.69 52.89,582.51 Z M 408.16,481.3 C 403.8,485.67 396.2,485.67 391.84,481.3 L 101.59,191.04 698.43,191.04 408.16,481.3 Z M 280.17,444.42 L 354.44,518.7 C 366.62,530.88 382.8,537.58 400,537.58 417.2,537.58 433.38,530.88 445.56,518.7 L 519.84,444.42 684.36,608.96 115.63,608.96 280.17,444.42 Z M 280.17,444.42" />
6
+ </svg>
@@ -0,0 +1,6 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="800" height="800" xml:space="preserve" id="emptyemailsvgrepocomCanvas">
4
+ <!-- Generated by PaintCode - http://www.paintcodeapp.com -->
5
+ <path id="emptyemailsvgrepocomCanvas-bezier" stroke="none" fill="orange" d="M 720.66,138.15 L 79.34,138.15 C 35.59,138.15 0,173.73 0,217.48 L 0,582.52 C 0,626.27 35.59,661.85 79.34,661.85 L 720.66,661.85 C 764.41,661.85 800,626.27 800,582.52 L 800,217.48 C 800,173.73 764.41,138.15 720.66,138.15 Z M 747.11,217.48 L 747.11,582.52 C 747.11,586.69 745.93,590.5 744.2,594.01 L 557.23,407.02 747.06,217.2 C 747.06,217.3 747.11,217.38 747.11,217.48 Z M 52.89,582.51 L 52.89,217.48 C 52.89,217.38 52.95,217.31 52.95,217.2 L 242.77,407.02 55.79,594.01 C 54.07,590.5 52.89,586.69 52.89,582.51 Z M 408.16,481.3 C 403.8,485.67 396.2,485.67 391.84,481.3 L 101.59,191.04 698.43,191.04 408.16,481.3 Z M 280.17,444.42 L 354.44,518.7 C 366.62,530.88 382.8,537.58 400,537.58 417.2,537.58 433.38,530.88 445.56,518.7 L 519.84,444.42 684.36,608.96 115.63,608.96 280.17,444.42 Z M 280.17,444.42" />
6
+ </svg>
@@ -0,0 +1,4 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg"
2
+ viewBox="0 0 512 512"><!-- Font Awesome Free 5.15.4 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) -->
3
+ <path id="p" d="M255.545 8c-66.269.119-126.438 26.233-170.86 68.685L48.971 40.971C33.851 25.851 8 36.559 8 57.941V192c0 13.255 10.745 24 24 24h134.059c21.382 0 32.09-25.851 16.971-40.971l-41.75-41.75c30.864-28.899 70.801-44.907 113.23-45.273 92.398-.798 170.283 73.977 169.484 169.442C423.236 348.009 349.816 424 256 424c-41.127 0-79.997-14.678-110.63-41.556-4.743-4.161-11.906-3.908-16.368.553L89.34 422.659c-4.872 4.872-4.631 12.815.482 17.433C133.798 479.813 192.074 504 256 504c136.966 0 247.999-111.033 248-247.998C504.001 119.193 392.354 7.755 255.545 8z"/>
4
+ </svg>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg width="100%" height="100%" viewBox="0 0 2134 2134" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
4
+ <g transform="matrix(4.16667,0,0,4.16667,0,0)">
5
+ <path d="M512,256C512,114.604 397.396,0 256,0C114.604,0 0,114.604 0,256C0,383.79 93.562,489.696 216.022,508.914L216.022,330.064L151.075,330.064L151.075,256L216.022,256L216.022,199.61C216.022,135.505 254.176,100.015 312.671,100.015C340.726,100.015 370.043,105.065 370.043,105.065L370.043,168.048L337.779,168.048C305.938,168.048 296.118,187.827 296.118,208.026L296.118,256L367.097,256L355.734,330.064L296.118,330.064L296.118,508.914C418.438,489.696 512,383.79 512,256Z" style="fill:orange;fill-rule:nonzero;"/>
6
+ <path d="M355.595,330.064L366.957,256L295.979,256L295.979,208.026C295.979,187.827 305.938,168.048 337.64,168.048L369.902,168.048L369.902,105.065C369.902,105.065 340.585,100.015 312.53,100.015C254.036,100.015 215.882,135.505 215.882,199.61L215.882,256L150.935,256L150.935,330.064L215.882,330.064L215.882,508.914C228.927,511.018 242.253,512 255.86,512C269.467,512 282.792,510.878 295.838,508.914L295.838,330.064L355.595,330.064Z" style="fill:rgb(38,38,38);fill-rule:nonzero;"/>
7
+ </g>
8
+ </svg>
@@ -0,0 +1,11 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg width="100%" height="100%" viewBox="0 0 1541 1798" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xml:space="preserve" xmlns:serif="http://www.serif.com/" style="fill-rule:evenodd;clip-rule:evenodd;stroke-linejoin:round;stroke-miterlimit:2;">
4
+ <g transform="matrix(1,0,0,1,-474,-142)">
5
+ <g>
6
+ <path d="M1611.67,811.86C1721.11,890.05 1855.19,936.06 1999.99,936.06L1999.99,657.55C1972.58,657.561 1945.25,654.702 1918.44,649.02L1918.44,868.25C1773.65,868.25 1639.59,822.24 1530.12,744.05L1530.12,1312.4C1530.12,1596.72 1299.52,1827.19 1015.07,1827.19C908.94,1827.19 810.29,1795.12 728.34,1740.12C821.87,1835.7 952.3,1895 1096.6,1895C1381.07,1895 1611.68,1664.53 1611.68,1380.2L1611.68,811.86L1611.67,811.86ZM1712.27,530.88C1656.34,469.81 1619.62,390.88 1611.67,303.62L1611.67,267.8L1534.39,267.8C1553.84,378.7 1620.19,473.45 1712.27,530.88ZM908.25,1521.95C877.01,1481.01 860.115,1430.89 860.19,1379.39C860.19,1249.35 965.67,1143.92 1095.8,1143.92C1120.05,1143.9 1144.15,1147.62 1167.27,1154.95L1167.27,870.22C1140.26,866.521 1113,864.953 1085.75,865.53L1085.75,1087.15C1062.62,1079.82 1038.51,1076.1 1014.25,1076.12C884.12,1076.12 778.65,1181.55 778.65,1311.6C778.65,1403.55 831.37,1483.17 908.25,1521.95Z" style="fill:orange;"/>
7
+ <path d="M1530.12,744.05C1639.59,822.24 1773.65,868.25 1918.44,868.25L1918.44,649.02C1837.62,631.82 1766.07,589.6 1712.27,530.88C1620.19,473.45 1553.84,378.7 1534.39,267.8L1331.4,267.8L1331.4,1380.19C1330.94,1509.87 1225.64,1614.87 1095.79,1614.87C1019.27,1614.87 951.29,1578.42 908.24,1521.95C831.36,1483.17 778.64,1403.55 778.64,1311.6C778.64,1181.55 884.11,1076.12 1014.24,1076.12C1039.17,1076.12 1063.2,1080 1085.74,1087.15L1085.74,865.53C806.29,871.3 581.54,1099.52 581.54,1380.2C581.54,1520.31 637.51,1647.33 728.34,1740.13C810.29,1795.13 908.94,1827.2 1015.07,1827.2C1299.52,1827.2 1530.12,1596.72 1530.12,1312.41L1530.12,744.05Z" style="fill: orange;"/>
8
+ <!-- <path d="M1918.44,649.02L1918.44,589.74C1845.56,589.85 1774.1,569.445 1712.27,530.87C1767,590.759 1839.1,632.077 1918.44,649.02ZM1534.39,267.8C1532.53,257.203 1531.11,246.534 1530.12,235.82L1530.12,200L1249.84,200L1249.84,1312.4C1249.39,1442.07 1144.1,1547.07 1014.24,1547.07C976.11,1547.07 940.12,1538.03 908.24,1521.95C951.29,1578.42 1019.27,1614.87 1095.79,1614.87C1225.63,1614.87 1330.94,1509.87 1331.4,1380.19L1331.4,267.8L1534.39,267.8ZM1085.75,865.53L1085.75,802.42C1062.33,799.218 1038.72,797.618 1015.08,797.63C730.6,797.63 500,1028.11 500,1312.4C500,1490.64 590.63,1647.72 728.35,1740.12C637.52,1647.32 581.55,1520.3 581.55,1380.19C581.55,1099.52 806.29,871.3 1085.75,865.53Z" style="fill:rgb(130,130,130);"/>-->
9
+ </g>
10
+ </g>
11
+ </svg>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="301" height="245" xml:space="preserve" id="twitterCanvas">
4
+ <!-- Generated by PaintCode - http://www.paintcodeapp.com -->
5
+ <g id="twitterCanvas-twitterCanvaslayer1">
6
+ <path id="twitterCanvas-twitterCanvaspath3611" stroke="none" fill="orange" d="M 93.72,242.19 C 206.18,242.19 267.68,149.02 267.68,68.23 267.68,65.58 267.62,62.95 267.5,60.33 279.44,51.7 289.82,40.93 298,28.67 287.05,33.54 275.26,36.82 262.89,38.29 275.51,30.72 285.2,18.75 289.78,4.48 277.96,11.48 264.88,16.57 250.95,19.32 239.79,7.43 223.91,-0 206.32,-0 172.56,-0 145.18,27.38 145.18,61.13 145.18,65.93 145.71,70.6 146.76,75.07 95.95,72.52 50.89,48.19 20.74,11.19 15.49,20.23 12.46,30.72 12.46,41.92 12.46,63.13 23.25,81.86 39.67,92.82 29.64,92.51 20.21,89.75 11.98,85.17 11.97,85.43 11.97,85.68 11.97,85.95 11.97,115.56 33.04,140.28 61.02,145.88 55.88,147.28 50.48,148.04 44.9,148.04 40.96,148.04 37.13,147.65 33.41,146.93 41.19,171.23 63.76,188.9 90.52,189.4 69.6,205.8 43.23,215.57 14.58,215.57 9.66,215.57 4.79,215.29 0,214.72 27.06,232.07 59.19,242.19 93.72,242.19 Z M 93.72,242.19" />
7
+ </g>
8
+ </svg>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="256" height="256" xml:space="preserve" id="instagramCanvas">
4
+ <!-- Generated by PaintCode - http://www.paintcodeapp.com -->
5
+ <g id="instagramCanvas-group">
6
+ <path id="instagramCanvas-bezier" stroke="none" fill="orange" d="M 128,23.06 C 162.18,23.06 166.23,23.19 179.72,23.81 192.2,24.38 198.98,26.46 203.49,28.22 209.46,30.54 213.73,33.31 218.21,37.79 222.69,42.27 225.46,46.54 227.78,52.51 229.54,57.02 231.62,63.8 232.19,76.28 232.81,89.77 232.94,93.82 232.94,128 232.94,162.18 232.81,166.23 232.19,179.72 231.62,192.2 229.54,198.98 227.78,203.49 225.46,209.47 222.69,213.73 218.21,218.21 213.73,222.69 209.46,225.46 203.49,227.78 198.98,229.54 192.2,231.62 179.72,232.19 166.23,232.81 162.18,232.94 128,232.94 93.82,232.94 89.77,232.81 76.28,232.19 63.8,231.62 57.02,229.54 52.51,227.78 46.53,225.46 42.27,222.69 37.79,218.21 33.31,213.73 30.54,209.47 28.22,203.49 26.46,198.98 24.38,192.2 23.81,179.72 23.19,166.23 23.06,162.18 23.06,128 23.06,93.82 23.19,89.77 23.81,76.28 24.38,63.8 26.46,57.02 28.22,52.51 30.54,46.54 33.31,42.27 37.79,37.79 42.27,33.31 46.53,30.54 52.51,28.22 57.02,26.46 63.8,24.38 76.28,23.81 89.77,23.19 93.82,23.06 128,23.06 Z M 128,-0 C 93.24,-0 88.88,0.15 75.23,0.77 61.6,1.39 52.3,3.56 44.15,6.72 35.74,9.99 28.6,14.37 21.48,21.48 14.37,28.6 9.99,35.74 6.72,44.16 3.56,52.3 1.39,61.6 0.77,75.23 0.15,88.88 0,93.24 0,128 0,162.76 0.15,167.12 0.77,180.77 1.39,194.4 3.56,203.7 6.72,211.85 9.99,220.26 14.37,227.4 21.48,234.52 28.6,241.63 35.74,246.01 44.15,249.28 52.3,252.44 61.6,254.61 75.23,255.23 88.88,255.85 93.24,256 128,256 162.76,256 167.12,255.85 180.77,255.23 194.4,254.61 203.7,252.44 211.84,249.28 220.26,246.01 227.4,241.63 234.52,234.52 241.63,227.4 246.01,220.26 249.28,211.85 252.44,203.7 254.61,194.4 255.23,180.77 255.85,167.12 256,162.76 256,128 256,93.24 255.85,88.88 255.23,75.23 254.61,61.6 252.44,52.3 249.28,44.16 246.01,35.74 241.63,28.6 234.52,21.48 227.4,14.37 220.26,9.99 211.84,6.72 203.7,3.56 194.4,1.39 180.77,0.77 167.12,0.15 162.76,-0 128,-0 Z M 128,62.27 C 91.7,62.27 62.27,91.7 62.27,128 62.27,164.3 91.7,193.73 128,193.73 164.3,193.73 193.73,164.3 193.73,128 193.73,91.7 164.3,62.27 128,62.27 Z M 128,170.67 C 104.44,170.67 85.33,151.56 85.33,128 85.33,104.44 104.44,85.33 128,85.33 151.56,85.33 170.67,104.44 170.67,128 170.67,151.56 151.56,170.67 128,170.67 Z M 211.69,59.67 C 211.69,68.16 204.81,75.03 196.33,75.03 187.84,75.03 180.97,68.16 180.97,59.67 180.97,51.19 187.84,44.31 196.33,44.31 204.81,44.31 211.69,51.19 211.69,59.67 Z M 211.69,59.67" />
7
+ </g>
8
+ </svg>