push_type_core 0.5.3 → 0.6.0.beta.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (80) hide show
  1. checksums.yaml +4 -4
  2. data/app/fields/push_type/asset_field.rb +5 -7
  3. data/app/fields/push_type/date_field.rb +4 -3
  4. data/app/fields/push_type/markdown_field.rb +20 -16
  5. data/app/fields/push_type/matrix_field.rb +26 -16
  6. data/app/fields/push_type/node_field.rb +7 -9
  7. data/app/fields/push_type/number_field.rb +2 -5
  8. data/app/fields/push_type/relation_field.rb +78 -0
  9. data/app/fields/push_type/repeater_field.rb +45 -6
  10. data/app/fields/push_type/select_field.rb +9 -21
  11. data/app/fields/push_type/structure_field.rb +40 -0
  12. data/app/fields/push_type/tag_list_field.rb +23 -12
  13. data/app/fields/push_type/taxonomy_field.rb +6 -8
  14. data/app/fields/push_type/time_field.rb +4 -3
  15. data/app/models/concerns/push_type/customizable.rb +41 -21
  16. data/app/models/concerns/push_type/presentable.rb +3 -3
  17. data/app/models/concerns/push_type/templatable.rb +1 -1
  18. data/app/models/push_type/structure.rb +27 -0
  19. data/lib/push_type/field_type.rb +93 -8
  20. data/lib/push_type/primitives/array_type.rb +14 -0
  21. data/lib/push_type/primitives/base.rb +21 -0
  22. data/lib/push_type/primitives/number_type.rb +14 -0
  23. data/lib/push_type/primitives/object_type.rb +7 -0
  24. data/lib/push_type/primitives/string_type.rb +12 -0
  25. data/lib/push_type/testing/factories.rb +1 -1
  26. data/lib/push_type/testing/setup.rb +2 -0
  27. data/lib/push_type/version.rb +1 -1
  28. data/test/dummy/config/initializers/push_type.rb +1 -1
  29. data/test/dummy/config/secrets.yml +2 -2
  30. data/test/dummy/db/schema.rb +1 -1
  31. data/test/dummy/log/test.log +15836 -6164
  32. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/0ANSDcZJu9gPyqtYPIW729qm1kriQ29Vn9LU8T2SGQU.cache +0 -0
  33. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/3T6ioyhwSsEzte_a9viHBvfmuKgORQ019srIEoUYkVs.cache +1 -0
  34. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5Lly_CA8DZvPhQV2jDQx-Y6P_y3Ygra9t5jfSlGhHDA.cache +2 -0
  35. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/IYzwMwq7DWWSuojH6oXsrP__pcD7O8TQieMFSzQiwnc.cache +1 -0
  36. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/OI6uxGcnsKavdWTtwDAasU3wPx8QXhzBgV0X2n1KjMQ.cache +3 -0
  37. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/_d65qW7wxRtKVSYpmfSenECz5QUWVI9pppUgV7TA1Rk.cache +0 -0
  38. data/test/dummy/tmp/generators/config/initializers/push_type.rb +1 -1
  39. data/test/fields/push_type/asset_field_test.rb +12 -25
  40. data/test/fields/push_type/date_field_test.rb +11 -3
  41. data/test/fields/push_type/markdown_field_test.rb +12 -24
  42. data/test/fields/push_type/matrix_field_test.rb +16 -24
  43. data/test/fields/push_type/node_field_test.rb +36 -59
  44. data/test/fields/push_type/number_field_test.rb +18 -4
  45. data/test/fields/push_type/relation_field_test.rb +48 -0
  46. data/test/fields/push_type/repeater_field_test.rb +20 -11
  47. data/test/fields/push_type/select_field_test.rb +23 -28
  48. data/test/fields/push_type/string_field_test.rb +21 -0
  49. data/test/fields/push_type/structure_field_test.rb +27 -0
  50. data/test/fields/push_type/tag_list_field_test.rb +15 -14
  51. data/test/fields/push_type/taxonomy_field_test.rb +36 -45
  52. data/test/fields/push_type/text_field_test.rb +11 -2
  53. data/test/fields/push_type/time_field_test.rb +11 -3
  54. data/test/lib/push_type/core_test.rb +3 -3
  55. data/test/lib/push_type/field_type_test.rb +15 -13
  56. data/test/lib/push_type/primitives_test.rb +43 -0
  57. data/test/models/concerns/push_type/customizable_test.rb +9 -27
  58. data/test/models/concerns/push_type/nestable_test.rb +3 -0
  59. data/test/models/concerns/push_type/templatable_test.rb +17 -16
  60. metadata +65 -40
  61. data/lib/push_type/fields/arrays.rb +0 -23
  62. data/lib/push_type/fields/base.rb +0 -65
  63. data/lib/push_type/fields/class_methods.rb +0 -21
  64. data/lib/push_type/fields/relations.rb +0 -39
  65. data/lib/push_type/fields/ui.rb +0 -16
  66. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/5hBD45unr3-A8x6pxXjxq708mnY9gJisy1yA5AojZWQ.cache +0 -3
  67. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/M0EVptJKeB1GMjwoMb3w3mgp8VB55MSbItnFhItY4hA.cache +0 -1
  68. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/MSjNaQjz3SH1LnDyk7nWta_i3hcCEV9m1eoNFbOXjwI.cache +0 -2
  69. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/g97nJc5YmnbscVR5pZZoxgfj652ml7dLjUIu0FHDwLA.cache +0 -0
  70. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/utXmZy0kE8zUnHIqwtbjUUJlYlFcGDJreK2YPDuR3n8.cache +0 -1
  71. data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/vlJujjzOikOTUvCvT3C4o3vK0ySfxbQQ3RBE37vXH0U.cache +0 -0
  72. /data/test/dummy/db/migrate/{20150928114659_create_push_type_users.push_type.rb → 20151015181653_create_push_type_users.push_type.rb} +0 -0
  73. /data/test/dummy/db/migrate/{20150928114660_create_push_type_nodes.push_type.rb → 20151015181654_create_push_type_nodes.push_type.rb} +0 -0
  74. /data/test/dummy/db/migrate/{20150928114661_create_push_type_node_hierarchies.push_type.rb → 20151015181655_create_push_type_node_hierarchies.push_type.rb} +0 -0
  75. /data/test/dummy/db/migrate/{20150928114662_create_push_type_assets.push_type.rb → 20151015181656_create_push_type_assets.push_type.rb} +0 -0
  76. /data/test/dummy/db/migrate/{20150928114663_create_push_type_taxonomies.push_type.rb → 20151015181657_create_push_type_taxonomies.push_type.rb} +0 -0
  77. /data/test/dummy/db/migrate/{20150928114664_create_push_type_taxonomy_hierarchies.push_type.rb → 20151015181658_create_push_type_taxonomy_hierarchies.push_type.rb} +0 -0
  78. /data/test/dummy/db/migrate/{20150928114665_add_field_store_default_values.push_type.rb → 20151015181659_add_field_store_default_values.push_type.rb} +0 -0
  79. /data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/{0VLfu-ipRCm5lg6MOptoyejoCkDcrvsfiei7dJqJR7o.cache → MSZIb53M-WSslpcsxtT_LlGognclDpLjB9YyJ1qLm3c.cache} +0 -0
  80. /data/test/dummy/tmp/cache/assets/test/sprockets/v3.0/{8Mt8KKhDfWMlVzIUM3vc5LZsEDGQkPmtR1lWxp_W0KU.cache → jE1v4kSAksoYAFuvE0Nbl5ZIcuyFYlWX8cb9YkFd5BY.cache} +0 -0
