atome 0.5.6.2.1 → 0.5.6.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 695be1c2b746dd4a424e74ebb28ff18884fb207fb1de1bd8db9ea732b1fd7574
4
- data.tar.gz: 943340100b85b85ebb8c1d1af89801b89204c810452cb16a860ace32b3e47190
3
+ metadata.gz: 02c478a58bfcce998a040779efdc8970c38a1d5286f8ca942231132493707f7d
4
+ data.tar.gz: 930ebabe49f5824c66e03b3b1b8b53e1def6ad0ce26ff40f2110c07461970f8b
5
5
  SHA512:
6
- metadata.gz: 3cb8f32ad5373a51222e70c87261e5c8cc0d05a0038d2087a5e433aeacd08cdeacfb43fc692ac489d18d82a6471ce4bdced8e647cd1e10e97664bcf6c6bbdf4d
7
- data.tar.gz: bf36e8c816ebbd99fc36aee7d4dd94bbb324e1b5caf1017731e598e1423a0524ab55b0e13b060c8d6d67ab0c6cdaa0368b0d93e6d9e9479257bfec890788e6b0
6
+ metadata.gz: 9161e9c2364dd6eb8e85d44d93872ea43f52e241a19aac7f1f4697890b1d638faa0891a94e85d917a2f8e4e75e5e322170e1bbfab1223ea0d26c1ee32ee33797
7
+ data.tar.gz: 2136de3b80e45cff68ad2c0345baf11d2565473f591c27261c6f2942414ca5d4442338597ee4d29936bb306e707846da991337cd915535a2dce705fd6dc1756a
@@ -151,7 +151,7 @@ def init_database # this method is call from JS (atome/communication)
151
151
  particles = Universe.particle_list
152
152
  categories = Universe.categories
153
153
  atomes = Universe.atomes
154
- # puts "we are here!!"
154
+ puts "we are here!!"
155
155
  # particles.each do |particle, value|
156
156
  # value[:category] = :undefined if value[:category].nil?
157
157
  # A.message({ action: :init_db, particle: particle, type: value[:type], category: value[:category] })
@@ -159,12 +159,12 @@ def init_database # this method is call from JS (atome/communication)
159
159
  end
160
160
 
161
161
  def user_login
162
- user = Universe.current_user
163
- pass = Black_matter.password
164
- message({ action: :login, value: user }) do |msg|
165
- puts "-2 #{msg}"
162
+ # user = Universe.current_user
163
+ password = Black_matter.password
164
+ message({ action: :authentication, data: { email: 'jeezs@atome.one' } }) do |email|
165
+ puts "email received : #{email}"
166
166
  end
167
- message({ action: :pass, value: pass }) do |msg|
168
- puts "-1 #{msg}"
167
+ message({ action: :authorization, data: { password: password } }) do |p|
168
+ puts "2 : #{p}"
169
169
  end
170
170
  end
data/lib/atome/version.rb CHANGED
@@ -2,6 +2,6 @@
2
2
 
3
3
  # return atome version
4
4
  class Atome
5
- VERSION = '0.5.6.2.1'
5
+ VERSION = '0.5.6.2.3'
6
6
  end
7
7
 
@@ -1,6 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- # The class Universe is used to retrieve some data needed for the atome framework
3
+ # The class Universe is used to retrieve some data needed for the atome framework
4
4
  # per example you can retrieve the list of all available particles
5
5
  puts Universe.particle_list
6
6
  # this give at the date 14/11/2023 :
