atome 0.5.7.0.7 → 0.5.7.1.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/atome/genesis/particles/property.rb +3 -1
  3. data/lib/atome/genesis/particles/spatial.rb +13 -3
  4. data/lib/atome/genesis/particles/utility.rb +16 -8
  5. data/lib/atome/kernel/universe.rb +2 -1
  6. data/lib/atome/version.rb +1 -1
  7. data/lib/molecules/intuition/utillities.rb +18 -5
  8. data/lib/renderers/html/hierarchy.rb +13 -1
  9. data/lib/renderers/html/html.rb +24 -5
  10. data/lib/renderers/html/material.rb +10 -10
  11. data/lib/renderers/html/property.rb +5 -0
  12. data/vendor/assets/application/examples/image.rb +1 -2
  13. data/vendor/assets/application/examples/input.rb +6 -4
  14. data/vendor/assets/application/examples/list.rb +16 -10
  15. data/vendor/assets/application/examples/matrix.rb +22 -11
  16. data/vendor/assets/application/examples/rotate.rb +8 -0
  17. data/vendor/assets/application/examples/svg_img_to_vector.rb +5 -2
  18. data/vendor/assets/application/examples/test.rb +57 -584
  19. data/vendor/assets/application/examples/text_align.rb +3 -0
  20. data/vendor/assets/application/examples/tools.rb +46 -31
  21. data/vendor/assets/application/examples/touch.rb +7 -4
  22. data/vendor/assets/application/examples/vector.rb +0 -3
  23. data/vendor/assets/src/css/style.css +2 -0
  24. data/vendor/assets/src/index.html +14 -1
  25. data/vendor/assets/src/index_opal.html +15 -3
  26. data/vendor/assets/src/index_server.html +4 -3
  27. data/vendor/assets/src/index_server_wasm.html +14 -1
  28. data/vendor/assets/src/index_wasm.html +14 -1
  29. data/vendor/assets/src/js/third_parties/wavesurfer.min.js +1 -0
  30. data/vendor/assets/src/medias/images/icons/edit-.svg +1 -1
  31. data/vendor/assets/src/medias/images/icons/edit.svg +1 -1
  32. data/vendor/assets/src/medias/images/icons/infos.svg +13 -0
  33. data/vendor/assets/src/medias/images/icons/mixer.svg +15 -0
  34. data/vendor/assets/src/medias/images/icons/module.svg +6 -0
  35. data/vendor/assets/src/medias/images/icons/new.svg +7 -0
  36. data/vendor/assets/src/medias/images/icons/panel.svg +8 -0
  37. data/vendor/assets/src/medias/images/icons/play.svg +2 -2
  38. data/vendor/assets/src/medias/images/icons/save.svg +1 -1
  39. data/vendor/assets/src/medias/images/icons/sequence.svg +11 -0
  40. data/vendor/assets/src/medias/images/logos/vie.svg +1 -1
  41. data/vendor/assets/src/medias/images/shapes/triangle.svg +5 -0
  42. metadata +12 -2
@@ -23,11 +23,12 @@ class Atome
23
23
  class << self
24
24
  def init_intuition
25
25
  Atome.start_click_analysis
26
- root = [:box, :blur, :drag, :rotate, :select, :move,:project]
26
+ root = Universe.tools_root
27
27
  root.each_with_index do |root_tool, index|
28
28
  tools_scheme = Universe.tools[root_tool]
29
29
  A.build_tool({ name: root_tool, scheme: tools_scheme, index: index })
30
30
  end
31
+
31
32
  # Universe.tools.each_with_index do |(tool_name, bloc), index|
32
33
  #
33
34
  # A.build_tool({ name: tool_name, index: index }, &bloc)
@@ -511,6 +512,7 @@ end
511
512
  new({ tool: :rotate }) do
512
513
  { alteration: { height: 150, rotate: 45 } }
513
514
  end
515
+
514
516
  new({ tool: :move }) do |params|
515
517
  active_code = lambda {
516
518
  # if Atome.selection.instance_of? Array
@@ -564,6 +566,7 @@ new({ tool: :move }) do |params|
564
566
  int8: { french: :drag, english: :drag, german: :drag } }
565
567
 
566
568
  end
569
+
567
570
  new({ tool: :project }) do
568
571
  active_code = lambda {
569
572
 
@@ -579,43 +582,55 @@ new({ tool: :project }) do
579
582
  }
580
583
  { activation: active_code }
581
584
  end
582
- # new({ tool: :move }) do
583
- # inactivate=lambda{|param|
584
- # param[:treated].each do |atome_f|
585
- # atome_f.drag(false)
586
- # end
587
- # }
588
- # { alteration: { drag: true, left: nil , top: nil}, inactivation: inactivate }
589
- # end
590
- ### tool2 test
591
585
 
592
- Atome.init_intuition
586
+ new({tool: :test}) do
587
+ active_code = lambda {
588
+ # alert :ok
589
+ b=Object.box
590
+ # b=grab(:view).box
591
+ b.touch(true) do
592
+ Object.alert :kool
593
+ end
594
+ }
595
+ # active_code=:tito
596
+ { activation: active_code }
597
+ end
593
598
 
594
- # ###################
595
599
 
596
- b = box({ left: 123, top: 66, selected: false, id: :the_box, color: :green })
597
- b.touch(:down) do
598
- puts " on touch : #{Universe.allow_localstorage}"
599
- end
600
- b.resize(true) do
601
- puts :good!
602
- end
603
- the_circ = circle({ left: 123, top: 120, selected: false, id: :the_circle })
600
+ # Universe.tools_root=[:box, :blur, :drag, :rotate, :select, :move,:project]
601
+ Universe.tools_root=[:test]
602
+ Atome.init_intuition
604
603
 
605
- the_circ.touch(:down) do |params|
606
- puts " down : params: #{params}, id: #{the_circ.id}"
607
- end
608
604
 
609
- the_circ.touch(:up) do
610
- puts "up :kool"
611
- end
612
- the_circ.drag(true) do
613
- puts "drag : now"
614
- end
615
605
 
616
- bb = box({ left: 333, width: 120, selected: false, id: :big_box })
617
606
 
