atome 0.5.7.1.4 → 0.5.7.1.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/atome.gemspec +2 -2
- data/lib/atome/extensions/atome.rb +48 -0
- data/lib/atome/genesis/particles/event.rb +24 -2
- data/lib/atome/genesis/sparkle.rb +7 -12
- data/lib/atome/utilities/utilities.rb +0 -10
- data/lib/atome/version.rb +1 -1
- data/lib/atome.rb +2 -1
- data/lib/atome_relative.rb +2 -1
- data/lib/molecules/intuition/tools.rb +359 -0
- data/lib/molecules/intuition/{utillities.rb → utilities.rb} +17 -10
- data/lib/renderers/html/html.rb +25 -32
- data/vendor/assets/application/examples/above_below_before_after.rb +22 -0
- data/vendor/assets/application/examples/animation.rb +29 -1
- data/vendor/assets/application/examples/audio.rb +10 -26
- data/vendor/assets/application/examples/test.rb +196 -150
- data/vendor/assets/application/examples/tools.rb +7 -384
- data/vendor/assets/server/database.rb +6 -14
- data/vendor/assets/server/eDen.rb +1 -1
- metadata +19 -17
@@ -1,379 +1,5 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
size = 33
|
4
|
-
smooth = 3
|
5
|
-
shadow({
|
6
|
-
id: :tool_shade,
|
7
|
-
left: 3, top: 3, blur: 3,
|
8
|
-
invert: false,
|
9
|
-
red: 0, green: 0, blue: 0, alpha: 0.6
|
10
|
-
})
|
11
|
-
|
12
|
-
color({ id: :tool_inactive_color, red: 1, green: 1, blue: 1, alpha: 0.12 })
|
13
|
-
color({ id: :tool_active_color, red: 1, green: 1, blue: 1, alpha: 0.3 })
|
14
|
-
border({ id: :tool_box_border, thickness: 1, red: 1, green: 1, blue: 1, alpha: 0.06, pattern: :solid, inside: true })
|
15
|
-
# Tool's style object container below
|
16
|
-
element({ aid: :toolbox_style, id: :toolbox_style, data: {
|
17
|
-
color: :gray,
|
18
|
-
size: size,
|
19
|
-
smooth: smooth
|
20
|
-
} })
|
21
|
-
|
22
|
-
class Atome
|
23
|
-
class << self
|
24
|
-
def init_intuition
|
25
|
-
Atome.start_click_analysis
|
26
|
-
root = Universe.tools_root
|
27
|
-
root.each_with_index do |root_tool, index|
|
28
|
-
tools_scheme = Universe.tools[root_tool]
|
29
|
-
A.build_tool({ name: root_tool, scheme: tools_scheme, index: index })
|
30
|
-
end
|
31
|
-
|
32
|
-
# Universe.tools.each_with_index do |(tool_name, bloc), index|
|
33
|
-
#
|
34
|
-
# A.build_tool({ name: tool_name, index: index }, &bloc)
|
35
|
-
# end
|
36
|
-
end
|
37
|
-
|
38
|
-
def selection
|
39
|
-
grab(Universe.current_user).selection.collect
|
40
|
-
end
|
41
|
-
|
42
|
-
def activate_click_analysis
|
43
|
-
|
44
|
-
# the condition below avoid touchdown analysis accumulation
|
45
|
-
unless @click_analysis_active
|
46
|
-
# this method analyse all object under the touchdown to find the first user objet and return it's id
|
47
|
-
@click_analysis = lambda { |native_event|
|
48
|
-
# the instance variable below check if we can apply tool (cf: if the atome we don't want to apply tool)
|
49
|
-
if Universe.allow_tool_operations
|
50
|
-
event = Native(native_event)
|
51
|
-
x = event[:clientX]
|
52
|
-
y = event[:clientY]
|
53
|
-
elements = JS.global[:document].elementsFromPoint(x, y)
|
54
|
-
elements.to_a.each do |atome_touched|
|
55
|
-
id_found = atome_touched[:id].to_s
|
56
|
-
atome_found = grab(id_found)
|
57
|
-
unless atome_found && atome_found.tag[:system]
|
58
|
-
|
59
|
-
# if atome_found
|
60
|
-
Universe.active_tools.each do |tool|
|
61
|
-
apply_tool(tool, atome_found, event)
|
62
|
-
end
|
63
|
-
break
|
64
|
-
end
|
65
|
-
end
|
66
|
-
else
|
67
|
-
Universe.allow_tool_operations = true
|
68
|
-
end
|
69
|
-
}
|
70
|
-
@click_analysis_active = true
|
71
|
-
end
|
72
|
-
|
73
|
-
end
|
74
|
-
|
75
|
-
def de_activate_click_analysis
|
76
|
-
@click_analysis = nil
|
77
|
-
@click_analysis_active = false
|
78
|
-
end
|
79
|
-
|
80
|
-
def start_click_analysis
|
81
|
-
@click_analysis_active = false
|
82
|
-
JS.global[:document].addEventListener('mouseup') do |native_event|
|
83
|
-
Atome.instance_exec(native_event, &@click_analysis) if @click_analysis.is_a?(Proc)
|
84
|
-
end
|
85
|
-
end
|
86
|
-
|
87
|
-
def alteration(current_tool, tool_actions, atome_touched, a_event)
|
88
|
-
if atome_touched
|
89
|
-
storage_allowed = Universe.allow_localstorage
|
90
|
-
action_found = tool_actions[:action]
|
91
|
-
pre = tool_actions[:pre]
|
92
|
-
post = tool_actions[:post]
|
93
|
-
params = { current_tool: current_tool, atome_touched: atome_touched, event: a_event }
|
94
|
-
action_found.each do |part, val|
|
95
|
-
Universe.allow_localstorage = false
|
96
|
-
#################################
|
97
|
-
touch_found = atome_touched.touch
|
98
|
-
touch_procs=atome_touched.instance_variable_get("@touch_code")
|
99
|
-
resize_found = atome_touched.resize
|
100
|
-
resize_procs=atome_touched.instance_variable_get("@resize_code")
|
101
|
-
current_tool.data[:prev_states][atome_touched] = {events: { touch: touch_found, resize: resize_found },
|
102
|
-
procs: {touch_code: touch_procs, resize_code: resize_procs } }
|
103
|
-
|
104
|
-
#################################
|
105
|
-
current_tool.instance_exec(params, &pre) if pre.is_a? Proc
|
106
|
-
Universe.allow_localstorage = storage_allowed
|
107
|
-
if current_tool.data[:allow_alteration]
|
108
|
-
atome_touched.send(part, val)
|
109
|
-
current_tool.data[:treated] << atome_touched
|
110
|
-
end
|
111
|
-
current_tool.instance_exec(params, &post) if post.is_a? Proc
|
112
|
-
end
|
113
|
-
|
114
|
-
end
|
115
|
-
end
|
116
|
-
|
117
|
-
def creation(current_tool, tool_actions, atome_touched, a_event)
|
118
|
-
# we store prev_local_storage prior to lock it to prevent unwanted logs
|
119
|
-
# prev_local_storage=Universe.allow_localstorage()
|
120
|
-
storage_allowed = Universe.allow_localstorage
|
121
|
-
Universe.allow_localstorage = false
|
122
|
-
|
123
|
-
action_found = tool_actions[:action]
|
124
|
-
pre = tool_actions[:pre]
|
125
|
-
post = tool_actions[:post]
|
126
|
-
params = { current_tool: current_tool, atome_touched: atome_touched, event: a_event }
|
127
|
-
|
128
|
-
action_found.each do |atome, particle|
|
129
|
-
current_tool.instance_exec(params, &pre) if pre.is_a? Proc
|
130
|
-
temp_val = particle.merge({ resize: true, drag: true, top: a_event[:pageY].to_i, left: a_event[:pageX].to_i })
|
131
|
-
if current_tool.data[:allow_creation]
|
132
|
-
# uncomment the line below if you want to attach to current atome
|
133
|
-
if atome_touched
|
134
|
-
new_atome = atome_touched.send(atome, temp_val)
|
135
|
-
else
|
136
|
-
new_atome = grab(:view).send(atome, temp_val)
|
137
|
-
end
|
138
|
-
# current_tool.data[:treated] << new_atome
|
139
|
-
current_tool.data[:created] << new_atome
|
140
|
-
params.delete(:atome_touched)
|
141
|
-
params[new_atome: new_atome]
|
142
|
-
Universe.allow_localstorage = [atome]
|
143
|
-
Universe.historicize(new_atome.aid, :write, atome, particle)
|
144
|
-
end
|
145
|
-
|
146
|
-
end
|
147
|
-
current_tool.instance_exec(params, &post) if post.is_a? Proc
|
148
|
-
# we restore prev_local_storage to allow logs of drag and resize ...
|
149
|
-
Universe.allow_localstorage = storage_allowed
|
150
|
-
end
|
151
|
-
|
152
|
-
def apply_tool(tool, atome_touched, a_event)
|
153
|
-
current_tool = grab(tool)
|
154
|
-
tool_actions = current_tool.data
|
155
|
-
method_found = tool_actions[:method]
|
156
|
-
unless method_found
|
157
|
-
method_found = :alteration
|
158
|
-
tool_actions[:action] = { noop: true }
|
159
|
-
current_tool.data = tool_actions
|
160
|
-
end
|
161
|
-
|
162
|
-
send(method_found, current_tool, tool_actions, atome_touched, a_event)
|
163
|
-
end
|
164
|
-
|
165
|
-
end
|
166
|
-
|
167
|
-
def noop(_p)
|
168
|
-
# this method is used by tools when no treatment is needed
|
169
|
-
end
|
170
|
-
|
171
|
-
def set_action_on_touch(&action)
|
172
|
-
@touch_action = action
|
173
|
-
|
174
|
-
end
|
175
|
-
|
176
|
-
def remove_get_atome_on_touch
|
177
|
-
@touch_action = nil
|
178
|
-
end
|
179
|
-
|
180
|
-
def build_tool(params)
|
181
|
-
label = params[:name]
|
182
|
-
tool_name = "#{params[:name]}_tool"
|
183
|
-
index = params[:index]
|
184
|
-
orientation_wanted = :sn
|
185
|
-
tool_scheme = params[:scheme]
|
186
|
-
color({ id: :active_tool_col, alpha: 1, red: 1, green: 1, blue: 1 })
|
187
|
-
color({ id: :inactive_tool_col, alpha: 0.6 })
|
188
|
-
grab(:intuition).storage[:tool_open] ||= []
|
189
|
-
grab(:intuition).storage[:tool_open] << tool_name
|
190
|
-
size = grab(:toolbox_style).data[:size]
|
191
|
-
smooth = grab(:toolbox_style).data[:smooth]
|
192
|
-
case orientation_wanted
|
193
|
-
when :sn
|
194
|
-
top = :auto
|
195
|
-
bottom = index * (size + 3)
|
196
|
-
left = 0
|
197
|
-
right = :auto
|
198
|
-
when :ns
|
199
|
-
when :ew
|
200
|
-
when :we
|
201
|
-
else
|
202
|
-
#
|
203
|
-
end
|
204
|
-
|
205
|
-
# tool creation
|
206
|
-
if tool_scheme[:creation]
|
207
|
-
action = tool_scheme[:creation]
|
208
|
-
method = :creation
|
209
|
-
end
|
210
|
-
if tool_scheme[:alteration]
|
211
|
-
action = tool_scheme[:alteration]
|
212
|
-
method = :alteration
|
213
|
-
end
|
214
|
-
|
215
|
-
tool = grab(:intuition).box({ id: tool_name,
|
216
|
-
tag: { system: true },
|
217
|
-
# orientation: orientation_wanted,
|
218
|
-
top: top,
|
219
|
-
bottom: bottom,
|
220
|
-
left: left,
|
221
|
-
right: right,
|
222
|
-
width: size,
|
223
|
-
height: size,
|
224
|
-
smooth: smooth,
|
225
|
-
apply: [:tool_inactive_color, :tool_box_border, :tool_shade],
|
226
|
-
state: :closed,
|
227
|
-
data: { method: method,
|
228
|
-
action: action,
|
229
|
-
allow_alteration: true,
|
230
|
-
allow_creation: true,
|
231
|
-
# activation: tool_scheme[:activation],
|
232
|
-
# inactivation: tool_scheme[:inactivation], zone: tool_scheme[:zone],
|
233
|
-
post: tool_scheme[:post],
|
234
|
-
pre: tool_scheme[:pre],
|
235
|
-
}
|
236
|
-
|
237
|
-
})
|
238
|
-
tool.vector({ tag: { system: true }, left: 9, top: :auto, bottom: 9, width: 18, height: 18, id: "#{tool_name}_icon" })
|
239
|
-
tool.text({ tag: { system: true }, data: label, component: { size: 9 }, color: :grey, id: "#{tool_name}_label" })
|
240
|
-
code_for_zone = tool_scheme[:zone]
|
241
|
-
tool.instance_exec(tool, &code_for_zone) if code_for_zone.is_a? Proc
|
242
|
-
tool.touch(true) do
|
243
|
-
# we add all specific tool actions to @tools_actions_to_exec hash
|
244
|
-
# we set allow_tool_operations to false to ignore tool operation when clicking on a tool
|
245
|
-
Universe.allow_tool_operations = false
|
246
|
-
# we create the creation_layer if not already exist
|
247
|
-
tick(tool_name)
|
248
|
-
# active code exec
|
249
|
-
if tick[tool_name] == 1 # first click
|
250
|
-
events_allow = [:top, :left, :right, :bottom, :width, :height]
|
251
|
-
alterations = tool_scheme[:alteration] ? tool_scheme[:alteration].keys : []
|
252
|
-
creations = tool_scheme[:creation] ? tool_scheme[:creation].keys : []
|
253
|
-
prev_auth = Universe.allow_localstorage ||= []
|
254
|
-
storage_allowed = events_allow.concat(alterations).concat(creations).concat(prev_auth).uniq
|
255
|
-
Universe.allow_localstorage = storage_allowed
|
256
|
-
# we set edit mode to true (this allow to prevent user atome to respond from click)
|
257
|
-
Universe.edit_mode = true
|
258
|
-
Universe.active_tools << tool_name
|
259
|
-
# init the tool
|
260
|
-
tool.data[:treated] = []
|
261
|
-
tool.data[:created] = []
|
262
|
-
tool.data[:prev_states] = {}
|
263
|
-
# generic behavior
|
264
|
-
tool.apply(:active_tool_col)
|
265
|
-
# activation code
|
266
|
-
activation_code = tool_scheme[:activation]
|
267
|
-
tool.instance_exec(&activation_code) if activation_code.is_a? Proc
|
268
|
-
# below we the particles of selected atomes to feed tools values
|
269
|
-
# possibility 1 (pipette like):
|
270
|
-
# now we get the values from selected atomes
|
271
|
-
Atome.selection.each do |atome_id_to_treat|
|
272
|
-
tool.data[:action].each do |particle_req, value_f|
|
273
|
-
unless Universe.atome_preset
|
274
|
-
value_found = grab(atome_id_to_treat).send(particle_req)
|
275
|
-
if value_found
|
276
|
-
tool.data[:action][particle_req] = value_found
|
277
|
-
else
|
278
|
-
end
|
279
|
-
end
|
280
|
-
end
|
281
|
-
end
|
282
|
-
# possibility 2 (immediate apply):
|
283
|
-
allow_creation = tool.data[:allow_creation]
|
284
|
-
allow_alteration = tool.data[:allow_alteration]
|
285
|
-
Atome.selection.each do |atome_id_to_treat|
|
286
|
-
atome_found = grab(atome_id_to_treat)
|
287
|
-
event = { pageX: 0, pageY: 0, clientX: 0, clientY: 0 }
|
288
|
-
Atome.apply_tool(tool_name, atome_found, event)
|
289
|
-
end unless tool_name.to_sym == :select_tool || !allow_creation || !allow_alteration
|
290
|
-
|
291
|
-
# activate tool analysis test
|
292
|
-
Atome.activate_click_analysis
|
293
|
-
else
|
294
|
-
Universe.allow_localstorage = false
|
295
|
-
# when closing delete tools action from tool_actions_to_exec
|
296
|
-
Universe.active_tools.delete(tool_name)
|
297
|
-
# we check if all tools are inactive if so we set edit_mode to false
|
298
|
-
if Universe.active_tools.length == 0
|
299
|
-
Atome.de_activate_click_analysis
|
300
|
-
Universe.edit_mode = false
|
301
|
-
end
|
302
|
-
|
303
|
-
inactivation_code = tool_scheme[:inactivation]
|
304
|
-
tool.instance_exec(tool.data, &inactivation_code) if inactivation_code.is_a? Proc
|
305
|
-
# end if tool_content && tool_content[:inactive]
|
306
|
-
|
307
|
-
# generic behavior
|
308
|
-
# we remove touch and resize binding on newly created atomes
|
309
|
-
tool.apply(:inactive_tool_col)
|
310
|
-
tool.data[:created].each do |new_atome|
|
311
|
-
new_atome.drag(false)
|
312
|
-
new_atome.resize(:remove)
|
313
|
-
end
|
314
|
-
################################
|
315
|
-
# we restore prev touch and resize
|
316
|
-
tool.data[:prev_states].each do |atome_f, prev_par|
|
317
|
-
puts prev_par
|
318
|
-
|
319
|
-
# params[:events].each do |part_f, val_f|
|
320
|
-
# # alert "@#{part_f}, #{part_f}"
|
321
|
-
# atome_f.send(part_f, val_f)
|
322
|
-
# end
|
323
|
-
# alert "--> params : #{params[:events]}"
|
324
|
-
# alert "--> procs : #{params[:procs][params[:events]]}"
|
325
|
-
# atome_f.touch(false)
|
326
|
-
# atome_f.touch(true) do
|
327
|
-
# alert :kool
|
328
|
-
# end
|
329
|
-
# alert params[:procs]
|
330
|
-
# params[:procs].each do |var_n, procs_f|
|
331
|
-
# # procs_f.each do |action_f, proc|
|
332
|
-
# # # puts "#{var_n}==> #{action_f}, #{proc}"
|
333
|
-
# # end
|
334
|
-
# puts "==> #{var_n}, #{proc_f}"
|
335
|
-
# # atome_f.instance_variable_set("@#{var_n}", proc_f)
|
336
|
-
# end
|
337
|
-
# atome_f.touch(false)
|
338
|
-
# alert "#{atome_f.touch} : #{atome_f.instance_variable_get("@touch_code")}"
|
339
|
-
end
|
340
|
-
|
341
|
-
# atome_f.touch(touch_found)
|
342
|
-
# atome_f.resize(resize_found)
|
343
|
-
# inactivation code
|
344
|
-
#################################
|
345
|
-
tick[tool_name] = 0
|
346
|
-
end
|
347
|
-
end
|
348
|
-
end
|
349
|
-
end
|
350
|
-
|
351
|
-
module Intuition
|
352
|
-
class << self
|
353
|
-
@toolbox = { impulse: [:capture_tool, :communication_tool, :creation_tool, :view_tool, :time_tool, :find_tool, :home_tool],
|
354
|
-
capture_tool: [:microphone_tool, :camera_tool,]
|
355
|
-
}
|
356
|
-
|
357
|
-
def intuition_int8
|
358
|
-
# tool taxonomy and list
|
359
|
-
{
|
360
|
-
capture: { int8: { french: :enregistrement, english: :record, german: :datensatz } },
|
361
|
-
communication: { french: :communication, english: :communication, german: :communication },
|
362
|
-
tool: { french: :outils, english: :tools, german: :werkzeuge },
|
363
|
-
view: { french: :vue, english: :view, german: :aussicht },
|
364
|
-
time: { french: :horloge, english: :clock, german: :Uhr },
|
365
|
-
find: { french: :trouve, english: :find, german: :finden },
|
366
|
-
home: { french: :accueil, english: :home, german: :zuhause },
|
367
|
-
code: { french: :code, english: :code, german: :code },
|
368
|
-
impulse: { french: :impulse, english: :impulse, german: :impulse },
|
369
|
-
}
|
370
|
-
end
|
371
|
-
|
372
|
-
end
|
373
|
-
|
374
|
-
end
|
375
|
-
|
376
|
-
# ##############################################################################################
|
377
3
|
|
378
4
|
new({ tool: :blur }) do |params|
|
379
5
|
|
@@ -518,8 +144,8 @@ new({ tool: :move }) do |params|
|
|
518
144
|
# if Atome.selection.instance_of? Array
|
519
145
|
# end
|
520
146
|
Atome.selection.each do |atome_id_to_treat|
|
521
|
-
|
522
|
-
|
147
|
+
# # # reinit first to avoid multiple drag event
|
148
|
+
# # grab(atome_id_to_treat).drag(false)
|
523
149
|
end
|
524
150
|
# drag_remove
|
525
151
|
# puts :alteration_tool_code_activated
|
@@ -585,11 +211,9 @@ end
|
|
585
211
|
|
586
212
|
new({tool: :test}) do
|
587
213
|
active_code = lambda {
|
588
|
-
|
589
|
-
b=Object.box
|
590
|
-
# b=grab(:view).box
|
214
|
+
b=grab(:view).box({})
|
591
215
|
b.touch(true) do
|
592
|
-
|
216
|
+
alert :kool
|
593
217
|
end
|
594
218
|
}
|
595
219
|
# active_code=:tito
|
@@ -597,10 +221,9 @@ new({tool: :test}) do
|
|
597
221
|
end
|
598
222
|
|
599
223
|
|
600
|
-
|
601
|
-
Universe.tools_root=[:test]
|
602
|
-
|
603
|
-
|
224
|
+
Universe.tools_root=[:box, :blur, :drag, :rotate, :select, :move,:project]
|
225
|
+
# Universe.tools_root=[:test]
|
226
|
+
Atome.init_intuition
|
604
227
|
|
605
228
|
|
606
229
|
|
@@ -32,21 +32,9 @@ class Database
|
|
32
32
|
end
|
33
33
|
end
|
34
34
|
|
35
|
-
# def create_column(table, column_name, type)
|
36
|
-
# eden = Sequel.connect("sqlite://eden.sqlite3")
|
37
|
-
# if eden.table_exists?(table)
|
38
|
-
# unless eden.schema(table).any? { |column| column.first == column_name }
|
39
|
-
# Sequel.migration do
|
40
|
-
# change do
|
41
|
-
# add_column table, column_name, type
|
42
|
-
# end
|
43
|
-
# end.apply(eden, :up)
|
44
|
-
# end
|
45
|
-
# end
|
46
|
-
# end
|
47
35
|
def create_column(table, column_name, type)
|
48
36
|
eden = Sequel.connect("sqlite://eden.sqlite3")
|
49
|
-
if eden.table_exists?(table)
|
37
|
+
if eden.table_exists?(table) || !eden.schema(table).any? { |col| col[0] == column_name }
|
50
38
|
begin
|
51
39
|
Sequel.migration do
|
52
40
|
change do
|
@@ -54,10 +42,14 @@ class Database
|
|
54
42
|
end
|
55
43
|
end.apply(eden, :up)
|
56
44
|
rescue Sequel::DatabaseError => e
|
57
|
-
puts "
|
45
|
+
puts "column #{e.message} already exist"
|
58
46
|
end
|
59
47
|
end
|
48
|
+
|
60
49
|
end
|
50
|
+
|
51
|
+
|
52
|
+
|
61
53
|
end
|
62
54
|
|
63
55
|
end
|
@@ -234,7 +234,7 @@ class EDen
|
|
234
234
|
{ data: { message: 'database_ready' }, message_id: message_id }
|
235
235
|
end
|
236
236
|
|
237
|
-
def
|
237
|
+
def create_db_table(data, message_id, ws)
|
238
238
|
table = data['table']
|
239
239
|
type = data['type']
|
240
240
|
primary = data['primary']
|
metadata
CHANGED
@@ -1,29 +1,15 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: atome
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.7.1.
|
4
|
+
version: 0.5.7.1.7
|
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-05-
|
11
|
+
date: 2024-05-30 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
|
-
- !ruby/object:Gem::Dependency
|
14
|
-
name: artoo
|
15
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
-
requirements:
|
17
|
-
- - "~>"
|
18
|
-
- !ruby/object:Gem::Version
|
19
|
-
version: 1.8.2
|
20
|
-
type: :runtime
|
21
|
-
prerelease: false
|
22
|
-
version_requirements: !ruby/object:Gem::Requirement
|
23
|
-
requirements:
|
24
|
-
- - "~>"
|
25
|
-
- !ruby/object:Gem::Version
|
26
|
-
version: 1.8.2
|
27
13
|
- !ruby/object:Gem::Dependency
|
28
14
|
name: eventmachine
|
29
15
|
requirement: !ruby/object:Gem::Requirement
|
@@ -374,6 +360,20 @@ dependencies:
|
|
374
360
|
- - "~>"
|
375
361
|
- !ruby/object:Gem::Version
|
376
362
|
version: 0.5.0
|
363
|
+
- !ruby/object:Gem::Dependency
|
364
|
+
name: pry
|
365
|
+
requirement: !ruby/object:Gem::Requirement
|
366
|
+
requirements:
|
367
|
+
- - ">="
|
368
|
+
- !ruby/object:Gem::Version
|
369
|
+
version: 0.14.2
|
370
|
+
type: :runtime
|
371
|
+
prerelease: false
|
372
|
+
version_requirements: !ruby/object:Gem::Requirement
|
373
|
+
requirements:
|
374
|
+
- - ">="
|
375
|
+
- !ruby/object:Gem::Version
|
376
|
+
version: 0.14.2
|
377
377
|
description: the creative framework.
|
378
378
|
email:
|
379
379
|
- jeezs@atome.one
|
@@ -479,7 +479,8 @@ files:
|
|
479
479
|
- lib/molecules/init.rb
|
480
480
|
- lib/molecules/intuition/_deprecated_inputs.rb
|
481
481
|
- lib/molecules/intuition/_deprecated_toolbox.rb
|
482
|
-
- lib/molecules/intuition/
|
482
|
+
- lib/molecules/intuition/tools.rb
|
483
|
+
- lib/molecules/intuition/utilities.rb
|
483
484
|
- lib/platform_specific/opal/atome_opal_extensions.rb
|
484
485
|
- lib/platform_specific/opal/extensions/color.rb
|
485
486
|
- lib/platform_specific/opal/extensions/geolocation.rb
|
@@ -528,6 +529,7 @@ files:
|
|
528
529
|
- src/utilities/host_mode.rb
|
529
530
|
- vendor/assets/Guardfile
|
530
531
|
- vendor/assets/Rakefile
|
532
|
+
- vendor/assets/application/examples/above_below_before_after.rb
|
531
533
|
- vendor/assets/application/examples/affect.rb
|
532
534
|
- vendor/assets/application/examples/aid.rb
|
533
535
|
- vendor/assets/application/examples/allow_copy.rb
|