@esri/solutions-components 0.8.23 → 0.8.25

Sign up to get free protection for your applications and to get access to all the features.
Files changed (171) hide show
  1. package/dist/cjs/arcgis-login.cjs.entry.js +1 -1
  2. package/dist/cjs/basemap-gallery_7.cjs.entry.js +1 -1
  3. package/dist/cjs/buffer-tools_3.cjs.entry.js +1 -1
  4. package/dist/cjs/{calcite-avatar.cjs.entry.js → calcite-avatar_2.cjs.entry.js} +62 -0
  5. package/dist/cjs/calcite-block_5.cjs.entry.js +12 -3
  6. package/dist/cjs/calcite-dropdown-group_2.cjs.entry.js +419 -0
  7. package/dist/cjs/{calcite-dropdown_4.cjs.entry.js → calcite-dropdown_2.cjs.entry.js} +12 -435
  8. package/dist/cjs/calcite-flow_6.cjs.entry.js +44 -34
  9. package/dist/cjs/card-manager_3.cjs.entry.js +1 -1
  10. package/dist/cjs/crowdsource-manager.cjs.entry.js +1 -1
  11. package/dist/cjs/crowdsource-reporter.cjs.entry.js +58 -38
  12. package/dist/cjs/feature-list.cjs.entry.js +5 -4
  13. package/dist/cjs/{helpers-9347ad83.js → helpers-618a3f7d.js} +2 -1
  14. package/dist/cjs/instant-apps-create.cjs.entry.js +266 -0
  15. package/dist/cjs/instant-apps-export.cjs.entry.js +31 -16
  16. package/dist/cjs/instant-apps-header.cjs.entry.js +3 -2
  17. package/dist/cjs/instant-apps-interactive-legend-classic.cjs.entry.js +11 -4
  18. package/dist/cjs/instant-apps-interactive-legend-count_2.cjs.entry.js +1 -1
  19. package/dist/cjs/instant-apps-interactive-legend-group-legend-element-caption.cjs.entry.js +1 -1
  20. package/dist/cjs/instant-apps-interactive-legend-group-legend-element_5.cjs.entry.js +2 -2
  21. package/dist/cjs/instant-apps-interactive-legend.cjs.entry.js +1 -1
  22. package/dist/cjs/instant-apps-landing-page.cjs.entry.js +45 -9
  23. package/dist/cjs/instant-apps-language-switcher.cjs.entry.js +1 -1
  24. package/dist/cjs/instant-apps-language-translator.cjs.entry.js +1 -1
  25. package/dist/cjs/instant-apps-sign-in.cjs.entry.js +168 -0
  26. package/dist/cjs/{languageSwitcher-395021d6.js → languageSwitcher-b9a1485c.js} +3 -1
  27. package/dist/cjs/loader.cjs.js +1 -1
  28. package/dist/cjs/public-notification.cjs.entry.js +3 -3
  29. package/dist/cjs/resources-fa37e40f.js +26 -0
  30. package/dist/cjs/solutions-components.cjs.js +1 -1
  31. package/dist/collection/collection-manifest.json +3 -1
  32. package/dist/collection/components/arcgis-login/arcgis-login.js +1 -1
  33. package/dist/collection/components/basemap-gallery/basemap-gallery.js +1 -1
  34. package/dist/collection/components/buffer-tools/buffer-tools.js +1 -1
  35. package/dist/collection/components/card-manager/card-manager.js +1 -1
  36. package/dist/collection/components/create-feature/create-feature.js +9 -2
  37. package/dist/collection/components/create-related-feature/create-related-feature.js +9 -2
  38. package/dist/collection/components/crowdsource-manager/crowdsource-manager.js +1 -1
  39. package/dist/collection/components/crowdsource-reporter/crowdsource-reporter.js +58 -47
  40. package/dist/collection/components/feature-details/feature-details.css +4 -4
  41. package/dist/collection/components/feature-details/feature-details.js +62 -18
  42. package/dist/collection/components/feature-list/feature-list.css +2 -0
  43. package/dist/collection/components/feature-list/feature-list.js +22 -3
  44. package/dist/collection/components/layer-list/layer-list.js +6 -13
  45. package/dist/collection/components/public-notification/public-notification.js +3 -3
  46. package/dist/collection/demos/crowdsource-reporter.html +22 -15
  47. package/dist/collection/utils/interfaces.ts +1 -0
  48. package/dist/components/arcgis-login.js +1 -1
  49. package/dist/components/basemap-gallery2.js +1 -1
  50. package/dist/components/buffer-tools2.js +1 -1
  51. package/dist/components/calcite-navigation-user.js +1 -99
  52. package/dist/components/card-manager2.js +1 -1
  53. package/dist/components/create-feature2.js +9 -2
  54. package/dist/components/create-related-feature2.js +9 -2
  55. package/dist/components/crowdsource-manager.js +1 -1
  56. package/dist/components/crowdsource-reporter.js +59 -39
  57. package/dist/components/feature-details2.js +22 -17
  58. package/dist/components/feature-list2.js +6 -4
  59. package/dist/components/helpers.js +3 -2
  60. package/dist/components/instant-apps-ckeditor-wrapper2.js +1 -1
  61. package/dist/components/instant-apps-create.js +317 -0
  62. package/dist/components/instant-apps-export.js +32 -16
  63. package/dist/components/instant-apps-filter-list2.js +6 -1
  64. package/dist/components/instant-apps-header2.js +3 -2
  65. package/dist/components/instant-apps-interactive-legend-classic2.js +12 -5
  66. package/dist/components/instant-apps-interactive-legend-legend-element-caption2.js +2 -2
  67. package/dist/components/instant-apps-landing-page.js +91 -16
  68. package/dist/components/instant-apps-language-translator2.js +3 -1
  69. package/dist/components/instant-apps-sign-in.js +11 -0
  70. package/dist/components/instant-apps-sign-in2.js +243 -0
  71. package/dist/components/instant-apps-social-share2.js +8 -2
  72. package/dist/components/layer-list2.js +6 -13
  73. package/dist/{esm/calcite-navigation-user.entry.js → components/navigation-user.js} +46 -9
  74. package/dist/components/public-notification.js +3 -3
  75. package/dist/esm/arcgis-login.entry.js +1 -1
  76. package/dist/esm/basemap-gallery_7.entry.js +1 -1
  77. package/dist/esm/buffer-tools_3.entry.js +1 -1
  78. package/dist/esm/{calcite-avatar.entry.js → calcite-avatar_2.entry.js} +64 -3
  79. package/dist/esm/calcite-block_5.entry.js +12 -3
  80. package/dist/esm/calcite-color-picker-hex-input_2.entry.js +1 -1
  81. package/dist/esm/calcite-color-picker.entry.js +1 -1
  82. package/dist/esm/calcite-dropdown-group_2.entry.js +414 -0
  83. package/dist/esm/{calcite-dropdown_4.entry.js → calcite-dropdown_2.entry.js} +2 -423
  84. package/dist/esm/calcite-flow_6.entry.js +44 -34
  85. package/dist/esm/card-manager_3.entry.js +1 -1
  86. package/dist/esm/crowdsource-manager.entry.js +1 -1
  87. package/dist/esm/crowdsource-reporter.entry.js +58 -38
  88. package/dist/esm/feature-list.entry.js +5 -4
  89. package/dist/esm/{helpers-a5a81b9d.js → helpers-61b05164.js} +3 -2
  90. package/dist/esm/instant-apps-create.entry.js +262 -0
  91. package/dist/esm/instant-apps-export.entry.js +31 -16
  92. package/dist/esm/instant-apps-header.entry.js +3 -2
  93. package/dist/esm/instant-apps-interactive-legend-classic.entry.js +11 -4
  94. package/dist/esm/instant-apps-interactive-legend-count_2.entry.js +1 -1
  95. package/dist/esm/instant-apps-interactive-legend-group-legend-element-caption.entry.js +1 -1
  96. package/dist/esm/instant-apps-interactive-legend-group-legend-element_5.entry.js +2 -2
  97. package/dist/esm/instant-apps-interactive-legend.entry.js +1 -1
  98. package/dist/esm/instant-apps-landing-page.entry.js +46 -10
  99. package/dist/esm/instant-apps-language-switcher.entry.js +1 -1
  100. package/dist/esm/instant-apps-language-translator.entry.js +1 -1
  101. package/dist/esm/instant-apps-sign-in.entry.js +164 -0
  102. package/dist/esm/{languageSwitcher-a4a615e4.js → languageSwitcher-d60f03b2.js} +3 -1
  103. package/dist/esm/loader.js +1 -1
  104. package/dist/esm/public-notification.entry.js +3 -3
  105. package/dist/esm/resources-16800cce.js +24 -0
  106. package/dist/esm/solutions-components.js +1 -1
  107. package/dist/esm/{utils-6419e941.js → utils-251cb6de.js} +1 -1
  108. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-create/instant-apps-create.css +150 -0
  109. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-header/instant-apps-header.css +16 -9
  110. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-landing-page/instant-apps-landing-page.css +19 -0
  111. package/dist/node_modules/@esri/instant-apps-components/dist/collection/components/instant-apps-sign-in/instant-apps-sign-in.css +98 -0
  112. package/dist/solutions-components/demos/crowdsource-reporter.html +22 -15
  113. package/dist/solutions-components/{p-88495699.entry.js → p-16730f05.entry.js} +1 -1
  114. package/dist/solutions-components/p-1ae3b886.entry.js +17 -0
  115. package/dist/solutions-components/{p-63460d51.entry.js → p-1ff9eb95.entry.js} +1 -1
  116. package/dist/solutions-components/{p-8f6e0ae5.entry.js → p-26eb1225.entry.js} +1 -1
  117. package/dist/solutions-components/{p-3a2e0188.entry.js → p-2c044250.entry.js} +2 -2
  118. package/dist/solutions-components/p-314dc933.entry.js +6 -0
  119. package/dist/solutions-components/p-50741707.entry.js +6 -0
  120. package/dist/solutions-components/p-5b817c98.entry.js +6 -0
  121. package/dist/solutions-components/p-614ebce7.js +6 -0
  122. package/dist/solutions-components/p-686fa7ce.entry.js +6 -0
  123. package/dist/solutions-components/{p-df73649e.entry.js → p-77cd573b.entry.js} +1 -1
  124. package/dist/solutions-components/{p-c95dcdf7.entry.js → p-7883b885.entry.js} +3 -3
  125. package/dist/solutions-components/p-79e2e203.entry.js +6 -0
  126. package/dist/solutions-components/{p-968a6fd8.entry.js → p-7b17e929.entry.js} +1 -1
  127. package/dist/solutions-components/p-80b3eb6b.entry.js +6 -0
  128. package/dist/solutions-components/p-84913712.js +6 -0
  129. package/dist/solutions-components/p-8c500fd7.entry.js +6 -0
  130. package/dist/solutions-components/{p-fe9d6d06.js → p-9f56c02c.js} +1 -1
  131. package/dist/solutions-components/{p-667c022f.entry.js → p-af4be4ce.entry.js} +1 -1
  132. package/dist/solutions-components/p-bb2e669d.entry.js +6 -0
  133. package/dist/solutions-components/p-c2ec0dcc.entry.js +17 -0
  134. package/dist/solutions-components/p-c41997d5.js +11 -0
  135. package/dist/solutions-components/p-c512fcfb.entry.js +6 -0
  136. package/dist/solutions-components/{p-21d6360a.entry.js → p-c7f0e7a8.entry.js} +1 -1
  137. package/dist/solutions-components/{p-9c7d4343.entry.js → p-cd91c3e7.entry.js} +1 -1
  138. package/dist/solutions-components/p-ceba37d3.entry.js +11 -0
  139. package/dist/solutions-components/{p-09b769b7.entry.js → p-d8a15e32.entry.js} +1 -1
  140. package/dist/solutions-components/p-d8da6406.entry.js +6 -0
  141. package/dist/solutions-components/p-da6b3c8a.entry.js +6 -0
  142. package/dist/solutions-components/{p-60f1055e.entry.js → p-e2400b0d.entry.js} +1 -1
  143. package/dist/solutions-components/p-f35cc7ae.entry.js +6 -0
  144. package/dist/solutions-components/solutions-components.esm.js +1 -1
  145. package/dist/solutions-components/utils/interfaces.ts +1 -0
  146. package/dist/types/components/create-feature/create-feature.d.ts +4 -0
  147. package/dist/types/components/create-related-feature/create-related-feature.d.ts +4 -0
  148. package/dist/types/components/crowdsource-reporter/crowdsource-reporter.d.ts +18 -7
  149. package/dist/types/components/feature-details/feature-details.d.ts +17 -1
  150. package/dist/types/components/feature-list/feature-list.d.ts +4 -0
  151. package/dist/types/components/layer-list/layer-list.d.ts +1 -1
  152. package/dist/types/components.d.ts +25 -2
  153. package/dist/types/preact.d.ts +7 -2
  154. package/dist/types/utils/interfaces.d.ts +1 -0
  155. package/package.json +2 -2
  156. package/dist/cjs/calcite-navigation-user.cjs.entry.js +0 -73
  157. package/dist/solutions-components/p-08a1e120.js +0 -6
  158. package/dist/solutions-components/p-3283660c.entry.js +0 -6
  159. package/dist/solutions-components/p-33647277.entry.js +0 -6
  160. package/dist/solutions-components/p-3af0764f.entry.js +0 -6
  161. package/dist/solutions-components/p-41d288c0.entry.js +0 -6
  162. package/dist/solutions-components/p-599dcc29.js +0 -6
  163. package/dist/solutions-components/p-64b4b579.entry.js +0 -11
  164. package/dist/solutions-components/p-64da5bb8.entry.js +0 -17
  165. package/dist/solutions-components/p-ab96dd27.entry.js +0 -6
  166. package/dist/solutions-components/p-bb0c7be3.entry.js +0 -17
  167. package/dist/solutions-components/p-bb8e3add.entry.js +0 -11
  168. package/dist/solutions-components/p-c36bb8ca.entry.js +0 -6
  169. package/dist/solutions-components/p-cbe166fc.entry.js +0 -6
  170. package/dist/solutions-components/p-eab95aa4.entry.js +0 -6
  171. package/dist/solutions-components/p-f6a1673c.entry.js +0 -6
