kanal 0.3.0

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 (44) hide show
  1. checksums.yaml +7 -0
  2. data/.DS_Store +0 -0
  3. data/.rspec +3 -0
  4. data/.rubocop.yml +14 -0
  5. data/.ruby-version +1 -0
  6. data/.vscode/settings.json +8 -0
  7. data/CHANGELOG.md +15 -0
  8. data/Gemfile +26 -0
  9. data/Gemfile.lock +108 -0
  10. data/LICENSE.txt +21 -0
  11. data/README.md +45 -0
  12. data/Rakefile +12 -0
  13. data/kanal.gemspec +39 -0
  14. data/lib/kanal/core/conditions/condition.rb +36 -0
  15. data/lib/kanal/core/conditions/condition_creator.rb +32 -0
  16. data/lib/kanal/core/conditions/condition_pack.rb +52 -0
  17. data/lib/kanal/core/conditions/condition_pack_creator.rb +41 -0
  18. data/lib/kanal/core/conditions/condition_storage.rb +58 -0
  19. data/lib/kanal/core/core.rb +214 -0
  20. data/lib/kanal/core/helpers/condition_finder.rb +26 -0
  21. data/lib/kanal/core/helpers/parameter_bag.rb +22 -0
  22. data/lib/kanal/core/helpers/parameter_bag_with_registrator.rb +46 -0
  23. data/lib/kanal/core/helpers/parameter_finder_with_method_missing_mixin.rb +38 -0
  24. data/lib/kanal/core/helpers/parameter_registrator.rb +48 -0
  25. data/lib/kanal/core/helpers/router_proc_parser.rb +47 -0
  26. data/lib/kanal/core/hooks/hook_storage.rb +109 -0
  27. data/lib/kanal/core/input/input.rb +20 -0
  28. data/lib/kanal/core/interfaces/interface.rb +65 -0
  29. data/lib/kanal/core/logger/logger.rb +12 -0
  30. data/lib/kanal/core/output/output.rb +31 -0
  31. data/lib/kanal/core/output/output_creator.rb +17 -0
  32. data/lib/kanal/core/plugins/plugin.rb +44 -0
  33. data/lib/kanal/core/router/router.rb +97 -0
  34. data/lib/kanal/core/router/router_node.rb +131 -0
  35. data/lib/kanal/core/router/router_storage.rb +33 -0
  36. data/lib/kanal/core/services/service_container.rb +97 -0
  37. data/lib/kanal/interfaces/simple_cli/simple_cli_interface.rb +51 -0
  38. data/lib/kanal/plugins/batteries/batteries_plugin.rb +116 -0
  39. data/lib/kanal/version.rb +5 -0
  40. data/lib/kanal.rb +9 -0
  41. data/sig/kanal/core/conditions/condition_pack.rbs +9 -0
  42. data/sig/kanal/core/conditions/condition_storage.rbs +9 -0
  43. data/sig/kanal.rbs +4 -0
  44. metadata +90 -0
metadata ADDED
@@ -0,0 +1,90 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: kanal
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.0
5
+ platform: ruby
6
+ authors:
7
+ - idchlife
8
+ autorequire:
9
+ bindir: exe
10
+ cert_chain: []
11
+ date: 2023-01-29 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: Thanks to the core library, ecosystem of Kanal tools can be extendted
14
+ to use with input-output bot-like behaviour, with routing
15
+ email:
16
+ - idchlife@gmail.com
17
+ executables: []
18
+ extensions: []
19
+ extra_rdoc_files: []
20
+ files:
21
+ - ".DS_Store"
22
+ - ".rspec"
23
+ - ".rubocop.yml"
24
+ - ".ruby-version"
25
+ - ".vscode/settings.json"
26
+ - CHANGELOG.md
27
+ - Gemfile
28
+ - Gemfile.lock
29
+ - LICENSE.txt
30
+ - README.md
31
+ - Rakefile
32
+ - kanal.gemspec
33
+ - lib/kanal.rb
34
+ - lib/kanal/core/conditions/condition.rb
35
+ - lib/kanal/core/conditions/condition_creator.rb
36
+ - lib/kanal/core/conditions/condition_pack.rb
37
+ - lib/kanal/core/conditions/condition_pack_creator.rb
38
+ - lib/kanal/core/conditions/condition_storage.rb
39
+ - lib/kanal/core/core.rb
40
+ - lib/kanal/core/helpers/condition_finder.rb
41
+ - lib/kanal/core/helpers/parameter_bag.rb
42
+ - lib/kanal/core/helpers/parameter_bag_with_registrator.rb
43
+ - lib/kanal/core/helpers/parameter_finder_with_method_missing_mixin.rb
44
+ - lib/kanal/core/helpers/parameter_registrator.rb
45
+ - lib/kanal/core/helpers/router_proc_parser.rb
46
+ - lib/kanal/core/hooks/hook_storage.rb
47
+ - lib/kanal/core/input/input.rb
48
+ - lib/kanal/core/interfaces/interface.rb
49
+ - lib/kanal/core/logger/logger.rb
50
+ - lib/kanal/core/output/output.rb
51
+ - lib/kanal/core/output/output_creator.rb
52
+ - lib/kanal/core/plugins/plugin.rb
53
+ - lib/kanal/core/router/router.rb
54
+ - lib/kanal/core/router/router_node.rb
55
+ - lib/kanal/core/router/router_storage.rb
56
+ - lib/kanal/core/services/service_container.rb
57
+ - lib/kanal/interfaces/simple_cli/simple_cli_interface.rb
58
+ - lib/kanal/plugins/batteries/batteries_plugin.rb
59
+ - lib/kanal/version.rb
60
+ - sig/kanal.rbs
61
+ - sig/kanal/core/conditions/condition_pack.rbs
62
+ - sig/kanal/core/conditions/condition_storage.rbs
63
+ homepage: https://idchlife.github.io/kanal-documentation/
64
+ licenses:
65
+ - MIT
66
+ metadata:
67
+ allowed_push_host: https://rubygems.org
68
+ homepage_uri: https://idchlife.github.io/kanal-documentation/
69
+ source_code_uri: https://github.com/idchlife/kanal
70
+ changelog_uri: https://github.com/idchlife/kanal/CHANGELOG.md
71
+ post_install_message:
72
+ rdoc_options: []
73
+ require_paths:
74
+ - lib
75
+ required_ruby_version: !ruby/object:Gem::Requirement
76
+ requirements:
77
+ - - ">="
78
+ - !ruby/object:Gem::Version
79
+ version: 2.7.6
80
+ required_rubygems_version: !ruby/object:Gem::Requirement
81
+ requirements:
82
+ - - ">="
83
+ - !ruby/object:Gem::Version
84
+ version: '0'
85
+ requirements: []
86
+ rubygems_version: 3.1.6
87
+ signing_key:
88
+ specification_version: 4
89
+ summary: Kanal library
90
+ test_files: []