adhoq 0.4.0 → 1.0.2
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 +5 -5
- data/README.md +1 -1
- data/app/assets/javascripts/adhoq/current_tables.js +23 -0
- data/app/assets/javascripts/adhoq/previewer.js +52 -0
- data/app/controllers/adhoq/queries_controller.rb +1 -1
- data/app/helpers/adhoq/application_helper.rb +1 -1
- data/app/models/adhoq/execution.rb +2 -2
- data/app/models/adhoq/time_based_orders.rb +1 -1
- data/app/views/adhoq/application/_global_nav.html.erb +18 -0
- data/app/views/adhoq/current_tables/index.html.erb +53 -0
- data/app/views/adhoq/explains/create.html.erb +1 -0
- data/app/views/adhoq/explains/statement_invalid.html.erb +5 -0
- data/app/views/adhoq/previews/create.html.erb +21 -0
- data/app/views/adhoq/previews/statement_invalid.html.erb +4 -0
- data/app/views/adhoq/queries/_current_tables_leftbar.html.erb +14 -0
- data/app/views/adhoq/queries/_execution.html.erb +10 -0
- data/app/views/adhoq/queries/_form.html.erb +124 -0
- data/app/views/adhoq/queries/_queries.html.erb +16 -0
- data/app/views/adhoq/queries/_query.html.erb +67 -0
- data/app/views/adhoq/queries/edit.html.erb +13 -0
- data/app/views/adhoq/queries/index.html.erb +15 -0
- data/app/views/adhoq/queries/new.html.erb +12 -0
- data/app/views/adhoq/queries/show.html.erb +14 -0
- data/app/views/layouts/adhoq/application.html.erb +18 -0
- data/config/database.yml +25 -0
- data/lib/adhoq/engine.rb +1 -1
- data/lib/adhoq/version.rb +1 -1
- data/spec/factories/adhoq_queries.rb +9 -9
- metadata +40 -68
- data/app/assets/javascripts/adhoq/current_tables.js.coffee +0 -18
- data/app/assets/javascripts/adhoq/previewer.js.coffee +0 -34
- data/app/views/adhoq/application/_global_nav.html.slim +0 -12
- data/app/views/adhoq/current_tables/index.html.slim +0 -35
- data/app/views/adhoq/explains/create.html.slim +0 -2
- data/app/views/adhoq/explains/statement_invalid.html.slim +0 -5
- data/app/views/adhoq/previews/create.html.slim +0 -12
- data/app/views/adhoq/previews/statement_invalid.html.slim +0 -5
- data/app/views/adhoq/queries/_current_tables_leftbar.html.slim +0 -9
- data/app/views/adhoq/queries/_execution.html.slim +0 -10
- data/app/views/adhoq/queries/_form.html.slim +0 -93
- data/app/views/adhoq/queries/_queries.html.slim +0 -14
- data/app/views/adhoq/queries/_query.html.slim +0 -48
- data/app/views/adhoq/queries/edit.html.slim +0 -11
- data/app/views/adhoq/queries/index.html.slim +0 -11
- data/app/views/adhoq/queries/new.html.slim +0 -10
- data/app/views/adhoq/queries/show.html.slim +0 -11
- data/app/views/layouts/adhoq/application.html.slim +0 -15
@@ -0,0 +1,13 @@
|
|
1
|
+
<div class="col-md-12">
|
2
|
+
<ol class="breadcrumb">
|
3
|
+
<li><%= link_to 'Index', :queries %></li>
|
4
|
+
<li><%= link_to query_friendly_name(@query), @query %></li>
|
5
|
+
<li class="active"> Edit</li>
|
6
|
+
</ol>
|
7
|
+
</div>
|
8
|
+
<div class="col-md-12" id="main">
|
9
|
+
<section class="edit-query">
|
10
|
+
<%= render 'form', query: @query, title: "Edit query > #{query_friendly_name(@query)}" %>
|
11
|
+
</section>
|
12
|
+
</div>
|
13
|
+
<%= render 'current_tables_leftbar' %>
|
@@ -0,0 +1,15 @@
|
|
1
|
+
<div class="col-md-12">
|
2
|
+
<ol class="breadcrumb">
|
3
|
+
<li class="active">Index</li>
|
4
|
+
</ol>
|
5
|
+
</div>
|
6
|
+
<div class="col-md-3" id="queries">
|
7
|
+
<section class="queries">
|
8
|
+
<%= render 'queries', queries: @queries %>
|
9
|
+
</section>
|
10
|
+
</div>
|
11
|
+
<div class="col-md-9" id="the-query">
|
12
|
+
<% if first_query = @queries.first %>
|
13
|
+
<%= render 'query', query: first_query %>
|
14
|
+
<% end %>
|
15
|
+
</div>
|
@@ -0,0 +1,12 @@
|
|
1
|
+
<div class="col-md-12">
|
2
|
+
<ol class="breadcrumb">
|
3
|
+
<li><%= link_to 'Index', :queries %></li>
|
4
|
+
<li class="active"> New query</li>
|
5
|
+
</ol>
|
6
|
+
</div>
|
7
|
+
<div class="col-md-12" id="main">
|
8
|
+
<section class="new-query">
|
9
|
+
<%= render 'form', query: @query, title: 'New query' %>
|
10
|
+
</section>
|
11
|
+
</div>
|
12
|
+
<%= render 'current_tables_leftbar' %>
|
@@ -0,0 +1,14 @@
|
|
1
|
+
<div class="col-md-12">
|
2
|
+
<ol class="breadcrumb">
|
3
|
+
<li><%= link_to 'Index', :queries %></li>
|
4
|
+
<li class="active"><%= query_friendly_name(@query) %></li>
|
5
|
+
</ol>
|
6
|
+
</div>
|
7
|
+
<div class="col-md-3" id="queries">
|
8
|
+
<section class="queries">
|
9
|
+
<%= render 'queries', queries: ::Adhoq::Query.recent_first, highlight: @query %>
|
10
|
+
</section>
|
11
|
+
</div>
|
12
|
+
<div class="col-md-9" id="the-query">
|
13
|
+
<%= render 'query', query: @query %>
|
14
|
+
</div>
|
@@ -0,0 +1,18 @@
|
|
1
|
+
<!DOCTYPE html>
|
2
|
+
<html>
|
3
|
+
<head>
|
4
|
+
<title>Adhoq</title>
|
5
|
+
<%= stylesheet_link_tag 'adhoq/application', media: 'all' %>
|
6
|
+
<%= javascript_include_tag 'adhoq/application' %>
|
7
|
+
<%= csrf_meta_tags %>
|
8
|
+
</head>
|
9
|
+
<body>
|
10
|
+
<div class="container">
|
11
|
+
<%= render 'global_nav' %>
|
12
|
+
|
13
|
+
<div class="row" id="contents">
|
14
|
+
<%= yield %>
|
15
|
+
</div>
|
16
|
+
</div>
|
17
|
+
</body>
|
18
|
+
</html>
|
data/config/database.yml
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
# SQLite version 3.x
|
2
|
+
# gem install sqlite3
|
3
|
+
#
|
4
|
+
# Ensure the SQLite 3 gem is defined in your Gemfile
|
5
|
+
# gem 'sqlite3'
|
6
|
+
#
|
7
|
+
default: &default
|
8
|
+
adapter: sqlite3
|
9
|
+
pool: 5
|
10
|
+
timeout: 5000
|
11
|
+
|
12
|
+
development:
|
13
|
+
<<: *default
|
14
|
+
database: db/development.sqlite3
|
15
|
+
|
16
|
+
# Warning: The database defined as "test" will be erased and
|
17
|
+
# re-generated from your development database when you run "rake".
|
18
|
+
# Do not set this db to the same as development or production.
|
19
|
+
test:
|
20
|
+
<<: *default
|
21
|
+
database: db/test.sqlite3
|
22
|
+
|
23
|
+
production:
|
24
|
+
<<: *default
|
25
|
+
database: db/production.sqlite3
|
data/lib/adhoq/engine.rb
CHANGED
data/lib/adhoq/version.rb
CHANGED
@@ -2,14 +2,14 @@
|
|
2
2
|
|
3
3
|
FactoryBot.define do
|
4
4
|
factory :adhoq_query, class: 'Adhoq::Query' do
|
5
|
-
name 'A query'
|
6
|
-
description 'Simple simple SELECT'
|
7
|
-
query 'SELECT 1'
|
5
|
+
name { 'A query' }
|
6
|
+
description { 'Simple simple SELECT' }
|
7
|
+
query { 'SELECT 1' }
|
8
8
|
|
9
9
|
trait :complex do
|
10
|
-
name 'adhoq current use'
|
11
|
-
description 'Simple analysys: count execution per query'
|
12
|
-
query <<-SQL.strip_heredoc
|
10
|
+
name { 'adhoq current use' }
|
11
|
+
description { 'Simple analysys: count execution per query' }
|
12
|
+
query { <<-SQL.strip_heredoc }
|
13
13
|
SELECT
|
14
14
|
q.id
|
15
15
|
,q.name
|
@@ -27,9 +27,9 @@ FactoryBot.define do
|
|
27
27
|
end
|
28
28
|
|
29
29
|
trait :greeting do
|
30
|
-
name 'greeting'
|
31
|
-
description 'Static query for testing data'
|
32
|
-
query 'SELECT "hello" AS name ,"English greeting message" AS description'
|
30
|
+
name { 'greeting' }
|
31
|
+
description { 'Static query for testing data' }
|
32
|
+
query { 'SELECT "hello" AS name ,"English greeting message" AS description' }
|
33
33
|
end
|
34
34
|
end
|
35
35
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: adhoq
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Kyosuke MOROHASHI
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2021-02-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rails
|
@@ -16,42 +16,28 @@ dependencies:
|
|
16
16
|
requirements:
|
17
17
|
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: '
|
19
|
+
version: '5.1'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
24
|
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: '
|
26
|
+
version: '5.1'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
|
-
name:
|
28
|
+
name: caxlsx
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
31
|
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
|
-
version: '
|
33
|
+
version: '3.0'
|
34
34
|
type: :runtime
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
38
|
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
|
-
version: '
|
41
|
-
- !ruby/object:Gem::Dependency
|
42
|
-
name: coffee-rails
|
43
|
-
requirement: !ruby/object:Gem::Requirement
|
44
|
-
requirements:
|
45
|
-
- - ">="
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
version: '0'
|
48
|
-
type: :runtime
|
49
|
-
prerelease: false
|
50
|
-
version_requirements: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ">="
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '0'
|
40
|
+
version: '3.0'
|
55
41
|
- !ruby/object:Gem::Dependency
|
56
42
|
name: fog-aws
|
57
43
|
requirement: !ruby/object:Gem::Requirement
|
@@ -82,34 +68,20 @@ dependencies:
|
|
82
68
|
version: '0.3'
|
83
69
|
- !ruby/object:Gem::Dependency
|
84
70
|
name: font-awesome-sass
|
85
|
-
requirement: !ruby/object:Gem::Requirement
|
86
|
-
requirements:
|
87
|
-
- - "~>"
|
88
|
-
- !ruby/object:Gem::Version
|
89
|
-
version: 4.2.0
|
90
|
-
type: :runtime
|
91
|
-
prerelease: false
|
92
|
-
version_requirements: !ruby/object:Gem::Requirement
|
93
|
-
requirements:
|
94
|
-
- - "~>"
|
95
|
-
- !ruby/object:Gem::Version
|
96
|
-
version: 4.2.0
|
97
|
-
- !ruby/object:Gem::Dependency
|
98
|
-
name: jquery-rails
|
99
71
|
requirement: !ruby/object:Gem::Requirement
|
100
72
|
requirements:
|
101
73
|
- - ">="
|
102
74
|
- !ruby/object:Gem::Version
|
103
|
-
version: '
|
75
|
+
version: '4.2'
|
104
76
|
type: :runtime
|
105
77
|
prerelease: false
|
106
78
|
version_requirements: !ruby/object:Gem::Requirement
|
107
79
|
requirements:
|
108
80
|
- - ">="
|
109
81
|
- !ruby/object:Gem::Version
|
110
|
-
version: '
|
82
|
+
version: '4.2'
|
111
83
|
- !ruby/object:Gem::Dependency
|
112
|
-
name:
|
84
|
+
name: jquery-rails
|
113
85
|
requirement: !ruby/object:Gem::Requirement
|
114
86
|
requirements:
|
115
87
|
- - ">="
|
@@ -123,7 +95,7 @@ dependencies:
|
|
123
95
|
- !ruby/object:Gem::Version
|
124
96
|
version: '0'
|
125
97
|
- !ruby/object:Gem::Dependency
|
126
|
-
name:
|
98
|
+
name: sassc-rails
|
127
99
|
requirement: !ruby/object:Gem::Requirement
|
128
100
|
requirements:
|
129
101
|
- - ">="
|
@@ -196,16 +168,16 @@ dependencies:
|
|
196
168
|
name: factory_bot_rails
|
197
169
|
requirement: !ruby/object:Gem::Requirement
|
198
170
|
requirements:
|
199
|
-
- - "
|
171
|
+
- - "~>"
|
200
172
|
- !ruby/object:Gem::Version
|
201
|
-
version:
|
173
|
+
version: 4.11.1
|
202
174
|
type: :development
|
203
175
|
prerelease: false
|
204
176
|
version_requirements: !ruby/object:Gem::Requirement
|
205
177
|
requirements:
|
206
|
-
- - "
|
178
|
+
- - "~>"
|
207
179
|
- !ruby/object:Gem::Version
|
208
|
-
version:
|
180
|
+
version: 4.11.1
|
209
181
|
- !ruby/object:Gem::Dependency
|
210
182
|
name: launchy
|
211
183
|
requirement: !ruby/object:Gem::Requirement
|
@@ -282,14 +254,14 @@ dependencies:
|
|
282
254
|
requirements:
|
283
255
|
- - ">="
|
284
256
|
- !ruby/object:Gem::Version
|
285
|
-
version: '
|
257
|
+
version: '1.4'
|
286
258
|
type: :development
|
287
259
|
prerelease: false
|
288
260
|
version_requirements: !ruby/object:Gem::Requirement
|
289
261
|
requirements:
|
290
262
|
- - ">="
|
291
263
|
- !ruby/object:Gem::Version
|
292
|
-
version: '
|
264
|
+
version: '1.4'
|
293
265
|
- !ruby/object:Gem::Dependency
|
294
266
|
name: tapp
|
295
267
|
requirement: !ruby/object:Gem::Requirement
|
@@ -329,8 +301,8 @@ files:
|
|
329
301
|
- app/assets/javascripts/adhoq/bootstrap/tab.js
|
330
302
|
- app/assets/javascripts/adhoq/bootstrap/tooltip.js
|
331
303
|
- app/assets/javascripts/adhoq/bootstrap/transition.js
|
332
|
-
- app/assets/javascripts/adhoq/current_tables.js
|
333
|
-
- app/assets/javascripts/adhoq/previewer.js
|
304
|
+
- app/assets/javascripts/adhoq/current_tables.js
|
305
|
+
- app/assets/javascripts/adhoq/previewer.js
|
334
306
|
- app/assets/stylesheets/adhoq/_bootstrap-compass.scss
|
335
307
|
- app/assets/stylesheets/adhoq/_bootstrap-mincer.scss
|
336
308
|
- app/assets/stylesheets/adhoq/_bootstrap-sprockets.scss
|
@@ -422,22 +394,23 @@ files:
|
|
422
394
|
- app/models/adhoq/query.rb
|
423
395
|
- app/models/adhoq/report.rb
|
424
396
|
- app/models/adhoq/time_based_orders.rb
|
425
|
-
- app/views/adhoq/application/_global_nav.html.
|
426
|
-
- app/views/adhoq/current_tables/index.html.
|
427
|
-
- app/views/adhoq/explains/create.html.
|
428
|
-
- app/views/adhoq/explains/statement_invalid.html.
|
429
|
-
- app/views/adhoq/previews/create.html.
|
430
|
-
- app/views/adhoq/previews/statement_invalid.html.
|
431
|
-
- app/views/adhoq/queries/_current_tables_leftbar.html.
|
432
|
-
- app/views/adhoq/queries/_execution.html.
|
433
|
-
- app/views/adhoq/queries/_form.html.
|
434
|
-
- app/views/adhoq/queries/_queries.html.
|
435
|
-
- app/views/adhoq/queries/_query.html.
|
436
|
-
- app/views/adhoq/queries/edit.html.
|
437
|
-
- app/views/adhoq/queries/index.html.
|
438
|
-
- app/views/adhoq/queries/new.html.
|
439
|
-
- app/views/adhoq/queries/show.html.
|
440
|
-
- app/views/layouts/adhoq/application.html.
|
397
|
+
- app/views/adhoq/application/_global_nav.html.erb
|
398
|
+
- app/views/adhoq/current_tables/index.html.erb
|
399
|
+
- app/views/adhoq/explains/create.html.erb
|
400
|
+
- app/views/adhoq/explains/statement_invalid.html.erb
|
401
|
+
- app/views/adhoq/previews/create.html.erb
|
402
|
+
- app/views/adhoq/previews/statement_invalid.html.erb
|
403
|
+
- app/views/adhoq/queries/_current_tables_leftbar.html.erb
|
404
|
+
- app/views/adhoq/queries/_execution.html.erb
|
405
|
+
- app/views/adhoq/queries/_form.html.erb
|
406
|
+
- app/views/adhoq/queries/_queries.html.erb
|
407
|
+
- app/views/adhoq/queries/_query.html.erb
|
408
|
+
- app/views/adhoq/queries/edit.html.erb
|
409
|
+
- app/views/adhoq/queries/index.html.erb
|
410
|
+
- app/views/adhoq/queries/new.html.erb
|
411
|
+
- app/views/adhoq/queries/show.html.erb
|
412
|
+
- app/views/layouts/adhoq/application.html.erb
|
413
|
+
- config/database.yml
|
441
414
|
- config/routes.rb
|
442
415
|
- db/migrate/20141003095645_create_adhoq_queries.rb
|
443
416
|
- db/migrate/20141006014750_create_adhoq_executions.rb
|
@@ -482,7 +455,7 @@ homepage: https://github.com/esminc/adhoq
|
|
482
455
|
licenses:
|
483
456
|
- MIT
|
484
457
|
metadata: {}
|
485
|
-
post_install_message:
|
458
|
+
post_install_message:
|
486
459
|
rdoc_options: []
|
487
460
|
require_paths:
|
488
461
|
- lib
|
@@ -497,9 +470,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
497
470
|
- !ruby/object:Gem::Version
|
498
471
|
version: '0'
|
499
472
|
requirements: []
|
500
|
-
|
501
|
-
|
502
|
-
signing_key:
|
473
|
+
rubygems_version: 3.2.8
|
474
|
+
signing_key:
|
503
475
|
specification_version: 4
|
504
476
|
summary: DB management console in the wild.
|
505
477
|
test_files:
|
@@ -1,18 +0,0 @@
|
|
1
|
-
loadCurrentTableTabOnce = ($el)->
|
2
|
-
$el.load($el.find('a.loading').attr('href'))
|
3
|
-
|
4
|
-
Adhoq.toggleCurrentTables = (action, elements)->
|
5
|
-
loadCurrentTableTabOnce($('#current-tables'))
|
6
|
-
|
7
|
-
$main = $(elements.main)
|
8
|
-
$tables = $(elements.tables)
|
9
|
-
|
10
|
-
if action is 'show'
|
11
|
-
$main.addClass('col-md-6').removeClass('col-md-12')
|
12
|
-
$tables.addClass('col-md-6').show()
|
13
|
-
else
|
14
|
-
$main.addClass('col-md-12').removeClass('col-md-6')
|
15
|
-
$tables.addClass('col-md-6').hide()
|
16
|
-
|
17
|
-
true
|
18
|
-
|
@@ -1,34 +0,0 @@
|
|
1
|
-
class Previewer
|
2
|
-
constructor: (@el)->
|
3
|
-
|
4
|
-
init: ->
|
5
|
-
@el.on 'adhoq:updatePreview', => @update()
|
6
|
-
|
7
|
-
@el.on 'click', =>
|
8
|
-
@el.trigger 'adhoq:updatePreview'
|
9
|
-
false
|
10
|
-
|
11
|
-
update: ->
|
12
|
-
jQuery.ajax(
|
13
|
-
type: @el.data('method'),
|
14
|
-
url: @el.attr('href'),
|
15
|
-
data: {query: @source()},
|
16
|
-
complete: (xhr)=>
|
17
|
-
@result().html(xhr.responseText)
|
18
|
-
)
|
19
|
-
|
20
|
-
source: ->
|
21
|
-
$(@el.data('source')).val()
|
22
|
-
|
23
|
-
result: ->
|
24
|
-
$(@el.data('result'))
|
25
|
-
|
26
|
-
Adhoq.enablePreview = ($el)->
|
27
|
-
(new Previewer($el)).init()
|
28
|
-
|
29
|
-
Adhoq.enablePreviewKeybordShortCut= ($textarea, previewSelector)->
|
30
|
-
$textarea.on 'keyup', (ev)->
|
31
|
-
if(ev.ctrlKey && ev.keyCode is 82)
|
32
|
-
$(previewSelector).trigger('adhoq:updatePreview')
|
33
|
-
|
34
|
-
false
|
@@ -1,12 +0,0 @@
|
|
1
|
-
nav#global-nav.navbar.navbar-default(role='navigation')
|
2
|
-
.container-fluid
|
3
|
-
.navbar-header
|
4
|
-
= link_to 'Adhoq', root_path, class: 'navbar-brand'
|
5
|
-
.navbar-collapse.collapse
|
6
|
-
ul.nav.navbar-nav.navbar-right
|
7
|
-
- if main_app.respond_to?(:root_path)
|
8
|
-
li
|
9
|
-
= link_to main_app.root_path do
|
10
|
-
i.fa.fa-arrow-circle-right.fa-pad-r
|
11
|
-
| Main app
|
12
|
-
|