@esri/hub-common 9.13.1 → 9.15.0

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 (335) hide show
  1. package/dist/es2017/ArcGISContext.js +202 -120
  2. package/dist/es2017/ArcGISContext.js.map +1 -1
  3. package/dist/es2017/ArcGISContextManager.js +171 -0
  4. package/dist/es2017/ArcGISContextManager.js.map +1 -0
  5. package/dist/es2017/Hub.js +70 -0
  6. package/dist/es2017/Hub.js.map +1 -0
  7. package/dist/es2017/HubError.js +34 -0
  8. package/dist/es2017/HubError.js.map +1 -0
  9. package/dist/es2017/collections.js +23 -0
  10. package/dist/es2017/collections.js.map +1 -1
  11. package/dist/es2017/content/_internal.js.map +1 -1
  12. package/dist/es2017/content/index.js +25 -17
  13. package/dist/es2017/content/index.js.map +1 -1
  14. package/dist/es2017/core/helpers/PropertyMapper.js +95 -0
  15. package/dist/es2017/core/helpers/PropertyMapper.js.map +1 -0
  16. package/dist/es2017/core/index.js +3 -0
  17. package/dist/es2017/core/index.js.map +1 -0
  18. package/dist/es2017/core/traits/WithBannerImage.js +1 -0
  19. package/dist/es2017/core/traits/WithBannerImage.js.map +1 -0
  20. package/dist/es2017/core/traits/WithLayout.js +1 -0
  21. package/dist/es2017/core/traits/WithLayout.js.map +1 -0
  22. package/dist/es2017/core/traits/WithSlug.js +1 -0
  23. package/dist/es2017/core/traits/WithSlug.js.map +1 -0
  24. package/dist/es2017/core/traits/index.js +4 -0
  25. package/dist/es2017/core/traits/index.js.map +1 -0
  26. package/dist/es2017/core/types/IContentEnrichments.js +1 -0
  27. package/dist/es2017/core/types/IContentEnrichments.js.map +1 -0
  28. package/dist/es2017/core/types/IHubContent.js +1 -0
  29. package/dist/es2017/core/types/IHubContent.js.map +1 -0
  30. package/dist/es2017/core/types/IHubEntityBase.js +1 -0
  31. package/dist/es2017/core/types/IHubEntityBase.js.map +1 -0
  32. package/dist/es2017/core/types/IHubEntityManager.js +1 -0
  33. package/dist/es2017/core/types/IHubEntityManager.js.map +1 -0
  34. package/dist/es2017/core/types/IHubEvent.js +1 -0
  35. package/dist/es2017/core/types/IHubEvent.js.map +1 -0
  36. package/dist/es2017/core/types/IHubImage.js +1 -0
  37. package/dist/es2017/core/types/IHubImage.js.map +1 -0
  38. package/dist/es2017/core/types/IHubInitiative.js +1 -0
  39. package/dist/es2017/core/types/IHubInitiative.js.map +1 -0
  40. package/dist/es2017/core/types/IHubItemEntity.js +1 -0
  41. package/dist/es2017/core/types/IHubItemEntity.js.map +1 -0
  42. package/dist/es2017/core/types/IHubLayout.js +1 -0
  43. package/dist/es2017/core/types/IHubLayout.js.map +1 -0
  44. package/dist/es2017/core/types/IHubPage.js +1 -0
  45. package/dist/es2017/core/types/IHubPage.js.map +1 -0
  46. package/dist/es2017/core/types/IHubProject.js +1 -0
  47. package/dist/es2017/core/types/IHubProject.js.map +1 -0
  48. package/dist/es2017/core/types/IHubSite.js +1 -0
  49. package/dist/es2017/core/types/IHubSite.js.map +1 -0
  50. package/dist/es2017/core/types/IHubTimeline.js +1 -0
  51. package/dist/es2017/core/types/IHubTimeline.js.map +1 -0
  52. package/dist/es2017/core/types/IItemEnrichments.js +1 -0
  53. package/dist/es2017/core/types/IItemEnrichments.js.map +1 -0
  54. package/dist/es2017/core/types/index.js +15 -0
  55. package/dist/es2017/core/types/index.js.map +1 -0
  56. package/dist/es2017/index.js +11 -5
  57. package/dist/es2017/index.js.map +1 -1
  58. package/dist/es2017/items/fail-safe-update.js +2 -2
  59. package/dist/es2017/items/fail-safe-update.js.map +1 -1
  60. package/dist/es2017/items/get-model-from-options.js +2 -2
  61. package/dist/es2017/items/get-model-from-options.js.map +1 -1
  62. package/dist/es2017/items/index.js +2 -3
  63. package/dist/es2017/items/index.js.map +1 -1
  64. package/dist/es2017/items/slugs.js +92 -0
  65. package/dist/es2017/items/slugs.js.map +1 -0
  66. package/dist/es2017/models/index.js +98 -0
  67. package/dist/es2017/models/index.js.map +1 -0
  68. package/dist/es2017/{items/serialize-model.js → models/serializeModel.js} +1 -1
  69. package/dist/es2017/models/serializeModel.js.map +1 -0
  70. package/dist/es2017/projects/HubProjectManager.js +115 -0
  71. package/dist/es2017/projects/HubProjectManager.js.map +1 -0
  72. package/dist/es2017/projects/HubProjects.js +194 -0
  73. package/dist/es2017/projects/HubProjects.js.map +1 -0
  74. package/dist/es2017/projects/index.js +3 -0
  75. package/dist/es2017/projects/index.js.map +1 -0
  76. package/dist/es2017/search/_searchContent.js +18 -7
  77. package/dist/es2017/search/_searchContent.js.map +1 -1
  78. package/dist/es2017/search/_searchGroups.js +1 -11
  79. package/dist/es2017/search/_searchGroups.js.map +1 -1
  80. package/dist/es2017/search/utils.js +1 -1
  81. package/dist/es2017/urls/getHubApiFromPortalUrl.js +21 -0
  82. package/dist/es2017/urls/getHubApiFromPortalUrl.js.map +1 -0
  83. package/dist/es2017/urls/getPortalBaseFromOrgUrl.js +25 -0
  84. package/dist/es2017/urls/getPortalBaseFromOrgUrl.js.map +1 -0
  85. package/dist/es2017/urls/index.js +2 -0
  86. package/dist/es2017/urls/index.js.map +1 -1
  87. package/dist/es2017/utils/dasherize.js +25 -0
  88. package/dist/es2017/utils/dasherize.js.map +1 -0
  89. package/dist/es2017/utils/index.js +1 -0
  90. package/dist/es2017/utils/index.js.map +1 -1
  91. package/dist/esm/ArcGISContext.js +308 -180
  92. package/dist/esm/ArcGISContext.js.map +1 -1
  93. package/dist/esm/ArcGISContextManager.js +215 -0
  94. package/dist/esm/ArcGISContextManager.js.map +1 -0
  95. package/dist/esm/Hub.js +89 -0
  96. package/dist/esm/Hub.js.map +1 -0
  97. package/dist/esm/HubError.js +40 -0
  98. package/dist/esm/HubError.js.map +1 -0
  99. package/dist/esm/collections.js +23 -0
  100. package/dist/esm/collections.js.map +1 -1
  101. package/dist/esm/content/_internal.js.map +1 -1
  102. package/dist/esm/content/index.js +25 -17
  103. package/dist/esm/content/index.js.map +1 -1
  104. package/dist/esm/core/helpers/PropertyMapper.js +97 -0
  105. package/dist/esm/core/helpers/PropertyMapper.js.map +1 -0
  106. package/dist/esm/core/index.js +3 -0
  107. package/dist/esm/core/index.js.map +1 -0
  108. package/dist/esm/core/traits/WithBannerImage.js +1 -0
  109. package/dist/esm/core/traits/WithBannerImage.js.map +1 -0
  110. package/dist/esm/core/traits/WithLayout.js +1 -0
  111. package/dist/esm/core/traits/WithLayout.js.map +1 -0
  112. package/dist/esm/core/traits/WithSlug.js +1 -0
  113. package/dist/esm/core/traits/WithSlug.js.map +1 -0
  114. package/dist/esm/core/traits/index.js +4 -0
  115. package/dist/esm/core/traits/index.js.map +1 -0
  116. package/dist/esm/core/types/IContentEnrichments.js +1 -0
  117. package/dist/esm/core/types/IContentEnrichments.js.map +1 -0
  118. package/dist/esm/core/types/IHubContent.js +1 -0
  119. package/dist/esm/core/types/IHubContent.js.map +1 -0
  120. package/dist/esm/core/types/IHubEntityBase.js +1 -0
  121. package/dist/esm/core/types/IHubEntityBase.js.map +1 -0
  122. package/dist/esm/core/types/IHubEntityManager.js +1 -0
  123. package/dist/esm/core/types/IHubEntityManager.js.map +1 -0
  124. package/dist/esm/core/types/IHubEvent.js +1 -0
  125. package/dist/esm/core/types/IHubEvent.js.map +1 -0
  126. package/dist/esm/core/types/IHubImage.js +1 -0
  127. package/dist/esm/core/types/IHubImage.js.map +1 -0
  128. package/dist/esm/core/types/IHubInitiative.js +1 -0
  129. package/dist/esm/core/types/IHubInitiative.js.map +1 -0
  130. package/dist/esm/core/types/IHubItemEntity.js +1 -0
  131. package/dist/esm/core/types/IHubItemEntity.js.map +1 -0
  132. package/dist/esm/core/types/IHubLayout.js +1 -0
  133. package/dist/esm/core/types/IHubLayout.js.map +1 -0
  134. package/dist/esm/core/types/IHubPage.js +1 -0
  135. package/dist/esm/core/types/IHubPage.js.map +1 -0
  136. package/dist/esm/core/types/IHubProject.js +1 -0
  137. package/dist/esm/core/types/IHubProject.js.map +1 -0
  138. package/dist/esm/core/types/IHubSite.js +1 -0
  139. package/dist/esm/core/types/IHubSite.js.map +1 -0
  140. package/dist/esm/core/types/IHubTimeline.js +1 -0
  141. package/dist/esm/core/types/IHubTimeline.js.map +1 -0
  142. package/dist/esm/core/types/IItemEnrichments.js +1 -0
  143. package/dist/esm/core/types/IItemEnrichments.js.map +1 -0
  144. package/dist/esm/core/types/index.js +15 -0
  145. package/dist/esm/core/types/index.js.map +1 -0
  146. package/dist/esm/index.js +11 -5
  147. package/dist/esm/index.js.map +1 -1
  148. package/dist/esm/items/fail-safe-update.js +2 -2
  149. package/dist/esm/items/fail-safe-update.js.map +1 -1
  150. package/dist/esm/items/get-model-from-options.js +2 -2
  151. package/dist/esm/items/get-model-from-options.js.map +1 -1
  152. package/dist/esm/items/index.js +2 -3
  153. package/dist/esm/items/index.js.map +1 -1
  154. package/dist/esm/items/slugs.js +93 -0
  155. package/dist/esm/items/slugs.js.map +1 -0
  156. package/dist/esm/models/index.js +99 -0
  157. package/dist/esm/models/index.js.map +1 -0
  158. package/dist/esm/{items/serialize-model.js → models/serializeModel.js} +1 -1
  159. package/dist/esm/models/serializeModel.js.map +1 -0
  160. package/dist/esm/projects/HubProjectManager.js +142 -0
  161. package/dist/esm/projects/HubProjectManager.js.map +1 -0
  162. package/dist/esm/projects/HubProjects.js +225 -0
  163. package/dist/esm/projects/HubProjects.js.map +1 -0
  164. package/dist/esm/projects/index.js +3 -0
  165. package/dist/esm/projects/index.js.map +1 -0
  166. package/dist/esm/search/_searchContent.js +18 -7
  167. package/dist/esm/search/_searchContent.js.map +1 -1
  168. package/dist/esm/search/_searchGroups.js +3 -13
  169. package/dist/esm/search/_searchGroups.js.map +1 -1
  170. package/dist/esm/search/utils.js +1 -1
  171. package/dist/esm/urls/getHubApiFromPortalUrl.js +21 -0
  172. package/dist/esm/urls/getHubApiFromPortalUrl.js.map +1 -0
  173. package/dist/esm/urls/getPortalBaseFromOrgUrl.js +25 -0
  174. package/dist/esm/urls/getPortalBaseFromOrgUrl.js.map +1 -0
  175. package/dist/esm/urls/index.js +2 -0
  176. package/dist/esm/urls/index.js.map +1 -1
  177. package/dist/esm/utils/dasherize.js +25 -0
  178. package/dist/esm/utils/dasherize.js.map +1 -0
  179. package/dist/esm/utils/index.js +1 -0
  180. package/dist/esm/utils/index.js.map +1 -1
  181. package/dist/node/ArcGISContext.js +203 -121
  182. package/dist/node/ArcGISContext.js.map +1 -1
  183. package/dist/node/ArcGISContextManager.js +175 -0
  184. package/dist/node/ArcGISContextManager.js.map +1 -0
  185. package/dist/node/Hub.js +74 -0
  186. package/dist/node/Hub.js.map +1 -0
  187. package/dist/node/HubError.js +37 -0
  188. package/dist/node/HubError.js.map +1 -0
  189. package/dist/node/collections.js +24 -1
  190. package/dist/node/collections.js.map +1 -1
  191. package/dist/node/content/_internal.js.map +1 -1
  192. package/dist/node/content/index.js +25 -17
  193. package/dist/node/content/index.js.map +1 -1
  194. package/dist/node/core/helpers/PropertyMapper.js +101 -0
  195. package/dist/node/core/helpers/PropertyMapper.js.map +1 -0
  196. package/dist/node/core/index.js +6 -0
  197. package/dist/node/core/index.js.map +1 -0
  198. package/dist/node/core/traits/WithBannerImage.js +3 -0
  199. package/dist/node/core/traits/WithBannerImage.js.map +1 -0
  200. package/dist/node/core/traits/WithLayout.js +3 -0
  201. package/dist/node/core/traits/WithLayout.js.map +1 -0
  202. package/dist/node/core/traits/WithSlug.js +3 -0
  203. package/dist/node/core/traits/WithSlug.js.map +1 -0
  204. package/dist/node/core/traits/index.js +7 -0
  205. package/dist/node/core/traits/index.js.map +1 -0
  206. package/dist/node/core/types/IContentEnrichments.js +3 -0
  207. package/dist/node/core/types/IContentEnrichments.js.map +1 -0
  208. package/dist/node/core/types/IHubContent.js +3 -0
  209. package/dist/node/core/types/IHubContent.js.map +1 -0
  210. package/dist/node/core/types/IHubEntityBase.js +3 -0
  211. package/dist/node/core/types/IHubEntityBase.js.map +1 -0
  212. package/dist/node/core/types/IHubEntityManager.js +3 -0
  213. package/dist/node/core/types/IHubEntityManager.js.map +1 -0
  214. package/dist/node/core/types/IHubEvent.js +3 -0
  215. package/dist/node/core/types/IHubEvent.js.map +1 -0
  216. package/dist/node/core/types/IHubImage.js +3 -0
  217. package/dist/node/core/types/IHubImage.js.map +1 -0
  218. package/dist/node/core/types/IHubInitiative.js +3 -0
  219. package/dist/node/core/types/IHubInitiative.js.map +1 -0
  220. package/dist/node/core/types/IHubItemEntity.js +3 -0
  221. package/dist/node/core/types/IHubItemEntity.js.map +1 -0
  222. package/dist/node/core/types/IHubLayout.js +3 -0
  223. package/dist/node/core/types/IHubLayout.js.map +1 -0
  224. package/dist/node/core/types/IHubPage.js +3 -0
  225. package/dist/node/core/types/IHubPage.js.map +1 -0
  226. package/dist/node/core/types/IHubProject.js +3 -0
  227. package/dist/node/core/types/IHubProject.js.map +1 -0
  228. package/dist/node/core/types/IHubSite.js +3 -0
  229. package/dist/node/core/types/IHubSite.js.map +1 -0
  230. package/dist/node/core/types/IHubTimeline.js +3 -0
  231. package/dist/node/core/types/IHubTimeline.js.map +1 -0
  232. package/dist/node/core/types/IItemEnrichments.js +3 -0
  233. package/dist/node/core/types/IItemEnrichments.js.map +1 -0
  234. package/dist/node/core/types/index.js +18 -0
  235. package/dist/node/core/types/index.js.map +1 -0
  236. package/dist/node/index.js +12 -5
  237. package/dist/node/index.js.map +1 -1
  238. package/dist/node/items/fail-safe-update.js +3 -3
  239. package/dist/node/items/fail-safe-update.js.map +1 -1
  240. package/dist/node/items/get-model-from-options.js +3 -3
  241. package/dist/node/items/get-model-from-options.js.map +1 -1
  242. package/dist/node/items/index.js +2 -3
  243. package/dist/node/items/index.js.map +1 -1
  244. package/dist/node/items/slugs.js +99 -0
  245. package/dist/node/items/slugs.js.map +1 -0
  246. package/dist/node/models/index.js +106 -0
  247. package/dist/node/models/index.js.map +1 -0
  248. package/dist/node/{items/serialize-model.js → models/serializeModel.js} +1 -1
  249. package/dist/node/models/serializeModel.js.map +1 -0
  250. package/dist/node/projects/HubProjectManager.js +119 -0
  251. package/dist/node/projects/HubProjectManager.js.map +1 -0
  252. package/dist/node/projects/HubProjects.js +201 -0
  253. package/dist/node/projects/HubProjects.js.map +1 -0
  254. package/dist/node/projects/index.js +6 -0
  255. package/dist/node/projects/index.js.map +1 -0
  256. package/dist/node/search/_searchContent.js +17 -6
  257. package/dist/node/search/_searchContent.js.map +1 -1
  258. package/dist/node/search/_searchGroups.js +1 -11
  259. package/dist/node/search/_searchGroups.js.map +1 -1
  260. package/dist/node/search/utils.js +1 -1
  261. package/dist/node/urls/getHubApiFromPortalUrl.js +25 -0
  262. package/dist/node/urls/getHubApiFromPortalUrl.js.map +1 -0
  263. package/dist/node/urls/getPortalBaseFromOrgUrl.js +29 -0
  264. package/dist/node/urls/getPortalBaseFromOrgUrl.js.map +1 -0
  265. package/dist/node/urls/index.js +2 -0
  266. package/dist/node/urls/index.js.map +1 -1
  267. package/dist/node/utils/dasherize.js +29 -0
  268. package/dist/node/utils/dasherize.js.map +1 -0
  269. package/dist/node/utils/index.js +1 -0
  270. package/dist/node/utils/index.js.map +1 -1
  271. package/dist/types/ArcGISContext.d.ts +280 -58
  272. package/dist/types/ArcGISContextManager.d.ts +130 -0
  273. package/dist/types/Hub.d.ts +72 -0
  274. package/dist/types/HubError.d.ts +17 -0
  275. package/dist/types/collections.d.ts +12 -0
  276. package/dist/types/content/_internal.d.ts +57 -38
  277. package/dist/types/content/index.d.ts +8 -8
  278. package/dist/types/core/helpers/PropertyMapper.d.ts +69 -0
  279. package/dist/types/core/index.d.ts +2 -0
  280. package/dist/types/core/traits/WithBannerImage.d.ts +30 -0
  281. package/dist/types/core/traits/WithLayout.d.ts +54 -0
  282. package/dist/types/core/traits/WithSlug.d.ts +15 -0
  283. package/dist/types/core/traits/index.d.ts +3 -0
  284. package/dist/types/core/types/IContentEnrichments.d.ts +10 -0
  285. package/dist/types/core/types/IHubContent.d.ts +77 -0
  286. package/dist/types/core/types/IHubEntityBase.d.ts +41 -0
  287. package/dist/types/core/types/IHubEntityManager.d.ts +33 -0
  288. package/dist/types/core/types/IHubEvent.d.ts +10 -0
  289. package/dist/types/core/types/IHubImage.d.ts +25 -0
  290. package/dist/types/core/types/IHubInitiative.d.ts +8 -0
  291. package/dist/types/core/types/IHubItemEntity.d.ts +42 -0
  292. package/dist/types/core/types/IHubLayout.d.ts +20 -0
  293. package/dist/types/core/types/IHubPage.d.ts +8 -0
  294. package/dist/types/core/types/IHubProject.d.ts +15 -0
  295. package/dist/types/core/types/IHubSite.d.ts +11 -0
  296. package/dist/types/core/types/IHubTimeline.d.ts +41 -0
  297. package/dist/types/core/types/IItemEnrichments.d.ts +23 -0
  298. package/dist/types/core/types/index.d.ts +14 -0
  299. package/dist/types/index.d.ts +11 -5
  300. package/dist/types/items/index.d.ts +2 -3
  301. package/dist/types/items/slugs.d.ts +43 -0
  302. package/dist/types/models/index.d.ts +42 -0
  303. package/dist/types/{items/serialize-model.d.ts → models/serializeModel.d.ts} +0 -0
  304. package/dist/types/projects/HubProjectManager.d.ts +81 -0
  305. package/dist/types/projects/HubProjects.d.ts +31 -0
  306. package/dist/types/projects/index.d.ts +2 -0
  307. package/dist/types/search/utils.d.ts +1 -1
  308. package/dist/types/types.d.ts +2 -92
  309. package/dist/types/urls/getHubApiFromPortalUrl.d.ts +8 -0
  310. package/dist/types/urls/getPortalBaseFromOrgUrl.d.ts +9 -0
  311. package/dist/types/urls/index.d.ts +2 -0
  312. package/dist/types/utils/dasherize.d.ts +17 -0
  313. package/dist/types/utils/index.d.ts +1 -0
  314. package/dist/umd/common.umd.js +4632 -3668
  315. package/dist/umd/common.umd.js.map +1 -1
  316. package/dist/umd/common.umd.min.js +1 -1
  317. package/dist/umd/common.umd.min.js.map +1 -1
  318. package/package.json +1 -1
  319. package/dist/es2017/ArcGISContextState.js +0 -203
  320. package/dist/es2017/ArcGISContextState.js.map +0 -1
  321. package/dist/es2017/items/get-model.js +0 -19
  322. package/dist/es2017/items/get-model.js.map +0 -1
  323. package/dist/es2017/items/serialize-model.js.map +0 -1
  324. package/dist/esm/ArcGISContextState.js +0 -285
  325. package/dist/esm/ArcGISContextState.js.map +0 -1
  326. package/dist/esm/items/get-model.js +0 -19
  327. package/dist/esm/items/get-model.js.map +0 -1
  328. package/dist/esm/items/serialize-model.js.map +0 -1
  329. package/dist/node/ArcGISContextState.js +0 -207
  330. package/dist/node/ArcGISContextState.js.map +0 -1
  331. package/dist/node/items/get-model.js +0 -23
  332. package/dist/node/items/get-model.js.map +0 -1
  333. package/dist/node/items/serialize-model.js.map +0 -1
  334. package/dist/types/ArcGISContextState.d.ts +0 -129
  335. package/dist/types/items/get-model.d.ts +0 -8
