@esri/solutions-components 0.7.20 → 0.7.22

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.
Files changed (43) hide show
  1. package/dist/assets/t9n/public-notification/resources.json +2 -1
  2. package/dist/assets/t9n/public-notification/resources_en.json +2 -1
  3. package/dist/cjs/card-manager_3.cjs.entry.js +133 -91
  4. package/dist/cjs/crowdsource-manager.cjs.entry.js +10 -10
  5. package/dist/cjs/{downloadUtils-9a13c6ac.js → downloadUtils-401356b5.js} +5 -3
  6. package/dist/cjs/{index.es-284a020c.js → index.es-a9a4ff08.js} +1 -1
  7. package/dist/cjs/loader.cjs.js +1 -1
  8. package/dist/cjs/map-select-tools_3.cjs.entry.js +1 -1
  9. package/dist/cjs/public-notification.cjs.entry.js +7 -4
  10. package/dist/cjs/solutions-components.cjs.js +1 -1
  11. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +29 -11
  12. package/dist/collection/components/layer-table/layer-table.js +162 -99
  13. package/dist/collection/components/public-notification/public-notification.js +7 -3
  14. package/dist/collection/utils/pdfUtils.js +4 -2
  15. package/dist/collection/utils/pdfUtils.ts +4 -2
  16. package/dist/components/crowdsource-manager.js +13 -12
  17. package/dist/components/downloadUtils.js +4 -2
  18. package/dist/components/layer-table2.js +134 -91
  19. package/dist/components/public-notification.js +7 -3
  20. package/dist/esm/card-manager_3.entry.js +133 -91
  21. package/dist/esm/crowdsource-manager.entry.js +10 -10
  22. package/dist/esm/{downloadUtils-a4bbdb1d.js → downloadUtils-13579d93.js} +5 -3
  23. package/dist/esm/{index.es-48fdb288.js → index.es-04d2e63e.js} +1 -1
  24. package/dist/esm/loader.js +1 -1
  25. package/dist/esm/map-select-tools_3.entry.js +1 -1
  26. package/dist/esm/public-notification.entry.js +7 -4
  27. package/dist/esm/solutions-components.js +1 -1
  28. package/dist/solutions-components/p-02fad071.entry.js +6 -0
  29. package/dist/solutions-components/{p-b1422b00.entry.js → p-24286e8c.entry.js} +1 -1
  30. package/dist/solutions-components/p-630e274b.entry.js +6 -0
  31. package/dist/solutions-components/{p-72dbfa77.js → p-c68a6d4f.js} +1 -1
  32. package/dist/solutions-components/{p-d4afcf86.js → p-c9f87acb.js} +2 -2
  33. package/dist/solutions-components/p-d3085b7a.entry.js +6 -0
  34. package/dist/solutions-components/solutions-components.esm.js +1 -1
  35. package/dist/solutions-components/utils/pdfUtils.ts +4 -2
  36. package/dist/types/components/crowdsource-manager/crowdsource-manager.d.ts +13 -4
  37. package/dist/types/components/layer-table/layer-table.d.ts +14 -5
  38. package/dist/types/components/public-notification/public-notification.d.ts +4 -0
  39. package/dist/types/components.d.ts +18 -0
  40. package/package.json +1 -1
  41. package/dist/solutions-components/p-107b7816.entry.js +0 -6
  42. package/dist/solutions-components/p-2abc02a1.entry.js +0 -6
  43. package/dist/solutions-components/p-6b4e621b.entry.js +0 -6
@@ -29,7 +29,8 @@
29
29
  "export": "Export",
30
30
  "exportTip": "Select lists to include in the exported file. Export lists as CSV and PDF.",
31
31
  "title": "Title",
32
- "addTitle": "Add title",
32
+ "addTitle": "Include title",
33
+ "addResults": "Include results",
33
34
  "titlePlaceholder": "Enter title here",
34
35
  "includeMap": "Include map",
35
36
  "pdfOptions": "PDF Options",
@@ -29,7 +29,8 @@
29
29
  "export": "Export",
30
30
  "exportTip": "Select lists to include in the exported file. Export lists as CSV and PDF.",
31
31
  "title": "Title",
32
- "addTitle": "Add title",
32
+ "addTitle": "Include title",
33
+ "addResults": "Include results",
33
34
  "titlePlaceholder": "Enter title here",
34
35
  "includeMap": "Include map",
35
36
  "pdfOptions": "PDF Options",
@@ -11,7 +11,7 @@ const index = require('./index-b8a649fc.js');
11
11
  const locale = require('./locale-9db09b63.js');