618
- b = box({ id: :the_big_boxy })
607
+ # ################### check below
608
+
609
+ # b = box({ left: 123, top: 66, selected: false, id: :the_box, color: :green })
610
+ # b.touch(:down) do
611
+ # puts " on touch : #{Universe.allow_localstorage}"
612
+ # end
613
+ # b.resize(true) do
614
+ # puts :good!
615
+ # end
616
+ # the_circ = circle({ left: 123, top: 120, selected: false, id: :the_circle })
617
+ #
618
+ # the_circ.touch(:down) do |params|
619
+ # puts " down : params: #{params}, id: #{the_circ.id}"
620
+ # end
621
+ #
622
+ # the_circ.touch(:up) do
623
+ # puts "up :kool"
624
+ # end
625
+ # the_circ.drag(true) do
626
+ # puts "drag : now"
627
+ # end
628
+ #
629
+ # bb = box({ left: 333, width: 120, selected: false, id: :big_box })
630
+ #
631
+ # b = box({ id: :the_big_boxy })
632
+
633
+ #################@
619
634
  # text({ data: :hello, selected: true, left: 120, id: :texting, blur: 12 })
620
635
  # text({data: :hello, left: 120, id: :texting})
621
636
  # Universe.tools.each_with_index do |(tool_name, bloc), index|
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- b = box({ left: 666, color: :blue, smooth: 6, id: :the_box2 })
3
+ b = box({ left: 333, color: :blue, smooth: 6, id: :the_box2 })
4
4
 
5
5
  t=text({id: :the_text, data: 'type of touch : ?'})
6
6
 
7
7
  t.touch(:down) do |event|
8
-
8
+ puts :down
9
9
  puts event[:pageX]
10
10
  puts event[:pageY]
11
11
  b.touch({remove: :down})
@@ -13,28 +13,31 @@ t.touch(:down) do |event|
13
13
  t.data('touch down killed')
14
14
  end
15
15
  b.touch(true) do
16
- # t.data('type of touch : ?')
16
+ puts :true
17
17
  b.color(:red)
18
18
  puts 'box tapped'
19
19
  end
20
20
 
21
21
  b.touch(:long) do
22
+ puts :long
22
23
  t.data('type of touch is : long ')
23
24
  b.color(:black)
24
25
  end
25
26
 
26
27
  b.touch(:up) do
27
-
28
+ puts :up
28
29
  t.data('type of touch is : up ')
29
30
  b.color(:orange)
30
31
  end
31
32
 
32
33
  b.touch(:down) do
34
+ puts :down
33
35
  t.data('type of touch is : down ')
34
36
  b.color(:white)
35
37
  end
36
38
 
37
39
  b.touch(:double) do
40
+ puts :double
38
41
  t.color(:red)
39
42
  t.data('type of touch is : double ')
40
43
  b.color(:yellowgreen)
@@ -32,6 +32,3 @@ wait 1 do
32
32
  end
33
33
  end
34
34
 
35
-
36
-
37
-
@@ -15,6 +15,8 @@ html, body {
15
15
  height: 100%;
16
16
  z-index: 0;
17
17
  color: lightgray;
18
+ touch-action: manipulation; /*allow pinch to scroll and pan but lock the zoom */
19
+
18
20
  }
