shotstack 0.0.11 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,26 +1,29 @@
1
1
  =begin
2
- #shotstack
2
+ #Shotstack
3
3
 
4
- #The Shotstack API is a video editing service that allows for the programatic creation of videos using JSON.
4
+ #The Shotstack API is a video editing service that allows for the automated creation of videos using JSON. You can configure an edit and POST it to the Shotstack API which will render your video and provide a file location when complete. For more details check https://shotstack.io
5
5
 
6
6
  The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.0.0
9
+ OpenAPI Generator version: 4.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
 
15
15
  module Shotstack
16
- # A timeline represents the contents of a video edit over time, in seconds. A timeline consists of layers called tracks. Tracks are composed of titles, images or video segments referred to as clips which are placed along the track at specific starting point and lasting for a specific amount of time.
16
+ # A timeline represents the contents of a video edit over time, in seconds. A timeline consists of layers called tracks. Tracks are composed of titles, images or video segments referred to as clips which are placed along the track at specific starting point and lasting for a specific amount of time.
17
17
  class Timeline
18
18
  attr_accessor :soundtrack
19
19
 
20
- # A hexidecimal value for the timeline background colour. Defaults to black (#000000).
20
+ # A hexadecimal value for the timeline background colour. Defaults to #000000 (black).
21
21
  attr_accessor :background
22
22
 
23
- # A timeline consists of an array of tracks, each track containing clips. Tracks are layered on top of each other in the same order they are added to the array with the top most track layered over the top of those below it. Ensure that a track containing titles is the top most track so that it is displayed above videos and images.
23
+ # An array of custom fonts to be downloaded for use by the HTML assets.
24
+ attr_accessor :fonts
25
+
26
+ # A timeline consists of an array of tracks, each track containing clips. Tracks are layered on top of each other in the same order they are added to the array with the top most track layered over the top of those below it. Ensure that a track containing titles is the top most track so that it is displayed above videos and images.
24
27
  attr_accessor :tracks
25
28
 
26
29
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -28,6 +31,7 @@ module Shotstack
28
31
  {
29
32
  :'soundtrack' => :'soundtrack',
30
33
  :'background' => :'background',
34
+ :'fonts' => :'fonts',
31
35
  :'tracks' => :'tracks'
32
36
  }
33
37
  end
@@ -37,10 +41,17 @@ module Shotstack
37
41
  {
38
42
  :'soundtrack' => :'Soundtrack',
39
43
  :'background' => :'String',
44
+ :'fonts' => :'Array<Font>',
40
45
  :'tracks' => :'Array<Track>'
41
46
  }
42
47
  end
43
48
 
49
+ # List of attributes with nullable: true
50
+ def self.openapi_nullable
51
+ Set.new([
52
+ ])
53
+ end
54
+
44
55
  # Initializes the object
45
56
  # @param [Hash] attributes Model attributes in the form of hash
46
57
  def initialize(attributes = {})
@@ -62,6 +73,14 @@ module Shotstack
62
73
 
63
74
  if attributes.key?(:'background')
64
75
  self.background = attributes[:'background']
76
+ else
77
+ self.background = '#000000'
78
+ end
79
+
80
+ if attributes.key?(:'fonts')
81
+ if (value = attributes[:'fonts']).is_a?(Array)
82
+ self.fonts = value
83
+ end
65
84
  end
66
85
 
67
86
  if attributes.key?(:'tracks')
@@ -96,6 +115,7 @@ module Shotstack
96
115
  self.class == o.class &&
97
116
  soundtrack == o.soundtrack &&
98
117
  background == o.background &&
118
+ fonts == o.fonts &&
99
119
  tracks == o.tracks
100
120
  end
101
121
 
@@ -108,7 +128,7 @@ module Shotstack
108
128
  # Calculates hash code according to all attributes.
109
129
  # @return [Integer] Hash code
110
130
  def hash
111
- [soundtrack, background, tracks].hash
131
+ [soundtrack, background, fonts, tracks].hash
112
132
  end
113
133
 
114
134
  # Builds the object from hash
@@ -197,7 +217,11 @@ module Shotstack
197
217
  hash = {}