@@ -0,0 +1,142 @@
1
+ import { __awaiter, __generator } from "tslib";
2
+ import { createProject, updateProject, destroyProject, getProject, } from "./HubProjects";
3
+ // Node has issues if this is not directly imported
4
+ import { ArcGISContextManager } from "../ArcGISContextManager";
5
+ import { HubError } from "..";
6
+ /**
7
+ * Centralized functions used to manage IHubProject instances
8
+ *
9
+ * This class is a convenience wrapper over util functions which
10
+ * are also directly accessible for use in scenarios where
11
+ * classes are inconvenient.
12
+ */
13
+ var HubProjectManager = /** @class */ (function () {
14
+ /**
15
+ * Private so we can employ a factory function should we need
16
+ * async work during creation
17
+ * @param contextOrManager
18
+ */
19
+ function HubProjectManager(contextOrManager) {
20
+ if (contextOrManager instanceof ArcGISContextManager) {
21
+ this._contextManager = contextOrManager;
22
+ }
23
+ else {
24
+ this._context = contextOrManager;
25
+ }
26
+ }
27
+ /**
28
+ * Factory function to construct a new HubProjectManager instance.
29
+ *
30
+ * Note: Used so that we could do async actions in the ctor.
31
+ * @param contextOrManager
32
+ * @returns
33
+ */
34
+ HubProjectManager.init = function (contextOrManager) {
35
+ return new HubProjectManager(contextOrManager);
36
+ };
37
+ Object.defineProperty(HubProjectManager.prototype, "context", {
38
+ /**
39
+ * Getter to abstract how we store the context
40
+ */
41
+ get: function () {
42
+ if (this._contextManager) {
43
+ return this._contextManager.context;
44
+ }
45
+ else {
46
+ return this._context;
47
+ }
48
+ },
49
+ enumerable: false,
50
+ configurable: true
51
+ });
52
+ /**
53
+ * Create and store new project.
54
+ *
55
+ * Projects are stored as Items in the Sharing API
56
+ * @param project
57
+ * @param requestOptions
58
+ * @returns
59
+ */
60
+ HubProjectManager.prototype.create = function (project, requestOptions) {
61
+ return __awaiter(this, void 0, void 0, function () {
62
+ return __generator(this, function (_a) {
63
+ if (requestOptions || this.context.isAuthenticated) {
64
+ // ammend in the orgUrlKey
65
+ if (!project.orgUrlKey) {
66
+ project.orgUrlKey = this.context.portal.urlKey;
67
+ }
68
+ return [2 /*return*/, createProject(project, requestOptions || this.context.userRequestOptions)];
69
+ }
70
+ else {
71
+ throw new HubError("Create Project", "Creating Hub Projects requires authentication.");
72
+ }
73
+ return [2 /*return*/];
74
+ });
75
+ });
76
+ };
77
+ /**
78
+ * Update a project
79
+ * @param project
80
+ * @param requestOptions
81
+ * @returns
82
+ */
83
+ HubProjectManager.prototype.update = function (project, requestOptions) {
84
+ return __awaiter(this, void 0, void 0, function () {
85
+ return __generator(this, function (_a) {
86
+ if (requestOptions || this.context.isAuthenticated) {
87
+ return [2 /*return*/, updateProject(project, requestOptions || this.context.userRequestOptions)];
88
+ }
89
+ else {
90
+ throw new HubError("Update Project", "Updating Hub Projects requires authentication.");
91
+ }
92
+ return [2 /*return*/];
93
+ });
94
+ });
95
+ };
96
+ /**
97
+ * Destroy a project.
98
+ * This permanently removes the backing Item
99
+ * @param id
100
+ * @param requestOptions
101
+ * @returns
102
+ */
103
+ HubProjectManager.prototype.destroy = function (id, requestOptions) {
104
+ return __awaiter(this, void 0, void 0, function () {
105
+ return __generator(this, function (_a) {
106
+ if (requestOptions || this.context.isAuthenticated) {
107
+ return [2 /*return*/, destroyProject(id, requestOptions || this.context.userRequestOptions)];
108
+ }
109
+ else {
110
+ throw new HubError("Destroy Project", "Destroying Hub Projects requires authentication.");
111
+ }
112
+ return [2 /*return*/];
113
+ });
114
+ });
115
+ };
116
+ /**
117
+ * Fetch a Project via id or it's slug
118
+ *
119
+ * This function does not require a user to be
120
+ * authenticated, but it does require an `IRequestOptions`
121
+ * which contains the portal instance to communicate with
122
+ * @param identifier
123
+ * @param requestOptions
124
+ * @returns
125
+ */
126
+ HubProjectManager.prototype.fetch = function (identifier, requestOptions) {
127
+ return __awaiter(this, void 0, void 0, function () {
128
+ return __generator(this, function (_a) {
129
+ if (requestOptions || this.context.requestOptions) {
130
+ return [2 /*return*/, getProject(identifier, requestOptions || this.context.requestOptions)];
131
+ }
132
+ else {
133
+ throw new HubError("Get Project", "Can not retrieve context.requestOptions from Context Manager. HubProjectManager is configured incorrectly.");
134
+ }
135
+ return [2 /*return*/];
136
+ });
137
+ });
138
+ };
139
+ return HubProjectManager;
140
+ }());
141
+ export { HubProjectManager };
142
+ //# sourceMappingURL=HubProjectManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HubProjectManager.js","sourceRoot":"","sources":["../../../src/projects/HubProjectManager.ts"],"names":[],"mappings":";AAEA,OAAO,EACL,aAAa,EACb,aAAa,EACb,cAAc,EACd,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,mDAAmD;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAkB,MAAM,IAAI,CAAC;AAG9C;;;;;;GAMG;AACH;IAgBE;;;;OAIG;IACH,2BAAoB,gBAAuD;QACzE,IAAI,gBAAgB,YAAY,oBAAoB,EAAE;YACpD,IAAI,CAAC,eAAe,GAAG,gBAAgB,CAAC;SACzC;aAAM;YACL,IAAI,CAAC,QAAQ,GAAG,gBAAgB,CAAC;SAClC;IACH,CAAC;IAED;;;;;;OAMG;IACI,sBAAI,GAAX,UACE,gBAAuD;QAEvD,OAAO,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,CAAC;IACjD,CAAC;IAKD,sBAAY,sCAAO;QAHnB;;WAEG;aACH;YACE,IAAI,IAAI,CAAC,eAAe,EAAE;gBACxB,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC;aACrC;iBAAM;gBACL,OAAO,IAAI,CAAC,QAAQ,CAAC;aACtB;QACH,CAAC;;;OAAA;IAED;;;;;;;OAOG;IACG,kCAAM,GAAZ,UACE,OAA6B,EAC7B,cAAoC;;;gBAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;oBAClD,0BAA0B;oBAC1B,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE;wBACtB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;qBAChD;oBACD,sBAAO,aAAa,CAClB,OAAO,EACP,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,EAAC;iBACH;qBAAM;oBACL,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,gDAAgD,CACjD,CAAC;iBACH;;;;KACF;IAED;;;;;OAKG;IACG,kCAAM,GAAZ,UACE,OAAoB,EACpB,cAAoC;;;gBAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;oBAClD,sBAAO,aAAa,CAClB,OAAO,EACP,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,EAAC;iBACH;qBAAM;oBACL,MAAM,IAAI,QAAQ,CAChB,gBAAgB,EAChB,gDAAgD,CACjD,CAAC;iBACH;;;;KACF;IAED;;;;;;OAMG;IACG,mCAAO,GAAb,UACE,EAAU,EACV,cAAoC;;;gBAEpC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,eAAe,EAAE;oBAClD,sBAAO,cAAc,CACnB,EAAE,EACF,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,CAClD,EAAC;iBACH;qBAAM;oBACL,MAAM,IAAI,QAAQ,CAChB,iBAAiB,EACjB,kDAAkD,CACnD,CAAC;iBACH;;;;KACF;IACD;;;;;;;;;OASG;IACG,iCAAK,GAAX,UACE,UAAkB,EAClB,cAAgC;;;gBAEhC,IAAI,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;oBACjD,sBAAO,UAAU,CACf,UAAU,EACV,cAAc,IAAI,IAAI,CAAC,OAAO,CAAC,cAAc,CAC9C,EAAC;iBACH;qBAAM;oBACL,MAAM,IAAI,QAAQ,CAChB,aAAa,EACb,4GAA4G,CAC7G,CAAC;iBACH;;;;KACF;IAgBH,wBAAC;AAAD,CAAC,AAzKD,IAyKC"}
@@ -0,0 +1,225 @@
1
+ import { __assign, __awaiter, __generator } from "tslib";
2
+ // Note - we separate these imports so we can cleanly spy on things in tests
3
+ import { createModel, getModel, getModelBySlug, updateModel } from "../models";
4
+ import { constructSlug, getUniqueSlug, setSlugKeyword } from "../items/slugs";
5
+ import { isGuid, cloneObject, } from "..";
6
+ import { removeItem } from "@esri/arcgis-rest-portal";
7
+ import { PropertyMapper } from "../core/helpers/PropertyMapper";
8
+ export var HUB_PROJECT_ITEM_TYPE = "Web Mapping Application";
9
+ /**
10
+ * Default values of a IHubProject
11
+ */
12
+ var DEFAULT_PROJECT = {
13
+ name: "No title provided",
14
+ tags: [],
15
+ typeKeywords: ["IHubProject", "HubProject"],
16
+ };
17
+ /**
18
+ * Default values for a new HubProject Model
19
+ */
20
+ var DEFAULT_PROJECT_MODEL = {
21
+ item: {
22
+ type: HUB_PROJECT_ITEM_TYPE,
23
+ title: "No Title Provided",
24
+ description: "No Description Provided",
25
+ snippet: "",
26
+ tags: [],
27
+ typeKeywords: [],
28
+ properties: {
29
+ slug: "",
30
+ },
31
+ },
32
+ data: {
33
+ display: "about",
34
+ timeline: {},
35
+ org: {},
36
+ status: "inactive",
37
+ contacts: [],
38
+ schemaVersion: 1,
39
+ },
40
+ };
41
+ /**
42
+ * Returns an Array of IPropertyMap objects
43
+ * We could define these directly, but since the
44
+ * properties of IHubProject map directly to properties
45
+ * on item or data, it's slightly less verbose to
46
+ * generate the structure.
47
+ * @returns
48
+ */
49
+ function getProjectPropertyMap() {
50
+ var itemProps = [
51
+ "created",
52
+ "culture",
53
+ "description",
54
+ "extent",
55
+ "id",
56
+ "modified",
57
+ "owner",
58
+ "snippet",
59
+ "tags",
60
+ "typeKeywords",
61
+ "url",
62
+ "type",
63
+ ];
64
+ var dataProps = [
65
+ "contacts",
66
+ "display",
67
+ "geometry",
68
+ "headerImage",
69
+ "layout",
70
+ "location",
71
+ "status",
72
+ ];
73
+ var map = [];
74
+ itemProps.forEach(function (entry) {
75
+ map.push({ objectKey: entry, modelKey: "item." + entry });
76
+ });
77
+ dataProps.forEach(function (entry) {
78
+ map.push({ objectKey: entry, modelKey: "data." + entry });
79
+ });
80
+ // Deeper mappings
81
+ map.push({
82
+ objectKey: "slug",
83
+ modelKey: "item.properties.slug",
84
+ });
85
+ map.push({
86
+ objectKey: "orgUrlKey",
87
+ modelKey: "item.properties.orgUrlKey",
88
+ });
89
+ map.push({
90
+ objectKey: "name",
91
+ modelKey: "item.title",
92
+ });
93
+ return map;
94
+ }
95
+ /**
96
+ * Create a new Hub Project item
97
+ *
98
+ * Minimal properties are name and org
99
+ *
100
+ * @param project
101
+ * @param requestOptions
102
+ */
103
+ export function createProject(partialProject, requestOptions) {
104
+ return __awaiter(this, void 0, void 0, function () {
105
+ var project, _a, mapper, model, newProject;
106
+ return __generator(this, function (_b) {
107
+ switch (_b.label) {
108
+ case 0:
109
+ project = __assign(__assign({}, DEFAULT_PROJECT), partialProject);
110
+ // Create a slug from the title if one is not passed in
111
+ if (!project.slug) {
112
+ project.slug = constructSlug(project.name, project.orgUrlKey);
113
+ }
114
+ // Ensure slug is unique
115
+ _a = project;
116
+ return [4 /*yield*/, getUniqueSlug(project.slug, requestOptions)];
117
+ case 1:
118
+ // Ensure slug is unique
119
+ _a.slug = _b.sent();
120
+ // add slug to keywords
121
+ project.typeKeywords = setSlugKeyword(project.typeKeywords, project.slug);
122
+ mapper = new PropertyMapper(getProjectPropertyMap());
123
+ model = mapper.objectToModel(project, cloneObject(DEFAULT_PROJECT_MODEL));
124
+ return [4 /*yield*/, createModel(model, requestOptions)];
125
+ case 2:
126
+ // create the item
127
+ model = _b.sent();
128
+ newProject = mapper.modelToObject(model, {});
129
+ // and return it
130
+ return [2 /*return*/, newProject];
131
+ }
132
+ });
133
+ });
134
+ }
135
+ /**
136
+ * Update a Hub Project
137
+ * @param project
138
+ * @param requestOptions
139
+ */
140
+ export function updateProject(project, requestOptions) {
141
+ return __awaiter(this, void 0, void 0, function () {
142
+ var _a, model, mapper, modelToUpdate, updatedModel, updatedProject;
143
+ return __generator(this, function (_b) {
144
+ switch (_b.label) {
145
+ case 0:
146
+ // verify that the slug is unique
147
+ // TODO: if the slug has not changed, we don't want to do this because
148
+ // the existing item will cause this to increment
149
+ _a = project;
150
+ return [4 /*yield*/, getUniqueSlug(project.slug, requestOptions)];
151
+ case 1:
152
+ // verify that the slug is unique
153
+ // TODO: if the slug has not changed, we don't want to do this because
154
+ // the existing item will cause this to increment
155
+ _a.slug = _b.sent();
156
+ return [4 /*yield*/, getModel(project.id, requestOptions)];
157
+ case 2:
158
+ model = _b.sent();
159
+ mapper = new PropertyMapper(getProjectPropertyMap());
160
+ modelToUpdate = mapper.objectToModel(project, model);
161
+ return [4 /*yield*/, updateModel(modelToUpdate, requestOptions)];
162
+ case 3:
163
+ updatedModel = _b.sent();
164
+ updatedProject = mapper.modelToObject(updatedModel, project);
165
+ // the casting is needed because modelToObject returns a `Partial<T>`
166
+ // where as this function returns a `T`
167
+ return [2 /*return*/, updatedProject];
168
+ }
169
+ });
170
+ });
171
+ }
172
+ /**
173
+ * Get a Hub Project by id or slug
174
+ * @param identifier item id or slug
175
+ * @param requestOptions
176
+ */
177
+ export function getProject(identifier, requestOptions) {
178
+ var getPrms;
179
+ if (isGuid(identifier)) {
180
+ // get item by id
181
+ getPrms = getModel(identifier, requestOptions);
182
+ }
183
+ else {
184
+ // search for item using filter=typekeywords:slug|identifier
185
+ getPrms = getModelBySlug(identifier, requestOptions);
186
+ }
187
+ return getPrms.then(function (model) {
188
+ // transform the model into a HubProject
189
+ var mapper = new PropertyMapper(getProjectPropertyMap());
190
+ var project = mapper.modelToObject(model, {});
191
+ return project;
192
+ });
193
+ }
194
+ /**
195
+ * Remove a Hub Project
196
+ * @param id
197
+ * @param requestOptions
198
+ */
199
+ export function destroyProject(id, requestOptions) {
200
+ return __awaiter(this, void 0, void 0, function () {
201
+ var ro;
202
+ return __generator(this, function (_a) {
203
+ switch (_a.label) {
204
+ case 0:
205
+ ro = __assign(__assign({}, requestOptions), { id: id });
206
+ return [4 /*yield*/, removeItem(ro)];
207
+ case 1:
208
+ _a.sent();
209
+ return [2 /*return*/];
210
+ }
211
+ });
212
+ });
213
+ }
214
+ // WIP: Need to resolve how best to execute this
215
+ // i.e. delegate to searchContent or just do an item search
216
+ // and convert to IHubProject objects.
217
+ //
218
+ // export async function searchProjects(
219
+ // filter: Filter<"content">,
220
+ // opts: IHubSearchOptions
221
+ // ): Promise<ISearchResponse<IHubProject>> {
222
+ // return _searchContent(filter, opts).then((results) => {
223
+ // })
224
+ // }
225
+ //# sourceMappingURL=HubProjects.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HubProjects.js","sourceRoot":"","sources":["../../../src/projects/HubProjects.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ export * from "./HubProjectManager";
2
+ export * from "./HubProjects";
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/projects/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC"}
@@ -2,7 +2,7 @@ import { __awaiter, __generator } from "tslib";
2
2
  import { expandContentFilter, serializeContentFilterForPortal, convertPortalResponseToFacets, } from "./content-utils";
