gamefic-sdk 2.0.1 → 2.2.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: ab948f913c148992dc91b0ec1b4c5b8a605661b4f542bb17b7eee91648d17fd2
4
- data.tar.gz: 2bc3d80372c32eaaa9106f4aa1dc57aacf211745d7f902c660d58ab9ffed69b8
3
+ metadata.gz: a866238615f7218acadfc7b9f2af9d914d9a8e615196eb301ae2347d9c7e9bed
4
+ data.tar.gz: ea7da83b2131148021813dd3d9f4b069278797f1b5e68fc0d91349cfcab64d85
5
5
  SHA512:
6
- metadata.gz: af98a3ceedfed1d026b848950eb4eeadd17ab84d5c0f61675e5500d2a6cf36e69e2f7bf38a5e435c831b828b7fc0f5dc2ab048661373c7751b38f4ec49229358
7
- data.tar.gz: ba3a8485e4a5f240d63238fa8498cab2e8495f5fd92d16b7394a249708b6b57f5d32df7e48fcdbe757048f149c808826e13576a8ec4cbe33b3073c3738368c06
6
+ metadata.gz: 9f491f6228a652685032500ace199b37b29f14c855838f2a4168a50574f21a98781e5304cb00a31d7eaee85f1395ef80e0bb94d32b4bec93248def7ef8a8af6e
7
+ data.tar.gz: 10d0faaaa0fd8aa903c1f7d6c3955031691312d481c9dc7fd9e97344b188840b162cdd666f513710b87f5c42b9c340f3a53d70f9531ef1a64bc3264cd07782b1
data/.gitignore CHANGED
@@ -6,7 +6,6 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
- /guides/
10
9
 
11
10
  # rspec failure tracking
12
11
  .rspec_status
@@ -0,0 +1,9 @@
1
+ ## 2.2.0 - August 29, 2020
2
+ - Update to react-gamefic 0.4.0
3
+
4
+ ## 2.1.0 - August 27, 2020
5
+ - Update web app with customizable scene components
6
+
7
+ ## 2.0.4 - April 25, 2020
8
+ - Server does not symbolize snapshot keys
9
+ - Update dependencies
data/README.md CHANGED
@@ -123,7 +123,7 @@ Note: building the web app requires [Node.js](https://nodejs.org).
123
123
  ### Example Projects
124
124
 
125
125
  The gamefic-sdk repo includes several example projects that provide more
126
- more complete demonstrations of Gamefic's features. To run an example, copy
126
+ complete demonstrations of Gamefic's features. To run an example, copy
127
127
  its `main.rb` file to your own project.
128
128
 
129
129
  ### Learning More
@@ -4,13 +4,3 @@ require 'gamefic-sdk'
4
4
  require 'gamefic-sdk/shell'
5
5
 
6
6
  Gamefic::Sdk::Shell.start(ARGV)
7
-
8
- #!/usr/bin/env ruby
9
-
10
- #require 'gamefic'
11
- #require 'gamefic-tty'
12
-
13
- # Make play the default command if the first argument is an existing file
14
- #args = %w(play help).include?(ARGV[0]) || ARGV.count.zero? || !File.exist?(ARGV[0]) ? ARGV : ARGV.dup.unshift('play')
15
-
16
- #Gamefic::Tty::Shell.start(args)
@@ -24,19 +24,19 @@ Gem::Specification.new do |s|
24
24
 
25
25
  s.required_ruby_version = '>= 2.3.0'
26
26
 
27
- s.add_runtime_dependency 'gamefic', '~> 2.0'
27
+ s.add_runtime_dependency 'gamefic', '~> 2.0', '>= 2.0.2'
28
28
  s.add_runtime_dependency 'gamefic-standard', '~> 2.0'
29
- s.add_runtime_dependency 'gamefic-tty', '~> 2.0'
29
+ s.add_runtime_dependency 'gamefic-tty', '~> 2.0', '>= 2.0.1'
30
30
  s.add_runtime_dependency 'listen', '~> 3.0'
31
31
  s.add_runtime_dependency 'opal', '~> 1.0'
32
32
  s.add_runtime_dependency 'sinatra', '~> 2'
33
33
  s.add_runtime_dependency 'thor', '~> 1.0'
34
34
 
35
- s.add_development_dependency "bundler", "~> 2.0"
35
+ s.add_development_dependency 'bundler', '~> 2.0'
36
36
  s.add_development_dependency 'capybara', '~> 3.3'
37
37
  s.add_development_dependency 'puma', '~> 3'
38
- s.add_development_dependency 'rake', '~> 10.0'
39
- s.add_development_dependency "rspec", "~> 3.0"
38
+ s.add_development_dependency 'rake', '~> 13.0'
39
+ s.add_development_dependency 'rspec', '~> 3.0'
40
40
  s.add_development_dependency 'selenium-webdriver', '~> 3.13'
41
41
  s.add_development_dependency 'simplecov', '~> 0.14'
42
42
  end
@@ -32,7 +32,6 @@ module Gamefic
32
32
  content_type :json
33
33
  @@plot.update
34
34
  @@plot.ready
35
- # @@character.state.merge(input: params['command'], continued: @@character.queue.any?).to_json
36
35
  @@character.output.to_json
37
36
  end
38
37
 
@@ -45,7 +44,7 @@ module Gamefic
45
44
  content_type :json
46
45
  # The snapshot needs to be received as a JSON string because of issues
47
46
  # with IndifferentHash malforming arrays.
48
- snapshot = JSON.parse(params['snapshot'], symbolize_names: true)
47
+ snapshot = JSON.parse(params['snapshot'])
49
48
  @@plot.restore snapshot
50
49
  @@character.cue @@plot.default_scene
51
50
  @@plot.update
@@ -1,5 +1,5 @@
1
1
  module Gamefic
2
2
  module Sdk
3
- VERSION = '2.0.1'
3
+ VERSION = '2.2.0'
4
4
  end
5
5
  end
@@ -26,9 +26,9 @@
26
26
  "webpack-cli": "^3.1.2"
27
27
  },
