@coorpacademy/player-web 4.29.18 → 4.29.20

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 (74) hide show
  1. package/es/index.js +3 -0
  2. package/es/index.js.map +1 -1
  3. package/es/map-state-to-props/header.js +23 -3
  4. package/es/map-state-to-props/header.js.map +1 -1
  5. package/es/map-state-to-props/slide.js +149 -7
  6. package/es/map-state-to-props/slide.js.map +1 -1
  7. package/es/map-state-to-props/test/header.js +160 -1
  8. package/es/map-state-to-props/test/header.js.map +1 -1
  9. package/es/map-state-to-props/test/popin-error.js +12 -8
  10. package/es/map-state-to-props/test/popin-error.js.map +1 -1
  11. package/es/map-state-to-props/test/slide.js +224 -0
  12. package/es/map-state-to-props/test/slide.js.map +1 -0
  13. package/es/map-state-to-props/test/tourguide-sync.js +243 -0
  14. package/es/map-state-to-props/test/tourguide-sync.js.map +1 -0
  15. package/es/store.js +3 -2
  16. package/es/store.js.map +1 -1
  17. package/es/test/init-reducers.js +10 -1
  18. package/es/test/init-reducers.js.map +1 -1
  19. package/es/test/store.js +3 -5
  20. package/es/test/store.js.map +1 -1
  21. package/es/tourguide-sync.js +24 -0
  22. package/es/tourguide-sync.js.map +1 -0
  23. package/lib/index.js +3 -0
  24. package/lib/index.js.map +1 -1
  25. package/lib/map-state-to-props/header.js +22 -2
  26. package/lib/map-state-to-props/header.js.map +1 -1
  27. package/lib/map-state-to-props/slide.js +149 -7
  28. package/lib/map-state-to-props/slide.js.map +1 -1
  29. package/lib/map-state-to-props/test/header.js +160 -1
  30. package/lib/map-state-to-props/test/header.js.map +1 -1
  31. package/lib/map-state-to-props/test/popin-error.js +12 -8
  32. package/lib/map-state-to-props/test/popin-error.js.map +1 -1
  33. package/lib/map-state-to-props/test/slide.js +227 -0
  34. package/lib/map-state-to-props/test/slide.js.map +1 -0
  35. package/lib/map-state-to-props/test/tourguide-sync.js +246 -0
  36. package/lib/map-state-to-props/test/tourguide-sync.js.map +1 -0
  37. package/lib/store.js +3 -2
  38. package/lib/store.js.map +1 -1
  39. package/lib/test/init-reducers.js +10 -1
  40. package/lib/test/init-reducers.js.map +1 -1
  41. package/lib/test/store.js +3 -5
  42. package/lib/test/store.js.map +1 -1
  43. package/lib/tourguide-sync.js +29 -0
  44. package/lib/tourguide-sync.js.map +1 -0
  45. package/locales/bs/player.json +19 -1
  46. package/locales/cs/player.json +19 -1
  47. package/locales/de/player.json +19 -1
  48. package/locales/en/player.json +19 -1
  49. package/locales/es/player.json +19 -1
  50. package/locales/et/player.json +19 -1
  51. package/locales/fi/player.json +19 -1
  52. package/locales/fr/player.json +19 -1
  53. package/locales/hr/player.json +19 -1
  54. package/locales/hu/player.json +19 -1
  55. package/locales/hy/player.json +19 -1
  56. package/locales/it/player.json +19 -1
  57. package/locales/ja/player.json +19 -1
  58. package/locales/ko/player.json +19 -1
  59. package/locales/lt/player.json +19 -1
  60. package/locales/nl/player.json +19 -1
  61. package/locales/pl/player.json +19 -1
  62. package/locales/pt/player.json +19 -1
  63. package/locales/ro/player.json +19 -1
  64. package/locales/ru/player.json +19 -1
  65. package/locales/sk/player.json +19 -1
  66. package/locales/sl/player.json +19 -1
  67. package/locales/sv/player.json +19 -1
  68. package/locales/tl/player.json +19 -1
  69. package/locales/tr/player.json +19 -1
  70. package/locales/uk/player.json +19 -1
  71. package/locales/vi/player.json +19 -1
  72. package/locales/zh/player.json +19 -1
  73. package/locales/zh_TW/player.json +19 -1
  74. package/package.json +4 -4