19
21
  @font-face {
20
22
  font-family: 'Roboto-Thin';
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <link rel="icon" type="image/x-icon"
5
5
  href="https://github.com/atomecorp/atome/blob/master/vendor/assets/src/favicon.ico">
6
- <meta name='viewport' content='initial-scale=1, width=device-width, viewport-fit=cover'>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, viewport-fit=cover,user-scalable=no">
7
7
  <meta charset='UTF-8'/>
8
8
  <meta name="format-detection" content="telephone=no">
9
9
  <meta name="msapplication-tap-highlight" content="no">
@@ -14,6 +14,7 @@
14
14
  <script type="text/javascript" src="js/third_parties/popmotion.min.js" defer></script>
15
15
  <script type="text/javascript" src="js/third_parties/sortable.min.js" defer></script>
16
16
  <script type="text/javascript" src="js/third_parties/wad.min.js" defer></script>
17
+ <script type="text/javascript" src="js/third_parties/wavesurfer.min.js" defer></script>
17
18
  <script type="text/javascript" src="js/third_parties/sha256.min.js" defer></script>
18
19
  <script type="text/javascript" src="js/third_parties/ping.min.js" defer></script>
19
20
  <script type="text/javascript" src="js/third_parties/fabric.min.js" defer></script>
@@ -42,4 +43,16 @@
42
43
  const NativeMode = true; // used by atome.js to load code on the fly
43
44
  </script>
44
45
  <script defer src="js/atome/atome.js" type="text/javascript"></script>
46
+ <script defer>
47
+ document.addEventListener('touchstart', function(event) {
48
+ if (event.touches.length > 1) {
49
+ event.preventDefault();
50
+ }
51
+ }, { passive: false });
52
+ document.addEventListener('wheel', function(event) {
53
+ if (event.ctrlKey === true) {
54
+ event.preventDefault(); // Empêche le zoom quand Ctrl est pressé et que l'utilisateur scroll avec le trackpad
55
+ }
56
+ }, { passive: false });
57
+ </script >
45
58
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <link rel="icon" type="image/x-icon"
5
5
  href="https://github.com/atomecorp/atome/blob/master/vendor/assets/src/favicon.ico">
6
- <meta name='viewport' content='initial-scale=1, width=device-width, viewport-fit=cover'>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, viewport-fit=cover,user-scalable=no">
7
7
  <meta charset='UTF-8'/>
8
8
  <meta name="format-detection" content="telephone=no">
9
9
  <meta name="msapplication-tap-highlight" content="no">
@@ -13,6 +13,7 @@
13
13
  <script type="text/javascript" src="js/third_parties/popmotion.min.js" defer></script>
14
14
  <script type="text/javascript" src="js/third_parties/sortable.min.js" defer></script>
15
15
  <script type="text/javascript" src="js/third_parties/wad.min.js" defer></script>
16
+ <script type="text/javascript" src="js/third_parties/wavesurfer.min.js" defer></script>
16
17
  <script type="text/javascript" src="js/third_parties/sha256.min.js" defer></script>
17
18
  <script type="text/javascript" src="js/third_parties/ping.min.js" defer></script>
18
19
  <script defer src="js/third_parties/fabric.min.js" type="text/javascript"></script>
@@ -20,7 +21,7 @@
20
21
  <script src='js/opal/opal.js' defer></script>
21
22
  <script src='js/opal/opal_parser.js' defer></script>
22
23
  <script src='js/aui.js' defer></script>
23
- <script defer defer src='js/host_mode.js'></script>
24
+ <script defer src='js/host_mode.js'></script>
24
25
  <script src='js/opal/atome_opal_extensions.js' defer></script>
25
26
  <script src='js/atome/kernel.js' defer></script>
26
27
  <script defer src="js/atome/atome_helpers/communication.js" type="text/javascript"></script>
@@ -36,5 +37,16 @@
36
37
  </script>
37
38
  <script defer src="js/atome/atome.js" type="text/javascript"></script>
38
39
  <script src='js/application.js' defer></script>
39
-
40
+ <script defer>
41
+ document.addEventListener('touchstart', function(event) {
42
+ if (event.touches.length > 1) {
43
+ event.preventDefault();
44
+ }
45
+ }, { passive: false });
46
+ document.addEventListener('wheel', function(event) {
47
+ if (event.ctrlKey === true) {
48
+ event.preventDefault(); // Empêche le zoom quand Ctrl est pressé et que l'utilisateur scroll avec le trackpad
49
+ }
50
+ }, { passive: false });
51
+ </script >
40
52
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <link href="https://github.com/atomecorp/atome/blob/master/vendor/assets/src/favicon.ico" rel="icon"
5
5
  type="image/x-icon">
6
- <meta content='initial-scale=1, width=device-width, viewport-fit=cover' name='viewport'>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, viewport-fit=cover,user-scalable=no">
7
7
  <meta charset='UTF-8'/>
8
8
  <meta content="telephone=no" name="format-detection">
9
9
  <meta content="no" name="msapplication-tap-highlight">
@@ -13,14 +13,15 @@
13
13
  <script defer src="js/third_parties/popmotion.min.js" type="text/javascript"></script>
14
14
  <script defer src="js/third_parties/sortable.min.js" type="text/javascript"></script>
15
15
  <script defer src="js/third_parties/wad.min.js" type="text/javascript"></script>
16
+ <script defer src="js/third_parties/wavesurfer.min.js" type="text/javascript"></script>
16
17
  <script defer src="js/third_parties/sha256.min.js" type="text/javascript"></script>
17
18
  <script defer src="js/third_parties/ping.min.js" type="text/javascript"></script>
18
19
  <script defer src="js/third_parties/fabric.min.js" type="text/javascript"></script>
19
20
  <script type="text/javascript" src="js/third_parties/papaparse.min.js" defer></script>
20
21
  <script defer src='js/opal/opal.js'></script>
21
22
  <script defer src='js/opal/opal_parser.js'></script>
22
- <script defer defer src='js/aui.js'></script>
23
- <script defer defer src='js/host_mode.js'></script>
23
+ <script defer src='js/aui.js'></script>
24
+ <script defer src='js/host_mode.js'></script>
24
25
  <script defer src='js/opal/atome_opal_extensions.js'></script>
25
26
  <script defer src='js/atome/kernel.js'></script>
26
27
  <script defer src="js/atome/atome_helpers/communication.js" type="text/javascript"></script>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <link rel="icon" type="image/x-icon"
5
5
  href="https://github.com/atomecorp/atome/blob/master/vendor/assets/src/favicon.ico">
6
- <meta name='viewport' content='initial-scale=1, width=device-width, viewport-fit=cover'>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, viewport-fit=cover,user-scalable=no">
7
7
  <meta charset='UTF-8'/>
8
8
  <meta name="format-detection" content="telephone=no">
9
9
  <meta name="msapplication-tap-highlight" content="no">
@@ -14,6 +14,7 @@
14
14
  <script type="text/javascript" src="js/third_parties/popmotion.min.js" defer></script>
15
15
  <script type="text/javascript" src="js/third_parties/sortable.min.js" defer></script>
16
16
  <script type="text/javascript" src="js/third_parties/wad.min.js" defer></script>
17
+ <script type="text/javascript" src="js/third_parties/wavesurfer.min.js" defer></script>
17
18
  <script type="text/javascript" src="js/third_parties/sha256.min.js" defer></script>
18
19
  <script type="text/javascript" src="js/third_parties/ping.min.js" defer></script>
19
20
  <script type="text/javascript" src="js/third_parties/fabric.min.js" defer></script>
@@ -42,4 +43,16 @@
42
43
  const NativeMode = false; // used by atome.js to load code on the fly
43
44
  </script>
44
45
  <script defer src="js/atome/atome.js" type="text/javascript"></script>
46
+ <script defer>
47
+ document.addEventListener('touchstart', function(event) {
48
+ if (event.touches.length > 1) {
49
+ event.preventDefault();
50
+ }
51
+ }, { passive: false });
52
+ document.addEventListener('wheel', function(event) {
53
+ if (event.ctrlKey === true) {
54
+ event.preventDefault(); // Empêche le zoom quand Ctrl est pressé et que l'utilisateur scroll avec le trackpad
55
+ }
56
+ }, { passive: false });
57
+ </script >
45
58
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <link rel="icon" type="image/x-icon"
5
5
  href="https://github.com/atomecorp/atome/blob/master/vendor/assets/src/favicon.ico">
6
- <meta name='viewport' content='initial-scale=1, width=device-width, viewport-fit=cover'>
6
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, viewport-fit=cover,user-scalable=no">
7
7
  <meta charset='UTF-8'/>
8
8
  <meta name="format-detection" content="telephone=no">
9
9
  <meta name="msapplication-tap-highlight" content="no">
@@ -14,6 +14,7 @@
14
14
  <script type="text/javascript" src="js/third_parties/popmotion.min.js" defer></script>
15
15
  <script type="text/javascript" src="js/third_parties/sortable.min.js" defer></script>
16
16
  <script type="text/javascript" src="js/third_parties/wad.min.js" defer></script>
17
+ <script type="text/javascript" src="js/third_parties/wavesurfer.min.js" defer></script>
17
18
  <script type="text/javascript" src="js/third_parties/sha256.min.js" defer></script>
18
19
  <script type="text/javascript" src="js/third_parties/ping.min.js" defer></script>
19
20
  <script type="text/javascript" src="js/third_parties/fabric.min.js" defer></script>
@@ -47,4 +48,16 @@
47
48
  const NativeMode = false; // used by atome.js to load code on the fly
48
49
  </script>
49
50
  <script defer src="js/atome/atome.js" type="text/javascript"></script>
51
+ <script defer>
52
+ document.addEventListener('touchstart', function(event) {
53
+ if (event.touches.length > 1) {
54
+ event.preventDefault();
55
+ }
56
+ }, { passive: false });
57
+ document.addEventListener('wheel', function(event) {
58
+ if (event.ctrlKey === true) {
59
+ event.preventDefault(); // Empêche le zoom quand Ctrl est pressé et que l'utilisateur scroll avec le trackpad
60
+ }
61
+ }, { passive: false });
62
+ </script >
50
63
  </html>
@@ -0,0 +1 @@
1
+ !function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):((t="undefined"!=typeof globalThis?globalThis:t||self).WaveSurfer=t.WaveSurfer||{},t.WaveSurfer.Regions=e())}(this,(function(){"use strict";class t{constructor(){this.listeners={}}on(t,e,i){if(this.listeners[t]||(this.listeners[t]=new Set),this.listeners[t].add(e),null==i?void 0:i.once){const i=()=>{this.un(t,i),this.un(t,e)};return this.on(t,i),i}return()=>this.un(t,e)}un(t,e){var i;null===(i=this.listeners[t])||void 0===i||i.delete(e)}once(t,e){return this.on(t,e,{once:!0})}unAll(){this.listeners={}}emit(t,...e){this.listeners[t]&&this.listeners[t].forEach((t=>t(...e)))}}class e extends t{constructor(t){super(),this.subscriptions=[],this.options=t}onInit(){}_init(t){this.wavesurfer=t,this.onInit()}destroy(){this.emit("destroy"),this.subscriptions.forEach((t=>t()))}}function i(t,e,i,n,s=3,o=0,r=100){if(!t)return()=>{};const a=matchMedia("(pointer: coarse)").matches;let l=()=>{};const h=h=>{if(h.button!==o)return;h.preventDefault(),h.stopPropagation();let d=h.clientX,c=h.clientY,u=!1;const g=Date.now(),p=n=>{if(n.preventDefault(),n.stopPropagation(),a&&Date.now()-g<r)return;const o=n.clientX,l=n.clientY,h=o-d,p=l-c;if(u||Math.abs(h)>s||Math.abs(p)>s){const n=t.getBoundingClientRect(),{left:s,top:r}=n;u||(null==i||i(d-s,c-r),u=!0),e(h,p,o-s,l-r),d=o,c=l}},v=e=>{if(u){const i=e.clientX,s=e.clientY,o=t.getBoundingClientRect(),{left:r,top:a}=o;null==n||n(i-r,s-a)}l()},m=t=>{t.relatedTarget&&t.relatedTarget!==document.documentElement||v(t)},f=t=>{u&&(t.stopPropagation(),t.preventDefault())},b=t=>{u&&t.preventDefault()};document.addEventListener("pointermove",p),document.addEventListener("pointerup",v),document.addEventListener("pointerout",m),document.addEventListener("pointercancel",m),document.addEventListener("touchmove",b,{passive:!1}),document.addEventListener("click",f,{capture:!0}),l=()=>{document.removeEventListener("pointermove",p),document.removeEventListener("pointerup",v),document.removeEventListener("pointerout",m),document.removeEventListener("pointercancel",m),document.removeEventListener("touchmove",b),setTimeout((()=>{document.removeEventListener("click",f,{capture:!0})}),10)}};return t.addEventListener("pointerdown",h),()=>{l(),t.removeEventListener("pointerdown",h)}}function n(t,e){const i=e.xmlns?document.createElementNS(e.xmlns,t):document.createElement(t);for(const[t,s]of Object.entries(e))if("children"===t)for(const[t,s]of Object.entries(e))"string"==typeof s?i.appendChild(document.createTextNode(s)):i.appendChild(n(t,s));else"style"===t?Object.assign(i.style,s):"textContent"===t?i.textContent=s:i.setAttribute(t,s.toString());return i}function s(t,e,i){const s=n(t,e||{});return null==i||i.appendChild(s),s}class o extends t{constructor(t,e,i=0){var n,s,o,r,a,l,h,d;super(),this.totalDuration=e,this.numberOfChannels=i,this.minLength=0,this.maxLength=1/0,this.contentEditable=!1,this.subscriptions=[],this.subscriptions=[],this.id=t.id||`region-${Math.random().toString(32).slice(2)}`,this.start=this.clampPosition(t.start),this.end=this.clampPosition(null!==(n=t.end)&&void 0!==n?n:t.start),this.drag=null===(s=t.drag)||void 0===s||s,this.resize=null===(o=t.resize)||void 0===o||o,this.color=null!==(r=t.color)&&void 0!==r?r:"rgba(0, 0, 0, 0.1)",this.minLength=null!==(a=t.minLength)&&void 0!==a?a:this.minLength,this.maxLength=null!==(l=t.maxLength)&&void 0!==l?l:this.maxLength,this.channelIdx=null!==(h=t.channelIdx)&&void 0!==h?h:-1,this.contentEditable=null!==(d=t.contentEditable)&&void 0!==d?d:this.contentEditable,this.element=this.initElement(),this.setContent(t.content),this.setPart(),this.renderPosition(),this.initMouseEvents()}clampPosition(t){return Math.max(0,Math.min(this.totalDuration,t))}setPart(){const t=this.start===this.end;this.element.setAttribute("part",`${t?"marker":"region"} ${this.id}`)}addResizeHandles(t){const e={position:"absolute",zIndex:"2",width:"6px",height:"100%",top:"0",cursor:"ew-resize",wordBreak:"keep-all"},n=s("div",{part:"region-handle region-handle-left",style:Object.assign(Object.assign({},e),{left:"0",borderLeft:"2px solid rgba(0, 0, 0, 0.5)",borderRadius:"2px 0 0 2px"})},t),o=s("div",{part:"region-handle region-handle-right",style:Object.assign(Object.assign({},e),{right:"0",borderRight:"2px solid rgba(0, 0, 0, 0.5)",borderRadius:"0 2px 2px 0"})},t);this.subscriptions.push(i(n,(t=>this.onResize(t,"start")),(()=>null),(()=>this.onEndResizing()),1),i(o,(t=>this.onResize(t,"end")),(()=>null),(()=>this.onEndResizing()),1))}removeResizeHandles(t){const e=t.querySelector('[part*="region-handle-left"]'),i=t.querySelector('[part*="region-handle-right"]');e&&t.removeChild(e),i&&t.removeChild(i)}initElement(){const t=this.start===this.end;let e=0,i=100;this.channelIdx>=0&&this.channelIdx<this.numberOfChannels&&(i=100/this.numberOfChannels,e=i*this.channelIdx);const n=s("div",{style:{position:"absolute",top:`${e}%`,height:`${i}%`,backgroundColor:t?"none":this.color,borderLeft:t?"2px solid "+this.color:"none",borderRadius:"2px",boxSizing:"border-box",transition:"background-color 0.2s ease",cursor:this.drag?"grab":"default",pointerEvents:"all"}});return!t&&this.resize&&this.addResizeHandles(n),n}renderPosition(){const t=this.start/this.totalDuration,e=(this.totalDuration-this.end)/this.totalDuration;this.element.style.left=100*t+"%",this.element.style.right=100*e+"%"}toggleCursor(t){var e;this.drag&&(null===(e=this.element)||void 0===e?void 0:e.style)&&(this.element.style.cursor=t?"grabbing":"grab")}initMouseEvents(){const{element:t}=this;t&&(t.addEventListener("click",(t=>this.emit("click",t))),t.addEventListener("mouseenter",(t=>this.emit("over",t))),t.addEventListener("mouseleave",(t=>this.emit("leave",t))),t.addEventListener("dblclick",(t=>this.emit("dblclick",t))),t.addEventListener("pointerdown",(()=>this.toggleCursor(!0))),t.addEventListener("pointerup",(()=>this.toggleCursor(!1))),this.subscriptions.push(i(t,(t=>this.onMove(t)),(()=>this.toggleCursor(!0)),(()=>{this.toggleCursor(!1),this.drag&&this.emit("update-end")}))),this.contentEditable&&this.content&&(this.content.addEventListener("click",(t=>this.onContentClick(t))),this.content.addEventListener("blur",(()=>this.onContentBlur()))))}_onUpdate(t,e){if(!this.element.parentElement)return;const{width:i}=this.element.parentElement.getBoundingClientRect(),n=t/i*this.totalDuration,s=e&&"start"!==e?this.start:this.start+n,o=e&&"end"!==e?this.end:this.end+n,r=o-s;s>=0&&o<=this.totalDuration&&s<=o&&r>=this.minLength&&r<=this.maxLength&&(this.start=s,this.end=o,this.renderPosition(),this.emit("update",e))}onMove(t){this.drag&&this._onUpdate(t)}onResize(t,e){this.resize&&this._onUpdate(t,e)}onEndResizing(){this.resize&&this.emit("update-end")}onContentClick(t){t.stopPropagation();t.target.focus(),this.emit("click",t)}onContentBlur(){this.emit("update-end")}_setTotalDuration(t){this.totalDuration=t,this.renderPosition()}play(){this.emit("play")}setContent(t){var e;if(null===(e=this.content)||void 0===e||e.remove(),t){if("string"==typeof t){const e=this.start===this.end;this.content=s("div",{style:{padding:`0.2em ${e?.2:.4}em`,display:"inline-block"},textContent:t})}else this.content=t;this.contentEditable&&(this.content.contentEditable="true"),this.content.setAttribute("part","region-content"),this.element.appendChild(this.content)}else this.content=void 0}setOptions(t){var e,i;if(t.color&&(this.color=t.color,this.element.style.backgroundColor=this.color),void 0!==t.drag&&(this.drag=t.drag,this.element.style.cursor=this.drag?"grab":"default"),void 0!==t.start||void 0!==t.end){const n=this.start===this.end;this.start=this.clampPosition(null!==(e=t.start)&&void 0!==e?e:this.start),this.end=this.clampPosition(null!==(i=t.end)&&void 0!==i?i:n?this.start:this.end),this.renderPosition(),this.setPart()}if(t.content&&this.setContent(t.content),t.id&&(this.id=t.id,this.setPart()),void 0!==t.resize&&t.resize!==this.resize){const e=this.start===this.end;this.resize=t.resize,this.resize&&!e?this.addResizeHandles(this.element):this.removeResizeHandles(this.element)}}remove(){this.emit("remove"),this.subscriptions.forEach((t=>t())),this.element.remove(),this.element=null}}class r extends e{constructor(t){super(t),this.regions=[],this.regionsContainer=this.initRegionsContainer()}static create(t){return new r(t)}onInit(){if(!this.wavesurfer)throw Error("WaveSurfer is not initialized");this.wavesurfer.getWrapper().appendChild(this.regionsContainer);let t=[];this.subscriptions.push(this.wavesurfer.on("timeupdate",(e=>{const i=this.regions.filter((t=>t.start<=e&&(t.end===t.start?t.start+.05:t.end)>=e));i.forEach((e=>{t.includes(e)||this.emit("region-in",e)})),t.forEach((t=>{i.includes(t)||this.emit("region-out",t)})),t=i})))}initRegionsContainer(){return s("div",{style:{position:"absolute",top:"0",left:"0",width:"100%",height:"100%",zIndex:"3",pointerEvents:"none"}})}getRegions(){return this.regions}avoidOverlapping(t){if(!t.content)return;const e=t.content,i=e.getBoundingClientRect(),n=this.regions.map((e=>{if(e===t||!e.content)return 0;const n=e.content.getBoundingClientRect();return i.left<n.left+n.width&&n.left<i.left+i.width?n.height:0})).reduce(((t,e)=>t+e),0);e.style.marginTop=`${n}px`}adjustScroll(t){var e,i;const n=null===(i=null===(e=this.wavesurfer)||void 0===e?void 0:e.getWrapper())||void 0===i?void 0:i.parentElement;if(!n)return;const{clientWidth:s,scrollWidth:o}=n;if(o<=s)return;const r=n.getBoundingClientRect(),a=t.element.getBoundingClientRect(),l=a.left-r.left,h=a.right-r.left;l<0?n.scrollLeft+=l:h>s&&(n.scrollLeft+=h-s)}saveRegion(t){this.regionsContainer.appendChild(t.element),this.avoidOverlapping(t),this.regions.push(t);const e=[t.on("update",(e=>{e||this.adjustScroll(t)})),t.on("update-end",(()=>{this.avoidOverlapping(t),this.emit("region-updated",t)})),t.on("play",(()=>{var e,i;null===(e=this.wavesurfer)||void 0===e||e.play(),null===(i=this.wavesurfer)||void 0===i||i.setTime(t.start)})),t.on("click",(e=>{this.emit("region-clicked",t,e)})),t.on("dblclick",(e=>{this.emit("region-double-clicked",t,e)})),t.once("remove",(()=>{e.forEach((t=>t())),this.regions=this.regions.filter((e=>e!==t)),this.emit("region-removed",t)}))];this.subscriptions.push(...e),this.emit("region-created",t)}addRegion(t){var e,i;if(!this.wavesurfer)throw Error("WaveSurfer is not initialized");const n=this.wavesurfer.getDuration(),s=null===(i=null===(e=this.wavesurfer)||void 0===e?void 0:e.getDecodedData())||void 0===i?void 0:i.numberOfChannels,r=new o(t,n,s);return n?this.saveRegion(r):this.subscriptions.push(this.wavesurfer.once("ready",(t=>{r._setTotalDuration(t),this.saveRegion(r)}))),r}enableDragSelection(t,e=3){var n;const s=null===(n=this.wavesurfer)||void 0===n?void 0:n.getWrapper();if(!(s&&s instanceof HTMLElement))return()=>{};let r=null,a=0;return i(s,((t,e,i)=>{r&&r._onUpdate(t,i>a?"end":"start")}),(e=>{var i,n;if(a=e,!this.wavesurfer)return;const s=this.wavesurfer.getDuration(),l=null===(n=null===(i=this.wavesurfer)||void 0===i?void 0:i.getDecodedData())||void 0===n?void 0:n.numberOfChannels,{width:h}=this.wavesurfer.getWrapper().getBoundingClientRect(),d=e/h*s,c=(e+5)/h*s;r=new o(Object.assign(Object.assign({},t),{start:d,end:c}),s,l),this.regionsContainer.appendChild(r.element)}),(()=>{r&&(this.saveRegion(r),r=null)}),e)}clearRegions(){this.regions.forEach((t=>t.remove()))}destroy(){this.clearRegions(),super.destroy(),this.regionsContainer.remove()}}return r}));
@@ -1,4 +1,4 @@
1
1
  <svg class="svg-icon" style="width: 1em; height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;"