28
28
  "dependencies": {
29
- "gamefic-driver": "^0.2.0",
29
+ "gamefic-driver": "^0.2.1",
30
30
  "react": "^16.5.2",
31
31
  "react-dom": "^16.5.2",
32
- "react-gamefic": "^0.2.0"
32
+ "react-gamefic": "^0.4.0"
33
33
  }
34
34
  }
@@ -1,13 +1,24 @@
1
1
  import React from 'react';
2
2
  import { render } from 'react-dom';
3
3
  import { Console, Terminal } from 'react-gamefic';
4
+
4
5
  import { driver } from 'driver';
6
+
7
+ import { Activity, Pause, MultipleChoice, Conclusion } from './scenes';
5
8
  import 'react-gamefic/styles/ebook';
6
9
  import './style.css';
7
10
 
11
+ const sceneComponents = {
12
+ Activity: Activity,
13
+ Pause: Pause,
14
+ MultipleChoice: MultipleChoice,
15
+ YesOrNo: MultipleChoice,
16
+ Conclusion: Conclusion
17
+ }
18
+
8
19
  render(
9
20
  <Console driver={driver}>
10
- <Terminal />
21
+ <Terminal sceneComponents={sceneComponents} autoScroll={true} />
11
22
  </Console>,
12
23
  document.getElementById('root')
13
24
  );
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { ActivityScene, Output, CommandForm } from 'react-gamefic';
3
+
4
+ export class Activity extends React.Component {
5
+ render() {
6
+ return (
7
+ <ActivityScene>
8
+ <Output {...this.props} transcribe={true} />
9
+ <CommandForm prompt={this.props.state.prompt} />
10
+ </ActivityScene>
11
+ );
12
+ }
13
+ }
@@ -0,0 +1,12 @@
1
+ import React from 'react';
2
+ import { ConclusionScene, Output } from 'react-gamefic';
3
+
4
+ export class Conclusion extends React.Component {
5
+ render() {
6
+ return (
7
+ <ConclusionScene>
8
+ <Output {...this.props} transcribe={true} />
9
+ </ConclusionScene>
10
+ );
11
+ }
12
+ }
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { MultipleChoiceScene, ChoiceList } from 'react-gamefic';
3
+
4
+ export class MultipleChoice extends React.Component {
5
+ render() {
6
+ return (
7
+ <MultipleChoiceScene>
8
+ <Output {...this.props} transcribe={true} />,
9
+ <ChoiceList options={this.props.state.options} prompt={this.props.state.prompt} />
10
+ </MultipleChoiceScene>
11
+ );
12
+ }
13
+ }
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import { PauseScene, Output, CommandLink } from 'react-gamefic';
3
+
4
+ export class Pause extends React.Component {
5
+ render() {
6
+ return (
7
+ <PauseScene>
8
+ <Output {...this.props} transcribe={true} />
9
+ <CommandLink command="">Continue</CommandLink>
10
+ </PauseScene>
11
+ );
12
+ }
13
+ }
@@ -0,0 +1,11 @@
1
+ import { Activity } from './Activity.jsx';
2
+ import { Pause } from './Pause.jsx';
3
+ import { MultipleChoice } from './MultipleChoice.jsx';
4
+ import { Conclusion } from './Conclusion.jsx';
5
+
6
+ export {
7
+ Activity,
8
+ Pause,
9
+ MultipleChoice,
10
+ Conclusion
11
+ }
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gamefic-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.0.1
4
+ version: 2.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Fred Snyder
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2020-03-24 00:00:00.000000000 Z
11
+ date: 2020-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: gamefic
@@ -17,6 +17,9 @@ dependencies:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
19
  version: '2.0'
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: 2.0.2
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
@@ -24,6 +27,9 @@ dependencies:
24
27
  - - "~>"