@@ -23,7 +23,7 @@ var AlignmentPositions;
23
23
  AlignmentPositions["BottomRight"] = "bottom-right";
24
24
  })(AlignmentPositions || (AlignmentPositions = {}));
25
25
 
26
- const instantAppsLandingPageCss = ":host{--instant-apps-landing-page-background-color:var(--calcite-color-brand);--instant-apps-landing-page-text-color:var(--calcite-color-text-inverse);--instant-apps-landing-page-entry-button-color:var(--calcite-color-brand);--instant-apps-landing-page-title-text-font-size:var(--calcite-font-size-6);--instant-apps-landing-page-subtitle-text-font-size:var(--calcite-font-size-3);--instant-apps-landing-page-description-text-font-size:var(--calcite-font-size-0);--instant-apps-landing-page-icon-image-scale--s:100px;--instant-apps-landing-page-icon-image-scale--m:250px;--instant-apps-landing-page-icon-image-scale--l:500px;--instant-apps-landing-page-entry-button-margin:0}:host .instant-apps-landing-page{box-sizing:border-box;position:absolute;top:0;left:0;z-index:9000;display:flex;flex-direction:column;width:100%;height:100%;padding:2.5%;transition:top 0.5s ease-in-out;background-color:var(--instant-apps-landing-page-background-color);color:var(--instant-apps-landing-page-text-color)}:host .instant-apps-landing-page__title-text{color:var(--instant-apps-landing-page-text-color);font-size:var(--instant-apps-landing-page-title-text-font-size);margin:0}:host .instant-apps-landing-page__subtitle-text{font-weight:var(--calcite-font-weight-medium);font-size:var(--instant-apps-landing-page-subtitle-text-font-size);text-align:center}:host .instant-apps-landing-page__description-text{font-size:var(--instant-apps-landing-page-description-text-font-size);width:50%;min-width:250px}:host .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__subtitle-text{text-shadow:0px 4px 3px rgba(0, 0, 0, 0.4), 0px 8px 13px rgba(0, 0, 0, 0.1), 0px 18px 23px rgba(0, 0, 0, 0.1)}:host .instant-apps-landing-page__icon-image{margin-bottom:5px;max-width:50%}:host .instant-apps-landing-page__icon-image-scale--s{width:100px}:host .instant-apps-landing-page__icon-image-scale--m{width:250px}:host .instant-apps-landing-page__icon-image-scale--l{width:500px}:host .instant-apps-landing-page__button-container{display:flex}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button{margin:var(--instant-apps-landing-page-entry-button-margin)}:host .instant-apps-landing-page__entry-button{--calcite-color-brand:var(--instant-apps-landing-page-entry-button-color);--calcite-color-brand-hover:var(--instant-apps-landing-page-entry-button-color);--calcite-color-brand-press:var(--instant-apps-landing-page-entry-button-color)}:host .instant-apps-landing-page__remove-transition{transition:none}:host .instant-apps-landing-page--closed-no-transition{display:none}:host .instant-apps-landing-page--closed{top:-100%}:host .instant-apps-landing-page__alignment--top-center{justify-content:flex-start;align-items:center}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;justify-content:center}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--center{justify-content:center;align-items:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--bottom-center{justify-content:flex-end;align-items:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--top-left{justify-content:flex-start;align-items:flex-start}:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--center-left{justify-content:center;align-items:flex-start}:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--bottom-left{justify-content:flex-end;align-items:flex-start}:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--top-right{justify-content:flex-start;align-items:flex-end}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--center-right{justify-content:center;align-items:flex-end}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--bottom-right{justify-content:flex-end;align-items:flex-end}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__description-text{text-align:right}@media only screen and (max-width: 768px){:host .instant-apps-landing-page__icon-image{max-width:70%;margin-bottom:20px}:host .instant-apps-landing-page__description-text{width:80%}:host .instant-apps-landing-page__title-text{font-size:var(--calcite-font-size-3)}:host .instant-apps-landing-page__subtitle-text{font-size:var(--calcite-font-size-0)}:host .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;margin-top:auto}:host .instant-apps-landing-page__button-container{display:flex;flex-direction:column;width:100%;margin-top:auto}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button{width:100%;margin-right:unset;margin-bottom:10px}}@media only screen and (max-width: 896px) and (orientation: landscape){:host .instant-apps-landing-page__icon-image{max-width:25%}}";
26
+ const instantAppsLandingPageCss = ":host{--instant-apps-landing-page-background-color:var(--calcite-color-brand);--instant-apps-landing-page-text-color:var(--calcite-color-text-inverse);--instant-apps-landing-page-entry-button-color:var(--calcite-color-brand);--instant-apps-landing-page-title-text-font-size:var(--calcite-font-size-6);--instant-apps-landing-page-subtitle-text-font-size:var(--calcite-font-size-3);--instant-apps-landing-page-description-text-font-size:var(--calcite-font-size-0);--instant-apps-landing-page-icon-image-scale--s:100px;--instant-apps-landing-page-icon-image-scale--m:250px;--instant-apps-landing-page-icon-image-scale--l:500px;--instant-apps-landing-page-entry-button-margin:0}:host .instant-apps-landing-page{box-sizing:border-box;position:absolute;top:0;left:0;z-index:9000;display:flex;flex-direction:column;width:100%;height:100%;padding:2.5%;transition:top 0.5s ease-in-out;background-color:var(--instant-apps-landing-page-background-color);color:var(--instant-apps-landing-page-text-color)}:host .instant-apps-landing-page__title-text{color:var(--instant-apps-landing-page-text-color);font-size:var(--instant-apps-landing-page-title-text-font-size);margin:0}:host .instant-apps-landing-page__subtitle-text{font-weight:var(--calcite-font-weight-medium);font-size:var(--instant-apps-landing-page-subtitle-text-font-size);text-align:center}:host .instant-apps-landing-page__description-text{font-size:var(--instant-apps-landing-page-description-text-font-size);width:50%;min-width:250px}:host .instant-apps-landing-page__title-text,:host .instant-apps-landing-page__subtitle-text{text-shadow:0px 4px 3px rgba(0, 0, 0, 0.4), 0px 8px 13px rgba(0, 0, 0, 0.1), 0px 18px 23px rgba(0, 0, 0, 0.1)}:host .instant-apps-landing-page__icon-image{margin-bottom:5px;max-width:50%}:host .instant-apps-landing-page__icon-image-scale--s{width:100px}:host .instant-apps-landing-page__icon-image-scale--m{width:250px}:host .instant-apps-landing-page__icon-image-scale--l{width:500px}:host .instant-apps-landing-page__button-container{display:flex}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button{margin:var(--instant-apps-landing-page-entry-button-margin)}:host .instant-apps-landing-page__entry-button{--calcite-color-brand:var(--instant-apps-landing-page-entry-button-color);--calcite-color-brand-hover:var(--instant-apps-landing-page-entry-button-color);--calcite-color-brand-press:var(--instant-apps-landing-page-entry-button-color)}:host .instant-apps-landing-page instant-apps-sign-in{height:100%;width:100%;display:flex;align-items:center;justify-content:center}:host .instant-apps-landing-page__remove-transition{transition:none}:host .instant-apps-landing-page__remove-padding{padding:0}:host .instant-apps-landing-page--closed-no-transition{display:none}:host .instant-apps-landing-page--closed{top:-100%}:host .instant-apps-landing-page__alignment--top-center{justify-content:flex-start;align-items:center}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;justify-content:center}:host .instant-apps-landing-page__alignment--top-center .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--center{justify-content:center;align-items:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center}:host .instant-apps-landing-page__alignment--center .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--bottom-center{justify-content:flex-end;align-items:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center}:host .instant-apps-landing-page__alignment--bottom-center .instant-apps-landing-page__description-text{text-align:center}:host .instant-apps-landing-page__alignment--top-left{justify-content:flex-start;align-items:flex-start}:host .instant-apps-landing-page__alignment--top-left .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--center-left{justify-content:center;align-items:flex-start}:host .instant-apps-landing-page__alignment--center-left .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--bottom-left{justify-content:flex-end;align-items:flex-start}:host .instant-apps-landing-page__alignment--bottom-left .instant-apps-landing-page__description-text{text-align:left}:host .instant-apps-landing-page__alignment--top-right{justify-content:flex-start;align-items:flex-end}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end}:host .instant-apps-landing-page__alignment--top-right .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--center-right{justify-content:center;align-items:flex-end}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end}:host .instant-apps-landing-page__alignment--center-right .instant-apps-landing-page__description-text{text-align:right}:host .instant-apps-landing-page__alignment--bottom-right{justify-content:flex-end;align-items:flex-end}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:flex-end}:host .instant-apps-landing-page__alignment--bottom-right .instant-apps-landing-page__description-text{text-align:right}.instant-apps-landing-page__sign-in{width:100%;height:100%}.instant-apps-landing-page__sign-in--overlay{background:rgba(0, 0, 0, 0.6)}@media only screen and (max-width: 768px){:host .instant-apps-landing-page__icon-image{max-width:70%;margin-bottom:20px}:host .instant-apps-landing-page__description-text{width:80%}:host .instant-apps-landing-page__title-text{font-size:var(--calcite-font-size-3)}:host .instant-apps-landing-page__subtitle-text{font-size:var(--calcite-font-size-0)}:host .instant-apps-landing-page__content-container{display:flex;flex-direction:column;align-items:center;margin-top:auto}:host .instant-apps-landing-page__button-container{display:flex;flex-direction:column;width:100%;margin-top:auto}:host .instant-apps-landing-page__button-container .instant-apps-landing-page__entry-button{width:100%;margin-right:unset;margin-bottom:10px}}@media only screen and (max-width: 896px) and (orientation: landscape){:host .instant-apps-landing-page__icon-image{max-width:25%}}";
27
27
  const InstantAppsLandingPageStyle0 = instantAppsLandingPageCss;