@@ -1,65 +0,0 @@
1
- module PushType
2
- module Fields
3
- module Base
4
-
5
- attr_reader :name
6
-
7
- def initialize(name, opts = {})
8
- @name = name.to_s
9
- @opts = [defaults, self.class.options, opts].compact.inject(&:merge)
10
- end
11
-
12
- def kind
13
- self.class.kind
14
- end
15
-
16
- def json_key
17
- name.to_sym
18
- end
19
-
20
- def param
21
- json_key
22
- end
23
-
24
- def multiple?
25
- false
26
- end
27
-
28
- def template
29
- @opts[:template]
30
- end
31
-
32
- def label
33
- @opts[:label]
34
- end
35
-
36
- def html_options
37
- @opts[:html_options]
38
- end
39
-
40
- def form_helper
41
- @opts[:form_helper]
42
- end
43
-
44
- def to_json(val)
45
- val
46
- end
47
-
48
- def from_json(val)
49
- val
50
- end
51
-
52
- private
53
-
54
- def defaults
55
- {
56
- template: 'default',
57
- label: name.humanize,
58
- form_helper: :text_field,
59
- html_options: {}
60
- }
61
- end
62
-
63
- end
64
- end
65
- end
@@ -1,21 +0,0 @@
1
- module PushType
2
- module Fields
3
- module ClassMethods
4
-
5
- attr_reader :initialized_blk
6
-
7
- def options(*opts)
8
- @options ||= opts.first
9
- end
10
-
11
- def initialized_on_node(&block)
12
- @initialized_blk = block
13
- end
14
-
15
- def kind
16
- self.name.demodulize.underscore.gsub(/_(field|type)$/, '')
17
- end
18
-
19
- end
20
- end
21
- end
@@ -1,39 +0,0 @@
1
- module PushType
2
- module Fields
3
- module Relations
4
-
5
- def json_key
6
- suffix = multiple? ? '_ids' : '_id'
7
- (name.singularize + suffix).to_sym
8
- end
9
-
10
- def relation_class
11
- (@opts[:class] || name).to_s.classify.constantize
12
- end
13
-
14
- def relation_root
15
- relation_class
16
- end
17
-
18
- def relation_tree
19
- flatten_tree relation_root.hash_tree
20
- end
21
-
22
- private
23
-
24
- def flatten_tree(hash_tree, d = 0)
25
- hash_tree.flat_map do |parent, children|
26
- [
27
- {
28
- value: parent.id,
29
- text: parent.title,
30
- depth: d
31
- },
32
- flatten_tree(children, d+1)
33
- ]
34
- end.flatten
35
- end
36
-
37
- end
38
- end
39
- end
@@ -1,16 +0,0 @@
1
- module PushType
2
- module Fields
3
- module Ui
4
-
5
- def column_class
6
- case @opts[:colspan]
7
- when 2 then 'medium-6'
8
- when 3 then 'medium-4'
9
- when 3 then 'medium-3'
10
- else nil
11
- end
12
- end
13
-
14
- end
15
- end
16
- end
@@ -1,3 +0,0 @@
1
- [o:Set:
2
- @hash{
3
- I"environment-version:ETTI"environment-paths;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"mfile-digest:///Users/aaron/dev/pushcode/push_type/core/test/dummy/app/assets/stylesheets/application.css;TTI"]file-digest:///Users/aaron/dev/pushcode/push_type/core/test/dummy/app/assets/stylesheets;TT
@@ -1 +0,0 @@
1
- I"�file:///Users/aaron/dev/pushcode/push_type/core/test/dummy/app/assets/stylesheets/application.css?type=text/css&pipeline=self&id=dd9845a69e14ddf1cc779356fbe38875287187ccde43267244bf86d041699216:ET
@@ -1,2 +0,0 @@
1
- [o:Set:
2
- @hash{ I"environment-version:ETTI"environment-paths;TTI"0processors:type=text/css&file_type=text/css;TTI"mfile-digest:///Users/aaron/dev/pushcode/push_type/core/test/dummy/app/assets/stylesheets/application.css;TTI">processors:type=text/css&file_type=text/css&pipeline=self;TTI"]file-digest:///Users/aaron/dev/pushcode/push_type/core/test/dummy/app/assets/stylesheets;TT
@@ -1 +0,0 @@
1
- I"�file:///Users/aaron/dev/pushcode/push_type/core/test/dummy/app/assets/stylesheets/application.css?type=text/css&id=eb2a858f510f9634745bbb208e039743b45481e89c40e4100d6d48f1caeb3836:ET