k_doc 0.0.18 → 0.0.21

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.
data/lib/k_doc.rb CHANGED
@@ -3,14 +3,23 @@
3
3
  require 'securerandom'
4
4
 
5
5
  require 'table_print'
6
+ require 'forwardable'
6
7
  require 'k_log'
7
8
  require 'k_type'
8
9
  require 'k_util'
9
10
  require 'k_decor'
10
11
 
11
12
  require 'k_doc/version'
13
+ require 'k_doc/mixins/guarded'
14
+ require 'k_doc/mixins/taggable'
15
+ require 'k_doc/mixins/datum'
16
+ require 'k_doc/mixins/block_processor'
17
+ require 'k_doc/mixins/composable_components'
12
18
  require 'k_doc/container'
13
19
  # require 'k_doc/data'
20
+ require 'k_doc/csv_doc'
21
+ require 'k_doc/json_doc'
22
+ require 'k_doc/yaml_doc'
14
23
  require 'k_doc/model'
15
24
  require 'k_doc/fake_opinion'
16
25
  require 'k_doc/settings'
@@ -24,14 +33,43 @@ module KDoc
24
33
  class Error < StandardError; end
25
34
 
26
35
  class << self
27
- # Is this needed
28
- # Factory method to create a new model
29
36
  def model(key = nil, **options, &block)
30
37
  model = KDoc::Model.new(key, **options, &block)
31
38
  model.execute_block
32
39
  model
33
40
  end
34
41
 
42
+ # These need to be registerable
43
+ def document(key = nil, **options, &block)
44
+ model(key, **{ type: :document }.merge(**options), &block)
45
+ end
46
+
47
+ def bootstrap(key = nil, **options, &block)
48
+ model(key, **{ type: :bootstrap }.merge(**options), &block)
49
+ end
50
+
51
+ def app_settings(key = nil, **options, &block)
52
+ model(key, **{ type: :app_settings }.merge(**options), &block)
53
+ end
54
+
55
+ def csv(key = nil, **options, &block)
56
+ doc = KDoc::CsvDoc.new(key, **options, &block)
57
+ doc.execute_block
58
+ doc
59
+ end
60
+
61
+ def json(key = nil, **options, &block)
62
+ doc = KDoc::JsonDoc.new(key, **options, &block)
63
+ doc.execute_block
64
+ doc
65
+ end
66
+
67
+ def yaml(key = nil, **options, &block)
68
+ doc = KDoc::YamlDoc.new(key, **options, &block)
69
+ doc.execute_block
70
+ doc
71
+ end
72
+
35
73
  attr_accessor :opinion
36
74
  attr_accessor :log
37
75
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: k_doc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.18
4
+ version: 0.0.21
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2021-05-20 00:00:00.000000000 Z
11
+ date: 2021-11-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -88,6 +88,15 @@ executables: []
88
88
  extensions: []
89
89
  extra_rdoc_files: []
90
90
  files:
91
+ - ".builders/directors/_.rb"
92
+ - ".builders/directors/build_actions.rb"
93
+ - ".builders/directors/design_pattern_director.rb"
94
+ - ".builders/directors/director.rb"
95
+ - ".builders/directors/klue_director.rb"
96
+ - ".builders/initializers/_.rb"
97
+ - ".builders/initializers/configure_builder.rb"
98
+ - ".builders/initializers/handlebars_helpers.rb"
99
+ - ".builders/setup.rb"
91
100
  - ".github/workflows/main.yml"
92
101
  - ".gitignore"
93
102
  - ".rspec"
@@ -111,13 +120,22 @@ files:
111
120
  - k_doc.gemspec
112
121
  - lib/k_doc.rb
113
122
  - lib/k_doc/container.rb
123
+ - lib/k_doc/csv_doc.rb
114
124
  - lib/k_doc/decorators/settings_decorator.rb
115
125
  - lib/k_doc/decorators/table_decorator.rb
116
126
  - lib/k_doc/fake_opinion.rb
127
+ - lib/k_doc/json_doc.rb
128
+ - lib/k_doc/mixins/block_processor.rb
129
+ - lib/k_doc/mixins/composable_components.rb
130
+ - lib/k_doc/mixins/datum.rb
131
+ - lib/k_doc/mixins/guarded.rb
132
+ - lib/k_doc/mixins/taggable.rb
117
133
  - lib/k_doc/model.rb
134
+ - lib/k_doc/model_backup.rb
118
135
  - lib/k_doc/settings.rb
119
136
  - lib/k_doc/table.rb
120
137
  - lib/k_doc/version.rb
138
+ - lib/k_doc/yaml_doc.rb
121
139
  homepage: http://appydave.com/gems/k-doc
122
140
  licenses:
123
141
  - MIT