2
2
  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
- <path id="p1" d="M257.7 752c2 0 4-0.2 6-0.5L431.9 722c2-0.4 3.9-1.3 5.3-2.8l423.9-423.9c3.9-3.9 3.9-10.2 0-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2c-1.9 11.1 1.5 21.9 9.4 29.8 6.6 6.4 14.9 9.9 23.8 9.9z m67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"/>
3
+ <path id="p1" fill='white' d="M257.7 752c2 0 4-0.2 6-0.5L431.9 722c2-0.4 3.9-1.3 5.3-2.8l423.9-423.9c3.9-3.9 3.9-10.2 0-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2c-1.9 11.1 1.5 21.9 9.4 29.8 6.6 6.4 14.9 9.9 23.8 9.9z m67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"/>
4
4
  </svg>
@@ -1,4 +1,4 @@
1
1
  <svg class="svg-icon" style="width: 1em; height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;"
2
2
  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
- <path id="p1" d="M941.04 398.64 850.736 489.136 850.736 489.152 805.584 534.4 805.584 534.384 384.32 960.528 128.32 960.528C92.976 960.528 64.32 931.872 64.32 896.512L64.32 640.528 625.008 81.856C649.952 56.864 690.368 56.864 715.296 81.856L941.04 308.128C965.968 333.12 965.968 373.648 941.04 398.64ZM128.32 670.096 128.32 896.512 353.904 896.512 760.432 489.136 534.704 262.848 128.32 670.096ZM670.16 127.104 579.856 217.6 805.584 443.872 895.888 353.392 670.16 127.104Z"/>
3
+ <path id="p1" fill='white' d="M941.04 398.64 850.736 489.136 850.736 489.152 805.584 534.4 805.584 534.384 384.32 960.528 128.32 960.528C92.976 960.528 64.32 931.872 64.32 896.512L64.32 640.528 625.008 81.856C649.952 56.864 690.368 56.864 715.296 81.856L941.04 308.128C965.968 333.12 965.968 373.648 941.04 398.64ZM128.32 670.096 128.32 896.512 353.904 896.512 760.432 489.136 534.704 262.848 128.32 670.096ZM670.16 127.104 579.856 217.6 805.584 443.872 895.888 353.392 670.16 127.104Z"/>
4
4
  </svg>
