forest_liana 1.8.1 → 1.9.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 23ea47129405d59f5c99fe59decdc4a4d811f112
4
- data.tar.gz: f2733dc8c0a556866cbf51de9747fd8ca9124994
3
+ metadata.gz: eb536a1e4e065230ec20382ed1a94946decf81d6
4
+ data.tar.gz: 2e4604060f841044a86a7645395e2c78e28b6907
5
5
  SHA512:
6
- metadata.gz: 96c741bd5aff948d4fc5856e66ccc6a0d116f4e35cce02169e05b20ccb4d52812ca4b91e8b89379226004b668d52d4bf645c0f1637af6c72c1dd33c8719e9005
7
- data.tar.gz: f29af342b0e30a72d9a05aecb10c1cddc14b5670e4fed140a50583e03d1875af92c8dfb500b33c7c25dce088d58a4041766dbae676caa4a73860f6e97deb765a
6
+ metadata.gz: 6be78a0e9cf2b6e00aed353a043e20cc404c2ce9255843545a5e2121a900ff2f8396d53fb9435e8c214e2a9c0b8ef482d95a2e986bbfbf33e2c365bd3b9964c5
7
+ data.tar.gz: 310a836bb32528b14fef49f8dd95dc8549335a36193ab8c44c96db46b746db26729693a043b72707cdebabc466a7f4d8df7fbfc2e00bb88066f800114ff83392
@@ -87,7 +87,7 @@ module ForestLiana
87
87
  type: ['String'],
88
88
  reference: "#{model_name}_intercom_conversations.id",
89
89
  column: nil,
90
- is_searchable: false,
90
+ 'is-filterable': false,
91
91
  integration: 'intercom'
92
92
  }
93
93
 
@@ -96,7 +96,7 @@ module ForestLiana
96
96
  type: 'String',
97
97
  reference: "#{model_name}_intercom_attributes.id",
98
98
  column: nil,
99
- is_searchable: false,
99
+ 'is-filterable': false,
100
100
  integration: 'intercom'
101
101
  }
102
102
  end
@@ -117,7 +117,7 @@ module ForestLiana
117
117
  type: ['String'],
118
118
  reference: "#{model_name}_stripe_payments.id",
119
119
  column: nil,
120
- is_searchable: false,
120
+ 'is-filterable': false,
121
121
  integration: 'stripe'
122
122
  }
123
123
 
@@ -126,7 +126,7 @@ module ForestLiana
126
126
  type: ['String'],
127
127
  reference: "#{model_name}_stripe_invoices.id",
128
128
  column: nil,
129
- is_searchable: false,
129
+ 'is-filterable': false,
130
130
  integration: 'stripe'
131
131
  }
132
132
 
@@ -135,7 +135,7 @@ module ForestLiana
135
135
  type: ['String'],
136
136
  reference: "#{model_name}_stripe_cards.id",
137
137
  column: nil,
138
- is_searchable: false,
138
+ 'is-filterable': false,
139
139
  integration: 'stripe'
140
140
  }
141
141
 
@@ -144,7 +144,7 @@ module ForestLiana
144
144
  type: ['String'],
145
145
  reference: "#{model_name}_stripe_subscriptions.id",
146
146
  column: nil,
147
- is_searchable: false,
147
+ 'is-filterable': false,
148
148
  integration: 'stripe'
149
149
  }
150
150
 
@@ -153,7 +153,7 @@ module ForestLiana
153
153
  type: ['String'],
154
154
  reference: "#{model_name}_stripe_bank_accounts.id",
155
155
  column: nil,
156
- is_searchable: false,
156
+ 'is-filterable': false,
157
157
  integration: 'stripe'
158
158
  }
159
159
  end
@@ -238,7 +238,8 @@ module ForestLiana
238
238
  field: association.name.to_s,
239
239
  type: get_type_for_association(association),
240
240
  reference: "#{ForestLiana.name_for(association.klass)}.id",
241
- inverseOf: inverse_of(association)
241
+ inverseOf: inverse_of(association),
242
+ 'is-filterable': !is_many_association(association)
242
243
  }