198
218
  self.class.attribute_map.each_pair do |attr, param|
199
219
  value = self.send(attr)
200
- next if value.nil?
220
+ if value.nil?
221
+ is_nullable = self.class.openapi_nullable.include?(attr)
222
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
223
+ end
224
+
201
225
  hash[param] = _to_hash(value)
202
226
  end
203
227
  hash
@@ -1,12 +1,12 @@
1
1
  =begin
2
- #shotstack
2
+ #Shotstack
3
3
 
4
- #The Shotstack API is a video editing service that allows for the programatic creation of videos using JSON.
4
+ #The Shotstack API is a video editing service that allows for the automated creation of videos using JSON. You can configure an edit and POST it to the Shotstack API which will render your video and provide a file location when complete. For more details check https://shotstack.io
5
5
 
6
6
  The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.0.0
9
+ OpenAPI Generator version: 4.2.1
10
10
 
11
11
  =end
12
12
 
@@ -14,7 +14,7 @@ require 'date'
14
14
  require_relative 'asset'
15
15
 
16
16
  module Shotstack
17
- # The TitleAsset clip type lets you create video titles from a text string and apply styling.
17
+ # The TitleAsset clip type lets you create video titles from a text string and apply styling and positioning.
18
18
  class TitleAsset < Asset
19
19
  # The type of asset - set to <b>title</b> for titles.
20
20
  attr_accessor :type
@@ -22,12 +22,23 @@ module Shotstack
22
22
  # The title text string - i.e. \"My Title\".
23
23
  attr_accessor :text
24
24
 
25
- # Uses a preset to apply font properties and stylng to the title.
25
+ # Uses a preset to apply font properties and styling to the title.
26
26
  attr_accessor :style
27
27
 
28
- # Place the title in one of nine predefined positions of the viewport.
28
+ # Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.
29
+ attr_accessor :color
30
+
31
+ # Set the relative size of the text using predefined sizes from xx-small to xx-large.
32
+ attr_accessor :size
33
+
34
+ # Apply a background color behind the text. Set the text color using hexadecimal color notation. Transparency is supported by setting the first two characters of the hex string (opposite to HTML), i.e. #80ffffff will be white with 50% transparency.
35
+ attr_accessor :background
36
+
37
+ # Place the title in one of nine predefined positions of the viewport.
29
38
  attr_accessor :position
30
39
 
40
+ attr_accessor :offset
41
+
31
42
  class EnumAttributeValidator
32
43
  attr_reader :datatype
33
44
  attr_reader :allowable_values
@@ -56,7 +67,11 @@ module Shotstack
56
67
  :'type' => :'type',
57
68
  :'text' => :'text',
58
69
  :'style' => :'style',
59
- :'position' => :'position'
70
+ :'color' => :'color',
71
+ :'size' => :'size',
72
+ :'background' => :'background',
73
+ :'position' => :'position',
74
+ :'offset' => :'offset'
60
75
  }
61
76
  end
62
77
 
@@ -66,10 +81,20 @@ module Shotstack
66
81
  :'type' => :'String',
67
82
  :'text' => :'String',
68
83
  :'style' => :'String',
69
- :'position' => :'String'
84
+ :'color' => :'String',
85
+ :'size' => :'String',
86
+ :'background' => :'String',
87
+ :'position' => :'String',
88
+ :'offset' => :'Offset'
70
89
  }
71
90
  end
72
91
 
92
+ # List of attributes with nullable: true
93
+ def self.openapi_nullable
94
+ Set.new([
95
+ ])
96
+ end
97
+
73
98
  # Initializes the object
74
99
  # @param [Hash] attributes Model attributes in the form of hash
75
100
  def initialize(attributes = {})
@@ -99,11 +124,31 @@ module Shotstack
99
124
  self.style = attributes[:'style']
100
125
  end
101
126
 
127
+ if attributes.key?(:'color')
128
+ self.color = attributes[:'color']
129
+ else
130
+ self.color = '#ffffff'
131
+ end
132
+
133
+ if attributes.key?(:'size')
134
+ self.size = attributes[:'size']
135
+ else
136
+ self.size = 'medium'
137
+ end
138
+
139
+ if attributes.key?(:'background')
140
+ self.background = attributes[:'background']
141
+ end
142
+
102
143
  if attributes.key?(:'position')