@@ -0,0 +1,13 @@
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="informationiconsvgrepocomCanvas">
4
+ <g id="informationiconsvgrepocomCanvas-group">
5
+ <g id="informationiconsvgrepocomCanvas-group2">
6
+ <g id="informationiconsvgrepocomCanvas-group3">
7
+ <path id="informationiconsvgrepocomCanvas-bezier" stroke="none" fill="rgb(255, 255, 255)" d="M 399.98,-0 C 179.42,-0 0.01,179.44 0.01,400 0.01,620.57 179.42,800 399.98,800 620.55,800 799.99,620.56 799.99,400 799.99,179.44 620.55,-0 399.98,-0 Z M 399.98,715.32 C 226.13,715.32 84.7,573.86 84.7,400 84.7,226.15 226.13,84.69 399.98,84.69 573.84,84.69 715.3,226.15 715.3,400 715.3,573.86 573.84,715.32 399.98,715.32 Z M 399.98,715.32" />
8
+ <rect id="informationiconsvgrepocomCanvas-rectangle" stroke="none" fill="rgb(255, 255, 255)" x="334.7" y="361.15" width="130.6" height="290.1" rx="24.6" />
9
+ <circle id="informationiconsvgrepocomCanvas-oval" stroke="none" fill="rgb(255, 255, 255)" cx="400" cy="221.12" r="72.35" />
10
+ </g>
11
+ </g>
12
+ </g>
13
+ </svg>
@@ -0,0 +1,15 @@
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="512" height="512" xml:space="preserve" id="mixermusic3svgrepocomCanvas">
4
+ <g id="mixermusic3svgrepocomCanvas-group">
5
+ <rect id="mixermusic3svgrepocomCanvas-rectangle" stroke="rgb(255, 255, 255)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="424" y="24" width="48" height="52" />
6
+ <rect id="mixermusic3svgrepocomCanvas-rectangle2" stroke="rgb(255, 255, 255)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="424" y="188" width="48" height="300" />
7
+ <rect id="mixermusic3svgrepocomCanvas-rectangle3" stroke="rgb(255, 255, 255)" stroke-width="0" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="384" y="100" width="128" height="64" rx="27.2" />
8
+ <rect id="mixermusic3svgrepocomCanvas-rectangle4" stroke="rgb(255, 255, 255)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="231.99" y="24" width="48" height="276.64" />
9
+ <rect id="mixermusic3svgrepocomCanvas-rectangle5" stroke="rgb(255, 255, 255)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="231.99" y="412.64" width="48" height="75.36" />
10
+ <rect id="mixermusic3svgrepocomCanvas-rectangle6" stroke="rgb(255, 255, 255)" stroke-width="0" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="192" y="324.65" width="128" height="64" rx="27.2" />
11
+ <rect id="mixermusic3svgrepocomCanvas-rectangle7" stroke="rgb(255, 255, 255)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="40" y="308" width="48" height="180" />
12
+ <rect id="mixermusic3svgrepocomCanvas-rectangle8" stroke="rgb(255, 255, 255)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 255, 255)" x="40" y="24" width="48" height="172" />
13
+ <path id="mixermusic3svgrepocomCanvas-bezier" stroke="rgb(255, 255, 255)" stroke-width="0" stroke-miterlimit="4" fill="rgb(255, 255, 255)" d="M 100.79,220 L 27.21,220 C 12.19,220 0,232.19 0,247.21 L 0,256.79 C 0,271.81 12.19,284 27.21,284 L 100.79,284 C 115.81,284 128,271.81 128,256.79 L 128,247.21 C 128,232.19 115.81,220 100.79,220 Z M 100.79,220" />
14
+ </g>
15
+ </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="1024" height="1024" xml:space="preserve" id="moduleCanvas">
4
+ <path id="moduleCanvas-bezier" stroke="none" fill="rgb(255, 255, 255)" d="M 896,85.33 L 597.33,85.33 597.33,85.33 C 573.77,85.33 554.67,104.44 554.67,128 L 554.67,426.67 554.67,426.67 C 554.67,450.23 573.77,469.33 597.33,469.33 L 896,469.33 896,469.33 C 919.56,469.33 938.67,450.23 938.67,426.67 L 938.67,128 938.67,128 C 938.67,104.44 919.56,85.33 896,85.33 Z M 853.33,384 L 640,384 640,170.67 853.33,170.67 853.33,384 Z M 853.33,384" />
5
+ <path id="moduleCanvas-bezier2" stroke="none" fill="rgb(255, 255, 255)" d="M 810.67,512 L 512,512 512,213.33 512,213.33 C 512,189.77 492.9,170.67 469.33,170.67 L 128,170.67 128,170.67 C 104.44,170.67 85.33,189.77 85.33,213.33 L 85.33,896 85.33,896 C 85.33,919.56 104.44,938.67 128,938.67 L 810.67,938.67 810.67,938.67 C 834.23,938.67 853.33,919.56 853.33,896 L 853.33,554.67 853.33,554.67 C 853.33,531.1 834.23,512 810.67,512 Z M 170.67,256 L 426.67,256 426.67,512 170.67,512 170.67,256 Z M 170.67,597.33 L 426.67,597.33 426.67,853.33 170.67,853.33 170.67,597.33 Z M 768,853.33 L 512,853.33 512,597.33 768,597.33 768,853.33 Z M 768,853.33" />
6
+ </svg>
@@ -0,0 +1,7 @@
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="101" height="102" xml:space="preserve" id="canvasNewCanvas">
4
+ <path id="canvasNewCanvas-canvas1bezier2" stroke="rgb(200, 200, 200)" stroke-width="16" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" fill="none" d="M 51,8 L 7.5,8 7.5,93.5 92.5,93.5 93,50" />
5
+ <path id="canvasNewCanvas-canvas1bezier" stroke="rgb(200, 200, 200)" stroke-width="16" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" fill="none" d="M 66,21 L 93,21" />
6
+ <path id="canvasNewCanvas-canvas1bezier3" stroke="rgb(200, 200, 200)" stroke-width="16" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="10" fill="none" d="M 79,35 L 79,8" />
7
+ </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="800" height="800" xml:space="preserve" id="paneltopsvgrepocomCanvas">
4
+ <g id="paneltopsvgrepocomCanvas-group">
5
+ <rect id="paneltopsvgrepocomCanvas-rectangle" stroke="rgb(255, 255, 255)" stroke-width="60" stroke-miterlimit="10" fill="none" x="30.32" y="30.34" width="739.67" height="739.66" rx="76.2" />
6
+ <path id="paneltopsvgrepocomCanvas-bezier" fill-rule="evenodd" stroke="rgb(255, 255, 255)" stroke-width="60" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 171.62,140.52 L 628.38,140.52" />
7
+ </g>
8
+ </svg>
@@ -1,7 +1,7 @@
1
1
  <svg class="svg-icon" style="width: 1em; height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;"
