ducimusipsa 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (307) hide show
  1. package/.prettierignore +2 -0
  2. package/.travis.yml +34 -0
  3. package/.vscode/launch.json +24 -0
  4. package/.vscode/settings.json +3 -0
  5. package/demos/ago-node-cli/README.md +29 -0
  6. package/demos/ago-node-cli/ago.js +32 -0
  7. package/demos/ago-node-cli/index.js +11 -0
  8. package/demos/ago-node-cli/lib/item-export-command.js +48 -0
  9. package/demos/ago-node-cli/lib/item-search-command.js +35 -0
  10. package/demos/ago-node-cli/package-lock.json +180 -0
  11. package/demos/ago-node-cli/package.json +30 -0
  12. package/demos/attachments/README.md +5 -0
  13. package/demos/attachments/index.html +164 -0
  14. package/demos/attachments/package-lock.json +182 -0
  15. package/demos/attachments/package.json +18 -0
  16. package/demos/batch-geocoder-node/NYC_Restaurant_Inspection_Results.csv +100 -0
  17. package/demos/batch-geocoder-node/README.md +15 -0
  18. package/demos/batch-geocoder-node/batch-geocode.js +115 -0
  19. package/demos/batch-geocoder-node/config-template.js +18 -0
  20. package/demos/batch-geocoder-node/package-lock.json +109 -0
  21. package/demos/batch-geocoder-node/package.json +38 -0
  22. package/demos/express/README.md +15 -0
  23. package/demos/express/config.json.template +3 -0
  24. package/demos/express/package-lock.json +428 -0
  25. package/demos/express/package.json +18 -0
  26. package/demos/express/server.js +33 -0
  27. package/demos/feature-service-browser/README.md +6 -0
  28. package/demos/feature-service-browser/index.html +122 -0
  29. package/demos/feature-service-browser/package-lock.json +182 -0
  30. package/demos/feature-service-browser/package.json +18 -0
  31. package/demos/geocoder-browser/README.md +10 -0
  32. package/demos/geocoder-browser/config.js.template +1 -0
  33. package/demos/geocoder-browser/index.html +131 -0
  34. package/demos/geocoder-browser/package-lock.json +182 -0
  35. package/demos/geocoder-browser/package.json +19 -0
  36. package/demos/geocoder-browser/post-sign-in.html +25 -0
  37. package/demos/jsapi-integration/README.md +25 -0
  38. package/demos/jsapi-integration/config.js +6 -0
  39. package/demos/jsapi-integration/index.html +85 -0
  40. package/demos/jsapi-integration/package-lock.json +184 -0
  41. package/demos/jsapi-integration/package.json +19 -0
  42. package/demos/oauth2-browser/README.md +14 -0
  43. package/demos/oauth2-browser/authenticate.html +32 -0
  44. package/demos/oauth2-browser/config.js.template +6 -0
  45. package/demos/oauth2-browser/index.html +202 -0
  46. package/demos/oauth2-browser/logo.svg +4 -0
  47. package/demos/oauth2-browser/package-lock.json +163 -0
  48. package/demos/oauth2-browser/package.json +18 -0
  49. package/demos/oauth2-browser/style.css +36 -0
  50. package/demos/oauth2-browser-retry/README.md +25 -0
  51. package/demos/oauth2-browser-retry/authenticate.html +21 -0
  52. package/demos/oauth2-browser-retry/index.html +116 -0
  53. package/demos/oauth2-browser-retry/logo.svg +4 -0
  54. package/demos/vue/.env.example +11 -0
  55. package/demos/vue/.eslintrc.js +17 -0
  56. package/demos/vue/.postcssrc.js +5 -0
  57. package/demos/vue/README.md +17 -0
  58. package/demos/vue/babel.config.js +3 -0
  59. package/demos/vue/package-lock.json +11323 -0
  60. package/demos/vue/package.json +33 -0
  61. package/demos/vue/public/favicon.ico +0 -0
  62. package/demos/vue/public/index.html +24 -0
  63. package/demos/vue/src/assets/logo.svg +29 -0
  64. package/demos/vue/src/components/App.vue +308 -0
  65. package/demos/vue/src/components/Authenticate.vue +65 -0
  66. package/demos/vue/src/components/Loader.vue +230 -0
  67. package/demos/vue/src/main.js +92 -0
  68. package/docs/FAQ.md +28 -0
  69. package/docs/HISTORY.md +62 -0
  70. package/docs/acetate.config.js +223 -0
  71. package/docs/build-typedoc.js +303 -0
  72. package/docs/src/_layout.html +82 -0
  73. package/docs/src/api/_declaration.html +496 -0
  74. package/docs/src/api/_layout.html +127 -0
  75. package/docs/src/api/_package.html +13 -0
  76. package/docs/src/api/index.html +23 -0
  77. package/docs/src/guides/_layout.html +24 -0
  78. package/docs/src/guides/amd-requirejs-dojo.md +40 -0
  79. package/docs/src/guides/babel-and-rollup.md +30 -0
  80. package/docs/src/guides/babel-and-webpack.md +30 -0
  81. package/docs/src/guides/browser-authentication.md +41 -0
  82. package/docs/src/guides/browserify.md +9 -0
  83. package/docs/src/guides/cli-authentication.md +9 -0
  84. package/docs/src/guides/client-server-authentication.md +9 -0
  85. package/docs/src/guides/from-a-cdn.md +36 -0
  86. package/docs/src/guides/index.md +52 -0
  87. package/docs/src/guides/node.md +70 -0
  88. package/docs/src/guides/package-overview.md +8 -0
  89. package/docs/src/guides/server-authentication.md +9 -0
  90. package/docs/src/guides/typescript-and-webpack.md +9 -0
  91. package/docs/src/img/icons.png +0 -0
  92. package/docs/src/img/icons@2x.png +0 -0
  93. package/docs/src/index.html +12 -0
  94. package/docs/src/js/api-search.js +112 -0
  95. package/docs/src/js/nav-toggle.js +41 -0
  96. package/docs/src/sass/_highlight.scss +96 -0
  97. package/docs/src/sass/_icons.scss +157 -0
  98. package/docs/src/sass/style.scss +169 -0
  99. package/jasmine.json +7 -0
  100. package/karma.conf.js +100 -0
  101. package/lerna.json +8 -0
  102. package/notes/README.md +88 -0
  103. package/package.json +129 -0
  104. package/packages/arcgis-rest-auth/README.md +67 -0
  105. package/packages/arcgis-rest-auth/package-lock.json +11 -0
  106. package/packages/arcgis-rest-auth/package.json +53 -0
  107. package/packages/arcgis-rest-auth/src/ApplicationSession.ts +108 -0
  108. package/packages/arcgis-rest-auth/src/UserSession.ts +880 -0
  109. package/packages/arcgis-rest-auth/src/authenticated-request-options.ts +24 -0
  110. package/packages/arcgis-rest-auth/src/fetch-token.ts +52 -0
  111. package/packages/arcgis-rest-auth/src/generate-token.ts +39 -0
  112. package/packages/arcgis-rest-auth/src/index.ts +8 -0
  113. package/packages/arcgis-rest-auth/test/ApplicationSession.test.ts +124 -0
  114. package/packages/arcgis-rest-auth/test/UserSession.test.ts +1005 -0
  115. package/packages/arcgis-rest-auth/test/fetchToken.test.ts +112 -0
  116. package/packages/arcgis-rest-auth/test/generateToken.test.ts +130 -0
  117. package/packages/arcgis-rest-auth/test/utils.ts +14 -0
  118. package/packages/arcgis-rest-auth/tsconfig.json +6 -0
  119. package/packages/arcgis-rest-common/README.md +57 -0
  120. package/packages/arcgis-rest-common/package-lock.json +11 -0
  121. package/packages/arcgis-rest-common/package.json +41 -0
  122. package/packages/arcgis-rest-common/src/index.ts +10 -0
  123. package/packages/arcgis-rest-common/src/types/feature.ts +14 -0
  124. package/packages/arcgis-rest-common/src/types/geometry.ts +47 -0
  125. package/packages/arcgis-rest-common/src/types/symbol.ts +21 -0
  126. package/packages/arcgis-rest-common/src/util/location.ts +19 -0
  127. package/packages/arcgis-rest-common/test/location.test.ts +73 -0
  128. package/packages/arcgis-rest-common/tsconfig.json +6 -0
  129. package/packages/arcgis-rest-common-types/README.md +64 -0
  130. package/packages/arcgis-rest-common-types/package.json +40 -0
  131. package/packages/arcgis-rest-common-types/src/group.ts +54 -0
  132. package/packages/arcgis-rest-common-types/src/index.ts +469 -0
  133. package/packages/arcgis-rest-common-types/src/item.ts +47 -0
  134. package/packages/arcgis-rest-common-types/src/webmap.ts +1267 -0
  135. package/packages/arcgis-rest-common-types/tsconfig.json +11 -0
  136. package/packages/arcgis-rest-feature-service/README.md +73 -0
  137. package/packages/arcgis-rest-feature-service/package-lock.json +11 -0
  138. package/packages/arcgis-rest-feature-service/package.json +53 -0
  139. package/packages/arcgis-rest-feature-service/src/add.ts +90 -0
  140. package/packages/arcgis-rest-feature-service/src/addAttachment.ts +64 -0
  141. package/packages/arcgis-rest-feature-service/src/decodeValues.ts +129 -0
  142. package/packages/arcgis-rest-feature-service/src/delete.ts +97 -0
  143. package/packages/arcgis-rest-feature-service/src/deleteAttachments.ts +67 -0
  144. package/packages/arcgis-rest-feature-service/src/getAttachments.ts +64 -0
  145. package/packages/arcgis-rest-feature-service/src/getLayer.ts +27 -0
  146. package/packages/arcgis-rest-feature-service/src/helpers.ts +50 -0
  147. package/packages/arcgis-rest-feature-service/src/index.ts +14 -0
  148. package/packages/arcgis-rest-feature-service/src/query.ts +183 -0
  149. package/packages/arcgis-rest-feature-service/src/queryRelated.ts +94 -0
  150. package/packages/arcgis-rest-feature-service/src/update.ts +90 -0
  151. package/packages/arcgis-rest-feature-service/src/updateAttachment.ts +73 -0
  152. package/packages/arcgis-rest-feature-service/test/attachments.test.ts +203 -0
  153. package/packages/arcgis-rest-feature-service/test/crud.test.ts +263 -0
  154. package/packages/arcgis-rest-feature-service/test/decodeValues.test.ts +67 -0
  155. package/packages/arcgis-rest-feature-service/test/getLayer.test.ts +31 -0
  156. package/packages/arcgis-rest-feature-service/test/mocks/cvdQueryResponse.ts +225 -0
  157. package/packages/arcgis-rest-feature-service/test/mocks/feature.ts +281 -0
  158. package/packages/arcgis-rest-feature-service/test/mocks/fields.ts +779 -0
  159. package/packages/arcgis-rest-feature-service/test/mocks/foo.txt +1 -0
  160. package/packages/arcgis-rest-feature-service/test/mocks/service.ts +259 -0
  161. package/packages/arcgis-rest-feature-service/test/query.test.ts +140 -0
  162. package/packages/arcgis-rest-feature-service/tsconfig.json +6 -0
  163. package/packages/arcgis-rest-feature-service-admin/README.md +69 -0
  164. package/packages/arcgis-rest-feature-service-admin/package-lock.json +11 -0
  165. package/packages/arcgis-rest-feature-service-admin/package.json +56 -0
  166. package/packages/arcgis-rest-feature-service-admin/src/addTo.ts +74 -0
  167. package/packages/arcgis-rest-feature-service-admin/src/create.ts +207 -0
  168. package/packages/arcgis-rest-feature-service-admin/src/index.ts +2 -0
  169. package/packages/arcgis-rest-feature-service-admin/test/addTo.test.ts +353 -0
  170. package/packages/arcgis-rest-feature-service-admin/test/create.test.ts +412 -0
  171. package/packages/arcgis-rest-feature-service-admin/test/mocks/layerDefinition.ts +79 -0
  172. package/packages/arcgis-rest-feature-service-admin/test/mocks/move.ts +14 -0
  173. package/packages/arcgis-rest-feature-service-admin/test/mocks/service.ts +72 -0
  174. package/packages/arcgis-rest-feature-service-admin/tsconfig.json +6 -0
  175. package/packages/arcgis-rest-geocoder/README.md +83 -0
  176. package/packages/arcgis-rest-geocoder/package-lock.json +11 -0
  177. package/packages/arcgis-rest-geocoder/package.json +55 -0
  178. package/packages/arcgis-rest-geocoder/src/bulk.ts +102 -0
  179. package/packages/arcgis-rest-geocoder/src/geocode.ts +130 -0
  180. package/packages/arcgis-rest-geocoder/src/helpers.ts +80 -0
  181. package/packages/arcgis-rest-geocoder/src/index.ts +8 -0
  182. package/packages/arcgis-rest-geocoder/src/reverse.ts +83 -0
  183. package/packages/arcgis-rest-geocoder/src/suggest.ts +69 -0
  184. package/packages/arcgis-rest-geocoder/test/bulk.test.ts +113 -0
  185. package/packages/arcgis-rest-geocoder/test/geocode.test.ts +176 -0
  186. package/packages/arcgis-rest-geocoder/test/helpers.test.ts +111 -0
  187. package/packages/arcgis-rest-geocoder/test/mocks/responses.ts +629 -0
  188. package/packages/arcgis-rest-geocoder/test/reverse.test.ts +126 -0
  189. package/packages/arcgis-rest-geocoder/test/suggest.test.ts +98 -0
  190. package/packages/arcgis-rest-geocoder/tsconfig.json +6 -0
  191. package/packages/arcgis-rest-groups/README.md +67 -0
  192. package/packages/arcgis-rest-groups/package-lock.json +11 -0
  193. package/packages/arcgis-rest-groups/package.json +55 -0
  194. package/packages/arcgis-rest-groups/src/create.ts +34 -0
  195. package/packages/arcgis-rest-groups/src/get.ts +95 -0
  196. package/packages/arcgis-rest-groups/src/helpers.ts +27 -0
  197. package/packages/arcgis-rest-groups/src/index.ts +11 -0
  198. package/packages/arcgis-rest-groups/src/notification.ts +77 -0
  199. package/packages/arcgis-rest-groups/src/protect.ts +40 -0
  200. package/packages/arcgis-rest-groups/src/remove.ts +23 -0
  201. package/packages/arcgis-rest-groups/src/search.ts +64 -0
  202. package/packages/arcgis-rest-groups/src/update.ts +36 -0
  203. package/packages/arcgis-rest-groups/test/crud.test.ts +134 -0
  204. package/packages/arcgis-rest-groups/test/get.test.ts +101 -0
  205. package/packages/arcgis-rest-groups/test/mocks/responses.ts +141 -0
  206. package/packages/arcgis-rest-groups/test/notification.test.ts +102 -0
  207. package/packages/arcgis-rest-groups/test/protect.test.ts +64 -0
  208. package/packages/arcgis-rest-groups/test/search.test.ts +85 -0
  209. package/packages/arcgis-rest-groups/tsconfig.json +6 -0
  210. package/packages/arcgis-rest-items/README.md +69 -0
  211. package/packages/arcgis-rest-items/package-lock.json +11 -0
  212. package/packages/arcgis-rest-items/package.json +55 -0
  213. package/packages/arcgis-rest-items/src/add.ts +103 -0
  214. package/packages/arcgis-rest-items/src/create.ts +110 -0
  215. package/packages/arcgis-rest-items/src/get.ts +79 -0
  216. package/packages/arcgis-rest-items/src/helpers.ts +147 -0
  217. package/packages/arcgis-rest-items/src/index.ts +11 -0
  218. package/packages/arcgis-rest-items/src/protect.ts +38 -0
  219. package/packages/arcgis-rest-items/src/remove.ts +58 -0
  220. package/packages/arcgis-rest-items/src/search.ts +78 -0
  221. package/packages/arcgis-rest-items/src/update.ts +134 -0
  222. package/packages/arcgis-rest-items/test/add.test.ts +256 -0
  223. package/packages/arcgis-rest-items/test/create.test.ts +371 -0
  224. package/packages/arcgis-rest-items/test/get.test.ts +181 -0
  225. package/packages/arcgis-rest-items/test/mocks/foo.zip +0 -0
  226. package/packages/arcgis-rest-items/test/mocks/item.ts +35 -0
  227. package/packages/arcgis-rest-items/test/mocks/resources.ts +31 -0
  228. package/packages/arcgis-rest-items/test/mocks/search.ts +62 -0
  229. package/packages/arcgis-rest-items/test/protect.test.ts +122 -0
  230. package/packages/arcgis-rest-items/test/remove.test.ts +161 -0
  231. package/packages/arcgis-rest-items/test/search.test.ts +159 -0
  232. package/packages/arcgis-rest-items/test/update.test.ts +450 -0
  233. package/packages/arcgis-rest-items/tsconfig.json +6 -0
  234. package/packages/arcgis-rest-request/README.md +68 -0
  235. package/packages/arcgis-rest-request/package-lock.json +11 -0
  236. package/packages/arcgis-rest-request/package.json +45 -0
  237. package/packages/arcgis-rest-request/src/index.ts +15 -0
  238. package/packages/arcgis-rest-request/src/request.ts +358 -0
  239. package/packages/arcgis-rest-request/src/utils/ArcGISRequestError.ts +76 -0
  240. package/packages/arcgis-rest-request/src/utils/ErrorTypes.ts +29 -0
  241. package/packages/arcgis-rest-request/src/utils/append-custom-params.ts +29 -0
  242. package/packages/arcgis-rest-request/src/utils/encode-form-data.ts +34 -0
  243. package/packages/arcgis-rest-request/src/utils/encode-query-string.ts +23 -0
  244. package/packages/arcgis-rest-request/src/utils/get-portal-url.ts +25 -0
  245. package/packages/arcgis-rest-request/src/utils/get-portal.ts +45 -0
  246. package/packages/arcgis-rest-request/src/utils/params.ts +52 -0
  247. package/packages/arcgis-rest-request/src/utils/process-params.ts +99 -0
  248. package/packages/arcgis-rest-request/src/utils/retryAuthError.ts +9 -0
  249. package/packages/arcgis-rest-request/src/utils/warn.ts +11 -0
  250. package/packages/arcgis-rest-request/test/mocks/errors.ts +68 -0
  251. package/packages/arcgis-rest-request/test/mocks/geojson-feature-collection.ts +13 -0
  252. package/packages/arcgis-rest-request/test/mocks/portal.ts +112 -0
  253. package/packages/arcgis-rest-request/test/mocks/sharing-rest-info.ts +41 -0
  254. package/packages/arcgis-rest-request/test/mocks/webmap.ts +41 -0
  255. package/packages/arcgis-rest-request/test/request.test.ts +323 -0
  256. package/packages/arcgis-rest-request/test/utils/ArcGISAuthError.test.ts +170 -0
  257. package/packages/arcgis-rest-request/test/utils/ArcGISRequestError.test.ts +51 -0
  258. package/packages/arcgis-rest-request/test/utils/check-for-errors.test.ts +111 -0
  259. package/packages/arcgis-rest-request/test/utils/encode-form-data.test.ts +133 -0
  260. package/packages/arcgis-rest-request/test/utils/get-portal-url.test.ts +37 -0
  261. package/packages/arcgis-rest-request/test/utils/portal.test.ts +97 -0
  262. package/packages/arcgis-rest-request/test/utils/process-params.test.ts +193 -0
  263. package/packages/arcgis-rest-request/tsconfig.json +6 -0
  264. package/packages/arcgis-rest-routing/README.md +71 -0
  265. package/packages/arcgis-rest-routing/package-lock.json +11 -0
  266. package/packages/arcgis-rest-routing/package.json +54 -0
  267. package/packages/arcgis-rest-routing/src/helpers.ts +16 -0
  268. package/packages/arcgis-rest-routing/src/index.ts +4 -0
  269. package/packages/arcgis-rest-routing/src/solveRoute.ts +102 -0
  270. package/packages/arcgis-rest-routing/test/mocks/responses.ts +825 -0
  271. package/packages/arcgis-rest-routing/test/solveRoute.test.ts +267 -0
  272. package/packages/arcgis-rest-routing/tsconfig.json +6 -0
  273. package/packages/arcgis-rest-sharing/README.md +70 -0
  274. package/packages/arcgis-rest-sharing/package-lock.json +11 -0
  275. package/packages/arcgis-rest-sharing/package.json +60 -0
  276. package/packages/arcgis-rest-sharing/src/access.ts +85 -0
  277. package/packages/arcgis-rest-sharing/src/group-sharing.ts +211 -0
  278. package/packages/arcgis-rest-sharing/src/helpers.ts +82 -0
  279. package/packages/arcgis-rest-sharing/src/index.ts +5 -0
  280. package/packages/arcgis-rest-sharing/test/access.test.ts +154 -0
  281. package/packages/arcgis-rest-sharing/test/group-sharing.test.ts +566 -0
  282. package/packages/arcgis-rest-sharing/test/helpers.test.ts +55 -0
  283. package/packages/arcgis-rest-sharing/test/mocks/sharing.ts +18 -0
  284. package/packages/arcgis-rest-sharing/tsconfig.json +6 -0
  285. package/packages/arcgis-rest-users/README.md +74 -0
  286. package/packages/arcgis-rest-users/package-lock.json +11 -0
  287. package/packages/arcgis-rest-users/package.json +54 -0
  288. package/packages/arcgis-rest-users/src/get.ts +69 -0
  289. package/packages/arcgis-rest-users/src/index.ts +6 -0
  290. package/packages/arcgis-rest-users/src/invitation.ts +166 -0
  291. package/packages/arcgis-rest-users/src/notification.ts +73 -0
  292. package/packages/arcgis-rest-users/test/get.test.ts +99 -0
  293. package/packages/arcgis-rest-users/test/invitation.test.ts +169 -0
  294. package/packages/arcgis-rest-users/test/mocks/invitation.ts +70 -0
  295. package/packages/arcgis-rest-users/test/mocks/notification.ts +34 -0
  296. package/packages/arcgis-rest-users/test/mocks/user.ts +173 -0
  297. package/packages/arcgis-rest-users/test/notification.test.ts +83 -0
  298. package/packages/arcgis-rest-users/tsconfig.json +6 -0
  299. package/support/changelog.js +394 -0
  300. package/support/deploy-doc-site.js +16 -0
  301. package/support/dev.sh +6 -0
  302. package/support/publish.sh +43 -0
  303. package/support/test-helpers.js +8 -0
  304. package/tsconfig.json +69 -0
  305. package/tslint.json +16 -0
  306. package/umd-base-profile.js +82 -0
  307. package/umd-production-profile.js +13 -0