12
12
  const mapViewUtils = require('./mapViewUtils-8aa325de.js');
13
13
  const loadModules = require('./loadModules-46d14e81.js');
14
- const downloadUtils = require('./downloadUtils-9a13c6ac.js');
14
+ const downloadUtils = require('./downloadUtils-401356b5.js');
15
15
  require('./esri-loader-a91c0ec1.js');
16
16
  require('./_commonjsHelpers-384729db.js');
17
17
  require('./interfaces-7cd0a48a.js');
@@ -121,6 +121,10 @@ const LayerTable = class {
121
121
  * boolean: When true the ctrl key is currently pressed
122
122
  */
123
123
  this._ctrlIsPressed = false;
124
+ /**
125
+ * boolean: When true the default filter provided via url param has been honored and should now be ignored
126
+ */
127
+ this._defaultFilterHonored = false;
124
128
  /**
125
129
  * boolean: When true the default global id provided via url param has been honored and should now be ignored
126
130
  */
@@ -154,8 +158,9 @@ const LayerTable = class {
154
158
  this.onTableNodeCreate = (node) => {
155
159
  this._tableNode = node;
156
160
  };
157
- this.defaultLayerId = undefined;
161
+ this.defaultFilter = undefined;
158
162
  this.defaultGlobalId = undefined;
163
+ this.defaultLayerId = undefined;
159
164
  this.defaultOid = undefined;
160
165
  this.enableAutoRefresh = undefined;
161
166
  this.enableColumnReorder = true;
@@ -525,93 +530,95 @@ const LayerTable = class {
525
530
  const featuresSelected = this._featuresSelected();
526
531
  const featuresEmpty = this._featuresEmpty();
527
532
  const hasFilterExpressions = this._hasFilterExpressions();
528
- this._toolInfos = [{
529
- active: false,
530
- icon: "zoom-to-object",
531
- indicator: false,
532
- label: this._translations.zoom,
533
- func: () => this._zoom(),
534
- disabled: !featuresSelected,
535
- isOverflow: false
536
- },
537
- hasFilterExpressions ? {
538
- active: false,
539
- icon: "filter",
540
- indicator: false,
541
- label: this._translations.filters,
542
- func: () => this._toggleFilter(),
543
- disabled: false,
544
- isOverflow: false
545
- } : undefined,
546
- this._deleteEnabled ? {
547
- active: false,
548
- icon: "trash",
549
- indicator: false,
550
- label: this._translations.delete,
551
- func: () => this._delete(),
552
- disabled: !featuresSelected,
553
- isDanger: true,
554
- isOverflow: false
555
- } : undefined, {
556
- active: false,
557
- icon: "erase",
558
- indicator: false,
559
- label: this._translations.clearSelection,
560
- func: () => this._clearSelection(),
561
- disabled: !featuresSelected,
562
- isOverflow: false
563
- }, {
564
- active: false,
565
- icon: "selected-items-filter",
566
- indicator: false,
567
- label: this._showOnlySelected ? this._translations.showAll : this._translations.showSelected,
568
- func: () => this._toggleShowSelected(),
569
- disabled: !featuresSelected,
570
- isOverflow: false
571
- }, {
572
- active: false,
573
- icon: "list-check-all",
574
- indicator: false,
575
- func: () => this._selectAll(),
576
- label: this._translations.selectAll,
577
- disabled: featuresEmpty,
578
- isOverflow: false
579
- }, {
580
- active: false,
581
- icon: "compare",
582
- indicator: false,
583
- func: () => this._switchSelected(),
584
- label: this._translations.switchSelected,
585
- disabled: featuresEmpty,
586
- isOverflow: false
587
- }, {
588
- active: false,
589
- icon: "refresh",
590
- indicator: false,
591
- func: () => this._refresh(),
592
- label: this._translations.refresh,
593
- disabled: false,
594
- isOverflow: false
595
- },
596
- this.enableCSV ? {
597
- active: false,
598
- icon: "export",
599
- indicator: false,
600
- func: () => void this._exportToCSV(),
601
- label: this._translations.exportCSV,
602
- disabled: featuresEmpty,
603
- isOverflow: false
604
- } : undefined, {
605
- active: false,
606
- icon: this._showHideOpen ? "chevron-down" : "chevron-right",
607
- indicator: false,
608
- func: () => this._toggleShowHide(),
609
- label: this._translations.showHideColumns,
610
- disabled: false,
611
- isOverflow: false,
612
- isSublist: true
613
- }];
614
- this._defaultVisibleToolSizeInfos = undefined;
533
+ if (this._translations) {
534
+ this._toolInfos = [{
535
+ active: false,
536
+ icon: "zoom-to-object",
537
+ indicator: false,
538
+ label: this._translations.zoom,
539
+ func: () => this._zoom(),
540
+ disabled: !featuresSelected,
541
+ isOverflow: false
542
+ },
543
+ hasFilterExpressions ? {
544
+ active: false,
545
+ icon: "filter",
546
+ indicator: false,
547
+ label: this._translations.filters,
548
+ func: () => this._toggleFilter(),
549
+ disabled: false,
550
+ isOverflow: false
551
+ } : undefined,
552
+ this._deleteEnabled ? {
553
+ active: false,
554
+ icon: "trash",
555
+ indicator: false,
556
+ label: this._translations.delete,
557
+ func: () => this._delete(),
558
+ disabled: !featuresSelected,
559
+ isDanger: true,
560
+ isOverflow: false
561
+ } : undefined, {
562
+ active: false,
563
+ icon: "erase",
564
+ indicator: false,
565
+ label: this._translations.clearSelection,
566
+ func: () => this._clearSelection(),
567
+ disabled: !featuresSelected,
568
+ isOverflow: false
569
+ }, {
570
+ active: false,
571
+ icon: "selected-items-filter",
572
+ indicator: false,
573
+ label: this._showOnlySelected ? this._translations.showAll : this._translations.showSelected,
574
+ func: () => this._toggleShowSelected(),
575
+ disabled: !featuresSelected,
576
+ isOverflow: false
577
+ }, {
578
+ active: false,
579
+ icon: "list-check-all",
580
+ indicator: false,
581
+ func: () => this._selectAll(),
582
+ label: this._translations.selectAll,
583
+ disabled: featuresEmpty,
584
+ isOverflow: false
585
+ }, {
586
+ active: false,
587
+ icon: "compare",
588
+ indicator: false,
589
+ func: () => this._switchSelected(),
590
+ label: this._translations.switchSelected,
591
+ disabled: featuresEmpty,
592
+ isOverflow: false
593
+ }, {
594
+ active: false,
595
+ icon: "refresh",
596
+ indicator: false,
597
+ func: () => this._refresh(),
598
+ label: this._translations.refresh,
599
+ disabled: false,
600
+ isOverflow: false
601
+ },
602
+ this.enableCSV ? {
603
+ active: false,
604
+ icon: "export",
605
+ indicator: false,
606
+ func: () => void this._exportToCSV(),
607
+ label: this._translations.exportCSV,
608
+ disabled: featuresEmpty,
609
+ isOverflow: false
610
+ } : undefined, {
611
+ active: false,
612
+ icon: this._showHideOpen ? "chevron-down" : "chevron-right",
613
+ indicator: false,
614
+ func: () => this._toggleShowHide(),
615
+ label: this._translations.showHideColumns,
616
+ disabled: false,
617
+ isOverflow: false,
618
+ isSublist: true
619
+ }];
620
+ this._defaultVisibleToolSizeInfos = undefined;
621
+ }
615
622
  }
616
623
  /**
617
624
  * Returns true when one ore more features are selected
@@ -822,13 +829,39 @@ const LayerTable = class {
822
829
  if ((_b = this.mapInfo) === null || _b === void 0 ? void 0 : _b.id) {
823
830
  urlObj.searchParams.set("webmap", this.mapInfo.id);
824
831
  }
832
+ else {
833
+ urlObj.searchParams.delete("webmap");
834
+ }
825
835
  if ((_c = this._layer) === null || _c === void 0 ? void 0 : _c.id) {
826
836
  urlObj.searchParams.set("layer", this._layer.id);
827
837
  }
838
+ else {
839
+ urlObj.searchParams.delete("layer");
840
+ }
828
841
  if (((_d = this._selectedIndexes) === null || _d === void 0 ? void 0 : _d.length) > 0) {
829
842
  urlObj.searchParams.set("oid", this._selectedIndexes.join(","));
830
843
  }
844
+ else {
845
+ urlObj.searchParams.delete("oid");
846
+ }
847
+ if (this._filterActive) {
848
+ const filter = JSON.parse(this._filterList.urlParams.get("filter"));
849
+ const layerExpressions = this._filterList.layerExpressions.map(layerExp => {
850
+ layerExp.expressions = layerExp.expressions.map(exp => {
851
+ if (exp.id.toString() === filter.expressionId.toString()) {
852
+ exp.active = true;
853
+ }
854
+ return exp;
855
+ });
856
+ return layerExp;
857
+ });
858
+ urlObj.searchParams.set("filter", JSON.stringify(layerExpressions));
859
+ }
860
+ else {
861
+ urlObj.searchParams.delete("filter");
862
+ }
831
863
  this._shareNode.shareUrl = urlObj.href;
864
+ history.pushState(history.state, document.title, urlObj.href);
832
865
  }
833
866
  /**
834
867
  * Get a tooltip
@@ -949,7 +982,8 @@ const LayerTable = class {
949
982
  const _end = this._table.viewModel.getObjectIdIndex(this._currentId);
950
983
  const startIndex = _start < _end ? _start : _end;
951
984
  const endIndex = _end > _start ? _end : _start;
952
- this._selectedIndexes = oids.reduce((prev, cur) => {
985
+ this._skipOnChange = startIndex + 1 !== endIndex;
986
+ const selectedIndexes = oids.reduce((prev, cur) => {
953
987
  const id = cur;
954
988
  const index = this._table.viewModel.getObjectIdIndex(id);
955
989
  if ((id === this._currentId || id === this._previousCurrentId)) {
@@ -971,6 +1005,7 @@ const LayerTable = class {
971
1005
  }
972
1006
  return prev;
973
1007
  }, []);
1008
+ this._selectedIndexes = _start < _end ? selectedIndexes.reverse() : selectedIndexes;
974
1009
  this._table.highlightIds.addMany(this._selectedIndexes.filter(i => ids.indexOf(i) < 0));
975
1010
  }
976
1011
  }
@@ -1033,6 +1068,11 @@ const LayerTable = class {
1033
1068
  }
1034
1069
  this._defaultGlobalIdHonored = true;
1035
1070
  }
1071
+ if (!this._defaultFilterHonored && this.defaultFilter && this._filterList) {
1072
+ this._layerExpressions = this.defaultFilter;
1073
+ this._filterActive = true;
1074
+ this._defaultFilterHonored = true;
1075
+ }
1036
1076
  });
1037
1077
  this._showOnlySelected = false;
1038
1078
  this._sortActive = false;
@@ -1141,19 +1181,21 @@ const LayerTable = class {
1141
1181
  */
1142
1182
  _filterModal() {
1143
1183
  var _a, _b, _c;
1144
- return (index.h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: async () => this._closeFilter(), open: this._filterOpen, widthScale: "s" }, index.h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, (_b = (_a = this._translations) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.replace("{{title}}", (_c = this._layer) === null || _c === void 0 ? void 0 : _c.title)), index.h("div", { slot: "content" }, index.h("instant-apps-filter-list", { autoUpdateUrl: false, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), layerExpressions: this._layerExpressions, onFilterListReset: () => this._handleFilterListReset(), onFilterUpdate: () => this._handleFilterUpdate(), ref: (el) => this._filterList = el, view: this.mapView, zoomBtn: false }))));
1184
+ return (index.h("calcite-modal", { "aria-labelledby": "modal-title", class: "modal", kind: "brand", onCalciteModalClose: async () => this._closeFilter(), open: this._filterOpen, widthScale: "s" }, index.h("div", { class: "display-flex align-center", id: "modal-title", slot: "header" }, (_b = (_a = this._translations) === null || _a === void 0 ? void 0 : _a.filter) === null || _b === void 0 ? void 0 : _b.replace("{{title}}", (_c = this._layer) === null || _c === void 0 ? void 0 : _c.title)), index.h("div", { slot: "content" }, index.h("instant-apps-filter-list", { autoUpdateUrl: true, closeBtn: true, closeBtnOnClick: async () => this._closeFilter(), layerExpressions: this._layerExpressions, onFilterListReset: () => this._handleFilterListReset(), onFilterUpdate: () => this._handleFilterUpdate(), ref: (el) => this._filterList = el, view: this.mapView, zoomBtn: false }))));
1145
1185
  }
