breeze-client 2.1.3-mjs → 2.1.4

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 (394) hide show
  1. package/README.md +18 -5
  2. package/adapter-ajax-angularjs/{index.d.ts → breeze-client-adapter-ajax-angularjs.d.ts} +0 -1
  3. package/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.metadata.json +1 -0
  4. package/adapter-ajax-angularjs/package.json +13 -0
  5. package/adapter-ajax-fetch/{index.d.ts → breeze-client-adapter-ajax-fetch.d.ts} +0 -1
  6. package/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.metadata.json +1 -0
  7. package/adapter-ajax-fetch/package.json +13 -0
  8. package/adapter-ajax-httpclient/{index.d.ts → breeze-client-adapter-ajax-httpclient.d.ts} +0 -1
  9. package/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.metadata.json +1 -0
  10. package/adapter-ajax-httpclient/package.json +13 -0
  11. package/adapter-ajax-jquery/{index.d.ts → breeze-client-adapter-ajax-jquery.d.ts} +0 -1
  12. package/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.metadata.json +1 -0
  13. package/adapter-ajax-jquery/package.json +13 -0
  14. package/adapter-ajax-post/{index.d.ts → breeze-client-adapter-ajax-post.d.ts} +0 -1
  15. package/adapter-ajax-post/breeze-client-adapter-ajax-post.metadata.json +1 -0
  16. package/adapter-ajax-post/package.json +13 -0
  17. package/adapter-data-service-odata/{index.d.ts → breeze-client-adapter-data-service-odata.d.ts} +0 -1
  18. package/adapter-data-service-odata/breeze-client-adapter-data-service-odata.metadata.json +1 -0
  19. package/adapter-data-service-odata/package.json +13 -0
  20. package/adapter-data-service-webapi/{index.d.ts → breeze-client-adapter-data-service-webapi.d.ts} +0 -1
  21. package/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.metadata.json +1 -0
  22. package/adapter-data-service-webapi/package.json +13 -0
  23. package/adapter-model-library-backing-store/{index.d.ts → breeze-client-adapter-model-library-backing-store.d.ts} +0 -1
  24. package/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.metadata.json +1 -0
  25. package/adapter-model-library-backing-store/package.json +13 -0
  26. package/adapter-model-library-ko/{index.d.ts → breeze-client-adapter-model-library-ko.d.ts} +0 -1
  27. package/adapter-model-library-ko/breeze-client-adapter-model-library-ko.metadata.json +1 -0
  28. package/adapter-model-library-ko/package.json +13 -0
  29. package/adapter-uri-builder-json/{index.d.ts → breeze-client-adapter-uri-builder-json.d.ts} +0 -1
  30. package/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.metadata.json +1 -0
  31. package/adapter-uri-builder-json/package.json +13 -0
  32. package/adapter-uri-builder-odata/{index.d.ts → breeze-client-adapter-uri-builder-odata.d.ts} +0 -1
  33. package/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.metadata.json +1 -0
  34. package/adapter-uri-builder-odata/package.json +13 -0
  35. package/breeze-client.d.ts +8 -0
  36. package/breeze-client.metadata.json +1 -0
  37. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js +190 -0
  38. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js.map +1 -0
  39. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js +2 -0
  40. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js.map +1 -0
  41. package/bundles/breeze-client-adapter-ajax-fetch.umd.js +190 -0
  42. package/bundles/breeze-client-adapter-ajax-fetch.umd.js.map +1 -0
  43. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js +2 -0
  44. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js.map +1 -0
  45. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js +195 -0
  46. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js.map +1 -0
  47. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js +2 -0
  48. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js.map +1 -0
  49. package/bundles/breeze-client-adapter-ajax-jquery.umd.js +115 -0
  50. package/bundles/breeze-client-adapter-ajax-jquery.umd.js.map +1 -0
  51. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js +2 -0
  52. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js.map +1 -0
  53. package/bundles/breeze-client-adapter-ajax-post.umd.js +92 -0
  54. package/bundles/breeze-client-adapter-ajax-post.umd.js.map +1 -0
  55. package/bundles/breeze-client-adapter-ajax-post.umd.min.js +2 -0
  56. package/bundles/breeze-client-adapter-ajax-post.umd.min.js.map +1 -0
  57. package/bundles/breeze-client-adapter-data-service-odata.umd.js +743 -0
  58. package/bundles/breeze-client-adapter-data-service-odata.umd.js.map +1 -0
  59. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js +16 -0
  60. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js.map +1 -0
  61. package/bundles/breeze-client-adapter-data-service-webapi.umd.js +326 -0
  62. package/bundles/breeze-client-adapter-data-service-webapi.umd.js.map +1 -0
  63. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js +16 -0
  64. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js.map +1 -0
  65. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js +280 -0
  66. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js.map +1 -0
  67. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js +2 -0
  68. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js.map +1 -0
  69. package/bundles/breeze-client-adapter-model-library-ko.umd.js +252 -0
  70. package/bundles/breeze-client-adapter-model-library-ko.umd.js.map +1 -0
  71. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js +2 -0
  72. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js.map +1 -0
  73. package/bundles/breeze-client-adapter-uri-builder-json.umd.js +96 -0
  74. package/bundles/breeze-client-adapter-uri-builder-json.umd.js.map +1 -0
  75. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js +2 -0
  76. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js.map +1 -0
  77. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js +262 -0
  78. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js.map +1 -0
  79. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js +2 -0
  80. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js.map +1 -0
  81. package/bundles/breeze-client-mixin-get-entity-graph.umd.js +258 -0
  82. package/bundles/breeze-client-mixin-get-entity-graph.umd.js.map +1 -0
  83. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js +2 -0
  84. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js.map +1 -0
  85. package/bundles/breeze-client-mixin-save-queuing.umd.js +579 -0
  86. package/bundles/breeze-client-mixin-save-queuing.umd.js.map +1 -0
  87. package/bundles/breeze-client-mixin-save-queuing.umd.min.js +16 -0
  88. package/bundles/breeze-client-mixin-save-queuing.umd.min.js.map +1 -0
  89. package/bundles/breeze-client.umd.js +14098 -0
  90. package/bundles/breeze-client.umd.js.map +1 -0
  91. package/bundles/breeze-client.umd.min.js +16 -0
  92. package/bundles/breeze-client.umd.min.js.map +1 -0
  93. package/esm2015/adapter-ajax-angularjs/adapter-ajax-angularjs.js +130 -0
  94. package/esm2015/adapter-ajax-angularjs/adapter-core.js +49 -0
  95. package/esm2015/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +5 -0
  96. package/esm2015/adapter-ajax-fetch/adapter-ajax-fetch.js +130 -0
  97. package/esm2015/adapter-ajax-fetch/adapter-core.js +49 -0
  98. package/esm2015/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +5 -0
  99. package/esm2015/adapter-ajax-httpclient/adapter-ajax-httpclient.js +137 -0
  100. package/esm2015/adapter-ajax-httpclient/adapter-core.js +49 -0
  101. package/esm2015/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +5 -0
  102. package/esm2015/adapter-ajax-jquery/adapter-ajax-jquery.js +103 -0
  103. package/esm2015/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +5 -0
  104. package/esm2015/adapter-ajax-post/adapter-ajax-post.js +77 -0
  105. package/esm2015/adapter-ajax-post/breeze-client-adapter-ajax-post.js +5 -0
  106. package/esm2015/adapter-data-service-odata/adapter-core.js +49 -0
  107. package/esm2015/adapter-data-service-odata/adapter-data-service-odata.js +459 -0
  108. package/esm2015/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +5 -0
  109. package/esm2015/adapter-data-service-webapi/adapter-data-service-webapi.js +93 -0
  110. package/esm2015/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +5 -0
  111. package/esm2015/adapter-model-library-backing-store/adapter-model-library-backing-store.js +268 -0
  112. package/esm2015/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +5 -0
  113. package/esm2015/adapter-model-library-ko/adapter-model-library-ko.js +240 -0
  114. package/esm2015/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +5 -0
  115. package/esm2015/adapter-uri-builder-json/adapter-core.js +49 -0
  116. package/esm2015/adapter-uri-builder-json/adapter-uri-builder-json.js +36 -0
  117. package/esm2015/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +5 -0
  118. package/esm2015/adapter-uri-builder-odata/adapter-core.js +49 -0
  119. package/esm2015/adapter-uri-builder-odata/adapter-uri-builder-odata.js +192 -0
  120. package/esm2015/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +5 -0
  121. package/esm2015/breeze-client.js +9 -0
  122. package/esm2015/index.js +2 -0
  123. package/esm2015/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +5 -0
  124. package/esm2015/mixin-get-entity-graph/mixin-get-entity-graph.js +269 -0
  125. package/esm2015/mixin-save-queuing/breeze-client-mixin-save-queuing.js +5 -0
  126. package/esm2015/mixin-save-queuing/mixin-save-queuing.js +400 -0
  127. package/esm2015/src/abstract-data-service-adapter.js +296 -0
  128. package/esm2015/src/array.js +4 -0
  129. package/esm2015/src/assert-param.js +312 -0
  130. package/esm2015/src/breeze.js +85 -0
  131. package/esm2015/src/complex-array.js +119 -0
  132. package/esm2015/src/config.js +223 -0
  133. package/esm2015/src/core.js +709 -0
  134. package/esm2015/src/csdl-metadata-parser.js +385 -0
  135. package/esm2015/src/data-service.js +203 -0
  136. package/esm2015/src/data-type.js +444 -0
  137. package/esm2015/src/default-property-interceptor.js +460 -0
  138. package/esm2015/src/entity-action.js +45 -0
  139. package/esm2015/src/entity-aspect.js +806 -0
  140. package/esm2015/src/entity-group.js +187 -0
  141. package/esm2015/src/entity-key.js +116 -0
  142. package/esm2015/src/entity-manager.js +2094 -0
  143. package/esm2015/src/entity-metadata.js +2109 -0
  144. package/esm2015/src/entity-query.js +996 -0
  145. package/esm2015/src/entity-state.js +99 -0
  146. package/esm2015/src/enum.js +141 -0
  147. package/esm2015/src/event.js +256 -0
  148. package/esm2015/src/interface-registry.js +41 -0
  149. package/esm2015/src/key-generator.js +108 -0
  150. package/esm2015/src/local-query-comparison-options.js +65 -0
  151. package/esm2015/src/mapping-context.js +405 -0
  152. package/esm2015/src/naming-convention.js +88 -0
  153. package/esm2015/src/observable-array.js +185 -0
  154. package/esm2015/src/predicate.js +1235 -0
  155. package/esm2015/src/primitive-array.js +87 -0
  156. package/esm2015/src/query-options.js +152 -0
  157. package/esm2015/src/relation-array.js +175 -0
  158. package/esm2015/src/save-options.js +41 -0
  159. package/esm2015/src/unattached-children-map.js +58 -0
  160. package/esm2015/src/validate.js +991 -0
  161. package/esm2015/src/validation-options.js +64 -0
  162. package/esm5/adapter-ajax-angularjs/adapter-ajax-angularjs.js +132 -0
  163. package/esm5/adapter-ajax-angularjs/adapter-core.js +49 -0
  164. package/esm5/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +5 -0
  165. package/esm5/adapter-ajax-fetch/adapter-ajax-fetch.js +132 -0
  166. package/esm5/adapter-ajax-fetch/adapter-core.js +49 -0
  167. package/esm5/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +5 -0
  168. package/esm5/adapter-ajax-httpclient/adapter-ajax-httpclient.js +139 -0
  169. package/esm5/adapter-ajax-httpclient/adapter-core.js +49 -0
  170. package/esm5/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +5 -0
  171. package/esm5/adapter-ajax-jquery/adapter-ajax-jquery.js +105 -0
  172. package/esm5/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +5 -0
  173. package/esm5/adapter-ajax-post/adapter-ajax-post.js +81 -0
  174. package/esm5/adapter-ajax-post/breeze-client-adapter-ajax-post.js +5 -0
  175. package/esm5/adapter-data-service-odata/adapter-core.js +49 -0
  176. package/esm5/adapter-data-service-odata/adapter-data-service-odata.js +466 -0
  177. package/esm5/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +5 -0
  178. package/esm5/adapter-data-service-webapi/adapter-data-service-webapi.js +98 -0
  179. package/esm5/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +5 -0
  180. package/esm5/adapter-model-library-backing-store/adapter-model-library-backing-store.js +270 -0
  181. package/esm5/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +5 -0
  182. package/esm5/adapter-model-library-ko/adapter-model-library-ko.js +242 -0
  183. package/esm5/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +5 -0
  184. package/esm5/adapter-uri-builder-json/adapter-core.js +49 -0
  185. package/esm5/adapter-uri-builder-json/adapter-uri-builder-json.js +38 -0
  186. package/esm5/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +5 -0
  187. package/esm5/adapter-uri-builder-odata/adapter-core.js +49 -0
  188. package/esm5/adapter-uri-builder-odata/adapter-uri-builder-odata.js +197 -0
  189. package/esm5/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +5 -0
  190. package/esm5/breeze-client.js +9 -0
  191. package/esm5/index.js +2 -0
  192. package/esm5/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +5 -0
  193. package/esm5/mixin-get-entity-graph/mixin-get-entity-graph.js +269 -0
  194. package/esm5/mixin-save-queuing/breeze-client-mixin-save-queuing.js +5 -0
  195. package/esm5/mixin-save-queuing/mixin-save-queuing.js +412 -0
  196. package/esm5/src/abstract-data-service-adapter.js +302 -0
  197. package/esm5/src/array.js +4 -0
  198. package/esm5/src/assert-param.js +317 -0
  199. package/esm5/src/breeze.js +85 -0
  200. package/esm5/src/complex-array.js +119 -0
  201. package/esm5/src/config.js +228 -0
  202. package/esm5/src/core.js +717 -0
  203. package/esm5/src/csdl-metadata-parser.js +385 -0
  204. package/esm5/src/data-service.js +207 -0
  205. package/esm5/src/data-type.js +451 -0
  206. package/esm5/src/default-property-interceptor.js +460 -0
  207. package/esm5/src/entity-action.js +52 -0
  208. package/esm5/src/entity-aspect.js +812 -0
  209. package/esm5/src/entity-group.js +189 -0
  210. package/esm5/src/entity-key.js +118 -0
  211. package/esm5/src/entity-manager.js +2112 -0
  212. package/esm5/src/entity-metadata.js +2144 -0
  213. package/esm5/src/entity-query.js +1023 -0
  214. package/esm5/src/entity-state.js +106 -0
  215. package/esm5/src/enum.js +144 -0
  216. package/esm5/src/event.js +259 -0
  217. package/esm5/src/interface-registry.js +43 -0
  218. package/esm5/src/key-generator.js +111 -0
  219. package/esm5/src/local-query-comparison-options.js +67 -0
  220. package/esm5/src/mapping-context.js +407 -0
  221. package/esm5/src/naming-convention.js +90 -0
  222. package/esm5/src/observable-array.js +201 -0
  223. package/esm5/src/predicate.js +1300 -0
  224. package/esm5/src/primitive-array.js +87 -0
  225. package/esm5/src/query-options.js +167 -0
  226. package/esm5/src/relation-array.js +175 -0
  227. package/esm5/src/save-options.js +43 -0
  228. package/esm5/src/unattached-children-map.js +60 -0
  229. package/esm5/src/validate.js +996 -0
  230. package/esm5/src/validation-options.js +66 -0
  231. package/fesm2015/{breeze-client-adapter-ajax-angularjs.mjs → breeze-client-adapter-ajax-angularjs.js} +1 -1
  232. package/fesm2015/breeze-client-adapter-ajax-angularjs.js.map +1 -0
  233. package/fesm2015/{breeze-client-adapter-ajax-fetch.mjs → breeze-client-adapter-ajax-fetch.js} +3 -5
  234. package/fesm2015/breeze-client-adapter-ajax-fetch.js.map +1 -0
  235. package/fesm2015/{breeze-client-adapter-ajax-httpclient.mjs → breeze-client-adapter-ajax-httpclient.js} +1 -1
  236. package/fesm2015/breeze-client-adapter-ajax-httpclient.js.map +1 -0
  237. package/fesm2015/{breeze-client-adapter-ajax-jquery.mjs → breeze-client-adapter-ajax-jquery.js} +2 -2
  238. package/fesm2015/breeze-client-adapter-ajax-jquery.js.map +1 -0
  239. package/{fesm2020/breeze-client-adapter-ajax-post.mjs → fesm2015/breeze-client-adapter-ajax-post.js} +1 -1
  240. package/fesm2015/breeze-client-adapter-ajax-post.js.map +1 -0
  241. package/fesm2015/{breeze-client-adapter-data-service-odata.mjs → breeze-client-adapter-data-service-odata.js} +22 -20
  242. package/fesm2015/breeze-client-adapter-data-service-odata.js.map +1 -0
  243. package/fesm2015/{breeze-client-adapter-data-service-webapi.mjs → breeze-client-adapter-data-service-webapi.js} +13 -13
  244. package/fesm2015/breeze-client-adapter-data-service-webapi.js.map +1 -0
  245. package/{fesm2020/breeze-client-adapter-model-library-backing-store.mjs → fesm2015/breeze-client-adapter-model-library-backing-store.js} +13 -13
  246. package/fesm2015/breeze-client-adapter-model-library-backing-store.js.map +1 -0
  247. package/{fesm2020/breeze-client-adapter-model-library-ko.mjs → fesm2015/breeze-client-adapter-model-library-ko.js} +13 -13
  248. package/fesm2015/breeze-client-adapter-model-library-ko.js.map +1 -0
  249. package/{fesm2020/breeze-client-adapter-uri-builder-json.mjs → fesm2015/breeze-client-adapter-uri-builder-json.js} +8 -8
  250. package/fesm2015/breeze-client-adapter-uri-builder-json.js.map +1 -0
  251. package/{fesm2020/breeze-client-adapter-uri-builder-odata.mjs → fesm2015/breeze-client-adapter-uri-builder-odata.js} +86 -85
  252. package/fesm2015/breeze-client-adapter-uri-builder-odata.js.map +1 -0
  253. package/fesm2015/{breeze-client-mixin-get-entity-graph.mjs → breeze-client-mixin-get-entity-graph.js} +1 -1
  254. package/fesm2015/breeze-client-mixin-get-entity-graph.js.map +1 -0
  255. package/fesm2015/{breeze-client-mixin-save-queuing.mjs → breeze-client-mixin-save-queuing.js} +1 -1
  256. package/fesm2015/breeze-client-mixin-save-queuing.js.map +1 -0
  257. package/fesm2015/{breeze-client.mjs → breeze-client.js} +418 -409
  258. package/fesm2015/breeze-client.js.map +1 -0
  259. package/{fesm2020/breeze-client-adapter-ajax-angularjs.mjs → fesm5/breeze-client-adapter-ajax-angularjs.js} +42 -41
  260. package/fesm5/breeze-client-adapter-ajax-angularjs.js.map +1 -0
  261. package/{fesm2020/breeze-client-adapter-ajax-fetch.mjs → fesm5/breeze-client-adapter-ajax-fetch.js} +43 -44
  262. package/fesm5/breeze-client-adapter-ajax-fetch.js.map +1 -0
  263. package/{fesm2020/breeze-client-adapter-ajax-httpclient.mjs → fesm5/breeze-client-adapter-ajax-httpclient.js} +44 -43
  264. package/fesm5/breeze-client-adapter-ajax-httpclient.js.map +1 -0
  265. package/{fesm2020/breeze-client-adapter-ajax-jquery.mjs → fesm5/breeze-client-adapter-ajax-jquery.js} +19 -18
  266. package/fesm5/breeze-client-adapter-ajax-jquery.js.map +1 -0
  267. package/{fesm2015/breeze-client-adapter-ajax-post.mjs → fesm5/breeze-client-adapter-ajax-post.js} +11 -8
  268. package/fesm5/breeze-client-adapter-ajax-post.js.map +1 -0
  269. package/{fesm2020/breeze-client-adapter-data-service-odata.mjs → fesm5/breeze-client-adapter-data-service-odata.js} +134 -126
  270. package/fesm5/breeze-client-adapter-data-service-odata.js.map +1 -0
  271. package/{fesm2020/breeze-client-adapter-data-service-webapi.mjs → fesm5/breeze-client-adapter-data-service-webapi.js} +42 -38
  272. package/fesm5/breeze-client-adapter-data-service-webapi.js.map +1 -0
  273. package/{fesm2015/breeze-client-adapter-model-library-backing-store.mjs → fesm5/breeze-client-adapter-model-library-backing-store.js} +64 -63
  274. package/fesm5/breeze-client-adapter-model-library-backing-store.js.map +1 -0
  275. package/{fesm2015/breeze-client-adapter-model-library-ko.mjs → fesm5/breeze-client-adapter-model-library-ko.js} +58 -57
  276. package/fesm5/breeze-client-adapter-model-library-ko.js.map +1 -0
  277. package/fesm5/breeze-client-adapter-uri-builder-json.js +92 -0
  278. package/fesm5/breeze-client-adapter-uri-builder-json.js.map +1 -0
  279. package/fesm5/breeze-client-adapter-uri-builder-odata.js +250 -0
  280. package/fesm5/breeze-client-adapter-uri-builder-odata.js.map +1 -0
  281. package/{fesm2020/breeze-client-mixin-get-entity-graph.mjs → fesm5/breeze-client-mixin-get-entity-graph.js} +45 -45
  282. package/fesm5/breeze-client-mixin-get-entity-graph.js.map +1 -0
  283. package/{fesm2020/breeze-client-mixin-save-queuing.mjs → fesm5/breeze-client-mixin-save-queuing.js} +126 -116
  284. package/fesm5/breeze-client-mixin-save-queuing.js.map +1 -0
  285. package/{fesm2020/breeze-client.mjs → fesm5/breeze-client.js} +3630 -3414
  286. package/fesm5/breeze-client.js.map +1 -0
  287. package/mixin-get-entity-graph/{index.d.ts → breeze-client-mixin-get-entity-graph.d.ts} +0 -1
  288. package/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.metadata.json +1 -0
  289. package/mixin-get-entity-graph/package.json +13 -0
  290. package/mixin-save-queuing/{index.d.ts → breeze-client-mixin-save-queuing.d.ts} +0 -1
  291. package/mixin-save-queuing/breeze-client-mixin-save-queuing.metadata.json +1 -0
  292. package/mixin-save-queuing/package.json +13 -0
  293. package/package.json +12 -126
  294. package/src/entity-metadata.d.ts +4 -6
  295. package/src/entity-query.d.ts +1 -1
  296. package/esm2020/adapter-ajax-angularjs/adapter-ajax-angularjs.mjs +0 -130
  297. package/esm2020/adapter-ajax-angularjs/adapter-core.mjs +0 -49
  298. package/esm2020/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.mjs +0 -5
  299. package/esm2020/adapter-ajax-fetch/adapter-ajax-fetch.mjs +0 -132
  300. package/esm2020/adapter-ajax-fetch/adapter-core.mjs +0 -49
  301. package/esm2020/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.mjs +0 -5
  302. package/esm2020/adapter-ajax-httpclient/adapter-ajax-httpclient.mjs +0 -137
  303. package/esm2020/adapter-ajax-httpclient/adapter-core.mjs +0 -49
  304. package/esm2020/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.mjs +0 -5
  305. package/esm2020/adapter-ajax-jquery/adapter-ajax-jquery.mjs +0 -103
  306. package/esm2020/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.mjs +0 -5
  307. package/esm2020/adapter-ajax-post/adapter-ajax-post.mjs +0 -77
  308. package/esm2020/adapter-ajax-post/breeze-client-adapter-ajax-post.mjs +0 -5
  309. package/esm2020/adapter-data-service-odata/adapter-core.mjs +0 -49
  310. package/esm2020/adapter-data-service-odata/adapter-data-service-odata.mjs +0 -456
  311. package/esm2020/adapter-data-service-odata/breeze-client-adapter-data-service-odata.mjs +0 -5
  312. package/esm2020/adapter-data-service-webapi/adapter-data-service-webapi.mjs +0 -93
  313. package/esm2020/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.mjs +0 -5
  314. package/esm2020/adapter-model-library-backing-store/adapter-model-library-backing-store.mjs +0 -268
  315. package/esm2020/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.mjs +0 -5
  316. package/esm2020/adapter-model-library-ko/adapter-model-library-ko.mjs +0 -240
  317. package/esm2020/adapter-model-library-ko/breeze-client-adapter-model-library-ko.mjs +0 -5
  318. package/esm2020/adapter-uri-builder-json/adapter-core.mjs +0 -49
  319. package/esm2020/adapter-uri-builder-json/adapter-uri-builder-json.mjs +0 -36
  320. package/esm2020/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.mjs +0 -5
  321. package/esm2020/adapter-uri-builder-odata/adapter-core.mjs +0 -49
  322. package/esm2020/adapter-uri-builder-odata/adapter-uri-builder-odata.mjs +0 -190
  323. package/esm2020/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.mjs +0 -5
  324. package/esm2020/breeze-client.mjs +0 -5
  325. package/esm2020/index.mjs +0 -2
  326. package/esm2020/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.mjs +0 -5
  327. package/esm2020/mixin-get-entity-graph/mixin-get-entity-graph.mjs +0 -269
  328. package/esm2020/mixin-save-queuing/breeze-client-mixin-save-queuing.mjs +0 -5
  329. package/esm2020/mixin-save-queuing/mixin-save-queuing.mjs +0 -400
  330. package/esm2020/src/abstract-data-service-adapter.mjs +0 -296
  331. package/esm2020/src/array.mjs +0 -4
  332. package/esm2020/src/assert-param.mjs +0 -312
  333. package/esm2020/src/breeze.mjs +0 -85
  334. package/esm2020/src/complex-array.mjs +0 -117
  335. package/esm2020/src/config.mjs +0 -223
  336. package/esm2020/src/core.mjs +0 -707
  337. package/esm2020/src/csdl-metadata-parser.mjs +0 -385
  338. package/esm2020/src/data-service.mjs +0 -203
  339. package/esm2020/src/data-type.mjs +0 -444
  340. package/esm2020/src/default-property-interceptor.mjs +0 -460
  341. package/esm2020/src/entity-action.mjs +0 -45
  342. package/esm2020/src/entity-aspect.mjs +0 -806
  343. package/esm2020/src/entity-group.mjs +0 -187
  344. package/esm2020/src/entity-key.mjs +0 -116
  345. package/esm2020/src/entity-manager.mjs +0 -2094
  346. package/esm2020/src/entity-metadata.mjs +0 -2109
  347. package/esm2020/src/entity-query.mjs +0 -996
  348. package/esm2020/src/entity-state.mjs +0 -99
  349. package/esm2020/src/enum.mjs +0 -141
  350. package/esm2020/src/event.mjs +0 -256
  351. package/esm2020/src/interface-registry.mjs +0 -41
  352. package/esm2020/src/key-generator.mjs +0 -108
  353. package/esm2020/src/local-query-comparison-options.mjs +0 -65
  354. package/esm2020/src/mapping-context.mjs +0 -405
  355. package/esm2020/src/naming-convention.mjs +0 -88
  356. package/esm2020/src/observable-array.mjs +0 -183
  357. package/esm2020/src/predicate.mjs +0 -1232
  358. package/esm2020/src/primitive-array.mjs +0 -85
  359. package/esm2020/src/query-options.mjs +0 -152
  360. package/esm2020/src/relation-array.mjs +0 -173
  361. package/esm2020/src/save-options.mjs +0 -41
  362. package/esm2020/src/unattached-children-map.mjs +0 -58
  363. package/esm2020/src/validate.mjs +0 -988
  364. package/esm2020/src/validation-options.mjs +0 -64
  365. package/fesm2015/breeze-client-adapter-ajax-angularjs.mjs.map +0 -1
  366. package/fesm2015/breeze-client-adapter-ajax-fetch.mjs.map +0 -1
  367. package/fesm2015/breeze-client-adapter-ajax-httpclient.mjs.map +0 -1
  368. package/fesm2015/breeze-client-adapter-ajax-jquery.mjs.map +0 -1
  369. package/fesm2015/breeze-client-adapter-ajax-post.mjs.map +0 -1
  370. package/fesm2015/breeze-client-adapter-data-service-odata.mjs.map +0 -1
  371. package/fesm2015/breeze-client-adapter-data-service-webapi.mjs.map +0 -1
  372. package/fesm2015/breeze-client-adapter-model-library-backing-store.mjs.map +0 -1
  373. package/fesm2015/breeze-client-adapter-model-library-ko.mjs.map +0 -1
  374. package/fesm2015/breeze-client-adapter-uri-builder-json.mjs +0 -91
  375. package/fesm2015/breeze-client-adapter-uri-builder-json.mjs.map +0 -1
  376. package/fesm2015/breeze-client-adapter-uri-builder-odata.mjs +0 -245
  377. package/fesm2015/breeze-client-adapter-uri-builder-odata.mjs.map +0 -1
  378. package/fesm2015/breeze-client-mixin-get-entity-graph.mjs.map +0 -1
  379. package/fesm2015/breeze-client-mixin-save-queuing.mjs.map +0 -1
  380. package/fesm2015/breeze-client.mjs.map +0 -1
  381. package/fesm2020/breeze-client-adapter-ajax-angularjs.mjs.map +0 -1
  382. package/fesm2020/breeze-client-adapter-ajax-fetch.mjs.map +0 -1
  383. package/fesm2020/breeze-client-adapter-ajax-httpclient.mjs.map +0 -1
  384. package/fesm2020/breeze-client-adapter-ajax-jquery.mjs.map +0 -1
  385. package/fesm2020/breeze-client-adapter-ajax-post.mjs.map +0 -1
  386. package/fesm2020/breeze-client-adapter-data-service-odata.mjs.map +0 -1
  387. package/fesm2020/breeze-client-adapter-data-service-webapi.mjs.map +0 -1
  388. package/fesm2020/breeze-client-adapter-model-library-backing-store.mjs.map +0 -1
  389. package/fesm2020/breeze-client-adapter-model-library-ko.mjs.map +0 -1
  390. package/fesm2020/breeze-client-adapter-uri-builder-json.mjs.map +0 -1
  391. package/fesm2020/breeze-client-adapter-uri-builder-odata.mjs.map +0 -1
  392. package/fesm2020/breeze-client-mixin-get-entity-graph.mjs.map +0 -1
  393. package/fesm2020/breeze-client-mixin-save-queuing.mjs.map +0 -1
  394. package/fesm2020/breeze-client.mjs.map +0 -1
