mensa 0.6.7 → 0.6.8

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: 5b3079b6b5933b04de4724402439729cb927b3babb82d0e1fac213b0387519b5
4
- data.tar.gz: e047c77dee4e3cc8b4d201cedaa73a971964441a486571083d6d0c32e4bceee5
3
+ metadata.gz: 5cc6a4c7a0cbea3b05559bad2910becc5458e74137015835b0d8a753d1e8012e
4
+ data.tar.gz: 65afa4de844a8741a342bbd38e8e717eaa59c35650eef0b4297e8420cd380821
5
5
  SHA512:
6
- metadata.gz: 97ae78d7d5927361dc6492ed97249008a5c8eadf1e75452772a4334affe4f3d9291b110b0fb3752b948f2c45ee48701dc5aa57b45a32b8fbf4c4d57a49900a56
7
- data.tar.gz: 33d2c0be01a6b3f0bb4e0f8f8ee6c8e9a7aba97369915d938f1231b60af8ac944435e063f265943dac893eeaf3b1bf7063f628698912dee33838e19c408b36dd
6
+ metadata.gz: 3282238437abbc28f4896ff086241eb5a8ff6fb12202691bb7f3f8c85c5cda4677a28406c6f367c582660335853a496c7c7f42ab0ef98518512350d6ef2ff479
7
+ data.tar.gz: 82374fe57fdf48bae11d6c784bbcc7f4ad2380fc739565500b70a6df49bfbc2392bb1cfde5dba69e23222a85bf3d33a0c38cd1e35dcd4d5d3b33ba47ba65ccaf
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- mensa (0.6.6)
4
+ mensa (0.6.7)
5
5
  csv
6
6
  importmap-rails
7
7
  pagy (>= 43)
@@ -10,7 +10,13 @@ module Mensa
10
10
 
11
11
  def initialize(table_name, params: {}, **options)
12
12
  @params = params
13
- @table = Mensa.for_name(table_name, {params: params})
13
+ config = {params: params}
14
+ view_lookup_table = Mensa.for_name(table_name, config)
15
+ view = view_lookup_table.default_system_view
16
+
17
+ table_config = (view&.config&.deep_transform_keys(&:to_sym) || {}).merge(config)
18
+ @table = Mensa.for_name(table_name, table_config)
19
+ @table.table_view = view
14
20
  @table.original_view_context = options[:original_view_context]
15
21
  @table.component = self
16
22
  end
@@ -1,17 +1,20 @@
1
1
  module Mensa
2
2
  class TablesController < ApplicationController
3
3
  def show
4
- config = params.permit(:format, :query, :id, :page, :table_view_id, :turbo_frame_id, order: {}, column_order: [], hidden_columns: [], params: {}).to_h
5
- config[:filters] = params[:filters].to_unsafe_h if params.key?(:filters)
6
- config[:params] = params[:params]&.to_unsafe_h || {}
4
+ config = params.permit(:format, :query, :id, :page, :table_view_id, :turbo_frame_id, order: {}, column_order: [], hidden_columns: [], params: {}, filters: {}).to_h
7
5
 
8
- if params[:table_view_id]
9
- view_lookup_table = Mensa.for_name(params[:id], config)
10
- @view = Mensa::TableView.find_by(table_name: params[:id], id: params[:table_view_id])
11
- @view ||= view_lookup_table.system_views.find { |v| v.id == params[:table_view_id].to_sym }
12
- config = (@view&.config&.deep_transform_keys(&:to_sym) || {}).merge(config)
6
+ @table = Mensa.for_name(params[:id], config)
7
+
8
+ view_lookup_table = Mensa.for_name(params[:id], config)
9
+ @view = if params[:table_view_id]
10
+ Mensa::TableView.find_by(table_name: params[:id], id: params[:table_view_id]) ||
11
+ view_lookup_table.system_views.find { |v| v.id == params[:table_view_id].to_sym }
12
+ else
13
+ view_lookup_table.default_system_view
13
14
  end
14
15
 
16
+ config = (@view&.config&.deep_transform_keys(&:to_sym) || {}).merge(config)
17
+
15
18
  @table = Mensa.for_name(params[:id], config)
16
19
  @table.request = request
17
20
  @table.table_view = @view
@@ -85,6 +85,10 @@ module Mensa
85
85
  views + (config[:views] || {}).keys.map { |view_name| Mensa::SystemView.new(view_name, config: config.dig(:views, view_name), table: self) }
86
86
  end
87
87
 
88
+ def default_system_view
89
+ system_views.find { |view| view.id == :default }
90
+ end
91
+
88
92
  # Returns true if the table has filters
89
93
  def filters?
90
94
  columns.any?(&:filter?)
@@ -143,7 +147,7 @@ module Mensa
143
147
  end
144
148
 
145
149
  def views?
146
- all_views.reject{_1.id == :default}.present?
150
+ all_views.reject { it.id == :default }.present?
147
151
  end
148
152
 
149
153
  # The user that owns custom views. Returns nil when the host application has
data/lib/mensa/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Mensa
2
- VERSION = "0.6.7"
2
+ VERSION = "0.6.8"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mensa
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.7
4
+ version: 0.6.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tom de Grunt