2
2
  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
3
  <path id="path1" d="M512 960A448 448 0 1 0 512 64a448 448 0 0 0 0 896z m0 64A512 512 0 1 1 512 0a512 512 0 0 1 0 1024z"
4
- fill="#333333"/>
4
+ fill="#eeee"/>
5
5
  <path id="path12" d="M448 422.656v217.088L621.632 531.2 448 422.656z m14.336 283.584A51.2 51.2 0 0 1 384 662.848V399.552a51.2 51.2 0 0 1 78.336-43.392l210.56 131.648a51.2 51.2 0 0 1 0 86.784l-210.56 131.648z"
6
- fill="#333333"/>
6
+ fill="#eeee"/>
7
7
  </svg>
@@ -1,4 +1,4 @@
1
- <svg class="svg-icon" style="width: 1em; height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;"
1
+ <svg class="svg-icon" style="width: 1em; height: 1em;vertical-align: middle;fill: white;overflow: hidden;"
2
2
  viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
3
3
  <path id="path1" d="M306.176 549.376l1.024 1.024 173.568 152.576c19.968 17.92 50.176 17.408 70.144-0.512l168.448-152.576c20.992-19.968 22.016-53.248 2.048-74.24-19.456-20.48-51.712-22.016-72.704-3.584l-83.456 75.264V72.192c0-29.184-23.552-52.736-52.736-52.736-29.184 0-52.736 23.552-52.736 52.736v472.064L376.32 471.04c-21.504-19.456-54.784-17.408-74.24 4.096-19.456 21.504-17.92 54.784 4.096 74.24z"/>