3
3
  import { searchItems } from "@esri/arcgis-rest-portal";
4
4
  import { expandApi, getNextFunction } from ".";
5
- import { cloneObject, itemToContent, setContentSiteUrls, } from "..";
5
+ import { cloneObject, getItemThumbnailUrl, itemToContent, setContentSiteUrls, } from "..";
6
6
  /**
7
7
  * Search for content via the Portal or Hub API
8
8
  * @param filter
@@ -15,12 +15,11 @@ export function _searchContent(filter, options) {
15
15
  return __generator(this, function (_b) {
16
16
  expanded = expandContentFilter(filter);
17
17
  api = expandApi(options.api || "arcgis");
18
- // map over the apis, depending on the type we issue the queries
19
- // const searchPromises = apis.map((api) => {
20
18
  // Portal Search
21
19
  if (api.type === "arcgis") {
22
20
  so = serializeContentFilterForPortal(expanded);
23
- // pass auth forward
21
+ // if we have auth, pass it forward
22
+ // otherwise set the portal property
24
23
  if (options.authentication) {
25
24
  so.authentication = options.authentication;
26
25
  }
@@ -33,7 +32,6 @@ export function _searchContent(filter, options) {
33
32
  so.countSize = 200;
34
33
  }
35
34
  // copy over various options
36
- // TODO: Dry this up - typscript makes this... inconvenient
37
35
  if (options.num) {
38
36
  so.num = options.num;
39
37
  }
@@ -61,8 +59,6 @@ export function _searchContent(filter, options) {
61
59
  },
62
60
  });
63
61
  }
64
- // });
65
- // return for results
66
62
  return [2 /*return*/, searchPromise];
67
63
  });
68
64
  });
@@ -76,14 +72,29 @@ export function _searchContent(filter, options) {
76
72
  * @returns
77
73
  */
78
74
  function searchPortal(searchOptions) {
75
+ var _a;
76
+ var portalUrl = ((_a = searchOptions.authentication) === null || _a === void 0 ? void 0 : _a.portal) || searchOptions.portal;
77
+ var token;
78
+ if (searchOptions.authentication) {
79
+ var us = searchOptions.authentication;
80
+ token = us.token;
81
+ }
82
+ var thumbnailify = function (content) {
83
+ content.thumbnailUrl = getItemThumbnailUrl(content, portalUrl, token);
84
+ return content;
85
+ };
79
86
  return searchItems(searchOptions).then(function (resp) {
80
87
  var hasNext = resp.nextStart > -1;
88
+ // convert items to IHubContent's
81
89
  var content = resp.results.map(itemToContent);
90
+ // if we have a site, add those urls
82
91
  if (searchOptions.site) {
83
92
  content = content.map(function (entry) {
84
93
  return setContentSiteUrls(entry, searchOptions.site);
85
94
  });
86
95
  }
96
+ // add thumbnailUrl
97
+ content = content.map(thumbnailify);
87
98
  // convert aggregations into facets
88
99
  var facets = convertPortalResponseToFacets(resp);
89
100
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"_searchContent.js","sourceRoot":"","sources":["../../../src/search/_searchContent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_searchContent.js","sourceRoot":"","sources":["../../../src/search/_searchContent.ts"],"names":[],"mappings":"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"}
@@ -12,26 +12,21 @@ import { cloneObject, getGroupThumbnailUrl } from "..";
12
12
  * @returns
13
13
  */
14
14
  export function _searchGroups(filter, options) {
15
- var _a;
16
15
  return __awaiter(this, void 0, void 0, function () {
17
- var expanded, api, so, token, us, portalUrl;
18
- return __generator(this, function (_b) {
16
+ var expanded, api, so;
17
+ return __generator(this, function (_a) {
19
18
  expanded = expandGroupFilter(filter);
20
19
  api = expandApi(options.api || "arcgis");
21
20
  if (api.type === "arcgis") {
22
21
  so = serializeGroupFilterForPortal(expanded);
23
- token = "";
24
22
  // if we have auth, pass it forward
25
23
  // otherwise set the portal property
26
24
  if (options.authentication) {
27
25
  so.authentication = options.authentication;
28
- us = options.authentication;
29
- token = us.token;
30
26
  }
31
27
  else {
32
28
  so.portal = api.url + "/sharing/rest";
33
29
  }
34
- // TODO: Dry this up - typscript makes this... inconvenient
35
30
  if (options.num) {
36
31
  so.num = options.num;
37
32
  }
@@ -41,10 +36,6 @@ export function _searchGroups(filter, options) {
41
36
  if (options.sortOrder) {
42
37
  so.sortOrder = options.sortOrder;
43
38
  }
44
- portalUrl = api.url + "/sharing/rest";
45
- if ((_a = so.authentication) === null || _a === void 0 ? void 0 : _a.portal) {
46
- portalUrl = so.authentication.portal;
47
- }
48
39
  if (options.site) {
49
40
  so.site = cloneObject(options.site);
50
41
  }
@@ -68,8 +59,7 @@ function searchPortalGroups(searchOptions) {
68
59
  group.siteTeamUrl = searchOptions.site.item.url + "/teams/" + group.id + "/about";
69
60
  return group;
70
61
  };
71
- var portalUrl = ((_a = searchOptions.authentication) === null || _a === void 0 ? void 0 : _a.portal) ||
72
- "https://www.arcgis.com/sharing/rest";
62
+ var portalUrl = ((_a = searchOptions.authentication) === null || _a === void 0 ? void 0 : _a.portal) || searchOptions.portal;
73
63
  var token;
74
64
  if (searchOptions.authentication) {
75
65
  var us = searchOptions.authentication;
@@ -1 +1 @@
1
- {"version":3,"file":"_searchGroups.js","sourceRoot":"","sources":["../../../src/search/_searchGroups.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_searchGroups.js","sourceRoot":"","sources":["../../../src/search/_searchGroups.ts"],"names":[],"mappings":"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"}
@@ -349,7 +349,7 @@ export function getNextFunction(request, nextStart, total, fn) {
349
349
  * Construct a the full url to a group thumbnail
350
350
  *
351
351
  * - If the group has a thumbnail, construct the full url
352
- * - If the group is not public, append on the token
352
+ * - If the group is not public, append on the token (if passed in)
353
353
  * @param portalUrl
354
354
  * @param group
355
355
  * @param token
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Cross-walk from a portalUrl to the corresponding Hub API Url
3
+ *
4
+ * If the passed url is not recognized, then this will return `undefined`
5
+ * @param portalUrl
6
+ * @returns
7
+ */
8
+ export function getHubApiFromPortalUrl(portalUrl) {
9
+ var result;
10
+ if (portalUrl.match(/(qaext|\.mapsqa)\.arcgis.com/)) {
11
+ result = "https://hubqa.arcgis.com";
12
+ }
13
+ else if (portalUrl.match(/(devext|\.mapsdevext)\.arcgis.com/)) {
14
+ result = "https://hubdev.arcgis.com";
15
+ }
16
+ else if (portalUrl.match(/(www|\.maps)\.arcgis.com/)) {
17
+ result = "https://hub.arcgis.com";
18
+ }
19
+ return result;
20
+ }
21
+ //# sourceMappingURL=getHubApiFromPortalUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getHubApiFromPortalUrl.js","sourceRoot":"","sources":["../../../src/urls/getHubApiFromPortalUrl.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,MAAM,UAAU,sBAAsB,CAAC,SAAiB;IACtD,IAAI,MAAM,CAAC;IAEX,IAAI,SAAS,CAAC,KAAK,CAAC,8BAA8B,CAAC,EAAE;QACnD,MAAM,GAAG,0BAA0B,CAAC;KACrC;SAAM,IAAI,SAAS,CAAC,KAAK,CAAC,mCAAmC,CAAC,EAAE;QAC/D,MAAM,GAAG,2BAA2B,CAAC;KACtC;SAAM,IAAI,SAAS,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE;QACtD,MAAM,GAAG,wBAAwB,CAAC;KACnC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Given an org url, get the portal base url
3
+ *
4
+ * i.e. https://myorg.maps.arcgis.com will return https://www.arcgis.com
5
+ *
6
+ * @param orgUrl
7
+ * @returns
8
+ */
9
+ export function getPortalBaseFromOrgUrl(orgUrl) {
10
+ var result = orgUrl;
11
+ if (orgUrl.match(/(qaext|\.mapsqa)\.arcgis.com/)) {
12
+ result = "https://qaext.arcgis.com";
13
+ }
14
+ else if (orgUrl.match(/(devext|\.mapsdevext)\.arcgis.com/)) {
15
+ result = "https://devext.arcgis.com";
16
+ }
17
+ else {
18
+ /* istanbul ignore else */
19
+ if (orgUrl.match(/(www|\.maps)\.arcgis.com/)) {
20
+ result = "https://www.arcgis.com";
21
+ }
22
+ }
23
+ return result;
24
+ }
25
+ //# sourceMappingURL=getPortalBaseFromOrgUrl.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPortalBaseFromOrgUrl.js","sourceRoot":"","sources":["../../../src/urls/getPortalBaseFromOrgUrl.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,UAAU,uBAAuB,CAAC,MAAc;IACpD,IAAI,MAAM,GAAG,MAAM,CAAC;IAEpB,IAAI,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,EAAE;QAChD,MAAM,GAAG,0BAA0B,CAAC;KACrC;SAAM,IAAI,MAAM,CAAC,KAAK,CAAC,mCAAmC,CAAC,EAAE;QAC5D,MAAM,GAAG,2BAA2B,CAAC;KACtC;SAAM;QACL,0BAA0B;QAC1B,IAAI,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,EAAE;YAC5C,MAAM,GAAG,wBAAwB,CAAC;SACnC;KACF;IAED,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -14,6 +14,8 @@ export * from "./get-item-home-url";
14
14
  export * from "./get-item-api-url";
15
15
  export * from "./get-item-data-url";
16
16
  export * from "./convert-urls-to-anchor-tags";
17
+ export * from "./getHubApiFromPortalUrl";
18
+ export * from "./getPortalBaseFromOrgUrl";
17
19
  var MAP_OR_FEATURE_SERVER_URL_REGEX = /\/(map|feature)server/i;
18
20
  /**
19
21
  *
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAE9C,IAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG,UAAC,GAAW;IACjD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,qBAAqB,GAAG,UAAC,GAAW;IAC/C,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,IAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAO,UAAU,CAAC,YAAY,CAAC,aAAU,CAAC;AAC/D,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/urls/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,4BAA4B,CAAC;AAC3C,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,iBAAiB,CAAC;AAChC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,2BAA2B,CAAC;AAC1C,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAE1C,IAAM,+BAA+B,GAAG,wBAAwB,CAAC;AAEjE;;;;GAIG;AACH,MAAM,CAAC,IAAM,uBAAuB,GAAG,UAAC,GAAW;IACjD,OAAO,+BAA+B,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACnD,CAAC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,IAAM,qBAAqB,GAAG,UAAC,GAAW;IAC/C,IAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;IACzD,IAAM,YAAY,GAAG,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC;IACvC,OAAO,YAAY,IAAO,UAAU,CAAC,YAAY,CAAC,aAAU,CAAC;AAC/D,CAAC,CAAC"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Dasherize a string
3
+ *
4
+ * ```javascript
5
+ * import { dasherize } from '@esri/hub-common';
6
+ * dasherize('innerHTML'); // 'inner-html'
7
+ * dasherize('action_name'); // 'action-name'
8
+ * dasherize('css-class-name'); // 'css-class-name'
9
+ * dasherize('my favorite items'); // 'my-favorite-items'
10
+ * dasherize('privateDocs/ownerInvoice'; // 'private-docs/owner-invoice'
11
+ * ```
12
+ *
13
+ * Extracted and modified from Ember.js source code - MIT license
14
+ * @param value
15
+ * @returns
16
+ */
17
+ export function dasherize(value) {
18
+ var DECAMELIZE_REGEXP = /([a-z\d])([A-Z])/g;
19
+ var DASHERIZE_REGEXP = /[ _]/g;
20
+ return value
21
+ .replace(DECAMELIZE_REGEXP, "$1_$2")
22
+ .toLowerCase()
23
+ .replace(DASHERIZE_REGEXP, "-");
24
+ }
25
+ //# sourceMappingURL=dasherize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dasherize.js","sourceRoot":"","sources":["../../../src/utils/dasherize.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,SAAS,CAAC,KAAa;IACrC,IAAM,iBAAiB,GAAG,mBAAmB,CAAC;IAC9C,IAAM,gBAAgB,GAAG,OAAO,CAAC;IACjC,OAAO,KAAK;SACT,OAAO,CAAC,iBAAiB,EAAE,OAAO,CAAC;SACnC,WAAW,EAAE;SACb,OAAO,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC"}