@esri/solutions-components 0.11.14 → 0.11.15

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 (168) hide show
  1. package/dist/cjs/{asyncToGenerator-c7fc3ee4.js → asyncToGenerator-ccb3278b.js} +1 -1
  2. package/dist/cjs/basemap-gallery_7.cjs.entry.js +2 -2
  3. package/dist/cjs/buffer-tools_2.cjs.entry.js +2 -2
  4. package/dist/cjs/card-manager_3.cjs.entry.js +4 -4
  5. package/dist/cjs/consent-manager.cjs.entry.js +4 -4
  6. package/dist/cjs/create-feature_4.cjs.entry.js +5 -5
  7. package/dist/cjs/create-related-feature_3.cjs.entry.js +2 -2
  8. package/dist/cjs/crowdsource-manager.cjs.entry.js +2 -2
  9. package/dist/cjs/crowdsource-reporter.cjs.entry.js +2 -2
  10. package/dist/cjs/delete-dialog.cjs.entry.js +2 -2
  11. package/dist/cjs/{downloadUtils-1935500f.js → downloadUtils-9de366bc.js} +3 -3
  12. package/dist/cjs/{effects-3607d1ba.js → effects-78c31457.js} +1 -1
  13. package/dist/cjs/feature-list.cjs.entry.js +5 -5
  14. package/dist/cjs/{helpers-b511b55e.js → helpers-67a2c953.js} +2 -2
  15. package/dist/cjs/{index.es-3c2404c3.js → index.es-0441a948.js} +2 -2
  16. package/dist/cjs/instant-apps-app-guide.cjs.entry.js +4 -4
  17. package/dist/cjs/instant-apps-ckeditor-wrapper_3.cjs.entry.js +5 -5
  18. package/dist/cjs/instant-apps-control-panel.cjs.entry.js +2 -2
  19. package/dist/cjs/instant-apps-create.cjs.entry.js +4 -4
  20. package/dist/cjs/instant-apps-export-views.cjs.entry.js +4 -4
  21. package/dist/cjs/instant-apps-export.cjs.entry.js +4 -4
  22. package/dist/cjs/instant-apps-filter-list_2.cjs.entry.js +4 -4
  23. package/dist/cjs/instant-apps-header.cjs.entry.js +2 -2
  24. package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +4 -4
  25. package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +4 -4
  26. package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +4 -4
  27. package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +4 -4
  28. package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +6 -6
  29. package/dist/cjs/instant-apps-keyboard-shortcuts.cjs.entry.js +4 -4
  30. package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +6 -6
  31. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +6 -6
  32. package/dist/cjs/instant-apps-measurement-tool.cjs.entry.js +2 -2
  33. package/dist/cjs/instant-apps-measurement.cjs.entry.js +4 -4
  34. package/dist/cjs/instant-apps-popover.cjs.entry.js +4 -4
  35. package/dist/cjs/instant-apps-scoreboard.cjs.entry.js +4 -4
  36. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +4 -4
  37. package/dist/cjs/instant-apps-splash.cjs.entry.js +4 -4
  38. package/dist/cjs/instant-apps-time-filter.cjs.entry.js +5 -5
  39. package/dist/cjs/json-editor_7.cjs.entry.js +2 -2
  40. package/dist/cjs/{languageSwitcher-19a22439.js → languageSwitcher-e2118cc6.js} +1 -1
  41. package/dist/cjs/{languageUtil-a3e1eafd.js → languageUtil-f22ce913.js} +1 -1
  42. package/dist/cjs/{loadModules-e9d8977c.js → loadModules-accd5295.js} +1 -1
  43. package/dist/cjs/{locale-98346201.js → locale-8017d061.js} +1 -1
  44. package/dist/cjs/{locale-4187fc82.js → locale-e2a974ae.js} +2 -2
  45. package/dist/cjs/map-layer-picker.cjs.entry.js +2 -2
  46. package/dist/cjs/map-select-tools_3.cjs.entry.js +4 -4
  47. package/dist/cjs/{popupUtils-c0921a77.js → popupUtils-3b069427.js} +2 -2
  48. package/dist/cjs/public-notification.cjs.entry.js +4 -4
  49. package/dist/cjs/solution-configuration.cjs.entry.js +2 -2
  50. package/dist/cjs/solution-contents_3.cjs.entry.js +2 -2
  51. package/dist/cjs/solution-item-accordion.cjs.entry.js +2 -2
  52. package/dist/cjs/spatial-ref.cjs.entry.js +2 -2
  53. package/dist/cjs/{utils-16dbc236.js → utils-0f287cfa.js} +1 -1
  54. package/dist/esm/{asyncToGenerator-96b2368d.js → asyncToGenerator-48cd21fe.js} +1 -1
  55. package/dist/esm/basemap-gallery_7.entry.js +2 -2
  56. package/dist/esm/buffer-tools_2.entry.js +2 -2
  57. package/dist/esm/card-manager_3.entry.js +4 -4
  58. package/dist/esm/consent-manager.entry.js +4 -4
  59. package/dist/esm/create-feature_4.entry.js +5 -5
  60. package/dist/esm/create-related-feature_3.entry.js +2 -2
  61. package/dist/esm/crowdsource-manager.entry.js +2 -2
  62. package/dist/esm/crowdsource-reporter.entry.js +2 -2
  63. package/dist/esm/delete-dialog.entry.js +2 -2
  64. package/dist/esm/{downloadUtils-3f4d34a4.js → downloadUtils-992b4e25.js} +3 -3
  65. package/dist/esm/{effects-38bc1195.js → effects-45daffc6.js} +1 -1
  66. package/dist/esm/feature-list.entry.js +5 -5
  67. package/dist/esm/{helpers-5df33e11.js → helpers-38ea1ae1.js} +2 -2
  68. package/dist/esm/{index.es-87662946.js → index.es-c379ea10.js} +2 -2
  69. package/dist/esm/instant-apps-app-guide.entry.js +4 -4
  70. package/dist/esm/instant-apps-ckeditor-wrapper_3.entry.js +5 -5
  71. package/dist/esm/instant-apps-control-panel.entry.js +2 -2
  72. package/dist/esm/instant-apps-create.entry.js +4 -4
  73. package/dist/esm/instant-apps-export-views.entry.js +4 -4
  74. package/dist/esm/instant-apps-export.entry.js +4 -4
  75. package/dist/esm/instant-apps-filter-list_2.entry.js +4 -4
  76. package/dist/esm/instant-apps-header.entry.js +2 -2
  77. package/dist/esm/instant-apps-interactive-legend-classic.entry.js +4 -4
  78. package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +4 -4
  79. package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +4 -4
  80. package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +4 -4
  81. package/dist/esm/instant-apps-interactive-legend.entry.js +6 -6
  82. package/dist/esm/instant-apps-keyboard-shortcuts.entry.js +4 -4
  83. package/dist/esm/instant-apps-language-switcher.entry.js +6 -6
  84. package/dist/esm/instant-apps-language-translator.entry.js +6 -6
  85. package/dist/esm/instant-apps-measurement-tool.entry.js +2 -2
  86. package/dist/esm/instant-apps-measurement.entry.js +4 -4
  87. package/dist/esm/instant-apps-popover.entry.js +4 -4
  88. package/dist/esm/instant-apps-scoreboard.entry.js +4 -4
  89. package/dist/esm/instant-apps-sign-in.entry.js +4 -4
  90. package/dist/esm/instant-apps-splash.entry.js +4 -4
  91. package/dist/esm/instant-apps-time-filter.entry.js +5 -5
  92. package/dist/esm/json-editor_7.entry.js +2 -2
  93. package/dist/esm/{languageSwitcher-49bad3f4.js → languageSwitcher-446c6fe7.js} +1 -1
  94. package/dist/esm/{languageUtil-2b6e191a.js → languageUtil-a3e6adf6.js} +1 -1
  95. package/dist/esm/{loadModules-947ccfd4.js → loadModules-736e0284.js} +1 -1
  96. package/dist/esm/{locale-857bb2e4.js → locale-5b76949e.js} +2 -2
  97. package/dist/esm/{locale-fd7f8659.js → locale-8a3e6795.js} +1 -1
  98. package/dist/esm/map-layer-picker.entry.js +2 -2
  99. package/dist/esm/map-select-tools_3.entry.js +4 -4
  100. package/dist/esm/{popupUtils-43fafc2f.js → popupUtils-12e61a9a.js} +2 -2
  101. package/dist/esm/public-notification.entry.js +4 -4
  102. package/dist/esm/solution-configuration.entry.js +2 -2
  103. package/dist/esm/solution-contents_3.entry.js +2 -2
  104. package/dist/esm/solution-item-accordion.entry.js +2 -2
  105. package/dist/esm/spatial-ref.entry.js +2 -2
  106. package/dist/esm/{utils-ebba7c2e.js → utils-793f7261.js} +1 -1
  107. package/dist/solutions-components/{p-c63ce830.entry.js → p-097bac90.entry.js} +1 -1
  108. package/dist/solutions-components/{p-b67ff61f.entry.js → p-0bb54295.entry.js} +1 -1
  109. package/dist/solutions-components/{p-cc3e637d.entry.js → p-0d110867.entry.js} +1 -1
  110. package/dist/solutions-components/{p-3c1c2ca5.entry.js → p-0d311ebf.entry.js} +1 -1
  111. package/dist/solutions-components/{p-48fcfd06.entry.js → p-0d879c77.entry.js} +1 -1
  112. package/dist/solutions-components/{p-529325da.entry.js → p-0e3b3aa8.entry.js} +1 -1
  113. package/dist/solutions-components/{p-ea19f91b.js → p-1e364924.js} +1 -1
  114. package/dist/solutions-components/{p-3d7eeb2d.js → p-20085e58.js} +2 -2
  115. package/dist/solutions-components/{p-c691c1d1.entry.js → p-2010e62e.entry.js} +1 -1
  116. package/dist/solutions-components/{p-f71dc88a.entry.js → p-256ce5cc.entry.js} +1 -1
  117. package/dist/solutions-components/{p-d1d8e331.entry.js → p-2b9d58dc.entry.js} +1 -1
  118. package/dist/solutions-components/{p-2672ee69.entry.js → p-340c71f3.entry.js} +1 -1
  119. package/dist/solutions-components/{p-174fa218.js → p-3e25c5b0.js} +1 -1
  120. package/dist/solutions-components/{p-2937baee.js → p-3ea987a7.js} +1 -1
  121. package/dist/solutions-components/{p-f24d6b3e.entry.js → p-44105d86.entry.js} +1 -1
  122. package/dist/solutions-components/{p-3de6e5d8.entry.js → p-47abefd3.entry.js} +1 -1
  123. package/dist/solutions-components/{p-0db26b05.entry.js → p-5474d6f0.entry.js} +1 -1
  124. package/dist/solutions-components/{p-d65f8b73.js → p-62a0aa8e.js} +1 -1
  125. package/dist/solutions-components/{p-dc188d13.js → p-6d1ee086.js} +1 -1
  126. package/dist/solutions-components/{p-40578f4b.entry.js → p-74b3e39c.entry.js} +1 -1
  127. package/dist/solutions-components/{p-89fbc318.js → p-78051ff1.js} +1 -1
  128. package/dist/solutions-components/{p-e133f9b2.entry.js → p-79083691.entry.js} +1 -1
  129. package/dist/solutions-components/{p-e6158877.entry.js → p-7e1c353c.entry.js} +1 -1
  130. package/dist/solutions-components/{p-ded33011.entry.js → p-88de10d1.entry.js} +1 -1
  131. package/dist/solutions-components/{p-1a1791ae.entry.js → p-8ab5efc1.entry.js} +1 -1
  132. package/dist/solutions-components/{p-b711a822.entry.js → p-8af77823.entry.js} +1 -1
  133. package/dist/solutions-components/{p-21b280a8.js → p-91bb7fdc.js} +1 -1
  134. package/dist/solutions-components/{p-193034c9.entry.js → p-9e92da5e.entry.js} +1 -1
  135. package/dist/solutions-components/{p-f1faec42.entry.js → p-a1d1dc83.entry.js} +1 -1
  136. package/dist/solutions-components/{p-075979ef.js → p-a23de3b0.js} +1 -1
  137. package/dist/solutions-components/{p-08ad0b7a.js → p-a4bd7b09.js} +1 -1
  138. package/dist/solutions-components/{p-0b974e3c.entry.js → p-a7d18a21.entry.js} +1 -1
  139. package/dist/solutions-components/{p-4e34c101.entry.js → p-ad03f5cf.entry.js} +1 -1
  140. package/dist/solutions-components/{p-fb4dfcbe.entry.js → p-ae7bcbff.entry.js} +1 -1
  141. package/dist/solutions-components/{p-ac122d9e.js → p-af2c8aa9.js} +1 -1
  142. package/dist/solutions-components/{p-e16bb956.entry.js → p-b0551d23.entry.js} +1 -1
  143. package/dist/solutions-components/{p-89cae891.entry.js → p-b2a6916d.entry.js} +1 -1
  144. package/dist/solutions-components/{p-7c958237.entry.js → p-c1a752b9.entry.js} +1 -1
  145. package/dist/solutions-components/{p-c19c273f.entry.js → p-c421d92d.entry.js} +1 -1
  146. package/dist/solutions-components/{p-4f683af6.entry.js → p-c44cbee6.entry.js} +1 -1
  147. package/dist/solutions-components/{p-1b6461c5.entry.js → p-c5f701bd.entry.js} +1 -1
  148. package/dist/solutions-components/{p-1e57a3bd.entry.js → p-d32b5127.entry.js} +1 -1
  149. package/dist/solutions-components/{p-5dfab24b.entry.js → p-d600ca73.entry.js} +1 -1
  150. package/dist/solutions-components/{p-a940dc0c.entry.js → p-d995adc3.entry.js} +1 -1
  151. package/dist/solutions-components/{p-a5069229.entry.js → p-da1ac695.entry.js} +1 -1
  152. package/dist/solutions-components/{p-b6422554.entry.js → p-e508cfaf.entry.js} +1 -1
  153. package/dist/solutions-components/{p-0592d206.entry.js → p-e8fa98f5.entry.js} +1 -1
  154. package/dist/solutions-components/{p-c223bd87.js → p-ea6440fd.js} +1 -1
  155. package/dist/solutions-components/{p-c9e111d7.entry.js → p-ed8f7591.entry.js} +1 -1
  156. package/dist/solutions-components/{p-4db43d2c.entry.js → p-f64eeaad.entry.js} +1 -1
  157. package/dist/solutions-components/{p-73ba31c4.entry.js → p-f9b7f97e.entry.js} +1 -1
  158. package/dist/solutions-components/{p-f7c10b7f.entry.js → p-ff3d2df3.entry.js} +1 -1
  159. package/dist/solutions-components/{p-a5073249.entry.js → p-ffa545ee.entry.js} +1 -1
  160. package/dist/solutions-components/solutions-components.esm.js +1 -1
  161. package/dist/solutions-components_commit.txt +6 -7
  162. package/package.json +10 -10
  163. /package/dist/cjs/{esri-loader-08dc41bd.js → esri-loader-a56cbcbe.js} +0 -0
  164. /package/dist/cjs/{typeof-2a7e2dec.js → typeof-920a4426.js} +0 -0
  165. /package/dist/esm/{esri-loader-c6842c6b.js → esri-loader-781d738a.js} +0 -0
  166. /package/dist/esm/{typeof-ef2a007d.js → typeof-2511410e.js} +0 -0
  167. /package/dist/solutions-components/{p-0a24ad5f.js → p-6a68306c.js} +0 -0
  168. /package/dist/solutions-components/{p-4fe489cf.js → p-af7e43e0.js} +0 -0