103
144
  self.position = attributes[:'position']
104
145
  else
105
146
  self.position = 'center'
106
147
  end
148
+
149
+ if attributes.key?(:'offset')
150
+ self.offset = attributes[:'offset']
151
+ end
107
152
  end
108
153
 
109
154
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -126,8 +171,10 @@ module Shotstack
126
171
  def valid?
127
172
  return false if @type.nil?
128
173
  return false if @text.nil?
129
- style_validator = EnumAttributeValidator.new('String', ["minimal", "blockbuster", "vogue", "sketchy", "skinny"])
174
+ style_validator = EnumAttributeValidator.new('String', ["minimal", "blockbuster", "vogue", "sketchy", "skinny", "chunk", "chunkLight", "marker", "future", "subtitle"])
130
175
  return false unless style_validator.valid?(@style)
176
+ size_validator = EnumAttributeValidator.new('String', ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"])
177
+ return false unless size_validator.valid?(@size)
131
178
  position_validator = EnumAttributeValidator.new('String', ["top", "topRight", "right", "bottomRight", "bottom", "bottomLeft", "left", "topLeft", "center"])
132
179
  return false unless position_validator.valid?(@position)
133
180
  true
@@ -136,13 +183,23 @@ module Shotstack
136
183
  # Custom attribute writer method checking allowed values (enum).
137
184
  # @param [Object] style Object to be assigned
138
185
  def style=(style)
139
- validator = EnumAttributeValidator.new('String', ["minimal", "blockbuster", "vogue", "sketchy", "skinny"])
186
+ validator = EnumAttributeValidator.new('String', ["minimal", "blockbuster", "vogue", "sketchy", "skinny", "chunk", "chunkLight", "marker", "future", "subtitle"])
140
187
  unless validator.valid?(style)
141
188
  fail ArgumentError, "invalid value for \"style\", must be one of #{validator.allowable_values}."
142
189
  end
143
190
  @style = style
144
191
  end
145
192
 
193
+ # Custom attribute writer method checking allowed values (enum).
194
+ # @param [Object] size Object to be assigned
195
+ def size=(size)
196
+ validator = EnumAttributeValidator.new('String', ["xx-small", "x-small", "small", "medium", "large", "x-large", "xx-large"])
197
+ unless validator.valid?(size)
198
+ fail ArgumentError, "invalid value for \"size\", must be one of #{validator.allowable_values}."
199
+ end
200
+ @size = size
201
+ end
202
+
146
203
  # Custom attribute writer method checking allowed values (enum).
147
204
  # @param [Object] position Object to be assigned
148
205
  def position=(position)
@@ -161,7 +218,11 @@ module Shotstack
161
218
  type == o.type &&
162
219
  text == o.text &&
163
220
  style == o.style &&
164
- position == o.position
221
+ color == o.color &&
222
+ size == o.size &&
223
+ background == o.background &&
224
+ position == o.position &&
225
+ offset == o.offset
165
226
  end
166
227
 
167
228
  # @see the `==` method
@@ -173,7 +234,7 @@ module Shotstack
173
234
  # Calculates hash code according to all attributes.
174
235
  # @return [Integer] Hash code
175
236
  def hash
176
- [type, text, style, position].hash
237
+ [type, text, style, color, size, background, position, offset].hash
177
238
  end
178
239
 
179
240
  # Builds the object from hash
@@ -262,7 +323,11 @@ module Shotstack
262
323
  hash = {}
263
324
  self.class.attribute_map.each_pair do |attr, param|
264
325
  value = self.send(attr)
265
- next if value.nil?
326
+ if value.nil?
327
+ is_nullable = self.class.openapi_nullable.include?(attr)
328
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
329
+ end
330
+
266
331
  hash[param] = _to_hash(value)
267
332
  end
268
333
  hash
@@ -1,19 +1,19 @@
1
1
  =begin
2
- #shotstack
2
+ #Shotstack
3
3
 
4
- #The Shotstack API is a video editing service that allows for the programatic creation of videos using JSON.
4
+ #The Shotstack API is a video editing service that allows for the automated creation of videos using JSON. You can configure an edit and POST it to the Shotstack API which will render your video and provide a file location when complete. For more details check https://shotstack.io
5
5
 
6
6
  The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.0.0
9
+ OpenAPI Generator version: 4.2.1
10
10
 
11
11
  =end
12
12
 
13
13
  require 'date'
14
14
 
15
15
  module Shotstack
16
- # A track contains an array of clips. Tracks are layered on top of each other in the order in the array. The top most track will render on top of those below it.
16
+ # A track contains an array of clips. Tracks are layered on top of each other in the order in the array. The top most track will render on top of those below it.
17
17
  class Track
18
18
  # An array of Clips comprising of TitleClip, ImageClip or VideoClip.
19
19
  attr_accessor :clips
@@ -32,6 +32,12 @@ module Shotstack
32
32
  }
