@memizy/oqse 0.1.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.
@@ -0,0 +1,172 @@
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "type": "object",
4
+ "properties": {
5
+ "$schema": {
6
+ "type": "string",
7
+ "format": "uri"
8
+ },
9
+ "version": {
10
+ "type": "string",
11
+ "pattern": "^\\d+\\.\\d+$"
12
+ },
13
+ "meta": {
14
+ "type": "object",
15
+ "properties": {
16
+ "setId": {
17
+ "type": "string",
18
+ "format": "uuid",
19
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
20
+ },
21
+ "exportedAt": {
22
+ "type": "string",
23
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}:\\d{2}(\\.\\d{3})?(Z|[+-]\\d{2}:\\d{2})?)?$"
24
+ },
25
+ "algorithm": {
26
+ "type": "string",
27
+ "pattern": "^[a-z0-9-]+$"
28
+ }
29
+ },
30
+ "required": [
31
+ "setId",
32
+ "exportedAt"
33
+ ],
34
+ "additionalProperties": false
35
+ },
36
+ "records": {
37
+ "type": "object",
38
+ "propertyNames": {
39
+ "type": "string",
40
+ "format": "uuid",
41
+ "pattern": "^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$"
42
+ },
43
+ "additionalProperties": {
44
+ "type": "object",
45
+ "properties": {
46
+ "bucket": {
47
+ "anyOf": [
48
+ {
49
+ "type": "number",
50
+ "const": 0
51
+ },
52
+ {
53
+ "type": "number",
54
+ "const": 1
55
+ },
56
+ {
57
+ "type": "number",
58
+ "const": 2
59
+ },
60
+ {
61
+ "type": "number",
62
+ "const": 3
63
+ },
64
+ {
65
+ "type": "number",
66
+ "const": 4
67
+ }
68
+ ]
69
+ },
70
+ "nextReviewAt": {
71
+ "type": "string",
72
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}:\\d{2}(\\.\\d{3})?(Z|[+-]\\d{2}:\\d{2})?)?$"
73
+ },
74
+ "stats": {
75
+ "type": "object",
76
+ "properties": {
77
+ "attempts": {
78
+ "type": "integer",
79
+ "minimum": 0,
80
+ "maximum": 9007199254740991
81
+ },
82
+ "incorrect": {
83
+ "type": "integer",
84
+ "minimum": 0,
85
+ "maximum": 9007199254740991
86
+ },
87
+ "streak": {
88
+ "type": "integer",
89
+ "minimum": 0,
90
+ "maximum": 9007199254740991
91
+ }
92
+ },
93
+ "required": [
94
+ "attempts",
95
+ "incorrect",
96
+ "streak"
97
+ ],
98
+ "additionalProperties": false
99
+ },
100
+ "lastAnswer": {
101
+ "type": "object",
102
+ "properties": {
103
+ "isCorrect": {
104
+ "type": "boolean"
105
+ },
106
+ "confidence": {
107
+ "anyOf": [
108
+ {
109
+ "type": "number",
110
+ "const": 1
111
+ },
112
+ {
113
+ "type": "number",
114
+ "const": 2
115
+ },
116
+ {
117
+ "type": "number",
118
+ "const": 3
119
+ },
120
+ {
121
+ "type": "number",
122
+ "const": 4
123
+ }
124
+ ]
125
+ },
126
+ "answeredAt": {
127
+ "type": "string",
128
+ "pattern": "^\\d{4}-\\d{2}-\\d{2}(T\\d{2}:\\d{2}:\\d{2}(\\.\\d{3})?(Z|[+-]\\d{2}:\\d{2})?)?$"
129
+ },
130
+ "timeSpent": {
131
+ "type": "integer",
132
+ "minimum": 0,
133
+ "maximum": 9007199254740991
134
+ },
135
+ "hintsUsed": {
136
+ "type": "integer",
137
+ "minimum": 0,
138
+ "maximum": 9007199254740991
139
+ },
140
+ "isSkipped": {
141
+ "type": "boolean"
142
+ }
143
+ },
144
+ "required": [
145
+ "isCorrect",
146
+ "answeredAt"
147
+ ],
148
+ "additionalProperties": false
149
+ },
150
+ "appSpecific": {
151
+ "type": "object",
152
+ "propertyNames": {
153
+ "type": "string"
154
+ },
155
+ "additionalProperties": {}
156
+ }
157
+ },
158
+ "required": [
159
+ "bucket",
160
+ "stats"
161
+ ],
162
+ "additionalProperties": false
163
+ }
164
+ }
165
+ },
166
+ "required": [
167
+ "version",
168
+ "meta",
169
+ "records"
170
+ ],
171
+ "additionalProperties": false
172
+ }