1146
1186
  /**
1147
1187
  * Reset the filter active prop
1148
1188
  */
1149
1189
  _handleFilterListReset() {
1150
1190
  this._filterActive = false;
1191
+ this._updateShareUrl();
1151
1192
  }
1152
1193
  /**
1153
1194
  * Check if the layers definitionExpression has been modified
1154
1195
  */
1155
1196
  _handleFilterUpdate() {
1156
1197
  this._filterActive = this._definitionExpression !== this._layer.definitionExpression;
1198
+ this._updateShareUrl();
1157
1199
  }
1158
1200
  /**
1159
1201
  * Close the filter modal
@@ -24,6 +24,7 @@ const CrowdsourceManager = class {
24
24
  */
25
25
  this._shouldSetMapView = false;
26
26
  this.defaultCenter = "";
27
+ this.defaultFilter = "";
27
28
  this.defaultGlobalId = "";
28
29
  this.defaultLayer = "";
29
30
  this.defaultLevel = "";
@@ -74,6 +75,12 @@ const CrowdsourceManager = class {
74
75
  this._defaultCenter = !this.defaultCenter ? undefined :
75
76
  this.defaultCenter.split(";").map(v => parseFloat(v));
76
77
  }
78
+ /**
79
+ * Watch for filter url param to be set
80
+ */
81
+ defaultFilterWatchHandler() {
82
+ this._defaultFilter = JSON.parse(this.defaultFilter);
83
+ }
77
84
  /**
78
85
  * Watch for globalid url param to be set
79
86
  */