@@ -0,0 +1,227 @@
1
+ "use strict";
2
+
3
+ var _ava = _interopRequireDefault(require("ava"));
4
+ var _translate = require("@coorpacademy/translate");
5
+ var _playerStore = require("@coorpacademy/player-store");
6
+ var _slide = _interopRequireDefault(require("../slide"));
7
+ var _basic = _interopRequireDefault(require("./fixtures/slides/basic"));
8
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
9
+ (0, _ava.default)('tourguide callbacks dispatch step change and hide', t => {
10
+ const actions = [];
11
+ const dispatch = action => {
12
+ actions.push(action);
13
+ return action;
14
+ };
15
+ const options = {
16
+ translate: _translate.mockTranslate
17
+ };
18
+ const state = {
19
+ data: {
20
+ contents: {
21
+ chapter: {
22
+ entities: {
23
+ '1.B2': {
24
+ _id: '1.B2',
25
+ isConditional: false
26
+ }
27
+ }
28
+ },
29
+ slide: {
30
+ entities: {
31
+ [_basic.default._id]: {
32
+ ..._basic.default,
33
+ chapter_id: '1.B2'
34
+ }
35
+ }
36
+ }
37
+ },
38
+ progressions: {
39
+ entities: {
40
+ basic: {
41
+ engine: {
42
+ ref: 'microlearning',
43
+ version: '1'
44
+ },
45
+ content: {
46
+ ref: '1.B2',
47
+ type: 'chapter'
48
+ },
49
+ state: {
50
+ nextContent: {
51
+ ref: _basic.default._id,
52
+ type: 'slide'
53
+ },
54
+ step: {
55
+ current: 1
56
+ },
57
+ lives: 1,
58
+ livesDisabled: false,
59
+ viewedResources: []
60
+ }
61
+ }
62
+ }
63
+ }
64
+ },
65
+ ui: {
66
+ current: {
67
+ progressionId: 'basic'
68
+ },
69
+ route: {
70
+ basic: 'answer'
71
+ },
72
+ tourguide: {
73
+ visible: true,
74
+ step: 1
75
+ }
76
+ }
77
+ };
78
+ const props = (0, _slide.default)(options, {
79
+ dispatch
80
+ })(state);
81
+ t.truthy(props.tourguide);
82
+ props.tourguide.onStart();
83
+ props.tourguide.onStepChange(2);
84
+ props.tourguide.onFinish();
85
+ props.tourguide.onExit();
86
+ t.is(actions.length, 6);
87
+ t.is(actions[0].type, 'ui/tourguide/track-started');
88
+ t.deepEqual(actions[0].payload, {
89
+ group: 'app-player-question-tour-guide',
90
+ stepRef: 'slide',
91
+ stepNumber: 2,
92
+ totalSteps: 4
93
+ });
94
+ t.is(actions[1].type, 'ui/tourguide/track-step-viewed');
95
+ t.deepEqual(actions[1].payload, {
96
+ group: 'app-player-question-tour-guide',
97
+ stepRef: 'media',
98
+ stepNumber: 3,
99
+ totalSteps: 4
100
+ });
101
+ t.is(actions[2].type, _playerStore.SET_TOURGUIDE_STEP);
102
+ t.deepEqual(actions[2].payload, {
103
+ step: 2
104
+ });
105
+ t.is(actions[3].type, 'ui/tourguide/track-completed');
106
+ t.deepEqual(actions[3].payload, {
107
+ group: 'app-player-question-tour-guide',
108
+ stepRef: 'slide',
109
+ stepNumber: 2,
110
+ totalSteps: 4
111
+ });
112
+ t.is(actions[4].type, 'ui/tourguide/track-dismissed');
113
+ t.deepEqual(actions[4].payload, {
114
+ group: 'app-player-question-tour-guide',
115
+ stepRef: 'slide',
116
+ stepNumber: 2,
117
+ totalSteps: 4
118
+ });
119
+ t.is(actions[5].type, _playerStore.HIDE_TOURGUIDE);
120
+ });
121
+ (0, _ava.default)('tourguide tracking uses null stepRef when index is out of bounds', t => {
122
+ const actions = [];
123
+ const dispatch = action => {
124
+ actions.push(action);
125
+ return action;
126
+ };
127
+ const options = {
128
+ translate: _translate.mockTranslate
129
+ };
130
+ const state = {
131
+ data: {
132
+ contents: {
133
+ chapter: {
134
+ entities: {
135
+ '1.B2': {
136
+ _id: '1.B2',
137
+ isConditional: false
138
+ }
139
+ }
140
+ },
141
+ slide: {
142
+ entities: {
143
+ [_basic.default._id]: {
144
+ ..._basic.default,
145
+ chapter_id: '1.B2'
146
+ }
147
+ }
148
+ }
149
+ },
150
+ progressions: {
151
+ entities: {
152
+ basic: {
153
+ engine: {
154
+ ref: 'microlearning',
155
+ version: '1'
156
+ },
157
+ content: {
158
+ ref: '1.B2',
159
+ type: 'chapter'
160
+ },
161
+ state: {
162
+ nextContent: {
163
+ ref: _basic.default._id,
164
+ type: 'slide'
165
+ },
166
+ step: {
167
+ current: 1
168
+ },
169
+ lives: 1,
170
+ livesDisabled: false,
171
+ viewedResources: []
172
+ }
173
+ }
174
+ }
175
+ }
176
+ },
177
+ ui: {
178
+ current: {
179
+ progressionId: 'basic'
180
+ },
181
+ route: {
182
+ basic: 'answer'
183
+ },
184
+ tourguide: {
185
+ visible: true,
186
+ step: 99
187
+ }
188
+ }
189
+ };
190
+ const props = (0, _slide.default)(options, {
191
+ dispatch
192
+ })(state);
193
+ t.truthy(props.tourguide);
194
+ props.tourguide.onStart();
195
+ props.tourguide.onStepChange(99);
196
+ props.tourguide.onFinish();
197
+ props.tourguide.onExit();
198
+ t.is(actions[0].type, 'ui/tourguide/track-started');
199
+ t.deepEqual(actions[0].payload, {
200
+ group: 'app-player-question-tour-guide',
201
+ stepRef: null,
202
+ stepNumber: null,
203
+ totalSteps: 4
204
+ });
205
+ t.is(actions[1].type, 'ui/tourguide/track-step-viewed');
206
+ t.deepEqual(actions[1].payload, {
207
+ group: 'app-player-question-tour-guide',
208
+ stepRef: null,
209
+ stepNumber: null,
210
+ totalSteps: 4
211
+ });
212
+ t.is(actions[3].type, 'ui/tourguide/track-completed');
213
+ t.deepEqual(actions[3].payload, {
214
+ group: 'app-player-question-tour-guide',
215
+ stepRef: null,
216
+ stepNumber: null,
217
+ totalSteps: 4
218
+ });
219
+ t.is(actions[4].type, 'ui/tourguide/track-dismissed');
220
+ t.deepEqual(actions[4].payload, {
221
+ group: 'app-player-question-tour-guide',
222
+ stepRef: null,
223
+ stepNumber: null,
224
+ totalSteps: 4
225
+ });
226
+ });
227
+ //# sourceMappingURL=slide.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slide.js","names":["_ava","_interopRequireDefault","require","_translate","_playerStore","_slide","_basic","e","__esModule","default","test","t","actions","dispatch","action","push","options","translate","mockTranslate","state","data","contents","chapter","entities","_id","isConditional","slide","basicSlide","chapter_id","progressions","basic","engine","ref","version","content","type","nextContent","step","current","lives","livesDisabled","viewedResources","ui","progressionId","route","tourguide","visible","props","createSlideStateToProps","truthy","onStart","onStepChange","onFinish","onExit","is","length","deepEqual","payload","group","stepRef","stepNumber","totalSteps","SET_TOURGUIDE_STEP","HIDE_TOURGUIDE"],"sources":["../../../src/map-state-to-props/test/slide.js"],"sourcesContent":["import test from 'ava';\nimport {mockTranslate} from '@coorpacademy/translate';\nimport {HIDE_TOURGUIDE, SET_TOURGUIDE_STEP} from '@coorpacademy/player-store';\nimport createSlideStateToProps from '../slide';\nimport basicSlide from './fixtures/slides/basic';\n\ntest('tourguide callbacks dispatch step change and hide', t => {\n const actions = [];\n const dispatch = action => {\n actions.push(action);\n return action;\n };\n const options = {translate: mockTranslate};\n const state = {\n data: {\n contents: {\n chapter: {\n entities: {\n '1.B2': {_id: '1.B2', isConditional: false}\n }\n },\n slide: {\n entities: {\n [basicSlide._id]: {...basicSlide, chapter_id: '1.B2'}\n }\n }\n },\n progressions: {\n entities: {\n basic: {\n engine: {ref: 'microlearning', version: '1'},\n content: {ref: '1.B2', type: 'chapter'},\n state: {\n nextContent: {ref: basicSlide._id, type: 'slide'},\n step: {current: 1},\n lives: 1,\n livesDisabled: false,\n viewedResources: []\n }\n }\n }\n }\n },\n ui: {\n current: {progressionId: 'basic'},\n route: {basic: 'answer'},\n tourguide: {visible: true, step: 1}\n }\n };\n\n const props = createSlideStateToProps(options, {dispatch})(state);\n\n t.truthy(props.tourguide);\n props.tourguide.onStart();\n props.tourguide.onStepChange(2);\n props.tourguide.onFinish();\n props.tourguide.onExit();\n\n t.is(actions.length, 6);\n t.is(actions[0].type, 'ui/tourguide/track-started');\n t.deepEqual(actions[0].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: 'slide',\n stepNumber: 2,\n totalSteps: 4\n });\n t.is(actions[1].type, 'ui/tourguide/track-step-viewed');\n t.deepEqual(actions[1].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: 'media',\n stepNumber: 3,\n totalSteps: 4\n });\n t.is(actions[2].type, SET_TOURGUIDE_STEP);\n t.deepEqual(actions[2].payload, {step: 2});\n t.is(actions[3].type, 'ui/tourguide/track-completed');\n t.deepEqual(actions[3].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: 'slide',\n stepNumber: 2,\n totalSteps: 4\n });\n t.is(actions[4].type, 'ui/tourguide/track-dismissed');\n t.deepEqual(actions[4].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: 'slide',\n stepNumber: 2,\n totalSteps: 4\n });\n t.is(actions[5].type, HIDE_TOURGUIDE);\n});\n\ntest('tourguide tracking uses null stepRef when index is out of bounds', t => {\n const actions = [];\n const dispatch = action => {\n actions.push(action);\n return action;\n };\n const options = {translate: mockTranslate};\n const state = {\n data: {\n contents: {\n chapter: {\n entities: {\n '1.B2': {_id: '1.B2', isConditional: false}\n }\n },\n slide: {\n entities: {\n [basicSlide._id]: {...basicSlide, chapter_id: '1.B2'}\n }\n }\n },\n progressions: {\n entities: {\n basic: {\n engine: {ref: 'microlearning', version: '1'},\n content: {ref: '1.B2', type: 'chapter'},\n state: {\n nextContent: {ref: basicSlide._id, type: 'slide'},\n step: {current: 1},\n lives: 1,\n livesDisabled: false,\n viewedResources: []\n }\n }\n }\n }\n },\n ui: {\n current: {progressionId: 'basic'},\n route: {basic: 'answer'},\n tourguide: {visible: true, step: 99}\n }\n };\n\n const props = createSlideStateToProps(options, {dispatch})(state);\n\n t.truthy(props.tourguide);\n props.tourguide.onStart();\n props.tourguide.onStepChange(99);\n props.tourguide.onFinish();\n props.tourguide.onExit();\n\n t.is(actions[0].type, 'ui/tourguide/track-started');\n t.deepEqual(actions[0].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: null,\n stepNumber: null,\n totalSteps: 4\n });\n t.is(actions[1].type, 'ui/tourguide/track-step-viewed');\n t.deepEqual(actions[1].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: null,\n stepNumber: null,\n totalSteps: 4\n });\n t.is(actions[3].type, 'ui/tourguide/track-completed');\n t.deepEqual(actions[3].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: null,\n stepNumber: null,\n totalSteps: 4\n });\n t.is(actions[4].type, 'ui/tourguide/track-dismissed');\n t.deepEqual(actions[4].payload, {\n group: 'app-player-question-tour-guide',\n stepRef: null,\n stepNumber: null,\n totalSteps: 4\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,246 @@
1
+ "use strict";
2
+
3
+ var _ava = _interopRequireDefault(require("ava"));
4
+ var _playerStore = require("@coorpacademy/player-store");
5
+ var _tourguideSync = _interopRequireDefault(require("../../tourguide-sync"));
6
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
7
+ const noop = () => {};
8
+ (0, _ava.default)('tourguide sync dispatches show only when auto-show conditions are met', t => {
9
+ const state = {
10
+ data: {
11
+ contents: {
12
+ chapter: {
13
+ entities: {
14
+ '1.B2': {
15
+ _id: '1.B2',
16
+ isConditional: false,
17
+ nbSlides: 5
18
+ }
19
+ }
20
+ },
21
+ slide: {
22
+ entities: {
23
+ sli_1: {
24
+ chapter_id: '1.B2'
25
+ }
26
+ }
27
+ }
28
+ },
29
+ progressions: {
30
+ entities: {
31
+ basic: {
32
+ engine: {
33
+ ref: 'microlearning',
34
+ version: '1'
35
+ },
36
+ content: {
37
+ ref: '1.B2',
38
+ type: 'chapter'
39
+ },
40
+ state: {
41
+ nextContent: {
42
+ ref: 'sli_1',
43
+ type: 'slide'
44
+ },
45
+ step: {
46
+ current: 1
47
+ },
48
+ lives: 3,
49
+ livesDisabled: false,
50
+ viewedResources: []
51
+ }
52
+ }
53
+ }
54
+ }
55
+ },
56
+ ui: {
57
+ current: {
58
+ progressionId: 'basic'
59
+ },
60
+ route: {
61
+ basic: 'answer'
62
+ },
63
+ tourguide: {
64
+ visible: false,
65
+ step: 0,
66
+ hasTourGuideBeenShown: false
67
+ }
68
+ }
69
+ };
70
+ const actions = [];
71
+ const getState = () => state;
72
+ const dispatch = action => {
73
+ actions.push(action);
74
+ return action;
75
+ };
76
+ const subscribe = () => noop;
77
+ const store = {
78
+ getState,
79
+ dispatch,
80
+ subscribe
81
+ };
82
+ (0, _tourguideSync.default)({
83
+ mode: 'scorm'
84
+ }, store);
85
+ t.is(actions.length, 1);
86
+ t.is(actions[0].type, _playerStore.SHOW_TOURGUIDE);
87
+ });
88
+ (0, _ava.default)('tourguide sync does not dispatch again when auto-show state is unchanged', t => {
89
+ const state = {
90
+ data: {
91
+ contents: {
92
+ chapter: {
93
+ entities: {
94
+ '1.B2': {
95
+ _id: '1.B2',
96
+ isConditional: false,
97
+ nbSlides: 5
98
+ }
99
+ }
100
+ },
101
+ slide: {
102
+ entities: {
103
+ sli_1: {
104
+ chapter_id: '1.B2'
105
+ }
106
+ }
107
+ }
108
+ },
109
+ progressions: {
110
+ entities: {
111
+ basic: {
112
+ engine: {
113
+ ref: 'microlearning',
114
+ version: '1'
115
+ },
116
+ content: {
117
+ ref: '1.B2',
118
+ type: 'chapter'
119
+ },
120
+ state: {
121
+ nextContent: {
122
+ ref: 'sli_1',
123
+ type: 'slide'
124
+ },
125
+ step: {
126
+ current: 1
127
+ },
128
+ lives: 3,
129
+ livesDisabled: false,
130
+ viewedResources: []
131
+ }
132
+ }
133
+ }
134
+ }
135
+ },
136
+ ui: {
137
+ current: {
138
+ progressionId: 'basic'
139
+ },
140
+ route: {
141
+ basic: 'answer'
142
+ },
143
+ tourguide: {
144
+ visible: false,
145
+ step: 0,
146
+ hasTourGuideBeenShown: false
147
+ }
148
+ }
149
+ };
150
+ const actions = [];
151
+ const getState = () => state;
152
+ const dispatch = action => {
153
+ actions.push(action);
154
+ return action;
155
+ };
156
+ const subscribe = listener => {
157
+ listener();
158
+ return noop;
159
+ };
160
+ const store = {
161
+ getState,
162
+ dispatch,
163
+ subscribe
164
+ };
165
+ (0, _tourguideSync.default)({
166
+ mode: 'scorm'
167
+ }, store);
168
+ t.is(actions.length, 1);
169
+ t.is(actions[0].type, _playerStore.SHOW_TOURGUIDE);
170
+ });
171
+ (0, _ava.default)('tourguide sync uses empty tourguide state when missing', t => {
172
+ const state = {
173
+ data: {
174
+ contents: {
175
+ chapter: {
176
+ entities: {
177
+ '1.B2': {
178
+ _id: '1.B2',
179
+ isConditional: false,
180
+ nbSlides: 5
181
+ }
182
+ }
183
+ },
184
+ slide: {
185
+ entities: {
186
+ sli_1: {
187
+ chapter_id: '1.B2'
188
+ }
189
+ }
190
+ }
191
+ },
192
+ progressions: {
193
+ entities: {
194
+ basic: {
195
+ engine: {
196
+ ref: 'microlearning',
197
+ version: '1'
198
+ },
199
+ content: {
200
+ ref: '1.B2',
201
+ type: 'chapter'
202
+ },
203
+ state: {
204
+ nextContent: {
205
+ ref: 'sli_1',
206
+ type: 'slide'
207
+ },
208
+ step: {
209
+ current: 1
210
+ },
211
+ lives: 3,
212
+ livesDisabled: false,
213
+ viewedResources: []
214
+ }
215
+ }
216
+ }
217
+ }
218
+ },
219
+ ui: {
220
+ current: {
221
+ progressionId: 'basic'
222
+ },
223
+ route: {
224
+ basic: 'answer'
225
+ }
226
+ }
227
+ };
228
+ const actions = [];
229
+ const getState = () => state;
230
+ const dispatch = action => {
231
+ actions.push(action);
232
+ return action;
233
+ };
234
+ const subscribe = () => noop;
235
+ const store = {
236
+ getState,
237
+ dispatch,
238
+ subscribe
239
+ };
240
+ (0, _tourguideSync.default)({
241
+ mode: 'scorm'
242
+ }, store);
243
+ t.is(actions.length, 1);
244
+ t.is(actions[0].type, _playerStore.SHOW_TOURGUIDE);
245
+ });
246
+ //# sourceMappingURL=tourguide-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tourguide-sync.js","names":["_ava","_interopRequireDefault","require","_playerStore","_tourguideSync","e","__esModule","default","noop","test","t","state","data","contents","chapter","entities","_id","isConditional","nbSlides","slide","sli_1","chapter_id","progressions","basic","engine","ref","version","content","type","nextContent","step","current","lives","livesDisabled","viewedResources","ui","progressionId","route","tourguide","visible","hasTourGuideBeenShown","actions","getState","dispatch","action","push","subscribe","store","createTourguideSync","mode","is","length","SHOW_TOURGUIDE","listener"],"sources":["../../../src/map-state-to-props/test/tourguide-sync.js"],"sourcesContent":["import test from 'ava';\nimport {SHOW_TOURGUIDE} from '@coorpacademy/player-store';\nimport createTourguideSync from '../../tourguide-sync';\n\nconst noop = () => {};\n\ntest('tourguide sync dispatches show only when auto-show conditions are met', t => {\n const state = {\n data: {\n contents: {\n chapter: {\n entities: {\n '1.B2': {_id: '1.B2', isConditional: false, nbSlides: 5}\n }\n },\n slide: {\n entities: {\n sli_1: {chapter_id: '1.B2'}\n }\n }\n },\n progressions: {\n entities: {\n basic: {\n engine: {ref: 'microlearning', version: '1'},\n content: {ref: '1.B2', type: 'chapter'},\n state: {\n nextContent: {ref: 'sli_1', type: 'slide'},\n step: {current: 1},\n lives: 3,\n livesDisabled: false,\n viewedResources: []\n }\n }\n }\n }\n },\n ui: {\n current: {progressionId: 'basic'},\n route: {basic: 'answer'},\n tourguide: {visible: false, step: 0, hasTourGuideBeenShown: false}\n }\n };\n\n const actions = [];\n const getState = () => state;\n const dispatch = action => {\n actions.push(action);\n return action;\n };\n const subscribe = () => noop;\n const store = {getState, dispatch, subscribe};\n\n createTourguideSync({mode: 'scorm'}, store);\n\n t.is(actions.length, 1);\n t.is(actions[0].type, SHOW_TOURGUIDE);\n});\n\ntest('tourguide sync does not dispatch again when auto-show state is unchanged', t => {\n const state = {\n data: {\n contents: {\n chapter: {\n entities: {\n '1.B2': {_id: '1.B2', isConditional: false, nbSlides: 5}\n }\n },\n slide: {\n entities: {\n sli_1: {chapter_id: '1.B2'}\n }\n }\n },\n progressions: {\n entities: {\n basic: {\n engine: {ref: 'microlearning', version: '1'},\n content: {ref: '1.B2', type: 'chapter'},\n state: {\n nextContent: {ref: 'sli_1', type: 'slide'},\n step: {current: 1},\n lives: 3,\n livesDisabled: false,\n viewedResources: []\n }\n }\n }\n }\n },\n ui: {\n current: {progressionId: 'basic'},\n route: {basic: 'answer'},\n tourguide: {visible: false, step: 0, hasTourGuideBeenShown: false}\n }\n };\n\n const actions = [];\n const getState = () => state;\n const dispatch = action => {\n actions.push(action);\n return action;\n };\n const subscribe = listener => {\n listener();\n return noop;\n };\n const store = {getState, dispatch, subscribe};\n\n createTourguideSync({mode: 'scorm'}, store);\n\n t.is(actions.length, 1);\n t.is(actions[0].type, SHOW_TOURGUIDE);\n});\n\ntest('tourguide sync uses empty tourguide state when missing', t => {\n const state = {\n data: {\n contents: {\n chapter: {\n entities: {\n '1.B2': {_id: '1.B2', isConditional: false, nbSlides: 5}\n }\n },\n slide: {\n entities: {\n sli_1: {chapter_id: '1.B2'}\n }\n }\n },\n progressions: {\n entities: {\n basic: {\n engine: {ref: 'microlearning', version: '1'},\n content: {ref: '1.B2', type: 'chapter'},\n state: {\n nextContent: {ref: 'sli_1', type: 'slide'},\n step: {current: 1},\n lives: 3,\n livesDisabled: false,\n viewedResources: []\n }\n }\n }\n }\n },\n ui: {\n current: {progressionId: 'basic'},\n route: {basic: 'answer'}\n }\n };\n\n const actions = [];\n const getState = () => state;\n const dispatch = action => {\n actions.push(action);\n return action;\n };\n const subscribe = () => noop;\n const store = {getState, dispatch, subscribe};\n\n createTourguideSync({mode: 'scorm'}, store);\n\n t.is(actions.length, 1);\n t.is(actions[0].type, SHOW_TOURGUIDE);\n});\n"],"mappings":"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","ignoreList":[]}
package/lib/store.js CHANGED
@@ -6,7 +6,8 @@ var _redux = require("redux");
6
6
  var _playerStore = require("@coorpacademy/player-store");
