@plattar/plattar-ar-adapter 1.122.1 → 1.123.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.
@@ -162,7 +162,7 @@ class ModelAR extends launcher_ar_1.LauncherAR {
162
162
  }
163
163
  exports.ModelAR = ModelAR;
164
164
 
165
- },{"../util/util":8,"../viewers/quicklook-viewer":11,"../viewers/reality-viewer":12,"../viewers/scene-viewer":13,"./launcher-ar":2,"@plattar/plattar-analytics":31,"@plattar/plattar-api":35}],4:[function(require,module,exports){
165
+ },{"../util/util":13,"../viewers/quicklook-viewer":16,"../viewers/reality-viewer":17,"../viewers/scene-viewer":18,"./launcher-ar":2,"@plattar/plattar-analytics":36,"@plattar/plattar-api":40}],4:[function(require,module,exports){
166
166
  "use strict";
167
167
  var __importDefault = (this && this.__importDefault) || function (mod) {
168
168
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -338,7 +338,119 @@ class ProductAR extends launcher_ar_1.LauncherAR {
338
338
  }
339
339
  exports.ProductAR = ProductAR;
340
340
 
341
- },{"../util/util":8,"../viewers/quicklook-viewer":11,"../viewers/reality-viewer":12,"../viewers/scene-viewer":13,"./launcher-ar":2,"@plattar/plattar-analytics":31,"@plattar/plattar-api":35}],5:[function(require,module,exports){
341
+ },{"../util/util":13,"../viewers/quicklook-viewer":16,"../viewers/reality-viewer":17,"../viewers/scene-viewer":18,"./launcher-ar":2,"@plattar/plattar-analytics":36,"@plattar/plattar-api":40}],5:[function(require,module,exports){
342
+ "use strict";
343
+ var __importDefault = (this && this.__importDefault) || function (mod) {
344
+ return (mod && mod.__esModule) ? mod : { "default": mod };
345
+ };
346
+ Object.defineProperty(exports, "__esModule", { value: true });
347
+ exports.RawAR = void 0;
348
+ const util_1 = require("../util/util");
349
+ const quicklook_viewer_1 = __importDefault(require("../viewers/quicklook-viewer"));
350
+ const reality_viewer_1 = __importDefault(require("../viewers/reality-viewer"));
351
+ const scene_viewer_1 = __importDefault(require("../viewers/scene-viewer"));
352
+ const launcher_ar_1 = require("./launcher-ar");
353
+ /**
354
+ * Allows launching AR Experiences provided a single remote 3D Model file
355
+ */
356
+ class RawAR extends launcher_ar_1.LauncherAR {
357
+ constructor(modelLocation = null) {
358
+ super();
359
+ if (!modelLocation) {
360
+ throw new Error("RawAR.constructor(modelLocation) - modelLocation must be defined");
361
+ }
362
+ const lowerLoc = modelLocation.toLowerCase();
363
+ if (lowerLoc.endsWith("usdz") || lowerLoc.endsWith("glb") || lowerLoc.endsWith("gltf") || lowerLoc.endsWith("reality")) {
364
+ this._modelLocation = modelLocation;
365
+ this._ar = null;
366
+ }
367
+ else {
368
+ throw new Error("RawAR.constructor(modelLocation) - modelLocation must be one of gltf, glb, usdz or reality");
369
+ }
370
+ }
371
+ get modelLocation() {
372
+ return this._modelLocation;
373
+ }
374
+ /**
375
+ * Initialise the RawAR instance. This returns a Promise that resolves
376
+ * successfully if initialisation is successful, otherwise it will fail.
377
+ *
378
+ * filure can occur for a number of reasons but it generally means that AR
379
+ * cannot be performed.
380
+ */
381
+ init() {
382
+ return new Promise((accept, reject) => {
383
+ if (!util_1.Util.canAugment()) {
384
+ return reject(new Error("RawAR.init() - cannot proceed as AR not available in context"));
385
+ }
386
+ const modelLocation = this._modelLocation;
387
+ const lowerLoc = modelLocation.toLowerCase();
388
+ // we need to define our AR module here
389
+ // we are in Safari/Quicklook mode here
390
+ if (util_1.Util.isSafari() || util_1.Util.isChromeOnIOS()) {
391
+ // load the reality experience if dealing with reality file
392
+ if (lowerLoc.endsWith("reality") && util_1.Util.canRealityViewer()) {
393
+ this._ar = new reality_viewer_1.default();
394
+ this._ar.modelUrl = modelLocation;
395
+ return accept(this);
396
+ }
397
+ // load the usdz experience if dealing with usdz file
398
+ if (lowerLoc.endsWith("usdz") && util_1.Util.canQuicklook()) {
399
+ this._ar = new quicklook_viewer_1.default();
400
+ this._ar.modelUrl = modelLocation;
401
+ return accept(this);
402
+ }
403
+ return reject(new Error("RawAR.init() - cannot proceed as model is not a .usdz or .reality file"));
404
+ }
405
+ // check android
406
+ if (util_1.Util.canSceneViewer()) {
407
+ if (lowerLoc.endsWith("glb") || lowerLoc.endsWith("gltf")) {
408
+ this._ar = new scene_viewer_1.default();
409
+ this._ar.modelUrl = modelLocation;
410
+ return accept(this);
411
+ }
412
+ return reject(new Error("RawAR.init() - cannot proceed as model is not a .glb or .gltf file"));
413
+ }
414
+ // otherwise, we didn't have AR available - it should never really reach this stage as this should be caught
415
+ // earlier in the process
416
+ return reject(new Error("RawAR.init() - could not initialise AR correctly, check values"));
417
+ });
418
+ }
419
+ /**
420
+ * Initialise and launch with a single function call. this is mostly for convenience.
421
+ * Use .init() and .start() separately for fine-grained control
422
+ */
423
+ launch() {
424
+ return new Promise((accept, reject) => {
425
+ this.init().then((value) => {
426
+ value.start();
427
+ return accept();
428
+ }).catch(reject);
429
+ });
430
+ }
431
+ /**
432
+ * Launches the internal AR instance using an appropriate version of AR Viewers
433
+ */
434
+ start() {
435
+ if (!this._ar) {
436
+ throw new Error("RawAR.start() - cannot proceed as AR instance is null");
437
+ }
438
+ // this was initialised via the init() function
439
+ this._ar.start();
440
+ }
441
+ canQuicklook() {
442
+ return this._ar && this._ar.nodeType === "Quick Look" ? true : false;
443
+ }
444
+ canRealityViewer() {
445
+ return this._ar && this._ar.nodeType === "Reality Viewer" ? true : false;
446
+ }
447
+ canSceneViewer() {
448
+ return this._ar && this._ar.nodeType === "Scene Viewer" ? true : false;
449
+ }
450
+ }
451
+ exports.RawAR = RawAR;
452
+
453
+ },{"../util/util":13,"../viewers/quicklook-viewer":16,"../viewers/reality-viewer":17,"../viewers/scene-viewer":18,"./launcher-ar":2}],6:[function(require,module,exports){
342
454
  "use strict";
343
455
  Object.defineProperty(exports, "__esModule", { value: true });
344
456
  exports.SceneAR = void 0;
@@ -359,171 +471,439 @@ class SceneAR extends launcher_ar_1.LauncherAR {
359
471
  }
360
472
  exports.SceneAR = SceneAR;
361
473
 
362
- },{"./launcher-ar":2}],6:[function(require,module,exports){
474
+ },{"./launcher-ar":2}],7:[function(require,module,exports){
363
475
  "use strict";
364
476
  Object.defineProperty(exports, "__esModule", { value: true });
477
+ exports.ConfiguratorController = void 0;
365
478
  const plattar_api_1 = require("@plattar/plattar-api");
366
- const product_ar_1 = require("../ar/product-ar");
479
+ const plattar_services_1 = require("@plattar/plattar-services");
480
+ const raw_ar_1 = require("../../ar/raw-ar");
481
+ const util_1 = require("../../util/util");
482
+ const plattar_controller_1 = require("./plattar-controller");
367
483
  /**
368
- * This is the primary <plattar-embed /> node that allows easy embedding
369
- * of Plattar related content
484
+ * Manages an instance of the <plattar-configurator> HTML Element
370
485
  */
371
- class PlattarEmbed extends HTMLElement {
372
- constructor() {
373
- super();
374
- this._sceneID = null;
375
- this._productID = null;
376
- this._variationID = null;
377
- this._isReady = false;
378
- this._width = "500px";
379
- this._height = "500px";
380
- this._server = "production";
381
- this._viewer = null;
382
- }
383
- get viewer() {
384
- return this._viewer;
385
- }
386
- connectedCallback() {
387
- const server = this.hasAttribute("server") ? this.getAttribute("server") : "production";
388
- plattar_api_1.Server.create(plattar_api_1.Server.match(server || "production"));
389
- if (server) {
390
- this._server = server;
391
- }
392
- this._sceneID = this.hasAttribute("scene-id") ? this.getAttribute("scene-id") : null;
393
- this._productID = this.hasAttribute("product-id") ? this.getAttribute("product-id") : null;
394
- this._variationID = this.hasAttribute("variation-id") ? this.getAttribute("variation-id") : null;
395
- const width = this.hasAttribute("width") ? this.getAttribute("width") : "500px";
396
- const height = this.hasAttribute("height") ? this.getAttribute("height") : "500px";
397
- if (width) {
398
- this._width = width;
399
- }
400
- if (height) {
401
- this._height = height;
402
- }
403
- this._isReady = true;
404
- const init = this.hasAttribute("init") ? this.getAttribute("init") : null;
405
- if (init === "ar") {
406
- this.startAR();
407
- }
408
- else if (init === "viewer") {
409
- this.startViewer();
410
- }
411
- else if (init === "qrcode") {
412
- this.startQRCode();
413
- }
414
- else if (init === "ar-fallback-qrcode") {
415
- this.startAR().then(() => {
416
- // nothing to do, launched successfully
417
- }).catch((_err) => {
418
- this.startQRCode();
419
- });
420
- }
421
- else if (init === "ar-fallback-viewer") {
422
- this.startAR().then(() => {
423
- // nothing to do, launched successfully
424
- }).catch((_err) => {
425
- this.startViewer();
426
- });
486
+ class ConfiguratorController extends plattar_controller_1.PlattarController {
487
+ constructor(parent) {
488
+ super(parent);
489
+ this._state = plattar_controller_1.ControllerState.None;
490
+ this._element = null;
491
+ this._prevQROpt = null;
492
+ }
493
+ onAttributesUpdated() {
494
+ const state = this._state;
495
+ // re-render the QR Code when attributes have changed
496
+ if (state === plattar_controller_1.ControllerState.QRCode) {
497
+ this.startQRCode(this._prevQROpt);
498
+ return;
427
499
  }
428
500
  }
429
- initAR() {
501
+ startQRCode(options) {
430
502
  return new Promise((accept, reject) => {
431
- if (!this._isReady) {
432
- return reject(new Error("PlattarEmbed.initAR() - cannot execute as page has not loaded yet"));
433
- }
434
- // if scene is not set but product is, then use ProductAR
435
- if (!this._sceneID && this._productID) {
436
- const product = new product_ar_1.ProductAR(this._productID, this._variationID);
437
- return product.init().then(accept).catch(reject);
503
+ // remove the old renderer instance if any
504
+ this.removeRenderer();
505
+ const sceneID = this.getAttribute("scene-id");
506
+ if (sceneID) {
507
+ const opt = options || plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;
508
+ const viewer = document.createElement("plattar-qrcode");
509
+ // required attributes with defaults for plattar-viewer node
510
+ const width = this.getAttribute("width") || "500px";
511
+ const height = this.getAttribute("height") || "500px";
512
+ viewer.setAttribute("width", width);
513
+ viewer.setAttribute("height", height);
514
+ if (opt.color) {
515
+ viewer.setAttribute("color", opt.color);
516
+ }
517
+ if (opt.margin) {
518
+ viewer.setAttribute("margin", "" + opt.margin);
519
+ }
520
+ if (opt.qrType) {
521
+ viewer.setAttribute("qr-type", opt.qrType);
522
+ }
523
+ let dst = plattar_api_1.Server.location().base + "renderer/configurator.html?scene_id=" + sceneID;
524
+ // optional attributes
525
+ const configState = this.getAttribute("config-state");
526
+ const showAR = this.getAttribute("show-ar");
527
+ if (configState) {
528
+ dst += "&config_state=" + configState;
529
+ }
530
+ if (showAR) {
531
+ dst += "&show_ar=" + showAR;
532
+ }
533
+ viewer.setAttribute("url", opt.url || dst);
534
+ viewer.onload = () => {
535
+ return accept(viewer);
536
+ };
537
+ this.append(viewer);
538
+ this._element = viewer;
539
+ this._state = plattar_controller_1.ControllerState.QRCode;
540
+ this._prevQROpt = opt;
541
+ return;
438
542
  }
439
- // otherwise, scene was set so use SceneAR
440
- if (this._sceneID) {
441
- return reject(new Error("PlattarEmbed.initAR() - scene-id not yet supported"));
543
+ return reject(new Error("ConfiguratorController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"));
544
+ });
545
+ }
546
+ startRenderer() {
547
+ return new Promise((accept, reject) => {
548
+ // remove the old renderer instance if any
549
+ this.removeRenderer();
550
+ const sceneID = this.getAttribute("scene-id");
551
+ if (sceneID) {
552
+ // required attributes with defaults for plattar-configurator node
553
+ const width = this.getAttribute("width") || "500px";
554
+ const height = this.getAttribute("height") || "500px";
555
+ const server = this.getAttribute("server") || "production";
556
+ const viewer = document.createElement("plattar-configurator");
557
+ viewer.setAttribute("width", width);
558
+ viewer.setAttribute("height", height);
559
+ viewer.setAttribute("server", server);
560
+ viewer.setAttribute("scene-id", sceneID);
561
+ // optional attributes
562
+ const configState = this.getAttribute("config-state");
563
+ const showAR = this.getAttribute("show-ar");
564
+ if (configState) {
565
+ viewer.setAttribute("config-state", configState);
566
+ }
567
+ if (showAR) {
568
+ viewer.setAttribute("show-ar", showAR);
569
+ }
570
+ viewer.onload = () => {
571
+ return accept(viewer);
572
+ };
573
+ this.append(viewer);
574
+ this._element = viewer;
575
+ this._state = plattar_controller_1.ControllerState.Renderer;
576
+ return;
442
577
  }
443
- return reject(new Error("PlattarEmbed.initAR() - minimum required attributes not set, use scene-id or product-id as a minimum"));
578
+ return reject(new Error("ConfiguratorController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"));
444
579
  });
445
580
  }
446
581
  startAR() {
447
582
  return new Promise((accept, reject) => {
448
- if (!this._isReady) {
449
- return reject(new Error("PlattarEmbed.startAR() - cannot execute as page has not loaded yet"));
450
- }
451
583
  this.initAR().then((launcher) => {
452
584
  launcher.start();
453
585
  accept();
454
586
  }).catch(reject);
455
587
  });
456
588
  }
457
- startViewer() {
589
+ initAR() {
458
590
  return new Promise((accept, reject) => {
459
- if (!this._isReady) {
460
- return reject(new Error("PlattarEmbed.startViewer() - cannot execute as page has not loaded yet"));
591
+ if (!util_1.Util.canAugment()) {
592
+ return reject(new Error("ConfiguratorController.initAR() - cannot proceed as AR not available in context"));
461
593
  }
462
- if (this._viewer) {
463
- this._viewer.remove();
464
- this._viewer = null;
594
+ // if scene ID is available and the state is a configurator viewer
595
+ // we can use the real-time configurator state to launch the AR view
596
+ const viewer = this.element;
597
+ const sceneID = this.getAttribute("scene-id");
598
+ if (viewer && sceneID) {
599
+ let output = "glb";
600
+ if (util_1.Util.isSafari() || util_1.Util.isChromeOnIOS()) {
601
+ output = "usdz";
602
+ }
603
+ return viewer.messenger.getARFile(output).then((result) => {
604
+ const rawAR = new raw_ar_1.RawAR(result.filename);
605
+ return rawAR.init().then(accept).catch(reject);
606
+ }).catch(reject);
465
607
  }
466
- // if scene is set, we use <plattar-viewer /> node from plattar-web
467
- if (this._sceneID) {
468
- const viewer = document.createElement("plattar-viewer");
469
- viewer.setAttribute("width", this._width);
470
- viewer.setAttribute("height", this._height);
471
- viewer.setAttribute("server", this._server);
472
- viewer.setAttribute("scene-id", this._sceneID);
473
- if (this._productID) {
474
- viewer.setAttribute("product-id", this._productID);
608
+ const configState = this.getAttribute("config-state");
609
+ // otherwise scene ID is available to the viewer is not launched
610
+ // we can use the static configuration state to launch the AR view
611
+ if (sceneID && configState) {
612
+ try {
613
+ const decodedb64State = atob(configState);
614
+ const state = JSON.parse(decodedb64State);
615
+ if (state.meta) {
616
+ const sceneProductIndex = state.meta.scene_product_index || 0;
617
+ const variationIndex = state.meta.product_variation_index || 1;
618
+ const states = state.states || [];
619
+ if (states.length > 0) {
620
+ const configurator = new plattar_services_1.Configurator();
621
+ states.forEach((productState) => {
622
+ configurator.addSceneProduct(productState[sceneProductIndex], productState[variationIndex]);
623
+ });
624
+ if (util_1.Util.isSafari() || util_1.Util.isChromeOnIOS()) {
625
+ configurator.output = "usdz";
626
+ }
627
+ if (util_1.Util.canSceneViewer()) {
628
+ configurator.output = "glb";
629
+ }
630
+ const server = this.getAttribute("server") || "production";
631
+ configurator.server = server;
632
+ return configurator.get().then((result) => {
633
+ const rawAR = new raw_ar_1.RawAR(result.filename);
634
+ rawAR.init().then(accept).catch(reject);
635
+ }).catch(reject);
636
+ }
637
+ return reject(new Error("ConfiguratorController.initAR() - invalid config-state does not have any product states"));
638
+ }
639
+ return reject(new Error("ConfiguratorController.initAR() - invalid config-state for configurator"));
475
640
  }
476
- if (this._variationID) {
477
- viewer.setAttribute("variation-id", this._variationID);
641
+ catch (err) {
642
+ return reject(err);
478
643
  }
644
+ }
645
+ return reject(new Error("ConfiguratorController.initAR() - minimum required attributes not set, use scene-id as a minimum"));
646
+ });
647
+ }
648
+ removeRenderer() {
649
+ if (this._element) {
650
+ this._element.remove();
651
+ this._element = null;
652
+ return true;
653
+ }
654
+ return false;
655
+ }
656
+ get element() {
657
+ return this._element;
658
+ }
659
+ }
660
+ exports.ConfiguratorController = ConfiguratorController;
661
+
662
+ },{"../../ar/raw-ar":5,"../../util/util":13,"./plattar-controller":8,"@plattar/plattar-api":40,"@plattar/plattar-services":111}],8:[function(require,module,exports){
663
+ "use strict";
664
+ Object.defineProperty(exports, "__esModule", { value: true });
665
+ exports.PlattarController = exports.ControllerState = void 0;
666
+ var ControllerState;
667
+ (function (ControllerState) {
668
+ ControllerState[ControllerState["None"] = 0] = "None";
669
+ ControllerState[ControllerState["Renderer"] = 1] = "Renderer";
670
+ ControllerState[ControllerState["QRCode"] = 2] = "QRCode";
671
+ })(ControllerState = exports.ControllerState || (exports.ControllerState = {}));
672
+ /**
673
+ * All Plattar Controllers are derived from the same interface
674
+ */
675
+ class PlattarController {
676
+ constructor(parent) {
677
+ this._parent = parent;
678
+ }
679
+ /**
680
+ * Default QR Code rendering options
681
+ */
682
+ static get DEFAULT_QR_OPTIONS() {
683
+ return {
684
+ color: "#101721",
685
+ qrType: "default",
686
+ margin: 0
687
+ };
688
+ }
689
+ ;
690
+ /**
691
+ * Returns the Parent Instance
692
+ */
693
+ get parent() {
694
+ return this._parent;
695
+ }
696
+ /**
697
+ * Returns the specified attribute from the parent
698
+ * @param attribute - The name of thhe attribute
699
+ * @returns - The attribute value or null
700
+ */
701
+ getAttribute(attribute) {
702
+ return this.parent ? (this.parent.hasAttribute(attribute) ? this.parent.getAttribute(attribute) : null) : null;
703
+ }
704
+ /**
705
+ * Appends the provided element into the shadow-root of the parent element
706
+ * @param element - The element to append
707
+ */
708
+ append(element) {
709
+ const shadow = this.parent.shadowRoot || this.parent.attachShadow({ mode: 'open' });
710
+ shadow.append(element);
711
+ }
712
+ }
713
+ exports.PlattarController = PlattarController;
714
+
715
+ },{}],9:[function(require,module,exports){
716
+ "use strict";
717
+ Object.defineProperty(exports, "__esModule", { value: true });
718
+ exports.ProductController = void 0;
719
+ const plattar_api_1 = require("@plattar/plattar-api");
720
+ const product_ar_1 = require("../../ar/product-ar");
721
+ const util_1 = require("../../util/util");
722
+ const plattar_controller_1 = require("./plattar-controller");
723
+ /**
724
+ * Manages an instance of the <plattar-product> HTML Element
725
+ */
726
+ class ProductController extends plattar_controller_1.PlattarController {
727
+ constructor(parent) {
728
+ super(parent);
729
+ this._state = plattar_controller_1.ControllerState.None;
730
+ this._element = null;
731
+ this._prevQROpt = null;
732
+ }
733
+ onAttributesUpdated() {
734
+ const state = this._state;
735
+ // re-render the QR Code when attributes have changed
736
+ if (state === plattar_controller_1.ControllerState.QRCode) {
737
+ this.startQRCode(this._prevQROpt);
738
+ return;
739
+ }
740
+ // use the messenger function to change variation when attributes have changed
741
+ if (state === plattar_controller_1.ControllerState.Renderer) {
742
+ const viewer = this._element;
743
+ if (viewer) {
744
+ const variationID = this.getAttribute("variation-id");
745
+ viewer.messenger.selectVariation(variationID);
746
+ }
747
+ return;
748
+ }
749
+ }
750
+ startQRCode(options) {
751
+ return new Promise((accept, reject) => {
752
+ // remove the old renderer instance if any
753
+ this.removeRenderer();
754
+ const productID = this.getAttribute("product-id");
755
+ if (productID) {
756
+ const opt = options || plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;
757
+ const viewer = document.createElement("plattar-qrcode");
758
+ // required attributes with defaults for plattar-viewer node
759
+ const width = this.getAttribute("width") || "500px";
760
+ const height = this.getAttribute("height") || "500px";
761
+ viewer.setAttribute("width", width);
762
+ viewer.setAttribute("height", height);
763
+ if (opt.color) {
764
+ viewer.setAttribute("color", opt.color);
765
+ }
766
+ if (opt.margin) {
767
+ viewer.setAttribute("margin", "" + opt.margin);
768
+ }
769
+ if (opt.qrType) {
770
+ viewer.setAttribute("qr-type", opt.qrType);
771
+ }
772
+ // optional attributes
773
+ const variationID = this.getAttribute("variation-id");
774
+ let dst = plattar_api_1.Server.location().base + "renderer/product.html?product_id=" + productID;
775
+ if (variationID) {
776
+ dst += "&variation_id=" + variationID;
777
+ }
778
+ viewer.setAttribute("url", opt.url || dst);
479
779
  viewer.onload = () => {
480
780
  return accept(viewer);
481
781
  };
482
- const shadow = this.shadowRoot || this.attachShadow({ mode: 'open' });
483
- shadow.append(viewer);
484
- this._viewer = viewer;
782
+ this.append(viewer);
783
+ this._element = viewer;
784
+ this._state = plattar_controller_1.ControllerState.QRCode;
785
+ this._prevQROpt = opt;
485
786
  return;
486
787
  }
487
- // if product is set, we use <plattar-product /> node from plattar-web
488
- if (this._productID) {
788
+ return reject(new Error("ProductController.startQRCode() - minimum required attributes not set, use product-id as a minimum"));
789
+ });
790
+ }
791
+ startRenderer() {
792
+ return new Promise((accept, reject) => {
793
+ // remove the old renderer instance if any
794
+ this.removeRenderer();
795
+ const productID = this.getAttribute("product-id");
796
+ if (productID) {
797
+ // required attributes with defaults for plattar-product node
798
+ const width = this.getAttribute("width") || "500px";
799
+ const height = this.getAttribute("height") || "500px";
800
+ const server = this.getAttribute("server") || "production";
489
801
  const viewer = document.createElement("plattar-product");
490
- viewer.setAttribute("width", this._width);
491
- viewer.setAttribute("height", this._height);
492
- viewer.setAttribute("server", this._server);
493
- viewer.setAttribute("product-id", this._productID);
494
- if (this._variationID) {
495
- viewer.setAttribute("variation-id", this._variationID);
802
+ viewer.setAttribute("width", width);
803
+ viewer.setAttribute("height", height);
804
+ viewer.setAttribute("server", server);
805
+ viewer.setAttribute("product-id", productID);
806
+ // optional attributes
807
+ const variationID = this.getAttribute("variation-id");
808
+ if (variationID) {
809
+ viewer.setAttribute("variation-id", variationID);
496
810
  }
497
811
  viewer.onload = () => {
498
812
  return accept(viewer);
499
813
  };
500
- const shadow = this.shadowRoot || this.attachShadow({ mode: 'open' });
501
- shadow.append(viewer);
502
- this._viewer = viewer;
814
+ this.append(viewer);
815
+ this._element = viewer;
816
+ this._state = plattar_controller_1.ControllerState.Renderer;
503
817
  return;
504
818
  }
505
- return reject(new Error("PlattarEmbed.startViewer() - minimum required attributes not set, use scene-id or product-id as a minimum"));
819
+ return reject(new Error("ProductController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"));
506
820
  });
507
821
  }
508
- startQRCode(options = null) {
822
+ startAR() {
509
823
  return new Promise((accept, reject) => {
510
- if (!this._isReady) {
511
- return reject(new Error("PlattarEmbed.startQRCode() - cannot execute as page has not loaded yet"));
824
+ this.initAR().then((launcher) => {
825
+ launcher.start();
826
+ accept();
827
+ }).catch(reject);
828
+ });
829
+ }
830
+ initAR() {
831
+ return new Promise((accept, reject) => {
832
+ if (!util_1.Util.canAugment()) {
833
+ return reject(new Error("ProductController.initAR() - cannot proceed as AR not available in context"));
512
834
  }
513
- const opt = options || {
514
- color: "#101721",
515
- qrType: "default",
516
- margin: 0
517
- };
518
- if (this._viewer) {
519
- this._viewer.remove();
520
- this._viewer = null;
835
+ const productID = this.getAttribute("product-id");
836
+ if (productID) {
837
+ const variationID = this.getAttribute("variation-id");
838
+ const product = new product_ar_1.ProductAR(productID, variationID);
839
+ return product.init().then(accept).catch(reject);
840
+ }
841
+ return reject(new Error("ProductController.initAR() - minimum required attributes not set, use product-id as a minimum"));
842
+ });
843
+ }
844
+ removeRenderer() {
845
+ if (this._element) {
846
+ this._element.remove();
847
+ this._element = null;
848
+ return true;
849
+ }
850
+ return false;
851
+ }
852
+ get element() {
853
+ return this._element;
854
+ }
855
+ }
856
+ exports.ProductController = ProductController;
857
+
858
+ },{"../../ar/product-ar":4,"../../util/util":13,"./plattar-controller":8,"@plattar/plattar-api":40}],10:[function(require,module,exports){
859
+ "use strict";
860
+ Object.defineProperty(exports, "__esModule", { value: true });
861
+ exports.ViewerController = void 0;
862
+ const plattar_api_1 = require("@plattar/plattar-api");
863
+ const product_ar_1 = require("../../ar/product-ar");
864
+ const util_1 = require("../../util/util");
865
+ const plattar_controller_1 = require("./plattar-controller");
866
+ /**
867
+ * Manages an instance of the <plattar-viewer> HTML Element
868
+ */
869
+ class ViewerController extends plattar_controller_1.PlattarController {
870
+ constructor(parent) {
871
+ super(parent);
872
+ this._state = plattar_controller_1.ControllerState.None;
873
+ this._element = null;
874
+ this._prevQROpt = null;
875
+ }
876
+ onAttributesUpdated() {
877
+ const state = this._state;
878
+ // re-render the QR Code when attributes have changed
879
+ if (state === plattar_controller_1.ControllerState.QRCode) {
880
+ this.startQRCode(this._prevQROpt);
881
+ return;
882
+ }
883
+ // use the messenger function to change variation when attributes have changed
884
+ if (state === plattar_controller_1.ControllerState.Renderer) {
885
+ const viewer = this._element;
886
+ if (viewer) {
887
+ const productID = this.getAttribute("product-id");
888
+ const variationID = this.getAttribute("variation-id");
889
+ viewer.messenger.selectVariation(productID, variationID);
521
890
  }
522
- // if scene is set, we embed a QR code that takes us to viewer.html
523
- if (this._sceneID) {
891
+ return;
892
+ }
893
+ }
894
+ startQRCode(options) {
895
+ return new Promise((accept, reject) => {
896
+ // remove the old renderer instance if any
897
+ this.removeRenderer();
898
+ const sceneID = this.getAttribute("scene-id");
899
+ if (sceneID) {
900
+ const opt = options || plattar_controller_1.PlattarController.DEFAULT_QR_OPTIONS;
524
901
  const viewer = document.createElement("plattar-qrcode");
525
- viewer.setAttribute("width", this._width);
526
- viewer.setAttribute("height", this._height);
902
+ // required attributes with defaults for plattar-viewer node
903
+ const width = this.getAttribute("width") || "500px";
904
+ const height = this.getAttribute("height") || "500px";
905
+ viewer.setAttribute("width", width);
906
+ viewer.setAttribute("height", height);
527
907
  if (opt.color) {
528
908
  viewer.setAttribute("color", opt.color);
529
909
  }
@@ -533,56 +913,245 @@ class PlattarEmbed extends HTMLElement {
533
913
  if (opt.qrType) {
534
914
  viewer.setAttribute("qr-type", opt.qrType);
535
915
  }
536
- let dst = plattar_api_1.Server.location().base + "renderer/viewer.html?scene_id=" + this._sceneID;
537
- if (this._productID) {
538
- dst += "&productId=" + this._productID;
916
+ let dst = plattar_api_1.Server.location().base + "renderer/viewer.html?scene_id=" + sceneID;
917
+ // optional attributes
918
+ const productID = this.getAttribute("product-id");
919
+ const variationID = this.getAttribute("variation-id");
920
+ if (productID) {
921
+ dst += "&productId=" + productID;
539
922
  }
540
- if (this._variationID) {
541
- dst += "&variationId=" + this._variationID;
923
+ if (variationID) {
924
+ dst += "&variationId=" + variationID;
542
925
  }
543
- viewer.setAttribute("url", dst);
926
+ viewer.setAttribute("url", opt.url || dst);
544
927
  viewer.onload = () => {
545
928
  return accept(viewer);
546
929
  };
547
- const shadow = this.shadowRoot || this.attachShadow({ mode: 'open' });
548
- shadow.append(viewer);
549
- this._viewer = viewer;
930
+ this.append(viewer);
931
+ this._element = viewer;
932
+ this._state = plattar_controller_1.ControllerState.QRCode;
933
+ this._prevQROpt = opt;
550
934
  return;
551
935
  }
552
- // if product is set, we embed a QR code that takes us to product.html
553
- if (this._productID) {
554
- const viewer = document.createElement("plattar-qrcode");
555
- viewer.setAttribute("width", this._width);
556
- viewer.setAttribute("height", this._height);
557
- if (opt.color) {
558
- viewer.setAttribute("color", opt.color);
559
- }
560
- if (opt.margin) {
561
- viewer.setAttribute("margin", "" + opt.margin);
562
- }
563
- if (opt.qrType) {
564
- viewer.setAttribute("qr-type", opt.qrType);
936
+ return reject(new Error("ViewerController.startQRCode() - minimum required attributes not set, use scene-id as a minimum"));
937
+ });
938
+ }
939
+ startRenderer() {
940
+ return new Promise((accept, reject) => {
941
+ // remove the old renderer instance if any
942
+ this.removeRenderer();
943
+ const sceneID = this.getAttribute("scene-id");
944
+ if (sceneID) {
945
+ // required attributes with defaults for plattar-viewer node
946
+ const width = this.getAttribute("width") || "500px";
947
+ const height = this.getAttribute("height") || "500px";
948
+ const server = this.getAttribute("server") || "production";
949
+ const viewer = document.createElement("plattar-viewer");
950
+ viewer.setAttribute("width", width);
951
+ viewer.setAttribute("height", height);
952
+ viewer.setAttribute("server", server);
953
+ viewer.setAttribute("scene-id", sceneID);
954
+ // optional attributes
955
+ const productID = this.getAttribute("product-id");
956
+ const variationID = this.getAttribute("variation-id");
957
+ if (productID) {
958
+ viewer.setAttribute("product-id", productID);
565
959
  }
566
- let dst = plattar_api_1.Server.location().base + "renderer/product.html?product_id=" + this._productID;
567
- if (this._variationID) {
568
- dst += "&variation_id=" + this._variationID;
960
+ if (variationID) {
961
+ viewer.setAttribute("variation-id", variationID);
569
962
  }
570
- viewer.setAttribute("url", dst);
571
963
  viewer.onload = () => {
572
964
  return accept(viewer);
573
965
  };
574
- const shadow = this.shadowRoot || this.attachShadow({ mode: 'open' });
575
- shadow.append(viewer);
576
- this._viewer = viewer;
966
+ this.append(viewer);
967
+ this._element = viewer;
968
+ this._state = plattar_controller_1.ControllerState.Renderer;
577
969
  return;
578
970
  }
579
- return reject(new Error("PlattarEmbed.startQRCode() - minimum required attributes not set, use scene-id or product-id as a minimum"));
971
+ return reject(new Error("ViewerController.startRenderer() - minimum required attributes not set, use scene-id as a minimum"));
972
+ });
973
+ }
974
+ startAR() {
975
+ return new Promise((accept, reject) => {
976
+ this.initAR().then((launcher) => {
977
+ launcher.start();
978
+ accept();
979
+ }).catch(reject);
980
+ });
981
+ }
982
+ initAR() {
983
+ return new Promise((accept, reject) => {
984
+ if (!util_1.Util.canAugment()) {
985
+ return reject(new Error("ViewerController.initAR() - cannot proceed as AR not available in context"));
986
+ }
987
+ const productID = this.getAttribute("product-id");
988
+ if (productID) {
989
+ const variationID = this.getAttribute("variation-id");
990
+ const product = new product_ar_1.ProductAR(productID, variationID);
991
+ return product.init().then(accept).catch(reject);
992
+ }
993
+ const sceneID = this.getAttribute("scene-id");
994
+ // otherwise, scene was set so use SceneAR
995
+ if (sceneID) {
996
+ return reject(new Error("ViewerController.initAR() - AR mode for scene-id not yet supported, use product-id"));
997
+ }
998
+ return reject(new Error("ViewerController.initAR() - minimum required attributes not set, use scene-id or product-id as a minimum"));
999
+ });
1000
+ }
1001
+ removeRenderer() {
1002
+ if (this._element) {
1003
+ this._element.remove();
1004
+ this._element = null;
1005
+ return true;
1006
+ }
1007
+ return false;
1008
+ }
1009
+ get element() {
1010
+ return this._element;
1011
+ }
1012
+ }
1013
+ exports.ViewerController = ViewerController;
1014
+
1015
+ },{"../../ar/product-ar":4,"../../util/util":13,"./plattar-controller":8,"@plattar/plattar-api":40}],11:[function(require,module,exports){
1016
+ "use strict";
1017
+ Object.defineProperty(exports, "__esModule", { value: true });
1018
+ const plattar_api_1 = require("@plattar/plattar-api");
1019
+ const product_controller_1 = require("./controllers/product-controller");
1020
+ const viewer_controller_1 = require("./controllers/viewer-controller");
1021
+ const configurator_controller_1 = require("./controllers/configurator-controller");
1022
+ /**
1023
+ * This tracks the current embed type
1024
+ */
1025
+ var EmbedType;
1026
+ (function (EmbedType) {
1027
+ EmbedType[EmbedType["Viewer"] = 0] = "Viewer";
1028
+ EmbedType[EmbedType["Configurator"] = 1] = "Configurator";
1029
+ })(EmbedType || (EmbedType = {}));
1030
+ /**
1031
+ * This is the primary <plattar-embed /> node that allows easy embedding
1032
+ * of Plattar related content
1033
+ */
1034
+ class PlattarEmbed extends HTMLElement {
1035
+ constructor() {
1036
+ super();
1037
+ // this is the current embed type, viewer by default
1038
+ this._currentType = EmbedType.Viewer;
1039
+ this._controller = null;
1040
+ }
1041
+ get viewer() {
1042
+ return this._controller ? this._controller.element : null;
1043
+ }
1044
+ connectedCallback() {
1045
+ const embedType = this.hasAttribute("embed-type") ? this.getAttribute("embed-type") : "viewer";
1046
+ if (embedType) {
1047
+ switch (embedType.toLowerCase()) {
1048
+ case "viewer":
1049
+ this._currentType = EmbedType.Viewer;
1050
+ break;
1051
+ case "configurator":
1052
+ this._currentType = EmbedType.Configurator;
1053
+ break;
1054
+ default:
1055
+ this._currentType = EmbedType.Viewer;
1056
+ }
1057
+ }
1058
+ const observer = new MutationObserver((mutations) => {
1059
+ mutations.forEach((mutation) => {
1060
+ if (mutation.type === "attributes") {
1061
+ this._OnAttributesUpdated();
1062
+ }
1063
+ });
1064
+ });
1065
+ observer.observe(this, {
1066
+ attributes: true
1067
+ });
1068
+ const server = this.hasAttribute("server") ? this.getAttribute("server") : "production";
1069
+ plattar_api_1.Server.create(plattar_api_1.Server.match(server || "production"));
1070
+ const sceneID = this.hasAttribute("scene-id") ? this.getAttribute("scene-id") : null;
1071
+ const productID = this.hasAttribute("product-id") ? this.getAttribute("product-id") : null;
1072
+ // decide which controller to initialise
1073
+ if (this._currentType === EmbedType.Viewer) {
1074
+ // initialise product if scene-id is missing but product-id is defined
1075
+ if (!sceneID && productID) {
1076
+ this._controller = new product_controller_1.ProductController(this);
1077
+ }
1078
+ else if (sceneID) {
1079
+ this._controller = new viewer_controller_1.ViewerController(this);
1080
+ }
1081
+ }
1082
+ else if (this._currentType === EmbedType.Configurator) {
1083
+ this._controller = new configurator_controller_1.ConfiguratorController(this);
1084
+ }
1085
+ const init = this.hasAttribute("init") ? this.getAttribute("init") : null;
1086
+ if (init === "ar") {
1087
+ this.startAR();
1088
+ }
1089
+ else if (init === "viewer") {
1090
+ this.startViewer();
1091
+ }
1092
+ else if (init === "qrcode") {
1093
+ this.startQRCode();
1094
+ }
1095
+ else if (init === "ar-fallback-qrcode") {
1096
+ this.startAR().then(() => {
1097
+ // nothing to do, launched successfully
1098
+ }).catch((_err) => {
1099
+ this.startQRCode();
1100
+ });
1101
+ }
1102
+ else if (init === "ar-fallback-viewer") {
1103
+ this.startAR().then(() => {
1104
+ // nothing to do, launched successfully
1105
+ }).catch((_err) => {
1106
+ this.startViewer();
1107
+ });
1108
+ }
1109
+ }
1110
+ initAR() {
1111
+ return new Promise((accept, reject) => {
1112
+ if (!this._controller) {
1113
+ return reject(new Error("PlattarEmbed.initAR() - cannot execute as controller has not loaded yet"));
1114
+ }
1115
+ return this._controller.initAR().then(accept).catch(reject);
580
1116
  });
581
1117
  }
1118
+ startAR() {
1119
+ return new Promise((accept, reject) => {
1120
+ if (!this._controller) {
1121
+ return reject(new Error("PlattarEmbed.startAR() - cannot execute as controller has not loaded yet"));
1122
+ }
1123
+ return this._controller.startAR().then(accept).catch(reject);
1124
+ });
1125
+ }
1126
+ startViewer() {
1127
+ return new Promise((accept, reject) => {
1128
+ if (!this._controller) {
1129
+ return reject(new Error("PlattarEmbed.startViewer() - cannot execute as controller has not loaded yet"));
1130
+ }
1131
+ return this._controller.startRenderer().then(accept).catch(reject);
1132
+ });
1133
+ }
1134
+ startQRCode(options = null) {
1135
+ return new Promise((accept, reject) => {
1136
+ if (!this._controller) {
1137
+ return reject(new Error("PlattarEmbed.startQRCode() - cannot execute as controller has not loaded yet"));
1138
+ }
1139
+ return this._controller.startQRCode(options).then(accept).catch(reject);
1140
+ });
1141
+ }
1142
+ /**
1143
+ * This is called by the observer if any of the embed attributes have changed
1144
+ * based on the state of the embed, we update the internal structure accordingly
1145
+ */
1146
+ _OnAttributesUpdated() {
1147
+ if (this._controller) {
1148
+ this._controller.onAttributesUpdated();
1149
+ }
1150
+ }
582
1151
  }
583
1152
  exports.default = PlattarEmbed;
584
1153
 
585
- },{"../ar/product-ar":4,"@plattar/plattar-api":35}],7:[function(require,module,exports){
1154
+ },{"./controllers/configurator-controller":7,"./controllers/product-controller":9,"./controllers/viewer-controller":10,"@plattar/plattar-api":40}],12:[function(require,module,exports){
586
1155
  "use strict";
587
1156
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
588
1157
  if (k2 === undefined) k2 = k;
@@ -607,7 +1176,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
607
1176
  return (mod && mod.__esModule) ? mod : { "default": mod };
608
1177
  };
609
1178
  Object.defineProperty(exports, "__esModule", { value: true });
610
- exports.Util = exports.ModelAR = exports.SceneAR = exports.ProductAR = exports.ConfiguratorAR = exports.version = exports.PlattarQRCode = exports.PlattarWeb = void 0;
1179
+ exports.Util = exports.RawAR = exports.ModelAR = exports.SceneAR = exports.ProductAR = exports.ConfiguratorAR = exports.version = exports.PlattarQRCode = exports.PlattarWeb = void 0;
611
1180
  exports.PlattarWeb = __importStar(require("@plattar/plattar-web"));
612
1181
  exports.PlattarQRCode = __importStar(require("@plattar/plattar-qrcode"));
613
1182
  exports.version = __importStar(require("./version"));
@@ -619,6 +1188,8 @@ var scene_ar_1 = require("./ar/scene-ar");
619
1188
  Object.defineProperty(exports, "SceneAR", { enumerable: true, get: function () { return scene_ar_1.SceneAR; } });
620
1189
  var model_ar_1 = require("./ar/model-ar");
621
1190
  Object.defineProperty(exports, "ModelAR", { enumerable: true, get: function () { return model_ar_1.ModelAR; } });
1191
+ var raw_ar_1 = require("./ar/raw-ar");
1192
+ Object.defineProperty(exports, "RawAR", { enumerable: true, get: function () { return raw_ar_1.RawAR; } });
622
1193
  var util_1 = require("./util/util");
623
1194
  Object.defineProperty(exports, "Util", { enumerable: true, get: function () { return util_1.Util; } });
624
1195
  const plattar_embed_1 = __importDefault(require("./embed/plattar-embed"));
@@ -630,7 +1201,7 @@ if (customElements) {
630
1201
  }
631
1202
  console.log("using @plattar/plattar-ar-adapter v" + version_1.default);
632
1203
 
633
- },{"./ar/configurator-ar":1,"./ar/model-ar":3,"./ar/product-ar":4,"./ar/scene-ar":5,"./embed/plattar-embed":6,"./util/util":8,"./version":9,"@plattar/plattar-qrcode":101,"@plattar/plattar-web":114}],8:[function(require,module,exports){
1204
+ },{"./ar/configurator-ar":1,"./ar/model-ar":3,"./ar/product-ar":4,"./ar/raw-ar":5,"./ar/scene-ar":6,"./embed/plattar-embed":11,"./util/util":13,"./version":14,"@plattar/plattar-qrcode":106,"@plattar/plattar-web":125}],13:[function(require,module,exports){
634
1205
  "use strict";
635
1206
  Object.defineProperty(exports, "__esModule", { value: true });
636
1207
  exports.Util = void 0;
@@ -717,12 +1288,12 @@ class Util {
717
1288
  }
718
1289
  exports.Util = Util;
719
1290
 
720
- },{}],9:[function(require,module,exports){
1291
+ },{}],14:[function(require,module,exports){
721
1292
  "use strict";
722
1293
  Object.defineProperty(exports, "__esModule", { value: true });
723
- exports.default = "1.122.1";
1294
+ exports.default = "1.123.1";
724
1295
 
725
- },{}],10:[function(require,module,exports){
1296
+ },{}],15:[function(require,module,exports){
726
1297
  "use strict";
727
1298
  Object.defineProperty(exports, "__esModule", { value: true });
728
1299
  class ARViewer {
@@ -733,7 +1304,7 @@ class ARViewer {
733
1304
  }
734
1305
  exports.default = ARViewer;
735
1306
 
736
- },{}],11:[function(require,module,exports){
1307
+ },{}],16:[function(require,module,exports){
737
1308
  "use strict";
738
1309
  var __importDefault = (this && this.__importDefault) || function (mod) {
739
1310
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -783,7 +1354,7 @@ class QuicklookViewer extends ar_viewer_1.default {
783
1354
  }
784
1355
  exports.default = QuicklookViewer;
785
1356
 
786
- },{"./ar-viewer":10}],12:[function(require,module,exports){
1357
+ },{"./ar-viewer":15}],17:[function(require,module,exports){
787
1358
  "use strict";
788
1359
  var __importDefault = (this && this.__importDefault) || function (mod) {
789
1360
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -813,7 +1384,7 @@ class RealityViewer extends ar_viewer_1.default {
813
1384
  }
814
1385
  exports.default = RealityViewer;
815
1386
 
816
- },{"./ar-viewer":10}],13:[function(require,module,exports){
1387
+ },{"./ar-viewer":15}],18:[function(require,module,exports){
817
1388
  "use strict";
818
1389
  var __importDefault = (this && this.__importDefault) || function (mod) {
819
1390
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -866,7 +1437,7 @@ class SceneViewer extends ar_viewer_1.default {
866
1437
  }
867
1438
  exports.default = SceneViewer;
868
1439
 
869
- },{"./ar-viewer":10}],14:[function(require,module,exports){
1440
+ },{"./ar-viewer":15}],19:[function(require,module,exports){
870
1441
  "use strict";
871
1442
  const Messenger = require("./messenger/messenger.js");
872
1443
  const Memory = require("./memory/memory.js");
@@ -900,7 +1471,7 @@ module.exports = {
900
1471
  memory: GlobalEventHandler.instance().memoryInstance,
901
1472
  version: Version
902
1473
  }
903
- },{"./memory/memory.js":15,"./messenger/global-event-handler.js":22,"./messenger/messenger.js":23,"./version":28}],15:[function(require,module,exports){
1474
+ },{"./memory/memory.js":20,"./messenger/global-event-handler.js":27,"./messenger/messenger.js":28,"./version":33}],20:[function(require,module,exports){
904
1475
  const PermanentMemory = require("./permanent-memory");
905
1476
  const TemporaryMemory = require("./temporary-memory");
906
1477
 
@@ -934,7 +1505,7 @@ class Memory {
934
1505
  }
935
1506
 
936
1507
  module.exports = Memory;
937
- },{"./permanent-memory":16,"./temporary-memory":17}],16:[function(require,module,exports){
1508
+ },{"./permanent-memory":21,"./temporary-memory":22}],21:[function(require,module,exports){
938
1509
  const WrappedValue = require("./wrapped-value");
939
1510
 
940
1511
  class PermanentMemory {
@@ -1003,7 +1574,7 @@ class PermanentMemory {
1003
1574
  }
1004
1575
 
1005
1576
  module.exports = PermanentMemory;
1006
- },{"./wrapped-value":18}],17:[function(require,module,exports){
1577
+ },{"./wrapped-value":23}],22:[function(require,module,exports){
1007
1578
  const WrappedValue = require("./wrapped-value");
1008
1579
 
1009
1580
  class TemporaryMemory {
@@ -1060,7 +1631,7 @@ class TemporaryMemory {
1060
1631
  }
1061
1632
 
1062
1633
  module.exports = TemporaryMemory;
1063
- },{"./wrapped-value":18}],18:[function(require,module,exports){
1634
+ },{"./wrapped-value":23}],23:[function(require,module,exports){
1064
1635
  /**
1065
1636
  * WrappedValue represents a generic value type with a callback function
1066
1637
  * for when the value has changed
@@ -1172,7 +1743,7 @@ class WrappedValue {
1172
1743
  }
1173
1744
 
1174
1745
  module.exports = WrappedValue;
1175
- },{}],19:[function(require,module,exports){
1746
+ },{}],24:[function(require,module,exports){
1176
1747
  /**
1177
1748
  * Broadcaster is used to call functions in multiple contexts at the
1178
1749
  * same time. This can be useful without having to handle complex logic
@@ -1225,7 +1796,7 @@ class Broadcaster {
1225
1796
  }
1226
1797
 
1227
1798
  module.exports = Broadcaster;
1228
- },{}],20:[function(require,module,exports){
1799
+ },{}],25:[function(require,module,exports){
1229
1800
  const WrappedFunction = require("./wrapped-local-function");
1230
1801
 
1231
1802
  class CurrentFunctionList {
@@ -1276,7 +1847,7 @@ class CurrentFunctionList {
1276
1847
  }
1277
1848
 
1278
1849
  module.exports = CurrentFunctionList;
1279
- },{"./wrapped-local-function":21}],21:[function(require,module,exports){
1850
+ },{"./wrapped-local-function":26}],26:[function(require,module,exports){
1280
1851
  const Util = require("../util/util.js");
1281
1852
 
1282
1853
  /**
@@ -1363,7 +1934,7 @@ class WrappedLocalFunction {
1363
1934
  }
1364
1935
 
1365
1936
  module.exports = WrappedLocalFunction;
1366
- },{"../util/util.js":27}],22:[function(require,module,exports){
1937
+ },{"../util/util.js":32}],27:[function(require,module,exports){
1367
1938
  const RemoteInterface = require("./remote-interface.js");
1368
1939
 
1369
1940
  /**
@@ -1448,7 +2019,7 @@ GlobalEventHandler.instance = () => {
1448
2019
  };
1449
2020
 
1450
2021
  module.exports = GlobalEventHandler;
1451
- },{"./remote-interface.js":24}],23:[function(require,module,exports){
2022
+ },{"./remote-interface.js":29}],28:[function(require,module,exports){
1452
2023
  const CurrentFunctionList = require("./current/current-function-list");
1453
2024
  const RemoteInterface = require("./remote-interface");
1454
2025
  const RemoteFunctionList = require("./remote/remote-function-list");
@@ -1747,7 +2318,7 @@ class Messenger {
1747
2318
  }
1748
2319
 
1749
2320
  module.exports = Messenger;
1750
- },{"./broadcaster.js":19,"./current/current-function-list":20,"./global-event-handler.js":22,"./remote-interface":24,"./remote/remote-function-list":25,"./util/util.js":27}],24:[function(require,module,exports){
2321
+ },{"./broadcaster.js":24,"./current/current-function-list":25,"./global-event-handler.js":27,"./remote-interface":29,"./remote/remote-function-list":30,"./util/util.js":32}],29:[function(require,module,exports){
1751
2322
  /**
1752
2323
  * Provides a single useful interface for performing remote function calls
1753
2324
  */
@@ -1806,7 +2377,7 @@ class RemoteInterface {
1806
2377
  }
1807
2378
 
1808
2379
  module.exports = RemoteInterface;
1809
- },{}],25:[function(require,module,exports){
2380
+ },{}],30:[function(require,module,exports){
1810
2381
  const WrappedFunction = require("./wrapped-remote-function");
1811
2382
 
1812
2383
  class RemoteFunctionList {
@@ -1885,7 +2456,7 @@ class RemoteFunctionList {
1885
2456
  }
1886
2457
 
1887
2458
  module.exports = RemoteFunctionList;
1888
- },{"./wrapped-remote-function":26}],26:[function(require,module,exports){
2459
+ },{"./wrapped-remote-function":31}],31:[function(require,module,exports){
1889
2460
  const Util = require("../util/util.js");
1890
2461
  const GlobalEventHandler = require("../global-event-handler.js");
1891
2462
 
@@ -1966,7 +2537,7 @@ class WrappedRemoteFunction {
1966
2537
  }
1967
2538
 
1968
2539
  module.exports = WrappedRemoteFunction;
1969
- },{"../global-event-handler.js":22,"../util/util.js":27}],27:[function(require,module,exports){
2540
+ },{"../global-event-handler.js":27,"../util/util.js":32}],32:[function(require,module,exports){
1970
2541
  class Util {
1971
2542
 
1972
2543
  /**
@@ -1992,10 +2563,10 @@ class Util {
1992
2563
  }
1993
2564
 
1994
2565
  module.exports = Util;
1995
- },{}],28:[function(require,module,exports){
2566
+ },{}],33:[function(require,module,exports){
1996
2567
  module.exports = "1.113.6";
1997
2568
 
1998
- },{}],29:[function(require,module,exports){
2569
+ },{}],34:[function(require,module,exports){
1999
2570
  "use strict";
2000
2571
  Object.defineProperty(exports, "__esModule", { value: true });
2001
2572
  exports.AnalyticsData = void 0;
@@ -2042,7 +2613,7 @@ class AnalyticsData {
2042
2613
  }
2043
2614
  exports.AnalyticsData = AnalyticsData;
2044
2615
 
2045
- },{"../util/util":33}],30:[function(require,module,exports){
2616
+ },{"../util/util":38}],35:[function(require,module,exports){
2046
2617
  "use strict";
2047
2618
  var __importDefault = (this && this.__importDefault) || function (mod) {
2048
2619
  return (mod && mod.__esModule) ? mod : { "default": mod };
@@ -2129,7 +2700,7 @@ class Analytics {
2129
2700
  }
2130
2701
  exports.Analytics = Analytics;
2131
2702
 
2132
- },{"../util/basic-http":32,"./analytics-data":29}],31:[function(require,module,exports){
2703
+ },{"../util/basic-http":37,"./analytics-data":34}],36:[function(require,module,exports){
2133
2704
  "use strict";
2134
2705
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
2135
2706
  if (k2 === undefined) k2 = k;
@@ -2161,7 +2732,7 @@ Object.defineProperty(exports, "Analytics", { enumerable: true, get: function ()
2161
2732
  const version_1 = __importDefault(require("./version"));
2162
2733
  console.log("using @plattar/plattar-analytics v" + version_1.default);
2163
2734
 
2164
- },{"./analytics/analytics":30,"./version":34}],32:[function(require,module,exports){
2735
+ },{"./analytics/analytics":35,"./version":39}],37:[function(require,module,exports){
2165
2736
  "use strict";
2166
2737
  Object.defineProperty(exports, "__esModule", { value: true });
2167
2738
  /**
@@ -2227,7 +2798,7 @@ class BasicHTTP {
2227
2798
  }
2228
2799
  exports.default = BasicHTTP;
2229
2800
 
2230
- },{}],33:[function(require,module,exports){
2801
+ },{}],38:[function(require,module,exports){
2231
2802
  "use strict";
2232
2803
  Object.defineProperty(exports, "__esModule", { value: true });
2233
2804
  exports.Util = void 0;
@@ -2253,12 +2824,12 @@ class Util {
2253
2824
  }
2254
2825
  exports.Util = Util;
2255
2826
 
2256
- },{}],34:[function(require,module,exports){
2827
+ },{}],39:[function(require,module,exports){
2257
2828
  "use strict";
2258
2829
  Object.defineProperty(exports, "__esModule", { value: true });
2259
2830
  exports.default = "1.117.2";
2260
2831
 
2261
- },{}],35:[function(require,module,exports){
2832
+ },{}],40:[function(require,module,exports){
2262
2833
  "use strict";
2263
2834
  const Server = require("./server/plattar-server.js");
2264
2835
  const Util = require("./util/plattar-util.js");
@@ -2413,7 +2984,7 @@ module.exports = {
2413
2984
  version: Version
2414
2985
  };
2415
2986
 
2416
- },{"./server/plattar-server.js":37,"./types/application.js":38,"./types/content-pipeline/brief.js":39,"./types/content-pipeline/comment-brief.js":40,"./types/content-pipeline/comment-quote.js":41,"./types/content-pipeline/comment-solution.js":42,"./types/content-pipeline/folder.js":43,"./types/content-pipeline/pipeline-user.js":44,"./types/content-pipeline/quote.js":45,"./types/content-pipeline/rating.js":46,"./types/content-pipeline/solution.js":47,"./types/file/file-audio.js":48,"./types/file/file-base.js":49,"./types/file/file-image.js":50,"./types/file/file-model.js":51,"./types/file/file-script.js":52,"./types/file/file-video.js":53,"./types/misc/application-build.js":57,"./types/misc/asset-library.js":58,"./types/misc/async-job.js":59,"./types/misc/script-event.js":60,"./types/misc/tag.js":61,"./types/page/card-base.js":62,"./types/page/card-button.js":63,"./types/page/card-html.js":64,"./types/page/card-iframe.js":65,"./types/page/card-image.js":66,"./types/page/card-map.js":67,"./types/page/card-paragraph.js":68,"./types/page/card-row.js":69,"./types/page/card-slider.js":70,"./types/page/card-title.js":71,"./types/page/card-video.js":72,"./types/page/card-youtube.js":73,"./types/page/page.js":74,"./types/product/product-annotation.js":75,"./types/product/product-base.js":76,"./types/product/product-variation.js":77,"./types/product/product.js":78,"./types/scene/scene-annotation.js":79,"./types/scene/scene-audio.js":80,"./types/scene/scene-base.js":81,"./types/scene/scene-button.js":82,"./types/scene/scene-camera.js":83,"./types/scene/scene-carousel.js":84,"./types/scene/scene-image.js":85,"./types/scene/scene-model.js":86,"./types/scene/scene-panorama.js":87,"./types/scene/scene-poller.js":88,"./types/scene/scene-product.js":89,"./types/scene/scene-script.js":90,"./types/scene/scene-shadow.js":91,"./types/scene/scene-video.js":92,"./types/scene/scene-volumetric.js":93,"./types/scene/scene-youtube.js":94,"./types/scene/scene.js":95,"./types/trigger/trigger-image.js":96,"./util/plattar-util.js":97,"./version":98}],36:[function(require,module,exports){
2987
+ },{"./server/plattar-server.js":42,"./types/application.js":43,"./types/content-pipeline/brief.js":44,"./types/content-pipeline/comment-brief.js":45,"./types/content-pipeline/comment-quote.js":46,"./types/content-pipeline/comment-solution.js":47,"./types/content-pipeline/folder.js":48,"./types/content-pipeline/pipeline-user.js":49,"./types/content-pipeline/quote.js":50,"./types/content-pipeline/rating.js":51,"./types/content-pipeline/solution.js":52,"./types/file/file-audio.js":53,"./types/file/file-base.js":54,"./types/file/file-image.js":55,"./types/file/file-model.js":56,"./types/file/file-script.js":57,"./types/file/file-video.js":58,"./types/misc/application-build.js":62,"./types/misc/asset-library.js":63,"./types/misc/async-job.js":64,"./types/misc/script-event.js":65,"./types/misc/tag.js":66,"./types/page/card-base.js":67,"./types/page/card-button.js":68,"./types/page/card-html.js":69,"./types/page/card-iframe.js":70,"./types/page/card-image.js":71,"./types/page/card-map.js":72,"./types/page/card-paragraph.js":73,"./types/page/card-row.js":74,"./types/page/card-slider.js":75,"./types/page/card-title.js":76,"./types/page/card-video.js":77,"./types/page/card-youtube.js":78,"./types/page/page.js":79,"./types/product/product-annotation.js":80,"./types/product/product-base.js":81,"./types/product/product-variation.js":82,"./types/product/product.js":83,"./types/scene/scene-annotation.js":84,"./types/scene/scene-audio.js":85,"./types/scene/scene-base.js":86,"./types/scene/scene-button.js":87,"./types/scene/scene-camera.js":88,"./types/scene/scene-carousel.js":89,"./types/scene/scene-image.js":90,"./types/scene/scene-model.js":91,"./types/scene/scene-panorama.js":92,"./types/scene/scene-poller.js":93,"./types/scene/scene-product.js":94,"./types/scene/scene-script.js":95,"./types/scene/scene-shadow.js":96,"./types/scene/scene-video.js":97,"./types/scene/scene-volumetric.js":98,"./types/scene/scene-youtube.js":99,"./types/scene/scene.js":100,"./types/trigger/trigger-image.js":101,"./util/plattar-util.js":102,"./version":103}],41:[function(require,module,exports){
2417
2988
  const fetch = require("node-fetch");
2418
2989
 
2419
2990
  class PlattarQuery {
@@ -2905,7 +3476,7 @@ PlattarQuery._DeleteGlobalCachedObject = (obj) => {
2905
3476
  };
2906
3477
 
2907
3478
  module.exports = PlattarQuery;
2908
- },{"../util/plattar-util.js":97,"node-fetch":117}],37:[function(require,module,exports){
3479
+ },{"../util/plattar-util.js":102,"node-fetch":128}],42:[function(require,module,exports){
2909
3480
  (function (process){(function (){
2910
3481
  const fetch = require("node-fetch");
2911
3482
 
@@ -3110,7 +3681,7 @@ PlattarServer.location = () => {
3110
3681
 
3111
3682
  module.exports = PlattarServer;
3112
3683
  }).call(this)}).call(this,require('_process'))
3113
- },{"_process":118,"node-fetch":117}],38:[function(require,module,exports){
3684
+ },{"_process":130,"node-fetch":128}],43:[function(require,module,exports){
3114
3685
  const PlattarBase = require("./interfaces/plattar-base.js");
3115
3686
 
3116
3687
  class Application extends PlattarBase {
@@ -3120,7 +3691,7 @@ class Application extends PlattarBase {
3120
3691
  }
3121
3692
 
3122
3693
  module.exports = Application;
3123
- },{"./interfaces/plattar-base.js":54}],39:[function(require,module,exports){
3694
+ },{"./interfaces/plattar-base.js":59}],44:[function(require,module,exports){
3124
3695
  const PlattarBase = require("../interfaces/plattar-base");
3125
3696
 
3126
3697
  class Brief extends PlattarBase {
@@ -3130,7 +3701,7 @@ class Brief extends PlattarBase {
3130
3701
  }
3131
3702
 
3132
3703
  module.exports = Brief;
3133
- },{"../interfaces/plattar-base":54}],40:[function(require,module,exports){
3704
+ },{"../interfaces/plattar-base":59}],45:[function(require,module,exports){
3134
3705
  const PlattarBase = require("../interfaces/plattar-base");
3135
3706
 
3136
3707
  class CommentBrief extends PlattarBase {
@@ -3140,7 +3711,7 @@ class CommentBrief extends PlattarBase {
3140
3711
  }
3141
3712
 
3142
3713
  module.exports = CommentBrief;
3143
- },{"../interfaces/plattar-base":54}],41:[function(require,module,exports){
3714
+ },{"../interfaces/plattar-base":59}],46:[function(require,module,exports){
3144
3715
  const PlattarBase = require("../interfaces/plattar-base");
3145
3716
 
3146
3717
  class CommentQuote extends PlattarBase {
@@ -3150,7 +3721,7 @@ class CommentQuote extends PlattarBase {
3150
3721
  }
3151
3722
 
3152
3723
  module.exports = CommentQuote;
3153
- },{"../interfaces/plattar-base":54}],42:[function(require,module,exports){
3724
+ },{"../interfaces/plattar-base":59}],47:[function(require,module,exports){
3154
3725
  const PlattarBase = require("../interfaces/plattar-base");
3155
3726
 
3156
3727
  class CommentSolution extends PlattarBase {
@@ -3160,7 +3731,7 @@ class CommentSolution extends PlattarBase {
3160
3731
  }
3161
3732
 
3162
3733
  module.exports = CommentSolution;
3163
- },{"../interfaces/plattar-base":54}],43:[function(require,module,exports){
3734
+ },{"../interfaces/plattar-base":59}],48:[function(require,module,exports){
3164
3735
  const PlattarBase = require("../interfaces/plattar-base");
3165
3736
 
3166
3737
  class Folder extends PlattarBase {
@@ -3170,7 +3741,7 @@ class Folder extends PlattarBase {
3170
3741
  }
3171
3742
 
3172
3743
  module.exports = Folder;
3173
- },{"../interfaces/plattar-base":54}],44:[function(require,module,exports){
3744
+ },{"../interfaces/plattar-base":59}],49:[function(require,module,exports){
3174
3745
  const PlattarBase = require("../interfaces/plattar-base");
3175
3746
 
3176
3747
  class PipelineUser extends PlattarBase {
@@ -3180,7 +3751,7 @@ class PipelineUser extends PlattarBase {
3180
3751
  }
3181
3752
 
3182
3753
  module.exports = PipelineUser;
3183
- },{"../interfaces/plattar-base":54}],45:[function(require,module,exports){
3754
+ },{"../interfaces/plattar-base":59}],50:[function(require,module,exports){
3184
3755
  const PlattarBase = require("../interfaces/plattar-base");
3185
3756
 
3186
3757
  class Quote extends PlattarBase {
@@ -3190,7 +3761,7 @@ class Quote extends PlattarBase {
3190
3761
  }
3191
3762
 
3192
3763
  module.exports = Quote;
3193
- },{"../interfaces/plattar-base":54}],46:[function(require,module,exports){
3764
+ },{"../interfaces/plattar-base":59}],51:[function(require,module,exports){
3194
3765
  const PlattarBase = require("../interfaces/plattar-base");
3195
3766
 
3196
3767
  class Rating extends PlattarBase {
@@ -3200,7 +3771,7 @@ class Rating extends PlattarBase {
3200
3771
  }
3201
3772
 
3202
3773
  module.exports = Rating;
3203
- },{"../interfaces/plattar-base":54}],47:[function(require,module,exports){
3774
+ },{"../interfaces/plattar-base":59}],52:[function(require,module,exports){
3204
3775
  const PlattarBase = require("../interfaces/plattar-base");
3205
3776
 
3206
3777
  class Solution extends PlattarBase {
@@ -3210,7 +3781,7 @@ class Solution extends PlattarBase {
3210
3781
  }
3211
3782
 
3212
3783
  module.exports = Solution;
3213
- },{"../interfaces/plattar-base":54}],48:[function(require,module,exports){
3784
+ },{"../interfaces/plattar-base":59}],53:[function(require,module,exports){
3214
3785
  const FileBase = require("./file-base.js");
3215
3786
 
3216
3787
  class FileAudio extends FileBase {
@@ -3220,7 +3791,7 @@ class FileAudio extends FileBase {
3220
3791
  }
3221
3792
 
3222
3793
  module.exports = FileAudio;
3223
- },{"./file-base.js":49}],49:[function(require,module,exports){
3794
+ },{"./file-base.js":54}],54:[function(require,module,exports){
3224
3795
  const PlattarBase = require("../interfaces/plattar-base.js");
3225
3796
  const Server = require("../../server/plattar-server.js");
3226
3797
 
@@ -3280,7 +3851,7 @@ class FileBase extends PlattarBase {
3280
3851
  }
3281
3852
 
3282
3853
  module.exports = FileBase;
3283
- },{"../../server/plattar-server.js":37,"../interfaces/plattar-base.js":54,"./file-audio.js":48,"./file-image.js":50,"./file-model.js":51,"./file-video.js":53}],50:[function(require,module,exports){
3854
+ },{"../../server/plattar-server.js":42,"../interfaces/plattar-base.js":59,"./file-audio.js":53,"./file-image.js":55,"./file-model.js":56,"./file-video.js":58}],55:[function(require,module,exports){
3284
3855
  const FileBase = require("./file-base.js");
3285
3856
 
3286
3857
  class FileImage extends FileBase {
@@ -3290,7 +3861,7 @@ class FileImage extends FileBase {
3290
3861
  }
3291
3862
 
3292
3863
  module.exports = FileImage;
3293
- },{"./file-base.js":49}],51:[function(require,module,exports){
3864
+ },{"./file-base.js":54}],56:[function(require,module,exports){
3294
3865
  const FileBase = require("./file-base.js");
3295
3866
 
3296
3867
  class FileModel extends FileBase {
@@ -3300,7 +3871,7 @@ class FileModel extends FileBase {
3300
3871
  }
3301
3872
 
3302
3873
  module.exports = FileModel;
3303
- },{"./file-base.js":49}],52:[function(require,module,exports){
3874
+ },{"./file-base.js":54}],57:[function(require,module,exports){
3304
3875
  const FileBase = require("./file-base.js");
3305
3876
 
3306
3877
  class FileScript extends FileBase {
@@ -3310,7 +3881,7 @@ class FileScript extends FileBase {
3310
3881
  }
3311
3882
 
3312
3883
  module.exports = FileScript;
3313
- },{"./file-base.js":49}],53:[function(require,module,exports){
3884
+ },{"./file-base.js":54}],58:[function(require,module,exports){
3314
3885
  const FileBase = require("./file-base.js");
3315
3886
 
3316
3887
  class FileVideo extends FileBase {
@@ -3320,7 +3891,7 @@ class FileVideo extends FileBase {
3320
3891
  }
3321
3892
 
3322
3893
  module.exports = FileVideo;
3323
- },{"./file-base.js":49}],54:[function(require,module,exports){
3894
+ },{"./file-base.js":54}],59:[function(require,module,exports){
3324
3895
  const PlattarObject = require("./plattar-object.js");
3325
3896
  const Server = require("../../server/plattar-server.js");
3326
3897
 
@@ -3335,7 +3906,7 @@ class PlattarBase extends PlattarObject {
3335
3906
  }
3336
3907
 
3337
3908
  module.exports = PlattarBase;
3338
- },{"../../server/plattar-server.js":37,"./plattar-object.js":56}],55:[function(require,module,exports){
3909
+ },{"../../server/plattar-server.js":42,"./plattar-object.js":61}],60:[function(require,module,exports){
3339
3910
  /**
3340
3911
  * Handles the list of relationships for the provided object
3341
3912
  */
@@ -3456,7 +4027,7 @@ class PlattarObjectRelations {
3456
4027
  }
3457
4028
 
3458
4029
  module.exports = PlattarObjectRelations;
3459
- },{"../../util/plattar-util.js":97}],56:[function(require,module,exports){
4030
+ },{"../../util/plattar-util.js":102}],61:[function(require,module,exports){
3460
4031
  const PlattarQuery = require("../../server/plattar-query.js");
3461
4032
  const PlattarObjectRelations = require("./plattar-object-relations.js");
3462
4033
 
@@ -3599,7 +4170,7 @@ class PlattarObject {
3599
4170
  }
3600
4171
 
3601
4172
  module.exports = PlattarObject;
3602
- },{"../../server/plattar-query.js":36,"./plattar-object-relations.js":55}],57:[function(require,module,exports){
4173
+ },{"../../server/plattar-query.js":41,"./plattar-object-relations.js":60}],62:[function(require,module,exports){
3603
4174
  const PlattarBase = require("../interfaces/plattar-base.js");
3604
4175
 
3605
4176
  class ApplicationBuild extends PlattarBase {
@@ -3609,7 +4180,7 @@ class ApplicationBuild extends PlattarBase {
3609
4180
  }
3610
4181
 
3611
4182
  module.exports = ApplicationBuild;
3612
- },{"../interfaces/plattar-base.js":54}],58:[function(require,module,exports){
4183
+ },{"../interfaces/plattar-base.js":59}],63:[function(require,module,exports){
3613
4184
  const PlattarBase = require("../interfaces/plattar-base.js");
3614
4185
 
3615
4186
  class AssetLibrary extends PlattarBase {
@@ -3619,7 +4190,7 @@ class AssetLibrary extends PlattarBase {
3619
4190
  }
3620
4191
 
3621
4192
  module.exports = AssetLibrary;
3622
- },{"../interfaces/plattar-base.js":54}],59:[function(require,module,exports){
4193
+ },{"../interfaces/plattar-base.js":59}],64:[function(require,module,exports){
3623
4194
  const PlattarBase = require("../interfaces/plattar-base.js");
3624
4195
 
3625
4196
  class AsyncJob extends PlattarBase {
@@ -3633,7 +4204,7 @@ class AsyncJob extends PlattarBase {
3633
4204
  }
3634
4205
 
3635
4206
  module.exports = AsyncJob;
3636
- },{"../interfaces/plattar-base.js":54}],60:[function(require,module,exports){
4207
+ },{"../interfaces/plattar-base.js":59}],65:[function(require,module,exports){
3637
4208
  const PlattarBase = require("../interfaces/plattar-base.js");
3638
4209
 
3639
4210
  class ScriptEvent extends PlattarBase {
@@ -3643,7 +4214,7 @@ class ScriptEvent extends PlattarBase {
3643
4214
  }
3644
4215
 
3645
4216
  module.exports = ScriptEvent;
3646
- },{"../interfaces/plattar-base.js":54}],61:[function(require,module,exports){
4217
+ },{"../interfaces/plattar-base.js":59}],66:[function(require,module,exports){
3647
4218
  const PlattarBase = require("../interfaces/plattar-base.js");
3648
4219
 
3649
4220
  class Tag extends PlattarBase {
@@ -3653,7 +4224,7 @@ class Tag extends PlattarBase {
3653
4224
  }
3654
4225
 
3655
4226
  module.exports = Tag;
3656
- },{"../interfaces/plattar-base.js":54}],62:[function(require,module,exports){
4227
+ },{"../interfaces/plattar-base.js":59}],67:[function(require,module,exports){
3657
4228
  const PlattarBase = require("../interfaces/plattar-base.js");
3658
4229
  const Server = require("../../server/plattar-server.js");
3659
4230
 
@@ -3684,7 +4255,7 @@ class CardBase extends PlattarBase {
3684
4255
  }
3685
4256
 
3686
4257
  module.exports = CardBase;
3687
- },{"../../server/plattar-server.js":37,"../interfaces/plattar-base.js":54,"./card-button.js":63,"./card-html.js":64,"./card-iframe.js":65,"./card-image.js":66,"./card-map.js":67,"./card-paragraph.js":68,"./card-row.js":69,"./card-slider.js":70,"./card-title.js":71,"./card-video.js":72,"./card-youtube.js":73}],63:[function(require,module,exports){
4258
+ },{"../../server/plattar-server.js":42,"../interfaces/plattar-base.js":59,"./card-button.js":68,"./card-html.js":69,"./card-iframe.js":70,"./card-image.js":71,"./card-map.js":72,"./card-paragraph.js":73,"./card-row.js":74,"./card-slider.js":75,"./card-title.js":76,"./card-video.js":77,"./card-youtube.js":78}],68:[function(require,module,exports){
3688
4259
  const CardBase = require("./card-base.js");
3689
4260
 
3690
4261
  class CardButton extends CardBase {
@@ -3694,7 +4265,7 @@ class CardButton extends CardBase {
3694
4265
  }
3695
4266
 
3696
4267
  module.exports = CardButton;
3697
- },{"./card-base.js":62}],64:[function(require,module,exports){
4268
+ },{"./card-base.js":67}],69:[function(require,module,exports){
3698
4269
  const CardBase = require("./card-base.js");
3699
4270
 
3700
4271
  class CardHTML extends CardBase {
@@ -3704,7 +4275,7 @@ class CardHTML extends CardBase {
3704
4275
  }
3705
4276
 
3706
4277
  module.exports = CardHTML;
3707
- },{"./card-base.js":62}],65:[function(require,module,exports){
4278
+ },{"./card-base.js":67}],70:[function(require,module,exports){
3708
4279
  const CardBase = require("./card-base.js");
3709
4280
 
3710
4281
  class CardIFrame extends CardBase {
@@ -3714,7 +4285,7 @@ class CardIFrame extends CardBase {
3714
4285
  }
3715
4286
 
3716
4287
  module.exports = CardIFrame;
3717
- },{"./card-base.js":62}],66:[function(require,module,exports){
4288
+ },{"./card-base.js":67}],71:[function(require,module,exports){
3718
4289
  const CardBase = require("./card-base.js");
3719
4290
 
3720
4291
  class CardImage extends CardBase {
@@ -3724,7 +4295,7 @@ class CardImage extends CardBase {
3724
4295
  }
3725
4296
 
3726
4297
  module.exports = CardImage;
3727
- },{"./card-base.js":62}],67:[function(require,module,exports){
4298
+ },{"./card-base.js":67}],72:[function(require,module,exports){
3728
4299
  const CardBase = require("./card-base.js");
3729
4300
 
3730
4301
  class CardMap extends CardBase {
@@ -3734,7 +4305,7 @@ class CardMap extends CardBase {
3734
4305
  }
3735
4306
 
3736
4307
  module.exports = CardMap;
3737
- },{"./card-base.js":62}],68:[function(require,module,exports){
4308
+ },{"./card-base.js":67}],73:[function(require,module,exports){
3738
4309
  const CardBase = require("./card-base.js");
3739
4310
 
3740
4311
  class CardParagraph extends CardBase {
@@ -3744,7 +4315,7 @@ class CardParagraph extends CardBase {
3744
4315
  }
3745
4316
 
3746
4317
  module.exports = CardParagraph;
3747
- },{"./card-base.js":62}],69:[function(require,module,exports){
4318
+ },{"./card-base.js":67}],74:[function(require,module,exports){
3748
4319
  const CardBase = require("./card-base.js");
3749
4320
 
3750
4321
  class CardRow extends CardBase {
@@ -3754,7 +4325,7 @@ class CardRow extends CardBase {
3754
4325
  }
3755
4326
 
3756
4327
  module.exports = CardRow;
3757
- },{"./card-base.js":62}],70:[function(require,module,exports){
4328
+ },{"./card-base.js":67}],75:[function(require,module,exports){
3758
4329
  const CardBase = require("./card-base.js");
3759
4330
 
3760
4331
  class CardSlider extends CardBase {
@@ -3764,7 +4335,7 @@ class CardSlider extends CardBase {
3764
4335
  }
3765
4336
 
3766
4337
  module.exports = CardSlider;
3767
- },{"./card-base.js":62}],71:[function(require,module,exports){
4338
+ },{"./card-base.js":67}],76:[function(require,module,exports){
3768
4339
  const CardBase = require("./card-base.js");
3769
4340
 
3770
4341
  class CardTitle extends CardBase {
@@ -3774,7 +4345,7 @@ class CardTitle extends CardBase {
3774
4345
  }
3775
4346
 
3776
4347
  module.exports = CardTitle;
3777
- },{"./card-base.js":62}],72:[function(require,module,exports){
4348
+ },{"./card-base.js":67}],77:[function(require,module,exports){
3778
4349
  const CardBase = require("./card-base.js");
3779
4350
 
3780
4351
  class CardVideo extends CardBase {
@@ -3784,7 +4355,7 @@ class CardVideo extends CardBase {
3784
4355
  }
3785
4356
 
3786
4357
  module.exports = CardVideo;
3787
- },{"./card-base.js":62}],73:[function(require,module,exports){
4358
+ },{"./card-base.js":67}],78:[function(require,module,exports){
3788
4359
  const CardBase = require("./card-base.js");
3789
4360
 
3790
4361
  class CardYoutube extends CardBase {
@@ -3794,7 +4365,7 @@ class CardYoutube extends CardBase {
3794
4365
  }
3795
4366
 
3796
4367
  module.exports = CardYoutube;
3797
- },{"./card-base.js":62}],74:[function(require,module,exports){
4368
+ },{"./card-base.js":67}],79:[function(require,module,exports){
3798
4369
  const PlattarBase = require("../interfaces/plattar-base.js");
3799
4370
 
3800
4371
  class Page extends PlattarBase {
@@ -3804,7 +4375,7 @@ class Page extends PlattarBase {
3804
4375
  }
3805
4376
 
3806
4377
  module.exports = Page;
3807
- },{"../interfaces/plattar-base.js":54}],75:[function(require,module,exports){
4378
+ },{"../interfaces/plattar-base.js":59}],80:[function(require,module,exports){
3808
4379
  const ProductBase = require("./product-base.js");
3809
4380
 
3810
4381
  class ProductAnnotation extends ProductBase {
@@ -3814,7 +4385,7 @@ class ProductAnnotation extends ProductBase {
3814
4385
  }
3815
4386
 
3816
4387
  module.exports = ProductAnnotation;
3817
- },{"./product-base.js":76}],76:[function(require,module,exports){
4388
+ },{"./product-base.js":81}],81:[function(require,module,exports){
3818
4389
  const PlattarBase = require("../interfaces/plattar-base.js");
3819
4390
  const Server = require("../../server/plattar-server.js");
3820
4391
 
@@ -3836,7 +4407,7 @@ class ProductBase extends PlattarBase {
3836
4407
  }
3837
4408
 
3838
4409
  module.exports = ProductBase;
3839
- },{"../../server/plattar-server.js":37,"../interfaces/plattar-base.js":54,"./product-annotation.js":75,"./product-variation.js":77}],77:[function(require,module,exports){
4410
+ },{"../../server/plattar-server.js":42,"../interfaces/plattar-base.js":59,"./product-annotation.js":80,"./product-variation.js":82}],82:[function(require,module,exports){
3840
4411
  const ProductBase = require("./product-base.js");
3841
4412
 
3842
4413
  class ProductVariation extends ProductBase {
@@ -3846,7 +4417,7 @@ class ProductVariation extends ProductBase {
3846
4417
  }
3847
4418
 
3848
4419
  module.exports = ProductVariation;
3849
- },{"./product-base.js":76}],78:[function(require,module,exports){
4420
+ },{"./product-base.js":81}],83:[function(require,module,exports){
3850
4421
  const PlattarBase = require("../interfaces/plattar-base.js");
3851
4422
 
3852
4423
  class Product extends PlattarBase {
@@ -3856,7 +4427,7 @@ class Product extends PlattarBase {
3856
4427
  }
3857
4428
 
3858
4429
  module.exports = Product;
3859
- },{"../interfaces/plattar-base.js":54}],79:[function(require,module,exports){
4430
+ },{"../interfaces/plattar-base.js":59}],84:[function(require,module,exports){
3860
4431
  const SceneBase = require("./scene-base.js");
3861
4432
 
3862
4433
  class SceneAnnotation extends SceneBase {
@@ -3866,7 +4437,7 @@ class SceneAnnotation extends SceneBase {
3866
4437
  }
3867
4438
 
3868
4439
  module.exports = SceneAnnotation;
3869
- },{"./scene-base.js":81}],80:[function(require,module,exports){
4440
+ },{"./scene-base.js":86}],85:[function(require,module,exports){
3870
4441
  const SceneBase = require("./scene-base.js");
3871
4442
 
3872
4443
  class SceneAudio extends SceneBase {
@@ -3876,7 +4447,7 @@ class SceneAudio extends SceneBase {
3876
4447
  }
3877
4448
 
3878
4449
  module.exports = SceneAudio;
3879
- },{"./scene-base.js":81}],81:[function(require,module,exports){
4450
+ },{"./scene-base.js":86}],86:[function(require,module,exports){
3880
4451
  const PlattarBase = require("../interfaces/plattar-base.js");
3881
4452
  const Server = require("../../server/plattar-server.js");
3882
4453
 
@@ -3910,7 +4481,7 @@ class SceneBase extends PlattarBase {
3910
4481
  }
3911
4482
 
3912
4483
  module.exports = SceneBase;
3913
- },{"../../server/plattar-server.js":37,"../interfaces/plattar-base.js":54,"./scene-annotation.js":79,"./scene-audio.js":80,"./scene-button.js":82,"./scene-camera.js":83,"./scene-carousel.js":84,"./scene-image.js":85,"./scene-model.js":86,"./scene-panorama.js":87,"./scene-poller.js":88,"./scene-product.js":89,"./scene-shadow.js":91,"./scene-video.js":92,"./scene-volumetric.js":93,"./scene-youtube.js":94}],82:[function(require,module,exports){
4484
+ },{"../../server/plattar-server.js":42,"../interfaces/plattar-base.js":59,"./scene-annotation.js":84,"./scene-audio.js":85,"./scene-button.js":87,"./scene-camera.js":88,"./scene-carousel.js":89,"./scene-image.js":90,"./scene-model.js":91,"./scene-panorama.js":92,"./scene-poller.js":93,"./scene-product.js":94,"./scene-shadow.js":96,"./scene-video.js":97,"./scene-volumetric.js":98,"./scene-youtube.js":99}],87:[function(require,module,exports){
3914
4485
  const SceneBase = require("./scene-base.js");
3915
4486
 
3916
4487
  class SceneButton extends SceneBase {
@@ -3920,7 +4491,7 @@ class SceneButton extends SceneBase {
3920
4491
  }
3921
4492
 
3922
4493
  module.exports = SceneButton;
3923
- },{"./scene-base.js":81}],83:[function(require,module,exports){
4494
+ },{"./scene-base.js":86}],88:[function(require,module,exports){
3924
4495
  const SceneBase = require("./scene-base.js");
3925
4496
 
3926
4497
  class SceneCamera extends SceneBase {
@@ -3930,7 +4501,7 @@ class SceneCamera extends SceneBase {
3930
4501
  }
3931
4502
 
3932
4503
  module.exports = SceneCamera;
3933
- },{"./scene-base.js":81}],84:[function(require,module,exports){
4504
+ },{"./scene-base.js":86}],89:[function(require,module,exports){
3934
4505
  const SceneBase = require("./scene-base.js");
3935
4506
 
3936
4507
  class SceneCarousel extends SceneBase {
@@ -3940,7 +4511,7 @@ class SceneCarousel extends SceneBase {
3940
4511
  }
3941
4512
 
3942
4513
  module.exports = SceneCarousel;
3943
- },{"./scene-base.js":81}],85:[function(require,module,exports){
4514
+ },{"./scene-base.js":86}],90:[function(require,module,exports){
3944
4515
  const SceneBase = require("./scene-base.js");
3945
4516
 
3946
4517
  class SceneImage extends SceneBase {
@@ -3950,7 +4521,7 @@ class SceneImage extends SceneBase {
3950
4521
  }
3951
4522
 
3952
4523
  module.exports = SceneImage;
3953
- },{"./scene-base.js":81}],86:[function(require,module,exports){
4524
+ },{"./scene-base.js":86}],91:[function(require,module,exports){
3954
4525
  const SceneBase = require("./scene-base.js");
3955
4526
 
3956
4527
  class SceneModel extends SceneBase {
@@ -3960,7 +4531,7 @@ class SceneModel extends SceneBase {
3960
4531
  }
3961
4532
 
3962
4533
  module.exports = SceneModel;
3963
- },{"./scene-base.js":81}],87:[function(require,module,exports){
4534
+ },{"./scene-base.js":86}],92:[function(require,module,exports){
3964
4535
  const SceneBase = require("./scene-base.js");
3965
4536
 
3966
4537
  class ScenePanorama extends SceneBase {
@@ -3970,7 +4541,7 @@ class ScenePanorama extends SceneBase {
3970
4541
  }
3971
4542
 
3972
4543
  module.exports = ScenePanorama;
3973
- },{"./scene-base.js":81}],88:[function(require,module,exports){
4544
+ },{"./scene-base.js":86}],93:[function(require,module,exports){
3974
4545
  const SceneBase = require("./scene-base.js");
3975
4546
 
3976
4547
  class ScenePoller extends SceneBase {
@@ -3980,7 +4551,7 @@ class ScenePoller extends SceneBase {
3980
4551
  }
3981
4552
 
3982
4553
  module.exports = ScenePoller;
3983
- },{"./scene-base.js":81}],89:[function(require,module,exports){
4554
+ },{"./scene-base.js":86}],94:[function(require,module,exports){
3984
4555
  const SceneBase = require("./scene-base.js");
3985
4556
 
3986
4557
  class SceneProduct extends SceneBase {
@@ -3990,7 +4561,7 @@ class SceneProduct extends SceneBase {
3990
4561
  }
3991
4562
 
3992
4563
  module.exports = SceneProduct;
3993
- },{"./scene-base.js":81}],90:[function(require,module,exports){
4564
+ },{"./scene-base.js":86}],95:[function(require,module,exports){
3994
4565
  const SceneBase = require("./scene-base.js");
3995
4566
 
3996
4567
  class SceneScript extends SceneBase {
@@ -4000,7 +4571,7 @@ class SceneScript extends SceneBase {
4000
4571
  }
4001
4572
 
4002
4573
  module.exports = SceneScript;
4003
- },{"./scene-base.js":81}],91:[function(require,module,exports){
4574
+ },{"./scene-base.js":86}],96:[function(require,module,exports){
4004
4575
  const SceneBase = require("./scene-base.js");
4005
4576
 
4006
4577
  class SceneShadow extends SceneBase {
@@ -4010,7 +4581,7 @@ class SceneShadow extends SceneBase {
4010
4581
  }
4011
4582
 
4012
4583
  module.exports = SceneShadow;
4013
- },{"./scene-base.js":81}],92:[function(require,module,exports){
4584
+ },{"./scene-base.js":86}],97:[function(require,module,exports){
4014
4585
  const SceneBase = require("./scene-base.js");
4015
4586
 
4016
4587
  class SceneVideo extends SceneBase {
@@ -4020,7 +4591,7 @@ class SceneVideo extends SceneBase {
4020
4591
  }
4021
4592
 
4022
4593
  module.exports = SceneVideo;
4023
- },{"./scene-base.js":81}],93:[function(require,module,exports){
4594
+ },{"./scene-base.js":86}],98:[function(require,module,exports){
4024
4595
  const SceneBase = require("./scene-base.js");
4025
4596
 
4026
4597
  class SceneVolumetric extends SceneBase {
@@ -4030,7 +4601,7 @@ class SceneVolumetric extends SceneBase {
4030
4601
  }
4031
4602
 
4032
4603
  module.exports = SceneVolumetric;
4033
- },{"./scene-base.js":81}],94:[function(require,module,exports){
4604
+ },{"./scene-base.js":86}],99:[function(require,module,exports){
4034
4605
  const SceneBase = require("./scene-base.js");
4035
4606
 
4036
4607
  class SceneYoutube extends SceneBase {
@@ -4040,7 +4611,7 @@ class SceneYoutube extends SceneBase {
4040
4611
  }
4041
4612
 
4042
4613
  module.exports = SceneYoutube;
4043
- },{"./scene-base.js":81}],95:[function(require,module,exports){
4614
+ },{"./scene-base.js":86}],100:[function(require,module,exports){
4044
4615
  const PlattarBase = require("../interfaces/plattar-base.js");
4045
4616
 
4046
4617
  class Scene extends PlattarBase {
@@ -4050,7 +4621,7 @@ class Scene extends PlattarBase {
4050
4621
  }
4051
4622
 
4052
4623
  module.exports = Scene;
4053
- },{"../interfaces/plattar-base.js":54}],96:[function(require,module,exports){
4624
+ },{"../interfaces/plattar-base.js":59}],101:[function(require,module,exports){
4054
4625
  const PlattarBase = require("../interfaces/plattar-base.js");
4055
4626
 
4056
4627
  class TriggerImage extends PlattarBase {
@@ -4060,7 +4631,7 @@ class TriggerImage extends PlattarBase {
4060
4631
  }
4061
4632
 
4062
4633
  module.exports = TriggerImage;
4063
- },{"../interfaces/plattar-base.js":54}],97:[function(require,module,exports){
4634
+ },{"../interfaces/plattar-base.js":59}],102:[function(require,module,exports){
4064
4635
  const Application = require("../types/application.js");
4065
4636
 
4066
4637
  // import Scene types and its children
@@ -4287,10 +4858,10 @@ PlattarUtil.match = (type) => {
4287
4858
 
4288
4859
 
4289
4860
  module.exports = PlattarUtil;
4290
- },{"../types/application.js":38,"../types/content-pipeline/brief.js":39,"../types/content-pipeline/comment-brief.js":40,"../types/content-pipeline/comment-quote.js":41,"../types/content-pipeline/comment-solution.js":42,"../types/content-pipeline/folder.js":43,"../types/content-pipeline/pipeline-user.js":44,"../types/content-pipeline/quote.js":45,"../types/content-pipeline/rating.js":46,"../types/content-pipeline/solution.js":47,"../types/file/file-audio.js":48,"../types/file/file-image.js":50,"../types/file/file-model.js":51,"../types/file/file-script.js":52,"../types/file/file-video.js":53,"../types/interfaces/plattar-object.js":56,"../types/misc/application-build.js":57,"../types/misc/asset-library":58,"../types/misc/async-job.js":59,"../types/misc/script-event.js":60,"../types/misc/tag.js":61,"../types/page/card-button.js":63,"../types/page/card-html.js":64,"../types/page/card-iframe.js":65,"../types/page/card-image.js":66,"../types/page/card-map.js":67,"../types/page/card-paragraph.js":68,"../types/page/card-row.js":69,"../types/page/card-slider.js":70,"../types/page/card-title.js":71,"../types/page/card-video.js":72,"../types/page/card-youtube.js":73,"../types/page/page.js":74,"../types/product/product-annotation.js":75,"../types/product/product-variation.js":77,"../types/product/product.js":78,"../types/scene/scene-annotation.js":79,"../types/scene/scene-audio.js":80,"../types/scene/scene-button.js":82,"../types/scene/scene-camera.js":83,"../types/scene/scene-carousel.js":84,"../types/scene/scene-image.js":85,"../types/scene/scene-model.js":86,"../types/scene/scene-panorama.js":87,"../types/scene/scene-poller.js":88,"../types/scene/scene-product.js":89,"../types/scene/scene-script.js":90,"../types/scene/scene-shadow.js":91,"../types/scene/scene-video.js":92,"../types/scene/scene-volumetric.js":93,"../types/scene/scene-youtube.js":94,"../types/scene/scene.js":95,"../types/trigger/trigger-image.js":96}],98:[function(require,module,exports){
4861
+ },{"../types/application.js":43,"../types/content-pipeline/brief.js":44,"../types/content-pipeline/comment-brief.js":45,"../types/content-pipeline/comment-quote.js":46,"../types/content-pipeline/comment-solution.js":47,"../types/content-pipeline/folder.js":48,"../types/content-pipeline/pipeline-user.js":49,"../types/content-pipeline/quote.js":50,"../types/content-pipeline/rating.js":51,"../types/content-pipeline/solution.js":52,"../types/file/file-audio.js":53,"../types/file/file-image.js":55,"../types/file/file-model.js":56,"../types/file/file-script.js":57,"../types/file/file-video.js":58,"../types/interfaces/plattar-object.js":61,"../types/misc/application-build.js":62,"../types/misc/asset-library":63,"../types/misc/async-job.js":64,"../types/misc/script-event.js":65,"../types/misc/tag.js":66,"../types/page/card-button.js":68,"../types/page/card-html.js":69,"../types/page/card-iframe.js":70,"../types/page/card-image.js":71,"../types/page/card-map.js":72,"../types/page/card-paragraph.js":73,"../types/page/card-row.js":74,"../types/page/card-slider.js":75,"../types/page/card-title.js":76,"../types/page/card-video.js":77,"../types/page/card-youtube.js":78,"../types/page/page.js":79,"../types/product/product-annotation.js":80,"../types/product/product-variation.js":82,"../types/product/product.js":83,"../types/scene/scene-annotation.js":84,"../types/scene/scene-audio.js":85,"../types/scene/scene-button.js":87,"../types/scene/scene-camera.js":88,"../types/scene/scene-carousel.js":89,"../types/scene/scene-image.js":90,"../types/scene/scene-model.js":91,"../types/scene/scene-panorama.js":92,"../types/scene/scene-poller.js":93,"../types/scene/scene-product.js":94,"../types/scene/scene-script.js":95,"../types/scene/scene-shadow.js":96,"../types/scene/scene-video.js":97,"../types/scene/scene-volumetric.js":98,"../types/scene/scene-youtube.js":99,"../types/scene/scene.js":100,"../types/trigger/trigger-image.js":101}],103:[function(require,module,exports){
4291
4862
  module.exports = "1.120.1";
4292
4863
 
4293
- },{}],99:[function(require,module,exports){
4864
+ },{}],104:[function(require,module,exports){
4294
4865
  const QRCodeStyling = require("qr-code-styling");
4295
4866
 
4296
4867
  class BaseElement extends HTMLElement {
@@ -4419,7 +4990,6 @@ class BaseElement extends HTMLElement {
4419
4990
  type: "canvas"
4420
4991
  };
4421
4992
 
4422
- this._options.data = url;
4423
4993
  this._options.margin = margin;
4424
4994
  this._options.image = image;
4425
4995
 
@@ -4437,6 +5007,45 @@ class BaseElement extends HTMLElement {
4437
5007
  this._options.dotsOptions.type = "rounded";
4438
5008
  }
4439
5009
 
5010
+ const shortenURL = this.hasAttribute("shorten") ? this.getAttribute("shorten") : "false";
5011
+
5012
+ if (shortenURL && shortenURL.toLowerCase() === "true") {
5013
+ this._ShortenURL(url).then((newURL) => {
5014
+ this._GenerateQRCode(newURL, width, height);
5015
+ }).catch((_err) => {
5016
+ console.warn(_err);
5017
+ // ignore error and just generate normal QR Code
5018
+ this._GenerateQRCode(url, width, height);
5019
+ });
5020
+ }
5021
+ else {
5022
+ this._GenerateQRCode(url, width, height);
5023
+ }
5024
+ }
5025
+
5026
+ _UpdateCanvas(width, height) {
5027
+ if (!this._qrCode) {
5028
+ return;
5029
+ }
5030
+
5031
+ const canvas = this._qrCode._canvas;
5032
+
5033
+ if (canvas) {
5034
+ canvas.style.width = "100%";
5035
+ canvas.style.height = "100%";
5036
+ }
5037
+
5038
+ if (this._divContainer) {
5039
+ const div = this._divContainer;
5040
+
5041
+ div.style.width = width + "px";
5042
+ div.style.height = height + "px";
5043
+ }
5044
+ }
5045
+
5046
+ _GenerateQRCode(url, width, height) {
5047
+ this._options.data = url;
5048
+
4440
5049
  const shadow = this.shadowRoot || this.attachShadow({ mode: 'open' });
4441
5050
 
4442
5051
  const qrCode = this._qrCode;
@@ -4459,29 +5068,41 @@ class BaseElement extends HTMLElement {
4459
5068
  this._UpdateCanvas(width, height);
4460
5069
  }
4461
5070
 
4462
- _UpdateCanvas(width, height) {
4463
- if (!this._qrCode) {
4464
- return;
4465
- }
5071
+ _IsFetchAPISupported() {
5072
+ return 'fetch' in window;
5073
+ }
4466
5074
 
4467
- const canvas = this._qrCode._canvas;
5075
+ _ShortenURL(url) {
5076
+ return new Promise((accept, reject) => {
5077
+ if (!this._IsFetchAPISupported()) {
5078
+ return reject(new Error("PlattarQR._ShortenURL() - fetch api not supported, cannot proceed"));
5079
+ }
4468
5080
 
4469
- if (canvas) {
4470
- canvas.style.width = "100%";
4471
- canvas.style.height = "100%";
4472
- }
5081
+ try {
5082
+ const b64 = btoa(url);
5083
+ const endpoint = "https://c.plattar.space/api/v2/shorten?base64=" + b64;
4473
5084
 
4474
- if (this._divContainer) {
4475
- const div = this._divContainer;
5085
+ fetch(endpoint).then((response) => {
5086
+ if (!response.ok) {
5087
+ throw new Error("PlattarQR._ShortenURL() - response was invalid");
5088
+ }
4476
5089
 
4477
- div.style.width = width + "px";
4478
- div.style.height = height + "px";
4479
- }
5090
+ return response.text();
5091
+ }).then((text) => {
5092
+ return accept(text);
5093
+ }).catch(() => {
5094
+ return reject(new Error("PlattarQR._ShortenURL() - there was an unexpected issue generating short url"));
5095
+ });
5096
+ }
5097
+ catch (err) {
5098
+ return reject(err);
5099
+ }
5100
+ });
4480
5101
  }
4481
5102
  }
4482
5103
 
4483
5104
  module.exports = BaseElement;
4484
- },{"qr-code-styling":119}],100:[function(require,module,exports){
5105
+ },{"qr-code-styling":131}],105:[function(require,module,exports){
4485
5106
  const BaseElement = require("./base/base-element.js");
4486
5107
 
4487
5108
  class QRCodeElement extends BaseElement {
@@ -4491,22 +5112,354 @@ class QRCodeElement extends BaseElement {
4491
5112
  }
4492
5113
 
4493
5114
  module.exports = QRCodeElement;
4494
- },{"./base/base-element.js":99}],101:[function(require,module,exports){
5115
+ },{"./base/base-element.js":104}],106:[function(require,module,exports){
4495
5116
  "use strict";
4496
5117
  const QRCodeElement = require("./elements/qrcode-element.js");
4497
5118
  const Version = require("./version");
4498
5119
 
4499
- console.log("using @plattar/plattar-qrcode v" + Version);
5120
+ if (customElements) {
5121
+ if (customElements.get("plattar-qrcode") === undefined) {
5122
+ customElements.define("plattar-qrcode", QRCodeElement);
5123
+ }
5124
+ }
4500
5125
 
4501
- customElements.define("plattar-qrcode", QRCodeElement);
5126
+ console.log("using @plattar/plattar-qrcode v" + Version);
4502
5127
 
4503
5128
  module.exports = {
4504
5129
  version: Version
4505
5130
  };
4506
- },{"./elements/qrcode-element.js":100,"./version":102}],102:[function(require,module,exports){
4507
- module.exports = "1.120.3";
5131
+ },{"./elements/qrcode-element.js":105,"./version":107}],107:[function(require,module,exports){
5132
+ module.exports = "1.122.1";
5133
+
5134
+ },{}],108:[function(require,module,exports){
5135
+ "use strict";
5136
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5137
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5138
+ };
5139
+ Object.defineProperty(exports, "__esModule", { value: true });
5140
+ exports.Configurator = void 0;
5141
+ const plattar_api_1 = require("@plattar/plattar-api");
5142
+ const object_hash_1 = __importDefault(require("object-hash"));
5143
+ const remote_request_1 = require("./remote-request");
5144
+ class Configurator {
5145
+ constructor() {
5146
+ this.quality = 100;
5147
+ this.output = "glb";
5148
+ this.server = "production";
5149
+ this.retry = 0;
5150
+ this._maps = [];
5151
+ this._attrHash = [];
5152
+ }
5153
+ add(sceneProduct = null, productVariation = null) {
5154
+ this.addSceneProduct(sceneProduct, productVariation);
5155
+ }
5156
+ addSceneProduct(sceneProduct = null, productVariation = null) {
5157
+ if (!sceneProduct) {
5158
+ throw new Error("Configurator.addSceneProduct() - sceneProduct input was null or undefined");
5159
+ }
5160
+ if (!productVariation) {
5161
+ throw new Error("Configurator.addSceneProduct() - productVariation input was null or undefined");
5162
+ }
5163
+ const map = {
5164
+ sceneproduct: null,
5165
+ productvariation: null
5166
+ };
5167
+ if ((sceneProduct instanceof plattar_api_1.SceneProduct) && (productVariation instanceof plattar_api_1.ProductVariation)) {
5168
+ map.sceneproduct = sceneProduct.id;
5169
+ map.productvariation = productVariation.id;
5170
+ this._maps.push(map);
5171
+ return;
5172
+ }
5173
+ if ((typeof sceneProduct === "string" || sceneProduct instanceof String) && (typeof productVariation === "string" || productVariation instanceof String)) {
5174
+ map.sceneproduct = sceneProduct;
5175
+ map.productvariation = productVariation;
5176
+ this._maps.push(map);
5177
+ return;
5178
+ }
5179
+ throw new Error("Configurator.addSceneProduct() - mismatched instance types for inputs");
5180
+ }
5181
+ addProduct(product = null, productVariation = null) {
5182
+ if (!product) {
5183
+ throw new Error("Configurator.addProduct() - product input was null or undefined");
5184
+ }
5185
+ if (!productVariation) {
5186
+ throw new Error("Configurator.addProduct() - productVariation input was null or undefined");
5187
+ }
5188
+ const map = {
5189
+ productvariation: null,
5190
+ product: null
5191
+ };
5192
+ if ((product instanceof plattar_api_1.Product) && (productVariation instanceof plattar_api_1.ProductVariation)) {
5193
+ map.product = product.id;
5194
+ map.productvariation = productVariation.id;
5195
+ this._maps.push(map);
5196
+ return;
5197
+ }
5198
+ if ((typeof product === "string" || product instanceof String) && (typeof productVariation === "string" || productVariation instanceof String)) {
5199
+ map.product = product;
5200
+ map.productvariation = productVariation;
5201
+ this._maps.push(map);
5202
+ return;
5203
+ }
5204
+ throw new Error("Configurator.addProduct() - mismatched instance types for inputs");
5205
+ }
5206
+ addModel(sceneModel = null) {
5207
+ if (!sceneModel) {
5208
+ throw new Error("Configurator.addModel() - sceneModel input was null or undefined");
5209
+ }
5210
+ const map = {
5211
+ scenemodel: null
5212
+ };
5213
+ if (sceneModel instanceof plattar_api_1.SceneModel) {
5214
+ map.scenemodel = sceneModel.id;
5215
+ this._maps.push(map);
5216
+ return;
5217
+ }
5218
+ if (typeof sceneModel === "string") {
5219
+ map.scenemodel = sceneModel;
5220
+ this._maps.push(map);
5221
+ return;
5222
+ }
5223
+ throw new Error("Configurator.addModel() - mismatched instance types for inputs");
5224
+ }
5225
+ get() {
5226
+ return new Promise((accept, reject) => {
5227
+ this._CalculateHash().then(() => {
5228
+ remote_request_1.RemoteRequest.request(this._GetPayload(), (this.retry < 0 ? 0 : this.retry)).then(accept).catch(reject);
5229
+ }).catch((_err) => {
5230
+ reject(new Error("Configurator.get() - one of the objects does not exist in Plattar API"));
5231
+ });
5232
+ });
5233
+ }
5234
+ _CalculateHash() {
5235
+ return new Promise((accept, reject) => {
5236
+ const promises = [];
5237
+ const oldOrigin = plattar_api_1.Server.default().originLocation.type;
5238
+ plattar_api_1.Server.create(plattar_api_1.Server.match(this.server));
5239
+ this._maps.forEach((map) => {
5240
+ if (map.productvariation) {
5241
+ promises.push(new plattar_api_1.ProductVariation(map.productvariation).get());
5242
+ }
5243
+ if (map.sceneproduct) {
5244
+ promises.push(new plattar_api_1.SceneProduct(map.sceneproduct).get());
5245
+ }
5246
+ if (map.scenemodel) {
5247
+ promises.push(new plattar_api_1.SceneModel(map.scenemodel).get());
5248
+ }
5249
+ if (map.product) {
5250
+ promises.push(new plattar_api_1.Product(map.product).get());
5251
+ }
5252
+ });
5253
+ Promise.all(promises).then((values) => {
5254
+ values.forEach((value) => {
5255
+ this._attrHash.push(value.attributes);
5256
+ });
5257
+ // reset server back
5258
+ plattar_api_1.Server.create(plattar_api_1.Server.match(oldOrigin));
5259
+ accept();
5260
+ }).catch(() => {
5261
+ // reset server back
5262
+ plattar_api_1.Server.create(plattar_api_1.Server.match(oldOrigin));
5263
+ reject(new Error("Configurator._CalculateHash() - unexpected error"));
5264
+ });
5265
+ });
5266
+ }
5267
+ _GetPayload() {
5268
+ const converter = this.output === "vto" ? "config_to_reality" : "config_to_model";
5269
+ const load = {
5270
+ options: {
5271
+ converter: converter,
5272
+ quality: this.quality,
5273
+ output: this.output,
5274
+ server: this.server
5275
+ },
5276
+ data: {
5277
+ maps: this._maps
5278
+ }
5279
+ };
5280
+ if (this._attrHash.length > 0) {
5281
+ load.options.hash = object_hash_1.default.MD5(this._attrHash) + object_hash_1.default.MD5(load);
5282
+ }
5283
+ else {
5284
+ load.options.hash = object_hash_1.default.MD5(load);
5285
+ }
5286
+ return load;
5287
+ }
5288
+ }
5289
+ exports.Configurator = Configurator;
5290
+
5291
+ },{"./remote-request":110,"@plattar/plattar-api":40,"object-hash":129}],109:[function(require,module,exports){
5292
+ "use strict";
5293
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5294
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5295
+ };
5296
+ Object.defineProperty(exports, "__esModule", { value: true });
5297
+ exports.ModelConverter = void 0;
5298
+ const plattar_api_1 = require("@plattar/plattar-api");
5299
+ const object_hash_1 = __importDefault(require("object-hash"));
5300
+ const remote_request_1 = require("./remote-request");
5301
+ class ModelConverter {
5302
+ constructor() {
5303
+ this._model = null;
5304
+ this.quality = 100;
5305
+ this.output = "glb";
5306
+ this.server = "production";
5307
+ this.retry = 0;
5308
+ this._attrHash = [];
5309
+ }
5310
+ get model() {
5311
+ return this._model;
5312
+ }
5313
+ set model(newModel) {
5314
+ if (!newModel) {
5315
+ return;
5316
+ }
5317
+ if (newModel instanceof plattar_api_1.FileModel) {
5318
+ this._model = newModel.id;
5319
+ this._attrHash.push(object_hash_1.default.MD5(newModel.attributes));
5320
+ return;
5321
+ }
5322
+ this._model = newModel;
5323
+ }
5324
+ get() {
5325
+ return new Promise((accept, reject) => {
5326
+ if (!this._model) {
5327
+ return reject(new Error("ModelConverter.get() - required .model attribute was not set"));
5328
+ }
5329
+ remote_request_1.RemoteRequest.request(this._Payload, (this.retry < 0 ? 0 : this.retry)).then(accept).catch(reject);
5330
+ });
5331
+ }
5332
+ get _Payload() {
5333
+ const load = {
5334
+ options: {
5335
+ converter: "gltf_to_model",
5336
+ quality: this.quality,
5337
+ output: this.output,
5338
+ server: this.server
5339
+ },
5340
+ data: {
5341
+ model: this._model
5342
+ }
5343
+ };
5344
+ if (this._attrHash.length > 0) {
5345
+ load.options.hash = object_hash_1.default.MD5(this._attrHash) + object_hash_1.default.MD5(load);
5346
+ }
5347
+ else {
5348
+ load.options.hash = object_hash_1.default.MD5(load);
5349
+ }
5350
+ return load;
5351
+ }
5352
+ }
5353
+ exports.ModelConverter = ModelConverter;
5354
+
5355
+ },{"./remote-request":110,"@plattar/plattar-api":40,"object-hash":129}],110:[function(require,module,exports){
5356
+ "use strict";
5357
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5358
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5359
+ };
5360
+ Object.defineProperty(exports, "__esModule", { value: true });
5361
+ exports.RemoteRequest = void 0;
5362
+ const node_fetch_1 = __importDefault(require("node-fetch"));
5363
+ /**
5364
+ * This is used by the core types to perform remote requests
5365
+ */
5366
+ class RemoteRequest {
5367
+ static request(payload, retry = 0) {
5368
+ return new Promise((accept, reject) => {
5369
+ if (retry >= 0) {
5370
+ RemoteRequest._send(payload).then(accept).catch((err) => {
5371
+ const newretry = retry - 1;
5372
+ if (newretry < 0) {
5373
+ return reject(err);
5374
+ }
5375
+ console.error("RemoteRequest.request() - retry number " + newretry);
5376
+ console.error(err);
5377
+ setTimeout(() => {
5378
+ RemoteRequest.request(payload, newretry).then(accept).catch(reject);
5379
+ }, 500);
5380
+ });
5381
+ }
5382
+ else {
5383
+ return reject(new Error("RemoteRequest.request() - attempted all retries without success"));
5384
+ }
5385
+ });
5386
+ }
5387
+ static _send(payload) {
5388
+ return new Promise((accept, reject) => {
5389
+ 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";
5390
+ const reqopts = {
5391
+ method: "POST",
5392
+ headers: {
5393
+ 'Accept': 'application/json',
5394
+ 'Content-Type': 'application/json'
5395
+ },
5396
+ body: JSON.stringify(payload)
5397
+ };
5398
+ (0, node_fetch_1.default)(endpoint, reqopts)
5399
+ .then((res) => {
5400
+ if (res.ok) {
5401
+ try {
5402
+ return res.json();
5403
+ }
5404
+ catch (err) {
5405
+ return new Error("RemoteRequest.request() - critical error occured, cannot proceed");
5406
+ }
5407
+ }
5408
+ return new Error("RemoteRequest.request() - unexpected error occured, cannot proceed. error message is " + res.statusText);
5409
+ })
5410
+ .then((json) => {
5411
+ if (json instanceof Error) {
5412
+ reject(json);
5413
+ }
5414
+ else {
5415
+ accept(json);
5416
+ }
5417
+ });
5418
+ });
5419
+ }
5420
+ }
5421
+ exports.RemoteRequest = RemoteRequest;
5422
+
5423
+ },{"node-fetch":128}],111:[function(require,module,exports){
5424
+ "use strict";
5425
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
5426
+ if (k2 === undefined) k2 = k;
5427
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5428
+ }) : (function(o, m, k, k2) {
5429
+ if (k2 === undefined) k2 = k;
5430
+ o[k2] = m[k];
5431
+ }));
5432
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
5433
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
5434
+ }) : function(o, v) {
5435
+ o["default"] = v;
5436
+ });
5437
+ var __importStar = (this && this.__importStar) || function (mod) {
5438
+ if (mod && mod.__esModule) return mod;
5439
+ var result = {};
5440
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
5441
+ __setModuleDefault(result, mod);
5442
+ return result;
5443
+ };
5444
+ var __importDefault = (this && this.__importDefault) || function (mod) {
5445
+ return (mod && mod.__esModule) ? mod : { "default": mod };
5446
+ };
5447
+ Object.defineProperty(exports, "__esModule", { value: true });
5448
+ exports.version = exports.ModelConverter = exports.Configurator = void 0;
5449
+ var configurator_1 = require("./core/configurator");
5450
+ Object.defineProperty(exports, "Configurator", { enumerable: true, get: function () { return configurator_1.Configurator; } });
5451
+ var model_converter_1 = require("./core/model-converter");
5452
+ Object.defineProperty(exports, "ModelConverter", { enumerable: true, get: function () { return model_converter_1.ModelConverter; } });
5453
+ exports.version = __importStar(require("./version"));
5454
+ const version_1 = __importDefault(require("./version"));
5455
+ console.log("using @plattar/plattar-services v" + version_1.default);
5456
+
5457
+ },{"./core/configurator":108,"./core/model-converter":109,"./version":112}],112:[function(require,module,exports){
5458
+ "use strict";
5459
+ Object.defineProperty(exports, "__esModule", { value: true });
5460
+ exports.default = "1.120.1";
4508
5461
 
4509
- },{}],103:[function(require,module,exports){
5462
+ },{}],113:[function(require,module,exports){
4510
5463
  const ElementController = require("../controllers/element-controller");
4511
5464
 
4512
5465
  class BaseElement extends HTMLElement {
@@ -4643,7 +5596,35 @@ class BaseElement extends HTMLElement {
4643
5596
  }
4644
5597
 
4645
5598
  module.exports = BaseElement;
4646
- },{"../controllers/element-controller":104}],104:[function(require,module,exports){
5599
+ },{"../controllers/element-controller":115}],114:[function(require,module,exports){
5600
+ const BaseElement = require("./base/base-element.js");
5601
+
5602
+ class ConfiguratorElement extends BaseElement {
5603
+ constructor() {
5604
+ super();
5605
+ }
5606
+
5607
+ get permissions() {
5608
+ return ["autoplay"];
5609
+ }
5610
+
5611
+ get elementType() {
5612
+ return "configurator";
5613
+ }
5614
+
5615
+ get optionalAttributes() {
5616
+ return [{
5617
+ key: "config-state",
5618
+ map: "config_state"
5619
+ }, {
5620
+ key: "show-ar",
5621
+ map: "show_ar"
5622
+ }];
5623
+ }
5624
+ }
5625
+
5626
+ module.exports = ConfiguratorElement;
5627
+ },{"./base/base-element.js":113}],115:[function(require,module,exports){
4647
5628
  const Util = require("../../util/util.js");
4648
5629
  const { messenger } = require("@plattar/context-messenger");
4649
5630
  const IFrameController = require("./iframe-controller.js");
@@ -4736,7 +5717,7 @@ class ElementController {
4736
5717
  }
4737
5718
 
4738
5719
  module.exports = ElementController;
4739
- },{"../../util/util.js":115,"./iframe-controller.js":105,"@plattar/context-messenger":14}],105:[function(require,module,exports){
5720
+ },{"../../util/util.js":126,"./iframe-controller.js":116,"@plattar/context-messenger":19}],116:[function(require,module,exports){
4740
5721
  const Util = require("../../util/util.js");
4741
5722
 
4742
5723
  class IFrameController {
@@ -4846,7 +5827,7 @@ class IFrameController {
4846
5827
  }
4847
5828
 
4848
5829
  module.exports = IFrameController;
4849
- },{"../../util/util.js":115}],106:[function(require,module,exports){
5830
+ },{"../../util/util.js":126}],117:[function(require,module,exports){
4850
5831
  const BaseElement = require("./base/base-element.js");
4851
5832
 
4852
5833
  class EditorElement extends BaseElement {
@@ -4864,7 +5845,7 @@ class EditorElement extends BaseElement {
4864
5845
  }
4865
5846
 
4866
5847
  module.exports = EditorElement;
4867
- },{"./base/base-element.js":103}],107:[function(require,module,exports){
5848
+ },{"./base/base-element.js":113}],118:[function(require,module,exports){
4868
5849
  const BaseElement = require("./base/base-element.js");
4869
5850
 
4870
5851
  class EWallElement extends BaseElement {
@@ -4901,7 +5882,7 @@ class EWallElement extends BaseElement {
4901
5882
  }
4902
5883
 
4903
5884
  module.exports = EWallElement;
4904
- },{"./base/base-element.js":103}],108:[function(require,module,exports){
5885
+ },{"./base/base-element.js":113}],119:[function(require,module,exports){
4905
5886
  const BaseElement = require("./base/base-element.js");
4906
5887
 
4907
5888
  class FaceARElement extends BaseElement {
@@ -4929,7 +5910,7 @@ class FaceARElement extends BaseElement {
4929
5910
  }
4930
5911
 
4931
5912
  module.exports = FaceARElement;
4932
- },{"./base/base-element.js":103}],109:[function(require,module,exports){
5913
+ },{"./base/base-element.js":113}],120:[function(require,module,exports){
4933
5914
  const BaseElement = require("./base/base-element.js");
4934
5915
 
4935
5916
  class ModelElement extends BaseElement {
@@ -4954,7 +5935,7 @@ class ModelElement extends BaseElement {
4954
5935
  }
4955
5936
 
4956
5937
  module.exports = ModelElement;
4957
- },{"./base/base-element.js":103}],110:[function(require,module,exports){
5938
+ },{"./base/base-element.js":113}],121:[function(require,module,exports){
4958
5939
  const BaseElement = require("./base/base-element.js");
4959
5940
 
4960
5941
  class ProductElement extends BaseElement {
@@ -4986,7 +5967,7 @@ class ProductElement extends BaseElement {
4986
5967
  }
4987
5968
 
4988
5969
  module.exports = ProductElement;
4989
- },{"./base/base-element.js":103}],111:[function(require,module,exports){
5970
+ },{"./base/base-element.js":113}],122:[function(require,module,exports){
4990
5971
  const BaseElement = require("./base/base-element.js");
4991
5972
 
4992
5973
  class StudioElement extends BaseElement {
@@ -5004,7 +5985,7 @@ class StudioElement extends BaseElement {
5004
5985
  }
5005
5986
 
5006
5987
  module.exports = StudioElement;
5007
- },{"./base/base-element.js":103}],112:[function(require,module,exports){
5988
+ },{"./base/base-element.js":113}],123:[function(require,module,exports){
5008
5989
  const BaseElement = require("./base/base-element.js");
5009
5990
 
5010
5991
  class ViewerElement extends BaseElement {
@@ -5032,7 +6013,7 @@ class ViewerElement extends BaseElement {
5032
6013
  }
5033
6014
 
5034
6015
  module.exports = ViewerElement;
5035
- },{"./base/base-element.js":103}],113:[function(require,module,exports){
6016
+ },{"./base/base-element.js":113}],124:[function(require,module,exports){
5036
6017
  const BaseElement = require("./base/base-element.js");
5037
6018
 
5038
6019
  class WebXRElement extends BaseElement {
@@ -5050,7 +6031,7 @@ class WebXRElement extends BaseElement {
5050
6031
  }
5051
6032
 
5052
6033
  module.exports = WebXRElement;
5053
- },{"./base/base-element.js":103}],114:[function(require,module,exports){
6034
+ },{"./base/base-element.js":113}],125:[function(require,module,exports){
5054
6035
  "use strict";
5055
6036
  const WebXRElement = require("./elements/webxr-element.js");
5056
6037
  const ViewerElement = require("./elements/viewer-element.js");
@@ -5060,6 +6041,7 @@ const FaceARElement = require("./elements/facear-element.js");
5060
6041
  const EditorElement = require("./elements/editor-element.js");
5061
6042
  const StudioElement = require("./elements/studio-element.js");
5062
6043
  const ModelElement = require("./elements/model-element.js");
6044
+ const ConfiguratorElement = require("./elements/configurator-element.js");
5063
6045
  const Version = require("./version");
5064
6046
 
5065
6047
  if (customElements.get("plattar-webxr") === undefined) {
@@ -5094,12 +6076,16 @@ if (customElements.get("plattar-model") === undefined) {
5094
6076
  customElements.define("plattar-model", ModelElement);
5095
6077
  }
5096
6078
 
6079
+ if (customElements.get("plattar-configurator") === undefined) {
6080
+ customElements.define("plattar-configurator", ConfiguratorElement);
6081
+ }
6082
+
5097
6083
  console.log("using @plattar/plattar-web v" + Version);
5098
6084
 
5099
6085
  module.exports = {
5100
6086
  version: Version
5101
6087
  };
5102
- },{"./elements/editor-element.js":106,"./elements/ewall-element.js":107,"./elements/facear-element.js":108,"./elements/model-element.js":109,"./elements/product-element.js":110,"./elements/studio-element.js":111,"./elements/viewer-element.js":112,"./elements/webxr-element.js":113,"./version":116}],115:[function(require,module,exports){
6088
+ },{"./elements/configurator-element.js":114,"./elements/editor-element.js":117,"./elements/ewall-element.js":118,"./elements/facear-element.js":119,"./elements/model-element.js":120,"./elements/product-element.js":121,"./elements/studio-element.js":122,"./elements/viewer-element.js":123,"./elements/webxr-element.js":124,"./version":127}],126:[function(require,module,exports){
5103
6089
  class Util {
5104
6090
  static getServerLocation(server) {
5105
6091
  switch (server) {
@@ -5147,6 +6133,7 @@ class Util {
5147
6133
  case "studio":
5148
6134
  case "product":
5149
6135
  case "model":
6136
+ case "configurator":
5150
6137
  case "webxr": return true;
5151
6138
  default: return false;
5152
6139
  }
@@ -5173,10 +6160,10 @@ class Util {
5173
6160
  }
5174
6161
 
5175
6162
  module.exports = Util;
5176
- },{}],116:[function(require,module,exports){
5177
- module.exports = "1.122.2";
6163
+ },{}],127:[function(require,module,exports){
6164
+ module.exports = "1.122.3";
5178
6165
 
5179
- },{}],117:[function(require,module,exports){
6166
+ },{}],128:[function(require,module,exports){
5180
6167
  (function (global){(function (){
5181
6168
  "use strict";
5182
6169
 
@@ -5204,7 +6191,11 @@ exports.Headers = global.Headers;
5204
6191
  exports.Request = global.Request;
5205
6192
  exports.Response = global.Response;
5206
6193
  }).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
5207
- },{}],118:[function(require,module,exports){
6194
+ },{}],129:[function(require,module,exports){
6195
+ (function (global){(function (){
6196
+ !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)});
6197
+ }).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
6198
+ },{}],130:[function(require,module,exports){
5208
6199
  // shim for using process in browser
5209
6200
  var process = module.exports = {};
5210
6201
 
@@ -5390,8 +6381,8 @@ process.chdir = function (dir) {
5390
6381
  };
5391
6382
  process.umask = function() { return 0; };
5392
6383
 
5393
- },{}],119:[function(require,module,exports){
6384
+ },{}],131:[function(require,module,exports){
5394
6385
  !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+="&lt;";break;case">":e+="&gt;";break;case"&":e+="&amp;";break;case'"':e+="&quot;";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}));
5395
6386
 
5396
- },{}]},{},[7])(7)
6387
+ },{}]},{},[12])(12)
5397
6388
  });