7 | ├── .eslintrc.json ├── .github └── workflows │ ├── npm-publish.yml │ └── push-mainline-to-master-for-github-pages.yml ├── .gitignore ├── .npmignore ├── .prettierignore ├── .prettierrc ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── dist ├── host.babylon.js ├── host.core.js ├── host.three.js └── host.threeAzure.js ├── docs ├── AbstractBlendState.html ├── AbstractHostFeature.html ├── AbstractSpeech.html ├── AbstractState.html ├── AbstractTextToSpeechFeature.html ├── AnimationFeature.html ├── AnimationFeatureDependentInterface.html ├── AnimationLayer.html ├── AnimationPlayerInterface.html ├── AnimationUtils.html ├── Babylon.js_AnimationFeature.html ├── Babylon.js_HostObject.html ├── Babylon.js_Messenger.html ├── Babylon.js_PointOfInterestFeature.html ├── Babylon.js_SingleState.html ├── Babylon.js_Speech.html ├── Babylon.js_TextToSpeechFeature.html ├── Blend1dState.html ├── Blend2dState.html ├── Deferred.html ├── FeatureDependentInterface.html ├── FreeBlendState.html ├── GestureFeature.html ├── LipsyncFeature.html ├── ManagedAnimationLayerInterface.html ├── MathUtils.html ├── PointOfInterestFeature.html ├── QueueState.html ├── README.md ├── RandomAnimationState.html ├── SSMLSpeechmarkInterface.html ├── StateContainerInterface.html ├── TextToSpeechFeature.html ├── TextToSpeechFeatureDependentInterface.html ├── TextToSpeechUtils.html ├── TransitionState.html ├── Utils.html ├── core_AnimationFeature.html ├── core_HostObject.html ├── core_LipsyncFeature.html ├── core_Messenger.html ├── core_PointOfInterestFeature.html ├── core_SingleState.html ├── core_Speech.html ├── core_TextToSpeechFeature.html ├── external-Audio.html ├── external-Polly.html ├── external-Presigner.html ├── external-Promise.html ├── external-_BABYLON.AnimationGroup_.html ├── external-_BABYLON.Mesh_.html ├── external-_BABYLON.Scene_.html ├── external-_THREE.AnimationAction_.html ├── external-_THREE.AnimationMixer_.html ├── external-_THREE.AudioListener_.html ├── external-_THREE.Audio_.html ├── external-_THREE.Clock_.html ├── external-_THREE.Object3D_.html ├── external-_THREE.PositionalAudio_.html ├── fonts │ ├── OpenSans-Bold-webfont.eot │ ├── OpenSans-Bold-webfont.svg │ ├── OpenSans-Bold-webfont.woff │ ├── OpenSans-BoldItalic-webfont.eot │ ├── OpenSans-BoldItalic-webfont.svg │ ├── OpenSans-BoldItalic-webfont.woff │ ├── OpenSans-Italic-webfont.eot │ ├── OpenSans-Italic-webfont.svg │ ├── OpenSans-Italic-webfont.woff │ ├── OpenSans-Light-webfont.eot │ ├── OpenSans-Light-webfont.svg │ ├── OpenSans-Light-webfont.woff │ ├── OpenSans-LightItalic-webfont.eot │ ├── OpenSans-LightItalic-webfont.svg │ ├── OpenSans-LightItalic-webfont.woff │ ├── OpenSans-Regular-webfont.eot │ ├── OpenSans-Regular-webfont.svg │ └── OpenSans-Regular-webfont.woff ├── global.html ├── images │ ├── alien.png │ ├── babylon_controls.png │ ├── babylon_final.png │ ├── grace.png │ ├── grace_poi_brows.png │ ├── grace_poi_eyes.png │ ├── grace_poi_head.png │ ├── grace_visemes.png │ ├── loadscreen.png │ ├── luke.png │ ├── luke_poi_brows.png │ ├── luke_poi_eyes.png │ ├── luke_poi_head.png │ ├── luke_visemes.png │ ├── three_controls.png │ └── three_final.png ├── index.html ├── module-babylon_HOST.html ├── module-babylon_animpack-Easing.html ├── module-babylon_animpack.html ├── module-babylon_awspack.html ├── module-core_HOST.html ├── module-core_animpack-Easing.html ├── module-core_animpack.html ├── module-core_awspack.html ├── module-three_HOST.html ├── module-three_animpack-Easing.html ├── module-three_animpack.html ├── module-three_awspack.html ├── scripts │ ├── linenumber.js │ ├── prettify │ │ ├── Apache-License-2.0.txt │ │ ├── lang-css.js │ │ └── prettify.js │ └── toggle.js ├── styles │ ├── dark-theme.css │ ├── jsdoc-default.css │ ├── prettify-jsdoc.css │ ├── prettify-tomorrow.css │ └── sumerian-hosts.css ├── three.js_AnimationFeature.html ├── three.js_HostObject.html ├── three.js_Messenger.html ├── three.js_PointOfInterestFeature.html ├── three.js_SingleState.html ├── three.js_Speech.html └── three.js_TextToSpeechFeature.html ├── docs_template ├── publish.js ├── static │ ├── fonts │ │ ├── OpenSans-Bold-webfont.eot │ │ ├── OpenSans-Bold-webfont.svg │ │ ├── OpenSans-Bold-webfont.woff │ │ ├── OpenSans-BoldItalic-webfont.eot │ │ ├── OpenSans-BoldItalic-webfont.svg │ │ ├── OpenSans-BoldItalic-webfont.woff │ │ ├── OpenSans-Italic-webfont.eot │ │ ├── OpenSans-Italic-webfont.svg │ │ ├── OpenSans-Italic-webfont.woff │ │ ├── OpenSans-Light-webfont.eot │ │ ├── OpenSans-Light-webfont.svg │ │ ├── OpenSans-Light-webfont.woff │ │ ├── OpenSans-LightItalic-webfont.eot │ │ ├── OpenSans-LightItalic-webfont.svg │ │ ├── OpenSans-LightItalic-webfont.woff │ │ ├── OpenSans-Regular-webfont.eot │ │ ├── OpenSans-Regular-webfont.svg │ │ └── OpenSans-Regular-webfont.woff │ ├── scripts │ │ ├── linenumber.js │ │ ├── prettify │ │ │ ├── Apache-License-2.0.txt │ │ │ ├── lang-css.js │ │ │ └── prettify.js │ │ └── toggle.js │ └── styles │ │ ├── dark-theme.css │ │ ├── jsdoc-default.css │ │ ├── prettify-jsdoc.css │ │ ├── prettify-tomorrow.css │ │ └── sumerian-hosts.css └── tmpl │ ├── augments.tmpl │ ├── container.tmpl │ ├── details.tmpl │ ├── example.tmpl │ ├── examples.tmpl │ ├── exceptions.tmpl │ ├── layout.tmpl │ ├── mainpage.tmpl │ ├── members.tmpl │ ├── method.tmpl │ ├── modifies.tmpl │ ├── params.tmpl │ ├── properties.tmpl │ ├── returns.tmpl │ ├── source.tmpl │ ├── tutorial.tmpl │ └── type.tmpl ├── examples ├── SpeechSDK-JavaScript-1.18.0 │ ├── LICENSE │ ├── NOTICE.txt │ ├── REDIST.txt │ ├── microsoft.cognitiveservices.speech.sdk.bundle-min.js │ ├── microsoft.cognitiveservices.speech.sdk.bundle.d.ts │ ├── microsoft.cognitiveservices.speech.sdk.bundle.js │ ├── microsoft.cognitiveservices.speech.sdk.bundle.js.map │ ├── speech-processor.js │ └── test.html ├── assets │ ├── LICENSE │ ├── glTF │ │ ├── animations │ │ │ ├── adult_female │ │ │ │ ├── blink.glb │ │ │ │ ├── emote.glb │ │ │ │ ├── face_idle.glb │ │ │ │ ├── gesture.glb │ │ │ │ ├── gesture.json │ │ │ │ ├── lipsync.glb │ │ │ │ ├── poi.glb │ │ │ │ ├── poi.json │ │ │ │ └── stand_idle.glb │ │ │ ├── adult_male │ │ │ │ ├── blink.glb │ │ │ │ ├── emote.glb │ │ │ │ ├── face_idle.glb │ │ │ │ ├── gesture.glb │ │ │ │ ├── gesture.json │ │ │ │ ├── lipsync.glb │ │ │ │ ├── poi.glb │ │ │ │ ├── poi.json │ │ │ │ └── stand_idle.glb │ │ │ └── alien │ │ │ │ ├── blink.glb │ │ │ │ ├── emote.glb │ │ │ │ ├── face_idle.glb │ │ │ │ ├── gesture.glb │ │ │ │ ├── gesture.json │ │ │ │ ├── lipsync.glb │ │ │ │ ├── poi.glb │ │ │ │ ├── poi.json │ │ │ │ └── stand_idle.glb │ │ └── characters │ │ │ ├── adult_female │ │ │ ├── alt_outfits │ │ │ │ ├── hoodie_jeans.bin │ │ │ │ ├── hoodie_jeans.gltf │ │ │ │ ├── polo_jeans.bin │ │ │ │ ├── polo_jeans.gltf │ │ │ │ ├── textures │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── hoodie_diff.jpg │ │ │ │ │ ├── hoodie_norm.jpg │ │ │ │ │ ├── hoodie_rough-hoodie_metal.jpg │ │ │ │ │ ├── jeans_diff.jpg │ │ │ │ │ ├── jeans_norm.jpg │ │ │ │ │ ├── jeans_rough.jpg │ │ │ │ │ ├── polo_ao.jpg │ │ │ │ │ ├── polo_diff.jpg │ │ │ │ │ ├── polo_norm.jpg │ │ │ │ │ ├── polo_rough.jpg │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ ├── shoes_norm.jpg │ │ │ │ │ ├── shoes_rough.jpg │ │ │ │ │ ├── tShirt_diff.jpg │ │ │ │ │ ├── tShirt_norm.jpg │ │ │ │ │ └── tShirt_rough.jpg │ │ │ │ ├── tshirt_jeans.bin │ │ │ │ └── tshirt_jeans.gltf │ │ │ ├── cristine │ │ │ │ ├── cristine.bin │ │ │ │ ├── cristine.gltf │ │ │ │ └── textures │ │ │ │ │ ├── body_ao.jpg │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── body_rough.jpg │ │ │ │ │ ├── eyes_diff.jpg │ │ │ │ │ ├── eyes_metal.jpg │ │ │ │ │ ├── hair_diff.jpg │ │ │ │ │ ├── hair_norm.jpg │ │ │ │ │ ├── hair_rough.jpg │ │ │ │ │ ├── hairtie_diff.jpg │ │ │ │ │ ├── hairtie_norm.jpg │ │ │ │ │ ├── head_ao.jpg │ │ │ │ │ ├── head_diff.jpg │ │ │ │ │ ├── head_norm.jpg │ │ │ │ │ ├── head_rough.jpg │ │ │ │ │ ├── pants_ao.jpg │ │ │ │ │ ├── pants_diff.jpg │ │ │ │ │ ├── pants_norm.jpg │ │ │ │ │ ├── pants_rough-pants_metal.jpg │ │ │ │ │ ├── shirt_ao.jpg │ │ │ │ │ ├── shirt_diff.jpg │ │ │ │ │ ├── shirt_norm.jpg │ │ │ │ │ ├── shirt_rough.jpg │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ ├── shoes_norm.jpg │ │ │ │ │ └── shoes_rough.jpg │ │ │ ├── fiona │ │ │ │ ├── fiona.bin │ │ │ │ ├── fiona.gltf │ │ │ │ └── textures │ │ │ │ │ ├── accessories_ao-accessories_rough.png │ │ │ │ │ ├── accessories_diff.png │ │ │ │ │ ├── accessories_norm.png │ │ │ │ │ ├── beads_diff.png │ │ │ │ │ ├── beads_norm.png │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.png │ │ │ │ │ ├── body_norm.png │ │ │ │ │ ├── eyes_diff.png │ │ │ │ │ ├── eyes_metal.png │ │ │ │ │ ├── hair_diff.png │ │ │ │ │ ├── hair_norm.png │ │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ │ ├── head_diff.png │ │ │ │ │ ├── head_norm.png │ │ │ │ │ ├── pants_diff.png │ │ │ │ │ ├── pants_norm.png │ │ │ │ │ ├── pants_rough.png │ │ │ │ │ ├── shirt_diff.png │ │ │ │ │ ├── shirt_norm.png │ │ │ │ │ ├── shirt_rough.png │ │ │ │ │ ├── shoes_diff.png │ │ │ │ │ ├── shoes_norm.png │ │ │ │ │ └── shoes_rough.png │ │ │ ├── grace │ │ │ │ ├── grace.bin │ │ │ │ ├── grace.gltf │ │ │ │ └── textures │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── eyes_diff.jpg │ │ │ │ │ ├── eyes_metal.jpg │ │ │ │ │ ├── hair_diff.jpg │ │ │ │ │ ├── hair_norm.jpg │ │ │ │ │ ├── hair_rough.jpg │ │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ │ ├── head_diff.jpg │ │ │ │ │ ├── head_norm.jpg │ │ │ │ │ ├── jacket_ao-jacket_rough.png │ │ │ │ │ ├── jacket_diff.jpg │ │ │ │ │ ├── jacket_norm.jpg │ │ │ │ │ ├── pants_ao-pants_rough-pants_metal.png │ │ │ │ │ ├── pants_diff.jpg │ │ │ │ │ ├── pants_norm.jpg │ │ │ │ │ ├── shoes_ao-shoes_rough-shoes_metal.png │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ └── shoes_norm.jpg │ │ │ └── maya │ │ │ │ ├── maya.bin │ │ │ │ ├── maya.gltf │ │ │ │ └── textures │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ ├── body_diff.jpg │ │ │ │ ├── body_norm.jpg │ │ │ │ ├── earrings_diff.jpg │ │ │ │ ├── earrings_norm.jpg │ │ │ │ ├── eyes_diff.jpg │ │ │ │ ├── eyes_metal.jpg │ │ │ │ ├── hair_ao-hair_rough.png │ │ │ │ ├── hair_diff.jpg │ │ │ │ ├── hair_norm.jpg │ │ │ │ ├── hairband_diff.jpg │ │ │ │ ├── hairband_norm.jpg │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ ├── head_diff.jpg │ │ │ │ ├── head_norm.jpg │ │ │ │ ├── labcoat_ao-labcoat_rough.png │ │ │ │ ├── labcoat_diff.jpg │ │ │ │ ├── labcoat_norm.jpg │ │ │ │ ├── pants_ao-pants_rough.png │ │ │ │ ├── pants_diff.jpg │ │ │ │ ├── pants_norm.jpg │ │ │ │ ├── shoes_ao-shoes_rough.png │ │ │ │ ├── shoes_diff.jpg │ │ │ │ └── shoes_norm.jpg │ │ │ ├── adult_male │ │ │ ├── alt_outfits │ │ │ │ ├── hoodie_jeans.bin │ │ │ │ ├── hoodie_jeans.gltf │ │ │ │ ├── polo_jeans.bin │ │ │ │ ├── polo_jeans.gltf │ │ │ │ ├── textures │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── hoodie_diff.jpg │ │ │ │ │ ├── hoodie_norm.jpg │ │ │ │ │ ├── hoodie_rough-hoodie_metal.jpg │ │ │ │ │ ├── jeans_diff.jpg │ │ │ │ │ ├── jeans_norm.jpg │ │ │ │ │ ├── jeans_rough.jpg │ │ │ │ │ ├── polo_diff.jpg │ │ │ │ │ ├── polo_norm.jpg │ │ │ │ │ ├── polo_rough.jpg │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ ├── shoes_norm.jpg │ │ │ │ │ ├── shoes_rough.jpg │ │ │ │ │ ├── tShirt_diff.jpg │ │ │ │ │ ├── tShirt_norm.jpg │ │ │ │ │ └── tShirt_rough.jpg │ │ │ │ ├── tshirt_jeans.bin │ │ │ │ └── tshirt_jeans.gltf │ │ │ ├── jay │ │ │ │ ├── jay.bin │ │ │ │ ├── jay.gltf │ │ │ │ └── textures │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── eyes_diff.jpg │ │ │ │ │ ├── eyes_metal.jpg │ │ │ │ │ ├── hair_ao-hair_rough.png │ │ │ │ │ ├── hair_diff.jpg │ │ │ │ │ ├── hair_norm.jpg │ │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ │ ├── head_diff.jpg │ │ │ │ │ ├── head_norm.jpg │ │ │ │ │ ├── pants_ao-pants_rough.png │ │ │ │ │ ├── pants_diff.jpg │ │ │ │ │ ├── pants_norm.jpg │ │ │ │ │ ├── shirt_ao-shirt_rough.png │ │ │ │ │ ├── shirt_diff.jpg │ │ │ │ │ ├── shirt_norm.jpg │ │ │ │ │ ├── shoes_ao-shoes_rough.png │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ ├── shoes_norm.jpg │ │ │ │ │ ├── sweater_ao-sweater_rough.png │ │ │ │ │ ├── sweater_diff.jpg │ │ │ │ │ └── sweater_norm.jpg │ │ │ ├── luke │ │ │ │ ├── luke.bin │ │ │ │ ├── luke.gltf │ │ │ │ └── textures │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── eyes_diff.jpg │ │ │ │ │ ├── eyes_metal.jpg │ │ │ │ │ ├── hair_ao-hair_rough.png │ │ │ │ │ ├── hair_diff.jpg │ │ │ │ │ ├── hair_norm.jpg │ │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ │ ├── head_diff.jpg │ │ │ │ │ ├── head_norm.jpg │ │ │ │ │ ├── jacket_ao-jacket_rough.png │ │ │ │ │ ├── jacket_diff.jpg │ │ │ │ │ ├── jacket_norm.jpg │ │ │ │ │ ├── pants_ao-pants_rough.png │ │ │ │ │ ├── pants_diff.jpg │ │ │ │ │ ├── pants_norm.jpg │ │ │ │ │ ├── shoes_ao-shoes_rough-shoes_metal.png │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ └── shoes_norm.jpg │ │ │ ├── preston │ │ │ │ ├── preston.bin │ │ │ │ ├── preston.gltf │ │ │ │ └── textures │ │ │ │ │ ├── beard_diff.jpg │ │ │ │ │ ├── beard_norm.jpg │ │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ │ ├── body_diff.jpg │ │ │ │ │ ├── body_norm.jpg │ │ │ │ │ ├── eyes_diff.jpg │ │ │ │ │ ├── eyes_metal.jpg │ │ │ │ │ ├── glasses_diff.jpg │ │ │ │ │ ├── glasses_norm.jpg │ │ │ │ │ ├── hair_diff.jpg │ │ │ │ │ ├── hair_norm.jpg │ │ │ │ │ ├── hair_rough.jpg │ │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ │ ├── head_diff.jpg │ │ │ │ │ ├── head_norm.jpg │ │ │ │ │ ├── pants_diff.jpg │ │ │ │ │ ├── pants_norm.jpg │ │ │ │ │ ├── pants_rough.jpg │ │ │ │ │ ├── shirt_ao-shirt_rough.png │ │ │ │ │ ├── shirt_diff.jpg │ │ │ │ │ ├── shirt_norm.jpg │ │ │ │ │ ├── shoes_diff.jpg │ │ │ │ │ ├── shoes_norm.jpg │ │ │ │ │ └── shoes_rough.jpg │ │ │ └── wes │ │ │ │ ├── textures │ │ │ │ ├── body_ao-body_rough.png │ │ │ │ ├── body_diff.png │ │ │ │ ├── body_norm.png │ │ │ │ ├── eyes_diff.png │ │ │ │ ├── hair_diff.png │ │ │ │ ├── hair_norm.png │ │ │ │ ├── hair_rough.png │ │ │ │ ├── head_ao-head_rough.png │ │ │ │ ├── head_diff.png │ │ │ │ ├── head_norm.png │ │ │ │ ├── headphones_diff.png │ │ │ │ ├── headphones_norm.png │ │ │ │ ├── headphones_rough-headphones_metal.png │ │ │ │ ├── pants_diff.png │ │ │ │ ├── pants_norm.png │ │ │ │ ├── pants_rough-pants_metal.png │ │ │ │ ├── shirt_diff.png │ │ │ │ ├── shirt_norm.png │ │ │ │ ├── shirt_rough.png │ │ │ │ ├── shoes_diff.png │ │ │ │ ├── shoes_norm.png │ │ │ │ └── shoes_rough.png │ │ │ │ ├── wes.bin │ │ │ │ └── wes.gltf │ │ │ └── alien │ │ │ ├── alien.bin │ │ │ ├── alien.gltf │ │ │ └── textures │ │ │ ├── alien_diffuse_01.jpg │ │ │ ├── alien_emissive_01.jpg │ │ │ ├── alien_normals_01.jpg │ │ │ ├── alien_rough_01.jpg │ │ │ ├── eye_diffuse_01.jpg │ │ │ ├── eye_emissive_01.jpg │ │ │ └── eye_metal_01.jpg │ └── images │ │ ├── load_screen.png │ │ └── machine_shop.jpg ├── azure-duck-punch.js ├── babylon.html ├── polly.html ├── three-azure-v1.html ├── three-azure-v2.html └── three.html ├── jsdoc.conf.json ├── karma.conf.js ├── package-lock.json ├── package.json ├── pythonServer.py ├── src ├── Babylon.js │ ├── HostEnvironment.js │ ├── HostObject.js │ ├── Messenger.js │ ├── PointOfInterestFeature.js │ ├── animpack │ │ ├── AnimationFeature.js │ │ ├── index.js │ │ └── state │ │ │ └── SingleState.js │ ├── awspack │ │ ├── Speech.js │ │ ├── TextToSpeechFeature.js │ │ └── index.js │ └── index.js ├── core │ ├── AbstractHostFeature.js │ ├── Deferred.js │ ├── FeatureDependentInterface.js │ ├── GestureFeature.js │ ├── HostEnvironment.js │ ├── HostObject.js │ ├── LipsyncFeature.js │ ├── MathUtils.js │ ├── Messenger.js │ ├── PointOfInterestFeature.js │ ├── Utils.js │ ├── animpack │ │ ├── AnimationFeature.js │ │ ├── AnimationFeatureDependentInterface.js │ │ ├── AnimationLayer.js │ │ ├── AnimationPlayerInterface.js │ │ ├── AnimationUtils.js │ │ ├── Easing.js │ │ ├── ManagedAnimationLayerInterface.js │ │ ├── index.js │ │ └── state │ │ │ ├── AbstractBlendState.js │ │ │ ├── AbstractState.js │ │ │ ├── Blend1dState.js │ │ │ ├── Blend2dState.js │ │ │ ├── FreeBlendState.js │ │ │ ├── QueueState.js │ │ │ ├── RandomAnimationState.js │ │ │ ├── SingleState.js │ │ │ ├── StateContainerInterface.js │ │ │ └── TransitionState.js │ ├── awspack │ │ ├── AbstractSpeech.js │ │ ├── AbstractTextToSpeechFeature.js │ │ ├── SSMLSpeechmarkInterface.js │ │ ├── Speech.js │ │ ├── TextToSpeechFeature.js │ │ ├── TextToSpeechFeatureDependentInterface.js │ │ ├── TextToSpeechUtils.js │ │ └── index.js │ └── index.js ├── three.js │ ├── HostEnvironment.js │ ├── HostObject.js │ ├── Messenger.js │ ├── PointOfInterestFeature.js │ ├── animpack │ │ ├── AnimationFeature.js │ │ ├── index.js │ │ └── state │ │ │ └── SingleState.js │ ├── awspack │ │ ├── Speech.js │ │ ├── TextToSpeechFeature.js │ │ └── index.js │ └── index.js └── threeAzure │ ├── HostEnvironment.js │ ├── HostObject.js │ ├── Messenger.js │ ├── PointOfInterestFeature.js │ ├── animpack │ ├── AnimationFeature.js │ ├── index.js │ └── state │ │ └── SingleState.js │ ├── awspack │ ├── Speech.js │ ├── TextToSpeechFeature.js │ └── index.js │ └── index.js ├── test ├── assets │ ├── Xbot.glb │ └── audio.mp3 ├── integration_test │ ├── Babylon.js │ │ ├── babylon.animation.html │ │ └── babylon.texttospeech.html │ ├── README.md │ ├── core │ │ ├── core.Deferred.html │ │ └── core.texttospeech.html │ └── three.js │ │ ├── three.animation.html │ │ └── three.texttospeech.html └── unit │ ├── AbstractHostFeature.spec.js │ ├── BabylonHarness.js │ ├── CoreHarness.js │ ├── Deferred.spec.js │ ├── EnvironmentHarness.js │ ├── FeatureDependentInterface.spec.js │ ├── GestureFeature.spec.js │ ├── HostObject.spec.js │ ├── MathUtils.spec.js │ ├── Messenger.spec.js │ ├── PointOfInterestFeature.spec.js │ ├── ThreeHarness.js │ ├── Utils.spec.js │ ├── animpack │ ├── AnimationFeature.spec.js │ ├── AnimationLayer.spec.js │ ├── AnimationPlayerInterface.spec.js │ ├── AnimationUtils.spec.js │ ├── LipsyncFeature.spec.js │ ├── ManagedAnimationLayerInterface.spec.js │ └── state │ │ ├── AbstractBlendState.spec.js │ │ ├── AbstractState.spec.js │ │ ├── Blend1dState.spec.js │ │ ├── Blend2dState.spec.js │ │ ├── FreeBlendState.spec.js │ │ ├── QueueState.spec.js │ │ ├── RandomAnimationState.spec.js │ │ ├── SingleState.spec.js │ │ ├── StateContainerInterface.spec.js │ │ └── TransitionState.spec.js │ └── awspack │ ├── AbstractSpeech.spec.js │ ├── AbstractTextToSpeechFeature.spec.js │ ├── SSMLSpeechmarkInterface.spec.js │ ├── Speech.spec.js │ ├── TextToSpeechFeature.spec.js │ └── TextToSpeechUtils.spec.js ├── webpack.common.js ├── webpack.dev.js └── webpack.test.js /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "parser": "babel-eslint", 3 | "extends": ["airbnb", "prettier", "plugin:jasmine/recommended"], 4 | "plugins": ["prettier", "jasmine"], 5 | "parserOptions": { 6 | "ecmaFeatures": { 7 | "experimentalObjectResetSpread": true 8 | } 9 | }, 10 | "globals": { 11 | "atob": true, 12 | "btoa": true, 13 | "document": true, 14 | "navigator": true, 15 | "window": true, 16 | "XMLHttpRequest": true, 17 | "AWS": true, 18 | "THREE": true, 19 | "BABYLON": true, 20 | "expectAsync": true 21 | }, 22 | "rules": { 23 | // Specific rule overrides can go here. 24 | "indent": [ 25 | "error", 26 | 2, 27 | { 28 | "SwitchCase": 1 29 | } 30 | ], 31 | "no-var": "warn", 32 | "no-tabs": "warn", 33 | "func-names": "off", 34 | "object-curly-spacing": "off", 35 | "no-param-reassign": "off", 36 | "no-mixed-operators": "off", 37 | "no-bitwise": "off", 38 | "max-len": "off", 39 | "import/no-extraneous-dependencies": "off", 40 | "no-shadow": "off", 41 | "no-plusplus": "off", 42 | "no-underscore-dangle": [ 43 | "warn", 44 | { 45 | "allowAfterThis": true, 46 | "allowAfterSuper": true 47 | } 48 | ], 49 | "spaced-comment": "off", 50 | "arrow-parens": "off", 51 | "no-trailing-spaces": "warn", 52 | "no-console": "off", 53 | "comma-dangle": "off", 54 | "no-else-return": "off", 55 | "no-unused-vars": "warn", 56 | "class-methods-use-this": "off", 57 | "prefer-const": "warn", 58 | "consistent-return": "off", 59 | "arrow-body-style": "off", 60 | "no-use-before-define": "off" 61 | }, 62 | "env": { 63 | "browser": true, 64 | "node": true, 65 | "jasmine": true 66 | }, 67 | "settings": { 68 | "import/resolver": { 69 | "webpack": { 70 | "config": "./webpack.common.js" 71 | } 72 | } 73 | } 74 | } 75 | -------------------------------------------------------------------------------- /.github/workflows/npm-publish.yml: -------------------------------------------------------------------------------- 1 | name: Node.js Package 2 | 3 | on: 4 | release: 5 | types: [created] 6 | jobs: 7 | build: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - uses: actions/checkout@v2 11 | # Setup .npmrc file to publish to npm 12 | - uses: actions/setup-node@v1 13 | with: 14 | node-version: '12.x' 15 | registry-url: 'https://registry.npmjs.org' 16 | - run: npm install 17 | - run: npm publish 18 | env: 19 | NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} 20 | -------------------------------------------------------------------------------- /.github/workflows/push-mainline-to-master-for-github-pages.yml: -------------------------------------------------------------------------------- 1 | # This workflow is necessary to support publishing to GitHub pages after renaming master to mainline since GitHub pages currently only support setting source from master branch 2 | 3 | name: Push mainline changes into master branch 4 | 5 | # Controls when the action will run. Triggers the workflow on push or pull request 6 | # events but only for the master branch 7 | on: 8 | push: 9 | branches: [ mainline ] 10 | 11 | # A workflow run is made up of one or more jobs that can run sequentially or in parallel 12 | jobs: 13 | push_to_master_branch: 14 | # The type of runner that the job will run on 15 | runs-on: ubuntu-latest 16 | 17 | # Steps represent a sequence of tasks that will be executed as part of the job 18 | steps: 19 | # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it 20 | - uses: actions/checkout@v2 21 | - name: Push changes 22 | uses: ad-m/github-push-action@master 23 | with: 24 | github_token: ${{ secrets.GITHUB_TOKEN }} 25 | branch: master 26 | force: true 27 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | *.swp 3 | .project 4 | node_modules 5 | .idea/ 6 | .vscode/ 7 | npm-debug.log 8 | .jshintrc 9 | .vs/ 10 | .gitconfig 11 | build 12 | build/ 13 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | karma.conf.js 2 | webpack* 3 | test 4 | docs* 5 | jsdoc* 6 | .eslintrc.json 7 | .prettierrc 8 | CONTRIBUTING.md 9 | CODE_OF_CONDUCT.md 10 | 11 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | *.md 2 | -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 80, 3 | "tabWidth": 2, 4 | "useTabs": false, 5 | "semi": true, 6 | "singleQuote": true, 7 | "trailingComma": "es5", 8 | "bracketSpacing": false 9 | } 10 | -------------------------------------------------------------------------------- /CODE_OF_CONDUCT.md: -------------------------------------------------------------------------------- 1 | ## Code of Conduct 2 | This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct). 3 | For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact 4 | opensource-codeofconduct@amazon.com with any additional questions or comments. 5 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved. 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software is furnished to do so. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 10 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 11 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 12 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 13 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 14 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 15 | -------------------------------------------------------------------------------- /docs/README.md: -------------------------------------------------------------------------------- 1 | ## Amazon Sumerian Hosts API Documentation 2 | 3 | Majority of the host API is included in the Core folder and is universal regardless of the engine-specific build being used. There are a few classes that require engine-specific objects to be defined. These can be found in the build folder matching the name of the rendering engine. 4 | -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Bold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Bold-webfont.eot -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Bold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Bold-webfont.woff -------------------------------------------------------------------------------- /docs/fonts/OpenSans-BoldItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-BoldItalic-webfont.eot -------------------------------------------------------------------------------- /docs/fonts/OpenSans-BoldItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-BoldItalic-webfont.woff -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Italic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Italic-webfont.eot -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Italic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Italic-webfont.woff -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Light-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Light-webfont.eot -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Light-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Light-webfont.woff -------------------------------------------------------------------------------- /docs/fonts/OpenSans-LightItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-LightItalic-webfont.eot -------------------------------------------------------------------------------- /docs/fonts/OpenSans-LightItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-LightItalic-webfont.woff -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Regular-webfont.eot -------------------------------------------------------------------------------- /docs/fonts/OpenSans-Regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/fonts/OpenSans-Regular-webfont.woff -------------------------------------------------------------------------------- /docs/images/alien.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/alien.png -------------------------------------------------------------------------------- /docs/images/babylon_controls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/babylon_controls.png -------------------------------------------------------------------------------- /docs/images/babylon_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/babylon_final.png -------------------------------------------------------------------------------- /docs/images/grace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/grace.png -------------------------------------------------------------------------------- /docs/images/grace_poi_brows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/grace_poi_brows.png -------------------------------------------------------------------------------- /docs/images/grace_poi_eyes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/grace_poi_eyes.png -------------------------------------------------------------------------------- /docs/images/grace_poi_head.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/grace_poi_head.png -------------------------------------------------------------------------------- /docs/images/grace_visemes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/grace_visemes.png -------------------------------------------------------------------------------- /docs/images/loadscreen.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/loadscreen.png -------------------------------------------------------------------------------- /docs/images/luke.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/luke.png -------------------------------------------------------------------------------- /docs/images/luke_poi_brows.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/luke_poi_brows.png -------------------------------------------------------------------------------- /docs/images/luke_poi_eyes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/luke_poi_eyes.png -------------------------------------------------------------------------------- /docs/images/luke_poi_head.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/luke_poi_head.png -------------------------------------------------------------------------------- /docs/images/luke_visemes.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/luke_visemes.png -------------------------------------------------------------------------------- /docs/images/three_controls.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/three_controls.png -------------------------------------------------------------------------------- /docs/images/three_final.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs/images/three_final.png -------------------------------------------------------------------------------- /docs/scripts/linenumber.js: -------------------------------------------------------------------------------- 1 | /*global document */ 2 | (() => { 3 | const source = document.getElementsByClassName('prettyprint source linenums'); 4 | let i = 0; 5 | let lineNumber = 0; 6 | let lineId; 7 | let lines; 8 | let totalLines; 9 | let anchorHash; 10 | 11 | if (source && source[0]) { 12 | anchorHash = document.location.hash.substring(1); 13 | lines = source[0].getElementsByTagName('li'); 14 | totalLines = lines.length; 15 | 16 | for (; i < totalLines; i++) { 17 | lineNumber++; 18 | lineId = `line${lineNumber}`; 19 | lines[i].id = lineId; 20 | if (lineId === anchorHash) { 21 | lines[i].className += ' selected'; 22 | } 23 | } 24 | } 25 | })(); 26 | -------------------------------------------------------------------------------- /docs/scripts/prettify/lang-css.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\f\r ]+/,null," \t\r\n"]],[["str",/^"(?:[^\n\f\r"\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*"/,null],["str",/^'(?:[^\n\f\r'\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*'/,null],["lang-css-str",/^url\(([^"')]*)\)/i],["kwd",/^(?:url|rgb|!important|@import|@page|@media|@charset|inherit)(?=[^\w-]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*)\s*:/i],["com",/^\/\*[^*]*\*+(?:[^*/][^*]*\*+)*\//],["com", 2 | /^(?:<\!--|--\>)/],["lit",/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],["lit",/^#[\da-f]{3,6}/i],["pln",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i],["pun",/^[^\s\w"']+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[["kwd",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[["str",/^[^"')]+/]]),["css-str"]); 3 | -------------------------------------------------------------------------------- /docs/scripts/toggle.js: -------------------------------------------------------------------------------- 1 | const toggleButtons = document.getElementsByClassName('toggle'); 2 | 3 | for (let i = 0, l = toggleButtons.length; i < l; i += 1) { 4 | toggleButtons[i].addEventListener('click', function() { 5 | this.classList.toggle('opened'); 6 | this.classList.toggle('closed'); 7 | this.parentElement.nextElementSibling.classList.toggle('active'); 8 | this.parentElement.nextElementSibling.classList.toggle('nested'); 9 | }); 10 | } 11 | -------------------------------------------------------------------------------- /docs/styles/dark-theme.css: -------------------------------------------------------------------------------- 1 | /* Base16 Atelier Cave Dark - Theme */ 2 | /* by Bram de Haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/cave) */ 3 | /* Original Base16 color scheme by Chris Kempson (https://github.com/chriskempson/base16) */ 4 | /* Atelier-Cave Comment */ 5 | .hljs-comment, 6 | .hljs-quote { 7 | color: #7e7887; } 8 | 9 | /* Atelier-Cave Red */ 10 | .hljs-variable, 11 | .hljs-template-variable, 12 | .hljs-attribute, 13 | .hljs-regexp, 14 | .hljs-link, 15 | .hljs-tag, 16 | .hljs-name, 17 | .hljs-selector-id, 18 | .hljs-selector-class { 19 | color: #be4678; } 20 | 21 | /* Atelier-Cave Orange */ 22 | .hljs-number, 23 | .hljs-meta, 24 | .hljs-built_in, 25 | .hljs-builtin-name, 26 | .hljs-literal, 27 | .hljs-type, 28 | .hljs-params { 29 | color: #aa573c; } 30 | 31 | /* Atelier-Cave Green */ 32 | .hljs-string, 33 | .hljs-symbol, 34 | .hljs-bullet { 35 | color: #2a9292; } 36 | 37 | /* Atelier-Cave Blue */ 38 | .hljs-title, 39 | .hljs-section { 40 | color: #576ddb; } 41 | 42 | /* Atelier-Cave Purple */ 43 | .hljs-keyword, 44 | .hljs-selector-tag { 45 | color: #955ae7; } 46 | 47 | .hljs-deletion, 48 | .hljs-addition { 49 | color: #19171c; 50 | display: inline-block; 51 | width: 100%; } 52 | 53 | .hljs-deletion { 54 | background-color: #be4678; } 55 | 56 | .hljs-addition { 57 | background-color: #2a9292; } 58 | 59 | .hljs { 60 | display: block; 61 | overflow-x: auto; 62 | background: #19171c; 63 | color: #8b8792; 64 | padding: 0.5em; } 65 | 66 | .hljs-emphasis { 67 | font-style: italic; } 68 | 69 | .hljs-strong { 70 | font-weight: bold; } 71 | -------------------------------------------------------------------------------- /docs/styles/prettify-jsdoc.css: -------------------------------------------------------------------------------- 1 | /* JSDoc prettify.js theme */ 2 | 3 | /* plain text */ 4 | .pln { 5 | color: #000000; 6 | font-weight: normal; 7 | font-style: normal; 8 | } 9 | 10 | /* string content */ 11 | .str { 12 | color: #006400; 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | 17 | /* a keyword */ 18 | .kwd { 19 | color: #000000; 20 | font-weight: bold; 21 | font-style: normal; 22 | } 23 | 24 | /* a comment */ 25 | .com { 26 | font-weight: normal; 27 | font-style: italic; 28 | } 29 | 30 | /* a type name */ 31 | .typ { 32 | color: #000000; 33 | font-weight: normal; 34 | font-style: normal; 35 | } 36 | 37 | /* a literal value */ 38 | .lit { 39 | color: #006400; 40 | font-weight: normal; 41 | font-style: normal; 42 | } 43 | 44 | /* punctuation */ 45 | .pun { 46 | color: #000000; 47 | font-weight: bold; 48 | font-style: normal; 49 | } 50 | 51 | /* lisp open bracket */ 52 | .opn { 53 | color: #000000; 54 | font-weight: bold; 55 | font-style: normal; 56 | } 57 | 58 | /* lisp close bracket */ 59 | .clo { 60 | color: #000000; 61 | font-weight: bold; 62 | font-style: normal; 63 | } 64 | 65 | /* a markup tag name */ 66 | .tag { 67 | color: #006400; 68 | font-weight: normal; 69 | font-style: normal; 70 | } 71 | 72 | /* a markup attribute name */ 73 | .atn { 74 | color: #006400; 75 | font-weight: normal; 76 | font-style: normal; 77 | } 78 | 79 | /* a markup attribute value */ 80 | .atv { 81 | color: #006400; 82 | font-weight: normal; 83 | font-style: normal; 84 | } 85 | 86 | /* a declaration */ 87 | .dec { 88 | color: #000000; 89 | font-weight: bold; 90 | font-style: normal; 91 | } 92 | 93 | /* a variable name */ 94 | .var { 95 | color: #000000; 96 | font-weight: normal; 97 | font-style: normal; 98 | } 99 | 100 | /* a function name */ 101 | .fun { 102 | color: #000000; 103 | font-weight: bold; 104 | font-style: normal; 105 | } 106 | 107 | /* Specify class=linenums on a pre to get line numbering */ 108 | ol.linenums { 109 | margin-top: 0; 110 | margin-bottom: 0; 111 | } 112 | -------------------------------------------------------------------------------- /docs/styles/prettify-tomorrow.css: -------------------------------------------------------------------------------- 1 | /* Tomorrow Theme */ 2 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */ 3 | /* Pretty printing styles. Used with prettify.js. */ 4 | /* SPAN elements with the classes below are added by prettyprint. */ 5 | /* plain text */ 6 | .pln { 7 | color: #4d4d4c; } 8 | 9 | @media screen { 10 | /* string content */ 11 | .str { 12 | color: #718c00; } 13 | 14 | /* a keyword */ 15 | .kwd { 16 | color: #8959a8; } 17 | 18 | /* a comment */ 19 | .com { 20 | color: #8e908c; } 21 | 22 | /* a type name */ 23 | .typ { 24 | color: #4271ae; } 25 | 26 | /* a literal value */ 27 | .lit { 28 | color: #f5871f; } 29 | 30 | /* punctuation */ 31 | .pun { 32 | color: #4d4d4c; } 33 | 34 | /* lisp open bracket */ 35 | .opn { 36 | color: #4d4d4c; } 37 | 38 | /* lisp close bracket */ 39 | .clo { 40 | color: #4d4d4c; } 41 | 42 | /* a markup tag name */ 43 | .tag { 44 | color: #c82829; } 45 | 46 | /* a markup attribute name */ 47 | .atn { 48 | color: #f5871f; } 49 | 50 | /* a markup attribute value */ 51 | .atv { 52 | color: #3e999f; } 53 | 54 | /* a declaration */ 55 | .dec { 56 | color: #f5871f; } 57 | 58 | /* a variable name */ 59 | .var { 60 | color: #c82829; } 61 | 62 | /* a function name */ 63 | .fun { 64 | color: #4271ae; } } 65 | /* Use higher contrast and text-weight for printable form. */ 66 | @media print, projection { 67 | .str { 68 | color: #060; } 69 | 70 | .kwd { 71 | color: #006; 72 | font-weight: bold; } 73 | 74 | .com { 75 | color: #600; 76 | font-style: italic; } 77 | 78 | .typ { 79 | color: #404; 80 | font-weight: bold; } 81 | 82 | .lit { 83 | color: #044; } 84 | 85 | .pun, .opn, .clo { 86 | color: #440; } 87 | 88 | .tag { 89 | color: #006; 90 | font-weight: bold; } 91 | 92 | .atn { 93 | color: #404; } 94 | 95 | .atv { 96 | color: #060; } } 97 | /* Style */ 98 | /* 99 | pre.prettyprint { 100 | background: white; 101 | font-family: Consolas, Monaco, 'Andale Mono', monospace; 102 | font-size: 12px; 103 | line-height: 1.5; 104 | border: 1px solid #ccc; 105 | padding: 10px; } 106 | */ 107 | 108 | /* Specify class=linenums on a pre to get line numbering */ 109 | ol.linenums { 110 | margin-top: 0; 111 | margin-bottom: 0; } 112 | 113 | /* IE indents via margin-left */ 114 | li.L0, 115 | li.L1, 116 | li.L2, 117 | li.L3, 118 | li.L4, 119 | li.L5, 120 | li.L6, 121 | li.L7, 122 | li.L8, 123 | li.L9 { 124 | /* */ } 125 | 126 | /* Alternate shading for lines */ 127 | li.L1, 128 | li.L3, 129 | li.L5, 130 | li.L7, 131 | li.L9 { 132 | /* */ } 133 | -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Bold-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Bold-webfont.eot -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Bold-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Bold-webfont.woff -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-BoldItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-BoldItalic-webfont.eot -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-BoldItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-BoldItalic-webfont.woff -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Italic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Italic-webfont.eot -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Italic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Italic-webfont.woff -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Light-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Light-webfont.eot -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Light-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Light-webfont.woff -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-LightItalic-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-LightItalic-webfont.eot -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-LightItalic-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-LightItalic-webfont.woff -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Regular-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Regular-webfont.eot -------------------------------------------------------------------------------- /docs_template/static/fonts/OpenSans-Regular-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ProjectPete/amazon-sumerian-hosts/66a963dff32c22b5984ea15f7cda5e1be953da5f/docs_template/static/fonts/OpenSans-Regular-webfont.woff -------------------------------------------------------------------------------- /docs_template/static/scripts/linenumber.js: -------------------------------------------------------------------------------- 1 | /*global document */ 2 | (() => { 3 | const source = document.getElementsByClassName('prettyprint source linenums'); 4 | let i = 0; 5 | let lineNumber = 0; 6 | let lineId; 7 | let lines; 8 | let totalLines; 9 | let anchorHash; 10 | 11 | if (source && source[0]) { 12 | anchorHash = document.location.hash.substring(1); 13 | lines = source[0].getElementsByTagName('li'); 14 | totalLines = lines.length; 15 | 16 | for (; i < totalLines; i++) { 17 | lineNumber++; 18 | lineId = `line${lineNumber}`; 19 | lines[i].id = lineId; 20 | if (lineId === anchorHash) { 21 | lines[i].className += ' selected'; 22 | } 23 | } 24 | } 25 | })(); 26 | -------------------------------------------------------------------------------- /docs_template/static/scripts/prettify/lang-css.js: -------------------------------------------------------------------------------- 1 | PR.registerLangHandler(PR.createSimpleLexer([["pln",/^[\t\n\f\r ]+/,null," \t\r\n"]],[["str",/^"(?:[^\n\f\r"\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*"/,null],["str",/^'(?:[^\n\f\r'\\]|\\(?:\r\n?|\n|\f)|\\[\S\s])*'/,null],["lang-css-str",/^url\(([^"')]*)\)/i],["kwd",/^(?:url|rgb|!important|@import|@page|@media|@charset|inherit)(?=[^\w-]|$)/i,null],["lang-css-kw",/^(-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*)\s*:/i],["com",/^\/\*[^*]*\*+(?:[^*/][^*]*\*+)*\//],["com", 2 | /^(?:<\!--|--\>)/],["lit",/^(?:\d+|\d*\.\d+)(?:%|[a-z]+)?/i],["lit",/^#[\da-f]{3,6}/i],["pln",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i],["pun",/^[^\s\w"']+/]]),["css"]);PR.registerLangHandler(PR.createSimpleLexer([],[["kwd",/^-?(?:[_a-z]|\\[\da-f]+ ?)(?:[\w-]|\\\\[\da-f]+ ?)*/i]]),["css-kw"]);PR.registerLangHandler(PR.createSimpleLexer([],[["str",/^[^"')]+/]]),["css-str"]); 3 | -------------------------------------------------------------------------------- /docs_template/static/scripts/toggle.js: -------------------------------------------------------------------------------- 1 | const toggleButtons = document.getElementsByClassName('toggle'); 2 | 3 | for (let i = 0, l = toggleButtons.length; i < l; i += 1) { 4 | toggleButtons[i].addEventListener('click', function() { 5 | this.classList.toggle('opened'); 6 | this.classList.toggle('closed'); 7 | this.parentElement.nextElementSibling.classList.toggle('active'); 8 | this.parentElement.nextElementSibling.classList.toggle('nested'); 9 | }); 10 | } 11 | -------------------------------------------------------------------------------- /docs_template/static/styles/dark-theme.css: -------------------------------------------------------------------------------- 1 | /* Base16 Atelier Cave Dark - Theme */ 2 | /* by Bram de Haan (http://atelierbram.github.io/syntax-highlighting/atelier-schemes/cave) */ 3 | /* Original Base16 color scheme by Chris Kempson (https://github.com/chriskempson/base16) */ 4 | /* Atelier-Cave Comment */ 5 | .hljs-comment, 6 | .hljs-quote { 7 | color: #7e7887; } 8 | 9 | /* Atelier-Cave Red */ 10 | .hljs-variable, 11 | .hljs-template-variable, 12 | .hljs-attribute, 13 | .hljs-regexp, 14 | .hljs-link, 15 | .hljs-tag, 16 | .hljs-name, 17 | .hljs-selector-id, 18 | .hljs-selector-class { 19 | color: #be4678; } 20 | 21 | /* Atelier-Cave Orange */ 22 | .hljs-number, 23 | .hljs-meta, 24 | .hljs-built_in, 25 | .hljs-builtin-name, 26 | .hljs-literal, 27 | .hljs-type, 28 | .hljs-params { 29 | color: #aa573c; } 30 | 31 | /* Atelier-Cave Green */ 32 | .hljs-string, 33 | .hljs-symbol, 34 | .hljs-bullet { 35 | color: #2a9292; } 36 | 37 | /* Atelier-Cave Blue */ 38 | .hljs-title, 39 | .hljs-section { 40 | color: #576ddb; } 41 | 42 | /* Atelier-Cave Purple */ 43 | .hljs-keyword, 44 | .hljs-selector-tag { 45 | color: #955ae7; } 46 | 47 | .hljs-deletion, 48 | .hljs-addition { 49 | color: #19171c; 50 | display: inline-block; 51 | width: 100%; } 52 | 53 | .hljs-deletion { 54 | background-color: #be4678; } 55 | 56 | .hljs-addition { 57 | background-color: #2a9292; } 58 | 59 | .hljs { 60 | display: block; 61 | overflow-x: auto; 62 | background: #19171c; 63 | color: #8b8792; 64 | padding: 0.5em; } 65 | 66 | .hljs-emphasis { 67 | font-style: italic; } 68 | 69 | .hljs-strong { 70 | font-weight: bold; } 71 | -------------------------------------------------------------------------------- /docs_template/static/styles/prettify-jsdoc.css: -------------------------------------------------------------------------------- 1 | /* JSDoc prettify.js theme */ 2 | 3 | /* plain text */ 4 | .pln { 5 | color: #000000; 6 | font-weight: normal; 7 | font-style: normal; 8 | } 9 | 10 | /* string content */ 11 | .str { 12 | color: #006400; 13 | font-weight: normal; 14 | font-style: normal; 15 | } 16 | 17 | /* a keyword */ 18 | .kwd { 19 | color: #000000; 20 | font-weight: bold; 21 | font-style: normal; 22 | } 23 | 24 | /* a comment */ 25 | .com { 26 | font-weight: normal; 27 | font-style: italic; 28 | } 29 | 30 | /* a type name */ 31 | .typ { 32 | color: #000000; 33 | font-weight: normal; 34 | font-style: normal; 35 | } 36 | 37 | /* a literal value */ 38 | .lit { 39 | color: #006400; 40 | font-weight: normal; 41 | font-style: normal; 42 | } 43 | 44 | /* punctuation */ 45 | .pun { 46 | color: #000000; 47 | font-weight: bold; 48 | font-style: normal; 49 | } 50 | 51 | /* lisp open bracket */ 52 | .opn { 53 | color: #000000; 54 | font-weight: bold; 55 | font-style: normal; 56 | } 57 | 58 | /* lisp close bracket */ 59 | .clo { 60 | color: #000000; 61 | font-weight: bold; 62 | font-style: normal; 63 | } 64 | 65 | /* a markup tag name */ 66 | .tag { 67 | color: #006400; 68 | font-weight: normal; 69 | font-style: normal; 70 | } 71 | 72 | /* a markup attribute name */ 73 | .atn { 74 | color: #006400; 75 | font-weight: normal; 76 | font-style: normal; 77 | } 78 | 79 | /* a markup attribute value */ 80 | .atv { 81 | color: #006400; 82 | font-weight: normal; 83 | font-style: normal; 84 | } 85 | 86 | /* a declaration */ 87 | .dec { 88 | color: #000000; 89 | font-weight: bold; 90 | font-style: normal; 91 | } 92 | 93 | /* a variable name */ 94 | .var { 95 | color: #000000; 96 | font-weight: normal; 97 | font-style: normal; 98 | } 99 | 100 | /* a function name */ 101 | .fun { 102 | color: #000000; 103 | font-weight: bold; 104 | font-style: normal; 105 | } 106 | 107 | /* Specify class=linenums on a pre to get line numbering */ 108 | ol.linenums { 109 | margin-top: 0; 110 | margin-bottom: 0; 111 | } 112 | -------------------------------------------------------------------------------- /docs_template/static/styles/prettify-tomorrow.css: -------------------------------------------------------------------------------- 1 | /* Tomorrow Theme */ 2 | /* Original theme - https://github.com/chriskempson/tomorrow-theme */ 3 | /* Pretty printing styles. Used with prettify.js. */ 4 | /* SPAN elements with the classes below are added by prettyprint. */ 5 | /* plain text */ 6 | .pln { 7 | color: #4d4d4c; } 8 | 9 | @media screen { 10 | /* string content */ 11 | .str { 12 | color: #718c00; } 13 | 14 | /* a keyword */ 15 | .kwd { 16 | color: #8959a8; } 17 | 18 | /* a comment */ 19 | .com { 20 | color: #8e908c; } 21 | 22 | /* a type name */ 23 | .typ { 24 | color: #4271ae; } 25 | 26 | /* a literal value */ 27 | .lit { 28 | color: #f5871f; } 29 | 30 | /* punctuation */ 31 | .pun { 32 | color: #4d4d4c; } 33 | 34 | /* lisp open bracket */ 35 | .opn { 36 | color: #4d4d4c; } 37 | 38 | /* lisp close bracket */ 39 | .clo { 40 | color: #4d4d4c; } 41 | 42 | /* a markup tag name */ 43 | .tag { 44 | color: #c82829; } 45 | 46 | /* a markup attribute name */ 47 | .atn { 48 | color: #f5871f; } 49 | 50 | /* a markup attribute value */ 51 | .atv { 52 | color: #3e999f; } 53 | 54 | /* a declaration */ 55 | .dec { 56 | color: #f5871f; } 57 | 58 | /* a variable name */ 59 | .var { 60 | color: #c82829; } 61 | 62 | /* a function name */ 63 | .fun { 64 | color: #4271ae; } } 65 | /* Use higher contrast and text-weight for printable form. */ 66 | @media print, projection { 67 | .str { 68 | color: #060; } 69 | 70 | .kwd { 71 | color: #006; 72 | font-weight: bold; } 73 | 74 | .com { 75 | color: #600; 76 | font-style: italic; } 77 | 78 | .typ { 79 | color: #404; 80 | font-weight: bold; } 81 | 82 | .lit { 83 | color: #044; } 84 | 85 | .pun, .opn, .clo { 86 | color: #440; } 87 | 88 | .tag { 89 | color: #006; 90 | font-weight: bold; } 91 | 92 | .atn { 93 | color: #404; } 94 | 95 | .atv { 96 | color: #060; } } 97 | /* Style */ 98 | /* 99 | pre.prettyprint { 100 | background: white; 101 | font-family: Consolas, Monaco, 'Andale Mono', monospace; 102 | font-size: 12px; 103 | line-height: 1.5; 104 | border: 1px solid #ccc; 105 | padding: 10px; } 106 | */ 107 | 108 | /* Specify class=linenums on a pre to get line numbering */ 109 | ol.linenums { 110 | margin-top: 0; 111 | margin-bottom: 0; } 112 | 113 | /* IE indents via margin-left */ 114 | li.L0, 115 | li.L1, 116 | li.L2, 117 | li.L3, 118 | li.L4, 119 | li.L5, 120 | li.L6, 121 | li.L7, 122 | li.L8, 123 | li.L9 { 124 | /* */ } 125 | 126 | /* Alternate shading for lines */ 127 | li.L1, 128 | li.L3, 129 | li.L5, 130 | li.L7, 131 | li.L9 { 132 | /* */ } 133 | -------------------------------------------------------------------------------- /docs_template/tmpl/augments.tmpl: -------------------------------------------------------------------------------- 1 | 5 | 6 | 7 |
3 |
--------------------------------------------------------------------------------
/docs_template/tmpl/examples.tmpl:
--------------------------------------------------------------------------------
1 |
8 |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/docs_template/tmpl/exceptions.tmpl:
--------------------------------------------------------------------------------
1 |
4 |
5 |
7 |