@@ -0,0 +1,195 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common/http'), require('breeze-client'), require('rxjs/operators')) :
3
+ typeof define === 'function' && define.amd ? define('breeze-client/adapter-ajax-httpclient', ['exports', '@angular/common/http', 'breeze-client', 'rxjs/operators'], factory) :
4
+ (global = global || self, factory((global['breeze-client'] = global['breeze-client'] || {}, global['breeze-client']['adapter-ajax-httpclient'] = {}), global.ng.common.http, global['breeze-client'], global.rxjs.operators));
5
+ }(this, (function (exports, http, breezeClient, operators) { 'use strict';
6
+
7
+ /** Appends parameter to url, with appropriate delimiter */
8
+ function appendQueryStringParameter(url, parameter) {
9
+ if (!parameter)
10
+ return url;
11
+ var separator = url.endsWith("?") ? "" : url.includes("?") ? "&" : "?";
12
+ return url + separator + parameter;
13
+ }
14
+ /** Encodes the object into query string parameters */
15
+ function encodeParams(obj) {
16
+ var query = '';
17
+ var subValue, innerObj, fullSubName;
18
+ for (var name_1 in obj) {
19
+ if (!obj.hasOwnProperty(name_1)) {
20
+ continue;
21
+ }
22
+ var value = obj[name_1];
23
+ if (value instanceof Array) {
24
+ for (var i = 0; i < value.length; ++i) {
25
+ subValue = value[i];
26
+ fullSubName = name_1 + '[' + i + ']';
27
+ innerObj = {};
28
+ innerObj[fullSubName] = subValue;
29
+ query += encodeParams(innerObj) + '&';
30
+ }
31
+ }
32
+ else if (value && value.toISOString) { // a feature of Date-like things
33
+ query += encodeURIComponent(name_1) + '=' + encodeURIComponent(value.toISOString()) + '&';
34
+ }
35
+ else if (value instanceof Object) {
36
+ for (var subName in value) {
37
+ if (obj.hasOwnProperty(name_1)) {
38
+ subValue = value[subName];
39
+ fullSubName = name_1 + '[' + subName + ']';
40
+ innerObj = {};
41
+ innerObj[fullSubName] = subValue;
42
+ query += encodeParams(innerObj) + '&';
43
+ }
44
+ }
45
+ }
46
+ else if (value === null) {
47
+ query += encodeURIComponent(name_1) + '=&';
48
+ }
49
+ else if (value !== undefined) {
50
+ query += encodeURIComponent(name_1) + '=' + encodeURIComponent(value) + '&';
51
+ }
52
+ }
53
+ return query.length ? query.substr(0, query.length - 1) : query;
54
+ }
55
+
56
+ var AjaxHttpClientAdapter = /** @class */ (function () {
57
+ function AjaxHttpClientAdapter(http) {
58
+ this.http = http;
59
+ this.name = AjaxHttpClientAdapter.adapterName;
60
+ this.defaultSettings = {};
61
+ }
62
+ AjaxHttpClientAdapter.register = function (http, breezeConfig) {
63
+ breezeConfig = breezeConfig || breezeClient.config;
64
+ breezeConfig.registerAdapter("ajax", function () { return new AjaxHttpClientAdapter(http); });
65
+ return breezeConfig.initializeAdapterInstance("ajax", AjaxHttpClientAdapter.adapterName, true);
66
+ };
67
+ AjaxHttpClientAdapter.prototype.initialize = function () { };
68
+ AjaxHttpClientAdapter.prototype.ajax = function (config) {
69
+ if (!this.http) {
70
+ throw new Error('Unable to locate angular http module for ajax adapter');
71
+ }
72
+ // merge default DataSetAdapter Settings with config arg
73
+ if (!breezeClient.core.isEmpty(this.defaultSettings)) {
74
+ var compositeConfig = breezeClient.core.extend({}, this.defaultSettings);
75
+ config = breezeClient.core.extend(compositeConfig, config);
76
+ // extend is shallow; extend headers separately
77
+ var headers_1 = breezeClient.core.extend({}, this.defaultSettings['headers']); // copy default headers 1st
78
+ config['headers'] = breezeClient.core.extend(headers_1, config.headers);
79
+ }
80
+ if (config.crossDomain) {
81
+ throw new Error(this.name + ' does not support JSONP (crossDomain) requests');
82
+ }
83
+ // Hack: Not sure how Angular handles writing 'search' parameters to the url.
84
+ // so this approach takes over the url param writing completely.
85
+ var parameters = breezeClient.core.isEmpty(config.params) ? null : encodeParams(config.params);
86
+ var url = appendQueryStringParameter(config.url, parameters);
87
+ var headers = new http.HttpHeaders(config.headers || {});
88
+ if (!headers.has('Content-Type')) {
89
+ if (config.type !== 'GET' && config.type !== 'DELETE' && !!config.contentType) {
90
+ headers = headers.set('Content-Type', config.contentType || 'application/json; charset=utf-8');
91
+ }
92
+ }
93
+ var body = config.data;
94
+ var request = new http.HttpRequest((config.type || 'GET').toUpperCase(), url, body, { headers: headers, responseType: "text" });
95
+ var requestInfo = {
96
+ adapter: this,
97
+ request: request,
98
+ dsaConfig: config,
99
+ success: successFn,
100
+ error: errorFn // adapter's error callback
101
+ };
102
+ if (breezeClient.core.isFunction(this.requestInterceptor)) {
103
+ this.requestInterceptor(requestInfo);
104
+ if (this.requestInterceptor['oneTime']) {
105
+ this.requestInterceptor = null;
106
+ }
107
+ }
108
+ if (requestInfo.request) { // exists unless requestInterceptor killed it.
109
+ var ffilter = operators.filter(function (response) { return response instanceof http.HttpResponse; });
110
+ var fmap = operators.map(extractData);
111
+ fmap(ffilter(this.http.request(requestInfo.request)))
112
+ .forEach(requestInfo.success)
113
+ .catch(requestInfo.error);
114
+ }
115
+ function extractData(event) {
116
+ var response = event;
117
+ var data;
118
+ var dt = requestInfo.dsaConfig.dataType;
119
+ // beware:`res.json` and `res.text` will be async some day
120
+ if (dt && dt !== 'json') {
121
+ data = response.body;
122
+ }
123
+ else {
124
+ data = JSON.parse(response.body);
125
+ }
126
+ return { data: data, response: response };
127
+ }
128
+ function successFn(arg) {
129
+ if (arg.response.status < 200 || arg.response.status >= 300) {
130
+ throw { data: arg.data, response: arg.response };
131
+ }
132
+ var httpResponse = {
133
+ config: requestInfo.request,
134
+ data: arg.data,
135
+ getHeaders: makeGetHeaders(arg.response.headers),
136
+ status: arg.response.status
137
+ };
138
+ httpResponse['ngConfig'] = requestInfo.request;
139
+ httpResponse['statusText'] = arg.response.statusText;
140
+ httpResponse['response'] = arg.response;
141
+ config.success(httpResponse);
142
+ }
143
+ function errorFn(response) {
144
+ if (response instanceof Error) {
145
+ throw response; // program error; nothing we can do
146
+ }
147
+ else {
148
+ var data = void 0;
149
+ if (response.error instanceof http.HttpResponse) {
150
+ data = response.error.body;
151
+ }
152
+ else if (response.error instanceof Error) {
153
+ data = response.error.message;
154
+ }
155
+ else {
156
+ data = response.error;
157
+ }
158
+ // Timeout appears as an error with status===0 and no data.
159
+ if (response.status === 0 && data == null) {
160
+ data = 'timeout';
161
+ }
162
+ var errorMessage = response.status + ": " + response.statusText;
163
+ if (data && typeof data === 'object') {
164
+ data["message"] = data["message"] || errorMessage; // breeze looks at the message property
165
+ }
166
+ if (!data) {
167
+ data = errorMessage; // Return the error message as data
168
+ }
169
+ var httpResponse = {
170
+ config: requestInfo.request,
171
+ data: data,
172
+ getHeaders: makeGetHeaders(response.headers),
173
+ status: response.status
174
+ };
175
+ httpResponse['ngConfig'] = requestInfo.request;
176
+ httpResponse['statusText'] = response.statusText;
177
+ httpResponse['response'] = response;
178
+ config.error(httpResponse); // send error to breeze error handler
179
+ }
180
+ }
181
+ };
182
+ AjaxHttpClientAdapter.adapterName = 'httpclient';
183
+ return AjaxHttpClientAdapter;
184
+ }());
185
+ ///// Helpers ////
186
+ function makeGetHeaders(headers) {
187
+ return function getHeaders(headerName) { return headers.getAll(headerName).join('\r\n'); };
188
+ }
189
+
190
+ exports.AjaxHttpClientAdapter = AjaxHttpClientAdapter;
191
+
192
+ Object.defineProperty(exports, '__esModule', { value: true });
193
+
194
+ })));
195
+ //# sourceMappingURL=breeze-client-adapter-ajax-httpclient.umd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breeze-client-adapter-ajax-httpclient.umd.js","sources":["ng://breeze-client/adapter-ajax-httpclient/adapter-core.ts","ng://breeze-client/adapter-ajax-httpclient/adapter-ajax-httpclient.ts"],"sourcesContent":["/** Appends parameter to url, with appropriate delimiter */\r\nexport function appendQueryStringParameter(url: string, parameter: string) {\r\n if (!parameter) return url;\r\n\r\n let separator = url.endsWith(\"?\") ? \"\" : url.includes(\"?\") ? \"&\" : \"?\";\r\n\r\n return url + separator + parameter;\r\n}\r\n\r\n/** Encodes the object into query string parameters */\r\nexport function encodeParams(obj: {}) {\r\n let query = '';\r\n let subValue: any, innerObj: any, fullSubName: any;\r\n\r\n for (let name in obj) {\r\n if (!obj.hasOwnProperty(name)) { continue; }\r\n\r\n let value = obj[name];\r\n\r\n if (value instanceof Array) {\r\n for (let i = 0; i < value.length; ++i) {\r\n subValue = value[i];\r\n fullSubName = name + '[' + i + ']';\r\n innerObj = {};\r\n innerObj[fullSubName] = subValue;\r\n query += encodeParams(innerObj) + '&';\r\n }\r\n } else if (value && value.toISOString) { // a feature of Date-like things\r\n query += encodeURIComponent(name) + '=' + encodeURIComponent(value.toISOString()) + '&';\r\n } else if (value instanceof Object) {\r\n for (let subName in value) {\r\n if (obj.hasOwnProperty(name)) {\r\n subValue = value[subName];\r\n fullSubName = name + '[' + subName + ']';\r\n innerObj = {};\r\n innerObj[fullSubName] = subValue;\r\n query += encodeParams(innerObj) + '&';\r\n }\r\n }\r\n } else if (value === null) {\r\n query += encodeURIComponent(name) + '=&';\r\n } else if (value !== undefined) {\r\n query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&';\r\n }\r\n }\r\n\r\n return query.length ? query.substr(0, query.length - 1) : query;\r\n}\r\n","import { HttpClient, HttpErrorResponse, HttpEvent, HttpHeaders, HttpRequest, HttpResponse } from \"@angular/common/http\";\r\nimport { AjaxConfig, config, core, HttpResponse as BreezeHttpResponse, BreezeConfig, AjaxRequestInterceptor, AjaxAdapter } from \"breeze-client\";\r\nimport { filter, map } from \"rxjs/operators\";\r\nimport { appendQueryStringParameter, encodeParams } from \"./adapter-core\";\r\n\r\nexport class AjaxHttpClientAdapter implements AjaxAdapter {\r\n static adapterName = 'httpclient';\r\n name = AjaxHttpClientAdapter.adapterName;\r\n defaultSettings = {};\r\n requestInterceptor: AjaxRequestInterceptor;\r\n\r\n constructor(public http: HttpClient) { }\r\n\r\n static register(http: HttpClient, breezeConfig?: BreezeConfig) {\r\n breezeConfig = breezeConfig || config;\r\n breezeConfig.registerAdapter(\"ajax\", <any>function () { return new AjaxHttpClientAdapter(http); });\r\n return breezeConfig.initializeAdapterInstance(\"ajax\", AjaxHttpClientAdapter.adapterName, true) as AjaxHttpClientAdapter;\r\n }\r\n\r\n initialize() { }\r\n\r\n ajax(config: AjaxConfig) {\r\n if (!this.http) {\r\n throw new Error('Unable to locate angular http module for ajax adapter');\r\n }\r\n\r\n // merge default DataSetAdapter Settings with config arg\r\n if (!core.isEmpty(this.defaultSettings)) {\r\n let compositeConfig = core.extend({}, this.defaultSettings);\r\n config = <AjaxConfig>core.extend(compositeConfig, config);\r\n // extend is shallow; extend headers separately\r\n let headers = core.extend({}, this.defaultSettings['headers']); // copy default headers 1st\r\n config['headers'] = core.extend(headers, config.headers);\r\n }\r\n\r\n if (config.crossDomain) {\r\n throw new Error(this.name + ' does not support JSONP (crossDomain) requests');\r\n }\r\n\r\n // Hack: Not sure how Angular handles writing 'search' parameters to the url.\r\n // so this approach takes over the url param writing completely.\r\n const parameters = core.isEmpty(config.params) ? null : encodeParams(config.params);\r\n const url = appendQueryStringParameter(config.url, parameters);\r\n\r\n let headers = new HttpHeaders(config.headers || {});\r\n if (!headers.has('Content-Type')) {\r\n if (config.type !== 'GET' && config.type !== 'DELETE' && !!config.contentType) {\r\n headers = headers.set('Content-Type',\r\n <string>config.contentType || 'application/json; charset=utf-8');\r\n }\r\n }\r\n\r\n let body: any = config.data;\r\n let request = new HttpRequest((config.type || 'GET').toUpperCase(), url, body, { headers: headers, responseType: \"text\" });\r\n\r\n let requestInfo = {\r\n adapter: this, // this adapter\r\n request: request, // the http request from the requestOptions\r\n dsaConfig: config, // the config arg from the calling Breeze DataServiceAdapter\r\n success: successFn, // adapter's success callback\r\n error: errorFn // adapter's error callback\r\n };\r\n\r\n if (core.isFunction(this.requestInterceptor)) {\r\n this.requestInterceptor(requestInfo as any);\r\n if (this.requestInterceptor['oneTime']) {\r\n this.requestInterceptor = null;\r\n }\r\n }\r\n\r\n if (requestInfo.request) { // exists unless requestInterceptor killed it.\r\n const ffilter = filter((response: HttpEvent<any>) => response instanceof HttpResponse);\r\n const fmap = map(extractData);\r\n\r\n fmap(ffilter(this.http.request(requestInfo.request)))\r\n .forEach(requestInfo.success)\r\n .catch(requestInfo.error);\r\n }\r\n\r\n function extractData(event: HttpEvent<any>) {\r\n let response = event as HttpResponse<any>;\r\n let data: any;\r\n let dt = requestInfo.dsaConfig.dataType;\r\n // beware:`res.json` and `res.text` will be async some day\r\n if (dt && dt !== 'json') {\r\n data = response.body;\r\n } else {\r\n data = JSON.parse(response.body);\r\n }\r\n return { data, response };\r\n }\r\n\r\n function successFn(arg: { data: any, response: HttpResponse<any> }) {\r\n if (arg.response.status < 200 || arg.response.status >= 300) {\r\n throw { data: arg.data, response: arg.response };\r\n }\r\n\r\n let httpResponse: BreezeHttpResponse = {\r\n config: requestInfo.request,\r\n data: arg.data,\r\n getHeaders: makeGetHeaders(arg.response.headers),\r\n status: arg.response.status\r\n };\r\n httpResponse['ngConfig'] = requestInfo.request;\r\n httpResponse['statusText'] = arg.response.statusText;\r\n httpResponse['response'] = arg.response;\r\n config.success(httpResponse);\r\n }\r\n\r\n function errorFn(response: HttpErrorResponse) {\r\n if (response instanceof Error) {\r\n throw response; // program error; nothing we can do\r\n } else {\r\n let data: any;\r\n if (response.error instanceof HttpResponse) {\r\n data = response.error.body;\r\n } else if (response.error instanceof Error) {\r\n data = response.error.message;\r\n } else {\r\n data = response.error;\r\n }\r\n\r\n // Timeout appears as an error with status===0 and no data.\r\n if (response.status === 0 && data == null) {\r\n data = 'timeout';\r\n }\r\n\r\n let errorMessage = response.status + \": \" + response.statusText;\r\n if (data && typeof data === 'object') {\r\n data[\"message\"] = data[\"message\"] || errorMessage; // breeze looks at the message property\r\n }\r\n if (!data) {\r\n data = errorMessage; // Return the error message as data\r\n }\r\n let httpResponse: BreezeHttpResponse = {\r\n config: requestInfo.request,\r\n data: data,\r\n getHeaders: makeGetHeaders(response.headers),\r\n status: response.status\r\n };\r\n httpResponse['ngConfig'] = requestInfo.request;\r\n httpResponse['statusText'] = response.statusText;\r\n httpResponse['response'] = response;\r\n\r\n config.error(httpResponse); // send error to breeze error handler\r\n }\r\n }\r\n }\r\n\r\n}\r\n\r\n///// Helpers ////\r\n\r\nfunction makeGetHeaders(headers: HttpHeaders) {\r\n return function getHeaders(headerName?: string) { return headers.getAll(headerName).join('\\r\\n'); };\r\n}"],"names":["config","core","HttpHeaders","HttpRequest","filter","HttpResponse","map"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common/http"),require("breeze-client"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("breeze-client/adapter-ajax-httpclient",["exports","@angular/common/http","breeze-client","rxjs/operators"],t):t(((e=e||self)["breeze-client"]=e["breeze-client"]||{},e["breeze-client"]["adapter-ajax-httpclient"]={}),e.ng.common.http,e["breeze-client"],e.rxjs.operators)}(this,(function(e,t,r,n){"use strict";var s=function(){function e(t){this.http=t,this.name=e.adapterName,this.defaultSettings={}}return e.register=function(t,n){return(n=n||r.config).registerAdapter("ajax",(function(){return new e(t)})),n.initializeAdapterInstance("ajax",e.adapterName,!0)},e.prototype.initialize=function(){},e.prototype.ajax=function(e){if(!this.http)throw new Error("Unable to locate angular http module for ajax adapter");if(!r.core.isEmpty(this.defaultSettings)){var s=r.core.extend({},this.defaultSettings);e=r.core.extend(s,e);var a=r.core.extend({},this.defaultSettings.headers);e.headers=r.core.extend(a,e.headers)}if(e.crossDomain)throw new Error(this.name+" does not support JSONP (crossDomain) requests");var i=r.core.isEmpty(e.params)?null:function e(t){var r,n,s="";for(var o in t)if(t.hasOwnProperty(o)){var a=t[o];if(a instanceof Array)for(var i=0;i<a.length;++i)r=a[i],(n={})[o+"["+i+"]"]=r,s+=e(n)+"&";else if(a&&a.toISOString)s+=encodeURIComponent(o)+"="+encodeURIComponent(a.toISOString())+"&";else if(a instanceof Object)for(var p in a)t.hasOwnProperty(o)&&(r=a[p],(n={})[o+"["+p+"]"]=r,s+=e(n)+"&");else null===a?s+=encodeURIComponent(o)+"=&":void 0!==a&&(s+=encodeURIComponent(o)+"="+encodeURIComponent(a)+"&")}return s.length?s.substr(0,s.length-1):s}(e.params),p=function(e,t){if(!t)return e;var r=e.endsWith("?")?"":e.includes("?")?"&":"?";return e+r+t}(e.url,i),u=new t.HttpHeaders(e.headers||{});u.has("Content-Type")||"GET"!==e.type&&"DELETE"!==e.type&&e.contentType&&(u=u.set("Content-Type",e.contentType||"application/json; charset=utf-8"));var c=e.data,f={adapter:this,request:new t.HttpRequest((e.type||"GET").toUpperCase(),p,c,{headers:u,responseType:"text"}),dsaConfig:e,success:function(t){if(t.response.status<200||t.response.status>=300)throw{data:t.data,response:t.response};var r={config:f.request,data:t.data,getHeaders:o(t.response.headers),status:t.response.status};r.ngConfig=f.request,r.statusText=t.response.statusText,r.response=t.response,e.success(r)},error:function(r){if(r instanceof Error)throw r;var n=void 0;n=r.error instanceof t.HttpResponse?r.error.body:r.error instanceof Error?r.error.message:r.error,0===r.status&&null==n&&(n="timeout");var s=r.status+": "+r.statusText;n&&"object"==typeof n&&(n.message=n.message||s),n||(n=s);var a={config:f.request,data:n,getHeaders:o(r.headers),status:r.status};a.ngConfig=f.request,a.statusText=r.statusText,a.response=r,e.error(a)}};if(r.core.isFunction(this.requestInterceptor)&&(this.requestInterceptor(f),this.requestInterceptor.oneTime&&(this.requestInterceptor=null)),f.request){var d=n.filter((function(e){return e instanceof t.HttpResponse}));n.map((function(e){var t,r=e,n=f.dsaConfig.dataType;t=n&&"json"!==n?r.body:JSON.parse(r.body);return{data:t,response:r}}))(d(this.http.request(f.request))).forEach(f.success).catch(f.error)}},e.adapterName="httpclient",e}();function o(e){return function(t){return e.getAll(t).join("\r\n")}}e.AjaxHttpClientAdapter=s,Object.defineProperty(e,"__esModule",{value:!0})}));
2
+ //# sourceMappingURL=breeze-client-adapter-ajax-httpclient.umd.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ng://breeze-client/adapter-ajax-httpclient/adapter-ajax-httpclient.ts","ng://breeze-client/adapter-ajax-httpclient/adapter-core.ts"],"names":["AjaxHttpClientAdapter","http","this","name","adapterName","defaultSettings","register","breezeConfig","config","registerAdapter","initializeAdapterInstance","prototype","initialize","ajax","Error","core","isEmpty","compositeConfig","extend","headers_1","headers","crossDomain","parameters","params","encodeParams","obj","subValue","innerObj","query","name_1","hasOwnProperty","value","Array","i","length","toISOString","encodeURIComponent","Object","subName","undefined","substr","url","parameter","separator","endsWith","includes","appendQueryStringParameter","HttpHeaders","has","type","contentType","set","body","data","requestInfo","adapter","request","HttpRequest","toUpperCase","responseType","dsaConfig","success","arg","response","status","httpResponse","getHeaders","makeGetHeaders","statusText","error","HttpResponse","message","errorMessage","isFunction","requestInterceptor","ffilter","filter","map","event","dt","dataType","JSON","parse","fmap","forEach","catch","headerName","getAll","join"],"mappings":"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","sourcesContent":["import { HttpClient, HttpErrorResponse, HttpEvent, HttpHeaders, HttpRequest, HttpResponse } from \"@angular/common/http\";\r\nimport { AjaxConfig, config, core, HttpResponse as BreezeHttpResponse, BreezeConfig, AjaxRequestInterceptor, AjaxAdapter } from \"breeze-client\";\r\nimport { filter, map } from \"rxjs/operators\";\r\nimport { appendQueryStringParameter, encodeParams } from \"./adapter-core\";\r\n\r\nexport class AjaxHttpClientAdapter implements AjaxAdapter {\r\n static adapterName = 'httpclient';\r\n name = AjaxHttpClientAdapter.adapterName;\r\n defaultSettings = {};\r\n requestInterceptor: AjaxRequestInterceptor;\r\n\r\n constructor(public http: HttpClient) { }\r\n\r\n static register(http: HttpClient, breezeConfig?: BreezeConfig) {\r\n breezeConfig = breezeConfig || config;\r\n breezeConfig.registerAdapter(\"ajax\", <any>function () { return new AjaxHttpClientAdapter(http); });\r\n return breezeConfig.initializeAdapterInstance(\"ajax\", AjaxHttpClientAdapter.adapterName, true) as AjaxHttpClientAdapter;\r\n }\r\n\r\n initialize() { }\r\n\r\n ajax(config: AjaxConfig) {\r\n if (!this.http) {\r\n throw new Error('Unable to locate angular http module for ajax adapter');\r\n }\r\n\r\n // merge default DataSetAdapter Settings with config arg\r\n if (!core.isEmpty(this.defaultSettings)) {\r\n let compositeConfig = core.extend({}, this.defaultSettings);\r\n config = <AjaxConfig>core.extend(compositeConfig, config);\r\n // extend is shallow; extend headers separately\r\n let headers = core.extend({}, this.defaultSettings['headers']); // copy default headers 1st\r\n config['headers'] = core.extend(headers, config.headers);\r\n }\r\n\r\n if (config.crossDomain) {\r\n throw new Error(this.name + ' does not support JSONP (crossDomain) requests');\r\n }\r\n\r\n // Hack: Not sure how Angular handles writing 'search' parameters to the url.\r\n // so this approach takes over the url param writing completely.\r\n const parameters = core.isEmpty(config.params) ? null : encodeParams(config.params);\r\n const url = appendQueryStringParameter(config.url, parameters);\r\n\r\n let headers = new HttpHeaders(config.headers || {});\r\n if (!headers.has('Content-Type')) {\r\n if (config.type !== 'GET' && config.type !== 'DELETE' && !!config.contentType) {\r\n headers = headers.set('Content-Type',\r\n <string>config.contentType || 'application/json; charset=utf-8');\r\n }\r\n }\r\n\r\n let body: any = config.data;\r\n let request = new HttpRequest((config.type || 'GET').toUpperCase(), url, body, { headers: headers, responseType: \"text\" });\r\n\r\n let requestInfo = {\r\n adapter: this, // this adapter\r\n request: request, // the http request from the requestOptions\r\n dsaConfig: config, // the config arg from the calling Breeze DataServiceAdapter\r\n success: successFn, // adapter's success callback\r\n error: errorFn // adapter's error callback\r\n };\r\n\r\n if (core.isFunction(this.requestInterceptor)) {\r\n this.requestInterceptor(requestInfo as any);\r\n if (this.requestInterceptor['oneTime']) {\r\n this.requestInterceptor = null;\r\n }\r\n }\r\n\r\n if (requestInfo.request) { // exists unless requestInterceptor killed it.\r\n const ffilter = filter((response: HttpEvent<any>) => response instanceof HttpResponse);\r\n const fmap = map(extractData);\r\n\r\n fmap(ffilter(this.http.request(requestInfo.request)))\r\n .forEach(requestInfo.success)\r\n .catch(requestInfo.error);\r\n }\r\n\r\n function extractData(event: HttpEvent<any>) {\r\n let response = event as HttpResponse<any>;\r\n let data: any;\r\n let dt = requestInfo.dsaConfig.dataType;\r\n // beware:`res.json` and `res.text` will be async some day\r\n if (dt && dt !== 'json') {\r\n data = response.body;\r\n } else {\r\n data = JSON.parse(response.body);\r\n }\r\n return { data, response };\r\n }\r\n\r\n function successFn(arg: { data: any, response: HttpResponse<any> }) {\r\n if (arg.response.status < 200 || arg.response.status >= 300) {\r\n throw { data: arg.data, response: arg.response };\r\n }\r\n\r\n let httpResponse: BreezeHttpResponse = {\r\n config: requestInfo.request,\r\n data: arg.data,\r\n getHeaders: makeGetHeaders(arg.response.headers),\r\n status: arg.response.status\r\n };\r\n httpResponse['ngConfig'] = requestInfo.request;\r\n httpResponse['statusText'] = arg.response.statusText;\r\n httpResponse['response'] = arg.response;\r\n config.success(httpResponse);\r\n }\r\n\r\n function errorFn(response: HttpErrorResponse) {\r\n if (response instanceof Error) {\r\n throw response; // program error; nothing we can do\r\n } else {\r\n let data: any;\r\n if (response.error instanceof HttpResponse) {\r\n data = response.error.body;\r\n } else if (response.error instanceof Error) {\r\n data = response.error.message;\r\n } else {\r\n data = response.error;\r\n }\r\n\r\n // Timeout appears as an error with status===0 and no data.\r\n if (response.status === 0 && data == null) {\r\n data = 'timeout';\r\n }\r\n\r\n let errorMessage = response.status + \": \" + response.statusText;\r\n if (data && typeof data === 'object') {\r\n data[\"message\"] = data[\"message\"] || errorMessage; // breeze looks at the message property\r\n }\r\n if (!data) {\r\n data = errorMessage; // Return the error message as data\r\n }\r\n let httpResponse: BreezeHttpResponse = {\r\n config: requestInfo.request,\r\n data: data,\r\n getHeaders: makeGetHeaders(response.headers),\r\n status: response.status\r\n };\r\n httpResponse['ngConfig'] = requestInfo.request;\r\n httpResponse['statusText'] = response.statusText;\r\n httpResponse['response'] = response;\r\n\r\n config.error(httpResponse); // send error to breeze error handler\r\n }\r\n }\r\n }\r\n\r\n}\r\n\r\n///// Helpers ////\r\n\r\nfunction makeGetHeaders(headers: HttpHeaders) {\r\n return function getHeaders(headerName?: string) { return headers.getAll(headerName).join('\\r\\n'); };\r\n}","/** Appends parameter to url, with appropriate delimiter */\r\nexport function appendQueryStringParameter(url: string, parameter: string) {\r\n if (!parameter) return url;\r\n\r\n let separator = url.endsWith(\"?\") ? \"\" : url.includes(\"?\") ? \"&\" : \"?\";\r\n\r\n return url + separator + parameter;\r\n}\r\n\r\n/** Encodes the object into query string parameters */\r\nexport function encodeParams(obj: {}) {\r\n let query = '';\r\n let subValue: any, innerObj: any, fullSubName: any;\r\n\r\n for (let name in obj) {\r\n if (!obj.hasOwnProperty(name)) { continue; }\r\n\r\n let value = obj[name];\r\n\r\n if (value instanceof Array) {\r\n for (let i = 0; i < value.length; ++i) {\r\n subValue = value[i];\r\n fullSubName = name + '[' + i + ']';\r\n innerObj = {};\r\n innerObj[fullSubName] = subValue;\r\n query += encodeParams(innerObj) + '&';\r\n }\r\n } else if (value && value.toISOString) { // a feature of Date-like things\r\n query += encodeURIComponent(name) + '=' + encodeURIComponent(value.toISOString()) + '&';\r\n } else if (value instanceof Object) {\r\n for (let subName in value) {\r\n if (obj.hasOwnProperty(name)) {\r\n subValue = value[subName];\r\n fullSubName = name + '[' + subName + ']';\r\n innerObj = {};\r\n innerObj[fullSubName] = subValue;\r\n query += encodeParams(innerObj) + '&';\r\n }\r\n }\r\n } else if (value === null) {\r\n query += encodeURIComponent(name) + '=&';\r\n } else if (value !== undefined) {\r\n query += encodeURIComponent(name) + '=' + encodeURIComponent(value) + '&';\r\n }\r\n }\r\n\r\n return query.length ? query.substr(0, query.length - 1) : query;\r\n}\r\n"]}
@@ -0,0 +1,115 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('breeze-client')) :
3
+ typeof define === 'function' && define.amd ? define('breeze-client/adapter-ajax-jquery', ['exports', 'breeze-client'], factory) :
4
+ (global = global || self, factory((global['breeze-client'] = global['breeze-client'] || {}, global['breeze-client']['adapter-ajax-jquery'] = {}), global['breeze-client']));
5
+ }(this, (function (exports, breezeClient) { 'use strict';
6
+
7
+ var AjaxJQueryAdapter = /** @class */ (function () {
8
+ function AjaxJQueryAdapter() {
9
+ this.name = "jQuery";
10
+ this.defaultSettings = {};
11
+ this.requestInterceptor = undefined;
12
+ }
13
+ AjaxJQueryAdapter.register = function (breezeConfig) {
14
+ breezeConfig = breezeConfig || breezeClient.config;
15
+ breezeConfig.registerAdapter("ajax", AjaxJQueryAdapter);
16
+ return breezeConfig.initializeAdapterInstance("ajax", "jQuery", true);
17
+ };
18
+ AjaxJQueryAdapter.prototype.initialize = function () {
19
+ this.jQuery = jQuery;
20
+ // look for the jQuery lib but don't fail immediately if not found
21
+ if (!jQuery) {
22
+ this.jQuery = breezeClient.core.requireLib("jQuery;jquery");
23
+ }
24
+ };
25
+ AjaxJQueryAdapter.prototype.ajax = function (config) {
26
+ if (!this.jQuery) {
27
+ throw new Error("Unable to locate jQuery");
28
+ }
29
+ var jqConfig = {
30
+ type: config.type,
31
+ url: config.url,
32
+ data: config.params || config.data,
33
+ dataType: config.dataType,
34
+ contentType: config.contentType,
35
+ crossDomain: config.crossDomain,
36
+ headers: config.headers || {}
37
+ };
38
+ if (!breezeClient.core.isEmpty(this.defaultSettings)) {
39
+ var compositeConfig = breezeClient.core.extend({}, this.defaultSettings);
40
+ jqConfig = breezeClient.core.extend(compositeConfig, jqConfig);
41
+ // extend is shallow; extend headers separately
42
+ var headers = breezeClient.core.extend({}, this.defaultSettings.headers); // copy default headers 1st
43
+ jqConfig.headers = breezeClient.core.extend(headers, jqConfig.headers);
44
+ }
45
+ var requestInfo = {
46
+ adapter: this,
47
+ config: jqConfig,
48
+ dsaConfig: config,
49
+ success: successFn,
50
+ error: errorFn,
51
+ };
52
+ if (breezeClient.core.isFunction(this.requestInterceptor)) {
53
+ var ri = this.requestInterceptor;
54
+ ri(requestInfo);
55
+ if (ri.oneTime) {
56
+ this.requestInterceptor = undefined;
57
+ }
58
+ }
59
+ if (requestInfo.config) { // exists unless requestInterceptor killed it.
60
+ requestInfo.jqXHR = this.jQuery.ajax(requestInfo.config)
61
+ .done(requestInfo.success)
62
+ .fail(requestInfo.error);
63
+ }
64
+ function successFn(data, statusText, jqXHR) {
65
+ var httpResponse = {
66
+ config: config,
67
+ data: data,
68
+ getHeaders: getHeadersFn(jqXHR),
69
+ status: jqXHR.status,
70
+ statusText: statusText
71
+ };
72
+ config.success(httpResponse);
73
+ // TODO: not sure how to do this or if needed.
74
+ // jqXHR.onreadystatechange = null;
75
+ // jqXHR.abort = null;
76
+ }
77
+ function errorFn(jqXHR, statusText, errorThrown) {
78
+ var httpResponse = {
79
+ config: config,
80
+ data: jqXHR.responseText,
81
+ error: errorThrown,
82
+ getHeaders: getHeadersFn(jqXHR),
83
+ status: jqXHR.status,
84
+ statusText: statusText
85
+ };
86
+ config.error(httpResponse);
87
+ // TODO: not sure how to do this or if needed.
88
+ // jqXHR.onreadystatechange = null;
89
+ // jqXHR.abort = null;
90
+ }
91
+ };
92
+ return AjaxJQueryAdapter;
93
+ }());
94
+ breezeClient.config.registerAdapter("ajax", AjaxJQueryAdapter);
95
+ function getHeadersFn(jqXHR) {
96
+ if (jqXHR.status === 0) { // timeout or abort; no headers
97
+ return function (headerName) {
98
+ return (headerName && headerName.length > 0) ? "" : {};
99
+ };
100
+ }
101
+ else { // jqXHR should have header functions
102
+ return function (headerName) {
103
+ return (headerName && headerName.length > 0) ?
104
+ jqXHR.getResponseHeader(headerName) :
105
+ jqXHR.getAllResponseHeaders();
106
+ };
107
+ }
108
+ }
109
+
110
+ exports.AjaxJQueryAdapter = AjaxJQueryAdapter;
111
+
112
+ Object.defineProperty(exports, '__esModule', { value: true });
113
+
114
+ })));
115
+ //# sourceMappingURL=breeze-client-adapter-ajax-jquery.umd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breeze-client-adapter-ajax-jquery.umd.js","sources":["ng://breeze-client/adapter-ajax-jquery/adapter-ajax-jquery.ts"],"sourcesContent":["import { AjaxAdapter, AjaxConfig, AjaxRequestInterceptor, BreezeConfig, config, core } from 'breeze-client';\r\n\r\ndeclare var jQuery: any;\r\n\r\nexport class AjaxJQueryAdapter implements AjaxAdapter {\r\n name: string;\r\n defaultSettings: { headers?: { [name: string]: string } };\r\n requestInterceptor?: AjaxRequestInterceptor;\r\n jQuery: any;\r\n\r\n constructor() {\r\n this.name = \"jQuery\";\r\n this.defaultSettings = { };\r\n this.requestInterceptor = undefined;\r\n }\r\n\r\n static register(breezeConfig?: BreezeConfig) {\r\n breezeConfig = breezeConfig || config;\r\n breezeConfig.registerAdapter(\"ajax\", AjaxJQueryAdapter);\r\n return breezeConfig.initializeAdapterInstance(\"ajax\", \"jQuery\", true) as AjaxJQueryAdapter;\r\n }\r\n\r\n initialize() {\r\n this.jQuery = jQuery;\r\n // look for the jQuery lib but don't fail immediately if not found\r\n if (!jQuery) {\r\n this.jQuery = core.requireLib(\"jQuery;jquery\");\r\n }\r\n }\r\n\r\n ajax(config: AjaxConfig) {\r\n if (!this.jQuery) {\r\n throw new Error(\"Unable to locate jQuery\");\r\n }\r\n let jqConfig = {\r\n type: config.type,\r\n url: config.url,\r\n data: config.params || config.data,\r\n dataType: config.dataType,\r\n contentType: config.contentType,\r\n crossDomain: config.crossDomain,\r\n headers: config.headers || {}\r\n };\r\n\r\n if (!core.isEmpty(this.defaultSettings)) {\r\n let compositeConfig = core.extend({}, this.defaultSettings);\r\n jqConfig = core.extend(compositeConfig, jqConfig) as any;\r\n // extend is shallow; extend headers separately\r\n let headers = core.extend({}, this.defaultSettings.headers); // copy default headers 1st\r\n jqConfig.headers = core.extend(headers, jqConfig.headers);\r\n }\r\n\r\n let requestInfo = {\r\n adapter: this, // this adapter\r\n config: jqConfig, // jQuery's ajax 'settings' object\r\n dsaConfig: config, // the config arg from the calling Breeze DataServiceAdapter\r\n success: successFn, // adapter's success callback\r\n error: errorFn, // adapter's error callback\r\n };\r\n\r\n if (core.isFunction(this.requestInterceptor)) {\r\n let ri = this.requestInterceptor as any;\r\n ri(requestInfo);\r\n if (ri.oneTime) {\r\n this.requestInterceptor = undefined;\r\n }\r\n }\r\n\r\n if (requestInfo.config) { // exists unless requestInterceptor killed it.\r\n (requestInfo as any).jqXHR = this.jQuery.ajax(requestInfo.config)\r\n .done(requestInfo.success)\r\n .fail(requestInfo.error);\r\n }\r\n\r\n function successFn(data: any, statusText: string, jqXHR: XMLHttpRequest) {\r\n let httpResponse = {\r\n config: config,\r\n data: data,\r\n getHeaders: getHeadersFn(jqXHR),\r\n status: jqXHR.status,\r\n statusText: statusText\r\n };\r\n config.success(httpResponse);\r\n // TODO: not sure how to do this or if needed.\r\n // jqXHR.onreadystatechange = null;\r\n // jqXHR.abort = null;\r\n }\r\n\r\n function errorFn(jqXHR: XMLHttpRequest, statusText: string, errorThrown: any) {\r\n let httpResponse = {\r\n config: config,\r\n data: jqXHR.responseText,\r\n error: errorThrown,\r\n getHeaders: getHeadersFn(jqXHR),\r\n status: jqXHR.status,\r\n statusText: statusText\r\n };\r\n config.error(httpResponse);\r\n // TODO: not sure how to do this or if needed.\r\n // jqXHR.onreadystatechange = null;\r\n // jqXHR.abort = null;\r\n }\r\n }\r\n}\r\n\r\nconfig.registerAdapter(\"ajax\", AjaxJQueryAdapter);\r\n\r\nfunction getHeadersFn(jqXHR: XMLHttpRequest): any {\r\n if (jqXHR.status === 0) { // timeout or abort; no headers\r\n return function (headerName: string) {\r\n return (headerName && headerName.length > 0) ? \"\" : {};\r\n };\r\n } else { // jqXHR should have header functions\r\n return function (headerName: string) {\r\n return (headerName && headerName.length > 0) ?\r\n jqXHR.getResponseHeader(headerName) :\r\n jqXHR.getAllResponseHeaders();\r\n };\r\n }\r\n}\r\n"],"names":["config","core"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("breeze-client")):"function"==typeof define&&define.amd?define("breeze-client/adapter-ajax-jquery",["exports","breeze-client"],t):t(((e=e||self)["breeze-client"]=e["breeze-client"]||{},e["breeze-client"]["adapter-ajax-jquery"]={}),e["breeze-client"])}(this,(function(e,t){"use strict";var r=function(){function e(){this.name="jQuery",this.defaultSettings={},this.requestInterceptor=void 0}return e.register=function(r){return(r=r||t.config).registerAdapter("ajax",e),r.initializeAdapterInstance("ajax","jQuery",!0)},e.prototype.initialize=function(){this.jQuery=jQuery,jQuery||(this.jQuery=t.core.requireLib("jQuery;jquery"))},e.prototype.ajax=function(e){if(!this.jQuery)throw new Error("Unable to locate jQuery");var r={type:e.type,url:e.url,data:e.params||e.data,dataType:e.dataType,contentType:e.contentType,crossDomain:e.crossDomain,headers:e.headers||{}};if(!t.core.isEmpty(this.defaultSettings)){var a=t.core.extend({},this.defaultSettings);r=t.core.extend(a,r);var i=t.core.extend({},this.defaultSettings.headers);r.headers=t.core.extend(i,r.headers)}var s={adapter:this,config:r,dsaConfig:e,success:function(t,r,a){var i={config:e,data:t,getHeaders:n(a),status:a.status,statusText:r};e.success(i)},error:function(t,r,a){var i={config:e,data:t.responseText,error:a,getHeaders:n(t),status:t.status,statusText:r};e.error(i)}};if(t.core.isFunction(this.requestInterceptor)){var o=this.requestInterceptor;o(s),o.oneTime&&(this.requestInterceptor=void 0)}s.config&&(s.jqXHR=this.jQuery.ajax(s.config).done(s.success).fail(s.error))},e}();function n(e){return 0===e.status?function(e){return e&&e.length>0?"":{}}:function(t){return t&&t.length>0?e.getResponseHeader(t):e.getAllResponseHeaders()}}t.config.registerAdapter("ajax",r),e.AjaxJQueryAdapter=r,Object.defineProperty(e,"__esModule",{value:!0})}));
2
+ //# sourceMappingURL=breeze-client-adapter-ajax-jquery.umd.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ng://breeze-client/adapter-ajax-jquery/adapter-ajax-jquery.ts"],"names":["AjaxJQueryAdapter","this","name","defaultSettings","requestInterceptor","undefined","register","breezeConfig","config","registerAdapter","initializeAdapterInstance","prototype","initialize","jQuery","core","requireLib","ajax","Error","jqConfig","type","url","data","params","dataType","contentType","crossDomain","headers","isEmpty","compositeConfig","extend","requestInfo","adapter","dsaConfig","success","statusText","jqXHR","httpResponse","getHeaders","getHeadersFn","status","error","errorThrown","responseText","isFunction","ri","oneTime","done","fail","headerName","length","getResponseHeader","getAllResponseHeaders"],"mappings":"oYAUE,SAAAA,IACEC,KAAKC,KAAO,SACZD,KAAKE,gBAAkB,GACvBF,KAAKG,wBAAqBC,EA0F9B,OAvFSL,EAAAM,SAAP,SAAgBC,GAGd,OAFAA,EAAeA,GAAgBC,EAAAA,QAClBC,gBAAgB,OAAQT,GAC9BO,EAAaG,0BAA0B,OAAQ,UAAU,IAGlEV,EAAAW,UAAAC,WAAA,WACEX,KAAKY,OAASA,OAETA,SACHZ,KAAKY,OAASC,EAAAA,KAAKC,WAAW,mBAIlCf,EAAAW,UAAAK,KAAA,SAAKR,GACH,IAAKP,KAAKY,OACR,MAAM,IAAII,MAAM,2BAElB,IAAIC,EAAW,CACbC,KAAMX,EAAOW,KACbC,IAAKZ,EAAOY,IACZC,KAAMb,EAAOc,QAAUd,EAAOa,KAC9BE,SAAUf,EAAOe,SACjBC,YAAahB,EAAOgB,YACpBC,YAAajB,EAAOiB,YACpBC,QAASlB,EAAOkB,SAAW,IAG7B,IAAKZ,EAAAA,KAAKa,QAAQ1B,KAAKE,iBAAkB,CACvC,IAAIyB,EAAkBd,EAAAA,KAAKe,OAAO,GAAI5B,KAAKE,iBAC3Ce,EAAWJ,EAAAA,KAAKe,OAAOD,EAAiBV,GAExC,IAAIQ,EAAUZ,EAAAA,KAAKe,OAAO,GAAI5B,KAAKE,gBAAgBuB,SACnDR,EAASQ,QAAUZ,EAAAA,KAAKe,OAAOH,EAASR,EAASQ,SAGnD,IAAII,EAAc,CAChBC,QAAS9B,KACTO,OAAQU,EACRc,UAAWxB,EACXyB,QAkBF,SAAmBZ,EAAWa,EAAoBC,GAChD,IAAIC,EAAe,CACjB5B,OAAQA,EACRa,KAAMA,EACNgB,WAAYC,EAAaH,GACzBI,OAAQJ,EAAMI,OACdL,WAAYA,GAEd1B,EAAOyB,QAAQG,IAzBfI,MA+BF,SAAiBL,EAAuBD,EAAoBO,GAC1D,IAAIL,EAAe,CACjB5B,OAAQA,EACRa,KAAMc,EAAMO,aACZF,MAAOC,EACPJ,WAAYC,EAAaH,GACzBI,OAAQJ,EAAMI,OACdL,WAAYA,GAEd1B,EAAOgC,MAAMJ,KArCf,GAAItB,EAAAA,KAAK6B,WAAW1C,KAAKG,oBAAqB,CAC5C,IAAIwC,EAAK3C,KAAKG,mBACdwC,EAAGd,GACCc,EAAGC,UACL5C,KAAKG,wBAAqBC,GAI1ByB,EAAYtB,SACbsB,EAAoBK,MAAQlC,KAAKY,OAAOG,KAAKc,EAAYtB,QACvDsC,KAAKhB,EAAYG,SACjBc,KAAKjB,EAAYU,SAgC1BxC,KAIA,SAASsC,EAAaH,GACpB,OAAqB,IAAjBA,EAAMI,OACD,SAAUS,GACf,OAAQA,GAAcA,EAAWC,OAAS,EAAK,GAAK,IAG/C,SAAUD,GACf,OAAQA,GAAcA,EAAWC,OAAS,EACxCd,EAAMe,kBAAkBF,GACxBb,EAAMgB,yBAXd3C,EAAAA,OAAOC,gBAAgB,OAAQT","sourcesContent":["import { AjaxAdapter, AjaxConfig, AjaxRequestInterceptor, BreezeConfig, config, core } from 'breeze-client';\r\n\r\ndeclare var jQuery: any;\r\n\r\nexport class AjaxJQueryAdapter implements AjaxAdapter {\r\n name: string;\r\n defaultSettings: { headers?: { [name: string]: string } };\r\n requestInterceptor?: AjaxRequestInterceptor;\r\n jQuery: any;\r\n\r\n constructor() {\r\n this.name = \"jQuery\";\r\n this.defaultSettings = { };\r\n this.requestInterceptor = undefined;\r\n }\r\n\r\n static register(breezeConfig?: BreezeConfig) {\r\n breezeConfig = breezeConfig || config;\r\n breezeConfig.registerAdapter(\"ajax\", AjaxJQueryAdapter);\r\n return breezeConfig.initializeAdapterInstance(\"ajax\", \"jQuery\", true) as AjaxJQueryAdapter;\r\n }\r\n\r\n initialize() {\r\n this.jQuery = jQuery;\r\n // look for the jQuery lib but don't fail immediately if not found\r\n if (!jQuery) {\r\n this.jQuery = core.requireLib(\"jQuery;jquery\");\r\n }\r\n }\r\n\r\n ajax(config: AjaxConfig) {\r\n if (!this.jQuery) {\r\n throw new Error(\"Unable to locate jQuery\");\r\n }\r\n let jqConfig = {\r\n type: config.type,\r\n url: config.url,\r\n data: config.params || config.data,\r\n dataType: config.dataType,\r\n contentType: config.contentType,\r\n crossDomain: config.crossDomain,\r\n headers: config.headers || {}\r\n };\r\n\r\n if (!core.isEmpty(this.defaultSettings)) {\r\n let compositeConfig = core.extend({}, this.defaultSettings);\r\n jqConfig = core.extend(compositeConfig, jqConfig) as any;\r\n // extend is shallow; extend headers separately\r\n let headers = core.extend({}, this.defaultSettings.headers); // copy default headers 1st\r\n jqConfig.headers = core.extend(headers, jqConfig.headers);\r\n }\r\n\r\n let requestInfo = {\r\n adapter: this, // this adapter\r\n config: jqConfig, // jQuery's ajax 'settings' object\r\n dsaConfig: config, // the config arg from the calling Breeze DataServiceAdapter\r\n success: successFn, // adapter's success callback\r\n error: errorFn, // adapter's error callback\r\n };\r\n\r\n if (core.isFunction(this.requestInterceptor)) {\r\n let ri = this.requestInterceptor as any;\r\n ri(requestInfo);\r\n if (ri.oneTime) {\r\n this.requestInterceptor = undefined;\r\n }\r\n }\r\n\r\n if (requestInfo.config) { // exists unless requestInterceptor killed it.\r\n (requestInfo as any).jqXHR = this.jQuery.ajax(requestInfo.config)\r\n .done(requestInfo.success)\r\n .fail(requestInfo.error);\r\n }\r\n\r\n function successFn(data: any, statusText: string, jqXHR: XMLHttpRequest) {\r\n let httpResponse = {\r\n config: config,\r\n data: data,\r\n getHeaders: getHeadersFn(jqXHR),\r\n status: jqXHR.status,\r\n statusText: statusText\r\n };\r\n config.success(httpResponse);\r\n // TODO: not sure how to do this or if needed.\r\n // jqXHR.onreadystatechange = null;\r\n // jqXHR.abort = null;\r\n }\r\n\r\n function errorFn(jqXHR: XMLHttpRequest, statusText: string, errorThrown: any) {\r\n let httpResponse = {\r\n config: config,\r\n data: jqXHR.responseText,\r\n error: errorThrown,\r\n getHeaders: getHeadersFn(jqXHR),\r\n status: jqXHR.status,\r\n statusText: statusText\r\n };\r\n config.error(httpResponse);\r\n // TODO: not sure how to do this or if needed.\r\n // jqXHR.onreadystatechange = null;\r\n // jqXHR.abort = null;\r\n }\r\n }\r\n}\r\n\r\nconfig.registerAdapter(\"ajax\", AjaxJQueryAdapter);\r\n\r\nfunction getHeadersFn(jqXHR: XMLHttpRequest): any {\r\n if (jqXHR.status === 0) { // timeout or abort; no headers\r\n return function (headerName: string) {\r\n return (headerName && headerName.length > 0) ? \"\" : {};\r\n };\r\n } else { // jqXHR should have header functions\r\n return function (headerName: string) {\r\n return (headerName && headerName.length > 0) ?\r\n jqXHR.getResponseHeader(headerName) :\r\n jqXHR.getAllResponseHeaders();\r\n };\r\n }\r\n}\r\n"]}
@@ -0,0 +1,92 @@
1
+ (function (global, factory) {
2
+ typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports) :
3
+ typeof define === 'function' && define.amd ? define('breeze-client/adapter-ajax-post', ['exports'], factory) :
4
+ (global = global || self, factory((global['breeze-client'] = global['breeze-client'] || {}, global['breeze-client']['adapter-ajax-post'] = {})));
5
+ }(this, (function (exports) { 'use strict';
6
+
7
+ /**
8
+ * Functions to enable Breeze to use POST for queries when
9
+ * special parameters are passed using the .withParameters function.
10
+ *
11
+ * Copyright 2015-2021 IdeaBlade, Inc. All Rights Reserved.
12
+ * Use, reproduction, distribution, and modification of this code is subject to the terms and
13
+ * conditions of the IdeaBlade Breeze license, available at http://www.breezejs.com/license
14
+ *
15
+ * Author: Steve Schmitt
16
+ * Version:
17
+ * 1.2.0 - Moved into breeze-client repo and npm package
18
+ * 1.1.0 - revised: eliminated return object, configAjaxAdapter method; add ajaxPostEnabled flag
19
+ * 1.0.6 - original
20
+ *
21
+ * Special parameters:
22
+ * $method: ‘POST’ or ‘GET’ (the default)
23
+ * $encoding: ‘JSON’ or x-www-form-urlencoded (the default)
24
+ * $data: contains the data to be sent to the server
25
+ *
26
+ * Installation:
27
+ * var ajaxAdapter = config.initializeAdapterInstance('ajax', adapterName, true);
28
+ * AjaxPostWrapper.wrapAjax(ajaxAdapter);
29
+ *
30
+ * Example:
31
+ * var query = breeze.EntityQuery.from('SimilarCustomersPOST')
32
+ * .withParameters({
33
+ * $method: 'POST',
34
+ * $encoding: 'JSON',
35
+ * $data: { CompanyName: 'Hilo Hattie', ContactName: 'Donald', City: 'Duck', Country: 'USA', Phone: '808-234-5678' }
36
+ * });
37
+ *
38
+ **/
39
+ var AjaxPostWrapper = /** @class */ (function () {
40
+ function AjaxPostWrapper() {
41
+ }
42
+ AjaxPostWrapper.wrapAjax = function (ajaxAdapter) {
43
+ if (ajaxAdapter.ajaxPostEnabled) {
44
+ return; // already wrapped it.
45
+ }
46
+ var ajaxFunction = ajaxAdapter.ajax;
47
+ if (ajaxFunction) {
48
+ ajaxAdapter.ajax = function (settings) {
49
+ processSettings(settings);
50
+ return ajaxFunction.call(ajaxAdapter, settings);
51
+ };
52
+ ajaxAdapter.ajaxPostEnabled = true;
53
+ }
54
+ // Handle the POST-specific properties in the settings - $method, $data, $encoding
55
+ function processSettings(settings) {
56
+ var parameters = settings && settings.params;
57
+ if (!parameters)
58
+ return settings;
59
+ // wrapped data; handle the special properties
60
+ settings.type = parameters.$method || settings.type; // GET is default method
61
+ var data = parameters.$data;
62
+ if (data) {
63
+ // if $data exists, assume all of other parameters are guidance for building a POST
64
+ if (parameters.$encoding === 'JSON') {
65
+ // JSON encoding
66
+ settings.processData = false; // don't let JQuery form-encode it
67
+ settings.contentType = "application/json; charset=UTF-8";
68
+ if (typeof (data) === 'object') {
69
+ settings.data = JSON.stringify(data); // encode parameters as JSON
70
+ }
71
+ else {
72
+ settings.data = data;
73
+ }
74
+ }
75
+ else {
76
+ settings.data = data;
77
+ }
78
+ // must be null or jQuery ajax adapter won't see settings.data
79
+ settings.params = null;
80
+ }
81
+ return settings;
82
+ }
83
+ };
84
+ return AjaxPostWrapper;
85
+ }());
86
+
87
+ exports.AjaxPostWrapper = AjaxPostWrapper;
88
+
89
+ Object.defineProperty(exports, '__esModule', { value: true });
90
+
91
+ })));
92
+ //# sourceMappingURL=breeze-client-adapter-ajax-post.umd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"breeze-client-adapter-ajax-post.umd.js","sources":["ng://breeze-client/adapter-ajax-post/adapter-ajax-post.ts"],"sourcesContent":["import * as breeze from 'breeze-client';\r\n\r\n/**\r\n * Functions to enable Breeze to use POST for queries when\r\n * special parameters are passed using the .withParameters function.\r\n *\r\n * Copyright 2015-2021 IdeaBlade, Inc. All Rights Reserved.\r\n * Use, reproduction, distribution, and modification of this code is subject to the terms and\r\n * conditions of the IdeaBlade Breeze license, available at http://www.breezejs.com/license\r\n *\r\n * Author: Steve Schmitt\r\n * Version: \r\n * 1.2.0 - Moved into breeze-client repo and npm package\r\n * 1.1.0 - revised: eliminated return object, configAjaxAdapter method; add ajaxPostEnabled flag\r\n * 1.0.6 - original\r\n *\r\n * Special parameters:\r\n * $method: ‘POST’ or ‘GET’ (the default)\r\n * $encoding: ‘JSON’ or x-www-form-urlencoded (the default)\r\n * $data: contains the data to be sent to the server\r\n *\r\n * Installation:\r\n * var ajaxAdapter = config.initializeAdapterInstance('ajax', adapterName, true);\r\n * AjaxPostWrapper.wrapAjax(ajaxAdapter);\r\n *\r\n * Example:\r\n * var query = breeze.EntityQuery.from('SimilarCustomersPOST')\r\n * .withParameters({\r\n * $method: 'POST',\r\n * $encoding: 'JSON',\r\n * $data: { CompanyName: 'Hilo Hattie', ContactName: 'Donald', City: 'Duck', Country: 'USA', Phone: '808-234-5678' }\r\n * });\r\n *\r\n **/\r\nexport class AjaxPostWrapper {\r\n\r\n static wrapAjax(ajaxAdapter: breeze.AjaxAdapter) {\r\n\r\n if ((ajaxAdapter as any).ajaxPostEnabled) {\r\n return; // already wrapped it.\r\n }\r\n\r\n let ajaxFunction = ajaxAdapter.ajax;\r\n if (ajaxFunction) {\r\n ajaxAdapter.ajax = function (settings) {\r\n processSettings(settings);\r\n return ajaxFunction.call(ajaxAdapter, settings);\r\n };\r\n (ajaxAdapter as any).ajaxPostEnabled = true;\r\n }\r\n\r\n\r\n // Handle the POST-specific properties in the settings - $method, $data, $encoding\r\n function processSettings(settings: any) {\r\n let parameters = settings && settings.params;\r\n if (!parameters) return settings;\r\n\r\n // wrapped data; handle the special properties\r\n settings.type = parameters.$method || settings.type; // GET is default method\r\n\r\n let data = parameters.$data;\r\n if (data) {\r\n // if $data exists, assume all of other parameters are guidance for building a POST\r\n if (parameters.$encoding === 'JSON') {\r\n // JSON encoding\r\n settings.processData = false; // don't let JQuery form-encode it\r\n settings.contentType = \"application/json; charset=UTF-8\";\r\n\r\n if (typeof (data) === 'object') {\r\n settings.data = JSON.stringify(data); // encode parameters as JSON\r\n } else {\r\n settings.data = data;\r\n }\r\n } else {\r\n settings.data = data;\r\n }\r\n // must be null or jQuery ajax adapter won't see settings.data\r\n settings.params = null;\r\n }\r\n\r\n return settings;\r\n }\r\n }\r\n\r\n\r\n}"],"names":[],"mappings":";;;;;;IAEA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;QAgCA;SAmDC;QAjDQ,wBAAQ,GAAf,UAAgB,WAA+B;YAE7C,IAAK,WAAmB,CAAC,eAAe,EAAE;gBACxC,OAAO;aACR;YAED,IAAI,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC;YACpC,IAAI,YAAY,EAAE;gBAChB,WAAW,CAAC,IAAI,GAAG,UAAU,QAAQ;oBACnC,eAAe,CAAC,QAAQ,CAAC,CAAC;oBAC1B,OAAO,YAAY,CAAC,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;iBACjD,CAAC;gBACD,WAAmB,CAAC,eAAe,GAAG,IAAI,CAAC;aAC7C;;YAID,SAAS,eAAe,CAAC,QAAa;gBACpC,IAAI,UAAU,GAAG,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC;gBAC7C,IAAI,CAAC,UAAU;oBAAE,OAAO,QAAQ,CAAC;;gBAGjC,QAAQ,CAAC,IAAI,GAAG,UAAU,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC;gBAEpD,IAAI,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC5B,IAAI,IAAI,EAAE;;oBAER,IAAI,UAAU,CAAC,SAAS,KAAK,MAAM,EAAE;;wBAEnC,QAAQ,CAAC,WAAW,GAAG,KAAK,CAAC;wBAC7B,QAAQ,CAAC,WAAW,GAAG,iCAAiC,CAAC;wBAEzD,IAAI,QAAQ,IAAI,CAAC,KAAK,QAAQ,EAAE;4BAC9B,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;yBACtC;6BAAM;4BACL,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;yBACtB;qBACF;yBAAM;wBACL,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;qBACtB;;oBAED,QAAQ,CAAC,MAAM,GAAG,IAAI,CAAC;iBACxB;gBAED,OAAO,QAAQ,CAAC;aACjB;SACF;QAGH,sBAAC;IAAD,CAAC;;;;;;;;;;;;"}
@@ -0,0 +1,2 @@
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define("breeze-client/adapter-ajax-post",["exports"],t):t(((e=e||self)["breeze-client"]=e["breeze-client"]||{},e["breeze-client"]["adapter-ajax-post"]={}))}(this,(function(e){"use strict";var t=function(){function e(){}return e.wrapAjax=function(e){if(!e.ajaxPostEnabled){var t=e.ajax;t&&(e.ajax=function(a){return function(e){var t=e&&e.params;if(!t)return e;e.type=t.$method||e.type;var a=t.$data;a&&("JSON"===t.$encoding?(e.processData=!1,e.contentType="application/json; charset=UTF-8",e.data="object"==typeof a?JSON.stringify(a):a):e.data=a,e.params=null)}(a),t.call(e,a)},e.ajaxPostEnabled=!0)}},e}();e.AjaxPostWrapper=t,Object.defineProperty(e,"__esModule",{value:!0})}));
2
+ //# sourceMappingURL=breeze-client-adapter-ajax-post.umd.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["ng://breeze-client/adapter-ajax-post/adapter-ajax-post.ts"],"names":["AjaxPostWrapper","wrapAjax","ajaxAdapter","ajaxPostEnabled","ajaxFunction","ajax","settings","parameters","params","type","$method","data","$data","$encoding","processData","contentType","JSON","stringify","processSettings","call"],"mappings":"kUAkCA,SAAAA,KAmDA,OAjDSA,EAAAC,SAAP,SAAgBC,GAEd,IAAKA,EAAoBC,gBAAzB,CAIA,IAAIC,EAAeF,EAAYG,KAC3BD,IACFF,EAAYG,KAAO,SAAUC,GAE3B,OAOJ,SAAyBA,GACvB,IAAIC,EAAaD,GAAYA,EAASE,OACtC,IAAKD,EAAY,OAAOD,EAGxBA,EAASG,KAAOF,EAAWG,SAAWJ,EAASG,KAE/C,IAAIE,EAAOJ,EAAWK,MAClBD,IAE2B,SAAzBJ,EAAWM,WAEbP,EAASQ,aAAc,EACvBR,EAASS,YAAc,kCAGrBT,EAASK,KADW,iBAAlB,EACcK,KAAKC,UAAUN,GAEfA,GAGlBL,EAASK,KAAOA,EAGlBL,EAASE,OAAS,MAhClBU,CAAgBZ,GACTF,EAAae,KAAKjB,EAAaI,IAEvCJ,EAAoBC,iBAAkB,KAqC7CH","sourcesContent":["import * as breeze from 'breeze-client';\r\n\r\n/**\r\n * Functions to enable Breeze to use POST for queries when\r\n * special parameters are passed using the .withParameters function.\r\n *\r\n * Copyright 2015-2021 IdeaBlade, Inc. All Rights Reserved.\r\n * Use, reproduction, distribution, and modification of this code is subject to the terms and\r\n * conditions of the IdeaBlade Breeze license, available at http://www.breezejs.com/license\r\n *\r\n * Author: Steve Schmitt\r\n * Version: \r\n * 1.2.0 - Moved into breeze-client repo and npm package\r\n * 1.1.0 - revised: eliminated return object, configAjaxAdapter method; add ajaxPostEnabled flag\r\n * 1.0.6 - original\r\n *\r\n * Special parameters:\r\n * $method: ‘POST’ or ‘GET’ (the default)\r\n * $encoding: ‘JSON’ or x-www-form-urlencoded (the default)\r\n * $data: contains the data to be sent to the server\r\n *\r\n * Installation:\r\n * var ajaxAdapter = config.initializeAdapterInstance('ajax', adapterName, true);\r\n * AjaxPostWrapper.wrapAjax(ajaxAdapter);\r\n *\r\n * Example:\r\n * var query = breeze.EntityQuery.from('SimilarCustomersPOST')\r\n * .withParameters({\r\n * $method: 'POST',\r\n * $encoding: 'JSON',\r\n * $data: { CompanyName: 'Hilo Hattie', ContactName: 'Donald', City: 'Duck', Country: 'USA', Phone: '808-234-5678' }\r\n * });\r\n *\r\n **/\r\nexport class AjaxPostWrapper {\r\n\r\n static wrapAjax(ajaxAdapter: breeze.AjaxAdapter) {\r\n\r\n if ((ajaxAdapter as any).ajaxPostEnabled) {\r\n return; // already wrapped it.\r\n }\r\n\r\n let ajaxFunction = ajaxAdapter.ajax;\r\n if (ajaxFunction) {\r\n ajaxAdapter.ajax = function (settings) {\r\n processSettings(settings);\r\n return ajaxFunction.call(ajaxAdapter, settings);\r\n };\r\n (ajaxAdapter as any).ajaxPostEnabled = true;\r\n }\r\n\r\n\r\n // Handle the POST-specific properties in the settings - $method, $data, $encoding\r\n function processSettings(settings: any) {\r\n let parameters = settings && settings.params;\r\n if (!parameters) return settings;\r\n\r\n // wrapped data; handle the special properties\r\n settings.type = parameters.$method || settings.type; // GET is default method\r\n\r\n let data = parameters.$data;\r\n if (data) {\r\n // if $data exists, assume all of other parameters are guidance for building a POST\r\n if (parameters.$encoding === 'JSON') {\r\n // JSON encoding\r\n settings.processData = false; // don't let JQuery form-encode it\r\n settings.contentType = \"application/json; charset=UTF-8\";\r\n\r\n if (typeof (data) === 'object') {\r\n settings.data = JSON.stringify(data); // encode parameters as JSON\r\n } else {\r\n settings.data = data;\r\n }\r\n } else {\r\n settings.data = data;\r\n }\r\n // must be null or jQuery ajax adapter won't see settings.data\r\n settings.params = null;\r\n }\r\n\r\n return settings;\r\n }\r\n }\r\n\r\n\r\n}"]}