25
28
  - !ruby/object:Gem::Version
26
29
  version: '2.0'
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 2.0.2
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: gamefic-standard
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -45,6 +51,9 @@ dependencies:
45
51
  - - "~>"
46
52
  - !ruby/object:Gem::Version
47
53
  version: '2.0'
54
+ - - ">="
55
+ - !ruby/object:Gem::Version
56
+ version: 2.0.1
48
57
  type: :runtime
49
58
  prerelease: false
50
59
  version_requirements: !ruby/object:Gem::Requirement
@@ -52,6 +61,9 @@ dependencies:
52
61
  - - "~>"
53
62
  - !ruby/object:Gem::Version
54
63
  version: '2.0'
64
+ - - ">="
65
+ - !ruby/object:Gem::Version
66
+ version: 2.0.1
55
67
  - !ruby/object:Gem::Dependency
56
68
  name: listen
57
69
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +168,14 @@ dependencies:
156
168
  requirements:
157
169
  - - "~>"
158
170
  - !ruby/object:Gem::Version
159
- version: '10.0'
171
+ version: '13.0'
160
172
  type: :development
161
173
  prerelease: false
162
174
  version_requirements: !ruby/object:Gem::Requirement
163
175
  requirements:
164
176
  - - "~>"
165
177
  - !ruby/object:Gem::Version
166
- version: '10.0'
178
+ version: '13.0'
167
179
  - !ruby/object:Gem::Dependency
168
180
  name: rspec
169
181
  requirement: !ruby/object:Gem::Requirement
@@ -216,6 +228,7 @@ files:
216
228
  - ".gitignore"
217
229
  - ".rspec"
218
230
  - ".travis.yml"
231
+ - CHANGELOG.md
219
232
  - Gemfile
220
233
  - LICENSE.txt
221
234
  - README.md
@@ -248,6 +261,11 @@ files:
248
261
  - scaffolds/react/web/src/driver/opal.rb
249
262
  - scaffolds/react/web/src/driver/production.js
250
263
  - scaffolds/react/web/src/index.js
264
+ - scaffolds/react/web/src/scenes/Activity.jsx
265
+ - scaffolds/react/web/src/scenes/Conclusion.jsx
266
+ - scaffolds/react/web/src/scenes/MultipleChoice.jsx
267
+ - scaffolds/react/web/src/scenes/Pause.jsx
268
+ - scaffolds/react/web/src/scenes/index.js
251
269
  - scaffolds/react/web/src/style.css
252
270
  - scaffolds/react/webpack.config.js
253
271
  homepage: http://gamefic.com
@@ -269,7 +287,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
269
287
  - !ruby/object:Gem::Version
270
288
  version: '0'
271
289
  requirements: []
272
- rubygems_version: 3.0.3
290
+ rubygems_version: 3.1.2
273
291
  signing_key:
274
292
  specification_version: 4
275
293
  summary: Gamefic SDK