7
7
  const {
8
8
  ErrorLogger,
9
- ReduxThunkMemoized
9
+ ReduxThunkMemoized,
10
+ TourguideTrackingLogger
10
11
  } = _playerStore.middlewares;
11
12
  const {
12
13
  data,
@@ -18,7 +19,7 @@ const createReducers = () => (0, _redux.combineReducers)({
18
19
  });
19
20
  exports.createReducers = createReducers;
20
21
  const createMiddlewares = options => {
21
- return (0, _redux.compose)((0, _redux.applyMiddleware)(ReduxThunkMemoized(options), ErrorLogger(options)), typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__() : f => f);
22
+ return (0, _redux.compose)((0, _redux.applyMiddleware)(ReduxThunkMemoized(options), ErrorLogger(options), TourguideTrackingLogger(options)), typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__() : f => f);
22
23
  };
23
24
  exports.createMiddlewares = createMiddlewares;
24
25
  const create = options => (0, _redux.createStore)(createReducers(), {}, createMiddlewares(options));
package/lib/store.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","names":["_redux","require","_playerStore","ErrorLogger","ReduxThunkMemoized","middlewares","data","ui","reducers","createReducers","combineReducers","exports","createMiddlewares","options","compose","applyMiddleware","window","__REDUX_DEVTOOLS_EXTENSION__","f","create","createStore","_default","default"],"sources":["../src/store.js"],"sourcesContent":["import {applyMiddleware, combineReducers, compose, createStore} from 'redux';\nimport {middlewares, reducers} from '@coorpacademy/player-store';\n\nconst {ErrorLogger, ReduxThunkMemoized} = middlewares;\nconst {data, ui} = reducers;\n\nconst createReducers = () =>\n combineReducers({\n data,\n ui\n });\n\nconst createMiddlewares = options => {\n return compose(\n applyMiddleware(ReduxThunkMemoized(options), ErrorLogger(options)),\n typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__\n ? window.__REDUX_DEVTOOLS_EXTENSION__()\n : f => f\n );\n};\n\nconst create = options => createStore(createReducers(), {}, createMiddlewares(options));\nexport {createMiddlewares, createReducers};\nexport default create;\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,MAAM;EAACE,WAAW;EAAEC;AAAkB,CAAC,GAAGC,wBAAW;AACrD,MAAM;EAACC,IAAI;EAAEC;AAAE,CAAC,GAAGC,qBAAQ;AAE3B,MAAMC,cAAc,GAAGA,CAAA,KACrB,IAAAC,sBAAe,EAAC;EACdJ,IAAI;EACJC;AACF,CAAC,CAAC;AAACI,OAAA,CAAAF,cAAA,GAAAA,cAAA;AAEL,MAAMG,iBAAiB,GAAGC,OAAO,IAAI;EACnC,OAAO,IAAAC,cAAO,EACZ,IAAAC,sBAAe,EAACX,kBAAkB,CAACS,OAAO,CAAC,EAAEV,WAAW,CAACU,OAAO,CAAC,CAAC,EAClE,OAAOG,MAAM,KAAK,WAAW,IAAIA,MAAM,CAACC,4BAA4B,GAChED,MAAM,CAACC,4BAA4B,CAAC,CAAC,GACrCC,CAAC,IAAIA,CACX,CAAC;AACH,CAAC;AAACP,OAAA,CAAAC,iBAAA,GAAAA,iBAAA;AAEF,MAAMO,MAAM,GAAGN,OAAO,IAAI,IAAAO,kBAAW,EAACX,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEG,iBAAiB,CAACC,OAAO,CAAC,CAAC;AAAC,IAAAQ,QAAA,GAAAV,OAAA,CAAAW,OAAA,GAEzEH,MAAM","ignoreList":[]}
1
+ {"version":3,"file":"store.js","names":["_redux","require","_playerStore","ErrorLogger","ReduxThunkMemoized","TourguideTrackingLogger","middlewares","data","ui","reducers","createReducers","combineReducers","exports","createMiddlewares","options","compose","applyMiddleware","window","__REDUX_DEVTOOLS_EXTENSION__","f","create","createStore","_default","default"],"sources":["../src/store.js"],"sourcesContent":["import {applyMiddleware, combineReducers, compose, createStore} from 'redux';\nimport {middlewares, reducers} from '@coorpacademy/player-store';\n\nconst {ErrorLogger, ReduxThunkMemoized, TourguideTrackingLogger} = middlewares;\nconst {data, ui} = reducers;\n\nconst createReducers = () =>\n combineReducers({\n data,\n ui\n });\n\nconst createMiddlewares = options => {\n return compose(\n applyMiddleware(\n ReduxThunkMemoized(options),\n ErrorLogger(options),\n TourguideTrackingLogger(options)\n ),\n typeof window !== 'undefined' && window.__REDUX_DEVTOOLS_EXTENSION__\n ? window.__REDUX_DEVTOOLS_EXTENSION__()\n : f => f\n );\n};\n\nconst create = options => createStore(createReducers(), {}, createMiddlewares(options));\nexport {createMiddlewares, createReducers};\nexport default create;\n"],"mappings":";;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AAEA,MAAM;EAACE,WAAW;EAAEC,kBAAkB;EAAEC;AAAuB,CAAC,GAAGC,wBAAW;AAC9E,MAAM;EAACC,IAAI;EAAEC;AAAE,CAAC,GAAGC,qBAAQ;AAE3B,MAAMC,cAAc,GAAGA,CAAA,KACrB,IAAAC,sBAAe,EAAC;EACdJ,IAAI;EACJC;AACF,CAAC,CAAC;AAACI,OAAA,CAAAF,cAAA,GAAAA,cAAA;AAEL,MAAMG,iBAAiB,GAAGC,OAAO,IAAI;EACnC,OAAO,IAAAC,cAAO,EACZ,IAAAC,sBAAe,EACbZ,kBAAkB,CAACU,OAAO,CAAC,EAC3BX,WAAW,CAACW,OAAO,CAAC,EACpBT,uBAAuB,CAACS,OAAO,CACjC,CAAC,EACD,OAAOG,MAAM,KAAK,WAAW,IAAIA,MAAM,CAACC,4BAA4B,GAChED,MAAM,CAACC,4BAA4B,CAAC,CAAC,GACrCC,CAAC,IAAIA,CACX,CAAC;AACH,CAAC;AAACP,OAAA,CAAAC,iBAAA,GAAAA,iBAAA;AAEF,MAAMO,MAAM,GAAGN,OAAO,IAAI,IAAAO,kBAAW,EAACX,cAAc,CAAC,CAAC,EAAE,CAAC,CAAC,EAAEG,iBAAiB,CAACC,OAAO,CAAC,CAAC;AAAC,IAAAQ,QAAA,GAAAV,OAAA,CAAAW,OAAA,GAEzEH,MAAM","ignoreList":[]}
@@ -47,7 +47,16 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
47
47
  progressionId: null
48
48
  },
