From d4a9dfbc7d40c6016fbd2b0f85e8d352564d4f55 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Wed, 22 Nov 2023 16:01:59 -0300 Subject: [PATCH 01/32] add notify methods to global STREET object - add succesMessage and errorMessage to notify object - replace legacy notify methods calls to new ones --- src/components/notify.js | 11 +++++++++++ src/json-utils.js | 15 +++------------ 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/src/components/notify.js b/src/components/notify.js index 1a731bb19..84f78d954 100644 --- a/src/components/notify.js +++ b/src/components/notify.js @@ -34,6 +34,17 @@ AFRAME.registerComponent('notify', { dismissible: this.data.dismissible }); this.types = this.notify.options.types.map(messType => messType.type); + + // add notify methods to STREET global objects + if (STREET) { + STREET.notify = {}; + STREET.notify.successMessage = (messageText) => { + this.message(messageText, 'success'); + } + STREET.notify.errorMessage = (messageText)=> { + this.message(messageText, 'error'); + } + } }, message: function (messageText, messageType = 'info') { if (messageText && this.types.includes(messageType)) { diff --git a/src/json-utils.js b/src/json-utils.js index aa30bf63b..225a992e7 100644 --- a/src/json-utils.js +++ b/src/json-utils.js @@ -561,10 +561,7 @@ AFRAME.registerComponent('set-loader-from-hash', { console.error( '[set-loader-from-hash] Error trying to load scene: Resource not found.' ); - AFRAME.scenes[0].components['notify'].message( - 'Error trying to load scene: Resource not found.', - 'error' - ); + STREET.notify.errorMessage('Error trying to load scene: Resource not found.'); } }; request.onerror = function () { @@ -572,10 +569,7 @@ AFRAME.registerComponent('set-loader-from-hash', { console.error( 'Loading Error: There was a connection error during JSON loading' ); - AFRAME.scenes[0].components['notify'].message( - 'Could not fetch scene.', - 'error' - ); + STREET.notify.errorMessage('Could not fetch scene.'); }; request.send(); } @@ -646,10 +640,7 @@ function createElementsFromJSON(streetJSON) { } createEntities(streetObject.data, streetContainerEl); - AFRAME.scenes[0].components['notify'].message( - 'Scene loaded from JSON', - 'success' - ); + STREET.notify.successMessage('Scene loaded from JSON'); } // viewer widget click to paste json string of 3dstreet scene From 5c809d7829f816aa0f55fd29bf946eac6bbbdf0c Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Fri, 24 Nov 2023 22:26:42 -0300 Subject: [PATCH 02/32] save grouped assets in street-assets attribute --- src/assets.js | 44 ++++++++++++++++++++++++++++++++------------ 1 file changed, 32 insertions(+), 12 deletions(-) diff --git a/src/assets.js b/src/assets.js index 1d1e3e101..65d98b82a 100644 --- a/src/assets.js +++ b/src/assets.js @@ -241,21 +241,36 @@ function buildAssetHTML (assetUrl, categories) { ` }; + function parseHtmlToList (html) { + const parser = new DOMParser(); + const doc = parser.parseFromString(html, 'text/html'); + const mixinNodes = doc.querySelectorAll('a-mixin'); + return Array.from(mixinNodes, node => node.id ); + } + + // JSON with grouped mixin id's. Used to create grouped mixins in Editor right panel + const groupedAssetsJSON = {}; + let categoryExistsArray = Object.keys(assetsObj); + if (categories) { const categoryAttrArray = categories.split(' '); - const categoryExistsArray = Object.keys(assetsObj) - .filter(key => categoryAttrArray.includes(key)); - let assetsHTML = ''; - for (const assetName in assetsObj) { - if (categoryExistsArray.includes(assetName)) { - assetsHTML += assetsObj[assetName]; - } + categoryExistsArray = + categoryExistsArray.filter(key => categoryAttrArray.includes(key)); + } + + let assetsHTML = ''; + let assetsCategoryHTML = ''; + let mixinList = []; + for (const assetName in assetsObj) { + if (categoryExistsArray.includes(assetName)) { + const assetsCategoryHTML = assetsObj[assetName]; + assetsHTML += assetsCategoryHTML; + mixinList = parseHtmlToList(assetsCategoryHTML); + groupedAssetsJSON[assetName] = mixinList; } - return assetsHTML; - } else { - const allHTMLAssets = Object.values(assetsObj).join(''); - return allHTMLAssets; } + return [groupedAssetsJSON, assetsHTML]; + } class StreetAssets extends AFRAME.ANode { @@ -268,7 +283,12 @@ class StreetAssets extends AFRAME.ANode { const self = this; var categories = this.getAttribute('categories'); var assetUrl = this.getAttribute('url'); - this.insertAdjacentHTML('afterend', buildAssetHTML(assetUrl, categories)); + const [groupedAssetsJSON, assetsHTML] = buildAssetHTML(assetUrl, categories); + this.insertAdjacentHTML('afterend', assetsHTML); + + // add grouped assets info + const jsonAssetsString = JSON.stringify(groupedAssetsJSON); + this.setAttribute('grouped-assets', jsonAssetsString); AFRAME.ANode.prototype.load.call(self); } } From af5c2d743a682fe85da62c84432dc29b95219b95 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Sun, 26 Nov 2023 11:06:23 -0300 Subject: [PATCH 03/32] add cyclist and electric scooter animation add random cyclist models also --- src/aframe-streetmix-parsers.js | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/src/aframe-streetmix-parsers.js b/src/aframe-streetmix-parsers.js index 9b5db56c9..796bf85b6 100644 --- a/src/aframe-streetmix-parsers.js +++ b/src/aframe-streetmix-parsers.js @@ -530,7 +530,7 @@ function createOutdoorDining (length, posY) { return outdoorDiningParentEl; } -function createMicroMobilityElement (variantList, segmentType, posY = 0, length, showVehicles) { +function createMicroMobilityElement (variantList, segmentType, posY = 0, length, showVehicles, animated = false) { if (!showVehicles) { return; } @@ -538,18 +538,31 @@ function createMicroMobilityElement (variantList, segmentType, posY = 0, length, const bikeLength = 2.03; const bikeCount = getRandomIntInclusive(2, 5); + + const cyclistMixins = ['cyclist-cargo', 'cyclist1', 'cyclist2', + 'cyclist3', 'cyclist-dutch', 'cyclist-kid']; + + const countCyclist = cyclistMixins.length; + let mixinId = 'Bicycle_1'; const randPlaces = randPlacedElements(length, bikeLength, bikeCount); randPlaces.forEach(randPosZ => { const reusableObjectEl = document.createElement('a-entity'); const rotationY = (variantList[0] === 'inbound') ? 0 : 180; reusableObjectEl.setAttribute('rotation', '0 ' + rotationY + ' 0'); + reusableObjectEl.setAttribute('position', {y: posY, z: randPosZ}); + + if (animated) { + reusableObjectEl.setAttribute('animation-mixer', ''); + const speed = 5; + addLinearStreetAnimation(reusableObjectEl, speed, length, 0, posY, randPosZ, variantList[0]); + } if (segmentType === 'bike-lane') { - reusableObjectEl.setAttribute('mixin', 'Bicycle_1'); + mixinId = cyclistMixins[getRandomIntInclusive(0, countCyclist)]; } else { - reusableObjectEl.setAttribute('mixin', 'ElectricScooter_1'); + mixinId = 'ElectricScooter_1'; } - - reusableObjectEl.setAttribute('position', {y: posY, z: randPosZ}); + + reusableObjectEl.setAttribute('mixin', mixinId); microMobilityParentEl.append(reusableObjectEl); }); @@ -802,7 +815,7 @@ function processSegments (segments, showStriping, length, globalAnimated, showVe cloneMixinAsChildren({ objectMixinId: 'stencils bike-arrow', parentEl: stencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 20, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(stencilsParentEl); - segmentParentEl.append(createMicroMobilityElement(variantList, segments[i].type, elevationPosY, length, showVehicles)); + segmentParentEl.append(createMicroMobilityElement(variantList, segments[i].type, elevationPosY, length, showVehicles, globalAnimated)); } else if (segments[i].type === 'light-rail' || segments[i].type === 'streetcar') { // get the mixin id for a bus lane groundMixinId = getBusLaneMixin(variantList[1]); From c458ed8e0ad4eaf2a5905de3e997bdb8b120ce13 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Tue, 28 Nov 2023 14:52:38 -0300 Subject: [PATCH 04/32] add category attribute to mixin add categories attribute to each mixin instead of storing the list of mixins in one attribute --- src/assets.js | 31 +++++++++++++++---------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/src/assets.js b/src/assets.js index 65d98b82a..3fb70d6da 100644 --- a/src/assets.js +++ b/src/assets.js @@ -241,35 +241,37 @@ function buildAssetHTML (assetUrl, categories) { ` }; - function parseHtmlToList (html) { + function addCategoryNamesToMixins (html, categoryName) { const parser = new DOMParser(); const doc = parser.parseFromString(html, 'text/html'); const mixinNodes = doc.querySelectorAll('a-mixin'); - return Array.from(mixinNodes, node => node.id ); + mixinNodes.forEach(mixinNode => { + mixinNode.setAttribute('category', categoryName); + }); + return doc.documentElement.innerHTML; } // JSON with grouped mixin id's. Used to create grouped mixins in Editor right panel const groupedAssetsJSON = {}; - let categoryExistsArray = Object.keys(assetsObj); + let existsCategoryArray = Object.keys(assetsObj); if (categories) { + // if there is a categories attribute, then use the categories from it const categoryAttrArray = categories.split(' '); - categoryExistsArray = - categoryExistsArray.filter(key => categoryAttrArray.includes(key)); + existsCategoryArray = + existsCategoryArray.filter(key => categoryAttrArray.includes(key)); } let assetsHTML = ''; let assetsCategoryHTML = ''; let mixinList = []; - for (const assetName in assetsObj) { - if (categoryExistsArray.includes(assetName)) { - const assetsCategoryHTML = assetsObj[assetName]; - assetsHTML += assetsCategoryHTML; - mixinList = parseHtmlToList(assetsCategoryHTML); - groupedAssetsJSON[assetName] = mixinList; + for (const categoryName in assetsObj) { + if (existsCategoryArray.includes(categoryName)) { + const assetsCategoryHTML = assetsObj[categoryName]; + assetsHTML += addCategoryNamesToMixins(assetsCategoryHTML, categoryName); } } - return [groupedAssetsJSON, assetsHTML]; + return assetsHTML; } @@ -283,12 +285,9 @@ class StreetAssets extends AFRAME.ANode { const self = this; var categories = this.getAttribute('categories'); var assetUrl = this.getAttribute('url'); - const [groupedAssetsJSON, assetsHTML] = buildAssetHTML(assetUrl, categories); + const assetsHTML = buildAssetHTML(assetUrl, categories); this.insertAdjacentHTML('afterend', assetsHTML); - // add grouped assets info - const jsonAssetsString = JSON.stringify(groupedAssetsJSON); - this.setAttribute('grouped-assets', jsonAssetsString); AFRAME.ANode.prototype.load.call(self); } } From f335b3923203278c92b621d98894f08797e6cd4c Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Tue, 5 Dec 2023 23:30:17 -0300 Subject: [PATCH 05/32] return positions for not animated characters --- src/aframe-streetmix-parsers.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/aframe-streetmix-parsers.js b/src/aframe-streetmix-parsers.js index 39ab67d69..6921643f9 100644 --- a/src/aframe-streetmix-parsers.js +++ b/src/aframe-streetmix-parsers.js @@ -214,13 +214,12 @@ function createSidewalkClonedVariants (segmentWidthInMeters, density, elevationP // y = 0.2 for sidewalk elevation const placedObjectEl = document.createElement('a-entity'); let animationDirection = 'inbound'; + placedObjectEl.setAttribute('position', {x: xVal, y: yVal, z: zVal}); placedObjectEl.setAttribute('mixin', variantName); // Roughly 50% of traffic will be incoming if (Math.random() < 0.5 && direction === 'random') { placedObjectEl.setAttribute('rotation', '0 180 0'); animationDirection = 'outbound'; - } else { - placedObjectEl.setAttribute('rotation', '0 0 0'); } if (animated) { From 01766c291e7f9d2e27197fcdc7aa92a16b31c710 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Tue, 5 Dec 2023 23:37:33 -0300 Subject: [PATCH 06/32] fix logo size for svg source --- src/components/screentock.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/screentock.js b/src/components/screentock.js index 519369e1f..660e0fa39 100644 --- a/src/components/screentock.js +++ b/src/components/screentock.js @@ -82,7 +82,7 @@ AFRAME.registerComponent('screentock', { image.onload = resolve; }); - ctx.drawImage(image, 0, 0, 135, 23, 40, 40, 270, 86); + ctx.drawImage(image, 0, 0, 135, 23, 40, 40, 270, 46); } } From d1064dfa1a8608b25899b10dcf68b900c7232ae7 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Thu, 7 Dec 2023 13:12:18 -0300 Subject: [PATCH 07/32] fix dissappearing helpers in "Share scene" window --- src/components/screentock.js | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/src/components/screentock.js b/src/components/screentock.js index 519369e1f..88ca93767 100644 --- a/src/components/screentock.js +++ b/src/components/screentock.js @@ -105,11 +105,10 @@ AFRAME.registerComponent('screentock', { if (type == 'img') { imgElement.src = screenshotCanvas.toDataURL(); - return; } if (type == 'png') { downloadImageDataURL(saveFilename, screenshotCanvas.toDataURL('image/png')); - } else { + } else if (type == 'jpg') { downloadImageDataURL(saveFilename, screenshotCanvas.toDataURL('image/jpeg', 0.95)); } // show helpers From a202a681fda26cb48354513da942077023004639 Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Fri, 8 Dec 2023 16:08:33 -0800 Subject: [PATCH 08/32] add shadows to loud bike mixins --- src/assets.js | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/assets.js b/src/assets.js index 214a24624..c4b2e95f2 100644 --- a/src/assets.js +++ b/src/assets.js @@ -231,21 +231,21 @@ function buildAssetHTML (assetUrl, categories) { `, 'loud-bicycle': ` - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + ` }; if (categories) { From 91e936479216b770325f756a7d6560148f6924ec Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Fri, 8 Dec 2023 22:04:46 -0800 Subject: [PATCH 09/32] npm dist bump 0.4.5 --- dist/aframe-street-component.js | 4 ++-- package-lock.json | 4 ++-- package.json | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/dist/aframe-street-component.js b/dist/aframe-street-component.js index 08152ecc1..9160fb1c9 100644 --- a/dist/aframe-street-component.js +++ b/dist/aframe-street-component.js @@ -1,4 +1,4 @@ -!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r=e();for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}(self,(()=>(()=>{var t={631:t=>{var e=[new THREE.Vector2,new THREE.Vector2,new THREE.Vector2,new THREE.Vector2];function r(t,r,n,i){const a=1/i,o=1/n;return e[0].set(a*r,o*t+o),e[1].set(a*r,o*t),e[2].set(a*r+a,o*t),e[3].set(a*r+a,o*t+o),e}AFRAME.registerComponent("atlas-uvs",{dependencies:["geometry"],schema:{totalColumns:{type:"int",default:1},totalRows:{type:"int",default:1},column:{type:"int",default:1},row:{type:"int",default:1}},update:function(){const t=this.data,e=r(t.row-1,t.column-1,t.totalRows,t.totalColumns),n=this.el.getObject3D("mesh").geometry;var i=new Float32Array([e[0].x,e[0].y,e[3].x,e[3].y,e[1].x,e[1].y,e[2].x,e[2].y]);n.setAttribute("uv",new THREE.BufferAttribute(i,2)),n.uvsNeedUpdate=!0}}),AFRAME.registerComponent("dynamic-texture-atlas",{schema:{canvasId:{default:"dynamicAtlas"},canvasHeight:{default:1024},canvasWidth:{default:1024},debug:{default:!1},numColumns:{default:8},numRows:{default:8}},multiple:!0,init:function(){const t=this.canvas=document.createElement("canvas");t.id=this.data.canvasId,t.height=this.data.canvasHeight,t.width=this.data.canvasWidth,this.ctx=t.getContext("2d"),document.body.appendChild(t),this.data.debug&&(t.style.left=0,t.style.top=0,t.style.position="fixed",t.style.zIndex=9999999999)},drawTexture:function(t,e,n,i,a){const o=this.canvas,s=this.data;t.complete||(t.onload=()=>{this.drawTexture(t,e,n)});const c=a||o.height/s.numRows,u=i||o.width/s.numColumns;return this.ctx.drawImage(t,u*e,u*n,u,c),r(e,n,s.numRows,s.numColumns)}}),t.exports.getGridUvs=r},5236:(t,e,r)=>{"use strict";if(r(412),r(7588),r(8327),r.g._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");r.g._babelPolyfill=!0;function n(t,e,r){t[e]||Object.defineProperty(t,e,{writable:!0,configurable:!0,value:r})}n(String.prototype,"padLeft","".padStart),n(String.prototype,"padRight","".padEnd),"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach((function(t){[][t]&&n(Array,t,Function.call.bind([][t]))}))},8327:(t,e,r)=>{r(9217),t.exports=r(7984).RegExp.escape},8304:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},5811:(t,e,r)=>{var n=r(9519);t.exports=function(t,e){if("number"!=typeof t&&"Number"!=n(t))throw TypeError(e);return+t}},6224:(t,e,r)=>{var n=r(8076)("unscopables"),i=Array.prototype;null==i[n]&&r(9247)(i,n,{}),t.exports=function(t){i[n][t]=!0}},2774:(t,e,r)=>{"use strict";var n=r(5813)(!0);t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},264:t=>{t.exports=function(t,e,r,n){if(!(t instanceof e)||void 0!==n&&n in t)throw TypeError(r+": incorrect invocation!");return t}},9204:(t,e,r)=>{var n=r(9603);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},8734:(t,e,r)=>{"use strict";var n=r(6415),i=r(7149),a=r(1773);t.exports=[].copyWithin||function(t,e){var r=n(this),o=a(r.length),s=i(t,o),c=i(e,o),u=arguments.length>2?arguments[2]:void 0,l=Math.min((void 0===u?o:i(u,o))-c,o-s),d=1;for(c0;)c in r?r[s]=r[c]:delete r[s],s+=d,c+=d;return r}},6436:(t,e,r)=>{"use strict";var n=r(6415),i=r(7149),a=r(1773);t.exports=function(t){for(var e=n(this),r=a(e.length),o=arguments.length,s=i(o>1?arguments[1]:void 0,r),c=o>2?arguments[2]:void 0,u=void 0===c?r:i(c,r);u>s;)e[s++]=t;return e}},9349:(t,e,r)=>{var n=r(1725);t.exports=function(t,e){var r=[];return n(t,!1,r.push,r,e),r}},3997:(t,e,r)=>{var n=r(3057),i=r(1773),a=r(7149);t.exports=function(t){return function(e,r,o){var s,c=n(e),u=i(c.length),l=a(o,u);if(t&&r!=r){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===r)return t||l||0;return!t&&-1}}},2026:(t,e,r)=>{var n=r(9124),i=r(3424),a=r(6415),o=r(1773),s=r(4164);t.exports=function(t,e){var r=1==t,c=2==t,u=3==t,l=4==t,d=6==t,f=5==t||d,h=e||s;return function(e,s,p){for(var m,g,v=a(e),y=i(v),b=n(s,p,3),x=o(y.length),w=0,A=r?h(e,x):c?h(e,0):void 0;x>w;w++)if((f||w in y)&&(g=b(m=y[w],w,v),t))if(r)A[w]=g;else if(g)switch(t){case 3:return!0;case 5:return m;case 6:return w;case 2:A.push(m)}else if(l)return!1;return d?-1:u||l?l:A}}},1457:(t,e,r)=>{var n=r(8304),i=r(6415),a=r(3424),o=r(1773);t.exports=function(t,e,r,s,c){n(e);var u=i(t),l=a(u),d=o(u.length),f=c?d-1:0,h=c?-1:1;if(r<2)for(;;){if(f in l){s=l[f],f+=h;break}if(f+=h,c?f<0:d<=f)throw TypeError("Reduce of empty array with no initial value")}for(;c?f>=0:d>f;f+=h)f in l&&(s=e(s,l[f],f,u));return s}},5720:(t,e,r)=>{var n=r(9603),i=r(7375),a=r(8076)("species");t.exports=function(t){var e;return i(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!i(e.prototype)||(e=void 0),n(e)&&null===(e=e[a])&&(e=void 0)),void 0===e?Array:e}},4164:(t,e,r)=>{var n=r(5720);t.exports=function(t,e){return new(n(t))(e)}},6371:(t,e,r)=>{"use strict";var n=r(8304),i=r(9603),a=r(3436),o=[].slice,s={};t.exports=Function.bind||function(t){var e=n(this),r=o.call(arguments,1),c=function(){var n=r.concat(o.call(arguments));return this instanceof c?function(t,e,r){if(!(e in s)){for(var n=[],i=0;i{var n=r(9519),i=r(8076)("toStringTag"),a="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,o;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),i))?r:a?n(e):"Object"==(o=n(e))&&"function"==typeof e.callee?"Arguments":o}},9519:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},947:(t,e,r)=>{"use strict";var n=r(5234).f,i=r(4958),a=r(4584),o=r(9124),s=r(264),c=r(1725),u=r(7091),l=r(4165),d=r(6538),f=r(1329),h=r(4787).fastKey,p=r(2023),m=f?"_s":"size",g=function(t,e){var r,n=h(e);if("F"!==n)return t._i[n];for(r=t._f;r;r=r.n)if(r.k==e)return r};t.exports={getConstructor:function(t,e,r,u){var l=t((function(t,n){s(t,l,e,"_i"),t._t=e,t._i=i(null),t._f=void 0,t._l=void 0,t[m]=0,null!=n&&c(n,r,t[u],t)}));return a(l.prototype,{clear:function(){for(var t=p(this,e),r=t._i,n=t._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete r[n.i];t._f=t._l=void 0,t[m]=0},delete:function(t){var r=p(this,e),n=g(r,t);if(n){var i=n.n,a=n.p;delete r._i[n.i],n.r=!0,a&&(a.n=i),i&&(i.p=a),r._f==n&&(r._f=i),r._l==n&&(r._l=a),r[m]--}return!!n},forEach:function(t){p(this,e);for(var r,n=o(t,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(n(r.v,r.k,this);r&&r.r;)r=r.p},has:function(t){return!!g(p(this,e),t)}}),f&&n(l.prototype,"size",{get:function(){return p(this,e)[m]}}),l},def:function(t,e,r){var n,i,a=g(t,e);return a?a.v=r:(t._l=a={i:i=h(e,!0),k:e,v:r,p:n=t._l,n:void 0,r:!1},t._f||(t._f=a),n&&(n.n=a),t[m]++,"F"!==i&&(t._i[i]=a)),t},getEntry:g,setStrong:function(t,e,r){u(t,e,(function(t,r){this._t=p(t,e),this._k=r,this._l=void 0}),(function(){for(var t=this,e=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?l(0,"keys"==e?r.k:"values"==e?r.v:[r.k,r.v]):(t._t=void 0,l(1))}),r?"entries":"values",!r,!0),d(e)}}},5741:(t,e,r)=>{var n=r(9382),i=r(9349);t.exports=function(t){return function(){if(n(this)!=t)throw TypeError(t+"#toJSON isn't generic");return i(this)}}},5268:(t,e,r)=>{"use strict";var n=r(4584),i=r(4787).getWeak,a=r(9204),o=r(9603),s=r(264),c=r(1725),u=r(2026),l=r(1262),d=r(2023),f=u(5),h=u(6),p=0,m=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},v=function(t,e){return f(t.a,(function(t){return t[0]===e}))};g.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var r=v(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=h(this.a,(function(e){return e[0]===t}));return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,r,a){var u=t((function(t,n){s(t,u,e,"_i"),t._t=e,t._i=p++,t._l=void 0,null!=n&&c(n,r,t[a],t)}));return n(u.prototype,{delete:function(t){if(!o(t))return!1;var r=i(t);return!0===r?m(d(this,e)).delete(t):r&&l(r,this._i)&&delete r[this._i]},has:function(t){if(!o(t))return!1;var r=i(t);return!0===r?m(d(this,e)).has(t):r&&l(r,this._i)}}),u},def:function(t,e,r){var n=i(a(e),!0);return!0===n?m(t).set(e,r):n[t._i]=r,t},ufstore:m}},1405:(t,e,r)=>{"use strict";var n=r(2276),i=r(3350),a=r(1951),o=r(4584),s=r(4787),c=r(1725),u=r(264),l=r(9603),d=r(4308),f=r(3490),h=r(6668),p=r(1906);t.exports=function(t,e,r,m,g,v){var y=n[t],b=y,x=g?"set":"add",w=b&&b.prototype,A={},_=function(t){var e=w[t];a(w,t,"delete"==t||"has"==t?function(t){return!(v&&!l(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!l(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,r){return e.call(this,0===t?0:t,r),this})};if("function"==typeof b&&(v||w.forEach&&!d((function(){(new b).entries().next()})))){var E=new b,S=E[x](v?{}:-0,1)!=E,M=d((function(){E.has(1)})),k=f((function(t){new b(t)})),O=!v&&d((function(){for(var t=new b,e=5;e--;)t[x](e,e);return!t.has(-0)}));k||((b=e((function(e,r){u(e,b,t);var n=p(new y,e,b);return null!=r&&c(r,g,n[x],n),n}))).prototype=w,w.constructor=b),(M||O)&&(_("delete"),_("has"),g&&_("get")),(O||S)&&_(x),v&&w.clear&&delete w.clear}else b=m.getConstructor(e,t,g,x),o(b.prototype,r),s.NEED=!0;return h(b,t),A[t]=b,i(i.G+i.W+i.F*(b!=y),A),v||m.setStrong(b,t,g),b}},7984:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},2122:(t,e,r)=>{"use strict";var n=r(5234),i=r(9933);t.exports=function(t,e,r){e in t?n.f(t,e,i(0,r)):t[e]=r}},9124:(t,e,r)=>{var n=r(8304);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,i){return t.call(e,r,n,i)}}return function(){return t.apply(e,arguments)}}},4041:(t,e,r)=>{"use strict";var n=r(4308),i=Date.prototype.getTime,a=Date.prototype.toISOString,o=function(t){return t>9?t:"0"+t};t.exports=n((function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-50000000000001))}))||!n((function(){a.call(new Date(NaN))}))?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,e=t.getUTCFullYear(),r=t.getUTCMilliseconds(),n=e<0?"-":e>9999?"+":"";return n+("00000"+Math.abs(e)).slice(n?-6:-4)+"-"+o(t.getUTCMonth()+1)+"-"+o(t.getUTCDate())+"T"+o(t.getUTCHours())+":"+o(t.getUTCMinutes())+":"+o(t.getUTCSeconds())+"."+(r>99?r:"0"+o(r))+"Z"}:a},768:(t,e,r)=>{"use strict";var n=r(9204),i=r(4276),a="number";t.exports=function(t){if("string"!==t&&t!==a&&"default"!==t)throw TypeError("Incorrect hint");return i(n(this),t!=a)}},2099:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},1329:(t,e,r)=>{t.exports=!r(4308)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},7233:(t,e,r)=>{var n=r(9603),i=r(2276).document,a=n(i)&&n(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},120:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},5084:(t,e,r)=>{var n=r(1720),i=r(1259),a=r(6418);t.exports=function(t){var e=n(t),r=i.f;if(r)for(var o,s=r(t),c=a.f,u=0;s.length>u;)c.call(t,o=s[u++])&&e.push(o);return e}},3350:(t,e,r)=>{var n=r(2276),i=r(7984),a=r(9247),o=r(1951),s=r(9124),c="prototype",u=function(t,e,r){var l,d,f,h,p=t&u.F,m=t&u.G,g=t&u.S,v=t&u.P,y=t&u.B,b=m?n:g?n[e]||(n[e]={}):(n[e]||{})[c],x=m?i:i[e]||(i[e]={}),w=x[c]||(x[c]={});for(l in m&&(r=e),r)f=((d=!p&&b&&void 0!==b[l])?b:r)[l],h=y&&d?s(f,n):v&&"function"==typeof f?s(Function.call,f):f,b&&o(b,l,f,t&u.U),x[l]!=f&&a(x,l,h),v&&w[l]!=f&&(w[l]=f)};n.core=i,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},2381:(t,e,r)=>{var n=r(8076)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[n]=!1,!"/./"[t](e)}catch(t){}}return!0}},4308:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},1658:(t,e,r)=>{"use strict";r(5761);var n=r(1951),i=r(9247),a=r(4308),o=r(2099),s=r(8076),c=r(3323),u=s("species"),l=!a((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),d=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,e,r){var f=s(t),h=!a((function(){var e={};return e[f]=function(){return 7},7!=""[t](e)})),p=h?!a((function(){var e=!1,r=/a/;return r.exec=function(){return e=!0,null},"split"===t&&(r.constructor={},r.constructor[u]=function(){return r}),r[f](""),!e})):void 0;if(!h||!p||"replace"===t&&!l||"split"===t&&!d){var m=/./[f],g=r(o,f,""[t],(function(t,e,r,n,i){return e.exec===c?h&&!i?{done:!0,value:m.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}})),v=g[0],y=g[1];n(String.prototype,t,v),i(RegExp.prototype,f,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)})}}},9388:(t,e,r)=>{"use strict";var n=r(9204);t.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},7849:(t,e,r)=>{"use strict";var n=r(7375),i=r(9603),a=r(1773),o=r(9124),s=r(8076)("isConcatSpreadable");t.exports=function t(e,r,c,u,l,d,f,h){for(var p,m,g=l,v=0,y=!!f&&o(f,h,3);v0)g=t(e,r,p,a(p.length),g,d-1)-1;else{if(g>=9007199254740991)throw TypeError();e[g]=p}g++}v++}return g}},1725:(t,e,r)=>{var n=r(9124),i=r(228),a=r(99),o=r(9204),s=r(1773),c=r(8837),u={},l={},d=t.exports=function(t,e,r,d,f){var h,p,m,g,v=f?function(){return t}:c(t),y=n(r,d,e?2:1),b=0;if("function"!=typeof v)throw TypeError(t+" is not iterable!");if(a(v)){for(h=s(t.length);h>b;b++)if((g=e?y(o(p=t[b])[0],p[1]):y(t[b]))===u||g===l)return g}else for(m=v.call(t);!(p=m.next()).done;)if((g=i(m,y,p.value,e))===u||g===l)return g};d.BREAK=u,d.RETURN=l},7650:(t,e,r)=>{t.exports=r(3259)("native-function-to-string",Function.toString)},2276:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},1262:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},9247:(t,e,r)=>{var n=r(5234),i=r(9933);t.exports=r(1329)?function(t,e,r){return n.f(t,e,i(1,r))}:function(t,e,r){return t[e]=r,t}},1847:(t,e,r)=>{var n=r(2276).document;t.exports=n&&n.documentElement},706:(t,e,r)=>{t.exports=!r(1329)&&!r(4308)((function(){return 7!=Object.defineProperty(r(7233)("div"),"a",{get:function(){return 7}}).a}))},1906:(t,e,r)=>{var n=r(9603),i=r(8860).set;t.exports=function(t,e,r){var a,o=e.constructor;return o!==r&&"function"==typeof o&&(a=o.prototype)!==r.prototype&&n(a)&&i&&i(t,a),t}},3436:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},3424:(t,e,r)=>{var n=r(9519);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99:(t,e,r)=>{var n=r(479),i=r(8076)("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||a[i]===t)}},7375:(t,e,r)=>{var n=r(9519);t.exports=Array.isArray||function(t){return"Array"==n(t)}},8400:(t,e,r)=>{var n=r(9603),i=Math.floor;t.exports=function(t){return!n(t)&&isFinite(t)&&i(t)===t}},9603:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},5119:(t,e,r)=>{var n=r(9603),i=r(9519),a=r(8076)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==i(t))}},228:(t,e,r)=>{var n=r(9204);t.exports=function(t,e,r,i){try{return i?e(n(r)[0],r[1]):e(r)}catch(e){var a=t.return;throw void 0!==a&&n(a.call(t)),e}}},4434:(t,e,r)=>{"use strict";var n=r(4958),i=r(9933),a=r(6668),o={};r(9247)(o,r(8076)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(o,{next:i(1,r)}),a(t,e+" Iterator")}},7091:(t,e,r)=>{"use strict";var n=r(5020),i=r(3350),a=r(1951),o=r(9247),s=r(479),c=r(4434),u=r(6668),l=r(9565),d=r(8076)("iterator"),f=!([].keys&&"next"in[].keys()),h="keys",p="values",m=function(){return this};t.exports=function(t,e,r,g,v,y,b){c(r,e,g);var x,w,A,_=function(t){if(!f&&t in k)return k[t];switch(t){case h:case p:return function(){return new r(this,t)}}return function(){return new r(this,t)}},E=e+" Iterator",S=v==p,M=!1,k=t.prototype,O=k[d]||k["@@iterator"]||v&&k[v],R=O||_(v),C=v?S?_("entries"):R:void 0,j="Array"==e&&k.entries||O;if(j&&(A=l(j.call(new t)))!==Object.prototype&&A.next&&(u(A,E,!0),n||"function"==typeof A[d]||o(A,d,m)),S&&O&&O.name!==p&&(M=!0,R=function(){return O.call(this)}),n&&!b||!f&&!M&&k[d]||o(k,d,R),s[e]=R,s[E]=m,v)if(x={values:S?R:_(p),keys:y?R:_(h),entries:C},b)for(w in x)w in k||a(k,w,x[w]);else i(i.P+i.F*(f||M),e,x);return x}},3490:(t,e,r)=>{var n=r(8076)("iterator"),i=!1;try{var a=[7][n]();a.return=function(){i=!0},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!i)return!1;var r=!1;try{var a=[7],o=a[n]();o.next=function(){return{done:r=!0}},a[n]=function(){return o},t(a)}catch(t){}return r}},4165:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},479:t=>{t.exports={}},5020:t=>{t.exports=!1},9372:t=>{var e=Math.expm1;t.exports=!e||e(10)>22025.465794806718||e(10)<22025.465794806718||-2e-17!=e(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:e},5600:(t,e,r)=>{var n=r(7083),i=Math.pow,a=i(2,-52),o=i(2,-23),s=i(2,127)*(2-o),c=i(2,-126);t.exports=Math.fround||function(t){var e,r,i=Math.abs(t),u=n(t);return is||r!=r?u*(1/0):u*r}},5386:t=>{t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},6030:t=>{t.exports=Math.scale||function(t,e,r,n,i){return 0===arguments.length||t!=t||e!=e||r!=r||n!=n||i!=i?NaN:t===1/0||t===-1/0?t:(t-e)*(i-n)/(r-e)+n}},7083:t=>{t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},4787:(t,e,r)=>{var n=r(6835)("meta"),i=r(9603),a=r(1262),o=r(5234).f,s=0,c=Object.isExtensible||function(){return!0},u=!r(4308)((function(){return c(Object.preventExtensions({}))})),l=function(t){o(t,n,{value:{i:"O"+ ++s,w:{}}})},d=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!a(t,n)){if(!c(t))return"F";if(!e)return"E";l(t)}return t[n].i},getWeak:function(t,e){if(!a(t,n)){if(!c(t))return!0;if(!e)return!1;l(t)}return t[n].w},onFreeze:function(t){return u&&d.NEED&&c(t)&&!a(t,n)&&l(t),t}}},9966:(t,e,r)=>{var n=r(468),i=r(3350),a=r(3259)("metadata"),o=a.store||(a.store=new(r(7729))),s=function(t,e,r){var i=o.get(t);if(!i){if(!r)return;o.set(t,i=new n)}var a=i.get(e);if(!a){if(!r)return;i.set(e,a=new n)}return a};t.exports={store:o,map:s,has:function(t,e,r){var n=s(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=s(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){s(r,n,!0).set(t,e)},keys:function(t,e){var r=s(t,e,!1),n=[];return r&&r.forEach((function(t,e){n.push(e)})),n},key:function(t){return void 0===t||"symbol"==typeof t?t:String(t)},exp:function(t){i(i.S,"Reflect",t)}}},6787:(t,e,r)=>{var n=r(2276),i=r(9770).set,a=n.MutationObserver||n.WebKitMutationObserver,o=n.process,s=n.Promise,c="process"==r(9519)(o);t.exports=function(){var t,e,r,u=function(){var n,i;for(c&&(n=o.domain)&&n.exit();t;){i=t.fn,t=t.next;try{i()}catch(n){throw t?r():e=void 0,n}}e=void 0,n&&n.enter()};if(c)r=function(){o.nextTick(u)};else if(!a||n.navigator&&n.navigator.standalone)if(s&&s.resolve){var l=s.resolve(void 0);r=function(){l.then(u)}}else r=function(){i.call(n,u)};else{var d=!0,f=document.createTextNode("");new a(u).observe(f,{characterData:!0}),r=function(){f.data=d=!d}}return function(n){var i={fn:n,next:void 0};e&&(e.next=i),t||(t=i,r()),e=i}}},8176:(t,e,r)=>{"use strict";var n=r(8304);function i(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)}t.exports.f=function(t){return new i(t)}},7288:(t,e,r)=>{"use strict";var n=r(1329),i=r(1720),a=r(1259),o=r(6418),s=r(6415),c=r(3424),u=Object.assign;t.exports=!u||r(4308)((function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach((function(t){e[t]=t})),7!=u({},t)[r]||Object.keys(u({},e)).join("")!=n}))?function(t,e){for(var r=s(t),u=arguments.length,l=1,d=a.f,f=o.f;u>l;)for(var h,p=c(arguments[l++]),m=d?i(p).concat(d(p)):i(p),g=m.length,v=0;g>v;)h=m[v++],n&&!f.call(p,h)||(r[h]=p[h]);return r}:u},4958:(t,e,r)=>{var n=r(9204),i=r(2305),a=r(120),o=r(1606)("IE_PROTO"),s=function(){},c="prototype",u=function(){var t,e=r(7233)("iframe"),n=a.length;for(e.style.display="none",r(1847).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write(" + @@ -13,9 +13,6 @@ - - - 3DStreet @@ -113,7 +110,7 @@ geometry="primitive: plane; width: 512; height: 512;" material="color: #ffffff; shader: flat; side: both; transparent: true;" mapbox="center: -122.417490, 37.765190; zoom: 18; - accessToken: pk.eyJ1IjoibWF0dHJlIiwiYSI6IjRpa3ItcWcifQ.s0AGgKi0ai23K5OJvkEFnA; + accessToken: pk.eyJ1Ijoia2llcmFuZmFyciIsImEiOiJjazB0NWh2YncwOW9rM25sd2p0YTlxemk2In0.mLl4sNGDFbz_QXk0GIK02Q; style: mapbox://styles/mapbox/satellite-streets-v11; pxToWorldRatio: 4;" position="-7 -1 -2" From 14a78b1bc99db4dfae82793f5e41d6c87150ed3f Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Wed, 27 Dec 2023 16:42:01 -0800 Subject: [PATCH 14/32] dist bump --- dist/aframe-street-component.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/aframe-street-component.js b/dist/aframe-street-component.js index 9160fb1c9..764ef569b 100644 --- a/dist/aframe-street-component.js +++ b/dist/aframe-street-component.js @@ -1,4 +1,4 @@ -!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r=e();for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}(self,(()=>(()=>{var t={631:t=>{var e=[new THREE.Vector2,new THREE.Vector2,new THREE.Vector2,new THREE.Vector2];function r(t,r,n,i){const a=1/i,o=1/n;return e[0].set(a*r,o*t+o),e[1].set(a*r,o*t),e[2].set(a*r+a,o*t),e[3].set(a*r+a,o*t+o),e}AFRAME.registerComponent("atlas-uvs",{dependencies:["geometry"],schema:{totalColumns:{type:"int",default:1},totalRows:{type:"int",default:1},column:{type:"int",default:1},row:{type:"int",default:1}},update:function(){const t=this.data,e=r(t.row-1,t.column-1,t.totalRows,t.totalColumns),n=this.el.getObject3D("mesh").geometry;var i=new Float32Array([e[0].x,e[0].y,e[3].x,e[3].y,e[1].x,e[1].y,e[2].x,e[2].y]);n.setAttribute("uv",new THREE.BufferAttribute(i,2)),n.uvsNeedUpdate=!0}}),AFRAME.registerComponent("dynamic-texture-atlas",{schema:{canvasId:{default:"dynamicAtlas"},canvasHeight:{default:1024},canvasWidth:{default:1024},debug:{default:!1},numColumns:{default:8},numRows:{default:8}},multiple:!0,init:function(){const t=this.canvas=document.createElement("canvas");t.id=this.data.canvasId,t.height=this.data.canvasHeight,t.width=this.data.canvasWidth,this.ctx=t.getContext("2d"),document.body.appendChild(t),this.data.debug&&(t.style.left=0,t.style.top=0,t.style.position="fixed",t.style.zIndex=9999999999)},drawTexture:function(t,e,n,i,a){const o=this.canvas,s=this.data;t.complete||(t.onload=()=>{this.drawTexture(t,e,n)});const c=a||o.height/s.numRows,u=i||o.width/s.numColumns;return this.ctx.drawImage(t,u*e,u*n,u,c),r(e,n,s.numRows,s.numColumns)}}),t.exports.getGridUvs=r},5236:(t,e,r)=>{"use strict";if(r(412),r(7588),r(8327),r.g._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");r.g._babelPolyfill=!0;function n(t,e,r){t[e]||Object.defineProperty(t,e,{writable:!0,configurable:!0,value:r})}n(String.prototype,"padLeft","".padStart),n(String.prototype,"padRight","".padEnd),"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach((function(t){[][t]&&n(Array,t,Function.call.bind([][t]))}))},8327:(t,e,r)=>{r(9217),t.exports=r(7984).RegExp.escape},8304:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},5811:(t,e,r)=>{var n=r(9519);t.exports=function(t,e){if("number"!=typeof t&&"Number"!=n(t))throw TypeError(e);return+t}},6224:(t,e,r)=>{var n=r(8076)("unscopables"),i=Array.prototype;null==i[n]&&r(9247)(i,n,{}),t.exports=function(t){i[n][t]=!0}},2774:(t,e,r)=>{"use strict";var n=r(5813)(!0);t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},264:t=>{t.exports=function(t,e,r,n){if(!(t instanceof e)||void 0!==n&&n in t)throw TypeError(r+": incorrect invocation!");return t}},9204:(t,e,r)=>{var n=r(9603);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},8734:(t,e,r)=>{"use strict";var n=r(6415),i=r(7149),a=r(1773);t.exports=[].copyWithin||function(t,e){var r=n(this),o=a(r.length),s=i(t,o),c=i(e,o),u=arguments.length>2?arguments[2]:void 0,l=Math.min((void 0===u?o:i(u,o))-c,o-s),d=1;for(c0;)c in r?r[s]=r[c]:delete r[s],s+=d,c+=d;return r}},6436:(t,e,r)=>{"use strict";var n=r(6415),i=r(7149),a=r(1773);t.exports=function(t){for(var e=n(this),r=a(e.length),o=arguments.length,s=i(o>1?arguments[1]:void 0,r),c=o>2?arguments[2]:void 0,u=void 0===c?r:i(c,r);u>s;)e[s++]=t;return e}},9349:(t,e,r)=>{var n=r(1725);t.exports=function(t,e){var r=[];return n(t,!1,r.push,r,e),r}},3997:(t,e,r)=>{var n=r(3057),i=r(1773),a=r(7149);t.exports=function(t){return function(e,r,o){var s,c=n(e),u=i(c.length),l=a(o,u);if(t&&r!=r){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===r)return t||l||0;return!t&&-1}}},2026:(t,e,r)=>{var n=r(9124),i=r(3424),a=r(6415),o=r(1773),s=r(4164);t.exports=function(t,e){var r=1==t,c=2==t,u=3==t,l=4==t,d=6==t,f=5==t||d,h=e||s;return function(e,s,p){for(var m,g,v=a(e),y=i(v),b=n(s,p,3),x=o(y.length),w=0,A=r?h(e,x):c?h(e,0):void 0;x>w;w++)if((f||w in y)&&(g=b(m=y[w],w,v),t))if(r)A[w]=g;else if(g)switch(t){case 3:return!0;case 5:return m;case 6:return w;case 2:A.push(m)}else if(l)return!1;return d?-1:u||l?l:A}}},1457:(t,e,r)=>{var n=r(8304),i=r(6415),a=r(3424),o=r(1773);t.exports=function(t,e,r,s,c){n(e);var u=i(t),l=a(u),d=o(u.length),f=c?d-1:0,h=c?-1:1;if(r<2)for(;;){if(f in l){s=l[f],f+=h;break}if(f+=h,c?f<0:d<=f)throw TypeError("Reduce of empty array with no initial value")}for(;c?f>=0:d>f;f+=h)f in l&&(s=e(s,l[f],f,u));return s}},5720:(t,e,r)=>{var n=r(9603),i=r(7375),a=r(8076)("species");t.exports=function(t){var e;return i(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!i(e.prototype)||(e=void 0),n(e)&&null===(e=e[a])&&(e=void 0)),void 0===e?Array:e}},4164:(t,e,r)=>{var n=r(5720);t.exports=function(t,e){return new(n(t))(e)}},6371:(t,e,r)=>{"use strict";var n=r(8304),i=r(9603),a=r(3436),o=[].slice,s={};t.exports=Function.bind||function(t){var e=n(this),r=o.call(arguments,1),c=function(){var n=r.concat(o.call(arguments));return this instanceof c?function(t,e,r){if(!(e in s)){for(var n=[],i=0;i{var n=r(9519),i=r(8076)("toStringTag"),a="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,o;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),i))?r:a?n(e):"Object"==(o=n(e))&&"function"==typeof e.callee?"Arguments":o}},9519:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},947:(t,e,r)=>{"use strict";var n=r(5234).f,i=r(4958),a=r(4584),o=r(9124),s=r(264),c=r(1725),u=r(7091),l=r(4165),d=r(6538),f=r(1329),h=r(4787).fastKey,p=r(2023),m=f?"_s":"size",g=function(t,e){var r,n=h(e);if("F"!==n)return t._i[n];for(r=t._f;r;r=r.n)if(r.k==e)return r};t.exports={getConstructor:function(t,e,r,u){var l=t((function(t,n){s(t,l,e,"_i"),t._t=e,t._i=i(null),t._f=void 0,t._l=void 0,t[m]=0,null!=n&&c(n,r,t[u],t)}));return a(l.prototype,{clear:function(){for(var t=p(this,e),r=t._i,n=t._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete r[n.i];t._f=t._l=void 0,t[m]=0},delete:function(t){var r=p(this,e),n=g(r,t);if(n){var i=n.n,a=n.p;delete r._i[n.i],n.r=!0,a&&(a.n=i),i&&(i.p=a),r._f==n&&(r._f=i),r._l==n&&(r._l=a),r[m]--}return!!n},forEach:function(t){p(this,e);for(var r,n=o(t,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(n(r.v,r.k,this);r&&r.r;)r=r.p},has:function(t){return!!g(p(this,e),t)}}),f&&n(l.prototype,"size",{get:function(){return p(this,e)[m]}}),l},def:function(t,e,r){var n,i,a=g(t,e);return a?a.v=r:(t._l=a={i:i=h(e,!0),k:e,v:r,p:n=t._l,n:void 0,r:!1},t._f||(t._f=a),n&&(n.n=a),t[m]++,"F"!==i&&(t._i[i]=a)),t},getEntry:g,setStrong:function(t,e,r){u(t,e,(function(t,r){this._t=p(t,e),this._k=r,this._l=void 0}),(function(){for(var t=this,e=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?l(0,"keys"==e?r.k:"values"==e?r.v:[r.k,r.v]):(t._t=void 0,l(1))}),r?"entries":"values",!r,!0),d(e)}}},5741:(t,e,r)=>{var n=r(9382),i=r(9349);t.exports=function(t){return function(){if(n(this)!=t)throw TypeError(t+"#toJSON isn't generic");return i(this)}}},5268:(t,e,r)=>{"use strict";var n=r(4584),i=r(4787).getWeak,a=r(9204),o=r(9603),s=r(264),c=r(1725),u=r(2026),l=r(1262),d=r(2023),f=u(5),h=u(6),p=0,m=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},v=function(t,e){return f(t.a,(function(t){return t[0]===e}))};g.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var r=v(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=h(this.a,(function(e){return e[0]===t}));return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,r,a){var u=t((function(t,n){s(t,u,e,"_i"),t._t=e,t._i=p++,t._l=void 0,null!=n&&c(n,r,t[a],t)}));return n(u.prototype,{delete:function(t){if(!o(t))return!1;var r=i(t);return!0===r?m(d(this,e)).delete(t):r&&l(r,this._i)&&delete r[this._i]},has:function(t){if(!o(t))return!1;var r=i(t);return!0===r?m(d(this,e)).has(t):r&&l(r,this._i)}}),u},def:function(t,e,r){var n=i(a(e),!0);return!0===n?m(t).set(e,r):n[t._i]=r,t},ufstore:m}},1405:(t,e,r)=>{"use strict";var n=r(2276),i=r(3350),a=r(1951),o=r(4584),s=r(4787),c=r(1725),u=r(264),l=r(9603),d=r(4308),f=r(3490),h=r(6668),p=r(1906);t.exports=function(t,e,r,m,g,v){var y=n[t],b=y,x=g?"set":"add",w=b&&b.prototype,A={},_=function(t){var e=w[t];a(w,t,"delete"==t||"has"==t?function(t){return!(v&&!l(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!l(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,r){return e.call(this,0===t?0:t,r),this})};if("function"==typeof b&&(v||w.forEach&&!d((function(){(new b).entries().next()})))){var E=new b,S=E[x](v?{}:-0,1)!=E,M=d((function(){E.has(1)})),k=f((function(t){new b(t)})),O=!v&&d((function(){for(var t=new b,e=5;e--;)t[x](e,e);return!t.has(-0)}));k||((b=e((function(e,r){u(e,b,t);var n=p(new y,e,b);return null!=r&&c(r,g,n[x],n),n}))).prototype=w,w.constructor=b),(M||O)&&(_("delete"),_("has"),g&&_("get")),(O||S)&&_(x),v&&w.clear&&delete w.clear}else b=m.getConstructor(e,t,g,x),o(b.prototype,r),s.NEED=!0;return h(b,t),A[t]=b,i(i.G+i.W+i.F*(b!=y),A),v||m.setStrong(b,t,g),b}},7984:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},2122:(t,e,r)=>{"use strict";var n=r(5234),i=r(9933);t.exports=function(t,e,r){e in t?n.f(t,e,i(0,r)):t[e]=r}},9124:(t,e,r)=>{var n=r(8304);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,i){return t.call(e,r,n,i)}}return function(){return t.apply(e,arguments)}}},4041:(t,e,r)=>{"use strict";var n=r(4308),i=Date.prototype.getTime,a=Date.prototype.toISOString,o=function(t){return t>9?t:"0"+t};t.exports=n((function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-50000000000001))}))||!n((function(){a.call(new Date(NaN))}))?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,e=t.getUTCFullYear(),r=t.getUTCMilliseconds(),n=e<0?"-":e>9999?"+":"";return n+("00000"+Math.abs(e)).slice(n?-6:-4)+"-"+o(t.getUTCMonth()+1)+"-"+o(t.getUTCDate())+"T"+o(t.getUTCHours())+":"+o(t.getUTCMinutes())+":"+o(t.getUTCSeconds())+"."+(r>99?r:"0"+o(r))+"Z"}:a},768:(t,e,r)=>{"use strict";var n=r(9204),i=r(4276),a="number";t.exports=function(t){if("string"!==t&&t!==a&&"default"!==t)throw TypeError("Incorrect hint");return i(n(this),t!=a)}},2099:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},1329:(t,e,r)=>{t.exports=!r(4308)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},7233:(t,e,r)=>{var n=r(9603),i=r(2276).document,a=n(i)&&n(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},120:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},5084:(t,e,r)=>{var n=r(1720),i=r(1259),a=r(6418);t.exports=function(t){var e=n(t),r=i.f;if(r)for(var o,s=r(t),c=a.f,u=0;s.length>u;)c.call(t,o=s[u++])&&e.push(o);return e}},3350:(t,e,r)=>{var n=r(2276),i=r(7984),a=r(9247),o=r(1951),s=r(9124),c="prototype",u=function(t,e,r){var l,d,f,h,p=t&u.F,m=t&u.G,g=t&u.S,v=t&u.P,y=t&u.B,b=m?n:g?n[e]||(n[e]={}):(n[e]||{})[c],x=m?i:i[e]||(i[e]={}),w=x[c]||(x[c]={});for(l in m&&(r=e),r)f=((d=!p&&b&&void 0!==b[l])?b:r)[l],h=y&&d?s(f,n):v&&"function"==typeof f?s(Function.call,f):f,b&&o(b,l,f,t&u.U),x[l]!=f&&a(x,l,h),v&&w[l]!=f&&(w[l]=f)};n.core=i,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},2381:(t,e,r)=>{var n=r(8076)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[n]=!1,!"/./"[t](e)}catch(t){}}return!0}},4308:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},1658:(t,e,r)=>{"use strict";r(5761);var n=r(1951),i=r(9247),a=r(4308),o=r(2099),s=r(8076),c=r(3323),u=s("species"),l=!a((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),d=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,e,r){var f=s(t),h=!a((function(){var e={};return e[f]=function(){return 7},7!=""[t](e)})),p=h?!a((function(){var e=!1,r=/a/;return r.exec=function(){return e=!0,null},"split"===t&&(r.constructor={},r.constructor[u]=function(){return r}),r[f](""),!e})):void 0;if(!h||!p||"replace"===t&&!l||"split"===t&&!d){var m=/./[f],g=r(o,f,""[t],(function(t,e,r,n,i){return e.exec===c?h&&!i?{done:!0,value:m.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}})),v=g[0],y=g[1];n(String.prototype,t,v),i(RegExp.prototype,f,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)})}}},9388:(t,e,r)=>{"use strict";var n=r(9204);t.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},7849:(t,e,r)=>{"use strict";var n=r(7375),i=r(9603),a=r(1773),o=r(9124),s=r(8076)("isConcatSpreadable");t.exports=function t(e,r,c,u,l,d,f,h){for(var p,m,g=l,v=0,y=!!f&&o(f,h,3);v0)g=t(e,r,p,a(p.length),g,d-1)-1;else{if(g>=9007199254740991)throw TypeError();e[g]=p}g++}v++}return g}},1725:(t,e,r)=>{var n=r(9124),i=r(228),a=r(99),o=r(9204),s=r(1773),c=r(8837),u={},l={},d=t.exports=function(t,e,r,d,f){var h,p,m,g,v=f?function(){return t}:c(t),y=n(r,d,e?2:1),b=0;if("function"!=typeof v)throw TypeError(t+" is not iterable!");if(a(v)){for(h=s(t.length);h>b;b++)if((g=e?y(o(p=t[b])[0],p[1]):y(t[b]))===u||g===l)return g}else for(m=v.call(t);!(p=m.next()).done;)if((g=i(m,y,p.value,e))===u||g===l)return g};d.BREAK=u,d.RETURN=l},7650:(t,e,r)=>{t.exports=r(3259)("native-function-to-string",Function.toString)},2276:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},1262:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},9247:(t,e,r)=>{var n=r(5234),i=r(9933);t.exports=r(1329)?function(t,e,r){return n.f(t,e,i(1,r))}:function(t,e,r){return t[e]=r,t}},1847:(t,e,r)=>{var n=r(2276).document;t.exports=n&&n.documentElement},706:(t,e,r)=>{t.exports=!r(1329)&&!r(4308)((function(){return 7!=Object.defineProperty(r(7233)("div"),"a",{get:function(){return 7}}).a}))},1906:(t,e,r)=>{var n=r(9603),i=r(8860).set;t.exports=function(t,e,r){var a,o=e.constructor;return o!==r&&"function"==typeof o&&(a=o.prototype)!==r.prototype&&n(a)&&i&&i(t,a),t}},3436:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},3424:(t,e,r)=>{var n=r(9519);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99:(t,e,r)=>{var n=r(479),i=r(8076)("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||a[i]===t)}},7375:(t,e,r)=>{var n=r(9519);t.exports=Array.isArray||function(t){return"Array"==n(t)}},8400:(t,e,r)=>{var n=r(9603),i=Math.floor;t.exports=function(t){return!n(t)&&isFinite(t)&&i(t)===t}},9603:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},5119:(t,e,r)=>{var n=r(9603),i=r(9519),a=r(8076)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==i(t))}},228:(t,e,r)=>{var n=r(9204);t.exports=function(t,e,r,i){try{return i?e(n(r)[0],r[1]):e(r)}catch(e){var a=t.return;throw void 0!==a&&n(a.call(t)),e}}},4434:(t,e,r)=>{"use strict";var n=r(4958),i=r(9933),a=r(6668),o={};r(9247)(o,r(8076)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(o,{next:i(1,r)}),a(t,e+" Iterator")}},7091:(t,e,r)=>{"use strict";var n=r(5020),i=r(3350),a=r(1951),o=r(9247),s=r(479),c=r(4434),u=r(6668),l=r(9565),d=r(8076)("iterator"),f=!([].keys&&"next"in[].keys()),h="keys",p="values",m=function(){return this};t.exports=function(t,e,r,g,v,y,b){c(r,e,g);var x,w,A,_=function(t){if(!f&&t in k)return k[t];switch(t){case h:case p:return function(){return new r(this,t)}}return function(){return new r(this,t)}},E=e+" Iterator",S=v==p,M=!1,k=t.prototype,O=k[d]||k["@@iterator"]||v&&k[v],R=O||_(v),C=v?S?_("entries"):R:void 0,P="Array"==e&&k.entries||O;if(P&&(A=l(P.call(new t)))!==Object.prototype&&A.next&&(u(A,E,!0),n||"function"==typeof A[d]||o(A,d,m)),S&&O&&O.name!==p&&(M=!0,R=function(){return O.call(this)}),n&&!b||!f&&!M&&k[d]||o(k,d,R),s[e]=R,s[E]=m,v)if(x={values:S?R:_(p),keys:y?R:_(h),entries:C},b)for(w in x)w in k||a(k,w,x[w]);else i(i.P+i.F*(f||M),e,x);return x}},3490:(t,e,r)=>{var n=r(8076)("iterator"),i=!1;try{var a=[7][n]();a.return=function(){i=!0},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!i)return!1;var r=!1;try{var a=[7],o=a[n]();o.next=function(){return{done:r=!0}},a[n]=function(){return o},t(a)}catch(t){}return r}},4165:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},479:t=>{t.exports={}},5020:t=>{t.exports=!1},9372:t=>{var e=Math.expm1;t.exports=!e||e(10)>22025.465794806718||e(10)<22025.465794806718||-2e-17!=e(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:e},5600:(t,e,r)=>{var n=r(7083),i=Math.pow,a=i(2,-52),o=i(2,-23),s=i(2,127)*(2-o),c=i(2,-126);t.exports=Math.fround||function(t){var e,r,i=Math.abs(t),u=n(t);return is||r!=r?u*(1/0):u*r}},5386:t=>{t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},6030:t=>{t.exports=Math.scale||function(t,e,r,n,i){return 0===arguments.length||t!=t||e!=e||r!=r||n!=n||i!=i?NaN:t===1/0||t===-1/0?t:(t-e)*(i-n)/(r-e)+n}},7083:t=>{t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},4787:(t,e,r)=>{var n=r(6835)("meta"),i=r(9603),a=r(1262),o=r(5234).f,s=0,c=Object.isExtensible||function(){return!0},u=!r(4308)((function(){return c(Object.preventExtensions({}))})),l=function(t){o(t,n,{value:{i:"O"+ ++s,w:{}}})},d=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!a(t,n)){if(!c(t))return"F";if(!e)return"E";l(t)}return t[n].i},getWeak:function(t,e){if(!a(t,n)){if(!c(t))return!0;if(!e)return!1;l(t)}return t[n].w},onFreeze:function(t){return u&&d.NEED&&c(t)&&!a(t,n)&&l(t),t}}},9966:(t,e,r)=>{var n=r(468),i=r(3350),a=r(3259)("metadata"),o=a.store||(a.store=new(r(7729))),s=function(t,e,r){var i=o.get(t);if(!i){if(!r)return;o.set(t,i=new n)}var a=i.get(e);if(!a){if(!r)return;i.set(e,a=new n)}return a};t.exports={store:o,map:s,has:function(t,e,r){var n=s(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=s(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){s(r,n,!0).set(t,e)},keys:function(t,e){var r=s(t,e,!1),n=[];return r&&r.forEach((function(t,e){n.push(e)})),n},key:function(t){return void 0===t||"symbol"==typeof t?t:String(t)},exp:function(t){i(i.S,"Reflect",t)}}},6787:(t,e,r)=>{var n=r(2276),i=r(9770).set,a=n.MutationObserver||n.WebKitMutationObserver,o=n.process,s=n.Promise,c="process"==r(9519)(o);t.exports=function(){var t,e,r,u=function(){var n,i;for(c&&(n=o.domain)&&n.exit();t;){i=t.fn,t=t.next;try{i()}catch(n){throw t?r():e=void 0,n}}e=void 0,n&&n.enter()};if(c)r=function(){o.nextTick(u)};else if(!a||n.navigator&&n.navigator.standalone)if(s&&s.resolve){var l=s.resolve(void 0);r=function(){l.then(u)}}else r=function(){i.call(n,u)};else{var d=!0,f=document.createTextNode("");new a(u).observe(f,{characterData:!0}),r=function(){f.data=d=!d}}return function(n){var i={fn:n,next:void 0};e&&(e.next=i),t||(t=i,r()),e=i}}},8176:(t,e,r)=>{"use strict";var n=r(8304);function i(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)}t.exports.f=function(t){return new i(t)}},7288:(t,e,r)=>{"use strict";var n=r(1329),i=r(1720),a=r(1259),o=r(6418),s=r(6415),c=r(3424),u=Object.assign;t.exports=!u||r(4308)((function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach((function(t){e[t]=t})),7!=u({},t)[r]||Object.keys(u({},e)).join("")!=n}))?function(t,e){for(var r=s(t),u=arguments.length,l=1,d=a.f,f=o.f;u>l;)for(var h,p=c(arguments[l++]),m=d?i(p).concat(d(p)):i(p),g=m.length,v=0;g>v;)h=m[v++],n&&!f.call(p,h)||(r[h]=p[h]);return r}:u},4958:(t,e,r)=>{var n=r(9204),i=r(2305),a=r(120),o=r(1606)("IE_PROTO"),s=function(){},c="prototype",u=function(){var t,e=r(7233)("iframe"),n=a.length;for(e.style.display="none",r(1847).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write(" - + + - + From 056a53d03063db1b42ef94a1606cdba52cc0fbf7 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Sun, 7 Jan 2024 21:59:12 -0300 Subject: [PATCH 19/32] remove street-parent element if it exists --- src/index.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/index.js b/src/index.js index bddee277e..6ed3aa770 100644 --- a/src/index.js +++ b/src/index.js @@ -35,6 +35,14 @@ AFRAME.registerComponent('street', { } const streetmixSegments = JSON.parse(data.JSON); + + // remove .street-parent element, if it exists, with old scene elements. + // Because it will be created next in the processSegments function + const streetParent = this.el.querySelector('.street-parent'); + if (streetParent) { + streetParent.remove(); + } + const streetEl = streetmixParsers.processSegments(streetmixSegments.streetmixSegmentsFeet, data.showStriping, data.length, data.globalAnimated, data.showVehicles); this.el.append(streetEl); From 719cd2c91825c4605e9ad7accea486f2831d3a75 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Sun, 7 Jan 2024 22:10:01 -0300 Subject: [PATCH 20/32] remove buildings-parent element if it exists --- src/index.js | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/index.js b/src/index.js index 6ed3aa770..04d645b67 100644 --- a/src/index.js +++ b/src/index.js @@ -36,12 +36,16 @@ AFRAME.registerComponent('street', { const streetmixSegments = JSON.parse(data.JSON); - // remove .street-parent element, if it exists, with old scene elements. - // Because it will be created next in the processSegments function + // remove .street-parent and .buildings-parent elements, if they exists, with old scene elements. + // Because they will be created next in the processSegments and processBuildings functions const streetParent = this.el.querySelector('.street-parent'); if (streetParent) { streetParent.remove(); } + const buildingParent = this.el.querySelector('buildings-parent'); + if (buildingParent) { + buildingParent.remove(); + } const streetEl = streetmixParsers.processSegments(streetmixSegments.streetmixSegmentsFeet, data.showStriping, data.length, data.globalAnimated, data.showVehicles); this.el.append(streetEl); From c4104fec3a83461f453f751e3324a2f9c19a2546 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Mon, 8 Jan 2024 14:32:57 -0300 Subject: [PATCH 21/32] fix selector name for .buildings-parent --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 04d645b67..696209e83 100644 --- a/src/index.js +++ b/src/index.js @@ -42,7 +42,7 @@ AFRAME.registerComponent('street', { if (streetParent) { streetParent.remove(); } - const buildingParent = this.el.querySelector('buildings-parent'); + const buildingParent = this.el.querySelector('.buildings-parent'); if (buildingParent) { buildingParent.remove(); } From 38bb07ac98e23bd52173daeb589813557ea95c98 Mon Sep 17 00:00:00 2001 From: Alexander Goryushkin Date: Mon, 15 Jan 2024 22:31:51 -0300 Subject: [PATCH 22/32] fix boundingbox for tram and foodTruck elemtens --- src/aframe-streetmix-parsers.js | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/aframe-streetmix-parsers.js b/src/aframe-streetmix-parsers.js index 6e92f3457..d17e15d57 100644 --- a/src/aframe-streetmix-parsers.js +++ b/src/aframe-streetmix-parsers.js @@ -287,12 +287,12 @@ function createChooChooElement (variantList, objectMixinId, length, showVehicles } const rotationY = (variantList[0] === 'inbound') ? 0 : 180; const placedObjectEl = document.createElement('a-entity'); - placedObjectEl.setAttribute('class', objectMixinId); + const tramLength = 23; placedObjectEl.setAttribute('rotation', '0 ' + rotationY + ' 0'); placedObjectEl.setAttribute('mixin', objectMixinId); - placedObjectEl.addEventListener('model-loaded', (model) => { - randomPosition(model.target, 'z', length); - }, { once: true }); + placedObjectEl.setAttribute('class', objectMixinId); + const positionZ = randomPosition(placedObjectEl, 'z', length, tramLength); + placedObjectEl.setAttribute('position', '0 0 ' + positionZ); return placedObjectEl; } @@ -471,12 +471,13 @@ function createFoodTruckElement (variantList, length) { const foodTruckParentEl = document.createElement('a-entity'); const reusableObjectEl = document.createElement('a-entity'); + const foodTruckLength = 7; const rotationY = (variantList[0] === 'left') ? 0 : 180; reusableObjectEl.setAttribute('rotation', '0 ' + rotationY + ' 0'); reusableObjectEl.setAttribute('mixin', 'food-trailer-rig'); - reusableObjectEl.addEventListener('model-loaded', (model) => { - randomPosition(model.target, 'z', length); - }, { once: true }); + + const positionZ = randomPosition(reusableObjectEl, 'z', length, foodTruckLength); + reusableObjectEl.setAttribute('positon', '0 0 ' + positionZ); foodTruckParentEl.append(reusableObjectEl); return foodTruckParentEl; From d2900a97e94e4bc86a4c4acc0ff6b257eca4c7b6 Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Mon, 15 Jan 2024 20:17:09 -0800 Subject: [PATCH 23/32] bump to new assets with updated column 4 row 2 --- assets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets b/assets index 55165b7e8..0f5eda458 160000 --- a/assets +++ b/assets @@ -1 +1 @@ -Subproject commit 55165b7e8c6cdd6932c5d78e2a5ca4aee5b9de2c +Subproject commit 0f5eda458639ed1c96de762d010829e2e3c43dc2 From 80dc9cf99d47b090e5c9d4ada749c42322d9caa8 Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Mon, 15 Jan 2024 20:17:23 -0800 Subject: [PATCH 24/32] hijacking the bus lane segment for POC --- src/aframe-streetmix-parsers.js | 6 +++--- src/assets.js | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/src/aframe-streetmix-parsers.js b/src/aframe-streetmix-parsers.js index 6e92f3457..8039ea854 100644 --- a/src/aframe-streetmix-parsers.js +++ b/src/aframe-streetmix-parsers.js @@ -912,17 +912,17 @@ function processSegments (segments, showStriping, length, globalAnimated, showVe let reusableObjectStencilsParentEl; reusableObjectStencilsParentEl = createStencilsParentElement({ y: elevationPosY + 0.015 }); - cloneMixinAsChildren({ objectMixinId: 'stencils word-bus', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); + cloneMixinAsChildren({ objectMixinId: 'stencils hash-left', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(reusableObjectStencilsParentEl); reusableObjectStencilsParentEl = createStencilsParentElement({ y: elevationPosY + 0.015, z: 10 }); - cloneMixinAsChildren({ objectMixinId: 'stencils word-taxi', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); + cloneMixinAsChildren({ objectMixinId: 'stencils hash-right', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(reusableObjectStencilsParentEl); reusableObjectStencilsParentEl = createStencilsParentElement({ y: elevationPosY + 0.015, z: 20 }); - cloneMixinAsChildren({ objectMixinId: 'stencils word-only', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); + cloneMixinAsChildren({ objectMixinId: 'stencils hash-chevron', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(reusableObjectStencilsParentEl); } else if (segments[i].type === 'drive-lane') { diff --git a/src/assets.js b/src/assets.js index 58f70015a..8b1be6a67 100644 --- a/src/assets.js +++ b/src/assets.js @@ -180,6 +180,9 @@ function buildAssetHTML (assetUrl, categories) { + + + `, 'vehicles-transit': ` From 6fa49c8fab0b698586253a08bb79a7c80ef500eb Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Tue, 16 Jan 2024 16:57:30 -0800 Subject: [PATCH 25/32] working with new texture also revert bus --- src/aframe-streetmix-parsers.js | 8 ++++---- src/assets.js | 5 ++--- 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/aframe-streetmix-parsers.js b/src/aframe-streetmix-parsers.js index cf539e2d8..920428541 100644 --- a/src/aframe-streetmix-parsers.js +++ b/src/aframe-streetmix-parsers.js @@ -864,7 +864,7 @@ function processSegments (segments, showStriping, length, globalAnimated, showVe // add the safehits to the segment parent segmentParentEl.append(safehitsParentEl); repeatCount[0] = 1; - repeatCount[1] = parseInt(length); + repeatCount[1] = parseInt(length) / 4; } else if (segments[i].type === 'divider' && variantList[0] === 'flowers') { groundMixinId = 'grass'; segmentParentEl.append(createDividerVariant('flowers', clonedObjectRadius, 2.25)); @@ -913,17 +913,17 @@ function processSegments (segments, showStriping, length, globalAnimated, showVe let reusableObjectStencilsParentEl; reusableObjectStencilsParentEl = createStencilsParentElement({ y: elevationPosY + 0.015 }); - cloneMixinAsChildren({ objectMixinId: 'stencils hash-left', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); + cloneMixinAsChildren({ objectMixinId: 'stencils word-bus', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(reusableObjectStencilsParentEl); reusableObjectStencilsParentEl = createStencilsParentElement({ y: elevationPosY + 0.015, z: 10 }); - cloneMixinAsChildren({ objectMixinId: 'stencils hash-right', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); + cloneMixinAsChildren({ objectMixinId: 'stencils word-taxi', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(reusableObjectStencilsParentEl); reusableObjectStencilsParentEl = createStencilsParentElement({ y: elevationPosY + 0.015, z: 20 }); - cloneMixinAsChildren({ objectMixinId: 'stencils hash-chevron', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); + cloneMixinAsChildren({ objectMixinId: 'stencils word-only', parentEl: reusableObjectStencilsParentEl, rotation: '-90 ' + rotationY + ' 0', step: 50, radius: clonedObjectRadius }); // add this stencil stuff to the segment parent segmentParentEl.append(reusableObjectStencilsParentEl); } else if (segments[i].type === 'drive-lane') { diff --git a/src/assets.js b/src/assets.js index 8b1be6a67..6e24b8345 100644 --- a/src/assets.js +++ b/src/assets.js @@ -126,15 +126,14 @@ function buildAssetHTML (assetUrl, categories) { - - + - + `, 'segment-colors': ` From 7e7fdbf0f7d9f605aa72a04348158b9fe55b4f48 Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Tue, 16 Jan 2024 16:59:35 -0800 Subject: [PATCH 26/32] use new assets with the cool new hatch texture --- assets | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets b/assets index 0f5eda458..4c8b8b652 160000 --- a/assets +++ b/assets @@ -1 +1 @@ -Subproject commit 0f5eda458639ed1c96de762d010829e2e3c43dc2 +Subproject commit 4c8b8b652dd37823daac1043c47b283649066dff From 01f7a47df3f40805b3b863ffa7c6ae3fe051125d Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Tue, 16 Jan 2024 17:05:25 -0800 Subject: [PATCH 27/32] fix repeat count in other divider cases --- src/aframe-streetmix-parsers.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/aframe-streetmix-parsers.js b/src/aframe-streetmix-parsers.js index 920428541..204ed00a5 100644 --- a/src/aframe-streetmix-parsers.js +++ b/src/aframe-streetmix-parsers.js @@ -891,7 +891,11 @@ function processSegments (segments, showStriping, length, globalAnimated, showVe groundMixinId = 'divider'; segmentParentEl.append(createDividerVariant('dome', clonedObjectRadius, 2.25)); repeatCount[0] = 1; - repeatCount[1] = parseInt(length); + repeatCount[1] = parseInt(length) / 4; + } else if (segments[i].type === 'divider') { + groundMixinId = 'divider'; + repeatCount[0] = 1; + repeatCount[1] = parseInt(length) / 4; } else if (segments[i].type === 'temporary' && variantList[0] === 'barricade') { groundMixinId = 'drive-lane'; segmentParentEl.append(createClonedVariants('temporary-barricade', clonedObjectRadius, 2.25)); From 7f54f3b15be5dee4b9d56a4cc1d571e84d8890a5 Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Tue, 16 Jan 2024 17:06:45 -0800 Subject: [PATCH 28/32] lint fix --- src/index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/index.js b/src/index.js index 696209e83..e1b51f153 100644 --- a/src/index.js +++ b/src/index.js @@ -36,7 +36,7 @@ AFRAME.registerComponent('street', { const streetmixSegments = JSON.parse(data.JSON); - // remove .street-parent and .buildings-parent elements, if they exists, with old scene elements. + // remove .street-parent and .buildings-parent elements, if they exists, with old scene elements. // Because they will be created next in the processSegments and processBuildings functions const streetParent = this.el.querySelector('.street-parent'); if (streetParent) { From 33cd92dc640df062dc1da356c81d4bf9075a1e59 Mon Sep 17 00:00:00 2001 From: Kieran Farr Date: Tue, 16 Jan 2024 17:07:07 -0800 Subject: [PATCH 29/32] dist bump --- dist/aframe-street-component.js | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/dist/aframe-street-component.js b/dist/aframe-street-component.js index 764ef569b..79b0bbb7d 100644 --- a/dist/aframe-street-component.js +++ b/dist/aframe-street-component.js @@ -1,4 +1,4 @@ -!function(t,e){if("object"==typeof exports&&"object"==typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{var r=e();for(var n in r)("object"==typeof exports?exports:t)[n]=r[n]}}(self,(()=>(()=>{var t={631:t=>{var e=[new THREE.Vector2,new THREE.Vector2,new THREE.Vector2,new THREE.Vector2];function r(t,r,n,i){const a=1/i,o=1/n;return e[0].set(a*r,o*t+o),e[1].set(a*r,o*t),e[2].set(a*r+a,o*t),e[3].set(a*r+a,o*t+o),e}AFRAME.registerComponent("atlas-uvs",{dependencies:["geometry"],schema:{totalColumns:{type:"int",default:1},totalRows:{type:"int",default:1},column:{type:"int",default:1},row:{type:"int",default:1}},update:function(){const t=this.data,e=r(t.row-1,t.column-1,t.totalRows,t.totalColumns),n=this.el.getObject3D("mesh").geometry;var i=new Float32Array([e[0].x,e[0].y,e[3].x,e[3].y,e[1].x,e[1].y,e[2].x,e[2].y]);n.setAttribute("uv",new THREE.BufferAttribute(i,2)),n.uvsNeedUpdate=!0}}),AFRAME.registerComponent("dynamic-texture-atlas",{schema:{canvasId:{default:"dynamicAtlas"},canvasHeight:{default:1024},canvasWidth:{default:1024},debug:{default:!1},numColumns:{default:8},numRows:{default:8}},multiple:!0,init:function(){const t=this.canvas=document.createElement("canvas");t.id=this.data.canvasId,t.height=this.data.canvasHeight,t.width=this.data.canvasWidth,this.ctx=t.getContext("2d"),document.body.appendChild(t),this.data.debug&&(t.style.left=0,t.style.top=0,t.style.position="fixed",t.style.zIndex=9999999999)},drawTexture:function(t,e,n,i,a){const o=this.canvas,s=this.data;t.complete||(t.onload=()=>{this.drawTexture(t,e,n)});const c=a||o.height/s.numRows,u=i||o.width/s.numColumns;return this.ctx.drawImage(t,u*e,u*n,u,c),r(e,n,s.numRows,s.numColumns)}}),t.exports.getGridUvs=r},5236:(t,e,r)=>{"use strict";if(r(412),r(7588),r(8327),r.g._babelPolyfill)throw new Error("only one instance of babel-polyfill is allowed");r.g._babelPolyfill=!0;function n(t,e,r){t[e]||Object.defineProperty(t,e,{writable:!0,configurable:!0,value:r})}n(String.prototype,"padLeft","".padStart),n(String.prototype,"padRight","".padEnd),"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill".split(",").forEach((function(t){[][t]&&n(Array,t,Function.call.bind([][t]))}))},8327:(t,e,r)=>{r(9217),t.exports=r(7984).RegExp.escape},8304:t=>{t.exports=function(t){if("function"!=typeof t)throw TypeError(t+" is not a function!");return t}},5811:(t,e,r)=>{var n=r(9519);t.exports=function(t,e){if("number"!=typeof t&&"Number"!=n(t))throw TypeError(e);return+t}},6224:(t,e,r)=>{var n=r(8076)("unscopables"),i=Array.prototype;null==i[n]&&r(9247)(i,n,{}),t.exports=function(t){i[n][t]=!0}},2774:(t,e,r)=>{"use strict";var n=r(5813)(!0);t.exports=function(t,e,r){return e+(r?n(t,e).length:1)}},264:t=>{t.exports=function(t,e,r,n){if(!(t instanceof e)||void 0!==n&&n in t)throw TypeError(r+": incorrect invocation!");return t}},9204:(t,e,r)=>{var n=r(9603);t.exports=function(t){if(!n(t))throw TypeError(t+" is not an object!");return t}},8734:(t,e,r)=>{"use strict";var n=r(6415),i=r(7149),a=r(1773);t.exports=[].copyWithin||function(t,e){var r=n(this),o=a(r.length),s=i(t,o),c=i(e,o),u=arguments.length>2?arguments[2]:void 0,l=Math.min((void 0===u?o:i(u,o))-c,o-s),d=1;for(c0;)c in r?r[s]=r[c]:delete r[s],s+=d,c+=d;return r}},6436:(t,e,r)=>{"use strict";var n=r(6415),i=r(7149),a=r(1773);t.exports=function(t){for(var e=n(this),r=a(e.length),o=arguments.length,s=i(o>1?arguments[1]:void 0,r),c=o>2?arguments[2]:void 0,u=void 0===c?r:i(c,r);u>s;)e[s++]=t;return e}},9349:(t,e,r)=>{var n=r(1725);t.exports=function(t,e){var r=[];return n(t,!1,r.push,r,e),r}},3997:(t,e,r)=>{var n=r(3057),i=r(1773),a=r(7149);t.exports=function(t){return function(e,r,o){var s,c=n(e),u=i(c.length),l=a(o,u);if(t&&r!=r){for(;u>l;)if((s=c[l++])!=s)return!0}else for(;u>l;l++)if((t||l in c)&&c[l]===r)return t||l||0;return!t&&-1}}},2026:(t,e,r)=>{var n=r(9124),i=r(3424),a=r(6415),o=r(1773),s=r(4164);t.exports=function(t,e){var r=1==t,c=2==t,u=3==t,l=4==t,d=6==t,f=5==t||d,h=e||s;return function(e,s,p){for(var m,g,v=a(e),y=i(v),b=n(s,p,3),x=o(y.length),w=0,A=r?h(e,x):c?h(e,0):void 0;x>w;w++)if((f||w in y)&&(g=b(m=y[w],w,v),t))if(r)A[w]=g;else if(g)switch(t){case 3:return!0;case 5:return m;case 6:return w;case 2:A.push(m)}else if(l)return!1;return d?-1:u||l?l:A}}},1457:(t,e,r)=>{var n=r(8304),i=r(6415),a=r(3424),o=r(1773);t.exports=function(t,e,r,s,c){n(e);var u=i(t),l=a(u),d=o(u.length),f=c?d-1:0,h=c?-1:1;if(r<2)for(;;){if(f in l){s=l[f],f+=h;break}if(f+=h,c?f<0:d<=f)throw TypeError("Reduce of empty array with no initial value")}for(;c?f>=0:d>f;f+=h)f in l&&(s=e(s,l[f],f,u));return s}},5720:(t,e,r)=>{var n=r(9603),i=r(7375),a=r(8076)("species");t.exports=function(t){var e;return i(t)&&("function"!=typeof(e=t.constructor)||e!==Array&&!i(e.prototype)||(e=void 0),n(e)&&null===(e=e[a])&&(e=void 0)),void 0===e?Array:e}},4164:(t,e,r)=>{var n=r(5720);t.exports=function(t,e){return new(n(t))(e)}},6371:(t,e,r)=>{"use strict";var n=r(8304),i=r(9603),a=r(3436),o=[].slice,s={};t.exports=Function.bind||function(t){var e=n(this),r=o.call(arguments,1),c=function(){var n=r.concat(o.call(arguments));return this instanceof c?function(t,e,r){if(!(e in s)){for(var n=[],i=0;i{var n=r(9519),i=r(8076)("toStringTag"),a="Arguments"==n(function(){return arguments}());t.exports=function(t){var e,r,o;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),i))?r:a?n(e):"Object"==(o=n(e))&&"function"==typeof e.callee?"Arguments":o}},9519:t=>{var e={}.toString;t.exports=function(t){return e.call(t).slice(8,-1)}},947:(t,e,r)=>{"use strict";var n=r(5234).f,i=r(4958),a=r(4584),o=r(9124),s=r(264),c=r(1725),u=r(7091),l=r(4165),d=r(6538),f=r(1329),h=r(4787).fastKey,p=r(2023),m=f?"_s":"size",g=function(t,e){var r,n=h(e);if("F"!==n)return t._i[n];for(r=t._f;r;r=r.n)if(r.k==e)return r};t.exports={getConstructor:function(t,e,r,u){var l=t((function(t,n){s(t,l,e,"_i"),t._t=e,t._i=i(null),t._f=void 0,t._l=void 0,t[m]=0,null!=n&&c(n,r,t[u],t)}));return a(l.prototype,{clear:function(){for(var t=p(this,e),r=t._i,n=t._f;n;n=n.n)n.r=!0,n.p&&(n.p=n.p.n=void 0),delete r[n.i];t._f=t._l=void 0,t[m]=0},delete:function(t){var r=p(this,e),n=g(r,t);if(n){var i=n.n,a=n.p;delete r._i[n.i],n.r=!0,a&&(a.n=i),i&&(i.p=a),r._f==n&&(r._f=i),r._l==n&&(r._l=a),r[m]--}return!!n},forEach:function(t){p(this,e);for(var r,n=o(t,arguments.length>1?arguments[1]:void 0,3);r=r?r.n:this._f;)for(n(r.v,r.k,this);r&&r.r;)r=r.p},has:function(t){return!!g(p(this,e),t)}}),f&&n(l.prototype,"size",{get:function(){return p(this,e)[m]}}),l},def:function(t,e,r){var n,i,a=g(t,e);return a?a.v=r:(t._l=a={i:i=h(e,!0),k:e,v:r,p:n=t._l,n:void 0,r:!1},t._f||(t._f=a),n&&(n.n=a),t[m]++,"F"!==i&&(t._i[i]=a)),t},getEntry:g,setStrong:function(t,e,r){u(t,e,(function(t,r){this._t=p(t,e),this._k=r,this._l=void 0}),(function(){for(var t=this,e=t._k,r=t._l;r&&r.r;)r=r.p;return t._t&&(t._l=r=r?r.n:t._t._f)?l(0,"keys"==e?r.k:"values"==e?r.v:[r.k,r.v]):(t._t=void 0,l(1))}),r?"entries":"values",!r,!0),d(e)}}},5741:(t,e,r)=>{var n=r(9382),i=r(9349);t.exports=function(t){return function(){if(n(this)!=t)throw TypeError(t+"#toJSON isn't generic");return i(this)}}},5268:(t,e,r)=>{"use strict";var n=r(4584),i=r(4787).getWeak,a=r(9204),o=r(9603),s=r(264),c=r(1725),u=r(2026),l=r(1262),d=r(2023),f=u(5),h=u(6),p=0,m=function(t){return t._l||(t._l=new g)},g=function(){this.a=[]},v=function(t,e){return f(t.a,(function(t){return t[0]===e}))};g.prototype={get:function(t){var e=v(this,t);if(e)return e[1]},has:function(t){return!!v(this,t)},set:function(t,e){var r=v(this,t);r?r[1]=e:this.a.push([t,e])},delete:function(t){var e=h(this.a,(function(e){return e[0]===t}));return~e&&this.a.splice(e,1),!!~e}},t.exports={getConstructor:function(t,e,r,a){var u=t((function(t,n){s(t,u,e,"_i"),t._t=e,t._i=p++,t._l=void 0,null!=n&&c(n,r,t[a],t)}));return n(u.prototype,{delete:function(t){if(!o(t))return!1;var r=i(t);return!0===r?m(d(this,e)).delete(t):r&&l(r,this._i)&&delete r[this._i]},has:function(t){if(!o(t))return!1;var r=i(t);return!0===r?m(d(this,e)).has(t):r&&l(r,this._i)}}),u},def:function(t,e,r){var n=i(a(e),!0);return!0===n?m(t).set(e,r):n[t._i]=r,t},ufstore:m}},1405:(t,e,r)=>{"use strict";var n=r(2276),i=r(3350),a=r(1951),o=r(4584),s=r(4787),c=r(1725),u=r(264),l=r(9603),d=r(4308),f=r(3490),h=r(6668),p=r(1906);t.exports=function(t,e,r,m,g,v){var y=n[t],b=y,x=g?"set":"add",w=b&&b.prototype,A={},_=function(t){var e=w[t];a(w,t,"delete"==t||"has"==t?function(t){return!(v&&!l(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return v&&!l(t)?void 0:e.call(this,0===t?0:t)}:"add"==t?function(t){return e.call(this,0===t?0:t),this}:function(t,r){return e.call(this,0===t?0:t,r),this})};if("function"==typeof b&&(v||w.forEach&&!d((function(){(new b).entries().next()})))){var E=new b,S=E[x](v?{}:-0,1)!=E,M=d((function(){E.has(1)})),k=f((function(t){new b(t)})),O=!v&&d((function(){for(var t=new b,e=5;e--;)t[x](e,e);return!t.has(-0)}));k||((b=e((function(e,r){u(e,b,t);var n=p(new y,e,b);return null!=r&&c(r,g,n[x],n),n}))).prototype=w,w.constructor=b),(M||O)&&(_("delete"),_("has"),g&&_("get")),(O||S)&&_(x),v&&w.clear&&delete w.clear}else b=m.getConstructor(e,t,g,x),o(b.prototype,r),s.NEED=!0;return h(b,t),A[t]=b,i(i.G+i.W+i.F*(b!=y),A),v||m.setStrong(b,t,g),b}},7984:t=>{var e=t.exports={version:"2.6.12"};"number"==typeof __e&&(__e=e)},2122:(t,e,r)=>{"use strict";var n=r(5234),i=r(9933);t.exports=function(t,e,r){e in t?n.f(t,e,i(0,r)):t[e]=r}},9124:(t,e,r)=>{var n=r(8304);t.exports=function(t,e,r){if(n(t),void 0===e)return t;switch(r){case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,i){return t.call(e,r,n,i)}}return function(){return t.apply(e,arguments)}}},4041:(t,e,r)=>{"use strict";var n=r(4308),i=Date.prototype.getTime,a=Date.prototype.toISOString,o=function(t){return t>9?t:"0"+t};t.exports=n((function(){return"0385-07-25T07:06:39.999Z"!=a.call(new Date(-50000000000001))}))||!n((function(){a.call(new Date(NaN))}))?function(){if(!isFinite(i.call(this)))throw RangeError("Invalid time value");var t=this,e=t.getUTCFullYear(),r=t.getUTCMilliseconds(),n=e<0?"-":e>9999?"+":"";return n+("00000"+Math.abs(e)).slice(n?-6:-4)+"-"+o(t.getUTCMonth()+1)+"-"+o(t.getUTCDate())+"T"+o(t.getUTCHours())+":"+o(t.getUTCMinutes())+":"+o(t.getUTCSeconds())+"."+(r>99?r:"0"+o(r))+"Z"}:a},768:(t,e,r)=>{"use strict";var n=r(9204),i=r(4276),a="number";t.exports=function(t){if("string"!==t&&t!==a&&"default"!==t)throw TypeError("Incorrect hint");return i(n(this),t!=a)}},2099:t=>{t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},1329:(t,e,r)=>{t.exports=!r(4308)((function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a}))},7233:(t,e,r)=>{var n=r(9603),i=r(2276).document,a=n(i)&&n(i.createElement);t.exports=function(t){return a?i.createElement(t):{}}},120:t=>{t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},5084:(t,e,r)=>{var n=r(1720),i=r(1259),a=r(6418);t.exports=function(t){var e=n(t),r=i.f;if(r)for(var o,s=r(t),c=a.f,u=0;s.length>u;)c.call(t,o=s[u++])&&e.push(o);return e}},3350:(t,e,r)=>{var n=r(2276),i=r(7984),a=r(9247),o=r(1951),s=r(9124),c="prototype",u=function(t,e,r){var l,d,f,h,p=t&u.F,m=t&u.G,g=t&u.S,v=t&u.P,y=t&u.B,b=m?n:g?n[e]||(n[e]={}):(n[e]||{})[c],x=m?i:i[e]||(i[e]={}),w=x[c]||(x[c]={});for(l in m&&(r=e),r)f=((d=!p&&b&&void 0!==b[l])?b:r)[l],h=y&&d?s(f,n):v&&"function"==typeof f?s(Function.call,f):f,b&&o(b,l,f,t&u.U),x[l]!=f&&a(x,l,h),v&&w[l]!=f&&(w[l]=f)};n.core=i,u.F=1,u.G=2,u.S=4,u.P=8,u.B=16,u.W=32,u.U=64,u.R=128,t.exports=u},2381:(t,e,r)=>{var n=r(8076)("match");t.exports=function(t){var e=/./;try{"/./"[t](e)}catch(r){try{return e[n]=!1,!"/./"[t](e)}catch(t){}}return!0}},4308:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},1658:(t,e,r)=>{"use strict";r(5761);var n=r(1951),i=r(9247),a=r(4308),o=r(2099),s=r(8076),c=r(3323),u=s("species"),l=!a((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$")})),d=function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2===r.length&&"a"===r[0]&&"b"===r[1]}();t.exports=function(t,e,r){var f=s(t),h=!a((function(){var e={};return e[f]=function(){return 7},7!=""[t](e)})),p=h?!a((function(){var e=!1,r=/a/;return r.exec=function(){return e=!0,null},"split"===t&&(r.constructor={},r.constructor[u]=function(){return r}),r[f](""),!e})):void 0;if(!h||!p||"replace"===t&&!l||"split"===t&&!d){var m=/./[f],g=r(o,f,""[t],(function(t,e,r,n,i){return e.exec===c?h&&!i?{done:!0,value:m.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}})),v=g[0],y=g[1];n(String.prototype,t,v),i(RegExp.prototype,f,2==e?function(t,e){return y.call(t,this,e)}:function(t){return y.call(t,this)})}}},9388:(t,e,r)=>{"use strict";var n=r(9204);t.exports=function(){var t=n(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e}},7849:(t,e,r)=>{"use strict";var n=r(7375),i=r(9603),a=r(1773),o=r(9124),s=r(8076)("isConcatSpreadable");t.exports=function t(e,r,c,u,l,d,f,h){for(var p,m,g=l,v=0,y=!!f&&o(f,h,3);v0)g=t(e,r,p,a(p.length),g,d-1)-1;else{if(g>=9007199254740991)throw TypeError();e[g]=p}g++}v++}return g}},1725:(t,e,r)=>{var n=r(9124),i=r(228),a=r(99),o=r(9204),s=r(1773),c=r(8837),u={},l={},d=t.exports=function(t,e,r,d,f){var h,p,m,g,v=f?function(){return t}:c(t),y=n(r,d,e?2:1),b=0;if("function"!=typeof v)throw TypeError(t+" is not iterable!");if(a(v)){for(h=s(t.length);h>b;b++)if((g=e?y(o(p=t[b])[0],p[1]):y(t[b]))===u||g===l)return g}else for(m=v.call(t);!(p=m.next()).done;)if((g=i(m,y,p.value,e))===u||g===l)return g};d.BREAK=u,d.RETURN=l},7650:(t,e,r)=>{t.exports=r(3259)("native-function-to-string",Function.toString)},2276:t=>{var e=t.exports="undefined"!=typeof window&&window.Math==Math?window:"undefined"!=typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=e)},1262:t=>{var e={}.hasOwnProperty;t.exports=function(t,r){return e.call(t,r)}},9247:(t,e,r)=>{var n=r(5234),i=r(9933);t.exports=r(1329)?function(t,e,r){return n.f(t,e,i(1,r))}:function(t,e,r){return t[e]=r,t}},1847:(t,e,r)=>{var n=r(2276).document;t.exports=n&&n.documentElement},706:(t,e,r)=>{t.exports=!r(1329)&&!r(4308)((function(){return 7!=Object.defineProperty(r(7233)("div"),"a",{get:function(){return 7}}).a}))},1906:(t,e,r)=>{var n=r(9603),i=r(8860).set;t.exports=function(t,e,r){var a,o=e.constructor;return o!==r&&"function"==typeof o&&(a=o.prototype)!==r.prototype&&n(a)&&i&&i(t,a),t}},3436:t=>{t.exports=function(t,e,r){var n=void 0===r;switch(e.length){case 0:return n?t():t.call(r);case 1:return n?t(e[0]):t.call(r,e[0]);case 2:return n?t(e[0],e[1]):t.call(r,e[0],e[1]);case 3:return n?t(e[0],e[1],e[2]):t.call(r,e[0],e[1],e[2]);case 4:return n?t(e[0],e[1],e[2],e[3]):t.call(r,e[0],e[1],e[2],e[3])}return t.apply(r,e)}},3424:(t,e,r)=>{var n=r(9519);t.exports=Object("z").propertyIsEnumerable(0)?Object:function(t){return"String"==n(t)?t.split(""):Object(t)}},99:(t,e,r)=>{var n=r(479),i=r(8076)("iterator"),a=Array.prototype;t.exports=function(t){return void 0!==t&&(n.Array===t||a[i]===t)}},7375:(t,e,r)=>{var n=r(9519);t.exports=Array.isArray||function(t){return"Array"==n(t)}},8400:(t,e,r)=>{var n=r(9603),i=Math.floor;t.exports=function(t){return!n(t)&&isFinite(t)&&i(t)===t}},9603:t=>{t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},5119:(t,e,r)=>{var n=r(9603),i=r(9519),a=r(8076)("match");t.exports=function(t){var e;return n(t)&&(void 0!==(e=t[a])?!!e:"RegExp"==i(t))}},228:(t,e,r)=>{var n=r(9204);t.exports=function(t,e,r,i){try{return i?e(n(r)[0],r[1]):e(r)}catch(e){var a=t.return;throw void 0!==a&&n(a.call(t)),e}}},4434:(t,e,r)=>{"use strict";var n=r(4958),i=r(9933),a=r(6668),o={};r(9247)(o,r(8076)("iterator"),(function(){return this})),t.exports=function(t,e,r){t.prototype=n(o,{next:i(1,r)}),a(t,e+" Iterator")}},7091:(t,e,r)=>{"use strict";var n=r(5020),i=r(3350),a=r(1951),o=r(9247),s=r(479),c=r(4434),u=r(6668),l=r(9565),d=r(8076)("iterator"),f=!([].keys&&"next"in[].keys()),h="keys",p="values",m=function(){return this};t.exports=function(t,e,r,g,v,y,b){c(r,e,g);var x,w,A,_=function(t){if(!f&&t in k)return k[t];switch(t){case h:case p:return function(){return new r(this,t)}}return function(){return new r(this,t)}},E=e+" Iterator",S=v==p,M=!1,k=t.prototype,O=k[d]||k["@@iterator"]||v&&k[v],R=O||_(v),C=v?S?_("entries"):R:void 0,P="Array"==e&&k.entries||O;if(P&&(A=l(P.call(new t)))!==Object.prototype&&A.next&&(u(A,E,!0),n||"function"==typeof A[d]||o(A,d,m)),S&&O&&O.name!==p&&(M=!0,R=function(){return O.call(this)}),n&&!b||!f&&!M&&k[d]||o(k,d,R),s[e]=R,s[E]=m,v)if(x={values:S?R:_(p),keys:y?R:_(h),entries:C},b)for(w in x)w in k||a(k,w,x[w]);else i(i.P+i.F*(f||M),e,x);return x}},3490:(t,e,r)=>{var n=r(8076)("iterator"),i=!1;try{var a=[7][n]();a.return=function(){i=!0},Array.from(a,(function(){throw 2}))}catch(t){}t.exports=function(t,e){if(!e&&!i)return!1;var r=!1;try{var a=[7],o=a[n]();o.next=function(){return{done:r=!0}},a[n]=function(){return o},t(a)}catch(t){}return r}},4165:t=>{t.exports=function(t,e){return{value:e,done:!!t}}},479:t=>{t.exports={}},5020:t=>{t.exports=!1},9372:t=>{var e=Math.expm1;t.exports=!e||e(10)>22025.465794806718||e(10)<22025.465794806718||-2e-17!=e(-2e-17)?function(t){return 0==(t=+t)?t:t>-1e-6&&t<1e-6?t+t*t/2:Math.exp(t)-1}:e},5600:(t,e,r)=>{var n=r(7083),i=Math.pow,a=i(2,-52),o=i(2,-23),s=i(2,127)*(2-o),c=i(2,-126);t.exports=Math.fround||function(t){var e,r,i=Math.abs(t),u=n(t);return is||r!=r?u*(1/0):u*r}},5386:t=>{t.exports=Math.log1p||function(t){return(t=+t)>-1e-8&&t<1e-8?t-t*t/2:Math.log(1+t)}},6030:t=>{t.exports=Math.scale||function(t,e,r,n,i){return 0===arguments.length||t!=t||e!=e||r!=r||n!=n||i!=i?NaN:t===1/0||t===-1/0?t:(t-e)*(i-n)/(r-e)+n}},7083:t=>{t.exports=Math.sign||function(t){return 0==(t=+t)||t!=t?t:t<0?-1:1}},4787:(t,e,r)=>{var n=r(6835)("meta"),i=r(9603),a=r(1262),o=r(5234).f,s=0,c=Object.isExtensible||function(){return!0},u=!r(4308)((function(){return c(Object.preventExtensions({}))})),l=function(t){o(t,n,{value:{i:"O"+ ++s,w:{}}})},d=t.exports={KEY:n,NEED:!1,fastKey:function(t,e){if(!i(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!a(t,n)){if(!c(t))return"F";if(!e)return"E";l(t)}return t[n].i},getWeak:function(t,e){if(!a(t,n)){if(!c(t))return!0;if(!e)return!1;l(t)}return t[n].w},onFreeze:function(t){return u&&d.NEED&&c(t)&&!a(t,n)&&l(t),t}}},9966:(t,e,r)=>{var n=r(468),i=r(3350),a=r(3259)("metadata"),o=a.store||(a.store=new(r(7729))),s=function(t,e,r){var i=o.get(t);if(!i){if(!r)return;o.set(t,i=new n)}var a=i.get(e);if(!a){if(!r)return;i.set(e,a=new n)}return a};t.exports={store:o,map:s,has:function(t,e,r){var n=s(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=s(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){s(r,n,!0).set(t,e)},keys:function(t,e){var r=s(t,e,!1),n=[];return r&&r.forEach((function(t,e){n.push(e)})),n},key:function(t){return void 0===t||"symbol"==typeof t?t:String(t)},exp:function(t){i(i.S,"Reflect",t)}}},6787:(t,e,r)=>{var n=r(2276),i=r(9770).set,a=n.MutationObserver||n.WebKitMutationObserver,o=n.process,s=n.Promise,c="process"==r(9519)(o);t.exports=function(){var t,e,r,u=function(){var n,i;for(c&&(n=o.domain)&&n.exit();t;){i=t.fn,t=t.next;try{i()}catch(n){throw t?r():e=void 0,n}}e=void 0,n&&n.enter()};if(c)r=function(){o.nextTick(u)};else if(!a||n.navigator&&n.navigator.standalone)if(s&&s.resolve){var l=s.resolve(void 0);r=function(){l.then(u)}}else r=function(){i.call(n,u)};else{var d=!0,f=document.createTextNode("");new a(u).observe(f,{characterData:!0}),r=function(){f.data=d=!d}}return function(n){var i={fn:n,next:void 0};e&&(e.next=i),t||(t=i,r()),e=i}}},8176:(t,e,r)=>{"use strict";var n=r(8304);function i(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=n(e),this.reject=n(r)}t.exports.f=function(t){return new i(t)}},7288:(t,e,r)=>{"use strict";var n=r(1329),i=r(1720),a=r(1259),o=r(6418),s=r(6415),c=r(3424),u=Object.assign;t.exports=!u||r(4308)((function(){var t={},e={},r=Symbol(),n="abcdefghijklmnopqrst";return t[r]=7,n.split("").forEach((function(t){e[t]=t})),7!=u({},t)[r]||Object.keys(u({},e)).join("")!=n}))?function(t,e){for(var r=s(t),u=arguments.length,l=1,d=a.f,f=o.f;u>l;)for(var h,p=c(arguments[l++]),m=d?i(p).concat(d(p)):i(p),g=m.length,v=0;g>v;)h=m[v++],n&&!f.call(p,h)||(r[h]=p[h]);return r}:u},4958:(t,e,r)=>{var n=r(9204),i=r(2305),a=r(120),o=r(1606)("IE_PROTO"),s=function(){},c="prototype",u=function(){var t,e=r(7233)("iframe"),n=a.length;for(e.style.display="none",r(1847).appendChild(e),e.src="javascript:",(t=e.contentWindow.document).open(),t.write("