zaikio-mission_control 0.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/MIT-LICENSE +20 -0
- data/README.md +64 -0
- data/Rakefile +37 -0
- data/config/locales/de.yml +70 -0
- data/config/locales/en.yml +69 -0
- data/lib/zaikio/mission_control/base.rb +7 -0
- data/lib/zaikio/mission_control/configuration.rb +17 -0
- data/lib/zaikio/mission_control/finishings/base.rb +8 -0
- data/lib/zaikio/mission_control/finishings/comb_binding.rb +8 -0
- data/lib/zaikio/mission_control/finishings/embossing.rb +8 -0
- data/lib/zaikio/mission_control/finishings/foil_stamp.rb +8 -0
- data/lib/zaikio/mission_control/finishings/glue.rb +8 -0
- data/lib/zaikio/mission_control/finishings/head_band.rb +8 -0
- data/lib/zaikio/mission_control/finishings/hole.rb +8 -0
- data/lib/zaikio/mission_control/finishings/lamination.rb +8 -0
- data/lib/zaikio/mission_control/finishings/perfect_binding.rb +8 -0
- data/lib/zaikio/mission_control/finishings/perforation.rb +8 -0
- data/lib/zaikio/mission_control/finishings/ring_binding.rb +8 -0
- data/lib/zaikio/mission_control/finishings/saddle_stitch.rb +8 -0
- data/lib/zaikio/mission_control/finishings/spiral_binding.rb +8 -0
- data/lib/zaikio/mission_control/finishings/strip_binding.rb +8 -0
- data/lib/zaikio/mission_control/finishings/thread_sewing.rb +8 -0
- data/lib/zaikio/mission_control/jobs/base.rb +49 -0
- data/lib/zaikio/mission_control/jobs/booklet.rb +12 -0
- data/lib/zaikio/mission_control/jobs/box.rb +10 -0
- data/lib/zaikio/mission_control/jobs/brochure.rb +12 -0
- data/lib/zaikio/mission_control/jobs/business_card.rb +9 -0
- data/lib/zaikio/mission_control/jobs/carton.rb +9 -0
- data/lib/zaikio/mission_control/jobs/carton_two_piece.rb +10 -0
- data/lib/zaikio/mission_control/jobs/compliment_slip.rb +9 -0
- data/lib/zaikio/mission_control/jobs/continuation_sheet.rb +9 -0
- data/lib/zaikio/mission_control/jobs/cover_letter.rb +9 -0
- data/lib/zaikio/mission_control/jobs/envelope.rb +9 -0
- data/lib/zaikio/mission_control/jobs/flyer.rb +9 -0
- data/lib/zaikio/mission_control/jobs/hardcover_book.rb +12 -0
- data/lib/zaikio/mission_control/jobs/label.rb +9 -0
- data/lib/zaikio/mission_control/jobs/leaflet.rb +9 -0
- data/lib/zaikio/mission_control/jobs/letter_head.rb +9 -0
- data/lib/zaikio/mission_control/jobs/magazine.rb +12 -0
- data/lib/zaikio/mission_control/jobs/map.rb +10 -0
- data/lib/zaikio/mission_control/jobs/ncr_pad.rb +11 -0
- data/lib/zaikio/mission_control/jobs/newspaper.rb +10 -0
- data/lib/zaikio/mission_control/jobs/notebook.rb +11 -0
- data/lib/zaikio/mission_control/jobs/postcard.rb +9 -0
- data/lib/zaikio/mission_control/jobs/poster.rb +9 -0
- data/lib/zaikio/mission_control/jobs/self_mailer.rb +9 -0
- data/lib/zaikio/mission_control/jobs/sheet.rb +9 -0
- data/lib/zaikio/mission_control/jobs/softcover_book.rb +10 -0
- data/lib/zaikio/mission_control/parts/back.rb +8 -0
- data/lib/zaikio/mission_control/parts/base.rb +8 -0
- data/lib/zaikio/mission_control/parts/business_card.rb +8 -0
- data/lib/zaikio/mission_control/parts/carton.rb +8 -0
- data/lib/zaikio/mission_control/parts/case.rb +8 -0
- data/lib/zaikio/mission_control/parts/compliment_slip.rb +8 -0
- data/lib/zaikio/mission_control/parts/content.rb +8 -0
- data/lib/zaikio/mission_control/parts/continuation_sheet.rb +8 -0
- data/lib/zaikio/mission_control/parts/cover.rb +8 -0
- data/lib/zaikio/mission_control/parts/cover_letter.rb +8 -0
- data/lib/zaikio/mission_control/parts/endpaper.rb +8 -0
- data/lib/zaikio/mission_control/parts/envelope.rb +8 -0
- data/lib/zaikio/mission_control/parts/flyer.rb +8 -0
- data/lib/zaikio/mission_control/parts/insert.rb +8 -0
- data/lib/zaikio/mission_control/parts/jacket.rb +8 -0
- data/lib/zaikio/mission_control/parts/label.rb +8 -0
- data/lib/zaikio/mission_control/parts/leaflet.rb +8 -0
- data/lib/zaikio/mission_control/parts/letter_head.rb +8 -0
- data/lib/zaikio/mission_control/parts/lid.rb +8 -0
- data/lib/zaikio/mission_control/parts/map_sheet.rb +8 -0
- data/lib/zaikio/mission_control/parts/outsert.rb +8 -0
- data/lib/zaikio/mission_control/parts/postcard.rb +8 -0
- data/lib/zaikio/mission_control/parts/poster.rb +8 -0
- data/lib/zaikio/mission_control/parts/self_mailer.rb +8 -0
- data/lib/zaikio/mission_control/parts/sheet.rb +8 -0
- data/lib/zaikio/mission_control/version.rb +5 -0
- data/lib/zaikio/mission_control.rb +136 -0
- metadata +204 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA256:
|
3
|
+
metadata.gz: ed50ab060b92139a039d56bb86768cb471612b6d054d4682760e125da106cc98
|
4
|
+
data.tar.gz: 423ab70c85881119081be908cb24eda3ce556912afadc67cc4d4a573e1d70d21
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: c5ee9ad9edddf33e46b3d8eeab0eeea4dc51a8455eafcf978197764e01cc6393efc3ee653269da7c5ea7c9abf724f4f6029c7458f531d5eafeaced0b8e5c88d5
|
7
|
+
data.tar.gz: 267d8cd3c600dc754823a08557957d78c748a6880e6e603e8eb205536ef4f5295005c66f76e934b7105f62fd7e7d6a23202638217554eebb6e9e3e4dd795717e
|
data/MIT-LICENSE
ADDED
@@ -0,0 +1,20 @@
|
|
1
|
+
Copyright 2022 Zaikio GmbH
|
2
|
+
|
3
|
+
Permission is hereby granted, free of charge, to any person obtaining
|
4
|
+
a copy of this software and associated documentation files (the
|
5
|
+
"Software"), to deal in the Software without restriction, including
|
6
|
+
without limitation the rights to use, copy, modify, merge, publish,
|
7
|
+
distribute, sublicense, and/or sell copies of the Software, and to
|
8
|
+
permit persons to whom the Software is furnished to do so, subject to
|
9
|
+
the following conditions:
|
10
|
+
|
11
|
+
The above copyright notice and this permission notice shall be
|
12
|
+
included in all copies or substantial portions of the Software.
|
13
|
+
|
14
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
15
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
16
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
17
|
+
NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
|
18
|
+
LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
|
19
|
+
OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
|
20
|
+
WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
data/README.md
ADDED
@@ -0,0 +1,64 @@
|
|
1
|
+
# Zaikio::MissionControl
|
2
|
+
|
3
|
+
Ruby API Client for Zaikio Mission Control.
|
4
|
+
|
5
|
+
## Installation
|
6
|
+
|
7
|
+
### 1. Add this line to your application's Gemfile:
|
8
|
+
|
9
|
+
```ruby
|
10
|
+
gem 'zaikio-mission_control'
|
11
|
+
```
|
12
|
+
|
13
|
+
And then execute:
|
14
|
+
```bash
|
15
|
+
$ bundle
|
16
|
+
```
|
17
|
+
|
18
|
+
Or install it yourself as:
|
19
|
+
```bash
|
20
|
+
$ gem install zaikio-mission_control
|
21
|
+
```
|
22
|
+
|
23
|
+
### 2. Configure the gem:
|
24
|
+
|
25
|
+
```rb
|
26
|
+
# config/initializers/zaikio_mission_control.rb
|
27
|
+
|
28
|
+
Zaikio::MissionControl.configure do |config|
|
29
|
+
config.environment = :production # sandbox or production
|
30
|
+
end
|
31
|
+
```
|
32
|
+
|
33
|
+
## Usage
|
34
|
+
|
35
|
+
### Specifications
|
36
|
+
|
37
|
+
This gem contains helper methods to list jobs and parts and to understand which parts a job consists of.
|
38
|
+
|
39
|
+
```rb
|
40
|
+
Zaikio::MissionControl.jobs => #[:booklet, :box, ...]
|
41
|
+
Zaikio::MissionControl.parts => #[:back, :base, ...]
|
42
|
+
Zaikio::MissionControl.finishings => #[:comb_binding, :embossing, ...]
|
43
|
+
|
44
|
+
Zaikio::MissionControl.job_klasses => # [Zaikio::MissionControl::Jobs::Booklet, Zaikio::MissionControl::Jobs::Box, ...]
|
45
|
+
Zaikio::MissionControl.part_klasses => # [Zaikio::MissionControl::Parts::Back, Zaikio::MissionControl::Parts::Base, ...]
|
46
|
+
Zaikio::MissionControl.finishing_klasses => # [Zaikio::MissionControl::Finishings::CombBinding, Zaikio::MissionControl::Finishings::Embossing, ...]
|
47
|
+
|
48
|
+
# Localize models
|
49
|
+
I18n.with_locale(:de) do
|
50
|
+
Zaikio::MissionControl::Jobs::Booklet.model_name.human # => Heft
|
51
|
+
end
|
52
|
+
```
|
53
|
+
|
54
|
+
Per job you can fetch the parts and their configuration:
|
55
|
+
|
56
|
+
```rb
|
57
|
+
Zaikio::MissionControl::Jobs::Booklet.parts # => [:content, :cover, :insert, :outsert]
|
58
|
+
Zaikio::MissionControl::Jobs::Booklet.part_klasses # => [Zaikio::MissionControl::Parts::Content, ...]
|
59
|
+
|
60
|
+
Zaikio::MissionControl::Jobs::Booklet.multiples?(:content) # => true
|
61
|
+
Zaikio::MissionControl::Jobs::Booklet.multiples?(Zaikio::MissionControl::Parts::Content) # => true
|
62
|
+
Zaikio::MissionControl::Jobs::Booklet.required?(:content) # => true
|
63
|
+
Zaikio::MissionControl::Jobs::Booklet.required?(Zaikio::MissionControl::Parts::Content) # => true
|
64
|
+
```
|
data/Rakefile
ADDED
@@ -0,0 +1,37 @@
|
|
1
|
+
begin
|
2
|
+
require 'bundler/setup'
|
3
|
+
rescue LoadError
|
4
|
+
puts 'You must `gem install bundler` and `bundle install` to run rake tasks'
|
5
|
+
end
|
6
|
+
|
7
|
+
require 'rdoc/task'
|
8
|
+
require 'rubocop/rake_task'
|
9
|
+
|
10
|
+
RDoc::Task.new(:rdoc) do |rdoc|
|
11
|
+
rdoc.rdoc_dir = 'rdoc'
|
12
|
+
rdoc.title = 'Zaikio::MissionControl'
|
13
|
+
rdoc.options << '--line-numbers'
|
14
|
+
rdoc.rdoc_files.include('README.md')
|
15
|
+
rdoc.rdoc_files.include('lib/**/*.rb')
|
16
|
+
end
|
17
|
+
|
18
|
+
require 'bundler/gem_tasks'
|
19
|
+
|
20
|
+
require 'rake/testtask'
|
21
|
+
|
22
|
+
Rake::TestTask.new(:test) do |t|
|
23
|
+
t.libs << 'test'
|
24
|
+
t.pattern = 'test/**/*_test.rb'
|
25
|
+
t.verbose = false
|
26
|
+
end
|
27
|
+
|
28
|
+
task default: :test
|
29
|
+
|
30
|
+
namespace :test do
|
31
|
+
desc 'Runs RuboCop on specified directories'
|
32
|
+
RuboCop::RakeTask.new(:rubocop) do |task|
|
33
|
+
task.fail_on_error = false
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
Rake::Task[:test].enhance ['test:rubocop']
|
@@ -0,0 +1,70 @@
|
|
1
|
+
de:
|
2
|
+
activemodel:
|
3
|
+
models:
|
4
|
+
# Jobs
|
5
|
+
"zaikio/mission_control/jobs/booklet": "Heft"
|
6
|
+
"zaikio/mission_control/jobs/box": "Schachtel"
|
7
|
+
"zaikio/mission_control/jobs/brochure": "Broschüre"
|
8
|
+
"zaikio/mission_control/jobs/business_card": "Visitenkarte"
|
9
|
+
"zaikio/mission_control/jobs/carton": "Karton"
|
10
|
+
"zaikio/mission_control/jobs/carton_two_piece": "Karton zweiteilig"
|
11
|
+
"zaikio/mission_control/jobs/compliment_slip": "Begleitschreiben"
|
12
|
+
"zaikio/mission_control/jobs/continuation_sheet": "Folgebogen"
|
13
|
+
"zaikio/mission_control/jobs/cover_letter": "Anschreiben"
|
14
|
+
"zaikio/mission_control/jobs/envelope": "Briefhülle"
|
15
|
+
"zaikio/mission_control/jobs/flyer": "Flugblatt-Faltblatt"
|
16
|
+
"zaikio/mission_control/jobs/hardcover_book": "Buch mit Festeinband"
|
17
|
+
"zaikio/mission_control/jobs/label": "Aufkleber"
|
18
|
+
"zaikio/mission_control/jobs/leaflet": "Flugblatt"
|
19
|
+
"zaikio/mission_control/jobs/letter_head": "Briefbogen"
|
20
|
+
"zaikio/mission_control/jobs/magazine": "Zeitschrift"
|
21
|
+
"zaikio/mission_control/jobs/map": "Landkarte"
|
22
|
+
"zaikio/mission_control/jobs/ncr_pad": "Durchschreibesätze"
|
23
|
+
"zaikio/mission_control/jobs/newspaper": "Zeitung"
|
24
|
+
"zaikio/mission_control/jobs/notebook": "Notizbuch"
|
25
|
+
"zaikio/mission_control/jobs/postcard": "Postkarte"
|
26
|
+
"zaikio/mission_control/jobs/poster": "Poster"
|
27
|
+
"zaikio/mission_control/jobs/self_mailer": "Self Mailer"
|
28
|
+
"zaikio/mission_control/jobs/sheet": "Blatt"
|
29
|
+
"zaikio/mission_control/jobs/softcover_book": "Klebegebundene Broschur"
|
30
|
+
# Parts
|
31
|
+
"zaikio/mission_control/parts/back": "Schlussblatt"
|
32
|
+
"zaikio/mission_control/parts/base": "Boden"
|
33
|
+
"zaikio/mission_control/parts/business_card": "Visitenkarte"
|
34
|
+
"zaikio/mission_control/parts/carton": "Karton"
|
35
|
+
"zaikio/mission_control/parts/case": "Buchdecke"
|
36
|
+
"zaikio/mission_control/parts/compliment_slip": "Begleitschreiben"
|
37
|
+
"zaikio/mission_control/parts/content": "Inhalt"
|
38
|
+
"zaikio/mission_control/parts/continuation_sheet": "Folgebogen"
|
39
|
+
"zaikio/mission_control/parts/cover": "Umschlag"
|
40
|
+
"zaikio/mission_control/parts/cover_letter": "Anschreiben"
|
41
|
+
"zaikio/mission_control/parts/endpaper": "Vor- und Nachsatz"
|
42
|
+
"zaikio/mission_control/parts/envelope": "Briefhülle"
|
43
|
+
"zaikio/mission_control/parts/flyer": "Flugblatt-Faltblatt"
|
44
|
+
"zaikio/mission_control/parts/insert": "Believer"
|
45
|
+
"zaikio/mission_control/parts/jacket": "Buchumschlag"
|
46
|
+
"zaikio/mission_control/parts/label": "Aufkleber"
|
47
|
+
"zaikio/mission_control/parts/leaflet": "Flugblatt"
|
48
|
+
"zaikio/mission_control/parts/letter_head": "Briefbogen"
|
49
|
+
"zaikio/mission_control/parts/lid": "Deckel"
|
50
|
+
"zaikio/mission_control/parts/map_sheet": "Landkartenbogen"
|
51
|
+
"zaikio/mission_control/parts/outsert": "Ausgliederung"
|
52
|
+
"zaikio/mission_control/parts/postcard": "Postkarte"
|
53
|
+
"zaikio/mission_control/parts/poster": "Poster"
|
54
|
+
"zaikio/mission_control/parts/self_mailer": "Self Mailer"
|
55
|
+
"zaikio/mission_control/parts/sheet": "Bogen"
|
56
|
+
# Finishings
|
57
|
+
"zaikio/mission_control/finishings/comb_binding": "Kamm-Bindung"
|
58
|
+
"zaikio/mission_control/finishings/embossing": "Prägen"
|
59
|
+
"zaikio/mission_control/finishings/foil_stamp": "Folienprägung"
|
60
|
+
"zaikio/mission_control/finishings/glue": "Leimen"
|
61
|
+
"zaikio/mission_control/finishings/head_band": "Kopfband anbringen"
|
62
|
+
"zaikio/mission_control/finishings/hole": "Bohren"
|
63
|
+
"zaikio/mission_control/finishings/lamination": "Folienkaschierung"
|
64
|
+
"zaikio/mission_control/finishings/perforation": "Perforation"
|
65
|
+
"zaikio/mission_control/finishings/ring_binding": "Ringbinden"
|
66
|
+
"zaikio/mission_control/finishings/perfect_binding": "Klebebinden"
|
67
|
+
"zaikio/mission_control/finishings/saddle_stitch": "Rückendrahtheften"
|
68
|
+
"zaikio/mission_control/finishings/spiral_binding": "Wire-O Bindung"
|
69
|
+
"zaikio/mission_control/finishings/strip_binding": "Streifenbindung"
|
70
|
+
"zaikio/mission_control/finishings/thread_sewing": "Fadenheftung"
|
@@ -0,0 +1,69 @@
|
|
1
|
+
en:
|
2
|
+
activemodel:
|
3
|
+
models:
|
4
|
+
# Jobs
|
5
|
+
"zaikio/mission_control/jobs/booklet": "Booklet"
|
6
|
+
"zaikio/mission_control/jobs/box": "Box"
|
7
|
+
"zaikio/mission_control/jobs/brochure": "Brochure"
|
8
|
+
"zaikio/mission_control/jobs/business_card": "Business Card"
|
9
|
+
"zaikio/mission_control/jobs/carton": "Carton"
|
10
|
+
"zaikio/mission_control/jobs/carton_two_piece": "Carton Two Piece"
|
11
|
+
"zaikio/mission_control/jobs/compliment_slip": "Compliment Slip"
|
12
|
+
"zaikio/mission_control/jobs/continuation_sheet": "Continuation Sheet"
|
13
|
+
"zaikio/mission_control/jobs/cover_letter": "Cover Letter"
|
14
|
+
"zaikio/mission_control/jobs/envelope": "Envelope"
|
15
|
+
"zaikio/mission_control/jobs/flyer": "Flyer"
|
16
|
+
"zaikio/mission_control/jobs/hardcover_book": "Hardcover Book"
|
17
|
+
"zaikio/mission_control/jobs/label": "Label"
|
18
|
+
"zaikio/mission_control/jobs/leaflet": "Leaflet"
|
19
|
+
"zaikio/mission_control/jobs/letter_head": "Letter Head"
|
20
|
+
"zaikio/mission_control/jobs/magazine": "Magazine"
|
21
|
+
"zaikio/mission_control/jobs/map": "Map"
|
22
|
+
"zaikio/mission_control/jobs/ncr_pad": "NCR Pad"
|
23
|
+
"zaikio/mission_control/jobs/newspaper": "Newspaper"
|
24
|
+
"zaikio/mission_control/jobs/notebook": "Notebook"
|
25
|
+
"zaikio/mission_control/jobs/postcard": "Postcard"
|
26
|
+
"zaikio/mission_control/jobs/poster": "Poster"
|
27
|
+
"zaikio/mission_control/jobs/self_mailer": "Self Mailer"
|
28
|
+
"zaikio/mission_control/jobs/sheet": "Sheet"
|
29
|
+
# Parts
|
30
|
+
"zaikio/mission_control/parts/back": "Back"
|
31
|
+
"zaikio/mission_control/parts/base": "Base"
|
32
|
+
"zaikio/mission_control/parts/business_card": "Business Card"
|
33
|
+
"zaikio/mission_control/parts/carton": "Carton"
|
34
|
+
"zaikio/mission_control/parts/case": "Case"
|
35
|
+
"zaikio/mission_control/parts/compliment_slip": "Compliment Slip"
|
36
|
+
"zaikio/mission_control/parts/content": "Content"
|
37
|
+
"zaikio/mission_control/parts/continuation_sheet": "Continuation Sheet"
|
38
|
+
"zaikio/mission_control/parts/cover": "Cover"
|
39
|
+
"zaikio/mission_control/parts/cover_letter": "Cover Letter"
|
40
|
+
"zaikio/mission_control/parts/endpaper": "Endpaper"
|
41
|
+
"zaikio/mission_control/parts/envelope": "Envelope"
|
42
|
+
"zaikio/mission_control/parts/flyer": "Flyer"
|
43
|
+
"zaikio/mission_control/parts/insert": "Insert"
|
44
|
+
"zaikio/mission_control/parts/jacket": "Jacket"
|
45
|
+
"zaikio/mission_control/parts/label": "Label"
|
46
|
+
"zaikio/mission_control/parts/leaflet": "Leaflet"
|
47
|
+
"zaikio/mission_control/parts/letter_head": "Letter Head"
|
48
|
+
"zaikio/mission_control/parts/lid": "Lid"
|
49
|
+
"zaikio/mission_control/parts/map_sheet": "Map Sheet"
|
50
|
+
"zaikio/mission_control/parts/outsert": "Outsert"
|
51
|
+
"zaikio/mission_control/parts/postcard": "Postcard"
|
52
|
+
"zaikio/mission_control/parts/poster": "Poster"
|
53
|
+
"zaikio/mission_control/parts/self_mailer": "Self Mailer"
|
54
|
+
"zaikio/mission_control/parts/sheet": "Sheet"
|
55
|
+
# Finishings
|
56
|
+
"zaikio/mission_control/finishings/comb_binding": "Comb Binding"
|
57
|
+
"zaikio/mission_control/finishings/embossing": "Embossing"
|
58
|
+
"zaikio/mission_control/finishings/foil_stamp": "Foil Stamp"
|
59
|
+
"zaikio/mission_control/finishings/glue": "Glue"
|
60
|
+
"zaikio/mission_control/finishings/head_band": "Head Band"
|
61
|
+
"zaikio/mission_control/finishings/hole": "Hole"
|
62
|
+
"zaikio/mission_control/finishings/lamination": "Lamination"
|
63
|
+
"zaikio/mission_control/finishings/perforation": "Perforation"
|
64
|
+
"zaikio/mission_control/finishings/ring_binding": "Ring Binding"
|
65
|
+
"zaikio/mission_control/finishings/perfect_binding": "Perfect Binding"
|
66
|
+
"zaikio/mission_control/finishings/saddle_stitch": "Saddle Stitch"
|
67
|
+
"zaikio/mission_control/finishings/spiral_binding": "Spiral Binding"
|
68
|
+
"zaikio/mission_control/finishings/strip_binding": "Strip Binding"
|
69
|
+
"zaikio/mission_control/finishings/thread_sewing": "Thread Sewing"
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require "logger"
|
2
|
+
|
3
|
+
module Zaikio
|
4
|
+
module MissionControl
|
5
|
+
class Configuration < Zaikio::Client::Helpers::Configuration
|
6
|
+
def self.hosts
|
7
|
+
{
|
8
|
+
development: "https://mc.zaikio.test/api/v1/",
|
9
|
+
test: "https://mc.zaikio.test/api/v1/",
|
10
|
+
staging: "https://mc.staging.zaikio.com/api/v1/",
|
11
|
+
sandbox: "https://mc.sandbox.zaikio.com/api/v1/",
|
12
|
+
production: "https://mc.zaikio.com/api/v1/"
|
13
|
+
}.freeze
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
@@ -0,0 +1,49 @@
|
|
1
|
+
module Zaikio
|
2
|
+
module MissionControl
|
3
|
+
module Jobs
|
4
|
+
class Base < Zaikio::MissionControl::Base
|
5
|
+
class << self
|
6
|
+
def has_one_part(name, required: false) # rubocop:disable Naming/PredicateName
|
7
|
+
@parts ||= {}
|
8
|
+
@parts[name] = { required: required, multiples: false }
|
9
|
+
end
|
10
|
+
|
11
|
+
def has_many_parts(name, required: false) # rubocop:disable Naming/PredicateName
|
12
|
+
@parts ||= {}
|
13
|
+
@parts[name.to_s.singularize.to_sym] = { required: required, multiples: true }
|
14
|
+
end
|
15
|
+
|
16
|
+
def parts
|
17
|
+
@parts ||= {}
|
18
|
+
@parts.keys
|
19
|
+
end
|
20
|
+
|
21
|
+
def part_config(part_name_or_klass)
|
22
|
+
@parts ||= {}
|
23
|
+
part_name_or_klass = if part_name_or_klass.is_a?(Symbol)
|
24
|
+
part_name_or_klass.to_s.singularize.to_sym
|
25
|
+
else
|
26
|
+
part_name_or_klass.name.split("::").last.underscore.to_sym
|
27
|
+
end
|
28
|
+
@parts[part_name_or_klass] or raise ArgumentError,
|
29
|
+
"Part #{part_name_or_klass} could not be found in #{self.class.name}"
|
30
|
+
end
|
31
|
+
|
32
|
+
def part_klasses
|
33
|
+
parts.map do |name|
|
34
|
+
Zaikio::MissionControl::Parts.const_get(name.to_s.classify)
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
def multiples?(part_name_or_klass)
|
39
|
+
part_config(part_name_or_klass)[:multiples]
|
40
|
+
end
|
41
|
+
|
42
|
+
def required?(part_name_or_klass)
|
43
|
+
part_config(part_name_or_klass)[:required]
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|