@@ -0,0 +1,259 @@
1
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ import { ILayerDefinition } from "@esri/arcgis-rest-common-types";
5
+ import { cvdServiceFields } from "./fields";
6
+
7
+ export const getFeatureServiceResponse: ILayerDefinition = {
8
+ currentVersion: 10.6,
9
+ id: 0,
10
+ name: "Service Requests",
11
+ parentLayerId: -1,
12
+ defaultVisibility: true,
13
+ minScale: 0,
14
+ maxScale: 0,
15
+ type: "Feature Layer",
16
+ geometryType: "esriGeometryPoint",
17
+ description:
18
+ "A request for service or incident reported by the general public or other interested party",
19
+ copyrightText: "",
20
+ editFieldsInfo: null,
21
+ ownershipBasedAccessControlForFeatures: null,
22
+ syncCanReturnChanges: false,
23
+ relationships: [
24
+ {
25
+ id: 0,
26
+ name: "ss6.gdb.ServiceRequestComment",
27
+ relatedTableId: 1,
28
+ cardinality: "esriRelCardinalityOneToMany",
29
+ role: "esriRelRoleOrigin",
30
+ keyField: "requestid",
31
+ composite: true
32
+ }
33
+ ],
34
+ isDataVersioned: false,
35
+ supportsRollbackOnFailureParameter: false,
36
+ archivingInfo: {
37
+ supportsQueryWithHistoricMoment: false,
38
+ startArchivingMoment: -1
39
+ },
40
+ supportsStatistics: true,
41
+ supportsAdvancedQueries: true,
42
+ supportsValidateSQL: true,
43
+ supportsCalculate: true,
44
+ advancedQueryCapabilities: {
45
+ supportsPagination: true,
46
+ supportsTrueCurve: true,
47
+ supportsQueryWithDistance: true,
48
+ supportsReturningQueryExtent: true,
49
+ supportsStatistics: true,
50
+ supportsOrderBy: true,
51
+ supportsDistinct: true,
52
+ supportsSqlExpression: true
53
+ },
54
+ extent: {
55
+ xmin: -1.4842597721444273e7,
56
+ ymin: -7250478.783951572,
57
+ xmax: -4823845.204923232,
58
+ ymax: 1.3760961797220282e7,
59
+ spatialReference: {
60
+ wkid: 102100,
61
+ latestWkid: 3857
62
+ }
63
+ },
64
+ drawingInfo: {
65
+ renderer: {
66
+ type: "uniqueValue",
67
+ field1: "status",
68
+ field2: null,
69
+ field3: null,
70
+ defaultSymbol: null,
71
+ defaultLabel: null,
72
+ uniqueValueInfos: [
73
+ {
74
+ symbol: {
75
+ type: "esriPMS",
76
+ url: "503e8080ea4466250bb86ab805526668",
77
+ imageData:
78
+ "iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAA+NJREFUOI211V9IW1ccwPHvvTd3iYnx/7BBsRPihObBSIJBO6l1LWipy1pBZH0SYWWjhbUPlZRaWHENvvSpc7BRSukenIwWKa0rpamta0Uw4EsmoYLW6qITTaIxJpp77x5sbUOtFcZ+T+cfn3POjx/n6PifQrfT5D+Qm4Jjot3ewsaGVUulsgUIA3+pweBvAvRbIL5rOABSnsXSoUAnoZBBHR9H2r8fKTcXdXGxQBkeLgPclJdHQgsL5yxLS798EJ6FLMnhGFD9/hrp8GEyOzsxlJYi6vVba5R4nMTz58R6e3PUYPDnOZutQR8IfJULyW3hKdBJLtdDdWTEafR4yKqvR5Ckd24kGY2YKirI2LePaH8/iZ6e40mHoxe//9i2sKG21qsODTlN58+TdegQAOraGqtjYyRHR1Hm59EVF6N3OjFWVCDKMjnNzUSARE/Pl3M22zd7AoGf0uC/YY82MfGdrqkJ88GDAKzPzxPu7kYdG9vafB1Y7+sjXl9P3unT6LKzyXa7Wff70SKR7hDcsEB8C5bq6r5VBgd1mW43giShrK4S7upCDQTeSQWA4vOxBBR0dCDKMpmtrSyfOWMWrNbjTEz8+iYVstwq7N2LoaQEgNWRkfeib+PxhgYynU4MZWUs6/VIZWXtabC2sFAkV1cj6DaHEo8f74i+juToKJlOJ5LRiFRdjZZMfpqWY2162iC6XK86GsrQ0K7g1MzMVlvMz0eZmTGnwUJJyYa6srJZrIKA6HCg+v0fhKXCwq22Gg4jZGWtpcGixbK04fdbtLY2BEnCUF9PfBew3uncRJNJlKdPkY8eDaXBUmGhLzUwcCI5O4uhpARTTQ1rFgtaKPReVLTbMdntACQmJyGZRDAaf0+D1VDoByEv78TqvXsYTp7crM+uLqIXLmyLizYbuR0diBkZaIpC7PZthPJyRb1588c0+OP798cX29sHk9eu1a1UVmJ2ucgoLUXu6WH12TMSPh+q349UW4vhwAFMLheSyQTAss+H8uAB+ra2G/nBYDgNBtDm5prkpqbZmMeThdeLuapq8+SNjWQ3NoKmgSC8Wa8orDx6RNzrRW5pmZ67fv3r13NpcMHdu7HI2bNVuN2jMY8nc72lBdORI+iLijYfo1eolkqRmJ4m1t9P6s4dPmptnQMqbaBsCwPkXLkSjHg8xWJx8cP1W7cc4b4+hPJyZIcD0WxGjUbZGB5Ge/ECwWrVMk6d+iN69eoXn0DqbWfbhz7H640CzuilS5+pkcj3qZcvq1JTU0ZtclIUrFZFrq5ekZqbnwgGw7mcy5eD2xk7fk3ZFy/+CXyeNrhD+e0a/i/xL6dZgxFzQIDxAAAAAElFTkSuQmCC",
79
+ contentType: "image/png",
80
+ width: 16,
81
+ height: 16,
82
+ angle: 0,
83
+ xoffset: 0,
84
+ yoffset: 0
85
+ },
86
+ value: "Unassigned",
87
+ label: "Unassigned",
88
+ description: ""
89
+ },
90
+ {
91
+ symbol: {
92
+ type: "esriPMS",
93
+ url: "00591bb6a81be2ce27412c3521fc5c66",
94
+ imageData:
95
+ "iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAAA8pJREFUOI211W9oG2UcB/Dv3XOXuySXJk3aNbe1a0sTMxmWbi0dyl4URRioqx1TRyeoKAOFib6Z+MIXvpDhaxGhDraCjI0KUkEmlo0gQ9hwMCqti422zWyTluXSNJf0/j6PL7rFHku7gfiDg4d7Hj7P7/f8jucE/E8h7DS5eh7NjoURnnS+ClgJBjPMcVIJDLPUzV/mLEyqp1F7bHhmDCTKSx+5Nj4BTJm6iyBSCkRUQG29xbUySQDD8EfX8ue0M+o7+PqR8NIFNBFXvUKd/DNETkHpOAy5uQ28INbXuLYFQ1uGnktHqK2NFc6pR6RKfrT5Q5gN4YWzEAhVr1InPxCID6Opuxccxz9UERF9CLZ1wd/yOsrZmzCKU8fMcOclYHGkISzHO89Sa3EgqA6jqbsPAEAdC9XCPMziHFy7DEGKQWpJILCrCzwREEk9jbUMYBSnXi6cj74bf0v7ygMvjyHO7MoHQqAPoa5eAIBVKaF0ZxLUXqxvbllZWJUbqC2nEN1/FIIcQDgxCGv9DzDX+jz/BcbV06jVYeJLvOeaWUHZexwcx8O1TJRmJ0DdfIP2Aq6ZgTbzPVr6joMnApS9Q1j/czzE+dVjQP6bLUdBTnBcFHJzGwCgupzZFt2K11YXoKgJyNHdWP8LIGLb2x6Yuet7RCVZb5ZR/G1H9EGY97JQ1ASI6APxpcCY/oTnjJmrybz45JZsso8FO2axPuZFBa55L+SBORK1qWNI/y7q9DRtuyBiuD6mtg6Olzc8MO+LanZ1XmWMguN4yNFe1FYeDUux5Cbq2HDNDMRgf94DE1/rNac2c9IsFyFHWhHcsw8bqz+BMXMbcrOqYLwbAGCUVu5XLn3rgalR+YzjpJPVu7cgR45sfp+pN1HOXGiI80RF875h8IIPjFHod6+DI6pLjV++9MCtb9z6vXh5KG2upYcqf/cg1J6EPxqHeOB9VJfuwNCmQe1FECkBOfYUgrtTIL7NlqzPT8M1MpAiQ+Ox1/IlDwwArJx+SQz0Lem5i03AKELtyc3Mew4i3HPwoawZo6gsTKNWmIQY6s8VyulTD+Y8cMsp6GvfqYPg7F/13EXFKh1CsKMfUjjmuYwYozBKK9BzN+HUbsOnHCogQA7sH4XbEAaAyMiVzNqlZ9v5WPtVS0v3l2ZvgCMqxGA3eEEGtauw9TkwpoEjUeaPPf9jeW7qaNfHcLY6DS/6yIlrZQAD5R9eOUwt/VNnQxt0jKUAsws85+twRSVZIf5dP3OifCby4kSmkbHjryn8wsR1AM9532bvPzvHjvB/iX8A1b6J7VdrDTIAAAAASUVORK5CYII=",
96
+ contentType: "image/png",
97
+ width: 16,
98
+ height: 16,
99
+ angle: 0,
100
+ xoffset: 0,
101
+ yoffset: 0
102
+ },
103
+ value: "Assigned",
104
+ label: "Assigned",
105
+ description: ""
106
+ },
107
+ {
108
+ symbol: {
109
+ type: "esriPMS",
110
+ url: "cd72b6fbdc1352015a7112f734f28806",
111
+ imageData:
112
+ "iVBORw0KGgoAAAANSUhEUgAAABYAAAAWCAYAAADEtGw7AAAAAXNSR0IB2cksfwAAAAlwSFlzAAAOxAAADsQBlSsOGwAABDpJREFUOI211VtM01ccB/Bv++feYikUuoKWlqvAQqmlYiHEFSgCkWHCZLppFjCLwekiYR1DWXaDEOKYDzr2QMgu4MIkCyDKgHIZ2aCClIvKihSllEEtLRak3Ayle9hoaAZIsuz3dHLOL59zzfnZ4X8Ku50GGwdKgqYNC5c1Om28ft5AN5rmHdxdaatebp6GfUzvRm9Pr8+Sw8/rdg3L1JVOT0aUt6/V/xCnMg2THMmO4HnGgEn3gNY4a9c23kQxW1az+YzYsxWyj3/KSvj8bRKJZNkRvvPgK05nZ2t/9YPv6SKWBDlvvIdgPy6cnB2tOYuLS/hjVIXypmpycfMXJ3XPDNF1/WURxw6cm9sSlo1ec2nv7h2oeVjplpuQj7SEOBAE8a8dUSguEPJ54IWFoupWPSp6ynyzkD1osVi4Gyu3gUdVGlnNw0q3DyWXkJaYAABYXl5Gl2IQ8uE+aI06sD33IiY8ElE8Hhwc7JGZng4AqOgp82W6M24AeMsGvtP3paD0Vnl0HDsVR+PFAICpaR0uV5RA9XzQOvnQLNAwchMHO+NQcOYCPOg0nHo9DXdVCjQpfn1TNvjNRUlE9owVnjQYijRLj/BJkhQEQcBkWkR+eSEem4a3ul/06tpRWAGUvJ8HBwd7vJt0Ahd/zCFrZsWfAjhnhR9PaUQsJ18EcNkAgI67Pduim/GeoSTECiMRGhQIguSISd10is1RqPWTVCFHBDu7v7uaFZ07ohvRdb8PscJIUCgu4DFEmJnTM2xgzfMxMp8bCgCwWCwYMPy2K1ij/9PaZtE9oDPOOtrA3lTu+tziAhkASCQSQugCKI2Kl8IsOtPa1s8bQafSXtjAHC+f5YEJBcVszgRBEEiMiIOy4+WwKCwSALCyvIohfRfSw08ZbeAAlm9/w0hNrHpyCv4cNhJE0ajqYmH2hXZbNHBPBGIEEQCAR0/Gsbq+CjaT1WYDv+LFLKTZs5pr2hqRl3UW7nQarmQWQvptwZa4PzUMRWfy4OzsDLPZjMrmWgRSwyzeDNciGzhdKG25Wpej/Pr3qyFRcj7E0VEIDuDiuw/K0CrvRstgO5RGBfiMWBwRHIb4UBSoVAoAoL61HXKtDNKEj9pS+HmjNjAA7PfzFx/RpasLavOdClGM10QH4U6nISMlGRkpybBYLCCRSNZ8s9mM220dKG0txonwd5757Q9L3RizgZPDz+vqBkoPA+gsqM13SlVm4Hh8Cjj7fEAQhBVdW1vD2LgGN5rq0a5pwPFXT8+J+DyBhHN6ZUsYAI7xc3t/uX+dE8Bkd1T1VIc0jNwElxIMvq8AbhRXGBbmcU8th3ZlAmyXYOSIpd1BgWyJJOjC0mZny4/+n6oQ+vO9K4lPZ3QFY9qJA6qnaudp0ziZvSdg/RA3xuTvc1K+18Pz0lFhbv9Wxo6lKV0obQHQsrmvB9s/v13D/yX+AiKnlMyVeu3hAAAAAElFTkSuQmCC",
113
+ contentType: "image/png",
114
+ width: 16,
115
+ height: 16,
116
+ angle: 0,
117
+ xoffset: 0,
118
+ yoffset: 0
119
+ },
120
+ value: "Closed",
121
+ label: "Closed",
122
+ description: ""
123
+ }
124
+ ],
125
+ fieldDelimiter: ","
126
+ },
127
+ transparency: 0,
128
+ labelingInfo: null
129
+ },
130
+ hasM: false,
131
+ hasZ: false,
132
+ allowGeometryUpdates: true,
133
+ allowTrueCurvesUpdates: false,
134
+ onlyAllowTrueCurveUpdatesByTrueCurveClients: true,
135
+ hasAttachments: true,
136
+ supportsAttachmentsByUploadId: true,
137
+ supportsApplyEditsWithGlobalIds: false,
138
+ htmlPopupType: "esriServerHTMLPopupTypeAsHTMLText",
139
+ objectIdField: "objectid",
140
+ globalIdField: "globalid",
141
+ displayField: "name",
142
+ typeIdField: "status",
143
+ subtypeField: "",
144
+ fields: cvdServiceFields,
145
+ indexes: [
146
+ {
147
+ name: "i99requestid",
148
+ fields: "requestid",
149
+ isAscending: true,
150
+ isUnique: false,
151
+ description: ""
152
+ },
153
+ {
154
+ name: "a11_ix1",
155
+ fields: "shape",
156
+ isAscending: true,
157
+ isUnique: true,
158
+ description: ""
159
+ }
160
+ ],
161
+ dateFieldsTimeReference: {
162
+ timeZone: "UTC",
163
+ respectsDaylightSaving: false
164
+ },
165
+ types: [
166
+ {
167
+ id: "Unassigned",
168
+ name: "Unassigned",
169
+ domains: {
170
+ requesttype: { type: "inherited" },
171
+ status: { type: "inherited" }
172
+ },
173
+ templates: [
174
+ {
175
+ name: "Unassigned",
176
+ description: "",
177
+ prototype: {
178
+ attributes: {
179
+ requestdate: null,
180
+ floor: null,
181
+ requestid: null,
182
+ requesttype: null,
183
+ comments: null,
184
+ name: null,
185
+ phone: null,
186
+ email: null,
187
+ status: "Unassigned",
188
+ building: null
189
+ }
190
+ },
191
+ drawingTool: "esriFeatureEditToolPoint"
192
+ }
193
+ ]
194
+ },
195
+ {
196
+ id: "Assigned",
197
+ name: "Assigned",
198
+ domains: {
199
+ requesttype: { type: "inherited" },
200
+ status: { type: "inherited" }
201
+ },
202
+ templates: [
203
+ {
204
+ name: "Assigned",
205
+ description: "",
206
+ prototype: {
207
+ attributes: {
208
+ building: null,
209
+ floor: null,
210
+ requestid: null,
211
+ requesttype: null,
212
+ comments: null,
213
+ name: null,
214
+ phone: null,
215
+ email: null,
216
+ requestdate: null,
217
+ status: "Assigned"
218
+ }
219
+ },
220
+ drawingTool: "esriFeatureEditToolPoint"
221
+ }
222
+ ]
223
+ },
224
+ {
225
+ id: "Closed",
226
+ name: "Closed",
227
+ domains: {
228
+ requesttype: { type: "inherited" },
229
+ status: { type: "inherited" }
230
+ },
231
+ templates: [
232
+ {
233
+ name: "Closed",
234
+ description: "",
235
+ prototype: {
236
+ attributes: {
237
+ building: null,
238
+ floor: null,
239
+ requestid: null,
240
+ requesttype: null,
241
+ comments: null,
242
+ name: null,
243
+ phone: null,
244
+ email: null,
245
+ requestdate: null,
246
+ status: "Closed"
247
+ }
248
+ },
249
+ drawingTool: "esriFeatureEditToolPoint"
250
+ }
251
+ ]
252
+ }
253
+ ],
254
+ templates: [],
255
+ maxRecordCount: 1000,
256
+ supportedQueryFormats: "JSON, AMF, geoJSON",
257
+ capabilities: "Create,Delete,Query,Update,Uploads,Editing",
258
+ useStandardizedQueries: true
259
+ };
@@ -0,0 +1,140 @@
1
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ import {
5
+ getFeature,
6
+ queryFeatures,
7
+ queryRelated,
8
+ IQueryFeaturesRequestOptions,
9
+ IQueryRelatedRequestOptions
10
+ } from "../src/index";
11
+
12
+ import * as fetchMock from "fetch-mock";
13
+
14
+ import {
15
+ featureResponse,
16
+ queryResponse,
17
+ queryRelatedResponse
18
+ } from "./mocks/feature";
19
+
20
+ const serviceUrl =
21
+ "https://services.arcgis.com/f8b/arcgis/rest/services/Custom/FeatureServer/0";
22
+
23
+ describe("getFeature() and queryFeatures()", () => {
24
+ afterEach(fetchMock.restore);
25
+
26
+ it("should return a feature by id", done => {
27
+ const requestOptions = {
28
+ url: serviceUrl,
29
+ id: 42
30
+ };
31
+ fetchMock.once("*", featureResponse);
32
+ getFeature(requestOptions)
33
+ .then(response => {
34
+ expect(fetchMock.called()).toBeTruthy();
35
+ const [url, options]: [string, RequestInit] = fetchMock.lastCall("*");
36
+ expect(url).toEqual(`${requestOptions.url}/42?f=json`);
37
+ expect(options.method).toBe("GET");
38
+ expect(response.attributes.FID).toEqual(42);
39
+ done();
40
+ })
41
+ .catch(e => {
42
+ fail(e);
43
+ });
44
+ });
45
+
46
+ it("should supply default query parameters", done => {
47
+ const requestOptions: IQueryFeaturesRequestOptions = {
48
+ url: serviceUrl
49
+ };
50
+ fetchMock.once("*", queryResponse);
51
+ queryFeatures(requestOptions)
52
+ .then(() => {
53
+ expect(fetchMock.called()).toBeTruthy();
54
+ const [url, options]: [string, RequestInit] = fetchMock.lastCall("*");
55
+ expect(url).toEqual(
56
+ `${requestOptions.url}/query?f=json&where=1%3D1&outFields=*`
57
+ );
58
+ expect(options.method).toBe("GET");
59
+ done();
60
+ })
61
+ .catch(e => {
62
+ fail(e);
63
+ });
64
+ });
65
+
66
+ it("should use passed in query parameters", done => {
67
+ const requestOptions: IQueryFeaturesRequestOptions = {
68
+ url: serviceUrl,
69
+ where: "Condition='Poor'",
70
+ outFields: ["FID", "Tree_ID", "Cmn_Name", "Condition"]
71
+ };
72
+ fetchMock.once("*", queryResponse);
73
+ queryFeatures(requestOptions)
74
+ .then(() => {
75
+ expect(fetchMock.called()).toBeTruthy();
76
+ const [url, options]: [string, RequestInit] = fetchMock.lastCall("*");
77
+ expect(url).toEqual(
78
+ `${
79
+ requestOptions.url
80
+ }/query?f=json&where=Condition%3D'Poor'&outFields=FID%2CTree_ID%2CCmn_Name%2CCondition`
81
+ );
82
+ expect(options.method).toBe("GET");
83
+ // expect(response.attributes.FID).toEqual(42);
84
+ done();
85
+ })
86
+ .catch(e => {
87
+ fail(e);
88
+ });
89
+ });
90
+
91
+ it("should supply default query related parameters", done => {
92
+ const requestOptions: IQueryRelatedRequestOptions = {
93
+ url: serviceUrl
94
+ };
95
+ fetchMock.once("*", queryRelatedResponse);
96
+ queryRelated(requestOptions)
97
+ .then(() => {
98
+ expect(fetchMock.called()).toBeTruthy();
99
+ const [url, options]: [string, RequestInit] = fetchMock.lastCall("*");
100
+ expect(url).toEqual(
101
+ `${
102
+ requestOptions.url
103
+ }/queryRelatedRecords?f=json&definitionExpression=1%3D1&outFields=*&relationshipId=0`
104
+ );
105
+ expect(options.method).toBe("GET");
106
+ done();
107
+ })
108
+ .catch(e => {
109
+ fail(e);
110
+ });
111
+ });
112
+
113
+ it("should use passed in query related parameters", done => {
114
+ const requestOptions: IQueryRelatedRequestOptions = {
115
+ url: serviceUrl,
116
+ relationshipId: 1,
117
+ definitionExpression: "APPROXACRE<10000",
118
+ outFields: ["APPROXACRE", "FIELD_NAME"],
119
+ httpMethod: "POST"
120
+ };
121
+ fetchMock.once("*", queryRelatedResponse);
122
+ queryRelated(requestOptions)
123
+ .then(() => {
124
+ expect(fetchMock.called()).toBeTruthy();
125
+ const [url, options]: [string, RequestInit] = fetchMock.lastCall("*");
126
+ expect(url).toEqual(`${requestOptions.url}/queryRelatedRecords`);
127
+ expect(options.method).toBe("POST");
128
+ expect(options.body).toContain("f=json");
129
+ expect(options.body).toContain("relationshipId=1");
130
+ expect(options.body).toContain(
131
+ "definitionExpression=APPROXACRE%3C10000"
132
+ );
133
+ expect(options.body).toContain("outFields=APPROXACRE%2CFIELD_NAME");
134
+ done();
135
+ })
136
+ .catch(e => {
137
+ fail(e);
138
+ });
139
+ });
140
+ });
@@ -0,0 +1,6 @@
1
+ {
2
+ "extends": "../../tsconfig.json",
3
+ "include": [
4
+ "src/**/*.ts"
5
+ ]
6
+ }
@@ -0,0 +1,69 @@
1
+ [![npm version][npm-img]][npm-url]
2
+ [![build status][travis-img]][travis-url]
3
+ [![Coverage Status][coverage-img]][coverage-url]
4
+ [![apache licensed](https://img.shields.io/badge/license-Apache-green.svg?style=flat-square)](https://raw.githubusercontent.com/Esri/arcgis-rest-js/master/LICENSE)
5
+
6
+ [npm-img]: https://img.shields.io/npm/v/@esri/arcgis-rest-feature-service-admin.svg?style=flat-square
7
+ [npm-url]: https://www.npmjs.com/package/@esri/arcgis-rest-feature-service-admin
8
+ [travis-img]: https://img.shields.io/travis/Esri/arcgis-rest-js/master.svg?style=flat-square
9
+ [travis-url]: https://travis-ci.org/Esri/arcgis-rest-js
10
+ [coverage-img]: https://coveralls.io/repos/github/Esri/arcgis-rest-js/badge.svg
11
+ [coverage-url]: https://coveralls.io/github/Esri/arcgis-rest-js
12
+
13
+ # @esri/arcgis-rest-feature-service-admin
14
+
15
+ > A module for administering ArcGIS feature services that runs in Node.js and modern browsers.
16
+
17
+ ### Example
18
+
19
+ ```bash
20
+ npm install @esri/arcgis-rest-request
21
+ npm install @esri/arcgis-rest-auth
22
+ npm install @esri/arcgis-rest-items
23
+ npm install @esri/arcgis-rest-feature-service-admin
24
+ ```
25
+
26
+ ```js
27
+ import { createFeatureService } from '@esri/arcgis-rest-feature-service-admin';
28
+
29
+ createFeatureService({
30
+ authentication,
31
+ item: { name: "GreenField" }
32
+ })
33
+ ```
34
+
35
+ ### [API Reference](https://esri.github.io/arcgis-rest-js/api/feature-service-admin/)
36
+
37
+ ### Issues
38
+
39
+ If something isn't working the way you expected, please take a look at [previously logged issues](https://github.com/Esri/arcgis-rest-js/issues) first. Have you found a new bug? Want to request a new feature? We'd [**love**](https://github.com/Esri/arcgis-rest-js/issues/new) to hear from you.
40
+
41
+ If you're looking for help you can also post issues on [GIS Stackexchange](http://gis.stackexchange.com/questions/ask?tags=esri-oss).
42
+
43
+ ### Versioning
44
+
45
+ For transparency into the release cycle and in striving to maintain backward compatibility, @esri/arcgis-rest-js is maintained under Semantic Versioning guidelines and will adhere to these rules whenever possible.
46
+
47
+ For more information on SemVer, please visit <http://semver.org/>.
48
+
49
+ ### Contributing
50
+
51
+ Esri welcomes contributions from anyone and everyone. Please see our [guidelines for contributing](CONTRIBUTING.md).
52
+
53
+ ### License
54
+
55
+ Copyright &copy; 2018 Esri
56
+
57
+ Licensed under the Apache License, Version 2.0 (the "License");
58
+ you may not use this file except in compliance with the License.
59
+ You may obtain a copy of the License at
60
+
61
+ > http://www.apache.org/licenses/LICENSE-2.0
62
+
63
+ Unless required by applicable law or agreed to in writing, software
64
+ distributed under the License is distributed on an "AS IS" BASIS,
65
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
66
+ See the License for the specific language governing permissions and
67
+ limitations under the License.
68
+
69
+ A copy of the license is available in the repository's [LICENSE](../../LICENSE) file.
@@ -0,0 +1,11 @@
1
+ {
2
+ "requires": true,
3
+ "lockfileVersion": 1,
4
+ "dependencies": {
5
+ "tslib": {
6
+ "version": "1.9.3",
7
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.9.3.tgz",
8
+ "integrity": "sha512-4krF8scpejhaOgqzBEcGM7yDIEfi0/8+8zDRZhNZZ2kjmHJ4hv3zCbQWxoJGz1iw5U0Jl0nma13xzHXcncMavQ=="
9
+ }
10
+ }
11
+ }
@@ -0,0 +1,56 @@
1
+ {
2
+ "name": "@esri/arcgis-rest-feature-service-admin",
3
+ "version": "1.14.1",
4
+ "description": "Feature service administration helpers for @esri/arcgis-rest-request",
5
+ "main": "dist/node/index.js",
6
+ "browser": "dist/umd/feature-service-admin.umd.js",
7
+ "module": "dist/esm/index.js",
8
+ "js:next": "dist/esm/index.js",
9
+ "types": "dist/esm/index.d.ts",
10
+ "license": "Apache-2.0",
11
+ "files": [
12
+ "dist/**"
13
+ ],
14
+ "dependencies": {
15
+ "tslib": "^1.7.1"
16
+ },
17
+ "devDependencies": {
18
+ "@esri/arcgis-rest-auth": "^1.14.1",
19
+ "@esri/arcgis-rest-common-types": "^1.14.1",
20
+ "@esri/arcgis-rest-items": "^1.14.1",
21
+ "@esri/arcgis-rest-request": "^1.14.1"
22
+ },
23
+ "peerDependencies": {
24
+ "@esri/arcgis-rest-auth": "^1.14.1",
25
+ "@esri/arcgis-rest-common-types": "^1.14.1",
26
+ "@esri/arcgis-rest-items": "^1.14.1",
27
+ "@esri/arcgis-rest-request": "^1.14.1"
28
+ },
29
+ "scripts": {
30
+ "prepare": "npm run build",
31
+ "build": "npm run build:node && npm run build:umd && npm run build:esm",
32
+ "build:esm": "tsc -p ./tsconfig.json --module es2015 --outDir ./dist/esm --declaration",
33
+ "build:umd": "rollup -c ../../umd-base-profile.js && rollup -c ../../umd-production-profile.js",
34
+ "build:node": "tsc -p ./tsconfig.json --module commonjs --outDir ./dist/node",
35
+ "dev:esm": "tsc -w --module es2015 --outDir ./dist/esm --declaration",
36
+ "dev:umd": "rollup -w -c ../../umd-base-profile.js",
37
+ "dev:node": "tsc -w --module commonjs --outDir ./dist/node"
38
+ },
39
+ "publishConfig": {
40
+ "access": "public"
41
+ },
42
+ "repository": {
43
+ "type": "git",
44
+ "url": "git+https://github.com/Esri/arcgis-rest-js.git"
45
+ },
46
+ "contributors": [
47
+ {
48
+ "name": "Mike Tschudi",
49
+ "email": "mtschudi@esri.com"
50
+ }
51
+ ],
52
+ "bugs": {
53
+ "url": "https://github.com/Esri/arcgis-rest-js/issues"
54
+ },
55
+ "homepage": "https://github.com/Esri/arcgis-rest-js#readme"
56
+ }
@@ -0,0 +1,74 @@
1
+ /* Copyright (c) 2018 Environmental Systems Research Institute, Inc.
2
+ * Apache-2.0 */
3
+
4
+ import { request } from "@esri/arcgis-rest-request";
5
+ import { IUserRequestOptions } from "@esri/arcgis-rest-auth";
6
+ import {
7
+ ILayer,
8
+ ILayerDefinition,
9
+ ITable
10
+ } from "@esri/arcgis-rest-common-types";
11
+
12
+ export interface IAddToServiceDefinitionRequestOptions
13
+ extends IUserRequestOptions {
14
+ /**
15
+ * Layers to add
16
+ */
17
+ layers?: ILayer[] | ILayerDefinition[];
18
+ /**
19
+ * Tables to add
20
+ */
21
+ tables?: ITable[];
22
+ }
23
+
24
+ export interface IAddToServiceDefinitionItemSummary {
25
+ name: string;
26
+ id: any;
27
+ }
28
+
29
+ export interface IAddToServiceDefinitionResult {
30
+ layers?: IAddToServiceDefinitionItemSummary[];
31
+ tables?: IAddToServiceDefinitionItemSummary[];
32
+ success: boolean;
33
+ }
34
+
35
+ /**
36
+ * Add layer(s) and/or table(s) to a hosted feature service.
37
+ *
38
+ * ```js
39
+ * import { addToServiceDefinition } from '@esri/arcgis-rest-feature-service-admin';
40
+ *
41
+ * addToServiceDefinition(serviceurl, {
42
+ * authentication: userSession,
43
+ * layers: [],
44
+ * tables: []
45
+ * });
46
+ * ```
47
+ *
48
+ * @param url - URL of feature service
49
+ * @param requestOptions - Options for the request
50
+ * @returns A Promise that resolves with service layer and/or table details once the definition
51
+ * has been updated
52
+ */
53
+ export function addToServiceDefinition(
54
+ url: string,
55
+ requestOptions: IAddToServiceDefinitionRequestOptions
56
+ ): Promise<IAddToServiceDefinitionResult> {
57
+ const adminUrl =
58
+ url.replace("/rest/services", "/rest/admin/services") + "/addToDefinition";
59
+
60
+ requestOptions.params = {
61
+ addToDefinition: {},
62
+ ...requestOptions.params
63
+ };
64
+
65
+ if (requestOptions.layers && requestOptions.layers.length > 0) {
66
+ requestOptions.params.addToDefinition.layers = requestOptions.layers;
67
+ }
68
+
69
+ if (requestOptions.tables && requestOptions.tables.length > 0) {
70
+ requestOptions.params.addToDefinition.tables = requestOptions.tables;
71
+ }
72
+
73
+ return request(adminUrl, requestOptions);
74
+ }