49
49
  location: {},
50
- route: {}
50
+ route: {},
51
+ tourguide: {
52
+ visible: false,
53
+ step: 0,
54
+ hasTourGuideBeenShown: false,
55
+ forceStart: false
56
+ },
57
+ tourguideTracking: {
58
+ lastEvent: null
59
+ }
51
60
  }
52
61
  });
53
62
  //# sourceMappingURL=init-reducers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"init-reducers.js","names":["_ava","_interopRequireDefault","require","_store","_macro","e","__esModule","default","test","macro","createReducers","undefined","data","answers","entities","comments","configs","contents","clues","exitNodes","progressions","rank","nextContent","recommendations","videos","ui","coaches","availableCoaches","text","corrections","current","progressionId","location","route"],"sources":["../../src/test/init-reducers.js"],"sourcesContent":["import test from 'ava';\nimport {createReducers} from '../store';\nimport macro from './helpers/macro';\n\ntest(\n 'should have initial value',\n macro,\n createReducers(),\n undefined,\n {},\n {\n data: {\n answers: {entities: {}},\n comments: {entities: {}},\n configs: {},\n contents: {},\n clues: {entities: {}},\n exitNodes: {entities: {}},\n progressions: {entities: {}},\n rank: {},\n nextContent: {entities: {}},\n recommendations: {entities: {}},\n videos: {entities: {}}\n },\n ui: {\n answers: {},\n coaches: {\n availableCoaches: 0\n },\n comments: {\n text: null\n },\n corrections: {},\n current: {\n progressionId: null\n },\n location: {},\n route: {}\n }\n }\n);\n"],"mappings":";;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,IAAAG,YAAI,EACF,2BAA2B,EAC3BC,cAAK,EACL,IAAAC,qBAAc,EAAC,CAAC,EAChBC,SAAS,EACT,CAAC,CAAC,EACF;EACEC,IAAI,EAAE;IACJC,OAAO,EAAE;MAACC,QAAQ,EAAE,CAAC;IAAC,CAAC;IACvBC,QAAQ,EAAE;MAACD,QAAQ,EAAE,CAAC;IAAC,CAAC;IACxBE,OAAO,EAAE,CAAC,CAAC;IACXC,QAAQ,EAAE,CAAC,CAAC;IACZC,KAAK,EAAE;MAACJ,QAAQ,EAAE,CAAC;IAAC,CAAC;IACrBK,SAAS,EAAE;MAACL,QAAQ,EAAE,CAAC;IAAC,CAAC;IACzBM,YAAY,EAAE;MAACN,QAAQ,EAAE,CAAC;IAAC,CAAC;IAC5BO,IAAI,EAAE,CAAC,CAAC;IACRC,WAAW,EAAE;MAACR,QAAQ,EAAE,CAAC;IAAC,CAAC;IAC3BS,eAAe,EAAE;MAACT,QAAQ,EAAE,CAAC;IAAC,CAAC;IAC/BU,MAAM,EAAE;MAACV,QAAQ,EAAE,CAAC;IAAC;EACvB,CAAC;EACDW,EAAE,EAAE;IACFZ,OAAO,EAAE,CAAC,CAAC;IACXa,OAAO,EAAE;MACPC,gBAAgB,EAAE;IACpB,CAAC;IACDZ,QAAQ,EAAE;MACRa,IAAI,EAAE;IACR,CAAC;IACDC,WAAW,EAAE,CAAC,CAAC;IACfC,OAAO,EAAE;MACPC,aAAa,EAAE;IACjB,CAAC;IACDC,QAAQ,EAAE,CAAC,CAAC;IACZC,KAAK,EAAE,CAAC;EACV;AACF,CACF,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"init-reducers.js","names":["_ava","_interopRequireDefault","require","_store","_macro","e","__esModule","default","test","macro","createReducers","undefined","data","answers","entities","comments","configs","contents","clues","exitNodes","progressions","rank","nextContent","recommendations","videos","ui","coaches","availableCoaches","text","corrections","current","progressionId","location","route","tourguide","visible","step","hasTourGuideBeenShown","forceStart","tourguideTracking","lastEvent"],"sources":["../../src/test/init-reducers.js"],"sourcesContent":["import test from 'ava';\nimport {createReducers} from '../store';\nimport macro from './helpers/macro';\n\ntest(\n 'should have initial value',\n macro,\n createReducers(),\n undefined,\n {},\n {\n data: {\n answers: {entities: {}},\n comments: {entities: {}},\n configs: {},\n contents: {},\n clues: {entities: {}},\n exitNodes: {entities: {}},\n progressions: {entities: {}},\n rank: {},\n nextContent: {entities: {}},\n recommendations: {entities: {}},\n videos: {entities: {}}\n },\n ui: {\n answers: {},\n coaches: {\n availableCoaches: 0\n },\n comments: {\n text: null\n },\n corrections: {},\n current: {\n progressionId: null\n },\n location: {},\n route: {},\n tourguide: {\n visible: false,\n step: 0,\n hasTourGuideBeenShown: false,\n forceStart: false\n },\n tourguideTracking: {\n lastEvent: null\n }\n }\n }\n);\n"],"mappings":";;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAoC,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,IAAAG,YAAI,EACF,2BAA2B,EAC3BC,cAAK,EACL,IAAAC,qBAAc,EAAC,CAAC,EAChBC,SAAS,EACT,CAAC,CAAC,EACF;EACEC,IAAI,EAAE;IACJC,OAAO,EAAE;MAACC,QAAQ,EAAE,CAAC;IAAC,CAAC;IACvBC,QAAQ,EAAE;MAACD,QAAQ,EAAE,CAAC;IAAC,CAAC;IACxBE,OAAO,EAAE,CAAC,CAAC;IACXC,QAAQ,EAAE,CAAC,CAAC;IACZC,KAAK,EAAE;MAACJ,QAAQ,EAAE,CAAC;IAAC,CAAC;IACrBK,SAAS,EAAE;MAACL,QAAQ,EAAE,CAAC;IAAC,CAAC;IACzBM,YAAY,EAAE;MAACN,QAAQ,EAAE,CAAC;IAAC,CAAC;IAC5BO,IAAI,EAAE,CAAC,CAAC;IACRC,WAAW,EAAE;MAACR,QAAQ,EAAE,CAAC;IAAC,CAAC;IAC3BS,eAAe,EAAE;MAACT,QAAQ,EAAE,CAAC;IAAC,CAAC;IAC/BU,MAAM,EAAE;MAACV,QAAQ,EAAE,CAAC;IAAC;EACvB,CAAC;EACDW,EAAE,EAAE;IACFZ,OAAO,EAAE,CAAC,CAAC;IACXa,OAAO,EAAE;MACPC,gBAAgB,EAAE;IACpB,CAAC;IACDZ,QAAQ,EAAE;MACRa,IAAI,EAAE;IACR,CAAC;IACDC,WAAW,EAAE,CAAC,CAAC;IACfC,OAAO,EAAE;MACPC,aAAa,EAAE;IACjB,CAAC;IACDC,QAAQ,EAAE,CAAC,CAAC;IACZC,KAAK,EAAE,CAAC,CAAC;IACTC,SAAS,EAAE;MACTC,OAAO,EAAE,KAAK;MACdC,IAAI,EAAE,CAAC;MACPC,qBAAqB,EAAE,KAAK;MAC5BC,UAAU,EAAE;IACd,CAAC;IACDC,iBAAiB,EAAE;MACjBC,SAAS,EAAE;IACb;EACF;AACF,CACF,CAAC","ignoreList":[]}