4
4
  <path id="path2" d="M969.216 628.224c-30.208 0-54.784 24.576-54.784 54.784v211.968H109.056v-211.968c0-30.208-24.576-54.784-54.784-54.784S0 652.8 0 683.008V901.12c0 56.832 49.664 102.912 110.592 102.912h802.816c60.928 0 110.592-46.08 110.592-102.912v-218.112c0-30.208-24.576-54.784-54.784-54.784z"/>
@@ -0,0 +1,11 @@
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="682" height="615" xml:space="preserve" id="scatteralignmentsvgrepocomCanvas">
4
+ <!-- Generated by PaintCode - http://www.paintcodeapp.com -->
5
+ <path id="scatteralignmentsvgrepocomCanvas-bezier" stroke="rgb(255, 255, 255)" stroke-width="66.67" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 169.33,233.33 L 252,233" />
6
+ <path id="scatteralignmentsvgrepocomCanvas-bezier2" stroke="rgb(255, 255, 255)" stroke-width="66.67" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 108.67,358 L 322,358" />
7
+ <path id="scatteralignmentsvgrepocomCanvas-bezier3" stroke="rgb(255, 255, 255)" stroke-width="66.67" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 109,475.67 L 575.67,475.67" />
8
+ <path id="scatteralignmentsvgrepocomCanvas-bezier4" stroke="rgb(255, 255, 255)" stroke-width="66.67" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 397,232 L 575.5,232.5" />
9
+ <path id="scatteralignmentsvgrepocomCanvas-bezier5" stroke="rgb(255, 255, 255)" stroke-width="66.67" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 431.67,358 L 552,358" />
10
+ <path id="scatteralignmentsvgrepocomCanvas-bezier6" stroke="rgb(255, 255, 255)" stroke-width="66.67" stroke-linecap="round" stroke-linejoin="round" stroke-miterlimit="4" fill="none" d="M 272,119 L 552,119" />
11
+ </svg>
@@ -1,3 +1,3 @@
1
1
  <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" >
