@willwade/aac-processors 0.0.8 → 0.0.10
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.
- package/README.md +116 -11
- package/dist/cli/index.js +87 -0
- package/dist/core/analyze.js +1 -0
- package/dist/core/baseProcessor.d.ts +3 -0
- package/dist/core/fileProcessor.js +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +3 -0
- package/dist/optional/symbolTools.js +4 -2
- package/dist/processors/gridset/helpers.d.ts +3 -1
- package/dist/processors/gridset/helpers.js +24 -5
- package/dist/processors/gridset/password.d.ts +11 -0
- package/dist/processors/gridset/password.js +37 -0
- package/dist/processors/gridset/resolver.d.ts +1 -1
- package/dist/processors/gridset/resolver.js +8 -4
- package/dist/processors/gridset/wordlistHelpers.d.ts +2 -2
- package/dist/processors/gridset/wordlistHelpers.js +7 -4
- package/dist/processors/gridsetProcessor.d.ts +15 -1
- package/dist/processors/gridsetProcessor.js +64 -22
- package/dist/processors/index.d.ts +1 -0
- package/dist/processors/index.js +5 -2
- package/dist/processors/obfProcessor.d.ts +7 -0
- package/dist/processors/obfProcessor.js +9 -0
- package/dist/processors/snap/helpers.d.ts +2 -0
- package/dist/processors/snap/helpers.js +2 -0
- package/dist/processors/snapProcessor.d.ts +7 -0
- package/dist/processors/snapProcessor.js +9 -0
- package/dist/processors/touchchatProcessor.d.ts +7 -0
- package/dist/processors/touchchatProcessor.js +9 -0
- package/dist/utilities/screenshotConverter.d.ts +69 -0
- package/dist/utilities/screenshotConverter.js +453 -0
- package/dist/validation/baseValidator.d.ts +80 -0
- package/dist/validation/baseValidator.js +160 -0
- package/dist/validation/gridsetValidator.d.ts +36 -0
- package/dist/validation/gridsetValidator.js +288 -0
- package/dist/validation/index.d.ts +13 -0
- package/dist/validation/index.js +69 -0
- package/dist/validation/obfValidator.d.ts +44 -0
- package/dist/validation/obfValidator.js +530 -0
- package/dist/validation/snapValidator.d.ts +33 -0
- package/dist/validation/snapValidator.js +237 -0
- package/dist/validation/touchChatValidator.d.ts +33 -0
- package/dist/validation/touchChatValidator.js +229 -0
- package/dist/validation/validationTypes.d.ts +64 -0
- package/dist/validation/validationTypes.js +15 -0
- package/examples/README.md +7 -0
- package/examples/demo.js +143 -0
- package/examples/obf/aboutme.json +376 -0
- package/examples/obf/array.json +6 -0
- package/examples/obf/hash.json +4 -0
- package/examples/obf/links.obz +0 -0
- package/examples/obf/simple.obf +53 -0
- package/examples/package-lock.json +1326 -0
- package/examples/package.json +10 -0
- package/examples/styling-example.ts +316 -0
- package/examples/translate.js +39 -0
- package/examples/translate_demo.js +254 -0
- package/examples/typescript-demo.ts +251 -0
- package/package.json +3 -1
package/examples/demo.js
ADDED
|
@@ -0,0 +1,143 @@
|
|
|
1
|
+
// AACProcessors Demo: Showcase all engines and features
|
|
2
|
+
const path = require('path');
|
|
3
|
+
|
|
4
|
+
// Import processors
|
|
5
|
+
const { DotProcessor, OpmlProcessor, SnapProcessor, GridsetProcessor, TouchChatProcessor, ApplePanelsProcessor, ObfProcessor } = require('../dist/processors');
|
|
6
|
+
|
|
7
|
+
// Optional: pretty printer
|
|
8
|
+
let prettyPrint;
|
|
9
|
+
try {
|
|
10
|
+
prettyPrint = require('../dist/viewer/prettyPrint');
|
|
11
|
+
} catch {}
|
|
12
|
+
|
|
13
|
+
// Optional: symbol tools
|
|
14
|
+
let symbolTools;
|
|
15
|
+
try {
|
|
16
|
+
symbolTools = require('../dist/optional/symbolTools');
|
|
17
|
+
} catch {}
|
|
18
|
+
|
|
19
|
+
// --- DotProcessor ---
|
|
20
|
+
console.log('\n=== DOT Example ===');
|
|
21
|
+
try {
|
|
22
|
+
const dotFile = path.join(__dirname, 'example.dot');
|
|
23
|
+
const dotProcessor = new DotProcessor();
|
|
24
|
+
const dotTree = dotProcessor.loadIntoTree(dotFile);
|
|
25
|
+
console.log('DOT tree:', dotTree);
|
|
26
|
+
console.log('DOT texts:', dotProcessor.extractTexts ? dotProcessor.extractTexts(dotFile) : '(no extractTexts)');
|
|
27
|
+
if (prettyPrint) prettyPrint.printTree(dotTree, { showNavigation: true });
|
|
28
|
+
} catch (e) {
|
|
29
|
+
console.warn('DOT demo error:', e.message);
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
// --- OPMLProcessor ---
|
|
33
|
+
console.log('\n=== OPML Example ===');
|
|
34
|
+
try {
|
|
35
|
+
const opmlFile = path.join(__dirname, 'example.opml');
|
|
36
|
+
const opmlProcessor = new OpmlProcessor();
|
|
37
|
+
const opmlTree = opmlProcessor.loadIntoTree(opmlFile);
|
|
38
|
+
console.log('OPML tree:', opmlTree);
|
|
39
|
+
console.log('OPML texts:', opmlProcessor.extractTexts ? opmlProcessor.extractTexts(opmlFile) : '(no extractTexts)');
|
|
40
|
+
if (prettyPrint) prettyPrint.printTree(opmlTree, { showNavigation: true });
|
|
41
|
+
} catch (e) {
|
|
42
|
+
console.warn('OPML demo error:', e.message);
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
// --- SnapProcessor (SPB) ---
|
|
48
|
+
console.log('\n=== Snap Example (.spb) ===');
|
|
49
|
+
try {
|
|
50
|
+
const spbFile = path.join(__dirname, 'example.spb');
|
|
51
|
+
const snapProcessor = new SnapProcessor();
|
|
52
|
+
const snapTree = snapProcessor.loadIntoTree(spbFile);
|
|
53
|
+
console.log('Snap tree (.spb):', snapTree);
|
|
54
|
+
console.log('Snap texts (.spb):', snapProcessor.extractTexts(spbFile));
|
|
55
|
+
if (prettyPrint) prettyPrint.printTree(snapTree, { showNavigation: true });
|
|
56
|
+
} catch (e) {
|
|
57
|
+
console.warn('Snap demo error (.spb):', e.message);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
// // --- SnapProcessor (SPS) ---
|
|
61
|
+
// console.log('\n=== Snap Example (.sps) ===');
|
|
62
|
+
// try {
|
|
63
|
+
// const spsFile = path.join(__dirname, 'example.sps');
|
|
64
|
+
// const snapProcessor = new SnapProcessor();
|
|
65
|
+
// const snapTree = snapProcessor.loadIntoTree(spsFile);
|
|
66
|
+
// console.log('Snap tree (.sps):', snapTree);
|
|
67
|
+
// console.log('Snap texts (.sps):', snapProcessor.extractTexts(spsFile));
|
|
68
|
+
// if (prettyPrint) prettyPrint.printTree(snapTree, { showNavigation: true });
|
|
69
|
+
// } catch (e) {
|
|
70
|
+
// console.warn('Snap demo error (.sps):', e.message);
|
|
71
|
+
// }
|
|
72
|
+
|
|
73
|
+
// --- GridsetProcessor ---
|
|
74
|
+
console.log('\n=== Gridset Example ===');
|
|
75
|
+
try {
|
|
76
|
+
const gridsetFile = path.join(__dirname, 'example.gridset');
|
|
77
|
+
const gridsetProcessor = new GridsetProcessor();
|
|
78
|
+
const gridTree = gridsetProcessor.loadIntoTree(gridsetFile);
|
|
79
|
+
console.log('Gridset tree:', gridTree);
|
|
80
|
+
console.log('Gridset texts:', gridsetProcessor.extractTexts(gridsetFile));
|
|
81
|
+
if (prettyPrint) prettyPrint.printTree(gridTree, { showNavigation: true });
|
|
82
|
+
} catch (e) {
|
|
83
|
+
console.warn('Gridset demo error:', e.message);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// --- TouchChatProcessor ---
|
|
87
|
+
console.log('\n=== TouchChat Example ===');
|
|
88
|
+
try {
|
|
89
|
+
const touchchatFile = path.join(__dirname, 'example.ce');
|
|
90
|
+
const touchchatProcessor = new TouchChatProcessor();
|
|
91
|
+
const tcTree = touchchatProcessor.loadIntoTree(touchchatFile);
|
|
92
|
+
console.log('TouchChat tree:', tcTree);
|
|
93
|
+
console.log('TouchChat texts:', touchchatProcessor.extractTexts(touchchatFile));
|
|
94
|
+
if (prettyPrint) prettyPrint.printTree(tcTree, { showNavigation: true });
|
|
95
|
+
} catch (e) {
|
|
96
|
+
console.warn('TouchChat demo error:', e.message);
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// --- OBF/OBZ Processor ---
|
|
100
|
+
console.log('\n=== OBF/OBZ Example ===');
|
|
101
|
+
try {
|
|
102
|
+
// Use ObfProcessor from dist, matching others
|
|
103
|
+
const obfProcessor = new ObfProcessor();
|
|
104
|
+
const obzFile = path.join(__dirname, 'example.obz');
|
|
105
|
+
// If loadIntoTree is async, use then/catch. If not, call directly.
|
|
106
|
+
let obTree;
|
|
107
|
+
try {
|
|
108
|
+
obTree = obfProcessor.loadIntoTree(obzFile);
|
|
109
|
+
console.log('OBZ tree:', obTree);
|
|
110
|
+
// Try extractTexts if available
|
|
111
|
+
if (obfProcessor.extractTexts) {
|
|
112
|
+
try {
|
|
113
|
+
const texts = obfProcessor.extractTexts(obzFile);
|
|
114
|
+
console.log('OBZ texts:', texts);
|
|
115
|
+
} catch (e) {
|
|
116
|
+
console.warn('OBZ extractTexts error:', e.message);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
if (prettyPrint) prettyPrint.printTree(obTree, { showNavigation: true });
|
|
120
|
+
console.log('\nDemo complete.');
|
|
121
|
+
} catch (e) {
|
|
122
|
+
console.warn('OBZ demo error:', e.message);
|
|
123
|
+
console.log('\nDemo complete.');
|
|
124
|
+
}
|
|
125
|
+
// Return here so the rest of the demo waits for async
|
|
126
|
+
return;
|
|
127
|
+
} catch (e) {
|
|
128
|
+
console.warn('OBZ demo error:', e.message);
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
// --- ApplePanelsProcessor (if implemented) ---
|
|
132
|
+
// console.log('\n=== Apple Panels Example ===');
|
|
133
|
+
// try {
|
|
134
|
+
// const applePanelsFile = path.join(__dirname, 'example.ascconfig');
|
|
135
|
+
// const applePanelsProcessor = new ApplePanelsProcessor();
|
|
136
|
+
// const apTree = applePanelsProcessor.loadIntoTree(applePanelsFile);
|
|
137
|
+
// console.log('Apple Panels tree:', apTree);
|
|
138
|
+
// if (prettyPrint) prettyPrint.printTree(apTree, { showNavigation: true });
|
|
139
|
+
// } catch (e) {
|
|
140
|
+
// console.warn('Apple Panels demo error:', e.message);
|
|
141
|
+
// }
|
|
142
|
+
|
|
143
|
+
console.log('\nDemo complete.');
|
|
@@ -0,0 +1,376 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "aboutme",
|
|
3
|
+
"format": "open-board-0.1",
|
|
4
|
+
"name": "CommuniKate About Me",
|
|
5
|
+
"license": {
|
|
6
|
+
"type": "CC-By",
|
|
7
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by/3.0/",
|
|
8
|
+
"author_name": "Kate McCallum",
|
|
9
|
+
"author_url": "https://twitter.com/KateMcCallumuk"
|
|
10
|
+
},
|
|
11
|
+
"buttons": [
|
|
12
|
+
{
|
|
13
|
+
"label": "Top Page",
|
|
14
|
+
"load_board": {
|
|
15
|
+
"id": "page1",
|
|
16
|
+
"path": "boards/page1.obf"
|
|
17
|
+
},
|
|
18
|
+
"id": 0,
|
|
19
|
+
"border_color": "#444",
|
|
20
|
+
"background_color": "#ffff32",
|
|
21
|
+
"image_id": 0
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
"label": "Name",
|
|
25
|
+
"id": 1,
|
|
26
|
+
"border_color": "#444",
|
|
27
|
+
"background_color": "#c0c0c0",
|
|
28
|
+
"image_id": 1
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"label": "I live in...",
|
|
32
|
+
"id": 2,
|
|
33
|
+
"border_color": "#444",
|
|
34
|
+
"background_color": "#c0c0c0",
|
|
35
|
+
"image_id": 2
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"label": "Birthday...",
|
|
39
|
+
"id": 3,
|
|
40
|
+
"border_color": "#444",
|
|
41
|
+
"background_color": "#c0c0c0",
|
|
42
|
+
"image_id": 3
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"label": "age...",
|
|
46
|
+
"id": 4,
|
|
47
|
+
"border_color": "#444",
|
|
48
|
+
"background_color": "#c0c0c0",
|
|
49
|
+
"image_id": 4
|
|
50
|
+
},
|
|
51
|
+
{
|
|
52
|
+
"label": "I live with...",
|
|
53
|
+
"id": 5,
|
|
54
|
+
"border_color": "#444",
|
|
55
|
+
"background_color": "#c0c0c0",
|
|
56
|
+
"image_id": 5
|
|
57
|
+
},
|
|
58
|
+
{
|
|
59
|
+
"label": "pet.. ",
|
|
60
|
+
"id": 6,
|
|
61
|
+
"border_color": "#444",
|
|
62
|
+
"background_color": "#c0c0c0",
|
|
63
|
+
"image_id": 6
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"label": "School college...",
|
|
67
|
+
"id": 7,
|
|
68
|
+
"border_color": "#444",
|
|
69
|
+
"background_color": "#c0c0c0",
|
|
70
|
+
"image_id": 7
|
|
71
|
+
},
|
|
72
|
+
{
|
|
73
|
+
"label": "email..",
|
|
74
|
+
"id": 8,
|
|
75
|
+
"border_color": "#444",
|
|
76
|
+
"background_color": "#c0c0c0",
|
|
77
|
+
"image_id": 8
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"label": "work...",
|
|
81
|
+
"id": 9,
|
|
82
|
+
"border_color": "#444",
|
|
83
|
+
"background_color": "#c0c0c0",
|
|
84
|
+
"image_id": 9
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"label": "communication aid..",
|
|
88
|
+
"id": 10,
|
|
89
|
+
"border_color": "#444",
|
|
90
|
+
"background_color": "#c0c0c0",
|
|
91
|
+
"image_id": 10
|
|
92
|
+
},
|
|
93
|
+
{
|
|
94
|
+
"label": "music..",
|
|
95
|
+
"id": 11,
|
|
96
|
+
"border_color": "#444",
|
|
97
|
+
"background_color": "#c0c0c0",
|
|
98
|
+
"image_id": 11
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"label": "film..",
|
|
102
|
+
"id": 12,
|
|
103
|
+
"border_color": "#444",
|
|
104
|
+
"background_color": "#c0c0c0",
|
|
105
|
+
"image_id": 12
|
|
106
|
+
},
|
|
107
|
+
{
|
|
108
|
+
"label": "hobby..",
|
|
109
|
+
"id": 13,
|
|
110
|
+
"border_color": "#444",
|
|
111
|
+
"background_color": "#c0c0c0",
|
|
112
|
+
"image_id": 13
|
|
113
|
+
},
|
|
114
|
+
{
|
|
115
|
+
"label": "tv...",
|
|
116
|
+
"id": 14,
|
|
117
|
+
"border_color": "#444",
|
|
118
|
+
"background_color": "#c0c0c0",
|
|
119
|
+
"image_id": 14
|
|
120
|
+
},
|
|
121
|
+
{
|
|
122
|
+
"label": "disability...",
|
|
123
|
+
"id": 15,
|
|
124
|
+
"border_color": "#444",
|
|
125
|
+
"background_color": "#c0c0c0",
|
|
126
|
+
"image_id": 15
|
|
127
|
+
},
|
|
128
|
+
{
|
|
129
|
+
"label": "mobile...",
|
|
130
|
+
"id": 16,
|
|
131
|
+
"border_color": "#444",
|
|
132
|
+
"background_color": "#c0c0c0",
|
|
133
|
+
"image_id": 16
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
"label": "About You",
|
|
137
|
+
"load_board": {
|
|
138
|
+
"id": "aboutyou",
|
|
139
|
+
"path": "boards/aboutyou.obf"
|
|
140
|
+
},
|
|
141
|
+
"id": 17,
|
|
142
|
+
"border_color": "rgb(255, 255, 0)",
|
|
143
|
+
"background_color": "rgba(120, 113, 255, 0.5)",
|
|
144
|
+
"image_id": 17
|
|
145
|
+
}
|
|
146
|
+
],
|
|
147
|
+
"images": [
|
|
148
|
+
{
|
|
149
|
+
"id": 0,
|
|
150
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/communication aid 2.svg",
|
|
151
|
+
"content_type": "image/svg",
|
|
152
|
+
"license": {
|
|
153
|
+
"type": "CC BY-SA",
|
|
154
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
155
|
+
"source_url": null,
|
|
156
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
157
|
+
"author_url": null
|
|
158
|
+
}
|
|
159
|
+
},
|
|
160
|
+
{
|
|
161
|
+
"id": 1,
|
|
162
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/sclera/name.png",
|
|
163
|
+
"content_type": "image/png",
|
|
164
|
+
"license": {
|
|
165
|
+
"type": "CC BY-NC",
|
|
166
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-nc/2.0/",
|
|
167
|
+
"source_url": null,
|
|
168
|
+
"author_name": "Sclera",
|
|
169
|
+
"author_url": null
|
|
170
|
+
}
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"id": 2,
|
|
174
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/chicken live.svg",
|
|
175
|
+
"content_type": "image/svg",
|
|
176
|
+
"license": {
|
|
177
|
+
"type": "CC BY-SA",
|
|
178
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
179
|
+
"source_url": null,
|
|
180
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
181
|
+
"author_url": null
|
|
182
|
+
}
|
|
183
|
+
},
|
|
184
|
+
{
|
|
185
|
+
"id": 3,
|
|
186
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/birthday cake.svg",
|
|
187
|
+
"content_type": "image/svg",
|
|
188
|
+
"license": {
|
|
189
|
+
"type": "CC BY-SA",
|
|
190
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
191
|
+
"source_url": null,
|
|
192
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
193
|
+
"author_url": null
|
|
194
|
+
}
|
|
195
|
+
},
|
|
196
|
+
{
|
|
197
|
+
"id": 4,
|
|
198
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/sclera/Age 16+.png",
|
|
199
|
+
"content_type": "image/png",
|
|
200
|
+
"license": {
|
|
201
|
+
"type": "CC BY-NC",
|
|
202
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-nc/2.0/",
|
|
203
|
+
"source_url": null,
|
|
204
|
+
"author_name": "Sclera",
|
|
205
|
+
"author_url": null
|
|
206
|
+
}
|
|
207
|
+
},
|
|
208
|
+
{
|
|
209
|
+
"id": 5,
|
|
210
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/chicken live.svg",
|
|
211
|
+
"content_type": "image/svg",
|
|
212
|
+
"license": {
|
|
213
|
+
"type": "CC BY-SA",
|
|
214
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
215
|
+
"source_url": null,
|
|
216
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
217
|
+
"author_url": null
|
|
218
|
+
}
|
|
219
|
+
},
|
|
220
|
+
{
|
|
221
|
+
"id": 6,
|
|
222
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/pet brush.svg",
|
|
223
|
+
"content_type": "image/svg",
|
|
224
|
+
"license": {
|
|
225
|
+
"type": "CC BY-SA",
|
|
226
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
227
|
+
"source_url": null,
|
|
228
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
229
|
+
"author_url": null
|
|
230
|
+
}
|
|
231
|
+
},
|
|
232
|
+
{
|
|
233
|
+
"id": 7,
|
|
234
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/school.svg",
|
|
235
|
+
"content_type": "image/svg",
|
|
236
|
+
"license": {
|
|
237
|
+
"type": "CC BY-SA",
|
|
238
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
239
|
+
"source_url": null,
|
|
240
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
241
|
+
"author_url": null
|
|
242
|
+
}
|
|
243
|
+
},
|
|
244
|
+
{
|
|
245
|
+
"id": 8,
|
|
246
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/email attachment.svg",
|
|
247
|
+
"content_type": "image/svg",
|
|
248
|
+
"license": {
|
|
249
|
+
"type": "CC BY-SA",
|
|
250
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
251
|
+
"source_url": null,
|
|
252
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
253
|
+
"author_url": null
|
|
254
|
+
}
|
|
255
|
+
},
|
|
256
|
+
{
|
|
257
|
+
"id": 9,
|
|
258
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/work , to.svg",
|
|
259
|
+
"content_type": "image/svg",
|
|
260
|
+
"license": {
|
|
261
|
+
"type": "CC BY-SA",
|
|
262
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
263
|
+
"source_url": null,
|
|
264
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
265
|
+
"author_url": null
|
|
266
|
+
}
|
|
267
|
+
},
|
|
268
|
+
{
|
|
269
|
+
"id": 10,
|
|
270
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/communication aid 2.svg",
|
|
271
|
+
"content_type": "image/svg",
|
|
272
|
+
"license": {
|
|
273
|
+
"type": "CC BY-SA",
|
|
274
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
275
|
+
"source_url": null,
|
|
276
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
277
|
+
"author_url": null
|
|
278
|
+
}
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"id": 11,
|
|
282
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/music class.svg",
|
|
283
|
+
"content_type": "image/svg",
|
|
284
|
+
"license": {
|
|
285
|
+
"type": "CC BY-SA",
|
|
286
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
287
|
+
"source_url": null,
|
|
288
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
289
|
+
"author_url": null
|
|
290
|
+
}
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"id": 12,
|
|
294
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/sclera/film roll film.png",
|
|
295
|
+
"content_type": "image/png",
|
|
296
|
+
"license": {
|
|
297
|
+
"type": "CC BY-NC",
|
|
298
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-nc/2.0/",
|
|
299
|
+
"source_url": null,
|
|
300
|
+
"author_name": "Sclera",
|
|
301
|
+
"author_url": null
|
|
302
|
+
}
|
|
303
|
+
},
|
|
304
|
+
{
|
|
305
|
+
"id": 13,
|
|
306
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/arasaac/hobby-horses.png",
|
|
307
|
+
"content_type": "image/png",
|
|
308
|
+
"license": {
|
|
309
|
+
"type": "CC BY-NC-SA",
|
|
310
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-nc-sa/3.0/",
|
|
311
|
+
"source_url": null,
|
|
312
|
+
"author_name": "Sergio Palao",
|
|
313
|
+
"author_url": null
|
|
314
|
+
}
|
|
315
|
+
},
|
|
316
|
+
{
|
|
317
|
+
"id": 14,
|
|
318
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/change tv channel , to.svg",
|
|
319
|
+
"content_type": "image/svg",
|
|
320
|
+
"license": {
|
|
321
|
+
"type": "CC BY-SA",
|
|
322
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
323
|
+
"source_url": null,
|
|
324
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
325
|
+
"author_url": null
|
|
326
|
+
}
|
|
327
|
+
},
|
|
328
|
+
{
|
|
329
|
+
"id": 15,
|
|
330
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/arasaac/movement disability.png",
|
|
331
|
+
"content_type": "image/png",
|
|
332
|
+
"license": {
|
|
333
|
+
"type": "CC BY-NC-SA",
|
|
334
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-nc-sa/3.0/",
|
|
335
|
+
"source_url": null,
|
|
336
|
+
"author_name": "Sergio Palao",
|
|
337
|
+
"author_url": null
|
|
338
|
+
}
|
|
339
|
+
},
|
|
340
|
+
{
|
|
341
|
+
"id": 16,
|
|
342
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/mulberry/mobile phone silent.svg",
|
|
343
|
+
"content_type": "image/svg",
|
|
344
|
+
"license": {
|
|
345
|
+
"type": "CC BY-SA",
|
|
346
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-sa/2.0/uk",
|
|
347
|
+
"source_url": null,
|
|
348
|
+
"author_name": "Paxtoncrafts Charitable Trust ",
|
|
349
|
+
"author_url": null
|
|
350
|
+
}
|
|
351
|
+
},
|
|
352
|
+
{
|
|
353
|
+
"id": 17,
|
|
354
|
+
"url": "https://s3.amazonaws.com/opensymbols/libraries/arasaac/to forget about something.png",
|
|
355
|
+
"content_type": "image/png",
|
|
356
|
+
"license": {
|
|
357
|
+
"type": "CC BY-NC-SA",
|
|
358
|
+
"copyright_notice_url": "http://creativecommons.org/licenses/by-nc-sa/3.0/",
|
|
359
|
+
"source_url": null,
|
|
360
|
+
"author_name": "Sergio Palao",
|
|
361
|
+
"author_url": null
|
|
362
|
+
}
|
|
363
|
+
}
|
|
364
|
+
],
|
|
365
|
+
"sounds": [],
|
|
366
|
+
"grid": {
|
|
367
|
+
"rows": 4,
|
|
368
|
+
"columns": 5,
|
|
369
|
+
"order": [
|
|
370
|
+
[0, 1, 2, 3, 4],
|
|
371
|
+
[5, 6, 7, 8, 9],
|
|
372
|
+
[10, 11, 12, 13, 14],
|
|
373
|
+
[15, 16, 17, null, null]
|
|
374
|
+
]
|
|
375
|
+
}
|
|
376
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
{
|
|
2
|
+
"format": "open-board-0.1",
|
|
3
|
+
"id": "inline_images",
|
|
4
|
+
"locale": "en",
|
|
5
|
+
"name": "Simple Images Board",
|
|
6
|
+
"description_html": "This is an .obf file with images included as data attributes within the file. It also includes some simple styling.",
|
|
7
|
+
"grid": {
|
|
8
|
+
"rows": 2,
|
|
9
|
+
"columns": 2,
|
|
10
|
+
"order": [
|
|
11
|
+
[1, null],
|
|
12
|
+
[null, 2]
|
|
13
|
+
]
|
|
14
|
+
},
|
|
15
|
+
"buttons": [
|
|
16
|
+
{
|
|
17
|
+
"id": 1,
|
|
18
|
+
"label": "kids",
|
|
19
|
+
"vocalization": "children",
|
|
20
|
+
"ext_speaker_best": true,
|
|
21
|
+
"image_id": "12345",
|
|
22
|
+
"background_color": "rgb(255, 255, 255)",
|
|
23
|
+
"border_color": "rgba(150, 150, 150, 0.5)"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"id": 2,
|
|
27
|
+
"label": "cat",
|
|
28
|
+
"vocalization": "feline",
|
|
29
|
+
"image_id": 119,
|
|
30
|
+
"background_color": "rgba(0, 255, 0, 0.5)",
|
|
31
|
+
"border_color": "rgb(150, 150, 150)"
|
|
32
|
+
}
|
|
33
|
+
],
|
|
34
|
+
"images": [
|
|
35
|
+
|
|
36
|
+
{
|
|
37
|
+
"id":"12345",
|
|
38
|
+
"width":100,
|
|
39
|
+
"height":100,
|
|
40
|
+
"url":"https://d18vdu4p71yql0.cloudfront.net/libraries/noun-project/No-09d75d7313.svg",
|
|
41
|
+
"data":"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiIGlkPSJMYXllcl8xIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjEwMHB4IiBoZWlnaHQ9IjEwMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTAwIDEwMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8cGF0aCBzdHlsZT0iZmlsbDojMDEwMTAxOyIgZD0iTTUwLDBDMjIuMzg4LDAsMCwyMi4zODgsMCw1MHMyMi4zODgsNTAsNTAsNTBzNTAtMjIuMzg4LDUwLTUwUzc3LjYxMiwwLDUwLDB6IE01MCwxMi41ICBjOC4wOTQsMCwxNS41MzksMi42MzcsMjEuNjY4LDcuMDA3TDE5LjQ5NCw3MS42NTVDMTUuMTI1LDY1LjUyNywxMi41LDU4LjA4MSwxMi41LDUwQzEyLjUsMjkuMzIxLDI5LjMyMSwxMi41LDUwLDEyLjV6IE01MCw4Ny41ICBjLTguMDk0LDAtMTUuNTM5LTIuNjM3LTIxLjY2OC03LjAwN2w1Mi4xNzQtNTIuMTQ4Qzg0Ljg3NSwzNC40NzMsODcuNSw0MS45MTksODcuNSw1MEM4Ny41LDcwLjY3OSw3MC42NzksODcuNSw1MCw4Ny41eiIvPgo8L3N2Zz4K",
|
|
42
|
+
"content_type":"image/svg+xml"
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"id":119,
|
|
46
|
+
"width":100,
|
|
47
|
+
"height":100,
|
|
48
|
+
"url":"https://d18vdu4p71yql0.cloudfront.net/libraries/noun-project/No-09d75d7313.svg",
|
|
49
|
+
"content_type":"image/svg+xml"
|
|
50
|
+
}
|
|
51
|
+
],
|
|
52
|
+
"sounds": []
|
|
53
|
+
}
|