@esri/solutions-components 0.8.28 → 0.8.29
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/cjs/basemap-gallery_7.cjs.entry.js +10 -1
- package/dist/cjs/calcite-alert_4.cjs.entry.js +3 -3
- package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +1 -1
- package/dist/cjs/calcite-flow_6.cjs.entry.js +1 -1
- package/dist/cjs/card-manager_3.cjs.entry.js +19 -19
- package/dist/cjs/crowdsource-manager.cjs.entry.js +1 -1
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +1 -1
- package/dist/cjs/{downloadUtils-5349717a.js → downloadUtils-83bf79ba.js} +2 -2
- package/dist/cjs/feature-list.cjs.entry.js +3 -3
- package/dist/cjs/{index.es-aa69b58b.js → index.es-4e523f8b.js} +2 -2
- package/dist/cjs/map-select-tools_3.cjs.entry.js +2 -2
- package/dist/cjs/{mapViewUtils-6e46ba33.js → mapViewUtils-911698e5.js} +31 -17
- package/dist/cjs/{popupUtils-3e65296c.js → popupUtils-e3fa775b.js} +1 -1
- package/dist/cjs/public-notification.cjs.entry.js +2 -2
- package/dist/collection/components/floor-filter/floor-filter.js +10 -1
- package/dist/collection/components/layer-table/layer-table.js +18 -18
- package/dist/collection/utils/queryUtils.js +30 -0
- package/dist/collection/utils/queryUtils.ts +41 -0
- package/dist/components/floor-filter2.js +10 -1
- package/dist/components/layer-table2.js +18 -18
- package/dist/components/queryUtils.js +31 -17
- package/dist/esm/basemap-gallery_7.entry.js +10 -1
- package/dist/esm/calcite-alert_4.entry.js +3 -3
- package/dist/esm/calcite-dropdown-group_2.entry.js +1 -1
- package/dist/esm/calcite-flow_6.entry.js +1 -1
- package/dist/esm/card-manager_3.entry.js +19 -19
- package/dist/esm/crowdsource-manager.entry.js +1 -1
- package/dist/esm/crowdsource-reporter.entry.js +1 -1
- package/dist/esm/{downloadUtils-5fa0d437.js → downloadUtils-571a502d.js} +2 -2
- package/dist/esm/feature-list.entry.js +3 -3
- package/dist/esm/{index.es-57c15c9b.js → index.es-2f9f04c5.js} +2 -2
- package/dist/esm/map-select-tools_3.entry.js +2 -2
- package/dist/esm/{mapViewUtils-4618ddb8.js → mapViewUtils-b8deb4ae.js} +31 -17
- package/dist/esm/{popupUtils-650b6bba.js → popupUtils-17193415.js} +1 -1
- package/dist/esm/public-notification.entry.js +2 -2
- package/dist/solutions-components/{p-81747268.entry.js → p-061da95a.entry.js} +1 -1
- package/dist/solutions-components/{p-e1662e32.entry.js → p-16fb8296.entry.js} +1 -1
- package/dist/solutions-components/p-1bdf0ba0.entry.js +6 -0
- package/dist/solutions-components/{p-a1037b19.js → p-2e23ac2c.js} +1 -1
- package/dist/solutions-components/{p-66722851.entry.js → p-2f7bfd8d.entry.js} +1 -1
- package/dist/solutions-components/p-327577d1.entry.js +6 -0
- package/dist/solutions-components/{p-bfdabb9d.entry.js → p-51d5532f.entry.js} +1 -1
- package/dist/solutions-components/{p-6f69de4d.js → p-52dba022.js} +2 -2
- package/dist/solutions-components/{p-24bf45b7.js → p-57eeed77.js} +1 -1
- package/dist/solutions-components/p-5aaa05ef.js +36 -0
- package/dist/solutions-components/{p-05b3a5d9.entry.js → p-61bf98bc.entry.js} +1 -1
- package/dist/solutions-components/{p-296375d3.entry.js → p-bb90a138.entry.js} +1 -1
- package/dist/solutions-components/{p-6bd6624f.entry.js → p-bda54b12.entry.js} +1 -1
- package/dist/solutions-components/{p-cd694107.entry.js → p-c21a6940.entry.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/queryUtils.ts +41 -0
- package/dist/types/utils/queryUtils.d.ts +16 -0
- package/package.json +1 -1
- package/dist/solutions-components/p-2a6db6e8.entry.js +0 -6
- package/dist/solutions-components/p-583e5dd0.js +0 -36
- package/dist/solutions-components/p-c3821586.entry.js +0 -6
@@ -137,15 +137,19 @@ const FloorFilter = class {
|
|
137
137
|
//
|
138
138
|
//--------------------------------------------------------------------------
|
139
139
|
async mapViewWatchHandler() {
|
140
|
+
console.log("mapViewWatchHandler FF");
|
140
141
|
const webMap = this.mapView.map;
|
141
142
|
await webMap.when(() => {
|
143
|
+
console.log("webMap.when FF");
|
142
144
|
if (this.floorFilterWidget) {
|
143
145
|
this.floorFilterWidget.destroy();
|
144
146
|
this.floorFilterWidget = undefined;
|
147
|
+
console.log("floorFilterWidget destroyed");
|
145
148
|
}
|
146
149
|
if (this._floorFilterElement) {
|
147
150
|
this._floorFilterElement.remove();
|
148
151
|
this._floorFilterElement = document.createElement("div");
|
152
|
+
console.log("this._floorFilterElement created");
|
149
153
|
}
|
150
154
|
this._initFloorFilter(this.mapView, webMap);
|
151
155
|
});
|
@@ -162,7 +166,7 @@ const FloorFilter = class {
|
|
162
166
|
return this._initModules();
|
163
167
|
}
|
164
168
|
render() {
|
165
|
-
return (index.h(index.Host, { key: '
|
169
|
+
return (index.h(index.Host, { key: 'df3c419f3eaf30590c44c4919f0eeddfc333b81d' }, index.h("div", { key: '8496099f3bc35f34db6e47f73870ead9144df0a4', ref: (el) => { this._floorFilterElement = el; } })));
|
166
170
|
}
|
167
171
|
//--------------------------------------------------------------------------
|
168
172
|
//
|
@@ -189,6 +193,11 @@ const FloorFilter = class {
|
|
189
193
|
*/
|
190
194
|
_initFloorFilter(view, webMap) {
|
191
195
|
var _a, _b, _c;
|
196
|
+
console.log("_initFloorFilter");
|
197
|
+
console.log(`view: ${view}`);
|
198
|
+
console.log(`this.enabled: ${this.enabled}`);
|
199
|
+
console.log(`this.FloorFilter: ${this.FloorFilter}`);
|
200
|
+
console.log(`webMap?.floorInfo: ${webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo}`);
|
192
201
|
if (view && this.enabled && this.FloorFilter && (webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo)) {
|
193
202
|
this.floorFilterWidget = new this.FloorFilter({
|
194
203
|
container: this._floorFilterElement,
|
@@ -16,15 +16,15 @@ const openCloseComponent = require('./openCloseComponent-6a283ac3.js');
|
|
16
16
|
const t9n = require('./t9n-9d199056.js');
|
17
17
|
const resources = require('./resources-6146eb17.js');
|
18
18
|
const locale$1 = require('./locale-48d76c59.js');
|
19
|
-
const mapViewUtils = require('./mapViewUtils-
|
20
|
-
const popupUtils = require('./popupUtils-
|
19
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
20
|
+
const popupUtils = require('./popupUtils-e3fa775b.js');
|
21
21
|
require('./guid-a7528dfa.js');
|
22
22
|
require('./resources-1c0e54c1.js');
|
23
23
|
require('./key-7ed07912.js');
|
24
24
|
require('./observers-4fa351d9.js');
|
25
25
|
require('./esri-loader-fce6a9cb.js');
|
26
26
|
require('./interfaces-7cd0a48a.js');
|
27
|
-
require('./downloadUtils-
|
27
|
+
require('./downloadUtils-83bf79ba.js');
|
28
28
|
require('./solution-resource-a577e84f.js');
|
29
29
|
require('./index-f64944ad.js');
|
30
30
|
require('./restHelpersGet-dbaa28df.js');
|
@@ -11,7 +11,7 @@ const index = require('./index-79b35510.js');
|
|
11
11
|
const observers = require('./observers-4fa351d9.js');
|
12
12
|
const resources = require('./resources-fa37e40f.js');
|
13
13
|
const locale = require('./locale-48d76c59.js');
|
14
|
-
const mapViewUtils = require('./mapViewUtils-
|
14
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
15
15
|
const publicNotificationStore = require('./publicNotificationStore-3bfbbed3.js');
|
16
16
|
require('./esri-loader-fce6a9cb.js');
|
17
17
|
require('./interfaces-7cd0a48a.js');
|
@@ -16,7 +16,7 @@ const locale = require('./locale-5efdf085.js');
|
|
16
16
|
const t9n = require('./t9n-9d199056.js');
|
17
17
|
const resources = require('./resources-cb14bafc.js');
|
18
18
|
const locale$1 = require('./locale-48d76c59.js');
|
19
|
-
const mapViewUtils = require('./mapViewUtils-
|
19
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
20
20
|
require('./guid-a7528dfa.js');
|
21
21
|
require('./resources-1c0e54c1.js');
|
22
22
|
require('./browser-a96d0614.js');
|
@@ -9,8 +9,8 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
9
9
|
|
10
10
|
const index = require('./index-79b35510.js');
|
11
11
|
const locale = require('./locale-48d76c59.js');
|
12
|
-
const mapViewUtils = require('./mapViewUtils-
|
13
|
-
const downloadUtils = require('./downloadUtils-
|
12
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
13
|
+
const downloadUtils = require('./downloadUtils-83bf79ba.js');
|
14
14
|
require('./esri-loader-fce6a9cb.js');
|
15
15
|
require('./interfaces-7cd0a48a.js');
|
16
16
|
require('./solution-resource-a577e84f.js');
|
@@ -302,6 +302,10 @@ const LayerTable = class {
|
|
302
302
|
if (this._selectAllActive && this.selectedIds.length !== this._allIds.length) {
|
303
303
|
this._selectAllActive = false;
|
304
304
|
}
|
305
|
+
if (this.selectedIds.length > 0) {
|
306
|
+
this._table.rowHighlightIds.removeAll();
|
307
|
+
this._table.rowHighlightIds.add(this.selectedIds[0]);
|
308
|
+
}
|
305
309
|
}
|
306
310
|
/**
|
307
311
|
* Scroll and zoom to the selected feature from the Features widget.
|
@@ -401,7 +405,7 @@ const LayerTable = class {
|
|
401
405
|
const selected = this.selectedIds.length.toString();
|
402
406
|
const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
|
403
407
|
this._validateActiveActions();
|
404
|
-
return (index.h(index.Host, { key: '
|
408
|
+
return (index.h(index.Host, { key: '928286a8e4d1159b56b2aa4384f0d6eed38c9e76' }, index.h("calcite-shell", { key: '7c9b98056ee867df54ebfd31fee6f046f5152f64' }, this._getTableControlRow("header"), index.h("div", { key: 'b1a9a9cca100c7bef335afd5b6c7d7384ca7536c', class: `width-full ${tableHeightClass}` }, index.h("calcite-panel", { key: 'ceeead9900f43c94f46c8c94698ae17f3ae558b7', class: "height-full width-full" }, index.h("calcite-loader", { key: '7bf3c9ba21daa27dd387ba5413b6f6e982e1f10d', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), index.h("div", { key: '7d0440047453a45fe1688ad373ab2463fe7479ba', class: tableNodeClass, ref: this.onTableNodeCreate })), !this.isMobile ? (index.h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
|
405
409
|
.replace("{{total}}", total)
|
406
410
|
.replace("{{selected}}", selected))) : undefined)), this._filterModal()));
|
407
411
|
}
|
@@ -1002,43 +1006,38 @@ const LayerTable = class {
|
|
1002
1006
|
else if (this._shiftIsPressed) {
|
1003
1007
|
this._skipOnChange = true;
|
1004
1008
|
this._previousCurrentId = this._currentId;
|
1005
|
-
this._currentId = [...
|
1006
|
-
if (
|
1009
|
+
this._currentId = [...ids].reverse()[0];
|
1010
|
+
if (ids.length === 1) {
|
1011
|
+
this._skipOnChange = false;
|
1012
|
+
}
|
1013
|
+
else if (this._previousCurrentId !== this._currentId) {
|
1007
1014
|
// query the layer based on current sort and filters then grab between the current id and previous id
|
1008
1015
|
const orderBy = this._table.activeSortOrders.reduce((prev, cur) => {
|
1009
1016
|
prev.push(`${cur.fieldName} ${cur.direction}`);
|
1010
1017
|
return prev;
|
1011
1018
|
}, []);
|
1012
|
-
const oids = await mapViewUtils.
|
1019
|
+
const oids = await mapViewUtils.queryAllOidsWithQueryFeatures(0, this._layer, [], orderBy);
|
1013
1020
|
let isBetween = false;
|
1014
1021
|
const _start = this._table.viewModel.getObjectIdIndex(this._previousCurrentId);
|
1015
1022
|
const _end = this._table.viewModel.getObjectIdIndex(this._currentId);
|
1016
1023
|
const startIndex = _start < _end ? _start : _end;
|
1017
1024
|
const endIndex = _end > _start ? _end : _start;
|
1018
1025
|
this._skipOnChange = startIndex + 1 !== endIndex;
|
1019
|
-
const
|
1026
|
+
const idsInRange = oids.reduce((prev, cur) => {
|
1020
1027
|
const id = cur;
|
1021
|
-
const index = this._table.viewModel.getObjectIdIndex(id);
|
1022
1028
|
if ((id === this._currentId || id === this._previousCurrentId)) {
|
1023
1029
|
isBetween = !isBetween;
|
1024
1030
|
if (prev.indexOf(id) < 0) {
|
1025
1031
|
prev.push(id);
|
1026
1032
|
}
|
1027
1033
|
}
|
1028
|
-
|
1029
|
-
// Index of -1 will occur for features between the start and and oid if
|
1030
|
-
// you select a row then scroll faster than the FeatureTable loads the data to select the next id
|
1031
|
-
if (isBetween && prev.indexOf(id) < 0) {
|
1032
|
-
prev.push(id);
|
1033
|
-
}
|
1034
|
-
// Also add index based check.
|
1035
|
-
// In some cases the FeatureTable and Layer query will have differences in how null/undefined field values are sorted
|
1036
|
-
if ((this.selectedIds.indexOf(id) > -1 || (index >= startIndex && index <= endIndex)) && prev.indexOf(id) < 0 && index > -1) {
|
1034
|
+
else if (isBetween && prev.indexOf(id) < 0) {
|
1037
1035
|
prev.push(id);
|
1038
1036
|
}
|
1039
1037
|
return prev;
|
1040
1038
|
}, []);
|
1041
|
-
|
1039
|
+
const selectedIds = _start < _end ? idsInRange.reverse() : idsInRange;
|
1040
|
+
this.selectedIds = [...new Set([...selectedIds, ...this.selectedIds])];
|
1042
1041
|
this._table.highlightIds.addMany(this.selectedIds.filter(i => ids.indexOf(i) < 0));
|
1043
1042
|
}
|
1044
1043
|
}
|
@@ -1380,9 +1379,10 @@ const LayerTable = class {
|
|
1380
1379
|
* Clears the selected indexes
|
1381
1380
|
*/
|
1382
1381
|
_clearSelection() {
|
1383
|
-
var _a;
|
1382
|
+
var _a, _b;
|
1384
1383
|
this.selectedIds = [];
|
1385
1384
|
(_a = this._table) === null || _a === void 0 ? void 0 : _a.highlightIds.removeAll();
|
1385
|
+
(_b = this._table) === null || _b === void 0 ? void 0 : _b.rowHighlightIds.removeAll();
|
1386
1386
|
this._finishOnChange();
|
1387
1387
|
}
|
1388
1388
|
/**
|
@@ -10,7 +10,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
10
10
|
const index = require('./index-79b35510.js');
|
11
11
|
const locale = require('./locale-48d76c59.js');
|
12
12
|
const interfaces = require('./interfaces-7cd0a48a.js');
|
13
|
-
const mapViewUtils = require('./mapViewUtils-
|
13
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
14
14
|
require('./esri-loader-fce6a9cb.js');
|
15
15
|
|
16
16
|
const crowdsourceManagerCss = ":host{display:block;--calcite-label-margin-bottom:0px;--solutions-theme-foreground-color:var(--calcite-color-foreground-1)}.padding-1-2{padding:0.5rem}.display-flex{display:flex}.width-full{width:100%}.width-1-2{position:relative;width:50%}.width-1-3{position:relative;width:33.33%}.width-2-3{position:relative;width:66.66%}.width-0{width:0}.height-full{height:100%}.height-1-2{position:relative;height:50%}.height-0{height:0}.toggle-node{width:51px;height:51px}.overflow-hidden{overflow:hidden}.flex-column{flex-direction:column}.border{border:1px solid var(--calcite-color-border-3)}.border-bottom{border-bottom:1px solid var(--calcite-color-border-3)}.border-sides{border-left:1px solid var(--calcite-color-border-3);border-right:1px solid var(--calcite-color-border-3)}.position-relative{position:relative}.height-50{height:50%}.adjusted-height-50{height:calc(50% - 25px)}.adjusted-height-100{height:calc(100% - 50px)}.adjusted-height-100-50{height:calc(100% - 50px)}.display-none{display:none}.height-53{height:53px}.position-absolute-53{position:absolute;top:53px}.display-grid{display:grid}.height-50-px{height:50px}.padding-inline-start-75{padding-inline-start:0.75rem}.align-items-center{align-items:center}.esri-floor-filter__close-levels-button{width:40px !important;height:40px !important}.esri-floor-filter__level-button{width:40px !important;height:40px !important}.esri-floor-filter__browse-button{width:40px !important;height:40px !important}.position-absolute-50{position:absolute;top:50px;bottom:0px;left:0px;right:0px}.position-absolute-0{position:absolute;top:0px;bottom:0px;left:0px;right:0px}.visibility-hidden{visibility:hidden;height:0px}.position-fixed{position:fixed}.border-width-0{border-width:0px}.border-bottom-width-0{border-bottom-width:0px}.floating-container{position:fixed;width:100px;height:10px;bottom:0;right:0;margin:100px 0px}.floating-container .floating-button{box-shadow:0 10px 25px rgb(92 93 94 / 60%);transform:translatey(5px);transition:all 0.3s}";
|
@@ -9,7 +9,7 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
9
9
|
|
10
10
|
const index = require('./index-79b35510.js');
|
11
11
|
const locale = require('./locale-48d76c59.js');
|
12
|
-
const mapViewUtils = require('./mapViewUtils-
|
12
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
13
13
|
require('./esri-loader-fce6a9cb.js');
|
14
14
|
require('./interfaces-7cd0a48a.js');
|
15
15
|
|
@@ -8,7 +8,7 @@
|
|
8
8
|
const esriLoader = require('./esri-loader-fce6a9cb.js');
|
9
9
|
const index = require('./index-79b35510.js');
|
10
10
|
const locale = require('./locale-48d76c59.js');
|
11
|
-
const mapViewUtils = require('./mapViewUtils-
|
11
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
12
12
|
require('./solution-resource-a577e84f.js');
|
13
13
|
require('./index-f64944ad.js');
|
14
14
|
const restHelpersGet = require('./restHelpersGet-dbaa28df.js');
|
@@ -1512,7 +1512,7 @@ function(t){var e=function(t){for(var e=t.length,r=new Uint8Array(e),n=0;n<e;n++
|
|
1512
1512
|
* WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
1513
1513
|
* ====================================================================
|
1514
1514
|
*/
|
1515
|
-
function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):Promise.resolve().then(function () { return require('./index.es-
|
1515
|
+
function(t){function e(){return (n.canvg?Promise.resolve(n.canvg):Promise.resolve().then(function () { return require('./index.es-4e523f8b.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},
|
1516
1516
|
/** ====================================================================
|
1517
1517
|
* @license
|
1518
1518
|
* jsPDF XMP metadata plugin
|
@@ -9,10 +9,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
9
9
|
|
10
10
|
const index = require('./index-79b35510.js');
|
11
11
|
const locale = require('./locale-48d76c59.js');
|
12
|
-
const popupUtils = require('./popupUtils-
|
13
|
-
const mapViewUtils = require('./mapViewUtils-
|
12
|
+
const popupUtils = require('./popupUtils-e3fa775b.js');
|
13
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
14
14
|
require('./esri-loader-fce6a9cb.js');
|
15
|
-
require('./downloadUtils-
|
15
|
+
require('./downloadUtils-83bf79ba.js');
|
16
16
|
require('./solution-resource-a577e84f.js');
|
17
17
|
require('./index-f64944ad.js');
|
18
18
|
require('./restHelpersGet-dbaa28df.js');
|
@@ -6,10 +6,10 @@
|
|
6
6
|
'use strict';
|
7
7
|
|
8
8
|
const esriLoader = require('./esri-loader-fce6a9cb.js');
|
9
|
-
const downloadUtils = require('./downloadUtils-
|
9
|
+
const downloadUtils = require('./downloadUtils-83bf79ba.js');
|
10
10
|
require('./index-79b35510.js');
|
11
11
|
require('./locale-48d76c59.js');
|
12
|
-
require('./mapViewUtils-
|
12
|
+
require('./mapViewUtils-911698e5.js');
|
13
13
|
require('./interfaces-7cd0a48a.js');
|
14
14
|
require('./solution-resource-a577e84f.js');
|
15
15
|
require('./index-f64944ad.js');
|
@@ -9,10 +9,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
9
9
|
|
10
10
|
const index = require('./index-79b35510.js');
|
11
11
|
const locale = require('./locale-48d76c59.js');
|
12
|
-
const mapViewUtils = require('./mapViewUtils-
|
12
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
13
13
|
const interfaces = require('./interfaces-7cd0a48a.js');
|
14
14
|
const publicNotificationStore = require('./publicNotificationStore-3bfbbed3.js');
|
15
|
-
const downloadUtils = require('./downloadUtils-
|
15
|
+
const downloadUtils = require('./downloadUtils-83bf79ba.js');
|
16
16
|
require('./esri-loader-fce6a9cb.js');
|
17
17
|
require('./index-c078ea5f.js');
|
18
18
|
require('./solution-resource-a577e84f.js');
|
@@ -22,6 +22,36 @@ const interfaces = require('./interfaces-7cd0a48a.js');
|
|
22
22
|
* See the License for the specific language governing permissions and
|
23
23
|
* limitations under the License.
|
24
24
|
*/
|
25
|
+
/**
|
26
|
+
* Query the layer for all OIDs valid for any definition expressions applied to the layer.
|
27
|
+
*
|
28
|
+
* This query allows OIDs to be returned in the same order as shown in the FeatureTable.
|
29
|
+
* FeatureLayer.queryObjectIds can return OIDs in a different order.
|
30
|
+
*
|
31
|
+
* @param start zero-based index indicating where to begin retrieving features
|
32
|
+
* @param layer the layer to retrieve features from
|
33
|
+
* @param graphics stores the features
|
34
|
+
* @param orderBy One or more field names used to order the query results.
|
35
|
+
* Specify ASC (ascending) or DESC (descending) after the field name to control the order.
|
36
|
+
* The default order is ASC.
|
37
|
+
*
|
38
|
+
* @returns Promise with the OIDs sorted based on any orderBy definitions
|
39
|
+
*/
|
40
|
+
async function queryAllOidsWithQueryFeatures(start, layer, graphics, orderBy) {
|
41
|
+
const num = layer.capabilities.query.maxRecordCount;
|
42
|
+
const query = layer.createQuery();
|
43
|
+
query.start = start;
|
44
|
+
query.num = num;
|
45
|
+
query.returnGeometry = false;
|
46
|
+
query.orderByFields = orderBy;
|
47
|
+
query.outFields = [layer.objectIdField];
|
48
|
+
query.where = layer.definitionExpression || "1=1";
|
49
|
+
const result = await layer.queryFeatures(query);
|
50
|
+
graphics = graphics.concat(result.features);
|
51
|
+
return result.exceededTransferLimit ?
|
52
|
+
queryAllOidsWithQueryFeatures(start += num, layer, graphics, orderBy) :
|
53
|
+
Promise.resolve(graphics.map(g => g.attributes[layer.objectIdField]));
|
54
|
+
}
|
25
55
|
/**
|
26
56
|
* Query the layer for all IDs
|
27
57
|
*
|
@@ -129,22 +159,6 @@ async function queryFeaturesByGeometry(start, layer, geometry, featuresCollectio
|
|
129
159
|
queryFeaturesByGeometry(start += num, layer, geometry, featuresCollection) :
|
130
160
|
Promise.resolve(featuresCollection);
|
131
161
|
}
|
132
|
-
/**
|
133
|
-
* Query the layer for feature ids that match the provided where clause.
|
134
|
-
* If no where clause is provided all features will be returned.
|
135
|
-
*
|
136
|
-
* @param layer the layer to retrieve features from
|
137
|
-
* @param where the where clause for the query
|
138
|
-
* @param orderBy any sort order to apply to the query
|
139
|
-
*
|
140
|
-
* @returns Promise with the ids from the layer that match the where and are sorted as defined by orderBy
|
141
|
-
*/
|
142
|
-
async function queryFeatureIds(layer, where, orderBy) {
|
143
|
-
const query = layer.createQuery();
|
144
|
-
query.where = where ? where : "1=1";
|
145
|
-
query.orderByFields = orderBy;
|
146
|
-
return await layer.queryObjectIds(query);
|
147
|
-
}
|
148
162
|
/**
|
149
163
|
* Query the layer for the extent of features with the provided OIDs
|
150
164
|
*
|
@@ -487,7 +501,7 @@ exports.goToSelection = goToSelection;
|
|
487
501
|
exports.highlightAllFeatures = highlightAllFeatures;
|
488
502
|
exports.highlightFeatures = highlightFeatures;
|
489
503
|
exports.queryAllIds = queryAllIds;
|
490
|
-
exports.
|
504
|
+
exports.queryAllOidsWithQueryFeatures = queryAllOidsWithQueryFeatures;
|
491
505
|
exports.queryFeaturesByGeometry = queryFeaturesByGeometry;
|
492
506
|
exports.queryFeaturesByGlobalID = queryFeaturesByGlobalID;
|
493
507
|
exports.queryFeaturesByID = queryFeaturesByID;
|
@@ -10,9 +10,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
|
|
10
10
|
const index = require('./index-79b35510.js');
|
11
11
|
const interfaces = require('./interfaces-7cd0a48a.js');
|
12
12
|
const locale = require('./locale-48d76c59.js');
|
13
|
-
const mapViewUtils = require('./mapViewUtils-
|
13
|
+
const mapViewUtils = require('./mapViewUtils-911698e5.js');
|
14
14
|
const publicNotificationStore = require('./publicNotificationStore-3bfbbed3.js');
|
15
|
-
const downloadUtils = require('./downloadUtils-
|
15
|
+
const downloadUtils = require('./downloadUtils-83bf79ba.js');
|
16
16
|
require('./esri-loader-fce6a9cb.js');
|
17
17
|
require('./index-c078ea5f.js');
|
18
18
|
require('./solution-resource-a577e84f.js');
|
@@ -32,15 +32,19 @@ export class FloorFilter {
|
|
32
32
|
//
|
33
33
|
//--------------------------------------------------------------------------
|
34
34
|
async mapViewWatchHandler() {
|
35
|
+
console.log("mapViewWatchHandler FF");
|
35
36
|
const webMap = this.mapView.map;
|
36
37
|
await webMap.when(() => {
|
38
|
+
console.log("webMap.when FF");
|
37
39
|
if (this.floorFilterWidget) {
|
38
40
|
this.floorFilterWidget.destroy();
|
39
41
|
this.floorFilterWidget = undefined;
|
42
|
+
console.log("floorFilterWidget destroyed");
|
40
43
|
}
|
41
44
|
if (this._floorFilterElement) {
|
42
45
|
this._floorFilterElement.remove();
|
43
46
|
this._floorFilterElement = document.createElement("div");
|
47
|
+
console.log("this._floorFilterElement created");
|
44
48
|
}
|
45
49
|
this._initFloorFilter(this.mapView, webMap);
|
46
50
|
});
|
@@ -57,7 +61,7 @@ export class FloorFilter {
|
|
57
61
|
return this._initModules();
|
58
62
|
}
|
59
63
|
render() {
|
60
|
-
return (h(Host, { key: '
|
64
|
+
return (h(Host, { key: 'df3c419f3eaf30590c44c4919f0eeddfc333b81d' }, h("div", { key: '8496099f3bc35f34db6e47f73870ead9144df0a4', ref: (el) => { this._floorFilterElement = el; } })));
|
61
65
|
}
|
62
66
|
//--------------------------------------------------------------------------
|
63
67
|
//
|
@@ -84,6 +88,11 @@ export class FloorFilter {
|
|
84
88
|
*/
|
85
89
|
_initFloorFilter(view, webMap) {
|
86
90
|
var _a, _b, _c;
|
91
|
+
console.log("_initFloorFilter");
|
92
|
+
console.log(`view: ${view}`);
|
93
|
+
console.log(`this.enabled: ${this.enabled}`);
|
94
|
+
console.log(`this.FloorFilter: ${this.FloorFilter}`);
|
95
|
+
console.log(`webMap?.floorInfo: ${webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo}`);
|
87
96
|
if (view && this.enabled && this.FloorFilter && (webMap === null || webMap === void 0 ? void 0 : webMap.floorInfo)) {
|
88
97
|
this.floorFilterWidget = new this.FloorFilter({
|
89
98
|
container: this._floorFilterElement,
|
@@ -22,7 +22,7 @@ import { Host, h } from "@stencil/core";
|
|
22
22
|
import { loadModules } from "../../utils/loadModules";
|
23
23
|
import { getLocaleComponentStrings } from "../../utils/locale";
|
24
24
|
import { getFeatureLayerView, getLayerOrTable, goToSelection } from "../../utils/mapViewUtils";
|
25
|
-
import { queryAllIds,
|
25
|
+
import { queryAllIds, queryAllOidsWithQueryFeatures, queryFeaturesByGlobalID } from "../../utils/queryUtils";
|
26
26
|
import * as downloadUtils from "../../utils/downloadUtils";
|
27
27
|
import "@esri/instant-apps-components/dist/components/instant-apps-social-share";
|
28
28
|
export class LayerTable {
|
@@ -216,6 +216,10 @@ export class LayerTable {
|
|
216
216
|
if (this._selectAllActive && this.selectedIds.length !== this._allIds.length) {
|
217
217
|
this._selectAllActive = false;
|
218
218
|
}
|
219
|
+
if (this.selectedIds.length > 0) {
|
220
|
+
this._table.rowHighlightIds.removeAll();
|
221
|
+
this._table.rowHighlightIds.add(this.selectedIds[0]);
|
222
|
+
}
|
219
223
|
}
|
220
224
|
/**
|
221
225
|
* Scroll and zoom to the selected feature from the Features widget.
|
@@ -315,7 +319,7 @@ export class LayerTable {
|
|
315
319
|
const selected = this.selectedIds.length.toString();
|
316
320
|
const tableHeightClass = this.isMobile ? "height-full" : "height-full-adjusted";
|
317
321
|
this._validateActiveActions();
|
318
|
-
return (h(Host, { key: '
|
322
|
+
return (h(Host, { key: '928286a8e4d1159b56b2aa4384f0d6eed38c9e76' }, h("calcite-shell", { key: '7c9b98056ee867df54ebfd31fee6f046f5152f64' }, this._getTableControlRow("header"), h("div", { key: 'b1a9a9cca100c7bef335afd5b6c7d7384ca7536c', class: `width-full ${tableHeightClass}` }, h("calcite-panel", { key: 'ceeead9900f43c94f46c8c94698ae17f3ae558b7', class: "height-full width-full" }, h("calcite-loader", { key: '7bf3c9ba21daa27dd387ba5413b6f6e982e1f10d', class: loadingClass, label: this._translations.fetchingData, scale: "l" }), h("div", { key: '7d0440047453a45fe1688ad373ab2463fe7479ba', class: tableNodeClass, ref: this.onTableNodeCreate })), !this.isMobile ? (h("div", { class: "bottom-left text-color height-19" }, this._translations.recordsSelected
|
319
323
|
.replace("{{total}}", total)
|
320
324
|
.replace("{{selected}}", selected))) : undefined)), this._filterModal()));
|
321
325
|
}
|
@@ -916,43 +920,38 @@ export class LayerTable {
|
|
916
920
|
else if (this._shiftIsPressed) {
|
917
921
|
this._skipOnChange = true;
|
918
922
|
this._previousCurrentId = this._currentId;
|
919
|
-
this._currentId = [...
|
920
|
-
if (
|
923
|
+
this._currentId = [...ids].reverse()[0];
|
924
|
+
if (ids.length === 1) {
|
925
|
+
this._skipOnChange = false;
|
926
|
+
}
|
927
|
+
else if (this._previousCurrentId !== this._currentId) {
|
921
928
|
// query the layer based on current sort and filters then grab between the current id and previous id
|
922
929
|
const orderBy = this._table.activeSortOrders.reduce((prev, cur) => {
|
923
930
|
prev.push(`${cur.fieldName} ${cur.direction}`);
|
924
931
|
return prev;
|
925
932
|
}, []);
|
926
|
-
const oids = await
|
933
|
+
const oids = await queryAllOidsWithQueryFeatures(0, this._layer, [], orderBy);
|
927
934
|
let isBetween = false;
|
928
935
|
const _start = this._table.viewModel.getObjectIdIndex(this._previousCurrentId);
|
929
936
|
const _end = this._table.viewModel.getObjectIdIndex(this._currentId);
|
930
937
|
const startIndex = _start < _end ? _start : _end;
|
931
938
|
const endIndex = _end > _start ? _end : _start;
|
932
939
|
this._skipOnChange = startIndex + 1 !== endIndex;
|
933
|
-
const
|
940
|
+
const idsInRange = oids.reduce((prev, cur) => {
|
934
941
|
const id = cur;
|
935
|
-
const index = this._table.viewModel.getObjectIdIndex(id);
|
936
942
|
if ((id === this._currentId || id === this._previousCurrentId)) {
|
937
943
|
isBetween = !isBetween;
|
938
944
|
if (prev.indexOf(id) < 0) {
|
939
945
|
prev.push(id);
|
940
946
|
}
|
941
947
|
}
|
942
|
-
|
943
|
-
// Index of -1 will occur for features between the start and and oid if
|
944
|
-
// you select a row then scroll faster than the FeatureTable loads the data to select the next id
|
945
|
-
if (isBetween && prev.indexOf(id) < 0) {
|
946
|
-
prev.push(id);
|
947
|
-
}
|
948
|
-
// Also add index based check.
|
949
|
-
// In some cases the FeatureTable and Layer query will have differences in how null/undefined field values are sorted
|
950
|
-
if ((this.selectedIds.indexOf(id) > -1 || (index >= startIndex && index <= endIndex)) && prev.indexOf(id) < 0 && index > -1) {
|
948
|
+
else if (isBetween && prev.indexOf(id) < 0) {
|
951
949
|
prev.push(id);
|
952
950
|
}
|
953
951
|
return prev;
|
954
952
|
}, []);
|
955
|
-
|
953
|
+
const selectedIds = _start < _end ? idsInRange.reverse() : idsInRange;
|
954
|
+
this.selectedIds = [...new Set([...selectedIds, ...this.selectedIds])];
|
956
955
|
this._table.highlightIds.addMany(this.selectedIds.filter(i => ids.indexOf(i) < 0));
|
957
956
|
}
|
958
957
|
}
|
@@ -1294,9 +1293,10 @@ export class LayerTable {
|
|
1294
1293
|
* Clears the selected indexes
|
1295
1294
|
*/
|
1296
1295
|
_clearSelection() {
|
1297
|
-
var _a;
|
1296
|
+
var _a, _b;
|
1298
1297
|
this.selectedIds = [];
|
1299
1298
|
(_a = this._table) === null || _a === void 0 ? void 0 : _a.highlightIds.removeAll();
|
1299
|
+
(_b = this._table) === null || _b === void 0 ? void 0 : _b.rowHighlightIds.removeAll();
|
1300
1300
|
this._finishOnChange();
|
1301
1301
|
}
|
1302
1302
|
/**
|
@@ -40,6 +40,36 @@ export async function queryAllFeatures(start, layer, graphics) {
|
|
40
40
|
queryAllFeatures(start += num, layer, graphics) :
|
41
41
|
Promise.resolve(graphics);
|
42
42
|
}
|
43
|
+
/**
|
44
|
+
* Query the layer for all OIDs valid for any definition expressions applied to the layer.
|
45
|
+
*
|
46
|
+
* This query allows OIDs to be returned in the same order as shown in the FeatureTable.
|
47
|
+
* FeatureLayer.queryObjectIds can return OIDs in a different order.
|
48
|
+
*
|
49
|
+
* @param start zero-based index indicating where to begin retrieving features
|
50
|
+
* @param layer the layer to retrieve features from
|
51
|
+
* @param graphics stores the features
|
52
|
+
* @param orderBy One or more field names used to order the query results.
|
53
|
+
* Specify ASC (ascending) or DESC (descending) after the field name to control the order.
|
54
|
+
* The default order is ASC.
|
55
|
+
*
|
56
|
+
* @returns Promise with the OIDs sorted based on any orderBy definitions
|
57
|
+
*/
|
58
|
+
export async function queryAllOidsWithQueryFeatures(start, layer, graphics, orderBy) {
|
59
|
+
const num = layer.capabilities.query.maxRecordCount;
|
60
|
+
const query = layer.createQuery();
|
61
|
+
query.start = start;
|
62
|
+
query.num = num;
|
63
|
+
query.returnGeometry = false;
|
64
|
+
query.orderByFields = orderBy;
|
65
|
+
query.outFields = [layer.objectIdField];
|
66
|
+
query.where = layer.definitionExpression || "1=1";
|
67
|
+
const result = await layer.queryFeatures(query);
|
68
|
+
graphics = graphics.concat(result.features);
|
69
|
+
return result.exceededTransferLimit ?
|
70
|
+
queryAllOidsWithQueryFeatures(start += num, layer, graphics, orderBy) :
|
71
|
+
Promise.resolve(graphics.map(g => g.attributes[layer.objectIdField]));
|
72
|
+
}
|
43
73
|
/**
|
44
74
|
* Query the layer for all IDs
|
45
75
|
*
|
@@ -48,6 +48,47 @@ export async function queryAllFeatures(
|
|
48
48
|
Promise.resolve(graphics);
|
49
49
|
}
|
50
50
|
|
51
|
+
/**
|
52
|
+
* Query the layer for all OIDs valid for any definition expressions applied to the layer.
|
53
|
+
*
|
54
|
+
* This query allows OIDs to be returned in the same order as shown in the FeatureTable.
|
55
|
+
* FeatureLayer.queryObjectIds can return OIDs in a different order.
|
56
|
+
*
|
57
|
+
* @param start zero-based index indicating where to begin retrieving features
|
58
|
+
* @param layer the layer to retrieve features from
|
59
|
+
* @param graphics stores the features
|
60
|
+
* @param orderBy One or more field names used to order the query results.
|
61
|
+
* Specify ASC (ascending) or DESC (descending) after the field name to control the order.
|
62
|
+
* The default order is ASC.
|
63
|
+
*
|
64
|
+
* @returns Promise with the OIDs sorted based on any orderBy definitions
|
65
|
+
*/
|
66
|
+
export async function queryAllOidsWithQueryFeatures(
|
67
|
+
start: number,
|
68
|
+
layer: __esri.FeatureLayer,
|
69
|
+
graphics: __esri.Graphic[],
|
70
|
+
orderBy?: string[]
|
71
|
+
): Promise<number[]> {
|
72
|
+
const num = layer.capabilities.query.maxRecordCount;
|
73
|
+
const query = layer.createQuery();
|
74
|
+
query.start = start;
|
75
|
+
query.num = num;
|
76
|
+
query.returnGeometry = false;
|
77
|
+
query.orderByFields = orderBy;
|
78
|
+
query.outFields = [layer.objectIdField];
|
79
|
+
query.where = layer.definitionExpression || "1=1";
|
80
|
+
|
81
|
+
const result = await layer.queryFeatures(query);
|
82
|
+
|
83
|
+
graphics = graphics.concat(
|
84
|
+
result.features
|
85
|
+
);
|
86
|
+
|
87
|
+
return result.exceededTransferLimit ?
|
88
|
+
queryAllOidsWithQueryFeatures(start += num, layer, graphics, orderBy) :
|
89
|
+
Promise.resolve(graphics.map(g => g.attributes[layer.objectIdField]));
|
90
|
+
}
|
91
|
+
|
51
92
|
/**
|
52
93
|
* Query the layer for all IDs
|
53
94
|
*
|