2
- <path id="vieCanvas-bezier" stroke="rgb(0, 0, 0)" stroke-width="1" stroke-miterlimit="10" fill="rgb(255, 0, 0)" d="M 73.04,26.41 C 50.57,12.14 15.77,53.39 15.81,85.33 15.83,107.68 23.49,124.45 35.37,139.38 97.06,203.55 73.1,232.52 109.61,231.71 134.09,231.16 181.15,134.57 220.5,138.31 232.63,123.3 240.52,106.7 240.5,85.07 240.5,84.51 240.49,83.95 240.47,83.4 211.52,29.92 146.74,182.8 114.45,179.38 69.64,174.65 90.68,37.61 73.04,26.41 Z M 172.32,76.13 C 172.32,94.63 157.34,109.64 138.85,109.64 120.36,109.64 105.37,94.63 105.37,76.13 105.37,57.62 120.36,42.62 138.85,42.62 157.34,42.62 172.32,57.62 172.32,76.13 Z M 172.32,76.13" />
2
+ <path id="vieCanvas-bezier" stroke="rgb(0, 0, 0)" stroke-width="0" stroke-miterlimit="10" fill="rgb(200, 120, 76.5)" d="M 73.04,26.41 C 50.57,12.14 15.77,53.39 15.81,85.33 15.83,107.68 23.49,124.45 35.37,139.38 97.06,203.55 73.1,232.52 109.61,231.71 134.09,231.16 181.15,134.57 220.5,138.31 232.63,123.3 240.52,106.7 240.5,85.07 240.5,84.51 240.49,83.95 240.47,83.4 211.52,29.92 146.74,182.8 114.45,179.38 69.64,174.65 90.68,37.61 73.04,26.41 Z M 172.32,76.13 C 172.32,94.63 157.34,109.64 138.85,109.64 120.36,109.64 105.37,94.63 105.37,76.13 105.37,57.62 120.36,42.62 138.85,42.62 157.34,42.62 172.32,57.62 172.32,76.13 Z M 172.32,76.13" />
3
3
  </svg>
@@ -0,0 +1,5 @@
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="120" height="120" xml:space="preserve" id="canvas1">
4
+ <path id="canvas1-bezier" stroke="none" fill="rgb(128, 128, 128)" d="M 59.5,1.5 L 0.5,66.5 119.5,66.5 59.5,1.5 Z M 59.5,1.5" />
5
+ </svg>
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.5.7.0.7
4
+ version: 0.5.7.1.2
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: 2024-04-27 00:00:00.000000000 Z
11
+ date: 2024-05-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: artoo
@@ -623,6 +623,7 @@ files:
623
623
  - vendor/assets/application/examples/remove.rb
624
624
  - vendor/assets/application/examples/repeat.rb
625
625
  - vendor/assets/application/examples/resize.rb
626
+ - vendor/assets/application/examples/rotate.rb
626
627
  - vendor/assets/application/examples/scroll.rb
627
628
  - vendor/assets/application/examples/security.rb
628
629
  - vendor/assets/application/examples/select_text.rb
@@ -645,6 +646,7 @@ files:
645
646
  - vendor/assets/application/examples/terminal.rb
646
647
  - vendor/assets/application/examples/test.rb
647
648
  - vendor/assets/application/examples/text.rb
649
+ - vendor/assets/application/examples/text_align.rb
648
650
  - vendor/assets/application/examples/tick.rb
649
651
  - vendor/assets/application/examples/tools.rb
650
652
  - vendor/assets/application/examples/touch.rb
@@ -724,6 +726,7 @@ files:
724
726
  - vendor/assets/src/js/third_parties/three.min.js
725
727
  - vendor/assets/src/js/third_parties/w3color.js
726
728
  - vendor/assets/src/js/third_parties/wad.min.js
729
+ - vendor/assets/src/js/third_parties/wavesurfer.min.js
727
730
  - vendor/assets/src/js/third_parties/zim.min.js
728
731
  - vendor/assets/src/medias/audios/audio_missing.wav
729
732
  - vendor/assets/src/medias/audios/clap.wav
@@ -782,6 +785,7 @@ files:
782
785
  - vendor/assets/src/medias/images/icons/group.svg
783
786
  - vendor/assets/src/medias/images/icons/hamburger.svg
784
787
  - vendor/assets/src/medias/images/icons/high_pass.svg
788
+ - vendor/assets/src/medias/images/icons/infos.svg
785
789
  - vendor/assets/src/medias/images/icons/link.svg
786
790
  - vendor/assets/src/medias/images/icons/load.svg
787
791
  - vendor/assets/src/medias/images/icons/low_pass.svg
@@ -791,7 +795,11 @@ files:
791
795
  - vendor/assets/src/medias/images/icons/microphone.svg
792
796
  - vendor/assets/src/medias/images/icons/midi_in.svg
793
797
  - vendor/assets/src/medias/images/icons/midi_out.svg
798
+ - vendor/assets/src/medias/images/icons/mixer.svg
799
+ - vendor/assets/src/medias/images/icons/module.svg
794
800
  - vendor/assets/src/medias/images/icons/modules.svg
801
+ - vendor/assets/src/medias/images/icons/new.svg
802
+ - vendor/assets/src/medias/images/icons/panel.svg
795
803
  - vendor/assets/src/medias/images/icons/paste.svg
796
804
  - vendor/assets/src/medias/images/icons/pause.svg
797
805
  - vendor/assets/src/medias/images/icons/play.svg
@@ -801,6 +809,7 @@ files:
801
809
  - vendor/assets/src/medias/images/icons/select-.svg
802
810
  - vendor/assets/src/medias/images/icons/select-all.svg
803
811
  - vendor/assets/src/medias/images/icons/select.svg
812
+ - vendor/assets/src/medias/images/icons/sequence.svg
804
813
  - vendor/assets/src/medias/images/icons/settings.svg
805
814
  - vendor/assets/src/medias/images/icons/settings0.svg
806
815
  - vendor/assets/src/medias/images/icons/settings1.svg
@@ -853,6 +862,7 @@ files:
853
862
  - vendor/assets/src/medias/images/logos/vimeo.svg
854
863
  - vendor/assets/src/medias/images/noise.svg
855
864
  - vendor/assets/src/medias/images/red_planet.png
865
+ - vendor/assets/src/medias/images/shapes/triangle.svg
856
866
  - vendor/assets/src/medias/images/tile.png
857
867
  - vendor/assets/src/medias/texts/lorem.txt
858
868
  - vendor/assets/src/medias/utils/infos/color.rb