243
244
  end
244
245
 
@@ -409,9 +410,13 @@ module ForestLiana
409
410
  collection.fields.find {|x| x[:field] == field.foreign_key }
410
411
  end
411
412
 
412
- def get_type_for_association(association)
413
- if association.macro == :has_many ||
413
+ def is_many_association(association)
414
+ association.macro == :has_many ||
414
415
  association.macro == :has_and_belongs_to_many
416
+ end
417
+
418
+ def get_type_for_association(association)
419
+ if is_many_association(association)
415
420
  ['Number']
416
421
  else
417
422
  'Number'
@@ -232,23 +232,23 @@ module ForestLiana
232
232
  is_virtual: true,
233
233
  is_searchable: false,
234
234
  fields: [
235
- { field: :created_at, type: 'Date', is_searchable: false },
236
- { field: :updated_at, type: 'Date', is_searchable: false },
237
- { field: :session_count, type: 'Number', is_searchable: false },
238
- { field: :last_seen_ip, type: 'String', is_searchable: false },
239
- { field: :signed_up_at, type: 'Date', is_searchable: false },
240
- { field: :country, type: 'String', is_searchable: false },
241
- { field: :city, type: 'String', is_searchable: false },
242
- { field: :browser, type: 'String', is_searchable: false },
243
- { field: :platform, type: 'String', is_searchable: false },
244
- { field: :companies, type: 'String', is_searchable: false },
245
- { field: :segments, type: 'String', is_searchable: false },
246
- { field: :tags, type: 'String', is_searchable: false },
235
+ { field: :created_at, type: 'Date', 'is-filterable': false },
236
+ { field: :updated_at, type: 'Date', 'is-filterable': false },
237
+ { field: :session_count, type: 'Number', 'is-filterable': false },
238
+ { field: :last_seen_ip, type: 'String', 'is-filterable': false },
239
+ { field: :signed_up_at, type: 'Date', 'is-filterable': false },
240
+ { field: :country, type: 'String', 'is-filterable': false },
241
+ { field: :city, type: 'String', 'is-filterable': false },
242
+ { field: :browser, type: 'String', 'is-filterable': false },
243
+ { field: :platform, type: 'String', 'is-filterable': false },
244
+ { field: :companies, type: 'String', 'is-filterable': false },
245
+ { field: :segments, type: 'String', 'is-filterable': false },
246
+ { field: :tags, type: 'String', 'is-filterable': false },
247
247
  {
248
248
  field: :geoloc,
249
249
  type: 'String',
250
250
  widget: 'google map',
251
- is_searchable: false
251
+ 'is-filterable': false
252
252
  }
253
253
  ]
254
254
  })
@@ -297,18 +297,18 @@ module ForestLiana
297
297
  is_searchable: false,
298
298
  pagination_type: 'cursor',
299
299
  fields: [
300
- { field: :id, type: 'String', is_searchable: false },
301
- { field: :created, type: 'Date', is_searchable: false },
302
- { field: :amount, type: 'Number', is_searchable: false },
303
- { field: :status, type: 'String', is_searchable: false },
304
- { field: :currency, type: 'String', is_searchable: false },
305
- { field: :refunded, type: 'Boolean', is_searchable: false },
306
- { field: :description, type: 'String', is_searchable: false },
300
+ { field: :id, type: 'String', 'is-filterable': false },
301
+ { field: :created, type: 'Date', 'is-filterable': false },
302
+ { field: :amount, type: 'Number', 'is-filterable': false },
303
+ { field: :status, type: 'String', 'is-filterable': false },
304
+ { field: :currency, type: 'String', 'is-filterable': false },
305
+ { field: :refunded, type: 'Boolean', 'is-filterable': false },
306
+ { field: :description, type: 'String', 'is-filterable': false },
307
307
  {
308
308
  field: :customer,
309
309
  type: 'String',
310
310
  reference: "#{model_name}.id",
311
- is_searchable: false
311
+ 'is-filterable': false
312
312
  }
313
313
  ],