@@ -3,4 +3,4 @@
3
3
  * Licensed under the Apache License, Version 2.0
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
- import{r as t,g as e,h as i,H as a,c as s}from"./p-8c40bdec.js";import{g as n}from"./p-075979ef.js";import{s as c}from"./p-1309ac58.js";import{d as o}from"./p-80cb7c73.js";import{E as l}from"./p-4f236b5d.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-fa639501.js";import"./p-570b13d9.js";import"./p-0668e30d.js";const d=class{constructor(e){t(this,e)}get el(){return e(this)}hasChanges=!1;hasErrors=!1;instanceid="";locale;value="";async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}componentDidLoad(){const t=document.getElementById(`${this.instanceid}-container`);if(t){this._editor=monaco.editor.create(t,{value:this.value,language:"json",theme:"vs",minimap:{enabled:!1},automaticLayout:!0,scrollBeyondLastLine:!1}),this._currentModel=this._editor.getModel(),this._contentChanged=this._currentModel.onDidChangeContent(this._onEditorChange.bind(this));const e=monaco.editor.setModelMarkers,i=this;monaco.editor.setModelMarkers=function(t,a,s){t.id===i._currentModel.id&&(i._flagEditorHasErrors(s.length>0),i.hasErrors||(i._flagEditorHasChanges(i._currentModel?.canUndo()),i._currentModel?.canUndo()&&i._flagEditorContentChanged()),document.getElementById(`${i.instanceid}-errorFlag`).style.visibility=i.hasErrors?"visible":"hidden"),e.call(monaco.editor,t,a,s)},this._diffEditor=monaco.editor.createDiffEditor(document.getElementById(`${this.instanceid}-diff-container`),{automaticLayout:!0}),this._setDiffModel(),this._loaded=!0,this._toggleUndoRedo()}}async componentWillLoad(){this._initValueObserver(),await this._getTranslations()}render(){return i(a,{key:"ba7c8a397da913d86f5d294cdfbb5ec1b84d89de"},i("div",{key:"bc5c6d1ee443b2096cc44d0b66850d4ebe8462da",id:`${this.instanceid}-editor-container`,class:"editor-container padding-right"},i("div",{key:"dbaf682cba354ce7eef21b03a71832fd39911332",class:"editor-controls"},i("div",{key:"e454e1dd36aa620abf2ffb7877bebb9adc70ff15",class:"editor-buttons"},i("calcite-icon",{key:"1de67e151c6e65b004a431d89dc785ca286a8e11",id:`${this.instanceid}-errorFlag`,icon:"exclamation-mark-triangle",title:this._translations.errorFlag,scale:"s",class:"edit-error-flag"}),i("calcite-button",{key:"33de20955d29287a3ec981e7650562a036343e3a",id:`${this.instanceid}-undo`,color:"blue",appearance:"solid",title:this._translations.undo,onClick:()=>this._undo(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"9bed02f1e8a367ad2ed764747f044a4ce27de52b",icon:"undo",scale:"s"})),i("calcite-button",{key:"07562443286c4eeec28577a7cff0401e8cea0ba8",id:`${this.instanceid}-redo`,color:"blue",appearance:"solid",title:this._translations.redo,onClick:()=>this._redo(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"5f24902a66eae644d0d358a4826a98d45e905493",icon:"redo",scale:"s"})),i("calcite-button",{key:"02f4f3f8ab93e5f1146176ec3699e2a6d25ecbeb",id:`${this.instanceid}-diff`,color:"blue",appearance:"solid",title:this._translations.diff,onClick:()=>this._toggleEditor(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"0bcd20d28e9ec34f1736a2888d78bfcd9cb82a4d",icon:"compare",scale:"s"})),i("calcite-button",{key:"cf3a7672ebd3ebef00123096ec304456b8f102fc",id:`${this.instanceid}-search`,appearance:"outline",color:"blue",title:this._translations.search,onClick:()=>this._search(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"36aac5e89ebf593d8d1981d7b8f6267fbbadfd24",icon:"search",scale:"s"})),i("calcite-button",{key:"cc981ff7580acfa3a3395c4ce7a96b3022bbbb4b",id:`${this.instanceid}-reset`,color:"blue",appearance:"solid",disabled:!0,title:this._translations.cancelEdits,onClick:()=>this._reset(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"3c4fc1da749f4b4f64d814fcd58dc035634f6b1b",icon:"reset",scale:"s"})))),i("div",{key:"6c33ec4851d804dac7fd9762e3c8c7e416a27cf4",class:"edit-parent"},i("div",{key:"a6e9721127bbd43f9974af65e0899489370e1868",id:`${this.instanceid}-container`,class:"json-edit-container"}),i("div",{key:"c1d1ea305c0e451c24beddb8ac3f8e85a3fca088",id:`${this.instanceid}-diff-container`,class:"json-edit-container display-none"}))))}_cancelEditsBtnHandler;_contentChanged;_currentModel;_diffEditor;_editor;_loaded=!1;_searchBtnHandler;_translations;_useDiffEditor=!1;_valueObserver;async getEditorContents(){return new Promise(((t,e)=>{try{t(this._currentModel.getValue())}catch(t){e(t)}}))}async prepareForDeletion(){this._searchBtnHandler?.removeEventListener("click",this._search),this._cancelEditsBtnHandler?.removeEventListener("click",this._reset),this._valueObserver?.disconnect(),this._contentChanged?.dispose(),this._editor?.dispose()}async replaceCurrentSelection(t){const e=this._editor.getSelection();this._editor.executeEdits("",[{range:e,text:t}])}async reset(){return new Promise(((t,e)=>{try{this._reset(),t({success:!0})}catch(t){e(t)}}))}_disableButton(t){document.getElementById(t)?.setAttribute("disabled","")}_enableButton(t){document.getElementById(t)?.removeAttribute("disabled")}_flagEditorContentChanged(){window.dispatchEvent(new CustomEvent("solutionEditorContentChanged",{detail:{id:this.instanceid,contents:this._currentModel.getValue()},bubbles:!0,cancelable:!1,composed:!0}))}_flagEditorHasChanges(t){this.hasChanges!==t&&(window.dispatchEvent(new CustomEvent("solutionEditorHasChanges",{detail:t,bubbles:!0,cancelable:!1,composed:!0})),this.hasChanges=t)}_flagEditorHasErrors(t){this.hasErrors!==t&&(window.dispatchEvent(new CustomEvent("solutionEditorHasErrors",{detail:t,bubbles:!0,cancelable:!1,composed:!0})),this.hasErrors=t)}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}_initValueObserver(){this._valueObserver=new MutationObserver((t=>{t.forEach((t=>{"attributes"===t.type&&"value"===t.attributeName&&t.target[t.attributeName]!==t.oldValue&&this._loaded&&this._currentModel.setValue(this.value)}))})),this._valueObserver.observe(this.el,{attributes:!0,attributeOldValue:!0})}_onEditorChange(){this._toggleUndoRedo()}_redo(){this._currentModel?.canRedo()&&(this._currentModel.redo(),this._toggleUndoRedo())}_reset(){this._currentModel.setValue(this.value),this._toggleUndoRedo()}_search(){this._editor.trigger("toggleFind","actions.find")}_setDiffModel(){this._diffEditor&&this._diffEditor.setModel({original:monaco.editor.createModel(this.value,"json"),modified:this._editor.getModel()})}_toggleEditor(){this._useDiffEditor=!this._useDiffEditor;let t=document.getElementById(`${this.instanceid}-diff-container`),e=document.getElementById(`${this.instanceid}-container`);this._useDiffEditor?(this._setDiffModel(),t.classList.remove("display-none"),e.classList.add("display-none")):(t.classList.add("display-none"),e.classList.remove("display-none"))}_toggleUndoRedo(){this._currentModel?.canUndo()?this._enableButton(`${this.instanceid}-undo`):this._disableButton(`${this.instanceid}-undo`),this._currentModel?.canRedo()?this._enableButton(`${this.instanceid}-redo`):this._disableButton(`${this.instanceid}-redo`),this._currentModel?.canUndo()||this._currentModel?.canRedo()?this._enableButton(`${this.instanceid}-reset`):this._disableButton(`${this.instanceid}-reset`)}_undo(){this._currentModel?.canUndo()&&(this._currentModel.undo(),this._toggleUndoRedo())}static get assetsDirs(){return["assets"]}static get watchers(){return{locale:["localeWatchHandler"]}}};d.style=":host{display:block}.editor-container{position:relative;height:100%}.editor-controls{height:2.75rem;padding-right:0.5rem;background-color:#F4F4F4}.editor-buttons{float:right}html[dir=rtl] .editor-buttons{float:left}.edit-error-flag{padding-top:0.5rem;color:red;visibility:hidden}.edit-button{padding-inline-start:0.5rem}.editor-text{width:100%;overflow-y:auto;background-color:#FFFFFF}.edit-width{width:100%}.edit-parent{box-sizing:border-box;width:100%;height:calc(100% - 46px)}.json-edit-container{height:100%;width:100%;border:1px #808080 solid}.padding-right{padding-inline-end:0.125rem}.btn{margin-bottom:1rem;display:flex;align-content:center;height:25px;width:120px}.select-ctrl{margin-bottom:1rem}.all-edits{margin-top:4rem}.floating-title{font-size:2rem;z-index:100;position:absolute;left:0.5rem;pointer-events:none}.floating-title-button{pointer-events:auto}.json-editor-position1{position:absolute;left:0px;top:0px;margin:0px;height:100%;width:100%;overflow:hidden;padding:0px;max-height:100% !important}.json-editor-position2a{position:absolute;left:0px;top:0px;margin:0px;height:100%;width:50%;overflow:hidden;padding:0px;max-height:100% !important}.json-editor-position2b{position:absolute;right:0px;top:0px;margin:0px;height:100%;width:50%;overflow:hidden;padding:0px;max-height:100% !important}";const r=class{constructor(e){t(this,e)}get el(){return e(this)}itemId="";locale;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}async componentWillLoad(){return this._getTranslations()}async componentWillRender(){return this.itemEdit=c.getItemInfo(this.itemId),this.itemEdit&&(this.itemDetails=this.itemEdit.item,this.itemType=this.itemDetails.type),Promise.resolve()}render(){return i(a,{key:"032ff1aeb8c703b36ff4746508e0b6b35ad29516"},i("div",{key:"a6ef24150d812c790a9762c7e6dcaefcfacc2c36",class:"parent-container"},i("div",{key:"e03091a4557a0e15af35782350aec472c94a0151",class:"inputBottomSeparation"},i("calcite-input",{key:"e45e06e9e140cc1bcd070faef6efeccd773ce7cc",id:"item-title",value:this.itemDetails.title})),i("div",{key:"9f62241ee3f46730aa48f40c5c9e55ea823c2e6f",class:"inputBottomSeparation"},i("input",{key:"1c90efe7904fffbccb189032069396cf21e21228",accept:".jpg,.gif,.png,image/jpg,image/gif,image/png",class:"display-none",onChange:t=>this._updateThumbnail(t),ref:t=>this.browseForThumbnail=t,type:"file"}),i("button",{key:"fbc1a6f8c40ac4ba7840bf80d16b4039d2bbb5a7",class:"font-size--3 btn-link inline-block trailer-quarter",onClick:()=>this._getThumbnail()},i("svg",{key:"1d4eacbc6445262ffa9bd9fe3d407a8a4560dd36",class:"icon-inline icon-inline--on-left",height:"16",viewBox:"0 0 16 16",width:"16"},i("path",{key:"58eaaf7e259d7ef37ae352874488fce873a416b9",d:"M14.792 2.666l-1.414-1.413a.965.965 0 0 0-1.385-.03l-1.444 1.444-8.763 8.72L.03 15.481a.371.371 0 0 0 .488.488l4.096-1.756 8.763-8.72-.001-.001.002.002 1.443-1.444a.965.965 0 0 0-.03-1.385zM1.569 14.431l.554-1.293.74.739zm2.338-.924l-1.414-1.414 7.963-7.92 1.414 1.415zm8.67-8.626l-1.413-1.414 1.29-1.29a.306.306 0 0 1 .433 0l.981.98a.306.306 0 0 1 0 .433z"})),this._translations.editThumbnail),i("div",{key:"a1d50881d34eddd023e0a9b677575a7573df583a",class:"flex"},i("div",{key:"e31f5d4cdaaee8765cc982ba9adda88df977e803",class:"img-container",ref:t=>this.thumbnailContainer=t},i("img",{key:"c2d9b5e31e25b1bc139e1c119042044fdd8b31dd",class:"scale-down",height:"133",id:"item-thumbnail",ref:t=>this.thumbnail=t,width:"200"})),i("div",{key:"eaa96a675562d8969124ba3169e46d4fe9d180cb",class:"snippet-count-container"},i("calcite-input",{key:"47d6b25a65fbe60f38668710b1eb14129c4aa6f2",id:"item-snippet",maxLength:250,type:"textarea",value:this.itemDetails.snippet}),i("label",{key:"8267140b46c94425eda185020c76307e70c33684",class:"font-size--3",id:"item-snippet-count",ref:t=>this.itemSnippetCount=t})))),i("calcite-label",{key:"70ffbe01451016a0016d044e2f3e4d1e41722cb0"},this._translations.description,i("label",{key:"f7c014575c2a6964a45fad059646d79ebadf5e18",id:"item-description-label"},i("calcite-input",{key:"34d78b42697be944d413102975aff3d31498abba",id:"item-description",type:"textarea",value:this.itemDetails.description}))),i("calcite-label",{key:"2d51c7a3b709b41e5adb0f73756a9528f86c20a5"},this._translations.tags,i("label",{key:"ea9ddfa6662d7ab8eb92301c59b6fd5876d7d59b",id:"item-tags-label"},i("calcite-input",{key:"aec1f0ee4408d4cb687bb31b313cb47b58979733",id:"item-tags",value:(this.itemDetails.tags&&Array.isArray(this.itemDetails.tags)?this.itemDetails.tags:[this.itemDetails.tags]).join(",")}))),"Group"!==this.itemType?i("calcite-label",null,this._translations.credits,i("label",{id:"item-credits-label"},i("calcite-input",{id:"item-credits",value:this.itemDetails.accessInformation}))):null,"Group"!==this.itemType?i("calcite-label",null,i("label",{id:"item-terms-label"},this._translations.termsOfUse,i("calcite-input",{id:"item-terms",type:"textarea",value:this.itemDetails.licenseInfo}))):null))}componentDidRender(){this._loadThumb()}browseForThumbnail;itemDetails={accessInformation:"",description:"",licenseInfo:"",snippet:"",tags:[],title:""};itemEdit;itemType;_translations;itemSnippetCount;thumbnail;thumbnailContainer;inputReceivedHandler(t){switch(t.target.id){case"item-title":this.itemDetails.title=t.target.value,this._updateStore();break;case"item-snippet":t.target.value.length>250&&(t.target.value=t.target.value.substring(0,250)),this.itemDetails.snippet=t.target.value,this._updateLengthLabel(this.itemDetails.snippet),this._updateStore();break;case"item-description":this.itemDetails.description=t.target.value,this._updateStore();break;case"item-tags":this.itemDetails.tags=t.target.value,this._updateStore();break;case"item-credits":this.itemDetails.accessInformation=t.target.value,this._updateStore();break;case"item-terms":this.itemDetails.licenseInfo=t.target.value,this._updateStore()}}_getThumbnail(){this.browseForThumbnail.click()}_loadThumb(){this.thumbnail&&this.itemEdit?.thumbnail?(this.thumbnail.src=URL.createObjectURL(this.itemEdit.thumbnail),this.thumbnailContainer.classList.remove("empty-box"),this.thumbnail.classList.remove("display-none")):(this.thumbnailContainer.classList.add("empty-box"),this.thumbnail.classList.add("display-none"))}_updateLengthLabel(t){this.itemSnippetCount.innerText=this._translations.snippetCountPattern.replace("{{n}}",t.length.toString())}_updateStore(){this.itemEdit=c.getItemInfo(this.itemId),this.itemEdit.item=this.itemDetails,c.setItemInfo(this.itemEdit)}_updateThumbnail(t){const e=t.target.files;e&&e[0]&&this.thumbnail&&(this.thumbnail.src=URL.createObjectURL(e[0]),this.itemEdit=c.getItemInfo(this.itemId),this.itemEdit.thumbnail=e[0],c.replaceItemThumbnail(this.itemEdit))}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"]}}};r.style=".inputBottomSeparation{margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1.5rem}.icon-inline--on-left,.icon-inline--on-right{display:inline;vertical-align:middle;margin-inline-end:0.375rem;fill:#0079c1}.scale-down{-o-object-fit:scale-down;object-fit:scale-down}.img-container{display:inline;margin-inline-end:1rem;max-width:363px}.summary-count-container{display:inline;flex-grow:1;margin-inline-start:0.75rem}.snippet-count-container{width:calc(100vw - 363px)}.parent-container{max-width:100%;padding:1rem}label{position:relative;margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1.5rem;display:block;min-width:-moz-min-content;min-width:min-content}";const h=class{constructor(e){t(this,e)}get el(){return e(this)}groupId="";locale;itemIdWatchHandler(){const t=c.getItemInfo(this.groupId);this.sharing=t.groupDetails}async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}async componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"eca66b743e748d9f915c6d356ea84075ab21709a"},i("div",{key:"b0765e14cc9de5a81afa5d20bc41e7f78913a37e",class:"container-border"},i("calcite-label",{key:"36cbf3b48a2641bcb2107e61609c2ec6c9f18991"},this._translations.groupInfo),this._renderItems(this.sharing)))}_translations;sharing=[];async getShareInfo(){return this.sharing}_renderItems(t){return t&&t.length>0?t.map((t=>i("calcite-label",{layout:"inline"},i("calcite-switch",{checked:t.shareItem,id:t.id,name:"setting",onCalciteSwitchChange:t=>this._updateItem(t),scale:"m",value:"enabled"}),i("solution-item-icon",{type:t.type,typeKeywords:t.typeKeywords}),i("span",{class:"icon-text",title:t.title},t.title)))):null}_updateItem(t){const e=t.target.id;this.sharing=this.sharing.map((i=>{if(i.id===e){i.shareItem=t.target.checked;const a=c.getItemInfo(e);if(i.shareItem)a.groups?a.groups.indexOf(this.groupId)<0&&a.groups.push(this.groupId):a.groups=[this.groupId];else if(a.groups){const t=a.groups.indexOf(this.groupId);t>-1&&a.groups.splice(t,1)}c.setItemInfo(a)}return i}))}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{groupId:["itemIdWatchHandler"],locale:["localeWatchHandler"]}}};h.style=":host{display:block}.container-border{padding:1rem}.icon-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}";const b=class{constructor(e){t(this,e),this.organizationVariableSelected=s(this,"organizationVariableSelected",7)}get el(){return e(this)}locale;value="";async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}valueWatchHandler(){this._organizationVariables=JSON.parse(this.value)}async componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"4d1a39b53287d445a1fc66cd5088a7bc60516ab6"},i("div",{key:"7a40ad712fe1af01e92701d128f65b0590aa15bc"},i("h4",{key:"7517fc56b5b0128ee102dc3f57e334501befe14f",class:"org-var-header"},this._translations.orgVariables)),i("div",{key:"d48cbc3ffb24ba54ded2b24c7c518ecf8114cd55",class:"container-border"},i("calcite-tree",{key:"383124c0ae3d646dc9ee857109051e7a151dbe62",id:"variable-label"},this._renderHierarchy(this._organizationVariables))))}_organizationVariables=[];_translations;organizationVariableSelected;_renderHierarchy(t){return t.map((t=>i("calcite-tree-item",{onClick:()=>this._treeItemSelected(t.id,t.value)},t.title)))}_treeItemSelected(t,e){this.organizationVariableSelected.emit({itemId:t,value:e})}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"],value:["valueWatchHandler"]}}};b.style=":host{display:block}.container-border{overflow-y:auto}.org-var-header{margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1rem}";const p=class{constructor(e){t(this,e)}get el(){return e(this)}authentication;itemId="";locale;itemIdWatchHandler(){const t=c.getItemInfo(this.itemId);this.resourceFilePaths=t.resourceFilePaths,this.resources=t.resources.map((t=>t.substring(t.lastIndexOf("/")+1)))}async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}componentWillLoad(){return this._getTranslations()}render(){const t=this._hasValidResources();return i(a,{key:"36017a54e5f8fafda593af2b727f1fbda80c7455"},i("div",{key:"eb9f53c9b4161c09e0b00d9a4d90a814d944819c",class:"resource-item"},i("div",{key:"504dfa5fb623ed27a0829f60ebbf5de17b6d467f",class:"margin-bottom-1"},i("calcite-button",{key:"e578443e1ef409917c5946c77e660c04d273cb6c",appearance:"solid",class:"resource-button",color:"blue",onClick:()=>this._addNewResource()},this._translations.addResource),i("calcite-button",{key:"e4c11326d7c5d96de1d0983eb0beb3cf726177c8",appearance:"solid",color:"blue",disabled:!t,onClick:()=>this._downloadAll()},this._translations.downloadAll)),i("div",{key:"3617bf40ac8b01d70b523642757a624c977ea491",class:"resources-container",style:{display:t?"inherit":"none"}},this._renderResourceList())))}resourceFilePaths=[];resources=[];_translations;_removedResources={};_renderResourceList(){return i("calcite-value-list",{multiple:!0},this.resourceFilePaths.reduce(((t,e)=>(e.type!==l.Thumbnail&&t.push(this._renderResource(e)),t)),[]))}_renderResource(t){const e=t.updateType===o.Remove;return i("calcite-value-list-item",{class:e?"disabled":"",label:t.folder?t.folder+"/"+t.filename:t.filename,nonInteractive:!0,value:t.url},i("calcite-action-group",{"expand-disabled":"true",layout:"horizontal",slot:"actions-end"},i("calcite-action",{disabled:e,icon:"download",label:this._translations.download,onClick:()=>this._download(t.url,t.filename),scale:"m",text:this._translations.download,title:this._translations.download}),i("calcite-action",{disabled:e,icon:"upload-to",label:this._translations.update,onClick:()=>this._upload(t),scale:"m",text:this._translations.update,title:this._translations.update}),i("calcite-action",{disabled:e,icon:"trash",label:this._translations.delete,onClick:()=>this._delete(t),scale:"m",text:this._translations.delete,title:this._translations.delete}),e?i("calcite-action",{icon:"reset",label:this._translations.reset,onClick:()=>this._reset(t.filename),scale:"m",text:this._translations.reset,title:this._translations.reset}):i("div",{class:"display-none"})))}_delete(t){t.updateType=o.Remove,this.resourceFilePaths=[...this.resourceFilePaths],this._updateStore()}_reset(t){this.resourceFilePaths=this.resources.some((e=>e===t))?this.resourceFilePaths.map((e=>(e.filename===t&&(e.updateType=o.None),e))):this.resourceFilePaths.map((e=>(e.filename===t&&(e.updateType=o.Add),e))),this._updateStore()}_downloadAll(){this.resourceFilePaths.forEach((t=>{this._download(t.url,t.filename)}))}_download(t,e){t.startsWith("blob")?this.downloadFile(t,e):this.fetchAndDownload(`${t}?token=${this.authentication.token}`,e)}downloadFile(t,e){const i=document.createElement("a");i.href=t,i.download=e,i.target="_blank",i.click()}_hasValidResources(){return this.resourceFilePaths.some((t=>t.url.indexOf("_info_thumbnail")<0))}async fetchAndDownload(t,e){const i=await fetch(t),a=await i.blob(),s=URL.createObjectURL(a);this.downloadFile(s,e)}_upload(t){const e=document.createElement("input");e.classList.add("display-none"),e.onchange=this._updateResource.bind(this,t),e.type="file",e.click()}_addNewResource(){const t=document.createElement("input");t.classList.add("display-none"),t.onchange=this._add.bind(this),t.type="file",t.click()}_updateResource(t,e){const i=e.target.files;i&&i[0]&&(t.blob=i[0],t.updateType=o.Update,this._updateStore())}_add(t){const e=t.target.files;if(e&&e[0]){const t=URL.createObjectURL(e[0]),i=e[0].name;this.resourceFilePaths.some((e=>e.filename===i&&e.url===t))||(this.resourceFilePaths=[...this.resourceFilePaths,{url:t,type:l.Data,folder:void 0,filename:i,blob:e[0],updateType:o.Add}],this._updateStore())}}_updateStore(){const t=c.getItemInfo(this.itemId);t.resourceFilePaths=this.resourceFilePaths,c.setItemInfo(t)}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{itemId:["itemIdWatchHandler"],locale:["localeWatchHandler"]}}};p.style=":host{display:block}.resource-item{padding:1rem}.resource-button{margin-inline-end:1rem}.resource-progress{padding-top:1rem}.resources-container{border:1px #808080 solid}.margin-bottom-1{margin-bottom:1rem}";const f=class{get el(){return e(this)}instanceid="";itemId="";itemIdWatchHandler(){this._initializing=!0,this.value=JSON.stringify("data"===this.instanceid?c.getItemInfo(this.itemId).data:c.getItemInfo(this.itemId).properties,null,2)}locale;organizationVariables="";solutionVariables="";varsOpen=!0;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}constructor(e){t(this,e),window.addEventListener("solutionEditorContentChanged",(t=>{if(this.itemId){const{id:e,contents:i}=t.detail,[a,s]=e.split("|");if(a==this.itemId&&s===this.instanceid){if(!this._initializing&&i.length>0){const t=c.getItemInfo(a);"data"===s?t.data=JSON.parse(i):t.properties=JSON.parse(i),c.setItemInfo(t)}this._initializing=!1}}}))}componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"db99cf57229d7d8b9fe6315e180d95de0b20fc8d"},i("div",{key:"83473f420d1417c85ebb4119be9f359cab878c54",class:"solution-data-container"},i("calcite-shell",{key:"013754ef962c2e5c112f6a8cc6c5d1b8e768078e",class:"light var-container",dir:"ltr"},i("calcite-panel",{key:"11ab2a07fe4af542d8cefc1c131246deef43dd9a",class:"json-editor"},i("div",{key:"ba0460977eb0375acaf5b11ce951986a08ece39b",class:"solution-data-child-container calcite-match-height"},i("json-editor",{key:"53251c1583aa7e8cf2a4e9a1f22e4c72430d3928",class:"solution-data-editor-container",instanceid:this.itemId+"|"+this.instanceid,locale:this.locale,value:this.value}))),i("calcite-shell-panel",{key:"30c47797a35ff7228c4318a5633aec57de05b8cf","height-scale":"l",position:"end",slot:"contextual-panel","width-scale":"xs"},i("div",{key:"028b16654835744f0735b880ca85a3d174963414",class:this.varsOpen?"solution-data-child-container":"solution-data-child-container-collapsed"},i("calcite-button",{key:"bb5049611e778b970454544851a625ccef47d23a",appearance:"transparent",class:"collapse-btn","icon-start":this.varsOpen?"chevrons-right":"chevrons-left",id:"collapse-vars",onClick:()=>this._toggleVars(),scale:"s",title:this.varsOpen?this._translations.collapse:this._translations.expand}),i("div",{key:"c2a30a7c27db181e0dfe0e201d9d3b2742247080",class:this.varsOpen?"org-vars":"org-vars display-none",id:"orgVars"},i("solution-organization-variables",{key:"178c4301c8558c4fe7114c8f6cf5bc0df10883a0",locale:this.locale,value:this.organizationVariables})),i("div",{key:"f85375bac946cff856b6915f340bf926498265ea",class:this.varsOpen?"sol-vars":"sol-vars display-none",id:"solVars"},i("solution-variables",{key:"166d0752746994bc4aebd4e41660f8a2d2c678ea",locale:this.locale,value:this.solutionVariables})))))))}_translations;value="";_initializing=!1;_toggleVars(){this.varsOpen=!this.varsOpen}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{itemId:["itemIdWatchHandler"],locale:["localeWatchHandler"]}}};f.style=":host{display:flexbox}.solution-data-container{position:absolute;height:-moz-available;height:calc(100% - 48px);height:-webkit-fill-available;height:stretch;width:-moz-available;width:100%;width:-webkit-fill-available;width:stretch}.solution-data-child-container{display:flex;height:100%;width:100%;flex-direction:column;overflow-y:auto}.solution-data-editor-container{height:100%}.solution-data-child-container-collapsed{display:flex;height:100%;flex-direction:column;overflow:auto;width:50px}.inputBottomSeparation{margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1.5rem}.json-editor{margin:1rem;width:auto;width:-webkit-fill-available -moz-available}.collapse-btn{padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:0px}.org-vars{padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:0px}.sol-vars{padding-top:0px;padding-bottom:0px;padding-left:1rem;padding-right:1rem;min-height:45%}.padding-1{padding:1rem}.light{background-color:#F4F4F4}";const u=class{constructor(e){t(this,e),this.solutionVariableSelected=s(this,"solutionVariableSelected",7)}get el(){return e(this)}value="";locale;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}valueWatchHandler(){this._solutionVariables=JSON.parse(this.value)}componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"a9354a1d3b3d91b9b9522bec945726e106487b78"},i("div",{key:"d38d0151ba9f8421e3ec863ce90b234964cb7f21"},i("h4",{key:"3d10129c3327e803e38b4fc21976764f9ac91693",class:"org-var-header"},this._translations.solVariables)),i("div",{key:"8b79cef63c5b8f5f66b0e11a4b94021f6a025fc3",class:"container-border"},i("calcite-tree",{key:"7f69edec6e35a65e45b461d69e92d0e163563bee",id:"variable-label"},this._renderHierarchy(this._solutionVariables))))}_solutionVariables=[];_translations;solutionVariableSelected;_renderHierarchy(t){return t.map((t=>t.dependencies&&t.dependencies.length>0?i("calcite-tree-item",{onClick:t=>this._toggleExpand(t)},i("solution-item-icon",{type:t.type}),i("span",{class:"icon-text",title:t.title},t.title),i("calcite-tree",{slot:"children"},this._renderHierarchy(t.dependencies))):i("calcite-tree-item",{onClick:()=>this._treeItemSelected(t.id,t.value)},t.title)))}_treeItemSelected(t,e){this.solutionVariableSelected.emit({itemId:t,value:e})}_toggleExpand(t){const e=t?.target?.closest("calcite-tree-item");e&&(e.expanded=!e.expanded)}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"],value:["valueWatchHandler"]}}};u.style=":host{display:block}.container-border{overflow-y:hidden}.org-var-header{margin-top:1rem;margin-bottom:1rem;margin-left:0px;margin-right:0px}.icon-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}";export{d as json_editor,r as solution_item_details,h as solution_item_sharing,b as solution_organization_variables,p as solution_resource_item,f as solution_template_data,u as solution_variables}
6
+ import{r as t,g as e,h as i,H as a,c as s}from"./p-8c40bdec.js";import{g as n}from"./p-a23de3b0.js";import{s as c}from"./p-1309ac58.js";import{d as o}from"./p-80cb7c73.js";import{E as l}from"./p-4f236b5d.js";import"./p-6a68306c.js";import"./p-d4056c1c.js";import"./p-fa639501.js";import"./p-570b13d9.js";import"./p-0668e30d.js";const d=class{constructor(e){t(this,e)}get el(){return e(this)}hasChanges=!1;hasErrors=!1;instanceid="";locale;value="";async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}componentDidLoad(){const t=document.getElementById(`${this.instanceid}-container`);if(t){this._editor=monaco.editor.create(t,{value:this.value,language:"json",theme:"vs",minimap:{enabled:!1},automaticLayout:!0,scrollBeyondLastLine:!1}),this._currentModel=this._editor.getModel(),this._contentChanged=this._currentModel.onDidChangeContent(this._onEditorChange.bind(this));const e=monaco.editor.setModelMarkers,i=this;monaco.editor.setModelMarkers=function(t,a,s){t.id===i._currentModel.id&&(i._flagEditorHasErrors(s.length>0),i.hasErrors||(i._flagEditorHasChanges(i._currentModel?.canUndo()),i._currentModel?.canUndo()&&i._flagEditorContentChanged()),document.getElementById(`${i.instanceid}-errorFlag`).style.visibility=i.hasErrors?"visible":"hidden"),e.call(monaco.editor,t,a,s)},this._diffEditor=monaco.editor.createDiffEditor(document.getElementById(`${this.instanceid}-diff-container`),{automaticLayout:!0}),this._setDiffModel(),this._loaded=!0,this._toggleUndoRedo()}}async componentWillLoad(){this._initValueObserver(),await this._getTranslations()}render(){return i(a,{key:"ba7c8a397da913d86f5d294cdfbb5ec1b84d89de"},i("div",{key:"bc5c6d1ee443b2096cc44d0b66850d4ebe8462da",id:`${this.instanceid}-editor-container`,class:"editor-container padding-right"},i("div",{key:"dbaf682cba354ce7eef21b03a71832fd39911332",class:"editor-controls"},i("div",{key:"e454e1dd36aa620abf2ffb7877bebb9adc70ff15",class:"editor-buttons"},i("calcite-icon",{key:"1de67e151c6e65b004a431d89dc785ca286a8e11",id:`${this.instanceid}-errorFlag`,icon:"exclamation-mark-triangle",title:this._translations.errorFlag,scale:"s",class:"edit-error-flag"}),i("calcite-button",{key:"33de20955d29287a3ec981e7650562a036343e3a",id:`${this.instanceid}-undo`,color:"blue",appearance:"solid",title:this._translations.undo,onClick:()=>this._undo(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"9bed02f1e8a367ad2ed764747f044a4ce27de52b",icon:"undo",scale:"s"})),i("calcite-button",{key:"07562443286c4eeec28577a7cff0401e8cea0ba8",id:`${this.instanceid}-redo`,color:"blue",appearance:"solid",title:this._translations.redo,onClick:()=>this._redo(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"5f24902a66eae644d0d358a4826a98d45e905493",icon:"redo",scale:"s"})),i("calcite-button",{key:"02f4f3f8ab93e5f1146176ec3699e2a6d25ecbeb",id:`${this.instanceid}-diff`,color:"blue",appearance:"solid",title:this._translations.diff,onClick:()=>this._toggleEditor(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"0bcd20d28e9ec34f1736a2888d78bfcd9cb82a4d",icon:"compare",scale:"s"})),i("calcite-button",{key:"cf3a7672ebd3ebef00123096ec304456b8f102fc",id:`${this.instanceid}-search`,appearance:"outline",color:"blue",title:this._translations.search,onClick:()=>this._search(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"36aac5e89ebf593d8d1981d7b8f6267fbbadfd24",icon:"search",scale:"s"})),i("calcite-button",{key:"cc981ff7580acfa3a3395c4ce7a96b3022bbbb4b",id:`${this.instanceid}-reset`,color:"blue",appearance:"solid",disabled:!0,title:this._translations.cancelEdits,onClick:()=>this._reset(),scale:"s",class:"edit-button"},i("calcite-icon",{key:"3c4fc1da749f4b4f64d814fcd58dc035634f6b1b",icon:"reset",scale:"s"})))),i("div",{key:"6c33ec4851d804dac7fd9762e3c8c7e416a27cf4",class:"edit-parent"},i("div",{key:"a6e9721127bbd43f9974af65e0899489370e1868",id:`${this.instanceid}-container`,class:"json-edit-container"}),i("div",{key:"c1d1ea305c0e451c24beddb8ac3f8e85a3fca088",id:`${this.instanceid}-diff-container`,class:"json-edit-container display-none"}))))}_cancelEditsBtnHandler;_contentChanged;_currentModel;_diffEditor;_editor;_loaded=!1;_searchBtnHandler;_translations;_useDiffEditor=!1;_valueObserver;async getEditorContents(){return new Promise(((t,e)=>{try{t(this._currentModel.getValue())}catch(t){e(t)}}))}async prepareForDeletion(){this._searchBtnHandler?.removeEventListener("click",this._search),this._cancelEditsBtnHandler?.removeEventListener("click",this._reset),this._valueObserver?.disconnect(),this._contentChanged?.dispose(),this._editor?.dispose()}async replaceCurrentSelection(t){const e=this._editor.getSelection();this._editor.executeEdits("",[{range:e,text:t}])}async reset(){return new Promise(((t,e)=>{try{this._reset(),t({success:!0})}catch(t){e(t)}}))}_disableButton(t){document.getElementById(t)?.setAttribute("disabled","")}_enableButton(t){document.getElementById(t)?.removeAttribute("disabled")}_flagEditorContentChanged(){window.dispatchEvent(new CustomEvent("solutionEditorContentChanged",{detail:{id:this.instanceid,contents:this._currentModel.getValue()},bubbles:!0,cancelable:!1,composed:!0}))}_flagEditorHasChanges(t){this.hasChanges!==t&&(window.dispatchEvent(new CustomEvent("solutionEditorHasChanges",{detail:t,bubbles:!0,cancelable:!1,composed:!0})),this.hasChanges=t)}_flagEditorHasErrors(t){this.hasErrors!==t&&(window.dispatchEvent(new CustomEvent("solutionEditorHasErrors",{detail:t,bubbles:!0,cancelable:!1,composed:!0})),this.hasErrors=t)}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}_initValueObserver(){this._valueObserver=new MutationObserver((t=>{t.forEach((t=>{"attributes"===t.type&&"value"===t.attributeName&&t.target[t.attributeName]!==t.oldValue&&this._loaded&&this._currentModel.setValue(this.value)}))})),this._valueObserver.observe(this.el,{attributes:!0,attributeOldValue:!0})}_onEditorChange(){this._toggleUndoRedo()}_redo(){this._currentModel?.canRedo()&&(this._currentModel.redo(),this._toggleUndoRedo())}_reset(){this._currentModel.setValue(this.value),this._toggleUndoRedo()}_search(){this._editor.trigger("toggleFind","actions.find")}_setDiffModel(){this._diffEditor&&this._diffEditor.setModel({original:monaco.editor.createModel(this.value,"json"),modified:this._editor.getModel()})}_toggleEditor(){this._useDiffEditor=!this._useDiffEditor;let t=document.getElementById(`${this.instanceid}-diff-container`),e=document.getElementById(`${this.instanceid}-container`);this._useDiffEditor?(this._setDiffModel(),t.classList.remove("display-none"),e.classList.add("display-none")):(t.classList.add("display-none"),e.classList.remove("display-none"))}_toggleUndoRedo(){this._currentModel?.canUndo()?this._enableButton(`${this.instanceid}-undo`):this._disableButton(`${this.instanceid}-undo`),this._currentModel?.canRedo()?this._enableButton(`${this.instanceid}-redo`):this._disableButton(`${this.instanceid}-redo`),this._currentModel?.canUndo()||this._currentModel?.canRedo()?this._enableButton(`${this.instanceid}-reset`):this._disableButton(`${this.instanceid}-reset`)}_undo(){this._currentModel?.canUndo()&&(this._currentModel.undo(),this._toggleUndoRedo())}static get assetsDirs(){return["assets"]}static get watchers(){return{locale:["localeWatchHandler"]}}};d.style=":host{display:block}.editor-container{position:relative;height:100%}.editor-controls{height:2.75rem;padding-right:0.5rem;background-color:#F4F4F4}.editor-buttons{float:right}html[dir=rtl] .editor-buttons{float:left}.edit-error-flag{padding-top:0.5rem;color:red;visibility:hidden}.edit-button{padding-inline-start:0.5rem}.editor-text{width:100%;overflow-y:auto;background-color:#FFFFFF}.edit-width{width:100%}.edit-parent{box-sizing:border-box;width:100%;height:calc(100% - 46px)}.json-edit-container{height:100%;width:100%;border:1px #808080 solid}.padding-right{padding-inline-end:0.125rem}.btn{margin-bottom:1rem;display:flex;align-content:center;height:25px;width:120px}.select-ctrl{margin-bottom:1rem}.all-edits{margin-top:4rem}.floating-title{font-size:2rem;z-index:100;position:absolute;left:0.5rem;pointer-events:none}.floating-title-button{pointer-events:auto}.json-editor-position1{position:absolute;left:0px;top:0px;margin:0px;height:100%;width:100%;overflow:hidden;padding:0px;max-height:100% !important}.json-editor-position2a{position:absolute;left:0px;top:0px;margin:0px;height:100%;width:50%;overflow:hidden;padding:0px;max-height:100% !important}.json-editor-position2b{position:absolute;right:0px;top:0px;margin:0px;height:100%;width:50%;overflow:hidden;padding:0px;max-height:100% !important}";const r=class{constructor(e){t(this,e)}get el(){return e(this)}itemId="";locale;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}async componentWillLoad(){return this._getTranslations()}async componentWillRender(){return this.itemEdit=c.getItemInfo(this.itemId),this.itemEdit&&(this.itemDetails=this.itemEdit.item,this.itemType=this.itemDetails.type),Promise.resolve()}render(){return i(a,{key:"032ff1aeb8c703b36ff4746508e0b6b35ad29516"},i("div",{key:"a6ef24150d812c790a9762c7e6dcaefcfacc2c36",class:"parent-container"},i("div",{key:"e03091a4557a0e15af35782350aec472c94a0151",class:"inputBottomSeparation"},i("calcite-input",{key:"e45e06e9e140cc1bcd070faef6efeccd773ce7cc",id:"item-title",value:this.itemDetails.title})),i("div",{key:"9f62241ee3f46730aa48f40c5c9e55ea823c2e6f",class:"inputBottomSeparation"},i("input",{key:"1c90efe7904fffbccb189032069396cf21e21228",accept:".jpg,.gif,.png,image/jpg,image/gif,image/png",class:"display-none",onChange:t=>this._updateThumbnail(t),ref:t=>this.browseForThumbnail=t,type:"file"}),i("button",{key:"fbc1a6f8c40ac4ba7840bf80d16b4039d2bbb5a7",class:"font-size--3 btn-link inline-block trailer-quarter",onClick:()=>this._getThumbnail()},i("svg",{key:"1d4eacbc6445262ffa9bd9fe3d407a8a4560dd36",class:"icon-inline icon-inline--on-left",height:"16",viewBox:"0 0 16 16",width:"16"},i("path",{key:"58eaaf7e259d7ef37ae352874488fce873a416b9",d:"M14.792 2.666l-1.414-1.413a.965.965 0 0 0-1.385-.03l-1.444 1.444-8.763 8.72L.03 15.481a.371.371 0 0 0 .488.488l4.096-1.756 8.763-8.72-.001-.001.002.002 1.443-1.444a.965.965 0 0 0-.03-1.385zM1.569 14.431l.554-1.293.74.739zm2.338-.924l-1.414-1.414 7.963-7.92 1.414 1.415zm8.67-8.626l-1.413-1.414 1.29-1.29a.306.306 0 0 1 .433 0l.981.98a.306.306 0 0 1 0 .433z"})),this._translations.editThumbnail),i("div",{key:"a1d50881d34eddd023e0a9b677575a7573df583a",class:"flex"},i("div",{key:"e31f5d4cdaaee8765cc982ba9adda88df977e803",class:"img-container",ref:t=>this.thumbnailContainer=t},i("img",{key:"c2d9b5e31e25b1bc139e1c119042044fdd8b31dd",class:"scale-down",height:"133",id:"item-thumbnail",ref:t=>this.thumbnail=t,width:"200"})),i("div",{key:"eaa96a675562d8969124ba3169e46d4fe9d180cb",class:"snippet-count-container"},i("calcite-input",{key:"47d6b25a65fbe60f38668710b1eb14129c4aa6f2",id:"item-snippet",maxLength:250,type:"textarea",value:this.itemDetails.snippet}),i("label",{key:"8267140b46c94425eda185020c76307e70c33684",class:"font-size--3",id:"item-snippet-count",ref:t=>this.itemSnippetCount=t})))),i("calcite-label",{key:"70ffbe01451016a0016d044e2f3e4d1e41722cb0"},this._translations.description,i("label",{key:"f7c014575c2a6964a45fad059646d79ebadf5e18",id:"item-description-label"},i("calcite-input",{key:"34d78b42697be944d413102975aff3d31498abba",id:"item-description",type:"textarea",value:this.itemDetails.description}))),i("calcite-label",{key:"2d51c7a3b709b41e5adb0f73756a9528f86c20a5"},this._translations.tags,i("label",{key:"ea9ddfa6662d7ab8eb92301c59b6fd5876d7d59b",id:"item-tags-label"},i("calcite-input",{key:"aec1f0ee4408d4cb687bb31b313cb47b58979733",id:"item-tags",value:(this.itemDetails.tags&&Array.isArray(this.itemDetails.tags)?this.itemDetails.tags:[this.itemDetails.tags]).join(",")}))),"Group"!==this.itemType?i("calcite-label",null,this._translations.credits,i("label",{id:"item-credits-label"},i("calcite-input",{id:"item-credits",value:this.itemDetails.accessInformation}))):null,"Group"!==this.itemType?i("calcite-label",null,i("label",{id:"item-terms-label"},this._translations.termsOfUse,i("calcite-input",{id:"item-terms",type:"textarea",value:this.itemDetails.licenseInfo}))):null))}componentDidRender(){this._loadThumb()}browseForThumbnail;itemDetails={accessInformation:"",description:"",licenseInfo:"",snippet:"",tags:[],title:""};itemEdit;itemType;_translations;itemSnippetCount;thumbnail;thumbnailContainer;inputReceivedHandler(t){switch(t.target.id){case"item-title":this.itemDetails.title=t.target.value,this._updateStore();break;case"item-snippet":t.target.value.length>250&&(t.target.value=t.target.value.substring(0,250)),this.itemDetails.snippet=t.target.value,this._updateLengthLabel(this.itemDetails.snippet),this._updateStore();break;case"item-description":this.itemDetails.description=t.target.value,this._updateStore();break;case"item-tags":this.itemDetails.tags=t.target.value,this._updateStore();break;case"item-credits":this.itemDetails.accessInformation=t.target.value,this._updateStore();break;case"item-terms":this.itemDetails.licenseInfo=t.target.value,this._updateStore()}}_getThumbnail(){this.browseForThumbnail.click()}_loadThumb(){this.thumbnail&&this.itemEdit?.thumbnail?(this.thumbnail.src=URL.createObjectURL(this.itemEdit.thumbnail),this.thumbnailContainer.classList.remove("empty-box"),this.thumbnail.classList.remove("display-none")):(this.thumbnailContainer.classList.add("empty-box"),this.thumbnail.classList.add("display-none"))}_updateLengthLabel(t){this.itemSnippetCount.innerText=this._translations.snippetCountPattern.replace("{{n}}",t.length.toString())}_updateStore(){this.itemEdit=c.getItemInfo(this.itemId),this.itemEdit.item=this.itemDetails,c.setItemInfo(this.itemEdit)}_updateThumbnail(t){const e=t.target.files;e&&e[0]&&this.thumbnail&&(this.thumbnail.src=URL.createObjectURL(e[0]),this.itemEdit=c.getItemInfo(this.itemId),this.itemEdit.thumbnail=e[0],c.replaceItemThumbnail(this.itemEdit))}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"]}}};r.style=".inputBottomSeparation{margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1.5rem}.icon-inline--on-left,.icon-inline--on-right{display:inline;vertical-align:middle;margin-inline-end:0.375rem;fill:#0079c1}.scale-down{-o-object-fit:scale-down;object-fit:scale-down}.img-container{display:inline;margin-inline-end:1rem;max-width:363px}.summary-count-container{display:inline;flex-grow:1;margin-inline-start:0.75rem}.snippet-count-container{width:calc(100vw - 363px)}.parent-container{max-width:100%;padding:1rem}label{position:relative;margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1.5rem;display:block;min-width:-moz-min-content;min-width:min-content}";const h=class{constructor(e){t(this,e)}get el(){return e(this)}groupId="";locale;itemIdWatchHandler(){const t=c.getItemInfo(this.groupId);this.sharing=t.groupDetails}async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}async componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"eca66b743e748d9f915c6d356ea84075ab21709a"},i("div",{key:"b0765e14cc9de5a81afa5d20bc41e7f78913a37e",class:"container-border"},i("calcite-label",{key:"36cbf3b48a2641bcb2107e61609c2ec6c9f18991"},this._translations.groupInfo),this._renderItems(this.sharing)))}_translations;sharing=[];async getShareInfo(){return this.sharing}_renderItems(t){return t&&t.length>0?t.map((t=>i("calcite-label",{layout:"inline"},i("calcite-switch",{checked:t.shareItem,id:t.id,name:"setting",onCalciteSwitchChange:t=>this._updateItem(t),scale:"m",value:"enabled"}),i("solution-item-icon",{type:t.type,typeKeywords:t.typeKeywords}),i("span",{class:"icon-text",title:t.title},t.title)))):null}_updateItem(t){const e=t.target.id;this.sharing=this.sharing.map((i=>{if(i.id===e){i.shareItem=t.target.checked;const a=c.getItemInfo(e);if(i.shareItem)a.groups?a.groups.indexOf(this.groupId)<0&&a.groups.push(this.groupId):a.groups=[this.groupId];else if(a.groups){const t=a.groups.indexOf(this.groupId);t>-1&&a.groups.splice(t,1)}c.setItemInfo(a)}return i}))}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{groupId:["itemIdWatchHandler"],locale:["localeWatchHandler"]}}};h.style=":host{display:block}.container-border{padding:1rem}.icon-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}";const b=class{constructor(e){t(this,e),this.organizationVariableSelected=s(this,"organizationVariableSelected",7)}get el(){return e(this)}locale;value="";async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}valueWatchHandler(){this._organizationVariables=JSON.parse(this.value)}async componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"4d1a39b53287d445a1fc66cd5088a7bc60516ab6"},i("div",{key:"7a40ad712fe1af01e92701d128f65b0590aa15bc"},i("h4",{key:"7517fc56b5b0128ee102dc3f57e334501befe14f",class:"org-var-header"},this._translations.orgVariables)),i("div",{key:"d48cbc3ffb24ba54ded2b24c7c518ecf8114cd55",class:"container-border"},i("calcite-tree",{key:"383124c0ae3d646dc9ee857109051e7a151dbe62",id:"variable-label"},this._renderHierarchy(this._organizationVariables))))}_organizationVariables=[];_translations;organizationVariableSelected;_renderHierarchy(t){return t.map((t=>i("calcite-tree-item",{onClick:()=>this._treeItemSelected(t.id,t.value)},t.title)))}_treeItemSelected(t,e){this.organizationVariableSelected.emit({itemId:t,value:e})}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"],value:["valueWatchHandler"]}}};b.style=":host{display:block}.container-border{overflow-y:auto}.org-var-header{margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1rem}";const p=class{constructor(e){t(this,e)}get el(){return e(this)}authentication;itemId="";locale;itemIdWatchHandler(){const t=c.getItemInfo(this.itemId);this.resourceFilePaths=t.resourceFilePaths,this.resources=t.resources.map((t=>t.substring(t.lastIndexOf("/")+1)))}async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}componentWillLoad(){return this._getTranslations()}render(){const t=this._hasValidResources();return i(a,{key:"36017a54e5f8fafda593af2b727f1fbda80c7455"},i("div",{key:"eb9f53c9b4161c09e0b00d9a4d90a814d944819c",class:"resource-item"},i("div",{key:"504dfa5fb623ed27a0829f60ebbf5de17b6d467f",class:"margin-bottom-1"},i("calcite-button",{key:"e578443e1ef409917c5946c77e660c04d273cb6c",appearance:"solid",class:"resource-button",color:"blue",onClick:()=>this._addNewResource()},this._translations.addResource),i("calcite-button",{key:"e4c11326d7c5d96de1d0983eb0beb3cf726177c8",appearance:"solid",color:"blue",disabled:!t,onClick:()=>this._downloadAll()},this._translations.downloadAll)),i("div",{key:"3617bf40ac8b01d70b523642757a624c977ea491",class:"resources-container",style:{display:t?"inherit":"none"}},this._renderResourceList())))}resourceFilePaths=[];resources=[];_translations;_removedResources={};_renderResourceList(){return i("calcite-value-list",{multiple:!0},this.resourceFilePaths.reduce(((t,e)=>(e.type!==l.Thumbnail&&t.push(this._renderResource(e)),t)),[]))}_renderResource(t){const e=t.updateType===o.Remove;return i("calcite-value-list-item",{class:e?"disabled":"",label:t.folder?t.folder+"/"+t.filename:t.filename,nonInteractive:!0,value:t.url},i("calcite-action-group",{"expand-disabled":"true",layout:"horizontal",slot:"actions-end"},i("calcite-action",{disabled:e,icon:"download",label:this._translations.download,onClick:()=>this._download(t.url,t.filename),scale:"m",text:this._translations.download,title:this._translations.download}),i("calcite-action",{disabled:e,icon:"upload-to",label:this._translations.update,onClick:()=>this._upload(t),scale:"m",text:this._translations.update,title:this._translations.update}),i("calcite-action",{disabled:e,icon:"trash",label:this._translations.delete,onClick:()=>this._delete(t),scale:"m",text:this._translations.delete,title:this._translations.delete}),e?i("calcite-action",{icon:"reset",label:this._translations.reset,onClick:()=>this._reset(t.filename),scale:"m",text:this._translations.reset,title:this._translations.reset}):i("div",{class:"display-none"})))}_delete(t){t.updateType=o.Remove,this.resourceFilePaths=[...this.resourceFilePaths],this._updateStore()}_reset(t){this.resourceFilePaths=this.resources.some((e=>e===t))?this.resourceFilePaths.map((e=>(e.filename===t&&(e.updateType=o.None),e))):this.resourceFilePaths.map((e=>(e.filename===t&&(e.updateType=o.Add),e))),this._updateStore()}_downloadAll(){this.resourceFilePaths.forEach((t=>{this._download(t.url,t.filename)}))}_download(t,e){t.startsWith("blob")?this.downloadFile(t,e):this.fetchAndDownload(`${t}?token=${this.authentication.token}`,e)}downloadFile(t,e){const i=document.createElement("a");i.href=t,i.download=e,i.target="_blank",i.click()}_hasValidResources(){return this.resourceFilePaths.some((t=>t.url.indexOf("_info_thumbnail")<0))}async fetchAndDownload(t,e){const i=await fetch(t),a=await i.blob(),s=URL.createObjectURL(a);this.downloadFile(s,e)}_upload(t){const e=document.createElement("input");e.classList.add("display-none"),e.onchange=this._updateResource.bind(this,t),e.type="file",e.click()}_addNewResource(){const t=document.createElement("input");t.classList.add("display-none"),t.onchange=this._add.bind(this),t.type="file",t.click()}_updateResource(t,e){const i=e.target.files;i&&i[0]&&(t.blob=i[0],t.updateType=o.Update,this._updateStore())}_add(t){const e=t.target.files;if(e&&e[0]){const t=URL.createObjectURL(e[0]),i=e[0].name;this.resourceFilePaths.some((e=>e.filename===i&&e.url===t))||(this.resourceFilePaths=[...this.resourceFilePaths,{url:t,type:l.Data,folder:void 0,filename:i,blob:e[0],updateType:o.Add}],this._updateStore())}}_updateStore(){const t=c.getItemInfo(this.itemId);t.resourceFilePaths=this.resourceFilePaths,c.setItemInfo(t)}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{itemId:["itemIdWatchHandler"],locale:["localeWatchHandler"]}}};p.style=":host{display:block}.resource-item{padding:1rem}.resource-button{margin-inline-end:1rem}.resource-progress{padding-top:1rem}.resources-container{border:1px #808080 solid}.margin-bottom-1{margin-bottom:1rem}";const f=class{get el(){return e(this)}instanceid="";itemId="";itemIdWatchHandler(){this._initializing=!0,this.value=JSON.stringify("data"===this.instanceid?c.getItemInfo(this.itemId).data:c.getItemInfo(this.itemId).properties,null,2)}locale;organizationVariables="";solutionVariables="";varsOpen=!0;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}constructor(e){t(this,e),window.addEventListener("solutionEditorContentChanged",(t=>{if(this.itemId){const{id:e,contents:i}=t.detail,[a,s]=e.split("|");if(a==this.itemId&&s===this.instanceid){if(!this._initializing&&i.length>0){const t=c.getItemInfo(a);"data"===s?t.data=JSON.parse(i):t.properties=JSON.parse(i),c.setItemInfo(t)}this._initializing=!1}}}))}componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"db99cf57229d7d8b9fe6315e180d95de0b20fc8d"},i("div",{key:"83473f420d1417c85ebb4119be9f359cab878c54",class:"solution-data-container"},i("calcite-shell",{key:"013754ef962c2e5c112f6a8cc6c5d1b8e768078e",class:"light var-container",dir:"ltr"},i("calcite-panel",{key:"11ab2a07fe4af542d8cefc1c131246deef43dd9a",class:"json-editor"},i("div",{key:"ba0460977eb0375acaf5b11ce951986a08ece39b",class:"solution-data-child-container calcite-match-height"},i("json-editor",{key:"53251c1583aa7e8cf2a4e9a1f22e4c72430d3928",class:"solution-data-editor-container",instanceid:this.itemId+"|"+this.instanceid,locale:this.locale,value:this.value}))),i("calcite-shell-panel",{key:"30c47797a35ff7228c4318a5633aec57de05b8cf","height-scale":"l",position:"end",slot:"contextual-panel","width-scale":"xs"},i("div",{key:"028b16654835744f0735b880ca85a3d174963414",class:this.varsOpen?"solution-data-child-container":"solution-data-child-container-collapsed"},i("calcite-button",{key:"bb5049611e778b970454544851a625ccef47d23a",appearance:"transparent",class:"collapse-btn","icon-start":this.varsOpen?"chevrons-right":"chevrons-left",id:"collapse-vars",onClick:()=>this._toggleVars(),scale:"s",title:this.varsOpen?this._translations.collapse:this._translations.expand}),i("div",{key:"c2a30a7c27db181e0dfe0e201d9d3b2742247080",class:this.varsOpen?"org-vars":"org-vars display-none",id:"orgVars"},i("solution-organization-variables",{key:"178c4301c8558c4fe7114c8f6cf5bc0df10883a0",locale:this.locale,value:this.organizationVariables})),i("div",{key:"f85375bac946cff856b6915f340bf926498265ea",class:this.varsOpen?"sol-vars":"sol-vars display-none",id:"solVars"},i("solution-variables",{key:"166d0752746994bc4aebd4e41660f8a2d2c678ea",locale:this.locale,value:this.solutionVariables})))))))}_translations;value="";_initializing=!1;_toggleVars(){this.varsOpen=!this.varsOpen}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{itemId:["itemIdWatchHandler"],locale:["localeWatchHandler"]}}};f.style=":host{display:flexbox}.solution-data-container{position:absolute;height:-moz-available;height:calc(100% - 48px);height:-webkit-fill-available;height:stretch;width:-moz-available;width:100%;width:-webkit-fill-available;width:stretch}.solution-data-child-container{display:flex;height:100%;width:100%;flex-direction:column;overflow-y:auto}.solution-data-editor-container{height:100%}.solution-data-child-container-collapsed{display:flex;height:100%;flex-direction:column;overflow:auto;width:50px}.inputBottomSeparation{margin-left:0px;margin-right:0px;margin-top:0px;margin-bottom:1.5rem}.json-editor{margin:1rem;width:auto;width:-webkit-fill-available -moz-available}.collapse-btn{padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:0px}.org-vars{padding-left:1rem;padding-right:1rem;padding-top:1rem;padding-bottom:0px}.sol-vars{padding-top:0px;padding-bottom:0px;padding-left:1rem;padding-right:1rem;min-height:45%}.padding-1{padding:1rem}.light{background-color:#F4F4F4}";const u=class{constructor(e){t(this,e),this.solutionVariableSelected=s(this,"solutionVariableSelected",7)}get el(){return e(this)}value="";locale;async localeWatchHandler(){this.el.lang=this.locale,await this._getTranslations()}valueWatchHandler(){this._solutionVariables=JSON.parse(this.value)}componentWillLoad(){return this._getTranslations()}render(){return i(a,{key:"a9354a1d3b3d91b9b9522bec945726e106487b78"},i("div",{key:"d38d0151ba9f8421e3ec863ce90b234964cb7f21"},i("h4",{key:"3d10129c3327e803e38b4fc21976764f9ac91693",class:"org-var-header"},this._translations.solVariables)),i("div",{key:"8b79cef63c5b8f5f66b0e11a4b94021f6a025fc3",class:"container-border"},i("calcite-tree",{key:"7f69edec6e35a65e45b461d69e92d0e163563bee",id:"variable-label"},this._renderHierarchy(this._solutionVariables))))}_solutionVariables=[];_translations;solutionVariableSelected;_renderHierarchy(t){return t.map((t=>t.dependencies&&t.dependencies.length>0?i("calcite-tree-item",{onClick:t=>this._toggleExpand(t)},i("solution-item-icon",{type:t.type}),i("span",{class:"icon-text",title:t.title},t.title),i("calcite-tree",{slot:"children"},this._renderHierarchy(t.dependencies))):i("calcite-tree-item",{onClick:()=>this._treeItemSelected(t.id,t.value)},t.title)))}_treeItemSelected(t,e){this.solutionVariableSelected.emit({itemId:t,value:e})}_toggleExpand(t){const e=t?.target?.closest("calcite-tree-item");e&&(e.expanded=!e.expanded)}async _getTranslations(){const t=await n(this.el);this._translations=t[0]}static get watchers(){return{locale:["localeWatchHandler"],value:["valueWatchHandler"]}}};u.style=":host{display:block}.container-border{overflow-y:hidden}.org-var-header{margin-top:1rem;margin-bottom:1rem;margin-left:0px;margin-right:0px}.icon-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}";export{d as json_editor,r as solution_item_details,h as solution_item_sharing,b as solution_organization_variables,p as solution_resource_item,f as solution_template_data,u as solution_variables}
@@ -3,4 +3,4 @@
3
3
  * Licensed under the Apache License, Version 2.0
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
- import{r as t,c as a,h as n,H as s,g as e,F as i}from"./p-8c40bdec.js";import{d as r,e as o,f as l,s as c,h as p,E as u,l as g,j as d,c as h}from"./p-2937baee.js";import"./p-ea19f91b.js";import"./p-08ad0b7a.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-ac122d9e.js";import"./p-fa639501.js";const m="instant-apps-components__ckeditor-wrapper",v=class{constructor(n){t(this,n),this.isFocused=a(this,"isFocused",7),this.dataChanged=a(this,"dataChanged",7),this.value=void 0,this.editorInstance=void 0,this.config=void 0}updateValue(){this.value&&this.editorInstance.setData(this.value)}async componentDidLoad(){this.init()}componentDidUpdate(){this.editorInstance.setData(this.value)}render(){return n(s,{key:"26f62d5413e21916b77253476cf48f69682861d5"},n("div",{key:"45a9d7b859a21e49c81afdaa3bdd5074f1428cd5"}))}init(){this.applyStyles(),this.initEditor()}applyStyles(){if(document.getElementById(m))return;const t=document.createElement("style");t.id=m,t.innerHTML="\n .ck.ck-reset.ck-editor.ck-rounded-corners {\n margin-top: 10px !important;\n margin-left: 55px !important;\n }\n .ck-editor__editable {\n height: 70px !important;\n font-size: 0.875rem !important;\n line-height: \t1.375 !important;\n color: var(--calcite-color-text-1) !important;\n }\n\n .ck.ck-editor__editable_inline>:first-child,\n .ck.ck-editor__editable_inline>:last-child {\n --ck-spacing-large: 0.5rem !important;\n }\n\n .ck.ck-balloon-panel.ck-powered-by-balloon {\n --ck-z-modal: 700;\n z-index: 700;\n }\n\n .calcite-mode-dark .ck-editor__editable {\n color: var(--calcite-color-text-inverse) !important;\n }\n",document.head.prepend(t)}async initEditor(){const t=await this.createEditor();t&&(this.editorInstance=t,(this.value||""===this.value)&&t.setData(this.value),t.editing.view.document.on("change:isFocused",this.getEditorFocusedCallback(t)))}async createEditor(){try{let t;return t=this.config?await ClassicEditor.create(this.el,this.config):await ClassicEditor.create(this.el),this.editorInstance=t,Promise.resolve(t)}catch(t){return console.error(t),Promise.reject(null)}}getEditorFocusedCallback(t){return(a,n,s)=>{if(s)this.isFocused.emit();else{const a=t.getData();this.value!==a&&(this.value=a,this.dataChanged.emit(a))}}}get el(){return e(this)}static get watchers(){return{value:["updateValue"]}}};v.style=":host{display:block}";const _="instant-apps-language-translator-item",f={section:`${_}__section`,selected:`${_}__section--selected`,collapsed:`${_}__section--collapsed`,topRow:`${_}__top-row`,labelContainer:`${_}__label-container`,label:`${_}__label`,uiLocationPopoverContent:`${_}__ui-location-popover-content`,uiLocationItems:`${_}__ui-location-items`,uiLocationItem:`${_}__ui-location-item`,infoIcon:`${_}__info-icon`,infoButton:`${_}__info-button`,tip:`${_}__tip`,nestedInput:`${_}__nested-input`},b=class{constructor(n){t(this,n),this.translatorItemDataUpdated=a(this,"translatorItemDataUpdated",7),this.userInputs={},this.translatedInputs={},this.fieldName=void 0,this.translatedLanguageLabels=void 0,this.setting=void 0,this.userLocaleInputOnChangeCallback=void 0,this.translatedLocaleInputOnChangeCallback=void 0}get isTextEditor(){return this.setting.type===r.TextEditor}get calciteMode(){return o()?l.Dark:l.Light}get hasNestedContent(){var t;return!!(null===(t=this.setting)||void 0===t?void 0:t.content)}get tipID(){return`${this.fieldName}goTo`}componentDidLoad(){this.isTextEditor&&c.onChange("uiData",(()=>this.handleEditorCollapse()))}render(){var t;return"content"in this.setting&&(null===(t=this.setting.content)||void 0===t?void 0:t.every((t=>{var a;return 0===(null===(a=null==t?void 0:t.content)||void 0===a?void 0:a.length)})))?n(i,null):n(s,{class:this.calciteMode},this.renderBase(),this.renderPopover())}renderBase(){return n("div",{class:_},this.renderUserLocaleSection(),this.renderTranslatedLanguageSection())}renderPopover(){const t=this.getTip();return n("calcite-popover",{referenceElement:this.tipID,label:"","auto-close":"true",placement:"trailing",closable:!0},n("span",{class:f.uiLocationPopoverContent},n("span",{class:f.uiLocationItems},this.getUILocation()),t?n("span",{class:f.tip},t):null))}renderUserLocaleSection(){const t=this.getUIDataItem(),a=null==t?void 0:t.userLocaleData,s=null==a?void 0:a.value,e=this.setting.id;return n("div",{class:`${f.section}${(null==t?void 0:t.selected)?` ${f.selected}`:""}`},this.renderItemHeader(p.User,null==a?void 0:a.label,e),this.handleInputRender(p.User,s,e))}renderTranslatedLanguageSection(){var t,a;const s=this.getUIDataItem(),e=this.setting.id,i=c.get("currentLanguage"),r=c.get("portalItemResourceT9n"),o=null===(t=this.translatedLanguageLabels)||void 0===t?void 0:t[this.fieldName],l=null===(a=null==r?void 0:r[i])||void 0===a?void 0:a[e];return n("div",{class:`${f.section}${(null==s?void 0:s.selected)?` ${f.selected}`:""}`},this.renderItemHeader(p.Translation,o,e),this.handleInputRender(p.Translation,l,e))}handleInputRender(t,a,n){const s=this.getUIDataItem();return(null==s?void 0:s.expanded)?this.hasNestedContent?this.renderNestedInputs(t):this.renderInput(t,a,n):null}renderNestedInputs(t,a){const n=null!=a?a:this.setting,{content:s}=n;return null==s?void 0:s.map((a=>a.hasOwnProperty("content")?this.renderNestedInputs(t,a):this.renderNestedInput(t,a)))}renderNestedInput(t,a){var s;const e=c.get("currentLanguage"),i=c.get("portalItemResourceT9n"),r=null==a?void 0:a.id,o=null==i?void 0:i[e],l=null==o?void 0:o[r],{label:u,value:g,id:d}=a,h=t===p.Translation?null===(s=this.translatedLanguageLabels)||void 0===s?void 0:s[d]:u,m=t===p.User?g:l;return n("div",{class:f.nestedInput},this.renderItemHeader(t,h,r,a),this.renderInput(t,m,r,a))}renderItemHeader(t,a,s,e){const i=!this.hasNestedContent||!!e;return n("div",{class:f.topRow},this.renderItemHeaderLabel(t,a,e),i?this.renderCopyButton(t,s):null)}renderItemHeaderLabel(t,a,s){const e=t===p.User&&!s;return n("div",{class:f.labelContainer},s?null:this.renderExpandCollapseButton(),n("calcite-icon",{icon:this.getIcon(s),scale:"s"}),n("span",{class:f.label},a),e?this.renderInfoButton():null)}renderExpandCollapseButton(){const t=this.getUIDataItem(),a=(null==t?void 0:t.expanded)?u.Expanded:u.Collapsed;return n("calcite-action",{onClick:this.handleExpand.bind(this,t),icon:a,scale:"s",appearance:"transparent",text:""})}renderInfoButton(){return n("button",{id:this.tipID,class:f.infoButton},n("calcite-icon",{class:f.infoIcon,icon:u.Popover,scale:"s"}))}renderCopyButton(t,a){return n("calcite-action",{class:this.calciteMode,onClick:this.copySelection.bind(this,t,a),slot:"action",icon:u.Copy,appearance:"transparent",text:""})}renderInput(t,a,n,s){const e=null!=s?s:this.setting;return"string"===e.type||"textarea"===e.type?t===p.User?this.renderUserLocaleInput(a,n):this.renderTranslatedLanguageInput(a,n):this.renderTextEditor(a,t,n)}renderUserLocaleInput(t,a){return n("calcite-input",{ref:t=>this.userInputs[a]=t,key:a,id:a,class:l.Light,"data-field-name":this.fieldName,value:t,onFocus:this.handleSelection,onCalciteInputChange:this.handleUserInputChange.bind(this)})}renderTranslatedLanguageInput(t,a){return n("calcite-input",{ref:t=>this.translatedInputs[a]=t,key:a,id:a,class:l.Light,"data-field-name":this.fieldName,value:t,onFocus:this.handleSelection,onCalciteInputChange:this.handleTranslatedInputChange.bind(this)})}renderTextEditor(t,a,s){return n("instant-apps-ckeditor-wrapper",{id:s,ref:this.setEditor.bind(this,a),onDataChanged:this.handleTextEditorDataChange.bind(this,a),onIsFocused:this.handleSelection,value:null!=t?t:"","data-field-name":this.fieldName,config:{toolbar:[]}})}getUIDataItem(){if(g.uiData)return g.uiData.get(this.fieldName)}updateT9nStore(t,a){const n=c.get("currentLanguage"),s=d(n,{[t]:a});c.set("portalItemResourceT9n",s)}handleExpand(){const t=this.getUIDataItem();t.expanded=!t.expanded;const a=new Map(g.uiData);a.set(this.fieldName,t),c.set("uiData",a)}handleEditorCollapse(){var t,a;const n=c.get("uiData"),s=null==n?void 0:n.get(this.fieldName);if(!(null==s?void 0:s.expanded)&&(null===(t=this.userEditorWrapper)||void 0===t?void 0:t.editorInstance)&&(null===(a=this.translatedEditorWrapper)||void 0===a?void 0:a.editorInstance)){const{userEditorWrapper:t,translatedEditorWrapper:a}=this,n=t.editorInstance.getData();t.value=n;const s=a.editorInstance.getData();a.value=s,t.editorInstance.destroy(),a.editorInstance.destroy()}}handleSelection(t){const a=new Map(g.uiData),n=h();n.forEach((t=>{(null==a?void 0:a.get(t)).selected=!1})),n.forEach((n=>{const s=null==t?void 0:t.target;n===(null==s?void 0:s.getAttribute("data-field-name"))&&((null==a?void 0:a.get(n)).selected=!0)})),c.set("uiData",a)}getUILocation(){const t=this.getUIDataItem(),{uiLocation:a,userLocaleData:s}=t,{section:e,subsection:i}=a,r=[e.label,i.label,s.label].filter((t=>!!t));return r.map(((t,a)=>n("span",{class:f.uiLocationItem},n("span",null,t),a!==r.length-1?n("calcite-icon",{icon:"chevron-right",scale:"s"}):null)))}getTip(){const t=this.getUIDataItem(),{tip:a}=t;return a}copySelection(t,a){this.setting.type===r.TextEditor?this.copyTextEditorContent(t):this.copyCalciteInputContent(a,t)}copyTextEditorContent(t){var a,n;const s=t===p.User?null===(a=this.userEditorWrapper)||void 0===a?void 0:a.editorInstance:null===(n=this.translatedEditorWrapper)||void 0===n?void 0:n.editorInstance;setTimeout((()=>{this.selectContent(s),setTimeout((()=>this.selectContent(s)),50)}),50),this.copyContent(s)}selectContent(t){t.editing.view.focus();const{model:a}=t,n=a.createRangeIn(a.document.getRoot());a.change((t=>t.setSelection(n)))}copyContent(t){const a=t.getData(),n=document.createElement("div");n.contentEditable="true",n.innerHTML=a,document.body.appendChild(n);const s=document.createRange();s.selectNodeContents(n);const e=window.getSelection();null==e||e.removeAllRanges(),null==e||e.addRange(s),document.execCommand("copy"),document.body.removeChild(n)}copyCalciteInputContent(t,a){const n=a===p.User?this.userInputs[t]:this.translatedInputs[t];n&&(n.selectText(),navigator.clipboard.writeText(n.value))}setEditor(t,a){t===p.User?this.userEditorWrapper=a:this.translatedEditorWrapper=a}async handleUserInputChange(t){c.set("saving",!0);try{const a=t.target,n=a.id,s=a.value;this.getUIDataItem().userLocaleData.value=s,await this.userLocaleInputOnChangeCallback(n,s),c.set("saving",!1)}catch(t){c.set("saving",!1)}}async handleUserTextEditorChange(t){c.set("saving",!0);try{const a=t.detail,n=t.target.id;this.getUIDataItem().userLocaleData.value=a,await this.userLocaleInputOnChangeCallback(n,a),c.set("saving",!1)}catch(t){c.set("saving",!1)}}async handleTranslatedInputChange(t){c.set("saving",!0);try{const a=t.composedPath()[0],n=a.id;this.updateT9nStore(n,a.value);const{locale:s,resource:e}=this.getTranslatedLocaleCallbackData(),i=t.target.value;await this.translatedLocaleInputOnChangeCallback(n,i,s,e),setTimeout((()=>c.set("saving",!1)),1500),this.translatorItemDataUpdated.emit()}catch(t){console.error("Error writing to portal item resource: ",t),c.set("saving",!1)}}async handleTranslatedTextEditorChange(t){c.set("saving",!0);try{const a=t.target.id;this.updateT9nStore(a,t.detail);const{locale:n,resource:s}=this.getTranslatedLocaleCallbackData(),e=t.detail;await this.translatedLocaleInputOnChangeCallback(a,e,n,s),setTimeout((()=>c.set("saving",!1)),1500),this.translatorItemDataUpdated.emit()}catch(t){console.error("Error writing to portal item resource: ",t),c.set("saving",!1)}}handleTextEditorDataChange(t,a){t===p.User?this.handleUserTextEditorChange(a):this.handleTranslatedTextEditorChange(a)}getTranslatedLocaleCallbackData(){return{locale:c.get("currentLanguage"),resource:c.get("portalItemResource")}}getIcon(t){switch((null!=t?t:this.setting).stringType){case"title":return u.Title;case"subtitle":return u.Subtitle;case"text":return u.Text;case"button":return u.Button;case"string":return u.String;default:return u.SettingIndicator}}};b.style=".sc-instant-apps-language-translator-item-h{display:block}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item.sc-instant-apps-language-translator-item{display:flex}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item{padding:10px;border-bottom:1px solid var(--calcite-color-border-1);background-color:var(--calcite-color-foreground-2);width:49%}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item .instant-apps-language-translator-item__top-row.sc-instant-apps-language-translator-item{display:flex;align-items:center;justify-content:space-between}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item .instant-apps-language-translator-item__label-container.sc-instant-apps-language-translator-item{display:flex;align-items:center}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item .instant-apps-language-translator-item__label.sc-instant-apps-language-translator-item{display:inline-block;margin-left:10px;font-size:14px;font-weight:var(--calcite-font-weight-medium)}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item calcite-input.sc-instant-apps-language-translator-item{margin-top:10px;margin-left:55px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--last-item.sc-instant-apps-language-translator-item{border-bottom:none}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item{background-color:#f1faff}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item:first-child{margin-right:1%}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__ui-location-popover-content.sc-instant-apps-language-translator-item{display:inline-block;padding:10px;max-width:400px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__ui-location-items.sc-instant-apps-language-translator-item{display:flex}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__ui-location-item.sc-instant-apps-language-translator-item{display:flex;align-items:center;font-weight:var(--calcite-font-weight-medium);font-size:14px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__tip.sc-instant-apps-language-translator-item{display:inline-block;font-size:14px;line-height:22px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__info-icon.sc-instant-apps-language-translator-item{color:var(--calcite-color-brand)}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__info-button.sc-instant-apps-language-translator-item{border:0;background-color:transparent;cursor:pointer}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__nested-input.sc-instant-apps-language-translator-item{margin-left:60px;margin-top:8px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__nested-input.sc-instant-apps-language-translator-item calcite-input.sc-instant-apps-language-translator-item{margin-left:30px}.calcite-mode-dark.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item{background-color:#f1faff;background-color:var(--calcite-color-brand);color:var(--calcite-color-text-inverse)}.calcite-mode-dark.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item calcite-action.sc-instant-apps-language-translator-item{--calcite-ui-icon-color:var(--calcite-color-text-inverse)}.calcite-mode-dark.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item calcite-icon.sc-instant-apps-language-translator-item{color:var(--calcite-color-text-inverse)}.instant-apps-language-translator--last-item.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item{border-bottom:none}";const x="instant-apps-language-translator-search",k={base:x,input:`${x}__input`,suggestionList:`${x}__suggestion-list`,suggestionListItem:`${x}__suggestion-list-item`},y=class{constructor(n){t(this,n),this.suggestionSelected=a(this,"suggestionSelected",7),this.t9nPlaceholder=void 0,this.results=[]}render(){return n(s,{key:"80febf289e2bbfcf09636c84b5a5a83e80f377c0"},this.renderSearchInput(),this.renderSuggestions())}renderSearchInput(){return n("calcite-input",{ref:t=>this.searchInput=t,class:k.input,onCalciteInputInput:this.handleSearch.bind(this),type:"search",placeholder:this.t9nPlaceholder,icon:"search"})}renderSuggestions(){return this.results.length>0?this.renderSuggestionList():null}renderSuggestionList(){return n("ul",{class:k.suggestionList},this.results.map((t=>this.renderSuggestionListItem(t))))}renderSuggestionListItem(t){return n("li",{onClick:this.selectSuggestion.bind(this),class:k.suggestionListItem,"data-field-name":t.fieldName},t.userLocaleData.label)}handleSearch(t){var a,n;const s=null===(n=null===(a=t.target.value)||void 0===a?void 0:a.toLowerCase())||void 0===n?void 0:n.trim(),e=c.get("uiData"),i=h(),r=c.get("portalItemResourceT9n"),o=c.get("currentLanguage"),l=r[o],p=this.getSettingDataItems(i).filter(this.matchedResultsCallback(e,l,s,o));this.results=[...p.map((t=>Object.assign({fieldName:t},e.get(t))))]}matchedResultsCallback(t,a,n,s){return e=>{var i;const r=t.get(e),{label:o}=r.userLocaleData,{value:l}=r.userLocaleData,c=t.get("translatedLanguageLabels"),p=null===(i=null==c?void 0:c[s])||void 0===i?void 0:i[e],u=null==a?void 0:a[e],g=this.testUserInput(o,n),d=this.testUserInput(l,n),h=this.testUserInput(p,n),m=this.testUserInput(u,n);return g||d||h||m}}getSettingDataItems(t){return t.filter((t=>"locales"!==t&&"translatedLanguageLabels"!==t))}testUserInput(t,a){var n;return!!(null==t?void 0:t.trim())&&!!(null==a?void 0:a.trim())&&-1!==(null===(n=null==t?void 0:t.toLowerCase())||void 0===n?void 0:n.search(a))}selectSuggestion(t){const a=t.target.getAttribute("data-field-name");this.suggestionSelected.emit(a),this.resetSearchInput()}resetSearchInput(){this.searchInput.value="",this.results=[]}};y.style=".sc-instant-apps-language-translator-search-h{display:block;position:relative}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__input.sc-instant-apps-language-translator-search{width:235.5px}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list.sc-instant-apps-language-translator-search{position:absolute;margin:0;padding:0;width:100%;max-height:30vh;overflow:auto;border-left:none;background-color:var(--calcite-color-foreground-1);border:1px solid #c0c0c0;z-index:702}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list-item.sc-instant-apps-language-translator-search:first-child{border:none}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list-item.sc-instant-apps-language-translator-search{margin-top:0;padding:0.8em 1em;border-top:solid 1px rgba(110, 110, 110, 0.3);display:flex;flex-direction:column;cursor:pointer;word-break:break-word}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list-item.sc-instant-apps-language-translator-search:hover{background-color:var(--calcite-color-foreground-2)}";export{v as instant_apps_ckeditor_wrapper,b as instant_apps_language_translator_item,y as instant_apps_language_translator_search}
6
+ import{r as t,c as a,h as n,H as s,g as e,F as i}from"./p-8c40bdec.js";import{d as r,e as o,f as l,s as c,h as p,E as u,l as g,j as d,c as h}from"./p-3ea987a7.js";import"./p-1e364924.js";import"./p-a4bd7b09.js";import"./p-6a68306c.js";import"./p-d4056c1c.js";import"./p-af2c8aa9.js";import"./p-fa639501.js";const m="instant-apps-components__ckeditor-wrapper",v=class{constructor(n){t(this,n),this.isFocused=a(this,"isFocused",7),this.dataChanged=a(this,"dataChanged",7),this.value=void 0,this.editorInstance=void 0,this.config=void 0}updateValue(){this.value&&this.editorInstance.setData(this.value)}async componentDidLoad(){this.init()}componentDidUpdate(){this.editorInstance.setData(this.value)}render(){return n(s,{key:"26f62d5413e21916b77253476cf48f69682861d5"},n("div",{key:"45a9d7b859a21e49c81afdaa3bdd5074f1428cd5"}))}init(){this.applyStyles(),this.initEditor()}applyStyles(){if(document.getElementById(m))return;const t=document.createElement("style");t.id=m,t.innerHTML="\n .ck.ck-reset.ck-editor.ck-rounded-corners {\n margin-top: 10px !important;\n margin-left: 55px !important;\n }\n .ck-editor__editable {\n height: 70px !important;\n font-size: 0.875rem !important;\n line-height: \t1.375 !important;\n color: var(--calcite-color-text-1) !important;\n }\n\n .ck.ck-editor__editable_inline>:first-child,\n .ck.ck-editor__editable_inline>:last-child {\n --ck-spacing-large: 0.5rem !important;\n }\n\n .ck.ck-balloon-panel.ck-powered-by-balloon {\n --ck-z-modal: 700;\n z-index: 700;\n }\n\n .calcite-mode-dark .ck-editor__editable {\n color: var(--calcite-color-text-inverse) !important;\n }\n",document.head.prepend(t)}async initEditor(){const t=await this.createEditor();t&&(this.editorInstance=t,(this.value||""===this.value)&&t.setData(this.value),t.editing.view.document.on("change:isFocused",this.getEditorFocusedCallback(t)))}async createEditor(){try{let t;return t=this.config?await ClassicEditor.create(this.el,this.config):await ClassicEditor.create(this.el),this.editorInstance=t,Promise.resolve(t)}catch(t){return console.error(t),Promise.reject(null)}}getEditorFocusedCallback(t){return(a,n,s)=>{if(s)this.isFocused.emit();else{const a=t.getData();this.value!==a&&(this.value=a,this.dataChanged.emit(a))}}}get el(){return e(this)}static get watchers(){return{value:["updateValue"]}}};v.style=":host{display:block}";const _="instant-apps-language-translator-item",f={section:`${_}__section`,selected:`${_}__section--selected`,collapsed:`${_}__section--collapsed`,topRow:`${_}__top-row`,labelContainer:`${_}__label-container`,label:`${_}__label`,uiLocationPopoverContent:`${_}__ui-location-popover-content`,uiLocationItems:`${_}__ui-location-items`,uiLocationItem:`${_}__ui-location-item`,infoIcon:`${_}__info-icon`,infoButton:`${_}__info-button`,tip:`${_}__tip`,nestedInput:`${_}__nested-input`},b=class{constructor(n){t(this,n),this.translatorItemDataUpdated=a(this,"translatorItemDataUpdated",7),this.userInputs={},this.translatedInputs={},this.fieldName=void 0,this.translatedLanguageLabels=void 0,this.setting=void 0,this.userLocaleInputOnChangeCallback=void 0,this.translatedLocaleInputOnChangeCallback=void 0}get isTextEditor(){return this.setting.type===r.TextEditor}get calciteMode(){return o()?l.Dark:l.Light}get hasNestedContent(){var t;return!!(null===(t=this.setting)||void 0===t?void 0:t.content)}get tipID(){return`${this.fieldName}goTo`}componentDidLoad(){this.isTextEditor&&c.onChange("uiData",(()=>this.handleEditorCollapse()))}render(){var t;return"content"in this.setting&&(null===(t=this.setting.content)||void 0===t?void 0:t.every((t=>{var a;return 0===(null===(a=null==t?void 0:t.content)||void 0===a?void 0:a.length)})))?n(i,null):n(s,{class:this.calciteMode},this.renderBase(),this.renderPopover())}renderBase(){return n("div",{class:_},this.renderUserLocaleSection(),this.renderTranslatedLanguageSection())}renderPopover(){const t=this.getTip();return n("calcite-popover",{referenceElement:this.tipID,label:"","auto-close":"true",placement:"trailing",closable:!0},n("span",{class:f.uiLocationPopoverContent},n("span",{class:f.uiLocationItems},this.getUILocation()),t?n("span",{class:f.tip},t):null))}renderUserLocaleSection(){const t=this.getUIDataItem(),a=null==t?void 0:t.userLocaleData,s=null==a?void 0:a.value,e=this.setting.id;return n("div",{class:`${f.section}${(null==t?void 0:t.selected)?` ${f.selected}`:""}`},this.renderItemHeader(p.User,null==a?void 0:a.label,e),this.handleInputRender(p.User,s,e))}renderTranslatedLanguageSection(){var t,a;const s=this.getUIDataItem(),e=this.setting.id,i=c.get("currentLanguage"),r=c.get("portalItemResourceT9n"),o=null===(t=this.translatedLanguageLabels)||void 0===t?void 0:t[this.fieldName],l=null===(a=null==r?void 0:r[i])||void 0===a?void 0:a[e];return n("div",{class:`${f.section}${(null==s?void 0:s.selected)?` ${f.selected}`:""}`},this.renderItemHeader(p.Translation,o,e),this.handleInputRender(p.Translation,l,e))}handleInputRender(t,a,n){const s=this.getUIDataItem();return(null==s?void 0:s.expanded)?this.hasNestedContent?this.renderNestedInputs(t):this.renderInput(t,a,n):null}renderNestedInputs(t,a){const n=null!=a?a:this.setting,{content:s}=n;return null==s?void 0:s.map((a=>a.hasOwnProperty("content")?this.renderNestedInputs(t,a):this.renderNestedInput(t,a)))}renderNestedInput(t,a){var s;const e=c.get("currentLanguage"),i=c.get("portalItemResourceT9n"),r=null==a?void 0:a.id,o=null==i?void 0:i[e],l=null==o?void 0:o[r],{label:u,value:g,id:d}=a,h=t===p.Translation?null===(s=this.translatedLanguageLabels)||void 0===s?void 0:s[d]:u,m=t===p.User?g:l;return n("div",{class:f.nestedInput},this.renderItemHeader(t,h,r,a),this.renderInput(t,m,r,a))}renderItemHeader(t,a,s,e){const i=!this.hasNestedContent||!!e;return n("div",{class:f.topRow},this.renderItemHeaderLabel(t,a,e),i?this.renderCopyButton(t,s):null)}renderItemHeaderLabel(t,a,s){const e=t===p.User&&!s;return n("div",{class:f.labelContainer},s?null:this.renderExpandCollapseButton(),n("calcite-icon",{icon:this.getIcon(s),scale:"s"}),n("span",{class:f.label},a),e?this.renderInfoButton():null)}renderExpandCollapseButton(){const t=this.getUIDataItem(),a=(null==t?void 0:t.expanded)?u.Expanded:u.Collapsed;return n("calcite-action",{onClick:this.handleExpand.bind(this,t),icon:a,scale:"s",appearance:"transparent",text:""})}renderInfoButton(){return n("button",{id:this.tipID,class:f.infoButton},n("calcite-icon",{class:f.infoIcon,icon:u.Popover,scale:"s"}))}renderCopyButton(t,a){return n("calcite-action",{class:this.calciteMode,onClick:this.copySelection.bind(this,t,a),slot:"action",icon:u.Copy,appearance:"transparent",text:""})}renderInput(t,a,n,s){const e=null!=s?s:this.setting;return"string"===e.type||"textarea"===e.type?t===p.User?this.renderUserLocaleInput(a,n):this.renderTranslatedLanguageInput(a,n):this.renderTextEditor(a,t,n)}renderUserLocaleInput(t,a){return n("calcite-input",{ref:t=>this.userInputs[a]=t,key:a,id:a,class:l.Light,"data-field-name":this.fieldName,value:t,onFocus:this.handleSelection,onCalciteInputChange:this.handleUserInputChange.bind(this)})}renderTranslatedLanguageInput(t,a){return n("calcite-input",{ref:t=>this.translatedInputs[a]=t,key:a,id:a,class:l.Light,"data-field-name":this.fieldName,value:t,onFocus:this.handleSelection,onCalciteInputChange:this.handleTranslatedInputChange.bind(this)})}renderTextEditor(t,a,s){return n("instant-apps-ckeditor-wrapper",{id:s,ref:this.setEditor.bind(this,a),onDataChanged:this.handleTextEditorDataChange.bind(this,a),onIsFocused:this.handleSelection,value:null!=t?t:"","data-field-name":this.fieldName,config:{toolbar:[]}})}getUIDataItem(){if(g.uiData)return g.uiData.get(this.fieldName)}updateT9nStore(t,a){const n=c.get("currentLanguage"),s=d(n,{[t]:a});c.set("portalItemResourceT9n",s)}handleExpand(){const t=this.getUIDataItem();t.expanded=!t.expanded;const a=new Map(g.uiData);a.set(this.fieldName,t),c.set("uiData",a)}handleEditorCollapse(){var t,a;const n=c.get("uiData"),s=null==n?void 0:n.get(this.fieldName);if(!(null==s?void 0:s.expanded)&&(null===(t=this.userEditorWrapper)||void 0===t?void 0:t.editorInstance)&&(null===(a=this.translatedEditorWrapper)||void 0===a?void 0:a.editorInstance)){const{userEditorWrapper:t,translatedEditorWrapper:a}=this,n=t.editorInstance.getData();t.value=n;const s=a.editorInstance.getData();a.value=s,t.editorInstance.destroy(),a.editorInstance.destroy()}}handleSelection(t){const a=new Map(g.uiData),n=h();n.forEach((t=>{(null==a?void 0:a.get(t)).selected=!1})),n.forEach((n=>{const s=null==t?void 0:t.target;n===(null==s?void 0:s.getAttribute("data-field-name"))&&((null==a?void 0:a.get(n)).selected=!0)})),c.set("uiData",a)}getUILocation(){const t=this.getUIDataItem(),{uiLocation:a,userLocaleData:s}=t,{section:e,subsection:i}=a,r=[e.label,i.label,s.label].filter((t=>!!t));return r.map(((t,a)=>n("span",{class:f.uiLocationItem},n("span",null,t),a!==r.length-1?n("calcite-icon",{icon:"chevron-right",scale:"s"}):null)))}getTip(){const t=this.getUIDataItem(),{tip:a}=t;return a}copySelection(t,a){this.setting.type===r.TextEditor?this.copyTextEditorContent(t):this.copyCalciteInputContent(a,t)}copyTextEditorContent(t){var a,n;const s=t===p.User?null===(a=this.userEditorWrapper)||void 0===a?void 0:a.editorInstance:null===(n=this.translatedEditorWrapper)||void 0===n?void 0:n.editorInstance;setTimeout((()=>{this.selectContent(s),setTimeout((()=>this.selectContent(s)),50)}),50),this.copyContent(s)}selectContent(t){t.editing.view.focus();const{model:a}=t,n=a.createRangeIn(a.document.getRoot());a.change((t=>t.setSelection(n)))}copyContent(t){const a=t.getData(),n=document.createElement("div");n.contentEditable="true",n.innerHTML=a,document.body.appendChild(n);const s=document.createRange();s.selectNodeContents(n);const e=window.getSelection();null==e||e.removeAllRanges(),null==e||e.addRange(s),document.execCommand("copy"),document.body.removeChild(n)}copyCalciteInputContent(t,a){const n=a===p.User?this.userInputs[t]:this.translatedInputs[t];n&&(n.selectText(),navigator.clipboard.writeText(n.value))}setEditor(t,a){t===p.User?this.userEditorWrapper=a:this.translatedEditorWrapper=a}async handleUserInputChange(t){c.set("saving",!0);try{const a=t.target,n=a.id,s=a.value;this.getUIDataItem().userLocaleData.value=s,await this.userLocaleInputOnChangeCallback(n,s),c.set("saving",!1)}catch(t){c.set("saving",!1)}}async handleUserTextEditorChange(t){c.set("saving",!0);try{const a=t.detail,n=t.target.id;this.getUIDataItem().userLocaleData.value=a,await this.userLocaleInputOnChangeCallback(n,a),c.set("saving",!1)}catch(t){c.set("saving",!1)}}async handleTranslatedInputChange(t){c.set("saving",!0);try{const a=t.composedPath()[0],n=a.id;this.updateT9nStore(n,a.value);const{locale:s,resource:e}=this.getTranslatedLocaleCallbackData(),i=t.target.value;await this.translatedLocaleInputOnChangeCallback(n,i,s,e),setTimeout((()=>c.set("saving",!1)),1500),this.translatorItemDataUpdated.emit()}catch(t){console.error("Error writing to portal item resource: ",t),c.set("saving",!1)}}async handleTranslatedTextEditorChange(t){c.set("saving",!0);try{const a=t.target.id;this.updateT9nStore(a,t.detail);const{locale:n,resource:s}=this.getTranslatedLocaleCallbackData(),e=t.detail;await this.translatedLocaleInputOnChangeCallback(a,e,n,s),setTimeout((()=>c.set("saving",!1)),1500),this.translatorItemDataUpdated.emit()}catch(t){console.error("Error writing to portal item resource: ",t),c.set("saving",!1)}}handleTextEditorDataChange(t,a){t===p.User?this.handleUserTextEditorChange(a):this.handleTranslatedTextEditorChange(a)}getTranslatedLocaleCallbackData(){return{locale:c.get("currentLanguage"),resource:c.get("portalItemResource")}}getIcon(t){switch((null!=t?t:this.setting).stringType){case"title":return u.Title;case"subtitle":return u.Subtitle;case"text":return u.Text;case"button":return u.Button;case"string":return u.String;default:return u.SettingIndicator}}};b.style=".sc-instant-apps-language-translator-item-h{display:block}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item.sc-instant-apps-language-translator-item{display:flex}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item{padding:10px;border-bottom:1px solid var(--calcite-color-border-1);background-color:var(--calcite-color-foreground-2);width:49%}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item .instant-apps-language-translator-item__top-row.sc-instant-apps-language-translator-item{display:flex;align-items:center;justify-content:space-between}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item .instant-apps-language-translator-item__label-container.sc-instant-apps-language-translator-item{display:flex;align-items:center}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item .instant-apps-language-translator-item__label.sc-instant-apps-language-translator-item{display:inline-block;margin-left:10px;font-size:14px;font-weight:var(--calcite-font-weight-medium)}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item calcite-input.sc-instant-apps-language-translator-item{margin-top:10px;margin-left:55px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--last-item.sc-instant-apps-language-translator-item{border-bottom:none}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item{background-color:#f1faff}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item:first-child{margin-right:1%}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__ui-location-popover-content.sc-instant-apps-language-translator-item{display:inline-block;padding:10px;max-width:400px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__ui-location-items.sc-instant-apps-language-translator-item{display:flex}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__ui-location-item.sc-instant-apps-language-translator-item{display:flex;align-items:center;font-weight:var(--calcite-font-weight-medium);font-size:14px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__tip.sc-instant-apps-language-translator-item{display:inline-block;font-size:14px;line-height:22px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__info-icon.sc-instant-apps-language-translator-item{color:var(--calcite-color-brand)}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__info-button.sc-instant-apps-language-translator-item{border:0;background-color:transparent;cursor:pointer}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__nested-input.sc-instant-apps-language-translator-item{margin-left:60px;margin-top:8px}.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__nested-input.sc-instant-apps-language-translator-item calcite-input.sc-instant-apps-language-translator-item{margin-left:30px}.calcite-mode-dark.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item{background-color:#f1faff;background-color:var(--calcite-color-brand);color:var(--calcite-color-text-inverse)}.calcite-mode-dark.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item calcite-action.sc-instant-apps-language-translator-item{--calcite-ui-icon-color:var(--calcite-color-text-inverse)}.calcite-mode-dark.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section--selected.sc-instant-apps-language-translator-item calcite-icon.sc-instant-apps-language-translator-item{color:var(--calcite-color-text-inverse)}.instant-apps-language-translator--last-item.sc-instant-apps-language-translator-item-h .instant-apps-language-translator-item__section.sc-instant-apps-language-translator-item{border-bottom:none}";const x="instant-apps-language-translator-search",k={base:x,input:`${x}__input`,suggestionList:`${x}__suggestion-list`,suggestionListItem:`${x}__suggestion-list-item`},y=class{constructor(n){t(this,n),this.suggestionSelected=a(this,"suggestionSelected",7),this.t9nPlaceholder=void 0,this.results=[]}render(){return n(s,{key:"80febf289e2bbfcf09636c84b5a5a83e80f377c0"},this.renderSearchInput(),this.renderSuggestions())}renderSearchInput(){return n("calcite-input",{ref:t=>this.searchInput=t,class:k.input,onCalciteInputInput:this.handleSearch.bind(this),type:"search",placeholder:this.t9nPlaceholder,icon:"search"})}renderSuggestions(){return this.results.length>0?this.renderSuggestionList():null}renderSuggestionList(){return n("ul",{class:k.suggestionList},this.results.map((t=>this.renderSuggestionListItem(t))))}renderSuggestionListItem(t){return n("li",{onClick:this.selectSuggestion.bind(this),class:k.suggestionListItem,"data-field-name":t.fieldName},t.userLocaleData.label)}handleSearch(t){var a,n;const s=null===(n=null===(a=t.target.value)||void 0===a?void 0:a.toLowerCase())||void 0===n?void 0:n.trim(),e=c.get("uiData"),i=h(),r=c.get("portalItemResourceT9n"),o=c.get("currentLanguage"),l=r[o],p=this.getSettingDataItems(i).filter(this.matchedResultsCallback(e,l,s,o));this.results=[...p.map((t=>Object.assign({fieldName:t},e.get(t))))]}matchedResultsCallback(t,a,n,s){return e=>{var i;const r=t.get(e),{label:o}=r.userLocaleData,{value:l}=r.userLocaleData,c=t.get("translatedLanguageLabels"),p=null===(i=null==c?void 0:c[s])||void 0===i?void 0:i[e],u=null==a?void 0:a[e],g=this.testUserInput(o,n),d=this.testUserInput(l,n),h=this.testUserInput(p,n),m=this.testUserInput(u,n);return g||d||h||m}}getSettingDataItems(t){return t.filter((t=>"locales"!==t&&"translatedLanguageLabels"!==t))}testUserInput(t,a){var n;return!!(null==t?void 0:t.trim())&&!!(null==a?void 0:a.trim())&&-1!==(null===(n=null==t?void 0:t.toLowerCase())||void 0===n?void 0:n.search(a))}selectSuggestion(t){const a=t.target.getAttribute("data-field-name");this.suggestionSelected.emit(a),this.resetSearchInput()}resetSearchInput(){this.searchInput.value="",this.results=[]}};y.style=".sc-instant-apps-language-translator-search-h{display:block;position:relative}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__input.sc-instant-apps-language-translator-search{width:235.5px}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list.sc-instant-apps-language-translator-search{position:absolute;margin:0;padding:0;width:100%;max-height:30vh;overflow:auto;border-left:none;background-color:var(--calcite-color-foreground-1);border:1px solid #c0c0c0;z-index:702}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list-item.sc-instant-apps-language-translator-search:first-child{border:none}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list-item.sc-instant-apps-language-translator-search{margin-top:0;padding:0.8em 1em;border-top:solid 1px rgba(110, 110, 110, 0.3);display:flex;flex-direction:column;cursor:pointer;word-break:break-word}.sc-instant-apps-language-translator-search-h .instant-apps-language-translator-search__suggestion-list-item.sc-instant-apps-language-translator-search:hover{background-color:var(--calcite-color-foreground-2)}";export{v as instant_apps_ckeditor_wrapper,b as instant_apps_language_translator_item,y as instant_apps_language_translator_search}
@@ -3,4 +3,4 @@
3
3
  * Licensed under the Apache License, Version 2.0
4
4
  * http://www.apache.org/licenses/LICENSE-2.0
5
5
  */
6
- import{r as t,c as n,h as i,H as s,g as e}from"./p-8c40bdec.js";import{l as o}from"./p-08ad0b7a.js";import{g as r}from"./p-ea19f91b.js";import{g as a}from"./p-a9a72626.js";import"./p-0a24ad5f.js";import"./p-d4056c1c.js";import"./p-ac122d9e.js";const p=(()=>{let t=0;return()=>(t+=1,`u${`0000${(Math.random()*36**4|0).toString(36)}`.slice(-4)}${t}`)})();function c(t){const n=[];for(let i=0,s=t.length;i<s;i++)n.push(t[i]);return n}function l(t,n){const i=(t.ownerDocument.defaultView||window).getComputedStyle(t).getPropertyValue(n);return i?parseFloat(i.replace("px","")):0}function h(t,n={}){return{width:n.width||function(t){const n=l(t,"border-left-width"),i=l(t,"border-right-width");return t.clientWidth+n+i}(t),height:n.height||function(t){const n=l(t,"border-top-width"),i=l(t,"border-bottom-width");return t.clientHeight+n+i}(t)}}const d=16384;function u(t){return new Promise(((n,i)=>{const s=new Image;s.decode=()=>n(s),s.onload=()=>n(s),s.onerror=i,s.crossOrigin="anonymous",s.decoding="async",s.src=t}))}const f=(t,n)=>{if(t instanceof n)return!0;const i=Object.getPrototypeOf(t);return null!==i&&(i.constructor.name===n.name||f(i,n))};function g(t,n,i){const s=window.getComputedStyle(t,i),e=s.getPropertyValue("content");if(""===e||"none"===e)return;const o=p();try{n.className=`${n.className} ${o}`}catch(t){return}const r=document.createElement("style");r.appendChild(function(t,n,i){const s=`.${t}:${n}`,e=i.cssText?function(t){const n=t.getPropertyValue("content");return`${t.cssText} content: '${n.replace(/'|"/g,"")}';`}(i):function(t){return c(t).map((n=>`${n}: ${t.getPropertyValue(n)}${t.getPropertyPriority(n)?" !important":""};`)).join(" ")}(i);return document.createTextNode(`${s}{${e}}`)}(o,i,s)),n.appendChild(r)}const v="application/font-woff",x="image/jpeg",m={woff:v,woff2:v,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:x,jpeg:x,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function _(t){const n=function(t){const n=/\.([^./]*?)$/g.exec(t);return n?n[1]:""}(t).toLowerCase();return m[n]||""}function b(t){return-1!==t.search(/^(data:)/)}function w(t,n){return`data:${n};base64,${t}`}async function y(t,n,i){const s=await fetch(t,n);if(404===s.status)throw new Error(`Resource "${s.url}" not found`);const e=await s.blob();return new Promise(((t,n)=>{const o=new FileReader;o.onerror=n,o.onloadend=()=>{try{t(i({res:s,result:o.result}))}catch(t){n(t)}},o.readAsDataURL(e)}))}const k={};async function P(t,n,i){const s=function(t,n,i){let s=t.replace(/\?.*/,"");return i&&(s=t),/ttf|otf|eot|woff2?/i.test(s)&&(s=s.replace(/.*\//,"")),n?`[${n}]${s}`:s}(t,n,i.includeQueryParams);if(null!=k[s])return k[s];let e;i.cacheBust&&(t+=(/\?/.test(t)?"&":"?")+(new Date).getTime());try{const s=await y(t,i.fetchRequestInit,(({res:t,result:i})=>(n||(n=t.headers.get("Content-Type")||""),function(t){return t.split(/,/)[1]}(i))));e=w(s,n)}catch(n){e=i.imagePlaceholder||"";let s=`Failed to fetch resource: ${t}`;n&&(s="string"==typeof n?n:n.message),s&&console.warn(s)}return k[s]=e,e}const $=t=>null!=t.tagName&&"SLOT"===t.tagName.toUpperCase();async function S(t,n,i){return i||!n.filter||n.filter(t)?Promise.resolve(t).then((t=>async function(t,n){return f(t,HTMLCanvasElement)?async function(t){const n=t.toDataURL();return"data:,"===n?t.cloneNode(!1):u(n)}(t):f(t,HTMLVideoElement)?async function(t,n){if(t.currentSrc){const n=document.createElement("canvas"),i=n.getContext("2d");return n.width=t.clientWidth,n.height=t.clientHeight,null==i||i.drawImage(t,0,0,n.width,n.height),u(n.toDataURL())}const i=t.poster,s=_(i);return u(await P(i,s,n))}(t,n):f(t,HTMLIFrameElement)?async function(t){var n;try{if(null===(n=null==t?void 0:t.contentDocument)||void 0===n?void 0:n.body)return await S(t.contentDocument.body,{},!0)}catch(t){}return t.cloneNode(!1)}(t):t.cloneNode(!1)}(t,n))).then((i=>async function(t,n,i){var s,e;let o=[];return o=$(t)&&t.assignedNodes?c(t.assignedNodes()):f(t,HTMLIFrameElement)&&(null===(s=t.contentDocument)||void 0===s?void 0:s.body)?c(t.contentDocument.body.childNodes):c((null!==(e=t.shadowRoot)&&void 0!==e?e:t).childNodes),0===o.length||f(t,HTMLVideoElement)||await o.reduce(((t,s)=>t.then((()=>S(s,i))).then((t=>{t&&n.appendChild(t)}))),Promise.resolve()),n}(t,i,n))).then((n=>function(t,n){return f(n,Element)&&(function(t,n){const i=n.style;if(!i)return;const s=window.getComputedStyle(t);s.cssText?(i.cssText=s.cssText,i.transformOrigin=s.transformOrigin):c(s).forEach((e=>{let o=s.getPropertyValue(e);if("font-size"===e&&o.endsWith("px")){const t=Math.floor(parseFloat(o.substring(0,o.length-2)))-.1;o=`${t}px`}f(t,HTMLIFrameElement)&&"display"===e&&"inline"===o&&(o="block"),"d"===e&&n.getAttribute("d")&&(o=`path(${n.getAttribute("d")})`),i.setProperty(e,o,s.getPropertyPriority(e))}))}(t,n),function(t,n){g(t,n,":before"),g(t,n,":after")}(t,n),function(t,n){f(t,HTMLTextAreaElement)&&(n.innerHTML=t.value),f(t,HTMLInputElement)&&n.setAttribute("value",t.value)}(t,n),function(t,n){if(f(t,HTMLSelectElement)){const i=Array.from(n.children).find((n=>t.value===n.getAttribute("value")));i&&i.setAttribute("selected","")}}(t,n)),n}(t,n))).then((t=>async function(t,n){const i=t.querySelectorAll?t.querySelectorAll("use"):[];if(0===i.length)return t;const s={};for(let e=0;e<i.length;e++){const o=i[e].getAttribute("xlink:href");if(o){const i=t.querySelector(o),e=document.querySelector(o);i||!e||s[o]||(s[o]=await S(e,n,!0))}}const e=Object.values(s);if(e.length){const n="http://www.w3.org/1999/xhtml",i=document.createElementNS(n,"svg");i.setAttribute("xmlns",n),i.style.position="absolute",i.style.width="0",i.style.height="0",i.style.overflow="hidden",i.style.display="none";const s=document.createElementNS(n,"defs");i.appendChild(s);for(let t=0;t<e.length;t++)s.appendChild(e[t]);t.appendChild(i)}return t}(t,n))):null}const C=/url\((['"]?)([^'"]+?)\1\)/g,E=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,F=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function M(t){return-1!==t.search(C)}async function j(t,n,i){if(!M(t))return t;const s=function(t,{preferredFontFormat:n}){return n?t.replace(F,(t=>{for(;;){const[i,,s]=E.exec(t)||[];if(!s)return"";if(s===n)return`src: ${i};`}})):t}(t,i),e=function(t){const n=[];return t.replace(C,((t,i,s)=>(n.push(s),t))),n.filter((t=>!b(t)))}(s);return e.reduce(((t,s)=>t.then((t=>async function(t,n,i,s,e){try{const o=i?function(t,n){if(t.match(/^[a-z]+:\/\//i))return t;if(t.match(/^\/\//))return window.location.protocol+t;if(t.match(/^[a-z]+:/i))return t;const i=document.implementation.createHTMLDocument(),s=i.createElement("base"),e=i.createElement("a");return i.head.appendChild(s),i.body.appendChild(e),n&&(s.href=n),e.href=t,e.href}(n,i):n,r=_(n);let a;return a=e?w(await e(o),r):await P(o,r,s),t.replace(function(t){const n=t.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return new RegExp(`(url\\(['"]?)(${n})(['"]?\\))`,"g")}(n),`$1${a}$3`)}catch(t){}return t}(t,s,n,i)))),Promise.resolve(s))}async function T(t,n,i){var s;const e=null===(s=n.style)||void 0===s?void 0:s.getPropertyValue(t);if(e){const s=await j(e,null,i);return n.style.setProperty(t,s,n.style.getPropertyPriority(t)),!0}return!1}async function L(t,n){f(t,Element)&&(await async function(t,n){await T("background",t,n)||await T("background-image",t,n),await T("mask",t,n)||await T("mask-image",t,n)}(t,n),await async function(t,n){const i=f(t,HTMLImageElement);if((!i||b(t.src))&&(!f(t,SVGImageElement)||b(t.href.baseVal)))return;const s=i?t.src:t.href.baseVal,e=await P(s,_(s),n);await new Promise(((n,s)=>{t.onload=n,t.onerror=s;const o=t;o.decode&&(o.decode=n),"lazy"===o.loading&&(o.loading="eager"),i?(t.srcset="",t.src=e):t.href.baseVal=e}))}(t,n),await async function(t,n){const i=c(t.childNodes).map((t=>L(t,n)));await Promise.all(i).then((()=>t))}(t,n))}const D={};async function I(t){let n=D[t];if(null!=n)return n;const i=await fetch(t);return n={url:t,cssText:await i.text()},D[t]=n,n}async function O(t,n){let i=t.cssText;const s=/url\(["']?([^"')]+)["']?\)/g,e=(i.match(/url\([^)]+\)/g)||[]).map((async e=>{let o=e.replace(s,"$1");return o.startsWith("https://")||(o=new URL(o,t.url).href),y(o,n.fetchRequestInit,(({result:t})=>(i=i.replace(e,`url(${t})`),[e,t])))}));return Promise.all(e).then((()=>i))}function z(t){if(null==t)return[];const n=[];let i=t.replace(/(\/\*[\s\S]*?\*\/)/gi,"");const s=new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){const t=s.exec(i);if(null===t)break;n.push(t[0])}i=i.replace(s,"");const e=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,o=new RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let t=e.exec(i);if(null===t){if(t=o.exec(i),null===t)break;e.lastIndex=o.lastIndex}else o.lastIndex=e.lastIndex;n.push(t[0])}return n}async function R(t,n){const i=null!=n.fontEmbedCSS?n.fontEmbedCSS:n.skipFonts?null:await async function(t,n){const i=await async function(t,n){if(null==t.ownerDocument)throw new Error("Provided element is not within a Document");const i=c(t.ownerDocument.styleSheets),s=await async function(t,n){const i=[],s=[];return t.forEach((i=>{if("cssRules"in i)try{c(i.cssRules||[]).forEach(((t,e)=>{if(t.type===CSSRule.IMPORT_RULE){let o=e+1;const r=I(t.href).then((t=>O(t,n))).then((t=>z(t).forEach((t=>{try{i.insertRule(t,t.startsWith("@import")?o+=1:i.cssRules.length)}catch(n){console.error("Error inserting rule from remote css",{rule:t,error:n})}})))).catch((t=>{console.error("Error loading remote css",t.toString())}));s.push(r)}}))}catch(e){const o=t.find((t=>null==t.href))||document.styleSheets[0];null!=i.href&&s.push(I(i.href).then((t=>O(t,n))).then((t=>z(t).forEach((t=>{o.insertRule(t,i.cssRules.length)})))).catch((t=>{console.error("Error loading remote stylesheet",t)}))),console.error("Error inlining remote css file",e)}})),Promise.all(s).then((()=>(t.forEach((t=>{if("cssRules"in t)try{c(t.cssRules||[]).forEach((t=>{i.push(t)}))}catch(n){console.error(`Error while reading CSS rules from ${t.href}`,n)}})),i)))}(i,n);return function(t){return t.filter((t=>t.type===CSSRule.FONT_FACE_RULE)).filter((t=>M(t.style.getPropertyValue("src"))))}(s)}(t,n);return(await Promise.all(i.map((t=>j(t.cssText,t.parentStyleSheet?t.parentStyleSheet.href:null,n))))).join("\n")}(t,n);if(i){const n=document.createElement("style"),s=document.createTextNode(i);n.appendChild(s),t.firstChild?t.insertBefore(n,t.firstChild):t.appendChild(n)}}async function H(t,n={}){const{width:i,height:s}=h(t,n),e=await S(t,n,!0);return await R(e,n),await L(e,n),function(t,n){const{style:i}=t;n.backgroundColor&&(i.backgroundColor=n.backgroundColor),n.width&&(i.width=`${n.width}px`),n.height&&(i.height=`${n.height}px`);const s=n.style;null!=s&&Object.keys(s).forEach((t=>{i[t]=s[t]}))}(e,n),await async function(t,n,i){const s="http://www.w3.org/2000/svg",e=document.createElementNS(s,"svg"),o=document.createElementNS(s,"foreignObject");return e.setAttribute("width",`${n}`),e.setAttribute("height",`${i}`),e.setAttribute("viewBox",`0 0 ${n} ${i}`),o.setAttribute("width","100%"),o.setAttribute("height","100%"),o.setAttribute("x","0"),o.setAttribute("y","0"),o.setAttribute("externalResourcesRequired","true"),e.appendChild(o),o.appendChild(t),async function(t){return Promise.resolve().then((()=>(new XMLSerializer).serializeToString(t))).then(encodeURIComponent).then((t=>`data:image/svg+xml;charset=utf-8,${t}`))}(e)}(e,i,s)}async function V(t,n={}){const{width:i,height:s}=h(t,n),e=await H(t,n),o=await u(e),r=document.createElement("canvas"),a=r.getContext("2d"),p=n.pixelRatio||function(){let t,n;try{n=process}catch(t){}const i=n&&n.env?n.env.devicePixelRatio:null;return i&&(t=parseInt(i,10),Number.isNaN(t)&&(t=1)),t||window.devicePixelRatio||1}(),c=n.canvasWidth||i,l=n.canvasHeight||s;return r.width=c*p,r.height=l*p,n.skipAutoScale||function(t){(t.width>d||t.height>d)&&(t.width>d&&t.height>d?t.width>t.height?(t.height*=d/t.width,t.width=d):(t.width*=d/t.height,t.height=d):t.width>d?(t.height*=d/t.width,t.width=d):(t.width*=d/t.height,t.height=d))}(r),r.style.width=`${c}`,r.style.height=`${l}`,n.backgroundColor&&(a.fillStyle=n.backgroundColor,a.fillRect(0,0,r.width,r.height)),a.drawImage(o,0,0,r.width,r.height),r}async function G(t,n={}){return(await V(t,n)).toDataURL("image/jpeg",n.quality||1)}const U="instant-apps-export calcite-mode-light",W="instant-apps-export-print instant-apps-export-print__pdf",A="instant-apps-export-print instant-apps-export-print__img",B="instant-apps-export-print__img--extra-content",N="instant-apps-export-print__content-container",J="instant-apps-export-print__extra-container",q="instant-apps-export-print__legend-container",X="instant-apps-export-print__compass-container",K="instant-apps-export-print__scale-bar-container",Q="instant-apps-export-print__popup-container",Y="instant-apps-export-print__popup-content",Z="instant-apps-export-print__popup-title",tt="instant-apps-export-print__view",nt="instant-apps-export-print__view-container",it="instant-apps-export-print__view-wrapper",st="instant-app-export-drag",et=class{constructor(i){t(this,i),this.exportOutputUpdated=n(this,"exportOutputUpdated",7),this.fileTypes=["PDF","JPG","PNG"],this.output=void 0,this.beforeExport=()=>Promise.resolve(),this.popoverIcon="export",this.extraContent=void 0,this.extraContentLabel=void 0,this.headerTitle="",this.logoImage="",this.includeExtraContent=!0,this.showExtraContentInImg=!1,this.includeLegend=!0,this.includeMap=!0,this.includePopup=!1,this.includeFileFormat=!0,this.mode="popover",this.popoverPositioning="absolute",this.popoverPlacement="auto",this.scale="m",this.showHeaderTitle=!0,this.showIncludeLegend=!0,this.showIncludeMap=!1,this.showIncludePopup=!0,this.showScaleBar=!1,this.view=void 0,this.maskBackground="rgba(255, 51, 0, 0.1)",this.maskBorder="2px dashed rgb(255, 51, 0)",this.baseClass=U,this.exportIsLoading=void 0,this.messages=void 0,this.selectedFileType="PDF"}watchIncludeMap(t){t&&this.updateLegend()}watchView(){this.handleIncludePopup()}async componentWillLoad(){this.baseClass="dark"===a(this.el)?"instant-apps-export calcite-mode-dark":U,r(this),await this.initializeModules()}componentDidLoad(){this.printContainerEl.prepend(this.printEl),this.handleIncludePopup()}async initializeModules(){const[t,n]=await o(["esri/core/Handles","esri/core/reactiveUtils"]);return this.handles=new t,this.reactiveUtils=n,Promise.resolve()}render(){const t="popover"===this.mode?this.renderPopover():this.renderPanel(),n=this.renderCompass();return i(s,{key:"9811c244faf2c794db3edaad498a9a902cb3faad"},i("div",{key:"cb880c04d46ec06a9588cedc0bd90ab62d25c0ac",class:this.baseClass,onMouseEnter:this.handleWidgetCreation.bind(this),onFocusin:this.handleWidgetCreation.bind(this)},t,i("div",{key:"fc7ccd1eeb4b6a82bd9804d1aa73c4f242085a56",class:"instant-apps-export__visually-hidden"},n)))}renderPopover(){var t,n,s;const e=this.renderPanel();return[i("calcite-popover",{referenceElement:"export-popover-btn",label:null===(t=this.messages)||void 0===t?void 0:t.exportPopover,overlayPositioning:this.popoverPositioning,placement:this.popoverPlacement,autoClose:!0,ref:t=>this.popoverEl=t},e),i("calcite-action",{id:"export-popover-btn",alignment:"center",icon:this.popoverIcon,scale:this.scale,title:null===(n=this.messages)||void 0===n?void 0:n.exportBtn,text:null===(s=this.messages)||void 0===s?void 0:s.exportBtn})]}renderPanel(){var t,n,s;const e=this.showHeaderTitle?this.renderTitle():null,o=null!=this.extraContent?this.renderSwitch("includeExtraContent",this.extraContentLabel,"PDF"!==this.selectedFileType&&!this.showExtraContentInImg):null,r=this.showIncludeMap?this.renderSwitch("includeMap",void 0,"PDF"!==this.selectedFileType):null,a=this.includeMap?this.renderMapOptions():null,p=this.includeFileFormat?this.renderSelectFileType():null,c="PDF"===this.selectedFileType?this.renderPrint():this.renderImg();return i("div",{class:"inline"===this.mode?"instant-apps-export__inline-container":"instant-apps-export__popover-container"},e,o,r,a,p,this.includeMap?i("calcite-button",{appearance:"transparent",width:"full",onClick:this.setMapAreaOnClick.bind(this,!0),disabled:this.exportIsLoading},null===(t=this.messages)||void 0===t?void 0:t.setMapArea):null,i("calcite-button",{width:"full",onClick:this.exportOnClick.bind(this),disabled:this.exportIsLoading},"PDF"===this.selectedFileType?null===(n=this.messages)||void 0===n?void 0:n.export:null===(s=this.messages)||void 0===s?void 0:s.preview),c)}renderTitle(){var t;return i("calcite-label",null,null===(t=this.messages)||void 0===t?void 0:t.title,i("calcite-input",{value:this.headerTitle,onCalciteInputInput:this.updateHeaderTitle.bind(this)}))}renderSwitch(t,n,s){var e;const o=null!=n?n:null===(e=this.messages)||void 0===e?void 0:e[t];return i("calcite-label",{layout:"inline-space-between"},o,i("calcite-switch",{checked:this[t],value:t,onCalciteSwitchChange:this.optionOnChange.bind(this),disabled:s}))}renderSelectFileType(){var t;return i("calcite-label",null,null===(t=this.messages)||void 0===t?void 0:t.fileType,i("calcite-select",{label:"",onCalciteSelectChange:this.handleSelectFileType.bind(this)},this.fileTypes.map((t=>i("calcite-option",{value:t,selected:t===this.selectedFileType},t)))))}renderMapOptions(){const t=this.showIncludeLegend?this.renderSwitch("includeLegend"):null,n=this.showIncludePopup?this.renderSwitch("includePopup"):null;return i("div",null,t,n)}renderPrint(){const t=this.includeMap?this.renderPrintMap():null,n=this.renderExtraContent(),s=this.includeMap&&this.showIncludeLegend?this.renderLegend():null,e=this.includeMap&&this.showIncludePopup?this.renderPopup():null;return i("div",{ref:t=>this.printContainerEl=t},i("div",{class:W,ref:t=>this.printEl=t},t,s,i("div",{class:N},e,n)))}renderPrintMap(){return i("div",{class:nt,ref:t=>this.viewContainerEl=t},i("div",{class:it,ref:t=>this.viewWrapperEl=t},this.headerTitle?i("instant-apps-header",{logoImage:this.logoImage,logoScale:"s",titleText:this.headerTitle,backgroundColor:"#fff",textColor:"#323232"}):null,i("img",{class:tt,ref:t=>this.viewEl=t}),i("div",{class:K,ref:t=>this.scaleBarContainerEl=t})))}renderLegend(){return i("div",{class:q,ref:t=>this.legendContainerEl=t})}renderCompass(){return i("div",{class:X,ref:t=>this.compassContainerEl=t})}renderPopup(){return i("div",{class:Q,ref:t=>this.popupContainerEl=t},i("div",{ref:t=>this.popupTitleEl=t,class:Z}),i("div",{ref:t=>this.popupContentEl=t,class:Y}))}renderExtraContent(){return i("div",{class:J,id:"export-content",ref:t=>this.extraContainerEl=t})}renderImg(){const t=this.includeMap?this.renderPrintMap():null,n=this.includeMap&&this.showIncludeLegend?this.renderLegend():null;let s;return this.includeMap&&this.showIncludePopup?s=this.renderPopup():this.showExtraContentInImg&&null!=this.extraContent&&this.includeExtraContent&&(s=this.renderExtraContent()),i("div",{ref:t=>this.printContainerEl=t},i("div",{class:A,ref:t=>this.printEl=t},t,n,s))}optionOnChange(t){const{checked:n,value:i}=t.target;this[i]=n,this.updateExportOutput()}updateHeaderTitle(t){this.headerTitle=t.target.value,this.updateExportOutput()}async exportOnClick(){this.removeScreenshotElements(),await this.beforeExport(),null==this.viewWrapperEl||this.viewWrapperEl.contains(this.compassContainerEl)||this.viewWrapperEl.append(this.compassContainerEl),this.handleViewExportOnClick(),null!=this.popoverEl&&(this.popoverEl.open=!1)}async exportPreviewOnClick(){"PDF"===this.selectedFileType?await this.exportPDF():this.exportImg()}async exportPDF(){this.removeScreenshotElements(),await this.beforeExport(),null==this.viewWrapperEl||this.viewWrapperEl.contains(this.compassContainerEl)||this.viewWrapperEl.append(this.compassContainerEl),this.handleViewExportOnClick(),null!=this.popoverEl&&(this.popoverEl.open=!1)}exportImg(){var t;if(this.resetPopupVisibility(),null==this.dataUrl)return;const n=document.createElement("a");n.id="download-link",n.href=this.dataUrl,n.download=null!==(t=this.headerTitle)&&void 0!==t?t:document.title,n.click(),this.dataUrl=null,this.exportIsLoading=!1,this.removeScreenshotElements(),this.resetPrintContent()}async handleViewExportOnClick(){null!=this.view?(this.addPrintStyling(),document.body.prepend(this.printEl),this.handleExtraContent(),this.includeMap?(this.updateScaleBar(),this.viewScreenshot(),this.handleImgLoaded()):this.handleImgLoaded()):null!=this.popoverEl&&(this.popoverEl.open=!1)}addPrintStyling(){null==this.printStyleEl&&(this.printStyleEl=document.createElement("style"),this.printStyleEl.innerHTML='\n @media print {\n @page {\n size: Portrait;\n margin: .25in;\n }\n\n html, body {\n padding: 0;\n margin: 0;\n height: 100%;\n width: 100%;\n }\n\n body > *:not(.instant-apps-export-print) { display: none; }\n }\n\n * {\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n }\n\n\n .instant-apps-export-print {\n position: absolute;\n z-index: -999;\n color: #323232 !important;\n --esri-calcite-mode-name: "light";\n }\n\n .instant-apps-export-print__pdf {\n height: 100%;\n width: 100%;\n display: grid;\n gap: 24px;\n grid-auto-flow: row;\n }\n\n .instant-apps-export-print__img {\n display: grid;\n width: auto;\n }\n\n .instant-apps-export-print__img--extra-content {\n grid-template-columns: 2fr minmax(0, 325px);\n }\n\n .instant-apps-export-print, .instant-apps-export-print * {\n box-sizing: border-box;\n }\n\n .instant-apps-export-print__view-section {\n height: 100%;\n }\n\n .instant-apps-export-print__view-container {\n height: 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__view-container {\n grid-row: 1;\n grid-column: 1;\n }\n\n .instant-apps-export-print__view-wrapper {\n height: fit-content;\n width: fit-content;\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n }\n\n .instant-apps-export-print__pdf .instant-apps-export-print__view-wrapper {\n border: 2pt solid #323232;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__view-wrapper {\n border: 1pt solid #323232;\n }\n\n .instant-apps-export-print__view {\n object-fit: contain;\n }\n\n .instant-apps-export-print__extra-container {\n grid-row: 1 / span 2;\n grid-column: 2;\n }\n \n .instant-apps-export-print__extra-container .esri-feature.esri-widget .esri-widget__heading.esri-feature__title {\n display: block;\n }\n\n .instant-apps-export-print__popup-container {\n height: min-content;\n max-width: 325px;\n display: none;\n color: #323232;\n background: #fff;\n break-inside: avoid;\n }\n\n .instant-apps-export-print__pdf .instant-apps-export-print__popup-container {\n border: 1pt solid #323232;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__popup-container {\n grid-row: 1 / span 2;\n grid-column: 2;\n }\n\n .instant-apps-export-print__popup-title {\n border-bottom: 1pt solid #323232;\n }\n\n .instant-apps-export-print__popup-content {\n background: #fff;\n padding-top: 8pt;\n }\n\n .instant-apps-export-print__popup-content .esri-feature-media__chart {\n background: #fff;\n }\n\n .instant-apps-export-print__legend-container {\n height: min-content;\n background: #fff;\n overflow: unset;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__legend-container {\n margin: 14px;\n grid-row: 2;\n grid-column: 1;\n }\n\n .esri-legend--card, .esri-legend--card__service-content {\n flex-flow: row wrap;\n }\n\n .instant-apps-export-print .esri-widget > *:not(.esri-scale-bar.esri-widget > *) {\n background: #fff;\n color: #323232;\n }\n\n .instant-apps-export-print__popup-content *, .instant-apps-export-print__img .esri-feature.esri-widget * {\n color: #323232;\n }\n\n .instant-apps-export-print .esri-widget__heading {\n margin: 4pt 7pt;\n padding: 0;\n color: #323232;\n }\n\n .instant-apps-export-print .esri-legend__ramp-label:before {\n border-color: rgba(0,0,0,0) rgba(50,50,50,.8) rgba(0,0,0,0) rgba(0,0,0,0);\n }\n\n .instant-apps-export-print .esri-legend--card__section {\n padding: 4pt 0 4pt;\n min-width: unset;\n border-left: none;\n }\n\n .instant-apps-export-print .esri-legend--card__section:first-child {\n border-left: none;\n }\n\n .instant-apps-export-print .esri-legend--card__service {\n border: none;\n flex: 0 1 auto;\n break-inside: avoid;\n }\n\n .instant-apps-export-print .esri-legend--card {\n border: none;\n gap: 6pt 12pt;\n }\n\n .instant-apps-export-print .esri-legend--card:not(:first-child),\n .instant-apps-export-print .esri-compass.esri-widget:not(:first-child) {\n display: none;\n }\n\n .instant-apps-export-print .esri-legend--card__service-caption-container {\n height: unset;\n padding: 0;\n border-bottom: none;\n }\n\n .instant-apps-export-print .esri-legend--card__service-caption-text {\n padding-bottom: 4px;\n }\n\n .instant-apps-export-print__compass-container {\n position: absolute;\n top: 65px;\n left: 15px;\n background: #fff;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\n --calcite-ui-icon-color: #000;\n border-radius: 50%;\n height: fit-content;\n }\n\n .instant-apps-export-print__compass-container .esri-compass {\n background: #fff;\n }\n\n .instant-apps-export-print__compass-container .esri-compass__icon.esri-icon-compass {\n color: #000;\n }\n\n .instant-apps-export-print__compass-container.esri-compass.esri-widget--button {\n background: #fff;\n }\n\n .instant-apps-export-print__scale-bar-container {\n width: 100%;\n position: absolute;\n bottom: 15px;\n margin: 0 15px;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__label {\n color: #323232;\n font-size: 10px;\n padding: 0 4px;\n }\n \n .instant-apps-export-print__scale-bar-container--position .esri-scale-bar__label {\n height: 10px;\n padding: 0 2px;\n line-height: 11px;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__bar-container:nth-child(1n+3) {\n display: none;\n }\n\n .instant-apps-export-print__scale-bar-container--position .esri-scale-bar__bar-container.esri-scale-bar__bar-container--line {\n align-items: center;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line {\n background-color: rgba(255, 255, 255, 0.66);\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--top {\n width: var(--instant-apps-scale-bar-top) !important;\n border-bottom: 2px solid #323232;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--bottom {\n width: var(--instant-apps-scale-bar-bottom) !important;\n border-top: 2px solid #323232;\n }\n\n .instant-apps-export-print__scale-bar-container--position .esri-scale-bar__label-container--line {\n position: unset;\n margin: 0 2px;\n background-color: rgba(255, 255, 255, 0.66);\n height: 10px;\n display: flex;\n align-items: center;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--top:before,\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--top:after,\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--bottom:before,\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--bottom:after {\n background-color: #323232;\n border-right: 2px solid #323232;\n }\n\n .instant-apps-export-print__popup-container .esri-feature-media__item-navigation {\n display: none;\n }\n\n .instant-apps-export-print__popup-container .esri-feature-media__chart.esri-feature-media__chart--rendered * {\n width: 100%!important;\n }\n\n .instant-apps-export-print__popup-content .esri-popup__content {\n margin: 0;\n }\n\n .instant-apps-export-print__content-container {\n display: flex;\n gap: 24px;\n break-inside: avoid;\n break-before: auto;\n }',document.body.prepend(this.printStyleEl))}handleImgLoaded(){this.exportIsLoading=!0,setTimeout((()=>{"PDF"===this.selectedFileType&&(this.exportIsLoading=!1),this.setupViewPrintElements()}),1500)}handleExtraContent(){const t=this.printEl.querySelector("#export-content");if(null!=t){t.innerHTML="";const n=null!=this.extraContent&&this.includeExtraContent;this.printEl.classList.toggle(B,"PDF"!==this.selectedFileType&&this.showExtraContentInImg&&n),n?(t.style.display="block",t.append(this.extraContent.cloneNode(!0))):t.style.display="none"}else this.showExtraContentInImg&&"PDF"!==this.selectedFileType&&!this.includeExtraContent&&this.printEl.classList.toggle(B,!1)}resetPrintContent(){var t,n,i;if(null!=this.view){this.screenshot=null,null===(t=this.printContainerEl)||void 0===t||t.prepend(this.printEl),null===(n=this.printStyleEl)||void 0===n||n.remove(),null===(i=this.tmpPopupTitleEl)||void 0===i||i.remove(),this.printStyleEl=void 0;const s=this.printEl.querySelector("#export-content");s&&(s.innerHTML="")}}async updatePopupToPrint(){var t,n;if(null==this.view||null==this.popupContainerEl)return;this.popupContainerEl.style.display=this.includePopup&&this.view.popup.visible?"block":"none",this.checkPopupOpen();const i=this.includePopup&&(this.view.popup.visible||this.popupHiddenByMapArea)&&null!=this.view.popup.selectedFeature;if(this.printEl.classList.toggle(B,"PDF"!==this.selectedFileType&&i),i){const i=document.createElement(`h${null!==(t=this.view.popup.headingLevel)&&void 0!==t?t:2}`);i.innerHTML=null!==(n=this.view.popup.title)&&void 0!==n?n:"",i.className="esri-widget__heading esri-popup__header-title",null==this.popupTitleEl?(this.tmpPopupTitleEl=document.createElement("div"),this.tmpPopupTitleEl.prepend(i),this.tmpPopupTitleEl.style.display=this.view.popup.title?"block":"none",this.popupContainerEl.prepend(this.tmpPopupTitleEl)):(this.popupTitleEl.style.display=this.view.popup.title?"block":"none",this.popupTitleEl.innerHTML="",this.popupTitleEl.prepend(i))}}updateExportOutput(){this.output={},this.showHeaderTitle&&(this.output.headerTitle=this.headerTitle),this.showIncludeLegend&&(this.output.includeLegend=this.includeLegend),this.showIncludeMap&&(this.output.includeMap=this.includeMap),this.showIncludePopup&&(this.output.includePopup=this.includePopup),this.exportOutputUpdated.emit()}setupViewPrintElements(){if(null!=this.view)if(this.handleLegendSetup(),"PDF"===this.selectedFileType){const t=document.title;this.showHeaderTitle&&this.headerTitle&&(document.title=this.headerTitle),window.print(),document.title=t,setTimeout((()=>{this.resetPrintContent()}),1e3)}else this.convertToImage()}async convertToImage(){const t={backgroundColor:"#FFF",skipFonts:!0};let n="";try{n="JPG"===this.selectedFileType?await G(this.printEl,t):await async function(t,n={}){return(await V(t,n)).toDataURL()}(this.printEl,t)}catch(i){this.logoImage=void 0,await new Promise((t=>setTimeout(t,500))),n=await G(this.printEl,t)}finally{this.handleGetImage(n)}}handleGetImage(t){var n;this.resetPrintContent(),t&&(this.dataUrl=t,this.setMapAreaOnClick(!1),this.showPreview(t),null===(n=this.view)||void 0===n||n.container.classList.remove("screenshot-cursor"),this.setMaskPosition(null))}handleLegendSetup(){var t;if(this.showIncludeLegend&&null!=this.view&&this.includeMap&&null!=this.legendContainerEl){const n=null!=this.legend&&(null===(t=this.legend.activeLayerInfos)||void 0===t?void 0:t.length)>0;this.legendContainerEl.style.display=this.includeLegend&&n?"block":"none"}}handleWidgetCreation(){this.includeMap&&(this.handleLegendCreation(),this.handleCompassCreation(),this.updatePopupToPrint())}handleIncludePopup(){var t,n;if(this.showIncludePopup){const i="includePopup";null===(t=this.handles)||void 0===t||t.remove(i),null===(n=this.reactiveUtils)||void 0===n||n.whenOnce((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.ready})).then((()=>{var t;null===(t=this.handles)||void 0===t||t.add(this.reactiveUtils.watch((()=>{var t,n;return null===(n=null===(t=this.view)||void 0===t?void 0:t.popup)||void 0===n?void 0:n.visible}),(t=>{this.settingMapArea||(this.includePopup=t)})),i)}))}}handleLegendCreation(){var t,n,i,s,e;if(null!=this.view&&this.showIncludeLegend&&null!=this.legendContainerEl){const o=this.view.map,r=null===(n=null===(t=this.legend)||void 0===t?void 0:t.view)||void 0===n?void 0:n.map;null!=(null===(i=null==o?void 0:o.portalItem)||void 0===i?void 0:i.id)&&(null===(s=null==o?void 0:o.portalItem)||void 0===s?void 0:s.id)===(null===(e=null==r?void 0:r.portalItem)||void 0===e?void 0:e.id)||this.updateLegend()}}updateLegend(){var t;null===(t=this.view)||void 0===t||t.when((async t=>{if(null!=this.legend&&(this.legend.destroy(),this.legend=null),null!=this.legendContainerEl){this.legendContainerEl.innerHTML="";const n=document.createElement("div");this.legendContainerEl.append(n);const[i]=await o(["esri/widgets/Legend"]);this.legend=new i({container:n,view:t,respectLayerDefinitionExpression:!0,style:{type:"card",layout:"side-by-side"}})}}))}handleCompassCreation(){var t,n,i,s;if(null!=this.view&&null!=this.compassContainerEl){const e=this.view.map,o=null===(n=null===(t=this.compass)||void 0===t?void 0:t.view)||void 0===n?void 0:n.map;(null===(i=null==e?void 0:e.portalItem)||void 0===i?void 0:i.id)===(null===(s=null==o?void 0:o.portalItem)||void 0===s?void 0:s.id)||this.updateCompass()}}updateCompass(){var t;null===(t=this.view)||void 0===t||t.when((async t=>{var n;null===(n=this.compass)||void 0===n||n.destroy(),this.compass=null;const i=document.createElement("div");this.compassContainerEl.append(i);const[s]=await o(["esri/widgets/Compass"]);this.compass=new s({container:i,view:t})}))}updateScaleBar(){if(this.scaleBarContainerEl&&null!=this.view&&(this.scaleBarContainerEl.innerHTML="",this.showScaleBar)){const t=this.view.ui.getComponents(),n=null==t?void 0:t.find((({container:t})=>{var n;return null===(n=null==t?void 0:t.className)||void 0===n?void 0:n.includes("esri-scale-bar")}));null!=(null==n?void 0:n.container)&&"string"!=typeof n.container&&this.scaleBarContainerEl.append(n.container.cloneNode(!0))}}async viewScreenshot(){var t;if(null!=this.view&&this.includeMap&&(null==this.screenshot&&(null===(t=this.scaleBarContainerEl)||void 0===t||t.classList.toggle("instant-apps-export-print__scale-bar-container--position",this.view.width>1e3),this.screenshot=await this.view.takeScreenshot({width:2*this.view.width,height:2*this.view.height})),this.handleScaleBarSize(),null!=this.viewEl&&null!=this.viewWrapperEl)){const{height:t,width:n}=this.screenshot.data;t>n?this.setMaxRowHeightOnViewContainer():this.setMaxWidthOnViewContainer(),this.viewEl.src=this.screenshot.dataUrl}}setMaxRowHeightOnViewContainer(){"PDF"===this.selectedFileType&&(this.printEl.style.gridTemplateRows="minmax(auto, 70%)"),this.viewEl.style.height="100%",this.viewEl.style.width="",this.viewWrapperEl.style.height="100%",this.viewWrapperEl.style.width="fit-content"}setMaxWidthOnViewContainer(){this.printEl.style.gridTemplateRows="",this.viewEl.style.width="100%",this.viewEl.style.height="",this.viewWrapperEl.style.height="fit-content",this.viewWrapperEl.style.width="100%"}checkPopupOpen(){if(null!=this.view){const t=this.view.popup.container,n=null==t?void 0:t.querySelector(".esri-popup .esri-feature__main-container");if(null!=n){const t=n.querySelectorAll("canvas");this.popupContentEl.innerHTML="",this.popupContentEl.append(n.cloneNode(!0));const i=this.popupContentEl.querySelectorAll("canvas");t.forEach(((t,n)=>{var s;const e=t.toDataURL(),o=document.createElement("img");o.src=e;const r=t.getAttribute("style");r&&o.setAttribute("style",r);const a=i[n];null!=a&&(a.replaceWith(o),document.querySelector("link[href*='esri/themes/dark/main.css']")&&null!=(null===(s=o.parentElement)||void 0===s?void 0:s.parentElement)&&(o.parentElement.style.background="#242424",o.parentElement.parentElement.style.background="#242424"))}))}}}createScreenshot(){var t,n,i;if(null!=this.view){this.screenshotPreview=document.createElement("div"),this.screenshotPreview.className="screenshot-preview hide",this.screenshotImgContainer=document.createElement("div"),this.screenshotImgContainer.className="screenshot-img-container",this.screenshotImg=document.createElement("img");const s=document.createElement("div"),e=document.createElement("calcite-button"),o=document.createElement("calcite-button");e.innerHTML="PDF"===this.selectedFileType?null===(t=this.messages)||void 0===t?void 0:t.export:null===(n=this.messages)||void 0===n?void 0:n.downloadImage,o.innerHTML=null===(i=this.messages)||void 0===i?void 0:i.returnToMap,o.appearance="outline-fill",e.onclick=this.exportPreviewOnClick.bind(this),o.onclick=this.screenshotReturn.bind(this),s.append(o,e),this.screenshotImgContainer.append(this.screenshotImg,s),this.screenshotPreview.append(this.screenshotImgContainer),this.view.container.append(this.screenshotPreview)}}createMaskDiv(){null!=this.view&&(this.maskDivEl=document.createElement("div"),this.maskDivEl.id="screenshot-mask",this.maskDivEl.className="hide screenshot-cursor",this.maskDivEl.style.setProperty("--instant-apps-screenshot-mask-background",this.maskBackground),this.maskDivEl.style.setProperty("--instant-apps-screenshot-mask-border",this.maskBorder),this.screenshotStyle=document.createElement("style"),this.screenshotStyle.innerHTML="\n.screenshot-preview.hide, .hide {\n display: none;\n}\n\n.screenshot-cursor {\n cursor: crosshair;\n}\n\n.relative {\n position: relative;\n}\n\n#screenshot-mask {\n position: absolute;\n background: var(--instant-apps-screenshot-mask-background);\n border: var(--instant-apps-screenshot-mask-border);\n}\n\n.screenshot-preview {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n text-align: center;\n background-color: rgba(0, 0, 0, 0.75);\n}\n\n.screenshot-preview * {\n box-sizing: border-box;\n}\n\n.screenshot-img-container img {\n max-height: 75%;\n max-width: 75%;\n object-fit: contain;\n box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.5);\n margin-bottom: 0.5em;\n}\n\n.screenshot-img-container {\n height: 100%;\n width: 100%;\n overflow-y: auto;\n margin-bottom: 8px;\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n}\n\n.screenshot-img-container calcite-button {\n margin: 5px;\n}",this.view.container.append(this.screenshotStyle),this.view.container.append(this.maskDivEl))}screenshotReturn(){this.removeScreenshotElements(),this.exportIsLoading=!1,this.screenshot=null,this.resetPopupVisibility()}setMapAreaOnClick(t){null!=this.view&&(this.settingMapArea=!0,t&&this.view.popup.visible&&(this.popupHiddenByMapArea=!0,this.view.popup.container.style.display="none"),this.exportIsLoading=!0,this.createMaskDiv(),this.createScreenshot(),this.view.container.classList.add("screenshot-cursor","relative"),this.view.addHandles(this.view.on("drag",(async t=>{null!=this.view&&(t.stopPropagation(),"end"!==t.action?this.updateMaskSize(t):this.maskScreenshot())})),st))}updateMaskSize(t){if(null!=this.view){const n=this.clamp(Math.min(t.origin.x,t.x),0,this.view.width),i=this.clamp(Math.max(t.origin.x,t.x),0,this.view.width),s=this.clamp(Math.min(t.origin.y,t.y),0,this.view.height),e=this.clamp(Math.max(t.origin.y,t.y),0,this.view.height);this.area={x:n,y:s,width:i-n,height:e-s},this.setMaskPosition(this.area)}}maskScreenshot(){var t;if(null!=this.view&&null!=this.area){this.view.removeHandles(st);const n=this.area.height,i=this.area.width;this.showScaleBar&&(null===(t=this.scaleBarContainerEl)||void 0===t||t.classList.toggle("instant-apps-export-print__scale-bar-container--position",this.view.width>1e3&&.75*this.view.width<i)),this.view.takeScreenshot({area:this.area,width:2*i,height:2*n,format:"jpg"}).then((t=>{var n;this.screenshot=t,null===(n=this.view)||void 0===n||n.container.classList.remove("screenshot-cursor"),this.setMaskPosition(null),"PDF"===this.selectedFileType?(this.showPreview(null==t?void 0:t.dataUrl),this.resetPopupVisibility()):(null==this.viewWrapperEl||this.viewWrapperEl.contains(this.compassContainerEl)||this.viewWrapperEl.append(this.compassContainerEl),this.handleViewExportOnClick(),null!=this.popoverEl&&(this.popoverEl.open=!1))}))}}setMaskPosition(t){null!=t?(this.maskDivEl.classList.remove("hide"),this.maskDivEl.style.left=`${t.x}px`,this.maskDivEl.style.top=`${t.y}px`,this.maskDivEl.style.width=`${t.width}px`,this.maskDivEl.style.height=`${t.height}px`):this.maskDivEl.remove()}clamp(t,n,i){return t<n?n:t>i?i:t}showPreview(t){t&&(this.screenshotPreview.classList.remove("hide"),null!=this.screenshotImg&&(this.screenshotImg.src=t))}handleScaleBarSize(){var t;if(this.showScaleBar&&"2d"===(null===(t=this.view)||void 0===t?void 0:t.type)&&null!=this.scaleBarContainerEl){const t=this.scaleBarContainerEl.querySelector(".esri-scale-bar__line--top"),n=this.scaleBarContainerEl.querySelector(".esri-scale-bar__line--bottom");this.setScalebarWidth(t,"top"),this.setScalebarWidth(n,"bottom")}}setScalebarWidth(t,n){var i;if(null!=t&&null!=this.screenshot){const s=this.screenshot.data.width/2,e=Number(t.style.width.replace("px",""));null===(i=this.scaleBarContainerEl)||void 0===i||i.style.setProperty(`--instant-apps-scale-bar-${n}`,e/s*100+"%")}}removeScreenshotElements(){var t,n,i;null===(t=this.view)||void 0===t||t.removeHandles(st),null===(n=this.screenshotPreview)||void 0===n||n.remove(),null===(i=this.screenshotStyle)||void 0===i||i.remove()}resetPopupVisibility(){this.view&&this.settingMapArea&&this.popupHiddenByMapArea&&(this.view.popup.container.style.display=""),this.settingMapArea=!1,this.popupHiddenByMapArea=!1}handleSelectFileType(t){this.selectedFileType=t.target.value,"PDF"===this.selectedFileType?(this.includeMap=this.pdfIncludeMap,this.showExtraContentInImg||(this.includeExtraContent=this.pdfIncludeExtraContent)):(this.pdfIncludeMap=this.includeMap,this.includeMap=!0,this.showExtraContentInImg||(this.pdfIncludeExtraContent=this.includeExtraContent,this.includeMap=!0,this.includeExtraContent=!1))}get el(){return e(this)}static get watchers(){return{includeMap:["watchIncludeMap"],view:["watchView"]}}};et.style=":host{display:block;--instant-apps-export-action-background:var(--calcite-color-foreground-1);--instant-apps-export-action-background-hover:var(--calcite-color-foreground-2);--instant-apps-export-action-background-press:var(--calcite-color-foreground-3);--instant-apps-export-action-height:100%;--instant-apps-export-action-width:fit-content;--instant-apps-export-action-icon-color:var(--calcite-color-text-3);--instant-apps-export-action-icon-hover-color:var(--calcite-color-text-1);--instant-apps-export-background:var(--calcite-color-foreground-1);--instant-apps-export-text-color:var(--calcite-color-text-1);--instant-apps-export-popover-width:250px}.instant-apps-export{height:100%}.instant-apps-export *{box-sizing:border-box}.instant-apps-export__popover-container,.instant-apps-export__inline-container{padding:12px;background:var(--instant-apps-export-background);--calcite-color-text-1:var(--instant-apps-export-text-color)}.instant-apps-export__popover-container{width:var(--instant-apps-export-popover-width)}.instant-apps-export calcite-action{height:var(--instant-apps-export-action-height);width:var(--instant-apps-export-action-width);--calcite-color-foreground-1:var(--instant-apps-export-action-background);--calcite-color-foreground-2:var(--instant-apps-export-action-background-hover);--calcite-color-foreground-3:var(--instant-apps-export-action-background-press);--calcite-color-text-3:var(--instant-apps-export-action-icon-color);--calcite-color-text-1:var(--instant-apps-export-action-icon-hover-color)}.instant-apps-export .instant-apps-export-print{display:none}.instant-apps-export .instant-apps-export-print_img{display:flex;flex-flow:row wrap}.instant-apps-export__visually-hidden{position:absolute;top:0;z-index:-1;visibility:hidden}.instant-apps-export calcite-input{--calcite-color-foreground-1:var(--instant-apps-export-background);--calcite-color-text-1:var(--instant-apps-export-text-color)}.instant-apps-export calcite-popover{--calcite-color-foreground-1:var(--instant-apps-export-background)}.instant-apps-export calcite-switch{--calcite-color-foreground-1:#fff;--calcite-color-foreground-2:#f3f3f3}.instant-apps-export calcite-button:last-of-type{margin-top:0.5rem}.instant-apps-export .calcite-mode-dark calcite-switch{--calcite-color-foreground-1:#2b2b2b;--calcite-color-foreground-2:#202020}.instant-apps-export__compass-container.esri-widget{background:#fff;box-shadow:0 1px 2px rgba(0, 0, 0, 0.3)}.instant-apps-export__compass-container.esri-widget .esri-compass__icon.esri-icon-compass{color:#6e6e6e}.hide{display:none}.screenshotCursor{cursor:crosshair}";export{et as instant_apps_export}
6
+ import{r as t,c as n,h as i,H as s,g as e}from"./p-8c40bdec.js";import{l as o}from"./p-a4bd7b09.js";import{g as r}from"./p-1e364924.js";import{g as a}from"./p-a9a72626.js";import"./p-6a68306c.js";import"./p-d4056c1c.js";import"./p-af2c8aa9.js";const p=(()=>{let t=0;return()=>(t+=1,`u${`0000${(Math.random()*36**4|0).toString(36)}`.slice(-4)}${t}`)})();function c(t){const n=[];for(let i=0,s=t.length;i<s;i++)n.push(t[i]);return n}function l(t,n){const i=(t.ownerDocument.defaultView||window).getComputedStyle(t).getPropertyValue(n);return i?parseFloat(i.replace("px","")):0}function h(t,n={}){return{width:n.width||function(t){const n=l(t,"border-left-width"),i=l(t,"border-right-width");return t.clientWidth+n+i}(t),height:n.height||function(t){const n=l(t,"border-top-width"),i=l(t,"border-bottom-width");return t.clientHeight+n+i}(t)}}const u=16384;function d(t){return new Promise(((n,i)=>{const s=new Image;s.decode=()=>n(s),s.onload=()=>n(s),s.onerror=i,s.crossOrigin="anonymous",s.decoding="async",s.src=t}))}const f=(t,n)=>{if(t instanceof n)return!0;const i=Object.getPrototypeOf(t);return null!==i&&(i.constructor.name===n.name||f(i,n))};function g(t,n,i){const s=window.getComputedStyle(t,i),e=s.getPropertyValue("content");if(""===e||"none"===e)return;const o=p();try{n.className=`${n.className} ${o}`}catch(t){return}const r=document.createElement("style");r.appendChild(function(t,n,i){const s=`.${t}:${n}`,e=i.cssText?function(t){const n=t.getPropertyValue("content");return`${t.cssText} content: '${n.replace(/'|"/g,"")}';`}(i):function(t){return c(t).map((n=>`${n}: ${t.getPropertyValue(n)}${t.getPropertyPriority(n)?" !important":""};`)).join(" ")}(i);return document.createTextNode(`${s}{${e}}`)}(o,i,s)),n.appendChild(r)}const v="application/font-woff",x="image/jpeg",m={woff:v,woff2:v,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:x,jpeg:x,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function _(t){const n=function(t){const n=/\.([^./]*?)$/g.exec(t);return n?n[1]:""}(t).toLowerCase();return m[n]||""}function b(t){return-1!==t.search(/^(data:)/)}function w(t,n){return`data:${n};base64,${t}`}async function y(t,n,i){const s=await fetch(t,n);if(404===s.status)throw new Error(`Resource "${s.url}" not found`);const e=await s.blob();return new Promise(((t,n)=>{const o=new FileReader;o.onerror=n,o.onloadend=()=>{try{t(i({res:s,result:o.result}))}catch(t){n(t)}},o.readAsDataURL(e)}))}const k={};async function P(t,n,i){const s=function(t,n,i){let s=t.replace(/\?.*/,"");return i&&(s=t),/ttf|otf|eot|woff2?/i.test(s)&&(s=s.replace(/.*\//,"")),n?`[${n}]${s}`:s}(t,n,i.includeQueryParams);if(null!=k[s])return k[s];let e;i.cacheBust&&(t+=(/\?/.test(t)?"&":"?")+(new Date).getTime());try{const s=await y(t,i.fetchRequestInit,(({res:t,result:i})=>(n||(n=t.headers.get("Content-Type")||""),function(t){return t.split(/,/)[1]}(i))));e=w(s,n)}catch(n){e=i.imagePlaceholder||"";let s=`Failed to fetch resource: ${t}`;n&&(s="string"==typeof n?n:n.message),s&&console.warn(s)}return k[s]=e,e}const $=t=>null!=t.tagName&&"SLOT"===t.tagName.toUpperCase();async function S(t,n,i){return i||!n.filter||n.filter(t)?Promise.resolve(t).then((t=>async function(t,n){return f(t,HTMLCanvasElement)?async function(t){const n=t.toDataURL();return"data:,"===n?t.cloneNode(!1):d(n)}(t):f(t,HTMLVideoElement)?async function(t,n){if(t.currentSrc){const n=document.createElement("canvas"),i=n.getContext("2d");return n.width=t.clientWidth,n.height=t.clientHeight,null==i||i.drawImage(t,0,0,n.width,n.height),d(n.toDataURL())}const i=t.poster,s=_(i);return d(await P(i,s,n))}(t,n):f(t,HTMLIFrameElement)?async function(t){var n;try{if(null===(n=null==t?void 0:t.contentDocument)||void 0===n?void 0:n.body)return await S(t.contentDocument.body,{},!0)}catch(t){}return t.cloneNode(!1)}(t):t.cloneNode(!1)}(t,n))).then((i=>async function(t,n,i){var s,e;let o=[];return o=$(t)&&t.assignedNodes?c(t.assignedNodes()):f(t,HTMLIFrameElement)&&(null===(s=t.contentDocument)||void 0===s?void 0:s.body)?c(t.contentDocument.body.childNodes):c((null!==(e=t.shadowRoot)&&void 0!==e?e:t).childNodes),0===o.length||f(t,HTMLVideoElement)||await o.reduce(((t,s)=>t.then((()=>S(s,i))).then((t=>{t&&n.appendChild(t)}))),Promise.resolve()),n}(t,i,n))).then((n=>function(t,n){return f(n,Element)&&(function(t,n){const i=n.style;if(!i)return;const s=window.getComputedStyle(t);s.cssText?(i.cssText=s.cssText,i.transformOrigin=s.transformOrigin):c(s).forEach((e=>{let o=s.getPropertyValue(e);if("font-size"===e&&o.endsWith("px")){const t=Math.floor(parseFloat(o.substring(0,o.length-2)))-.1;o=`${t}px`}f(t,HTMLIFrameElement)&&"display"===e&&"inline"===o&&(o="block"),"d"===e&&n.getAttribute("d")&&(o=`path(${n.getAttribute("d")})`),i.setProperty(e,o,s.getPropertyPriority(e))}))}(t,n),function(t,n){g(t,n,":before"),g(t,n,":after")}(t,n),function(t,n){f(t,HTMLTextAreaElement)&&(n.innerHTML=t.value),f(t,HTMLInputElement)&&n.setAttribute("value",t.value)}(t,n),function(t,n){if(f(t,HTMLSelectElement)){const i=Array.from(n.children).find((n=>t.value===n.getAttribute("value")));i&&i.setAttribute("selected","")}}(t,n)),n}(t,n))).then((t=>async function(t,n){const i=t.querySelectorAll?t.querySelectorAll("use"):[];if(0===i.length)return t;const s={};for(let e=0;e<i.length;e++){const o=i[e].getAttribute("xlink:href");if(o){const i=t.querySelector(o),e=document.querySelector(o);i||!e||s[o]||(s[o]=await S(e,n,!0))}}const e=Object.values(s);if(e.length){const n="http://www.w3.org/1999/xhtml",i=document.createElementNS(n,"svg");i.setAttribute("xmlns",n),i.style.position="absolute",i.style.width="0",i.style.height="0",i.style.overflow="hidden",i.style.display="none";const s=document.createElementNS(n,"defs");i.appendChild(s);for(let t=0;t<e.length;t++)s.appendChild(e[t]);t.appendChild(i)}return t}(t,n))):null}const C=/url\((['"]?)([^'"]+?)\1\)/g,E=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,F=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function M(t){return-1!==t.search(C)}async function j(t,n,i){if(!M(t))return t;const s=function(t,{preferredFontFormat:n}){return n?t.replace(F,(t=>{for(;;){const[i,,s]=E.exec(t)||[];if(!s)return"";if(s===n)return`src: ${i};`}})):t}(t,i),e=function(t){const n=[];return t.replace(C,((t,i,s)=>(n.push(s),t))),n.filter((t=>!b(t)))}(s);return e.reduce(((t,s)=>t.then((t=>async function(t,n,i,s,e){try{const o=i?function(t,n){if(t.match(/^[a-z]+:\/\//i))return t;if(t.match(/^\/\//))return window.location.protocol+t;if(t.match(/^[a-z]+:/i))return t;const i=document.implementation.createHTMLDocument(),s=i.createElement("base"),e=i.createElement("a");return i.head.appendChild(s),i.body.appendChild(e),n&&(s.href=n),e.href=t,e.href}(n,i):n,r=_(n);let a;return a=e?w(await e(o),r):await P(o,r,s),t.replace(function(t){const n=t.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return new RegExp(`(url\\(['"]?)(${n})(['"]?\\))`,"g")}(n),`$1${a}$3`)}catch(t){}return t}(t,s,n,i)))),Promise.resolve(s))}async function T(t,n,i){var s;const e=null===(s=n.style)||void 0===s?void 0:s.getPropertyValue(t);if(e){const s=await j(e,null,i);return n.style.setProperty(t,s,n.style.getPropertyPriority(t)),!0}return!1}async function L(t,n){f(t,Element)&&(await async function(t,n){await T("background",t,n)||await T("background-image",t,n),await T("mask",t,n)||await T("mask-image",t,n)}(t,n),await async function(t,n){const i=f(t,HTMLImageElement);if((!i||b(t.src))&&(!f(t,SVGImageElement)||b(t.href.baseVal)))return;const s=i?t.src:t.href.baseVal,e=await P(s,_(s),n);await new Promise(((n,s)=>{t.onload=n,t.onerror=s;const o=t;o.decode&&(o.decode=n),"lazy"===o.loading&&(o.loading="eager"),i?(t.srcset="",t.src=e):t.href.baseVal=e}))}(t,n),await async function(t,n){const i=c(t.childNodes).map((t=>L(t,n)));await Promise.all(i).then((()=>t))}(t,n))}const D={};async function I(t){let n=D[t];if(null!=n)return n;const i=await fetch(t);return n={url:t,cssText:await i.text()},D[t]=n,n}async function O(t,n){let i=t.cssText;const s=/url\(["']?([^"')]+)["']?\)/g,e=(i.match(/url\([^)]+\)/g)||[]).map((async e=>{let o=e.replace(s,"$1");return o.startsWith("https://")||(o=new URL(o,t.url).href),y(o,n.fetchRequestInit,(({result:t})=>(i=i.replace(e,`url(${t})`),[e,t])))}));return Promise.all(e).then((()=>i))}function z(t){if(null==t)return[];const n=[];let i=t.replace(/(\/\*[\s\S]*?\*\/)/gi,"");const s=new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){const t=s.exec(i);if(null===t)break;n.push(t[0])}i=i.replace(s,"");const e=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,o=new RegExp("((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})","gi");for(;;){let t=e.exec(i);if(null===t){if(t=o.exec(i),null===t)break;e.lastIndex=o.lastIndex}else o.lastIndex=e.lastIndex;n.push(t[0])}return n}async function R(t,n){const i=null!=n.fontEmbedCSS?n.fontEmbedCSS:n.skipFonts?null:await async function(t,n){const i=await async function(t,n){if(null==t.ownerDocument)throw new Error("Provided element is not within a Document");const i=c(t.ownerDocument.styleSheets),s=await async function(t,n){const i=[],s=[];return t.forEach((i=>{if("cssRules"in i)try{c(i.cssRules||[]).forEach(((t,e)=>{if(t.type===CSSRule.IMPORT_RULE){let o=e+1;const r=I(t.href).then((t=>O(t,n))).then((t=>z(t).forEach((t=>{try{i.insertRule(t,t.startsWith("@import")?o+=1:i.cssRules.length)}catch(n){console.error("Error inserting rule from remote css",{rule:t,error:n})}})))).catch((t=>{console.error("Error loading remote css",t.toString())}));s.push(r)}}))}catch(e){const o=t.find((t=>null==t.href))||document.styleSheets[0];null!=i.href&&s.push(I(i.href).then((t=>O(t,n))).then((t=>z(t).forEach((t=>{o.insertRule(t,i.cssRules.length)})))).catch((t=>{console.error("Error loading remote stylesheet",t)}))),console.error("Error inlining remote css file",e)}})),Promise.all(s).then((()=>(t.forEach((t=>{if("cssRules"in t)try{c(t.cssRules||[]).forEach((t=>{i.push(t)}))}catch(n){console.error(`Error while reading CSS rules from ${t.href}`,n)}})),i)))}(i,n);return function(t){return t.filter((t=>t.type===CSSRule.FONT_FACE_RULE)).filter((t=>M(t.style.getPropertyValue("src"))))}(s)}(t,n);return(await Promise.all(i.map((t=>j(t.cssText,t.parentStyleSheet?t.parentStyleSheet.href:null,n))))).join("\n")}(t,n);if(i){const n=document.createElement("style"),s=document.createTextNode(i);n.appendChild(s),t.firstChild?t.insertBefore(n,t.firstChild):t.appendChild(n)}}async function H(t,n={}){const{width:i,height:s}=h(t,n),e=await S(t,n,!0);return await R(e,n),await L(e,n),function(t,n){const{style:i}=t;n.backgroundColor&&(i.backgroundColor=n.backgroundColor),n.width&&(i.width=`${n.width}px`),n.height&&(i.height=`${n.height}px`);const s=n.style;null!=s&&Object.keys(s).forEach((t=>{i[t]=s[t]}))}(e,n),await async function(t,n,i){const s="http://www.w3.org/2000/svg",e=document.createElementNS(s,"svg"),o=document.createElementNS(s,"foreignObject");return e.setAttribute("width",`${n}`),e.setAttribute("height",`${i}`),e.setAttribute("viewBox",`0 0 ${n} ${i}`),o.setAttribute("width","100%"),o.setAttribute("height","100%"),o.setAttribute("x","0"),o.setAttribute("y","0"),o.setAttribute("externalResourcesRequired","true"),e.appendChild(o),o.appendChild(t),async function(t){return Promise.resolve().then((()=>(new XMLSerializer).serializeToString(t))).then(encodeURIComponent).then((t=>`data:image/svg+xml;charset=utf-8,${t}`))}(e)}(e,i,s)}async function V(t,n={}){const{width:i,height:s}=h(t,n),e=await H(t,n),o=await d(e),r=document.createElement("canvas"),a=r.getContext("2d"),p=n.pixelRatio||function(){let t,n;try{n=process}catch(t){}const i=n&&n.env?n.env.devicePixelRatio:null;return i&&(t=parseInt(i,10),Number.isNaN(t)&&(t=1)),t||window.devicePixelRatio||1}(),c=n.canvasWidth||i,l=n.canvasHeight||s;return r.width=c*p,r.height=l*p,n.skipAutoScale||function(t){(t.width>u||t.height>u)&&(t.width>u&&t.height>u?t.width>t.height?(t.height*=u/t.width,t.width=u):(t.width*=u/t.height,t.height=u):t.width>u?(t.height*=u/t.width,t.width=u):(t.width*=u/t.height,t.height=u))}(r),r.style.width=`${c}`,r.style.height=`${l}`,n.backgroundColor&&(a.fillStyle=n.backgroundColor,a.fillRect(0,0,r.width,r.height)),a.drawImage(o,0,0,r.width,r.height),r}async function G(t,n={}){return(await V(t,n)).toDataURL("image/jpeg",n.quality||1)}const U="instant-apps-export calcite-mode-light",W="instant-apps-export-print instant-apps-export-print__pdf",A="instant-apps-export-print instant-apps-export-print__img",B="instant-apps-export-print__img--extra-content",N="instant-apps-export-print__content-container",J="instant-apps-export-print__extra-container",q="instant-apps-export-print__legend-container",X="instant-apps-export-print__compass-container",K="instant-apps-export-print__scale-bar-container",Q="instant-apps-export-print__popup-container",Y="instant-apps-export-print__popup-content",Z="instant-apps-export-print__popup-title",tt="instant-apps-export-print__view",nt="instant-apps-export-print__view-container",it="instant-apps-export-print__view-wrapper",st="instant-app-export-drag",et=class{constructor(i){t(this,i),this.exportOutputUpdated=n(this,"exportOutputUpdated",7),this.fileTypes=["PDF","JPG","PNG"],this.output=void 0,this.beforeExport=()=>Promise.resolve(),this.popoverIcon="export",this.extraContent=void 0,this.extraContentLabel=void 0,this.headerTitle="",this.logoImage="",this.includeExtraContent=!0,this.showExtraContentInImg=!1,this.includeLegend=!0,this.includeMap=!0,this.includePopup=!1,this.includeFileFormat=!0,this.mode="popover",this.popoverPositioning="absolute",this.popoverPlacement="auto",this.scale="m",this.showHeaderTitle=!0,this.showIncludeLegend=!0,this.showIncludeMap=!1,this.showIncludePopup=!0,this.showScaleBar=!1,this.view=void 0,this.maskBackground="rgba(255, 51, 0, 0.1)",this.maskBorder="2px dashed rgb(255, 51, 0)",this.baseClass=U,this.exportIsLoading=void 0,this.messages=void 0,this.selectedFileType="PDF"}watchIncludeMap(t){t&&this.updateLegend()}watchView(){this.handleIncludePopup()}async componentWillLoad(){this.baseClass="dark"===a(this.el)?"instant-apps-export calcite-mode-dark":U,r(this),await this.initializeModules()}componentDidLoad(){this.printContainerEl.prepend(this.printEl),this.handleIncludePopup()}async initializeModules(){const[t,n]=await o(["esri/core/Handles","esri/core/reactiveUtils"]);return this.handles=new t,this.reactiveUtils=n,Promise.resolve()}render(){const t="popover"===this.mode?this.renderPopover():this.renderPanel(),n=this.renderCompass();return i(s,{key:"9811c244faf2c794db3edaad498a9a902cb3faad"},i("div",{key:"cb880c04d46ec06a9588cedc0bd90ab62d25c0ac",class:this.baseClass,onMouseEnter:this.handleWidgetCreation.bind(this),onFocusin:this.handleWidgetCreation.bind(this)},t,i("div",{key:"fc7ccd1eeb4b6a82bd9804d1aa73c4f242085a56",class:"instant-apps-export__visually-hidden"},n)))}renderPopover(){var t,n,s;const e=this.renderPanel();return[i("calcite-popover",{referenceElement:"export-popover-btn",label:null===(t=this.messages)||void 0===t?void 0:t.exportPopover,overlayPositioning:this.popoverPositioning,placement:this.popoverPlacement,autoClose:!0,ref:t=>this.popoverEl=t},e),i("calcite-action",{id:"export-popover-btn",alignment:"center",icon:this.popoverIcon,scale:this.scale,title:null===(n=this.messages)||void 0===n?void 0:n.exportBtn,text:null===(s=this.messages)||void 0===s?void 0:s.exportBtn})]}renderPanel(){var t,n,s;const e=this.showHeaderTitle?this.renderTitle():null,o=null!=this.extraContent?this.renderSwitch("includeExtraContent",this.extraContentLabel,"PDF"!==this.selectedFileType&&!this.showExtraContentInImg):null,r=this.showIncludeMap?this.renderSwitch("includeMap",void 0,"PDF"!==this.selectedFileType):null,a=this.includeMap?this.renderMapOptions():null,p=this.includeFileFormat?this.renderSelectFileType():null,c="PDF"===this.selectedFileType?this.renderPrint():this.renderImg();return i("div",{class:"inline"===this.mode?"instant-apps-export__inline-container":"instant-apps-export__popover-container"},e,o,r,a,p,this.includeMap?i("calcite-button",{appearance:"transparent",width:"full",onClick:this.setMapAreaOnClick.bind(this,!0),disabled:this.exportIsLoading},null===(t=this.messages)||void 0===t?void 0:t.setMapArea):null,i("calcite-button",{width:"full",onClick:this.exportOnClick.bind(this),disabled:this.exportIsLoading},"PDF"===this.selectedFileType?null===(n=this.messages)||void 0===n?void 0:n.export:null===(s=this.messages)||void 0===s?void 0:s.preview),c)}renderTitle(){var t;return i("calcite-label",null,null===(t=this.messages)||void 0===t?void 0:t.title,i("calcite-input",{value:this.headerTitle,onCalciteInputInput:this.updateHeaderTitle.bind(this)}))}renderSwitch(t,n,s){var e;const o=null!=n?n:null===(e=this.messages)||void 0===e?void 0:e[t];return i("calcite-label",{layout:"inline-space-between"},o,i("calcite-switch",{checked:this[t],value:t,onCalciteSwitchChange:this.optionOnChange.bind(this),disabled:s}))}renderSelectFileType(){var t;return i("calcite-label",null,null===(t=this.messages)||void 0===t?void 0:t.fileType,i("calcite-select",{label:"",onCalciteSelectChange:this.handleSelectFileType.bind(this)},this.fileTypes.map((t=>i("calcite-option",{value:t,selected:t===this.selectedFileType},t)))))}renderMapOptions(){const t=this.showIncludeLegend?this.renderSwitch("includeLegend"):null,n=this.showIncludePopup?this.renderSwitch("includePopup"):null;return i("div",null,t,n)}renderPrint(){const t=this.includeMap?this.renderPrintMap():null,n=this.renderExtraContent(),s=this.includeMap&&this.showIncludeLegend?this.renderLegend():null,e=this.includeMap&&this.showIncludePopup?this.renderPopup():null;return i("div",{ref:t=>this.printContainerEl=t},i("div",{class:W,ref:t=>this.printEl=t},t,s,i("div",{class:N},e,n)))}renderPrintMap(){return i("div",{class:nt,ref:t=>this.viewContainerEl=t},i("div",{class:it,ref:t=>this.viewWrapperEl=t},this.headerTitle?i("instant-apps-header",{logoImage:this.logoImage,logoScale:"s",titleText:this.headerTitle,backgroundColor:"#fff",textColor:"#323232"}):null,i("img",{class:tt,ref:t=>this.viewEl=t}),i("div",{class:K,ref:t=>this.scaleBarContainerEl=t})))}renderLegend(){return i("div",{class:q,ref:t=>this.legendContainerEl=t})}renderCompass(){return i("div",{class:X,ref:t=>this.compassContainerEl=t})}renderPopup(){return i("div",{class:Q,ref:t=>this.popupContainerEl=t},i("div",{ref:t=>this.popupTitleEl=t,class:Z}),i("div",{ref:t=>this.popupContentEl=t,class:Y}))}renderExtraContent(){return i("div",{class:J,id:"export-content",ref:t=>this.extraContainerEl=t})}renderImg(){const t=this.includeMap?this.renderPrintMap():null,n=this.includeMap&&this.showIncludeLegend?this.renderLegend():null;let s;return this.includeMap&&this.showIncludePopup?s=this.renderPopup():this.showExtraContentInImg&&null!=this.extraContent&&this.includeExtraContent&&(s=this.renderExtraContent()),i("div",{ref:t=>this.printContainerEl=t},i("div",{class:A,ref:t=>this.printEl=t},t,n,s))}optionOnChange(t){const{checked:n,value:i}=t.target;this[i]=n,this.updateExportOutput()}updateHeaderTitle(t){this.headerTitle=t.target.value,this.updateExportOutput()}async exportOnClick(){this.removeScreenshotElements(),await this.beforeExport(),null==this.viewWrapperEl||this.viewWrapperEl.contains(this.compassContainerEl)||this.viewWrapperEl.append(this.compassContainerEl),this.handleViewExportOnClick(),null!=this.popoverEl&&(this.popoverEl.open=!1)}async exportPreviewOnClick(){"PDF"===this.selectedFileType?await this.exportPDF():this.exportImg()}async exportPDF(){this.removeScreenshotElements(),await this.beforeExport(),null==this.viewWrapperEl||this.viewWrapperEl.contains(this.compassContainerEl)||this.viewWrapperEl.append(this.compassContainerEl),this.handleViewExportOnClick(),null!=this.popoverEl&&(this.popoverEl.open=!1)}exportImg(){var t;if(this.resetPopupVisibility(),null==this.dataUrl)return;const n=document.createElement("a");n.id="download-link",n.href=this.dataUrl,n.download=null!==(t=this.headerTitle)&&void 0!==t?t:document.title,n.click(),this.dataUrl=null,this.exportIsLoading=!1,this.removeScreenshotElements(),this.resetPrintContent()}async handleViewExportOnClick(){null!=this.view?(this.addPrintStyling(),document.body.prepend(this.printEl),this.handleExtraContent(),this.includeMap?(this.updateScaleBar(),this.viewScreenshot(),this.handleImgLoaded()):this.handleImgLoaded()):null!=this.popoverEl&&(this.popoverEl.open=!1)}addPrintStyling(){null==this.printStyleEl&&(this.printStyleEl=document.createElement("style"),this.printStyleEl.innerHTML='\n @media print {\n @page {\n size: Portrait;\n margin: .25in;\n }\n\n html, body {\n padding: 0;\n margin: 0;\n height: 100%;\n width: 100%;\n }\n\n body > *:not(.instant-apps-export-print) { display: none; }\n }\n\n * {\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n }\n\n\n .instant-apps-export-print {\n position: absolute;\n z-index: -999;\n color: #323232 !important;\n --esri-calcite-mode-name: "light";\n }\n\n .instant-apps-export-print__pdf {\n height: 100%;\n width: 100%;\n display: grid;\n gap: 24px;\n grid-auto-flow: row;\n }\n\n .instant-apps-export-print__img {\n display: grid;\n width: auto;\n }\n\n .instant-apps-export-print__img--extra-content {\n grid-template-columns: 2fr minmax(0, 325px);\n }\n\n .instant-apps-export-print, .instant-apps-export-print * {\n box-sizing: border-box;\n }\n\n .instant-apps-export-print__view-section {\n height: 100%;\n }\n\n .instant-apps-export-print__view-container {\n height: 100%;\n width: 100%;\n display: flex;\n justify-content: center;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__view-container {\n grid-row: 1;\n grid-column: 1;\n }\n\n .instant-apps-export-print__view-wrapper {\n height: fit-content;\n width: fit-content;\n position: relative;\n display: flex;\n flex-direction: column;\n overflow: hidden;\n }\n\n .instant-apps-export-print__pdf .instant-apps-export-print__view-wrapper {\n border: 2pt solid #323232;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__view-wrapper {\n border: 1pt solid #323232;\n }\n\n .instant-apps-export-print__view {\n object-fit: contain;\n }\n\n .instant-apps-export-print__extra-container {\n grid-row: 1 / span 2;\n grid-column: 2;\n }\n \n .instant-apps-export-print__extra-container .esri-feature.esri-widget .esri-widget__heading.esri-feature__title {\n display: block;\n }\n\n .instant-apps-export-print__popup-container {\n height: min-content;\n max-width: 325px;\n display: none;\n color: #323232;\n background: #fff;\n break-inside: avoid;\n }\n\n .instant-apps-export-print__pdf .instant-apps-export-print__popup-container {\n border: 1pt solid #323232;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__popup-container {\n grid-row: 1 / span 2;\n grid-column: 2;\n }\n\n .instant-apps-export-print__popup-title {\n border-bottom: 1pt solid #323232;\n }\n\n .instant-apps-export-print__popup-content {\n background: #fff;\n padding-top: 8pt;\n }\n\n .instant-apps-export-print__popup-content .esri-feature-media__chart {\n background: #fff;\n }\n\n .instant-apps-export-print__legend-container {\n height: min-content;\n background: #fff;\n overflow: unset;\n }\n\n .instant-apps-export-print__img .instant-apps-export-print__legend-container {\n margin: 14px;\n grid-row: 2;\n grid-column: 1;\n }\n\n .esri-legend--card, .esri-legend--card__service-content {\n flex-flow: row wrap;\n }\n\n .instant-apps-export-print .esri-widget > *:not(.esri-scale-bar.esri-widget > *) {\n background: #fff;\n color: #323232;\n }\n\n .instant-apps-export-print__popup-content *, .instant-apps-export-print__img .esri-feature.esri-widget * {\n color: #323232;\n }\n\n .instant-apps-export-print .esri-widget__heading {\n margin: 4pt 7pt;\n padding: 0;\n color: #323232;\n }\n\n .instant-apps-export-print .esri-legend__ramp-label:before {\n border-color: rgba(0,0,0,0) rgba(50,50,50,.8) rgba(0,0,0,0) rgba(0,0,0,0);\n }\n\n .instant-apps-export-print .esri-legend--card__section {\n padding: 4pt 0 4pt;\n min-width: unset;\n border-left: none;\n }\n\n .instant-apps-export-print .esri-legend--card__section:first-child {\n border-left: none;\n }\n\n .instant-apps-export-print .esri-legend--card__service {\n border: none;\n flex: 0 1 auto;\n break-inside: avoid;\n }\n\n .instant-apps-export-print .esri-legend--card {\n border: none;\n gap: 6pt 12pt;\n }\n\n .instant-apps-export-print .esri-legend--card:not(:first-child),\n .instant-apps-export-print .esri-compass.esri-widget:not(:first-child) {\n display: none;\n }\n\n .instant-apps-export-print .esri-legend--card__service-caption-container {\n height: unset;\n padding: 0;\n border-bottom: none;\n }\n\n .instant-apps-export-print .esri-legend--card__service-caption-text {\n padding-bottom: 4px;\n }\n\n .instant-apps-export-print__compass-container {\n position: absolute;\n top: 65px;\n left: 15px;\n background: #fff;\n box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);\n --calcite-ui-icon-color: #000;\n border-radius: 50%;\n height: fit-content;\n }\n\n .instant-apps-export-print__compass-container .esri-compass {\n background: #fff;\n }\n\n .instant-apps-export-print__compass-container .esri-compass__icon.esri-icon-compass {\n color: #000;\n }\n\n .instant-apps-export-print__compass-container.esri-compass.esri-widget--button {\n background: #fff;\n }\n\n .instant-apps-export-print__scale-bar-container {\n width: 100%;\n position: absolute;\n bottom: 15px;\n margin: 0 15px;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__label {\n color: #323232;\n font-size: 10px;\n padding: 0 4px;\n }\n \n .instant-apps-export-print__scale-bar-container--position .esri-scale-bar__label {\n height: 10px;\n padding: 0 2px;\n line-height: 11px;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__bar-container:nth-child(1n+3) {\n display: none;\n }\n\n .instant-apps-export-print__scale-bar-container--position .esri-scale-bar__bar-container.esri-scale-bar__bar-container--line {\n align-items: center;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line {\n background-color: rgba(255, 255, 255, 0.66);\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--top {\n width: var(--instant-apps-scale-bar-top) !important;\n border-bottom: 2px solid #323232;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--bottom {\n width: var(--instant-apps-scale-bar-bottom) !important;\n border-top: 2px solid #323232;\n }\n\n .instant-apps-export-print__scale-bar-container--position .esri-scale-bar__label-container--line {\n position: unset;\n margin: 0 2px;\n background-color: rgba(255, 255, 255, 0.66);\n height: 10px;\n display: flex;\n align-items: center;\n }\n\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--top:before,\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--top:after,\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--bottom:before,\n .instant-apps-export-print__scale-bar-container .esri-scale-bar__line--bottom:after {\n background-color: #323232;\n border-right: 2px solid #323232;\n }\n\n .instant-apps-export-print__popup-container .esri-feature-media__item-navigation {\n display: none;\n }\n\n .instant-apps-export-print__popup-container .esri-feature-media__chart.esri-feature-media__chart--rendered * {\n width: 100%!important;\n }\n\n .instant-apps-export-print__popup-content .esri-popup__content {\n margin: 0;\n }\n\n .instant-apps-export-print__content-container {\n display: flex;\n gap: 24px;\n break-inside: avoid;\n break-before: auto;\n }',document.body.prepend(this.printStyleEl))}handleImgLoaded(){this.exportIsLoading=!0,setTimeout((()=>{"PDF"===this.selectedFileType&&(this.exportIsLoading=!1),this.setupViewPrintElements()}),1500)}handleExtraContent(){const t=this.printEl.querySelector("#export-content");if(null!=t){t.innerHTML="";const n=null!=this.extraContent&&this.includeExtraContent;this.printEl.classList.toggle(B,"PDF"!==this.selectedFileType&&this.showExtraContentInImg&&n),n?(t.style.display="block",t.append(this.extraContent.cloneNode(!0))):t.style.display="none"}else this.showExtraContentInImg&&"PDF"!==this.selectedFileType&&!this.includeExtraContent&&this.printEl.classList.toggle(B,!1)}resetPrintContent(){var t,n,i;if(null!=this.view){this.screenshot=null,null===(t=this.printContainerEl)||void 0===t||t.prepend(this.printEl),null===(n=this.printStyleEl)||void 0===n||n.remove(),null===(i=this.tmpPopupTitleEl)||void 0===i||i.remove(),this.printStyleEl=void 0;const s=this.printEl.querySelector("#export-content");s&&(s.innerHTML="")}}async updatePopupToPrint(){var t,n;if(null==this.view||null==this.popupContainerEl)return;this.popupContainerEl.style.display=this.includePopup&&this.view.popup.visible?"block":"none",this.checkPopupOpen();const i=this.includePopup&&(this.view.popup.visible||this.popupHiddenByMapArea)&&null!=this.view.popup.selectedFeature;if(this.printEl.classList.toggle(B,"PDF"!==this.selectedFileType&&i),i){const i=document.createElement(`h${null!==(t=this.view.popup.headingLevel)&&void 0!==t?t:2}`);i.innerHTML=null!==(n=this.view.popup.title)&&void 0!==n?n:"",i.className="esri-widget__heading esri-popup__header-title",null==this.popupTitleEl?(this.tmpPopupTitleEl=document.createElement("div"),this.tmpPopupTitleEl.prepend(i),this.tmpPopupTitleEl.style.display=this.view.popup.title?"block":"none",this.popupContainerEl.prepend(this.tmpPopupTitleEl)):(this.popupTitleEl.style.display=this.view.popup.title?"block":"none",this.popupTitleEl.innerHTML="",this.popupTitleEl.prepend(i))}}updateExportOutput(){this.output={},this.showHeaderTitle&&(this.output.headerTitle=this.headerTitle),this.showIncludeLegend&&(this.output.includeLegend=this.includeLegend),this.showIncludeMap&&(this.output.includeMap=this.includeMap),this.showIncludePopup&&(this.output.includePopup=this.includePopup),this.exportOutputUpdated.emit()}setupViewPrintElements(){if(null!=this.view)if(this.handleLegendSetup(),"PDF"===this.selectedFileType){const t=document.title;this.showHeaderTitle&&this.headerTitle&&(document.title=this.headerTitle),window.print(),document.title=t,setTimeout((()=>{this.resetPrintContent()}),1e3)}else this.convertToImage()}async convertToImage(){const t={backgroundColor:"#FFF",skipFonts:!0};let n="";try{n="JPG"===this.selectedFileType?await G(this.printEl,t):await async function(t,n={}){return(await V(t,n)).toDataURL()}(this.printEl,t)}catch(i){this.logoImage=void 0,await new Promise((t=>setTimeout(t,500))),n=await G(this.printEl,t)}finally{this.handleGetImage(n)}}handleGetImage(t){var n;this.resetPrintContent(),t&&(this.dataUrl=t,this.setMapAreaOnClick(!1),this.showPreview(t),null===(n=this.view)||void 0===n||n.container.classList.remove("screenshot-cursor"),this.setMaskPosition(null))}handleLegendSetup(){var t;if(this.showIncludeLegend&&null!=this.view&&this.includeMap&&null!=this.legendContainerEl){const n=null!=this.legend&&(null===(t=this.legend.activeLayerInfos)||void 0===t?void 0:t.length)>0;this.legendContainerEl.style.display=this.includeLegend&&n?"block":"none"}}handleWidgetCreation(){this.includeMap&&(this.handleLegendCreation(),this.handleCompassCreation(),this.updatePopupToPrint())}handleIncludePopup(){var t,n;if(this.showIncludePopup){const i="includePopup";null===(t=this.handles)||void 0===t||t.remove(i),null===(n=this.reactiveUtils)||void 0===n||n.whenOnce((()=>{var t;return null===(t=this.view)||void 0===t?void 0:t.ready})).then((()=>{var t;null===(t=this.handles)||void 0===t||t.add(this.reactiveUtils.watch((()=>{var t,n;return null===(n=null===(t=this.view)||void 0===t?void 0:t.popup)||void 0===n?void 0:n.visible}),(t=>{this.settingMapArea||(this.includePopup=t)})),i)}))}}handleLegendCreation(){var t,n,i,s,e;if(null!=this.view&&this.showIncludeLegend&&null!=this.legendContainerEl){const o=this.view.map,r=null===(n=null===(t=this.legend)||void 0===t?void 0:t.view)||void 0===n?void 0:n.map;null!=(null===(i=null==o?void 0:o.portalItem)||void 0===i?void 0:i.id)&&(null===(s=null==o?void 0:o.portalItem)||void 0===s?void 0:s.id)===(null===(e=null==r?void 0:r.portalItem)||void 0===e?void 0:e.id)||this.updateLegend()}}updateLegend(){var t;null===(t=this.view)||void 0===t||t.when((async t=>{if(null!=this.legend&&(this.legend.destroy(),this.legend=null),null!=this.legendContainerEl){this.legendContainerEl.innerHTML="";const n=document.createElement("div");this.legendContainerEl.append(n);const[i]=await o(["esri/widgets/Legend"]);this.legend=new i({container:n,view:t,respectLayerDefinitionExpression:!0,style:{type:"card",layout:"side-by-side"}})}}))}handleCompassCreation(){var t,n,i,s;if(null!=this.view&&null!=this.compassContainerEl){const e=this.view.map,o=null===(n=null===(t=this.compass)||void 0===t?void 0:t.view)||void 0===n?void 0:n.map;(null===(i=null==e?void 0:e.portalItem)||void 0===i?void 0:i.id)===(null===(s=null==o?void 0:o.portalItem)||void 0===s?void 0:s.id)||this.updateCompass()}}updateCompass(){var t;null===(t=this.view)||void 0===t||t.when((async t=>{var n;null===(n=this.compass)||void 0===n||n.destroy(),this.compass=null;const i=document.createElement("div");this.compassContainerEl.append(i);const[s]=await o(["esri/widgets/Compass"]);this.compass=new s({container:i,view:t})}))}updateScaleBar(){if(this.scaleBarContainerEl&&null!=this.view&&(this.scaleBarContainerEl.innerHTML="",this.showScaleBar)){const t=this.view.ui.getComponents(),n=null==t?void 0:t.find((({container:t})=>{var n;return null===(n=null==t?void 0:t.className)||void 0===n?void 0:n.includes("esri-scale-bar")}));null!=(null==n?void 0:n.container)&&"string"!=typeof n.container&&this.scaleBarContainerEl.append(n.container.cloneNode(!0))}}async viewScreenshot(){var t;if(null!=this.view&&this.includeMap&&(null==this.screenshot&&(null===(t=this.scaleBarContainerEl)||void 0===t||t.classList.toggle("instant-apps-export-print__scale-bar-container--position",this.view.width>1e3),this.screenshot=await this.view.takeScreenshot({width:2*this.view.width,height:2*this.view.height})),this.handleScaleBarSize(),null!=this.viewEl&&null!=this.viewWrapperEl)){const{height:t,width:n}=this.screenshot.data;t>n?this.setMaxRowHeightOnViewContainer():this.setMaxWidthOnViewContainer(),this.viewEl.src=this.screenshot.dataUrl}}setMaxRowHeightOnViewContainer(){"PDF"===this.selectedFileType&&(this.printEl.style.gridTemplateRows="minmax(auto, 70%)"),this.viewEl.style.height="100%",this.viewEl.style.width="",this.viewWrapperEl.style.height="100%",this.viewWrapperEl.style.width="fit-content"}setMaxWidthOnViewContainer(){this.printEl.style.gridTemplateRows="",this.viewEl.style.width="100%",this.viewEl.style.height="",this.viewWrapperEl.style.height="fit-content",this.viewWrapperEl.style.width="100%"}checkPopupOpen(){if(null!=this.view){const t=this.view.popup.container,n=null==t?void 0:t.querySelector(".esri-popup .esri-feature__main-container");if(null!=n){const t=n.querySelectorAll("canvas");this.popupContentEl.innerHTML="",this.popupContentEl.append(n.cloneNode(!0));const i=this.popupContentEl.querySelectorAll("canvas");t.forEach(((t,n)=>{var s;const e=t.toDataURL(),o=document.createElement("img");o.src=e;const r=t.getAttribute("style");r&&o.setAttribute("style",r);const a=i[n];null!=a&&(a.replaceWith(o),document.querySelector("link[href*='esri/themes/dark/main.css']")&&null!=(null===(s=o.parentElement)||void 0===s?void 0:s.parentElement)&&(o.parentElement.style.background="#242424",o.parentElement.parentElement.style.background="#242424"))}))}}}createScreenshot(){var t,n,i;if(null!=this.view){this.screenshotPreview=document.createElement("div"),this.screenshotPreview.className="screenshot-preview hide",this.screenshotImgContainer=document.createElement("div"),this.screenshotImgContainer.className="screenshot-img-container",this.screenshotImg=document.createElement("img");const s=document.createElement("div"),e=document.createElement("calcite-button"),o=document.createElement("calcite-button");e.innerHTML="PDF"===this.selectedFileType?null===(t=this.messages)||void 0===t?void 0:t.export:null===(n=this.messages)||void 0===n?void 0:n.downloadImage,o.innerHTML=null===(i=this.messages)||void 0===i?void 0:i.returnToMap,o.appearance="outline-fill",e.onclick=this.exportPreviewOnClick.bind(this),o.onclick=this.screenshotReturn.bind(this),s.append(o,e),this.screenshotImgContainer.append(this.screenshotImg,s),this.screenshotPreview.append(this.screenshotImgContainer),this.view.container.append(this.screenshotPreview)}}createMaskDiv(){null!=this.view&&(this.maskDivEl=document.createElement("div"),this.maskDivEl.id="screenshot-mask",this.maskDivEl.className="hide screenshot-cursor",this.maskDivEl.style.setProperty("--instant-apps-screenshot-mask-background",this.maskBackground),this.maskDivEl.style.setProperty("--instant-apps-screenshot-mask-border",this.maskBorder),this.screenshotStyle=document.createElement("style"),this.screenshotStyle.innerHTML="\n.screenshot-preview.hide, .hide {\n display: none;\n}\n\n.screenshot-cursor {\n cursor: crosshair;\n}\n\n.relative {\n position: relative;\n}\n\n#screenshot-mask {\n position: absolute;\n background: var(--instant-apps-screenshot-mask-background);\n border: var(--instant-apps-screenshot-mask-border);\n}\n\n.screenshot-preview {\n display: flex;\n align-items: center;\n justify-content: center;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n text-align: center;\n background-color: rgba(0, 0, 0, 0.75);\n}\n\n.screenshot-preview * {\n box-sizing: border-box;\n}\n\n.screenshot-img-container img {\n max-height: 75%;\n max-width: 75%;\n object-fit: contain;\n box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.5);\n margin-bottom: 0.5em;\n}\n\n.screenshot-img-container {\n height: 100%;\n width: 100%;\n overflow-y: auto;\n margin-bottom: 8px;\n display: flex;\n flex-flow: column;\n align-items: center;\n justify-content: center;\n}\n\n.screenshot-img-container calcite-button {\n margin: 5px;\n}",this.view.container.append(this.screenshotStyle),this.view.container.append(this.maskDivEl))}screenshotReturn(){this.removeScreenshotElements(),this.exportIsLoading=!1,this.screenshot=null,this.resetPopupVisibility()}setMapAreaOnClick(t){null!=this.view&&(this.settingMapArea=!0,t&&this.view.popup.visible&&(this.popupHiddenByMapArea=!0,this.view.popup.container.style.display="none"),this.exportIsLoading=!0,this.createMaskDiv(),this.createScreenshot(),this.view.container.classList.add("screenshot-cursor","relative"),this.view.addHandles(this.view.on("drag",(async t=>{null!=this.view&&(t.stopPropagation(),"end"!==t.action?this.updateMaskSize(t):this.maskScreenshot())})),st))}updateMaskSize(t){if(null!=this.view){const n=this.clamp(Math.min(t.origin.x,t.x),0,this.view.width),i=this.clamp(Math.max(t.origin.x,t.x),0,this.view.width),s=this.clamp(Math.min(t.origin.y,t.y),0,this.view.height),e=this.clamp(Math.max(t.origin.y,t.y),0,this.view.height);this.area={x:n,y:s,width:i-n,height:e-s},this.setMaskPosition(this.area)}}maskScreenshot(){var t;if(null!=this.view&&null!=this.area){this.view.removeHandles(st);const n=this.area.height,i=this.area.width;this.showScaleBar&&(null===(t=this.scaleBarContainerEl)||void 0===t||t.classList.toggle("instant-apps-export-print__scale-bar-container--position",this.view.width>1e3&&.75*this.view.width<i)),this.view.takeScreenshot({area:this.area,width:2*i,height:2*n,format:"jpg"}).then((t=>{var n;this.screenshot=t,null===(n=this.view)||void 0===n||n.container.classList.remove("screenshot-cursor"),this.setMaskPosition(null),"PDF"===this.selectedFileType?(this.showPreview(null==t?void 0:t.dataUrl),this.resetPopupVisibility()):(null==this.viewWrapperEl||this.viewWrapperEl.contains(this.compassContainerEl)||this.viewWrapperEl.append(this.compassContainerEl),this.handleViewExportOnClick(),null!=this.popoverEl&&(this.popoverEl.open=!1))}))}}setMaskPosition(t){null!=t?(this.maskDivEl.classList.remove("hide"),this.maskDivEl.style.left=`${t.x}px`,this.maskDivEl.style.top=`${t.y}px`,this.maskDivEl.style.width=`${t.width}px`,this.maskDivEl.style.height=`${t.height}px`):this.maskDivEl.remove()}clamp(t,n,i){return t<n?n:t>i?i:t}showPreview(t){t&&(this.screenshotPreview.classList.remove("hide"),null!=this.screenshotImg&&(this.screenshotImg.src=t))}handleScaleBarSize(){var t;if(this.showScaleBar&&"2d"===(null===(t=this.view)||void 0===t?void 0:t.type)&&null!=this.scaleBarContainerEl){const t=this.scaleBarContainerEl.querySelector(".esri-scale-bar__line--top"),n=this.scaleBarContainerEl.querySelector(".esri-scale-bar__line--bottom");this.setScalebarWidth(t,"top"),this.setScalebarWidth(n,"bottom")}}setScalebarWidth(t,n){var i;if(null!=t&&null!=this.screenshot){const s=this.screenshot.data.width/2,e=Number(t.style.width.replace("px",""));null===(i=this.scaleBarContainerEl)||void 0===i||i.style.setProperty(`--instant-apps-scale-bar-${n}`,e/s*100+"%")}}removeScreenshotElements(){var t,n,i;null===(t=this.view)||void 0===t||t.removeHandles(st),null===(n=this.screenshotPreview)||void 0===n||n.remove(),null===(i=this.screenshotStyle)||void 0===i||i.remove()}resetPopupVisibility(){this.view&&this.settingMapArea&&this.popupHiddenByMapArea&&(this.view.popup.container.style.display=""),this.settingMapArea=!1,this.popupHiddenByMapArea=!1}handleSelectFileType(t){this.selectedFileType=t.target.value,"PDF"===this.selectedFileType?(this.includeMap=this.pdfIncludeMap,this.showExtraContentInImg||(this.includeExtraContent=this.pdfIncludeExtraContent)):(this.pdfIncludeMap=this.includeMap,this.includeMap=!0,this.showExtraContentInImg||(this.pdfIncludeExtraContent=this.includeExtraContent,this.includeMap=!0,this.includeExtraContent=!1))}get el(){return e(this)}static get watchers(){return{includeMap:["watchIncludeMap"],view:["watchView"]}}};et.style=":host{display:block;--instant-apps-export-action-background:var(--calcite-color-foreground-1);--instant-apps-export-action-background-hover:var(--calcite-color-foreground-2);--instant-apps-export-action-background-press:var(--calcite-color-foreground-3);--instant-apps-export-action-height:100%;--instant-apps-export-action-width:fit-content;--instant-apps-export-action-icon-color:var(--calcite-color-text-3);--instant-apps-export-action-icon-hover-color:var(--calcite-color-text-1);--instant-apps-export-background:var(--calcite-color-foreground-1);--instant-apps-export-text-color:var(--calcite-color-text-1);--instant-apps-export-popover-width:250px}.instant-apps-export{height:100%}.instant-apps-export *{box-sizing:border-box}.instant-apps-export__popover-container,.instant-apps-export__inline-container{padding:12px;background:var(--instant-apps-export-background);--calcite-color-text-1:var(--instant-apps-export-text-color)}.instant-apps-export__popover-container{width:var(--instant-apps-export-popover-width)}.instant-apps-export calcite-action{height:var(--instant-apps-export-action-height);width:var(--instant-apps-export-action-width);--calcite-color-foreground-1:var(--instant-apps-export-action-background);--calcite-color-foreground-2:var(--instant-apps-export-action-background-hover);--calcite-color-foreground-3:var(--instant-apps-export-action-background-press);--calcite-color-text-3:var(--instant-apps-export-action-icon-color);--calcite-color-text-1:var(--instant-apps-export-action-icon-hover-color)}.instant-apps-export .instant-apps-export-print{display:none}.instant-apps-export .instant-apps-export-print_img{display:flex;flex-flow:row wrap}.instant-apps-export__visually-hidden{position:absolute;top:0;z-index:-1;visibility:hidden}.instant-apps-export calcite-input{--calcite-color-foreground-1:var(--instant-apps-export-background);--calcite-color-text-1:var(--instant-apps-export-text-color)}.instant-apps-export calcite-popover{--calcite-color-foreground-1:var(--instant-apps-export-background)}.instant-apps-export calcite-switch{--calcite-color-foreground-1:#fff;--calcite-color-foreground-2:#f3f3f3}.instant-apps-export calcite-button:last-of-type{margin-top:0.5rem}.instant-apps-export .calcite-mode-dark calcite-switch{--calcite-color-foreground-1:#2b2b2b;--calcite-color-foreground-2:#202020}.instant-apps-export__compass-container.esri-widget{background:#fff;box-shadow:0 1px 2px rgba(0, 0, 0, 0.3)}.instant-apps-export__compass-container.esri-widget .esri-compass__icon.esri-icon-compass{color:#6e6e6e}.hide{display:none}.screenshotCursor{cursor:crosshair}";export{et as instant_apps_export}