@@ -4,18 +4,21 @@ user_password = {global: :all_star, read: { atome: :all_star }, write: { atome:
4
4
 
5
5
  human({ id: :jeezs, login: true, password: user_password, data: { birthday: '10/05/2016' },selection: [], tag: { system: true } , attach: :user_view })
6
6
 
7
-
8
-
9
-
10
-
11
-
12
7
  c = box({ color: :yellow, left: 333 })
13
-
14
8
  c.touch(true) do
15
- c.message({message: 'cd ..;cd server;ls; pwd', action: :terminal })
16
- c.message({message: 'capture.rb', action: :file, option: :read })
17
- c.message({message: 'tototo.rb', action: :file, option: :write, value: :hello })
18
- # b.message({message: 'cd ..;cd server;ls; pwd'})
19
- # c = box({ color: :red, left: 333 })
9
+ c.message({data: 'cd ..;cd server;ls; pwd', action: :terminal }) do |result|
10
+ puts "shell command return: #{result}"
11
+ end
12
+ c.message({data: {source: 'capture.rb',operation: :read }, action: :file}) do |result|
13
+
14
+ puts "file read encoded_content: #{result[:data].gsub('\x23', '#')}"
15
+ end
16
+ c.message({ action: :file,data: {source: 'user_created_file.rb', operation: :write, value: :hello }})do |result|
17
+ puts "file creation result : #{result}"
18
+ end
19
+
20
+ A.message({ action: :terminal , data: 'cd ..;cd server;ls; pwd'}) do |result|
21
+ puts "result : #{result}"
22
+ end
20
23
  end
21
-
24
+ #
@@ -1,27 +1,6 @@
1
- # frozen_string_literal: true
1
+ # frozen_string_literal: true
2
2
 
3
- # If you need to specify another address for the server use A.server_adress
4
- A.server({ address: 'localhost:9292' , type: 'ws'})
5
- user_password = {global: :all_star, read: { atome: :all_star }, write: { atome: :all_star } }
6
-
7
- human({ id: :jeezs, login: true, password: user_password, data: { birthday: '10/05/2016' },selection: [], tag: { system: true } , attach: :user_view })
8
-
9
-
10
- #
11
- # b = box({ color: :red, id: :my_box })
12
- #
13
- # b.touch(true) do
14
- # b.connection('localhost:9292') do |params|
15
- # alert " the connection is : #{params}"
16
- # end
17
- # end
18
-
19
- b = box({ color: :yellow, left: 333 })
20
-
21
- b.touch(true) do
22
- b.message({message: 'cd ..;cd server;ls; pwd', action: :terminal })
23
- b.message({message: 'capture.rb', action: :file, option: :read })
24
- b.message({message: 'tototo.rb', action: :file, option: :write, value: :hello })
25
- # b.message({message: 'cd ..;cd server;ls; pwd'})
26
- # c = box({ color: :red, left: 333 })
27
- end
3
+ my_pass = Black_matter.encode('hell')
4
+ puts my_pass
5
+ checker = Black_matter.check_password('hello,', my_pass)
6
+ puts checker
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  # atome server
4
+
4
5
  require 'em/pure_ruby' if RUBY_PLATFORM == 'x64-mingw32'
5
6
  require 'fileutils'
6
7
  require '../src/utilities/aui'
@@ -14,301 +15,12 @@ require 'roda'
14
15
  require 'rufus-scheduler'
15
16
  require 'securerandom'
16
17
  require 'sequel'
17
-
18
- class EDen
19
-
20
- def self.db_access
21
- Database.connect_database
22
- end
23
-
24
- def self.terminal(cmd, option, ws, value, user, pass, message_id)
25
- { return: `#{cmd}`, message_id: message_id }
26
- end
27
-
28
- def self.pass(cmd, option, ws, value, user, pass, message_id)
29
- { return: 'password received', message_id: message_id }
30
- end
31
-
32
- def self.login(cmd, option, ws, value, user, pass, message_id)
33
- { return: 'login received', message_id: message_id }
34
- end
35
-
36
- def self.init_db(cmd, option, ws, value, user, pass, message_id)
37
- # Database.
38
- { return: 'database initialised', message_id: message_id }
39
- end
40
-
41
- def self.query(cmd, option, ws, value, user, pass, message_id)
42
- identity_table = db_access[cmd['table'].to_sym]
43
- result = identity_table.send(:all).send(:select)
44
- { action: :query, data: cmd['table'], return: "==> #{result}", message_id: message_id }
45
- end
46
-
47
- def self.insert(params, option, ws, value, user, pass, message_id)
48
- table = params['table'].to_sym
49
- particle = params['particle'].to_sym
50
- data = params['data']
51
- if db_access.table_exists?(table)
52
- schema = db_access.schema(table)
53
- if schema.any? { |col_def| col_def.first == particle }
54
- identity_table = db_access[table.to_sym]
55
- identity_table.insert(particle => data)
56
- { action: :insert, return: "column : #{particle}, in table : #{table}, updated with : #{data}", message_id: message_id }
57
- else
58
- { action: :insert, return: "column not found: #{particle.class}", message_id: message_id }
59
- end
60
- else
61
- { action: :insert, return: "table not found: #{table.class}", message_id: message_id }
62
-
63
- end
64
- end
65
-
66
- def self.file(source, operation, ws, value, user, pass, message_id)
67
- file_content = File.send(operation, source, value).to_s
68
- file_content = file_content.gsub("'", "\"")
69
- { return: "=> operation: #{operation}, source: #{source} , content : #{file_content}", message_id: message_id }
70
- end
71
-
72
- # return_message = EDen.safe_send(action_requested, data,option, current_user, user_pass)
73
-
74
- def self.safe_send(method_name, *args)
75
- method_sym = method_name.to_sym
76
- eden_methods = EDen.singleton_methods(false) - Object.singleton_methods
77
- if eden_methods.include?(method_sym)
78
- send(method_sym, *args)
79
- else
80
- { return: "forbidden action: #{method_name}" }
81
- end
82
- end
83
- end
18
+ require './eDen'
19
+ require './database'
20
+ require './extensions'
84
21
 
85
22
  Faye::WebSocket.load_adapter('puma')
86
23
 
87
- class String
88
- def is_json?
89
- begin
90
- !JSON.parse(self).nil?
91
- rescue
92
- false
93
- end
94
- end
95
- end
96
-
97
- class Database
98
-
99
- def self.table_exists?(table_name)
100
- # code below must be removed but not fpr now
101
- eden = Sequel.connect("sqlite://eden.sqlite3")
102
- if eden.table_exists?(table_name)
103
- puts "La table #{table_name} existe dans la base de données."
104
- else
105
- puts "La table suivante : #{table_name} n'existe pas dans la base de données."
106
- end
107
-
108
- end
109
-
110
- # def self.create_table(table_name)
111
- def self.connect_database
112
- if File.exist?("eden.sqlite3")
113
- eden = Sequel.connect("sqlite://eden.sqlite3")
114
- # now we test if the table exist
115
- table_exists?(:table_name)
116
- else
117
- eden = Sequel.connect("sqlite://eden.sqlite3")
118
- eden.create_table :atome do
119
- primary_key :atome_id
120
- String :creator
121
- end
122
-
123
- eden.create_table :communication do
124
- primary_key :communication_id
125
- String :connection
126
- JSON :data
127
- JSON :controller
128
- end
129
-
130
- ###################
131
-
132
- Sequel.extension :migration
133
-
134
- Sequel.migration do
135
- change do
136
- add_column :communication, :jesaispas, String
137
- end
138
- end.apply(eden, :up)
139
-
140
- ###################
141
-
142
- eden.create_table :effect do
143
- primary_key :effect_id
144
- Int :smooth
145
- Int :blur
146
- end
147
-
148
- eden.create_table :event do
149
- primary_key :event_id
150
- JSON :touch
151
- Boolean :play
152
- Boolean :pause
153
- Int :time
154
- Boolean :on
155
- Boolean :fullscreen
156
- Boolean :mute
157
- Boolean :drag
158
- Boolean :drop
159
- Boolean :over
160
- String :targets
161
- Boolean :start
162
- Boolean :stop
163
- Time :begin
164
- Time :end
165
- Int :duration
166
- Int :mass
167
- Int :damping
168
- Int :stiffness
169
- Int :velocity
170
- Boolean :repeat
171
- Boolean :ease
172
- Boolean :keyboard
173
- Boolean :resize
174
- Boolean :overflow
175
- end
176
-
177
- eden.create_table :geometry do
178
- primary_key :geometry_id
179
- Int :width
180
- Int :height
181
- Int :size
182
- end
183
-
184
- eden.create_table :hierarchy do
185
- primary_key :hierarchy_id
186
- String :attach
187
- String :attached
188
- String :apply
189
- String :affect
190
- String :detached
191
- String :collect
192
- end
193
-
194
- eden.create_table :identity do
195
- primary_key :identity_id
196
- String :real
197
- String :type
198
- Int :id
199
- String :name
200
- String :firstname
201
- String :email
202
- String :nickname
203
- Boolean :active
204
- String :markup
205
- String :bundle
206
- String :data
207
- String :category
208
- String :selection
209
- Boolean :selected
210
- String :format
211
- String :alien
212
- end
213
-
214
- eden.create_table :material do
215
- primary_key :material_id
216
- String :component
217
- Boolean :edit
218
- String :style
219
- Boolean :hide
220
- Boolean :remove
221
- JSON :classes
222
- Boolean :remove_classes
223
- Int :opacity
224
- String :definition
225
- Int :gradient
226
- Int :border
227
- end
228
-
229
- eden.create_table :property do
230
- primary_key :property_id
231
- String :red
232
- String :green
233
- String :blue
234
- String :alpha
235
- String :diffusion
236
- Boolean :clean
237
- String :insert
238
- Boolean :remove
239
- Int :sort
240
- end
241
-
242
- eden.create_table :security do
243
- primary_key :security_id
244
- String :password
245
- end
246
-
247
- eden.create_table :spatial do
248
- primary_key :spatial_id
249
- Int :left
250
- Int :right
251
- Int :top
252
- Int :bottom
253
- Int :rotate
254
- String :direction
255
- String :center
256
- Int :depth
257
- Int :position
258
- String :organise
259
- String :spacing
260
- Boolean :display
261
- String :layout
262
- end
263
-
264
- eden.create_table :time do
265
- primary_key :time_id
266
- JSON :markers
267
- end
268
-
269
- eden.create_table :utility do
270
- primary_key :utility_id
271
- String :renderers
272
- String :code
273
- Boolean :run
274
- Boolean :delete
275
- Boolean :clear
276
- String :path
277
- String :schedule
278
- String :read
279
- String :cursor
280
- String :preset
281
- JSON :relations
282
- JSON :tag
283
- String :web
284
- JSON :unit
285
- String :initialize
286
- String :login
287
- String :hypertext
288
- String :hyperedit
289
- String :terminal
290
- String :browse
291
- String :copies
292
- Int :temporary
293
- String :atomes
294
- String :match
295
- Boolean :invert
296
- String :option
297
- String :duplicate
298
- String :copy
299
- String :paste
300
- String :backup
301
- String :import
302
- String :compute
303
- String :get
304
- end
305
-
306
- end
307
- eden
308
- end
309
-
310
- end
311
-
312
24
  class App < Roda
313
25
  index_content = File.read("../src/index_server.html")
314
26
  opts[:root] = '../src'
@@ -317,7 +29,7 @@ class App < Roda
317
29
  r.root do
318
30
  if Faye::WebSocket.websocket?(r.env)
319
31
  ws = Faye::WebSocket.new(r.env)
320
- ws.on :open do |event|
32
+ ws.on :open do |_event|
321
33
  ws.send({ return: 'server ready' }.to_json)
322
34
  end
323
35
  ws.on(:message) do |event|
@@ -325,15 +37,10 @@ class App < Roda
325
37
  full_data = JSON.parse(json_string)
326
38
  data = full_data['data']
327
39
  action_requested = full_data['action']
328
- value = full_data['value']
329
- option = full_data['option']
330
- current_user = full_data['user']
331
40
  message_id = full_data['message_id']
332
- user_pass = full_data['pass']['global']
333
- return_message = EDen.safe_send(action_requested, data, option, ws, value, current_user, user_pass, message_id)
41
+ return_message = EDen.safe_send(action_requested, data, message_id)
334
42
  ws.send(return_message.to_json)
335
43
  end
336
-
337
44
  ws.on(:close) do |event|
338
45
  puts "server closed with status #{event.code}"
339
46
  end
@@ -343,4 +50,4 @@ class App < Roda
343
50
  end
344
51
  end
345
52
 
346
- end
53
+ end
@@ -0,0 +1,217 @@
1
+ # frozen_string_literal: true
2
+
3
+ # database handling for eDen Db
4
+
5
+ class Database
6
+
7
+ def self.table_exists?(table_name)
8
+ eden = Sequel.connect("sqlite://eden.sqlite3")
9
+ if eden.table_exists?(table_name)
10
+ puts "La table #{table_name} existe dans la base de données."
11
+ else
12
+ puts "La table suivante : #{table_name} n'existe pas dans la base de données."
13
+ end
14
+
15
+ end
16
+
17
+ # def self.create_table(table_name)
18
+ def self.connect_database
19
+ if File.exist?("eden.sqlite3")
20
+ eden = Sequel.connect("sqlite://eden.sqlite3")
21
+ # now we test if the table exist
22
+ table_exists?(:table_name)
23
+ else
24
+ eden = Sequel.connect("sqlite://eden.sqlite3")
25
+ eden.create_table :atome do
26
+ primary_key :atome_id
27
+ String :creator
28
+ end
29
+
30
+ eden.create_table :communication do
31
+ primary_key :communication_id
32
+ String :connection
33
+ JSON :data
34
+ JSON :controller
35
+ end
36
+
37
+ ###################
38
+
39
+ Sequel.extension :migration
40
+
41
+ Sequel.migration do
42
+ change do
43
+ add_column :communication, :jesaispas, String
44
+ end
45
+ end.apply(eden, :up)
46
+
47
+ ###################
48
+
49
+ eden.create_table :effect do
50
+ primary_key :effect_id
51
+ Int :smooth
52
+ Int :blur
53
+ end
54
+
55
+ eden.create_table :event do
56
+ primary_key :event_id
57
+ JSON :touch
58
+ Boolean :play
59
+ Boolean :pause
60
+ Int :time
61
+ Boolean :on
62
+ Boolean :fullscreen
63
+ Boolean :mute
64
+ Boolean :drag
65
+ Boolean :drop
66
+ Boolean :over
67
+ String :targets
68
+ Boolean :start
69
+ Boolean :stop
70
+ Time :begin
71
+ Time :end
72
+ Int :duration
73
+ Int :mass
74
+ Int :damping
75
+ Int :stiffness
76
+ Int :velocity
77
+ Boolean :repeat
78
+ Boolean :ease
79
+ Boolean :keyboard
80
+ Boolean :resize
81
+ Boolean :overflow
82
+ end
83
+
84
+ eden.create_table :geometry do
85
+ primary_key :geometry_id
86
+ Int :width
87
+ Int :height
88
+ Int :size
89
+ end
90
+
91
+ eden.create_table :hierarchy do
92
+ primary_key :hierarchy_id
93
+ String :attach
94
+ String :attached
95
+ String :apply
96
+ String :affect
97
+ String :detached
98
+ String :collect
99
+ end
100
+
101
+ eden.create_table :identity do
102
+ primary_key :identity_id
103
+ String :real
104
+ String :type
105
+ Int :id
106
+ String :name
107
+ String :firstname
108
+ String :email
109
+ String :nickname
110
+ Boolean :active
111
+ String :markup
112
+ String :bundle
113
+ String :data
114
+ String :category
115
+ String :selection
116
+ Boolean :selected
117
+ String :format
118
+ String :alien
119
+ end
120
+
121
+ eden.create_table :material do
122
+ primary_key :material_id
123
+ String :component
124
+ Boolean :edit
125
+ String :style
126
+ Boolean :hide
127
+ Boolean :remove
128
+ JSON :classes
129
+ Boolean :remove_classes
130
+ Int :opacity
131
+ String :definition
132
+ Int :gradient
133
+ Int :border
134
+ end
135
+
136
+ eden.create_table :property do
137
+ primary_key :property_id
138
+ String :red
139
+ String :green
140
+ String :blue
141
+ String :alpha
142
+ String :diffusion
143
+ Boolean :clean
144
+ String :insert
145
+ Boolean :remove
146
+ Int :sort
147
+ end
148
+
149
+ eden.create_table :security do
150
+ primary_key :security_id
151
+ String :password
152
+ end
153
+
154
+ eden.create_table :spatial do
155
+ primary_key :spatial_id
156
+ Int :left
157
+ Int :right
158
+ Int :top
159
+ Int :bottom
160
+ Int :rotate
161
+ String :direction
162
+ String :center
163
+ Int :depth
164
+ Int :position
165
+ String :organise
166
+ String :spacing
167
+ Boolean :display
168
+ String :layout
169
+ end
170
+
171
+ eden.create_table :time do
172
+ primary_key :time_id
173
+ JSON :markers
174
+ end
175
+
176
+ eden.create_table :utility do
177
+ primary_key :utility_id
178
+ String :renderers
179
+ String :code
180
+ Boolean :run
181
+ Boolean :delete
182
+ Boolean :clear
183
+ String :path
184
+ String :schedule
185
+ String :read
186
+ String :cursor
187
+ String :preset
188
+ JSON :relations
189
+ JSON :tag
190
+ String :web
191
+ JSON :unit
192
+ String :initialize
193
+ String :login
194
+ String :hypertext
195
+ String :hyperedit
196
+ String :terminal
197
+ String :browse
198
+ String :copies
199
+ Int :temporary
200
+ String :atomes
201
+ String :match
202
+ Boolean :invert
203
+ String :option
204
+ String :duplicate
205
+ String :copy
206
+ String :paste
207
+ String :backup
208
+ String :import
209
+ String :compute
210
+ String :get
211
+ end
212
+
213
+ end
214
+ eden
215
+ end
216
+
217
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ # server utils to handle eDen Db
4
+
5
+ class EDen
6
+
7
+ def self.db_access
8
+ Database.connect_database
9
+ end
10
+
11
+ def self.terminal(data, message_id)
12
+ { data: { message: `#{data}` }, message_id: message_id }
13
+ end
14
+
15
+ def self.authorization(_data, message_id)
16
+ { data: { message: 'password received'}, message_id: message_id }
17
+ end
18
+
19
+ def self.authentication(_data, message_id)
20
+ { data: { message: 'login received' }, message_id: message_id }
21
+ end
22
+
23
+ def self.init_db(_data, message_id)
24
+ { data: { message: 'database initialised' }, message_id: message_id }
25
+ end
26
+
27
+ def self.query(data, message_id)
28
+ identity_table = db_access[data['table'].to_sym]
29
+ result = identity_table.send(:all).send(:select)
30
+ { data: { table: data['table'], infos: result }, message_id: message_id }
31
+ end
32
+
33
+ def self.insert(data, message_id)
34
+ table = data['table'].to_sym
35
+ particle = data['particle'].to_sym
36
+ data = data['data']
37
+ if db_access.table_exists?(table)
38
+ schema = db_access.schema(table)
39
+ if schema.any? { |col_def| col_def.first == particle }
40
+ identity_table = db_access[table.to_sym]
41
+ identity_table.insert(particle => data)
42
+ { data: { message: "column : #{particle}, in table : #{table}, updated with : #{data}"}, message_id: message_id }
43
+ else
44
+ { data: { message: "column not found: #{particle.class}" }, message_id: message_id }
45
+ end
46
+ else
47
+ { data: { message: "table not found: #{table.class}" }, message_id: message_id }
48
+
49
+ end
50
+ end
51
+
52
+ def self.file(data, message_id)
53
+
54
+ file_content = File.send(data['operation'], data['source'], data['value']).to_s
55
+ file_content = file_content.gsub("'", "\"")
56
+
57
+ file_content = file_content.gsub('#', '\x23')
58
+ { data: "=> operation: #{data['operation']}, source: #{data['source']}, content: #{file_content}", message_id: message_id }
59
+ end
60
+
61
+ def self.safe_send(method_name, data, message_id)
62
+ method_sym = method_name.to_sym
63
+ send(method_sym, data, message_id)
64
+ end
65
+ end
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Object extensions for atome
4
+
5
+ class String
6
+ def is_json?
7
+ begin
8
+ !JSON.parse(self).nil?
9
+ rescue
10
+ false
11
+ end
12
+ end
13
+ end
@@ -70,6 +70,7 @@ const communication = {
70
70
  rubyVMCallback("A.user_login");
71
71
  };
72
72
  this.websocket.onmessage = function (event) {
73
+ // console.log(event.data)
73
74
  rubyVMCallback("A.server_receiver(" + event.data + ")");
74
75
  };
75
76
 
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.6.2.1
4
+ version: 0.5.6.2.3
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-02-13 00:00:00.000000000 Z
11
+ date: 2024-02-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: artoo
@@ -622,6 +622,9 @@ files:
622
622
  - vendor/assets/server/atome_server_wasm.rb
623
623
  - vendor/assets/server/capture.rb
624
624
  - vendor/assets/server/config.ru
625
+ - vendor/assets/server/database.rb
626
+ - vendor/assets/server/eDen.rb
627
+ - vendor/assets/server/extensions.rb
625
628
  - vendor/assets/src-tauri/.gitignore
626
629
  - vendor/assets/src-tauri/Cargo.toml
627
630
  - vendor/assets/src-tauri/build.rs