33
33
  end
34
34
 
35
+ # List of attributes with nullable: true
36
+ def self.openapi_nullable
37
+ Set.new([
38
+ ])
39
+ end
40
+
35
41
  # Initializes the object
36
42
  # @param [Hash] attributes Model attributes in the form of hash
37
43
  def initialize(attributes = {})
@@ -178,7 +184,11 @@ module Shotstack
178
184
  hash = {}
179
185
  self.class.attribute_map.each_pair do |attr, param|
180
186
  value = self.send(attr)
181
- next if value.nil?
187
+ if value.nil?
188
+ is_nullable = self.class.openapi_nullable.include?(attr)
189
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
190
+ end
191
+
182
192
  hash[param] = _to_hash(value)
183
193
  end
184
194
  hash
@@ -1,12 +1,12 @@
1
1
  =begin
2
- #shotstack
2
+ #Shotstack
3
3
 
4
- #The Shotstack API is a video editing service that allows for the programatic creation of videos using JSON.
4
+ #The Shotstack API is a video editing service that allows for the automated creation of videos using JSON. You can configure an edit and POST it to the Shotstack API which will render your video and provide a file location when complete. For more details check https://shotstack.io
5
5
 
6
6
  The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.0.0
9
+ OpenAPI Generator version: 4.2.1
10
10
 
11
11
  =end
12
12
 
@@ -59,6 +59,12 @@ module Shotstack
59
59
  }
60
60
  end
61
61
 
62
+ # List of attributes with nullable: true
63
+ def self.openapi_nullable
64
+ Set.new([
65
+ ])
66
+ end
67
+
62
68
  # Initializes the object
63
69
  # @param [Hash] attributes Model attributes in the form of hash
64
70
  def initialize(attributes = {})
@@ -93,9 +99,9 @@ module Shotstack
93
99
  # Check to see if the all the properties in the model are valid
94
100
  # @return true if the model is valid
95
101
  def valid?
96
- _in_validator = EnumAttributeValidator.new('String', ["fade", "wipeLeft", "wipeRight"])
102
+ _in_validator = EnumAttributeValidator.new('String', ["fade", "reveal", "wipeLeft", "wipeRight"])
97
103
  return false unless _in_validator.valid?(@_in)
98
- out_validator = EnumAttributeValidator.new('String', ["fade", "wipeLeft", "wipeRight"])
104
+ out_validator = EnumAttributeValidator.new('String', ["fade", "reveal", "wipeLeft", "wipeRight"])
99
105
  return false unless out_validator.valid?(@out)
100
106
  true
101
107
  end
@@ -103,7 +109,7 @@ module Shotstack
103
109
  # Custom attribute writer method checking allowed values (enum).
104
110
  # @param [Object] _in Object to be assigned
105
111
  def _in=(_in)
106
- validator = EnumAttributeValidator.new('String', ["fade", "wipeLeft", "wipeRight"])
112
+ validator = EnumAttributeValidator.new('String', ["fade", "reveal", "wipeLeft", "wipeRight"])
107
113
  unless validator.valid?(_in)
108
114
  fail ArgumentError, "invalid value for \"_in\", must be one of #{validator.allowable_values}."
109
115
  end
