Changeset 35276
- Timestamp:
- 2021-08-10T11:18:31+12:00 (3 years ago)
- Location:
- main/trunk/model-interfaces-dev/atea
- Files:
-
- 8 edited
Legend:
- Unmodified
- Added
- Removed
-
main/trunk/model-interfaces-dev/atea/asr-setup.md
r35274 r35276 5 5 To get started: 6 6 7 - Install any dependencies 7 - Install any dependencies. 8 8 ``` 9 9 npm install 10 10 ``` 11 11 12 - 12 - Run grunt tasks. 13 ``` 14 npx grunt 15 ``` 16 17 - For development purposes, use the grunt watcher to prevent the need to run grunt manually each time you change a file. 18 ``` 19 npx grunt watch 20 ``` -
main/trunk/model-interfaces-dev/atea/gruntfile.js
r35275 r35276 19 19 } 20 20 } 21 } 21 }, 22 watch: { 23 scripts: { 24 files: ['**/*.scss'], 25 tasks: ['default'], 26 options: { 27 spawn: false, 28 }, 29 }, 30 }, 22 31 }); 23 32 -
main/trunk/model-interfaces-dev/atea/js/asr/asr-controller.js
r35275 r35276 305 305 * Recurses through the entire tree of a parent and adds the given data attribute. 306 306 * 307 * @param { HTMLElement} parent The parent node.308 * @param {String} dataElement name The name of the data element. Must use hyphen notation, rather than camel case.307 * @param {Element} parent The parent node. 308 * @param {String} dataElementName The name of the data element. Must use hyphen notation, rather than camel case. 309 309 * @param {String} value The value of the data element. 310 310 */ … … 326 326 function insertError(fileName, statusMessage) 327 327 { 328 /** @type {HTMLLIElement} */ 329 // @ts-ignore 328 330 const clone = ERROR_TEMPLATE.content.firstElementChild.cloneNode(true); 329 331 330 /** @type { HTMLSpanElement[]} */332 /** @type {NodeListOf<HTMLSpanElement>} */ 331 333 const spans = clone.querySelectorAll("span"); 332 334 spans[0].textContent = statusMessage; -
main/trunk/model-interfaces-dev/atea/package-lock.json
r35275 r35276 116 116 "dev": true 117 117 }, 118 "body": { 119 "version": "5.1.0", 120 "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz", 121 "integrity": "sha1-5LoM5BCkaTYyM2dgnstOZVMSUGk=", 122 "dev": true, 123 "requires": { 124 "continuable-cache": "^0.3.1", 125 "error": "^7.0.0", 126 "raw-body": "~1.1.0", 127 "safe-json-parse": "~1.0.1" 128 } 129 }, 118 130 "brace-expansion": { 119 131 "version": "1.1.11", … … 133 145 "requires": { 134 146 "fill-range": "^7.0.1" 147 } 148 }, 149 "bytes": { 150 "version": "1.0.0", 151 "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz", 152 "integrity": "sha1-NWnt6Lo0MV+rmcPpLLBMciDeH6g=", 153 "dev": true 154 }, 155 "call-bind": { 156 "version": "1.0.2", 157 "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", 158 "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", 159 "dev": true, 160 "requires": { 161 "function-bind": "^1.1.1", 162 "get-intrinsic": "^1.0.2" 135 163 } 136 164 }, … … 188 216 "dev": true 189 217 }, 218 "continuable-cache": { 219 "version": "0.3.1", 220 "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz", 221 "integrity": "sha1-vXJ6f67XfnH/OYWskzUakSczrQ8=", 222 "dev": true 223 }, 190 224 "dateformat": { 191 225 "version": "3.0.3", … … 194 228 "dev": true 195 229 }, 230 "debug": { 231 "version": "3.2.7", 232 "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", 233 "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", 234 "dev": true, 235 "requires": { 236 "ms": "^2.1.1" 237 } 238 }, 196 239 "detect-file": { 197 240 "version": "1.0.0", … … 206 249 "dev": true 207 250 }, 251 "error": { 252 "version": "7.2.1", 253 "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz", 254 "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==", 255 "dev": true, 256 "requires": { 257 "string-template": "~0.2.1" 258 } 259 }, 208 260 "esprima": { 209 261 "version": "4.0.1", … … 238 290 "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", 239 291 "dev": true 292 }, 293 "faye-websocket": { 294 "version": "0.10.0", 295 "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz", 296 "integrity": "sha1-TkkvjQTftviQA1B/btvy1QHnxvQ=", 297 "dev": true, 298 "requires": { 299 "websocket-driver": ">=0.5.1" 300 } 240 301 }, 241 302 "fibers": { … … 343 404 "dev": true 344 405 }, 406 "gaze": { 407 "version": "1.1.3", 408 "resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz", 409 "integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==", 410 "dev": true, 411 "requires": { 412 "globule": "^1.0.0" 413 } 414 }, 415 "get-intrinsic": { 416 "version": "1.1.1", 417 "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", 418 "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", 419 "dev": true, 420 "requires": { 421 "function-bind": "^1.1.1", 422 "has": "^1.0.3", 423 "has-symbols": "^1.0.1" 424 } 425 }, 345 426 "getobject": { 346 427 "version": "1.0.1", … … 394 475 "is-windows": "^1.0.1", 395 476 "which": "^1.2.14" 477 } 478 }, 479 "globule": { 480 "version": "1.3.2", 481 "resolved": "https://registry.npmjs.org/globule/-/globule-1.3.2.tgz", 482 "integrity": "sha512-7IDTQTIu2xzXkT+6mlluidnWo+BypnbSoEVVQCGfzqnl5Ik8d3e1d4wycb8Rj9tWW+Z39uPWsdlquqiqPCd/pA==", 483 "dev": true, 484 "requires": { 485 "glob": "~7.1.1", 486 "lodash": "~4.17.10", 487 "minimatch": "~3.0.2" 396 488 } 397 489 }, … … 446 538 } 447 539 }, 540 "grunt-contrib-watch": { 541 "version": "1.1.0", 542 "resolved": "https://registry.npmjs.org/grunt-contrib-watch/-/grunt-contrib-watch-1.1.0.tgz", 543 "integrity": "sha512-yGweN+0DW5yM+oo58fRu/XIRrPcn3r4tQx+nL7eMRwjpvk+rQY6R8o94BPK0i2UhTg9FN21hS+m8vR8v9vXfeg==", 544 "dev": true, 545 "requires": { 546 "async": "^2.6.0", 547 "gaze": "^1.1.0", 548 "lodash": "^4.17.10", 549 "tiny-lr": "^1.1.1" 550 }, 551 "dependencies": { 552 "async": { 553 "version": "2.6.3", 554 "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", 555 "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", 556 "dev": true, 557 "requires": { 558 "lodash": "^4.17.14" 559 } 560 } 561 } 562 }, 448 563 "grunt-known-options": { 449 564 "version": "2.0.0", … … 521 636 "dev": true 522 637 }, 638 "has-symbols": { 639 "version": "1.0.2", 640 "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz", 641 "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==", 642 "dev": true 643 }, 523 644 "homedir-polyfill": { 524 645 "version": "1.0.3", … … 534 655 "resolved": "https://registry.npmjs.org/hooker/-/hooker-0.2.3.tgz", 535 656 "integrity": "sha1-uDT3I8xKJCqmWWNFnfbZhMXT2Vk=", 657 "dev": true 658 }, 659 "http-parser-js": { 660 "version": "0.5.3", 661 "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", 662 "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", 536 663 "dev": true 537 664 }, … … 713 840 } 714 841 }, 842 "livereload-js": { 843 "version": "2.4.0", 844 "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz", 845 "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==", 846 "dev": true 847 }, 715 848 "load-grunt-tasks": { 716 849 "version": "5.1.0", … … 779 912 "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", 780 913 "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", 914 "dev": true 915 }, 916 "ms": { 917 "version": "2.1.3", 918 "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", 919 "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", 781 920 "dev": true 782 921 }, … … 809 948 "dev": true 810 949 }, 950 "object-assign": { 951 "version": "4.1.1", 952 "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", 953 "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", 954 "dev": true 955 }, 956 "object-inspect": { 957 "version": "1.11.0", 958 "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.11.0.tgz", 959 "integrity": "sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg==", 960 "dev": true 961 }, 811 962 "object.defaults": { 812 963 "version": "1.1.0", … … 960 1111 } 961 1112 }, 1113 "qs": { 1114 "version": "6.10.1", 1115 "resolved": "https://registry.npmjs.org/qs/-/qs-6.10.1.tgz", 1116 "integrity": "sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg==", 1117 "dev": true, 1118 "requires": { 1119 "side-channel": "^1.0.4" 1120 } 1121 }, 1122 "raw-body": { 1123 "version": "1.1.7", 1124 "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz", 1125 "integrity": "sha1-HQJ8K/oRasxmI7yo8AAWVyqH1CU=", 1126 "dev": true, 1127 "requires": { 1128 "bytes": "1", 1129 "string_decoder": "0.10" 1130 } 1131 }, 962 1132 "readdirp": { 963 1133 "version": "3.6.0", … … 1022 1192 } 1023 1193 }, 1194 "safe-buffer": { 1195 "version": "5.2.1", 1196 "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", 1197 "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", 1198 "dev": true 1199 }, 1200 "safe-json-parse": { 1201 "version": "1.0.1", 1202 "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz", 1203 "integrity": "sha1-PnZyPjjf3aE8mx0poeB//uSzC1c=", 1204 "dev": true 1205 }, 1024 1206 "safer-buffer": { 1025 1207 "version": "2.1.2", … … 1037 1219 } 1038 1220 }, 1221 "side-channel": { 1222 "version": "1.0.4", 1223 "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", 1224 "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", 1225 "dev": true, 1226 "requires": { 1227 "call-bind": "^1.0.0", 1228 "get-intrinsic": "^1.0.2", 1229 "object-inspect": "^1.9.0" 1230 } 1231 }, 1039 1232 "sprintf-js": { 1040 1233 "version": "1.1.2", … … 1043 1236 "dev": true 1044 1237 }, 1238 "string-template": { 1239 "version": "0.2.1", 1240 "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz", 1241 "integrity": "sha1-QpMuWYo1LQH8IuwzZ9nYTuxsmt0=", 1242 "dev": true 1243 }, 1244 "string_decoder": { 1245 "version": "0.10.31", 1246 "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", 1247 "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", 1248 "dev": true 1249 }, 1045 1250 "supports-color": { 1046 1251 "version": "7.2.0", … … 1052 1257 } 1053 1258 }, 1259 "tiny-lr": { 1260 "version": "1.1.1", 1261 "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz", 1262 "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==", 1263 "dev": true, 1264 "requires": { 1265 "body": "^5.1.0", 1266 "debug": "^3.1.0", 1267 "faye-websocket": "~0.10.0", 1268 "livereload-js": "^2.3.0", 1269 "object-assign": "^4.1.0", 1270 "qs": "^6.4.0" 1271 } 1272 }, 1054 1273 "to-regex-range": { 1055 1274 "version": "5.0.1", … … 1092 1311 } 1093 1312 }, 1313 "websocket-driver": { 1314 "version": "0.7.4", 1315 "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", 1316 "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", 1317 "dev": true, 1318 "requires": { 1319 "http-parser-js": ">=0.5.1", 1320 "safe-buffer": ">=5.1.0", 1321 "websocket-extensions": ">=0.1.1" 1322 } 1323 }, 1324 "websocket-extensions": { 1325 "version": "0.1.4", 1326 "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", 1327 "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", 1328 "dev": true 1329 }, 1094 1330 "which": { 1095 1331 "version": "1.3.1", -
main/trunk/model-interfaces-dev/atea/package.json
r35275 r35276 12 12 "fibers": "^5.0.0", 13 13 "grunt": "^1.4.1", 14 "grunt-contrib-watch": "^1.1.0", 14 15 "grunt-sass": "^3.1.0", 15 16 "load-grunt-tasks": "^5.1.0", -
main/trunk/model-interfaces-dev/atea/style
-
Property svn:ignore
set to
*.css.map
asr.css
-
Property svn:ignore
set to
-
main/trunk/model-interfaces-dev/atea/style/asr.scss
r35275 r35276 18 18 --monospace-font: 16px 'Roboto Mono', sans-serif; 19 19 } 20 21 .theme-error { 22 --primary-bg-color: #ff4242; 23 --primary-fg-color: black; 24 } 25 26 .theme-flat { 27 --primary-bg-color: transparent; 28 --primary-fg-color: #222; 29 --primary-box-shadow: none; 30 31 &:hover { 32 --primary-bg-color: #EEE; 33 } 34 } 35 36 /* === End theme definitions */ 37 38 /* === Start component definitions === */ 20 39 21 40 .paper { … … 90 109 } 91 110 92 .color-primary { 93 background-color: var(--primary-bg-color); 94 color: var(--primary-fg-color); 95 } 96 97 .color-error { 98 background-color: var(--error-bg-color); 99 color: var(--error-fg-color); 100 } 101 102 .color-flat { 103 background-color: transparent; 104 color: #222; 105 box-shadow: none; 106 } 107 108 .color-flat:hover { 109 background-color: #EEE; 110 } 111 /* === End component definitions === */ 111 112 112 113 /* Material Design Icon sizes */ … … 188 189 .transcription__container { 189 190 margin-bottom: 1em; 190 } 191 192 .transcription__container:last-child { 193 margin-bottom: 0;191 192 &:last-child { 193 margin-bottom: 0; 194 } 194 195 } 195 196 … … 225 226 .error-list-item .spaced-block { 226 227 margin-bottom: 8px; 227 } 228 229 .error-list-item .spaced-block:last-child { 230 margin-bottom: 0;228 229 &:last-child { 230 margin-bottom: 0; 231 } 231 232 } 232 233 … … 249 250 text-align: center; 250 251 vertical-align: middle; 252 253 p { 254 margin: 0; 255 } 256 257 button { 258 padding: 0; 259 margin: 0; 260 } 251 261 } 252 262 … … 254 264 width: 100%; 255 265 border-right: 1px solid black; 256 } 257 258 .metadata-list-item .spaced-block:last-child { 259 margin-top: -10%; 260 margin-bottom: 20%; 261 border-right: none; 262 } 263 264 .metadata-list-item p { 265 margin: 0; 266 } 267 268 .metadata-list-item button { 269 padding: 0; 270 margin: 0; 266 267 &:last-child { 268 margin-top: -10%; 269 margin-bottom: 20%; 270 border-right: none; 271 } 271 272 } 272 273 … … 320 321 -webkit-transition-duration: 0.2s; 321 322 transition-duration: 0.2s; 322 } 323 324 .audio-slider__range:hover { 325 opacity: 1;323 324 &:hover { 325 opacity: 1; 326 } 326 327 } 327 328 … … 336 337 margin-left: 8px; 337 338 width: 300; 338 } 339 340 .audio-slider__value::after { 341 position: absolute;342 top: 8px;343 left: -7px;344 width: 0;345 height: 0;346 border-top: 7px solid transparent;347 border-right: 7px solid rgb(85, 95, 100);348 border-bottom: 7px solid transparent;349 content: '';339 340 &::after { 341 position: absolute; 342 top: 8px; 343 left: -7px; 344 width: 0; 345 height: 0; 346 border-top: 7px solid transparent; 347 border-right: 7px solid rgb(85, 95, 100); 348 border-bottom: 7px solid transparent; 349 content: ''; 350 } 350 351 } 351 352 -
main/trunk/model-interfaces-dev/atea/transform/pages/asr.xsl
r35270 r35276 90 90 91 91 <div class="transcription__header"> 92 <button class=" color-flat btn-fab transcription__play-button" type="button">92 <button class="btn-fab transcription__play-button theme-flat" type="button"> 93 93 <span class="material-icons"></span> <!-- play_arrow --> 94 94 </button> 95 <button class=" color-error btn-fab transcription__remove-button" type="button">95 <button class="btn-fab transcription__remove-button theme-error" type="button"> 96 96 <span class="material-icons"></span> <!-- delete --> 97 97 </button>
Note:
See TracChangeset
for help on using the changeset viewer.