@@ -100,13 +107,6 @@ const CrowdsourceManager = class {
100
107
  enableZoomWatchHandler() {
101
108
  this._initMapZoom();
102
109
  }
103
- /**
104
- * Show the map, popup, and table if the user switches out of mobile mode
105
- */
106
- async _isMobileWatchHandler() {
107
- const show = !this._isMobile ? false : this._numSelected > 0;
108
- this.showHideMapPopupAndTable(show);
109
- }
110
110
  //--------------------------------------------------------------------------
111
111
  //
112
112
  // Methods (public)
@@ -385,7 +385,7 @@ const CrowdsourceManager = class {
385
385
  const toggleLayout = layoutMode === interfaces.ELayoutMode.HORIZONTAL ? "horizontal" : "vertical";
386
386
  const toggleSlot = layoutMode === interfaces.ELayoutMode.HORIZONTAL ? "header" : "panel-start";
387
387
  const hasMapAndLayer = this.defaultWebmap && this.defaultLayer;
388
- return (index.h("calcite-shell", { class: `${tableSizeClass} ${tableClass} border-bottom` }, !this._isMobile ? (index.h("calcite-action-bar", { class: "border-sides", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, index.h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), text: "" }), index.h("calcite-tooltip", { label: tooltip, placement: "bottom", "reference-element": id }, index.h("span", null, tooltip)))) : undefined, index.h("div", { class: `width-full height-full position-relative` }, index.h("layer-table", { defaultGlobalId: hasMapAndLayer ? this._defaultGlobalId : undefined, defaultLayerId: hasMapAndLayer ? this.defaultLayer : "", defaultOid: hasMapAndLayer && !this.defaultGlobalId ? this._defaultOid : undefined, enableAutoRefresh: this.enableAutoRefresh, enableCSV: this.enableCSV, enableColumnReorder: this.enableColumnReorder, enableInlineEdit: this.enableInlineEdit, enableShare: this.enableShare, isMobile: this._isMobile, mapInfo: this._mapInfo, mapView: this === null || this === void 0 ? void 0 : this._mapView, onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, ref: (el) => this._layerTable = el, shareIncludeEmbed: this.shareIncludeEmbed, shareIncludeSocial: this.shareIncludeSocial, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected }))));
388
+ return (index.h("calcite-shell", { class: `${tableSizeClass} ${tableClass} border-bottom` }, !this._isMobile ? (index.h("calcite-action-bar", { class: "border-sides", expandDisabled: true, layout: toggleLayout, slot: toggleSlot }, index.h("calcite-action", { class: "toggle-node", icon: icon, id: id, onClick: () => this._toggleLayout(), text: "" }), index.h("calcite-tooltip", { label: tooltip, placement: "bottom", "reference-element": id }, index.h("span", null, tooltip)))) : undefined, index.h("div", { class: `width-full height-full position-relative` }, index.h("layer-table", { defaultFilter: hasMapAndLayer ? this._defaultFilter : undefined, defaultGlobalId: hasMapAndLayer ? this._defaultGlobalId : undefined, defaultLayerId: hasMapAndLayer ? this.defaultLayer : "", defaultOid: hasMapAndLayer && !this.defaultGlobalId ? this._defaultOid : undefined, enableAutoRefresh: this.enableAutoRefresh, enableCSV: this.enableCSV, enableColumnReorder: this.enableColumnReorder, enableInlineEdit: this.enableInlineEdit, enableShare: this.enableShare, isMobile: this._isMobile, mapInfo: this._mapInfo, mapView: this === null || this === void 0 ? void 0 : this._mapView, onlyShowUpdatableLayers: this.onlyShowUpdatableLayers, ref: (el) => this._layerTable = el, shareIncludeEmbed: this.shareIncludeEmbed, shareIncludeSocial: this.shareIncludeSocial, showNewestFirst: this.showNewestFirst, zoomAndScrollToSelected: this.zoomAndScrollToSelected }))));
389
389
  }
