@esri/solutions-components 0.8.39 → 0.8.40
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/assets/t9n/solution-spatial-ref/resources.json +3 -3
- package/dist/assets/t9n/solution-spatial-ref/resources_en.json +2 -2
- package/dist/assets/t9n/solution-spatial-ref/resources_fr.json +2 -2
- package/dist/assets/t9n/solution-spatial-ref/resources_he.json +2 -2
- package/dist/cjs/_commonjsHelpers-baf43783.js +20 -0
- package/dist/cjs/basemap-gallery_7.cjs.entry.js +3 -2
- package/dist/cjs/buffer-tools_3.cjs.entry.js +3 -2
- package/dist/cjs/calcite-action-pad_2.cjs.entry.js +3 -2
- package/dist/cjs/calcite-alert_4.cjs.entry.js +7 -6
- package/dist/cjs/calcite-block_5.cjs.entry.js +5 -4
- package/dist/cjs/calcite-combobox_3.cjs.entry.js +1 -1
- package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +3 -2
- package/dist/cjs/calcite-flow_6.cjs.entry.js +3 -2
- package/dist/cjs/calcite-pagination.cjs.entry.js +1 -1
- package/dist/cjs/calcite-shell-panel_14.cjs.entry.js +9 -8
- package/dist/cjs/card-manager_3.cjs.entry.js +6 -5
- package/dist/cjs/{common-03600219.js → common-7ee7ad73.js} +1 -1
- package/dist/cjs/consent-manager.cjs.entry.js +3 -2
- package/dist/cjs/{core-b459e4f2.js → core-7f0bcc12.js} +1 -1
- package/dist/cjs/crowdsource-manager.cjs.entry.js +3 -2
- package/dist/cjs/crowdsource-reporter.cjs.entry.js +3 -2
- package/dist/cjs/{downloadUtils-839a1425.js → downloadUtils-2e169425.js} +7 -7
- package/dist/cjs/{esri-loader-fce6a9cb.js → esri-loader-a56cbcbe.js} +2 -13
- package/dist/cjs/feature-list.cjs.entry.js +7 -6
- package/dist/cjs/{helpers-7cee3150.js → helpers-95c28cf3.js} +1 -1
- package/dist/cjs/{html2canvas-ef5cae40.js → html2canvas-29c6b9cc.js} +2 -2
- package/dist/cjs/{index.es-dd4d4842.js → index.es-301b8d18.js} +11 -10
- package/dist/cjs/instant-apps-ckeditor-wrapper_3.cjs.entry.js +6 -5
- package/dist/cjs/instant-apps-control-panel.cjs.entry.js +3 -2
- package/dist/cjs/instant-apps-create.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-export.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-header.cjs.entry.js +3 -2
- package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +4 -3
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +4 -3
- package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +4 -3
- package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +6 -5
- package/dist/cjs/instant-apps-keyboard-shortcuts.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +7 -6
- package/dist/cjs/instant-apps-language-translator.cjs.entry.js +7 -6
- package/dist/cjs/instant-apps-measurement.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-popover.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-sign-in.cjs.entry.js +5 -4
- package/dist/cjs/instant-apps-splash.cjs.entry.js +5 -4
- package/dist/cjs/{languageSwitcher-1154d55d.js → languageSwitcher-f0bb94fa.js} +1 -1
- package/dist/cjs/{languageUtil-d23251cd.js → languageUtil-f22ce913.js} +1 -1
- package/dist/cjs/layout-manager.cjs.entry.js +3 -2
- package/dist/cjs/{loadModules-4189814e.js → loadModules-36d49819.js} +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{locale-62f4cef2.js → locale-708985a1.js} +2 -2
- package/dist/cjs/{locale-6973733d.js → locale-f6fd03d2.js} +1 -1
- package/dist/cjs/map-select-tools_3.cjs.entry.js +6 -5
- package/dist/cjs/{popupUtils-bae7f923.js → popupUtils-36e57a27.js} +2 -2
- package/dist/cjs/public-notification.cjs.entry.js +6 -5
- package/dist/cjs/{purify-4a0e9dfb.js → purify-17c0fc4a.js} +2 -2
- package/dist/cjs/{restHelpersGet-afc74285.js → restHelpersGet-be451f4a.js} +1 -1
- package/dist/cjs/solution-configuration.cjs.entry.js +10 -350
- package/dist/cjs/solution-contents_3.cjs.entry.js +58 -48
- package/dist/cjs/solution-resource-a09a6fe0.js +145 -0
- package/dist/cjs/{solution-store-c8bada29.js → solution-store-d9f3ea44.js} +8 -10
- package/dist/cjs/solutions-components.cjs.js +1 -1
- package/dist/cjs/spatial-ref.cjs.entry.js +6 -5
- package/dist/cjs/store-manager.cjs.entry.js +17 -13
- package/dist/cjs/templates-f7a3bf48.js +401 -0
- package/dist/cjs/{utils-1de4eaa0.js → utils-31a22d49.js} +1 -1
- package/dist/collection/components/solution-item/solution-item.js +1 -1
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.css +11 -1
- package/dist/collection/components/solution-spatial-ref/solution-spatial-ref.js +83 -47
- package/dist/collection/components/solution-spatial-ref/test/solution-spatial-ref.spec.js +25 -24
- package/dist/collection/components/solution-template-data/solution-template-data.js +1 -1
- package/dist/collection/components/solution-variables/solution-variables.js +1 -1
- package/dist/collection/components/spatial-ref/spatial-ref.js +1 -1
- package/dist/collection/components/store-manager/store-manager.js +11 -13
- package/dist/collection/demos/data/election-outreach.json +2981 -0
- package/dist/collection/demos/solution-item.html +7 -6
- package/dist/collection/demos/solution-spatial-ref.html +10 -4
- package/dist/collection/demos/solution-template-data.html +5 -5
- package/dist/collection/utils/interfaces.ts +0 -2
- package/dist/collection/utils/solution-store.js +6 -8
- package/dist/collection/utils/solution-store.ts +12 -13
- package/dist/collection/utils/templates.js +113 -26
- package/dist/collection/utils/templates.ts +125 -30
- package/dist/collection/utils/test/templates.e2e.js +2 -2
- package/dist/collection/utils/test/templates.e2e.ts +2 -2
- package/dist/components/_commonjsHelpers.js +16 -0
- package/dist/components/core.js +1 -1
- package/dist/components/downloadUtils.js +1 -1
- package/dist/components/esri-loader.js +2 -10
- package/dist/components/html2canvas.js +1 -1
- package/dist/components/index.es.js +1 -1
- package/dist/components/instant-apps-interactive-legend-classic2.js +1 -1
- package/dist/components/pagination.js +1 -1
- package/dist/components/purify.js +1 -1
- package/dist/components/solution-configuration.js +1 -342
- package/dist/components/solution-item2.js +1 -1
- package/dist/components/solution-resource.js +1 -1
- package/dist/components/solution-spatial-ref2.js +52 -44
- package/dist/components/solution-store.js +6 -8
- package/dist/components/solution-template-data2.js +1 -1
- package/dist/components/solution-variables2.js +1 -1
- package/dist/components/spatial-ref2.js +1 -1
- package/dist/components/store-manager.js +11 -13
- package/dist/components/templates.js +395 -0
- package/dist/esm/_commonjsHelpers-089957fe.js +16 -0
- package/dist/esm/basemap-gallery_7.entry.js +3 -2
- package/dist/esm/buffer-tools_3.entry.js +3 -2
- package/dist/esm/calcite-action-pad_2.entry.js +3 -2
- package/dist/esm/calcite-alert_4.entry.js +7 -6
- package/dist/esm/calcite-block_5.entry.js +5 -4
- package/dist/esm/calcite-combobox_3.entry.js +1 -1
- package/dist/esm/calcite-dropdown-group_2.entry.js +3 -2
- package/dist/esm/calcite-flow_6.entry.js +3 -2
- package/dist/esm/calcite-pagination.entry.js +1 -1
- package/dist/esm/calcite-shell-panel_14.entry.js +9 -8
- package/dist/esm/card-manager_3.entry.js +6 -5
- package/dist/esm/{common-8697fccd.js → common-96e3ddb0.js} +1 -1
- package/dist/esm/consent-manager.entry.js +3 -2
- package/dist/esm/{core-4bd4a70f.js → core-6a3c13ac.js} +1 -1
- package/dist/esm/crowdsource-manager.entry.js +3 -2
- package/dist/esm/crowdsource-reporter.entry.js +3 -2
- package/dist/esm/{downloadUtils-97acca92.js → downloadUtils-5fbd8a40.js} +6 -6
- package/dist/esm/{esri-loader-3080dcc0.js → esri-loader-781d738a.js} +2 -10
- package/dist/esm/feature-list.entry.js +7 -6
- package/dist/esm/{helpers-7c88b974.js → helpers-3d53560f.js} +1 -1
- package/dist/esm/{html2canvas-fd387d87.js → html2canvas-6443b68e.js} +1 -1
- package/dist/esm/{index.es-ee5497bc.js → index.es-66571353.js} +6 -5
- package/dist/esm/instant-apps-ckeditor-wrapper_3.entry.js +6 -5
- package/dist/esm/instant-apps-control-panel.entry.js +3 -2
- package/dist/esm/instant-apps-create.entry.js +5 -4
- package/dist/esm/instant-apps-export.entry.js +5 -4
- package/dist/esm/instant-apps-header.entry.js +3 -2
- package/dist/esm/instant-apps-interactive-legend-classic.entry.js +4 -3
- package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +4 -3
- package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +4 -3
- package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +4 -3
- package/dist/esm/instant-apps-interactive-legend.entry.js +6 -5
- package/dist/esm/instant-apps-keyboard-shortcuts.entry.js +5 -4
- package/dist/esm/instant-apps-language-switcher.entry.js +7 -6
- package/dist/esm/instant-apps-language-translator.entry.js +7 -6
- package/dist/esm/instant-apps-measurement.entry.js +5 -4
- package/dist/esm/instant-apps-popover.entry.js +5 -4
- package/dist/esm/instant-apps-scoreboard.entry.js +5 -4
- package/dist/esm/instant-apps-sign-in.entry.js +5 -4
- package/dist/esm/instant-apps-splash.entry.js +5 -4
- package/dist/esm/{languageSwitcher-0f693a04.js → languageSwitcher-b665499d.js} +1 -1
- package/dist/esm/{languageUtil-de206286.js → languageUtil-a3e6adf6.js} +1 -1
- package/dist/esm/layout-manager.entry.js +3 -2
- package/dist/esm/{loadModules-43119ac8.js → loadModules-9c062d08.js} +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{locale-42369411.js → locale-28d48640.js} +1 -1
- package/dist/esm/{locale-70630b7c.js → locale-b4e7d56f.js} +2 -2
- package/dist/esm/map-select-tools_3.entry.js +6 -5
- package/dist/esm/{popupUtils-98ad70f3.js → popupUtils-4a91aa2a.js} +2 -2
- package/dist/esm/public-notification.entry.js +6 -5
- package/dist/esm/{purify-caded4cd.js → purify-72515357.js} +1 -1
- package/dist/esm/{restHelpersGet-dab84057.js → restHelpersGet-5c822bcd.js} +1 -1
- package/dist/esm/solution-configuration.entry.js +7 -347
- package/dist/esm/solution-contents_3.entry.js +58 -48
- package/dist/esm/{solution-resource-a2fff3bf.js → solution-resource-3108caf7.js} +1 -1
- package/dist/esm/{solution-store-30a19a45.js → solution-store-1c36ce1d.js} +8 -10
- package/dist/esm/solutions-components.js +1 -1
- package/dist/esm/spatial-ref.entry.js +6 -5
- package/dist/esm/store-manager.entry.js +17 -13
- package/dist/esm/templates-824ea028.js +395 -0
- package/dist/esm/{utils-9bb48951.js → utils-5484fcbf.js} +1 -1
- package/dist/solutions-components/demos/data/election-outreach.json +2981 -0
- package/dist/solutions-components/demos/solution-item.html +7 -6
- package/dist/solutions-components/demos/solution-spatial-ref.html +10 -4
- package/dist/solutions-components/demos/solution-template-data.html +5 -5
- package/dist/solutions-components/{p-3eb49703.js → p-00291b93.js} +3 -3
- package/dist/solutions-components/p-0cd87dca.entry.js +6 -0
- package/dist/solutions-components/p-13404ad7.entry.js +6 -0
- package/dist/solutions-components/{p-bf27cd5f.js → p-1c3c83a5.js} +1 -1
- package/dist/solutions-components/p-1e6c6ec4.entry.js +6 -0
- package/dist/solutions-components/p-219f209e.entry.js +6 -0
- package/dist/solutions-components/{p-b1abf15c.entry.js → p-2467b476.entry.js} +3 -3
- package/dist/solutions-components/p-295f850a.entry.js +6 -0
- package/dist/solutions-components/p-2961c63c.entry.js +6 -0
- package/dist/solutions-components/{p-946ee345.js → p-2afdcdfc.js} +2 -2
- package/dist/solutions-components/p-2d6d44b5.entry.js +6 -0
- package/dist/solutions-components/p-36e199e0.entry.js +6 -0
- package/dist/solutions-components/{p-d27ab863.js → p-3d7cff5e.js} +1 -1
- package/dist/solutions-components/{p-b2f11718.entry.js → p-3e8562b5.entry.js} +1 -1
- package/dist/solutions-components/{p-49250010.js → p-427b4593.js} +1 -1
- package/dist/solutions-components/{p-f1ae51dc.js → p-44fea43a.js} +1 -1
- package/dist/solutions-components/{p-afd2b67b.entry.js → p-4b27da06.entry.js} +1 -1
- package/dist/solutions-components/{p-7fe77355.js → p-5cc6eb18.js} +1 -1
- package/dist/solutions-components/p-61f88049.entry.js +6 -0
- package/dist/solutions-components/{p-d029b513.js → p-65581d83.js} +1 -1
- package/dist/solutions-components/p-6a68306c.js +6 -0
- package/dist/solutions-components/p-6c7a990a.entry.js +6 -0
- package/dist/solutions-components/p-6e6e6d23.entry.js +6 -0
- package/dist/solutions-components/p-7696af8e.entry.js +6 -0
- package/dist/solutions-components/{p-7afca6b4.js → p-7d1af07b.js} +1 -1
- package/dist/solutions-components/{p-6c7e34c1.entry.js → p-881ead62.entry.js} +2 -2
- package/dist/solutions-components/p-90864588.entry.js +6 -0
- package/dist/solutions-components/{p-59f016a1.js → p-91142a26.js} +1 -1
- package/dist/solutions-components/p-932d6f29.entry.js +6 -0
- package/dist/solutions-components/{p-71c212e6.entry.js → p-969828ab.entry.js} +1 -1
- package/dist/solutions-components/p-986ee365.entry.js +6 -0
- package/dist/solutions-components/p-9e3b0220.entry.js +6 -0
- package/dist/solutions-components/{p-7996f123.js → p-a0300d31.js} +1 -1
- package/dist/solutions-components/p-a8d62b7d.entry.js +6 -0
- package/dist/solutions-components/p-ae50581b.entry.js +6 -0
- package/dist/solutions-components/{p-89f6ff72.js → p-af2c8aa9.js} +1 -1
- package/dist/solutions-components/p-b7123452.entry.js +6 -0
- package/dist/solutions-components/p-b92e9047.entry.js +6 -0
- package/dist/solutions-components/p-bb7463ed.entry.js +6 -0
- package/dist/solutions-components/p-bbc7dd5e.entry.js +6 -0
- package/dist/solutions-components/p-bd871071.entry.js +21 -0
- package/dist/solutions-components/p-c6fd40f9.entry.js +6 -0
- package/dist/solutions-components/{p-42ea2581.js → p-c742acd9.js} +1 -1
- package/dist/solutions-components/p-cb4842dd.entry.js +6 -0
- package/dist/solutions-components/{p-bd459df3.entry.js → p-ccd1e256.entry.js} +2 -2
- package/dist/solutions-components/p-ce4b6931.entry.js +6 -0
- package/dist/solutions-components/p-d2de2b2a.entry.js +6 -0
- package/dist/solutions-components/p-d300430b.entry.js +6 -0
- package/dist/solutions-components/p-d4056c1c.js +6 -0
- package/dist/solutions-components/p-d73b90ab.entry.js +6 -0
- package/dist/solutions-components/{p-4e92c1ba.entry.js → p-dae9d5b3.entry.js} +1 -1
- package/dist/solutions-components/p-df56c019.entry.js +6 -0
- package/dist/solutions-components/p-e80751f4.entry.js +6 -0
- package/dist/solutions-components/{p-132b1138.entry.js → p-e8ed3fa6.entry.js} +2 -2
- package/dist/solutions-components/{p-1d369231.js → p-eed41e1a.js} +1 -1
- package/dist/solutions-components/p-fdd93685.js +22 -0
- package/dist/solutions-components/{p-6acf6c8f.js → p-ff87b9de.js} +1 -1
- package/dist/solutions-components/{p-c9b22653.js → p-ffd41e25.js} +1 -1
- package/dist/solutions-components/solutions-components.esm.js +1 -1
- package/dist/solutions-components/utils/interfaces.ts +0 -2
- package/dist/solutions-components/utils/solution-store.ts +12 -13
- package/dist/solutions-components/utils/templates.ts +125 -30
- package/dist/solutions-components/utils/test/templates.e2e.ts +2 -2
- package/dist/solutions-components_commit.txt +8 -0
- package/dist/types/components/solution-spatial-ref/solution-spatial-ref.d.ts +21 -25
- package/dist/types/components/store-manager/store-manager.d.ts +3 -3
- package/dist/types/components.d.ts +10 -2
- package/dist/types/utils/templates.d.ts +35 -5
- package/package.json +5 -4
- package/dist/cjs/solution-resource-ffe3c333.js +0 -145
- package/dist/solutions-components/p-11b4cd1a.entry.js +0 -6
- package/dist/solutions-components/p-123fcb43.entry.js +0 -6
- package/dist/solutions-components/p-12b84e3b.entry.js +0 -36
- package/dist/solutions-components/p-1a8f7075.entry.js +0 -6
- package/dist/solutions-components/p-2a7111ad.entry.js +0 -6
- package/dist/solutions-components/p-36f5dee9.entry.js +0 -6
- package/dist/solutions-components/p-52bcd209.entry.js +0 -6
- package/dist/solutions-components/p-57961ae0.entry.js +0 -6
- package/dist/solutions-components/p-5b2d9899.entry.js +0 -6
- package/dist/solutions-components/p-5bd6a732.entry.js +0 -6
- package/dist/solutions-components/p-5fb4ddc2.entry.js +0 -6
- package/dist/solutions-components/p-622f33ee.entry.js +0 -6
- package/dist/solutions-components/p-652140aa.entry.js +0 -6
- package/dist/solutions-components/p-6d0404a6.entry.js +0 -6
- package/dist/solutions-components/p-789eb1c2.entry.js +0 -6
- package/dist/solutions-components/p-7a2f1801.entry.js +0 -6
- package/dist/solutions-components/p-7dcf6b16.entry.js +0 -6
- package/dist/solutions-components/p-8413a2ae.entry.js +0 -6
- package/dist/solutions-components/p-941e55f0.entry.js +0 -6
- package/dist/solutions-components/p-9b38e6a0.entry.js +0 -6
- package/dist/solutions-components/p-9c1fbf73.entry.js +0 -6
- package/dist/solutions-components/p-9d82f0e3.entry.js +0 -6
- package/dist/solutions-components/p-9fa1855f.entry.js +0 -6
- package/dist/solutions-components/p-a2390bee.entry.js +0 -6
- package/dist/solutions-components/p-a805c11f.entry.js +0 -6
- package/dist/solutions-components/p-af1c9389.entry.js +0 -6
- package/dist/solutions-components/p-b7d060b0.entry.js +0 -6
- package/dist/solutions-components/p-c4160bf7.js +0 -6
- package/dist/solutions-components/p-da75df88.entry.js +0 -6
- package/dist/solutions-components/p-e0277e0b.entry.js +0 -6
- package/dist/solutions-components/p-e11a4728.entry.js +0 -6
- package/dist/solutions-components/p-e89c05d6.entry.js +0 -6
- /package/dist/solutions-components/{p-8ad54f5c.js → p-e3196917.js} +0 -0
@@ -275,7 +275,6 @@ export interface ISolutionTemplateEdits {
|
|
275
275
|
[templateId: string]: ISolutionTemplateEdit;
|
276
276
|
}
|
277
277
|
|
278
|
-
//???
|
279
278
|
export interface ISolutionModel {
|
280
279
|
dataModel: monaco.editor.ITextModel;
|
281
280
|
dataOriginValue: string;
|
@@ -306,7 +305,6 @@ export interface ISolutionModel {
|
|
306
305
|
export interface ISolutionModels {
|
307
306
|
[key: string]: ISolutionModel;
|
308
307
|
}
|
309
|
-
//???
|
310
308
|
|
311
309
|
/**
|
312
310
|
* Feature service name and whether the service is enabled for SR configuration
|
@@ -53,11 +53,12 @@ import {
|
|
53
53
|
// * solutionItemId: [string] id of the current solution
|
54
54
|
// * defaultWkid: [any] value of the solution's `params.wkid.default` data property, which may be undefined
|
55
55
|
// * solutionData: [ISolutionItemData] the solution's data, which is modified in-place
|
56
|
-
// * featureServices: [array] a list of Feature
|
56
|
+
// * featureServices: [array] a list of Feature services that use a spatial reference var
|
57
57
|
// * spatialReferenceInfo: [object] the current spatial reference (if enabled) and the services that use it
|
58
58
|
// * enabled: [boolean] use the spatial reference
|
59
|
-
// * services: [object]
|
60
|
-
//
|
59
|
+
// * services: [object] for each service in featureServices by service name, a switch indicating if the
|
60
|
+
// custom spatial reference parameter is enabled/disabled
|
61
|
+
// * spatialReference: [object] the custom spatial reference wkid
|
61
62
|
//
|
62
63
|
// Store singleton method:
|
63
64
|
// * Store: Creates singleton instance when accessed; default export from module.
|
@@ -79,7 +80,7 @@ import {
|
|
79
80
|
//
|
80
81
|
//--------------------------------------------------------------------------------------------------------------------//
|
81
82
|
|
82
|
-
interface
|
83
|
+
interface ISolutionStoreData {
|
83
84
|
solutionItemId: string,
|
84
85
|
defaultWkid: string,
|
85
86
|
solutionData: ISolutionItemData,
|
@@ -88,7 +89,7 @@ interface SolutionStoreData {
|
|
88
89
|
spatialReferenceInfo: ISolutionSpatialReferenceInfo
|
89
90
|
}
|
90
91
|
|
91
|
-
const EmptySolutionStore:
|
92
|
+
const EmptySolutionStore: ISolutionStoreData = {
|
92
93
|
solutionItemId: "",
|
93
94
|
defaultWkid: undefined,
|
94
95
|
solutionData: { metadata: {}, templates: [] },
|
@@ -374,14 +375,12 @@ class SolutionStore
|
|
374
375
|
*/
|
375
376
|
protected _flagStoreHasChanges(flagHasChanges: boolean): void {
|
376
377
|
// Event for notifying if the store has changes or not
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
}));
|
384
|
-
}
|
378
|
+
window.dispatchEvent(new CustomEvent("solutionStoreHasChanges", {
|
379
|
+
detail: flagHasChanges,
|
380
|
+
bubbles: true,
|
381
|
+
cancelable: false,
|
382
|
+
composed: true
|
383
|
+
}));
|
385
384
|
|
386
385
|
this._hasChanges = flagHasChanges;
|
387
386
|
}
|
@@ -24,12 +24,13 @@ import {
|
|
24
24
|
//IItemShare,
|
25
25
|
IOrganizationVariableItem,
|
26
26
|
//IResourcePath,
|
27
|
-
|
27
|
+
ISolutionModels,
|
28
28
|
//ISolutionSpatialReferenceInfo,
|
29
29
|
IVariableItem
|
30
30
|
} from '../utils/interfaces';
|
31
31
|
import {
|
32
|
-
IItemTemplate
|
32
|
+
IItemTemplate,
|
33
|
+
getProp
|
33
34
|
} from '@esri/solution-common';
|
34
35
|
|
35
36
|
//--------------------------------------------------------------------------
|
@@ -38,6 +39,31 @@ import {
|
|
38
39
|
//
|
39
40
|
//--------------------------------------------------------------------------
|
40
41
|
|
42
|
+
/**
|
43
|
+
* Gets a list of Feature Services that are not views along with an enabled property that indicates
|
44
|
+
* if the service currently uses a spatial reference variable.
|
45
|
+
*
|
46
|
+
* @param templates a list of item templates from the solution
|
47
|
+
*
|
48
|
+
* @returns a list of feature service names and an enabled property to indicate
|
49
|
+
* if they currently use a spatial reference variable.
|
50
|
+
*/
|
51
|
+
export function getFeatureServices(
|
52
|
+
templates: IItemTemplate[]
|
53
|
+
): any[] {
|
54
|
+
return templates.reduce((prev, cur) => {
|
55
|
+
const name: string = cur.item.title || cur.item.name;
|
56
|
+
if (cur.type === "Feature Service" &&
|
57
|
+
cur.item.typeKeywords.indexOf("View Service") < 0 &&
|
58
|
+
prev.indexOf(name) < 0
|
59
|
+
) {
|
60
|
+
const wkid = getProp(cur, "properties.service.spatialReference.wkid");
|
61
|
+
prev.push({ name, enabled: wkid.toString().startsWith("{{params.wkid||")});
|
62
|
+
}
|
63
|
+
return prev;
|
64
|
+
}, []);
|
65
|
+
}
|
66
|
+
|
41
67
|
/**
|
42
68
|
* Sort the solution items
|
43
69
|
*
|
@@ -131,6 +157,83 @@ export function getItemHierarchy(
|
|
131
157
|
return hierarchy;
|
132
158
|
}
|
133
159
|
|
160
|
+
/**
|
161
|
+
* Create and store text models for the editor as well as other key values such as the original values
|
162
|
+
* that can be used to clear any temp edits.
|
163
|
+
*
|
164
|
+
* @param templates a list of item templates from the solution
|
165
|
+
*
|
166
|
+
* @returns a list of models and key values
|
167
|
+
*/
|
168
|
+
export function getModels(templates: any[]): ISolutionModels {
|
169
|
+
const ids: string[] = [];
|
170
|
+
const models: ISolutionModels = {};
|
171
|
+
const monacoDefined = typeof(monaco) !== "undefined";
|
172
|
+
templates.forEach(t => {
|
173
|
+
if (ids.indexOf(t.itemId) < 0) {
|
174
|
+
ids.push(t.itemId);
|
175
|
+
models[t.itemId] = {
|
176
|
+
dataModel: monacoDefined ? monaco.editor.createModel(JSON.stringify(t.data, null, '\t'), "json") : undefined,
|
177
|
+
dataOriginValue: JSON.stringify(t.data),
|
178
|
+
propsModel: monacoDefined ? monaco.editor.createModel(JSON.stringify(t.properties, null, '\t'), "json") : undefined,
|
179
|
+
propsOriginValue: JSON.stringify(t.properties),
|
180
|
+
propsDiffOriginValue: JSON.stringify(t.properties),
|
181
|
+
state: undefined,
|
182
|
+
shareInfo: undefined,
|
183
|
+
isEditing: false,
|
184
|
+
itemId: t.itemId,
|
185
|
+
updateItemValues: {},
|
186
|
+
originalItemValues: {},
|
187
|
+
name: t.item?.name,
|
188
|
+
title: t.item?.title,
|
189
|
+
itemOriginValue: JSON.stringify(t.item),
|
190
|
+
spatialReference: t.properties?.service?.spatialReference,
|
191
|
+
resources: [], //???
|
192
|
+
resourceFilePaths: [], //???
|
193
|
+
sourceResourceFilePaths: [], //???
|
194
|
+
thumbnailOrigin: undefined, //???
|
195
|
+
thumbnailNew: undefined, //???
|
196
|
+
type: t.type
|
197
|
+
};
|
198
|
+
}
|
199
|
+
});
|
200
|
+
return models;
|
201
|
+
}
|
202
|
+
|
203
|
+
/**
|
204
|
+
* Set key organization variables we will allow users to insert at runtime
|
205
|
+
*
|
206
|
+
* @param translations nls translation object
|
207
|
+
*
|
208
|
+
* @returns a list of variables for the organization
|
209
|
+
*/
|
210
|
+
export function getOrganizationVariables(
|
211
|
+
translations: any
|
212
|
+
): IOrganizationVariableItem[] {
|
213
|
+
const orgVars: IOrganizationVariableItem[] = [{
|
214
|
+
id: "",
|
215
|
+
title: translations.geocodeUrl,
|
216
|
+
value: "{{organization.helperServices.geocode:getDefaultLocatorURL}}"
|
217
|
+
}, {
|
218
|
+
id: "",
|
219
|
+
title: translations.geometryUrl,
|
220
|
+
value: "{{organization.helperServices.geometry.url}}"
|
221
|
+
}, {
|
222
|
+
id: "",
|
223
|
+
title: translations.portalBaseUrl,
|
224
|
+
value: "{{portalBaseUrl}}"
|
225
|
+
}, {
|
226
|
+
id: "",
|
227
|
+
title: translations.routeUrl,
|
228
|
+
value: "{{organization.helperServices.route.url}}"
|
229
|
+
}, {
|
230
|
+
id: "",
|
231
|
+
title: translations.solutionItemExtent,
|
232
|
+
value: "{{solutionItemExtent}}"
|
233
|
+
}];
|
234
|
+
return orgVars;
|
235
|
+
}
|
236
|
+
|
134
237
|
/**
|
135
238
|
* Explore the solution item templates for variables we will allow users to insert at runtime
|
136
239
|
*
|
@@ -181,37 +284,29 @@ export function getSolutionVariables(
|
|
181
284
|
}
|
182
285
|
|
183
286
|
/**
|
184
|
-
*
|
287
|
+
* Stores basic spatial reference information that is used to determine if a custom spatial reference parameter will
|
288
|
+
* be exposed while deploying this solution and if so what feature services will support it and what will the default wkid be
|
185
289
|
*
|
186
|
-
* @param
|
290
|
+
* @param services a list of objects with service name and enabled property (indicates if they currently use a spatial reference var)
|
291
|
+
* @param data the data object of a solution item
|
187
292
|
*
|
188
|
-
* @returns a
|
293
|
+
* @returns an object that stores if a custom spatial reference parameter is enabled/disabled,
|
294
|
+
* a list of services and if they are enabled/disabled, and the default wkid
|
189
295
|
*/
|
190
|
-
export function
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
}
|
198
|
-
|
199
|
-
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
value: "{{portalBaseUrl}}"
|
205
|
-
}, {
|
206
|
-
id: "",
|
207
|
-
title: translations.routeUrl,
|
208
|
-
value: "{{organization.helperServices.route.url}}"
|
209
|
-
}, {
|
210
|
-
id: "",
|
211
|
-
title: translations.solutionItemExtent,
|
212
|
-
value: "{{solutionItemExtent}}"
|
213
|
-
}];
|
214
|
-
return orgVars;
|
296
|
+
export function getSpatialReferenceInfo(
|
297
|
+
services: any[],
|
298
|
+
data: any
|
299
|
+
): any {
|
300
|
+
const defaultServices: any = {};
|
301
|
+
services.forEach(service => {
|
302
|
+
defaultServices[service.name] = service.enabled;
|
303
|
+
});
|
304
|
+
const wkid = getProp(data, "params.wkid.default");
|
305
|
+
return {
|
306
|
+
enabled: wkid !== undefined && wkid !== "",
|
307
|
+
services: defaultServices,
|
308
|
+
spatialReference: wkid ? { wkid } : undefined
|
309
|
+
}
|
215
310
|
}
|
216
311
|
|
217
312
|
//--------------------------------------------------------------------------
|
@@ -22,8 +22,8 @@ import * as electionOutreach from '../../demos/data/election-outreach.json';
|
|
22
22
|
describe("getInventoryItems", () => {
|
23
23
|
it("can get inventory items", () => {
|
24
24
|
const templates = electionOutreach.templates;
|
25
|
-
expect(templates.length).toEqual(
|
25
|
+
expect(templates.length).toEqual(12)
|
26
26
|
const actual = getInventoryItems(templates);
|
27
|
-
expect(actual.length).toEqual(
|
27
|
+
expect(actual.length).toEqual(6);
|
28
28
|
});
|
29
29
|
});
|
@@ -1,5 +1,5 @@
|
|
1
1
|
/** @license
|
2
|
-
* Copyright
|
2
|
+
* Copyright 2021 Esri
|
3
3
|
*
|
4
4
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
5
5
|
* you may not use this file except in compliance with the License.
|
@@ -13,9 +13,13 @@
|
|
13
13
|
* See the License for the specific language governing permissions and
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
|
+
import { EventEmitter, VNode } from '../../stencil-public-runtime';
|
16
17
|
import '@esri/calcite-components';
|
17
18
|
import SolutionSpatialRef_T9n from '../../assets/t9n/solution-spatial-ref/resources.json';
|
18
|
-
|
19
|
+
interface IFeatureServiceSpatialReferenceChange {
|
20
|
+
name: string;
|
21
|
+
enabled: boolean;
|
22
|
+
}
|
19
23
|
export declare class SolutionSpatialRef {
|
20
24
|
el: HTMLSolutionSpatialRefElement;
|
21
25
|
/**
|
@@ -44,55 +48,46 @@ export declare class SolutionSpatialRef {
|
|
44
48
|
* StencilJS: Called once just after the component is first connected to the DOM.
|
45
49
|
*/
|
46
50
|
componentWillLoad(): Promise<void>;
|
47
|
-
/**
|
48
|
-
* Renders the component.
|
49
|
-
*/
|
50
51
|
render(): VNode;
|
51
|
-
/**
|
52
|
-
* Current text that is being used to filter the list of spatial references.
|
53
|
-
*/
|
54
|
-
protected _srSearchText: string;
|
55
52
|
/**
|
56
53
|
* Contains the translations for this component.
|
57
54
|
* All UI strings should be defined here.
|
58
55
|
*/
|
59
56
|
protected _translations: typeof SolutionSpatialRef_T9n;
|
60
|
-
featureServiceSpatialReferenceChange: EventEmitter<
|
61
|
-
name: string;
|
62
|
-
enabled: boolean;
|
63
|
-
}>;
|
57
|
+
featureServiceSpatialReferenceChange: EventEmitter<IFeatureServiceSpatialReferenceChange>;
|
64
58
|
lockedSpatialReferenceChange: EventEmitter<{
|
65
59
|
locked: boolean;
|
66
60
|
}>;
|
61
|
+
solutionStoreHasChanges(): void;
|
67
62
|
/**
|
68
63
|
* Saves changes to the embedded spatial reference value
|
69
64
|
*/
|
70
65
|
spatialReferenceChange(event: CustomEvent): void;
|
71
66
|
/**
|
72
|
-
*
|
67
|
+
* Create a switch control for each of the services
|
68
|
+
*
|
69
|
+
* @param services List of feature services
|
70
|
+
* @returns a node to control each feature service
|
73
71
|
*/
|
74
|
-
|
72
|
+
private _getFeatureServices;
|
75
73
|
/**
|
76
74
|
* Enable spatial reference variable for all feature services.
|
77
75
|
*
|
78
76
|
* @param services list of service names
|
79
77
|
*/
|
80
|
-
|
78
|
+
private _setFeatureServiceDefaults;
|
81
79
|
/**
|
82
|
-
*
|
83
|
-
*
|
84
|
-
* @param services List of feature services
|
85
|
-
* @returns a node to control each feature service
|
80
|
+
* Updates the enabled/disabled state of the service in spatialReferenceInfo.
|
86
81
|
*/
|
87
|
-
|
82
|
+
private _updateEnabledServices;
|
88
83
|
/**
|
89
|
-
*
|
84
|
+
* Toggles the ability to set the default spatial reference.
|
90
85
|
*/
|
91
|
-
|
86
|
+
private _updateLocked;
|
92
87
|
/**
|
93
|
-
* Updates the enabled
|
88
|
+
* Updates the enabled and spatialReference prop in spatialReferenceInfo.
|
94
89
|
*/
|
95
|
-
|
90
|
+
private _updateStore;
|
96
91
|
/**
|
97
92
|
* Fetches the component's translations
|
98
93
|
*
|
@@ -100,3 +95,4 @@ export declare class SolutionSpatialRef {
|
|
100
95
|
*/
|
101
96
|
protected _getTranslations(): Promise<void>;
|
102
97
|
}
|
98
|
+
export {};
|
@@ -14,7 +14,7 @@
|
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
16
|
/**
|
17
|
-
* The json-editor
|
17
|
+
* The json-editor component leverages a stencil/store to manage data.
|
18
18
|
* If a component uses the json-editor but does not have logic to hydrate the store this component can be used.
|
19
19
|
* It will create and hydrate the store based on the value provided.
|
20
20
|
*
|
@@ -24,7 +24,7 @@
|
|
24
24
|
*
|
25
25
|
*/
|
26
26
|
import { EventEmitter, VNode } from '../../stencil-public-runtime';
|
27
|
-
import {
|
27
|
+
import { UserSession } from '@esri/solution-common';
|
28
28
|
export declare class StoreManager {
|
29
29
|
el: HTMLStoreManagerElement;
|
30
30
|
/**
|
@@ -49,7 +49,7 @@ export declare class StoreManager {
|
|
49
49
|
protected _valueObserver: any;
|
50
50
|
/**
|
51
51
|
* Initialize the observer that will monitor and respond to changes in the value.
|
52
|
-
* When we get a new value we are
|
52
|
+
* When we get a new value we are dealing with a new solution and need to fetch the item's data and load the state.
|
53
53
|
*/
|
54
54
|
protected _initValueObserver(): void;
|
55
55
|
}
|
@@ -1425,6 +1425,10 @@ export namespace Components {
|
|
1425
1425
|
* The wkid that will be used as the default when no user selection has been made.
|
1426
1426
|
*/
|
1427
1427
|
"defaultWkid": number;
|
1428
|
+
/**
|
1429
|
+
* Indicates if the control has been enabled. The first time Spatial Reference has been enabled it should enable all feature services.
|
1430
|
+
*/
|
1431
|
+
"loaded": boolean;
|
1428
1432
|
/**
|
1429
1433
|
* When true, all but the main switch are disabled to prevent interaction.
|
1430
1434
|
*/
|
@@ -2229,7 +2233,7 @@ declare global {
|
|
2229
2233
|
new (): HTMLSolutionResourceItemElement;
|
2230
2234
|
};
|
2231
2235
|
interface HTMLSolutionSpatialRefElementEventMap {
|
2232
|
-
"featureServiceSpatialReferenceChange":
|
2236
|
+
"featureServiceSpatialReferenceChange": IFeatureServiceSpatialReferenceChange;
|
2233
2237
|
"lockedSpatialReferenceChange": { locked: boolean };
|
2234
2238
|
}
|
2235
2239
|
interface HTMLSolutionSpatialRefElement extends Components.SolutionSpatialRef, HTMLStencilElement {
|
@@ -3825,11 +3829,15 @@ declare namespace LocalJSX {
|
|
3825
3829
|
* The wkid that will be used as the default when no user selection has been made.
|
3826
3830
|
*/
|
3827
3831
|
"defaultWkid"?: number;
|
3832
|
+
/**
|
3833
|
+
* Indicates if the control has been enabled. The first time Spatial Reference has been enabled it should enable all feature services.
|
3834
|
+
*/
|
3835
|
+
"loaded"?: boolean;
|
3828
3836
|
/**
|
3829
3837
|
* When true, all but the main switch are disabled to prevent interaction.
|
3830
3838
|
*/
|
3831
3839
|
"locked"?: boolean;
|
3832
|
-
"onFeatureServiceSpatialReferenceChange"?: (event: SolutionSpatialRefCustomEvent<
|
3840
|
+
"onFeatureServiceSpatialReferenceChange"?: (event: SolutionSpatialRefCustomEvent<IFeatureServiceSpatialReferenceChange>) => void;
|
3833
3841
|
"onLockedSpatialReferenceChange"?: (event: SolutionSpatialRefCustomEvent<{ locked: boolean }>) => void;
|
3834
3842
|
/**
|
3835
3843
|
* List of service names the spatial reference should apply to
|
@@ -13,8 +13,18 @@
|
|
13
13
|
* See the License for the specific language governing permissions and
|
14
14
|
* limitations under the License.
|
15
15
|
*/
|
16
|
-
import { IInventoryItem, IOrganizationVariableItem, IVariableItem } from '../utils/interfaces';
|
16
|
+
import { IInventoryItem, IOrganizationVariableItem, ISolutionModels, IVariableItem } from '../utils/interfaces';
|
17
17
|
import { IItemTemplate } from '@esri/solution-common';
|
18
|
+
/**
|
19
|
+
* Gets a list of Feature Services that are not views along with an enabled property that indicates
|
20
|
+
* if the service currently uses a spatial reference variable.
|
21
|
+
*
|
22
|
+
* @param templates a list of item templates from the solution
|
23
|
+
*
|
24
|
+
* @returns a list of feature service names and an enabled property to indicate
|
25
|
+
* if they currently use a spatial reference variable.
|
26
|
+
*/
|
27
|
+
export declare function getFeatureServices(templates: IItemTemplate[]): any[];
|
18
28
|
/**
|
19
29
|
* Sort the solution items
|
20
30
|
*
|
@@ -32,14 +42,14 @@ export declare function getInventoryItems(templates: IItemTemplate[]): IInventor
|
|
32
42
|
*/
|
33
43
|
export declare function getItemHierarchy(templates: IItemTemplate[]): any[];
|
34
44
|
/**
|
35
|
-
*
|
45
|
+
* Create and store text models for the editor as well as other key values such as the original values
|
46
|
+
* that can be used to clear any temp edits.
|
36
47
|
*
|
37
48
|
* @param templates a list of item templates from the solution
|
38
|
-
* @param translations nls translation object
|
39
49
|
*
|
40
|
-
* @returns a list of
|
50
|
+
* @returns a list of models and key values
|
41
51
|
*/
|
42
|
-
export declare function
|
52
|
+
export declare function getModels(templates: any[]): ISolutionModels;
|
43
53
|
/**
|
44
54
|
* Set key organization variables we will allow users to insert at runtime
|
45
55
|
*
|
@@ -48,3 +58,23 @@ export declare function getSolutionVariables(templates: any[], translations: any
|
|
48
58
|
* @returns a list of variables for the organization
|
49
59
|
*/
|
50
60
|
export declare function getOrganizationVariables(translations: any): IOrganizationVariableItem[];
|
61
|
+
/**
|
62
|
+
* Explore the solution item templates for variables we will allow users to insert at runtime
|
63
|
+
*
|
64
|
+
* @param templates a list of item templates from the solution
|
65
|
+
* @param translations nls translation object
|
66
|
+
*
|
67
|
+
* @returns a list of variables from the solution item templates
|
68
|
+
*/
|
69
|
+
export declare function getSolutionVariables(templates: any[], translations: any): IVariableItem[];
|
70
|
+
/**
|
71
|
+
* Stores basic spatial reference information that is used to determine if a custom spatial reference parameter will
|
72
|
+
* be exposed while deploying this solution and if so what feature services will support it and what will the default wkid be
|
73
|
+
*
|
74
|
+
* @param services a list of objects with service name and enabled property (indicates if they currently use a spatial reference var)
|
75
|
+
* @param data the data object of a solution item
|
76
|
+
*
|
77
|
+
* @returns an object that stores if a custom spatial reference parameter is enabled/disabled,
|
78
|
+
* a list of services and if they are enabled/disabled, and the default wkid
|
79
|
+
*/
|
80
|
+
export declare function getSpatialReferenceInfo(services: any[], data: any): any;
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@esri/solutions-components",
|
3
|
-
"version": "0.8.
|
3
|
+
"version": "0.8.40",
|
4
4
|
"description": "Web Components for Esri's Solutions Applications",
|
5
5
|
"main": "dist/index.cjs.js",
|
6
6
|
"module": "dist/index.js",
|
@@ -36,6 +36,8 @@
|
|
36
36
|
"@babel/preset-env": "^7.24.7",
|
37
37
|
"@babel/preset-typescript": "^7.24.7",
|
38
38
|
"@babel/types": "^7.24.7",
|
39
|
+
"@esri/arcgis-rest-service-admin": "^3.7.0",
|
40
|
+
"@esri/calcite-design-tokens": "^2.2.0",
|
39
41
|
"@esri/eslint-plugin-calcite-components": "^1.2.0",
|
40
42
|
"@esri/solution-common": "5.3.7",
|
41
43
|
"@esri/telemetry": "8.0.0",
|
@@ -47,11 +49,12 @@
|
|
47
49
|
"@stencil/store": "^2.0.16",
|
48
50
|
"@types/jest": "^29.5.12",
|
49
51
|
"@types/node": "^20.14.2",
|
50
|
-
"@typescript-eslint/eslint-plugin": "^7.13.
|
52
|
+
"@typescript-eslint/eslint-plugin": "^7.13.1",
|
51
53
|
"@typescript-eslint/parser": "^7.13.0",
|
52
54
|
"arcgis-js-api": "^4.29.10",
|
53
55
|
"autoprefixer": "^10.4.19",
|
54
56
|
"babel-jest": "^29.7.0",
|
57
|
+
"braces": "^3.0.3",
|
55
58
|
"dotenv": "^16.4.5",
|
56
59
|
"eslint": "^8.56.0",
|
57
60
|
"eslint-config-prettier": "9.1.0",
|
@@ -81,9 +84,7 @@
|
|
81
84
|
"@esri/arcgis-rest-feature-layer": "^3.4.2",
|
82
85
|
"@esri/arcgis-rest-portal": "^3.4.2",
|
83
86
|
"@esri/arcgis-rest-request": "^3.4.2",
|
84
|
-
"@esri/arcgis-rest-service-admin": "^3.4.2",
|
85
87
|
"@esri/calcite-components": "2.8.2",
|
86
|
-
"@esri/calcite-design-tokens": "2.1.1",
|
87
88
|
"@esri/hub-common": "^12.37.1",
|
88
89
|
"@esri/hub-initiatives": "^12.4.1",
|
89
90
|
"@esri/hub-sites": "^12.6.0",
|