push_type_core 0.5.3 → 0.6.0.beta.1

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.
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