@plattar/plattar-ar-adapter 1.130.3 → 1.131.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/es2015/plattar-ar-adapter.js +113 -20
- package/build/es2015/plattar-ar-adapter.min.js +1 -1
- package/build/es2019/plattar-ar-adapter.js +84 -19
- package/build/es2019/plattar-ar-adapter.min.js +1 -1
- package/dist/ar/product-ar.d.ts +4 -2
- package/dist/ar/product-ar.js +24 -7
- package/dist/ar/scene-product-ar.d.ts +1 -1
- package/dist/ar/scene-product-ar.js +2 -2
- package/dist/embed/controllers/plattar-controller.js +4 -0
- package/dist/embed/controllers/product-controller.js +11 -2
- package/dist/embed/controllers/viewer-controller.js +31 -5
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +4 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.PlattarARAdapter=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r}()({1:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.LauncherAR=void 0;class LauncherAR{constructor(){this._opt={anchor:"horizontal_vertical"}}launch(){return new Promise((accept,reject)=>{this.init().then(value=>{value.start();return accept()}).catch(reject)})}get options(){return this._opt}}exports.LauncherAR=LauncherAR},{}],2:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ModelAR=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_analytics_1=require("@plattar/plattar-analytics");const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class ModelAR extends launcher_ar_1.LauncherAR{constructor(modelID=null){super();this._analytics=null;if(!modelID){throw new Error("ModelAR.constructor(modelID) - modelID must be defined")}this._modelID=modelID;this._ar=null}get modelID(){return this._modelID}_SetupAnalytics(model){let analytics=null;const project=model.relationships.find(plattar_api_1.Project);if(project){analytics=new plattar_analytics_1.Analytics(project.id);analytics.origin=plattar_api_1.Server.location().type;analytics.data.push("type","model-ar");analytics.data.push("applicationId",project.id);analytics.data.push("applicationTitle",project.attributes.title);analytics.data.push("modelId",model.id);analytics.data.push("modelTitle",model.attributes.title);this._analytics=analytics}}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ModelAR.init() - cannot proceed as AR not available in context"))}const model=new plattar_api_1.FileModel(this.modelID);model.include(plattar_api_1.Project);model.get().then(model=>{this._SetupAnalytics(model);if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(model.attributes.reality_filename&&util_1.Util.canRealityViewer()){this._ar=new reality_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.reality_filename;return accept(this)}if(model.attributes.usdz_filename&&util_1.Util.canQuicklook()){this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.usdz_filename;return accept(this)}return reject(new Error("ModelAR.init() - cannot proceed as ModelFile does not have a defined .usdz or .reality file"))}if(util_1.Util.canSceneViewer()){const arviewer=new scene_viewer_1.default;arviewer.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.original_filename;arviewer.isVertical=this.options.anchor==="vertical"?true:false;this._ar=arviewer;return accept(this)}return reject(new Error("ModelAR.init() - could not initialise AR correctly, check values"))}).catch(reject)})}start(){if(!this._ar){throw new Error("ModelAR.start() - cannot proceed as AR instance is null")}const analytics=this._analytics;if(analytics){analytics.data.push("device",this._ar.device);analytics.data.push("eventCategory",this._ar.nodeType);analytics.data.push("eventAction","Start Model Augment");analytics.write();analytics.startRecordEngagement()}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.ModelAR=ModelAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1,"@plattar/plattar-analytics":38,"@plattar/plattar-api":42}],3:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ProductAR=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_analytics_1=require("@plattar/plattar-analytics");const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class ProductAR extends launcher_ar_1.LauncherAR{constructor(productID=null,variationID=null){super();this._analytics=null;if(!productID){throw new Error("ProductAR.constructor(productID, variationID) - productID must be defined")}this._productID=productID;this._variationID=variationID?variationID:"default";this._ar=null}get productID(){return this._productID}get variationID(){return this._variationID}_SetupAnalytics(product,variation){let analytics=null;const scene=product.relationships.find(plattar_api_1.Scene);if(scene){analytics=new plattar_analytics_1.Analytics(scene.attributes.application_id);analytics.origin=plattar_api_1.Server.location().type;this._analytics=analytics;analytics.data.push("type","product-ar");analytics.data.push("sceneId",scene.id);analytics.data.push("sceneTitle",scene.attributes.title);const application=scene.relationships.find(plattar_api_1.Project);if(application){analytics.data.push("applicationId",application.id);analytics.data.push("applicationTitle",application.attributes.title)}}if(analytics){analytics.data.push("productId",product.id);analytics.data.push("productTitle",product.attributes.title);analytics.data.push("productSKU",product.attributes.sku);analytics.data.push("variationId",variation.id);analytics.data.push("variationTitle",variation.attributes.title);analytics.data.push("variationSKU",variation.attributes.sku)}}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ProductAR.init() - cannot proceed as AR not available in context"))}const product=new plattar_api_1.Product(this.productID);product.include(plattar_api_1.ProductVariation);product.include(plattar_api_1.ProductVariation.include(plattar_api_1.FileModel));product.include(plattar_api_1.Scene);product.include(plattar_api_1.Scene.include(plattar_api_1.Project));product.get().then(product=>{const variationID=this.variationID?this.variationID==="default"?product.attributes.product_variation_id:this.variationID:product.attributes.product_variation_id;if(!variationID){return reject(new Error("ProductAR.init() - cannot proceed as variation was not defined correctly"))}const variation=product.relationships.find(plattar_api_1.ProductVariation,variationID);if(!variation){return reject(new Error("ProductAR.init() - cannot proceed as variation with id "+variationID+" cannot be found"))}const modelID=variation.attributes.file_model_id;if(!modelID){return reject(new Error("ProductAR.init() - cannot proceed as variation does not have a defined file"))}const model=variation.relationships.find(plattar_api_1.FileModel,modelID);if(!model){return reject(new Error("ProductAR.init() - cannot proceed as ModelFile for selected variation is corrupt"))}this._SetupAnalytics(product,variation);if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(model.attributes.reality_filename&&util_1.Util.canRealityViewer()){this._ar=new reality_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.reality_filename;return accept(this)}if(model.attributes.usdz_filename&&util_1.Util.canQuicklook()){this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.usdz_filename;return accept(this)}return reject(new Error("ProductAR.init() - cannot proceed as ModelFile does not have a defined .usdz or .reality file"))}if(util_1.Util.canSceneViewer()){const arviewer=new scene_viewer_1.default;arviewer.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.original_filename;arviewer.isVertical=this.options.anchor==="vertical"?true:false;const scene=product.relationships.find(plattar_api_1.Scene);if(scene){const sceneOpt=scene.attributes.custom_json||{};if(sceneOpt.anchor==="vertical"){arviewer.isVertical=true}}this._ar=arviewer;return accept(this)}return reject(new Error("ProductAR.init() - could not initialise AR correctly, check values"))}).catch(reject)})}start(){if(!this._ar){throw new Error("ProductAR.start() - cannot proceed as AR instance is null")}const analytics=this._analytics;if(analytics){analytics.data.push("device",this._ar.device);analytics.data.push("eventCategory",this._ar.nodeType);analytics.data.push("eventAction","Start Augment");analytics.write();analytics.startRecordEngagement()}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.ProductAR=ProductAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1,"@plattar/plattar-analytics":38,"@plattar/plattar-api":42}],4:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.RawAR=void 0;const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class RawAR extends launcher_ar_1.LauncherAR{constructor(modelLocation=null){super();if(!modelLocation){throw new Error("RawAR.constructor(modelLocation) - modelLocation must be defined")}const lowerLoc=modelLocation.toLowerCase();if(lowerLoc.endsWith("usdz")||lowerLoc.endsWith("glb")||lowerLoc.endsWith("gltf")||lowerLoc.endsWith("reality")){this._modelLocation=modelLocation;this._ar=null}else{throw new Error("RawAR.constructor(modelLocation) - modelLocation must be one of gltf, glb, usdz or reality")}}get modelLocation(){return this._modelLocation}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("RawAR.init() - cannot proceed as AR not available in context"))}const modelLocation=this._modelLocation;const lowerLoc=modelLocation.toLowerCase();if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(lowerLoc.endsWith("reality")&&util_1.Util.canRealityViewer()){this._ar=new reality_viewer_1.default;this._ar.modelUrl=modelLocation;return accept(this)}if(lowerLoc.endsWith("usdz")&&util_1.Util.canQuicklook()){this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=modelLocation;return accept(this)}return reject(new Error("RawAR.init() - cannot proceed as model is not a .usdz or .reality file"))}if(util_1.Util.canSceneViewer()){if(lowerLoc.endsWith("glb")||lowerLoc.endsWith("gltf")){const arviewer=new scene_viewer_1.default;arviewer.modelUrl=modelLocation;arviewer.isVertical=this.options.anchor==="vertical"?true:false;this._ar=arviewer;return accept(this)}return reject(new Error("RawAR.init() - cannot proceed as model is not a .glb or .gltf file"))}return reject(new Error("RawAR.init() - could not initialise AR correctly, check values"))})}start(){if(!this._ar){throw new Error("RawAR.start() - cannot proceed as AR instance is null")}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.RawAR=RawAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1}],5:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.SceneAR=void 0;const plattar_analytics_1=require("@plattar/plattar-analytics");const plattar_api_1=require("@plattar/plattar-api");const plattar_services_1=require("@plattar/plattar-services");const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class SceneAR extends launcher_ar_1.LauncherAR{constructor(sceneID=null){super();this._analytics=null;if(!sceneID){throw new Error("SceneAR.constructor(sceneID) - sceneID must be defined")}this._sceneID=sceneID;this._ar=null}get sceneID(){return this._sceneID}_SetupAnalytics(scene){let analytics=null;if(scene){analytics=new plattar_analytics_1.Analytics(scene.attributes.application_id);analytics.origin=plattar_api_1.Server.location().type;this._analytics=analytics;analytics.data.push("type","scene-ar");analytics.data.push("sceneId",scene.id);analytics.data.push("sceneTitle",scene.attributes.title);const application=scene.relationships.find(plattar_api_1.Project);if(application){analytics.data.push("applicationId",application.id);analytics.data.push("applicationTitle",application.attributes.title)}}}_ComposeScene(scene,output){return new Promise((accept,reject)=>{const sceneProducts=scene.relationships.filter(plattar_api_1.SceneProduct);if(sceneProducts.length<=0){return reject(new Error("SceneAR.ComposeScene() - cannot proceed as scene does not contain AR components"))}const configurator=new plattar_services_1.Configurator;configurator.server=plattar_api_1.Server.location().type;configurator.output=output;sceneProducts.forEach(sceneProduct=>{const product=sceneProduct.relationships.find(plattar_api_1.Product);if(product&&product.attributes.product_variation_id){configurator.addSceneProduct(sceneProduct.id,product.attributes.product_variation_id)}});return configurator.get().then(result=>{accept(result.filename)}).catch(reject)})}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("SceneAR.init() - cannot proceed as AR not available in context"))}const scene=new plattar_api_1.Scene(this.sceneID);scene.include(plattar_api_1.Project);scene.include(plattar_api_1.SceneProduct);scene.include(plattar_api_1.SceneProduct.include(plattar_api_1.Product));scene.get().then(scene=>{this._SetupAnalytics(scene);const sceneOpt=scene.attributes.custom_json||{};if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(sceneOpt.anchor==="face"){if(util_1.Util.canRealityViewer()){return this._ComposeScene(scene,"vto").then(modelUrl=>{this._ar=new reality_viewer_1.default;this._ar.modelUrl=modelUrl;return accept(this)}).catch(reject)}else{return reject(new Error("SceneAR.init() - cannot proceed as VTO AR requires Reality Viewer support"))}}if(util_1.Util.canQuicklook()){return this._ComposeScene(scene,"usdz").then(modelUrl=>{this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=modelUrl;return accept(this)}).catch(reject)}return reject(new Error("SceneAR.init() - cannot proceed as IOS device does not support AR Mode"))}if(util_1.Util.canSceneViewer()){return this._ComposeScene(scene,"glb").then(modelUrl=>{const arviewer=new scene_viewer_1.default;arviewer.modelUrl=modelUrl;arviewer.isVertical=this.options.anchor==="vertical"?true:false;if(sceneOpt.anchor==="vertical"){arviewer.isVertical=true}this._ar=arviewer;return accept(this)}).catch(reject)}return reject(new Error("SceneAR.init() - could not initialise AR correctly, check values"))}).catch(reject)})}start(){if(!this._ar){throw new Error("SceneAR.start() - cannot proceed as AR instance is null")}const analytics=this._analytics;if(analytics){analytics.data.push("device",this._ar.device);analytics.data.push("eventCategory",this._ar.nodeType);analytics.data.push("eventAction","Start Scene Augment");analytics.write();analytics.startRecordEngagement()}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.SceneAR=SceneAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1,"@plattar/plattar-analytics":38,"@plattar/plattar-api":42,"@plattar/plattar-services":113}],6:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.SceneProductAR=void 0;const product_ar_1=require("./product-ar");const plattar_api_1=require("@plattar/plattar-api");const util_1=require("../util/util");class SceneProductAR extends product_ar_1.ProductAR{constructor(sceneProductID=null,variationID=null){super(sceneProductID,variationID);this._attachedProductID=null;if(!sceneProductID){throw new Error("SceneProductAR.constructor(sceneProductID, variationID) - sceneProductID must be defined")}this._sceneProductID=sceneProductID}get sceneProductID(){return this._sceneProductID}get productID(){if(!this._attachedProductID){throw new Error("SceneProductAR.productID() - product id was not defined, did you call init()?")}return this._attachedProductID}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("SceneProductAR.init() - cannot proceed as AR not available in context"))}const sceneProduct=new plattar_api_1.SceneProduct(this.sceneProductID);sceneProduct.get().then(sceneProduct=>{const productID=sceneProduct.attributes.product_id;if(!productID){return reject("SceneProductAR.init() - Scene Product does not have an attached Product instance")}this._attachedProductID=productID;return super.init().then(accept).catch(reject)}).catch(reject)})}}exports.SceneProductAR=SceneProductAR},{"../util/util":15,"./product-ar":3,"@plattar/plattar-api":42}],7:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ConfiguratorController=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_services_1=require("@plattar/plattar-services");const raw_ar_1=require("../../ar/raw-ar");const scene_ar_1=require("../../ar/scene-ar");const scene_product_ar_1=require("../../ar/scene-product-ar");const configurator_state_1=require("../../util/configurator-state");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class ConfiguratorController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}let dst=plattar_api_1.Server.location().base+"renderer/configurator.html?scene_id="+sceneID;const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");const showUI=this.getAttribute("show-ui");if(showUI&&showUI==="true"){dst=plattar_api_1.Server.location().base+"configurator/dist/index.html?scene_id="+sceneID}if(configState){dst+="&config_state="+configState}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("ConfiguratorController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-configurator");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("scene-id",sceneID);const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");const showUI=this.getAttribute("show-ui");if(configState){viewer.setAttribute("config-state",configState)}if(showAR){viewer.setAttribute("show-ar",showAR)}if(showUI){viewer.setAttribute("show-ui",showUI)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("ConfiguratorController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ConfiguratorController.initAR() - cannot proceed as AR not available in context"))}const arMode=this.getAttribute("ar-mode")||"generated";switch(arMode.toLowerCase()){case"inherited":this._InitARInherited(accept,reject);return;case"generated":default:this._InitARGenerated(accept,reject)}})}_InitARInherited(accept,reject){const sceneID=this.getAttribute("scene-id");const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=configurator_state_1.ConfiguratorState.decode(configState);const first=state.first();if(first){const sceneProductAR=new scene_product_ar_1.SceneProductAR(first.scene_product_id,first.product_variation_id);sceneProductAR.init().then(accept).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - invalid config-state does not have any product states"))}if(sceneID){configurator_state_1.ConfiguratorState.decodeScene(sceneID).then(state=>{const first=state.first();if(first){const sceneProductAR=new scene_product_ar_1.SceneProductAR(first.scene_product_id,first.product_variation_id);return sceneProductAR.init().then(accept).catch(reject)}return reject(new Error("ConfiguratorController.initAR() - invalid Scene does not have any product states"))}).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}_InitARGenerated(accept,reject){const viewer=this.element;const sceneID=this.getAttribute("scene-id");if(viewer&&sceneID&&viewer.messenger){let output="glb";if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){output="usdz"}viewer.messenger.getARFile(output).then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);return rawAR.init().then(accept).catch(reject)}).catch(reject);return}const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=configurator_state_1.ConfiguratorState.decode(configState);if(state.length>0){const server=this.getAttribute("server")||"production";const configurator=new plattar_services_1.Configurator;configurator.server=server;if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){configurator.output="usdz"}if(util_1.Util.canSceneViewer()){configurator.output="glb"}state.forEach(productState=>{if(productState.meta_data.augment===true){configurator.addSceneProduct(productState.scene_product_id,productState.product_variation_id)}});configurator.get().then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);rawAR.init().then(accept).catch(reject)}).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - invalid config-state does not have any product states"))}if(sceneID){const sceneAR=new scene_ar_1.SceneAR(sceneID);sceneAR.init().then(accept).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.ConfiguratorController=ConfiguratorController},{"../../ar/raw-ar":4,"../../ar/scene-ar":5,"../../ar/scene-product-ar":6,"../../util/configurator-state":14,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42,"@plattar/plattar-services":113}],8:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.PlattarController=exports.ControllerState=void 0;const plattar_api_1=require("@plattar/plattar-api");var ControllerState;(function(ControllerState){ControllerState[ControllerState["None"]=0]="None";ControllerState[ControllerState["Renderer"]=1]="Renderer";ControllerState[ControllerState["QRCode"]=2]="QRCode"})(ControllerState=exports.ControllerState||(exports.ControllerState={}));class PlattarController{constructor(parent){this._state=ControllerState.None;this._element=null;this._prevQROpt=null;this._parent=parent}static get DEFAULT_QR_OPTIONS(){return{color:"#101721",qrType:"default",margin:0}}startAR(){return new Promise((accept,reject)=>{this.initAR().then(launcher=>{launcher.start();accept()}).catch(reject)})}startQRCode(options){const qrType=this.getAttribute("qr-type")||"viewer";switch(qrType.toLowerCase()){case"ar":return this.startARQRCode(options);case"viewer":default:return this.startViewerQRCode(options)}}startARQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const opt=options||PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}const qrOptions=btoa(JSON.stringify(opt));let dst=plattar_api_1.Server.location().base+"renderer/launcher.html?qr_options="+qrOptions;const sceneID=this.getAttribute("scene-id");const configState=this.getAttribute("config-state");const embedType=this.getAttribute("embed-type");const productID=this.getAttribute("product-id");const sceneProductID=this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");const arMode=this.getAttribute("ar-mode");if(configState){dst+="&config_state="+configState}if(embedType){dst+="&embed_type="+embedType}if(productID){dst+="&product_id="+productID}if(sceneProductID){dst+="&scene_product_id="+sceneProductID}if(variationID){dst+="&variation_id="+variationID}if(arMode){dst+="&ar_mode="+arMode}if(sceneID){dst+="&scene_id="+sceneID}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this._element=viewer;this._state=ControllerState.QRCode;this._prevQROpt=opt;this.append(viewer)})}get parent(){return this._parent}getAttribute(attribute){return this.parent?this.parent.hasAttribute(attribute)?this.parent.getAttribute(attribute):null:null}append(element){const shadow=this.parent.shadowRoot||this.parent.attachShadow({mode:"open"});shadow.append(element)}}exports.PlattarController=PlattarController},{"@plattar/plattar-api":42}],9:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ProductController=void 0;const plattar_api_1=require("@plattar/plattar-api");const product_ar_1=require("../../ar/product-ar");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class ProductController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}if(state===plattar_controller_1.ControllerState.Renderer){const viewer=this._element;if(viewer){const variationID=this.getAttribute("variation-id");if(variationID&&viewer.messenger){viewer.messenger.selectVariation(variationID)}}return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const productID=this.getAttribute("product-id");if(productID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}const variationID=this.getAttribute("variation-id");const showAR=this.getAttribute("show-ar");let dst=plattar_api_1.Server.location().base+"renderer/product.html?product_id="+productID;if(variationID){dst+="&variation_id="+variationID}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("ProductController.startQRCode() - minimum required attributes not set, use product-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const productID=this.getAttribute("product-id");if(productID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-product");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("product-id",productID);const variationID=this.getAttribute("variation-id");const showAR=this.getAttribute("show-ar");if(variationID){viewer.setAttribute("variation-id",variationID)}if(showAR){viewer.setAttribute("show-ar",showAR)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("ProductController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ProductController.initAR() - cannot proceed as AR not available in context"))}const productID=this.getAttribute("product-id");if(productID){const variationID=this.getAttribute("variation-id");const product=new product_ar_1.ProductAR(productID,variationID);return product.init().then(accept).catch(reject)}return reject(new Error("ProductController.initAR() - minimum required attributes not set, use product-id as a minimum"))})}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.ProductController=ProductController},{"../../ar/product-ar":3,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42}],10:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ViewerController=void 0;const plattar_api_1=require("@plattar/plattar-api");const product_ar_1=require("../../ar/product-ar");const scene_ar_1=require("../../ar/scene-ar");const scene_product_ar_1=require("../../ar/scene-product-ar");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class ViewerController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}if(state===plattar_controller_1.ControllerState.Renderer){const viewer=this._element;if(viewer){const productID=this.getAttribute("product-id")||this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");if(productID&&variationID&&viewer.messenger){viewer.messenger.selectVariation(productID,variationID)}}return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}let dst=plattar_api_1.Server.location().base+"renderer/viewer.html?scene_id="+sceneID;const productID=this.getAttribute("product-id")||this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");const showAR=this.getAttribute("show-ar");if(productID){dst+="&productId="+productID}if(variationID){dst+="&variationId="+variationID}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("ViewerController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-viewer");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("scene-id",sceneID);const productID=this.getAttribute("product-id")||this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");const showAR=this.getAttribute("show-ar");if(productID){viewer.setAttribute("product-id",productID)}if(variationID){viewer.setAttribute("variation-id",variationID)}if(showAR){viewer.setAttribute("show-ar",showAR)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("ViewerController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ViewerController.initAR() - cannot proceed as AR not available in context"))}const productID=this.getAttribute("product-id");if(productID){const variationID=this.getAttribute("variation-id");const product=new product_ar_1.ProductAR(productID,variationID);return product.init().then(accept).catch(reject)}const sceneProductID=this.getAttribute("scene-product-id");if(sceneProductID){const variationID=this.getAttribute("variation-id");const product=new scene_product_ar_1.SceneProductAR(sceneProductID,variationID);return product.init().then(accept).catch(reject)}const sceneID=this.getAttribute("scene-id");if(sceneID){const sceneAR=new scene_ar_1.SceneAR(sceneID);sceneAR.init().then(accept).catch(reject);return}return reject(new Error("ViewerController.initAR() - minimum required attributes not set, use scene-id as a minimum"))})}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.ViewerController=ViewerController},{"../../ar/product-ar":3,"../../ar/scene-ar":5,"../../ar/scene-product-ar":6,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42}],11:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.VTOController=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_services_1=require("@plattar/plattar-services");const __1=require("../..");const raw_ar_1=require("../../ar/raw-ar");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class VTOController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}let dst=plattar_api_1.Server.location().base+"renderer/facear.html?scene_id="+sceneID;const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");if(configState){dst+="&config_state="+configState}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("VTOController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-facear");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("scene-id",sceneID);const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");if(configState){viewer.setAttribute("config-state",configState)}if(showAR){viewer.setAttribute("show-ar",showAR)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("VTOController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("VTOController.initAR() - cannot proceed as VTO AR not available in context"))}if(!(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS())){return reject(new Error("VTOController.initAR() - cannot proceed as VTO AR only available on IOS Mobile devices"))}const arMode=this.getAttribute("ar-mode")||"generated";switch(arMode.toLowerCase()){case"inherited":this._InitARInherited(accept,reject);return;case"generated":default:this._InitARGenerated(accept,reject)}})}_InitARInherited(accept,reject){const sceneID=this.getAttribute("scene-id");const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=__1.ConfiguratorState.decode(configState);const first=state.first();if(first){const sceneProductAR=new __1.SceneProductAR(first.scene_product_id,first.product_variation_id);sceneProductAR.init().then(accept).catch(reject);return}return reject(new Error("VTOController.initAR() - invalid config-state does not have any product states"))}if(sceneID){__1.ConfiguratorState.decodeScene(sceneID).then(state=>{const first=state.first();if(first){const sceneProductAR=new __1.SceneProductAR(first.scene_product_id,first.product_variation_id);return sceneProductAR.init().then(accept).catch(reject)}return reject(new Error("VTOController.initAR() - invalid Scene does not have any product states"))}).catch(reject);return}return reject(new Error("VTOController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}_InitARGenerated(accept,reject){const viewer=this.element;const sceneID=this.getAttribute("scene-id");if(viewer&&sceneID&&viewer.messenger){viewer.messenger.getARFile("vto").then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);return rawAR.init().then(accept).catch(reject)}).catch(reject);return}const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=__1.ConfiguratorState.decode(configState);if(state.length>0){const server=this.getAttribute("server")||"production";const configurator=new plattar_services_1.Configurator;configurator.server=server;configurator.output="vto";state.forEach(productState=>{if(productState.meta_data.augment===true){configurator.addSceneProduct(productState.scene_product_id,productState.product_variation_id)}});configurator.get().then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);rawAR.init().then(accept).catch(reject)}).catch(reject);return}return reject(new Error("VTOController.initAR() - invalid config-state does not have any product states"))}if(sceneID){const sceneAR=new __1.SceneAR(sceneID);sceneAR.init().then(accept).catch(reject);return}return reject(new Error("VTOController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.VTOController=VTOController},{"../..":13,"../../ar/raw-ar":4,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42,"@plattar/plattar-services":113}],12:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});const plattar_api_1=require("@plattar/plattar-api");const product_controller_1=require("./controllers/product-controller");const viewer_controller_1=require("./controllers/viewer-controller");const configurator_controller_1=require("./controllers/configurator-controller");const vto_controller_1=require("./controllers/vto-controller");var EmbedType;(function(EmbedType){EmbedType[EmbedType["Viewer"]=0]="Viewer";EmbedType[EmbedType["Configurator"]=1]="Configurator";EmbedType[EmbedType["VTO"]=2]="VTO"})(EmbedType||(EmbedType={}));class PlattarEmbed extends HTMLElement{constructor(){super();this._currentType=EmbedType.Viewer;this._controller=null}get viewer(){return this._controller?this._controller.element:null}connectedCallback(){const embedType=this.hasAttribute("embed-type")?this.getAttribute("embed-type"):"viewer";if(embedType){switch(embedType.toLowerCase()){case"viewer":this._currentType=EmbedType.Viewer;break;case"vto":this._currentType=EmbedType.VTO;break;case"configurator":this._currentType=EmbedType.Configurator;break;default:this._currentType=EmbedType.Viewer}}const observer=new MutationObserver(mutations=>{mutations.forEach(mutation=>{if(mutation.type==="attributes"){this._OnAttributesUpdated()}})});observer.observe(this,{attributes:true});const server=this.hasAttribute("server")?this.getAttribute("server"):"production";plattar_api_1.Server.create(plattar_api_1.Server.match(server||"production"));const sceneID=this.hasAttribute("scene-id")?this.getAttribute("scene-id"):null;const productID=this.hasAttribute("product-id")?this.getAttribute("product-id"):null;if(this._currentType===EmbedType.Viewer){if(!sceneID&&productID){this._controller=new product_controller_1.ProductController(this)}else if(sceneID){this._controller=new viewer_controller_1.ViewerController(this)}}else if(this._currentType===EmbedType.Configurator){this._controller=new configurator_controller_1.ConfiguratorController(this)}else if(this._currentType===EmbedType.VTO){this._controller=new vto_controller_1.VTOController(this)}const init=this.hasAttribute("init")?this.getAttribute("init"):null;if(init==="ar"){this.startAR()}else if(init==="viewer"){this.startViewer()}else if(init==="qrcode"){this.startQRCode()}else if(init==="ar-fallback-qrcode"){this.startAR().then(()=>{}).catch(_err=>{this.startQRCode()})}else if(init==="ar-fallback-viewer"){this.startAR().then(()=>{}).catch(_err=>{this.startViewer()})}}initAR(){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.initAR() - cannot execute as controller has not loaded yet"))}return this._controller.initAR().then(accept).catch(reject)})}startAR(){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.startAR() - cannot execute as controller has not loaded yet"))}return this._controller.startAR().then(accept).catch(reject)})}startViewer(){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.startViewer() - cannot execute as controller has not loaded yet"))}return this._controller.startRenderer().then(accept).catch(reject)})}startQRCode(options=null){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.startQRCode() - cannot execute as controller has not loaded yet"))}return this._controller.startQRCode(options).then(accept).catch(reject)})}removeRenderer(){if(!this._controller){return false}return this._controller.removeRenderer()}_OnAttributesUpdated(){if(this._controller){this._controller.onAttributesUpdated()}}}exports.default=PlattarEmbed},{"./controllers/configurator-controller":7,"./controllers/product-controller":9,"./controllers/viewer-controller":10,"./controllers/vto-controller":11,"@plattar/plattar-api":42}],13:[function(require,module,exports){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;var desc=Object.getOwnPropertyDescriptor(m,k);if(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m[k]}}}Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]});var __setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v});var __importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ConfiguratorState=exports.Util=exports.RawAR=exports.ModelAR=exports.SceneAR=exports.SceneProductAR=exports.ProductAR=exports.LauncherAR=exports.version=exports.PlattarQRCode=exports.PlattarWeb=void 0;exports.PlattarWeb=__importStar(require("@plattar/plattar-web"));exports.PlattarQRCode=__importStar(require("@plattar/plattar-qrcode"));exports.version=__importStar(require("./version"));var launcher_ar_1=require("./ar/launcher-ar");Object.defineProperty(exports,"LauncherAR",{enumerable:true,get:function(){return launcher_ar_1.LauncherAR}});var product_ar_1=require("./ar/product-ar");Object.defineProperty(exports,"ProductAR",{enumerable:true,get:function(){return product_ar_1.ProductAR}});var scene_product_ar_1=require("./ar/scene-product-ar");Object.defineProperty(exports,"SceneProductAR",{enumerable:true,get:function(){return scene_product_ar_1.SceneProductAR}});var scene_ar_1=require("./ar/scene-ar");Object.defineProperty(exports,"SceneAR",{enumerable:true,get:function(){return scene_ar_1.SceneAR}});var model_ar_1=require("./ar/model-ar");Object.defineProperty(exports,"ModelAR",{enumerable:true,get:function(){return model_ar_1.ModelAR}});var raw_ar_1=require("./ar/raw-ar");Object.defineProperty(exports,"RawAR",{enumerable:true,get:function(){return raw_ar_1.RawAR}});var util_1=require("./util/util");Object.defineProperty(exports,"Util",{enumerable:true,get:function(){return util_1.Util}});var configurator_state_1=require("./util/configurator-state");Object.defineProperty(exports,"ConfiguratorState",{enumerable:true,get:function(){return configurator_state_1.ConfiguratorState}});const plattar_embed_1=__importDefault(require("./embed/plattar-embed"));const version_1=__importDefault(require("./version"));if(customElements){if(customElements.get("plattar-embed")===undefined){customElements.define("plattar-embed",plattar_embed_1.default)}}console.log("using @plattar/plattar-ar-adapter v"+version_1.default)},{"./ar/launcher-ar":1,"./ar/model-ar":2,"./ar/product-ar":3,"./ar/raw-ar":4,"./ar/scene-ar":5,"./ar/scene-product-ar":6,"./embed/plattar-embed":12,"./util/configurator-state":14,"./util/util":15,"./version":16,"@plattar/plattar-qrcode":108,"@plattar/plattar-web":127}],14:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ConfiguratorState=void 0;const plattar_api_1=require("@plattar/plattar-api");class ConfiguratorState{constructor(state=null){const defaultState={meta:{scene_product_index:0,product_variation_index:1,meta_index:2},states:[]};if(state){try{const decodedb64State=atob(state);const parsedState=JSON.parse(decodedb64State);if(parsedState.meta){defaultState.meta.scene_product_index=parsedState.meta.scene_product_index||0;defaultState.meta.product_variation_index=parsedState.meta.product_variation_index||1;defaultState.meta.meta_index=parsedState.meta.meta_index||2}defaultState.states=parsedState.states||[]}catch(err){console.error("ConfiguratorState.constructor() - there was an error parsing configurator state");console.error(err)}}this._state=defaultState}setSceneProduct(sceneProductID,productVariationID,metaData=null){this.addSceneProduct(sceneProductID,productVariationID,metaData)}addSceneProduct(sceneProductID,productVariationID,metaData=null){if(sceneProductID&&productVariationID){const states=this._state.states;const meta=this._state.meta;let newData=null;const existingData=this.findSceneProductIndex(sceneProductID);if(existingData){newData=existingData}else{newData=[];states.push(newData)}newData[meta.scene_product_index]=sceneProductID;newData[meta.product_variation_index]=productVariationID;if(metaData){newData[meta.meta_index]=metaData}}}findSceneProductIndex(sceneProductID){const states=this._state.states;if(states.length>0){const meta=this._state.meta;const found=states.find(productState=>{return productState[meta.scene_product_index]===sceneProductID});return found?found:null}return null}findSceneProduct(sceneProductID){const found=this.findSceneProductIndex(sceneProductID);if(found){const meta=this._state.meta;const data={scene_product_id:found[meta.scene_product_index],product_variation_id:found[meta.product_variation_index],meta_data:{augment:true}};if(found.length===3){data.meta_data.augment=found[meta.meta_index].augment||true}return data}return null}forEach(callback){const states=this._state.states;const meta=this._state.meta;if(states.length>0){states.forEach(productState=>{if(productState.length===2){callback({scene_product_id:productState[meta.scene_product_index],product_variation_id:productState[meta.product_variation_index],meta_data:{augment:true}})}else if(productState.length===3){callback({scene_product_id:productState[meta.scene_product_index],product_variation_id:productState[meta.product_variation_index],meta_data:{augment:productState[meta.meta_index].augment||true}})}})}}first(){const states=this._state.states;if(states.length>0){const meta=this._state.meta;const found=states.find(productState=>{const check=productState[meta.scene_product_index];return check!==null&&check!==undefined});if(!found){return null}const data={scene_product_id:found[meta.scene_product_index],product_variation_id:found[meta.product_variation_index],meta_data:{augment:true}};if(found.length===3){data.meta_data.augment=found[meta.meta_index].augment||true}return data}return null}get length(){return this._state.states.length}static decode(state){return new ConfiguratorState(state)}static decodeScene(sceneID=null){return new Promise((accept,reject)=>{const configState=new ConfiguratorState;if(!sceneID){return reject(new Error("ConfiguratorState.decodeScene(sceneID) - sceneID must be defined"))}const scene=new plattar_api_1.Scene(sceneID);scene.include(plattar_api_1.SceneProduct);scene.include(plattar_api_1.SceneProduct.include(plattar_api_1.Product));scene.get().then(scene=>{const sceneProducts=scene.relationships.filter(plattar_api_1.SceneProduct);if(sceneProducts.length<=0){return accept(configState)}sceneProducts.forEach(sceneProduct=>{const product=sceneProduct.relationships.find(plattar_api_1.Product);if(product&&product.attributes.product_variation_id){configState.setSceneProduct(sceneProduct.id,product.attributes.product_variation_id)}});accept(configState)}).catch(reject)})}encode(){return btoa(JSON.stringify(this._state))}}exports.ConfiguratorState=ConfiguratorState},{"@plattar/plattar-api":42}],15:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Util=void 0;class Util{static canAugment(){const userAgent=navigator.userAgent;if((/CriOS/i.test(userAgent)||/Macintosh|iPad|iPhone|iPod/.test(userAgent))&&!window.MSStream){if(/\bFB[\w_]+\//.test(userAgent)){return false}if(/\bInstagram/i.test(userAgent)){return false}return Util.canQuicklook()}else if(/android/i.test(userAgent)){return true}return false}static canQuicklook(){const tempAnchor=document.createElement("a");return tempAnchor.relList&&tempAnchor.relList.supports&&tempAnchor.relList.supports("ar")}static canSceneViewer(){return Util.canAugment()&&/android/i.test(navigator.userAgent)}static canRealityViewer(){if(!Util.canAugment()){return false}if(/Macintosh|iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream){if(Util.isSafari()&&Util.getIOSVersion()[0]>=13){return true}}return false}static isSafari(){if(navigator.vendor&&navigator.userAgent){return navigator.vendor.indexOf("Apple")>-1&&navigator.userAgent.indexOf("CriOS")===-1&&navigator.userAgent.indexOf("FxiOS")===-1}return false}static isChromeOnIOS(){const userAgent=navigator.userAgent;if(userAgent){return Util.canAugment()&&/CriOS/i.test(userAgent)}return false}static getIOSVersion(){if(/iP(hone|od|ad)/.test(navigator.platform)){const v=navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);if(v!==null){return[parseInt(v[1],10),parseInt(v[2],10),parseInt(v[3],10)]}}if(/Mac/.test(navigator.platform)){const v=navigator.appVersion.match(/Version\/(\d+)\.(\d+)\.?(\d+)?/);if(v!==null){return[parseInt(v[1],10),parseInt(v[2],10),parseInt(v[3],10)]}}return[-1,-1,-1]}static getChromeVersion(){const raw=navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);if(raw!==null){return parseInt(raw[2],10)}return 1}}exports.Util=Util},{}],16:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default="1.130.3"},{}],17:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});class ARViewer{constructor(){this.modelUrl=null;this.modelUrl=null}}exports.default=ARViewer},{}],18:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});const ar_viewer_1=__importDefault(require("./ar-viewer"));class QuicklookViewer extends ar_viewer_1.default{constructor(){super();this.araction=null;this.titleHTML="&checkoutTitle="+document.title+"&checkoutSubtitle="+document.title;this.arcallback=()=>{}}get nodeType(){return"Quick Look"}get device(){return"ios"}start(){if(!this.modelUrl){throw new Error("QuicklookViewer.start() - model url not set, use QuicklookViewer.modelUrl")}const anchor=document.createElement("a");anchor.setAttribute("rel","ar");anchor.appendChild(document.createElement("img"));let url=this.modelUrl;const araction=this.araction;if(araction){const handleQuicklook=event=>{if(event.data==="_apple_ar_quicklook_button_tapped"){this.arcallback()}document.body.removeChild(anchor);anchor.removeEventListener("message",handleQuicklook,false)};anchor.addEventListener("message",handleQuicklook,false);document.body.appendChild(anchor);url+="#callToAction="+araction;if(this.titleHTML){url+=this.titleHTML}}anchor.setAttribute("href",encodeURI(url));anchor.click()}}exports.default=QuicklookViewer},{"./ar-viewer":17}],19:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});const ar_viewer_1=__importDefault(require("./ar-viewer"));class RealityViewer extends ar_viewer_1.default{constructor(){super()}get nodeType(){return"Reality Viewer"}get device(){return"ios"}start(){if(!this.modelUrl){throw new Error("RealityViewer.start() - model url not set, use RealityViewer.modelUrl")}const anchor=document.createElement("a");anchor.setAttribute("rel","ar");anchor.appendChild(document.createElement("img"));anchor.setAttribute("href",this.modelUrl);anchor.click()}}exports.default=RealityViewer},{"./ar-viewer":17}],20:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});const ar_viewer_1=__importDefault(require("./ar-viewer"));class SceneViewer extends ar_viewer_1.default{constructor(){super();this.araction=null;this.isVertical=false;this.titleHTML="<b>"+document.title;this.isVertical=false}get nodeType(){return"Scene Viewer"}get device(){return"android"}start(){if(!this.modelUrl){throw new Error("SceneViewer.start() - model url not set, use SceneViewer.modelUrl")}const araction=this.araction;let composedLink=encodeURIComponent(location.href);if(araction){const link=new URL(location.href);link.searchParams.set("araction",araction);composedLink=encodeURIComponent(link.href)}if(!composedLink){throw new Error("SceneViewer.start() - failed to create composition link, check parameters")}const linkOverride=encodeURIComponent(location.href+"#no-ar-fallback");let intent="intent://arvr.google.com/scene-viewer/1.1";intent+="?file="+this.modelUrl;intent+="&mode=ar_preferred";intent+="&link="+composedLink;intent+="&title=<b>"+this.titleHTML;if(this.isVertical){intent+="&enable_vertical_placement=true"}intent+=" #Intent;scheme=https;package=com.google.ar.core;action=android.intent.action.VIEW;";intent+="S.browser_fallback_url="+linkOverride+";end;";const anchor=document.createElement("a");anchor.setAttribute("href",intent);anchor.click()}}exports.default=SceneViewer},{"./ar-viewer":17}],21:[function(require,module,exports){"use strict";const Messenger=require("./messenger/messenger.js");const Memory=require("./memory/memory.js");const GlobalEventHandler=require("./messenger/global-event-handler.js");const Version=require("./version");if(!GlobalEventHandler.instance().messengerInstance){const messengerInstance=new Messenger;const memoryInstance=new Memory(messengerInstance);GlobalEventHandler.instance().messengerInstance=messengerInstance;GlobalEventHandler.instance().memoryInstance=memoryInstance}if(!GlobalEventHandler.instance().memoryInstance){const memoryInstance=new Memory(GlobalEventHandler.instance().messengerInstance);GlobalEventHandler.instance().memoryInstance=memoryInstance}console.log("using @plattar/context-messenger v"+Version);module.exports={messenger:GlobalEventHandler.instance().messengerInstance,memory:GlobalEventHandler.instance().memoryInstance,version:Version}},{"./memory/memory.js":22,"./messenger/global-event-handler.js":29,"./messenger/messenger.js":30,"./version":35}],22:[function(require,module,exports){const PermanentMemory=require("./permanent-memory");const TemporaryMemory=require("./temporary-memory");class Memory{constructor(messengerInstance){this._messenger=messengerInstance;this._tempMemory=new TemporaryMemory(messengerInstance);this._permMemory=new PermanentMemory(messengerInstance);this._messenger.self.__memory__set_temp_var=(name,data)=>{this._tempMemory[name]=data};this._messenger.self.__memory__set_perm_var=(name,data)=>{this._permMemory[name]=data}}get temp(){return this._tempMemory}get perm(){return this._permMemory}}module.exports=Memory},{"./permanent-memory":23,"./temporary-memory":24}],23:[function(require,module,exports){const WrappedValue=require("./wrapped-value");class PermanentMemory{constructor(messengerInstance){return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){return(variable,callback)=>{if(!target[variable]){target[variable]=new WrappedValue(variable,true,messengerInstance)}target[variable].watch=callback}}if(prop==="clear"){return()=>{for(const pitem of Object.getOwnPropertyNames(target)){delete target[pitem];localStorage.removeItem(pitem)}}}if(prop==="purge"){return()=>{localStorage.clear();for(const pitem of Object.getOwnPropertyNames(target)){delete target[pitem]}}}if(prop==="refresh"){return()=>{for(const val of Object.getOwnPropertyNames(target)){target[val].refresh()}}}if(!target[prop]){target[prop]=new WrappedValue(prop,true,messengerInstance)}return target[prop].value},set:(target,prop,value)=>{if(!target[prop]){target[prop]=new WrappedValue(prop,true,messengerInstance)}target[prop].value=value;return true}})}}module.exports=PermanentMemory},{"./wrapped-value":25}],24:[function(require,module,exports){const WrappedValue=require("./wrapped-value");class TemporaryMemory{constructor(messengerInstance){return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){return(variable,callback)=>{if(!target[variable]){target[variable]=new WrappedValue(variable,false,messengerInstance)}target[variable].watch=callback}}if(prop==="clear"||prop==="purge"){return()=>{for(const val of Object.getOwnPropertyNames(target)){delete target[val]}}}if(prop==="refresh"){return()=>{for(const val of Object.getOwnPropertyNames(target)){target[val].refresh()}}}if(!target[prop]){target[prop]=new WrappedValue(prop,false,messengerInstance)}return target[prop].value},set:(target,prop,value)=>{if(!target[prop]){target[prop]=new WrappedValue(prop,false,messengerInstance)}target[prop].value=value;return true}})}}module.exports=TemporaryMemory},{"./wrapped-value":25}],25:[function(require,module,exports){class WrappedValue{constructor(varName,isPermanent,messengerInstance){this._value=undefined;this._callback=undefined;this._isPermanent=isPermanent;this._varName=varName;this._messenger=messengerInstance;if(this._isPermanent){this._value=JSON.parse(localStorage.getItem(this._varName))}}refresh(){if(this._isPermanent){this._messenger.broadcast.__memory__set_perm_var(this._varName,this._value);if(this._messenger.parent){this._messenger.parent.__memory__set_perm_var(this._varName,this._value)}}else{this._messenger.broadcast.__memory__set_temp_var(this._varName,this._value);if(this._messenger.parent){this._messenger.parent.__memory__set_temp_var(this._varName,this._value)}}}refreshFor(callable){if(!this._messenger[callable]){return}if(this._isPermanent){this._messenger[callable].__memory__set_perm_var(this._varName,this._value)}else{this._messenger[callable].__memory__set_temp_var(this._varName,this._value)}}get value(){if(this._isPermanent&&this._value==undefined){this._value=JSON.parse(localStorage.getItem(this._varName))}return this._value}set value(newValue){if(typeof newValue==="function"){throw new TypeError("WrappedValue.value cannot be set to a function type")}const oldValue=this._value;this._value=newValue;if(this._isPermanent){localStorage.setItem(this._varName,JSON.stringify(this._value))}if(this._callback&&oldValue!==newValue){this.refresh();this._callback(oldValue,this._value)}}set watch(newValue){if(typeof newValue==="function"){if(newValue.length==2){this._callback=newValue}else{throw new RangeError("WrappedValue.watch callback must accept exactly 2 variables. Try using WrappedValue.watch = (oldVal, newVal) => {}")}}else{throw new TypeError("WrappedValue.watch must be a type of function. Try using WrappedValue.watch = (oldVal, newVal) => {}")}}}module.exports=WrappedValue},{}],26:[function(require,module,exports){class Broadcaster{constructor(messengerInstance){this._messengerInstance=messengerInstance;this._interfaces=[];return new Proxy(this,{get:(target,prop,receiver)=>{switch(prop){case"_push":case"_interfaces":return target[prop];default:break}return(...args)=>{const interfaces=target._interfaces;const promises=[];interfaces.forEach(callable=>{promises.push(target._messengerInstance[callable][prop](...args))});return Promise.allSettled(promises)}}})}_push(interfaceID){const index=this._interfaces.indexOf(interfaceID);if(index>-1){this._interfaces.splice(index,1)}this._interfaces.push(interfaceID)}}module.exports=Broadcaster},{}],27:[function(require,module,exports){const WrappedFunction=require("./wrapped-local-function");class CurrentFunctionList{constructor(){return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){return(variable,callback)=>{if(!target[variable]){target[variable]=new WrappedFunction(variable)}target[variable].watch=callback}}if(prop==="clear"||prop==="purge"){return()=>{for(const pitem of Object.getOwnPropertyNames(target)){delete target[pitem]}}}if(!target[prop]){target[prop]=new WrappedFunction(prop)}return(...args)=>{return target[prop].exec(...args)}},set:(target,prop,value)=>{if(!target[prop]){target[prop]=new WrappedFunction(prop)}target[prop].value=value;return true}})}}module.exports=CurrentFunctionList},{"./wrapped-local-function":28}],28:[function(require,module,exports){const Util=require("../util/util.js");class WrappedLocalFunction{constructor(funcName){this._value=undefined;this._callback=undefined;this._funcName=funcName}_execute(...args){const rData=this._value(...args);if(this._callback){this._callback(rData,...args)}return rData}exec(...args){return new Promise((accept,reject)=>{if(!this._value){return reject(new Error("WrappedLocalFunction.exec() function with name "+this._funcName+"() is not defined"))}try{const rObject=this._execute(...args);if(Util.isPromise(rObject)){rObject.then(res=>{return accept(res)}).catch(err=>{return reject(err)})}else{return accept(rObject)}}catch(e){return reject(e)}})}set value(newValue){if(typeof newValue!=="function"){throw new TypeError("WrappedLocalFunction.value must be a function. To store values use Plattar.memory")}this._value=newValue}set watch(newValue){if(typeof newValue==="function"){this._callback=newValue}else{throw new TypeError("WrappedLocalFunction.watch must be a type of function. Try using WrappedLocalFunction.watch = (rData, ...args) => {}")}}}module.exports=WrappedLocalFunction},{"../util/util.js":34}],29:[function(require,module,exports){const RemoteInterface=require("./remote-interface.js");class GlobalEventHandler{constructor(){this._eventListeners={};window.addEventListener("message",evt=>{const data=evt.data;let jsonData=undefined;try{jsonData=JSON.parse(data)}catch(e){jsonData=undefined}if(jsonData&&jsonData.event&&jsonData.data){if(this._eventListeners[jsonData.event]){const remoteInterface=new RemoteInterface(evt.source,evt.origin);this._eventListeners[jsonData.event].forEach(callback=>{try{callback(remoteInterface,jsonData.data)}catch(e){console.error("GlobalEventHandler.message() error occured during callback ");console.error(e)}})}}})}set messengerInstance(value){this._messenger=value}set memoryInstance(value){this._memory=value}get messengerInstance(){return this._messenger}get memoryInstance(){return this._memory}listen(event,callback){if(typeof callback!=="function"){throw new TypeError("GlobalEventHandler.listen(event, callback) callback must be a type of function.")}if(!this._eventListeners[event]){this._eventListeners[event]=[]}this._eventListeners[event].push(callback)}}GlobalEventHandler.instance=()=>{if(!GlobalEventHandler._default){GlobalEventHandler._default=new GlobalEventHandler}return GlobalEventHandler._default};module.exports=GlobalEventHandler},{"./remote-interface.js":31}],30:[function(require,module,exports){const CurrentFunctionList=require("./current/current-function-list");const RemoteInterface=require("./remote-interface");const RemoteFunctionList=require("./remote/remote-function-list");const Util=require("./util/util.js");const GlobalEventHandler=require("./global-event-handler.js");const Broadcaster=require("./broadcaster.js");class Messenger{constructor(){this._id=Util.id();this._parentStack=RemoteInterface.default();this._currentFunctionList=new CurrentFunctionList;this._broadcaster=new Broadcaster(this);this._parentFunctionList=undefined;const callbacks=new Map;this._callbacks=callbacks;this._setup();return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="onload"){return(variable,callback)=>{if(variable==="self"||variable==="id"){return callback()}if(target[variable]){return callback()}if(callbacks.has(variable)){const array=callbacks.get(variable);array.push(callback)}else{callbacks.set(variable,[callback])}}}switch(prop){case"id":return target._id;case"self":return target._currentFunctionList;case"broadcast":return target._broadcaster;case"addChild":case"_setup":case"_registerListeners":case"_id":case"_broadcaster":case"_callbacks":case"_parentStack":return target[prop];default:break}const targetVar=target[prop];if(!targetVar||!targetVar.isValid()){return undefined}return target[prop]}})}addChild(childNode){const remoteInterface=new RemoteInterface(childNode.contentWindow,"*");remoteInterface.send("__messenger__parent_init_inv",{id:childNode.id})}_setup(){this._registerListeners();if(this._parentStack){this._parentStack.send("__messenger__child_init")}if(window.location.protocol!=="https:"){console.warn("Messenger["+this._id+'] requires https but protocol is "'+window.location.protocol+'", messenger will not work correctly.')}}_registerListeners(){GlobalEventHandler.instance().listen("__messenger__child_init",(src,data)=>{const iframeID=src.id;switch(iframeID){case undefined:throw new Error("Messenger["+this._id+"].setup() Component ID cannot be undefined");case"self":throw new Error("Messenger["+this._id+'].setup() Component ID of "self" cannot be used as the keyword is reserved');case"parent":throw new Error("Messenger["+this._id+'].setup() Component ID of "parent" cannot be used as the keyword is reserved');case"id":throw new Error("Messenger["+this._id+'].setup() Component ID of "id" cannot be used as the keyword is reserved');case"onload":throw new Error("Messenger["+this._id+'].setup() Component ID of "onload" cannot be used as the keyword is reserved');default:break}this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));this._broadcaster._push(iframeID);const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID);src.send("__messenger__parent_init")});GlobalEventHandler.instance().listen("__messenger__child_init_inv",(src,data)=>{const iframeID=data.id;switch(iframeID){case undefined:throw new Error("Messenger["+this._id+"].setup() Component ID cannot be undefined");case"self":throw new Error("Messenger["+this._id+'].setup() Component ID of "self" cannot be used as the keyword is reserved');case"parent":throw new Error("Messenger["+this._id+'].setup() Component ID of "parent" cannot be used as the keyword is reserved');case"id":throw new Error("Messenger["+this._id+'].setup() Component ID of "id" cannot be used as the keyword is reserved');case"onload":throw new Error("Messenger["+this._id+'].setup() Component ID of "onload" cannot be used as the keyword is reserved');default:break}this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));this._broadcaster._push(iframeID);const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID)});GlobalEventHandler.instance().listen("__messenger__parent_init",(src,data)=>{const iframeID="parent";this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID)});GlobalEventHandler.instance().listen("__messenger__parent_init_inv",(src,data)=>{const iframeID="parent";this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID);src.send("__messenger__child_init_inv",{id:data.id})});GlobalEventHandler.instance().listen("__messenger__exec_fnc",(src,data)=>{const instanceID=data.instance_id;const args=data.function_args;const fname=data.function_name;GlobalEventHandler.instance().messengerInstance.self[fname](...args).then(res=>{src.send("__messenger__exec_fnc_result",{function_status:"success",function_name:fname,function_args:res,instance_id:instanceID})}).catch(err=>{const error_arg=Util.isError(err)?err.message:err;src.send("__messenger__exec_fnc_result",{function_status:"error",function_name:fname,function_args:error_arg?error_arg:"unknown error",instance_id:instanceID})})})}}module.exports=Messenger},{"./broadcaster.js":26,"./current/current-function-list":27,"./global-event-handler.js":29,"./remote-interface":31,"./remote/remote-function-list":32,"./util/util.js":34}],31:[function(require,module,exports){class RemoteInterface{constructor(source,origin){this._source=source;this._origin=origin;if(typeof this._source.postMessage!=="function"){throw new Error("RemoteInterface() provided source is invalid")}}get source(){return this._source}get origin(){return this._origin}get id(){return this.source.frameElement?this.source.frameElement.id:undefined}send(event,data){const sendData={event:event,data:data||{}};this.source.postMessage(JSON.stringify(sendData),this.origin)}static default(){try{const parentStack=window.parent?window.frameElement&&window.frameElement.nodeName=="IFRAME"?window.parent:undefined:undefined;if(parentStack){return new RemoteInterface(parentStack,"*")}}catch(err){}return undefined}}module.exports=RemoteInterface},{}],32:[function(require,module,exports){const WrappedFunction=require("./wrapped-remote-function");class RemoteFunctionList{constructor(remoteName){this._remoteInterface=undefined;this._remoteName=remoteName;return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){throw new Error("RemoteFunctionList.watch cannot watch execution of remote functions from current context. Did you mean to use Plattar.messenger.self instead?")}if(prop==="clear"){throw new Error("RemoteFunctionList.clear cannot clear/remove remote functions from current context. Did you mean to use Plattar.messenger.self.clear() instead?")}if(prop==="purge"){throw new Error("RemoteFunctionList.purge cannot clear/remove remote functions from current context. Did you mean to use Plattar.messenger.self.purge() instead?")}switch(prop){case"setup":case"isValid":case"_remoteInterface":case"name":case"_remoteName":return target[prop];default:break}if(!target[prop]){target[prop]=new WrappedFunction(prop,target._remoteInterface)}return(...args)=>{return target[prop].exec(...args)}},set:(target,prop,value)=>{if(prop==="_remoteInterface"){target[prop]=value;return true}throw new Error("RemoteFunctionList.set cannot add a remote function from current context. Use Plattar.messenger.self instead")}})}setup(remoteInterface){if(typeof remoteInterface.send!=="function"){throw new Error("RemoteFunctionList.setup() provided invalid interface")}this._remoteInterface=remoteInterface}get name(){return this._remoteName}isValid(){return this._remoteInterface!=undefined}}module.exports=RemoteFunctionList},{"./wrapped-remote-function":33}],33:[function(require,module,exports){const Util=require("../util/util.js");const GlobalEventHandler=require("../global-event-handler.js");class WrappedRemoteFunction{constructor(funcName,remoteInterface){this._funcName=funcName;this._remoteInterface=remoteInterface;this._callInstances={};GlobalEventHandler.instance().listen("__messenger__exec_fnc_result",(src,data)=>{const instanceID=data.instance_id;if(data.function_name!==this._funcName){return}if(!this._callInstances[instanceID]){return}const promise=this._callInstances[instanceID];delete this._callInstances[instanceID];if(data.function_status==="success"){promise.accept(data.function_args)}else{promise.reject(new Error(data.function_args))}})}exec(...args){const instanceID=Util.id();if(this._callInstances[instanceID]){return new Promise((accept,reject)=>{return reject(new Error("WrappedRemoteFunction.exec() cannot execute function. System generated duplicate Instance ID. PRNG needs checking"))})}return new Promise((accept,reject)=>{this._callInstances[instanceID]={accept:accept,reject:reject};this._remoteInterface.send("__messenger__exec_fnc",{instance_id:instanceID,function_name:this._funcName,function_args:args})})}}module.exports=WrappedRemoteFunction},{"../global-event-handler.js":29,"../util/util.js":34}],34:[function(require,module,exports){class Util{static id(){return Math.abs(Math.floor(Math.random()*1e13))}static isPromise(obj){return!!obj&&(typeof obj==="object"||typeof obj==="function")&&typeof obj.then==="function"}static isError(e){return e&&e.stack&&e.message&&typeof e.stack==="string"&&typeof e.message==="string"}}module.exports=Util},{}],35:[function(require,module,exports){module.exports="1.113.6"},{}],36:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.AnalyticsData=void 0;const util_1=require("../util/util");class AnalyticsData{constructor(){this._map=new Map;this.push("source","embed");this.push("pageTitle",document.title);this.push("pageURL",location.href);this.push("referrer",document.referrer);this.push("user_id",AnalyticsData._GetUserID())}push(key,value){this._map.set(key,value)}get data(){return Object.fromEntries(this._map)}static _GetUserID(){const key="plattar_user_id";let userID=null;try{userID=localStorage.getItem(key)}catch(err){userID=util_1.Util.generateUUID();try{localStorage.setItem(key,userID)}catch(_err){}}if(!userID){userID=util_1.Util.generateUUID();try{localStorage.setItem(key,userID)}catch(_err){}}return userID}}exports.AnalyticsData=AnalyticsData},{"../util/util":40}],37:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.Analytics=void 0;const basic_http_1=__importDefault(require("../util/basic-http"));const analytics_data_1=require("./analytics-data");class Analytics{constructor(applicationID){this._pageTime=null;this.origin="production";this.event="track";this.isBeacon=false;this._applicationID=applicationID;this._data=new analytics_data_1.AnalyticsData;this._handlePageHide=()=>{if(document.visibilityState==="hidden"){this._pageTime=new Date}else if(this._pageTime){const time2=new Date;const diff=time2.getTime()-this._pageTime.getTime();const data=this.data;data.push("eventAction","View Time");data.push("viewTime",diff);data.push("eventLabel",diff);this.write();this._pageTime=null;document.removeEventListener("visibilitychange",this._handlePageHide,false)}}}query(query=null){return new Promise((accept,reject)=>{if(!query){return reject(new Error("Analytics.query() - provided query was null"))}const url=this.origin==="dev"?"http://localhost:9000/2015-03-31/functions/function/invocations":"https://oyywgrj9ki.execute-api.ap-southeast-2.amazonaws.com/main/analytics";const data={type:"read",application_id:this._applicationID,event:this.event,data:query};basic_http_1.default.exec("POST",url,data).then(result=>{accept(result&&result.results?result.results:{})}).catch(reject)})}write(){return new Promise((accept,reject)=>{const data=this._data;const url=this.origin==="dev"?"http://localhost:9000/2015-03-31/functions/function/invocations":"https://oyywgrj9ki.execute-api.ap-southeast-2.amazonaws.com/main/analytics";data.push("applicationId",this._applicationID);const sendData={type:"write",application_id:this._applicationID,origin:this.origin,event:this.event,data:data.data};if(this.isBeacon===false){basic_http_1.default.exec("POST",url,sendData).then(result=>{accept(result&&result.results?result.results:{})}).catch(reject)}else{basic_http_1.default.execBeacon(url,sendData).then(result=>{accept(result&&result.results?result.results:{})}).catch(reject)}})}startRecordEngagement(){document.addEventListener("visibilitychange",this._handlePageHide,false)}get data(){return this._data}}exports.Analytics=Analytics},{"../util/basic-http":39,"./analytics-data":36}],38:[function(require,module,exports){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;var desc=Object.getOwnPropertyDescriptor(m,k);if(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m[k]}}}Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]});var __setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v});var __importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.Analytics=exports.version=void 0;exports.version=__importStar(require("./version"));var analytics_1=require("./analytics/analytics");Object.defineProperty(exports,"Analytics",{enumerable:true,get:function(){return analytics_1.Analytics}});const version_1=__importDefault(require("./version"));console.log("using @plattar/plattar-analytics v"+version_1.default)},{"./analytics/analytics":37,"./version":41}],39:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});class BasicHTTP{static execBeacon(path,data=null){return new Promise((accept,reject)=>{try{const body=data||{};const headers={type:"application/json"};const blob=new Blob([JSON.stringify(body)],headers);const result=navigator.sendBeacon(path,blob);if(result){return accept({})}else{return reject(new Error("BasicHTTP.execBeacon() - could not query request"))}}catch(err){return reject(err)}})}static exec(protocol,path,data=null){return new Promise((accept,reject)=>{try{const http=new XMLHttpRequest;http.open(protocol,path,true);http.setRequestHeader("Content-Type","application/json");http.setRequestHeader("Accept","application/json");http.onload=e=>{if(http.status===200){if(http.response){try{const resp=JSON.parse(http.response);return accept(resp)}catch(_err){}}return accept({})}else{return reject(e)}};http.onerror=e=>{return reject(e)};http.onprogress=_e=>{};http.send(data?JSON.stringify(data):null)}catch(e){return reject(e)}})}}exports.default=BasicHTTP},{}],40:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Util=void 0;const _lut=[];for(let i=0;i<256;i++){_lut[i]=(i<16?"0":"")+i.toString(16)}class Util{static generateUUID(){const d0=Math.random()*4294967295|0;const d1=Math.random()*4294967295|0;const d2=Math.random()*4294967295|0;const d3=Math.random()*4294967295|0;const uuid=_lut[d0&255]+_lut[d0>>8&255]+_lut[d0>>16&255]+_lut[d0>>24&255]+"-"+_lut[d1&255]+_lut[d1>>8&255]+"-"+_lut[d1>>16&15|64]+_lut[d1>>24&255]+"-"+_lut[d2&63|128]+_lut[d2>>8&255]+"-"+_lut[d2>>16&255]+_lut[d2>>24&255]+_lut[d3&255]+_lut[d3>>8&255]+_lut[d3>>16&255]+_lut[d3>>24&255];return uuid.toLowerCase()}}exports.Util=Util},{}],41:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default="1.124.1"},{}],42:[function(require,module,exports){"use strict";const Server=require("./server/plattar-server.js");const Util=require("./util/plattar-util.js");const Project=require("./types/application.js");const Scene=require("./types/scene/scene.js");const SceneAnnotation=require("./types/scene/scene-annotation.js");const SceneAudio=require("./types/scene/scene-audio.js");const SceneButton=require("./types/scene/scene-button.js");const SceneCamera=require("./types/scene/scene-camera.js");const SceneCarousel=require("./types/scene/scene-carousel.js");const SceneImage=require("./types/scene/scene-image.js");const SceneModel=require("./types/scene/scene-model.js");const ScenePanorama=require("./types/scene/scene-panorama.js");const ScenePoller=require("./types/scene/scene-poller.js");const SceneProduct=require("./types/scene/scene-product.js");const SceneShadow=require("./types/scene/scene-shadow.js");const SceneVideo=require("./types/scene/scene-video.js");const SceneVolumetric=require("./types/scene/scene-volumetric.js");const SceneYoutube=require("./types/scene/scene-youtube.js");const SceneScript=require("./types/scene/scene-script.js");const Page=require("./types/page/page.js");const CardButton=require("./types/page/card-button.js");const CardHTML=require("./types/page/card-html.js");const CardIFrame=require("./types/page/card-iframe.js");const CardImage=require("./types/page/card-image.js");const CardMap=require("./types/page/card-map.js");const CardParagraph=require("./types/page/card-paragraph.js");const CardRow=require("./types/page/card-row.js");const CardSlider=require("./types/page/card-slider.js");const CardTitle=require("./types/page/card-title.js");const CardVideo=require("./types/page/card-video.js");const CardYoutube=require("./types/page/card-youtube.js");const Product=require("./types/product/product.js");const ProductVariation=require("./types/product/product-variation.js");const ProductAnnotation=require("./types/product/product-annotation.js");const FileAudio=require("./types/file/file-audio.js");const FileVideo=require("./types/file/file-video.js");const FileModel=require("./types/file/file-model.js");const FileImage=require("./types/file/file-image.js");const FileScript=require("./types/file/file-script.js");const ScriptEvent=require("./types/misc/script-event.js");const Tag=require("./types/misc/tag.js");const ApplicationBuild=require("./types/misc/application-build.js");const AsyncJob=require("./types/misc/async-job.js");const AssetLibrary=require("./types/misc/asset-library.js");const TriggerImage=require("./types/trigger/trigger-image.js");const Brief=require("./types/content-pipeline/brief.js");const CommentBrief=require("./types/content-pipeline/comment-brief.js");const CommentQuote=require("./types/content-pipeline/comment-quote.js");const CommentSolution=require("./types/content-pipeline/comment-solution.js");const PipelineUser=require("./types/content-pipeline/pipeline-user.js");const Quote=require("./types/content-pipeline/quote.js");const Rating=require("./types/content-pipeline/rating.js");const Solution=require("./types/content-pipeline/solution.js");const Folder=require("./types/content-pipeline/folder.js");const SceneObject=require("./types/scene/scene-base.js");const CardObject=require("./types/page/card-base.js");const ProductObject=require("./types/product/product-base.js");const FileObject=require("./types/file/file-base.js");const Version=require("./version");Server.create();console.log("using @plattar/plattar-api v"+Version);module.exports={Server:Server,Util:Util,Project:Project,Scene:Scene,SceneAnnotation:SceneAnnotation,SceneAudio:SceneAudio,SceneButton:SceneButton,SceneCamera:SceneCamera,SceneCarousel:SceneCarousel,SceneImage:SceneImage,SceneModel:SceneModel,ScenePanorama:ScenePanorama,ScenePoller:ScenePoller,SceneProduct:SceneProduct,SceneShadow:SceneShadow,SceneVideo:SceneVideo,SceneVolumetric:SceneVolumetric,SceneYoutube:SceneYoutube,SceneScript:SceneScript,Page:Page,CardButton:CardButton,CardHTML:CardHTML,CardIFrame:CardIFrame,CardImage:CardImage,CardMap:CardMap,CardParagraph:CardParagraph,CardRow:CardRow,CardSlider:CardSlider,CardTitle:CardTitle,CardVideo:CardVideo,CardYoutube:CardYoutube,Product:Product,ProductVariation:ProductVariation,ProductAnnotation:ProductAnnotation,FileAudio:FileAudio,FileVideo:FileVideo,FileModel:FileModel,FileImage:FileImage,FileScript:FileScript,FileObject:FileObject,ScriptEvent:ScriptEvent,Tag:Tag,ApplicationBuild:ApplicationBuild,AsyncJob:AsyncJob,AssetLibrary:AssetLibrary,TriggerImage:TriggerImage,Brief:Brief,CommentBrief:CommentBrief,CommentQuote:CommentQuote,CommentSolution:CommentSolution,PipelineUser:PipelineUser,Quote:Quote,Rating:Rating,Solution:Solution,Folder:Folder,SceneObject:SceneObject,CardObject:CardObject,ProductObject:ProductObject,version:Version}},{"./server/plattar-server.js":44,"./types/application.js":45,"./types/content-pipeline/brief.js":46,"./types/content-pipeline/comment-brief.js":47,"./types/content-pipeline/comment-quote.js":48,"./types/content-pipeline/comment-solution.js":49,"./types/content-pipeline/folder.js":50,"./types/content-pipeline/pipeline-user.js":51,"./types/content-pipeline/quote.js":52,"./types/content-pipeline/rating.js":53,"./types/content-pipeline/solution.js":54,"./types/file/file-audio.js":55,"./types/file/file-base.js":56,"./types/file/file-image.js":57,"./types/file/file-model.js":58,"./types/file/file-script.js":59,"./types/file/file-video.js":60,"./types/misc/application-build.js":64,"./types/misc/asset-library.js":65,"./types/misc/async-job.js":66,"./types/misc/script-event.js":67,"./types/misc/tag.js":68,"./types/page/card-base.js":69,"./types/page/card-button.js":70,"./types/page/card-html.js":71,"./types/page/card-iframe.js":72,"./types/page/card-image.js":73,"./types/page/card-map.js":74,"./types/page/card-paragraph.js":75,"./types/page/card-row.js":76,"./types/page/card-slider.js":77,"./types/page/card-title.js":78,"./types/page/card-video.js":79,"./types/page/card-youtube.js":80,"./types/page/page.js":81,"./types/product/product-annotation.js":82,"./types/product/product-base.js":83,"./types/product/product-variation.js":84,"./types/product/product.js":85,"./types/scene/scene-annotation.js":86,"./types/scene/scene-audio.js":87,"./types/scene/scene-base.js":88,"./types/scene/scene-button.js":89,"./types/scene/scene-camera.js":90,"./types/scene/scene-carousel.js":91,"./types/scene/scene-image.js":92,"./types/scene/scene-model.js":93,"./types/scene/scene-panorama.js":94,"./types/scene/scene-poller.js":95,"./types/scene/scene-product.js":96,"./types/scene/scene-script.js":97,"./types/scene/scene-shadow.js":98,"./types/scene/scene-video.js":99,"./types/scene/scene-volumetric.js":100,"./types/scene/scene-youtube.js":101,"./types/scene/scene.js":102,"./types/trigger/trigger-image.js":103,"./util/plattar-util.js":104,"./version":105}],43:[function(require,module,exports){const fetch=require("node-fetch");class PlattarQuery{constructor(target,server){if(!target){throw new Error("PlattarQuery cannot be created as target object cannot be null")}if(!server){throw new Error("PlattarQuery cannot be created as server object cannot be null")}this._target=target;this._server=server;this._params=[];this._getIncludeQuery=[]}get target(){return this._target}get server(){return this._server}getCookie(cname){try{let name=cname+"=";let decodedCookie=decodeURIComponent(document.cookie);let ca=decodedCookie.split(";");for(let i=0;i<ca.length;i++){let c=ca[i];while(c.charAt(0)==" "){c=c.substring(1)}if(c.indexOf(name)==0){return c.substring(name.length,c.length)}}}catch(error){}return""}_get(opt){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;if(!target.id){reject(new Error("PlattarQuery."+target.type()+".get() - object id is missing"));return}const options=opt||{cache:true};if(options.cache===true){const cached=PlattarQuery._GetGlobalCachedObject(target);if(cached){resolve(cached);return}}const origin=server.originLocation.api_read;const auth=server.authToken;const headers={cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"GET",headers:headers};const includeQuery=this._IncludeQuery;const params=this._ParamFor("get");let endpoint=origin+target.type()+"/"+target.id;if(includeQuery){endpoint=endpoint+"?include="+includeQuery}if(params){let appender=includeQuery?"&":"?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".get("+target.id+") - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".get("+target.id+") - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,options);resolve(target)}})})}_update(){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;if(!target.id){reject(new Error("PlattarQuery."+target.type()+".update() - object id is missing"));return}const origin=server.originLocation.api_write;const auth=server.authToken;const headers={Accept:"application/json","Content-Type":"application/json",cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"PATCH",headers:headers,body:JSON.stringify({data:{id:target.id,attributes:target.attributes},meta:target.meta||{}})};const params=this._ParamFor("update");let endpoint=origin+target.type()+"/"+target.id;if(params){let appender="?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".update("+target.id+") - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".update("+target.id+") - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{if(json.data){const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,{cache:true})}resolve(target)}})})}_create(){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;const origin=server.originLocation.api_write;const auth=server.authToken;const headers={Accept:"application/json","Content-Type":"application/json",cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"POST",headers:headers,body:JSON.stringify({data:{attributes:target.attributes},meta:target.meta||{}})};const params=this._ParamFor("create");let endpoint=origin+target.type();if(params){let appender="?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".create() - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".create() - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{if(json.data){target._id=json.data.id;const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,{cache:true})}resolve(target)}})})}_delete(){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;if(!target.id){reject(new Error("PlattarQuery."+target.type()+".delete() - object id is missing"));return}const origin=server.originLocation.api_write;const auth=server.authToken;const headers={Accept:"application/json","Content-Type":"application/json",cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"DELETE",headers:headers,body:JSON.stringify({data:{id:target.id,attributes:target.attributes},meta:target.meta||{}})};const params=this._ParamFor("delete");let endpoint=origin+target.type()+"/"+target.id;if(params){let appender="?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".delete() - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".delete() - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{if(json.data){target._id=json.data.id;const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,{cache:true})}resolve(target)}})})}_addParameter(key,value,type){type=type||"all";this._params.push({key:key,value:value,type:type.toLowerCase()})}_include(args){if(!args||args.length<=0){return this}const PlattarUtil=require("../util/plattar-util.js");args.forEach(obj=>{if(Array.isArray(obj)){obj.forEach(strObject=>{if(typeof strObject==="string"||strObject instanceof String){this._getIncludeQuery.push(strObject)}else{throw new Error("PlattarQuery."+this.target.type()+".include(...args) - argument of Array must only include Strings")}})}else if(PlattarUtil.isPlattarObject(obj)){const type=obj.type();if(Array.isArray(type)){this._include(type)}else{this._getIncludeQuery.push(type)}}else{throw new Error("PlattarQuery."+this.target.type()+".include(...args) - argument must be of type PlattarObject or Array but was type="+typeof obj+" value="+obj)}});return this}_ParamFor(type){type=type||"all";const list=this._params.filter(objcheck=>{return objcheck.type===type||objcheck.type==="all"});if(list.length>0){return list}return undefined}get _IncludeQuery(){if(this._getIncludeQuery.length<=0){return undefined}return`${this._getIncludeQuery.map(item=>`${item}`).join(",")}`}}PlattarQuery._GlobalObjectCache={};PlattarQuery._InvalidateGlobalCache=()=>{PlattarQuery._GlobalObjectCache={}};PlattarQuery._HasGlobalCachedObject=obj=>{return PlattarQuery._GlobalObjectCache.hasOwnProperty(obj.id)};PlattarQuery._GetGlobalCachedObject=obj=>{return PlattarQuery._HasGlobalCachedObject(obj)?PlattarQuery._GlobalObjectCache[obj.id]:undefined};PlattarQuery._SetGlobalCachedObject=obj=>{};PlattarQuery._DeleteGlobalCachedObject=obj=>{if(PlattarQuery._HasGlobalCachedObject(obj)){delete PlattarQuery._GlobalObjectCache[obj.id]}};module.exports=PlattarQuery},{"../util/plattar-util.js":104,"node-fetch":130}],44:[function(require,module,exports){(function(process){(function(){const fetch=require("node-fetch");class PlattarServer{constructor(){this._authToken={};this._serverLocation=this.prod}get prod(){return PlattarServer.match("prod")}get isProd(){return this._serverLocation.type==="production"}get staging(){return PlattarServer.match("staging")}get isStaging(){return this._serverLocation.type==="staging"}get dev(){return PlattarServer.match("dev")}get isDev(){return this._serverLocation.type==="dev"}get authToken(){return this._authToken}get originLocation(){return this._serverLocation}auth(token,opt){const copt=opt||{validate:false};return new Promise((resolve,reject)=>{const server=this.originLocation.api_write;if(!server){reject(new Error("Plattar.auth(token) - cannot authenticate as server not set via Plattar.origin(server)"));return}if(!token){reject(new Error("Plattar.auth(token) - token variable is undefined"));return}if(!copt.validate){this._authToken={"plattar-auth-token":token};resolve(this);return}const endpoint=server+"plattaruser/xauth/validate";const options={method:"GET",headers:{"plattar-auth-token":token}};fetch(endpoint,options).then(res=>{if(res.ok){this._authToken={"plattar-auth-token":token};resolve(this)}else{reject(new Error("Plattar.auth(token) - failed to validate authentication token at "+endpoint))}})})}origin(server,opt){const copt=opt||{validate:false};return new Promise((resolve,reject)=>{if(!server){reject(new Error("Plattar.origin(server) - server variable is undefined"));return}if(!copt.validate){this._serverLocation=server;resolve(this);return}const endpoint=server.api_read+"ping";const options={method:"GET"};fetch(endpoint,options).then(res=>{if(res.ok){this._serverLocation=server;resolve(this)}else{reject(new Error("Plattar.origin(server) - failed to ping server at "+endpoint))}})})}}PlattarServer.match=serverName=>{switch(serverName.toLowerCase()){case"staging.plattar.space":case"cdn-staging.plattar.space":case"staging":return{base:"https://staging.plattar.space/",api_read:"https://staging.plattar.space/api/v2/",api_write:"https://cms.plattar.space/api/v2/",cdn:"https://cdn-staging.plattar.space/",cdn_image:"https://images.plattar.space/",analytics:"https://c.plattar.space/api/v2/analytics",type:"staging"};case"app.plattar.com":case"cdn.plattar.com":case"prod":case"production":return{base:"https://app.plattar.com/",api_read:"https://app.plattar.com/api/v2/",api_write:"https://cms.plattar.com/api/v2/",cdn:"https://cdn.plattar.com/",cdn_image:"https://images.plattar.com/",analytics:"https://c.plattar.space/api/v2/analytics",type:"production"};case"dev":case"developer":case"development":case"local":case"localhost":default:return{base:"https://localhost/",api_read:"https://localhost/api/v2/",api_write:"https://localhost/api/v2/",cdn:"https://cdn-dev.plattar.space/",cdn_image:"https://images-dev.plattar.space/'",analytics:"https://localhost:3000/api/v2/analytics/",type:"dev"}}};PlattarServer.create=(origin,auth)=>{const newServer=new PlattarServer;if(origin){newServer.origin(origin)}if(auth){newServer.auth(auth)}PlattarServer._default=newServer;return newServer};PlattarServer.disableTLS=()=>{process.env.NODE_TLS_REJECT_UNAUTHORIZED="0"};PlattarServer.default=()=>{return PlattarServer._default};PlattarServer.location=()=>{return PlattarServer.default().originLocation};module.exports=PlattarServer}).call(this)}).call(this,require("_process"))},{_process:132,"node-fetch":130}],45:[function(require,module,exports){const PlattarBase=require("./interfaces/plattar-base.js");class Application extends PlattarBase{static type(){return"application"}}module.exports=Application},{"./interfaces/plattar-base.js":61}],46:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Brief extends PlattarBase{static type(){return"brief"}}module.exports=Brief},{"../interfaces/plattar-base":61}],47:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class CommentBrief extends PlattarBase{static type(){return"commentbrief"}}module.exports=CommentBrief},{"../interfaces/plattar-base":61}],48:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class CommentQuote extends PlattarBase{static type(){return"commentquote"}}module.exports=CommentQuote},{"../interfaces/plattar-base":61}],49:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class CommentSolution extends PlattarBase{static type(){return"commentsolution"}}module.exports=CommentSolution},{"../interfaces/plattar-base":61}],50:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Folder extends PlattarBase{static type(){return"folder"}}module.exports=Folder},{"../interfaces/plattar-base":61}],51:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class PipelineUser extends PlattarBase{static type(){return"pipelineuser"}}module.exports=PipelineUser},{"../interfaces/plattar-base":61}],52:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Quote extends PlattarBase{static type(){return"quote"}}module.exports=Quote},{"../interfaces/plattar-base":61}],53:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Rating extends PlattarBase{static type(){return"rating"}}module.exports=Rating},{"../interfaces/plattar-base":61}],54:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Solution extends PlattarBase{static type(){return"solution"}}module.exports=Solution},{"../interfaces/plattar-base":61}],55:[function(require,module,exports){const FileBase=require("./file-base.js");class FileAudio extends FileBase{static type(){return"fileaudio"}}module.exports=FileAudio},{"./file-base.js":56}],56:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class FileBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===FileBase){throw new Error("FileBase is abstract and cannot be created")}}static type(){const FileAudio=require("./file-audio.js");const FileVideo=require("./file-video.js");const FileModel=require("./file-model.js");const FileImage=require("./file-image.js");return[FileAudio,FileVideo,FileModel,FileImage]}get sourcePath(){if(!this.attributes.path){return null}return this.path+this.attributes.original_filename}get backupPath(){if(!this.attributes.path){return null}return this.path+this.attributes.original_upload}get path(){if(!this.attributes.path){return null}return this._query.server.originLocation.cdn+this.attributes.path}}module.exports=FileBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./file-audio.js":55,"./file-image.js":57,"./file-model.js":58,"./file-video.js":60}],57:[function(require,module,exports){const FileBase=require("./file-base.js");class FileImage extends FileBase{static type(){return"fileimage"}}module.exports=FileImage},{"./file-base.js":56}],58:[function(require,module,exports){const FileBase=require("./file-base.js");class FileModel extends FileBase{static type(){return"filemodel"}}module.exports=FileModel},{"./file-base.js":56}],59:[function(require,module,exports){const FileBase=require("./file-base.js");class FileScript extends FileBase{static type(){return"filescript"}}module.exports=FileScript},{"./file-base.js":56}],60:[function(require,module,exports){const FileBase=require("./file-base.js");class FileVideo extends FileBase{static type(){return"filevideo"}}module.exports=FileVideo},{"./file-base.js":56}],61:[function(require,module,exports){const PlattarObject=require("./plattar-object.js");const Server=require("../../server/plattar-server.js");class PlattarBase extends PlattarObject{constructor(id,server){super(id,server||Server.default());if(this.constructor===PlattarBase){throw new Error("PlattarBase is abstract and cannot be created")}}}module.exports=PlattarBase},{"../../server/plattar-server.js":44,"./plattar-object.js":63}],62:[function(require,module,exports){class PlattarObjectRelations{constructor(parent){this._parent=parent;this._relatedObjects={}}get parent(){return this._parent}_put(obj){if(!obj){return this}const PlattarUtil=require("../../util/plattar-util.js");if(!PlattarUtil.isPlattarObject(obj)){throw new Error("PlattarObjectRelations._put(PlattarObject) - argument must be type of PlattarObject")}if(!this._relatedObjects.hasOwnProperty(obj.type())){this._relatedObjects[obj.type()]=[]}this._relatedObjects[obj.type()].push(obj)}filter(obj,id){if(!obj){return[]}const PlattarUtil=require("../../util/plattar-util.js");if(!PlattarUtil.isPlattarObject(obj)){throw new Error("PlattarObjectRelations.filter(PlattarObject) - argument must be type of PlattarObject")}const type=obj.type();if(Array.isArray(type)){var compiledList=[];type.forEach(inObject=>{const retArray=this.filter(inObject,id);if(retArray.length>0){compiledList=compiledList.concat(retArray)}});return compiledList}if(!this._relatedObjects.hasOwnProperty(type)){return[]}const list=this._relatedObjects[type];if(!id){return list}return list.filter(objcheck=>{return objcheck.id===id})}find(obj,id=null){if(id===undefined){return undefined}const list=this.filter(obj,id);if(list.length<=0){return undefined}return list[0]}}module.exports=PlattarObjectRelations},{"../../util/plattar-util.js":104}],63:[function(require,module,exports){const PlattarQuery=require("../../server/plattar-query.js");const PlattarObjectRelations=require("./plattar-object-relations.js");class PlattarObject{constructor(id,server){if(this.constructor===PlattarObject){throw new Error("PlattarObject is abstract and cannot be created")}this._id=id;this._attributes={};this._meta={};this._query=new PlattarQuery(this,server);this._relationships=new PlattarObjectRelations(this)}invalidate(){return PlattarQuery._DeleteGlobalCachedObject(this)}_cache(){return PlattarQuery._SetGlobalCachedObject(this)}get id(){return this._id}get attributes(){return this._attributes}get meta(){return this._meta}set overrideAttributes(attributes){this._attributes=Object.assign({},attributes)}get relationships(){return this._relationships}get(opt){return this._query._get(opt)}update(){return this._query._update()}create(){return this._query._create()}delete(){return this._query._delete()}static type(){throw new Error("PlattarObject.type() - not implemented")}type(){return this.constructor.type()}static include(...args){if(!args||args.length<=0){return[]}const includes=[this.type()];args.forEach(obj=>{if(Array.isArray(obj)){obj.forEach(strObject=>{if(typeof strObject==="string"||strObject instanceof String){includes.push(`${this.type()}.${strObject}`)}else{throw new Error("PlattarObject."+this.type()+".include(...args) - argument of Array must only include Strings")}})}else if(obj.prototype instanceof PlattarObject){includes.push(`${this.type()}.${obj.type()}`)}else{throw new Error("PlattarObject."+this.type()+".include(...args) - argument must be of type PlattarObject or Array but was type="+typeof obj+" value="+obj)}});return includes}include(...args){this._query._include(args);return this}addParameter(key,value,type){this._query._addParameter(key,value,type);return this}}module.exports=PlattarObject},{"../../server/plattar-query.js":43,"./plattar-object-relations.js":62}],64:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class ApplicationBuild extends PlattarBase{static type(){return"applicationbuild"}}module.exports=ApplicationBuild},{"../interfaces/plattar-base.js":61}],65:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class AssetLibrary extends PlattarBase{static type(){return"assetlibrary"}}module.exports=AssetLibrary},{"../interfaces/plattar-base.js":61}],66:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class AsyncJob extends PlattarBase{static type(){return"asyncjob"}set accessKey(code){this.addParameter("access_key",code,"update")}}module.exports=AsyncJob},{"../interfaces/plattar-base.js":61}],67:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class ScriptEvent extends PlattarBase{static type(){return"scriptevent"}}module.exports=ScriptEvent},{"../interfaces/plattar-base.js":61}],68:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Tag extends PlattarBase{static type(){return"tag"}}module.exports=Tag},{"../interfaces/plattar-base.js":61}],69:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class CardBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===CardBase){throw new Error("CardBase is abstract and cannot be created")}}static type(){const CardButton=require("./card-button.js");const CardHTML=require("./card-html.js");const CardIFrame=require("./card-iframe.js");const CardImage=require("./card-image.js");const CardMap=require("./card-map.js");const CardParagraph=require("./card-paragraph.js");const CardRow=require("./card-row.js");const CardSlider=require("./card-slider.js");const CardTitle=require("./card-title.js");const CardVideo=require("./card-video.js");const CardYoutube=require("./card-youtube.js");return[CardButton,CardHTML,CardIFrame,CardImage,CardMap,CardParagraph,CardRow,CardSlider,CardTitle,CardVideo,CardYoutube]}}module.exports=CardBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./card-button.js":70,"./card-html.js":71,"./card-iframe.js":72,"./card-image.js":73,"./card-map.js":74,"./card-paragraph.js":75,"./card-row.js":76,"./card-slider.js":77,"./card-title.js":78,"./card-video.js":79,"./card-youtube.js":80}],70:[function(require,module,exports){const CardBase=require("./card-base.js");class CardButton extends CardBase{static type(){return"cardbutton"}}module.exports=CardButton},{"./card-base.js":69}],71:[function(require,module,exports){const CardBase=require("./card-base.js");class CardHTML extends CardBase{static type(){return"cardhtml"}}module.exports=CardHTML},{"./card-base.js":69}],72:[function(require,module,exports){const CardBase=require("./card-base.js");class CardIFrame extends CardBase{static type(){return"cardiframe"}}module.exports=CardIFrame},{"./card-base.js":69}],73:[function(require,module,exports){const CardBase=require("./card-base.js");class CardImage extends CardBase{static type(){return"cardimage"}}module.exports=CardImage},{"./card-base.js":69}],74:[function(require,module,exports){const CardBase=require("./card-base.js");class CardMap extends CardBase{static type(){return"cardmap"}}module.exports=CardMap},{"./card-base.js":69}],75:[function(require,module,exports){const CardBase=require("./card-base.js");class CardParagraph extends CardBase{static type(){return"cardparagraph"}}module.exports=CardParagraph},{"./card-base.js":69}],76:[function(require,module,exports){const CardBase=require("./card-base.js");class CardRow extends CardBase{static type(){return"cardrow"}}module.exports=CardRow},{"./card-base.js":69}],77:[function(require,module,exports){const CardBase=require("./card-base.js");class CardSlider extends CardBase{static type(){return"cardslider"}}module.exports=CardSlider},{"./card-base.js":69}],78:[function(require,module,exports){const CardBase=require("./card-base.js");class CardTitle extends CardBase{static type(){return"cardtitle"}}module.exports=CardTitle},{"./card-base.js":69}],79:[function(require,module,exports){const CardBase=require("./card-base.js");class CardVideo extends CardBase{static type(){return"cardvideo"}}module.exports=CardVideo},{"./card-base.js":69}],80:[function(require,module,exports){const CardBase=require("./card-base.js");class CardYoutube extends CardBase{static type(){return"cardyoutube"}}module.exports=CardYoutube},{"./card-base.js":69}],81:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Page extends PlattarBase{static type(){return"page"}}module.exports=Page},{"../interfaces/plattar-base.js":61}],82:[function(require,module,exports){const ProductBase=require("./product-base.js");class ProductAnnotation extends ProductBase{static type(){return"productannotation"}}module.exports=ProductAnnotation},{"./product-base.js":83}],83:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class ProductBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===ProductBase){throw new Error("ProductBase is abstract and cannot be created")}}static type(){const ProductVariation=require("./product-variation.js");const ProductAnnotation=require("./product-annotation.js");return[ProductAnnotation,ProductVariation]}}module.exports=ProductBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./product-annotation.js":82,"./product-variation.js":84}],84:[function(require,module,exports){const ProductBase=require("./product-base.js");class ProductVariation extends ProductBase{static type(){return"productvariation"}}module.exports=ProductVariation},{"./product-base.js":83}],85:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Product extends PlattarBase{static type(){return"product"}}module.exports=Product},{"../interfaces/plattar-base.js":61}],86:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneAnnotation extends SceneBase{static type(){return"sceneannotation"}}module.exports=SceneAnnotation},{"./scene-base.js":88}],87:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneAudio extends SceneBase{static type(){return"sceneaudio"}}module.exports=SceneAudio},{"./scene-base.js":88}],88:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class SceneBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===SceneBase){throw new Error("SceneBase is abstract and cannot be created")}}static type(){const SceneAnnotation=require("./scene-annotation.js");const SceneAudio=require("./scene-audio.js");const SceneButton=require("./scene-button.js");const SceneCamera=require("./scene-camera.js");const SceneCarousel=require("./scene-carousel.js");const SceneImage=require("./scene-image.js");const SceneModel=require("./scene-model.js");const ScenePanorama=require("./scene-panorama.js");const ScenePoller=require("./scene-poller.js");const SceneProduct=require("./scene-product.js");const SceneShadow=require("./scene-shadow.js");const SceneVideo=require("./scene-video.js");const SceneVolumetric=require("./scene-volumetric.js");const SceneYoutube=require("./scene-youtube.js");return[SceneAnnotation,SceneAudio,SceneButton,SceneCamera,SceneCarousel,SceneImage,SceneModel,ScenePanorama,ScenePoller,SceneProduct,SceneShadow,SceneVideo,SceneVolumetric,SceneYoutube]}}module.exports=SceneBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./scene-annotation.js":86,"./scene-audio.js":87,"./scene-button.js":89,"./scene-camera.js":90,"./scene-carousel.js":91,"./scene-image.js":92,"./scene-model.js":93,"./scene-panorama.js":94,"./scene-poller.js":95,"./scene-product.js":96,"./scene-shadow.js":98,"./scene-video.js":99,"./scene-volumetric.js":100,"./scene-youtube.js":101}],89:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneButton extends SceneBase{static type(){return"scenebutton"}}module.exports=SceneButton},{"./scene-base.js":88}],90:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneCamera extends SceneBase{static type(){return"scenecamera"}}module.exports=SceneCamera},{"./scene-base.js":88}],91:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneCarousel extends SceneBase{static type(){return"scenecarousel"}}module.exports=SceneCarousel},{"./scene-base.js":88}],92:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneImage extends SceneBase{static type(){return"sceneimage"}}module.exports=SceneImage},{"./scene-base.js":88}],93:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneModel extends SceneBase{static type(){return"scenemodel"}}module.exports=SceneModel},{"./scene-base.js":88}],94:[function(require,module,exports){const SceneBase=require("./scene-base.js");class ScenePanorama extends SceneBase{static type(){return"scenepanorama"}}module.exports=ScenePanorama},{"./scene-base.js":88}],95:[function(require,module,exports){const SceneBase=require("./scene-base.js");class ScenePoller extends SceneBase{static type(){return"scenepoller"}}module.exports=ScenePoller},{"./scene-base.js":88}],96:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneProduct extends SceneBase{static type(){return"sceneproduct"}}module.exports=SceneProduct},{"./scene-base.js":88}],97:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneScript extends SceneBase{static type(){return"scenescript"}}module.exports=SceneScript},{"./scene-base.js":88}],98:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneShadow extends SceneBase{static type(){return"sceneshadow"}}module.exports=SceneShadow},{"./scene-base.js":88}],99:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneVideo extends SceneBase{static type(){return"scenevideo"}}module.exports=SceneVideo},{"./scene-base.js":88}],100:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneVolumetric extends SceneBase{static type(){return"scenevolumetric"}}module.exports=SceneVolumetric},{"./scene-base.js":88}],101:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneYoutube extends SceneBase{static type(){return"sceneyoutube"}}module.exports=SceneYoutube},{"./scene-base.js":88}],102:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Scene extends PlattarBase{static type(){return"scene"}}module.exports=Scene},{"../interfaces/plattar-base.js":61}],103:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class TriggerImage extends PlattarBase{static type(){return"triggerimage"}}module.exports=TriggerImage},{"../interfaces/plattar-base.js":61}],104:[function(require,module,exports){const Application=require("../types/application.js");const Scene=require("../types/scene/scene.js");const SceneAnnotation=require("../types/scene/scene-annotation.js");const SceneAudio=require("../types/scene/scene-audio.js");const SceneButton=require("../types/scene/scene-button.js");const SceneCamera=require("../types/scene/scene-camera.js");const SceneCarousel=require("../types/scene/scene-carousel.js");const SceneImage=require("../types/scene/scene-image.js");const SceneModel=require("../types/scene/scene-model.js");const ScenePanorama=require("../types/scene/scene-panorama.js");const ScenePoller=require("../types/scene/scene-poller.js");const SceneProduct=require("../types/scene/scene-product.js");const SceneShadow=require("../types/scene/scene-shadow.js");const SceneVideo=require("../types/scene/scene-video.js");const SceneVolumetric=require("../types/scene/scene-volumetric.js");const SceneYoutube=require("../types/scene/scene-youtube.js");const SceneScript=require("../types/scene/scene-script.js");const Page=require("../types/page/page.js");const CardButton=require("../types/page/card-button.js");const CardHTML=require("../types/page/card-html.js");const CardIFrame=require("../types/page/card-iframe.js");const CardImage=require("../types/page/card-image.js");const CardMap=require("../types/page/card-map.js");const CardParagraph=require("../types/page/card-paragraph.js");const CardRow=require("../types/page/card-row.js");const CardSlider=require("../types/page/card-slider.js");const CardTitle=require("../types/page/card-title.js");const CardVideo=require("../types/page/card-video.js");const CardYoutube=require("../types/page/card-youtube.js");const Product=require("../types/product/product.js");const ProductVariation=require("../types/product/product-variation.js");const ProductAnnotation=require("../types/product/product-annotation.js");const FileAudio=require("../types/file/file-audio.js");const FileVideo=require("../types/file/file-video.js");const FileModel=require("../types/file/file-model.js");const FileImage=require("../types/file/file-image.js");const FileScript=require("../types/file/file-script.js");const TriggerImage=require("../types/trigger/trigger-image.js");const Brief=require("../types/content-pipeline/brief.js");const CommentBrief=require("../types/content-pipeline/comment-brief.js");const CommentQuote=require("../types/content-pipeline/comment-quote.js");const CommentSolution=require("../types/content-pipeline/comment-solution.js");const PipelineUser=require("../types/content-pipeline/pipeline-user.js");const Quote=require("../types/content-pipeline/quote.js");const Rating=require("../types/content-pipeline/rating.js");const Solution=require("../types/content-pipeline/solution.js");const Folder=require("../types/content-pipeline/folder.js");const ScriptEvent=require("../types/misc/script-event.js");const Tag=require("../types/misc/tag.js");const ApplicationBuild=require("../types/misc/application-build.js");const AsyncJob=require("../types/misc/async-job.js");const AssetLibrary=require("../types/misc/asset-library");class PlattarUtil{}PlattarUtil.isPlattarObject=obj=>{const PlattarObject=require("../types/interfaces/plattar-object.js");if(obj&&obj.prototype&&obj.prototype instanceof PlattarObject){return true}if(obj&&obj instanceof PlattarObject){return true}return false};PlattarUtil.reconstruct=(parent,json,options)=>{parent._attributes=json.data.attributes;if(options.cache===true){parent._cache()}const server=parent._query.server;if(json.data.relationships){for(const[key,value]of Object.entries(json.data.relationships)){const data=value.data;if(Array.isArray(data)){data.forEach(item=>{const construct=PlattarUtil.create(key,item.id,server);construct._attributes=item.attributes||{};parent.relationships._put(construct)})}else{const construct=PlattarUtil.create(key,data.id,server);construct._attributes=data.attributes||{};parent.relationships._put(construct)}}}if(json.included){json.included.forEach(item=>{const existing=parent.relationships.find(PlattarUtil.match(item.type),item.id);if(existing){PlattarUtil.reconstruct(existing,{data:item,included:json.included},options)}})}};PlattarUtil.create=(type,id,server)=>{const _DynamicClass=PlattarUtil.match(type);return new _DynamicClass(id,server)};PlattarUtil.match=type=>{switch(type){case Application.type():return Application;case Scene.type():return Scene;case SceneAnnotation.type():return SceneAnnotation;case SceneAudio.type():return SceneAudio;case SceneButton.type():return SceneButton;case SceneCamera.type():return SceneCamera;case SceneCarousel.type():return SceneCarousel;case SceneImage.type():return SceneImage;case SceneModel.type():return SceneModel;case ScenePanorama.type():return ScenePanorama;case ScenePoller.type():return ScenePoller;case SceneProduct.type():return SceneProduct;case SceneShadow.type():return SceneShadow;case SceneVideo.type():return SceneVideo;case SceneVolumetric.type():return SceneVolumetric;case SceneYoutube.type():return SceneYoutube;case SceneScript.type():return SceneScript;case Page.type():return Page;case CardButton.type():return CardButton;case CardHTML.type():return CardHTML;case CardIFrame.type():return CardIFrame;case Product.type():return Product;case ProductVariation.type():return ProductVariation;case ProductAnnotation.type():return ProductAnnotation;case FileAudio.type():return FileAudio;case FileVideo.type():return FileVideo;case FileModel.type():return FileModel;case FileImage.type():return FileImage;case FileScript.type():return FileScript;case CardMap.type():return CardMap;case CardParagraph.type():return CardParagraph;case CardRow.type():return CardRow;case CardSlider.type():return CardSlider;case CardTitle.type():return CardTitle;case CardVideo.type():return CardVideo;case CardYoutube.type():return CardYoutube;case CardImage.type():return CardImage;case ScriptEvent.type():return ScriptEvent;case Tag.type():return Tag;case ApplicationBuild.type():return ApplicationBuild;case AsyncJob.type():return AsyncJob;case AssetLibrary.type():return AssetLibrary;case TriggerImage.type():return TriggerImage;case Brief.type():return Brief;case CommentBrief.type():return CommentBrief;case CommentQuote.type():return CommentQuote;case CommentSolution.type():return CommentSolution;case PipelineUser.type():return PipelineUser;case Quote.type():return Quote;case Rating.type():return Rating;case Solution.type():return Solution;case Folder.type():return Folder;default:throw new Error('PlattarUtil.match(type) - provided type of "'+type+'" does not exist and cannot be created')}};module.exports=PlattarUtil},{"../types/application.js":45,"../types/content-pipeline/brief.js":46,"../types/content-pipeline/comment-brief.js":47,"../types/content-pipeline/comment-quote.js":48,"../types/content-pipeline/comment-solution.js":49,"../types/content-pipeline/folder.js":50,"../types/content-pipeline/pipeline-user.js":51,"../types/content-pipeline/quote.js":52,"../types/content-pipeline/rating.js":53,"../types/content-pipeline/solution.js":54,"../types/file/file-audio.js":55,"../types/file/file-image.js":57,"../types/file/file-model.js":58,"../types/file/file-script.js":59,"../types/file/file-video.js":60,"../types/interfaces/plattar-object.js":63,"../types/misc/application-build.js":64,"../types/misc/asset-library":65,"../types/misc/async-job.js":66,"../types/misc/script-event.js":67,"../types/misc/tag.js":68,"../types/page/card-button.js":70,"../types/page/card-html.js":71,"../types/page/card-iframe.js":72,"../types/page/card-image.js":73,"../types/page/card-map.js":74,"../types/page/card-paragraph.js":75,"../types/page/card-row.js":76,"../types/page/card-slider.js":77,"../types/page/card-title.js":78,"../types/page/card-video.js":79,"../types/page/card-youtube.js":80,"../types/page/page.js":81,"../types/product/product-annotation.js":82,"../types/product/product-variation.js":84,"../types/product/product.js":85,"../types/scene/scene-annotation.js":86,"../types/scene/scene-audio.js":87,"../types/scene/scene-button.js":89,"../types/scene/scene-camera.js":90,"../types/scene/scene-carousel.js":91,"../types/scene/scene-image.js":92,"../types/scene/scene-model.js":93,"../types/scene/scene-panorama.js":94,"../types/scene/scene-poller.js":95,"../types/scene/scene-product.js":96,"../types/scene/scene-script.js":97,"../types/scene/scene-shadow.js":98,"../types/scene/scene-video.js":99,"../types/scene/scene-volumetric.js":100,"../types/scene/scene-youtube.js":101,"../types/scene/scene.js":102,"../types/trigger/trigger-image.js":103}],105:[function(require,module,exports){module.exports="1.120.1"},{}],106:[function(require,module,exports){const QRCodeStyling=require("qr-code-styling");class BaseElement extends HTMLElement{constructor(){super()}connectedCallback(){if(this.hasAttribute("url")){this.renderQRCode()}const observer=new MutationObserver(mutations=>{mutations.forEach(mutation=>{if(mutation.type==="attributes"){if(this.hasAttribute("url")){this.renderQRCode()}}})});observer.observe(this,{attributes:true})}download(options){const opt=options||{name:"plattar-qrcode",extension:"png"};if(this._qrCode){this._qrCode.download(opt)}}renderQRCode(){const url=this.hasAttribute("url")?this.getAttribute("url"):undefined;if(!url){console.warn('PlattarQR.renderQRCode() - required attribute "url" is missing or invalid, QR Code will not render');return}const width=this.hasAttribute("width")?parseInt(this.getAttribute("width")):512;const height=this.hasAttribute("height")?parseInt(this.getAttribute("height")):512;const margin=this.hasAttribute("margin")?this.getAttribute("margin"):0;const image=this.hasAttribute("image")?this.getAttribute("image"):undefined;const color=this.hasAttribute("color")?this.getAttribute("color"):"#000000";const style=this.hasAttribute("qr-type")?this.getAttribute("qr-type"):"default";this._options=this._options||{imageOptions:{hideBackgroundDots:true,imageSize:.4,margin:0},dotsOptions:{type:"rounded"},backgroundOptions:{color:"#ffffff"},dotsOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#6a1a4c",color2:"#6a1a4c",rotation:"0"}},cornersSquareOptions:{type:"extra-rounded"},cornersSquareOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#000000",color2:"#000000",rotation:"0"}},cornersDotOptions:{type:"dot"},cornersDotOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#000000",color2:"#000000",rotation:"0"}},backgroundOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#ffffff",color2:"#ffffff",rotation:"0"}},width:1024,height:1024,type:"canvas"};this._options.margin=margin;this._options.image=image;this._options.dotsOptions.color=color;this._options.cornersDotOptions.color=color;this._options.cornersSquareOptions.color=color;switch(style){case"dots":this._options.dotsOptions.type="dots";break;case"default":default:this._options.dotsOptions.type="rounded"}const shortenURL=this.hasAttribute("shorten")?this.getAttribute("shorten"):"false";if(shortenURL&&shortenURL.toLowerCase()==="true"){this._ShortenURL(url).then(newURL=>{this._GenerateQRCode(newURL,width,height)}).catch(_err=>{console.warn(_err);this._GenerateQRCode(url,width,height)})}else{this._GenerateQRCode(url,width,height)}}_UpdateCanvas(width,height){if(!this._qrCode){return}const canvas=this._qrCode._canvas;if(canvas){canvas.style.width="100%";canvas.style.height="100%"}if(this._divContainer){const div=this._divContainer;div.style.width=width+"px";div.style.height=height+"px"}}_GenerateQRCode(url,width,height){this._options.data=url;const shadow=this.shadowRoot||this.attachShadow({mode:"open"});const qrCode=this._qrCode;if(!qrCode){const div=document.createElement("div");shadow.appendChild(div);this._divContainer=div;this._qrCode=new QRCodeStyling(this._options);this._qrCode.append(div);this._UpdateCanvas(width,height);return}this._qrCode.update(this._options);this._UpdateCanvas(width,height)}_IsFetchAPISupported(){return"fetch"in window}_ShortenURL(url){return new Promise((accept,reject)=>{if(!this._IsFetchAPISupported()){return reject(new Error("PlattarQR._ShortenURL() - fetch api not supported, cannot proceed"))}try{const b64=btoa(url);const endpoint="https://c.plattar.space/api/v2/shorten?base64="+b64;fetch(endpoint).then(response=>{if(!response.ok){throw new Error("PlattarQR._ShortenURL() - response was invalid")}return response.text()}).then(text=>{return accept(text)}).catch(()=>{return reject(new Error("PlattarQR._ShortenURL() - there was an unexpected issue generating short url"))})}catch(err){return reject(err)}})}}module.exports=BaseElement},{"qr-code-styling":133}],107:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class QRCodeElement extends BaseElement{constructor(){super()}}module.exports=QRCodeElement},{"./base/base-element.js":106}],108:[function(require,module,exports){"use strict";const QRCodeElement=require("./elements/qrcode-element.js");const Version=require("./version");if(customElements){if(customElements.get("plattar-qrcode")===undefined){customElements.define("plattar-qrcode",QRCodeElement)}}console.log("using @plattar/plattar-qrcode v"+Version);module.exports={version:Version}},{"./elements/qrcode-element.js":107,"./version":109}],109:[function(require,module,exports){module.exports="1.122.1"},{}],110:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.Configurator=void 0;const plattar_api_1=require("@plattar/plattar-api");const object_hash_1=__importDefault(require("object-hash"));const remote_request_1=require("./remote-request");class Configurator{constructor(){this.quality=100;this.output="glb";this.server="production";this.retry=0;this._maps=[];this._attrHash=[]}add(sceneProduct=null,productVariation=null){this.addSceneProduct(sceneProduct,productVariation)}addSceneProduct(sceneProduct=null,productVariation=null){if(!sceneProduct){throw new Error("Configurator.addSceneProduct() - sceneProduct input was null or undefined")}if(!productVariation){throw new Error("Configurator.addSceneProduct() - productVariation input was null or undefined")}const map={sceneproduct:null,productvariation:null};if(sceneProduct instanceof plattar_api_1.SceneProduct&&productVariation instanceof plattar_api_1.ProductVariation){map.sceneproduct=sceneProduct.id;map.productvariation=productVariation.id;this._maps.push(map);return}if((typeof sceneProduct==="string"||sceneProduct instanceof String)&&(typeof productVariation==="string"||productVariation instanceof String)){map.sceneproduct=sceneProduct;map.productvariation=productVariation;this._maps.push(map);return}throw new Error("Configurator.addSceneProduct() - mismatched instance types for inputs")}addProduct(product=null,productVariation=null){if(!product){throw new Error("Configurator.addProduct() - product input was null or undefined")}if(!productVariation){throw new Error("Configurator.addProduct() - productVariation input was null or undefined")}const map={productvariation:null,product:null};if(product instanceof plattar_api_1.Product&&productVariation instanceof plattar_api_1.ProductVariation){map.product=product.id;map.productvariation=productVariation.id;this._maps.push(map);return}if((typeof product==="string"||product instanceof String)&&(typeof productVariation==="string"||productVariation instanceof String)){map.product=product;map.productvariation=productVariation;this._maps.push(map);return}throw new Error("Configurator.addProduct() - mismatched instance types for inputs")}addModel(sceneModel=null){if(!sceneModel){throw new Error("Configurator.addModel() - sceneModel input was null or undefined")}const map={scenemodel:null};if(sceneModel instanceof plattar_api_1.SceneModel){map.scenemodel=sceneModel.id;this._maps.push(map);return}if(typeof sceneModel==="string"){map.scenemodel=sceneModel;this._maps.push(map);return}throw new Error("Configurator.addModel() - mismatched instance types for inputs")}get(){return new Promise((accept,reject)=>{this._CalculateHash().then(()=>{remote_request_1.RemoteRequest.request(this._GetPayload(),this.retry<0?0:this.retry).then(accept).catch(reject)}).catch(_err=>{reject(new Error("Configurator.get() - one of the objects does not exist in Plattar API"))})})}_CalculateHash(){return new Promise((accept,reject)=>{const promises=[];const oldOrigin=plattar_api_1.Server.default().originLocation.type;plattar_api_1.Server.create(plattar_api_1.Server.match(this.server));this._maps.forEach(map=>{if(map.productvariation){promises.push(new plattar_api_1.ProductVariation(map.productvariation).get())}if(map.sceneproduct){promises.push(new plattar_api_1.SceneProduct(map.sceneproduct).get())}if(map.scenemodel){promises.push(new plattar_api_1.SceneModel(map.scenemodel).get())}if(map.product){promises.push(new plattar_api_1.Product(map.product).get())}});Promise.all(promises).then(values=>{values.forEach(value=>{this._attrHash.push(value.attributes)});plattar_api_1.Server.create(plattar_api_1.Server.match(oldOrigin));accept()}).catch(()=>{plattar_api_1.Server.create(plattar_api_1.Server.match(oldOrigin));reject(new Error("Configurator._CalculateHash() - unexpected error"))})})}_GetPayload(){const converter=this.output==="vto"?"config_to_reality":"config_to_model";const load={options:{converter:converter,quality:this.quality,output:this.output,server:this.server},data:{maps:this._maps}};if(this._attrHash.length>0){load.options.hash=object_hash_1.default.MD5(this._attrHash)+object_hash_1.default.MD5(load)}else{load.options.hash=object_hash_1.default.MD5(load)}return load}}exports.Configurator=Configurator},{"./remote-request":112,"@plattar/plattar-api":42,"object-hash":131}],111:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ModelConverter=void 0;const plattar_api_1=require("@plattar/plattar-api");const object_hash_1=__importDefault(require("object-hash"));const remote_request_1=require("./remote-request");class ModelConverter{constructor(){this._model=null;this.quality=100;this.output="glb";this.server="production";this.retry=0;this._attrHash=[]}get model(){return this._model}set model(newModel){if(!newModel){return}if(newModel instanceof plattar_api_1.FileModel){this._model=newModel.id;this._attrHash.push(object_hash_1.default.MD5(newModel.attributes));return}this._model=newModel}get(){return new Promise((accept,reject)=>{if(!this._model){return reject(new Error("ModelConverter.get() - required .model attribute was not set"))}remote_request_1.RemoteRequest.request(this._Payload,this.retry<0?0:this.retry).then(accept).catch(reject)})}get _Payload(){const load={options:{converter:"gltf_to_model",quality:this.quality,output:this.output,server:this.server},data:{model:this._model}};if(this._attrHash.length>0){load.options.hash=object_hash_1.default.MD5(this._attrHash)+object_hash_1.default.MD5(load)}else{load.options.hash=object_hash_1.default.MD5(load)}return load}}exports.ModelConverter=ModelConverter},{"./remote-request":112,"@plattar/plattar-api":42,"object-hash":131}],112:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.RemoteRequest=void 0;const node_fetch_1=__importDefault(require("node-fetch"));class RemoteRequest{static request(payload,retry=0){return new Promise((accept,reject)=>{if(retry>=0){RemoteRequest._send(payload).then(accept).catch(err=>{const newretry=retry-1;if(newretry<0){return reject(err)}console.error("RemoteRequest.request() - retry number "+newretry);console.error(err);setTimeout(()=>{RemoteRequest.request(payload,newretry).then(accept).catch(reject)},500)})}else{return reject(new Error("RemoteRequest.request() - attempted all retries without success"))}})}static _send(payload){return new Promise((accept,reject)=>{const endpoint=payload.options.server==="dev"?"http://localhost:9000/2015-03-31/functions/function/invocations":"https://3gbnq7wuw2.execute-api.ap-southeast-2.amazonaws.com/main/xrutils";const reqopts={method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(payload)};(0,node_fetch_1.default)(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("RemoteRequest.request() - critical error occured, cannot proceed")}}return new Error("RemoteRequest.request() - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{accept(json)}})})}}exports.RemoteRequest=RemoteRequest},{"node-fetch":130}],113:[function(require,module,exports){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;Object.defineProperty(o,k2,{enumerable:true,get:function(){return m[k]}})}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]});var __setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v});var __importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.version=exports.ModelConverter=exports.Configurator=void 0;var configurator_1=require("./core/configurator");Object.defineProperty(exports,"Configurator",{enumerable:true,get:function(){return configurator_1.Configurator}});var model_converter_1=require("./core/model-converter");Object.defineProperty(exports,"ModelConverter",{enumerable:true,get:function(){return model_converter_1.ModelConverter}});exports.version=__importStar(require("./version"));const version_1=__importDefault(require("./version"));console.log("using @plattar/plattar-services v"+version_1.default)},{"./core/configurator":110,"./core/model-converter":111,"./version":114}],114:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default="1.120.1"},{}],115:[function(require,module,exports){const Util=require("../../util/util");const ElementController=require("../controllers/element-controller");class BaseElement extends HTMLElement{constructor(){super()}connectedCallback(){this._controller=new ElementController(this)}set onready(callback){if(this._controller){this._controller.onload=callback;return}throw new Error("set BaseElement.onready - cannot use as element not connected")}get messenger(){return this._controller?this._controller.messenger:undefined}get context(){return this._controller?this._controller.context:undefined}get parent(){return this._controller?this._controller.parent:undefined}get element(){return this._controller}get ready(){return this._controller?true:false}get allowDragDrop(){return this._controller?this._controller.controller.allowDragDrop:false}set allowDragDrop(value){if(this._controller){this._controller.controller.allowDragDrop=value;return}throw new Error("set BaseElement.allowDragDrop - cannot use as element not connected")}get permissions(){return[]}get coreAttributes(){return[{key:"scene-id",map:"scene_id"}]}usesCoreAttribute(key){const attr=this.coreAttributes;const length=attr.length;for(let i=0;i<length;i++){if(attr[i].key===key){return true}}return false}get optionalAttributes(){return[]}get hasAllCoreAttributes(){const attr=this.coreAttributes;const length=attr.length;for(let i=0;i<length;i++){if(!this.hasAttribute(attr[i].key)){return false}}return true}get allMappedAttributes(){const map=new Map;const coreAttr=this.coreAttributes;const optAttr=this.optionalAttributes;coreAttr.forEach(ele=>{if(this.hasAttribute(ele.key)){map.set(ele.map,this.getAttribute(ele.key))}});optAttr.forEach(ele=>{if(this.hasAttribute(ele.key)){map.set(ele.map,this.getAttribute(ele.key))}});return map}get allMappedAttributesQuery(){const attr=this.allMappedAttributes;let queryStr="";let first=true;for(const[key,value]of attr.entries()){queryStr+=first?"?"+key+"="+value:"&"+key+"="+value;first=false}return queryStr}get elementType(){return"none"}get elementLocation(){return Util.getElementLocation(this.elementType)}}module.exports=BaseElement},{"../../util/util":128,"../controllers/element-controller":117}],116:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ConfiguratorElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"configurator"}get elementLocation(){if(this.hasAttribute("show-ui")){const state=this.getAttribute("show-ui");return state==="true"?"configurator/dist/index.html":super.elementLocation}return super.elementLocation}get optionalAttributes(){return[{key:"config-state",map:"config_state"},{key:"show-ar",map:"show_ar"}]}}module.exports=ConfiguratorElement},{"./base/base-element.js":115}],117:[function(require,module,exports){const Util=require("../../util/util.js");const{messenger}=require("@plattar/context-messenger");const IFrameController=require("./iframe-controller.js");class ElementController{constructor(element){this._element=element;const callback=mutationsList=>{for(const mutation of mutationsList){if(mutation.type==="attributes"&&element.usesCoreAttribute(mutation.attributeName)){if(element.hasAllCoreAttributes){this._load()}}}};const observer=new MutationObserver(callback);observer.observe(this._element,{attributes:true});if(element.hasAllCoreAttributes){this._load()}}_load(){if(this._controller){this._controller._destroy();this._controller=undefined}const element=this._element;this._server=element.hasAttribute("server")?element.getAttribute("server"):"production";const serverLocation=Util.getServerLocation(this._server);if(serverLocation===undefined){throw new Error('ElementController - attribute "server" must be one of "production", "staging" or "dev"')}const embedLocation=element.elementLocation;if(embedLocation===undefined){throw new Error('ElementController - element named "'+elementType+'" is invalid')}const source=serverLocation+embedLocation+element.allMappedAttributesQuery;this._messengerID="element_"+Util.id();this._controller=new IFrameController(element,source,this._messengerID,node=>{messenger.addChild(node)})}set onload(callback){if(!callback){return}if(this.messenger){callback()}else{messenger.onload(this._messengerID,()=>{callback()})}}get messenger(){return messenger[this._messengerID]}get context(){return messenger.self}get parent(){return messenger.parent}get controller(){return this._controller}}module.exports=ElementController},{"../../util/util.js":128,"./iframe-controller.js":118,"@plattar/context-messenger":21}],118:[function(require,module,exports){const Util=require("../../util/util.js");class IFrameController{constructor(element,src,id,onelemload=undefined){this._iframe=document.createElement("iframe");this._isDraggable=false;if(!element.hasAttribute("sameorigin")){this._iframe.onload=()=>{if(onelemload){onelemload(this._iframe)}}}this._iframe.setAttribute("id",id);this._iframe.setAttribute("width",element.hasAttribute("width")?element.getAttribute("width"):"500px");this._iframe.setAttribute("height",element.hasAttribute("height")?element.getAttribute("height"):"500px");this._iframe.setAttribute("src",src);this._iframe.setAttribute("frameBorder","0");const permissions=Util.getPermissionString(element.permissions);if(permissions){this._iframe.setAttribute("allow",permissions)}const shadow=element.shadowRoot||element.attachShadow({mode:"open"});this.allowDragging=false;shadow.append(this._iframe);if(element.hasAttribute("fullscreen")){const style=document.createElement("style");style.textContent=`._PlattarFullScreen { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }`;this._iframe.className="_PlattarFullScreen";shadow.append(style);this._fsStyle=style}}set allowDragDrop(value){if(value){this._isDraggable=true;this._iframe.style.pointerEvents="none"}else{this._isDraggable=false;this._iframe.style.pointerEvents="auto"}}_destroy(){if(this._iframe){this._iframe.remove()}if(this._fsStyle){this._fsStyle.remove()}this._iframe=undefined;this._fsStyle=undefined}get allowDragDrop(){return this._isDraggable}get width(){return this._iframe.getAttribute("width")}get child(){return this._iframe}set width(value){this._iframe.setAttribute("width",value)}get height(){return this._iframe.getAttribute("height")}set height(value){this._iframe.setAttribute("height",value)}get id(){return this._iframe.id}}module.exports=IFrameController},{"../../util/util.js":128}],119:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class EditorElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"editor"}}module.exports=EditorElement},{"./base/base-element.js":115}],120:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class EWallElement extends BaseElement{constructor(){super();const tag=document.createElement("script");tag.src="https://cdn.8thwall.com/web/iframe/iframe.js";tag.defer=true}connectedCallback(){super.connectedCallback();const id=this.element.controller.id;const onLoad=()=>{if(window.XRIFrame){window.XRIFrame.registerXRIFrame(id)}};window.addEventListener("load",onLoad,false)}get permissions(){return["camera","autoplay","xr-spatial-tracking","gyroscope","accelerometer"]}get elementType(){return"ewall"}}module.exports=EWallElement},{"./base/base-element.js":115}],121:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class FaceARElement extends BaseElement{constructor(){super()}get permissions(){return["camera","autoplay"]}get elementType(){return"facear"}get optionalAttributes(){return[{key:"variation-id",map:"variationId"},{key:"product-id",map:"productId"},{key:"config-state",map:"config_state"},{key:"show-ar",map:"show_ar"}]}}module.exports=FaceARElement},{"./base/base-element.js":115}],122:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ModelElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"model"}get coreAttributes(){return[{key:"model-id",map:"model_id"}]}}module.exports=ModelElement},{"./base/base-element.js":115}],123:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ProductElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"product"}get coreAttributes(){return[{key:"product-id",map:"product_id"}]}get optionalAttributes(){return[{key:"variation-id",map:"variation_id"},{key:"show-ar",map:"show_ar"}]}}module.exports=ProductElement},{"./base/base-element.js":115}],124:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class StudioElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"studio"}}module.exports=StudioElement},{"./base/base-element.js":115}],125:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ViewerElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"viewer"}get optionalAttributes(){return[{key:"variation-id",map:"variationId"},{key:"product-id",map:"productId"},{key:"show-ar",map:"show_ar"}]}}module.exports=ViewerElement},{"./base/base-element.js":115}],126:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class WebXRElement extends BaseElement{constructor(){super()}get permissions(){return["camera","autoplay","xr-spatial-tracking"]}get elementType(){return"webxr"}}module.exports=WebXRElement},{"./base/base-element.js":115}],127:[function(require,module,exports){"use strict";const WebXRElement=require("./elements/webxr-element.js");const ViewerElement=require("./elements/viewer-element.js");const ProductElement=require("./elements/product-element.js");const EWallElement=require("./elements/ewall-element.js");const FaceARElement=require("./elements/facear-element.js");const EditorElement=require("./elements/editor-element.js");const StudioElement=require("./elements/studio-element.js");const ModelElement=require("./elements/model-element.js");const ConfiguratorElement=require("./elements/configurator-element.js");const Version=require("./version");if(customElements.get("plattar-webxr")===undefined){customElements.define("plattar-webxr",WebXRElement)}if(customElements.get("plattar-viewer")===undefined){customElements.define("plattar-viewer",ViewerElement)}if(customElements.get("plattar-product")===undefined){customElements.define("plattar-product",ProductElement)}if(customElements.get("plattar-editor")===undefined){customElements.define("plattar-editor",EditorElement)}if(customElements.get("plattar-facear")===undefined){customElements.define("plattar-facear",FaceARElement)}if(customElements.get("plattar-8wall")===undefined){customElements.define("plattar-8wall",EWallElement)}if(customElements.get("plattar-studio")===undefined){customElements.define("plattar-studio",StudioElement)}if(customElements.get("plattar-model")===undefined){customElements.define("plattar-model",ModelElement)}if(customElements.get("plattar-configurator")===undefined){customElements.define("plattar-configurator",ConfiguratorElement)}console.log("using @plattar/plattar-web v"+Version);module.exports={version:Version}},{"./elements/configurator-element.js":116,"./elements/editor-element.js":119,"./elements/ewall-element.js":120,"./elements/facear-element.js":121,"./elements/model-element.js":122,"./elements/product-element.js":123,"./elements/studio-element.js":124,"./elements/viewer-element.js":125,"./elements/webxr-element.js":126,"./version":129}],128:[function(require,module,exports){class Util{static getServerLocation(server){switch(server){case"production":return"https://app.plattar.com/";case"staging":return"https://staging.plattar.space/";case"dev":return"https://localhost/";default:return undefined}}static getElementLocation(etype){const isValid=Util.isValidType(etype);if(isValid){return"renderer/"+etype+".html"}return undefined}static isValidType(etype){switch(etype){case"viewer":case"editor":case"ewall":case"facear":case"studio":case"product":case"model":case"configurator":case"webxr":return true;default:return false}}static id(){return Math.abs(Math.floor(Math.random()*1e13))}static getPermissionString(permissions){if(permissions&&permissions.length>0){let permissionString=permissions[0];for(let i=1;i<permissions.length;i++){permissionString+="; "+permissions[i]}return permissionString}return undefined}}module.exports=Util},{}],129:[function(require,module,exports){module.exports="1.130.1"},{}],130:[function(require,module,exports){(function(global){(function(){"use strict";var getGlobal=function(){if(typeof self!=="undefined"){return self}if(typeof window!=="undefined"){return window}if(typeof global!=="undefined"){return global}throw new Error("unable to locate global object")};var global=getGlobal();module.exports=exports=global.fetch;if(global.fetch){exports.default=global.fetch.bind(global)}exports.Headers=global.Headers;exports.Request=global.Request;exports.Response=global.Response}).call(this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],131:[function(require,module,exports){(function(global){(function(){!function(e){var t;"object"==typeof exports?module.exports=e():"function"==typeof define&&define.amd?define(e):("undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.objectHash=e())}(function(){return function o(i,u,a){function s(n,e){if(!u[n]){if(!i[n]){var t="function"==typeof require&&require;if(!e&&t)return t(n,!0);if(f)return f(n,!0);throw new Error("Cannot find module '"+n+"'")}var r=u[n]={exports:{}};i[n][0].call(r.exports,function(e){var t=i[n][1][e];return s(t||e)},r,r.exports,o,i,u,a)}return u[n].exports}for(var f="function"==typeof require&&require,e=0;e<a.length;e++)s(a[e]);return s}({1:[function(w,b,m){(function(e,t,f,n,r,o,i,u,a){"use strict";var s=w("crypto");function c(e,t){return function(e,t){var n;n="passthrough"!==t.algorithm?s.createHash(t.algorithm):new y;void 0===n.write&&(n.write=n.update,n.end=n.update);g(t,n).dispatch(e),n.update||n.end("");if(n.digest)return n.digest("buffer"===t.encoding?void 0:t.encoding);var r=n.read();return"buffer"!==t.encoding?r.toString(t.encoding):r}(e,t=h(e,t))}(m=b.exports=c).sha1=function(e){return c(e)},m.keys=function(e){return c(e,{excludeValues:!0,algorithm:"sha1",encoding:"hex"})},m.MD5=function(e){return c(e,{algorithm:"md5",encoding:"hex"})},m.keysMD5=function(e){return c(e,{algorithm:"md5",encoding:"hex",excludeValues:!0})};var l=s.getHashes?s.getHashes().slice():["sha1","md5"];l.push("passthrough");var d=["buffer","hex","binary","base64"];function h(e,t){t=t||{};var n={};if(n.algorithm=t.algorithm||"sha1",n.encoding=t.encoding||"hex",n.excludeValues=!!t.excludeValues,n.algorithm=n.algorithm.toLowerCase(),n.encoding=n.encoding.toLowerCase(),n.ignoreUnknown=!0===t.ignoreUnknown,n.respectType=!1!==t.respectType,n.respectFunctionNames=!1!==t.respectFunctionNames,n.respectFunctionProperties=!1!==t.respectFunctionProperties,n.unorderedArrays=!0===t.unorderedArrays,n.unorderedSets=!1!==t.unorderedSets,n.unorderedObjects=!1!==t.unorderedObjects,n.replacer=t.replacer||void 0,n.excludeKeys=t.excludeKeys||void 0,void 0===e)throw new Error("Object argument required.");for(var r=0;r<l.length;++r)l[r].toLowerCase()===n.algorithm.toLowerCase()&&(n.algorithm=l[r]);if(-1===l.indexOf(n.algorithm))throw new Error('Algorithm "'+n.algorithm+'" not supported. supported values: '+l.join(", "));if(-1===d.indexOf(n.encoding)&&"passthrough"!==n.algorithm)throw new Error('Encoding "'+n.encoding+'" not supported. supported values: '+d.join(", "));return n}function p(e){if("function"==typeof e){return null!=/^function\s+\w*\s*\(\s*\)\s*{\s+\[native code\]\s+}$/i.exec(Function.prototype.toString.call(e))}}function g(u,t,a){a=a||[];function s(e){return t.update?t.update(e,"utf8"):t.write(e,"utf8")}return{dispatch:function(e){return u.replacer&&(e=u.replacer(e)),this["_"+(null===e?"null":typeof e)](e)},_object:function(t){var e=Object.prototype.toString.call(t),n=/\[object (.*)\]/i.exec(e);n=(n=n?n[1]:"unknown:["+e+"]").toLowerCase();var r;if(0<=(r=a.indexOf(t)))return this.dispatch("[CIRCULAR:"+r+"]");if(a.push(t),void 0!==f&&f.isBuffer&&f.isBuffer(t))return s("buffer:"),s(t);if("object"===n||"function"===n||"asyncfunction"===n){var o=Object.keys(t);u.unorderedObjects&&(o=o.sort()),!1===u.respectType||p(t)||o.splice(0,0,"prototype","__proto__","constructor"),u.excludeKeys&&(o=o.filter(function(e){return!u.excludeKeys(e)})),s("object:"+o.length+":");var i=this;return o.forEach(function(e){i.dispatch(e),s(":"),u.excludeValues||i.dispatch(t[e]),s(",")})}if(!this["_"+n]){if(u.ignoreUnknown)return s("["+n+"]");throw new Error('Unknown object type "'+n+'"')}this["_"+n](t)},_array:function(e,t){t=void 0!==t?t:!1!==u.unorderedArrays;var n=this;if(s("array:"+e.length+":"),!t||e.length<=1)return e.forEach(function(e){return n.dispatch(e)});var r=[],o=e.map(function(e){var t=new y,n=a.slice();return g(u,t,n).dispatch(e),r=r.concat(n.slice(a.length)),t.read().toString()});return a=a.concat(r),o.sort(),this._array(o,!1)},_date:function(e){return s("date:"+e.toJSON())},_symbol:function(e){return s("symbol:"+e.toString())},_error:function(e){return s("error:"+e.toString())},_boolean:function(e){return s("bool:"+e.toString())},_string:function(e){s("string:"+e.length+":"),s(e.toString())},_function:function(e){s("fn:"),p(e)?this.dispatch("[native]"):this.dispatch(e.toString()),!1!==u.respectFunctionNames&&this.dispatch("function-name:"+String(e.name)),u.respectFunctionProperties&&this._object(e)},_number:function(e){return s("number:"+e.toString())},_xml:function(e){return s("xml:"+e.toString())},_null:function(){return s("Null")},_undefined:function(){return s("Undefined")},_regexp:function(e){return s("regex:"+e.toString())},_uint8array:function(e){return s("uint8array:"),this.dispatch(Array.prototype.slice.call(e))},_uint8clampedarray:function(e){return s("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(e))},_int8array:function(e){return s("uint8array:"),this.dispatch(Array.prototype.slice.call(e))},_uint16array:function(e){return s("uint16array:"),this.dispatch(Array.prototype.slice.call(e))},_int16array:function(e){return s("uint16array:"),this.dispatch(Array.prototype.slice.call(e))},_uint32array:function(e){return s("uint32array:"),this.dispatch(Array.prototype.slice.call(e))},_int32array:function(e){return s("uint32array:"),this.dispatch(Array.prototype.slice.call(e))},_float32array:function(e){return s("float32array:"),this.dispatch(Array.prototype.slice.call(e))},_float64array:function(e){return s("float64array:"),this.dispatch(Array.prototype.slice.call(e))},_arraybuffer:function(e){return s("arraybuffer:"),this.dispatch(new Uint8Array(e))},_url:function(e){return s("url:"+e.toString())},_map:function(e){s("map:");var t=Array.from(e);return this._array(t,!1!==u.unorderedSets)},_set:function(e){s("set:");var t=Array.from(e);return this._array(t,!1!==u.unorderedSets)},_file:function(e){return s("file:"),this.dispatch([e.name,e.size,e.type,e.lastModfied])},_blob:function(){if(u.ignoreUnknown)return s("[blob]");throw Error('Hashing Blob objects is currently not supported\n(see https://github.com/puleos/object-hash/issues/26)\nUse "options.replacer" or "options.ignoreUnknown"\n')},_domwindow:function(){return s("domwindow")},_bigint:function(e){return s("bigint:"+e.toString())},_process:function(){return s("process")},_timer:function(){return s("timer")},_pipe:function(){return s("pipe")},_tcp:function(){return s("tcp")},_udp:function(){return s("udp")},_tty:function(){return s("tty")},_statwatcher:function(){return s("statwatcher")},_securecontext:function(){return s("securecontext")},_connection:function(){return s("connection")},_zlib:function(){return s("zlib")},_context:function(){return s("context")},_nodescript:function(){return s("nodescript")},_httpparser:function(){return s("httpparser")},_dataview:function(){return s("dataview")},_signal:function(){return s("signal")},_fsevent:function(){return s("fsevent")},_tlswrap:function(){return s("tlswrap")}}}function y(){return{buf:"",write:function(e){this.buf+=e},end:function(e){this.buf+=e},read:function(){return this.buf}}}m.writeToStream=function(e,t,n){return void 0===n&&(n=t,t={}),g(t=h(e,t),n).dispatch(e)}}).call(this,w("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},w("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/fake_7eac155c.js","/")},{buffer:3,crypto:5,lYpoI2:10}],2:[function(e,t,f){(function(e,t,n,r,o,i,u,a,s){!function(e){"use strict";var f="undefined"!=typeof Uint8Array?Uint8Array:Array,n="+".charCodeAt(0),r="/".charCodeAt(0),o="0".charCodeAt(0),i="a".charCodeAt(0),u="A".charCodeAt(0),a="-".charCodeAt(0),s="_".charCodeAt(0);function c(e){var t=e.charCodeAt(0);return t===n||t===a?62:t===r||t===s?63:t<o?-1:t<o+10?t-o+26+26:t<u+26?t-u:t<i+26?t-i+26:void 0}e.toByteArray=function(e){var t,n;if(0<e.length%4)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.length,o="="===e.charAt(r-2)?2:"="===e.charAt(r-1)?1:0,i=new f(3*e.length/4-o),u=0<o?e.length-4:e.length,a=0;function s(e){i[a++]=e}for(t=0;t<u;t+=4,0)s((16711680&(n=c(e.charAt(t))<<18|c(e.charAt(t+1))<<12|c(e.charAt(t+2))<<6|c(e.charAt(t+3))))>>16),s((65280&n)>>8),s(255&n);return 2==o?s(255&(n=c(e.charAt(t))<<2|c(e.charAt(t+1))>>4)):1==o&&(s((n=c(e.charAt(t))<<10|c(e.charAt(t+1))<<4|c(e.charAt(t+2))>>2)>>8&255),s(255&n)),i},e.fromByteArray=function(e){var t,n,r,o,i=e.length%3,u="";function a(e){return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e)}for(t=0,r=e.length-i;t<r;t+=3)n=(e[t]<<16)+(e[t+1]<<8)+e[t+2],u+=a((o=n)>>18&63)+a(o>>12&63)+a(o>>6&63)+a(63&o);switch(i){case 1:u+=a((n=e[e.length-1])>>2),u+=a(n<<4&63),u+="==";break;case 2:u+=a((n=(e[e.length-2]<<8)+e[e.length-1])>>10),u+=a(n>>4&63),u+=a(n<<2&63),u+="="}return u}}(void 0===f?this.base64js={}:f)}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/base64-js/lib/b64.js","/node_modules/gulp-browserify/node_modules/base64-js/lib")},{buffer:3,lYpoI2:10}],3:[function(O,e,H){(function(e,t,g,n,r,o,i,u,a){var s=O("base64-js"),f=O("ieee754");function g(e,t,n){if(!(this instanceof g))return new g(e,t,n);var r,o,i,u,a,s=typeof e;if("base64"===t&&"string"==s)for(e=(r=e).trim?r.trim():r.replace(/^\s+|\s+$/g,"");e.length%4!=0;)e+="=";if("number"==s)o=x(e);else if("string"==s)o=g.byteLength(e,t);else{if("object"!=s)throw new Error("First argument needs to be a number, array or string.");o=x(e.length)}if(g._useTypedArrays?i=g._augment(new Uint8Array(o)):((i=this).length=o,i._isBuffer=!0),g._useTypedArrays&&"number"==typeof e.byteLength)i._set(e);else if(S(a=e)||g.isBuffer(a)||a&&"object"==typeof a&&"number"==typeof a.length)for(u=0;u<o;u++)g.isBuffer(e)?i[u]=e.readUInt8(u):i[u]=e[u];else if("string"==s)i.write(e,0,t);else if("number"==s&&!g._useTypedArrays&&!n)for(u=0;u<o;u++)i[u]=0;return i}function y(e,t,n,r){return g._charsWritten=T(function(e){for(var t=[],n=0;n<e.length;n++)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function w(e,t,n,r){return g._charsWritten=T(function(e){for(var t,n,r,o=[],i=0;i<e.length;i++)t=e.charCodeAt(i),n=t>>8,r=t%256,o.push(r),o.push(n);return o}(t),e,n,r)}function c(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;o<n;o++)r+=String.fromCharCode(e[o]);return r}function l(e,t,n,r){r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+1<e.length,"Trying to read beyond buffer length"));var o,i=e.length;if(!(i<=t))return n?(o=e[t],t+1<i&&(o|=e[t+1]<<8)):(o=e[t]<<8,t+1<i&&(o|=e[t+1])),o}function d(e,t,n,r){r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+3<e.length,"Trying to read beyond buffer length"));var o,i=e.length;if(!(i<=t))return n?(t+2<i&&(o=e[t+2]<<16),t+1<i&&(o|=e[t+1]<<8),o|=e[t],t+3<i&&(o+=e[t+3]<<24>>>0)):(t+1<i&&(o=e[t+1]<<16),t+2<i&&(o|=e[t+2]<<8),t+3<i&&(o|=e[t+3]),o+=e[t]<<24>>>0),o}function h(e,t,n,r){if(r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+1<e.length,"Trying to read beyond buffer length")),!(e.length<=t)){var o=l(e,t,n,!0);return 32768&o?-1*(65535-o+1):o}}function p(e,t,n,r){if(r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+3<e.length,"Trying to read beyond buffer length")),!(e.length<=t)){var o=d(e,t,n,!0);return 2147483648&o?-1*(4294967295-o+1):o}}function b(e,t,n,r){return r||(D("boolean"==typeof n,"missing or invalid endian"),D(t+3<e.length,"Trying to read beyond buffer length")),f.read(e,t,n,23,4)}function m(e,t,n,r){return r||(D("boolean"==typeof n,"missing or invalid endian"),D(t+7<e.length,"Trying to read beyond buffer length")),f.read(e,t,n,52,8)}function v(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+1<e.length,"trying to write beyond buffer length"),N(t,65535));var i=e.length;if(!(i<=n))for(var u=0,a=Math.min(i-n,2);u<a;u++)e[n+u]=(t&255<<8*(r?u:1-u))>>>8*(r?u:1-u)}function _(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+3<e.length,"trying to write beyond buffer length"),N(t,4294967295));var i=e.length;if(!(i<=n))for(var u=0,a=Math.min(i-n,4);u<a;u++)e[n+u]=t>>>8*(r?u:3-u)&255}function E(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+1<e.length,"Trying to write beyond buffer length"),Y(t,32767,-32768)),e.length<=n||v(e,0<=t?t:65535+t+1,n,r,o)}function I(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+3<e.length,"Trying to write beyond buffer length"),Y(t,2147483647,-2147483648)),e.length<=n||_(e,0<=t?t:4294967295+t+1,n,r,o)}function A(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+3<e.length,"Trying to write beyond buffer length"),F(t,34028234663852886e22,-34028234663852886e22)),e.length<=n||f.write(e,t,n,r,23,4)}function B(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+7<e.length,"Trying to write beyond buffer length"),F(t,17976931348623157e292,-17976931348623157e292)),e.length<=n||f.write(e,t,n,r,52,8)}H.Buffer=g,H.SlowBuffer=g,H.INSPECT_MAX_BYTES=50,g.poolSize=8192,g._useTypedArrays=function(){try{var e=new ArrayBuffer(0),t=new Uint8Array(e);return t.foo=function(){return 42},42===t.foo()&&"function"==typeof t.subarray}catch(e){return!1}}(),g.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},g.isBuffer=function(e){return!(null==e||!e._isBuffer)},g.byteLength=function(e,t){var n;switch(e+="",t||"utf8"){case"hex":n=e.length/2;break;case"utf8":case"utf-8":n=C(e).length;break;case"ascii":case"binary":case"raw":n=e.length;break;case"base64":n=k(e).length;break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":n=2*e.length;break;default:throw new Error("Unknown encoding")}return n},g.concat=function(e,t){if(D(S(e),"Usage: Buffer.concat(list, [totalLength])\nlist should be an Array."),0===e.length)return new g(0);if(1===e.length)return e[0];if("number"!=typeof t)for(o=t=0;o<e.length;o++)t+=e[o].length;for(var n=new g(t),r=0,o=0;o<e.length;o++){var i=e[o];i.copy(n,r),r+=i.length}return n},g.prototype.write=function(e,t,n,r){var o;isFinite(t)?isFinite(n)||(r=n,n=void 0):(o=r,r=t,t=n,n=o),t=Number(t)||0;var i,u,a,s,f,c,l,d,h,p=this.length-t;switch((!n||p<(n=Number(n)))&&(n=p),r=String(r||"utf8").toLowerCase()){case"hex":i=function(e,t,n,r){n=Number(n)||0;var o=e.length-n;(!r||o<(r=Number(r)))&&(r=o);var i=t.length;D(i%2==0,"Invalid hex string"),i/2<r&&(r=i/2);for(var u=0;u<r;u++){var a=parseInt(t.substr(2*u,2),16);D(!isNaN(a),"Invalid hex string"),e[n+u]=a}return g._charsWritten=2*u,u}(this,e,t,n);break;case"utf8":case"utf-8":c=this,l=e,d=t,h=n,i=g._charsWritten=T(C(l),c,d,h);break;case"ascii":case"binary":i=y(this,e,t,n);break;case"base64":u=this,a=e,s=t,f=n,i=g._charsWritten=T(k(a),u,s,f);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":i=w(this,e,t,n);break;default:throw new Error("Unknown encoding")}return i},g.prototype.toString=function(e,t,n){var r,o,i,u,a=this;if(e=String(e||"utf8").toLowerCase(),t=Number(t)||0,(n=void 0!==n?Number(n):n=a.length)===t)return"";switch(e){case"hex":r=function(e,t,n){var r=e.length;(!t||t<0)&&(t=0);(!n||n<0||r<n)&&(n=r);for(var o="",i=t;i<n;i++)o+=j(e[i]);return o}(a,t,n);break;case"utf8":case"utf-8":r=function(e,t,n){var r="",o="";n=Math.min(e.length,n);for(var i=t;i<n;i++)e[i]<=127?(r+=M(o)+String.fromCharCode(e[i]),o=""):o+="%"+e[i].toString(16);return r+M(o)}(a,t,n);break;case"ascii":case"binary":r=c(a,t,n);break;case"base64":o=a,u=n,r=0===(i=t)&&u===o.length?s.fromByteArray(o):s.fromByteArray(o.slice(i,u));break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":r=function(e,t,n){for(var r=e.slice(t,n),o="",i=0;i<r.length;i+=2)o+=String.fromCharCode(r[i]+256*r[i+1]);return o}(a,t,n);break;default:throw new Error("Unknown encoding")}return r},g.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},g.prototype.copy=function(e,t,n,r){if(n=n||0,r||0===r||(r=this.length),t=t||0,r!==n&&0!==e.length&&0!==this.length){D(n<=r,"sourceEnd < sourceStart"),D(0<=t&&t<e.length,"targetStart out of bounds"),D(0<=n&&n<this.length,"sourceStart out of bounds"),D(0<=r&&r<=this.length,"sourceEnd out of bounds"),r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var o=r-n;if(o<100||!g._useTypedArrays)for(var i=0;i<o;i++)e[i+t]=this[i+n];else e._set(this.subarray(n,n+o),t)}},g.prototype.slice=function(e,t){var n=this.length;if(e=U(e,n,0),t=U(t,n,n),g._useTypedArrays)return g._augment(this.subarray(e,t));for(var r=t-e,o=new g(r,void 0,!0),i=0;i<r;i++)o[i]=this[i+e];return o},g.prototype.get=function(e){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(e)},g.prototype.set=function(e,t){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(e,t)},g.prototype.readUInt8=function(e,t){if(t||(D(null!=e,"missing offset"),D(e<this.length,"Trying to read beyond buffer length")),!(e>=this.length))return this[e]},g.prototype.readUInt16LE=function(e,t){return l(this,e,!0,t)},g.prototype.readUInt16BE=function(e,t){return l(this,e,!1,t)},g.prototype.readUInt32LE=function(e,t){return d(this,e,!0,t)},g.prototype.readUInt32BE=function(e,t){return d(this,e,!1,t)},g.prototype.readInt8=function(e,t){if(t||(D(null!=e,"missing offset"),D(e<this.length,"Trying to read beyond buffer length")),!(e>=this.length))return 128&this[e]?-1*(255-this[e]+1):this[e]},g.prototype.readInt16LE=function(e,t){return h(this,e,!0,t)},g.prototype.readInt16BE=function(e,t){return h(this,e,!1,t)},g.prototype.readInt32LE=function(e,t){return p(this,e,!0,t)},g.prototype.readInt32BE=function(e,t){return p(this,e,!1,t)},g.prototype.readFloatLE=function(e,t){return b(this,e,!0,t)},g.prototype.readFloatBE=function(e,t){return b(this,e,!1,t)},g.prototype.readDoubleLE=function(e,t){return m(this,e,!0,t)},g.prototype.readDoubleBE=function(e,t){return m(this,e,!1,t)},g.prototype.writeUInt8=function(e,t,n){n||(D(null!=e,"missing value"),D(null!=t,"missing offset"),D(t<this.length,"trying to write beyond buffer length"),N(e,255)),t>=this.length||(this[t]=e)},g.prototype.writeUInt16LE=function(e,t,n){v(this,e,t,!0,n)},g.prototype.writeUInt16BE=function(e,t,n){v(this,e,t,!1,n)},g.prototype.writeUInt32LE=function(e,t,n){_(this,e,t,!0,n)},g.prototype.writeUInt32BE=function(e,t,n){_(this,e,t,!1,n)},g.prototype.writeInt8=function(e,t,n){n||(D(null!=e,"missing value"),D(null!=t,"missing offset"),D(t<this.length,"Trying to write beyond buffer length"),Y(e,127,-128)),t>=this.length||(0<=e?this.writeUInt8(e,t,n):this.writeUInt8(255+e+1,t,n))},g.prototype.writeInt16LE=function(e,t,n){E(this,e,t,!0,n)},g.prototype.writeInt16BE=function(e,t,n){E(this,e,t,!1,n)},g.prototype.writeInt32LE=function(e,t,n){I(this,e,t,!0,n)},g.prototype.writeInt32BE=function(e,t,n){I(this,e,t,!1,n)},g.prototype.writeFloatLE=function(e,t,n){A(this,e,t,!0,n)},g.prototype.writeFloatBE=function(e,t,n){A(this,e,t,!1,n)},g.prototype.writeDoubleLE=function(e,t,n){B(this,e,t,!0,n)},g.prototype.writeDoubleBE=function(e,t,n){B(this,e,t,!1,n)},g.prototype.fill=function(e,t,n){if(e=e||0,t=t||0,n=n||this.length,"string"==typeof e&&(e=e.charCodeAt(0)),D("number"==typeof e&&!isNaN(e),"value is not a number"),D(t<=n,"end < start"),n!==t&&0!==this.length){D(0<=t&&t<this.length,"start out of bounds"),D(0<=n&&n<=this.length,"end out of bounds");for(var r=t;r<n;r++)this[r]=e}},g.prototype.inspect=function(){for(var e=[],t=this.length,n=0;n<t;n++)if(e[n]=j(this[n]),n===H.INSPECT_MAX_BYTES){e[n+1]="...";break}return"<Buffer "+e.join(" ")+">"},g.prototype.toArrayBuffer=function(){if("undefined"==typeof Uint8Array)throw new Error("Buffer.toArrayBuffer not supported in this browser");if(g._useTypedArrays)return new g(this).buffer;for(var e=new Uint8Array(this.length),t=0,n=e.length;t<n;t+=1)e[t]=this[t];return e.buffer};var L=g.prototype;function U(e,t,n){return"number"!=typeof e?n:t<=(e=~~e)?t:0<=e||0<=(e+=t)?e:0}function x(e){return(e=~~Math.ceil(+e))<0?0:e}function S(e){return(Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)})(e)}function j(e){return e<16?"0"+e.toString(16):e.toString(16)}function C(e){for(var t=[],n=0;n<e.length;n++){var r=e.charCodeAt(n);if(r<=127)t.push(e.charCodeAt(n));else{var o=n;55296<=r&&r<=57343&&n++;for(var i=encodeURIComponent(e.slice(o,n+1)).substr(1).split("%"),u=0;u<i.length;u++)t.push(parseInt(i[u],16))}}return t}function k(e){return s.toByteArray(e)}function T(e,t,n,r){for(var o=0;o<r&&!(o+n>=t.length||o>=e.length);o++)t[o+n]=e[o];return o}function M(e){try{return decodeURIComponent(e)}catch(e){return String.fromCharCode(65533)}}function N(e,t){D("number"==typeof e,"cannot write a non-number as a number"),D(0<=e,"specified a negative value for writing an unsigned value"),D(e<=t,"value is larger than maximum value for type"),D(Math.floor(e)===e,"value has a fractional component")}function Y(e,t,n){D("number"==typeof e,"cannot write a non-number as a number"),D(e<=t,"value larger than maximum allowed value"),D(n<=e,"value smaller than minimum allowed value"),D(Math.floor(e)===e,"value has a fractional component")}function F(e,t,n){D("number"==typeof e,"cannot write a non-number as a number"),D(e<=t,"value larger than maximum allowed value"),D(n<=e,"value smaller than minimum allowed value")}function D(e,t){if(!e)throw new Error(t||"Failed assertion")}g._augment=function(e){return e._isBuffer=!0,e._get=e.get,e._set=e.set,e.get=L.get,e.set=L.set,e.write=L.write,e.toString=L.toString,e.toLocaleString=L.toString,e.toJSON=L.toJSON,e.copy=L.copy,e.slice=L.slice,e.readUInt8=L.readUInt8,e.readUInt16LE=L.readUInt16LE,e.readUInt16BE=L.readUInt16BE,e.readUInt32LE=L.readUInt32LE,e.readUInt32BE=L.readUInt32BE,e.readInt8=L.readInt8,e.readInt16LE=L.readInt16LE,e.readInt16BE=L.readInt16BE,e.readInt32LE=L.readInt32LE,e.readInt32BE=L.readInt32BE,e.readFloatLE=L.readFloatLE,e.readFloatBE=L.readFloatBE,e.readDoubleLE=L.readDoubleLE,e.readDoubleBE=L.readDoubleBE,e.writeUInt8=L.writeUInt8,e.writeUInt16LE=L.writeUInt16LE,e.writeUInt16BE=L.writeUInt16BE,e.writeUInt32LE=L.writeUInt32LE,e.writeUInt32BE=L.writeUInt32BE,e.writeInt8=L.writeInt8,e.writeInt16LE=L.writeInt16LE,e.writeInt16BE=L.writeInt16BE,e.writeInt32LE=L.writeInt32LE,e.writeInt32BE=L.writeInt32BE,e.writeFloatLE=L.writeFloatLE,e.writeFloatBE=L.writeFloatBE,e.writeDoubleLE=L.writeDoubleLE,e.writeDoubleBE=L.writeDoubleBE,e.fill=L.fill,e.inspect=L.inspect,e.toArrayBuffer=L.toArrayBuffer,e}}).call(this,O("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},O("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/buffer/index.js","/node_modules/gulp-browserify/node_modules/buffer")},{"base64-js":2,buffer:3,ieee754:11,lYpoI2:10}],4:[function(l,d,e){(function(e,t,u,n,r,o,i,a,s){var u=l("buffer").Buffer,f=4,c=new u(f);c.fill(0);d.exports={hash:function(e,t,n,r){return u.isBuffer(e)||(e=new u(e)),function(e,t,n){for(var r=new u(t),o=n?r.writeInt32BE:r.writeInt32LE,i=0;i<e.length;i++)o.call(r,e[i],4*i,!0);return r}(t(function(e,t){var n;e.length%f!=0&&(n=e.length+(f-e.length%f),e=u.concat([e,c],n));for(var r=[],o=t?e.readInt32BE:e.readInt32LE,i=0;i<e.length;i+=f)r.push(o.call(e,i));return r}(e,r),8*e.length),n,r)}}}).call(this,l("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},l("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/helpers.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{buffer:3,lYpoI2:10}],5:[function(w,e,b){(function(e,t,a,n,r,o,i,u,s){var a=w("buffer").Buffer,f=w("./sha"),c=w("./sha256"),l=w("./rng"),d={sha1:f,sha256:c,md5:w("./md5")},h=64,p=new a(h);function g(e,r){var o=d[e=e||"sha1"],i=[];return o||y("algorithm:",e,"is not yet supported"),{update:function(e){return a.isBuffer(e)||(e=new a(e)),i.push(e),e.length,this},digest:function(e){var t=a.concat(i),n=r?function(e,t,n){a.isBuffer(t)||(t=new a(t)),a.isBuffer(n)||(n=new a(n)),t.length>h?t=e(t):t.length<h&&(t=a.concat([t,p],h));for(var r=new a(h),o=new a(h),i=0;i<h;i++)r[i]=54^t[i],o[i]=92^t[i];var u=e(a.concat([r,n]));return e(a.concat([o,u]))}(o,r,t):o(t);return i=null,e?n.toString(e):n}}}function y(){var e=[].slice.call(arguments).join(" ");throw new Error([e,"we accept pull requests","http://github.com/dominictarr/crypto-browserify"].join("\n"))}p.fill(0),b.createHash=function(e){return g(e)},b.createHmac=g,b.randomBytes=function(e,t){if(!t||!t.call)return new a(l(e));try{t.call(this,void 0,new a(l(e)))}catch(e){t(e)}},function(e,t){for(var n in e)t(e[n],n)}(["createCredentials","createCipher","createCipheriv","createDecipher","createDecipheriv","createSign","createVerify","createDiffieHellman","pbkdf2"],function(e){b[e]=function(){y("sorry,",e,"is not implemented yet")}})}).call(this,w("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},w("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/index.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./md5":6,"./rng":7,"./sha":8,"./sha256":9,buffer:3,lYpoI2:10}],6:[function(w,b,e){(function(e,t,n,r,o,i,u,a,s){var f=w("./helpers");function c(e,t){e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;for(var n=1732584193,r=-271733879,o=-1732584194,i=271733878,u=0;u<e.length;u+=16){var a=n,s=r,f=o,c=i,n=d(n,r,o,i,e[u+0],7,-680876936),i=d(i,n,r,o,e[u+1],12,-389564586),o=d(o,i,n,r,e[u+2],17,606105819),r=d(r,o,i,n,e[u+3],22,-1044525330);n=d(n,r,o,i,e[u+4],7,-176418897),i=d(i,n,r,o,e[u+5],12,1200080426),o=d(o,i,n,r,e[u+6],17,-1473231341),r=d(r,o,i,n,e[u+7],22,-45705983),n=d(n,r,o,i,e[u+8],7,1770035416),i=d(i,n,r,o,e[u+9],12,-1958414417),o=d(o,i,n,r,e[u+10],17,-42063),r=d(r,o,i,n,e[u+11],22,-1990404162),n=d(n,r,o,i,e[u+12],7,1804603682),i=d(i,n,r,o,e[u+13],12,-40341101),o=d(o,i,n,r,e[u+14],17,-1502002290),n=h(n,r=d(r,o,i,n,e[u+15],22,1236535329),o,i,e[u+1],5,-165796510),i=h(i,n,r,o,e[u+6],9,-1069501632),o=h(o,i,n,r,e[u+11],14,643717713),r=h(r,o,i,n,e[u+0],20,-373897302),n=h(n,r,o,i,e[u+5],5,-701558691),i=h(i,n,r,o,e[u+10],9,38016083),o=h(o,i,n,r,e[u+15],14,-660478335),r=h(r,o,i,n,e[u+4],20,-405537848),n=h(n,r,o,i,e[u+9],5,568446438),i=h(i,n,r,o,e[u+14],9,-1019803690),o=h(o,i,n,r,e[u+3],14,-187363961),r=h(r,o,i,n,e[u+8],20,1163531501),n=h(n,r,o,i,e[u+13],5,-1444681467),i=h(i,n,r,o,e[u+2],9,-51403784),o=h(o,i,n,r,e[u+7],14,1735328473),n=p(n,r=h(r,o,i,n,e[u+12],20,-1926607734),o,i,e[u+5],4,-378558),i=p(i,n,r,o,e[u+8],11,-2022574463),o=p(o,i,n,r,e[u+11],16,1839030562),r=p(r,o,i,n,e[u+14],23,-35309556),n=p(n,r,o,i,e[u+1],4,-1530992060),i=p(i,n,r,o,e[u+4],11,1272893353),o=p(o,i,n,r,e[u+7],16,-155497632),r=p(r,o,i,n,e[u+10],23,-1094730640),n=p(n,r,o,i,e[u+13],4,681279174),i=p(i,n,r,o,e[u+0],11,-358537222),o=p(o,i,n,r,e[u+3],16,-722521979),r=p(r,o,i,n,e[u+6],23,76029189),n=p(n,r,o,i,e[u+9],4,-640364487),i=p(i,n,r,o,e[u+12],11,-421815835),o=p(o,i,n,r,e[u+15],16,530742520),n=g(n,r=p(r,o,i,n,e[u+2],23,-995338651),o,i,e[u+0],6,-198630844),i=g(i,n,r,o,e[u+7],10,1126891415),o=g(o,i,n,r,e[u+14],15,-1416354905),r=g(r,o,i,n,e[u+5],21,-57434055),n=g(n,r,o,i,e[u+12],6,1700485571),i=g(i,n,r,o,e[u+3],10,-1894986606),o=g(o,i,n,r,e[u+10],15,-1051523),r=g(r,o,i,n,e[u+1],21,-2054922799),n=g(n,r,o,i,e[u+8],6,1873313359),i=g(i,n,r,o,e[u+15],10,-30611744),o=g(o,i,n,r,e[u+6],15,-1560198380),r=g(r,o,i,n,e[u+13],21,1309151649),n=g(n,r,o,i,e[u+4],6,-145523070),i=g(i,n,r,o,e[u+11],10,-1120210379),o=g(o,i,n,r,e[u+2],15,718787259),r=g(r,o,i,n,e[u+9],21,-343485551),n=y(n,a),r=y(r,s),o=y(o,f),i=y(i,c)}return Array(n,r,o,i)}function l(e,t,n,r,o,i){return y((u=y(y(t,e),y(r,i)))<<(a=o)|u>>>32-a,n);var u,a}function d(e,t,n,r,o,i,u){return l(t&n|~t&r,e,t,o,i,u)}function h(e,t,n,r,o,i,u){return l(t&r|n&~r,e,t,o,i,u)}function p(e,t,n,r,o,i,u){return l(t^n^r,e,t,o,i,u)}function g(e,t,n,r,o,i,u){return l(n^(t|~r),e,t,o,i,u)}function y(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}b.exports=function(e){return f.hash(e,c,16)}}).call(this,w("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},w("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/md5.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:10}],7:[function(e,l,t){(function(e,t,n,r,o,i,u,a,s){var f,c;c=function(e){for(var t,n=new Array(e),r=0;r<e;r++)0==(3&r)&&(t=4294967296*Math.random()),n[r]=t>>>((3&r)<<3)&255;return n},l.exports=f||c}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/rng.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{buffer:3,lYpoI2:10}],8:[function(l,d,e){(function(e,t,n,r,o,i,u,a,s){var f=l("./helpers");function c(e,t){e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var n,r,o,i,u,a=Array(80),s=1732584193,f=-271733879,c=-1732584194,l=271733878,d=-1009589776,h=0;h<e.length;h+=16){for(var p=s,g=f,y=c,w=l,b=d,m=0;m<80;m++){a[m]=m<16?e[h+m]:E(a[m-3]^a[m-8]^a[m-14]^a[m-16],1);var v=_(_(E(s,5),(o=f,i=c,u=l,(r=m)<20?o&i|~o&u:!(r<40)&&r<60?o&i|o&u|i&u:o^i^u)),_(_(d,a[m]),(n=m)<20?1518500249:n<40?1859775393:n<60?-1894007588:-899497514)),d=l,l=c,c=E(f,30),f=s,s=v}s=_(s,p),f=_(f,g),c=_(c,y),l=_(l,w),d=_(d,b)}return Array(s,f,c,l,d)}function _(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function E(e,t){return e<<t|e>>>32-t}d.exports=function(e){return f.hash(e,c,20,!0)}}).call(this,l("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},l("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/sha.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:10}],9:[function(l,d,e){(function(e,t,n,r,o,i,u,a,s){function B(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function L(e,t){return e>>>t|e<<32-t}function f(e,t){var n,r,o,i,u,a,s,f,c,l,d=new Array(1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298),h=new Array(1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225),p=new Array(64);e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var g,y,w,b,m,v,_,E,I=0;I<e.length;I+=16){n=h[0],r=h[1],o=h[2],i=h[3],u=h[4],a=h[5],s=h[6],f=h[7];for(var A=0;A<64;A++)p[A]=A<16?e[A+I]:B(B(B((E=p[A-2],L(E,17)^L(E,19)^E>>>10),p[A-7]),(_=p[A-15],L(_,7)^L(_,18)^_>>>3)),p[A-16]),c=B(B(B(B(f,L(v=u,6)^L(v,11)^L(v,25)),(m=u)&a^~m&s),d[A]),p[A]),l=B(L(b=n,2)^L(b,13)^L(b,22),(g=n)&(y=r)^g&(w=o)^y&w),f=s,s=a,a=u,u=B(i,c),i=o,o=r,r=n,n=B(c,l);h[0]=B(n,h[0]),h[1]=B(r,h[1]),h[2]=B(o,h[2]),h[3]=B(i,h[3]),h[4]=B(u,h[4]),h[5]=B(a,h[5]),h[6]=B(s,h[6]),h[7]=B(f,h[7])}return h}var c=l("./helpers");d.exports=function(e){return c.hash(e,f,32,!0)}}).call(this,l("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},l("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/sha256.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:10}],10:[function(e,c,t){(function(e,t,n,r,o,i,u,a,s){function f(){}(e=c.exports={}).nextTick=function(){var e="undefined"!=typeof window&&window.setImmediate,t="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(e)return function(e){return window.setImmediate(e)};if(t){var n=[];return window.addEventListener("message",function(e){var t=e.source;t!==window&&null!==t||"process-tick"!==e.data||(e.stopPropagation(),0<n.length&&n.shift()())},!0),function(e){n.push(e),window.postMessage("process-tick","*")}}return function(e){setTimeout(e,0)}}(),e.title="browser",e.browser=!0,e.env={},e.argv=[],e.on=f,e.addListener=f,e.once=f,e.off=f,e.removeListener=f,e.removeAllListeners=f,e.emit=f,e.binding=function(e){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(e){throw new Error("process.chdir is not supported")}}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/process/browser.js","/node_modules/gulp-browserify/node_modules/process")},{buffer:3,lYpoI2:10}],11:[function(e,t,f){(function(e,t,n,r,o,i,u,a,s){f.read=function(e,t,n,r,o){var i,u,a=8*o-r-1,s=(1<<a)-1,f=s>>1,c=-7,l=n?o-1:0,d=n?-1:1,h=e[t+l];for(l+=d,i=h&(1<<-c)-1,h>>=-c,c+=a;0<c;i=256*i+e[t+l],l+=d,c-=8);for(u=i&(1<<-c)-1,i>>=-c,c+=r;0<c;u=256*u+e[t+l],l+=d,c-=8);if(0===i)i=1-f;else{if(i===s)return u?NaN:1/0*(h?-1:1);u+=Math.pow(2,r),i-=f}return(h?-1:1)*u*Math.pow(2,i-r)},f.write=function(e,t,n,r,o,i){var u,a,s,f=8*i-o-1,c=(1<<f)-1,l=c>>1,d=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:i-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,u=c):(u=Math.floor(Math.log(t)/Math.LN2),t*(s=Math.pow(2,-u))<1&&(u--,s*=2),2<=(t+=1<=u+l?d/s:d*Math.pow(2,1-l))*s&&(u++,s/=2),c<=u+l?(a=0,u=c):1<=u+l?(a=(t*s-1)*Math.pow(2,o),u+=l):(a=t*Math.pow(2,l-1)*Math.pow(2,o),u=0));8<=o;e[n+h]=255&a,h+=p,a/=256,o-=8);for(u=u<<o|a,f+=o;0<f;e[n+h]=255&u,h+=p,u/=256,f-=8);e[n+h-p]|=128*g}}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/ieee754/index.js","/node_modules/ieee754")},{buffer:3,lYpoI2:10}]},{},[1])(1)})}).call(this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],132:[function(require,module,exports){var process=module.exports={};var cachedSetTimeout;var cachedClearTimeout;function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}(function(){try{if(typeof setTimeout==="function"){cachedSetTimeout=setTimeout}else{cachedSetTimeout=defaultSetTimout}}catch(e){cachedSetTimeout=defaultSetTimout}try{if(typeof clearTimeout==="function"){cachedClearTimeout=clearTimeout}else{cachedClearTimeout=defaultClearTimeout}}catch(e){cachedClearTimeout=defaultClearTimeout}})();function runTimeout(fun){if(cachedSetTimeout===setTimeout){return setTimeout(fun,0)}if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout){cachedSetTimeout=setTimeout;return setTimeout(fun,0)}try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}function runClearTimeout(marker){if(cachedClearTimeout===clearTimeout){return clearTimeout(marker)}if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout){cachedClearTimeout=clearTimeout;return clearTimeout(marker)}try{return cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}var queue=[];var draining=false;var currentQueue;var queueIndex=-1;function cleanUpNextTick(){if(!draining||!currentQueue){return}draining=false;if(currentQueue.length){queue=currentQueue.concat(queue)}else{queueIndex=-1}if(queue.length){drainQueue()}}function drainQueue(){if(draining){return}var timeout=runTimeout(cleanUpNextTick);draining=true;var len=queue.length;while(len){currentQueue=queue;queue=[];while(++queueIndex<len){if(currentQueue){currentQueue[queueIndex].run()}}queueIndex=-1;len=queue.length}currentQueue=null;draining=false;runClearTimeout(timeout)}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(arguments.length>1){for(var i=1;i<arguments.length;i++){args[i-1]=arguments[i]}}queue.push(new Item(fun,args));if(queue.length===1&&!draining){runTimeout(drainQueue)}};function Item(fun,array){this.fun=fun;this.array=array}Item.prototype.run=function(){this.fun.apply(null,this.array)};process.title="browser";process.browser=true;process.env={};process.argv=[];process.version="";process.versions={};function noop(){}process.on=noop;process.addListener=noop;process.once=noop;process.off=noop;process.removeListener=noop;process.removeAllListeners=noop;process.emit=noop;process.prependListener=noop;process.prependOnceListener=noop;process.listeners=function(name){return[]};process.binding=function(name){throw new Error("process.binding is not supported")};process.cwd=function(){return"/"};process.chdir=function(dir){throw new Error("process.chdir is not supported")};process.umask=function(){return 0}},{}],133:[function(require,module,exports){!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.QRCodeStyling=e():t.QRCodeStyling=e()}(self,function(){return(()=>{var t={192:(t,e)=>{var r,n,o=function(){var t=function(t,e){var r=t,n=a[e],o=null,i=0,u=null,v=[],w={},m=function(t,e){o=function(t){for(var e=new Array(t),r=0;r<t;r+=1){e[r]=new Array(t);for(var n=0;n<t;n+=1)e[r][n]=null}return e}(i=4*r+17),b(0,0),b(i-7,0),b(0,i-7),x(),_(),M(t,e),r>=7&&S(t),null==u&&(u=A(r,n,v)),C(u,e)},b=function(t,e){for(var r=-1;r<=7;r+=1)if(!(t+r<=-1||i<=t+r))for(var n=-1;n<=7;n+=1)e+n<=-1||i<=e+n||(o[t+r][e+n]=0<=r&&r<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==r||6==r)||2<=r&&r<=4&&2<=n&&n<=4)},_=function(){for(var t=8;t<i-8;t+=1)null==o[t][6]&&(o[t][6]=t%2==0);for(var e=8;e<i-8;e+=1)null==o[6][e]&&(o[6][e]=e%2==0)},x=function(){for(var t=s.getPatternPosition(r),e=0;e<t.length;e+=1)for(var n=0;n<t.length;n+=1){var i=t[e],a=t[n];if(null==o[i][a])for(var u=-2;u<=2;u+=1)for(var h=-2;h<=2;h+=1)o[i+u][a+h]=-2==u||2==u||-2==h||2==h||0==u&&0==h}},S=function(t){for(var e=s.getBCHTypeNumber(r),n=0;n<18;n+=1){var a=!t&&1==(e>>n&1);o[Math.floor(n/3)][n%3+i-8-3]=a}for(n=0;n<18;n+=1)a=!t&&1==(e>>n&1),o[n%3+i-8-3][Math.floor(n/3)]=a},M=function(t,e){for(var r=n<<3|e,a=s.getBCHTypeInfo(r),u=0;u<15;u+=1){var h=!t&&1==(a>>u&1);u<6?o[u][8]=h:u<8?o[u+1][8]=h:o[i-15+u][8]=h}for(u=0;u<15;u+=1)h=!t&&1==(a>>u&1),u<8?o[8][i-u-1]=h:u<9?o[8][15-u-1+1]=h:o[8][15-u-1]=h;o[i-8][8]=!t},C=function(t,e){for(var r=-1,n=i-1,a=7,u=0,h=s.getMaskFunction(e),c=i-1;c>0;c-=2)for(6==c&&(c-=1);;){for(var l=0;l<2;l+=1)if(null==o[n][c-l]){var d=!1;u<t.length&&(d=1==(t[u]>>>a&1)),h(n,c-l)&&(d=!d),o[n][c-l]=d,-1==(a-=1)&&(u+=1,a=7)}if((n+=r)<0||i<=n){n-=r,r=-r;break}}},A=function(t,e,r){for(var n=c.getRSBlocks(t,e),o=l(),i=0;i<r.length;i+=1){var a=r[i];o.put(a.getMode(),4),o.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(o)}var u=0;for(i=0;i<n.length;i+=1)u+=n[i].dataCount;if(o.getLengthInBits()>8*u)throw"code length overflow. ("+o.getLengthInBits()+">"+8*u+")";for(o.getLengthInBits()+4<=8*u&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;!(o.getLengthInBits()>=8*u||(o.put(236,8),o.getLengthInBits()>=8*u));)o.put(17,8);return function(t,e){for(var r=0,n=0,o=0,i=new Array(e.length),a=new Array(e.length),u=0;u<e.length;u+=1){var c=e[u].dataCount,l=e[u].totalCount-c;n=Math.max(n,c),o=Math.max(o,l),i[u]=new Array(c);for(var d=0;d<i[u].length;d+=1)i[u][d]=255&t.getBuffer()[d+r];r+=c;var f=s.getErrorCorrectPolynomial(l),g=h(i[u],f.getLength()-1).mod(f);for(a[u]=new Array(f.getLength()-1),d=0;d<a[u].length;d+=1){var p=d+g.getLength()-a[u].length;a[u][d]=p>=0?g.getAt(p):0}}var v=0;for(d=0;d<e.length;d+=1)v+=e[d].totalCount;var w=new Array(v),y=0;for(d=0;d<n;d+=1)for(u=0;u<e.length;u+=1)d<i[u].length&&(w[y]=i[u][d],y+=1);for(d=0;d<o;d+=1)for(u=0;u<e.length;u+=1)d<a[u].length&&(w[y]=a[u][d],y+=1);return w}(o,n)};w.addData=function(t,e){var r=null;switch(e=e||"Byte"){case"Numeric":r=d(t);break;case"Alphanumeric":r=f(t);break;case"Byte":r=g(t);break;case"Kanji":r=p(t);break;default:throw"mode:"+e}v.push(r),u=null},w.isDark=function(t,e){if(t<0||i<=t||e<0||i<=e)throw t+","+e;return o[t][e]},w.getModuleCount=function(){return i},w.make=function(){if(r<1){for(var t=1;t<40;t++){for(var e=c.getRSBlocks(t,n),o=l(),i=0;i<v.length;i++){var a=v[i];o.put(a.getMode(),4),o.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(o)}var u=0;for(i=0;i<e.length;i++)u+=e[i].dataCount;if(o.getLengthInBits()<=8*u)break}r=t}m(!1,function(){for(var t=0,e=0,r=0;r<8;r+=1){m(!0,r);var n=s.getLostPoint(w);(0==r||t>n)&&(t=n,e=r)}return e}())},w.createTableTag=function(t,e){t=t||2;var r="";r+='<table style="',r+=" border-width: 0px; border-style: none;",r+=" border-collapse: collapse;",r+=" padding: 0px; margin: "+(e=void 0===e?4*t:e)+"px;",r+='">',r+="<tbody>";for(var n=0;n<w.getModuleCount();n+=1){r+="<tr>";for(var o=0;o<w.getModuleCount();o+=1)r+='<td style="',r+=" border-width: 0px; border-style: none;",r+=" border-collapse: collapse;",r+=" padding: 0px; margin: 0px;",r+=" width: "+t+"px;",r+=" height: "+t+"px;",r+=" background-color: ",r+=w.isDark(n,o)?"#000000":"#ffffff",r+=";",r+='"/>';r+="</tr>"}return(r+="</tbody>")+"</table>"},w.createSvgTag=function(t,e,r,n){var o={};"object"==typeof arguments[0]&&(t=(o=arguments[0]).cellSize,e=o.margin,r=o.alt,n=o.title),t=t||2,e=void 0===e?4*t:e,(r="string"==typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-description":null,(n="string"==typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var i,a,s,u,h=w.getModuleCount()*t+2*e,c="";for(u="l"+t+",0 0,"+t+" -"+t+",0 0,-"+t+"z ",c+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',c+=o.scalable?"":' width="'+h+'px" height="'+h+'px"',c+=' viewBox="0 0 '+h+" "+h+'" ',c+=' preserveAspectRatio="xMinYMin meet"',c+=n.text||r.text?' role="img" aria-labelledby="'+k([n.id,r.id].join(" ").trim())+'"':"",c+=">",c+=n.text?'<title id="'+k(n.id)+'">'+k(n.text)+"</title>":"",c+=r.text?'<description id="'+k(r.id)+'">'+k(r.text)+"</description>":"",c+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',c+='<path d="',a=0;a<w.getModuleCount();a+=1)for(s=a*t+e,i=0;i<w.getModuleCount();i+=1)w.isDark(a,i)&&(c+="M"+(i*t+e)+","+s+u);return(c+='" stroke="transparent" fill="black"/>')+"</svg>"},w.createDataURL=function(t,e){t=t||2,e=void 0===e?4*t:e;var r=w.getModuleCount()*t+2*e,n=e,o=r-e;return y(r,r,function(e,r){if(n<=e&&e<o&&n<=r&&r<o){var i=Math.floor((e-n)/t),a=Math.floor((r-n)/t);return w.isDark(a,i)?0:1}return 1})},w.createImgTag=function(t,e,r){t=t||2,e=void 0===e?4*t:e;var n=w.getModuleCount()*t+2*e,o="";return o+="<img",o+=' src="',o+=w.createDataURL(t,e),o+='"',o+=' width="',o+=n,o+='"',o+=' height="',o+=n,o+='"',r&&(o+=' alt="',o+=k(r),o+='"'),o+"/>"};var k=function(t){for(var e="",r=0;r<t.length;r+=1){var n=t.charAt(r);switch(n){case"<":e+="<";break;case">":e+=">";break;case"&":e+="&";break;case'"':e+=""";break;default:e+=n}}return e};return w.createASCII=function(t,e){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var e,r,n,o,i,a=1*w.getModuleCount()+2*t,s=t,u=a-t,h={"██":"█","█ ":"▀"," █":"▄"," ":" "},c={"██":"▀","█ ":"▀"," █":" "," ":" "},l="";for(e=0;e<a;e+=2){for(n=Math.floor((e-s)/1),o=Math.floor((e+1-s)/1),r=0;r<a;r+=1)i="█",s<=r&&r<u&&s<=e&&e<u&&w.isDark(n,Math.floor((r-s)/1))&&(i=" "),s<=r&&r<u&&s<=e+1&&e+1<u&&w.isDark(o,Math.floor((r-s)/1))?i+=" ":i+="█",l+=t<1&&e+1>=u?c[i]:h[i];l+="\n"}return a%2&&t>0?l.substring(0,l.length-a-1)+Array(a+1).join("▀"):l.substring(0,l.length-1)}(e);t-=1,e=void 0===e?2*t:e;var r,n,o,i,a=w.getModuleCount()*t+2*e,s=e,u=a-e,h=Array(t+1).join("██"),c=Array(t+1).join(" "),l="",d="";for(r=0;r<a;r+=1){for(o=Math.floor((r-s)/t),d="",n=0;n<a;n+=1)i=1,s<=n&&n<u&&s<=r&&r<u&&w.isDark(o,Math.floor((n-s)/t))&&(i=0),d+=i?h:c;for(o=0;o<t;o+=1)l+=d+"\n"}return l.substring(0,l.length-1)},w.renderTo2dContext=function(t,e){e=e||2;for(var r=w.getModuleCount(),n=0;n<r;n++)for(var o=0;o<r;o++)t.fillStyle=w.isDark(n,o)?"black":"white",t.fillRect(n*e,o*e,e,e)},w};t.stringToBytes=(t.stringToBytesFuncs={default:function(t){for(var e=[],r=0;r<t.length;r+=1){var n=t.charCodeAt(r);e.push(255&n)}return e}}).default,t.createStringToBytes=function(t,e){var r=function(){for(var r=w(t),n=function(){var t=r.read();if(-1==t)throw"eof";return t},o=0,i={};;){var a=r.read();if(-1==a)break;var s=n(),u=n()<<8|n();i[String.fromCharCode(a<<8|s)]=u,o+=1}if(o!=e)throw o+" != "+e;return i}(),n="?".charCodeAt(0);return function(t){for(var e=[],o=0;o<t.length;o+=1){var i=t.charCodeAt(o);if(i<128)e.push(i);else{var a=r[t.charAt(o)];"number"==typeof a?(255&a)==a?e.push(a):(e.push(a>>>8),e.push(255&a)):e.push(n)}}return e}};var e,r,n,o,i,a={L:1,M:0,Q:3,H:2},s=(e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],r=1335,n=7973,i=function(t){for(var e=0;0!=t;)e+=1,t>>>=1;return e},(o={}).getBCHTypeInfo=function(t){for(var e=t<<10;i(e)-i(r)>=0;)e^=r<<i(e)-i(r);return 21522^(t<<10|e)},o.getBCHTypeNumber=function(t){for(var e=t<<12;i(e)-i(n)>=0;)e^=n<<i(e)-i(n);return t<<12|e},o.getPatternPosition=function(t){return e[t-1]},o.getMaskFunction=function(t){switch(t){case 0:return function(t,e){return(t+e)%2==0};case 1:return function(t,e){return t%2==0};case 2:return function(t,e){return e%3==0};case 3:return function(t,e){return(t+e)%3==0};case 4:return function(t,e){return(Math.floor(t/2)+Math.floor(e/3))%2==0};case 5:return function(t,e){return t*e%2+t*e%3==0};case 6:return function(t,e){return(t*e%2+t*e%3)%2==0};case 7:return function(t,e){return(t*e%3+(t+e)%2)%2==0};default:throw"bad maskPattern:"+t}},o.getErrorCorrectPolynomial=function(t){for(var e=h([1],0),r=0;r<t;r+=1)e=e.multiply(h([1,u.gexp(r)],0));return e},o.getLengthInBits=function(t,e){if(1<=e&&e<10)switch(t){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw"mode:"+t}else if(e<27)switch(t){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw"mode:"+t}else{if(!(e<41))throw"type:"+e;switch(t){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw"mode:"+t}}},o.getLostPoint=function(t){for(var e=t.getModuleCount(),r=0,n=0;n<e;n+=1)for(var o=0;o<e;o+=1){for(var i=0,a=t.isDark(n,o),s=-1;s<=1;s+=1)if(!(n+s<0||e<=n+s))for(var u=-1;u<=1;u+=1)o+u<0||e<=o+u||0==s&&0==u||a==t.isDark(n+s,o+u)&&(i+=1);i>5&&(r+=3+i-5)}for(n=0;n<e-1;n+=1)for(o=0;o<e-1;o+=1){var h=0;t.isDark(n,o)&&(h+=1),t.isDark(n+1,o)&&(h+=1),t.isDark(n,o+1)&&(h+=1),t.isDark(n+1,o+1)&&(h+=1),0!=h&&4!=h||(r+=3)}for(n=0;n<e;n+=1)for(o=0;o<e-6;o+=1)t.isDark(n,o)&&!t.isDark(n,o+1)&&t.isDark(n,o+2)&&t.isDark(n,o+3)&&t.isDark(n,o+4)&&!t.isDark(n,o+5)&&t.isDark(n,o+6)&&(r+=40);for(o=0;o<e;o+=1)for(n=0;n<e-6;n+=1)t.isDark(n,o)&&!t.isDark(n+1,o)&&t.isDark(n+2,o)&&t.isDark(n+3,o)&&t.isDark(n+4,o)&&!t.isDark(n+5,o)&&t.isDark(n+6,o)&&(r+=40);var c=0;for(o=0;o<e;o+=1)for(n=0;n<e;n+=1)t.isDark(n,o)&&(c+=1);return r+Math.abs(100*c/e/e-50)/5*10},o),u=function(){for(var t=new Array(256),e=new Array(256),r=0;r<8;r+=1)t[r]=1<<r;for(r=8;r<256;r+=1)t[r]=t[r-4]^t[r-5]^t[r-6]^t[r-8];for(r=0;r<255;r+=1)e[t[r]]=r;return{glog:function(t){if(t<1)throw"glog("+t+")";return e[t]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return t[e]}}}();function h(t,e){if(void 0===t.length)throw t.length+"/"+e;var r=function(){for(var r=0;r<t.length&&0==t[r];)r+=1;for(var n=new Array(t.length-r+e),o=0;o<t.length-r;o+=1)n[o]=t[o+r];return n}(),n={getAt:function(t){return r[t]},getLength:function(){return r.length},multiply:function(t){for(var e=new Array(n.getLength()+t.getLength()-1),r=0;r<n.getLength();r+=1)for(var o=0;o<t.getLength();o+=1)e[r+o]^=u.gexp(u.glog(n.getAt(r))+u.glog(t.getAt(o)));return h(e,0)},mod:function(t){if(n.getLength()-t.getLength()<0)return n;for(var e=u.glog(n.getAt(0))-u.glog(t.getAt(0)),r=new Array(n.getLength()),o=0;o<n.getLength();o+=1)r[o]=n.getAt(o);for(o=0;o<t.getLength();o+=1)r[o]^=u.gexp(u.glog(t.getAt(o))+e);return h(r,0).mod(t)}};return n}var c=function(){var t=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],e=function(t,e){var r={};return r.totalCount=t,r.dataCount=e,r},r={getRSBlocks:function(r,n){var o=function(e,r){switch(r){case a.L:return t[4*(e-1)+0];case a.M:return t[4*(e-1)+1];case a.Q:return t[4*(e-1)+2];case a.H:return t[4*(e-1)+3];default:return}}(r,n);if(void 0===o)throw"bad rs block @ typeNumber:"+r+"/errorCorrectionLevel:"+n;for(var i=o.length/3,s=[],u=0;u<i;u+=1)for(var h=o[3*u+0],c=o[3*u+1],l=o[3*u+2],d=0;d<h;d+=1)s.push(e(c,l));return s}};return r}(),l=function(){var t=[],e=0,r={getBuffer:function(){return t},getAt:function(e){var r=Math.floor(e/8);return 1==(t[r]>>>7-e%8&1)},put:function(t,e){for(var n=0;n<e;n+=1)r.putBit(1==(t>>>e-n-1&1))},getLengthInBits:function(){return e},putBit:function(r){var n=Math.floor(e/8);t.length<=n&&t.push(0),r&&(t[n]|=128>>>e%8),e+=1}};return r},d=function(t){var e=t,r={getMode:function(){return 1},getLength:function(t){return e.length},write:function(t){for(var r=e,o=0;o+2<r.length;)t.put(n(r.substring(o,o+3)),10),o+=3;o<r.length&&(r.length-o==1?t.put(n(r.substring(o,o+1)),4):r.length-o==2&&t.put(n(r.substring(o,o+2)),7))}},n=function(t){for(var e=0,r=0;r<t.length;r+=1)e=10*e+o(t.charAt(r));return e},o=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);throw"illegal char :"+t};return r},f=function(t){var e=t,r={getMode:function(){return 2},getLength:function(t){return e.length},write:function(t){for(var r=e,o=0;o+1<r.length;)t.put(45*n(r.charAt(o))+n(r.charAt(o+1)),11),o+=2;o<r.length&&t.put(n(r.charAt(o)),6)}},n=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);if("A"<=t&&t<="Z")return t.charCodeAt(0)-"A".charCodeAt(0)+10;switch(t){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+t}};return r},g=function(e){var r=t.stringToBytes(e);return{getMode:function(){return 4},getLength:function(t){return r.length},write:function(t){for(var e=0;e<r.length;e+=1)t.put(r[e],8)}}},p=function(e){var r=t.stringToBytesFuncs.SJIS;if(!r)throw"sjis not supported.";!function(t,e){var n=r("友");if(2!=n.length||38726!=(n[0]<<8|n[1]))throw"sjis not supported."}();var n=r(e);return{getMode:function(){return 8},getLength:function(t){return~~(n.length/2)},write:function(t){for(var e=n,r=0;r+1<e.length;){var o=(255&e[r])<<8|255&e[r+1];if(33088<=o&&o<=40956)o-=33088;else{if(!(57408<=o&&o<=60351))throw"illegal char at "+(r+1)+"/"+o;o-=49472}o=192*(o>>>8&255)+(255&o),t.put(o,13),r+=2}if(r<e.length)throw"illegal char at "+(r+1)}}},v=function(){var t=[],e={writeByte:function(e){t.push(255&e)},writeShort:function(t){e.writeByte(t),e.writeByte(t>>>8)},writeBytes:function(t,r,n){r=r||0,n=n||t.length;for(var o=0;o<n;o+=1)e.writeByte(t[o+r])},writeString:function(t){for(var r=0;r<t.length;r+=1)e.writeByte(t.charCodeAt(r))},toByteArray:function(){return t},toString:function(){var e="";e+="[";for(var r=0;r<t.length;r+=1)r>0&&(e+=","),e+=t[r];return e+"]"}};return e},w=function(t){var e=t,r=0,n=0,o=0,i={read:function(){for(;o<8;){if(r>=e.length){if(0==o)return-1;throw"unexpected end of file./"+o}var t=e.charAt(r);if(r+=1,"="==t)return o=0,-1;t.match(/^\s$/)||(n=n<<6|a(t.charCodeAt(0)),o+=6)}var i=n>>>o-8&255;return o-=8,i}},a=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw"c:"+t};return i},y=function(t,e,r){for(var n=function(t,e){var r=t,n=e,o=new Array(t*e),i={setPixel:function(t,e,n){o[e*r+t]=n},write:function(t){t.writeString("GIF87a"),t.writeShort(r),t.writeShort(n),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(","),t.writeShort(0),t.writeShort(0),t.writeShort(r),t.writeShort(n),t.writeByte(0);var e=a(2);t.writeByte(2);for(var o=0;e.length-o>255;)t.writeByte(255),t.writeBytes(e,o,255),o+=255;t.writeByte(e.length-o),t.writeBytes(e,o,e.length-o),t.writeByte(0),t.writeString(";")}},a=function(t){for(var e=1<<t,r=1+(1<<t),n=t+1,i=s(),a=0;a<e;a+=1)i.add(String.fromCharCode(a));i.add(String.fromCharCode(e)),i.add(String.fromCharCode(r));var u,h,c,l=v(),d=(u=l,h=0,c=0,{write:function(t,e){if(t>>>e!=0)throw"length over";for(;h+e>=8;)u.writeByte(255&(t<<h|c)),e-=8-h,t>>>=8-h,c=0,h=0;c|=t<<h,h+=e},flush:function(){h>0&&u.writeByte(c)}});d.write(e,n);var f=0,g=String.fromCharCode(o[f]);for(f+=1;f<o.length;){var p=String.fromCharCode(o[f]);f+=1,i.contains(g+p)?g+=p:(d.write(i.indexOf(g),n),i.size()<4095&&(i.size()==1<<n&&(n+=1),i.add(g+p)),g=p)}return d.write(i.indexOf(g),n),d.write(r,n),d.flush(),l.toByteArray()},s=function(){var t={},e=0,r={add:function(n){if(r.contains(n))throw"dup key:"+n;t[n]=e,e+=1},size:function(){return e},indexOf:function(e){return t[e]},contains:function(e){return void 0!==t[e]}};return r};return i}(t,e),o=0;o<e;o+=1)for(var i=0;i<t;i+=1)n.setPixel(i,o,r(i,o));var a=v();n.write(a);for(var s=function(){var t=0,e=0,r=0,n="",o={},i=function(t){n+=String.fromCharCode(a(63&t))},a=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw"n:"+t};return o.writeByte=function(n){for(t=t<<8|255&n,e+=8,r+=1;e>=6;)i(t>>>e-6),e-=6},o.flush=function(){if(e>0&&(i(t<<6-e),t=0,e=0),r%3!=0)for(var o=3-r%3,a=0;a<o;a+=1)n+="="},o.toString=function(){return n},o}(),u=a.toByteArray(),h=0;h<u.length;h+=1)s.writeByte(u[h]);return s.flush(),"data:image/gif;base64,"+s};return t}();o.stringToBytesFuncs["UTF-8"]=function(t){return function(t){for(var e=[],r=0;r<t.length;r++){var n=t.charCodeAt(r);n<128?e.push(n):n<2048?e.push(192|n>>6,128|63&n):n<55296||n>=57344?e.push(224|n>>12,128|n>>6&63,128|63&n):(r++,n=65536+((1023&n)<<10|1023&t.charCodeAt(r)),e.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return e}(t)},void 0===(n="function"==typeof(r=function(){return o})?r.apply(e,[]):r)||(t.exports=n)},676:(t,e,r)=>{"use strict";r.d(e,{default:()=>q});var n=function(){return(n=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)},o=function(){for(var t=0,e=0,r=arguments.length;e<r;e++)t+=arguments[e].length;var n=Array(t),o=0;for(e=0;e<r;e++)for(var i=arguments[e],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n},i=function(t){return!!t&&"object"==typeof t&&!Array.isArray(t)};function a(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];if(!e.length)return t;var s=e.shift();return void 0!==s&&i(t)&&i(s)?(t=n({},t),Object.keys(s).forEach(function(e){var r=t[e],n=s[e];Array.isArray(r)&&Array.isArray(n)?t[e]=n:i(r)&&i(n)?t[e]=a(Object.assign({},r),n):t[e]=n}),a.apply(void 0,o([t],e))):t}function s(t,e){var r=document.createElement("a");r.download=e,r.href=t,document.body.appendChild(r),r.click(),document.body.removeChild(r)}function u(t){return e=this,r=void 0,o=function(){return function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}(this,function(e){return[2,new Promise(function(e){var r=new XMLHttpRequest;r.onload=function(){var t=new FileReader;t.onloadend=function(){e(t.result)},t.readAsDataURL(r.response)},r.open("GET",t),r.responseType="blob",r.send()})]})},new((n=void 0)||(n=Promise))(function(t,i){function a(t){try{u(o.next(t))}catch(t){i(t)}}function s(t){try{u(o.throw(t))}catch(t){i(t)}}function u(e){var r;e.done?t(e.value):(r=e.value,r instanceof n?r:new n(function(t){t(r)})).then(a,s)}u((o=o.apply(e,r||[])).next())});var e,r,n,o}const h={L:.07,M:.15,Q:.25,H:.3};var c=function(){return(c=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};const l=function(){function t(t){var e=t.svg,r=t.type;this._svg=e,this._type=r}return t.prototype.draw=function(t,e,r,n){var o;switch(this._type){case"dots":o=this._drawDot;break;case"classy":o=this._drawClassy;break;case"classy-rounded":o=this._drawClassyRounded;break;case"rounded":o=this._drawRounded;break;case"extra-rounded":o=this._drawExtraRounded;break;case"square":default:o=this._drawSquare}o.call(this,{x:t,y:e,size:r,getNeighbor:n})},t.prototype._rotateFigure=function(t){var e,r=t.x,n=t.y,o=t.size,i=t.rotation,a=void 0===i?0:i,s=r+o/2,u=n+o/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(n+r/2)),e._element.setAttribute("cy",String(o+r/2)),e._element.setAttribute("r",String(r/2))}}))},t.prototype._basicSquare=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(n)),e._element.setAttribute("y",String(o)),e._element.setAttribute("width",String(r)),e._element.setAttribute("height",String(r))}}))},t.prototype._basicSideRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r/2+"a "+r/2+" "+r/2+", 0, 0, 0, 0 "+-r)}}))},t.prototype._basicCornerRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r+"v "+-r/2+"a "+r/2+" "+r/2+", 0, 0, 0, "+-r/2+" "+-r/2)}}))},t.prototype._basicCornerExtraRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r+"a "+r+" "+r+", 0, 0, 0, "+-r+" "+-r)}}))},t.prototype._basicCornersRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r/2+"a "+r/2+" "+r/2+", 0, 0, 0, "+r/2+" "+r/2+"h "+r/2+"v "+-r/2+"a "+r/2+" "+r/2+", 0, 0, 0, "+-r/2+" "+-r/2)}}))},t.prototype._drawDot=function(t){var e=t.x,r=t.y,n=t.size;this._basicDot({x:e,y:r,size:n,rotation:0})},t.prototype._drawSquare=function(t){var e=t.x,r=t.y,n=t.size;this._basicSquare({x:e,y:r,size:n,rotation:0})},t.prototype._drawRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0,h=i+a+s+u;if(0!==h)if(h>2||i&&a||s&&u)this._basicSquare({x:e,y:r,size:n,rotation:0});else{if(2===h){var c=0;return i&&s?c=Math.PI/2:s&&a?c=Math.PI:a&&u&&(c=-Math.PI/2),void this._basicCornerRounded({x:e,y:r,size:n,rotation:c})}if(1===h)return c=0,s?c=Math.PI/2:a?c=Math.PI:u&&(c=-Math.PI/2),void this._basicSideRounded({x:e,y:r,size:n,rotation:c})}else this._basicDot({x:e,y:r,size:n,rotation:0})},t.prototype._drawExtraRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0,h=i+a+s+u;if(0!==h)if(h>2||i&&a||s&&u)this._basicSquare({x:e,y:r,size:n,rotation:0});else{if(2===h){var c=0;return i&&s?c=Math.PI/2:s&&a?c=Math.PI:a&&u&&(c=-Math.PI/2),void this._basicCornerExtraRounded({x:e,y:r,size:n,rotation:c})}if(1===h)return c=0,s?c=Math.PI/2:a?c=Math.PI:u&&(c=-Math.PI/2),void this._basicSideRounded({x:e,y:r,size:n,rotation:c})}else this._basicDot({x:e,y:r,size:n,rotation:0})},t.prototype._drawClassy=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0;0!==i+a+s+u?i||s?a||u?this._basicSquare({x:e,y:r,size:n,rotation:0}):this._basicCornerRounded({x:e,y:r,size:n,rotation:Math.PI/2}):this._basicCornerRounded({x:e,y:r,size:n,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:r,size:n,rotation:Math.PI/2})},t.prototype._drawClassyRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0;0!==i+a+s+u?i||s?a||u?this._basicSquare({x:e,y:r,size:n,rotation:0}):this._basicCornerExtraRounded({x:e,y:r,size:n,rotation:Math.PI/2}):this._basicCornerExtraRounded({x:e,y:r,size:n,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:r,size:n,rotation:Math.PI/2})},t}();var d=function(){return(d=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};const f=function(){function t(t){var e=t.svg,r=t.type;this._svg=e,this._type=r}return t.prototype.draw=function(t,e,r,n){var o;switch(this._type){case"square":o=this._drawSquare;break;case"extra-rounded":o=this._drawExtraRounded;break;case"dot":default:o=this._drawDot}o.call(this,{x:t,y:e,size:r,rotation:n})},t.prototype._rotateFigure=function(t){var e,r=t.x,n=t.y,o=t.size,i=t.rotation,a=void 0===i?0:i,s=r+o/2,u=n+o/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,r=t.size,n=t.x,o=t.y,i=r/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+(n+r/2)+" "+o+"a "+r/2+" "+r/2+" 0 1 0 0.1 0zm 0 "+i+"a "+(r/2-i)+" "+(r/2-i)+" 0 1 1 -0.1 0Z")}}))},t.prototype._basicSquare=function(t){var e=this,r=t.size,n=t.x,o=t.y,i=r/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r+"v "+-r+"zM "+(n+i)+" "+(o+i)+"h "+(r-2*i)+"v "+(r-2*i)+"h "+(2*i-r)+"z")}}))},t.prototype._basicExtraRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y,i=r/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+n+" "+(o+2.5*i)+"v "+2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*i+" "+2.5*i+"h "+2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*i+" "+2.5*-i+"v "+-2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*-i+" "+2.5*-i+"h "+-2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*-i+" "+2.5*i+"M "+(n+2.5*i)+" "+(o+i)+"h "+2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*i+" "+1.5*i+"v "+2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*-i+" "+1.5*i+"h "+-2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*-i+" "+1.5*-i+"v "+-2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*i+" "+1.5*-i)}}))},t.prototype._drawDot=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicDot({x:e,y:r,size:n,rotation:o})},t.prototype._drawSquare=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicSquare({x:e,y:r,size:n,rotation:o})},t.prototype._drawExtraRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicExtraRounded({x:e,y:r,size:n,rotation:o})},t}();var g=function(){return(g=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};const p=function(){function t(t){var e=t.svg,r=t.type;this._svg=e,this._type=r}return t.prototype.draw=function(t,e,r,n){var o;switch(this._type){case"square":o=this._drawSquare;break;case"dot":default:o=this._drawDot}o.call(this,{x:t,y:e,size:r,rotation:n})},t.prototype._rotateFigure=function(t){var e,r=t.x,n=t.y,o=t.size,i=t.rotation,a=void 0===i?0:i,s=r+o/2,u=n+o/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(g(g({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(n+r/2)),e._element.setAttribute("cy",String(o+r/2)),e._element.setAttribute("r",String(r/2))}}))},t.prototype._basicSquare=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(g(g({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(n)),e._element.setAttribute("y",String(o)),e._element.setAttribute("width",String(r)),e._element.setAttribute("height",String(r))}}))},t.prototype._drawDot=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicDot({x:e,y:r,size:n,rotation:o})},t.prototype._drawSquare=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicSquare({x:e,y:r,size:n,rotation:o})},t}(),v="circle";var w=function(t,e,r,n){return new(r||(r=Promise))(function(o,i){function a(t){try{u(n.next(t))}catch(t){i(t)}}function s(t){try{u(n.throw(t))}catch(t){i(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r(function(t){t(e)})).then(a,s)}u((n=n.apply(t,e||[])).next())})},y=function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},m=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],b=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];const _=function(){function t(t){this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("width",String(t.width)),this._element.setAttribute("height",String(t.height)),this._defs=document.createElementNS("http://www.w3.org/2000/svg","defs"),this._element.appendChild(this._defs),this._options=t}return Object.defineProperty(t.prototype,"width",{get:function(){return this._options.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this._options.height},enumerable:!1,configurable:!0}),t.prototype.getElement=function(){return this._element},t.prototype.drawQR=function(t){return w(this,void 0,void 0,function(){var e,r,n,o,i,a,s,u,c,l,d=this;return y(this,function(f){switch(f.label){case 0:return e=t.getModuleCount(),r=Math.min(this._options.width,this._options.height)-2*this._options.margin,n=this._options.shape===v?r/Math.sqrt(2):r,o=Math.floor(n/e),i={hideXDots:0,hideYDots:0,width:0,height:0},this._qr=t,this._options.image?[4,this.loadImage()]:[3,2];case 1:if(f.sent(),!this._image)return[2];a=this._options,s=a.imageOptions,u=a.qrOptions,c=s.imageSize*h[u.errorCorrectionLevel],l=Math.floor(c*e*e),i=function(t){var e=t.originalHeight,r=t.originalWidth,n=t.maxHiddenDots,o=t.maxHiddenAxisDots,i=t.dotSize,a={x:0,y:0},s={x:0,y:0};if(e<=0||r<=0||n<=0||i<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};var u=e/r;return a.x=Math.floor(Math.sqrt(n/u)),a.x<=0&&(a.x=1),o&&o<a.x&&(a.x=o),a.x%2==0&&a.x--,s.x=a.x*i,a.y=1+2*Math.ceil((a.x*u-1)/2),s.y=Math.round(s.x*u),(a.y*a.x>n||o&&o<a.y)&&(o&&o<a.y?(a.y=o,a.y%2==0&&a.x--):a.y-=2,s.y=a.y*i,a.x=1+2*Math.ceil((a.y/u-1)/2),s.x=Math.round(s.y/u)),{height:s.y,width:s.x,hideYDots:a.y,hideXDots:a.x}}({originalWidth:this._image.width,originalHeight:this._image.height,maxHiddenDots:l,maxHiddenAxisDots:e-14,dotSize:o}),f.label=2;case 2:return this.drawBackground(),this.drawDots(function(t,r){var n,o,a,s,u,h;return!(d._options.imageOptions.hideBackgroundDots&&t>=(e-i.hideXDots)/2&&t<(e+i.hideXDots)/2&&r>=(e-i.hideYDots)/2&&r<(e+i.hideYDots)/2||(null===(n=m[t])||void 0===n?void 0:n[r])||(null===(o=m[t-e+7])||void 0===o?void 0:o[r])||(null===(a=m[t])||void 0===a?void 0:a[r-e+7])||(null===(s=b[t])||void 0===s?void 0:s[r])||(null===(u=b[t-e+7])||void 0===u?void 0:u[r])||(null===(h=b[t])||void 0===h?void 0:h[r-e+7]))}),this.drawCorners(),this._options.image?[4,this.drawImage({width:i.width,height:i.height,count:e,dotSize:o})]:[3,4];case 3:f.sent(),f.label=4;case 4:return[2]}})})},t.prototype.drawBackground=function(){var t,e,r,n=this._element,o=this._options;if(n){var i=null===(t=o.backgroundOptions)||void 0===t?void 0:t.gradient,a=null===(e=o.backgroundOptions)||void 0===e?void 0:e.color;if((i||a)&&this._createColor({options:i,color:a,additionalRotation:0,x:0,y:0,height:o.height,width:o.width,name:"background-color"}),null===(r=o.backgroundOptions)||void 0===r?void 0:r.round){var s=Math.min(o.width,o.height),u=document.createElementNS("http://www.w3.org/2000/svg","rect");this._backgroundClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._backgroundClipPath.setAttribute("id","clip-path-background-color"),this._defs.appendChild(this._backgroundClipPath),u.setAttribute("x",String((o.width-s)/2)),u.setAttribute("y",String((o.height-s)/2)),u.setAttribute("width",String(s)),u.setAttribute("height",String(s)),u.setAttribute("rx",String(s/2*o.backgroundOptions.round)),this._backgroundClipPath.appendChild(u)}}},t.prototype.drawDots=function(t){var e,r,n=this;if(!this._qr)throw"QR code is not defined";var o=this._options,i=this._qr.getModuleCount();if(i>o.width||i>o.height)throw"The canvas is too small.";var a=Math.min(o.width,o.height)-2*o.margin,s=o.shape===v?a/Math.sqrt(2):a,u=Math.floor(s/i),h=Math.floor((o.width-i*u)/2),c=Math.floor((o.height-i*u)/2),d=new l({svg:this._element,type:o.dotsOptions.type});this._dotsClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._dotsClipPath.setAttribute("id","clip-path-dot-color"),this._defs.appendChild(this._dotsClipPath),this._createColor({options:null===(e=o.dotsOptions)||void 0===e?void 0:e.gradient,color:o.dotsOptions.color,additionalRotation:0,x:0,y:0,height:o.height,width:o.width,name:"dot-color"});for(var f=function(e){for(var o=function(o){return t&&!t(e,o)?"continue":(null===(r=g._qr)||void 0===r?void 0:r.isDark(e,o))?(d.draw(h+e*u,c+o*u,u,function(r,a){return!(e+r<0||o+a<0||e+r>=i||o+a>=i)&&!(t&&!t(e+r,o+a))&&!!n._qr&&n._qr.isDark(e+r,o+a)}),void(d._element&&g._dotsClipPath&&g._dotsClipPath.appendChild(d._element))):"continue"},a=0;a<i;a++)o(a)},g=this,p=0;p<i;p++)f(p);if(o.shape===v){var w=Math.floor((a/u-i)/2),y=i+2*w,m=h-w*u,b=c-w*u,_=[],x=Math.floor(y/2);for(p=0;p<y;p++){_[p]=[];for(var S=0;S<y;S++)p>=w-1&&p<=y-w&&S>=w-1&&S<=y-w||Math.sqrt((p-x)*(p-x)+(S-x)*(S-x))>x?_[p][S]=0:_[p][S]=this._qr.isDark(S-2*w<0?S:S>=i?S-2*w:S-w,p-2*w<0?p:p>=i?p-2*w:p-w)?1:0}var M=function(t){for(var e=function(e){if(!_[t][e])return"continue";d.draw(m+t*u,b+e*u,u,function(r,n){var o;return!!(null===(o=_[t+r])||void 0===o?void 0:o[e+n])}),d._element&&C._dotsClipPath&&C._dotsClipPath.appendChild(d._element)},r=0;r<y;r++)e(r)},C=this;for(p=0;p<y;p++)M(p)}},t.prototype.drawCorners=function(){var t=this;if(!this._qr)throw"QR code is not defined";var e=this._element,r=this._options;if(!e)throw"Element code is not defined";var n=this._qr.getModuleCount(),o=Math.min(r.width,r.height)-2*r.margin,i=r.shape===v?o/Math.sqrt(2):o,a=Math.floor(i/n),s=7*a,u=3*a,h=Math.floor((r.width-n*a)/2),c=Math.floor((r.height-n*a)/2);[[0,0,0],[1,0,Math.PI/2],[0,1,-Math.PI/2]].forEach(function(e){var o,i,d,g,v,w,y,_,x,S,M,C,A=e[0],k=e[1],O=e[2],D=h+A*a*(n-7),P=c+k*a*(n-7),z=t._dotsClipPath,B=t._dotsClipPath;if(((null===(o=r.cornersSquareOptions)||void 0===o?void 0:o.gradient)||(null===(i=r.cornersSquareOptions)||void 0===i?void 0:i.color))&&((z=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-square-color-"+A+"-"+k),t._defs.appendChild(z),t._cornersSquareClipPath=t._cornersDotClipPath=B=z,t._createColor({options:null===(d=r.cornersSquareOptions)||void 0===d?void 0:d.gradient,color:null===(g=r.cornersSquareOptions)||void 0===g?void 0:g.color,additionalRotation:O,x:D,y:P,height:s,width:s,name:"corners-square-color-"+A+"-"+k})),null===(v=r.cornersSquareOptions)||void 0===v?void 0:v.type){var q=new f({svg:t._element,type:r.cornersSquareOptions.type});q.draw(D,P,s,O),q._element&&z&&z.appendChild(q._element)}else for(var I=new l({svg:t._element,type:r.dotsOptions.type}),E=function(t){for(var e=function(e){if(!(null===(w=m[t])||void 0===w?void 0:w[e]))return"continue";I.draw(D+t*a,P+e*a,a,function(r,n){var o;return!!(null===(o=m[t+r])||void 0===o?void 0:o[e+n])}),I._element&&z&&z.appendChild(I._element)},r=0;r<m[t].length;r++)e(r)},L=0;L<m.length;L++)E(L);if(((null===(y=r.cornersDotOptions)||void 0===y?void 0:y.gradient)||(null===(_=r.cornersDotOptions)||void 0===_?void 0:_.color))&&((B=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-dot-color-"+A+"-"+k),t._defs.appendChild(B),t._cornersDotClipPath=B,t._createColor({options:null===(x=r.cornersDotOptions)||void 0===x?void 0:x.gradient,color:null===(S=r.cornersDotOptions)||void 0===S?void 0:S.color,additionalRotation:O,x:D+2*a,y:P+2*a,height:u,width:u,name:"corners-dot-color-"+A+"-"+k})),null===(M=r.cornersDotOptions)||void 0===M?void 0:M.type){var R=new p({svg:t._element,type:r.cornersDotOptions.type});R.draw(D+2*a,P+2*a,u,O),R._element&&B&&B.appendChild(R._element)}else{I=new l({svg:t._element,type:r.dotsOptions.type});var N=function(t){for(var e=function(e){if(!(null===(C=b[t])||void 0===C?void 0:C[e]))return"continue";I.draw(D+t*a,P+e*a,a,function(r,n){var o;return!!(null===(o=b[t+r])||void 0===o?void 0:o[e+n])}),I._element&&B&&B.appendChild(I._element)},r=0;r<b[t].length;r++)e(r)};for(L=0;L<b.length;L++)N(L)}})},t.prototype.loadImage=function(){var t=this;return new Promise(function(e,r){var n=t._options,o=new Image;if(!n.image)return r("Image is not defined");"string"==typeof n.imageOptions.crossOrigin&&(o.crossOrigin=n.imageOptions.crossOrigin),t._image=o,o.onload=function(){e()},o.src=n.image})},t.prototype.drawImage=function(t){var e=t.width,r=t.height,n=t.count,o=t.dotSize;return w(this,void 0,void 0,function(){var t,i,a,s,h,c,l,d,f;return y(this,function(g){switch(g.label){case 0:return t=this._options,i=Math.floor((t.width-n*o)/2),a=Math.floor((t.height-n*o)/2),s=i+t.imageOptions.margin+(n*o-e)/2,h=a+t.imageOptions.margin+(n*o-r)/2,c=e-2*t.imageOptions.margin,l=r-2*t.imageOptions.margin,(d=document.createElementNS("http://www.w3.org/2000/svg","image")).setAttribute("x",String(s)),d.setAttribute("y",String(h)),d.setAttribute("width",c+"px"),d.setAttribute("height",l+"px"),[4,u(t.image||"")];case 1:return f=g.sent(),d.setAttribute("href",f||""),this._element.appendChild(d),[2]}})})},t.prototype._createColor=function(t){var e=t.options,r=t.color,n=t.additionalRotation,o=t.x,i=t.y,a=t.height,s=t.width,u=t.name,h=s>a?s:a,c=document.createElementNS("http://www.w3.org/2000/svg","rect");if(c.setAttribute("x",String(o)),c.setAttribute("y",String(i)),c.setAttribute("height",String(a)),c.setAttribute("width",String(s)),c.setAttribute("clip-path","url('#clip-path-"+u+"')"),e){var l;if("radial"===e.type)(l=document.createElementNS("http://www.w3.org/2000/svg","radialGradient")).setAttribute("id",u),l.setAttribute("gradientUnits","userSpaceOnUse"),l.setAttribute("fx",String(o+s/2)),l.setAttribute("fy",String(i+a/2)),l.setAttribute("cx",String(o+s/2)),l.setAttribute("cy",String(i+a/2)),l.setAttribute("r",String(h/2));else{var d=((e.rotation||0)+n)%(2*Math.PI),f=(d+2*Math.PI)%(2*Math.PI),g=o+s/2,p=i+a/2,v=o+s/2,w=i+a/2;f>=0&&f<=.25*Math.PI||f>1.75*Math.PI&&f<=2*Math.PI?(g-=s/2,p-=a/2*Math.tan(d),v+=s/2,w+=a/2*Math.tan(d)):f>.25*Math.PI&&f<=.75*Math.PI?(p-=a/2,g-=s/2/Math.tan(d),w+=a/2,v+=s/2/Math.tan(d)):f>.75*Math.PI&&f<=1.25*Math.PI?(g+=s/2,p+=a/2*Math.tan(d),v-=s/2,w-=a/2*Math.tan(d)):f>1.25*Math.PI&&f<=1.75*Math.PI&&(p+=a/2,g+=s/2/Math.tan(d),w-=a/2,v-=s/2/Math.tan(d)),(l=document.createElementNS("http://www.w3.org/2000/svg","linearGradient")).setAttribute("id",u),l.setAttribute("gradientUnits","userSpaceOnUse"),l.setAttribute("x1",String(Math.round(g))),l.setAttribute("y1",String(Math.round(p))),l.setAttribute("x2",String(Math.round(v))),l.setAttribute("y2",String(Math.round(w)))}e.colorStops.forEach(function(t){var e=t.offset,r=t.color,n=document.createElementNS("http://www.w3.org/2000/svg","stop");n.setAttribute("offset",100*e+"%"),n.setAttribute("stop-color",r),l.appendChild(n)}),c.setAttribute("fill","url('#"+u+"')"),this._defs.appendChild(l)}else r&&c.setAttribute("fill",r);this._element.appendChild(c)},t}(),x="canvas";for(var S={},M=0;M<=40;M++)S[M]=M;const C={type:x,shape:"square",width:300,height:300,data:"",margin:0,qrOptions:{typeNumber:S[0],mode:void 0,errorCorrectionLevel:"Q"},imageOptions:{hideBackgroundDots:!0,imageSize:.4,crossOrigin:void 0,margin:0},dotsOptions:{type:"square",color:"#000"},backgroundOptions:{round:0,color:"#fff"}};var A=function(){return(A=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function k(t){var e=A({},t);if(!e.colorStops||!e.colorStops.length)throw"Field 'colorStops' is required in gradient";return e.rotation?e.rotation=Number(e.rotation):e.rotation=0,e.colorStops=e.colorStops.map(function(t){return A(A({},t),{offset:Number(t.offset)})}),e}function O(t){var e=A({},t);return e.width=Number(e.width),e.height=Number(e.height),e.margin=Number(e.margin),e.imageOptions=A(A({},e.imageOptions),{hideBackgroundDots:Boolean(e.imageOptions.hideBackgroundDots),imageSize:Number(e.imageOptions.imageSize),margin:Number(e.imageOptions.margin)}),e.margin>Math.min(e.width,e.height)&&(e.margin=Math.min(e.width,e.height)),e.dotsOptions=A({},e.dotsOptions),e.dotsOptions.gradient&&(e.dotsOptions.gradient=k(e.dotsOptions.gradient)),e.cornersSquareOptions&&(e.cornersSquareOptions=A({},e.cornersSquareOptions),e.cornersSquareOptions.gradient&&(e.cornersSquareOptions.gradient=k(e.cornersSquareOptions.gradient))),e.cornersDotOptions&&(e.cornersDotOptions=A({},e.cornersDotOptions),e.cornersDotOptions.gradient&&(e.cornersDotOptions.gradient=k(e.cornersDotOptions.gradient))),e.backgroundOptions&&(e.backgroundOptions=A({},e.backgroundOptions),e.backgroundOptions.gradient&&(e.backgroundOptions.gradient=k(e.backgroundOptions.gradient))),e}var D=r(192),P=r.n(D),z=function(t,e,r,n){return new(r||(r=Promise))(function(o,i){function a(t){try{u(n.next(t))}catch(t){i(t)}}function s(t){try{u(n.throw(t))}catch(t){i(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r(function(t){t(e)})).then(a,s)}u((n=n.apply(t,e||[])).next())})},B=function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}};const q=function(){function t(t){this._options=t?O(a(C,t)):C,this.update()}return t._clearContainer=function(t){t&&(t.innerHTML="")},t.prototype._setupSvg=function(){var t=this;if(this._qr){var e=new _(this._options);this._svg=e.getElement(),this._svgDrawingPromise=e.drawQR(this._qr).then(function(){var r;t._svg&&(null===(r=t._extension)||void 0===r||r.call(t,e.getElement(),t._options))})}},t.prototype._setupCanvas=function(){var t,e=this;this._qr&&(this._canvas=document.createElement("canvas"),this._canvas.width=this._options.width,this._canvas.height=this._options.height,this._setupSvg(),this._canvasDrawingPromise=null===(t=this._svgDrawingPromise)||void 0===t?void 0:t.then(function(){if(e._svg){var t=e._svg,r=(new XMLSerializer).serializeToString(t),n="data:image/svg+xml;base64,"+btoa(r),o=new Image;return new Promise(function(t){o.onload=function(){var r,n;null===(n=null===(r=e._canvas)||void 0===r?void 0:r.getContext("2d"))||void 0===n||n.drawImage(o,0,0),t()},o.src=n})}}))},t.prototype._getElement=function(t){return void 0===t&&(t="png"),z(this,void 0,void 0,function(){return B(this,function(e){switch(e.label){case 0:if(!this._qr)throw"QR code is empty";return"svg"!==t.toLowerCase()?[3,2]:(this._svg&&this._svgDrawingPromise||this._setupSvg(),[4,this._svgDrawingPromise]);case 1:return e.sent(),[2,this._svg];case 2:return this._canvas&&this._canvasDrawingPromise||this._setupCanvas(),[4,this._canvasDrawingPromise];case 3:return e.sent(),[2,this._canvas]}})})},t.prototype.update=function(e){t._clearContainer(this._container),this._options=e?O(a(this._options,e)):this._options,this._options.data&&(this._qr=P()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||function(t){switch(!0){case/^[0-9]*$/.test(t):return"Numeric";case/^[0-9A-Z $%*+\-./:]*$/.test(t):return"Alphanumeric";default:return"Byte"}}(this._options.data)),this._qr.make(),this._options.type===x?this._setupCanvas():this._setupSvg(),this.append(this._container))},t.prototype.append=function(t){if(t){if("function"!=typeof t.appendChild)throw"Container should be a single DOM node";this._options.type===x?this._canvas&&t.appendChild(this._canvas):this._svg&&t.appendChild(this._svg),this._container=t}},t.prototype.applyExtension=function(t){if(!t)throw"Extension function should be defined.";this._extension=t,this.update()},t.prototype.deleteExtension=function(){this._extension=void 0,this.update()},t.prototype.getRawData=function(t){return void 0===t&&(t="png"),z(this,void 0,void 0,function(){var e,r,n;return B(this,function(o){switch(o.label){case 0:if(!this._qr)throw"QR code is empty";return[4,this._getElement(t)];case 1:return(e=o.sent())?"svg"===t.toLowerCase()?(r=new XMLSerializer,n=r.serializeToString(e),[2,new Blob(['<?xml version="1.0" standalone="no"?>\r\n'+n],{type:"image/svg+xml"})]):[2,new Promise(function(r){return e.toBlob(r,"image/"+t,1)})]:[2,null]}})})},t.prototype.download=function(t){return z(this,void 0,void 0,function(){var e,r,n,o,i;return B(this,function(a){switch(a.label){case 0:if(!this._qr)throw"QR code is empty";return e="png",r="qr","string"==typeof t?(e=t,console.warn("Extension is deprecated as argument for 'download' method, please pass object { name: '...', extension: '...' } as argument")):"object"==typeof t&&null!==t&&(t.name&&(r=t.name),t.extension&&(e=t.extension)),[4,this._getElement(e)];case 1:return(n=a.sent())?("svg"===e.toLowerCase()?(o=new XMLSerializer,i='<?xml version="1.0" standalone="no"?>\r\n'+(i=o.serializeToString(n)),s("data:image/svg+xml;charset=utf-8,"+encodeURIComponent(i),r+".svg")):s(n.toDataURL("image/"+e),r+"."+e),[2]):[2]}})})},t}()}},e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={exports:{}};return t[n](o,o.exports,r),o.exports}return r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r(676)})().default})},{}]},{},[13])(13)});
|
|
1
|
+
(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.PlattarARAdapter=f()}})(function(){var define,module,exports;return function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r}()({1:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.LauncherAR=void 0;class LauncherAR{constructor(){this._opt={anchor:"horizontal_vertical"}}launch(){return new Promise((accept,reject)=>{this.init().then(value=>{value.start();return accept()}).catch(reject)})}get options(){return this._opt}}exports.LauncherAR=LauncherAR},{}],2:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ModelAR=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_analytics_1=require("@plattar/plattar-analytics");const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class ModelAR extends launcher_ar_1.LauncherAR{constructor(modelID=null){super();this._analytics=null;if(!modelID){throw new Error("ModelAR.constructor(modelID) - modelID must be defined")}this._modelID=modelID;this._ar=null}get modelID(){return this._modelID}_SetupAnalytics(model){let analytics=null;const project=model.relationships.find(plattar_api_1.Project);if(project){analytics=new plattar_analytics_1.Analytics(project.id);analytics.origin=plattar_api_1.Server.location().type;analytics.data.push("type","model-ar");analytics.data.push("applicationId",project.id);analytics.data.push("applicationTitle",project.attributes.title);analytics.data.push("modelId",model.id);analytics.data.push("modelTitle",model.attributes.title);this._analytics=analytics}}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ModelAR.init() - cannot proceed as AR not available in context"))}const model=new plattar_api_1.FileModel(this.modelID);model.include(plattar_api_1.Project);model.get().then(model=>{this._SetupAnalytics(model);if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(model.attributes.reality_filename&&util_1.Util.canRealityViewer()){this._ar=new reality_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.reality_filename;return accept(this)}if(model.attributes.usdz_filename&&util_1.Util.canQuicklook()){this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.usdz_filename;return accept(this)}return reject(new Error("ModelAR.init() - cannot proceed as ModelFile does not have a defined .usdz or .reality file"))}if(util_1.Util.canSceneViewer()){const arviewer=new scene_viewer_1.default;arviewer.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.original_filename;arviewer.isVertical=this.options.anchor==="vertical"?true:false;this._ar=arviewer;return accept(this)}return reject(new Error("ModelAR.init() - could not initialise AR correctly, check values"))}).catch(reject)})}start(){if(!this._ar){throw new Error("ModelAR.start() - cannot proceed as AR instance is null")}const analytics=this._analytics;if(analytics){analytics.data.push("device",this._ar.device);analytics.data.push("eventCategory",this._ar.nodeType);analytics.data.push("eventAction","Start Model Augment");analytics.write();analytics.startRecordEngagement()}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.ModelAR=ModelAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1,"@plattar/plattar-analytics":38,"@plattar/plattar-api":42}],3:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ProductAR=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_analytics_1=require("@plattar/plattar-analytics");const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class ProductAR extends launcher_ar_1.LauncherAR{constructor(productID=null,variationID=null,variationSKU=null){super();this._analytics=null;if(!productID){throw new Error("ProductAR.constructor(productID, variationID) - productID must be defined")}this._productID=productID;this._variationSKU=variationSKU;this._variationID=variationID?variationID:variationSKU?null:"default";this._ar=null}get productID(){return this._productID}get variationID(){return this._variationID}get variationSKU(){return this._variationSKU}_SetupAnalytics(product,variation){let analytics=null;const scene=product.relationships.find(plattar_api_1.Scene);if(scene){analytics=new plattar_analytics_1.Analytics(scene.attributes.application_id);analytics.origin=plattar_api_1.Server.location().type;this._analytics=analytics;analytics.data.push("type","product-ar");analytics.data.push("sceneId",scene.id);analytics.data.push("sceneTitle",scene.attributes.title);const application=scene.relationships.find(plattar_api_1.Project);if(application){analytics.data.push("applicationId",application.id);analytics.data.push("applicationTitle",application.attributes.title)}}if(analytics){analytics.data.push("productId",product.id);analytics.data.push("productTitle",product.attributes.title);analytics.data.push("productSKU",product.attributes.sku);analytics.data.push("variationId",variation.id);analytics.data.push("variationTitle",variation.attributes.title);analytics.data.push("variationSKU",variation.attributes.sku)}}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ProductAR.init() - cannot proceed as AR not available in context"))}const product=new plattar_api_1.Product(this.productID);product.include(plattar_api_1.ProductVariation);product.include(plattar_api_1.ProductVariation.include(plattar_api_1.FileModel));product.include(plattar_api_1.Scene);product.include(plattar_api_1.Scene.include(plattar_api_1.Project));product.get().then(product=>{const variationID=this.variationID?this.variationID==="default"?product.attributes.product_variation_id:this.variationID:null;const variationSKU=this.variationSKU;if(!variationID&&!variationSKU){return reject(new Error("ProductAR.init() - cannot proceed as variation-id or variation-sku was not set correctly"))}let variation=undefined;if(variationID){variation=product.relationships.find(plattar_api_1.ProductVariation,variationID)}if(!variation&&variationSKU){const variations=product.relationships.filter(plattar_api_1.ProductVariation);if(variations){variation=variations.find(element=>{return element.attributes.sku===variationSKU})}}if(!variation){return reject(new Error("ProductAR.init() - cannot proceed as variation with id "+variationID+" or sku "+variationSKU+" cannot be found"))}const modelID=variation.attributes.file_model_id;if(!modelID){return reject(new Error("ProductAR.init() - cannot proceed as variation does not have a defined file"))}const model=variation.relationships.find(plattar_api_1.FileModel,modelID);if(!model){return reject(new Error("ProductAR.init() - cannot proceed as ModelFile for selected variation is corrupt"))}this._SetupAnalytics(product,variation);if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(model.attributes.reality_filename&&util_1.Util.canRealityViewer()){this._ar=new reality_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.reality_filename;return accept(this)}if(model.attributes.usdz_filename&&util_1.Util.canQuicklook()){this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.usdz_filename;return accept(this)}return reject(new Error("ProductAR.init() - cannot proceed as ModelFile does not have a defined .usdz or .reality file"))}if(util_1.Util.canSceneViewer()){const arviewer=new scene_viewer_1.default;arviewer.modelUrl=plattar_api_1.Server.location().cdn+model.attributes.path+model.attributes.original_filename;arviewer.isVertical=this.options.anchor==="vertical"?true:false;const scene=product.relationships.find(plattar_api_1.Scene);if(scene){const sceneOpt=scene.attributes.custom_json||{};if(sceneOpt.anchor==="vertical"){arviewer.isVertical=true}}this._ar=arviewer;return accept(this)}return reject(new Error("ProductAR.init() - could not initialise AR correctly, check values"))}).catch(reject)})}start(){if(!this._ar){throw new Error("ProductAR.start() - cannot proceed as AR instance is null")}const analytics=this._analytics;if(analytics){analytics.data.push("device",this._ar.device);analytics.data.push("eventCategory",this._ar.nodeType);analytics.data.push("eventAction","Start Augment");analytics.write();analytics.startRecordEngagement()}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.ProductAR=ProductAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1,"@plattar/plattar-analytics":38,"@plattar/plattar-api":42}],4:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.RawAR=void 0;const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class RawAR extends launcher_ar_1.LauncherAR{constructor(modelLocation=null){super();if(!modelLocation){throw new Error("RawAR.constructor(modelLocation) - modelLocation must be defined")}const lowerLoc=modelLocation.toLowerCase();if(lowerLoc.endsWith("usdz")||lowerLoc.endsWith("glb")||lowerLoc.endsWith("gltf")||lowerLoc.endsWith("reality")){this._modelLocation=modelLocation;this._ar=null}else{throw new Error("RawAR.constructor(modelLocation) - modelLocation must be one of gltf, glb, usdz or reality")}}get modelLocation(){return this._modelLocation}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("RawAR.init() - cannot proceed as AR not available in context"))}const modelLocation=this._modelLocation;const lowerLoc=modelLocation.toLowerCase();if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(lowerLoc.endsWith("reality")&&util_1.Util.canRealityViewer()){this._ar=new reality_viewer_1.default;this._ar.modelUrl=modelLocation;return accept(this)}if(lowerLoc.endsWith("usdz")&&util_1.Util.canQuicklook()){this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=modelLocation;return accept(this)}return reject(new Error("RawAR.init() - cannot proceed as model is not a .usdz or .reality file"))}if(util_1.Util.canSceneViewer()){if(lowerLoc.endsWith("glb")||lowerLoc.endsWith("gltf")){const arviewer=new scene_viewer_1.default;arviewer.modelUrl=modelLocation;arviewer.isVertical=this.options.anchor==="vertical"?true:false;this._ar=arviewer;return accept(this)}return reject(new Error("RawAR.init() - cannot proceed as model is not a .glb or .gltf file"))}return reject(new Error("RawAR.init() - could not initialise AR correctly, check values"))})}start(){if(!this._ar){throw new Error("RawAR.start() - cannot proceed as AR instance is null")}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.RawAR=RawAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1}],5:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.SceneAR=void 0;const plattar_analytics_1=require("@plattar/plattar-analytics");const plattar_api_1=require("@plattar/plattar-api");const plattar_services_1=require("@plattar/plattar-services");const util_1=require("../util/util");const quicklook_viewer_1=__importDefault(require("../viewers/quicklook-viewer"));const reality_viewer_1=__importDefault(require("../viewers/reality-viewer"));const scene_viewer_1=__importDefault(require("../viewers/scene-viewer"));const launcher_ar_1=require("./launcher-ar");class SceneAR extends launcher_ar_1.LauncherAR{constructor(sceneID=null){super();this._analytics=null;if(!sceneID){throw new Error("SceneAR.constructor(sceneID) - sceneID must be defined")}this._sceneID=sceneID;this._ar=null}get sceneID(){return this._sceneID}_SetupAnalytics(scene){let analytics=null;if(scene){analytics=new plattar_analytics_1.Analytics(scene.attributes.application_id);analytics.origin=plattar_api_1.Server.location().type;this._analytics=analytics;analytics.data.push("type","scene-ar");analytics.data.push("sceneId",scene.id);analytics.data.push("sceneTitle",scene.attributes.title);const application=scene.relationships.find(plattar_api_1.Project);if(application){analytics.data.push("applicationId",application.id);analytics.data.push("applicationTitle",application.attributes.title)}}}_ComposeScene(scene,output){return new Promise((accept,reject)=>{const sceneProducts=scene.relationships.filter(plattar_api_1.SceneProduct);if(sceneProducts.length<=0){return reject(new Error("SceneAR.ComposeScene() - cannot proceed as scene does not contain AR components"))}const configurator=new plattar_services_1.Configurator;configurator.server=plattar_api_1.Server.location().type;configurator.output=output;sceneProducts.forEach(sceneProduct=>{const product=sceneProduct.relationships.find(plattar_api_1.Product);if(product&&product.attributes.product_variation_id){configurator.addSceneProduct(sceneProduct.id,product.attributes.product_variation_id)}});return configurator.get().then(result=>{accept(result.filename)}).catch(reject)})}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("SceneAR.init() - cannot proceed as AR not available in context"))}const scene=new plattar_api_1.Scene(this.sceneID);scene.include(plattar_api_1.Project);scene.include(plattar_api_1.SceneProduct);scene.include(plattar_api_1.SceneProduct.include(plattar_api_1.Product));scene.get().then(scene=>{this._SetupAnalytics(scene);const sceneOpt=scene.attributes.custom_json||{};if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){if(sceneOpt.anchor==="face"){if(util_1.Util.canRealityViewer()){return this._ComposeScene(scene,"vto").then(modelUrl=>{this._ar=new reality_viewer_1.default;this._ar.modelUrl=modelUrl;return accept(this)}).catch(reject)}else{return reject(new Error("SceneAR.init() - cannot proceed as VTO AR requires Reality Viewer support"))}}if(util_1.Util.canQuicklook()){return this._ComposeScene(scene,"usdz").then(modelUrl=>{this._ar=new quicklook_viewer_1.default;this._ar.modelUrl=modelUrl;return accept(this)}).catch(reject)}return reject(new Error("SceneAR.init() - cannot proceed as IOS device does not support AR Mode"))}if(util_1.Util.canSceneViewer()){return this._ComposeScene(scene,"glb").then(modelUrl=>{const arviewer=new scene_viewer_1.default;arviewer.modelUrl=modelUrl;arviewer.isVertical=this.options.anchor==="vertical"?true:false;if(sceneOpt.anchor==="vertical"){arviewer.isVertical=true}this._ar=arviewer;return accept(this)}).catch(reject)}return reject(new Error("SceneAR.init() - could not initialise AR correctly, check values"))}).catch(reject)})}start(){if(!this._ar){throw new Error("SceneAR.start() - cannot proceed as AR instance is null")}const analytics=this._analytics;if(analytics){analytics.data.push("device",this._ar.device);analytics.data.push("eventCategory",this._ar.nodeType);analytics.data.push("eventAction","Start Scene Augment");analytics.write();analytics.startRecordEngagement()}this._ar.start()}canQuicklook(){return this._ar&&this._ar.nodeType==="Quick Look"?true:false}canRealityViewer(){return this._ar&&this._ar.nodeType==="Reality Viewer"?true:false}canSceneViewer(){return this._ar&&this._ar.nodeType==="Scene Viewer"?true:false}}exports.SceneAR=SceneAR},{"../util/util":15,"../viewers/quicklook-viewer":18,"../viewers/reality-viewer":19,"../viewers/scene-viewer":20,"./launcher-ar":1,"@plattar/plattar-analytics":38,"@plattar/plattar-api":42,"@plattar/plattar-services":113}],6:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.SceneProductAR=void 0;const product_ar_1=require("./product-ar");const plattar_api_1=require("@plattar/plattar-api");const util_1=require("../util/util");class SceneProductAR extends product_ar_1.ProductAR{constructor(sceneProductID=null,variationID=null,variationSKU=null){super(sceneProductID,variationID,variationSKU);this._attachedProductID=null;if(!sceneProductID){throw new Error("SceneProductAR.constructor(sceneProductID, variationID) - sceneProductID must be defined")}this._sceneProductID=sceneProductID}get sceneProductID(){return this._sceneProductID}get productID(){if(!this._attachedProductID){throw new Error("SceneProductAR.productID() - product id was not defined, did you call init()?")}return this._attachedProductID}init(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("SceneProductAR.init() - cannot proceed as AR not available in context"))}const sceneProduct=new plattar_api_1.SceneProduct(this.sceneProductID);sceneProduct.get().then(sceneProduct=>{const productID=sceneProduct.attributes.product_id;if(!productID){return reject("SceneProductAR.init() - Scene Product does not have an attached Product instance")}this._attachedProductID=productID;return super.init().then(accept).catch(reject)}).catch(reject)})}}exports.SceneProductAR=SceneProductAR},{"../util/util":15,"./product-ar":3,"@plattar/plattar-api":42}],7:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ConfiguratorController=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_services_1=require("@plattar/plattar-services");const raw_ar_1=require("../../ar/raw-ar");const scene_ar_1=require("../../ar/scene-ar");const scene_product_ar_1=require("../../ar/scene-product-ar");const configurator_state_1=require("../../util/configurator-state");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class ConfiguratorController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}let dst=plattar_api_1.Server.location().base+"renderer/configurator.html?scene_id="+sceneID;const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");const showUI=this.getAttribute("show-ui");if(showUI&&showUI==="true"){dst=plattar_api_1.Server.location().base+"configurator/dist/index.html?scene_id="+sceneID}if(configState){dst+="&config_state="+configState}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("ConfiguratorController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-configurator");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("scene-id",sceneID);const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");const showUI=this.getAttribute("show-ui");if(configState){viewer.setAttribute("config-state",configState)}if(showAR){viewer.setAttribute("show-ar",showAR)}if(showUI){viewer.setAttribute("show-ui",showUI)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("ConfiguratorController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ConfiguratorController.initAR() - cannot proceed as AR not available in context"))}const arMode=this.getAttribute("ar-mode")||"generated";switch(arMode.toLowerCase()){case"inherited":this._InitARInherited(accept,reject);return;case"generated":default:this._InitARGenerated(accept,reject)}})}_InitARInherited(accept,reject){const sceneID=this.getAttribute("scene-id");const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=configurator_state_1.ConfiguratorState.decode(configState);const first=state.first();if(first){const sceneProductAR=new scene_product_ar_1.SceneProductAR(first.scene_product_id,first.product_variation_id);sceneProductAR.init().then(accept).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - invalid config-state does not have any product states"))}if(sceneID){configurator_state_1.ConfiguratorState.decodeScene(sceneID).then(state=>{const first=state.first();if(first){const sceneProductAR=new scene_product_ar_1.SceneProductAR(first.scene_product_id,first.product_variation_id);return sceneProductAR.init().then(accept).catch(reject)}return reject(new Error("ConfiguratorController.initAR() - invalid Scene does not have any product states"))}).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}_InitARGenerated(accept,reject){const viewer=this.element;const sceneID=this.getAttribute("scene-id");if(viewer&&sceneID&&viewer.messenger){let output="glb";if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){output="usdz"}viewer.messenger.getARFile(output).then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);return rawAR.init().then(accept).catch(reject)}).catch(reject);return}const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=configurator_state_1.ConfiguratorState.decode(configState);if(state.length>0){const server=this.getAttribute("server")||"production";const configurator=new plattar_services_1.Configurator;configurator.server=server;if(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS()){configurator.output="usdz"}if(util_1.Util.canSceneViewer()){configurator.output="glb"}state.forEach(productState=>{if(productState.meta_data.augment===true){configurator.addSceneProduct(productState.scene_product_id,productState.product_variation_id)}});configurator.get().then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);rawAR.init().then(accept).catch(reject)}).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - invalid config-state does not have any product states"))}if(sceneID){const sceneAR=new scene_ar_1.SceneAR(sceneID);sceneAR.init().then(accept).catch(reject);return}return reject(new Error("ConfiguratorController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.ConfiguratorController=ConfiguratorController},{"../../ar/raw-ar":4,"../../ar/scene-ar":5,"../../ar/scene-product-ar":6,"../../util/configurator-state":14,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42,"@plattar/plattar-services":113}],8:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.PlattarController=exports.ControllerState=void 0;const plattar_api_1=require("@plattar/plattar-api");var ControllerState;(function(ControllerState){ControllerState[ControllerState["None"]=0]="None";ControllerState[ControllerState["Renderer"]=1]="Renderer";ControllerState[ControllerState["QRCode"]=2]="QRCode"})(ControllerState=exports.ControllerState||(exports.ControllerState={}));class PlattarController{constructor(parent){this._state=ControllerState.None;this._element=null;this._prevQROpt=null;this._parent=parent}static get DEFAULT_QR_OPTIONS(){return{color:"#101721",qrType:"default",margin:0}}startAR(){return new Promise((accept,reject)=>{this.initAR().then(launcher=>{launcher.start();accept()}).catch(reject)})}startQRCode(options){const qrType=this.getAttribute("qr-type")||"viewer";switch(qrType.toLowerCase()){case"ar":return this.startARQRCode(options);case"viewer":default:return this.startViewerQRCode(options)}}startARQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const opt=options||PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}const qrOptions=btoa(JSON.stringify(opt));let dst=plattar_api_1.Server.location().base+"renderer/launcher.html?qr_options="+qrOptions;const sceneID=this.getAttribute("scene-id");const configState=this.getAttribute("config-state");const embedType=this.getAttribute("embed-type");const productID=this.getAttribute("product-id");const sceneProductID=this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const arMode=this.getAttribute("ar-mode");if(configState){dst+="&config_state="+configState}if(embedType){dst+="&embed_type="+embedType}if(productID){dst+="&product_id="+productID}if(sceneProductID){dst+="&scene_product_id="+sceneProductID}if(variationID){dst+="&variation_id="+variationID}if(variationSKU){dst+="&variation_sku="+variationSKU}if(arMode){dst+="&ar_mode="+arMode}if(sceneID){dst+="&scene_id="+sceneID}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this._element=viewer;this._state=ControllerState.QRCode;this._prevQROpt=opt;this.append(viewer)})}get parent(){return this._parent}getAttribute(attribute){return this.parent?this.parent.hasAttribute(attribute)?this.parent.getAttribute(attribute):null:null}append(element){const shadow=this.parent.shadowRoot||this.parent.attachShadow({mode:"open"});shadow.append(element)}}exports.PlattarController=PlattarController},{"@plattar/plattar-api":42}],9:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ProductController=void 0;const plattar_api_1=require("@plattar/plattar-api");const product_ar_1=require("../../ar/product-ar");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class ProductController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}if(state===plattar_controller_1.ControllerState.Renderer){const viewer=this._element;if(viewer){const variationID=this.getAttribute("variation-id");if(variationID&&viewer.messenger){viewer.messenger.selectVariation(variationID)}}return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const productID=this.getAttribute("product-id");if(productID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const showAR=this.getAttribute("show-ar");let dst=plattar_api_1.Server.location().base+"renderer/product.html?product_id="+productID;if(variationID){dst+="&variationId="+variationID}if(variationSKU){dst+="&variationSku="+variationSKU}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("ProductController.startQRCode() - minimum required attributes not set, use product-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const productID=this.getAttribute("product-id");if(productID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-product");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("product-id",productID);const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const showAR=this.getAttribute("show-ar");if(variationID){viewer.setAttribute("variation-id",variationID)}if(variationSKU){viewer.setAttribute("variation-sku",variationSKU)}if(showAR){viewer.setAttribute("show-ar",showAR)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("ProductController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ProductController.initAR() - cannot proceed as AR not available in context"))}const productID=this.getAttribute("product-id");if(productID){const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const product=new product_ar_1.ProductAR(productID,variationID,variationSKU);return product.init().then(accept).catch(reject)}return reject(new Error("ProductController.initAR() - minimum required attributes not set, use product-id as a minimum"))})}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.ProductController=ProductController},{"../../ar/product-ar":3,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42}],10:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ViewerController=void 0;const plattar_api_1=require("@plattar/plattar-api");const product_ar_1=require("../../ar/product-ar");const scene_ar_1=require("../../ar/scene-ar");const scene_product_ar_1=require("../../ar/scene-product-ar");const configurator_state_1=require("../../util/configurator-state");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class ViewerController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}if(state===plattar_controller_1.ControllerState.Renderer){const viewer=this._element;if(viewer){const productID=this.getAttribute("product-id")||this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");if(productID&&variationID&&viewer.messenger){viewer.messenger.selectVariation(productID,variationID)}}return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}let dst=plattar_api_1.Server.location().base+"renderer/viewer.html?scene_id="+sceneID;const productID=this.getAttribute("product-id")||this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const showAR=this.getAttribute("show-ar");if(productID){dst+="&productId="+productID}if(variationID){dst+="&variationId="+variationID}if(variationSKU){dst+="&variationSku="+variationSKU}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("ViewerController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-viewer");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("scene-id",sceneID);const productID=this.getAttribute("product-id")||this.getAttribute("scene-product-id");const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const showAR=this.getAttribute("show-ar");if(productID){viewer.setAttribute("product-id",productID)}if(variationID){viewer.setAttribute("variation-id",variationID)}if(variationSKU){viewer.setAttribute("variation-sku",variationSKU)}if(showAR){viewer.setAttribute("show-ar",showAR)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("ViewerController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("ViewerController.initAR() - cannot proceed as AR not available in context"))}const productID=this.getAttribute("product-id");if(productID){const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const product=new product_ar_1.ProductAR(productID,variationID,variationSKU);return product.init().then(accept).catch(reject)}const sceneProductID=this.getAttribute("scene-product-id");if(sceneProductID){const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");const product=new scene_product_ar_1.SceneProductAR(sceneProductID,variationID,variationSKU);return product.init().then(accept).catch(reject)}const sceneID=this.getAttribute("scene-id");if(sceneID){const variationID=this.getAttribute("variation-id");const variationSKU=this.getAttribute("variation-sku");if(!variationID&&!variationSKU){const sceneAR=new scene_ar_1.SceneAR(sceneID);return sceneAR.init().then(accept).catch(reject)}return configurator_state_1.ConfiguratorState.decodeScene(sceneID).then(state=>{const firstProduct=state.first();if(state.length>1||!firstProduct){return reject(new Error("ViewerController.initAR() - single product required to override variation-id or variation-sku"))}const product=new scene_product_ar_1.SceneProductAR(firstProduct.scene_product_id,variationID,variationSKU);return product.init().then(accept).catch(reject)}).catch(reject)}return reject(new Error("ViewerController.initAR() - minimum required attributes not set, use scene-id as a minimum"))})}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.ViewerController=ViewerController},{"../../ar/product-ar":3,"../../ar/scene-ar":5,"../../ar/scene-product-ar":6,"../../util/configurator-state":14,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42}],11:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.VTOController=void 0;const plattar_api_1=require("@plattar/plattar-api");const plattar_services_1=require("@plattar/plattar-services");const __1=require("../..");const raw_ar_1=require("../../ar/raw-ar");const util_1=require("../../util/util");const plattar_controller_1=require("./plattar-controller");class VTOController extends plattar_controller_1.PlattarController{constructor(parent){super(parent)}onAttributesUpdated(){const state=this._state;if(state===plattar_controller_1.ControllerState.QRCode){this.startQRCode(this._prevQROpt);return}}startViewerQRCode(options){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const opt=options||plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;const viewer=document.createElement("plattar-qrcode");const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";viewer.setAttribute("width",width);viewer.setAttribute("height",height);if(opt.color){viewer.setAttribute("color",opt.color)}if(opt.margin){viewer.setAttribute("margin",""+opt.margin)}if(opt.qrType){viewer.setAttribute("qr-type",opt.qrType)}let dst=plattar_api_1.Server.location().base+"renderer/facear.html?scene_id="+sceneID;const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");if(configState){dst+="&config_state="+configState}if(showAR){dst+="&show_ar="+showAR}viewer.setAttribute("url",opt.url||dst);viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.QRCode;this._prevQROpt=opt;return}return reject(new Error("VTOController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"))})}startRenderer(){return new Promise((accept,reject)=>{this.removeRenderer();const sceneID=this.getAttribute("scene-id");if(sceneID){const width=this.getAttribute("width")||"500px";const height=this.getAttribute("height")||"500px";const server=this.getAttribute("server")||"production";const viewer=document.createElement("plattar-facear");viewer.setAttribute("width",width);viewer.setAttribute("height",height);viewer.setAttribute("server",server);viewer.setAttribute("scene-id",sceneID);const configState=this.getAttribute("config-state");const showAR=this.getAttribute("show-ar");if(configState){viewer.setAttribute("config-state",configState)}if(showAR){viewer.setAttribute("show-ar",showAR)}viewer.onload=()=>{return accept(viewer)};this.append(viewer);this._element=viewer;this._state=plattar_controller_1.ControllerState.Renderer;return}return reject(new Error("VTOController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"))})}initAR(){return new Promise((accept,reject)=>{if(!util_1.Util.canAugment()){return reject(new Error("VTOController.initAR() - cannot proceed as VTO AR not available in context"))}if(!(util_1.Util.isSafari()||util_1.Util.isChromeOnIOS())){return reject(new Error("VTOController.initAR() - cannot proceed as VTO AR only available on IOS Mobile devices"))}const arMode=this.getAttribute("ar-mode")||"generated";switch(arMode.toLowerCase()){case"inherited":this._InitARInherited(accept,reject);return;case"generated":default:this._InitARGenerated(accept,reject)}})}_InitARInherited(accept,reject){const sceneID=this.getAttribute("scene-id");const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=__1.ConfiguratorState.decode(configState);const first=state.first();if(first){const sceneProductAR=new __1.SceneProductAR(first.scene_product_id,first.product_variation_id);sceneProductAR.init().then(accept).catch(reject);return}return reject(new Error("VTOController.initAR() - invalid config-state does not have any product states"))}if(sceneID){__1.ConfiguratorState.decodeScene(sceneID).then(state=>{const first=state.first();if(first){const sceneProductAR=new __1.SceneProductAR(first.scene_product_id,first.product_variation_id);return sceneProductAR.init().then(accept).catch(reject)}return reject(new Error("VTOController.initAR() - invalid Scene does not have any product states"))}).catch(reject);return}return reject(new Error("VTOController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}_InitARGenerated(accept,reject){const viewer=this.element;const sceneID=this.getAttribute("scene-id");if(viewer&&sceneID&&viewer.messenger){viewer.messenger.getARFile("vto").then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);return rawAR.init().then(accept).catch(reject)}).catch(reject);return}const configState=this.getAttribute("config-state");if(sceneID&&configState){const state=__1.ConfiguratorState.decode(configState);if(state.length>0){const server=this.getAttribute("server")||"production";const configurator=new plattar_services_1.Configurator;configurator.server=server;configurator.output="vto";state.forEach(productState=>{if(productState.meta_data.augment===true){configurator.addSceneProduct(productState.scene_product_id,productState.product_variation_id)}});configurator.get().then(result=>{const rawAR=new raw_ar_1.RawAR(result.filename);rawAR.init().then(accept).catch(reject)}).catch(reject);return}return reject(new Error("VTOController.initAR() - invalid config-state does not have any product states"))}if(sceneID){const sceneAR=new __1.SceneAR(sceneID);sceneAR.init().then(accept).catch(reject);return}return reject(new Error("VTOController.initAR() - minimum required attributes not set, use scene-id as a minimum"))}removeRenderer(){if(this._element){this._element.remove();this._element=null;return true}return false}get element(){return this._element}}exports.VTOController=VTOController},{"../..":13,"../../ar/raw-ar":4,"../../util/util":15,"./plattar-controller":8,"@plattar/plattar-api":42,"@plattar/plattar-services":113}],12:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});const plattar_api_1=require("@plattar/plattar-api");const product_controller_1=require("./controllers/product-controller");const viewer_controller_1=require("./controllers/viewer-controller");const configurator_controller_1=require("./controllers/configurator-controller");const vto_controller_1=require("./controllers/vto-controller");var EmbedType;(function(EmbedType){EmbedType[EmbedType["Viewer"]=0]="Viewer";EmbedType[EmbedType["Configurator"]=1]="Configurator";EmbedType[EmbedType["VTO"]=2]="VTO"})(EmbedType||(EmbedType={}));class PlattarEmbed extends HTMLElement{constructor(){super();this._currentType=EmbedType.Viewer;this._controller=null}get viewer(){return this._controller?this._controller.element:null}connectedCallback(){const embedType=this.hasAttribute("embed-type")?this.getAttribute("embed-type"):"viewer";if(embedType){switch(embedType.toLowerCase()){case"viewer":this._currentType=EmbedType.Viewer;break;case"vto":this._currentType=EmbedType.VTO;break;case"configurator":this._currentType=EmbedType.Configurator;break;default:this._currentType=EmbedType.Viewer}}const observer=new MutationObserver(mutations=>{mutations.forEach(mutation=>{if(mutation.type==="attributes"){this._OnAttributesUpdated()}})});observer.observe(this,{attributes:true});const server=this.hasAttribute("server")?this.getAttribute("server"):"production";plattar_api_1.Server.create(plattar_api_1.Server.match(server||"production"));const sceneID=this.hasAttribute("scene-id")?this.getAttribute("scene-id"):null;const productID=this.hasAttribute("product-id")?this.getAttribute("product-id"):null;if(this._currentType===EmbedType.Viewer){if(!sceneID&&productID){this._controller=new product_controller_1.ProductController(this)}else if(sceneID){this._controller=new viewer_controller_1.ViewerController(this)}}else if(this._currentType===EmbedType.Configurator){this._controller=new configurator_controller_1.ConfiguratorController(this)}else if(this._currentType===EmbedType.VTO){this._controller=new vto_controller_1.VTOController(this)}const init=this.hasAttribute("init")?this.getAttribute("init"):null;if(init==="ar"){this.startAR()}else if(init==="viewer"){this.startViewer()}else if(init==="qrcode"){this.startQRCode()}else if(init==="ar-fallback-qrcode"){this.startAR().then(()=>{}).catch(_err=>{this.startQRCode()})}else if(init==="ar-fallback-viewer"){this.startAR().then(()=>{}).catch(_err=>{this.startViewer()})}}initAR(){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.initAR() - cannot execute as controller has not loaded yet"))}return this._controller.initAR().then(accept).catch(reject)})}startAR(){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.startAR() - cannot execute as controller has not loaded yet"))}return this._controller.startAR().then(accept).catch(reject)})}startViewer(){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.startViewer() - cannot execute as controller has not loaded yet"))}return this._controller.startRenderer().then(accept).catch(reject)})}startQRCode(options=null){return new Promise((accept,reject)=>{if(!this._controller){return reject(new Error("PlattarEmbed.startQRCode() - cannot execute as controller has not loaded yet"))}return this._controller.startQRCode(options).then(accept).catch(reject)})}removeRenderer(){if(!this._controller){return false}return this._controller.removeRenderer()}_OnAttributesUpdated(){if(this._controller){this._controller.onAttributesUpdated()}}}exports.default=PlattarEmbed},{"./controllers/configurator-controller":7,"./controllers/product-controller":9,"./controllers/viewer-controller":10,"./controllers/vto-controller":11,"@plattar/plattar-api":42}],13:[function(require,module,exports){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;var desc=Object.getOwnPropertyDescriptor(m,k);if(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m[k]}}}Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]});var __setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v});var __importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ConfiguratorState=exports.Util=exports.RawAR=exports.ModelAR=exports.SceneAR=exports.SceneProductAR=exports.ProductAR=exports.LauncherAR=exports.version=exports.PlattarQRCode=exports.PlattarWeb=void 0;exports.PlattarWeb=__importStar(require("@plattar/plattar-web"));exports.PlattarQRCode=__importStar(require("@plattar/plattar-qrcode"));exports.version=__importStar(require("./version"));var launcher_ar_1=require("./ar/launcher-ar");Object.defineProperty(exports,"LauncherAR",{enumerable:true,get:function(){return launcher_ar_1.LauncherAR}});var product_ar_1=require("./ar/product-ar");Object.defineProperty(exports,"ProductAR",{enumerable:true,get:function(){return product_ar_1.ProductAR}});var scene_product_ar_1=require("./ar/scene-product-ar");Object.defineProperty(exports,"SceneProductAR",{enumerable:true,get:function(){return scene_product_ar_1.SceneProductAR}});var scene_ar_1=require("./ar/scene-ar");Object.defineProperty(exports,"SceneAR",{enumerable:true,get:function(){return scene_ar_1.SceneAR}});var model_ar_1=require("./ar/model-ar");Object.defineProperty(exports,"ModelAR",{enumerable:true,get:function(){return model_ar_1.ModelAR}});var raw_ar_1=require("./ar/raw-ar");Object.defineProperty(exports,"RawAR",{enumerable:true,get:function(){return raw_ar_1.RawAR}});var util_1=require("./util/util");Object.defineProperty(exports,"Util",{enumerable:true,get:function(){return util_1.Util}});var configurator_state_1=require("./util/configurator-state");Object.defineProperty(exports,"ConfiguratorState",{enumerable:true,get:function(){return configurator_state_1.ConfiguratorState}});const plattar_embed_1=__importDefault(require("./embed/plattar-embed"));const version_1=__importDefault(require("./version"));if(customElements){if(customElements.get("plattar-embed")===undefined){customElements.define("plattar-embed",plattar_embed_1.default)}}console.log("using @plattar/plattar-ar-adapter v"+version_1.default)},{"./ar/launcher-ar":1,"./ar/model-ar":2,"./ar/product-ar":3,"./ar/raw-ar":4,"./ar/scene-ar":5,"./ar/scene-product-ar":6,"./embed/plattar-embed":12,"./util/configurator-state":14,"./util/util":15,"./version":16,"@plattar/plattar-qrcode":108,"@plattar/plattar-web":127}],14:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.ConfiguratorState=void 0;const plattar_api_1=require("@plattar/plattar-api");class ConfiguratorState{constructor(state=null){const defaultState={meta:{scene_product_index:0,product_variation_index:1,meta_index:2},states:[]};if(state){try{const decodedb64State=atob(state);const parsedState=JSON.parse(decodedb64State);if(parsedState.meta){defaultState.meta.scene_product_index=parsedState.meta.scene_product_index||0;defaultState.meta.product_variation_index=parsedState.meta.product_variation_index||1;defaultState.meta.meta_index=parsedState.meta.meta_index||2}defaultState.states=parsedState.states||[]}catch(err){console.error("ConfiguratorState.constructor() - there was an error parsing configurator state");console.error(err)}}this._state=defaultState}setSceneProduct(sceneProductID,productVariationID,metaData=null){this.addSceneProduct(sceneProductID,productVariationID,metaData)}addSceneProduct(sceneProductID,productVariationID,metaData=null){if(sceneProductID&&productVariationID){const states=this._state.states;const meta=this._state.meta;let newData=null;const existingData=this.findSceneProductIndex(sceneProductID);if(existingData){newData=existingData}else{newData=[];states.push(newData)}newData[meta.scene_product_index]=sceneProductID;newData[meta.product_variation_index]=productVariationID;if(metaData){newData[meta.meta_index]=metaData}}}findSceneProductIndex(sceneProductID){const states=this._state.states;if(states.length>0){const meta=this._state.meta;const found=states.find(productState=>{return productState[meta.scene_product_index]===sceneProductID});return found?found:null}return null}findSceneProduct(sceneProductID){const found=this.findSceneProductIndex(sceneProductID);if(found){const meta=this._state.meta;const data={scene_product_id:found[meta.scene_product_index],product_variation_id:found[meta.product_variation_index],meta_data:{augment:true}};if(found.length===3){data.meta_data.augment=found[meta.meta_index].augment||true}return data}return null}forEach(callback){const states=this._state.states;const meta=this._state.meta;if(states.length>0){states.forEach(productState=>{if(productState.length===2){callback({scene_product_id:productState[meta.scene_product_index],product_variation_id:productState[meta.product_variation_index],meta_data:{augment:true}})}else if(productState.length===3){callback({scene_product_id:productState[meta.scene_product_index],product_variation_id:productState[meta.product_variation_index],meta_data:{augment:productState[meta.meta_index].augment||true}})}})}}first(){const states=this._state.states;if(states.length>0){const meta=this._state.meta;const found=states.find(productState=>{const check=productState[meta.scene_product_index];return check!==null&&check!==undefined});if(!found){return null}const data={scene_product_id:found[meta.scene_product_index],product_variation_id:found[meta.product_variation_index],meta_data:{augment:true}};if(found.length===3){data.meta_data.augment=found[meta.meta_index].augment||true}return data}return null}get length(){return this._state.states.length}static decode(state){return new ConfiguratorState(state)}static decodeScene(sceneID=null){return new Promise((accept,reject)=>{const configState=new ConfiguratorState;if(!sceneID){return reject(new Error("ConfiguratorState.decodeScene(sceneID) - sceneID must be defined"))}const scene=new plattar_api_1.Scene(sceneID);scene.include(plattar_api_1.SceneProduct);scene.include(plattar_api_1.SceneProduct.include(plattar_api_1.Product));scene.get().then(scene=>{const sceneProducts=scene.relationships.filter(plattar_api_1.SceneProduct);if(sceneProducts.length<=0){return accept(configState)}sceneProducts.forEach(sceneProduct=>{const product=sceneProduct.relationships.find(plattar_api_1.Product);if(product&&product.attributes.product_variation_id){configState.setSceneProduct(sceneProduct.id,product.attributes.product_variation_id)}});accept(configState)}).catch(reject)})}encode(){return btoa(JSON.stringify(this._state))}}exports.ConfiguratorState=ConfiguratorState},{"@plattar/plattar-api":42}],15:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Util=void 0;class Util{static canAugment(){const userAgent=navigator.userAgent;if((/CriOS/i.test(userAgent)||/Macintosh|iPad|iPhone|iPod/.test(userAgent))&&!window.MSStream){if(/\bFB[\w_]+\//.test(userAgent)){return false}if(/\bInstagram/i.test(userAgent)){return false}return Util.canQuicklook()}else if(/android/i.test(userAgent)){return true}return false}static canQuicklook(){const tempAnchor=document.createElement("a");return tempAnchor.relList&&tempAnchor.relList.supports&&tempAnchor.relList.supports("ar")}static canSceneViewer(){return Util.canAugment()&&/android/i.test(navigator.userAgent)}static canRealityViewer(){if(!Util.canAugment()){return false}if(/Macintosh|iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream){if(Util.isSafari()&&Util.getIOSVersion()[0]>=13){return true}}return false}static isSafari(){if(navigator.vendor&&navigator.userAgent){return navigator.vendor.indexOf("Apple")>-1&&navigator.userAgent.indexOf("CriOS")===-1&&navigator.userAgent.indexOf("FxiOS")===-1}return false}static isChromeOnIOS(){const userAgent=navigator.userAgent;if(userAgent){return Util.canAugment()&&/CriOS/i.test(userAgent)}return false}static getIOSVersion(){if(/iP(hone|od|ad)/.test(navigator.platform)){const v=navigator.appVersion.match(/OS (\d+)_(\d+)_?(\d+)?/);if(v!==null){return[parseInt(v[1],10),parseInt(v[2],10),parseInt(v[3],10)]}}if(/Mac/.test(navigator.platform)){const v=navigator.appVersion.match(/Version\/(\d+)\.(\d+)\.?(\d+)?/);if(v!==null){return[parseInt(v[1],10),parseInt(v[2],10),parseInt(v[3],10)]}}return[-1,-1,-1]}static getChromeVersion(){const raw=navigator.userAgent.match(/Chrom(e|ium)\/([0-9]+)\./);if(raw!==null){return parseInt(raw[2],10)}return 1}}exports.Util=Util},{}],16:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default="1.131.1"},{}],17:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});class ARViewer{constructor(){this.modelUrl=null;this.modelUrl=null}}exports.default=ARViewer},{}],18:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});const ar_viewer_1=__importDefault(require("./ar-viewer"));class QuicklookViewer extends ar_viewer_1.default{constructor(){super();this.araction=null;this.titleHTML="&checkoutTitle="+document.title+"&checkoutSubtitle="+document.title;this.arcallback=()=>{}}get nodeType(){return"Quick Look"}get device(){return"ios"}start(){if(!this.modelUrl){throw new Error("QuicklookViewer.start() - model url not set, use QuicklookViewer.modelUrl")}const anchor=document.createElement("a");anchor.setAttribute("rel","ar");anchor.appendChild(document.createElement("img"));let url=this.modelUrl;const araction=this.araction;if(araction){const handleQuicklook=event=>{if(event.data==="_apple_ar_quicklook_button_tapped"){this.arcallback()}document.body.removeChild(anchor);anchor.removeEventListener("message",handleQuicklook,false)};anchor.addEventListener("message",handleQuicklook,false);document.body.appendChild(anchor);url+="#callToAction="+araction;if(this.titleHTML){url+=this.titleHTML}}anchor.setAttribute("href",encodeURI(url));anchor.click()}}exports.default=QuicklookViewer},{"./ar-viewer":17}],19:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});const ar_viewer_1=__importDefault(require("./ar-viewer"));class RealityViewer extends ar_viewer_1.default{constructor(){super()}get nodeType(){return"Reality Viewer"}get device(){return"ios"}start(){if(!this.modelUrl){throw new Error("RealityViewer.start() - model url not set, use RealityViewer.modelUrl")}const anchor=document.createElement("a");anchor.setAttribute("rel","ar");anchor.appendChild(document.createElement("img"));anchor.setAttribute("href",this.modelUrl);anchor.click()}}exports.default=RealityViewer},{"./ar-viewer":17}],20:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});const ar_viewer_1=__importDefault(require("./ar-viewer"));class SceneViewer extends ar_viewer_1.default{constructor(){super();this.araction=null;this.isVertical=false;this.titleHTML="<b>"+document.title;this.isVertical=false}get nodeType(){return"Scene Viewer"}get device(){return"android"}start(){if(!this.modelUrl){throw new Error("SceneViewer.start() - model url not set, use SceneViewer.modelUrl")}const araction=this.araction;let composedLink=encodeURIComponent(location.href);if(araction){const link=new URL(location.href);link.searchParams.set("araction",araction);composedLink=encodeURIComponent(link.href)}if(!composedLink){throw new Error("SceneViewer.start() - failed to create composition link, check parameters")}const linkOverride=encodeURIComponent(location.href+"#no-ar-fallback");let intent="intent://arvr.google.com/scene-viewer/1.1";intent+="?file="+this.modelUrl;intent+="&mode=ar_preferred";intent+="&link="+composedLink;intent+="&title=<b>"+this.titleHTML;if(this.isVertical){intent+="&enable_vertical_placement=true"}intent+=" #Intent;scheme=https;package=com.google.ar.core;action=android.intent.action.VIEW;";intent+="S.browser_fallback_url="+linkOverride+";end;";const anchor=document.createElement("a");anchor.setAttribute("href",intent);anchor.click()}}exports.default=SceneViewer},{"./ar-viewer":17}],21:[function(require,module,exports){"use strict";const Messenger=require("./messenger/messenger.js");const Memory=require("./memory/memory.js");const GlobalEventHandler=require("./messenger/global-event-handler.js");const Version=require("./version");if(!GlobalEventHandler.instance().messengerInstance){const messengerInstance=new Messenger;const memoryInstance=new Memory(messengerInstance);GlobalEventHandler.instance().messengerInstance=messengerInstance;GlobalEventHandler.instance().memoryInstance=memoryInstance}if(!GlobalEventHandler.instance().memoryInstance){const memoryInstance=new Memory(GlobalEventHandler.instance().messengerInstance);GlobalEventHandler.instance().memoryInstance=memoryInstance}console.log("using @plattar/context-messenger v"+Version);module.exports={messenger:GlobalEventHandler.instance().messengerInstance,memory:GlobalEventHandler.instance().memoryInstance,version:Version}},{"./memory/memory.js":22,"./messenger/global-event-handler.js":29,"./messenger/messenger.js":30,"./version":35}],22:[function(require,module,exports){const PermanentMemory=require("./permanent-memory");const TemporaryMemory=require("./temporary-memory");class Memory{constructor(messengerInstance){this._messenger=messengerInstance;this._tempMemory=new TemporaryMemory(messengerInstance);this._permMemory=new PermanentMemory(messengerInstance);this._messenger.self.__memory__set_temp_var=(name,data)=>{this._tempMemory[name]=data};this._messenger.self.__memory__set_perm_var=(name,data)=>{this._permMemory[name]=data}}get temp(){return this._tempMemory}get perm(){return this._permMemory}}module.exports=Memory},{"./permanent-memory":23,"./temporary-memory":24}],23:[function(require,module,exports){const WrappedValue=require("./wrapped-value");class PermanentMemory{constructor(messengerInstance){return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){return(variable,callback)=>{if(!target[variable]){target[variable]=new WrappedValue(variable,true,messengerInstance)}target[variable].watch=callback}}if(prop==="clear"){return()=>{for(const pitem of Object.getOwnPropertyNames(target)){delete target[pitem];localStorage.removeItem(pitem)}}}if(prop==="purge"){return()=>{localStorage.clear();for(const pitem of Object.getOwnPropertyNames(target)){delete target[pitem]}}}if(prop==="refresh"){return()=>{for(const val of Object.getOwnPropertyNames(target)){target[val].refresh()}}}if(!target[prop]){target[prop]=new WrappedValue(prop,true,messengerInstance)}return target[prop].value},set:(target,prop,value)=>{if(!target[prop]){target[prop]=new WrappedValue(prop,true,messengerInstance)}target[prop].value=value;return true}})}}module.exports=PermanentMemory},{"./wrapped-value":25}],24:[function(require,module,exports){const WrappedValue=require("./wrapped-value");class TemporaryMemory{constructor(messengerInstance){return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){return(variable,callback)=>{if(!target[variable]){target[variable]=new WrappedValue(variable,false,messengerInstance)}target[variable].watch=callback}}if(prop==="clear"||prop==="purge"){return()=>{for(const val of Object.getOwnPropertyNames(target)){delete target[val]}}}if(prop==="refresh"){return()=>{for(const val of Object.getOwnPropertyNames(target)){target[val].refresh()}}}if(!target[prop]){target[prop]=new WrappedValue(prop,false,messengerInstance)}return target[prop].value},set:(target,prop,value)=>{if(!target[prop]){target[prop]=new WrappedValue(prop,false,messengerInstance)}target[prop].value=value;return true}})}}module.exports=TemporaryMemory},{"./wrapped-value":25}],25:[function(require,module,exports){class WrappedValue{constructor(varName,isPermanent,messengerInstance){this._value=undefined;this._callback=undefined;this._isPermanent=isPermanent;this._varName=varName;this._messenger=messengerInstance;if(this._isPermanent){this._value=JSON.parse(localStorage.getItem(this._varName))}}refresh(){if(this._isPermanent){this._messenger.broadcast.__memory__set_perm_var(this._varName,this._value);if(this._messenger.parent){this._messenger.parent.__memory__set_perm_var(this._varName,this._value)}}else{this._messenger.broadcast.__memory__set_temp_var(this._varName,this._value);if(this._messenger.parent){this._messenger.parent.__memory__set_temp_var(this._varName,this._value)}}}refreshFor(callable){if(!this._messenger[callable]){return}if(this._isPermanent){this._messenger[callable].__memory__set_perm_var(this._varName,this._value)}else{this._messenger[callable].__memory__set_temp_var(this._varName,this._value)}}get value(){if(this._isPermanent&&this._value==undefined){this._value=JSON.parse(localStorage.getItem(this._varName))}return this._value}set value(newValue){if(typeof newValue==="function"){throw new TypeError("WrappedValue.value cannot be set to a function type")}const oldValue=this._value;this._value=newValue;if(this._isPermanent){localStorage.setItem(this._varName,JSON.stringify(this._value))}if(this._callback&&oldValue!==newValue){this.refresh();this._callback(oldValue,this._value)}}set watch(newValue){if(typeof newValue==="function"){if(newValue.length==2){this._callback=newValue}else{throw new RangeError("WrappedValue.watch callback must accept exactly 2 variables. Try using WrappedValue.watch = (oldVal, newVal) => {}")}}else{throw new TypeError("WrappedValue.watch must be a type of function. Try using WrappedValue.watch = (oldVal, newVal) => {}")}}}module.exports=WrappedValue},{}],26:[function(require,module,exports){class Broadcaster{constructor(messengerInstance){this._messengerInstance=messengerInstance;this._interfaces=[];return new Proxy(this,{get:(target,prop,receiver)=>{switch(prop){case"_push":case"_interfaces":return target[prop];default:break}return(...args)=>{const interfaces=target._interfaces;const promises=[];interfaces.forEach(callable=>{promises.push(target._messengerInstance[callable][prop](...args))});return Promise.allSettled(promises)}}})}_push(interfaceID){const index=this._interfaces.indexOf(interfaceID);if(index>-1){this._interfaces.splice(index,1)}this._interfaces.push(interfaceID)}}module.exports=Broadcaster},{}],27:[function(require,module,exports){const WrappedFunction=require("./wrapped-local-function");class CurrentFunctionList{constructor(){return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){return(variable,callback)=>{if(!target[variable]){target[variable]=new WrappedFunction(variable)}target[variable].watch=callback}}if(prop==="clear"||prop==="purge"){return()=>{for(const pitem of Object.getOwnPropertyNames(target)){delete target[pitem]}}}if(!target[prop]){target[prop]=new WrappedFunction(prop)}return(...args)=>{return target[prop].exec(...args)}},set:(target,prop,value)=>{if(!target[prop]){target[prop]=new WrappedFunction(prop)}target[prop].value=value;return true}})}}module.exports=CurrentFunctionList},{"./wrapped-local-function":28}],28:[function(require,module,exports){const Util=require("../util/util.js");class WrappedLocalFunction{constructor(funcName){this._value=undefined;this._callback=undefined;this._funcName=funcName}_execute(...args){const rData=this._value(...args);if(this._callback){this._callback(rData,...args)}return rData}exec(...args){return new Promise((accept,reject)=>{if(!this._value){return reject(new Error("WrappedLocalFunction.exec() function with name "+this._funcName+"() is not defined"))}try{const rObject=this._execute(...args);if(Util.isPromise(rObject)){rObject.then(res=>{return accept(res)}).catch(err=>{return reject(err)})}else{return accept(rObject)}}catch(e){return reject(e)}})}set value(newValue){if(typeof newValue!=="function"){throw new TypeError("WrappedLocalFunction.value must be a function. To store values use Plattar.memory")}this._value=newValue}set watch(newValue){if(typeof newValue==="function"){this._callback=newValue}else{throw new TypeError("WrappedLocalFunction.watch must be a type of function. Try using WrappedLocalFunction.watch = (rData, ...args) => {}")}}}module.exports=WrappedLocalFunction},{"../util/util.js":34}],29:[function(require,module,exports){const RemoteInterface=require("./remote-interface.js");class GlobalEventHandler{constructor(){this._eventListeners={};window.addEventListener("message",evt=>{const data=evt.data;let jsonData=undefined;try{jsonData=JSON.parse(data)}catch(e){jsonData=undefined}if(jsonData&&jsonData.event&&jsonData.data){if(this._eventListeners[jsonData.event]){const remoteInterface=new RemoteInterface(evt.source,evt.origin);this._eventListeners[jsonData.event].forEach(callback=>{try{callback(remoteInterface,jsonData.data)}catch(e){console.error("GlobalEventHandler.message() error occured during callback ");console.error(e)}})}}})}set messengerInstance(value){this._messenger=value}set memoryInstance(value){this._memory=value}get messengerInstance(){return this._messenger}get memoryInstance(){return this._memory}listen(event,callback){if(typeof callback!=="function"){throw new TypeError("GlobalEventHandler.listen(event, callback) callback must be a type of function.")}if(!this._eventListeners[event]){this._eventListeners[event]=[]}this._eventListeners[event].push(callback)}}GlobalEventHandler.instance=()=>{if(!GlobalEventHandler._default){GlobalEventHandler._default=new GlobalEventHandler}return GlobalEventHandler._default};module.exports=GlobalEventHandler},{"./remote-interface.js":31}],30:[function(require,module,exports){const CurrentFunctionList=require("./current/current-function-list");const RemoteInterface=require("./remote-interface");const RemoteFunctionList=require("./remote/remote-function-list");const Util=require("./util/util.js");const GlobalEventHandler=require("./global-event-handler.js");const Broadcaster=require("./broadcaster.js");class Messenger{constructor(){this._id=Util.id();this._parentStack=RemoteInterface.default();this._currentFunctionList=new CurrentFunctionList;this._broadcaster=new Broadcaster(this);this._parentFunctionList=undefined;const callbacks=new Map;this._callbacks=callbacks;this._setup();return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="onload"){return(variable,callback)=>{if(variable==="self"||variable==="id"){return callback()}if(target[variable]){return callback()}if(callbacks.has(variable)){const array=callbacks.get(variable);array.push(callback)}else{callbacks.set(variable,[callback])}}}switch(prop){case"id":return target._id;case"self":return target._currentFunctionList;case"broadcast":return target._broadcaster;case"addChild":case"_setup":case"_registerListeners":case"_id":case"_broadcaster":case"_callbacks":case"_parentStack":return target[prop];default:break}const targetVar=target[prop];if(!targetVar||!targetVar.isValid()){return undefined}return target[prop]}})}addChild(childNode){const remoteInterface=new RemoteInterface(childNode.contentWindow,"*");remoteInterface.send("__messenger__parent_init_inv",{id:childNode.id})}_setup(){this._registerListeners();if(this._parentStack){this._parentStack.send("__messenger__child_init")}if(window.location.protocol!=="https:"){console.warn("Messenger["+this._id+'] requires https but protocol is "'+window.location.protocol+'", messenger will not work correctly.')}}_registerListeners(){GlobalEventHandler.instance().listen("__messenger__child_init",(src,data)=>{const iframeID=src.id;switch(iframeID){case undefined:throw new Error("Messenger["+this._id+"].setup() Component ID cannot be undefined");case"self":throw new Error("Messenger["+this._id+'].setup() Component ID of "self" cannot be used as the keyword is reserved');case"parent":throw new Error("Messenger["+this._id+'].setup() Component ID of "parent" cannot be used as the keyword is reserved');case"id":throw new Error("Messenger["+this._id+'].setup() Component ID of "id" cannot be used as the keyword is reserved');case"onload":throw new Error("Messenger["+this._id+'].setup() Component ID of "onload" cannot be used as the keyword is reserved');default:break}this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));this._broadcaster._push(iframeID);const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID);src.send("__messenger__parent_init")});GlobalEventHandler.instance().listen("__messenger__child_init_inv",(src,data)=>{const iframeID=data.id;switch(iframeID){case undefined:throw new Error("Messenger["+this._id+"].setup() Component ID cannot be undefined");case"self":throw new Error("Messenger["+this._id+'].setup() Component ID of "self" cannot be used as the keyword is reserved');case"parent":throw new Error("Messenger["+this._id+'].setup() Component ID of "parent" cannot be used as the keyword is reserved');case"id":throw new Error("Messenger["+this._id+'].setup() Component ID of "id" cannot be used as the keyword is reserved');case"onload":throw new Error("Messenger["+this._id+'].setup() Component ID of "onload" cannot be used as the keyword is reserved');default:break}this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));this._broadcaster._push(iframeID);const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID)});GlobalEventHandler.instance().listen("__messenger__parent_init",(src,data)=>{const iframeID="parent";this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID)});GlobalEventHandler.instance().listen("__messenger__parent_init_inv",(src,data)=>{const iframeID="parent";this[iframeID]=new RemoteFunctionList(iframeID);this[iframeID].setup(new RemoteInterface(src.source,src.origin));const callbacks=this._callbacks;if(callbacks.has(iframeID)){const array=callbacks.get(iframeID);if(array){array.forEach((item,_)=>{try{if(item){item()}}catch(err){}})}}callbacks.delete(iframeID);src.send("__messenger__child_init_inv",{id:data.id})});GlobalEventHandler.instance().listen("__messenger__exec_fnc",(src,data)=>{const instanceID=data.instance_id;const args=data.function_args;const fname=data.function_name;GlobalEventHandler.instance().messengerInstance.self[fname](...args).then(res=>{src.send("__messenger__exec_fnc_result",{function_status:"success",function_name:fname,function_args:res,instance_id:instanceID})}).catch(err=>{const error_arg=Util.isError(err)?err.message:err;src.send("__messenger__exec_fnc_result",{function_status:"error",function_name:fname,function_args:error_arg?error_arg:"unknown error",instance_id:instanceID})})})}}module.exports=Messenger},{"./broadcaster.js":26,"./current/current-function-list":27,"./global-event-handler.js":29,"./remote-interface":31,"./remote/remote-function-list":32,"./util/util.js":34}],31:[function(require,module,exports){class RemoteInterface{constructor(source,origin){this._source=source;this._origin=origin;if(typeof this._source.postMessage!=="function"){throw new Error("RemoteInterface() provided source is invalid")}}get source(){return this._source}get origin(){return this._origin}get id(){return this.source.frameElement?this.source.frameElement.id:undefined}send(event,data){const sendData={event:event,data:data||{}};this.source.postMessage(JSON.stringify(sendData),this.origin)}static default(){try{const parentStack=window.parent?window.frameElement&&window.frameElement.nodeName=="IFRAME"?window.parent:undefined:undefined;if(parentStack){return new RemoteInterface(parentStack,"*")}}catch(err){}return undefined}}module.exports=RemoteInterface},{}],32:[function(require,module,exports){const WrappedFunction=require("./wrapped-remote-function");class RemoteFunctionList{constructor(remoteName){this._remoteInterface=undefined;this._remoteName=remoteName;return new Proxy(this,{get:(target,prop,receiver)=>{if(prop==="watch"){throw new Error("RemoteFunctionList.watch cannot watch execution of remote functions from current context. Did you mean to use Plattar.messenger.self instead?")}if(prop==="clear"){throw new Error("RemoteFunctionList.clear cannot clear/remove remote functions from current context. Did you mean to use Plattar.messenger.self.clear() instead?")}if(prop==="purge"){throw new Error("RemoteFunctionList.purge cannot clear/remove remote functions from current context. Did you mean to use Plattar.messenger.self.purge() instead?")}switch(prop){case"setup":case"isValid":case"_remoteInterface":case"name":case"_remoteName":return target[prop];default:break}if(!target[prop]){target[prop]=new WrappedFunction(prop,target._remoteInterface)}return(...args)=>{return target[prop].exec(...args)}},set:(target,prop,value)=>{if(prop==="_remoteInterface"){target[prop]=value;return true}throw new Error("RemoteFunctionList.set cannot add a remote function from current context. Use Plattar.messenger.self instead")}})}setup(remoteInterface){if(typeof remoteInterface.send!=="function"){throw new Error("RemoteFunctionList.setup() provided invalid interface")}this._remoteInterface=remoteInterface}get name(){return this._remoteName}isValid(){return this._remoteInterface!=undefined}}module.exports=RemoteFunctionList},{"./wrapped-remote-function":33}],33:[function(require,module,exports){const Util=require("../util/util.js");const GlobalEventHandler=require("../global-event-handler.js");class WrappedRemoteFunction{constructor(funcName,remoteInterface){this._funcName=funcName;this._remoteInterface=remoteInterface;this._callInstances={};GlobalEventHandler.instance().listen("__messenger__exec_fnc_result",(src,data)=>{const instanceID=data.instance_id;if(data.function_name!==this._funcName){return}if(!this._callInstances[instanceID]){return}const promise=this._callInstances[instanceID];delete this._callInstances[instanceID];if(data.function_status==="success"){promise.accept(data.function_args)}else{promise.reject(new Error(data.function_args))}})}exec(...args){const instanceID=Util.id();if(this._callInstances[instanceID]){return new Promise((accept,reject)=>{return reject(new Error("WrappedRemoteFunction.exec() cannot execute function. System generated duplicate Instance ID. PRNG needs checking"))})}return new Promise((accept,reject)=>{this._callInstances[instanceID]={accept:accept,reject:reject};this._remoteInterface.send("__messenger__exec_fnc",{instance_id:instanceID,function_name:this._funcName,function_args:args})})}}module.exports=WrappedRemoteFunction},{"../global-event-handler.js":29,"../util/util.js":34}],34:[function(require,module,exports){class Util{static id(){return Math.abs(Math.floor(Math.random()*1e13))}static isPromise(obj){return!!obj&&(typeof obj==="object"||typeof obj==="function")&&typeof obj.then==="function"}static isError(e){return e&&e.stack&&e.message&&typeof e.stack==="string"&&typeof e.message==="string"}}module.exports=Util},{}],35:[function(require,module,exports){module.exports="1.113.6"},{}],36:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.AnalyticsData=void 0;const util_1=require("../util/util");class AnalyticsData{constructor(){this._map=new Map;this.push("source","embed");this.push("pageTitle",document.title);this.push("pageURL",location.href);this.push("referrer",document.referrer);this.push("user_id",AnalyticsData._GetUserID())}push(key,value){this._map.set(key,value)}get data(){return Object.fromEntries(this._map)}static _GetUserID(){const key="plattar_user_id";let userID=null;try{userID=localStorage.getItem(key)}catch(err){userID=util_1.Util.generateUUID();try{localStorage.setItem(key,userID)}catch(_err){}}if(!userID){userID=util_1.Util.generateUUID();try{localStorage.setItem(key,userID)}catch(_err){}}return userID}}exports.AnalyticsData=AnalyticsData},{"../util/util":40}],37:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.Analytics=void 0;const basic_http_1=__importDefault(require("../util/basic-http"));const analytics_data_1=require("./analytics-data");class Analytics{constructor(applicationID){this._pageTime=null;this.origin="production";this.event="track";this.isBeacon=false;this._applicationID=applicationID;this._data=new analytics_data_1.AnalyticsData;this._handlePageHide=()=>{if(document.visibilityState==="hidden"){this._pageTime=new Date}else if(this._pageTime){const time2=new Date;const diff=time2.getTime()-this._pageTime.getTime();const data=this.data;data.push("eventAction","View Time");data.push("viewTime",diff);data.push("eventLabel",diff);this.write();this._pageTime=null;document.removeEventListener("visibilitychange",this._handlePageHide,false)}}}query(query=null){return new Promise((accept,reject)=>{if(!query){return reject(new Error("Analytics.query() - provided query was null"))}const url=this.origin==="dev"?"http://localhost:9000/2015-03-31/functions/function/invocations":"https://oyywgrj9ki.execute-api.ap-southeast-2.amazonaws.com/main/analytics";const data={type:"read",application_id:this._applicationID,event:this.event,data:query};basic_http_1.default.exec("POST",url,data).then(result=>{accept(result&&result.results?result.results:{})}).catch(reject)})}write(){return new Promise((accept,reject)=>{const data=this._data;const url=this.origin==="dev"?"http://localhost:9000/2015-03-31/functions/function/invocations":"https://oyywgrj9ki.execute-api.ap-southeast-2.amazonaws.com/main/analytics";data.push("applicationId",this._applicationID);const sendData={type:"write",application_id:this._applicationID,origin:this.origin,event:this.event,data:data.data};if(this.isBeacon===false){basic_http_1.default.exec("POST",url,sendData).then(result=>{accept(result&&result.results?result.results:{})}).catch(reject)}else{basic_http_1.default.execBeacon(url,sendData).then(result=>{accept(result&&result.results?result.results:{})}).catch(reject)}})}startRecordEngagement(){document.addEventListener("visibilitychange",this._handlePageHide,false)}get data(){return this._data}}exports.Analytics=Analytics},{"../util/basic-http":39,"./analytics-data":36}],38:[function(require,module,exports){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;var desc=Object.getOwnPropertyDescriptor(m,k);if(!desc||("get"in desc?!m.__esModule:desc.writable||desc.configurable)){desc={enumerable:true,get:function(){return m[k]}}}Object.defineProperty(o,k2,desc)}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]});var __setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v});var __importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.Analytics=exports.version=void 0;exports.version=__importStar(require("./version"));var analytics_1=require("./analytics/analytics");Object.defineProperty(exports,"Analytics",{enumerable:true,get:function(){return analytics_1.Analytics}});const version_1=__importDefault(require("./version"));console.log("using @plattar/plattar-analytics v"+version_1.default)},{"./analytics/analytics":37,"./version":41}],39:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});class BasicHTTP{static execBeacon(path,data=null){return new Promise((accept,reject)=>{try{const body=data||{};const headers={type:"application/json"};const blob=new Blob([JSON.stringify(body)],headers);const result=navigator.sendBeacon(path,blob);if(result){return accept({})}else{return reject(new Error("BasicHTTP.execBeacon() - could not query request"))}}catch(err){return reject(err)}})}static exec(protocol,path,data=null){return new Promise((accept,reject)=>{try{const http=new XMLHttpRequest;http.open(protocol,path,true);http.setRequestHeader("Content-Type","application/json");http.setRequestHeader("Accept","application/json");http.onload=e=>{if(http.status===200){if(http.response){try{const resp=JSON.parse(http.response);return accept(resp)}catch(_err){}}return accept({})}else{return reject(e)}};http.onerror=e=>{return reject(e)};http.onprogress=_e=>{};http.send(data?JSON.stringify(data):null)}catch(e){return reject(e)}})}}exports.default=BasicHTTP},{}],40:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.Util=void 0;const _lut=[];for(let i=0;i<256;i++){_lut[i]=(i<16?"0":"")+i.toString(16)}class Util{static generateUUID(){const d0=Math.random()*4294967295|0;const d1=Math.random()*4294967295|0;const d2=Math.random()*4294967295|0;const d3=Math.random()*4294967295|0;const uuid=_lut[d0&255]+_lut[d0>>8&255]+_lut[d0>>16&255]+_lut[d0>>24&255]+"-"+_lut[d1&255]+_lut[d1>>8&255]+"-"+_lut[d1>>16&15|64]+_lut[d1>>24&255]+"-"+_lut[d2&63|128]+_lut[d2>>8&255]+"-"+_lut[d2>>16&255]+_lut[d2>>24&255]+_lut[d3&255]+_lut[d3>>8&255]+_lut[d3>>16&255]+_lut[d3>>24&255];return uuid.toLowerCase()}}exports.Util=Util},{}],41:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default="1.124.1"},{}],42:[function(require,module,exports){"use strict";const Server=require("./server/plattar-server.js");const Util=require("./util/plattar-util.js");const Project=require("./types/application.js");const Scene=require("./types/scene/scene.js");const SceneAnnotation=require("./types/scene/scene-annotation.js");const SceneAudio=require("./types/scene/scene-audio.js");const SceneButton=require("./types/scene/scene-button.js");const SceneCamera=require("./types/scene/scene-camera.js");const SceneCarousel=require("./types/scene/scene-carousel.js");const SceneImage=require("./types/scene/scene-image.js");const SceneModel=require("./types/scene/scene-model.js");const ScenePanorama=require("./types/scene/scene-panorama.js");const ScenePoller=require("./types/scene/scene-poller.js");const SceneProduct=require("./types/scene/scene-product.js");const SceneShadow=require("./types/scene/scene-shadow.js");const SceneVideo=require("./types/scene/scene-video.js");const SceneVolumetric=require("./types/scene/scene-volumetric.js");const SceneYoutube=require("./types/scene/scene-youtube.js");const SceneScript=require("./types/scene/scene-script.js");const Page=require("./types/page/page.js");const CardButton=require("./types/page/card-button.js");const CardHTML=require("./types/page/card-html.js");const CardIFrame=require("./types/page/card-iframe.js");const CardImage=require("./types/page/card-image.js");const CardMap=require("./types/page/card-map.js");const CardParagraph=require("./types/page/card-paragraph.js");const CardRow=require("./types/page/card-row.js");const CardSlider=require("./types/page/card-slider.js");const CardTitle=require("./types/page/card-title.js");const CardVideo=require("./types/page/card-video.js");const CardYoutube=require("./types/page/card-youtube.js");const Product=require("./types/product/product.js");const ProductVariation=require("./types/product/product-variation.js");const ProductAnnotation=require("./types/product/product-annotation.js");const FileAudio=require("./types/file/file-audio.js");const FileVideo=require("./types/file/file-video.js");const FileModel=require("./types/file/file-model.js");const FileImage=require("./types/file/file-image.js");const FileScript=require("./types/file/file-script.js");const ScriptEvent=require("./types/misc/script-event.js");const Tag=require("./types/misc/tag.js");const ApplicationBuild=require("./types/misc/application-build.js");const AsyncJob=require("./types/misc/async-job.js");const AssetLibrary=require("./types/misc/asset-library.js");const TriggerImage=require("./types/trigger/trigger-image.js");const Brief=require("./types/content-pipeline/brief.js");const CommentBrief=require("./types/content-pipeline/comment-brief.js");const CommentQuote=require("./types/content-pipeline/comment-quote.js");const CommentSolution=require("./types/content-pipeline/comment-solution.js");const PipelineUser=require("./types/content-pipeline/pipeline-user.js");const Quote=require("./types/content-pipeline/quote.js");const Rating=require("./types/content-pipeline/rating.js");const Solution=require("./types/content-pipeline/solution.js");const Folder=require("./types/content-pipeline/folder.js");const SceneObject=require("./types/scene/scene-base.js");const CardObject=require("./types/page/card-base.js");const ProductObject=require("./types/product/product-base.js");const FileObject=require("./types/file/file-base.js");const Version=require("./version");Server.create();console.log("using @plattar/plattar-api v"+Version);module.exports={Server:Server,Util:Util,Project:Project,Scene:Scene,SceneAnnotation:SceneAnnotation,SceneAudio:SceneAudio,SceneButton:SceneButton,SceneCamera:SceneCamera,SceneCarousel:SceneCarousel,SceneImage:SceneImage,SceneModel:SceneModel,ScenePanorama:ScenePanorama,ScenePoller:ScenePoller,SceneProduct:SceneProduct,SceneShadow:SceneShadow,SceneVideo:SceneVideo,SceneVolumetric:SceneVolumetric,SceneYoutube:SceneYoutube,SceneScript:SceneScript,Page:Page,CardButton:CardButton,CardHTML:CardHTML,CardIFrame:CardIFrame,CardImage:CardImage,CardMap:CardMap,CardParagraph:CardParagraph,CardRow:CardRow,CardSlider:CardSlider,CardTitle:CardTitle,CardVideo:CardVideo,CardYoutube:CardYoutube,Product:Product,ProductVariation:ProductVariation,ProductAnnotation:ProductAnnotation,FileAudio:FileAudio,FileVideo:FileVideo,FileModel:FileModel,FileImage:FileImage,FileScript:FileScript,FileObject:FileObject,ScriptEvent:ScriptEvent,Tag:Tag,ApplicationBuild:ApplicationBuild,AsyncJob:AsyncJob,AssetLibrary:AssetLibrary,TriggerImage:TriggerImage,Brief:Brief,CommentBrief:CommentBrief,CommentQuote:CommentQuote,CommentSolution:CommentSolution,PipelineUser:PipelineUser,Quote:Quote,Rating:Rating,Solution:Solution,Folder:Folder,SceneObject:SceneObject,CardObject:CardObject,ProductObject:ProductObject,version:Version}},{"./server/plattar-server.js":44,"./types/application.js":45,"./types/content-pipeline/brief.js":46,"./types/content-pipeline/comment-brief.js":47,"./types/content-pipeline/comment-quote.js":48,"./types/content-pipeline/comment-solution.js":49,"./types/content-pipeline/folder.js":50,"./types/content-pipeline/pipeline-user.js":51,"./types/content-pipeline/quote.js":52,"./types/content-pipeline/rating.js":53,"./types/content-pipeline/solution.js":54,"./types/file/file-audio.js":55,"./types/file/file-base.js":56,"./types/file/file-image.js":57,"./types/file/file-model.js":58,"./types/file/file-script.js":59,"./types/file/file-video.js":60,"./types/misc/application-build.js":64,"./types/misc/asset-library.js":65,"./types/misc/async-job.js":66,"./types/misc/script-event.js":67,"./types/misc/tag.js":68,"./types/page/card-base.js":69,"./types/page/card-button.js":70,"./types/page/card-html.js":71,"./types/page/card-iframe.js":72,"./types/page/card-image.js":73,"./types/page/card-map.js":74,"./types/page/card-paragraph.js":75,"./types/page/card-row.js":76,"./types/page/card-slider.js":77,"./types/page/card-title.js":78,"./types/page/card-video.js":79,"./types/page/card-youtube.js":80,"./types/page/page.js":81,"./types/product/product-annotation.js":82,"./types/product/product-base.js":83,"./types/product/product-variation.js":84,"./types/product/product.js":85,"./types/scene/scene-annotation.js":86,"./types/scene/scene-audio.js":87,"./types/scene/scene-base.js":88,"./types/scene/scene-button.js":89,"./types/scene/scene-camera.js":90,"./types/scene/scene-carousel.js":91,"./types/scene/scene-image.js":92,"./types/scene/scene-model.js":93,"./types/scene/scene-panorama.js":94,"./types/scene/scene-poller.js":95,"./types/scene/scene-product.js":96,"./types/scene/scene-script.js":97,"./types/scene/scene-shadow.js":98,"./types/scene/scene-video.js":99,"./types/scene/scene-volumetric.js":100,"./types/scene/scene-youtube.js":101,"./types/scene/scene.js":102,"./types/trigger/trigger-image.js":103,"./util/plattar-util.js":104,"./version":105}],43:[function(require,module,exports){const fetch=require("node-fetch");class PlattarQuery{constructor(target,server){if(!target){throw new Error("PlattarQuery cannot be created as target object cannot be null")}if(!server){throw new Error("PlattarQuery cannot be created as server object cannot be null")}this._target=target;this._server=server;this._params=[];this._getIncludeQuery=[]}get target(){return this._target}get server(){return this._server}getCookie(cname){try{let name=cname+"=";let decodedCookie=decodeURIComponent(document.cookie);let ca=decodedCookie.split(";");for(let i=0;i<ca.length;i++){let c=ca[i];while(c.charAt(0)==" "){c=c.substring(1)}if(c.indexOf(name)==0){return c.substring(name.length,c.length)}}}catch(error){}return""}_get(opt){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;if(!target.id){reject(new Error("PlattarQuery."+target.type()+".get() - object id is missing"));return}const options=opt||{cache:true};if(options.cache===true){const cached=PlattarQuery._GetGlobalCachedObject(target);if(cached){resolve(cached);return}}const origin=server.originLocation.api_read;const auth=server.authToken;const headers={cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"GET",headers:headers};const includeQuery=this._IncludeQuery;const params=this._ParamFor("get");let endpoint=origin+target.type()+"/"+target.id;if(includeQuery){endpoint=endpoint+"?include="+includeQuery}if(params){let appender=includeQuery?"&":"?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".get("+target.id+") - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".get("+target.id+") - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,options);resolve(target)}})})}_update(){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;if(!target.id){reject(new Error("PlattarQuery."+target.type()+".update() - object id is missing"));return}const origin=server.originLocation.api_write;const auth=server.authToken;const headers={Accept:"application/json","Content-Type":"application/json",cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"PATCH",headers:headers,body:JSON.stringify({data:{id:target.id,attributes:target.attributes},meta:target.meta||{}})};const params=this._ParamFor("update");let endpoint=origin+target.type()+"/"+target.id;if(params){let appender="?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".update("+target.id+") - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".update("+target.id+") - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{if(json.data){const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,{cache:true})}resolve(target)}})})}_create(){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;const origin=server.originLocation.api_write;const auth=server.authToken;const headers={Accept:"application/json","Content-Type":"application/json",cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"POST",headers:headers,body:JSON.stringify({data:{attributes:target.attributes},meta:target.meta||{}})};const params=this._ParamFor("create");let endpoint=origin+target.type();if(params){let appender="?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".create() - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".create() - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{if(json.data){target._id=json.data.id;const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,{cache:true})}resolve(target)}})})}_delete(){return new Promise((resolve,reject)=>{const target=this.target;const server=this.server;if(!target.id){reject(new Error("PlattarQuery."+target.type()+".delete() - object id is missing"));return}const origin=server.originLocation.api_write;const auth=server.authToken;const headers={Accept:"application/json","Content-Type":"application/json",cookie:"laravel_session="+this.getCookie("laravel_session")};Object.assign(headers,auth);const reqopts={method:"DELETE",headers:headers,body:JSON.stringify({data:{id:target.id,attributes:target.attributes},meta:target.meta||{}})};const params=this._ParamFor("delete");let endpoint=origin+target.type()+"/"+target.id;if(params){let appender="?";params.forEach(param=>{endpoint=endpoint+appender+param.key+"="+param.value;appender="&"})}fetch(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("PlattarQuery."+target.type()+".delete() - critical error occured, cannot proceed")}}return new Error("PlattarQuery."+target.type()+".delete() - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{if(json.data){target._id=json.data.id;const PlattarUtil=require("../util/plattar-util.js");PlattarUtil.reconstruct(target,json,{cache:true})}resolve(target)}})})}_addParameter(key,value,type){type=type||"all";this._params.push({key:key,value:value,type:type.toLowerCase()})}_include(args){if(!args||args.length<=0){return this}const PlattarUtil=require("../util/plattar-util.js");args.forEach(obj=>{if(Array.isArray(obj)){obj.forEach(strObject=>{if(typeof strObject==="string"||strObject instanceof String){this._getIncludeQuery.push(strObject)}else{throw new Error("PlattarQuery."+this.target.type()+".include(...args) - argument of Array must only include Strings")}})}else if(PlattarUtil.isPlattarObject(obj)){const type=obj.type();if(Array.isArray(type)){this._include(type)}else{this._getIncludeQuery.push(type)}}else{throw new Error("PlattarQuery."+this.target.type()+".include(...args) - argument must be of type PlattarObject or Array but was type="+typeof obj+" value="+obj)}});return this}_ParamFor(type){type=type||"all";const list=this._params.filter(objcheck=>{return objcheck.type===type||objcheck.type==="all"});if(list.length>0){return list}return undefined}get _IncludeQuery(){if(this._getIncludeQuery.length<=0){return undefined}return`${this._getIncludeQuery.map(item=>`${item}`).join(",")}`}}PlattarQuery._GlobalObjectCache={};PlattarQuery._InvalidateGlobalCache=()=>{PlattarQuery._GlobalObjectCache={}};PlattarQuery._HasGlobalCachedObject=obj=>{return PlattarQuery._GlobalObjectCache.hasOwnProperty(obj.id)};PlattarQuery._GetGlobalCachedObject=obj=>{return PlattarQuery._HasGlobalCachedObject(obj)?PlattarQuery._GlobalObjectCache[obj.id]:undefined};PlattarQuery._SetGlobalCachedObject=obj=>{};PlattarQuery._DeleteGlobalCachedObject=obj=>{if(PlattarQuery._HasGlobalCachedObject(obj)){delete PlattarQuery._GlobalObjectCache[obj.id]}};module.exports=PlattarQuery},{"../util/plattar-util.js":104,"node-fetch":130}],44:[function(require,module,exports){(function(process){(function(){const fetch=require("node-fetch");class PlattarServer{constructor(){this._authToken={};this._serverLocation=this.prod}get prod(){return PlattarServer.match("prod")}get isProd(){return this._serverLocation.type==="production"}get staging(){return PlattarServer.match("staging")}get isStaging(){return this._serverLocation.type==="staging"}get dev(){return PlattarServer.match("dev")}get isDev(){return this._serverLocation.type==="dev"}get authToken(){return this._authToken}get originLocation(){return this._serverLocation}auth(token,opt){const copt=opt||{validate:false};return new Promise((resolve,reject)=>{const server=this.originLocation.api_write;if(!server){reject(new Error("Plattar.auth(token) - cannot authenticate as server not set via Plattar.origin(server)"));return}if(!token){reject(new Error("Plattar.auth(token) - token variable is undefined"));return}if(!copt.validate){this._authToken={"plattar-auth-token":token};resolve(this);return}const endpoint=server+"plattaruser/xauth/validate";const options={method:"GET",headers:{"plattar-auth-token":token}};fetch(endpoint,options).then(res=>{if(res.ok){this._authToken={"plattar-auth-token":token};resolve(this)}else{reject(new Error("Plattar.auth(token) - failed to validate authentication token at "+endpoint))}})})}origin(server,opt){const copt=opt||{validate:false};return new Promise((resolve,reject)=>{if(!server){reject(new Error("Plattar.origin(server) - server variable is undefined"));return}if(!copt.validate){this._serverLocation=server;resolve(this);return}const endpoint=server.api_read+"ping";const options={method:"GET"};fetch(endpoint,options).then(res=>{if(res.ok){this._serverLocation=server;resolve(this)}else{reject(new Error("Plattar.origin(server) - failed to ping server at "+endpoint))}})})}}PlattarServer.match=serverName=>{switch(serverName.toLowerCase()){case"staging.plattar.space":case"cdn-staging.plattar.space":case"staging":return{base:"https://staging.plattar.space/",api_read:"https://staging.plattar.space/api/v2/",api_write:"https://cms.plattar.space/api/v2/",cdn:"https://cdn-staging.plattar.space/",cdn_image:"https://images.plattar.space/",analytics:"https://c.plattar.space/api/v2/analytics",type:"staging"};case"app.plattar.com":case"cdn.plattar.com":case"prod":case"production":return{base:"https://app.plattar.com/",api_read:"https://app.plattar.com/api/v2/",api_write:"https://cms.plattar.com/api/v2/",cdn:"https://cdn.plattar.com/",cdn_image:"https://images.plattar.com/",analytics:"https://c.plattar.space/api/v2/analytics",type:"production"};case"dev":case"developer":case"development":case"local":case"localhost":default:return{base:"https://localhost/",api_read:"https://localhost/api/v2/",api_write:"https://localhost/api/v2/",cdn:"https://cdn-dev.plattar.space/",cdn_image:"https://images-dev.plattar.space/'",analytics:"https://localhost:3000/api/v2/analytics/",type:"dev"}}};PlattarServer.create=(origin,auth)=>{const newServer=new PlattarServer;if(origin){newServer.origin(origin)}if(auth){newServer.auth(auth)}PlattarServer._default=newServer;return newServer};PlattarServer.disableTLS=()=>{process.env.NODE_TLS_REJECT_UNAUTHORIZED="0"};PlattarServer.default=()=>{return PlattarServer._default};PlattarServer.location=()=>{return PlattarServer.default().originLocation};module.exports=PlattarServer}).call(this)}).call(this,require("_process"))},{_process:132,"node-fetch":130}],45:[function(require,module,exports){const PlattarBase=require("./interfaces/plattar-base.js");class Application extends PlattarBase{static type(){return"application"}}module.exports=Application},{"./interfaces/plattar-base.js":61}],46:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Brief extends PlattarBase{static type(){return"brief"}}module.exports=Brief},{"../interfaces/plattar-base":61}],47:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class CommentBrief extends PlattarBase{static type(){return"commentbrief"}}module.exports=CommentBrief},{"../interfaces/plattar-base":61}],48:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class CommentQuote extends PlattarBase{static type(){return"commentquote"}}module.exports=CommentQuote},{"../interfaces/plattar-base":61}],49:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class CommentSolution extends PlattarBase{static type(){return"commentsolution"}}module.exports=CommentSolution},{"../interfaces/plattar-base":61}],50:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Folder extends PlattarBase{static type(){return"folder"}}module.exports=Folder},{"../interfaces/plattar-base":61}],51:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class PipelineUser extends PlattarBase{static type(){return"pipelineuser"}}module.exports=PipelineUser},{"../interfaces/plattar-base":61}],52:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Quote extends PlattarBase{static type(){return"quote"}}module.exports=Quote},{"../interfaces/plattar-base":61}],53:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Rating extends PlattarBase{static type(){return"rating"}}module.exports=Rating},{"../interfaces/plattar-base":61}],54:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base");class Solution extends PlattarBase{static type(){return"solution"}}module.exports=Solution},{"../interfaces/plattar-base":61}],55:[function(require,module,exports){const FileBase=require("./file-base.js");class FileAudio extends FileBase{static type(){return"fileaudio"}}module.exports=FileAudio},{"./file-base.js":56}],56:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class FileBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===FileBase){throw new Error("FileBase is abstract and cannot be created")}}static type(){const FileAudio=require("./file-audio.js");const FileVideo=require("./file-video.js");const FileModel=require("./file-model.js");const FileImage=require("./file-image.js");return[FileAudio,FileVideo,FileModel,FileImage]}get sourcePath(){if(!this.attributes.path){return null}return this.path+this.attributes.original_filename}get backupPath(){if(!this.attributes.path){return null}return this.path+this.attributes.original_upload}get path(){if(!this.attributes.path){return null}return this._query.server.originLocation.cdn+this.attributes.path}}module.exports=FileBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./file-audio.js":55,"./file-image.js":57,"./file-model.js":58,"./file-video.js":60}],57:[function(require,module,exports){const FileBase=require("./file-base.js");class FileImage extends FileBase{static type(){return"fileimage"}}module.exports=FileImage},{"./file-base.js":56}],58:[function(require,module,exports){const FileBase=require("./file-base.js");class FileModel extends FileBase{static type(){return"filemodel"}}module.exports=FileModel},{"./file-base.js":56}],59:[function(require,module,exports){const FileBase=require("./file-base.js");class FileScript extends FileBase{static type(){return"filescript"}}module.exports=FileScript},{"./file-base.js":56}],60:[function(require,module,exports){const FileBase=require("./file-base.js");class FileVideo extends FileBase{static type(){return"filevideo"}}module.exports=FileVideo},{"./file-base.js":56}],61:[function(require,module,exports){const PlattarObject=require("./plattar-object.js");const Server=require("../../server/plattar-server.js");class PlattarBase extends PlattarObject{constructor(id,server){super(id,server||Server.default());if(this.constructor===PlattarBase){throw new Error("PlattarBase is abstract and cannot be created")}}}module.exports=PlattarBase},{"../../server/plattar-server.js":44,"./plattar-object.js":63}],62:[function(require,module,exports){class PlattarObjectRelations{constructor(parent){this._parent=parent;this._relatedObjects={}}get parent(){return this._parent}_put(obj){if(!obj){return this}const PlattarUtil=require("../../util/plattar-util.js");if(!PlattarUtil.isPlattarObject(obj)){throw new Error("PlattarObjectRelations._put(PlattarObject) - argument must be type of PlattarObject")}if(!this._relatedObjects.hasOwnProperty(obj.type())){this._relatedObjects[obj.type()]=[]}this._relatedObjects[obj.type()].push(obj)}filter(obj,id){if(!obj){return[]}const PlattarUtil=require("../../util/plattar-util.js");if(!PlattarUtil.isPlattarObject(obj)){throw new Error("PlattarObjectRelations.filter(PlattarObject) - argument must be type of PlattarObject")}const type=obj.type();if(Array.isArray(type)){var compiledList=[];type.forEach(inObject=>{const retArray=this.filter(inObject,id);if(retArray.length>0){compiledList=compiledList.concat(retArray)}});return compiledList}if(!this._relatedObjects.hasOwnProperty(type)){return[]}const list=this._relatedObjects[type];if(!id){return list}return list.filter(objcheck=>{return objcheck.id===id})}find(obj,id=null){if(id===undefined){return undefined}const list=this.filter(obj,id);if(list.length<=0){return undefined}return list[0]}}module.exports=PlattarObjectRelations},{"../../util/plattar-util.js":104}],63:[function(require,module,exports){const PlattarQuery=require("../../server/plattar-query.js");const PlattarObjectRelations=require("./plattar-object-relations.js");class PlattarObject{constructor(id,server){if(this.constructor===PlattarObject){throw new Error("PlattarObject is abstract and cannot be created")}this._id=id;this._attributes={};this._meta={};this._query=new PlattarQuery(this,server);this._relationships=new PlattarObjectRelations(this)}invalidate(){return PlattarQuery._DeleteGlobalCachedObject(this)}_cache(){return PlattarQuery._SetGlobalCachedObject(this)}get id(){return this._id}get attributes(){return this._attributes}get meta(){return this._meta}set overrideAttributes(attributes){this._attributes=Object.assign({},attributes)}get relationships(){return this._relationships}get(opt){return this._query._get(opt)}update(){return this._query._update()}create(){return this._query._create()}delete(){return this._query._delete()}static type(){throw new Error("PlattarObject.type() - not implemented")}type(){return this.constructor.type()}static include(...args){if(!args||args.length<=0){return[]}const includes=[this.type()];args.forEach(obj=>{if(Array.isArray(obj)){obj.forEach(strObject=>{if(typeof strObject==="string"||strObject instanceof String){includes.push(`${this.type()}.${strObject}`)}else{throw new Error("PlattarObject."+this.type()+".include(...args) - argument of Array must only include Strings")}})}else if(obj.prototype instanceof PlattarObject){includes.push(`${this.type()}.${obj.type()}`)}else{throw new Error("PlattarObject."+this.type()+".include(...args) - argument must be of type PlattarObject or Array but was type="+typeof obj+" value="+obj)}});return includes}include(...args){this._query._include(args);return this}addParameter(key,value,type){this._query._addParameter(key,value,type);return this}}module.exports=PlattarObject},{"../../server/plattar-query.js":43,"./plattar-object-relations.js":62}],64:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class ApplicationBuild extends PlattarBase{static type(){return"applicationbuild"}}module.exports=ApplicationBuild},{"../interfaces/plattar-base.js":61}],65:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class AssetLibrary extends PlattarBase{static type(){return"assetlibrary"}}module.exports=AssetLibrary},{"../interfaces/plattar-base.js":61}],66:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class AsyncJob extends PlattarBase{static type(){return"asyncjob"}set accessKey(code){this.addParameter("access_key",code,"update")}}module.exports=AsyncJob},{"../interfaces/plattar-base.js":61}],67:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class ScriptEvent extends PlattarBase{static type(){return"scriptevent"}}module.exports=ScriptEvent},{"../interfaces/plattar-base.js":61}],68:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Tag extends PlattarBase{static type(){return"tag"}}module.exports=Tag},{"../interfaces/plattar-base.js":61}],69:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class CardBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===CardBase){throw new Error("CardBase is abstract and cannot be created")}}static type(){const CardButton=require("./card-button.js");const CardHTML=require("./card-html.js");const CardIFrame=require("./card-iframe.js");const CardImage=require("./card-image.js");const CardMap=require("./card-map.js");const CardParagraph=require("./card-paragraph.js");const CardRow=require("./card-row.js");const CardSlider=require("./card-slider.js");const CardTitle=require("./card-title.js");const CardVideo=require("./card-video.js");const CardYoutube=require("./card-youtube.js");return[CardButton,CardHTML,CardIFrame,CardImage,CardMap,CardParagraph,CardRow,CardSlider,CardTitle,CardVideo,CardYoutube]}}module.exports=CardBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./card-button.js":70,"./card-html.js":71,"./card-iframe.js":72,"./card-image.js":73,"./card-map.js":74,"./card-paragraph.js":75,"./card-row.js":76,"./card-slider.js":77,"./card-title.js":78,"./card-video.js":79,"./card-youtube.js":80}],70:[function(require,module,exports){const CardBase=require("./card-base.js");class CardButton extends CardBase{static type(){return"cardbutton"}}module.exports=CardButton},{"./card-base.js":69}],71:[function(require,module,exports){const CardBase=require("./card-base.js");class CardHTML extends CardBase{static type(){return"cardhtml"}}module.exports=CardHTML},{"./card-base.js":69}],72:[function(require,module,exports){const CardBase=require("./card-base.js");class CardIFrame extends CardBase{static type(){return"cardiframe"}}module.exports=CardIFrame},{"./card-base.js":69}],73:[function(require,module,exports){const CardBase=require("./card-base.js");class CardImage extends CardBase{static type(){return"cardimage"}}module.exports=CardImage},{"./card-base.js":69}],74:[function(require,module,exports){const CardBase=require("./card-base.js");class CardMap extends CardBase{static type(){return"cardmap"}}module.exports=CardMap},{"./card-base.js":69}],75:[function(require,module,exports){const CardBase=require("./card-base.js");class CardParagraph extends CardBase{static type(){return"cardparagraph"}}module.exports=CardParagraph},{"./card-base.js":69}],76:[function(require,module,exports){const CardBase=require("./card-base.js");class CardRow extends CardBase{static type(){return"cardrow"}}module.exports=CardRow},{"./card-base.js":69}],77:[function(require,module,exports){const CardBase=require("./card-base.js");class CardSlider extends CardBase{static type(){return"cardslider"}}module.exports=CardSlider},{"./card-base.js":69}],78:[function(require,module,exports){const CardBase=require("./card-base.js");class CardTitle extends CardBase{static type(){return"cardtitle"}}module.exports=CardTitle},{"./card-base.js":69}],79:[function(require,module,exports){const CardBase=require("./card-base.js");class CardVideo extends CardBase{static type(){return"cardvideo"}}module.exports=CardVideo},{"./card-base.js":69}],80:[function(require,module,exports){const CardBase=require("./card-base.js");class CardYoutube extends CardBase{static type(){return"cardyoutube"}}module.exports=CardYoutube},{"./card-base.js":69}],81:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Page extends PlattarBase{static type(){return"page"}}module.exports=Page},{"../interfaces/plattar-base.js":61}],82:[function(require,module,exports){const ProductBase=require("./product-base.js");class ProductAnnotation extends ProductBase{static type(){return"productannotation"}}module.exports=ProductAnnotation},{"./product-base.js":83}],83:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class ProductBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===ProductBase){throw new Error("ProductBase is abstract and cannot be created")}}static type(){const ProductVariation=require("./product-variation.js");const ProductAnnotation=require("./product-annotation.js");return[ProductAnnotation,ProductVariation]}}module.exports=ProductBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./product-annotation.js":82,"./product-variation.js":84}],84:[function(require,module,exports){const ProductBase=require("./product-base.js");class ProductVariation extends ProductBase{static type(){return"productvariation"}}module.exports=ProductVariation},{"./product-base.js":83}],85:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Product extends PlattarBase{static type(){return"product"}}module.exports=Product},{"../interfaces/plattar-base.js":61}],86:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneAnnotation extends SceneBase{static type(){return"sceneannotation"}}module.exports=SceneAnnotation},{"./scene-base.js":88}],87:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneAudio extends SceneBase{static type(){return"sceneaudio"}}module.exports=SceneAudio},{"./scene-base.js":88}],88:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");const Server=require("../../server/plattar-server.js");class SceneBase extends PlattarBase{constructor(id,server){super(id,server||Server.default());if(this.constructor===SceneBase){throw new Error("SceneBase is abstract and cannot be created")}}static type(){const SceneAnnotation=require("./scene-annotation.js");const SceneAudio=require("./scene-audio.js");const SceneButton=require("./scene-button.js");const SceneCamera=require("./scene-camera.js");const SceneCarousel=require("./scene-carousel.js");const SceneImage=require("./scene-image.js");const SceneModel=require("./scene-model.js");const ScenePanorama=require("./scene-panorama.js");const ScenePoller=require("./scene-poller.js");const SceneProduct=require("./scene-product.js");const SceneShadow=require("./scene-shadow.js");const SceneVideo=require("./scene-video.js");const SceneVolumetric=require("./scene-volumetric.js");const SceneYoutube=require("./scene-youtube.js");return[SceneAnnotation,SceneAudio,SceneButton,SceneCamera,SceneCarousel,SceneImage,SceneModel,ScenePanorama,ScenePoller,SceneProduct,SceneShadow,SceneVideo,SceneVolumetric,SceneYoutube]}}module.exports=SceneBase},{"../../server/plattar-server.js":44,"../interfaces/plattar-base.js":61,"./scene-annotation.js":86,"./scene-audio.js":87,"./scene-button.js":89,"./scene-camera.js":90,"./scene-carousel.js":91,"./scene-image.js":92,"./scene-model.js":93,"./scene-panorama.js":94,"./scene-poller.js":95,"./scene-product.js":96,"./scene-shadow.js":98,"./scene-video.js":99,"./scene-volumetric.js":100,"./scene-youtube.js":101}],89:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneButton extends SceneBase{static type(){return"scenebutton"}}module.exports=SceneButton},{"./scene-base.js":88}],90:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneCamera extends SceneBase{static type(){return"scenecamera"}}module.exports=SceneCamera},{"./scene-base.js":88}],91:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneCarousel extends SceneBase{static type(){return"scenecarousel"}}module.exports=SceneCarousel},{"./scene-base.js":88}],92:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneImage extends SceneBase{static type(){return"sceneimage"}}module.exports=SceneImage},{"./scene-base.js":88}],93:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneModel extends SceneBase{static type(){return"scenemodel"}}module.exports=SceneModel},{"./scene-base.js":88}],94:[function(require,module,exports){const SceneBase=require("./scene-base.js");class ScenePanorama extends SceneBase{static type(){return"scenepanorama"}}module.exports=ScenePanorama},{"./scene-base.js":88}],95:[function(require,module,exports){const SceneBase=require("./scene-base.js");class ScenePoller extends SceneBase{static type(){return"scenepoller"}}module.exports=ScenePoller},{"./scene-base.js":88}],96:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneProduct extends SceneBase{static type(){return"sceneproduct"}}module.exports=SceneProduct},{"./scene-base.js":88}],97:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneScript extends SceneBase{static type(){return"scenescript"}}module.exports=SceneScript},{"./scene-base.js":88}],98:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneShadow extends SceneBase{static type(){return"sceneshadow"}}module.exports=SceneShadow},{"./scene-base.js":88}],99:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneVideo extends SceneBase{static type(){return"scenevideo"}}module.exports=SceneVideo},{"./scene-base.js":88}],100:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneVolumetric extends SceneBase{static type(){return"scenevolumetric"}}module.exports=SceneVolumetric},{"./scene-base.js":88}],101:[function(require,module,exports){const SceneBase=require("./scene-base.js");class SceneYoutube extends SceneBase{static type(){return"sceneyoutube"}}module.exports=SceneYoutube},{"./scene-base.js":88}],102:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class Scene extends PlattarBase{static type(){return"scene"}}module.exports=Scene},{"../interfaces/plattar-base.js":61}],103:[function(require,module,exports){const PlattarBase=require("../interfaces/plattar-base.js");class TriggerImage extends PlattarBase{static type(){return"triggerimage"}}module.exports=TriggerImage},{"../interfaces/plattar-base.js":61}],104:[function(require,module,exports){const Application=require("../types/application.js");const Scene=require("../types/scene/scene.js");const SceneAnnotation=require("../types/scene/scene-annotation.js");const SceneAudio=require("../types/scene/scene-audio.js");const SceneButton=require("../types/scene/scene-button.js");const SceneCamera=require("../types/scene/scene-camera.js");const SceneCarousel=require("../types/scene/scene-carousel.js");const SceneImage=require("../types/scene/scene-image.js");const SceneModel=require("../types/scene/scene-model.js");const ScenePanorama=require("../types/scene/scene-panorama.js");const ScenePoller=require("../types/scene/scene-poller.js");const SceneProduct=require("../types/scene/scene-product.js");const SceneShadow=require("../types/scene/scene-shadow.js");const SceneVideo=require("../types/scene/scene-video.js");const SceneVolumetric=require("../types/scene/scene-volumetric.js");const SceneYoutube=require("../types/scene/scene-youtube.js");const SceneScript=require("../types/scene/scene-script.js");const Page=require("../types/page/page.js");const CardButton=require("../types/page/card-button.js");const CardHTML=require("../types/page/card-html.js");const CardIFrame=require("../types/page/card-iframe.js");const CardImage=require("../types/page/card-image.js");const CardMap=require("../types/page/card-map.js");const CardParagraph=require("../types/page/card-paragraph.js");const CardRow=require("../types/page/card-row.js");const CardSlider=require("../types/page/card-slider.js");const CardTitle=require("../types/page/card-title.js");const CardVideo=require("../types/page/card-video.js");const CardYoutube=require("../types/page/card-youtube.js");const Product=require("../types/product/product.js");const ProductVariation=require("../types/product/product-variation.js");const ProductAnnotation=require("../types/product/product-annotation.js");const FileAudio=require("../types/file/file-audio.js");const FileVideo=require("../types/file/file-video.js");const FileModel=require("../types/file/file-model.js");const FileImage=require("../types/file/file-image.js");const FileScript=require("../types/file/file-script.js");const TriggerImage=require("../types/trigger/trigger-image.js");const Brief=require("../types/content-pipeline/brief.js");const CommentBrief=require("../types/content-pipeline/comment-brief.js");const CommentQuote=require("../types/content-pipeline/comment-quote.js");const CommentSolution=require("../types/content-pipeline/comment-solution.js");const PipelineUser=require("../types/content-pipeline/pipeline-user.js");const Quote=require("../types/content-pipeline/quote.js");const Rating=require("../types/content-pipeline/rating.js");const Solution=require("../types/content-pipeline/solution.js");const Folder=require("../types/content-pipeline/folder.js");const ScriptEvent=require("../types/misc/script-event.js");const Tag=require("../types/misc/tag.js");const ApplicationBuild=require("../types/misc/application-build.js");const AsyncJob=require("../types/misc/async-job.js");const AssetLibrary=require("../types/misc/asset-library");class PlattarUtil{}PlattarUtil.isPlattarObject=obj=>{const PlattarObject=require("../types/interfaces/plattar-object.js");if(obj&&obj.prototype&&obj.prototype instanceof PlattarObject){return true}if(obj&&obj instanceof PlattarObject){return true}return false};PlattarUtil.reconstruct=(parent,json,options)=>{parent._attributes=json.data.attributes;if(options.cache===true){parent._cache()}const server=parent._query.server;if(json.data.relationships){for(const[key,value]of Object.entries(json.data.relationships)){const data=value.data;if(Array.isArray(data)){data.forEach(item=>{const construct=PlattarUtil.create(key,item.id,server);construct._attributes=item.attributes||{};parent.relationships._put(construct)})}else{const construct=PlattarUtil.create(key,data.id,server);construct._attributes=data.attributes||{};parent.relationships._put(construct)}}}if(json.included){json.included.forEach(item=>{const existing=parent.relationships.find(PlattarUtil.match(item.type),item.id);if(existing){PlattarUtil.reconstruct(existing,{data:item,included:json.included},options)}})}};PlattarUtil.create=(type,id,server)=>{const _DynamicClass=PlattarUtil.match(type);return new _DynamicClass(id,server)};PlattarUtil.match=type=>{switch(type){case Application.type():return Application;case Scene.type():return Scene;case SceneAnnotation.type():return SceneAnnotation;case SceneAudio.type():return SceneAudio;case SceneButton.type():return SceneButton;case SceneCamera.type():return SceneCamera;case SceneCarousel.type():return SceneCarousel;case SceneImage.type():return SceneImage;case SceneModel.type():return SceneModel;case ScenePanorama.type():return ScenePanorama;case ScenePoller.type():return ScenePoller;case SceneProduct.type():return SceneProduct;case SceneShadow.type():return SceneShadow;case SceneVideo.type():return SceneVideo;case SceneVolumetric.type():return SceneVolumetric;case SceneYoutube.type():return SceneYoutube;case SceneScript.type():return SceneScript;case Page.type():return Page;case CardButton.type():return CardButton;case CardHTML.type():return CardHTML;case CardIFrame.type():return CardIFrame;case Product.type():return Product;case ProductVariation.type():return ProductVariation;case ProductAnnotation.type():return ProductAnnotation;case FileAudio.type():return FileAudio;case FileVideo.type():return FileVideo;case FileModel.type():return FileModel;case FileImage.type():return FileImage;case FileScript.type():return FileScript;case CardMap.type():return CardMap;case CardParagraph.type():return CardParagraph;case CardRow.type():return CardRow;case CardSlider.type():return CardSlider;case CardTitle.type():return CardTitle;case CardVideo.type():return CardVideo;case CardYoutube.type():return CardYoutube;case CardImage.type():return CardImage;case ScriptEvent.type():return ScriptEvent;case Tag.type():return Tag;case ApplicationBuild.type():return ApplicationBuild;case AsyncJob.type():return AsyncJob;case AssetLibrary.type():return AssetLibrary;case TriggerImage.type():return TriggerImage;case Brief.type():return Brief;case CommentBrief.type():return CommentBrief;case CommentQuote.type():return CommentQuote;case CommentSolution.type():return CommentSolution;case PipelineUser.type():return PipelineUser;case Quote.type():return Quote;case Rating.type():return Rating;case Solution.type():return Solution;case Folder.type():return Folder;default:throw new Error('PlattarUtil.match(type) - provided type of "'+type+'" does not exist and cannot be created')}};module.exports=PlattarUtil},{"../types/application.js":45,"../types/content-pipeline/brief.js":46,"../types/content-pipeline/comment-brief.js":47,"../types/content-pipeline/comment-quote.js":48,"../types/content-pipeline/comment-solution.js":49,"../types/content-pipeline/folder.js":50,"../types/content-pipeline/pipeline-user.js":51,"../types/content-pipeline/quote.js":52,"../types/content-pipeline/rating.js":53,"../types/content-pipeline/solution.js":54,"../types/file/file-audio.js":55,"../types/file/file-image.js":57,"../types/file/file-model.js":58,"../types/file/file-script.js":59,"../types/file/file-video.js":60,"../types/interfaces/plattar-object.js":63,"../types/misc/application-build.js":64,"../types/misc/asset-library":65,"../types/misc/async-job.js":66,"../types/misc/script-event.js":67,"../types/misc/tag.js":68,"../types/page/card-button.js":70,"../types/page/card-html.js":71,"../types/page/card-iframe.js":72,"../types/page/card-image.js":73,"../types/page/card-map.js":74,"../types/page/card-paragraph.js":75,"../types/page/card-row.js":76,"../types/page/card-slider.js":77,"../types/page/card-title.js":78,"../types/page/card-video.js":79,"../types/page/card-youtube.js":80,"../types/page/page.js":81,"../types/product/product-annotation.js":82,"../types/product/product-variation.js":84,"../types/product/product.js":85,"../types/scene/scene-annotation.js":86,"../types/scene/scene-audio.js":87,"../types/scene/scene-button.js":89,"../types/scene/scene-camera.js":90,"../types/scene/scene-carousel.js":91,"../types/scene/scene-image.js":92,"../types/scene/scene-model.js":93,"../types/scene/scene-panorama.js":94,"../types/scene/scene-poller.js":95,"../types/scene/scene-product.js":96,"../types/scene/scene-script.js":97,"../types/scene/scene-shadow.js":98,"../types/scene/scene-video.js":99,"../types/scene/scene-volumetric.js":100,"../types/scene/scene-youtube.js":101,"../types/scene/scene.js":102,"../types/trigger/trigger-image.js":103}],105:[function(require,module,exports){module.exports="1.120.1"},{}],106:[function(require,module,exports){const QRCodeStyling=require("qr-code-styling");class BaseElement extends HTMLElement{constructor(){super()}connectedCallback(){if(this.hasAttribute("url")){this.renderQRCode()}const observer=new MutationObserver(mutations=>{mutations.forEach(mutation=>{if(mutation.type==="attributes"){if(this.hasAttribute("url")){this.renderQRCode()}}})});observer.observe(this,{attributes:true})}download(options){const opt=options||{name:"plattar-qrcode",extension:"png"};if(this._qrCode){this._qrCode.download(opt)}}renderQRCode(){const url=this.hasAttribute("url")?this.getAttribute("url"):undefined;if(!url){console.warn('PlattarQR.renderQRCode() - required attribute "url" is missing or invalid, QR Code will not render');return}const width=this.hasAttribute("width")?parseInt(this.getAttribute("width")):512;const height=this.hasAttribute("height")?parseInt(this.getAttribute("height")):512;const margin=this.hasAttribute("margin")?this.getAttribute("margin"):0;const image=this.hasAttribute("image")?this.getAttribute("image"):undefined;const color=this.hasAttribute("color")?this.getAttribute("color"):"#000000";const style=this.hasAttribute("qr-type")?this.getAttribute("qr-type"):"default";this._options=this._options||{imageOptions:{hideBackgroundDots:true,imageSize:.4,margin:0},dotsOptions:{type:"rounded"},backgroundOptions:{color:"#ffffff"},dotsOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#6a1a4c",color2:"#6a1a4c",rotation:"0"}},cornersSquareOptions:{type:"extra-rounded"},cornersSquareOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#000000",color2:"#000000",rotation:"0"}},cornersDotOptions:{type:"dot"},cornersDotOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#000000",color2:"#000000",rotation:"0"}},backgroundOptionsHelper:{colorType:{single:true,gradient:false},gradient:{linear:true,radial:false,color1:"#ffffff",color2:"#ffffff",rotation:"0"}},width:1024,height:1024,type:"canvas"};this._options.margin=margin;this._options.image=image;this._options.dotsOptions.color=color;this._options.cornersDotOptions.color=color;this._options.cornersSquareOptions.color=color;switch(style){case"dots":this._options.dotsOptions.type="dots";break;case"default":default:this._options.dotsOptions.type="rounded"}const shortenURL=this.hasAttribute("shorten")?this.getAttribute("shorten"):"false";if(shortenURL&&shortenURL.toLowerCase()==="true"){this._ShortenURL(url).then(newURL=>{this._GenerateQRCode(newURL,width,height)}).catch(_err=>{console.warn(_err);this._GenerateQRCode(url,width,height)})}else{this._GenerateQRCode(url,width,height)}}_UpdateCanvas(width,height){if(!this._qrCode){return}const canvas=this._qrCode._canvas;if(canvas){canvas.style.width="100%";canvas.style.height="100%"}if(this._divContainer){const div=this._divContainer;div.style.width=width+"px";div.style.height=height+"px"}}_GenerateQRCode(url,width,height){this._options.data=url;const shadow=this.shadowRoot||this.attachShadow({mode:"open"});const qrCode=this._qrCode;if(!qrCode){const div=document.createElement("div");shadow.appendChild(div);this._divContainer=div;this._qrCode=new QRCodeStyling(this._options);this._qrCode.append(div);this._UpdateCanvas(width,height);return}this._qrCode.update(this._options);this._UpdateCanvas(width,height)}_IsFetchAPISupported(){return"fetch"in window}_ShortenURL(url){return new Promise((accept,reject)=>{if(!this._IsFetchAPISupported()){return reject(new Error("PlattarQR._ShortenURL() - fetch api not supported, cannot proceed"))}try{const b64=btoa(url);const endpoint="https://c.plattar.space/api/v2/shorten?base64="+b64;fetch(endpoint).then(response=>{if(!response.ok){throw new Error("PlattarQR._ShortenURL() - response was invalid")}return response.text()}).then(text=>{return accept(text)}).catch(()=>{return reject(new Error("PlattarQR._ShortenURL() - there was an unexpected issue generating short url"))})}catch(err){return reject(err)}})}}module.exports=BaseElement},{"qr-code-styling":133}],107:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class QRCodeElement extends BaseElement{constructor(){super()}}module.exports=QRCodeElement},{"./base/base-element.js":106}],108:[function(require,module,exports){"use strict";const QRCodeElement=require("./elements/qrcode-element.js");const Version=require("./version");if(customElements){if(customElements.get("plattar-qrcode")===undefined){customElements.define("plattar-qrcode",QRCodeElement)}}console.log("using @plattar/plattar-qrcode v"+Version);module.exports={version:Version}},{"./elements/qrcode-element.js":107,"./version":109}],109:[function(require,module,exports){module.exports="1.122.1"},{}],110:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.Configurator=void 0;const plattar_api_1=require("@plattar/plattar-api");const object_hash_1=__importDefault(require("object-hash"));const remote_request_1=require("./remote-request");class Configurator{constructor(){this.quality=100;this.output="glb";this.server="production";this.retry=0;this._maps=[];this._attrHash=[]}add(sceneProduct=null,productVariation=null){this.addSceneProduct(sceneProduct,productVariation)}addSceneProduct(sceneProduct=null,productVariation=null){if(!sceneProduct){throw new Error("Configurator.addSceneProduct() - sceneProduct input was null or undefined")}if(!productVariation){throw new Error("Configurator.addSceneProduct() - productVariation input was null or undefined")}const map={sceneproduct:null,productvariation:null};if(sceneProduct instanceof plattar_api_1.SceneProduct&&productVariation instanceof plattar_api_1.ProductVariation){map.sceneproduct=sceneProduct.id;map.productvariation=productVariation.id;this._maps.push(map);return}if((typeof sceneProduct==="string"||sceneProduct instanceof String)&&(typeof productVariation==="string"||productVariation instanceof String)){map.sceneproduct=sceneProduct;map.productvariation=productVariation;this._maps.push(map);return}throw new Error("Configurator.addSceneProduct() - mismatched instance types for inputs")}addProduct(product=null,productVariation=null){if(!product){throw new Error("Configurator.addProduct() - product input was null or undefined")}if(!productVariation){throw new Error("Configurator.addProduct() - productVariation input was null or undefined")}const map={productvariation:null,product:null};if(product instanceof plattar_api_1.Product&&productVariation instanceof plattar_api_1.ProductVariation){map.product=product.id;map.productvariation=productVariation.id;this._maps.push(map);return}if((typeof product==="string"||product instanceof String)&&(typeof productVariation==="string"||productVariation instanceof String)){map.product=product;map.productvariation=productVariation;this._maps.push(map);return}throw new Error("Configurator.addProduct() - mismatched instance types for inputs")}addModel(sceneModel=null){if(!sceneModel){throw new Error("Configurator.addModel() - sceneModel input was null or undefined")}const map={scenemodel:null};if(sceneModel instanceof plattar_api_1.SceneModel){map.scenemodel=sceneModel.id;this._maps.push(map);return}if(typeof sceneModel==="string"){map.scenemodel=sceneModel;this._maps.push(map);return}throw new Error("Configurator.addModel() - mismatched instance types for inputs")}get(){return new Promise((accept,reject)=>{this._CalculateHash().then(()=>{remote_request_1.RemoteRequest.request(this._GetPayload(),this.retry<0?0:this.retry).then(accept).catch(reject)}).catch(_err=>{reject(new Error("Configurator.get() - one of the objects does not exist in Plattar API"))})})}_CalculateHash(){return new Promise((accept,reject)=>{const promises=[];const oldOrigin=plattar_api_1.Server.default().originLocation.type;plattar_api_1.Server.create(plattar_api_1.Server.match(this.server));this._maps.forEach(map=>{if(map.productvariation){promises.push(new plattar_api_1.ProductVariation(map.productvariation).get())}if(map.sceneproduct){promises.push(new plattar_api_1.SceneProduct(map.sceneproduct).get())}if(map.scenemodel){promises.push(new plattar_api_1.SceneModel(map.scenemodel).get())}if(map.product){promises.push(new plattar_api_1.Product(map.product).get())}});Promise.all(promises).then(values=>{values.forEach(value=>{this._attrHash.push(value.attributes)});plattar_api_1.Server.create(plattar_api_1.Server.match(oldOrigin));accept()}).catch(()=>{plattar_api_1.Server.create(plattar_api_1.Server.match(oldOrigin));reject(new Error("Configurator._CalculateHash() - unexpected error"))})})}_GetPayload(){const converter=this.output==="vto"?"config_to_reality":"config_to_model";const load={options:{converter:converter,quality:this.quality,output:this.output,server:this.server},data:{maps:this._maps}};if(this._attrHash.length>0){load.options.hash=object_hash_1.default.MD5(this._attrHash)+object_hash_1.default.MD5(load)}else{load.options.hash=object_hash_1.default.MD5(load)}return load}}exports.Configurator=Configurator},{"./remote-request":112,"@plattar/plattar-api":42,"object-hash":131}],111:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.ModelConverter=void 0;const plattar_api_1=require("@plattar/plattar-api");const object_hash_1=__importDefault(require("object-hash"));const remote_request_1=require("./remote-request");class ModelConverter{constructor(){this._model=null;this.quality=100;this.output="glb";this.server="production";this.retry=0;this._attrHash=[]}get model(){return this._model}set model(newModel){if(!newModel){return}if(newModel instanceof plattar_api_1.FileModel){this._model=newModel.id;this._attrHash.push(object_hash_1.default.MD5(newModel.attributes));return}this._model=newModel}get(){return new Promise((accept,reject)=>{if(!this._model){return reject(new Error("ModelConverter.get() - required .model attribute was not set"))}remote_request_1.RemoteRequest.request(this._Payload,this.retry<0?0:this.retry).then(accept).catch(reject)})}get _Payload(){const load={options:{converter:"gltf_to_model",quality:this.quality,output:this.output,server:this.server},data:{model:this._model}};if(this._attrHash.length>0){load.options.hash=object_hash_1.default.MD5(this._attrHash)+object_hash_1.default.MD5(load)}else{load.options.hash=object_hash_1.default.MD5(load)}return load}}exports.ModelConverter=ModelConverter},{"./remote-request":112,"@plattar/plattar-api":42,"object-hash":131}],112:[function(require,module,exports){"use strict";var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.RemoteRequest=void 0;const node_fetch_1=__importDefault(require("node-fetch"));class RemoteRequest{static request(payload,retry=0){return new Promise((accept,reject)=>{if(retry>=0){RemoteRequest._send(payload).then(accept).catch(err=>{const newretry=retry-1;if(newretry<0){return reject(err)}console.error("RemoteRequest.request() - retry number "+newretry);console.error(err);setTimeout(()=>{RemoteRequest.request(payload,newretry).then(accept).catch(reject)},500)})}else{return reject(new Error("RemoteRequest.request() - attempted all retries without success"))}})}static _send(payload){return new Promise((accept,reject)=>{const endpoint=payload.options.server==="dev"?"http://localhost:9000/2015-03-31/functions/function/invocations":"https://3gbnq7wuw2.execute-api.ap-southeast-2.amazonaws.com/main/xrutils";const reqopts={method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(payload)};(0,node_fetch_1.default)(endpoint,reqopts).then(res=>{if(res.ok){try{return res.json()}catch(err){return new Error("RemoteRequest.request() - critical error occured, cannot proceed")}}return new Error("RemoteRequest.request() - unexpected error occured, cannot proceed. error message is "+res.statusText)}).then(json=>{if(json instanceof Error){reject(json)}else{accept(json)}})})}}exports.RemoteRequest=RemoteRequest},{"node-fetch":130}],113:[function(require,module,exports){"use strict";var __createBinding=this&&this.__createBinding||(Object.create?function(o,m,k,k2){if(k2===undefined)k2=k;Object.defineProperty(o,k2,{enumerable:true,get:function(){return m[k]}})}:function(o,m,k,k2){if(k2===undefined)k2=k;o[k2]=m[k]});var __setModuleDefault=this&&this.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:true,value:v})}:function(o,v){o["default"]=v});var __importStar=this&&this.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)if(k!=="default"&&Object.prototype.hasOwnProperty.call(mod,k))__createBinding(result,mod,k);__setModuleDefault(result,mod);return result};var __importDefault=this&&this.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports,"__esModule",{value:true});exports.version=exports.ModelConverter=exports.Configurator=void 0;var configurator_1=require("./core/configurator");Object.defineProperty(exports,"Configurator",{enumerable:true,get:function(){return configurator_1.Configurator}});var model_converter_1=require("./core/model-converter");Object.defineProperty(exports,"ModelConverter",{enumerable:true,get:function(){return model_converter_1.ModelConverter}});exports.version=__importStar(require("./version"));const version_1=__importDefault(require("./version"));console.log("using @plattar/plattar-services v"+version_1.default)},{"./core/configurator":110,"./core/model-converter":111,"./version":114}],114:[function(require,module,exports){"use strict";Object.defineProperty(exports,"__esModule",{value:true});exports.default="1.120.1"},{}],115:[function(require,module,exports){const Util=require("../../util/util");const ElementController=require("../controllers/element-controller");class BaseElement extends HTMLElement{constructor(){super()}connectedCallback(){this._controller=new ElementController(this)}set onready(callback){if(this._controller){this._controller.onload=callback;return}throw new Error("set BaseElement.onready - cannot use as element not connected")}get messenger(){return this._controller?this._controller.messenger:undefined}get context(){return this._controller?this._controller.context:undefined}get parent(){return this._controller?this._controller.parent:undefined}get element(){return this._controller}get ready(){return this._controller?true:false}get allowDragDrop(){return this._controller?this._controller.controller.allowDragDrop:false}set allowDragDrop(value){if(this._controller){this._controller.controller.allowDragDrop=value;return}throw new Error("set BaseElement.allowDragDrop - cannot use as element not connected")}get permissions(){return[]}get coreAttributes(){return[{key:"scene-id",map:"scene_id"}]}usesCoreAttribute(key){const attr=this.coreAttributes;const length=attr.length;for(let i=0;i<length;i++){if(attr[i].key===key){return true}}return false}get optionalAttributes(){return[]}get hasAllCoreAttributes(){const attr=this.coreAttributes;const length=attr.length;for(let i=0;i<length;i++){if(!this.hasAttribute(attr[i].key)){return false}}return true}get allMappedAttributes(){const map=new Map;const coreAttr=this.coreAttributes;const optAttr=this.optionalAttributes;coreAttr.forEach(ele=>{if(this.hasAttribute(ele.key)){map.set(ele.map,this.getAttribute(ele.key))}});optAttr.forEach(ele=>{if(this.hasAttribute(ele.key)){map.set(ele.map,this.getAttribute(ele.key))}});return map}get allMappedAttributesQuery(){const attr=this.allMappedAttributes;let queryStr="";let first=true;for(const[key,value]of attr.entries()){queryStr+=first?"?"+key+"="+value:"&"+key+"="+value;first=false}return queryStr}get elementType(){return"none"}get elementLocation(){return Util.getElementLocation(this.elementType)}}module.exports=BaseElement},{"../../util/util":128,"../controllers/element-controller":117}],116:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ConfiguratorElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"configurator"}get elementLocation(){if(this.hasAttribute("show-ui")){const state=this.getAttribute("show-ui");return state==="true"?"configurator/dist/index.html":super.elementLocation}return super.elementLocation}get optionalAttributes(){return[{key:"config-state",map:"config_state"},{key:"show-ar",map:"show_ar"}]}}module.exports=ConfiguratorElement},{"./base/base-element.js":115}],117:[function(require,module,exports){const Util=require("../../util/util.js");const{messenger}=require("@plattar/context-messenger");const IFrameController=require("./iframe-controller.js");class ElementController{constructor(element){this._element=element;const callback=mutationsList=>{for(const mutation of mutationsList){if(mutation.type==="attributes"&&element.usesCoreAttribute(mutation.attributeName)){if(element.hasAllCoreAttributes){this._load()}}}};const observer=new MutationObserver(callback);observer.observe(this._element,{attributes:true});if(element.hasAllCoreAttributes){this._load()}}_load(){if(this._controller){this._controller._destroy();this._controller=undefined}const element=this._element;this._server=element.hasAttribute("server")?element.getAttribute("server"):"production";const serverLocation=Util.getServerLocation(this._server);if(serverLocation===undefined){throw new Error('ElementController - attribute "server" must be one of "production", "staging" or "dev"')}const embedLocation=element.elementLocation;if(embedLocation===undefined){throw new Error('ElementController - element named "'+elementType+'" is invalid')}const source=serverLocation+embedLocation+element.allMappedAttributesQuery;this._messengerID="element_"+Util.id();this._controller=new IFrameController(element,source,this._messengerID,node=>{messenger.addChild(node)})}set onload(callback){if(!callback){return}if(this.messenger){callback()}else{messenger.onload(this._messengerID,()=>{callback()})}}get messenger(){return messenger[this._messengerID]}get context(){return messenger.self}get parent(){return messenger.parent}get controller(){return this._controller}}module.exports=ElementController},{"../../util/util.js":128,"./iframe-controller.js":118,"@plattar/context-messenger":21}],118:[function(require,module,exports){const Util=require("../../util/util.js");class IFrameController{constructor(element,src,id,onelemload=undefined){this._iframe=document.createElement("iframe");this._isDraggable=false;if(!element.hasAttribute("sameorigin")){this._iframe.onload=()=>{if(onelemload){onelemload(this._iframe)}}}this._iframe.setAttribute("id",id);this._iframe.setAttribute("width",element.hasAttribute("width")?element.getAttribute("width"):"500px");this._iframe.setAttribute("height",element.hasAttribute("height")?element.getAttribute("height"):"500px");this._iframe.setAttribute("src",src);this._iframe.setAttribute("frameBorder","0");const permissions=Util.getPermissionString(element.permissions);if(permissions){this._iframe.setAttribute("allow",permissions)}const shadow=element.shadowRoot||element.attachShadow({mode:"open"});this.allowDragging=false;shadow.append(this._iframe);if(element.hasAttribute("fullscreen")){const style=document.createElement("style");style.textContent=`._PlattarFullScreen { width: 100%; height: 100%; position: absolute; top: 0; left: 0; }`;this._iframe.className="_PlattarFullScreen";shadow.append(style);this._fsStyle=style}}set allowDragDrop(value){if(value){this._isDraggable=true;this._iframe.style.pointerEvents="none"}else{this._isDraggable=false;this._iframe.style.pointerEvents="auto"}}_destroy(){if(this._iframe){this._iframe.remove()}if(this._fsStyle){this._fsStyle.remove()}this._iframe=undefined;this._fsStyle=undefined}get allowDragDrop(){return this._isDraggable}get width(){return this._iframe.getAttribute("width")}get child(){return this._iframe}set width(value){this._iframe.setAttribute("width",value)}get height(){return this._iframe.getAttribute("height")}set height(value){this._iframe.setAttribute("height",value)}get id(){return this._iframe.id}}module.exports=IFrameController},{"../../util/util.js":128}],119:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class EditorElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"editor"}}module.exports=EditorElement},{"./base/base-element.js":115}],120:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class EWallElement extends BaseElement{constructor(){super();const tag=document.createElement("script");tag.src="https://cdn.8thwall.com/web/iframe/iframe.js";tag.defer=true}connectedCallback(){super.connectedCallback();const id=this.element.controller.id;const onLoad=()=>{if(window.XRIFrame){window.XRIFrame.registerXRIFrame(id)}};window.addEventListener("load",onLoad,false)}get permissions(){return["camera","autoplay","xr-spatial-tracking","gyroscope","accelerometer"]}get elementType(){return"ewall"}}module.exports=EWallElement},{"./base/base-element.js":115}],121:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class FaceARElement extends BaseElement{constructor(){super()}get permissions(){return["camera","autoplay"]}get elementType(){return"facear"}get optionalAttributes(){return[{key:"variation-id",map:"variationId"},{key:"variation-sku",map:"variationSku"},{key:"product-id",map:"productId"},{key:"config-state",map:"config_state"},{key:"show-ar",map:"show_ar"}]}}module.exports=FaceARElement},{"./base/base-element.js":115}],122:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ModelElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"model"}get coreAttributes(){return[{key:"model-id",map:"model_id"}]}}module.exports=ModelElement},{"./base/base-element.js":115}],123:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ProductElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"product"}get coreAttributes(){return[{key:"product-id",map:"product_id"}]}get optionalAttributes(){return[{key:"variation-id",map:"variation_id"},{key:"variation-sku",map:"variationSku"},{key:"show-ar",map:"show_ar"}]}}module.exports=ProductElement},{"./base/base-element.js":115}],124:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class StudioElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"studio"}}module.exports=StudioElement},{"./base/base-element.js":115}],125:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class ViewerElement extends BaseElement{constructor(){super()}get permissions(){return["autoplay"]}get elementType(){return"viewer"}get optionalAttributes(){return[{key:"variation-id",map:"variationId"},{key:"variation-sku",map:"variationSku"},{key:"product-id",map:"productId"},{key:"show-ar",map:"show_ar"}]}}module.exports=ViewerElement},{"./base/base-element.js":115}],126:[function(require,module,exports){const BaseElement=require("./base/base-element.js");class WebXRElement extends BaseElement{constructor(){super()}get permissions(){return["camera","autoplay","xr-spatial-tracking"]}get elementType(){return"webxr"}}module.exports=WebXRElement},{"./base/base-element.js":115}],127:[function(require,module,exports){"use strict";const WebXRElement=require("./elements/webxr-element.js");const ViewerElement=require("./elements/viewer-element.js");const ProductElement=require("./elements/product-element.js");const EWallElement=require("./elements/ewall-element.js");const FaceARElement=require("./elements/facear-element.js");const EditorElement=require("./elements/editor-element.js");const StudioElement=require("./elements/studio-element.js");const ModelElement=require("./elements/model-element.js");const ConfiguratorElement=require("./elements/configurator-element.js");const Version=require("./version");if(customElements.get("plattar-webxr")===undefined){customElements.define("plattar-webxr",WebXRElement)}if(customElements.get("plattar-viewer")===undefined){customElements.define("plattar-viewer",ViewerElement)}if(customElements.get("plattar-product")===undefined){customElements.define("plattar-product",ProductElement)}if(customElements.get("plattar-editor")===undefined){customElements.define("plattar-editor",EditorElement)}if(customElements.get("plattar-facear")===undefined){customElements.define("plattar-facear",FaceARElement)}if(customElements.get("plattar-8wall")===undefined){customElements.define("plattar-8wall",EWallElement)}if(customElements.get("plattar-studio")===undefined){customElements.define("plattar-studio",StudioElement)}if(customElements.get("plattar-model")===undefined){customElements.define("plattar-model",ModelElement)}if(customElements.get("plattar-configurator")===undefined){customElements.define("plattar-configurator",ConfiguratorElement)}console.log("using @plattar/plattar-web v"+Version);module.exports={version:Version}},{"./elements/configurator-element.js":116,"./elements/editor-element.js":119,"./elements/ewall-element.js":120,"./elements/facear-element.js":121,"./elements/model-element.js":122,"./elements/product-element.js":123,"./elements/studio-element.js":124,"./elements/viewer-element.js":125,"./elements/webxr-element.js":126,"./version":129}],128:[function(require,module,exports){class Util{static getServerLocation(server){switch(server){case"production":return"https://app.plattar.com/";case"staging":return"https://staging.plattar.space/";case"dev":return"https://localhost/";default:return undefined}}static getElementLocation(etype){const isValid=Util.isValidType(etype);if(isValid){return"renderer/"+etype+".html"}return undefined}static isValidType(etype){switch(etype){case"viewer":case"editor":case"ewall":case"facear":case"studio":case"product":case"model":case"configurator":case"webxr":return true;default:return false}}static id(){return Math.abs(Math.floor(Math.random()*1e13))}static getPermissionString(permissions){if(permissions&&permissions.length>0){let permissionString=permissions[0];for(let i=1;i<permissions.length;i++){permissionString+="; "+permissions[i]}return permissionString}return undefined}}module.exports=Util},{}],129:[function(require,module,exports){module.exports="1.131.1"},{}],130:[function(require,module,exports){(function(global){(function(){"use strict";var getGlobal=function(){if(typeof self!=="undefined"){return self}if(typeof window!=="undefined"){return window}if(typeof global!=="undefined"){return global}throw new Error("unable to locate global object")};var global=getGlobal();module.exports=exports=global.fetch;if(global.fetch){exports.default=global.fetch.bind(global)}exports.Headers=global.Headers;exports.Request=global.Request;exports.Response=global.Response}).call(this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],131:[function(require,module,exports){(function(global){(function(){!function(e){var t;"object"==typeof exports?module.exports=e():"function"==typeof define&&define.amd?define(e):("undefined"!=typeof window?t=window:"undefined"!=typeof global?t=global:"undefined"!=typeof self&&(t=self),t.objectHash=e())}(function(){return function o(i,u,a){function s(n,e){if(!u[n]){if(!i[n]){var t="function"==typeof require&&require;if(!e&&t)return t(n,!0);if(f)return f(n,!0);throw new Error("Cannot find module '"+n+"'")}var r=u[n]={exports:{}};i[n][0].call(r.exports,function(e){var t=i[n][1][e];return s(t||e)},r,r.exports,o,i,u,a)}return u[n].exports}for(var f="function"==typeof require&&require,e=0;e<a.length;e++)s(a[e]);return s}({1:[function(w,b,m){(function(e,t,f,n,r,o,i,u,a){"use strict";var s=w("crypto");function c(e,t){return function(e,t){var n;n="passthrough"!==t.algorithm?s.createHash(t.algorithm):new y;void 0===n.write&&(n.write=n.update,n.end=n.update);g(t,n).dispatch(e),n.update||n.end("");if(n.digest)return n.digest("buffer"===t.encoding?void 0:t.encoding);var r=n.read();return"buffer"!==t.encoding?r.toString(t.encoding):r}(e,t=h(e,t))}(m=b.exports=c).sha1=function(e){return c(e)},m.keys=function(e){return c(e,{excludeValues:!0,algorithm:"sha1",encoding:"hex"})},m.MD5=function(e){return c(e,{algorithm:"md5",encoding:"hex"})},m.keysMD5=function(e){return c(e,{algorithm:"md5",encoding:"hex",excludeValues:!0})};var l=s.getHashes?s.getHashes().slice():["sha1","md5"];l.push("passthrough");var d=["buffer","hex","binary","base64"];function h(e,t){t=t||{};var n={};if(n.algorithm=t.algorithm||"sha1",n.encoding=t.encoding||"hex",n.excludeValues=!!t.excludeValues,n.algorithm=n.algorithm.toLowerCase(),n.encoding=n.encoding.toLowerCase(),n.ignoreUnknown=!0===t.ignoreUnknown,n.respectType=!1!==t.respectType,n.respectFunctionNames=!1!==t.respectFunctionNames,n.respectFunctionProperties=!1!==t.respectFunctionProperties,n.unorderedArrays=!0===t.unorderedArrays,n.unorderedSets=!1!==t.unorderedSets,n.unorderedObjects=!1!==t.unorderedObjects,n.replacer=t.replacer||void 0,n.excludeKeys=t.excludeKeys||void 0,void 0===e)throw new Error("Object argument required.");for(var r=0;r<l.length;++r)l[r].toLowerCase()===n.algorithm.toLowerCase()&&(n.algorithm=l[r]);if(-1===l.indexOf(n.algorithm))throw new Error('Algorithm "'+n.algorithm+'" not supported. supported values: '+l.join(", "));if(-1===d.indexOf(n.encoding)&&"passthrough"!==n.algorithm)throw new Error('Encoding "'+n.encoding+'" not supported. supported values: '+d.join(", "));return n}function p(e){if("function"==typeof e){return null!=/^function\s+\w*\s*\(\s*\)\s*{\s+\[native code\]\s+}$/i.exec(Function.prototype.toString.call(e))}}function g(u,t,a){a=a||[];function s(e){return t.update?t.update(e,"utf8"):t.write(e,"utf8")}return{dispatch:function(e){return u.replacer&&(e=u.replacer(e)),this["_"+(null===e?"null":typeof e)](e)},_object:function(t){var e=Object.prototype.toString.call(t),n=/\[object (.*)\]/i.exec(e);n=(n=n?n[1]:"unknown:["+e+"]").toLowerCase();var r;if(0<=(r=a.indexOf(t)))return this.dispatch("[CIRCULAR:"+r+"]");if(a.push(t),void 0!==f&&f.isBuffer&&f.isBuffer(t))return s("buffer:"),s(t);if("object"===n||"function"===n||"asyncfunction"===n){var o=Object.keys(t);u.unorderedObjects&&(o=o.sort()),!1===u.respectType||p(t)||o.splice(0,0,"prototype","__proto__","constructor"),u.excludeKeys&&(o=o.filter(function(e){return!u.excludeKeys(e)})),s("object:"+o.length+":");var i=this;return o.forEach(function(e){i.dispatch(e),s(":"),u.excludeValues||i.dispatch(t[e]),s(",")})}if(!this["_"+n]){if(u.ignoreUnknown)return s("["+n+"]");throw new Error('Unknown object type "'+n+'"')}this["_"+n](t)},_array:function(e,t){t=void 0!==t?t:!1!==u.unorderedArrays;var n=this;if(s("array:"+e.length+":"),!t||e.length<=1)return e.forEach(function(e){return n.dispatch(e)});var r=[],o=e.map(function(e){var t=new y,n=a.slice();return g(u,t,n).dispatch(e),r=r.concat(n.slice(a.length)),t.read().toString()});return a=a.concat(r),o.sort(),this._array(o,!1)},_date:function(e){return s("date:"+e.toJSON())},_symbol:function(e){return s("symbol:"+e.toString())},_error:function(e){return s("error:"+e.toString())},_boolean:function(e){return s("bool:"+e.toString())},_string:function(e){s("string:"+e.length+":"),s(e.toString())},_function:function(e){s("fn:"),p(e)?this.dispatch("[native]"):this.dispatch(e.toString()),!1!==u.respectFunctionNames&&this.dispatch("function-name:"+String(e.name)),u.respectFunctionProperties&&this._object(e)},_number:function(e){return s("number:"+e.toString())},_xml:function(e){return s("xml:"+e.toString())},_null:function(){return s("Null")},_undefined:function(){return s("Undefined")},_regexp:function(e){return s("regex:"+e.toString())},_uint8array:function(e){return s("uint8array:"),this.dispatch(Array.prototype.slice.call(e))},_uint8clampedarray:function(e){return s("uint8clampedarray:"),this.dispatch(Array.prototype.slice.call(e))},_int8array:function(e){return s("uint8array:"),this.dispatch(Array.prototype.slice.call(e))},_uint16array:function(e){return s("uint16array:"),this.dispatch(Array.prototype.slice.call(e))},_int16array:function(e){return s("uint16array:"),this.dispatch(Array.prototype.slice.call(e))},_uint32array:function(e){return s("uint32array:"),this.dispatch(Array.prototype.slice.call(e))},_int32array:function(e){return s("uint32array:"),this.dispatch(Array.prototype.slice.call(e))},_float32array:function(e){return s("float32array:"),this.dispatch(Array.prototype.slice.call(e))},_float64array:function(e){return s("float64array:"),this.dispatch(Array.prototype.slice.call(e))},_arraybuffer:function(e){return s("arraybuffer:"),this.dispatch(new Uint8Array(e))},_url:function(e){return s("url:"+e.toString())},_map:function(e){s("map:");var t=Array.from(e);return this._array(t,!1!==u.unorderedSets)},_set:function(e){s("set:");var t=Array.from(e);return this._array(t,!1!==u.unorderedSets)},_file:function(e){return s("file:"),this.dispatch([e.name,e.size,e.type,e.lastModfied])},_blob:function(){if(u.ignoreUnknown)return s("[blob]");throw Error('Hashing Blob objects is currently not supported\n(see https://github.com/puleos/object-hash/issues/26)\nUse "options.replacer" or "options.ignoreUnknown"\n')},_domwindow:function(){return s("domwindow")},_bigint:function(e){return s("bigint:"+e.toString())},_process:function(){return s("process")},_timer:function(){return s("timer")},_pipe:function(){return s("pipe")},_tcp:function(){return s("tcp")},_udp:function(){return s("udp")},_tty:function(){return s("tty")},_statwatcher:function(){return s("statwatcher")},_securecontext:function(){return s("securecontext")},_connection:function(){return s("connection")},_zlib:function(){return s("zlib")},_context:function(){return s("context")},_nodescript:function(){return s("nodescript")},_httpparser:function(){return s("httpparser")},_dataview:function(){return s("dataview")},_signal:function(){return s("signal")},_fsevent:function(){return s("fsevent")},_tlswrap:function(){return s("tlswrap")}}}function y(){return{buf:"",write:function(e){this.buf+=e},end:function(e){this.buf+=e},read:function(){return this.buf}}}m.writeToStream=function(e,t,n){return void 0===n&&(n=t,t={}),g(t=h(e,t),n).dispatch(e)}}).call(this,w("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},w("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/fake_7eac155c.js","/")},{buffer:3,crypto:5,lYpoI2:10}],2:[function(e,t,f){(function(e,t,n,r,o,i,u,a,s){!function(e){"use strict";var f="undefined"!=typeof Uint8Array?Uint8Array:Array,n="+".charCodeAt(0),r="/".charCodeAt(0),o="0".charCodeAt(0),i="a".charCodeAt(0),u="A".charCodeAt(0),a="-".charCodeAt(0),s="_".charCodeAt(0);function c(e){var t=e.charCodeAt(0);return t===n||t===a?62:t===r||t===s?63:t<o?-1:t<o+10?t-o+26+26:t<u+26?t-u:t<i+26?t-i+26:void 0}e.toByteArray=function(e){var t,n;if(0<e.length%4)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.length,o="="===e.charAt(r-2)?2:"="===e.charAt(r-1)?1:0,i=new f(3*e.length/4-o),u=0<o?e.length-4:e.length,a=0;function s(e){i[a++]=e}for(t=0;t<u;t+=4,0)s((16711680&(n=c(e.charAt(t))<<18|c(e.charAt(t+1))<<12|c(e.charAt(t+2))<<6|c(e.charAt(t+3))))>>16),s((65280&n)>>8),s(255&n);return 2==o?s(255&(n=c(e.charAt(t))<<2|c(e.charAt(t+1))>>4)):1==o&&(s((n=c(e.charAt(t))<<10|c(e.charAt(t+1))<<4|c(e.charAt(t+2))>>2)>>8&255),s(255&n)),i},e.fromByteArray=function(e){var t,n,r,o,i=e.length%3,u="";function a(e){return"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(e)}for(t=0,r=e.length-i;t<r;t+=3)n=(e[t]<<16)+(e[t+1]<<8)+e[t+2],u+=a((o=n)>>18&63)+a(o>>12&63)+a(o>>6&63)+a(63&o);switch(i){case 1:u+=a((n=e[e.length-1])>>2),u+=a(n<<4&63),u+="==";break;case 2:u+=a((n=(e[e.length-2]<<8)+e[e.length-1])>>10),u+=a(n>>4&63),u+=a(n<<2&63),u+="="}return u}}(void 0===f?this.base64js={}:f)}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/base64-js/lib/b64.js","/node_modules/gulp-browserify/node_modules/base64-js/lib")},{buffer:3,lYpoI2:10}],3:[function(O,e,H){(function(e,t,g,n,r,o,i,u,a){var s=O("base64-js"),f=O("ieee754");function g(e,t,n){if(!(this instanceof g))return new g(e,t,n);var r,o,i,u,a,s=typeof e;if("base64"===t&&"string"==s)for(e=(r=e).trim?r.trim():r.replace(/^\s+|\s+$/g,"");e.length%4!=0;)e+="=";if("number"==s)o=x(e);else if("string"==s)o=g.byteLength(e,t);else{if("object"!=s)throw new Error("First argument needs to be a number, array or string.");o=x(e.length)}if(g._useTypedArrays?i=g._augment(new Uint8Array(o)):((i=this).length=o,i._isBuffer=!0),g._useTypedArrays&&"number"==typeof e.byteLength)i._set(e);else if(S(a=e)||g.isBuffer(a)||a&&"object"==typeof a&&"number"==typeof a.length)for(u=0;u<o;u++)g.isBuffer(e)?i[u]=e.readUInt8(u):i[u]=e[u];else if("string"==s)i.write(e,0,t);else if("number"==s&&!g._useTypedArrays&&!n)for(u=0;u<o;u++)i[u]=0;return i}function y(e,t,n,r){return g._charsWritten=T(function(e){for(var t=[],n=0;n<e.length;n++)t.push(255&e.charCodeAt(n));return t}(t),e,n,r)}function w(e,t,n,r){return g._charsWritten=T(function(e){for(var t,n,r,o=[],i=0;i<e.length;i++)t=e.charCodeAt(i),n=t>>8,r=t%256,o.push(r),o.push(n);return o}(t),e,n,r)}function c(e,t,n){var r="";n=Math.min(e.length,n);for(var o=t;o<n;o++)r+=String.fromCharCode(e[o]);return r}function l(e,t,n,r){r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+1<e.length,"Trying to read beyond buffer length"));var o,i=e.length;if(!(i<=t))return n?(o=e[t],t+1<i&&(o|=e[t+1]<<8)):(o=e[t]<<8,t+1<i&&(o|=e[t+1])),o}function d(e,t,n,r){r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+3<e.length,"Trying to read beyond buffer length"));var o,i=e.length;if(!(i<=t))return n?(t+2<i&&(o=e[t+2]<<16),t+1<i&&(o|=e[t+1]<<8),o|=e[t],t+3<i&&(o+=e[t+3]<<24>>>0)):(t+1<i&&(o=e[t+1]<<16),t+2<i&&(o|=e[t+2]<<8),t+3<i&&(o|=e[t+3]),o+=e[t]<<24>>>0),o}function h(e,t,n,r){if(r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+1<e.length,"Trying to read beyond buffer length")),!(e.length<=t)){var o=l(e,t,n,!0);return 32768&o?-1*(65535-o+1):o}}function p(e,t,n,r){if(r||(D("boolean"==typeof n,"missing or invalid endian"),D(null!=t,"missing offset"),D(t+3<e.length,"Trying to read beyond buffer length")),!(e.length<=t)){var o=d(e,t,n,!0);return 2147483648&o?-1*(4294967295-o+1):o}}function b(e,t,n,r){return r||(D("boolean"==typeof n,"missing or invalid endian"),D(t+3<e.length,"Trying to read beyond buffer length")),f.read(e,t,n,23,4)}function m(e,t,n,r){return r||(D("boolean"==typeof n,"missing or invalid endian"),D(t+7<e.length,"Trying to read beyond buffer length")),f.read(e,t,n,52,8)}function v(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+1<e.length,"trying to write beyond buffer length"),N(t,65535));var i=e.length;if(!(i<=n))for(var u=0,a=Math.min(i-n,2);u<a;u++)e[n+u]=(t&255<<8*(r?u:1-u))>>>8*(r?u:1-u)}function _(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+3<e.length,"trying to write beyond buffer length"),N(t,4294967295));var i=e.length;if(!(i<=n))for(var u=0,a=Math.min(i-n,4);u<a;u++)e[n+u]=t>>>8*(r?u:3-u)&255}function E(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+1<e.length,"Trying to write beyond buffer length"),Y(t,32767,-32768)),e.length<=n||v(e,0<=t?t:65535+t+1,n,r,o)}function I(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+3<e.length,"Trying to write beyond buffer length"),Y(t,2147483647,-2147483648)),e.length<=n||_(e,0<=t?t:4294967295+t+1,n,r,o)}function A(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+3<e.length,"Trying to write beyond buffer length"),F(t,34028234663852886e22,-34028234663852886e22)),e.length<=n||f.write(e,t,n,r,23,4)}function B(e,t,n,r,o){o||(D(null!=t,"missing value"),D("boolean"==typeof r,"missing or invalid endian"),D(null!=n,"missing offset"),D(n+7<e.length,"Trying to write beyond buffer length"),F(t,17976931348623157e292,-17976931348623157e292)),e.length<=n||f.write(e,t,n,r,52,8)}H.Buffer=g,H.SlowBuffer=g,H.INSPECT_MAX_BYTES=50,g.poolSize=8192,g._useTypedArrays=function(){try{var e=new ArrayBuffer(0),t=new Uint8Array(e);return t.foo=function(){return 42},42===t.foo()&&"function"==typeof t.subarray}catch(e){return!1}}(),g.isEncoding=function(e){switch(String(e).toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"raw":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return!0;default:return!1}},g.isBuffer=function(e){return!(null==e||!e._isBuffer)},g.byteLength=function(e,t){var n;switch(e+="",t||"utf8"){case"hex":n=e.length/2;break;case"utf8":case"utf-8":n=C(e).length;break;case"ascii":case"binary":case"raw":n=e.length;break;case"base64":n=k(e).length;break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":n=2*e.length;break;default:throw new Error("Unknown encoding")}return n},g.concat=function(e,t){if(D(S(e),"Usage: Buffer.concat(list, [totalLength])\nlist should be an Array."),0===e.length)return new g(0);if(1===e.length)return e[0];if("number"!=typeof t)for(o=t=0;o<e.length;o++)t+=e[o].length;for(var n=new g(t),r=0,o=0;o<e.length;o++){var i=e[o];i.copy(n,r),r+=i.length}return n},g.prototype.write=function(e,t,n,r){var o;isFinite(t)?isFinite(n)||(r=n,n=void 0):(o=r,r=t,t=n,n=o),t=Number(t)||0;var i,u,a,s,f,c,l,d,h,p=this.length-t;switch((!n||p<(n=Number(n)))&&(n=p),r=String(r||"utf8").toLowerCase()){case"hex":i=function(e,t,n,r){n=Number(n)||0;var o=e.length-n;(!r||o<(r=Number(r)))&&(r=o);var i=t.length;D(i%2==0,"Invalid hex string"),i/2<r&&(r=i/2);for(var u=0;u<r;u++){var a=parseInt(t.substr(2*u,2),16);D(!isNaN(a),"Invalid hex string"),e[n+u]=a}return g._charsWritten=2*u,u}(this,e,t,n);break;case"utf8":case"utf-8":c=this,l=e,d=t,h=n,i=g._charsWritten=T(C(l),c,d,h);break;case"ascii":case"binary":i=y(this,e,t,n);break;case"base64":u=this,a=e,s=t,f=n,i=g._charsWritten=T(k(a),u,s,f);break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":i=w(this,e,t,n);break;default:throw new Error("Unknown encoding")}return i},g.prototype.toString=function(e,t,n){var r,o,i,u,a=this;if(e=String(e||"utf8").toLowerCase(),t=Number(t)||0,(n=void 0!==n?Number(n):n=a.length)===t)return"";switch(e){case"hex":r=function(e,t,n){var r=e.length;(!t||t<0)&&(t=0);(!n||n<0||r<n)&&(n=r);for(var o="",i=t;i<n;i++)o+=j(e[i]);return o}(a,t,n);break;case"utf8":case"utf-8":r=function(e,t,n){var r="",o="";n=Math.min(e.length,n);for(var i=t;i<n;i++)e[i]<=127?(r+=M(o)+String.fromCharCode(e[i]),o=""):o+="%"+e[i].toString(16);return r+M(o)}(a,t,n);break;case"ascii":case"binary":r=c(a,t,n);break;case"base64":o=a,u=n,r=0===(i=t)&&u===o.length?s.fromByteArray(o):s.fromByteArray(o.slice(i,u));break;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":r=function(e,t,n){for(var r=e.slice(t,n),o="",i=0;i<r.length;i+=2)o+=String.fromCharCode(r[i]+256*r[i+1]);return o}(a,t,n);break;default:throw new Error("Unknown encoding")}return r},g.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}},g.prototype.copy=function(e,t,n,r){if(n=n||0,r||0===r||(r=this.length),t=t||0,r!==n&&0!==e.length&&0!==this.length){D(n<=r,"sourceEnd < sourceStart"),D(0<=t&&t<e.length,"targetStart out of bounds"),D(0<=n&&n<this.length,"sourceStart out of bounds"),D(0<=r&&r<=this.length,"sourceEnd out of bounds"),r>this.length&&(r=this.length),e.length-t<r-n&&(r=e.length-t+n);var o=r-n;if(o<100||!g._useTypedArrays)for(var i=0;i<o;i++)e[i+t]=this[i+n];else e._set(this.subarray(n,n+o),t)}},g.prototype.slice=function(e,t){var n=this.length;if(e=U(e,n,0),t=U(t,n,n),g._useTypedArrays)return g._augment(this.subarray(e,t));for(var r=t-e,o=new g(r,void 0,!0),i=0;i<r;i++)o[i]=this[i+e];return o},g.prototype.get=function(e){return console.log(".get() is deprecated. Access using array indexes instead."),this.readUInt8(e)},g.prototype.set=function(e,t){return console.log(".set() is deprecated. Access using array indexes instead."),this.writeUInt8(e,t)},g.prototype.readUInt8=function(e,t){if(t||(D(null!=e,"missing offset"),D(e<this.length,"Trying to read beyond buffer length")),!(e>=this.length))return this[e]},g.prototype.readUInt16LE=function(e,t){return l(this,e,!0,t)},g.prototype.readUInt16BE=function(e,t){return l(this,e,!1,t)},g.prototype.readUInt32LE=function(e,t){return d(this,e,!0,t)},g.prototype.readUInt32BE=function(e,t){return d(this,e,!1,t)},g.prototype.readInt8=function(e,t){if(t||(D(null!=e,"missing offset"),D(e<this.length,"Trying to read beyond buffer length")),!(e>=this.length))return 128&this[e]?-1*(255-this[e]+1):this[e]},g.prototype.readInt16LE=function(e,t){return h(this,e,!0,t)},g.prototype.readInt16BE=function(e,t){return h(this,e,!1,t)},g.prototype.readInt32LE=function(e,t){return p(this,e,!0,t)},g.prototype.readInt32BE=function(e,t){return p(this,e,!1,t)},g.prototype.readFloatLE=function(e,t){return b(this,e,!0,t)},g.prototype.readFloatBE=function(e,t){return b(this,e,!1,t)},g.prototype.readDoubleLE=function(e,t){return m(this,e,!0,t)},g.prototype.readDoubleBE=function(e,t){return m(this,e,!1,t)},g.prototype.writeUInt8=function(e,t,n){n||(D(null!=e,"missing value"),D(null!=t,"missing offset"),D(t<this.length,"trying to write beyond buffer length"),N(e,255)),t>=this.length||(this[t]=e)},g.prototype.writeUInt16LE=function(e,t,n){v(this,e,t,!0,n)},g.prototype.writeUInt16BE=function(e,t,n){v(this,e,t,!1,n)},g.prototype.writeUInt32LE=function(e,t,n){_(this,e,t,!0,n)},g.prototype.writeUInt32BE=function(e,t,n){_(this,e,t,!1,n)},g.prototype.writeInt8=function(e,t,n){n||(D(null!=e,"missing value"),D(null!=t,"missing offset"),D(t<this.length,"Trying to write beyond buffer length"),Y(e,127,-128)),t>=this.length||(0<=e?this.writeUInt8(e,t,n):this.writeUInt8(255+e+1,t,n))},g.prototype.writeInt16LE=function(e,t,n){E(this,e,t,!0,n)},g.prototype.writeInt16BE=function(e,t,n){E(this,e,t,!1,n)},g.prototype.writeInt32LE=function(e,t,n){I(this,e,t,!0,n)},g.prototype.writeInt32BE=function(e,t,n){I(this,e,t,!1,n)},g.prototype.writeFloatLE=function(e,t,n){A(this,e,t,!0,n)},g.prototype.writeFloatBE=function(e,t,n){A(this,e,t,!1,n)},g.prototype.writeDoubleLE=function(e,t,n){B(this,e,t,!0,n)},g.prototype.writeDoubleBE=function(e,t,n){B(this,e,t,!1,n)},g.prototype.fill=function(e,t,n){if(e=e||0,t=t||0,n=n||this.length,"string"==typeof e&&(e=e.charCodeAt(0)),D("number"==typeof e&&!isNaN(e),"value is not a number"),D(t<=n,"end < start"),n!==t&&0!==this.length){D(0<=t&&t<this.length,"start out of bounds"),D(0<=n&&n<=this.length,"end out of bounds");for(var r=t;r<n;r++)this[r]=e}},g.prototype.inspect=function(){for(var e=[],t=this.length,n=0;n<t;n++)if(e[n]=j(this[n]),n===H.INSPECT_MAX_BYTES){e[n+1]="...";break}return"<Buffer "+e.join(" ")+">"},g.prototype.toArrayBuffer=function(){if("undefined"==typeof Uint8Array)throw new Error("Buffer.toArrayBuffer not supported in this browser");if(g._useTypedArrays)return new g(this).buffer;for(var e=new Uint8Array(this.length),t=0,n=e.length;t<n;t+=1)e[t]=this[t];return e.buffer};var L=g.prototype;function U(e,t,n){return"number"!=typeof e?n:t<=(e=~~e)?t:0<=e||0<=(e+=t)?e:0}function x(e){return(e=~~Math.ceil(+e))<0?0:e}function S(e){return(Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)})(e)}function j(e){return e<16?"0"+e.toString(16):e.toString(16)}function C(e){for(var t=[],n=0;n<e.length;n++){var r=e.charCodeAt(n);if(r<=127)t.push(e.charCodeAt(n));else{var o=n;55296<=r&&r<=57343&&n++;for(var i=encodeURIComponent(e.slice(o,n+1)).substr(1).split("%"),u=0;u<i.length;u++)t.push(parseInt(i[u],16))}}return t}function k(e){return s.toByteArray(e)}function T(e,t,n,r){for(var o=0;o<r&&!(o+n>=t.length||o>=e.length);o++)t[o+n]=e[o];return o}function M(e){try{return decodeURIComponent(e)}catch(e){return String.fromCharCode(65533)}}function N(e,t){D("number"==typeof e,"cannot write a non-number as a number"),D(0<=e,"specified a negative value for writing an unsigned value"),D(e<=t,"value is larger than maximum value for type"),D(Math.floor(e)===e,"value has a fractional component")}function Y(e,t,n){D("number"==typeof e,"cannot write a non-number as a number"),D(e<=t,"value larger than maximum allowed value"),D(n<=e,"value smaller than minimum allowed value"),D(Math.floor(e)===e,"value has a fractional component")}function F(e,t,n){D("number"==typeof e,"cannot write a non-number as a number"),D(e<=t,"value larger than maximum allowed value"),D(n<=e,"value smaller than minimum allowed value")}function D(e,t){if(!e)throw new Error(t||"Failed assertion")}g._augment=function(e){return e._isBuffer=!0,e._get=e.get,e._set=e.set,e.get=L.get,e.set=L.set,e.write=L.write,e.toString=L.toString,e.toLocaleString=L.toString,e.toJSON=L.toJSON,e.copy=L.copy,e.slice=L.slice,e.readUInt8=L.readUInt8,e.readUInt16LE=L.readUInt16LE,e.readUInt16BE=L.readUInt16BE,e.readUInt32LE=L.readUInt32LE,e.readUInt32BE=L.readUInt32BE,e.readInt8=L.readInt8,e.readInt16LE=L.readInt16LE,e.readInt16BE=L.readInt16BE,e.readInt32LE=L.readInt32LE,e.readInt32BE=L.readInt32BE,e.readFloatLE=L.readFloatLE,e.readFloatBE=L.readFloatBE,e.readDoubleLE=L.readDoubleLE,e.readDoubleBE=L.readDoubleBE,e.writeUInt8=L.writeUInt8,e.writeUInt16LE=L.writeUInt16LE,e.writeUInt16BE=L.writeUInt16BE,e.writeUInt32LE=L.writeUInt32LE,e.writeUInt32BE=L.writeUInt32BE,e.writeInt8=L.writeInt8,e.writeInt16LE=L.writeInt16LE,e.writeInt16BE=L.writeInt16BE,e.writeInt32LE=L.writeInt32LE,e.writeInt32BE=L.writeInt32BE,e.writeFloatLE=L.writeFloatLE,e.writeFloatBE=L.writeFloatBE,e.writeDoubleLE=L.writeDoubleLE,e.writeDoubleBE=L.writeDoubleBE,e.fill=L.fill,e.inspect=L.inspect,e.toArrayBuffer=L.toArrayBuffer,e}}).call(this,O("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},O("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/buffer/index.js","/node_modules/gulp-browserify/node_modules/buffer")},{"base64-js":2,buffer:3,ieee754:11,lYpoI2:10}],4:[function(l,d,e){(function(e,t,u,n,r,o,i,a,s){var u=l("buffer").Buffer,f=4,c=new u(f);c.fill(0);d.exports={hash:function(e,t,n,r){return u.isBuffer(e)||(e=new u(e)),function(e,t,n){for(var r=new u(t),o=n?r.writeInt32BE:r.writeInt32LE,i=0;i<e.length;i++)o.call(r,e[i],4*i,!0);return r}(t(function(e,t){var n;e.length%f!=0&&(n=e.length+(f-e.length%f),e=u.concat([e,c],n));for(var r=[],o=t?e.readInt32BE:e.readInt32LE,i=0;i<e.length;i+=f)r.push(o.call(e,i));return r}(e,r),8*e.length),n,r)}}}).call(this,l("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},l("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/helpers.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{buffer:3,lYpoI2:10}],5:[function(w,e,b){(function(e,t,a,n,r,o,i,u,s){var a=w("buffer").Buffer,f=w("./sha"),c=w("./sha256"),l=w("./rng"),d={sha1:f,sha256:c,md5:w("./md5")},h=64,p=new a(h);function g(e,r){var o=d[e=e||"sha1"],i=[];return o||y("algorithm:",e,"is not yet supported"),{update:function(e){return a.isBuffer(e)||(e=new a(e)),i.push(e),e.length,this},digest:function(e){var t=a.concat(i),n=r?function(e,t,n){a.isBuffer(t)||(t=new a(t)),a.isBuffer(n)||(n=new a(n)),t.length>h?t=e(t):t.length<h&&(t=a.concat([t,p],h));for(var r=new a(h),o=new a(h),i=0;i<h;i++)r[i]=54^t[i],o[i]=92^t[i];var u=e(a.concat([r,n]));return e(a.concat([o,u]))}(o,r,t):o(t);return i=null,e?n.toString(e):n}}}function y(){var e=[].slice.call(arguments).join(" ");throw new Error([e,"we accept pull requests","http://github.com/dominictarr/crypto-browserify"].join("\n"))}p.fill(0),b.createHash=function(e){return g(e)},b.createHmac=g,b.randomBytes=function(e,t){if(!t||!t.call)return new a(l(e));try{t.call(this,void 0,new a(l(e)))}catch(e){t(e)}},function(e,t){for(var n in e)t(e[n],n)}(["createCredentials","createCipher","createCipheriv","createDecipher","createDecipheriv","createSign","createVerify","createDiffieHellman","pbkdf2"],function(e){b[e]=function(){y("sorry,",e,"is not implemented yet")}})}).call(this,w("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},w("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/index.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./md5":6,"./rng":7,"./sha":8,"./sha256":9,buffer:3,lYpoI2:10}],6:[function(w,b,e){(function(e,t,n,r,o,i,u,a,s){var f=w("./helpers");function c(e,t){e[t>>5]|=128<<t%32,e[14+(t+64>>>9<<4)]=t;for(var n=1732584193,r=-271733879,o=-1732584194,i=271733878,u=0;u<e.length;u+=16){var a=n,s=r,f=o,c=i,n=d(n,r,o,i,e[u+0],7,-680876936),i=d(i,n,r,o,e[u+1],12,-389564586),o=d(o,i,n,r,e[u+2],17,606105819),r=d(r,o,i,n,e[u+3],22,-1044525330);n=d(n,r,o,i,e[u+4],7,-176418897),i=d(i,n,r,o,e[u+5],12,1200080426),o=d(o,i,n,r,e[u+6],17,-1473231341),r=d(r,o,i,n,e[u+7],22,-45705983),n=d(n,r,o,i,e[u+8],7,1770035416),i=d(i,n,r,o,e[u+9],12,-1958414417),o=d(o,i,n,r,e[u+10],17,-42063),r=d(r,o,i,n,e[u+11],22,-1990404162),n=d(n,r,o,i,e[u+12],7,1804603682),i=d(i,n,r,o,e[u+13],12,-40341101),o=d(o,i,n,r,e[u+14],17,-1502002290),n=h(n,r=d(r,o,i,n,e[u+15],22,1236535329),o,i,e[u+1],5,-165796510),i=h(i,n,r,o,e[u+6],9,-1069501632),o=h(o,i,n,r,e[u+11],14,643717713),r=h(r,o,i,n,e[u+0],20,-373897302),n=h(n,r,o,i,e[u+5],5,-701558691),i=h(i,n,r,o,e[u+10],9,38016083),o=h(o,i,n,r,e[u+15],14,-660478335),r=h(r,o,i,n,e[u+4],20,-405537848),n=h(n,r,o,i,e[u+9],5,568446438),i=h(i,n,r,o,e[u+14],9,-1019803690),o=h(o,i,n,r,e[u+3],14,-187363961),r=h(r,o,i,n,e[u+8],20,1163531501),n=h(n,r,o,i,e[u+13],5,-1444681467),i=h(i,n,r,o,e[u+2],9,-51403784),o=h(o,i,n,r,e[u+7],14,1735328473),n=p(n,r=h(r,o,i,n,e[u+12],20,-1926607734),o,i,e[u+5],4,-378558),i=p(i,n,r,o,e[u+8],11,-2022574463),o=p(o,i,n,r,e[u+11],16,1839030562),r=p(r,o,i,n,e[u+14],23,-35309556),n=p(n,r,o,i,e[u+1],4,-1530992060),i=p(i,n,r,o,e[u+4],11,1272893353),o=p(o,i,n,r,e[u+7],16,-155497632),r=p(r,o,i,n,e[u+10],23,-1094730640),n=p(n,r,o,i,e[u+13],4,681279174),i=p(i,n,r,o,e[u+0],11,-358537222),o=p(o,i,n,r,e[u+3],16,-722521979),r=p(r,o,i,n,e[u+6],23,76029189),n=p(n,r,o,i,e[u+9],4,-640364487),i=p(i,n,r,o,e[u+12],11,-421815835),o=p(o,i,n,r,e[u+15],16,530742520),n=g(n,r=p(r,o,i,n,e[u+2],23,-995338651),o,i,e[u+0],6,-198630844),i=g(i,n,r,o,e[u+7],10,1126891415),o=g(o,i,n,r,e[u+14],15,-1416354905),r=g(r,o,i,n,e[u+5],21,-57434055),n=g(n,r,o,i,e[u+12],6,1700485571),i=g(i,n,r,o,e[u+3],10,-1894986606),o=g(o,i,n,r,e[u+10],15,-1051523),r=g(r,o,i,n,e[u+1],21,-2054922799),n=g(n,r,o,i,e[u+8],6,1873313359),i=g(i,n,r,o,e[u+15],10,-30611744),o=g(o,i,n,r,e[u+6],15,-1560198380),r=g(r,o,i,n,e[u+13],21,1309151649),n=g(n,r,o,i,e[u+4],6,-145523070),i=g(i,n,r,o,e[u+11],10,-1120210379),o=g(o,i,n,r,e[u+2],15,718787259),r=g(r,o,i,n,e[u+9],21,-343485551),n=y(n,a),r=y(r,s),o=y(o,f),i=y(i,c)}return Array(n,r,o,i)}function l(e,t,n,r,o,i){return y((u=y(y(t,e),y(r,i)))<<(a=o)|u>>>32-a,n);var u,a}function d(e,t,n,r,o,i,u){return l(t&n|~t&r,e,t,o,i,u)}function h(e,t,n,r,o,i,u){return l(t&r|n&~r,e,t,o,i,u)}function p(e,t,n,r,o,i,u){return l(t^n^r,e,t,o,i,u)}function g(e,t,n,r,o,i,u){return l(n^(t|~r),e,t,o,i,u)}function y(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}b.exports=function(e){return f.hash(e,c,16)}}).call(this,w("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},w("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/md5.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:10}],7:[function(e,l,t){(function(e,t,n,r,o,i,u,a,s){var f,c;c=function(e){for(var t,n=new Array(e),r=0;r<e;r++)0==(3&r)&&(t=4294967296*Math.random()),n[r]=t>>>((3&r)<<3)&255;return n},l.exports=f||c}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/rng.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{buffer:3,lYpoI2:10}],8:[function(l,d,e){(function(e,t,n,r,o,i,u,a,s){var f=l("./helpers");function c(e,t){e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var n,r,o,i,u,a=Array(80),s=1732584193,f=-271733879,c=-1732584194,l=271733878,d=-1009589776,h=0;h<e.length;h+=16){for(var p=s,g=f,y=c,w=l,b=d,m=0;m<80;m++){a[m]=m<16?e[h+m]:E(a[m-3]^a[m-8]^a[m-14]^a[m-16],1);var v=_(_(E(s,5),(o=f,i=c,u=l,(r=m)<20?o&i|~o&u:!(r<40)&&r<60?o&i|o&u|i&u:o^i^u)),_(_(d,a[m]),(n=m)<20?1518500249:n<40?1859775393:n<60?-1894007588:-899497514)),d=l,l=c,c=E(f,30),f=s,s=v}s=_(s,p),f=_(f,g),c=_(c,y),l=_(l,w),d=_(d,b)}return Array(s,f,c,l,d)}function _(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function E(e,t){return e<<t|e>>>32-t}d.exports=function(e){return f.hash(e,c,20,!0)}}).call(this,l("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},l("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/sha.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:10}],9:[function(l,d,e){(function(e,t,n,r,o,i,u,a,s){function B(e,t){var n=(65535&e)+(65535&t);return(e>>16)+(t>>16)+(n>>16)<<16|65535&n}function L(e,t){return e>>>t|e<<32-t}function f(e,t){var n,r,o,i,u,a,s,f,c,l,d=new Array(1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298),h=new Array(1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225),p=new Array(64);e[t>>5]|=128<<24-t%32,e[15+(t+64>>9<<4)]=t;for(var g,y,w,b,m,v,_,E,I=0;I<e.length;I+=16){n=h[0],r=h[1],o=h[2],i=h[3],u=h[4],a=h[5],s=h[6],f=h[7];for(var A=0;A<64;A++)p[A]=A<16?e[A+I]:B(B(B((E=p[A-2],L(E,17)^L(E,19)^E>>>10),p[A-7]),(_=p[A-15],L(_,7)^L(_,18)^_>>>3)),p[A-16]),c=B(B(B(B(f,L(v=u,6)^L(v,11)^L(v,25)),(m=u)&a^~m&s),d[A]),p[A]),l=B(L(b=n,2)^L(b,13)^L(b,22),(g=n)&(y=r)^g&(w=o)^y&w),f=s,s=a,a=u,u=B(i,c),i=o,o=r,r=n,n=B(c,l);h[0]=B(n,h[0]),h[1]=B(r,h[1]),h[2]=B(o,h[2]),h[3]=B(i,h[3]),h[4]=B(u,h[4]),h[5]=B(a,h[5]),h[6]=B(s,h[6]),h[7]=B(f,h[7])}return h}var c=l("./helpers");d.exports=function(e){return c.hash(e,f,32,!0)}}).call(this,l("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},l("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/crypto-browserify/sha256.js","/node_modules/gulp-browserify/node_modules/crypto-browserify")},{"./helpers":4,buffer:3,lYpoI2:10}],10:[function(e,c,t){(function(e,t,n,r,o,i,u,a,s){function f(){}(e=c.exports={}).nextTick=function(){var e="undefined"!=typeof window&&window.setImmediate,t="undefined"!=typeof window&&window.postMessage&&window.addEventListener;if(e)return function(e){return window.setImmediate(e)};if(t){var n=[];return window.addEventListener("message",function(e){var t=e.source;t!==window&&null!==t||"process-tick"!==e.data||(e.stopPropagation(),0<n.length&&n.shift()())},!0),function(e){n.push(e),window.postMessage("process-tick","*")}}return function(e){setTimeout(e,0)}}(),e.title="browser",e.browser=!0,e.env={},e.argv=[],e.on=f,e.addListener=f,e.once=f,e.off=f,e.removeListener=f,e.removeAllListeners=f,e.emit=f,e.binding=function(e){throw new Error("process.binding is not supported")},e.cwd=function(){return"/"},e.chdir=function(e){throw new Error("process.chdir is not supported")}}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/gulp-browserify/node_modules/process/browser.js","/node_modules/gulp-browserify/node_modules/process")},{buffer:3,lYpoI2:10}],11:[function(e,t,f){(function(e,t,n,r,o,i,u,a,s){f.read=function(e,t,n,r,o){var i,u,a=8*o-r-1,s=(1<<a)-1,f=s>>1,c=-7,l=n?o-1:0,d=n?-1:1,h=e[t+l];for(l+=d,i=h&(1<<-c)-1,h>>=-c,c+=a;0<c;i=256*i+e[t+l],l+=d,c-=8);for(u=i&(1<<-c)-1,i>>=-c,c+=r;0<c;u=256*u+e[t+l],l+=d,c-=8);if(0===i)i=1-f;else{if(i===s)return u?NaN:1/0*(h?-1:1);u+=Math.pow(2,r),i-=f}return(h?-1:1)*u*Math.pow(2,i-r)},f.write=function(e,t,n,r,o,i){var u,a,s,f=8*i-o-1,c=(1<<f)-1,l=c>>1,d=23===o?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:i-1,p=r?1:-1,g=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(a=isNaN(t)?1:0,u=c):(u=Math.floor(Math.log(t)/Math.LN2),t*(s=Math.pow(2,-u))<1&&(u--,s*=2),2<=(t+=1<=u+l?d/s:d*Math.pow(2,1-l))*s&&(u++,s/=2),c<=u+l?(a=0,u=c):1<=u+l?(a=(t*s-1)*Math.pow(2,o),u+=l):(a=t*Math.pow(2,l-1)*Math.pow(2,o),u=0));8<=o;e[n+h]=255&a,h+=p,a/=256,o-=8);for(u=u<<o|a,f+=o;0<f;e[n+h]=255&u,h+=p,u/=256,f-=8);e[n+h-p]|=128*g}}).call(this,e("lYpoI2"),"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("buffer").Buffer,arguments[3],arguments[4],arguments[5],arguments[6],"/node_modules/ieee754/index.js","/node_modules/ieee754")},{buffer:3,lYpoI2:10}]},{},[1])(1)})}).call(this)}).call(this,typeof global!=="undefined"?global:typeof self!=="undefined"?self:typeof window!=="undefined"?window:{})},{}],132:[function(require,module,exports){var process=module.exports={};var cachedSetTimeout;var cachedClearTimeout;function defaultSetTimout(){throw new Error("setTimeout has not been defined")}function defaultClearTimeout(){throw new Error("clearTimeout has not been defined")}(function(){try{if(typeof setTimeout==="function"){cachedSetTimeout=setTimeout}else{cachedSetTimeout=defaultSetTimout}}catch(e){cachedSetTimeout=defaultSetTimout}try{if(typeof clearTimeout==="function"){cachedClearTimeout=clearTimeout}else{cachedClearTimeout=defaultClearTimeout}}catch(e){cachedClearTimeout=defaultClearTimeout}})();function runTimeout(fun){if(cachedSetTimeout===setTimeout){return setTimeout(fun,0)}if((cachedSetTimeout===defaultSetTimout||!cachedSetTimeout)&&setTimeout){cachedSetTimeout=setTimeout;return setTimeout(fun,0)}try{return cachedSetTimeout(fun,0)}catch(e){try{return cachedSetTimeout.call(null,fun,0)}catch(e){return cachedSetTimeout.call(this,fun,0)}}}function runClearTimeout(marker){if(cachedClearTimeout===clearTimeout){return clearTimeout(marker)}if((cachedClearTimeout===defaultClearTimeout||!cachedClearTimeout)&&clearTimeout){cachedClearTimeout=clearTimeout;return clearTimeout(marker)}try{return cachedClearTimeout(marker)}catch(e){try{return cachedClearTimeout.call(null,marker)}catch(e){return cachedClearTimeout.call(this,marker)}}}var queue=[];var draining=false;var currentQueue;var queueIndex=-1;function cleanUpNextTick(){if(!draining||!currentQueue){return}draining=false;if(currentQueue.length){queue=currentQueue.concat(queue)}else{queueIndex=-1}if(queue.length){drainQueue()}}function drainQueue(){if(draining){return}var timeout=runTimeout(cleanUpNextTick);draining=true;var len=queue.length;while(len){currentQueue=queue;queue=[];while(++queueIndex<len){if(currentQueue){currentQueue[queueIndex].run()}}queueIndex=-1;len=queue.length}currentQueue=null;draining=false;runClearTimeout(timeout)}process.nextTick=function(fun){var args=new Array(arguments.length-1);if(arguments.length>1){for(var i=1;i<arguments.length;i++){args[i-1]=arguments[i]}}queue.push(new Item(fun,args));if(queue.length===1&&!draining){runTimeout(drainQueue)}};function Item(fun,array){this.fun=fun;this.array=array}Item.prototype.run=function(){this.fun.apply(null,this.array)};process.title="browser";process.browser=true;process.env={};process.argv=[];process.version="";process.versions={};function noop(){}process.on=noop;process.addListener=noop;process.once=noop;process.off=noop;process.removeListener=noop;process.removeAllListeners=noop;process.emit=noop;process.prependListener=noop;process.prependOnceListener=noop;process.listeners=function(name){return[]};process.binding=function(name){throw new Error("process.binding is not supported")};process.cwd=function(){return"/"};process.chdir=function(dir){throw new Error("process.chdir is not supported")};process.umask=function(){return 0}},{}],133:[function(require,module,exports){!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.QRCodeStyling=e():t.QRCodeStyling=e()}(self,function(){return(()=>{var t={192:(t,e)=>{var r,n,o=function(){var t=function(t,e){var r=t,n=a[e],o=null,i=0,u=null,v=[],w={},m=function(t,e){o=function(t){for(var e=new Array(t),r=0;r<t;r+=1){e[r]=new Array(t);for(var n=0;n<t;n+=1)e[r][n]=null}return e}(i=4*r+17),b(0,0),b(i-7,0),b(0,i-7),x(),_(),M(t,e),r>=7&&S(t),null==u&&(u=A(r,n,v)),C(u,e)},b=function(t,e){for(var r=-1;r<=7;r+=1)if(!(t+r<=-1||i<=t+r))for(var n=-1;n<=7;n+=1)e+n<=-1||i<=e+n||(o[t+r][e+n]=0<=r&&r<=6&&(0==n||6==n)||0<=n&&n<=6&&(0==r||6==r)||2<=r&&r<=4&&2<=n&&n<=4)},_=function(){for(var t=8;t<i-8;t+=1)null==o[t][6]&&(o[t][6]=t%2==0);for(var e=8;e<i-8;e+=1)null==o[6][e]&&(o[6][e]=e%2==0)},x=function(){for(var t=s.getPatternPosition(r),e=0;e<t.length;e+=1)for(var n=0;n<t.length;n+=1){var i=t[e],a=t[n];if(null==o[i][a])for(var u=-2;u<=2;u+=1)for(var h=-2;h<=2;h+=1)o[i+u][a+h]=-2==u||2==u||-2==h||2==h||0==u&&0==h}},S=function(t){for(var e=s.getBCHTypeNumber(r),n=0;n<18;n+=1){var a=!t&&1==(e>>n&1);o[Math.floor(n/3)][n%3+i-8-3]=a}for(n=0;n<18;n+=1)a=!t&&1==(e>>n&1),o[n%3+i-8-3][Math.floor(n/3)]=a},M=function(t,e){for(var r=n<<3|e,a=s.getBCHTypeInfo(r),u=0;u<15;u+=1){var h=!t&&1==(a>>u&1);u<6?o[u][8]=h:u<8?o[u+1][8]=h:o[i-15+u][8]=h}for(u=0;u<15;u+=1)h=!t&&1==(a>>u&1),u<8?o[8][i-u-1]=h:u<9?o[8][15-u-1+1]=h:o[8][15-u-1]=h;o[i-8][8]=!t},C=function(t,e){for(var r=-1,n=i-1,a=7,u=0,h=s.getMaskFunction(e),c=i-1;c>0;c-=2)for(6==c&&(c-=1);;){for(var l=0;l<2;l+=1)if(null==o[n][c-l]){var d=!1;u<t.length&&(d=1==(t[u]>>>a&1)),h(n,c-l)&&(d=!d),o[n][c-l]=d,-1==(a-=1)&&(u+=1,a=7)}if((n+=r)<0||i<=n){n-=r,r=-r;break}}},A=function(t,e,r){for(var n=c.getRSBlocks(t,e),o=l(),i=0;i<r.length;i+=1){var a=r[i];o.put(a.getMode(),4),o.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(o)}var u=0;for(i=0;i<n.length;i+=1)u+=n[i].dataCount;if(o.getLengthInBits()>8*u)throw"code length overflow. ("+o.getLengthInBits()+">"+8*u+")";for(o.getLengthInBits()+4<=8*u&&o.put(0,4);o.getLengthInBits()%8!=0;)o.putBit(!1);for(;!(o.getLengthInBits()>=8*u||(o.put(236,8),o.getLengthInBits()>=8*u));)o.put(17,8);return function(t,e){for(var r=0,n=0,o=0,i=new Array(e.length),a=new Array(e.length),u=0;u<e.length;u+=1){var c=e[u].dataCount,l=e[u].totalCount-c;n=Math.max(n,c),o=Math.max(o,l),i[u]=new Array(c);for(var d=0;d<i[u].length;d+=1)i[u][d]=255&t.getBuffer()[d+r];r+=c;var f=s.getErrorCorrectPolynomial(l),g=h(i[u],f.getLength()-1).mod(f);for(a[u]=new Array(f.getLength()-1),d=0;d<a[u].length;d+=1){var p=d+g.getLength()-a[u].length;a[u][d]=p>=0?g.getAt(p):0}}var v=0;for(d=0;d<e.length;d+=1)v+=e[d].totalCount;var w=new Array(v),y=0;for(d=0;d<n;d+=1)for(u=0;u<e.length;u+=1)d<i[u].length&&(w[y]=i[u][d],y+=1);for(d=0;d<o;d+=1)for(u=0;u<e.length;u+=1)d<a[u].length&&(w[y]=a[u][d],y+=1);return w}(o,n)};w.addData=function(t,e){var r=null;switch(e=e||"Byte"){case"Numeric":r=d(t);break;case"Alphanumeric":r=f(t);break;case"Byte":r=g(t);break;case"Kanji":r=p(t);break;default:throw"mode:"+e}v.push(r),u=null},w.isDark=function(t,e){if(t<0||i<=t||e<0||i<=e)throw t+","+e;return o[t][e]},w.getModuleCount=function(){return i},w.make=function(){if(r<1){for(var t=1;t<40;t++){for(var e=c.getRSBlocks(t,n),o=l(),i=0;i<v.length;i++){var a=v[i];o.put(a.getMode(),4),o.put(a.getLength(),s.getLengthInBits(a.getMode(),t)),a.write(o)}var u=0;for(i=0;i<e.length;i++)u+=e[i].dataCount;if(o.getLengthInBits()<=8*u)break}r=t}m(!1,function(){for(var t=0,e=0,r=0;r<8;r+=1){m(!0,r);var n=s.getLostPoint(w);(0==r||t>n)&&(t=n,e=r)}return e}())},w.createTableTag=function(t,e){t=t||2;var r="";r+='<table style="',r+=" border-width: 0px; border-style: none;",r+=" border-collapse: collapse;",r+=" padding: 0px; margin: "+(e=void 0===e?4*t:e)+"px;",r+='">',r+="<tbody>";for(var n=0;n<w.getModuleCount();n+=1){r+="<tr>";for(var o=0;o<w.getModuleCount();o+=1)r+='<td style="',r+=" border-width: 0px; border-style: none;",r+=" border-collapse: collapse;",r+=" padding: 0px; margin: 0px;",r+=" width: "+t+"px;",r+=" height: "+t+"px;",r+=" background-color: ",r+=w.isDark(n,o)?"#000000":"#ffffff",r+=";",r+='"/>';r+="</tr>"}return(r+="</tbody>")+"</table>"},w.createSvgTag=function(t,e,r,n){var o={};"object"==typeof arguments[0]&&(t=(o=arguments[0]).cellSize,e=o.margin,r=o.alt,n=o.title),t=t||2,e=void 0===e?4*t:e,(r="string"==typeof r?{text:r}:r||{}).text=r.text||null,r.id=r.text?r.id||"qrcode-description":null,(n="string"==typeof n?{text:n}:n||{}).text=n.text||null,n.id=n.text?n.id||"qrcode-title":null;var i,a,s,u,h=w.getModuleCount()*t+2*e,c="";for(u="l"+t+",0 0,"+t+" -"+t+",0 0,-"+t+"z ",c+='<svg version="1.1" xmlns="http://www.w3.org/2000/svg"',c+=o.scalable?"":' width="'+h+'px" height="'+h+'px"',c+=' viewBox="0 0 '+h+" "+h+'" ',c+=' preserveAspectRatio="xMinYMin meet"',c+=n.text||r.text?' role="img" aria-labelledby="'+k([n.id,r.id].join(" ").trim())+'"':"",c+=">",c+=n.text?'<title id="'+k(n.id)+'">'+k(n.text)+"</title>":"",c+=r.text?'<description id="'+k(r.id)+'">'+k(r.text)+"</description>":"",c+='<rect width="100%" height="100%" fill="white" cx="0" cy="0"/>',c+='<path d="',a=0;a<w.getModuleCount();a+=1)for(s=a*t+e,i=0;i<w.getModuleCount();i+=1)w.isDark(a,i)&&(c+="M"+(i*t+e)+","+s+u);return(c+='" stroke="transparent" fill="black"/>')+"</svg>"},w.createDataURL=function(t,e){t=t||2,e=void 0===e?4*t:e;var r=w.getModuleCount()*t+2*e,n=e,o=r-e;return y(r,r,function(e,r){if(n<=e&&e<o&&n<=r&&r<o){var i=Math.floor((e-n)/t),a=Math.floor((r-n)/t);return w.isDark(a,i)?0:1}return 1})},w.createImgTag=function(t,e,r){t=t||2,e=void 0===e?4*t:e;var n=w.getModuleCount()*t+2*e,o="";return o+="<img",o+=' src="',o+=w.createDataURL(t,e),o+='"',o+=' width="',o+=n,o+='"',o+=' height="',o+=n,o+='"',r&&(o+=' alt="',o+=k(r),o+='"'),o+"/>"};var k=function(t){for(var e="",r=0;r<t.length;r+=1){var n=t.charAt(r);switch(n){case"<":e+="<";break;case">":e+=">";break;case"&":e+="&";break;case'"':e+=""";break;default:e+=n}}return e};return w.createASCII=function(t,e){if((t=t||1)<2)return function(t){t=void 0===t?2:t;var e,r,n,o,i,a=1*w.getModuleCount()+2*t,s=t,u=a-t,h={"██":"█","█ ":"▀"," █":"▄"," ":" "},c={"██":"▀","█ ":"▀"," █":" "," ":" "},l="";for(e=0;e<a;e+=2){for(n=Math.floor((e-s)/1),o=Math.floor((e+1-s)/1),r=0;r<a;r+=1)i="█",s<=r&&r<u&&s<=e&&e<u&&w.isDark(n,Math.floor((r-s)/1))&&(i=" "),s<=r&&r<u&&s<=e+1&&e+1<u&&w.isDark(o,Math.floor((r-s)/1))?i+=" ":i+="█",l+=t<1&&e+1>=u?c[i]:h[i];l+="\n"}return a%2&&t>0?l.substring(0,l.length-a-1)+Array(a+1).join("▀"):l.substring(0,l.length-1)}(e);t-=1,e=void 0===e?2*t:e;var r,n,o,i,a=w.getModuleCount()*t+2*e,s=e,u=a-e,h=Array(t+1).join("██"),c=Array(t+1).join(" "),l="",d="";for(r=0;r<a;r+=1){for(o=Math.floor((r-s)/t),d="",n=0;n<a;n+=1)i=1,s<=n&&n<u&&s<=r&&r<u&&w.isDark(o,Math.floor((n-s)/t))&&(i=0),d+=i?h:c;for(o=0;o<t;o+=1)l+=d+"\n"}return l.substring(0,l.length-1)},w.renderTo2dContext=function(t,e){e=e||2;for(var r=w.getModuleCount(),n=0;n<r;n++)for(var o=0;o<r;o++)t.fillStyle=w.isDark(n,o)?"black":"white",t.fillRect(n*e,o*e,e,e)},w};t.stringToBytes=(t.stringToBytesFuncs={default:function(t){for(var e=[],r=0;r<t.length;r+=1){var n=t.charCodeAt(r);e.push(255&n)}return e}}).default,t.createStringToBytes=function(t,e){var r=function(){for(var r=w(t),n=function(){var t=r.read();if(-1==t)throw"eof";return t},o=0,i={};;){var a=r.read();if(-1==a)break;var s=n(),u=n()<<8|n();i[String.fromCharCode(a<<8|s)]=u,o+=1}if(o!=e)throw o+" != "+e;return i}(),n="?".charCodeAt(0);return function(t){for(var e=[],o=0;o<t.length;o+=1){var i=t.charCodeAt(o);if(i<128)e.push(i);else{var a=r[t.charAt(o)];"number"==typeof a?(255&a)==a?e.push(a):(e.push(a>>>8),e.push(255&a)):e.push(n)}}return e}};var e,r,n,o,i,a={L:1,M:0,Q:3,H:2},s=(e=[[],[6,18],[6,22],[6,26],[6,30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26,48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,74,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112,138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,154],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,114,142,170]],r=1335,n=7973,i=function(t){for(var e=0;0!=t;)e+=1,t>>>=1;return e},(o={}).getBCHTypeInfo=function(t){for(var e=t<<10;i(e)-i(r)>=0;)e^=r<<i(e)-i(r);return 21522^(t<<10|e)},o.getBCHTypeNumber=function(t){for(var e=t<<12;i(e)-i(n)>=0;)e^=n<<i(e)-i(n);return t<<12|e},o.getPatternPosition=function(t){return e[t-1]},o.getMaskFunction=function(t){switch(t){case 0:return function(t,e){return(t+e)%2==0};case 1:return function(t,e){return t%2==0};case 2:return function(t,e){return e%3==0};case 3:return function(t,e){return(t+e)%3==0};case 4:return function(t,e){return(Math.floor(t/2)+Math.floor(e/3))%2==0};case 5:return function(t,e){return t*e%2+t*e%3==0};case 6:return function(t,e){return(t*e%2+t*e%3)%2==0};case 7:return function(t,e){return(t*e%3+(t+e)%2)%2==0};default:throw"bad maskPattern:"+t}},o.getErrorCorrectPolynomial=function(t){for(var e=h([1],0),r=0;r<t;r+=1)e=e.multiply(h([1,u.gexp(r)],0));return e},o.getLengthInBits=function(t,e){if(1<=e&&e<10)switch(t){case 1:return 10;case 2:return 9;case 4:case 8:return 8;default:throw"mode:"+t}else if(e<27)switch(t){case 1:return 12;case 2:return 11;case 4:return 16;case 8:return 10;default:throw"mode:"+t}else{if(!(e<41))throw"type:"+e;switch(t){case 1:return 14;case 2:return 13;case 4:return 16;case 8:return 12;default:throw"mode:"+t}}},o.getLostPoint=function(t){for(var e=t.getModuleCount(),r=0,n=0;n<e;n+=1)for(var o=0;o<e;o+=1){for(var i=0,a=t.isDark(n,o),s=-1;s<=1;s+=1)if(!(n+s<0||e<=n+s))for(var u=-1;u<=1;u+=1)o+u<0||e<=o+u||0==s&&0==u||a==t.isDark(n+s,o+u)&&(i+=1);i>5&&(r+=3+i-5)}for(n=0;n<e-1;n+=1)for(o=0;o<e-1;o+=1){var h=0;t.isDark(n,o)&&(h+=1),t.isDark(n+1,o)&&(h+=1),t.isDark(n,o+1)&&(h+=1),t.isDark(n+1,o+1)&&(h+=1),0!=h&&4!=h||(r+=3)}for(n=0;n<e;n+=1)for(o=0;o<e-6;o+=1)t.isDark(n,o)&&!t.isDark(n,o+1)&&t.isDark(n,o+2)&&t.isDark(n,o+3)&&t.isDark(n,o+4)&&!t.isDark(n,o+5)&&t.isDark(n,o+6)&&(r+=40);for(o=0;o<e;o+=1)for(n=0;n<e-6;n+=1)t.isDark(n,o)&&!t.isDark(n+1,o)&&t.isDark(n+2,o)&&t.isDark(n+3,o)&&t.isDark(n+4,o)&&!t.isDark(n+5,o)&&t.isDark(n+6,o)&&(r+=40);var c=0;for(o=0;o<e;o+=1)for(n=0;n<e;n+=1)t.isDark(n,o)&&(c+=1);return r+Math.abs(100*c/e/e-50)/5*10},o),u=function(){for(var t=new Array(256),e=new Array(256),r=0;r<8;r+=1)t[r]=1<<r;for(r=8;r<256;r+=1)t[r]=t[r-4]^t[r-5]^t[r-6]^t[r-8];for(r=0;r<255;r+=1)e[t[r]]=r;return{glog:function(t){if(t<1)throw"glog("+t+")";return e[t]},gexp:function(e){for(;e<0;)e+=255;for(;e>=256;)e-=255;return t[e]}}}();function h(t,e){if(void 0===t.length)throw t.length+"/"+e;var r=function(){for(var r=0;r<t.length&&0==t[r];)r+=1;for(var n=new Array(t.length-r+e),o=0;o<t.length-r;o+=1)n[o]=t[o+r];return n}(),n={getAt:function(t){return r[t]},getLength:function(){return r.length},multiply:function(t){for(var e=new Array(n.getLength()+t.getLength()-1),r=0;r<n.getLength();r+=1)for(var o=0;o<t.getLength();o+=1)e[r+o]^=u.gexp(u.glog(n.getAt(r))+u.glog(t.getAt(o)));return h(e,0)},mod:function(t){if(n.getLength()-t.getLength()<0)return n;for(var e=u.glog(n.getAt(0))-u.glog(t.getAt(0)),r=new Array(n.getLength()),o=0;o<n.getLength();o+=1)r[o]=n.getAt(o);for(o=0;o<t.getLength();o+=1)r[o]^=u.gexp(u.glog(t.getAt(o))+e);return h(r,0).mod(t)}};return n}var c=function(){var t=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,44,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,134,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,98,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19],[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,87,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22,4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43,15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4,64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54,24,7,55,25],[11,36,12,7,37,13],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,16],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1,151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,54,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74,46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3,147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,47,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19,45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,121,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,122],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,14,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[48,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,55,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,45,15,61,46,16]],e=function(t,e){var r={};return r.totalCount=t,r.dataCount=e,r},r={getRSBlocks:function(r,n){var o=function(e,r){switch(r){case a.L:return t[4*(e-1)+0];case a.M:return t[4*(e-1)+1];case a.Q:return t[4*(e-1)+2];case a.H:return t[4*(e-1)+3];default:return}}(r,n);if(void 0===o)throw"bad rs block @ typeNumber:"+r+"/errorCorrectionLevel:"+n;for(var i=o.length/3,s=[],u=0;u<i;u+=1)for(var h=o[3*u+0],c=o[3*u+1],l=o[3*u+2],d=0;d<h;d+=1)s.push(e(c,l));return s}};return r}(),l=function(){var t=[],e=0,r={getBuffer:function(){return t},getAt:function(e){var r=Math.floor(e/8);return 1==(t[r]>>>7-e%8&1)},put:function(t,e){for(var n=0;n<e;n+=1)r.putBit(1==(t>>>e-n-1&1))},getLengthInBits:function(){return e},putBit:function(r){var n=Math.floor(e/8);t.length<=n&&t.push(0),r&&(t[n]|=128>>>e%8),e+=1}};return r},d=function(t){var e=t,r={getMode:function(){return 1},getLength:function(t){return e.length},write:function(t){for(var r=e,o=0;o+2<r.length;)t.put(n(r.substring(o,o+3)),10),o+=3;o<r.length&&(r.length-o==1?t.put(n(r.substring(o,o+1)),4):r.length-o==2&&t.put(n(r.substring(o,o+2)),7))}},n=function(t){for(var e=0,r=0;r<t.length;r+=1)e=10*e+o(t.charAt(r));return e},o=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);throw"illegal char :"+t};return r},f=function(t){var e=t,r={getMode:function(){return 2},getLength:function(t){return e.length},write:function(t){for(var r=e,o=0;o+1<r.length;)t.put(45*n(r.charAt(o))+n(r.charAt(o+1)),11),o+=2;o<r.length&&t.put(n(r.charAt(o)),6)}},n=function(t){if("0"<=t&&t<="9")return t.charCodeAt(0)-"0".charCodeAt(0);if("A"<=t&&t<="Z")return t.charCodeAt(0)-"A".charCodeAt(0)+10;switch(t){case" ":return 36;case"$":return 37;case"%":return 38;case"*":return 39;case"+":return 40;case"-":return 41;case".":return 42;case"/":return 43;case":":return 44;default:throw"illegal char :"+t}};return r},g=function(e){var r=t.stringToBytes(e);return{getMode:function(){return 4},getLength:function(t){return r.length},write:function(t){for(var e=0;e<r.length;e+=1)t.put(r[e],8)}}},p=function(e){var r=t.stringToBytesFuncs.SJIS;if(!r)throw"sjis not supported.";!function(t,e){var n=r("友");if(2!=n.length||38726!=(n[0]<<8|n[1]))throw"sjis not supported."}();var n=r(e);return{getMode:function(){return 8},getLength:function(t){return~~(n.length/2)},write:function(t){for(var e=n,r=0;r+1<e.length;){var o=(255&e[r])<<8|255&e[r+1];if(33088<=o&&o<=40956)o-=33088;else{if(!(57408<=o&&o<=60351))throw"illegal char at "+(r+1)+"/"+o;o-=49472}o=192*(o>>>8&255)+(255&o),t.put(o,13),r+=2}if(r<e.length)throw"illegal char at "+(r+1)}}},v=function(){var t=[],e={writeByte:function(e){t.push(255&e)},writeShort:function(t){e.writeByte(t),e.writeByte(t>>>8)},writeBytes:function(t,r,n){r=r||0,n=n||t.length;for(var o=0;o<n;o+=1)e.writeByte(t[o+r])},writeString:function(t){for(var r=0;r<t.length;r+=1)e.writeByte(t.charCodeAt(r))},toByteArray:function(){return t},toString:function(){var e="";e+="[";for(var r=0;r<t.length;r+=1)r>0&&(e+=","),e+=t[r];return e+"]"}};return e},w=function(t){var e=t,r=0,n=0,o=0,i={read:function(){for(;o<8;){if(r>=e.length){if(0==o)return-1;throw"unexpected end of file./"+o}var t=e.charAt(r);if(r+=1,"="==t)return o=0,-1;t.match(/^\s$/)||(n=n<<6|a(t.charCodeAt(0)),o+=6)}var i=n>>>o-8&255;return o-=8,i}},a=function(t){if(65<=t&&t<=90)return t-65;if(97<=t&&t<=122)return t-97+26;if(48<=t&&t<=57)return t-48+52;if(43==t)return 62;if(47==t)return 63;throw"c:"+t};return i},y=function(t,e,r){for(var n=function(t,e){var r=t,n=e,o=new Array(t*e),i={setPixel:function(t,e,n){o[e*r+t]=n},write:function(t){t.writeString("GIF87a"),t.writeShort(r),t.writeShort(n),t.writeByte(128),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(0),t.writeByte(255),t.writeByte(255),t.writeByte(255),t.writeString(","),t.writeShort(0),t.writeShort(0),t.writeShort(r),t.writeShort(n),t.writeByte(0);var e=a(2);t.writeByte(2);for(var o=0;e.length-o>255;)t.writeByte(255),t.writeBytes(e,o,255),o+=255;t.writeByte(e.length-o),t.writeBytes(e,o,e.length-o),t.writeByte(0),t.writeString(";")}},a=function(t){for(var e=1<<t,r=1+(1<<t),n=t+1,i=s(),a=0;a<e;a+=1)i.add(String.fromCharCode(a));i.add(String.fromCharCode(e)),i.add(String.fromCharCode(r));var u,h,c,l=v(),d=(u=l,h=0,c=0,{write:function(t,e){if(t>>>e!=0)throw"length over";for(;h+e>=8;)u.writeByte(255&(t<<h|c)),e-=8-h,t>>>=8-h,c=0,h=0;c|=t<<h,h+=e},flush:function(){h>0&&u.writeByte(c)}});d.write(e,n);var f=0,g=String.fromCharCode(o[f]);for(f+=1;f<o.length;){var p=String.fromCharCode(o[f]);f+=1,i.contains(g+p)?g+=p:(d.write(i.indexOf(g),n),i.size()<4095&&(i.size()==1<<n&&(n+=1),i.add(g+p)),g=p)}return d.write(i.indexOf(g),n),d.write(r,n),d.flush(),l.toByteArray()},s=function(){var t={},e=0,r={add:function(n){if(r.contains(n))throw"dup key:"+n;t[n]=e,e+=1},size:function(){return e},indexOf:function(e){return t[e]},contains:function(e){return void 0!==t[e]}};return r};return i}(t,e),o=0;o<e;o+=1)for(var i=0;i<t;i+=1)n.setPixel(i,o,r(i,o));var a=v();n.write(a);for(var s=function(){var t=0,e=0,r=0,n="",o={},i=function(t){n+=String.fromCharCode(a(63&t))},a=function(t){if(t<0);else{if(t<26)return 65+t;if(t<52)return t-26+97;if(t<62)return t-52+48;if(62==t)return 43;if(63==t)return 47}throw"n:"+t};return o.writeByte=function(n){for(t=t<<8|255&n,e+=8,r+=1;e>=6;)i(t>>>e-6),e-=6},o.flush=function(){if(e>0&&(i(t<<6-e),t=0,e=0),r%3!=0)for(var o=3-r%3,a=0;a<o;a+=1)n+="="},o.toString=function(){return n},o}(),u=a.toByteArray(),h=0;h<u.length;h+=1)s.writeByte(u[h]);return s.flush(),"data:image/gif;base64,"+s};return t}();o.stringToBytesFuncs["UTF-8"]=function(t){return function(t){for(var e=[],r=0;r<t.length;r++){var n=t.charCodeAt(r);n<128?e.push(n):n<2048?e.push(192|n>>6,128|63&n):n<55296||n>=57344?e.push(224|n>>12,128|n>>6&63,128|63&n):(r++,n=65536+((1023&n)<<10|1023&t.charCodeAt(r)),e.push(240|n>>18,128|n>>12&63,128|n>>6&63,128|63&n))}return e}(t)},void 0===(n="function"==typeof(r=function(){return o})?r.apply(e,[]):r)||(t.exports=n)},676:(t,e,r)=>{"use strict";r.d(e,{default:()=>q});var n=function(){return(n=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)},o=function(){for(var t=0,e=0,r=arguments.length;e<r;e++)t+=arguments[e].length;var n=Array(t),o=0;for(e=0;e<r;e++)for(var i=arguments[e],a=0,s=i.length;a<s;a++,o++)n[o]=i[a];return n},i=function(t){return!!t&&"object"==typeof t&&!Array.isArray(t)};function a(t){for(var e=[],r=1;r<arguments.length;r++)e[r-1]=arguments[r];if(!e.length)return t;var s=e.shift();return void 0!==s&&i(t)&&i(s)?(t=n({},t),Object.keys(s).forEach(function(e){var r=t[e],n=s[e];Array.isArray(r)&&Array.isArray(n)?t[e]=n:i(r)&&i(n)?t[e]=a(Object.assign({},r),n):t[e]=n}),a.apply(void 0,o([t],e))):t}function s(t,e){var r=document.createElement("a");r.download=e,r.href=t,document.body.appendChild(r),r.click(),document.body.removeChild(r)}function u(t){return e=this,r=void 0,o=function(){return function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}}(this,function(e){return[2,new Promise(function(e){var r=new XMLHttpRequest;r.onload=function(){var t=new FileReader;t.onloadend=function(){e(t.result)},t.readAsDataURL(r.response)},r.open("GET",t),r.responseType="blob",r.send()})]})},new((n=void 0)||(n=Promise))(function(t,i){function a(t){try{u(o.next(t))}catch(t){i(t)}}function s(t){try{u(o.throw(t))}catch(t){i(t)}}function u(e){var r;e.done?t(e.value):(r=e.value,r instanceof n?r:new n(function(t){t(r)})).then(a,s)}u((o=o.apply(e,r||[])).next())});var e,r,n,o}const h={L:.07,M:.15,Q:.25,H:.3};var c=function(){return(c=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};const l=function(){function t(t){var e=t.svg,r=t.type;this._svg=e,this._type=r}return t.prototype.draw=function(t,e,r,n){var o;switch(this._type){case"dots":o=this._drawDot;break;case"classy":o=this._drawClassy;break;case"classy-rounded":o=this._drawClassyRounded;break;case"rounded":o=this._drawRounded;break;case"extra-rounded":o=this._drawExtraRounded;break;case"square":default:o=this._drawSquare}o.call(this,{x:t,y:e,size:r,getNeighbor:n})},t.prototype._rotateFigure=function(t){var e,r=t.x,n=t.y,o=t.size,i=t.rotation,a=void 0===i?0:i,s=r+o/2,u=n+o/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(n+r/2)),e._element.setAttribute("cy",String(o+r/2)),e._element.setAttribute("r",String(r/2))}}))},t.prototype._basicSquare=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(n)),e._element.setAttribute("y",String(o)),e._element.setAttribute("width",String(r)),e._element.setAttribute("height",String(r))}}))},t.prototype._basicSideRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r/2+"a "+r/2+" "+r/2+", 0, 0, 0, 0 "+-r)}}))},t.prototype._basicCornerRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r+"v "+-r/2+"a "+r/2+" "+r/2+", 0, 0, 0, "+-r/2+" "+-r/2)}}))},t.prototype._basicCornerExtraRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r+"a "+r+" "+r+", 0, 0, 0, "+-r+" "+-r)}}))},t.prototype._basicCornersRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(c(c({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("d","M "+n+" "+o+"v "+r/2+"a "+r/2+" "+r/2+", 0, 0, 0, "+r/2+" "+r/2+"h "+r/2+"v "+-r/2+"a "+r/2+" "+r/2+", 0, 0, 0, "+-r/2+" "+-r/2)}}))},t.prototype._drawDot=function(t){var e=t.x,r=t.y,n=t.size;this._basicDot({x:e,y:r,size:n,rotation:0})},t.prototype._drawSquare=function(t){var e=t.x,r=t.y,n=t.size;this._basicSquare({x:e,y:r,size:n,rotation:0})},t.prototype._drawRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0,h=i+a+s+u;if(0!==h)if(h>2||i&&a||s&&u)this._basicSquare({x:e,y:r,size:n,rotation:0});else{if(2===h){var c=0;return i&&s?c=Math.PI/2:s&&a?c=Math.PI:a&&u&&(c=-Math.PI/2),void this._basicCornerRounded({x:e,y:r,size:n,rotation:c})}if(1===h)return c=0,s?c=Math.PI/2:a?c=Math.PI:u&&(c=-Math.PI/2),void this._basicSideRounded({x:e,y:r,size:n,rotation:c})}else this._basicDot({x:e,y:r,size:n,rotation:0})},t.prototype._drawExtraRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0,h=i+a+s+u;if(0!==h)if(h>2||i&&a||s&&u)this._basicSquare({x:e,y:r,size:n,rotation:0});else{if(2===h){var c=0;return i&&s?c=Math.PI/2:s&&a?c=Math.PI:a&&u&&(c=-Math.PI/2),void this._basicCornerExtraRounded({x:e,y:r,size:n,rotation:c})}if(1===h)return c=0,s?c=Math.PI/2:a?c=Math.PI:u&&(c=-Math.PI/2),void this._basicSideRounded({x:e,y:r,size:n,rotation:c})}else this._basicDot({x:e,y:r,size:n,rotation:0})},t.prototype._drawClassy=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0;0!==i+a+s+u?i||s?a||u?this._basicSquare({x:e,y:r,size:n,rotation:0}):this._basicCornerRounded({x:e,y:r,size:n,rotation:Math.PI/2}):this._basicCornerRounded({x:e,y:r,size:n,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:r,size:n,rotation:Math.PI/2})},t.prototype._drawClassyRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.getNeighbor,i=o?+o(-1,0):0,a=o?+o(1,0):0,s=o?+o(0,-1):0,u=o?+o(0,1):0;0!==i+a+s+u?i||s?a||u?this._basicSquare({x:e,y:r,size:n,rotation:0}):this._basicCornerExtraRounded({x:e,y:r,size:n,rotation:Math.PI/2}):this._basicCornerExtraRounded({x:e,y:r,size:n,rotation:-Math.PI/2}):this._basicCornersRounded({x:e,y:r,size:n,rotation:Math.PI/2})},t}();var d=function(){return(d=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};const f=function(){function t(t){var e=t.svg,r=t.type;this._svg=e,this._type=r}return t.prototype.draw=function(t,e,r,n){var o;switch(this._type){case"square":o=this._drawSquare;break;case"extra-rounded":o=this._drawExtraRounded;break;case"dot":default:o=this._drawDot}o.call(this,{x:t,y:e,size:r,rotation:n})},t.prototype._rotateFigure=function(t){var e,r=t.x,n=t.y,o=t.size,i=t.rotation,a=void 0===i?0:i,s=r+o/2,u=n+o/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,r=t.size,n=t.x,o=t.y,i=r/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+(n+r/2)+" "+o+"a "+r/2+" "+r/2+" 0 1 0 0.1 0zm 0 "+i+"a "+(r/2-i)+" "+(r/2-i)+" 0 1 1 -0.1 0Z")}}))},t.prototype._basicSquare=function(t){var e=this,r=t.size,n=t.x,o=t.y,i=r/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+n+" "+o+"v "+r+"h "+r+"v "+-r+"zM "+(n+i)+" "+(o+i)+"h "+(r-2*i)+"v "+(r-2*i)+"h "+(2*i-r)+"z")}}))},t.prototype._basicExtraRounded=function(t){var e=this,r=t.size,n=t.x,o=t.y,i=r/7;this._rotateFigure(d(d({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","path"),e._element.setAttribute("clip-rule","evenodd"),e._element.setAttribute("d","M "+n+" "+(o+2.5*i)+"v "+2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*i+" "+2.5*i+"h "+2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*i+" "+2.5*-i+"v "+-2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*-i+" "+2.5*-i+"h "+-2*i+"a "+2.5*i+" "+2.5*i+", 0, 0, 0, "+2.5*-i+" "+2.5*i+"M "+(n+2.5*i)+" "+(o+i)+"h "+2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*i+" "+1.5*i+"v "+2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*-i+" "+1.5*i+"h "+-2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*-i+" "+1.5*-i+"v "+-2*i+"a "+1.5*i+" "+1.5*i+", 0, 0, 1, "+1.5*i+" "+1.5*-i)}}))},t.prototype._drawDot=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicDot({x:e,y:r,size:n,rotation:o})},t.prototype._drawSquare=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicSquare({x:e,y:r,size:n,rotation:o})},t.prototype._drawExtraRounded=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicExtraRounded({x:e,y:r,size:n,rotation:o})},t}();var g=function(){return(g=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};const p=function(){function t(t){var e=t.svg,r=t.type;this._svg=e,this._type=r}return t.prototype.draw=function(t,e,r,n){var o;switch(this._type){case"square":o=this._drawSquare;break;case"dot":default:o=this._drawDot}o.call(this,{x:t,y:e,size:r,rotation:n})},t.prototype._rotateFigure=function(t){var e,r=t.x,n=t.y,o=t.size,i=t.rotation,a=void 0===i?0:i,s=r+o/2,u=n+o/2;(0,t.draw)(),null===(e=this._element)||void 0===e||e.setAttribute("transform","rotate("+180*a/Math.PI+","+s+","+u+")")},t.prototype._basicDot=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(g(g({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","circle"),e._element.setAttribute("cx",String(n+r/2)),e._element.setAttribute("cy",String(o+r/2)),e._element.setAttribute("r",String(r/2))}}))},t.prototype._basicSquare=function(t){var e=this,r=t.size,n=t.x,o=t.y;this._rotateFigure(g(g({},t),{draw:function(){e._element=document.createElementNS("http://www.w3.org/2000/svg","rect"),e._element.setAttribute("x",String(n)),e._element.setAttribute("y",String(o)),e._element.setAttribute("width",String(r)),e._element.setAttribute("height",String(r))}}))},t.prototype._drawDot=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicDot({x:e,y:r,size:n,rotation:o})},t.prototype._drawSquare=function(t){var e=t.x,r=t.y,n=t.size,o=t.rotation;this._basicSquare({x:e,y:r,size:n,rotation:o})},t}(),v="circle";var w=function(t,e,r,n){return new(r||(r=Promise))(function(o,i){function a(t){try{u(n.next(t))}catch(t){i(t)}}function s(t){try{u(n.throw(t))}catch(t){i(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r(function(t){t(e)})).then(a,s)}u((n=n.apply(t,e||[])).next())})},y=function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}},m=[[1,1,1,1,1,1,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,0,0,0,0,0,1],[1,1,1,1,1,1,1]],b=[[0,0,0,0,0,0,0],[0,0,0,0,0,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,1,1,1,0,0],[0,0,0,0,0,0,0],[0,0,0,0,0,0,0]];const _=function(){function t(t){this._element=document.createElementNS("http://www.w3.org/2000/svg","svg"),this._element.setAttribute("width",String(t.width)),this._element.setAttribute("height",String(t.height)),this._defs=document.createElementNS("http://www.w3.org/2000/svg","defs"),this._element.appendChild(this._defs),this._options=t}return Object.defineProperty(t.prototype,"width",{get:function(){return this._options.width},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"height",{get:function(){return this._options.height},enumerable:!1,configurable:!0}),t.prototype.getElement=function(){return this._element},t.prototype.drawQR=function(t){return w(this,void 0,void 0,function(){var e,r,n,o,i,a,s,u,c,l,d=this;return y(this,function(f){switch(f.label){case 0:return e=t.getModuleCount(),r=Math.min(this._options.width,this._options.height)-2*this._options.margin,n=this._options.shape===v?r/Math.sqrt(2):r,o=Math.floor(n/e),i={hideXDots:0,hideYDots:0,width:0,height:0},this._qr=t,this._options.image?[4,this.loadImage()]:[3,2];case 1:if(f.sent(),!this._image)return[2];a=this._options,s=a.imageOptions,u=a.qrOptions,c=s.imageSize*h[u.errorCorrectionLevel],l=Math.floor(c*e*e),i=function(t){var e=t.originalHeight,r=t.originalWidth,n=t.maxHiddenDots,o=t.maxHiddenAxisDots,i=t.dotSize,a={x:0,y:0},s={x:0,y:0};if(e<=0||r<=0||n<=0||i<=0)return{height:0,width:0,hideYDots:0,hideXDots:0};var u=e/r;return a.x=Math.floor(Math.sqrt(n/u)),a.x<=0&&(a.x=1),o&&o<a.x&&(a.x=o),a.x%2==0&&a.x--,s.x=a.x*i,a.y=1+2*Math.ceil((a.x*u-1)/2),s.y=Math.round(s.x*u),(a.y*a.x>n||o&&o<a.y)&&(o&&o<a.y?(a.y=o,a.y%2==0&&a.x--):a.y-=2,s.y=a.y*i,a.x=1+2*Math.ceil((a.y/u-1)/2),s.x=Math.round(s.y/u)),{height:s.y,width:s.x,hideYDots:a.y,hideXDots:a.x}}({originalWidth:this._image.width,originalHeight:this._image.height,maxHiddenDots:l,maxHiddenAxisDots:e-14,dotSize:o}),f.label=2;case 2:return this.drawBackground(),this.drawDots(function(t,r){var n,o,a,s,u,h;return!(d._options.imageOptions.hideBackgroundDots&&t>=(e-i.hideXDots)/2&&t<(e+i.hideXDots)/2&&r>=(e-i.hideYDots)/2&&r<(e+i.hideYDots)/2||(null===(n=m[t])||void 0===n?void 0:n[r])||(null===(o=m[t-e+7])||void 0===o?void 0:o[r])||(null===(a=m[t])||void 0===a?void 0:a[r-e+7])||(null===(s=b[t])||void 0===s?void 0:s[r])||(null===(u=b[t-e+7])||void 0===u?void 0:u[r])||(null===(h=b[t])||void 0===h?void 0:h[r-e+7]))}),this.drawCorners(),this._options.image?[4,this.drawImage({width:i.width,height:i.height,count:e,dotSize:o})]:[3,4];case 3:f.sent(),f.label=4;case 4:return[2]}})})},t.prototype.drawBackground=function(){var t,e,r,n=this._element,o=this._options;if(n){var i=null===(t=o.backgroundOptions)||void 0===t?void 0:t.gradient,a=null===(e=o.backgroundOptions)||void 0===e?void 0:e.color;if((i||a)&&this._createColor({options:i,color:a,additionalRotation:0,x:0,y:0,height:o.height,width:o.width,name:"background-color"}),null===(r=o.backgroundOptions)||void 0===r?void 0:r.round){var s=Math.min(o.width,o.height),u=document.createElementNS("http://www.w3.org/2000/svg","rect");this._backgroundClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._backgroundClipPath.setAttribute("id","clip-path-background-color"),this._defs.appendChild(this._backgroundClipPath),u.setAttribute("x",String((o.width-s)/2)),u.setAttribute("y",String((o.height-s)/2)),u.setAttribute("width",String(s)),u.setAttribute("height",String(s)),u.setAttribute("rx",String(s/2*o.backgroundOptions.round)),this._backgroundClipPath.appendChild(u)}}},t.prototype.drawDots=function(t){var e,r,n=this;if(!this._qr)throw"QR code is not defined";var o=this._options,i=this._qr.getModuleCount();if(i>o.width||i>o.height)throw"The canvas is too small.";var a=Math.min(o.width,o.height)-2*o.margin,s=o.shape===v?a/Math.sqrt(2):a,u=Math.floor(s/i),h=Math.floor((o.width-i*u)/2),c=Math.floor((o.height-i*u)/2),d=new l({svg:this._element,type:o.dotsOptions.type});this._dotsClipPath=document.createElementNS("http://www.w3.org/2000/svg","clipPath"),this._dotsClipPath.setAttribute("id","clip-path-dot-color"),this._defs.appendChild(this._dotsClipPath),this._createColor({options:null===(e=o.dotsOptions)||void 0===e?void 0:e.gradient,color:o.dotsOptions.color,additionalRotation:0,x:0,y:0,height:o.height,width:o.width,name:"dot-color"});for(var f=function(e){for(var o=function(o){return t&&!t(e,o)?"continue":(null===(r=g._qr)||void 0===r?void 0:r.isDark(e,o))?(d.draw(h+e*u,c+o*u,u,function(r,a){return!(e+r<0||o+a<0||e+r>=i||o+a>=i)&&!(t&&!t(e+r,o+a))&&!!n._qr&&n._qr.isDark(e+r,o+a)}),void(d._element&&g._dotsClipPath&&g._dotsClipPath.appendChild(d._element))):"continue"},a=0;a<i;a++)o(a)},g=this,p=0;p<i;p++)f(p);if(o.shape===v){var w=Math.floor((a/u-i)/2),y=i+2*w,m=h-w*u,b=c-w*u,_=[],x=Math.floor(y/2);for(p=0;p<y;p++){_[p]=[];for(var S=0;S<y;S++)p>=w-1&&p<=y-w&&S>=w-1&&S<=y-w||Math.sqrt((p-x)*(p-x)+(S-x)*(S-x))>x?_[p][S]=0:_[p][S]=this._qr.isDark(S-2*w<0?S:S>=i?S-2*w:S-w,p-2*w<0?p:p>=i?p-2*w:p-w)?1:0}var M=function(t){for(var e=function(e){if(!_[t][e])return"continue";d.draw(m+t*u,b+e*u,u,function(r,n){var o;return!!(null===(o=_[t+r])||void 0===o?void 0:o[e+n])}),d._element&&C._dotsClipPath&&C._dotsClipPath.appendChild(d._element)},r=0;r<y;r++)e(r)},C=this;for(p=0;p<y;p++)M(p)}},t.prototype.drawCorners=function(){var t=this;if(!this._qr)throw"QR code is not defined";var e=this._element,r=this._options;if(!e)throw"Element code is not defined";var n=this._qr.getModuleCount(),o=Math.min(r.width,r.height)-2*r.margin,i=r.shape===v?o/Math.sqrt(2):o,a=Math.floor(i/n),s=7*a,u=3*a,h=Math.floor((r.width-n*a)/2),c=Math.floor((r.height-n*a)/2);[[0,0,0],[1,0,Math.PI/2],[0,1,-Math.PI/2]].forEach(function(e){var o,i,d,g,v,w,y,_,x,S,M,C,A=e[0],k=e[1],O=e[2],D=h+A*a*(n-7),P=c+k*a*(n-7),z=t._dotsClipPath,B=t._dotsClipPath;if(((null===(o=r.cornersSquareOptions)||void 0===o?void 0:o.gradient)||(null===(i=r.cornersSquareOptions)||void 0===i?void 0:i.color))&&((z=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-square-color-"+A+"-"+k),t._defs.appendChild(z),t._cornersSquareClipPath=t._cornersDotClipPath=B=z,t._createColor({options:null===(d=r.cornersSquareOptions)||void 0===d?void 0:d.gradient,color:null===(g=r.cornersSquareOptions)||void 0===g?void 0:g.color,additionalRotation:O,x:D,y:P,height:s,width:s,name:"corners-square-color-"+A+"-"+k})),null===(v=r.cornersSquareOptions)||void 0===v?void 0:v.type){var q=new f({svg:t._element,type:r.cornersSquareOptions.type});q.draw(D,P,s,O),q._element&&z&&z.appendChild(q._element)}else for(var I=new l({svg:t._element,type:r.dotsOptions.type}),E=function(t){for(var e=function(e){if(!(null===(w=m[t])||void 0===w?void 0:w[e]))return"continue";I.draw(D+t*a,P+e*a,a,function(r,n){var o;return!!(null===(o=m[t+r])||void 0===o?void 0:o[e+n])}),I._element&&z&&z.appendChild(I._element)},r=0;r<m[t].length;r++)e(r)},L=0;L<m.length;L++)E(L);if(((null===(y=r.cornersDotOptions)||void 0===y?void 0:y.gradient)||(null===(_=r.cornersDotOptions)||void 0===_?void 0:_.color))&&((B=document.createElementNS("http://www.w3.org/2000/svg","clipPath")).setAttribute("id","clip-path-corners-dot-color-"+A+"-"+k),t._defs.appendChild(B),t._cornersDotClipPath=B,t._createColor({options:null===(x=r.cornersDotOptions)||void 0===x?void 0:x.gradient,color:null===(S=r.cornersDotOptions)||void 0===S?void 0:S.color,additionalRotation:O,x:D+2*a,y:P+2*a,height:u,width:u,name:"corners-dot-color-"+A+"-"+k})),null===(M=r.cornersDotOptions)||void 0===M?void 0:M.type){var R=new p({svg:t._element,type:r.cornersDotOptions.type});R.draw(D+2*a,P+2*a,u,O),R._element&&B&&B.appendChild(R._element)}else{I=new l({svg:t._element,type:r.dotsOptions.type});var N=function(t){for(var e=function(e){if(!(null===(C=b[t])||void 0===C?void 0:C[e]))return"continue";I.draw(D+t*a,P+e*a,a,function(r,n){var o;return!!(null===(o=b[t+r])||void 0===o?void 0:o[e+n])}),I._element&&B&&B.appendChild(I._element)},r=0;r<b[t].length;r++)e(r)};for(L=0;L<b.length;L++)N(L)}})},t.prototype.loadImage=function(){var t=this;return new Promise(function(e,r){var n=t._options,o=new Image;if(!n.image)return r("Image is not defined");"string"==typeof n.imageOptions.crossOrigin&&(o.crossOrigin=n.imageOptions.crossOrigin),t._image=o,o.onload=function(){e()},o.src=n.image})},t.prototype.drawImage=function(t){var e=t.width,r=t.height,n=t.count,o=t.dotSize;return w(this,void 0,void 0,function(){var t,i,a,s,h,c,l,d,f;return y(this,function(g){switch(g.label){case 0:return t=this._options,i=Math.floor((t.width-n*o)/2),a=Math.floor((t.height-n*o)/2),s=i+t.imageOptions.margin+(n*o-e)/2,h=a+t.imageOptions.margin+(n*o-r)/2,c=e-2*t.imageOptions.margin,l=r-2*t.imageOptions.margin,(d=document.createElementNS("http://www.w3.org/2000/svg","image")).setAttribute("x",String(s)),d.setAttribute("y",String(h)),d.setAttribute("width",c+"px"),d.setAttribute("height",l+"px"),[4,u(t.image||"")];case 1:return f=g.sent(),d.setAttribute("href",f||""),this._element.appendChild(d),[2]}})})},t.prototype._createColor=function(t){var e=t.options,r=t.color,n=t.additionalRotation,o=t.x,i=t.y,a=t.height,s=t.width,u=t.name,h=s>a?s:a,c=document.createElementNS("http://www.w3.org/2000/svg","rect");if(c.setAttribute("x",String(o)),c.setAttribute("y",String(i)),c.setAttribute("height",String(a)),c.setAttribute("width",String(s)),c.setAttribute("clip-path","url('#clip-path-"+u+"')"),e){var l;if("radial"===e.type)(l=document.createElementNS("http://www.w3.org/2000/svg","radialGradient")).setAttribute("id",u),l.setAttribute("gradientUnits","userSpaceOnUse"),l.setAttribute("fx",String(o+s/2)),l.setAttribute("fy",String(i+a/2)),l.setAttribute("cx",String(o+s/2)),l.setAttribute("cy",String(i+a/2)),l.setAttribute("r",String(h/2));else{var d=((e.rotation||0)+n)%(2*Math.PI),f=(d+2*Math.PI)%(2*Math.PI),g=o+s/2,p=i+a/2,v=o+s/2,w=i+a/2;f>=0&&f<=.25*Math.PI||f>1.75*Math.PI&&f<=2*Math.PI?(g-=s/2,p-=a/2*Math.tan(d),v+=s/2,w+=a/2*Math.tan(d)):f>.25*Math.PI&&f<=.75*Math.PI?(p-=a/2,g-=s/2/Math.tan(d),w+=a/2,v+=s/2/Math.tan(d)):f>.75*Math.PI&&f<=1.25*Math.PI?(g+=s/2,p+=a/2*Math.tan(d),v-=s/2,w-=a/2*Math.tan(d)):f>1.25*Math.PI&&f<=1.75*Math.PI&&(p+=a/2,g+=s/2/Math.tan(d),w-=a/2,v-=s/2/Math.tan(d)),(l=document.createElementNS("http://www.w3.org/2000/svg","linearGradient")).setAttribute("id",u),l.setAttribute("gradientUnits","userSpaceOnUse"),l.setAttribute("x1",String(Math.round(g))),l.setAttribute("y1",String(Math.round(p))),l.setAttribute("x2",String(Math.round(v))),l.setAttribute("y2",String(Math.round(w)))}e.colorStops.forEach(function(t){var e=t.offset,r=t.color,n=document.createElementNS("http://www.w3.org/2000/svg","stop");n.setAttribute("offset",100*e+"%"),n.setAttribute("stop-color",r),l.appendChild(n)}),c.setAttribute("fill","url('#"+u+"')"),this._defs.appendChild(l)}else r&&c.setAttribute("fill",r);this._element.appendChild(c)},t}(),x="canvas";for(var S={},M=0;M<=40;M++)S[M]=M;const C={type:x,shape:"square",width:300,height:300,data:"",margin:0,qrOptions:{typeNumber:S[0],mode:void 0,errorCorrectionLevel:"Q"},imageOptions:{hideBackgroundDots:!0,imageSize:.4,crossOrigin:void 0,margin:0},dotsOptions:{type:"square",color:"#000"},backgroundOptions:{round:0,color:"#fff"}};var A=function(){return(A=Object.assign||function(t){for(var e,r=1,n=arguments.length;r<n;r++)for(var o in e=arguments[r])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t}).apply(this,arguments)};function k(t){var e=A({},t);if(!e.colorStops||!e.colorStops.length)throw"Field 'colorStops' is required in gradient";return e.rotation?e.rotation=Number(e.rotation):e.rotation=0,e.colorStops=e.colorStops.map(function(t){return A(A({},t),{offset:Number(t.offset)})}),e}function O(t){var e=A({},t);return e.width=Number(e.width),e.height=Number(e.height),e.margin=Number(e.margin),e.imageOptions=A(A({},e.imageOptions),{hideBackgroundDots:Boolean(e.imageOptions.hideBackgroundDots),imageSize:Number(e.imageOptions.imageSize),margin:Number(e.imageOptions.margin)}),e.margin>Math.min(e.width,e.height)&&(e.margin=Math.min(e.width,e.height)),e.dotsOptions=A({},e.dotsOptions),e.dotsOptions.gradient&&(e.dotsOptions.gradient=k(e.dotsOptions.gradient)),e.cornersSquareOptions&&(e.cornersSquareOptions=A({},e.cornersSquareOptions),e.cornersSquareOptions.gradient&&(e.cornersSquareOptions.gradient=k(e.cornersSquareOptions.gradient))),e.cornersDotOptions&&(e.cornersDotOptions=A({},e.cornersDotOptions),e.cornersDotOptions.gradient&&(e.cornersDotOptions.gradient=k(e.cornersDotOptions.gradient))),e.backgroundOptions&&(e.backgroundOptions=A({},e.backgroundOptions),e.backgroundOptions.gradient&&(e.backgroundOptions.gradient=k(e.backgroundOptions.gradient))),e}var D=r(192),P=r.n(D),z=function(t,e,r,n){return new(r||(r=Promise))(function(o,i){function a(t){try{u(n.next(t))}catch(t){i(t)}}function s(t){try{u(n.throw(t))}catch(t){i(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof r?e:new r(function(t){t(e)})).then(a,s)}u((n=n.apply(t,e||[])).next())})},B=function(t,e){var r,n,o,i,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:s(0),throw:s(1),return:s(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function s(i){return function(s){return function(i){if(r)throw new TypeError("Generator is already executing.");for(;a;)try{if(r=1,n&&(o=2&i[0]?n.return:i[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,i[1])).done)return o;switch(n=0,o&&(i=[2&i[0],o.value]),i[0]){case 0:case 1:o=i;break;case 4:return a.label++,{value:i[1],done:!1};case 5:a.label++,n=i[1],i=[0];continue;case 7:i=a.ops.pop(),a.trys.pop();continue;default:if(!((o=(o=a.trys).length>0&&o[o.length-1])||6!==i[0]&&2!==i[0])){a=0;continue}if(3===i[0]&&(!o||i[1]>o[0]&&i[1]<o[3])){a.label=i[1];break}if(6===i[0]&&a.label<o[1]){a.label=o[1],o=i;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(i);break}o[2]&&a.ops.pop(),a.trys.pop();continue}i=e.call(t,a)}catch(t){i=[6,t],n=0}finally{r=o=0}if(5&i[0])throw i[1];return{value:i[0]?i[1]:void 0,done:!0}}([i,s])}}};const q=function(){function t(t){this._options=t?O(a(C,t)):C,this.update()}return t._clearContainer=function(t){t&&(t.innerHTML="")},t.prototype._setupSvg=function(){var t=this;if(this._qr){var e=new _(this._options);this._svg=e.getElement(),this._svgDrawingPromise=e.drawQR(this._qr).then(function(){var r;t._svg&&(null===(r=t._extension)||void 0===r||r.call(t,e.getElement(),t._options))})}},t.prototype._setupCanvas=function(){var t,e=this;this._qr&&(this._canvas=document.createElement("canvas"),this._canvas.width=this._options.width,this._canvas.height=this._options.height,this._setupSvg(),this._canvasDrawingPromise=null===(t=this._svgDrawingPromise)||void 0===t?void 0:t.then(function(){if(e._svg){var t=e._svg,r=(new XMLSerializer).serializeToString(t),n="data:image/svg+xml;base64,"+btoa(r),o=new Image;return new Promise(function(t){o.onload=function(){var r,n;null===(n=null===(r=e._canvas)||void 0===r?void 0:r.getContext("2d"))||void 0===n||n.drawImage(o,0,0),t()},o.src=n})}}))},t.prototype._getElement=function(t){return void 0===t&&(t="png"),z(this,void 0,void 0,function(){return B(this,function(e){switch(e.label){case 0:if(!this._qr)throw"QR code is empty";return"svg"!==t.toLowerCase()?[3,2]:(this._svg&&this._svgDrawingPromise||this._setupSvg(),[4,this._svgDrawingPromise]);case 1:return e.sent(),[2,this._svg];case 2:return this._canvas&&this._canvasDrawingPromise||this._setupCanvas(),[4,this._canvasDrawingPromise];case 3:return e.sent(),[2,this._canvas]}})})},t.prototype.update=function(e){t._clearContainer(this._container),this._options=e?O(a(this._options,e)):this._options,this._options.data&&(this._qr=P()(this._options.qrOptions.typeNumber,this._options.qrOptions.errorCorrectionLevel),this._qr.addData(this._options.data,this._options.qrOptions.mode||function(t){switch(!0){case/^[0-9]*$/.test(t):return"Numeric";case/^[0-9A-Z $%*+\-./:]*$/.test(t):return"Alphanumeric";default:return"Byte"}}(this._options.data)),this._qr.make(),this._options.type===x?this._setupCanvas():this._setupSvg(),this.append(this._container))},t.prototype.append=function(t){if(t){if("function"!=typeof t.appendChild)throw"Container should be a single DOM node";this._options.type===x?this._canvas&&t.appendChild(this._canvas):this._svg&&t.appendChild(this._svg),this._container=t}},t.prototype.applyExtension=function(t){if(!t)throw"Extension function should be defined.";this._extension=t,this.update()},t.prototype.deleteExtension=function(){this._extension=void 0,this.update()},t.prototype.getRawData=function(t){return void 0===t&&(t="png"),z(this,void 0,void 0,function(){var e,r,n;return B(this,function(o){switch(o.label){case 0:if(!this._qr)throw"QR code is empty";return[4,this._getElement(t)];case 1:return(e=o.sent())?"svg"===t.toLowerCase()?(r=new XMLSerializer,n=r.serializeToString(e),[2,new Blob(['<?xml version="1.0" standalone="no"?>\r\n'+n],{type:"image/svg+xml"})]):[2,new Promise(function(r){return e.toBlob(r,"image/"+t,1)})]:[2,null]}})})},t.prototype.download=function(t){return z(this,void 0,void 0,function(){var e,r,n,o,i;return B(this,function(a){switch(a.label){case 0:if(!this._qr)throw"QR code is empty";return e="png",r="qr","string"==typeof t?(e=t,console.warn("Extension is deprecated as argument for 'download' method, please pass object { name: '...', extension: '...' } as argument")):"object"==typeof t&&null!==t&&(t.name&&(r=t.name),t.extension&&(e=t.extension)),[4,this._getElement(e)];case 1:return(n=a.sent())?("svg"===e.toLowerCase()?(o=new XMLSerializer,i='<?xml version="1.0" standalone="no"?>\r\n'+(i=o.serializeToString(n)),s("data:image/svg+xml;charset=utf-8,"+encodeURIComponent(i),r+".svg")):s(n.toDataURL("image/"+e),r+"."+e),[2]):[2]}})})},t}()}},e={};function r(n){if(e[n])return e[n].exports;var o=e[n]={exports:{}};return t[n](o,o.exports,r),o.exports}return r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var n in e)r.o(e,n)&&!r.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:e[n]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e),r(676)})().default})},{}]},{},[13])(13)});
|