motor-admin 0.2.13 → 0.2.14

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: 697f544810f933295dcac90682261144d4200b664ef0046dd88c4173a4753cbf
4
- data.tar.gz: 18279efc9ab7d7ec5aa389eada2b5ad3ac646c613c08c1d08d380215affbbb29
3
+ metadata.gz: 83d142a47680bf5eed1aea0f1fccb5b90de231d8105036a5d284cf79d43d586e
4
+ data.tar.gz: 2a9dfd66258c1c446aabc2e1367fad73f1df56867b61d79d47142eefea71622a
5
5
  SHA512:
6
- metadata.gz: 5fe13200b02aa8d1b1492de03fe1371b2b60366c9ad8fe87b9c4307dc040a87acb5434a559515162544fb6fba1106153f5a1b0e012f795ef8d7e9085e65f030f
7
- data.tar.gz: 75e21f9f22ad5ec5663aa8fd5e7080f56d123cb28865c8a564819cde9d77ef9f4231780f4dbfa01ba3a19ebac0dd2d2ace0929ac09df72d2a41256e130371d15
6
+ metadata.gz: fdbfad1a4edd14c987c1f956e525044176ef445125a3e43ae4284618cc0721343a2a28a3c03dcb1d470fd9f746e699cff209911597c71b320540cc11655774b8
7
+ data.tar.gz: d2c662baf663b0cb76edc3ced65c1b331bbf452aaa1a6fa75d4a73cfcd72d7ad0018a4529536a33fe91d6825aa553ad867289895d79398cc73b86ebd1bc0116f
data/README.md CHANGED
@@ -39,6 +39,19 @@ $ rails motor:install && rake db:migrate
39
39
  * [Optimized for mobile](#optimized-for-mobile)
40
40
  * [Configurations sync between environments](#configurations-sync)
41
41
 
42
+ ## [Pro](https://www.getmotoradmin.com/pro)
43
+
44
+ * Multiple databases support
45
+ * Audit log
46
+ * Live collaboration
47
+ * Multi-factor authentication
48
+ * Custom styling
49
+ * Personalized report alerts via Slack
50
+ * Full-text search
51
+ * Stripe integration
52
+ * Shareable forms and reports
53
+ * [learn more](https://www.getmotoradmin.com/pro)
54
+
42
55
  ### Customizable CRUD
43
56
 
44
57
  ![Resource settings](https://user-images.githubusercontent.com/5418788/119318569-2a840e80-bc82-11eb-9ba3-f3964eb6f997.png)
@@ -10,10 +10,14 @@ module Motor
10
10
  def index
11
11
  @resources = Motor::ApiQuery.call(@resources, params)
12
12
 
13
- render json: {
14
- data: Motor::ApiQuery::BuildJson.call(@resources, params, current_ability),
15
- meta: Motor::ApiQuery::BuildMeta.call(@resources, params)
16
- }
13
+ if params[:format] == 'csv'
14
+ render plain: Motor::ActiveRecordUtils.generate_csv_for_relation(@resources, reset_limit: true)
15
+ else
16
+ render json: {
17
+ data: Motor::ApiQuery::BuildJson.call(@resources, params, current_ability),
18
+ meta: Motor::ApiQuery::BuildMeta.call(@resources, params)
19
+ }
20
+ end
17
21
  end
18
22
 
19
23
  def show
@@ -0,0 +1,13 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Motor
4
+ class SessionsController < ApiBaseController
5
+ skip_authorization_check
6
+
7
+ def destroy
8
+ session.clear
9
+
10
+ head :ok
11
+ end
12
+ end
13
+ end
@@ -266,3 +266,11 @@ en:
266
266
  video: Video
267
267
  display_column: Display column
268
268
  not_authorized_to_perform_action: You are not authorized to perform this action.
269
+ download: Download
270
+ alert: Alert
271
+ downloading: Downloading
272
+ display_id: Display ID
273
+ display_settings: Display settings
274
+ sign_out: Sign out
275
+ header: Header
276
+ user_dropdown: User dropdown
@@ -266,6 +266,14 @@ es:
266
266
  video: Video
267
267
  display_column: Columna de visualización
268
268
  not_authorized_to_perform_action: No está autorizado a realizar esta acción.
269
+ download: Descargar
270
+ alert: Alerta
271
+ downloading: Descargando
272
+ display_id: Visualizar ID
273
+ display_settings: Configuración de la pantalla
274
+ sign_out: Sign out
275
+ header: Header
276
+ user_dropdown: User dropdown
269
277
  i:
270
278
  locale: es
271
279
  select:
@@ -262,6 +262,14 @@ pt:
262
262
  video: Vídeo
263
263
  display_column: Coluna de exibição
264
264
  not_authorized_to_perform_action: Não está autorizado a realizar esta acção.
265
+ download: Descarregar
266
+ alert: Alerta
267
+ downloading: Descarregamento
268
+ display_id: Mostrar ID
269
+ display_settings: Definições de visualização
270
+ sign_out: Sign out
271
+ header: Header
272
+ user_dropdown: User dropdown
265
273
  i:
266
274
  locale: pt
267
275
  select:
data/config/routes.rb CHANGED
@@ -19,6 +19,7 @@ Motor::Admin.routes.draw do
19
19
  resources :icons, only: %i[index]
20
20
  resources :active_storage_attachments, only: %i[create], path: 'data/active_storage__attachments'
21
21
  resources :audits, only: %i[index]
22
+ resource :session, only: %i[destroy]
22
23
  resources :resources, path: '/data/:resource',
23
24
  only: %i[index show update create destroy],
24
25
  controller: 'data',
@@ -21,6 +21,7 @@ module Motor
21
21
  'text' => 'string',
22
22
  'citext' => 'string',
23
23
  'jsonb' => 'json',
24
+ 'bool' => 'boolean',
24
25
  'timestamp' => 'datetime'
25
26
  }.freeze
26
27
 
@@ -12,6 +12,18 @@ module Motor
12
12
  ActiveRecord::Base.connection.reset_sequence!(model.table_name, 'id')
13
13
  end
14
14
  end
15
+
16
+ def generate_csv_for_relation(relation, reset_limit: false)
17
+ relation = relation.limit(nil).offset(nil) if reset_limit
18
+
19
+ result = relation.klass.connection.exec_query(relation.to_sql)
20
+
21
+ CSV.generate do |csv|
22
+ csv << result.columns
23
+
24
+ result.rows.each { |row| csv << row }
25
+ end
26
+ end
15
27
  end
16
28
  end
17
29
 
@@ -76,7 +76,8 @@ module Motor
76
76
  actions: BuildSchema::Defaults.actions,
77
77
  tabs: BuildSchema::Defaults.tabs,
78
78
  custom_sql: nil,
79
- visible: true
79
+ visible: true,
80
+ display_primary_key: true
80
81
  }.with_indifferent_access
81
82
  end
82
83
 
@@ -135,7 +135,7 @@ module Motor
135
135
  access_type: ColumnAccessTypes::READ_ONLY,
136
136
  column_source: ColumnSources::QUERY,
137
137
  virtual: false
138
- )
138
+ ).with_indifferent_access
139
139
  end