390
390
  /**
391
391
  * Update the component layout when its size changes
@@ -477,11 +477,11 @@ const CrowdsourceManager = class {
477
477
  get el() { return index.getElement(this); }
478
478
  static get watchers() { return {
479
479
  "defaultCenter": ["defaultCenterWatchHandler"],
480
+ "defaultFilter": ["defaultFilterWatchHandler"],
480
481
  "defaultGlobalId": ["defaultGlobalIdWatchHandler"],
481
482
  "defaultOid": ["defaultOidWatchHandler"],
482
483
  "defaultLevel": ["defaultLevelWatchHandler"],
483
- "enableZoom": ["enableZoomWatchHandler"],
484
- "_isMobile": ["_isMobileWatchHandler"]
484
+ "enableZoom": ["enableZoomWatchHandler"]
485
485
  }; }
486
486
  };
487
487
  CrowdsourceManager.style = crowdsourceManagerCss;
@@ -1510,7 +1510,7 @@ function(t){var e=function(t){for(var e=t.length,r=new Uint8Array(e),n=0;n<e;n++
1510
1510
  * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
1511
1511
  * ====================================================================
1512
1512
  */
1513
- function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):Promise.resolve().then(function () { return require('./index.es-284a020c.js'); })).catch((function(t){return Promise.reject(new Error("Could not load canvg: "+t))})).then((function(t){return t.default?t.default:t}))}E.API.addSvgAsImage=function(t,r,n,i,o,s,c,u){if(isNaN(r)||isNaN(n))throw a.error("jsPDF.addSvgAsImage: Invalid coordinates",arguments),new Error("Invalid coordinates passed to jsPDF.addSvgAsImage");if(isNaN(i)||isNaN(o))throw a.error("jsPDF.addSvgAsImage: Invalid measurements",arguments),new Error("Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage");var h=document.createElement("canvas");h.width=i,h.height=o;var l=h.getContext("2d");l.fillStyle="#fff",l.fillRect(0,0,h.width,h.height);var f={ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0},d=this;return e().then((function(e){return e.fromString(l,t,f)}),(function(){return Promise.reject(new Error("Could not load canvg."))})).then((function(t){return t.render(f)})).then((function(){d.addImage(h.toDataURL("image/jpeg",1),r,n,i,o,c,u);}))};}(),E.API.putTotalPages=function(t){var e,r=0;parseInt(this.internal.getFont().id.substr(1),10)<15?(e=new RegExp(t,"g"),r=this.internal.getNumberOfPages()):(e=new RegExp(this.pdfEscape16(t,this.internal.getFont()),"g"),r=this.pdfEscape16(this.internal.getNumberOfPages()+"",this.internal.getFont()));for(var n=1;n<=this.internal.getNumberOfPages();n++)for(var i=0;i<this.internal.pages[n].length;i++)this.internal.pages[n][i]=this.internal.pages[n][i].replace(e,r);return this},E.API.viewerPreferences=function(e,r){var n;e=e||{},r=r||!1;var i,a,o,s={HideToolbar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideMenubar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideWindowUI:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},FitWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},CenterWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},DisplayDocTitle:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.4},NonFullScreenPageMode:{defaultValue:"UseNone",value:"UseNone",type:"name",explicitSet:!1,valueSet:["UseNone","UseOutlines","UseThumbs","UseOC"],pdfVersion:1.3},Direction:{defaultValue:"L2R",value:"L2R",type:"name",explicitSet:!1,valueSet:["L2R","R2L"],pdfVersion:1.3},ViewArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},ViewClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintScaling:{defaultValue:"AppDefault",value:"AppDefault",type:"name",explicitSet:!1,valueSet:["AppDefault","None"],pdfVersion:1.6},Duplex:{defaultValue:"",value:"none",type:"name",explicitSet:!1,valueSet:["Simplex","DuplexFlipShortEdge","DuplexFlipLongEdge","none"],pdfVersion:1.7},PickTrayByPDFSize:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.7},PrintPageRange:{defaultValue:"",value:"",type:"array",explicitSet:!1,valueSet:null,pdfVersion:1.7},NumCopies:{defaultValue:1,value:1,type:"integer",explicitSet:!1,valueSet:null,pdfVersion:1.7}},c=Object.keys(s),u=[],h=0,l=0,f=0;function d(t,e){var r,n=!1;for(r=0;r<t.length;r+=1)t[r]===e&&(n=!0);return n}if(void 0===this.internal.viewerpreferences&&(this.internal.viewerpreferences={},this.internal.viewerpreferences.configuration=JSON.parse(JSON.stringify(s)),this.internal.viewerpreferences.isSubscribed=!1),n=this.internal.viewerpreferences.configuration,"reset"===e||!0===r){var p=c.length;for(f=0;f<p;f+=1)n[c[f]].value=n[c[f]].defaultValue,n[c[f]].explicitSet=!1;}if("object"===t(e))for(a in e)if(o=e[a],d(c,a)&&void 0!==o){if("boolean"===n[a].type&&"boolean"==typeof o)n[a].value=o;else if("name"===n[a].type&&d(n[a].valueSet,o))n[a].value=o;else if("integer"===n[a].type&&Number.isInteger(o))n[a].value=o;else if("array"===n[a].type){for(h=0;h<o.length;h+=1)if(i=!0,1===o[h].length&&"number"==typeof o[h][0])u.push(String(o[h]-1));else if(o[h].length>1){for(l=0;l<o[h].length;l+=1)"number"!=typeof o[h][l]&&(i=!1);!0===i&&u.push([o[h][0]-1,o[h][1]-1].join(" "));}n[a].value="["+u.join(" ")+"]";}else n[a].value=n[a].defaultValue;n[a].explicitSet=!0;}return !1===this.internal.viewerpreferences.isSubscribed&&(this.internal.events.subscribe("putCatalog",(function(){var t,e=[];for(t in n)!0===n[t].explicitSet&&("name"===n[t].type?e.push("/"+t+" /"+n[t].value):e.push("/"+t+" "+n[t].value));0!==e.length&&this.internal.write("/ViewerPreferences\n<<\n"+e.join("\n")+"\n>>");})),this.internal.viewerpreferences.isSubscribed=!0),this.internal.viewerpreferences.configuration=n,this},
1513
+ function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):Promise.resolve().then(function () { return require('./index.es-a9a4ff08.js'); })).catch((function(t){return Promise.reject(new Error("Could not load canvg: "+t))})).then((function(t){return t.default?t.default:t}))}E.API.addSvgAsImage=function(t,r,n,i,o,s,c,u){if(isNaN(r)||isNaN(n))throw a.error("jsPDF.addSvgAsImage: Invalid coordinates",arguments),new Error("Invalid coordinates passed to jsPDF.addSvgAsImage");if(isNaN(i)||isNaN(o))throw a.error("jsPDF.addSvgAsImage: Invalid measurements",arguments),new Error("Invalid measurements (width and/or height) passed to jsPDF.addSvgAsImage");var h=document.createElement("canvas");h.width=i,h.height=o;var l=h.getContext("2d");l.fillStyle="#fff",l.fillRect(0,0,h.width,h.height);var f={ignoreMouse:!0,ignoreAnimation:!0,ignoreDimensions:!0},d=this;return e().then((function(e){return e.fromString(l,t,f)}),(function(){return Promise.reject(new Error("Could not load canvg."))})).then((function(t){return t.render(f)})).then((function(){d.addImage(h.toDataURL("image/jpeg",1),r,n,i,o,c,u);}))};}(),E.API.putTotalPages=function(t){var e,r=0;parseInt(this.internal.getFont().id.substr(1),10)<15?(e=new RegExp(t,"g"),r=this.internal.getNumberOfPages()):(e=new RegExp(this.pdfEscape16(t,this.internal.getFont()),"g"),r=this.pdfEscape16(this.internal.getNumberOfPages()+"",this.internal.getFont()));for(var n=1;n<=this.internal.getNumberOfPages();n++)for(var i=0;i<this.internal.pages[n].length;i++)this.internal.pages[n][i]=this.internal.pages[n][i].replace(e,r);return this},E.API.viewerPreferences=function(e,r){var n;e=e||{},r=r||!1;var i,a,o,s={HideToolbar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideMenubar:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},HideWindowUI:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},FitWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},CenterWindow:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.3},DisplayDocTitle:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.4},NonFullScreenPageMode:{defaultValue:"UseNone",value:"UseNone",type:"name",explicitSet:!1,valueSet:["UseNone","UseOutlines","UseThumbs","UseOC"],pdfVersion:1.3},Direction:{defaultValue:"L2R",value:"L2R",type:"name",explicitSet:!1,valueSet:["L2R","R2L"],pdfVersion:1.3},ViewArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},ViewClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintArea:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintClip:{defaultValue:"CropBox",value:"CropBox",type:"name",explicitSet:!1,valueSet:["MediaBox","CropBox","TrimBox","BleedBox","ArtBox"],pdfVersion:1.4},PrintScaling:{defaultValue:"AppDefault",value:"AppDefault",type:"name",explicitSet:!1,valueSet:["AppDefault","None"],pdfVersion:1.6},Duplex:{defaultValue:"",value:"none",type:"name",explicitSet:!1,valueSet:["Simplex","DuplexFlipShortEdge","DuplexFlipLongEdge","none"],pdfVersion:1.7},PickTrayByPDFSize:{defaultValue:!1,value:!1,type:"boolean",explicitSet:!1,valueSet:[!0,!1],pdfVersion:1.7},PrintPageRange:{defaultValue:"",value:"",type:"array",explicitSet:!1,valueSet:null,pdfVersion:1.7},NumCopies:{defaultValue:1,value:1,type:"integer",explicitSet:!1,valueSet:null,pdfVersion:1.7}},c=Object.keys(s),u=[],h=0,l=0,f=0;function d(t,e){var r,n=!1;for(r=0;r<t.length;r+=1)t[r]===e&&(n=!0);return n}if(void 0===this.internal.viewerpreferences&&(this.internal.viewerpreferences={},this.internal.viewerpreferences.configuration=JSON.parse(JSON.stringify(s)),this.internal.viewerpreferences.isSubscribed=!1),n=this.internal.viewerpreferences.configuration,"reset"===e||!0===r){var p=c.length;for(f=0;f<p;f+=1)n[c[f]].value=n[c[f]].defaultValue,n[c[f]].explicitSet=!1;}if("object"===t(e))for(a in e)if(o=e[a],d(c,a)&&void 0!==o){if("boolean"===n[a].type&&"boolean"==typeof o)n[a].value=o;else if("name"===n[a].type&&d(n[a].valueSet,o))n[a].value=o;else if("integer"===n[a].type&&Number.isInteger(o))n[a].value=o;else if("array"===n[a].type){for(h=0;h<o.length;h+=1)if(i=!0,1===o[h].length&&"number"==typeof o[h][0])u.push(String(o[h]-1));else if(o[h].length>1){for(l=0;l<o[h].length;l+=1)"number"!=typeof o[h][l]&&(i=!1);!0===i&&u.push([o[h][0]-1,o[h][1]-1].join(" "));}n[a].value="["+u.join(" ")+"]";}else n[a].value=n[a].defaultValue;n[a].explicitSet=!0;}return !1===this.internal.viewerpreferences.isSubscribed&&(this.internal.events.subscribe("putCatalog",(function(){var t,e=[];for(t in n)!0===n[t].explicitSet&&("name"===n[t].type?e.push("/"+t+" /"+n[t].value):e.push("/"+t+" "+n[t].value));0!==e.length&&this.internal.write("/ViewerPreferences\n<<\n"+e.join("\n")+"\n>>");})),this.internal.viewerpreferences.isSubscribed=!0),this.internal.viewerpreferences.configuration=n,this},
1514
1514
  /** ====================================================================
1515
1515
  * @license
1516
1516
  * jsPDF XMP metadata plugin
@@ -2233,8 +2233,10 @@ function downloadPDFFile(filename, labels, labelPageDescription, title = "", ini
2233
2233
  if (title) {
2234
2234
  labeller.drawSupplementalText(title, 0, -0.1);
2235
2235
  }
2236
- pdfLib.addPage();
2237
- ++startingPageNum;
2236
+ if (labels.length > 0) {
2237
+ pdfLib.addPage();
2238
+ ++startingPageNum;
2239
+ }
2238
2240
  }
2239
2241
  // Add the labels to the PDF
2240
2242
  await labeller.addLabelsToDoc(labels, labelSpec, startingPageNum, title // heading
@@ -6,7 +6,7 @@
6
6
  'use strict';
7
7
 
8
8
  const _commonjsHelpers = require('./_commonjsHelpers-384729db.js');
9
- const downloadUtils = require('./downloadUtils-9a13c6ac.js');
9
+ const downloadUtils = require('./downloadUtils-401356b5.js');
10
10
  require('./index-b8a649fc.js');
11
11
  require('./loadModules-46d14e81.js');
12
12
  require('./esri-loader-a91c0ec1.js');