314
314
  actions: [
@@ -330,26 +330,26 @@ module ForestLiana
330
330
  is_searchable: false,
331
331
  pagination_type: 'cursor',
332
332
  fields: [
333
- { field: :id, type: 'String', is_searchable: false },
334
- { field: :amount_due, type: 'Number', is_searchable: false },
335
- { field: :attempt_count, type: 'Number', is_searchable: false },
336
- { field: :attempted, type: 'Boolean', is_searchable: false },
337
- { field: :closed, type: 'Boolean', is_searchable: false },
338
- { field: :currency, type: 'String', is_searchable: false },
339
- { field: :date, type: 'Date', is_searchable: false },
340
- { field: :forgiven, type: 'Boolean', is_searchable: false },
341
- { field: :period_start, type: 'Date', is_searchable: false },
342
- { field: :period_end, type: 'Date', is_searchable: false },
343
- { field: :subtotal, type: 'Number', is_searchable: false },
344
- { field: :total, type: 'Number', is_searchable: false },
345
- { field: :application_fee, type: 'Number', is_searchable: false },
346
- { field: :tax, type: 'Number', is_searchable: false },
347
- { field: :tax_percent, type: 'Number', is_searchable: false },
333
+ { field: :id, type: 'String', 'is-filterable': false },
334
+ { field: :amount_due, type: 'Number', 'is-filterable': false },
335
+ { field: :attempt_count, type: 'Number', 'is-filterable': false },
336
+ { field: :attempted, type: 'Boolean', 'is-filterable': false },
337
+ { field: :closed, type: 'Boolean', 'is-filterable': false },
338
+ { field: :currency, type: 'String', 'is-filterable': false },
339
+ { field: :date, type: 'Date', 'is-filterable': false },
340
+ { field: :forgiven, type: 'Boolean', 'is-filterable': false },
341
+ { field: :period_start, type: 'Date', 'is-filterable': false },
342
+ { field: :period_end, type: 'Date', 'is-filterable': false },
343
+ { field: :subtotal, type: 'Number', 'is-filterable': false },
344
+ { field: :total, type: 'Number', 'is-filterable': false },
345
+ { field: :application_fee, type: 'Number', 'is-filterable': false },
346
+ { field: :tax, type: 'Number', 'is-filterable': false },
347
+ { field: :tax_percent, type: 'Number', 'is-filterable': false },
348
348
  {
349
349
  field: :customer,
350
350
  type: 'String',
351
351
  reference: "#{model_name}.id",
352
- is_searchable: false
352
+ 'is-filterable': false
353
353
  }
354
354
  ]
355
355
  })
@@ -365,26 +365,26 @@ module ForestLiana
365
365
  only_for_relationships: true,
366
366
  pagination_type: 'cursor',
367
367
  fields: [
368
- { field: :id, type: 'String', is_searchable: false },
369
- { field: :last4, type: 'String', is_searchable: false },
370
- { field: :brand, type: 'String', is_searchable: false },
371
- { field: :funding, type: 'String', is_searchable: false },
372
- { field: :exp_month, type: 'Number', is_searchable: false },
373
- { field: :exp_year, type: 'Number', is_searchable: false },
374
- { field: :country, type: 'String', is_searchable: false },
375
- { field: :name, type: 'String', is_searchable: false },
376
- { field: :address_line1, type: 'String', is_searchable: false },
377
- { field: :address_line2, type: 'String', is_searchable: false },
378
- { field: :address_city, type: 'String', is_searchable: false },
379
- { field: :address_state, type: 'String', is_searchable: false },
380
- { field: :address_zip, type: 'String', is_searchable: false },
381
- { field: :address_country, type: 'String', is_searchable: false },
382
- { field: :cvc_check, type: 'String', is_searchable: false },
368
+ { field: :id, type: 'String', 'is-filterable': false },
369
+ { field: :last4, type: 'String', 'is-filterable': false },
370
+ { field: :brand, type: 'String', 'is-filterable': false },
371
+ { field: :funding, type: 'String', 'is-filterable': false },
372
+ { field: :exp_month, type: 'Number', 'is-filterable': false },
373
+ { field: :exp_year, type: 'Number', 'is-filterable': false },
374
+ { field: :country, type: 'String', 'is-filterable': false },
375
+ { field: :name, type: 'String', 'is-filterable': false },
376
+ { field: :address_line1, type: 'String', 'is-filterable': false },
377
+ { field: :address_line2, type: 'String', 'is-filterable': false },
378
+ { field: :address_city, type: 'String', 'is-filterable': false },
379
+ { field: :address_state, type: 'String', 'is-filterable': false },
380
+ { field: :address_zip, type: 'String', 'is-filterable': false },
381
+ { field: :address_country, type: 'String', 'is-filterable': false },
382
+ { field: :cvc_check, type: 'String', 'is-filterable': false },
383
383
  {
384
384
  field: :customer,
385
385
  type: 'String',
386
386
  reference: "#{model_name}.id",
387
- is_searchable: false
387
+ 'is-filterable': false
388
388
  }
389
389
  ]