package/lib/test/store.js CHANGED
@@ -30,11 +30,9 @@ const appOptions = {
30
30
  });
31
31
  (0, _ava.default)('should enable devtools', t => {
32
32
  t.plan(1);
33
- global.window = {
34
- __REDUX_DEVTOOLS_EXTENSION__: () => {
35
- t.pass();
36
- return f => f;
37
- }
33
+ global.window.__REDUX_DEVTOOLS_EXTENSION__ = () => {
34
+ t.pass();
35
+ return f => f;
38
36
  };
39
37
  (0, _redux.createStore)(state => state, 'state', (0, _store.createMiddlewares)(appOptions));
40
38
  });
@@ -1 +1 @@
1
- {"version":3,"file":"store.js","names":["_ava","_interopRequireDefault","require","_redux","_store","e","__esModule","default","appOptions","services","error","Error","test","t","plan","store","createStore","state","pass","createMiddlewares","dispatch","type","getState","options","is","global","window","__REDUX_DEVTOOLS_EXTENSION__","f"],"sources":["../../src/test/store.js"],"sourcesContent":["import test from 'ava';\nimport {createStore} from 'redux';\nimport {createMiddlewares} from '../store';\n\nconst appOptions = {\n services: {\n error: () => {\n throw new Error('error logger should not have been called');\n }\n }\n};\n\ntest('should apply redux-thunk', async t => {\n t.plan(5);\n\n const store = createStore(\n state => {\n t.pass();\n return state;\n },\n 'state',\n createMiddlewares(appOptions)\n );\n\n await store.dispatch({type: 1});\n return store.dispatch((dispatch, getState, options) => {\n t.is(options, appOptions);\n t.is(getState(), 'state');\n return dispatch({\n type: 2\n });\n });\n});\n\ntest('should enable devtools', t => {\n t.plan(1);\n global.window = {\n __REDUX_DEVTOOLS_EXTENSION__: () => {\n t.pass();\n return f => f;\n }\n };\n\n createStore(state => state, 'state', createMiddlewares(appOptions));\n});\n"],"mappings":";;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAA2C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3C,MAAMG,UAAU,GAAG;EACjBC,QAAQ,EAAE;IACRC,KAAK,EAAEA,CAAA,KAAM;MACX,MAAM,IAAIC,KAAK,CAAC,0CAA0C,CAAC;IAC7D;EACF;AACF,CAAC;AAED,IAAAC,YAAI,EAAC,0BAA0B,EAAE,MAAMC,CAAC,IAAI;EAC1CA,CAAC,CAACC,IAAI,CAAC,CAAC,CAAC;EAET,MAAMC,KAAK,GAAG,IAAAC,kBAAW,EACvBC,KAAK,IAAI;IACPJ,CAAC,CAACK,IAAI,CAAC,CAAC;IACR,OAAOD,KAAK;EACd,CAAC,EACD,OAAO,EACP,IAAAE,wBAAiB,EAACX,UAAU,CAC9B,CAAC;EAED,MAAMO,KAAK,CAACK,QAAQ,CAAC;IAACC,IAAI,EAAE;EAAC,CAAC,CAAC;EAC/B,OAAON,KAAK,CAACK,QAAQ,CAAC,CAACA,QAAQ,EAAEE,QAAQ,EAAEC,OAAO,KAAK;IACrDV,CAAC,CAACW,EAAE,CAACD,OAAO,EAAEf,UAAU,CAAC;IACzBK,CAAC,CAACW,EAAE,CAACF,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;IACzB,OAAOF,QAAQ,CAAC;MACdC,IAAI,EAAE;IACR,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,IAAAT,YAAI,EAAC,wBAAwB,EAAEC,CAAC,IAAI;EAClCA,CAAC,CAACC,IAAI,CAAC,CAAC,CAAC;EACTW,MAAM,CAACC,MAAM,GAAG;IACdC,4BAA4B,EAAEA,CAAA,KAAM;MAClCd,CAAC,CAACK,IAAI,CAAC,CAAC;MACR,OAAOU,CAAC,IAAIA,CAAC;IACf;EACF,CAAC;EAED,IAAAZ,kBAAW,EAACC,KAAK,IAAIA,KAAK,EAAE,OAAO,EAAE,IAAAE,wBAAiB,EAACX,UAAU,CAAC,CAAC;AACrE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"store.js","names":["_ava","_interopRequireDefault","require","_redux","_store","e","__esModule","default","appOptions","services","error","Error","test","t","plan","store","createStore","state","pass","createMiddlewares","dispatch","type","getState","options","is","global","window","__REDUX_DEVTOOLS_EXTENSION__","f"],"sources":["../../src/test/store.js"],"sourcesContent":["import test from 'ava';\nimport {createStore} from 'redux';\nimport {createMiddlewares} from '../store';\n\nconst appOptions = {\n services: {\n error: () => {\n throw new Error('error logger should not have been called');\n }\n }\n};\n\ntest('should apply redux-thunk', async t => {\n t.plan(5);\n\n const store = createStore(\n state => {\n t.pass();\n return state;\n },\n 'state',\n createMiddlewares(appOptions)\n );\n\n await store.dispatch({type: 1});\n return store.dispatch((dispatch, getState, options) => {\n t.is(options, appOptions);\n t.is(getState(), 'state');\n return dispatch({\n type: 2\n });\n });\n});\n\ntest('should enable devtools', t => {\n t.plan(1);\n global.window.__REDUX_DEVTOOLS_EXTENSION__ = () => {\n t.pass();\n return f => f;\n };\n\n createStore(state => state, 'state', createMiddlewares(appOptions));\n});\n"],"mappings":";;AAAA,IAAAA,IAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,MAAA,GAAAF,OAAA;AAA2C,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3C,MAAMG,UAAU,GAAG;EACjBC,QAAQ,EAAE;IACRC,KAAK,EAAEA,CAAA,KAAM;MACX,MAAM,IAAIC,KAAK,CAAC,0CAA0C,CAAC;IAC7D;EACF;AACF,CAAC;AAED,IAAAC,YAAI,EAAC,0BAA0B,EAAE,MAAMC,CAAC,IAAI;EAC1CA,CAAC,CAACC,IAAI,CAAC,CAAC,CAAC;EAET,MAAMC,KAAK,GAAG,IAAAC,kBAAW,EACvBC,KAAK,IAAI;IACPJ,CAAC,CAACK,IAAI,CAAC,CAAC;IACR,OAAOD,KAAK;EACd,CAAC,EACD,OAAO,EACP,IAAAE,wBAAiB,EAACX,UAAU,CAC9B,CAAC;EAED,MAAMO,KAAK,CAACK,QAAQ,CAAC;IAACC,IAAI,EAAE;EAAC,CAAC,CAAC;EAC/B,OAAON,KAAK,CAACK,QAAQ,CAAC,CAACA,QAAQ,EAAEE,QAAQ,EAAEC,OAAO,KAAK;IACrDV,CAAC,CAACW,EAAE,CAACD,OAAO,EAAEf,UAAU,CAAC;IACzBK,CAAC,CAACW,EAAE,CAACF,QAAQ,CAAC,CAAC,EAAE,OAAO,CAAC;IACzB,OAAOF,QAAQ,CAAC;MACdC,IAAI,EAAE;IACR,CAAC,CAAC;EACJ,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,IAAAT,YAAI,EAAC,wBAAwB,EAAEC,CAAC,IAAI;EAClCA,CAAC,CAACC,IAAI,CAAC,CAAC,CAAC;EACTW,MAAM,CAACC,MAAM,CAACC,4BAA4B,GAAG,MAAM;IACjDd,CAAC,CAACK,IAAI,CAAC,CAAC;IACR,OAAOU,CAAC,IAAIA,CAAC;EACf,CAAC;EAED,IAAAZ,kBAAW,EAACC,KAAK,IAAIA,KAAK,EAAE,OAAO,EAAE,IAAAE,wBAAiB,EAACX,UAAU,CAAC,CAAC;AACrE,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+
3
+ exports.__esModule = true;
4
+ exports.default = void 0;
5
+ var _get2 = _interopRequireDefault(require("lodash/fp/get"));
6
+ var _playerStore = require("@coorpacademy/player-store");
7
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
8
+ const getTourguideState = state => (0, _get2.default)('ui.tourguide', state) || {};
9
+ const createTourguideSync = (options, store) => {
10
+ let lastShouldEnable = null;
11
+ const sync = () => {
12
+ const state = store.getState();
13
+ const {
14
+ visible
15
+ } = getTourguideState(state);
16
+ const shouldAutoShow = (0, _playerStore.shouldAutoShowTourguide)(state, options, getTourguideState(state));
17
+ if (shouldAutoShow === lastShouldEnable) {
18
+ return;
19
+ }
20
+ lastShouldEnable = shouldAutoShow;
21
+ if (shouldAutoShow && !visible) {
22
+ store.dispatch((0, _playerStore.showTourguide)());
23
+ }
24
+ };
25
+ sync();
26
+ return store.subscribe(sync);
27
+ };
28
+ var _default = exports.default = createTourguideSync;
29
+ //# sourceMappingURL=tourguide-sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tourguide-sync.js","names":["_playerStore","require","_interopRequireDefault","e","__esModule","default","getTourguideState","state","_get2","createTourguideSync","options","store","lastShouldEnable","sync","getState","visible","shouldAutoShow","shouldAutoShowTourguide","dispatch","showTourguide","subscribe","_default","exports"],"sources":["../src/tourguide-sync.js"],"sourcesContent":["import {get} from 'lodash/fp';\nimport {showTourguide, shouldAutoShowTourguide} from '@coorpacademy/player-store';\n\nconst getTourguideState = state => get('ui.tourguide', state) || {};\n\nconst createTourguideSync = (options, store) => {\n let lastShouldEnable = null;\n\n const sync = () => {\n const state = store.getState();\n const {visible} = getTourguideState(state);\n const shouldAutoShow = shouldAutoShowTourguide(state, options, getTourguideState(state));\n\n if (shouldAutoShow === lastShouldEnable) {\n return;\n }\n\n lastShouldEnable = shouldAutoShow;\n\n if (shouldAutoShow && !visible) {\n store.dispatch(showTourguide());\n }\n };\n\n sync();\n return store.subscribe(sync);\n};\n\nexport default createTourguideSync;\n"],"mappings":";;;;;AACA,IAAAA,YAAA,GAAAC,OAAA;AAAkF,SAAAC,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAElF,MAAMG,iBAAiB,GAAGC,KAAK,IAAI,IAAAC,KAAA,CAAAH,OAAA,EAAI,cAAc,EAAEE,KAAK,CAAC,IAAI,CAAC,CAAC;AAEnE,MAAME,mBAAmB,GAAGA,CAACC,OAAO,EAAEC,KAAK,KAAK;EAC9C,IAAIC,gBAAgB,GAAG,IAAI;EAE3B,MAAMC,IAAI,GAAGA,CAAA,KAAM;IACjB,MAAMN,KAAK,GAAGI,KAAK,CAACG,QAAQ,CAAC,CAAC;IAC9B,MAAM;MAACC;IAAO,CAAC,GAAGT,iBAAiB,CAACC,KAAK,CAAC;IAC1C,MAAMS,cAAc,GAAG,IAAAC,oCAAuB,EAACV,KAAK,EAAEG,OAAO,EAAEJ,iBAAiB,CAACC,KAAK,CAAC,CAAC;IAExF,IAAIS,cAAc,KAAKJ,gBAAgB,EAAE;MACvC;IACF;IAEAA,gBAAgB,GAAGI,cAAc;IAEjC,IAAIA,cAAc,IAAI,CAACD,OAAO,EAAE;MAC9BJ,KAAK,CAACO,QAAQ,CAAC,IAAAC,0BAAa,EAAC,CAAC,CAAC;IACjC;EACF,CAAC;EAEDN,IAAI,CAAC,CAAC;EACN,OAAOF,KAAK,CAACS,SAAS,CAACP,IAAI,CAAC;AAC9B,CAAC;AAAC,IAAAQ,QAAA,GAAAC,OAAA,CAAAjB,OAAA,GAEaI,mBAAmB","ignoreList":[]}