28
28
 
29
29
  const CSS = {
@@ -35,10 +35,13 @@ const CSS = {
35
35
  closedNoTransition: 'instant-apps-landing-page--closed-no-transition',
36
36
  iconImage: 'instant-apps-landing-page__icon-image',
37
37
  removeTransition: 'instant-apps-landing-page__remove-transition',
38
+ removePadding: 'instant-apps-landing-page__remove-padding',
38
39
  alignment: 'instant-apps-landing-page__alignment--',
39
40
  entryButton: 'instant-apps-landing-page__entry-button',
40
41
  contentContainer: 'instant-apps-landing-page__content-container',
41
42
  buttonContainer: 'instant-apps-landing-page__button-container',
43
+ signIn: 'instant-apps-landing-page__sign-in',
44
+ signInOverlay: 'instant-apps-landing-page__sign-in--overlay',
42
45
  iconImageScale: {
43
46
  s: ' instant-apps-landing-page__icon-image-scale--s',
44
47
  m: ' instant-apps-landing-page__icon-image-scale--m',
@@ -63,6 +66,9 @@ const InstantAppsLandingPage = class {
63
66
  this.open = true;
64
67
  this.entryButtonScale = 'l';
65
68
  this.fontFamily = 'var(--calcite-sans-family);';
69
+ this.enableSignIn = undefined;
70
+ this.portal = undefined;
71
+ this.oauthappid = undefined;
66
72
  }
67
73
  emitToggleEvent() {
68
74
  if (this.open) {
@@ -72,19 +78,34 @@ const InstantAppsLandingPage = class {
72
78
  this.landingPageClose.emit();
73
79
  }
74
80
  }
81
+ componentWillLoad() {
82
+ if (this.enableSignIn) {
83
+ const signInTime = localStorage.getItem('signing-in') ? new Date(Number(localStorage.getItem('signing-in'))) : null;
84
+ if (signInTime != null) {
85
+ const minuteLimit = 2;
86
+ if ((Date.now() - signInTime.getTime()) / (60 * 1000) < minuteLimit) {
87
+ this.open = false;
88
+ }
89
+ localStorage.removeItem('signing-in');
90
+ }
91
+ }
92
+ }
75
93
  render() {
76
- return index.h(index.Host, null, this.renderLandingPageContent());
94
+ const content = this.enableSignIn ? this.renderLandingPageSignIn() : this.renderLandingPageContent();
95
+ return index.h(index.Host, null, content);
77
96
  }
78
97
  renderLandingPageContent() {
79
98
  const closed = !this.open ? (this.disableTransition ? ` ${CSS.closedNoTransition}` : ` ${CSS.closed}`) : '';
80
99
  const alignmentClass = this.getAlignmentClass();
81
100
  const removeTransition = this.disableTransition ? ` ${CSS.removeTransition}` : '';
82
- const fontFamily = styles.getFontFamily(this.fontFamily);
83
- const style = {
84
- fontFamily,
85
- };
86
- return (index.h("div", { style: this.backgroundImageSrc
87
- ? Object.assign(Object.assign({}, style), { backgroundSize: 'cover', backgroundImage: `url("${this.backgroundImageSrc}")`, backgroundRepeat: 'no-repeat', backgroundPosition: 'center' }) : style, class: `${CSS.BASE}${alignmentClass}${closed}${removeTransition}` }, index.h("div", { class: CSS.contentContainer }, this.renderIconImage(), this.renderTitleText(), this.renderSubtitleText(), this.renderDescriptionText()), index.h("div", { class: CSS.buttonContainer }, this.renderEntryButton(), index.h("slot", { name: "secondary-action" }))));
101
+ const style = this.getContentStyle();
102
+ return (index.h("div", { style: style, class: `${CSS.BASE}${alignmentClass}${closed}${removeTransition}` }, index.h("div", { class: CSS.contentContainer }, this.renderIconImage(), this.renderTitleText(), this.renderSubtitleText(), this.renderDescriptionText()), index.h("div", { class: CSS.buttonContainer }, this.renderEntryButton(), index.h("slot", { name: "secondary-action" }))));
103
+ }
104
+ renderLandingPageSignIn() {
105
+ const closed = !this.open ? (this.disableTransition ? ` ${CSS.closedNoTransition}` : ` ${CSS.closed}`) : '';
106
+ const style = this.getContentStyle();
107
+ const signInClass = this.backgroundImageSrc ? `${CSS.signIn} ${CSS.signInOverlay}` : CSS.signIn;
108
+ return (index.h("div", { style: style, class: `${CSS.BASE}${closed} ${CSS.removePadding}` }, index.h("div", { class: signInClass }, index.h("instant-apps-sign-in", { type: "landingPage", landingPage: true, portal: this.portal, oauthappid: this.oauthappid, titleText: this.titleText, subtitleText: this.subtitleText, descriptionText: this.descriptionText, closeLandingPage: this.closeLandingPage.bind(this) }))));
88
109
  }
89
110
  renderIconImage() {
90
111
  return this.iconImage ? index.h("img", { class: `${CSS.iconImage}${this.getIconImageScale()}`, src: this.iconImage, alt: this.iconImageAltText }) : null;
@@ -99,7 +120,10 @@ const InstantAppsLandingPage = class {
99
120
  return index.h("p", { class: CSS.descriptionText }, this.descriptionText);
100
121
  }
101
122
  renderEntryButton() {
102
- return (index.h("calcite-button", { class: CSS.entryButton, onClick: () => (this.open = false), scale: this.entryButtonScale, appearance: "outline-fill" }, this.entryButtonText ? this.entryButtonText : 'Enter'));
123
+ return (index.h("calcite-button", { class: CSS.entryButton, onClick: this.closeLandingPage.bind(this), scale: this.entryButtonScale, appearance: "outline-fill" }, this.entryButtonText ? this.entryButtonText : 'Enter'));
124
+ }
125
+ closeLandingPage() {
126
+ this.open = false;
103
127
  }
104
128
  getAlignmentClass() {
105
129
  return ` ${CSS.alignment}${this.alignment}`;
@@ -109,6 +133,18 @@ const InstantAppsLandingPage = class {
109
133
  const { s, m, l } = CSS.iconImageScale;
110
134
  return iconImageScale === 'l' ? l : iconImageScale === 's' ? s : m;
111
135
  }
136
+ getContentStyle() {
137
+ const fontFamily = styles.getFontFamily(this.fontFamily);
138
+ return this.backgroundImageSrc
139
+ ? {
140
+ fontFamily,
141
+ backgroundSize: 'cover',
142
+ backgroundImage: `url("${this.backgroundImageSrc}")`,
143
+ backgroundRepeat: 'no-repeat',
144
+ backgroundPosition: 'center',
145
+ }
146
+ : { fontFamily };
147
+ }
112
148
  get el() { return index.getElement(this); }
113
149
  static get watchers() { return {
114
150
  "open": ["emitToggleEvent"]
@@ -11,7 +11,7 @@ const index = require('./index-79b35510.js');
11
11
  const utils = require('./utils-f3710824.js');
12
12
  const loadModules = require('./loadModules-b28900c2.js');
13
13
  const locale = require('./locale-3fd260e3.js');
14
- const languageSwitcher = require('./languageSwitcher-395021d6.js');
14
+ const languageSwitcher = require('./languageSwitcher-b9a1485c.js');
15
15
  require('./index-c078ea5f.js');
16
16
  require('./esri-loader-fce6a9cb.js');
17
17
  require('./languageUtil-da436671.js');
@@ -11,7 +11,7 @@ const index = require('./index-79b35510.js');
11
11
  const utils = require('./utils-f3710824.js');
12
12
  const loadModules = require('./loadModules-b28900c2.js');
13
13
  const locale = require('./locale-3fd260e3.js');
14
- const languageSwitcher = require('./languageSwitcher-395021d6.js');
14
+ const languageSwitcher = require('./languageSwitcher-b9a1485c.js');
15
15
  require('./index-c078ea5f.js');
16
16
  require('./esri-loader-fce6a9cb.js');
17
17
  require('./languageUtil-da436671.js');
@@ -0,0 +1,168 @@
1
+ /*!
2
+ * Copyright 2022 Esri
3
+ * Licensed under the Apache License, Version 2.0
4
+ * http://www.apache.org/licenses/LICENSE-2.0
5
+ */
6
+ 'use strict';
7
+
8
+ Object.defineProperty(exports, '__esModule', { value: true });
9
+
10
+ const index = require('./index-79b35510.js');
11
+ const loadModules = require('./loadModules-b28900c2.js');
12
+ const locale = require('./locale-3fd260e3.js');
13
+ require('./esri-loader-fce6a9cb.js');
14
+ require('./languageUtil-da436671.js');
15
+
16
+ const instantAppsSignInCss = ":host{display:block;box-shadow:none !important}:host .instant-apps-sign-in__container{height:inherit;display:flex;align-items:center}:host .instant-apps-sign-in__container calcite-dropdown,:host .instant-apps-sign-in__container calcite-navigation-user{height:100%}:host .instant-apps-sign-in__container .instant-apps-sign-in__sign-in-btn{margin:10px}:host .instant-apps-sign-in__container calcite-dropdown[scale=m] calcite-dropdown-group{min-width:140px}:host .instant-apps-sign-in__container calcite-dropdown[scale=s] calcite-dropdown-group{min-width:100px}:host .instant-apps-sign-in__container calcite-dropdown-item{--calcite-color-text-1:#d83020;--calcite-color-text-3:#d83020}:host .instant-apps-sign-in__container button{height:32px;width:32px;padding:0;box-sizing:border-box;display:flex;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;appearance:none;-moz-appearance:none;-webkit-appearance:none;-webkit-text-decoration-line:none;text-decoration-line:none;transition:color var(--calcite-animation-timing) ease-in-out, background-color var(--calcite-animation-timing) ease-in-out, box-shadow var(--calcite-animation-timing) ease-in-out, outline-color var(--calcite-internal-animation-timing-fast) ease-in-out;border:none;border-radius:50%;background:#000}:host .instant-apps-sign-in__container button:hover calcite-avatar{opacity:0.7;transition:0.3s}:host .instant-apps-sign-in__landing-page{display:flex;flex-direction:column;justify-content:center;padding:40px;width:50%;min-height:30%;background:rgba(255, 255, 255, 0.8);color:#151515;text-align:center}:host .instant-apps-sign-in__landing-page h1{font-size:22px;margin:10px 0}:host .instant-apps-sign-in__landing-page h2{font-size:16px;margin:0 0 10px}:host .instant-apps-sign-in__landing-page p{font-size:16px;margin:0}:host .instant-apps-sign-in__landing-page-btns{display:flex;justify-content:space-between;margin-top:40px}:host .instant-apps-sign-in__landing-page-btns calcite-button{width:calc(50% - 5px);--calcite-color-brand:var(--instant-apps-landing-page-entry-button-color);--calcite-color-brand-hover:var(--instant-apps-landing-page-entry-button-color);--calcite-color-brand-press:var(--instant-apps-landing-page-entry-button-color)}:host .instant-apps-sign-in__landing-page-btns calcite-button:hover{filter:contrast(0.8)}@media screen and (max-width: 767px){:host .instant-apps-sign-in__landing-page-btns{flex-direction:column;width:100%;align-items:center;height:76px}:host .instant-apps-sign-in__landing-page-btns calcite-button{width:100%}}";
17
+ const InstantAppsSignInStyle0 = instantAppsSignInCss;
18
+
19
+ const CSS = {
20
+ base: 'instant-apps-sign-in__container',
21
+ landing: 'instant-apps-sign-in__landing-page',
22
+ landingBtn: 'instant-apps-sign-in__landing-page-btns',
23
+ SignInBtn: 'instant-apps-sign-in__sign-in-btn',
24
+ };
25
+ const InstantAppsSignIn = class {
26
+ constructor(hostRef) {
27
+ index.registerInstance(this, hostRef);
28
+ this.type = 'navigation';
29
+ this.portal = undefined;
30
+ this.oauthappid = undefined;
31
+ this.openInPopup = undefined;
32
+ this.landingPage = undefined;
33
+ this.isSignedIn = undefined;
34
+ this.user = undefined;
35
+ this.titleText = undefined;
36
+ this.subtitleText = undefined;
37
+ this.descriptionText = undefined;
38
+ this.closeLandingPage = undefined;
39
+ this.ready = false;
40
+ this.messages = undefined;
41
+ }
42
+ async watchPortal() {
43
+ await this.initSignIn();
44
+ }
45
+ async watchOauthappid() {
46
+ await this.initSignIn();
47
+ }
48
+ async componentWillLoad() {
49
+ locale.getMessages(this);
50
+ await this.initSignIn();
51
+ }
52
+ render() {
53
+ const signIn = this.ready ? this.renderContent() : null;
54
+ return index.h(index.Host, null, signIn);
55
+ }
56
+ renderContent() {
57
+ return this.type === 'landingPage' ? this.renderLandingPageSignIn() : this.renderSignInContainer();
58
+ }
59
+ renderSignInContainer() {
60
+ return index.h("div", { class: CSS.base }, this.isSignedIn ? this.renderSignInDropdown() : this.renderSignInButton());
61
+ }
62
+ renderSignInDropdown() {
63
+ var _a, _b, _c, _d, _e, _f, _g;
64
+ const dropdownScale = this.type === 'navigation' ? 'm' : 's';
65
+ return (index.h("calcite-dropdown", { placement: "bottom-end", scale: dropdownScale }, this.type === 'navigation' ? (index.h("calcite-navigation-user", { slot: "trigger", thumbnail: (_a = this.user) === null || _a === void 0 ? void 0 : _a.thumbnailUrl, "full-name": (_b = this.user) === null || _b === void 0 ? void 0 : _b.fullName, username: (_c = this.user) === null || _c === void 0 ? void 0 : _c.username, textDisabled: true })) : (index.h("button", { slot: "trigger" }, index.h("calcite-avatar", { thumbnail: (_d = this.user) === null || _d === void 0 ? void 0 : _d.thumbnailUrl, "full-name": (_e = this.user) === null || _e === void 0 ? void 0 : _e.fullName, username: (_f = this.user) === null || _f === void 0 ? void 0 : _f.username }))), index.h("calcite-dropdown-group", { "selection-mode": "none" }, index.h("calcite-dropdown-item", { onClick: this.signOut.bind(this) }, (_g = this.messages) === null || _g === void 0 ? void 0 : _g.signOut))));
66
+ }
67
+ renderSignInButton() {
68
+ var _a;
69
+ const appearance = this.type === 'navigation' ? 'transparent' : 'brand';
70
+ const className = this.type === 'navigation' ? CSS.SignInBtn : '';
71
+ return (index.h("calcite-button", { class: className, onClick: this.signIn.bind(this), scale: "s", "icon-start": "sign-in", appearance: appearance }, (_a = this.messages) === null || _a === void 0 ? void 0 : _a.signIn));
72
+ }
73
+ renderLandingPageSignIn() {
74
+ var _a, _b;
75
+ return (index.h("div", { class: CSS.landing }, index.h("h1", null, this.titleText), index.h("h2", null, this.subtitleText), index.h("p", null, this.descriptionText), index.h("div", { class: CSS.landingBtn }, index.h("calcite-button", { onClick: this.landingPageSignIn.bind(this) }, (_a = this.messages) === null || _a === void 0 ? void 0 : _a.signIn), index.h("calcite-button", { onClick: this.guestOnClick.bind(this), appearance: "outline" }, (_b = this.messages) === null || _b === void 0 ? void 0 : _b.continueAsGuest))));
76
+ }
77
+ async initSignIn() {
78
+ if (this.portal == null || this.oauthappid == null)
79
+ return;
80
+ const [OAuthInfo, esriId, reactiveUtils] = await loadModules.loadModules(['esri/identity/OAuthInfo', 'esri/identity/IdentityManager', 'esri/core/reactiveUtils']);
81
+ this.idManager = esriId;
82
+ this.info = new OAuthInfo({
83
+ appId: this.oauthappid,
84
+ portalUrl: this.portal.url,
85
+ flowType: 'authorization-code',
86
+ popup: this.openInPopup,
87
+ });
88
+ this.idManager.registerOAuthInfos([this.info]);
89
+ this.isSignedIn = await this.checkSignInStatus();
90
+ this.ready = true;
91
+ this.watchCredential();
92
+ reactiveUtils
93
+ .whenOnce(() => this.portal.user)
94
+ .then(() => {
95
+ this.user = this.portal.user;
96
+ this.ready = true;
97
+ });
98
+ }
99
+ signIn() {
100
+ if (this.landingPage) {
101
+ this.setSignInLocalStorage();
102
+ }
103
+ this.idManager
104
+ .getCredential(this.info.portalUrl + '/sharing', {
105
+ oAuthPopupConfirmation: false,
106
+ })
107
+ .then(async () => {
108
+ await this.checkSignInStatus();
109
+ });
110
+ }
111
+ signOut() {
112
+ this.idManager.destroyCredentials();
113
+ this.portal.authMode = 'anonymous';
114
+ localStorage.removeItem('_AGO_SESSION_');
115
+ this.isSignedIn = false;
116
+ this.portal.credential = null;
117
+ }
118
+ landingPageSignIn() {
119
+ if (!this.isSignedIn) {
120
+ this.setSignInLocalStorage();
121
+ this.signIn();
122
+ }
123
+ else if (this.closeLandingPage != null) {
124
+ this.closeLandingPage();
125
+ }
126
+ }
127
+ guestOnClick() {
128
+ this.signOut();
129
+ if (this.closeLandingPage != null) {
130
+ this.closeLandingPage();
131
+ }
132
+ }
133
+ checkSignInStatus() {
134
+ return new Promise(resolve => {
135
+ this.idManager
136
+ .checkSignInStatus(this.info.portalUrl + '/sharing')
137
+ .then(async (credential) => {
138
+ this.portal.credential = credential;
139
+ resolve(true);
140
+ })
141
+ .catch(() => {
142
+ this.portal.credential = null;
143
+ resolve(false);
144
+ });
145
+ });
146
+ }
147
+ watchCredential() {
148
+ this.portal.addHandles(this.portal.watch('credential', credential => {
149
+ this.isSignedIn = credential != null;
150
+ }));
151
+ }
152
+ setSignInLocalStorage() {
153
+ const date = new Date();
154
+ localStorage.setItem('signing-in', date.getTime().toString());
155
+ // remove from local storage if page doens't immediately redirect to sign in
156
+ setTimeout(() => {
157
+ localStorage.removeItem('signing-in');
158
+ }, 2000);
159
+ }
160
+ get el() { return index.getElement(this); }
161
+ static get watchers() { return {
162
+ "portal": ["watchPortal"],
163
+ "oauthappid": ["watchOauthappid"]
164
+ }; }
165
+ };
166
+ InstantAppsSignIn.style = InstantAppsSignInStyle0;
167
+
168
+ exports.instant_apps_sign_in = InstantAppsSignIn;
@@ -28,7 +28,9 @@ async function getPortalItemResource(portalItem) {
28
28
  if (!portalItem)
29
29
  return null;
30
30
  const [PortalItemResource] = await loadModules.loadModules(['esri/portal/PortalItemResource']);
31
- const existingResourcesRes = await portalItem.fetchResources();
31
+ const existingResourcesRes = await portalItem.fetchResources({
32
+ num: 100,
33
+ });
32
34
  const path = `t9n/${portalItem === null || portalItem === void 0 ? void 0 : portalItem.id}.json`;
33
35
  const resource = new PortalItemResource({ path, portalItem });
34
36
  const existingResourceArr = existingResourcesRes.resources.filter(resourceItem => resourceItem.resource.path === path);