390
390
  })
@@ -399,25 +399,25 @@ module ForestLiana
399
399
  is_searchable: false,
400
400
  pagination_type: 'cursor',
401
401
  fields: [
402
- { field: :id, type: 'String', is_searchable: false },
403
- { field: :cancel_at_period_end, type: 'Boolean', is_searchable: false },
404
- { field: :canceled_at, type: 'Date', is_searchable: false },
405
- { field: :created, type: 'Date', is_searchable: false },
406
- { field: :current_period_end, type: 'Date', is_searchable: false },
407
- { field: :current_period_start, type: 'Date', is_searchable: false },
408
- { field: :ended_at, type: 'Date', is_searchable: false },
409
- { field: :livemode, type: 'Boolean', is_searchable: false },
410
- { field: :quantity, type: 'Number', is_searchable: false },
411
- { field: :start, type: 'Date', is_searchable: false },
412
- { field: :status, type: 'String', is_searchable: false },
413
- { field: :tax_percent, type: 'Number', is_searchable: false },
414
- { field: :trial_end, type: 'Date', is_searchable: false },
415
- { field: :trial_start, type: 'Date', is_searchable: false },
402
+ { field: :id, type: 'String', 'is-filterable': false },
403
+ { field: :cancel_at_period_end, type: 'Boolean', 'is-filterable': false },
404
+ { field: :canceled_at, type: 'Date', 'is-filterable': false },
405
+ { field: :created, type: 'Date', 'is-filterable': false },
406
+ { field: :current_period_end, type: 'Date', 'is-filterable': false },
407
+ { field: :current_period_start, type: 'Date', 'is-filterable': false },
408
+ { field: :ended_at, type: 'Date', 'is-filterable': false },
409
+ { field: :livemode, type: 'Boolean', 'is-filterable': false },
410
+ { field: :quantity, type: 'Number', 'is-filterable': false },
411
+ { field: :start, type: 'Date', 'is-filterable': false },
412
+ { field: :status, type: 'String', 'is-filterable': false },
413
+ { field: :tax_percent, type: 'Number', 'is-filterable': false },
414
+ { field: :trial_end, type: 'Date', 'is-filterable': false },
415
+ { field: :trial_start, type: 'Date', 'is-filterable': false },
416
416
  {
417
417
  field: :customer,
418
418
  type: 'String',
419
419
  reference: "#{model_name}.id",
420
- is_searchable: false
420
+ 'is-filterable': false
421
421
  }
422
422
  ]
423
423
  })
@@ -433,23 +433,23 @@ module ForestLiana
433
433
  only_for_relationships: true,
434
434
  pagination_type: 'cursor',