140
140
 
141
141
  reflection_columns = columns_index.values.select { |c| c[:column_source] == ColumnSources::REFLECTION }
@@ -2,7 +2,7 @@
2
2
 
3
3
  module Motor
4
4
  module Resources
5
- RESOURCE_ATTRS = %w[display_name display_column icon custom_sql visible].freeze
5
+ RESOURCE_ATTRS = %w[display_name display_column icon custom_sql visible display_primary_key].freeze
6
6
  COLUMN_ATTRS = %w[name display_name column_type access_type default_value reference virtual format].freeze
7
7
  ASSOCIATION_ATTRS = %w[name display_name model_name icon visible foreign_key primary_key options virtual
8
8
  polymorphic slug].freeze
data/lib/motor/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Motor
4
- VERSION = '0.2.13'
4
+ VERSION = '0.2.14'
5
5
  end
@@ -2601,9 +2601,9 @@
2601
2601
  "icons/zoom-out.svg.gz": "icons/zoom-out.svg.gz",
2602
2602
  "icons/zoom-question.svg": "icons/zoom-question.svg",
2603
2603
  "icons/zoom-question.svg.gz": "icons/zoom-question.svg.gz",
2604
- "main-674256170310c4d08732.css.gz": "main-674256170310c4d08732.css.gz",
2605
- "main-674256170310c4d08732.js.LICENSE.txt": "main-674256170310c4d08732.js.LICENSE.txt",
2606
- "main-674256170310c4d08732.js.gz": "main-674256170310c4d08732.js.gz",
2607
- "main.css": "main-674256170310c4d08732.css",
2608
- "main.js": "main-674256170310c4d08732.js"
2604
+ "main-6568183ef6647799a421.css.gz": "main-6568183ef6647799a421.css.gz",
2605
+ "main-6568183ef6647799a421.js.LICENSE.txt": "main-6568183ef6647799a421.js.LICENSE.txt",
2606
+ "main-6568183ef6647799a421.js.gz": "main-6568183ef6647799a421.js.gz",
2607
+ "main.css": "main-6568183ef6647799a421.css",
2608
+ "main.js": "main-6568183ef6647799a421.js"
2609
2609
  }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: motor-admin
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.13
4
+ version: 0.2.14
5
5
  platform: ruby
6
6
  authors:
7
7
  - Pete Matsyburka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-20 00:00:00.000000000 Z
11
+ date: 2021-10-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord-filter
@@ -130,6 +130,7 @@ files:
130
130
  - app/controllers/motor/run_queries_controller.rb
131
131
  - app/controllers/motor/schema_controller.rb
132
132
  - app/controllers/motor/send_alerts_controller.rb
133
+ - app/controllers/motor/sessions_controller.rb
133
134
  - app/controllers/motor/tags_controller.rb
134
135
  - app/controllers/motor/ui_controller.rb
135
136
  - app/jobs/motor/alert_sending_job.rb
@@ -1524,8 +1525,8 @@ files:
1524
1525
  - ui/dist/icons/zoom-money.svg.gz
1525
1526
  - ui/dist/icons/zoom-out.svg.gz
1526
1527
  - ui/dist/icons/zoom-question.svg.gz
1527
- - ui/dist/main-674256170310c4d08732.css.gz
1528
- - ui/dist/main-674256170310c4d08732.js.gz
1528
+ - ui/dist/main-6568183ef6647799a421.css.gz
1529
+ - ui/dist/main-6568183ef6647799a421.js.gz
1529
1530
  - ui/dist/manifest.json
1530
1531
  homepage:
1531
1532
  licenses: