autnam 1.0.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 (490) hide show
  1. package/.env.example +2 -0
  2. package/.eslintrc.json +37 -0
  3. package/.github/workflows/deploy-docs.yml +27 -0
  4. package/.github/workflows/pre-release-tests.yml +49 -0
  5. package/.github/workflows/pull-request-tests.yml +49 -0
  6. package/.github/workflows/release.yml +75 -0
  7. package/.prettierignore +2 -0
  8. package/.prettierrc +19 -0
  9. package/.vscode/launch.json +25 -0
  10. package/.vscode/settings.json +5 -0
  11. package/codecov.yml +7 -0
  12. package/commitlint.config.cjs +41 -0
  13. package/demos/.eslintrc.js +13 -0
  14. package/demos/ago-node-cli/README.md +30 -0
  15. package/demos/ago-node-cli/ago.js +31 -0
  16. package/demos/ago-node-cli/index.js +11 -0
  17. package/demos/ago-node-cli/lib/item-export-command.js +48 -0
  18. package/demos/ago-node-cli/lib/item-search-command.js +32 -0
  19. package/demos/ago-node-cli/package.json +29 -0
  20. package/demos/attachments-browser/README.md +7 -0
  21. package/demos/attachments-browser/index.html +165 -0
  22. package/demos/attachments-browser/package.json +15 -0
  23. package/demos/attachments-node/README.md +4 -0
  24. package/demos/attachments-node/image.jpg +0 -0
  25. package/demos/attachments-node/index.js +89 -0
  26. package/demos/attachments-node/package.json +19 -0
  27. package/demos/batch-geocoder-node/NYC_Restaurant_Inspection_Results.csv +100 -0
  28. package/demos/batch-geocoder-node/README.md +13 -0
  29. package/demos/batch-geocoder-node/batch-geocode.js +112 -0
  30. package/demos/batch-geocoder-node/config-template.js +18 -0
  31. package/demos/batch-geocoder-node/package.json +34 -0
  32. package/demos/browser-es-modules/README.md +7 -0
  33. package/demos/browser-es-modules/index.html +38 -0
  34. package/demos/browser-es-modules/package.json +15 -0
  35. package/demos/deno/README.md +1 -0
  36. package/demos/deno/import_map.json +8 -0
  37. package/demos/deno/index.js +5 -0
  38. package/demos/express/README.md +16 -0
  39. package/demos/express/config.json.template +3 -0
  40. package/demos/express/package.json +15 -0
  41. package/demos/express/server.js +37 -0
  42. package/demos/feature-service-browser/README.md +8 -0
  43. package/demos/feature-service-browser/index.html +122 -0
  44. package/demos/feature-service-browser/package.json +15 -0
  45. package/demos/geocoder-browser/README.md +12 -0
  46. package/demos/geocoder-browser/authenticate.html +29 -0
  47. package/demos/geocoder-browser/config.js.template +1 -0
  48. package/demos/geocoder-browser/index.html +139 -0
  49. package/demos/geocoder-browser/package.json +15 -0
  50. package/demos/jsapi-integration/README.md +26 -0
  51. package/demos/jsapi-integration/authenticate.html +29 -0
  52. package/demos/jsapi-integration/config.js +6 -0
  53. package/demos/jsapi-integration/index.html +91 -0
  54. package/demos/jsapi-integration/package.json +15 -0
  55. package/demos/node-cli-item-management/README.md +11 -0
  56. package/demos/node-cli-item-management/index.js +229 -0
  57. package/demos/node-cli-item-management/package.json +24 -0
  58. package/demos/node-cli-item-management/screenshot.png +0 -0
  59. package/demos/node-common-js/README.md +4 -0
  60. package/demos/node-common-js/index.js +5 -0
  61. package/demos/node-common-js/package.json +15 -0
  62. package/demos/node-es-modules/README.md +4 -0
  63. package/demos/node-es-modules/index.js +5 -0
  64. package/demos/node-es-modules/package.json +16 -0
  65. package/demos/oauth2-browser/README.md +17 -0
  66. package/demos/oauth2-browser/authenticate.html +29 -0
  67. package/demos/oauth2-browser/config.js.template +6 -0
  68. package/demos/oauth2-browser/index.html +223 -0
  69. package/demos/oauth2-browser/logo.svg +4 -0
  70. package/demos/oauth2-browser/package.json +15 -0
  71. package/demos/oauth2-browser/style.css +36 -0
  72. package/demos/oauth2-browser-retry/README.md +32 -0
  73. package/demos/oauth2-browser-retry/authenticate.html +21 -0
  74. package/demos/oauth2-browser-retry/index.html +114 -0
  75. package/demos/oauth2-browser-retry/logo.svg +4 -0
  76. package/demos/oauth2-browser-retry/package.json +15 -0
  77. package/demos/parcel/README.md +8 -0
  78. package/demos/parcel/index.html +16 -0
  79. package/demos/parcel/index.js +8 -0
  80. package/demos/parcel/package.json +20 -0
  81. package/demos/snowpack/README.md +8 -0
  82. package/demos/snowpack/index.html +16 -0
  83. package/demos/snowpack/index.js +8 -0
  84. package/demos/snowpack/package.json +20 -0
  85. package/demos/snowpack/snowpack.config.js +3 -0
  86. package/demos/stream-response-to-file/README.md +7 -0
  87. package/demos/stream-response-to-file/index.js +36 -0
  88. package/demos/stream-response-to-file/output/.gitkeep +0 -0
  89. package/demos/stream-response-to-file/package.json +31 -0
  90. package/demos/tree-shaking-rollup/.babelrc +3 -0
  91. package/demos/tree-shaking-rollup/README.md +9 -0
  92. package/demos/tree-shaking-rollup/index.html +11 -0
  93. package/demos/tree-shaking-rollup/package.json +22 -0
  94. package/demos/tree-shaking-rollup/rollup.config.js +13 -0
  95. package/demos/tree-shaking-rollup/src/index.js +8 -0
  96. package/demos/tree-shaking-webpack/README.md +9 -0
  97. package/demos/tree-shaking-webpack/index.html +11 -0
  98. package/demos/tree-shaking-webpack/package.json +26 -0
  99. package/demos/tree-shaking-webpack/src/index.js +8 -0
  100. package/demos/tree-shaking-webpack/webpack.config.js +29 -0
  101. package/demos/vite/README.md +6 -0
  102. package/demos/vite/favicon.svg +15 -0
  103. package/demos/vite/index.html +13 -0
  104. package/demos/vite/main.js +8 -0
  105. package/demos/vite/package.json +18 -0
  106. package/demos/vue/.env.example +11 -0
  107. package/demos/vue/.eslintrc.js +17 -0
  108. package/demos/vue/.postcssrc.js +5 -0
  109. package/demos/vue/README.md +17 -0
  110. package/demos/vue/babel.config.js +3 -0
  111. package/demos/vue/package.json +35 -0
  112. package/demos/vue/public/favicon.ico +0 -0
  113. package/demos/vue/public/index.html +24 -0
  114. package/demos/vue/src/assets/logo.svg +29 -0
  115. package/demos/vue/src/components/App.vue +303 -0
  116. package/demos/vue/src/components/Authenticate.vue +65 -0
  117. package/demos/vue/src/components/Loader.vue +230 -0
  118. package/demos/vue/src/main.js +92 -0
  119. package/demos/webmap-checker-sapper/.env.example +5 -0
  120. package/demos/webmap-checker-sapper/README.md +124 -0
  121. package/demos/webmap-checker-sapper/appveyor.yml +18 -0
  122. package/demos/webmap-checker-sapper/cypress/fixtures/example.json +5 -0
  123. package/demos/webmap-checker-sapper/cypress/integration/spec.js +19 -0
  124. package/demos/webmap-checker-sapper/cypress/plugins/index.js +17 -0
  125. package/demos/webmap-checker-sapper/cypress/support/commands.js +25 -0
  126. package/demos/webmap-checker-sapper/cypress/support/index.js +20 -0
  127. package/demos/webmap-checker-sapper/cypress.json +4 -0
  128. package/demos/webmap-checker-sapper/package.json +47 -0
  129. package/demos/webmap-checker-sapper/rollup.config.js +87 -0
  130. package/demos/webmap-checker-sapper/src/client.js +20 -0
  131. package/demos/webmap-checker-sapper/src/components/LayerStatus.html +108 -0
  132. package/demos/webmap-checker-sapper/src/components/Nav.html +21 -0
  133. package/demos/webmap-checker-sapper/src/components/WebMap.html +62 -0
  134. package/demos/webmap-checker-sapper/src/routes/_error.html +41 -0
  135. package/demos/webmap-checker-sapper/src/routes/_layout.html +21 -0
  136. package/demos/webmap-checker-sapper/src/routes/auth/authorize.js +18 -0
  137. package/demos/webmap-checker-sapper/src/routes/auth/exchange-token.js +20 -0
  138. package/demos/webmap-checker-sapper/src/routes/auth/post-sign-in.js +24 -0
  139. package/demos/webmap-checker-sapper/src/routes/auth/sign-out.js +10 -0
  140. package/demos/webmap-checker-sapper/src/routes/index.html +20 -0
  141. package/demos/webmap-checker-sapper/src/routes/webmaps/[webmapId].html +83 -0
  142. package/demos/webmap-checker-sapper/src/routes/webmaps/index.html +59 -0
  143. package/demos/webmap-checker-sapper/src/server.js +102 -0
  144. package/demos/webmap-checker-sapper/src/service-worker.js +82 -0
  145. package/demos/webmap-checker-sapper/src/template.html +33 -0
  146. package/demos/webmap-checker-sapper/src/userInfoMiddleware.js +21 -0
  147. package/demos/webmap-checker-sapper/src/utils.js +33 -0
  148. package/demos/webmap-checker-sapper/static/favicon.png +0 -0
  149. package/demos/webmap-checker-sapper/static/global.css +36 -0
  150. package/demos/webmap-checker-sapper/static/manifest.json +20 -0
  151. package/demos/webmap-checker-sapper/static/svelte-logo-192.png +0 -0
  152. package/demos/webmap-checker-sapper/static/svelte-logo-512.png +0 -0
  153. package/docs/.eslintrc.js +12 -0
  154. package/docs/FAQ.md +48 -0
  155. package/docs/HISTORY.md +62 -0
  156. package/docs/acetate.config.js +262 -0
  157. package/docs/build-typedoc.js +434 -0
  158. package/docs/generate-srihashes.js +61 -0
  159. package/docs/package.json +3 -0
  160. package/docs/src/_layout.html +86 -0
  161. package/docs/src/api/_declaration.html +600 -0
  162. package/docs/src/api/_layout.html +204 -0
  163. package/docs/src/api/_package.html +38 -0
  164. package/docs/src/api/index.html +16 -0
  165. package/docs/src/guides/_layout.html +24 -0
  166. package/docs/src/guides/amd-requirejs-dojo.md +40 -0
  167. package/docs/src/guides/browser-authentication.md +39 -0
  168. package/docs/src/guides/bundlers.md +52 -0
  169. package/docs/src/guides/cli-authentication.md +9 -0
  170. package/docs/src/guides/client-server-authentication.md +9 -0
  171. package/docs/src/guides/embedded-apps.md +106 -0
  172. package/docs/src/guides/from-a-cdn.md +38 -0
  173. package/docs/src/guides/index.md +59 -0
  174. package/docs/src/guides/node.md +84 -0
  175. package/docs/src/guides/package-overview.md +111 -0
  176. package/docs/src/guides/server-authentication.md +9 -0
  177. package/docs/src/guides/whats-new-v2-0.md +305 -0
  178. package/docs/src/img/icons.png +0 -0
  179. package/docs/src/img/icons@2x.png +0 -0
  180. package/docs/src/img/oauth-browser.png +0 -0
  181. package/docs/src/index.html +12 -0
  182. package/docs/src/js/api-search.js +112 -0
  183. package/docs/src/js/nav-toggle.js +41 -0
  184. package/docs/src/sass/_highlight.scss +96 -0
  185. package/docs/src/sass/_icons.scss +157 -0
  186. package/docs/src/sass/style.scss +242 -0
  187. package/jasmine.json +7 -0
  188. package/jasmine.live.json +7 -0
  189. package/karma.conf.cjs +128 -0
  190. package/package.json +87 -0
  191. package/packages/arcgis-rest-auth/CHANGELOG.md +80 -0
  192. package/packages/arcgis-rest-auth/README.md +71 -0
  193. package/packages/arcgis-rest-auth/package.json +66 -0
  194. package/packages/arcgis-rest-auth/src/index.ts +34 -0
  195. package/packages/arcgis-rest-auth/tsconfig.json +6 -0
  196. package/packages/arcgis-rest-demographics/CHANGELOG.md +14 -0
  197. package/packages/arcgis-rest-demographics/README.md +74 -0
  198. package/packages/arcgis-rest-demographics/package.json +69 -0
  199. package/packages/arcgis-rest-demographics/src/getAvailableCountries.ts +113 -0
  200. package/packages/arcgis-rest-demographics/src/getAvailableDataCollections.ts +161 -0
  201. package/packages/arcgis-rest-demographics/src/getAvailableGeographyLevels.ts +86 -0
  202. package/packages/arcgis-rest-demographics/src/getGeography.ts +152 -0
  203. package/packages/arcgis-rest-demographics/src/helpers.ts +27 -0
  204. package/packages/arcgis-rest-demographics/src/index.ts +16 -0
  205. package/packages/arcgis-rest-demographics/src/queryDemographicData.ts +108 -0
  206. package/packages/arcgis-rest-demographics/test/getAvailableCountries.test.ts +89 -0
  207. package/packages/arcgis-rest-demographics/test/getAvailableDataCollections.test.ts +114 -0
  208. package/packages/arcgis-rest-demographics/test/getAvailableGeographyLevels.test.ts +69 -0
  209. package/packages/arcgis-rest-demographics/test/getGeography.test.ts +150 -0
  210. package/packages/arcgis-rest-demographics/test/mocks/responses.ts +4 -0
  211. package/packages/arcgis-rest-demographics/test/queryDemographicData.test.live.ts +50 -0
  212. package/packages/arcgis-rest-demographics/test/queryDemographicData.test.ts +127 -0
  213. package/packages/arcgis-rest-demographics/tsconfig.json +6 -0
  214. package/packages/arcgis-rest-feature-service/CHANGELOG.md +44 -0
  215. package/packages/arcgis-rest-feature-service/README.md +75 -0
  216. package/packages/arcgis-rest-feature-service/package.json +70 -0
  217. package/packages/arcgis-rest-feature-service/src/add.ts +55 -0
  218. package/packages/arcgis-rest-feature-service/src/addAttachment.ts +53 -0
  219. package/packages/arcgis-rest-feature-service/src/addToServiceDefinition.ts +74 -0
  220. package/packages/arcgis-rest-feature-service/src/applyEdits.ts +94 -0
  221. package/packages/arcgis-rest-feature-service/src/createFeatureService.ts +191 -0
  222. package/packages/arcgis-rest-feature-service/src/decodeValues.ts +126 -0
  223. package/packages/arcgis-rest-feature-service/src/delete.ts +62 -0
  224. package/packages/arcgis-rest-feature-service/src/deleteAttachments.ts +52 -0
  225. package/packages/arcgis-rest-feature-service/src/getAllLayersAndTables.ts +30 -0
  226. package/packages/arcgis-rest-feature-service/src/getAttachments.ts +55 -0
  227. package/packages/arcgis-rest-feature-service/src/getLayer.ts +23 -0
  228. package/packages/arcgis-rest-feature-service/src/getService.ts +25 -0
  229. package/packages/arcgis-rest-feature-service/src/getServiceAdminInfo.ts +33 -0
  230. package/packages/arcgis-rest-feature-service/src/getViewSources.ts +19 -0
  231. package/packages/arcgis-rest-feature-service/src/helpers.ts +768 -0
  232. package/packages/arcgis-rest-feature-service/src/index.ts +37 -0
  233. package/packages/arcgis-rest-feature-service/src/query.ts +200 -0
  234. package/packages/arcgis-rest-feature-service/src/queryRelated.ts +86 -0
  235. package/packages/arcgis-rest-feature-service/src/update.ts +65 -0
  236. package/packages/arcgis-rest-feature-service/src/updateAttachment.ts +59 -0
  237. package/packages/arcgis-rest-feature-service/src/updateServiceDefinition.ts +53 -0
  238. package/packages/arcgis-rest-feature-service/test/addToServiceDefinition.test.ts +350 -0
  239. package/packages/arcgis-rest-feature-service/test/attachments.test.ts +188 -0
  240. package/packages/arcgis-rest-feature-service/test/createFeatureService.test.ts +279 -0
  241. package/packages/arcgis-rest-feature-service/test/crud.test.ts +196 -0
  242. package/packages/arcgis-rest-feature-service/test/decodeValues.test.ts +66 -0
  243. package/packages/arcgis-rest-feature-service/test/getAllLayersAndTables.test.ts +27 -0
  244. package/packages/arcgis-rest-feature-service/test/getLayer.test.ts +30 -0
  245. package/packages/arcgis-rest-feature-service/test/getService.test.ts +30 -0
  246. package/packages/arcgis-rest-feature-service/test/getServiceAdminInfo.test.ts +41 -0
  247. package/packages/arcgis-rest-feature-service/test/getViewSources.test.ts +45 -0
  248. package/packages/arcgis-rest-feature-service/test/helpers.test.ts +27 -0
  249. package/packages/arcgis-rest-feature-service/test/mocks/allLayersAndTablesResponse.ts +950 -0
  250. package/packages/arcgis-rest-feature-service/test/mocks/cvdQueryResponse.ts +225 -0
  251. package/packages/arcgis-rest-feature-service/test/mocks/feature.ts +302 -0
  252. package/packages/arcgis-rest-feature-service/test/mocks/fields.ts +779 -0
  253. package/packages/arcgis-rest-feature-service/test/mocks/foo.txt +1 -0
  254. package/packages/arcgis-rest-feature-service/test/mocks/layerDefinition.ts +80 -0
  255. package/packages/arcgis-rest-feature-service/test/mocks/service.ts +476 -0
  256. package/packages/arcgis-rest-feature-service/test/query.test.ts +166 -0
  257. package/packages/arcgis-rest-feature-service/test/updateServiceDefinition.test.ts +103 -0
  258. package/packages/arcgis-rest-feature-service/tsconfig.json +9 -0
  259. package/packages/arcgis-rest-fetch/README.md +17 -0
  260. package/packages/arcgis-rest-fetch/browser-ponyfill.js +8 -0
  261. package/packages/arcgis-rest-fetch/browser-ponyfill.mjs +8 -0
  262. package/packages/arcgis-rest-fetch/index.types.d.ts +8 -0
  263. package/packages/arcgis-rest-fetch/node-ponyfill.js +10 -0
  264. package/packages/arcgis-rest-fetch/node-ponyfill.mjs +10 -0
  265. package/packages/arcgis-rest-fetch/package.json +21 -0
  266. package/packages/arcgis-rest-form-data/README.md +15 -0
  267. package/packages/arcgis-rest-form-data/browser-ponyfill.js +5 -0
  268. package/packages/arcgis-rest-form-data/browser-ponyfill.mjs +3 -0
  269. package/packages/arcgis-rest-form-data/index.types.d.ts +9 -0
  270. package/packages/arcgis-rest-form-data/node-ponyfill.js +7 -0
  271. package/packages/arcgis-rest-form-data/node-ponyfill.mjs +5 -0
  272. package/packages/arcgis-rest-form-data/package.json +21 -0
  273. package/packages/arcgis-rest-geocoding/CHANGELOG.md +26 -0
  274. package/packages/arcgis-rest-geocoding/README.md +85 -0
  275. package/packages/arcgis-rest-geocoding/package.json +69 -0
  276. package/packages/arcgis-rest-geocoding/src/bulk.ts +106 -0
  277. package/packages/arcgis-rest-geocoding/src/geocode.ts +169 -0
  278. package/packages/arcgis-rest-geocoding/src/helpers.ts +56 -0
  279. package/packages/arcgis-rest-geocoding/src/index.ts +17 -0
  280. package/packages/arcgis-rest-geocoding/src/reverse.ts +82 -0
  281. package/packages/arcgis-rest-geocoding/src/suggest.ts +45 -0
  282. package/packages/arcgis-rest-geocoding/test/bulk.test.ts +193 -0
  283. package/packages/arcgis-rest-geocoding/test/geocode.test.ts +254 -0
  284. package/packages/arcgis-rest-geocoding/test/helpers.test.ts +85 -0
  285. package/packages/arcgis-rest-geocoding/test/mocks/responses.ts +1031 -0
  286. package/packages/arcgis-rest-geocoding/test/reverse.test.ts +124 -0
  287. package/packages/arcgis-rest-geocoding/test/suggest.test.ts +53 -0
  288. package/packages/arcgis-rest-geocoding/tsconfig.json +6 -0
  289. package/packages/arcgis-rest-portal/CHANGELOG.md +73 -0
  290. package/packages/arcgis-rest-portal/README.md +72 -0
  291. package/packages/arcgis-rest-portal/package.json +68 -0
  292. package/packages/arcgis-rest-portal/src/groups/add-users.ts +140 -0
  293. package/packages/arcgis-rest-portal/src/groups/create.ts +42 -0
  294. package/packages/arcgis-rest-portal/src/groups/get.ts +187 -0
  295. package/packages/arcgis-rest-portal/src/groups/helpers.ts +14 -0
  296. package/packages/arcgis-rest-portal/src/groups/invite-users.ts +141 -0
  297. package/packages/arcgis-rest-portal/src/groups/join.ts +57 -0
  298. package/packages/arcgis-rest-portal/src/groups/notification.ts +77 -0
  299. package/packages/arcgis-rest-portal/src/groups/protect.ts +56 -0
  300. package/packages/arcgis-rest-portal/src/groups/remove-users.ts +84 -0
  301. package/packages/arcgis-rest-portal/src/groups/remove.ts +32 -0
  302. package/packages/arcgis-rest-portal/src/groups/search.ts +48 -0
  303. package/packages/arcgis-rest-portal/src/groups/update-user-membership.ts +63 -0
  304. package/packages/arcgis-rest-portal/src/groups/update.ts +39 -0
  305. package/packages/arcgis-rest-portal/src/helpers.ts +83 -0
  306. package/packages/arcgis-rest-portal/src/index.ts +68 -0
  307. package/packages/arcgis-rest-portal/src/items/add.ts +145 -0
  308. package/packages/arcgis-rest-portal/src/items/content.ts +70 -0
  309. package/packages/arcgis-rest-portal/src/items/create.ts +149 -0
  310. package/packages/arcgis-rest-portal/src/items/export.ts +92 -0
  311. package/packages/arcgis-rest-portal/src/items/get.ts +444 -0
  312. package/packages/arcgis-rest-portal/src/items/helpers.ts +272 -0
  313. package/packages/arcgis-rest-portal/src/items/protect.ts +41 -0
  314. package/packages/arcgis-rest-portal/src/items/reassign.ts +59 -0
  315. package/packages/arcgis-rest-portal/src/items/remove.ts +139 -0
  316. package/packages/arcgis-rest-portal/src/items/search.ts +25 -0
  317. package/packages/arcgis-rest-portal/src/items/update.ts +188 -0
  318. package/packages/arcgis-rest-portal/src/items/upload.ts +124 -0
  319. package/packages/arcgis-rest-portal/src/orgs/notification.ts +148 -0
  320. package/packages/arcgis-rest-portal/src/services/get-unique-service-name.ts +35 -0
  321. package/packages/arcgis-rest-portal/src/services/is-service-name-available.ts +29 -0
  322. package/packages/arcgis-rest-portal/src/sharing/access.ts +84 -0
  323. package/packages/arcgis-rest-portal/src/sharing/helpers.ts +80 -0
  324. package/packages/arcgis-rest-portal/src/sharing/is-item-shared-with-group.ts +42 -0
  325. package/packages/arcgis-rest-portal/src/sharing/share-item-with-group.ts +335 -0
  326. package/packages/arcgis-rest-portal/src/sharing/unshare-item-with-group.ts +114 -0
  327. package/packages/arcgis-rest-portal/src/users/get-user-tags.ts +52 -0
  328. package/packages/arcgis-rest-portal/src/users/get-user-url.ts +18 -0
  329. package/packages/arcgis-rest-portal/src/users/get-user.ts +60 -0
  330. package/packages/arcgis-rest-portal/src/users/invitation.ts +157 -0
  331. package/packages/arcgis-rest-portal/src/users/notification.ts +67 -0
  332. package/packages/arcgis-rest-portal/src/users/search-users.ts +35 -0
  333. package/packages/arcgis-rest-portal/src/users/update.ts +63 -0
  334. package/packages/arcgis-rest-portal/src/util/SearchQueryBuilder.ts +391 -0
  335. package/packages/arcgis-rest-portal/src/util/array.ts +16 -0
  336. package/packages/arcgis-rest-portal/src/util/generic-search.ts +111 -0
  337. package/packages/arcgis-rest-portal/src/util/get-portal-settings.ts +44 -0
  338. package/packages/arcgis-rest-portal/src/util/get-portal-url.ts +32 -0
  339. package/packages/arcgis-rest-portal/src/util/get-portal.ts +53 -0
  340. package/packages/arcgis-rest-portal/src/util/get-subscription-info.ts +43 -0
  341. package/packages/arcgis-rest-portal/src/util/scrub-control-chars.ts +13 -0
  342. package/packages/arcgis-rest-portal/src/util/search.ts +48 -0
  343. package/packages/arcgis-rest-portal/test/groups/add-users.test.ts +238 -0
  344. package/packages/arcgis-rest-portal/test/groups/crud.test.ts +183 -0
  345. package/packages/arcgis-rest-portal/test/groups/get.test.ts +174 -0
  346. package/packages/arcgis-rest-portal/test/groups/invite-users.test.ts +146 -0
  347. package/packages/arcgis-rest-portal/test/groups/join.test.ts +71 -0
  348. package/packages/arcgis-rest-portal/test/groups/notification.test.ts +111 -0
  349. package/packages/arcgis-rest-portal/test/groups/protect.test.ts +71 -0
  350. package/packages/arcgis-rest-portal/test/groups/remove-users.test.ts +140 -0
  351. package/packages/arcgis-rest-portal/test/groups/search.test.ts +151 -0
  352. package/packages/arcgis-rest-portal/test/groups/update-user-membership.test.ts +64 -0
  353. package/packages/arcgis-rest-portal/test/items/add.test.ts +320 -0
  354. package/packages/arcgis-rest-portal/test/items/content.test.ts +161 -0
  355. package/packages/arcgis-rest-portal/test/items/create.test.ts +404 -0
  356. package/packages/arcgis-rest-portal/test/items/export.test.ts +115 -0
  357. package/packages/arcgis-rest-portal/test/items/get.test.ts +606 -0
  358. package/packages/arcgis-rest-portal/test/items/helpers.test.ts +60 -0
  359. package/packages/arcgis-rest-portal/test/items/protect.test.ts +120 -0
  360. package/packages/arcgis-rest-portal/test/items/reassign.test.ts +130 -0
  361. package/packages/arcgis-rest-portal/test/items/remove.test.ts +259 -0
  362. package/packages/arcgis-rest-portal/test/items/search.test.ts +274 -0
  363. package/packages/arcgis-rest-portal/test/items/update.test.ts +549 -0
  364. package/packages/arcgis-rest-portal/test/items/upload.test.ts +286 -0
  365. package/packages/arcgis-rest-portal/test/mocks/groups/responses.ts +208 -0
  366. package/packages/arcgis-rest-portal/test/mocks/items/foo.zip +0 -0
  367. package/packages/arcgis-rest-portal/test/mocks/items/item.ts +526 -0
  368. package/packages/arcgis-rest-portal/test/mocks/items/resources.ts +38 -0
  369. package/packages/arcgis-rest-portal/test/mocks/items/search.ts +121 -0
  370. package/packages/arcgis-rest-portal/test/mocks/portal/response.ts +126 -0
  371. package/packages/arcgis-rest-portal/test/mocks/portal/settings-response.ts +56 -0
  372. package/packages/arcgis-rest-portal/test/mocks/sharing/sharing.ts +18 -0
  373. package/packages/arcgis-rest-portal/test/mocks/users/invitation.ts +70 -0
  374. package/packages/arcgis-rest-portal/test/mocks/users/notification.ts +34 -0
  375. package/packages/arcgis-rest-portal/test/mocks/users/user-search.ts +388 -0
  376. package/packages/arcgis-rest-portal/test/mocks/users/user-tags.ts +5 -0
  377. package/packages/arcgis-rest-portal/test/mocks/users/user.ts +174 -0
  378. package/packages/arcgis-rest-portal/test/orgs/notification.test.ts +142 -0
  379. package/packages/arcgis-rest-portal/test/services/get-unique-service-name.test.ts +64 -0
  380. package/packages/arcgis-rest-portal/test/services/is-service-name-available.test.ts +41 -0
  381. package/packages/arcgis-rest-portal/test/sharing/access.test.ts +162 -0
  382. package/packages/arcgis-rest-portal/test/sharing/helpers.test.ts +55 -0
  383. package/packages/arcgis-rest-portal/test/sharing/share-item-with-group.test.ts +1328 -0
  384. package/packages/arcgis-rest-portal/test/sharing/unshare-item-with-group.test.ts +288 -0
  385. package/packages/arcgis-rest-portal/test/users/get-user-tags.test.ts +71 -0
  386. package/packages/arcgis-rest-portal/test/users/get-user-url.test.ts +40 -0
  387. package/packages/arcgis-rest-portal/test/users/get-user.test.ts +90 -0
  388. package/packages/arcgis-rest-portal/test/users/invitation.test.ts +126 -0
  389. package/packages/arcgis-rest-portal/test/users/notification.test.ts +76 -0
  390. package/packages/arcgis-rest-portal/test/users/search.test.ts +41 -0
  391. package/packages/arcgis-rest-portal/test/users/update.test.ts +150 -0
  392. package/packages/arcgis-rest-portal/test/util/SearchQueryBuilder.test.ts +295 -0
  393. package/packages/arcgis-rest-portal/test/util/array.test.ts +33 -0
  394. package/packages/arcgis-rest-portal/test/util/get-portal-settings.test.ts +57 -0
  395. package/packages/arcgis-rest-portal/test/util/get-portal-url.test.ts +37 -0
  396. package/packages/arcgis-rest-portal/test/util/portal.test.ts +137 -0
  397. package/packages/arcgis-rest-portal/test/util/scrub-control-chars.test.ts +25 -0
  398. package/packages/arcgis-rest-portal/tsconfig.json +6 -0
  399. package/packages/arcgis-rest-request/README.md +72 -0
  400. package/packages/arcgis-rest-request/package.json +69 -0
  401. package/packages/arcgis-rest-request/post-message-auth-spec.md +70 -0
  402. package/packages/arcgis-rest-request/src/ApiKeyManager.ts +60 -0
  403. package/packages/arcgis-rest-request/src/ApplicationCredentialsManager.ts +141 -0
  404. package/packages/arcgis-rest-request/src/ArcGISIdentityManager.ts +1470 -0
  405. package/packages/arcgis-rest-request/src/app-tokens.ts +132 -0
  406. package/packages/arcgis-rest-request/src/authenticated-request-options.ts +23 -0
  407. package/packages/arcgis-rest-request/src/federation-utils.ts +88 -0
  408. package/packages/arcgis-rest-request/src/fetch-token.ts +48 -0
  409. package/packages/arcgis-rest-request/src/generate-token.ts +32 -0
  410. package/packages/arcgis-rest-request/src/index.ts +46 -0
  411. package/packages/arcgis-rest-request/src/request.ts +446 -0
  412. package/packages/arcgis-rest-request/src/revoke-token.ts +73 -0
  413. package/packages/arcgis-rest-request/src/types/feature.ts +42 -0
  414. package/packages/arcgis-rest-request/src/types/geometry.ts +239 -0
  415. package/packages/arcgis-rest-request/src/types/group.ts +72 -0
  416. package/packages/arcgis-rest-request/src/types/service.ts +87 -0
  417. package/packages/arcgis-rest-request/src/types/symbol.ts +21 -0
  418. package/packages/arcgis-rest-request/src/types/user.ts +49 -0
  419. package/packages/arcgis-rest-request/src/utils/ArcGISRequestError.ts +82 -0
  420. package/packages/arcgis-rest-request/src/utils/ErrorTypes.ts +29 -0
  421. package/packages/arcgis-rest-request/src/utils/GrantTypes.ts +5 -0
  422. package/packages/arcgis-rest-request/src/utils/HTTPMethods.ts +6 -0
  423. package/packages/arcgis-rest-request/src/utils/IAuthenticationManager.ts +22 -0
  424. package/packages/arcgis-rest-request/src/utils/IFetchTokenParams.ts +11 -0
  425. package/packages/arcgis-rest-request/src/utils/IGenerateTokenParams.ts +9 -0
  426. package/packages/arcgis-rest-request/src/utils/IParamBuilder.ts +3 -0
  427. package/packages/arcgis-rest-request/src/utils/IParams.ts +6 -0
  428. package/packages/arcgis-rest-request/src/utils/IParamsBuilder.ts +5 -0
  429. package/packages/arcgis-rest-request/src/utils/IRequestOptions.ts +59 -0
  430. package/packages/arcgis-rest-request/src/utils/ITokenRequestOptions.ts +9 -0
  431. package/packages/arcgis-rest-request/src/utils/ResponseFormats.ts +10 -0
  432. package/packages/arcgis-rest-request/src/utils/append-custom-params.ts +46 -0
  433. package/packages/arcgis-rest-request/src/utils/clean-url.ts +20 -0
  434. package/packages/arcgis-rest-request/src/utils/decode-query-string.ts +27 -0
  435. package/packages/arcgis-rest-request/src/utils/encode-form-data.ts +41 -0
  436. package/packages/arcgis-rest-request/src/utils/encode-query-string.ts +37 -0
  437. package/packages/arcgis-rest-request/src/utils/process-params.ts +109 -0
  438. package/packages/arcgis-rest-request/src/utils/retryAuthError.ts +10 -0
  439. package/packages/arcgis-rest-request/src/utils/warn.ts +11 -0
  440. package/packages/arcgis-rest-request/src/utils/with-options.ts +48 -0
  441. package/packages/arcgis-rest-request/src/validate-app-access.ts +69 -0
  442. package/packages/arcgis-rest-request/test/ApiKey.test.ts +53 -0
  443. package/packages/arcgis-rest-request/test/ApplicationSession.test.ts +148 -0
  444. package/packages/arcgis-rest-request/test/ArcGISIdentityManager.test.ts +2579 -0
  445. package/packages/arcgis-rest-request/test/app-tokens.test.ts +91 -0
  446. package/packages/arcgis-rest-request/test/federation-utils.test.ts +323 -0
  447. package/packages/arcgis-rest-request/test/fetchToken.test.ts +110 -0
  448. package/packages/arcgis-rest-request/test/generateToken.test.ts +40 -0
  449. package/packages/arcgis-rest-request/test/mocks/errors.ts +76 -0
  450. package/packages/arcgis-rest-request/test/mocks/geojson-feature-collection.ts +13 -0
  451. package/packages/arcgis-rest-request/test/mocks/param-builder.ts +7 -0
  452. package/packages/arcgis-rest-request/test/mocks/sharing-rest-info.ts +41 -0
  453. package/packages/arcgis-rest-request/test/mocks/webmap.ts +41 -0
  454. package/packages/arcgis-rest-request/test/request.test.ts +563 -0
  455. package/packages/arcgis-rest-request/test/revoke-token.test.ts +55 -0
  456. package/packages/arcgis-rest-request/test/utils/ArcGISAuthError.test.ts +196 -0
  457. package/packages/arcgis-rest-request/test/utils/ArcGISRequestError.test.ts +51 -0
  458. package/packages/arcgis-rest-request/test/utils/check-for-errors.test.ts +111 -0
  459. package/packages/arcgis-rest-request/test/utils/clean-url.test.ts +50 -0
  460. package/packages/arcgis-rest-request/test/utils/encode-form-data.test.ts +146 -0
  461. package/packages/arcgis-rest-request/test/utils/encode-query-string.test.ts +22 -0
  462. package/packages/arcgis-rest-request/test/utils/process-params.test.ts +205 -0
  463. package/packages/arcgis-rest-request/test/utils/with-options.test.ts +135 -0
  464. package/packages/arcgis-rest-request/test/validate-app-access.test.ts +44 -0
  465. package/packages/arcgis-rest-request/tsconfig.json +4 -0
  466. package/packages/arcgis-rest-routing/README.md +74 -0
  467. package/packages/arcgis-rest-routing/package.json +69 -0
  468. package/packages/arcgis-rest-routing/src/closestFacility.ts +223 -0
  469. package/packages/arcgis-rest-routing/src/helpers.ts +104 -0
  470. package/packages/arcgis-rest-routing/src/index.ts +20 -0
  471. package/packages/arcgis-rest-routing/src/originDestinationMatrix.ts +219 -0
  472. package/packages/arcgis-rest-routing/src/serviceArea.ts +169 -0
  473. package/packages/arcgis-rest-routing/src/solveRoute.ts +179 -0
  474. package/packages/arcgis-rest-routing/test/closestFacility.test.ts +686 -0
  475. package/packages/arcgis-rest-routing/test/mocks/inputs.ts +132 -0
  476. package/packages/arcgis-rest-routing/test/mocks/responses.ts +13316 -0
  477. package/packages/arcgis-rest-routing/test/originDestinationMatrix.test.ts +795 -0
  478. package/packages/arcgis-rest-routing/test/serviceArea.test.ts +601 -0
  479. package/packages/arcgis-rest-routing/test/solveRoute.test.ts +681 -0
  480. package/packages/arcgis-rest-routing/tsconfig.json +6 -0
  481. package/prettier-package-json.config.cjs +81 -0
  482. package/rollup.js +152 -0
  483. package/scripts/create-dist-package-jsons.js +17 -0
  484. package/scripts/deploy-doc-site.js +16 -0
  485. package/scripts/generate-sri-hashes.js +52 -0
  486. package/scripts/get-package-json.js +27 -0
  487. package/scripts/run-demo-server.js +21 -0
  488. package/scripts/test-helpers.ts +20 -0
  489. package/tsconfig.json +62 -0
  490. package/typedoc.json +14 -0
@@ -0,0 +1,239 @@
1
+ /* Copyright (c) 2017-2019 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ /**
5
+ * `IHasZM` can also be imported from the following packages:
6
+ *
7
+ * ```js
8
+ * import { IHasZM } from "@esri/arcgis-rest-feature-service";
9
+ * ```
10
+ */
11
+ export interface IHasZM {
12
+ hasZ?: boolean;
13
+ hasM?: boolean;
14
+ }
15
+
16
+ /**
17
+ * Spatial reference systems define mathematical transformations and coordinate systems for displaying spatial information in 2D and 3D.
18
+ *
19
+ * `ISpatialReference` can also be imported from the following packages:
20
+ *
21
+ * ```js
22
+ * import { ISpatialReference } from "@esri/arcgis-rest-geocoding";
23
+ * import { ISpatialReference } from "@esri/arcgis-rest-service-admin";
24
+ * import { ISpatialReference } from "@esri/arcgis-rest-feature-service";
25
+ * ```
26
+ */
27
+ export interface ISpatialReference {
28
+ wkid?: number;
29
+ latestWkid?: number;
30
+ vcsWkid?: number;
31
+ latestVcsWkid?: number;
32
+ wkt?: string;
33
+ latestWkt?: string;
34
+ }
35
+
36
+ /**
37
+ * a building block for discrete geometries
38
+ *
39
+ * `IGeometry` can also be imported from the following packages:
40
+ *
41
+ * ```js
42
+ * import { IGeometry } from "@esri/arcgis-rest-feature-service";
43
+ * ```
44
+ */
45
+ export interface IGeometry {
46
+ spatialReference?: ISpatialReference;
47
+ }
48
+
49
+ /**
50
+ * A simple point geometry, with spatial reference defined.
51
+ *
52
+ * `IPoint` can also be imported from the following packages:
53
+ *
54
+ * ```js
55
+ * import { IPoint } from "@esri/arcgis-rest-routing";
56
+ * import { IPoint } from "@esri/arcgis-rest-geocoding";
57
+ * ```
58
+ */
59
+ export interface IPoint extends IHasZM, IGeometry {
60
+ x: number;
61
+ y: number;
62
+ z?: number;
63
+ }
64
+
65
+ /**
66
+ * `ILocation` can also be imported from the following packages:
67
+ *
68
+ * ```js
69
+ * import { ILocation } from "@esri/arcgis-rest-routing";
70
+ * import { ILocation } from "@esri/arcgis-rest-geocoding";
71
+ * ```
72
+ */
73
+ export interface ILocation {
74
+ latitude?: number;
75
+ longitude?: number;
76
+ lat?: number;
77
+ long?: number;
78
+ z?: number;
79
+ }
80
+
81
+ /**
82
+ * A polyline geometry.
83
+ *
84
+ * `IPolyLine` can also be imported from the following packages:
85
+ *
86
+ * ```
87
+ * import { IPolyLine } from "@esri/arcgis-rest-routing";
88
+ * ```
89
+ */
90
+ export interface IPolyline extends IHasZM, IGeometry {
91
+ paths: Position[][];
92
+ }
93
+
94
+ /**
95
+ *
96
+ */
97
+ export interface IPolylineWithCurves extends IHasZM, IGeometry {
98
+ curvePaths: Array<Array<Position | JsonCurve>>;
99
+ }
100
+
101
+ /**
102
+ *
103
+ */
104
+ export interface IPolygon extends IHasZM, IGeometry {
105
+ rings: Position[][];
106
+ }
107
+
108
+ /**
109
+ *
110
+ */
111
+ export interface IPolygonWithCurves extends IHasZM, IGeometry {
112
+ curveRings: Array<Array<Position | JsonCurve>>;
113
+ }
114
+
115
+ /**
116
+ *
117
+ */
118
+ export type Position =
119
+ | Position2D
120
+ | [number, number, number]
121
+ | [number, number, number, number];
122
+
123
+ /**
124
+ * `Position2D` can also be imported from the following packages:
125
+ *
126
+ * ```
127
+ * import { Position2D } from "@esri/arcgis-rest-routing";
128
+ * ```
129
+ */
130
+ export type Position2D = [number, number];
131
+
132
+ /**
133
+ * An arc can be represented as a JSON curve object
134
+ */
135
+ export interface IArc {
136
+ a: [
137
+ Position, // End point: x, y, <z>, <m>
138
+ Position2D, // Center point: center_x, center_y
139
+ number, // minor
140
+ number, // clockwise
141
+ number, // rotation
142
+ number, // axis
143
+ number // ratio
144
+ ];
145
+ }
146
+
147
+ /**
148
+ * a bezier curve can be represented as a JSON curve object
149
+ */
150
+ export interface IBezierCurve {
151
+ b: [Position, Position2D, Position2D];
152
+ }
153
+
154
+ /**
155
+ * a circular arc can be represented as a JSON curve object
156
+ */
157
+ export interface ICircularArc {
158
+ c: [Position, Position2D];
159
+ }
160
+
161
+ /**
162
+ *
163
+ */
164
+ export type ElipticArc = IArc;
165
+
166
+ /**
167
+ * `GeometryType` can also be imported from the following packages:
168
+ *
169
+ * ```js
170
+ * import { GeometryType } from "@esri/arcgis-rest-feature-service";
171
+ * ```
172
+ */
173
+ export type GeometryType =
174
+ | "esriGeometryPoint"
175
+ | "esriGeometryMultipoint"
176
+ | "esriGeometryPolyline"
177
+ | "esriGeometryPolygon"
178
+ | "esriGeometryEnvelope";
179
+
180
+ /**
181
+ * Extents are used to define rectangles and bounding boxes.
182
+ *
183
+ * `IExtent` can also be imported from the following packages:
184
+ *
185
+ * ```js
186
+ * import { IExtent } from "@esri/arcgis-rest-demographics";
187
+ * import { IExtent } from "@esri/arcgis-rest-feature-service";
188
+ * import { IExtent } from "@esri/arcgis-rest-geocoding";
189
+ * import { IExtent } from "@esri/arcgis-rest-service-admin";
190
+ * ```
191
+ */
192
+ export interface IExtent {
193
+ xmin: number;
194
+ ymin: number;
195
+ zmin?: number;
196
+ xmax: number;
197
+ ymax: number;
198
+ zmax?: number;
199
+ spatialReference?: ISpatialReference;
200
+ }
201
+
202
+ /**
203
+ *
204
+ */
205
+ export type JsonCurve = ICircularArc | IArc | IOldCircularArc | IBezierCurve;
206
+
207
+ /**
208
+ *
209
+ */
210
+ export interface IOldCircularArc {
211
+ a: [
212
+ Position, // End point: x, y, <z>, <m>
213
+ Position2D, // Center point: center_x, center_y
214
+ number, // minor
215
+ number // clockwise
216
+ ];
217
+ }
218
+
219
+ /**
220
+ * A multipoint contains an array of points.
221
+ */
222
+ export interface IMultipoint extends IHasZM, IGeometry {
223
+ points: Position[];
224
+ }
225
+
226
+ /**
227
+ * `Units` can also be imported from the following packages:
228
+ *
229
+ * ```js
230
+ * import { Units } from "@esri/arcgis-rest-feature-service";
231
+ * ```
232
+ */
233
+ export type Units =
234
+ | "esriSRUnit_Meter"
235
+ | "esriSRUnit_StatuteMile"
236
+ | "esriSRUnit_Foot"
237
+ | "esriSRUnit_Kilometer"
238
+ | "esriSRUnit_NauticalMile"
239
+ | "esriSRUnit_USNauticalMile";
@@ -0,0 +1,72 @@
1
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ /**
5
+ * `GroupMembership` can also be imported from the following packages:
6
+ *
7
+ * ```js
8
+ * import { GroupMembership } from "@esri/arcgis-rest-portal";
9
+ * ```
10
+ */
11
+ export type GroupMembership = "owner" | "admin" | "member" | "none";
12
+
13
+ /**
14
+ * A [Group](https://developers.arcgis.com/rest/users-groups-and-items/common-parameters.htm) that has not been created yet.
15
+ *
16
+ * `IGroupAdd` can also be imported from the following packages:
17
+ *
18
+ * ```js
19
+ * import { IGroupAdd } from "@esri/arcgis-rest-portal";
20
+ * ```
21
+ */
22
+ export interface IGroupAdd {
23
+ title: string;
24
+ access: "private" | "org" | "public";
25
+ owner?: string;
26
+ tags?: string[];
27
+ description?: string;
28
+ phone?: string;
29
+ sortField?:
30
+ | "title"
31
+ | "owner"
32
+ | "avgrating"
33
+ | "numviews"
34
+ | "created"
35
+ | "modified";
36
+ sortOrder?: "asc" | "desc";
37
+ isViewOnly?: boolean;
38
+ isInvitationOnly?: boolean;
39
+ thumbnail?: string;
40
+ autoJoin?: boolean;
41
+ snippet?: string;
42
+ [key: string]: any;
43
+ }
44
+
45
+ /**
46
+ * Existing Portal [Group](https://developers.arcgis.com/rest/users-groups-and-items/group.htm).
47
+ *
48
+ * `IGroup` can also be imported from the following packages:
49
+ *
50
+ * ```js
51
+ * import { IGroup } from "@esri/arcgis-rest-portal";
52
+ * ```
53
+ */
54
+ export interface IGroup extends IGroupAdd {
55
+ id: string;
56
+ owner: string;
57
+ tags: string[];
58
+ created: number;
59
+ modified: number;
60
+ protected: boolean;
61
+ isInvitationOnly: boolean;
62
+ isViewOnly: boolean;
63
+ isOpenData?: boolean;
64
+ isFav: boolean;
65
+ autoJoin: boolean;
66
+ userMembership?: {
67
+ username?: string;
68
+ memberType?: GroupMembership;
69
+ applications?: number;
70
+ };
71
+ hasCategorySchema?: boolean;
72
+ }
@@ -0,0 +1,87 @@
1
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+
5
+
6
+ /**
7
+ * Field type.
8
+ */
9
+ export type FieldType =
10
+ | "esriFieldTypeBlob"
11
+ | "esriFieldTypeDate"
12
+ | "esriFieldTypeDouble"
13
+ | "esriFieldTypeGeometry"
14
+ | "esriFieldTypeGlobalID"
15
+ | "esriFieldTypeGUID"
16
+ | "esriFieldTypeInteger"
17
+ | "esriFieldTypeOID"
18
+ | "esriFieldTypeRaster"
19
+ | "esriFieldTypeSingle"
20
+ | "esriFieldTypeSmallInteger"
21
+ | "esriFieldTypeString"
22
+ | "esriFieldTypeXML";
23
+
24
+ /**
25
+ * Domain types
26
+ */
27
+ export type DomainType = "range" | "codedValue" | "inherited";
28
+
29
+ /**
30
+ * CodedValue type
31
+ */
32
+ export type ICodedValue = {
33
+ /** User-friendly name for what the code means. */
34
+ name: string;
35
+ /** The value stored in the feature attribute. */
36
+ code: string | number;
37
+ };
38
+
39
+ /**
40
+ * Information for a field with a domain
41
+ */
42
+ export type IDomain = {
43
+ /** A string defining the domain type. */
44
+ type: DomainType;
45
+ /** A string defining the field name. */
46
+ name?: string;
47
+ /** A 2 element array defining the range of possible values. */
48
+ range?: [number, number];
49
+ /** An array of CodedValues for domains of type codedValue. */
50
+ codedValues?: ICodedValue[];
51
+ /** Description of the domain */
52
+ description?: string;
53
+ /** Merge policy */
54
+ mergePolicy?: string;
55
+ /** Split Policy */
56
+ splitPolicy?: string;
57
+ };
58
+
59
+ /**
60
+ * Contains information about an attribute field.
61
+ *
62
+ * `IField` can also be imported from the following packages:
63
+ *
64
+ * ```js
65
+ * import { IField } from "@esri/arcgis-rest-feature-service";
66
+ * ```
67
+ */
68
+ export interface IField {
69
+ /** A string defining the field name. */
70
+ name: string;
71
+ /** A string defining the field type. */
72
+ type: FieldType;
73
+ /** A string defining the field alias. */
74
+ alias?: string;
75
+ /** The domain objects if applicable. */
76
+ domain?: IDomain;
77
+ /** A Boolean defining whether this field is editable. */
78
+ editable?: boolean;
79
+ /** A Boolean defining whether or not the field is an exact match. */
80
+ exactMatch?: boolean;
81
+ /** A number defining how many characters are allowed in a string. field. */
82
+ length?: number;
83
+ /** A Boolean defining whether this field can have a null value. */
84
+ nullable?: boolean;
85
+ /** The value written in for new records by default. */
86
+ defaultValue?: any;
87
+ }
@@ -0,0 +1,21 @@
1
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ /**
5
+ *
6
+ */
7
+ export interface ISymbol {
8
+ type: SymbolType;
9
+ style?: string;
10
+ }
11
+
12
+ /**
13
+ *
14
+ */
15
+ export type SymbolType =
16
+ | "esriSLS"
17
+ | "esriSMS"
18
+ | "esriSFS"
19
+ | "esriPMS"
20
+ | "esriPFS"
21
+ | "esriTS";
@@ -0,0 +1,49 @@
1
+ /* Copyright (c) 2019 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ import { IGroup } from "./group.js";
5
+
6
+ /**
7
+ * An ArcGIS Online or Enterprise user
8
+ *
9
+ * `IUser` can also be imported from the following packages:
10
+ *
11
+ * ```js
12
+ * import { IUser } from "@esri/arcgis-rest-auth";
13
+ * import { IUser } from "@esri/arcgis-rest-portal";
14
+ * ```
15
+ */
16
+ export interface IUser {
17
+ username?: string;
18
+ fullName?: string;
19
+ availableCredits?: number;
20
+ assignedCredits?: number;
21
+ firstName?: string;
22
+ lastName?: string;
23
+ preferredView?: any;
24
+ description?: string;
25
+ email?: string;
26
+ idpUsername?: string;
27
+ favGroupId?: string;
28
+ lastLogin?: number;
29
+ mfaEnabled?: boolean;
30
+ access?: string;
31
+ storageUsage?: number;
32
+ storageQuota?: number;
33
+ orgId?: string;
34
+ cOrgId?: string;
35
+ role?: "org_admin" | "org_publisher" | "org_user";
36
+ privileges?: string[];
37
+ roleId?: string;
38
+ level?: string;
39
+ disabled?: boolean;
40
+ units?: string;
41
+ tags?: string[];
42
+ culture?: string;
43
+ region?: string;
44
+ thumbnail?: string;
45
+ created?: number;
46
+ modified?: number;
47
+ groups?: IGroup[];
48
+ provider?: "arcgis" | "enterprise" | "facebook" | "google";
49
+ }
@@ -0,0 +1,82 @@
1
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ import { IRequestOptions } from "./IRequestOptions.js";
5
+
6
+ // TypeScript 2.1 no longer allows you to extend built in types. See https://github.com/Microsoft/TypeScript/issues/12790#issuecomment-265981442
7
+ // and https://github.com/Microsoft/TypeScript-wiki/blob/master/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work
8
+ //
9
+ // This code is from MDN https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error#Custom_Error_Types.
10
+ export class ArcGISRequestError extends Error {
11
+ /**
12
+ * The name of this error. Will always be `"ArcGISRequestError"` to conform with the [`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) class.
13
+ */
14
+ public name: string;
15
+
16
+ /**
17
+ * Formatted error message. See the [`Error`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) class for more details.
18
+ */
19
+ public message: string;
20
+
21
+ /**
22
+ * The errror message return from the request.
23
+ */
24
+ public originalMessage: string;
25
+
26
+ /**
27
+ * The error code returned from the request.
28
+ */
29
+ public code: string | number;
30
+
31
+ /**
32
+ * The original JSON response the caused the error.
33
+ */
34
+ public response: any;
35
+
36
+ /**
37
+ * The URL of the original request that caused the error
38
+ */
39
+ public url: string;
40
+
41
+ /**
42
+ * The options of the original request that caused the error
43
+ */
44
+ public options: IRequestOptions;
45
+
46
+ /**
47
+ * Create a new `ArcGISRequestError` object.
48
+ *
49
+ * @param message - The error message from the API
50
+ * @param code - The error code from the API
51
+ * @param response - The original response from the API that caused the error
52
+ * @param url - The original url of the request
53
+ * @param options - The original options and parameters of the request
54
+ */
55
+ constructor(
56
+ message?: string,
57
+ code?: string | number,
58
+ response?: any,
59
+ url?: string,
60
+ options?: IRequestOptions
61
+ ) {
62
+ // 'Error' breaks prototype chain here
63
+ super(message);
64
+
65
+ // restore prototype chain, see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
66
+ // we don't need to check for Object.setPrototypeOf as in the answers becasue we are ES2017 now
67
+ const actualProto = new.target.prototype;
68
+ Object.setPrototypeOf(this, actualProto);
69
+
70
+ message = message || "UNKNOWN_ERROR";
71
+ code = code || "UNKNOWN_ERROR_CODE";
72
+
73
+ this.name = "ArcGISRequestError";
74
+ this.message =
75
+ code === "UNKNOWN_ERROR_CODE" ? message : `${code}: ${message}`;
76
+ this.originalMessage = message;
77
+ this.code = code;
78
+ this.response = response;
79
+ this.url = url;
80
+ this.options = options;
81
+ }
82
+ }
@@ -0,0 +1,29 @@
1
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ /**
5
+ * Enum describing the different errors that might be thrown by a request.
6
+ *
7
+ * ```ts
8
+ * import { request, ErrorTypes } from '@esri/arcgis-rest-request';
9
+ *
10
+ * request("...").catch((e) => {
11
+ * switch(e.name) {
12
+ * case ErrorType.ArcGISRequestError:
13
+ * // handle a general error from the API
14
+ * break;
15
+ *
16
+ * case ErrorType.ArcGISAuthError:
17
+ * // handle an authentication error
18
+ * break;
19
+ *
20
+ * default:
21
+ * // handle some other error (usually a network error)
22
+ * }
23
+ * });
24
+ * ```
25
+ */
26
+ export enum ErrorTypes {
27
+ ArcGISRequestError = "ArcGISRequestError",
28
+ ArcGISAuthError = "ArcGISAuthError"
29
+ }
@@ -0,0 +1,5 @@
1
+ export type GrantTypes =
2
+ | "authorization_code"
3
+ | "refresh_token"
4
+ | "client_credentials"
5
+ | "exchange_refresh_token";
@@ -0,0 +1,6 @@
1
+ /* Copyright (c) 2017 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+ /**
4
+ * HTTP methods used by the ArcGIS REST API.
5
+ */
6
+ export type HTTPMethods = "GET" | "POST";
@@ -0,0 +1,22 @@
1
+ import { ITokenRequestOptions } from "./ITokenRequestOptions.js";
2
+ /**
3
+ * Authentication can be supplied to `request` via [`ArcGISIdentityManager`](../../auth/ArcGISIdentityManager/) or [`ApplicationSession`](../../auth/ApplicationSession/). Both classes extend `IAuthenticationManager`.
4
+ * ```js
5
+ * const session = new ArcGISIdentityManager({
6
+ * username: "jsmith",
7
+ * password: "123456",
8
+ * // optional
9
+ * portal: "https://[yourserver]/arcgis/sharing/rest"
10
+ * })
11
+ *
12
+ * request(url, { authentication: session })
13
+ * ```
14
+ */
15
+ export interface IAuthenticationManager {
16
+ /**
17
+ * Defaults to 'https://www.arcgis.com/sharing/rest'.
18
+ */
19
+ portal: string;
20
+ getToken(url: string, requestOptions?: ITokenRequestOptions): Promise<string>;
21
+ getDomainCredentials?(url: string): RequestCredentials;
22
+ }
@@ -0,0 +1,11 @@
1
+ import { GrantTypes } from "./GrantTypes.js";
2
+ import { IParams } from "./IParams.js";
3
+
4
+ export interface IFetchTokenParams extends IParams {
5
+ client_id: string;
6
+ client_secret?: string;
7
+ grant_type: GrantTypes;
8
+ redirect_uri?: string;
9
+ refresh_token?: string;
10
+ code?: string;
11
+ }
@@ -0,0 +1,9 @@
1
+ import { IParams } from "./IParams.js";
2
+
3
+ export interface IGenerateTokenParams extends IParams {
4
+ username?: string;
5
+ password?: string;
6
+ expiration?: number;
7
+ token?: string;
8
+ serverUrl?: string;
9
+ }
@@ -0,0 +1,3 @@
1
+ export interface IParamBuilder {
2
+ toParam(): any;
3
+ }
@@ -0,0 +1,6 @@
1
+ import { ResponseFormats } from "./ResponseFormats.js";
2
+
3
+ export interface IParams {
4
+ f?: ResponseFormats;
5
+ [key: string]: any;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { IParams } from "./IParams.js";
2
+
3
+ export interface IParamsBuilder {
4
+ toParams(additionalParams?: IParams): IParams;
5
+ }