435
435
  fields: [
436
- { field: :id, type: 'String', is_searchable: false },
437
- { field: :account, type: 'String', is_searchable: false },
438
- { field: :account_holder_name, type: 'String', is_searchable: false },
439
- { field: :account_holder_type, type: 'String', is_searchable: false },
440
- { field: :bank_name, type: 'String', is_searchable: false },
441
- { field: :country, type: 'String', is_searchable: false },
442
- { field: :currency, type: 'String', is_searchable: false },
443
- { field: :default_for_currency, type: 'Boolean', is_searchable: false },
444
- { field: :fingerprint, type: 'String', is_searchable: false },
445
- { field: :last4, type: 'String', is_searchable: false },
446
- { field: :rooting_number, type: 'String', is_searchable: false },
447
- { field: :status, type: 'String', is_searchable: false },
436
+ { field: :id, type: 'String', 'is-filterable': false },
437
+ { field: :account, type: 'String', 'is-filterable': false },
438
+ { field: :account_holder_name, type: 'String', 'is-filterable': false },
439
+ { field: :account_holder_type, type: 'String', 'is-filterable': false },
440
+ { field: :bank_name, type: 'String', 'is-filterable': false },
441
+ { field: :country, type: 'String', 'is-filterable': false },
442
+ { field: :currency, type: 'String', 'is-filterable': false },
443
+ { field: :default_for_currency, type: 'Boolean', 'is-filterable': false },
444
+ { field: :fingerprint, type: 'String', 'is-filterable': false },
445
+ { field: :last4, type: 'String', 'is-filterable': false },
446
+ { field: :rooting_number, type: 'String', 'is-filterable': false },
447
+ { field: :status, type: 'String', 'is-filterable': false },
448
448
  {
449
449
  field: :customer,
450
450
  type: 'String',
451
451
  reference: "#{model_name}.id",
452
- is_searchable: false
452
+ 'is-filterable': false
453
453
  }
454
454
  ]
455
455
  })
@@ -41,16 +41,13 @@ module ForestLiana::Collection
41
41
 
42
42
  def field(name, opts, &block)
43
43
  opts[:read_only] = true unless opts.has_key?(:read_only)
44
- opts[:is_searchable] = false unless opts.has_key?(:is_searchable)
45
-
46
44
  opts[:read_only] = false if opts.has_key?(:set)
47
- opts[:is_searchable] = true if opts.has_key?(:search)
48
45
 
49
46
  model.fields << opts.merge({
50
47
  field: name,
51
48
  :'is-read-only' => opts[:read_only],
52
- :'is-searchable' => opts['is_searchable'],
53
- :'is-sortable' => opts[:is_sortable],
49
+ :'is-filterable' => !!opts[:is_filterable],
50
+ :'is-sortable' => !!opts[:is_sortable],
54
51
  :'is-virtual' => true
55
52
  })
56
53
 
@@ -1,3 +1,3 @@
1
1
  module ForestLiana
2
- VERSION = "1.8.1"
2
+ VERSION = "1.9.0"
3
3
  end
@@ -51,7 +51,8 @@ module ForestLiana
51
51
  field: 'belongs_to_field',
52
52
  type: 'Number',
53
53
  reference: 'belongs_to_fields.id',
54
- inverseOf: 'has_one_field'
54
+ inverseOf: 'has_one_field',
55
+ "is-filterable": true
55
56
  })
56
57
  end
57
58
 
@@ -61,7 +62,8 @@ module ForestLiana
61
62
  field: 'belongs_to_fields',
62
63
  type: ['Number'],
63
64
  reference: 'belongs_to_fields.id',
64
- inverseOf: 'has_many_field'
65
+ inverseOf: 'has_many_field',
66
+ "is-filterable": false
65
67
  })
66
68
  end
67
69
 
@@ -71,7 +73,8 @@ module ForestLiana
71
73
  field: 'foo',
72
74
  type: ['Number'],
73
75
  reference: 'belongs_to_fields.id',
74
- inverseOf: 'has_many_class_name_field'
76
+ inverseOf: 'has_many_class_name_field',
77
+ "is-filterable": false
75
78
  })
76
79
  end
77
80
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: forest_liana
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.1
4
+ version: 1.9.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Munda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-09-26 00:00:00.000000000 Z
11
+ date: 2017-10-02 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails