atome 0.5.7.1.8 → 0.5.7.3.1

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '0584500fbf0b3f088007209b206d7b6200985b6a7b03c40bddb9ee781bb6697a'
4
- data.tar.gz: f0ceedb97e2382612a63a26e00f12eda52e543a84c4d6346c4497ffac9b157fd
3
+ metadata.gz: bda2b32c6739ba09c874bfdda703d1e64a3e01856b3f80fa01aba15866628335
4
+ data.tar.gz: 8ce5a6571be7d57c82aa64a345997f881a35c80ad12a3ec77b9ecc6a6fe00d47
5
5
  SHA512:
6
- metadata.gz: 6265f34e1c06296bd11fcb639a8dcf2553217d6200253617700fc21243bcf6a6c51b82835b7c7318a0bb95558a485eb8a2e28832bd3e3f9d2552d6897409cfa3
7
- data.tar.gz: 0d0e50b7c4cb0ef7afd41aaf5a75a1457d63ce9eaabc70b3443af9e2ef75af610b1c86ba0b98dea34b74ce99475827aee86ecf6d1b5bd42896b3c5eaec848b7f
6
+ metadata.gz: 1e5d67579d27b6fe58b41e63a1b6ac4811b3d47e5cae67f005c234d835760721ddf6d5591594a011b660a719b4a0873b3f5c8eb7840e7a4886dd6cbcc31f2e5b
7
+ data.tar.gz: 4f01d01a81f832cd14741c3a97ba93b82ee717821971b42aaf9d72f6820975c8b46a0adea51cf679cf114dd80678cd55ef4371b18a4b23fcb18a9e0f48dc0849
@@ -32,8 +32,6 @@ new({ sanitizer: :touch }) do |params, user_bloc|
32
32
  when :double
33
33
  @touch_code[:double] = user_bloc
34
34
  :double
35
- # when :remove
36
- # params
37
35
  when false
38
36
  @touch_code[:remove] = user_bloc
39
37
  :remove
@@ -71,6 +71,10 @@ new({ post: :remove }) do |params|
71
71
  end
72
72
 
73
73
  end
74
+ else
75
+ # the systems send an id we have to remove it from parent too
76
+ grab(params).attached.delete(id)
77
+ grab(params).affect.delete(id)
74
78
  end
75
79
  params
76
80
  end
@@ -8,8 +8,8 @@ new({ particle: :run, category: :utility, type: :boolean }) do |params|
8
8
  end
9
9
  # new({ particle: :broadcast })
10
10
 
11
- def delete_recursive(atome_id)
12
- return if grab(atome_id).tag && (grab(atome_id).tag[:persistent] || grab(atome_id).tag[:system])
11
+ def delete_recursive(atome_id, force=false)
12
+ return if grab(atome_id).tag && (grab(atome_id).tag[:persistent] || grab(atome_id).tag[:system]) unless force
13
13
 
14
14
  parent_id_found = grab(atome_id).attach
15
15
  parent_found = grab(parent_id_found)
@@ -17,11 +17,11 @@ def delete_recursive(atome_id)
17
17
  new_array.delete(atome_id)
18
18
  parent_found.instance_variable_set('@attached', new_array)
19
19
  grab(atome_id).attached.each do |atome_id_found|
20
- delete_recursive(atome_id_found)
20
+ delete_recursive(atome_id_found, force)
21
21
  end
22
22
  grab(atome_id).render(:delete, { :recursive => true })
23
23
  grab(atome_id).touch(:remove)
24
- Universe.delete(atome_id)
24
+ Universe.delete(grab(atome_id).aid)
25
25
  end
26
26
 
27
27
  new({ particle: :delete, category: :utility, type: :boolean, render: false }) do |params|
@@ -48,6 +48,24 @@ new({ particle: :delete, category: :utility, type: :boolean, render: false }) do
48
48
  end
49
49
  Universe.delete(@aid)
50
50
  end
51
+ # elsif params == :force
52
+ # cells.delete(true)
53
+ # group.delete(true)
54
+ # # now we detach the atome from it's parent
55
+ # # now we init rendering
56
+ # render(:delete, params)
57
+ # # the machine delete the current atome from the universe
58
+ # id_found = @id.to_sym
59
+ # if @attach
60
+ # parent_found = grab(@attach)
61
+ # parent_found.attached.delete(id_found)
62
+ # end
63
+ # @affect&.each do |affected_atome|
64
+ # affected_found = grab(affected_atome)
65
+ # affected_found.apply.delete(id_found)
66
+ # affected_found.refresh
67
+ # end
68
+ # Universe.delete(@aid)
51
69
  elsif params.instance_of? Hash
52
70
  # if we are on a matrix we delete cells found & group found
53
71
  cells.delete(true)
@@ -57,14 +75,22 @@ new({ particle: :delete, category: :utility, type: :boolean, render: false }) do
57
75
  attached.each do |atttached_atomes|
58
76
  delete_recursive(atttached_atomes)
59
77
  end
60
- # group.each do |el|
61
- # delete_recursive(el)
62
- # end
63
-
64
78
  touch(:remove)
65
79
  render(:delete, params)
66
- Universe.delete(@id)
80
+ Universe.delete(@aid)
81
+ end
82
+ elsif params[:force]
83
+ attached.each do |atttached_atomes|
84
+ # alert "attached : #{attached}"
85
+ delete_recursive(atttached_atomes, true)
67
86
  end
87
+ touch(:remove)
88
+ render(:delete, params)
89
+ # alert "Universe : #{Universe.atomes[@aid]}"
90
+ # alert "length = #{Universe.atomes.length}"
91
+ Universe.delete(@aid)
92
+ # alert "Universe : #{Universe.atomes.length}"
93
+
68
94
  else
69
95
  # the machine try to find the sub particle id and remove it eg a.delete(monitor: :my_monitor) remove the monitor
70
96
  # with id my_monitor
@@ -280,7 +280,7 @@ class Universe
280
280
  if @allow_localstorage.include? element
281
281
  JS.global[:localStorage].setItem(operation_timing, "{ #{id} => { #{operation} => { #{element} => #{params} } }, sync: false }")
282
282
  @history[@history.length] = { operation_timing => { id => { operation => { element => params } }, sync: false, time: Time.now } }
283
- puts "===> { #{id} => { #{operation} => { #{element} => #{params} } }, sync: false }"
283
+ # puts "===> { #{id} => { #{operation} => { #{element} => #{params} } }, sync: false }"
284
284
  end
285
285
 
286
286
 
data/lib/atome/version.rb CHANGED
@@ -2,5 +2,5 @@
2
2
 
3
3
  # return atome version
4
4
  class Atome
5
- VERSION = '0.5.7.1.8'
5
+ VERSION = '0.5.7.3.1'
6
6
  end