@@ -113,7 +119,7 @@ module Shotstack
113
119
  # Custom attribute writer method checking allowed values (enum).
114
120
  # @param [Object] out Object to be assigned
115
121
  def out=(out)
116
- validator = EnumAttributeValidator.new('String', ["fade", "wipeLeft", "wipeRight"])
122
+ validator = EnumAttributeValidator.new('String', ["fade", "reveal", "wipeLeft", "wipeRight"])
117
123
  unless validator.valid?(out)
118
124
  fail ArgumentError, "invalid value for \"out\", must be one of #{validator.allowable_values}."
119
125
  end
@@ -227,7 +233,11 @@ module Shotstack
227
233
  hash = {}
228
234
  self.class.attribute_map.each_pair do |attr, param|
229
235
  value = self.send(attr)
230
- next if value.nil?
236
+ if value.nil?
237
+ is_nullable = self.class.openapi_nullable.include?(attr)
238
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
239
+ end
240
+
231
241
  hash[param] = _to_hash(value)
232
242
  end
233
243
  hash
@@ -1,12 +1,12 @@
1
1
  =begin
2
- #shotstack
2
+ #Shotstack
3
3
 
4
- #The Shotstack API is a video editing service that allows for the programatic creation of videos using JSON.
4
+ #The Shotstack API is a video editing service that allows for the automated creation of videos using JSON. You can configure an edit and POST it to the Shotstack API which will render your video and provide a file location when complete. For more details check https://shotstack.io
5
5
 
6
6
  The version of the OpenAPI document: v1
7
7
 
8
8
  Generated by: https://openapi-generator.tech
9
- OpenAPI Generator version: 4.0.0
9
+ OpenAPI Generator version: 4.2.1
10
10
 
11
11
  =end
12
12
 
@@ -14,18 +14,18 @@ require 'date'
14
14
  require_relative 'asset'
15
15
 
16
16
  module Shotstack
17
- # The VideoAsset is used to create video sequences from video files. The src must be a publicly accesible URL to a video resource such as an mp4 file. The in and out attributes of the parent Clip let you trim the video file by setting the start and end point to use.
17
+ # The VideoAsset is used to create video sequences from video files. The src must be a publicly accessible URL to a video resource such as an mp4 file.
18
18
  class VideoAsset < Asset
19
19
  # The type of asset - set to <b>video</b> for videos.
20
20
  attr_accessor :type
21
21
 
22
- # The video source URL. The URL must be publicly accessible or include credentials.
22
+ # The video source URL. The URL must be publicly accessible or include credentials.
23
23
  attr_accessor :src
24
24
 
25
- # The start trim point of the clip, in seconds (defaults to 0). Videos will start from the in trim point. The video will play until the file ends or the Clip length is reached.
25
+ # The start trim point of the video clip, in seconds (defaults to 0). Videos will start from the in trim point. The video will play until the file ends or the Clip length is reached.
26
26
  attr_accessor :trim
27
27
 
28
- # Set the volume for the clip between 0 and 1 where 0 is muted and 1 is full volume (defaults to 0).
28
+ # Set the volume for the video clip between 0 and 1 where 0 is muted and 1 is full volume (defaults to 0).
29
29
  attr_accessor :volume
30
30
 
31
31
  # Attribute mapping from ruby-style variable name to JSON key.
@@ -48,6 +48,12 @@ module Shotstack
48
48
  }
49
49
  end
50
50
 
51
+ # List of attributes with nullable: true
52
+ def self.openapi_nullable
53
+ Set.new([
54
+ ])
55
+ end
56
+
51
57
  # Initializes the object
52
58
  # @param [Hash] attributes Model attributes in the form of hash
53
59
  def initialize(attributes = {})
@@ -214,7 +220,11 @@ module Shotstack
214
220
  hash = {}
215
221
  self.class.attribute_map.each_pair do |attr, param|
216
222
  value = self.send(attr)
217
- next if value.nil?
223
+ if value.nil?
224
+ is_nullable = self.class.openapi_nullable.include?(attr)
225
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
226
+ end
227
+
218
228
  hash[param] = _to_hash(value)
219
229
  end
220
230
  hash