breeze-client 2.1.7 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/README.md +8 -4
  2. package/adapter-ajax-angularjs/{breeze-client-adapter-ajax-angularjs.d.ts → index.d.ts} +1 -0
  3. package/adapter-ajax-fetch/{breeze-client-adapter-ajax-fetch.d.ts → index.d.ts} +1 -0
  4. package/adapter-ajax-httpclient/{breeze-client-adapter-ajax-httpclient.d.ts → index.d.ts} +1 -0
  5. package/adapter-ajax-jquery/{breeze-client-adapter-ajax-jquery.d.ts → index.d.ts} +1 -0
  6. package/adapter-ajax-post/{breeze-client-adapter-ajax-post.d.ts → index.d.ts} +1 -0
  7. package/adapter-data-service-odata/{breeze-client-adapter-data-service-odata.d.ts → index.d.ts} +1 -0
  8. package/adapter-data-service-webapi/{breeze-client-adapter-data-service-webapi.d.ts → index.d.ts} +1 -0
  9. package/adapter-model-library-backing-store/{breeze-client-adapter-model-library-backing-store.d.ts → index.d.ts} +1 -0
  10. package/adapter-model-library-ko/{breeze-client-adapter-model-library-ko.d.ts → index.d.ts} +1 -0
  11. package/adapter-uri-builder-json/{breeze-client-adapter-uri-builder-json.d.ts → index.d.ts} +1 -0
  12. package/adapter-uri-builder-odata/{breeze-client-adapter-uri-builder-odata.d.ts → index.d.ts} +1 -0
  13. package/esm2022/adapter-ajax-angularjs/adapter-ajax-angularjs.mjs +135 -0
  14. package/esm2022/adapter-ajax-angularjs/adapter-core.mjs +49 -0
  15. package/esm2022/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.mjs +5 -0
  16. package/esm2022/adapter-ajax-fetch/adapter-ajax-fetch.mjs +135 -0
  17. package/esm2022/adapter-ajax-fetch/adapter-core.mjs +49 -0
  18. package/esm2022/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.mjs +5 -0
  19. package/esm2022/adapter-ajax-httpclient/adapter-ajax-httpclient.mjs +139 -0
  20. package/esm2022/adapter-ajax-httpclient/adapter-core.mjs +49 -0
  21. package/esm2022/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.mjs +5 -0
  22. package/esm2022/adapter-ajax-jquery/adapter-ajax-jquery.mjs +107 -0
  23. package/esm2022/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.mjs +5 -0
  24. package/esm2022/adapter-ajax-post/adapter-ajax-post.mjs +77 -0
  25. package/esm2022/adapter-ajax-post/breeze-client-adapter-ajax-post.mjs +5 -0
  26. package/esm2022/adapter-data-service-odata/adapter-core.mjs +49 -0
  27. package/{esm5/adapter-data-service-odata/adapter-data-service-odata.js → esm2022/adapter-data-service-odata/adapter-data-service-odata.mjs} +138 -147
  28. package/esm2022/adapter-data-service-odata/breeze-client-adapter-data-service-odata.mjs +5 -0
  29. package/esm2022/adapter-data-service-webapi/adapter-data-service-webapi.mjs +100 -0
  30. package/esm2022/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.mjs +5 -0
  31. package/esm2022/adapter-model-library-backing-store/adapter-model-library-backing-store.mjs +269 -0
  32. package/esm2022/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.mjs +5 -0
  33. package/esm2022/adapter-model-library-ko/adapter-model-library-ko.mjs +241 -0
  34. package/esm2022/adapter-model-library-ko/breeze-client-adapter-model-library-ko.mjs +5 -0
  35. package/esm2022/adapter-uri-builder-json/adapter-core.mjs +49 -0
  36. package/esm2022/adapter-uri-builder-json/adapter-uri-builder-json.mjs +37 -0
  37. package/esm2022/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.mjs +5 -0
  38. package/esm2022/adapter-uri-builder-odata/adapter-core.mjs +49 -0
  39. package/esm2022/adapter-uri-builder-odata/adapter-uri-builder-odata.mjs +191 -0
  40. package/esm2022/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.mjs +5 -0
  41. package/esm2022/breeze-client.mjs +5 -0
  42. package/esm2022/index.mjs +2 -0
  43. package/esm2022/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.mjs +5 -0
  44. package/esm2022/mixin-get-entity-graph/mixin-get-entity-graph.mjs +269 -0
  45. package/esm2022/mixin-save-queuing/breeze-client-mixin-save-queuing.mjs +5 -0
  46. package/esm2022/mixin-save-queuing/mixin-save-queuing.mjs +421 -0
  47. package/esm2022/src/abstract-data-service-adapter.mjs +325 -0
  48. package/esm2022/src/array.mjs +4 -0
  49. package/esm2022/src/assert-param.mjs +330 -0
  50. package/esm2022/src/breeze.mjs +85 -0
  51. package/esm2022/src/complex-array.mjs +117 -0
  52. package/esm2022/src/config.mjs +232 -0
  53. package/esm2022/src/core.mjs +712 -0
  54. package/esm2022/src/csdl-metadata-parser.mjs +385 -0
  55. package/esm2022/src/data-service.mjs +239 -0
  56. package/{esm2015/src/data-type.js → esm2022/src/data-type.mjs} +131 -124
  57. package/esm2022/src/default-property-interceptor.mjs +460 -0
  58. package/{esm2015/src/entity-action.js → esm2022/src/entity-action.mjs} +25 -25
  59. package/esm2022/src/entity-aspect.mjs +897 -0
  60. package/esm2022/src/entity-group.mjs +192 -0
  61. package/esm2022/src/entity-key.mjs +127 -0
  62. package/esm2022/src/entity-manager.mjs +2183 -0
  63. package/esm2022/src/entity-metadata.mjs +2242 -0
  64. package/esm2022/src/entity-query.mjs +1024 -0
  65. package/esm2022/src/entity-state.mjs +107 -0
  66. package/esm2022/src/enum.mjs +143 -0
  67. package/esm2022/src/event.mjs +264 -0
  68. package/esm2022/src/interface-registry.mjs +39 -0
  69. package/esm2022/src/key-generator.mjs +110 -0
  70. package/esm2022/src/local-query-comparison-options.mjs +75 -0
  71. package/esm2022/src/mapping-context.mjs +422 -0
  72. package/{esm5/src/naming-convention.js → esm2022/src/naming-convention.mjs} +35 -29
  73. package/esm2022/src/observable-array.mjs +183 -0
  74. package/esm2022/src/predicate.mjs +1259 -0
  75. package/esm2022/src/primitive-array.mjs +85 -0
  76. package/esm2022/src/query-options.mjs +160 -0
  77. package/esm2022/src/relation-array.mjs +173 -0
  78. package/esm2022/src/save-options.mjs +51 -0
  79. package/esm2022/src/unattached-children-map.mjs +56 -0
  80. package/{esm5/src/validate.js → esm2022/src/validate.mjs} +116 -110
  81. package/esm2022/src/validation-options.mjs +78 -0
  82. package/{fesm2015/breeze-client-adapter-ajax-angularjs.js → fesm2022/breeze-client-adapter-ajax-angularjs.mjs} +6 -1
  83. package/fesm2022/breeze-client-adapter-ajax-angularjs.mjs.map +1 -0
  84. package/{fesm2015/breeze-client-adapter-ajax-fetch.js → fesm2022/breeze-client-adapter-ajax-fetch.mjs} +9 -4
  85. package/fesm2022/breeze-client-adapter-ajax-fetch.mjs.map +1 -0
  86. package/{fesm2015/breeze-client-adapter-ajax-httpclient.js → fesm2022/breeze-client-adapter-ajax-httpclient.mjs} +6 -4
  87. package/fesm2022/breeze-client-adapter-ajax-httpclient.mjs.map +1 -0
  88. package/{fesm2015/breeze-client-adapter-ajax-jquery.js → fesm2022/breeze-client-adapter-ajax-jquery.mjs} +6 -2
  89. package/fesm2022/breeze-client-adapter-ajax-jquery.mjs.map +1 -0
  90. package/{fesm2015/breeze-client-adapter-ajax-post.js → fesm2022/breeze-client-adapter-ajax-post.mjs} +1 -1
  91. package/fesm2022/breeze-client-adapter-ajax-post.mjs.map +1 -0
  92. package/{fesm2015/breeze-client-adapter-data-service-odata.js → fesm2022/breeze-client-adapter-data-service-odata.mjs} +68 -69
  93. package/fesm2022/breeze-client-adapter-data-service-odata.mjs.map +1 -0
  94. package/{fesm2015/breeze-client-adapter-data-service-webapi.js → fesm2022/breeze-client-adapter-data-service-webapi.mjs} +30 -30
  95. package/fesm2022/breeze-client-adapter-data-service-webapi.mjs.map +1 -0
  96. package/{fesm2015/breeze-client-adapter-model-library-backing-store.js → fesm2022/breeze-client-adapter-model-library-backing-store.mjs} +14 -13
  97. package/fesm2022/breeze-client-adapter-model-library-backing-store.mjs.map +1 -0
  98. package/{fesm2015/breeze-client-adapter-model-library-ko.js → fesm2022/breeze-client-adapter-model-library-ko.mjs} +14 -13
  99. package/fesm2022/breeze-client-adapter-model-library-ko.mjs.map +1 -0
  100. package/{fesm2015/breeze-client-adapter-uri-builder-json.js → fesm2022/breeze-client-adapter-uri-builder-json.mjs} +9 -8
  101. package/fesm2022/breeze-client-adapter-uri-builder-json.mjs.map +1 -0
  102. package/{fesm2015/breeze-client-adapter-uri-builder-odata.js → fesm2022/breeze-client-adapter-uri-builder-odata.mjs} +86 -86
  103. package/fesm2022/breeze-client-adapter-uri-builder-odata.mjs.map +1 -0
  104. package/{fesm2015/breeze-client-mixin-get-entity-graph.js → fesm2022/breeze-client-mixin-get-entity-graph.mjs} +1 -1
  105. package/fesm2022/breeze-client-mixin-get-entity-graph.mjs.map +1 -0
  106. package/{fesm2015/breeze-client-mixin-save-queuing.js → fesm2022/breeze-client-mixin-save-queuing.mjs} +23 -2
  107. package/fesm2022/breeze-client-mixin-save-queuing.mjs.map +1 -0
  108. package/{fesm2015/breeze-client.js → fesm2022/breeze-client.mjs} +2039 -1537
  109. package/fesm2022/breeze-client.mjs.map +1 -0
  110. package/mixin-get-entity-graph/{breeze-client-mixin-get-entity-graph.d.ts → index.d.ts} +1 -0
  111. package/mixin-save-queuing/{breeze-client-mixin-save-queuing.d.ts → index.d.ts} +1 -0
  112. package/package.json +94 -12
  113. package/src/config.d.ts +1 -1
  114. package/src/core.d.ts +1 -1
  115. package/src/entity-aspect.d.ts +1 -1
  116. package/src/entity-metadata.d.ts +8 -6
  117. package/src/entity-query.d.ts +1 -1
  118. package/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.metadata.json +0 -1
  119. package/adapter-ajax-angularjs/package.json +0 -13
  120. package/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.metadata.json +0 -1
  121. package/adapter-ajax-fetch/package.json +0 -13
  122. package/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.metadata.json +0 -1
  123. package/adapter-ajax-httpclient/package.json +0 -13
  124. package/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.metadata.json +0 -1
  125. package/adapter-ajax-jquery/package.json +0 -13
  126. package/adapter-ajax-post/breeze-client-adapter-ajax-post.metadata.json +0 -1
  127. package/adapter-ajax-post/package.json +0 -13
  128. package/adapter-data-service-odata/breeze-client-adapter-data-service-odata.metadata.json +0 -1
  129. package/adapter-data-service-odata/package.json +0 -13
  130. package/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.metadata.json +0 -1
  131. package/adapter-data-service-webapi/package.json +0 -13
  132. package/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.metadata.json +0 -1
  133. package/adapter-model-library-backing-store/package.json +0 -13
  134. package/adapter-model-library-ko/breeze-client-adapter-model-library-ko.metadata.json +0 -1
  135. package/adapter-model-library-ko/package.json +0 -13
  136. package/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.metadata.json +0 -1
  137. package/adapter-uri-builder-json/package.json +0 -13
  138. package/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.metadata.json +0 -1
  139. package/adapter-uri-builder-odata/package.json +0 -13
  140. package/breeze-client.d.ts +0 -8
  141. package/breeze-client.metadata.json +0 -1
  142. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js +0 -190
  143. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js.map +0 -1
  144. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js +0 -2
  145. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js.map +0 -1
  146. package/bundles/breeze-client-adapter-ajax-fetch.umd.js +0 -190
  147. package/bundles/breeze-client-adapter-ajax-fetch.umd.js.map +0 -1
  148. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js +0 -2
  149. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js.map +0 -1
  150. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js +0 -195
  151. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js.map +0 -1
  152. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js +0 -2
  153. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js.map +0 -1
  154. package/bundles/breeze-client-adapter-ajax-jquery.umd.js +0 -115
  155. package/bundles/breeze-client-adapter-ajax-jquery.umd.js.map +0 -1
  156. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js +0 -2
  157. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js.map +0 -1
  158. package/bundles/breeze-client-adapter-ajax-post.umd.js +0 -92
  159. package/bundles/breeze-client-adapter-ajax-post.umd.js.map +0 -1
  160. package/bundles/breeze-client-adapter-ajax-post.umd.min.js +0 -2
  161. package/bundles/breeze-client-adapter-ajax-post.umd.min.js.map +0 -1
  162. package/bundles/breeze-client-adapter-data-service-odata.umd.js +0 -747
  163. package/bundles/breeze-client-adapter-data-service-odata.umd.js.map +0 -1
  164. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js +0 -16
  165. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js.map +0 -1
  166. package/bundles/breeze-client-adapter-data-service-webapi.umd.js +0 -333
  167. package/bundles/breeze-client-adapter-data-service-webapi.umd.js.map +0 -1
  168. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js +0 -16
  169. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js.map +0 -1
  170. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js +0 -280
  171. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js.map +0 -1
  172. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js +0 -2
  173. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js.map +0 -1
  174. package/bundles/breeze-client-adapter-model-library-ko.umd.js +0 -252
  175. package/bundles/breeze-client-adapter-model-library-ko.umd.js.map +0 -1
  176. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js +0 -2
  177. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js.map +0 -1
  178. package/bundles/breeze-client-adapter-uri-builder-json.umd.js +0 -96
  179. package/bundles/breeze-client-adapter-uri-builder-json.umd.js.map +0 -1
  180. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js +0 -2
  181. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js.map +0 -1
  182. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js +0 -262
  183. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js.map +0 -1
  184. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js +0 -2
  185. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js.map +0 -1
  186. package/bundles/breeze-client-mixin-get-entity-graph.umd.js +0 -258
  187. package/bundles/breeze-client-mixin-get-entity-graph.umd.js.map +0 -1
  188. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js +0 -2
  189. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js.map +0 -1
  190. package/bundles/breeze-client-mixin-save-queuing.umd.js +0 -579
  191. package/bundles/breeze-client-mixin-save-queuing.umd.js.map +0 -1
  192. package/bundles/breeze-client-mixin-save-queuing.umd.min.js +0 -16
  193. package/bundles/breeze-client-mixin-save-queuing.umd.min.js.map +0 -1
  194. package/bundles/breeze-client.umd.js +0 -14231
  195. package/bundles/breeze-client.umd.js.map +0 -1
  196. package/bundles/breeze-client.umd.min.js +0 -16
  197. package/bundles/breeze-client.umd.min.js.map +0 -1
  198. package/esm2015/adapter-ajax-angularjs/adapter-ajax-angularjs.js +0 -130
  199. package/esm2015/adapter-ajax-angularjs/adapter-core.js +0 -49
  200. package/esm2015/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +0 -5
  201. package/esm2015/adapter-ajax-fetch/adapter-ajax-fetch.js +0 -130
  202. package/esm2015/adapter-ajax-fetch/adapter-core.js +0 -49
  203. package/esm2015/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +0 -5
  204. package/esm2015/adapter-ajax-httpclient/adapter-ajax-httpclient.js +0 -137
  205. package/esm2015/adapter-ajax-httpclient/adapter-core.js +0 -49
  206. package/esm2015/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +0 -5
  207. package/esm2015/adapter-ajax-jquery/adapter-ajax-jquery.js +0 -103
  208. package/esm2015/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +0 -5
  209. package/esm2015/adapter-ajax-post/adapter-ajax-post.js +0 -77
  210. package/esm2015/adapter-ajax-post/breeze-client-adapter-ajax-post.js +0 -5
  211. package/esm2015/adapter-data-service-odata/adapter-core.js +0 -49
  212. package/esm2015/adapter-data-service-odata/adapter-data-service-odata.js +0 -463
  213. package/esm2015/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +0 -5
  214. package/esm2015/adapter-data-service-webapi/adapter-data-service-webapi.js +0 -100
  215. package/esm2015/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +0 -5
  216. package/esm2015/adapter-model-library-backing-store/adapter-model-library-backing-store.js +0 -268
  217. package/esm2015/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +0 -5
  218. package/esm2015/adapter-model-library-ko/adapter-model-library-ko.js +0 -240
  219. package/esm2015/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +0 -5
  220. package/esm2015/adapter-uri-builder-json/adapter-core.js +0 -49
  221. package/esm2015/adapter-uri-builder-json/adapter-uri-builder-json.js +0 -36
  222. package/esm2015/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +0 -5
  223. package/esm2015/adapter-uri-builder-odata/adapter-core.js +0 -49
  224. package/esm2015/adapter-uri-builder-odata/adapter-uri-builder-odata.js +0 -192
  225. package/esm2015/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +0 -5
  226. package/esm2015/breeze-client.js +0 -9
  227. package/esm2015/index.js +0 -2
  228. package/esm2015/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +0 -5
  229. package/esm2015/mixin-get-entity-graph/mixin-get-entity-graph.js +0 -269
  230. package/esm2015/mixin-save-queuing/breeze-client-mixin-save-queuing.js +0 -5
  231. package/esm2015/mixin-save-queuing/mixin-save-queuing.js +0 -400
  232. package/esm2015/src/abstract-data-service-adapter.js +0 -327
  233. package/esm2015/src/array.js +0 -4
  234. package/esm2015/src/assert-param.js +0 -312
  235. package/esm2015/src/breeze.js +0 -85
  236. package/esm2015/src/complex-array.js +0 -119
  237. package/esm2015/src/config.js +0 -223
  238. package/esm2015/src/core.js +0 -714
  239. package/esm2015/src/csdl-metadata-parser.js +0 -385
  240. package/esm2015/src/data-service.js +0 -203
  241. package/esm2015/src/default-property-interceptor.js +0 -460
  242. package/esm2015/src/entity-aspect.js +0 -804
  243. package/esm2015/src/entity-group.js +0 -187
  244. package/esm2015/src/entity-key.js +0 -116
  245. package/esm2015/src/entity-manager.js +0 -2094
  246. package/esm2015/src/entity-metadata.js +0 -2109
  247. package/esm2015/src/entity-query.js +0 -1015
  248. package/esm2015/src/entity-state.js +0 -107
  249. package/esm2015/src/enum.js +0 -141
  250. package/esm2015/src/event.js +0 -256
  251. package/esm2015/src/interface-registry.js +0 -41
  252. package/esm2015/src/key-generator.js +0 -108
  253. package/esm2015/src/local-query-comparison-options.js +0 -65
  254. package/esm2015/src/mapping-context.js +0 -411
  255. package/esm2015/src/naming-convention.js +0 -88
  256. package/esm2015/src/observable-array.js +0 -185
  257. package/esm2015/src/predicate.js +0 -1242
  258. package/esm2015/src/primitive-array.js +0 -87
  259. package/esm2015/src/query-options.js +0 -152
  260. package/esm2015/src/relation-array.js +0 -175
  261. package/esm2015/src/save-options.js +0 -41
  262. package/esm2015/src/unattached-children-map.js +0 -58
  263. package/esm2015/src/validate.js +0 -991
  264. package/esm2015/src/validation-options.js +0 -64
  265. package/esm5/adapter-ajax-angularjs/adapter-ajax-angularjs.js +0 -132
  266. package/esm5/adapter-ajax-angularjs/adapter-core.js +0 -49
  267. package/esm5/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +0 -5
  268. package/esm5/adapter-ajax-fetch/adapter-ajax-fetch.js +0 -132
  269. package/esm5/adapter-ajax-fetch/adapter-core.js +0 -49
  270. package/esm5/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +0 -5
  271. package/esm5/adapter-ajax-httpclient/adapter-ajax-httpclient.js +0 -139
  272. package/esm5/adapter-ajax-httpclient/adapter-core.js +0 -49
  273. package/esm5/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +0 -5
  274. package/esm5/adapter-ajax-jquery/adapter-ajax-jquery.js +0 -105
  275. package/esm5/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +0 -5
  276. package/esm5/adapter-ajax-post/adapter-ajax-post.js +0 -81
  277. package/esm5/adapter-ajax-post/breeze-client-adapter-ajax-post.js +0 -5
  278. package/esm5/adapter-data-service-odata/adapter-core.js +0 -49
  279. package/esm5/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +0 -5
  280. package/esm5/adapter-data-service-webapi/adapter-data-service-webapi.js +0 -105
  281. package/esm5/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +0 -5
  282. package/esm5/adapter-model-library-backing-store/adapter-model-library-backing-store.js +0 -270
  283. package/esm5/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +0 -5
  284. package/esm5/adapter-model-library-ko/adapter-model-library-ko.js +0 -242
  285. package/esm5/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +0 -5
  286. package/esm5/adapter-uri-builder-json/adapter-core.js +0 -49
  287. package/esm5/adapter-uri-builder-json/adapter-uri-builder-json.js +0 -38
  288. package/esm5/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +0 -5
  289. package/esm5/adapter-uri-builder-odata/adapter-core.js +0 -49
  290. package/esm5/adapter-uri-builder-odata/adapter-uri-builder-odata.js +0 -197
  291. package/esm5/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +0 -5
  292. package/esm5/breeze-client.js +0 -9
  293. package/esm5/index.js +0 -2
  294. package/esm5/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +0 -5
  295. package/esm5/mixin-get-entity-graph/mixin-get-entity-graph.js +0 -269
  296. package/esm5/mixin-save-queuing/breeze-client-mixin-save-queuing.js +0 -5
  297. package/esm5/mixin-save-queuing/mixin-save-queuing.js +0 -412
  298. package/esm5/src/abstract-data-service-adapter.js +0 -333
  299. package/esm5/src/array.js +0 -4
  300. package/esm5/src/assert-param.js +0 -317
  301. package/esm5/src/breeze.js +0 -85
  302. package/esm5/src/complex-array.js +0 -119
  303. package/esm5/src/config.js +0 -228
  304. package/esm5/src/core.js +0 -722
  305. package/esm5/src/csdl-metadata-parser.js +0 -385
  306. package/esm5/src/data-service.js +0 -207
  307. package/esm5/src/data-type.js +0 -510
  308. package/esm5/src/default-property-interceptor.js +0 -460
  309. package/esm5/src/entity-action.js +0 -52
  310. package/esm5/src/entity-aspect.js +0 -810
  311. package/esm5/src/entity-group.js +0 -189
  312. package/esm5/src/entity-key.js +0 -118
  313. package/esm5/src/entity-manager.js +0 -2112
  314. package/esm5/src/entity-metadata.js +0 -2144
  315. package/esm5/src/entity-query.js +0 -1042
  316. package/esm5/src/entity-state.js +0 -114
  317. package/esm5/src/enum.js +0 -144
  318. package/esm5/src/event.js +0 -259
  319. package/esm5/src/interface-registry.js +0 -43
  320. package/esm5/src/key-generator.js +0 -111
  321. package/esm5/src/local-query-comparison-options.js +0 -67
  322. package/esm5/src/mapping-context.js +0 -413
  323. package/esm5/src/observable-array.js +0 -201
  324. package/esm5/src/predicate.js +0 -1307
  325. package/esm5/src/primitive-array.js +0 -87
  326. package/esm5/src/query-options.js +0 -167
  327. package/esm5/src/relation-array.js +0 -175
  328. package/esm5/src/save-options.js +0 -43
  329. package/esm5/src/unattached-children-map.js +0 -60
  330. package/esm5/src/validation-options.js +0 -66
  331. package/fesm2015/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  332. package/fesm2015/breeze-client-adapter-ajax-fetch.js.map +0 -1
  333. package/fesm2015/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  334. package/fesm2015/breeze-client-adapter-ajax-jquery.js.map +0 -1
  335. package/fesm2015/breeze-client-adapter-ajax-post.js.map +0 -1
  336. package/fesm2015/breeze-client-adapter-data-service-odata.js.map +0 -1
  337. package/fesm2015/breeze-client-adapter-data-service-webapi.js.map +0 -1
  338. package/fesm2015/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  339. package/fesm2015/breeze-client-adapter-model-library-ko.js.map +0 -1
  340. package/fesm2015/breeze-client-adapter-uri-builder-json.js.map +0 -1
  341. package/fesm2015/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  342. package/fesm2015/breeze-client-mixin-get-entity-graph.js.map +0 -1
  343. package/fesm2015/breeze-client-mixin-save-queuing.js.map +0 -1
  344. package/fesm2015/breeze-client.js.map +0 -1
  345. package/fesm5/breeze-client-adapter-ajax-angularjs.js +0 -186
  346. package/fesm5/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  347. package/fesm5/breeze-client-adapter-ajax-fetch.js +0 -186
  348. package/fesm5/breeze-client-adapter-ajax-fetch.js.map +0 -1
  349. package/fesm5/breeze-client-adapter-ajax-httpclient.js +0 -193
  350. package/fesm5/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  351. package/fesm5/breeze-client-adapter-ajax-jquery.js +0 -111
  352. package/fesm5/breeze-client-adapter-ajax-jquery.js.map +0 -1
  353. package/fesm5/breeze-client-adapter-ajax-post.js +0 -86
  354. package/fesm5/breeze-client-adapter-ajax-post.js.map +0 -1
  355. package/fesm5/breeze-client-adapter-data-service-odata.js +0 -523
  356. package/fesm5/breeze-client-adapter-data-service-odata.js.map +0 -1
  357. package/fesm5/breeze-client-adapter-data-service-webapi.js +0 -111
  358. package/fesm5/breeze-client-adapter-data-service-webapi.js.map +0 -1
  359. package/fesm5/breeze-client-adapter-model-library-backing-store.js +0 -276
  360. package/fesm5/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  361. package/fesm5/breeze-client-adapter-model-library-ko.js +0 -248
  362. package/fesm5/breeze-client-adapter-model-library-ko.js.map +0 -1
  363. package/fesm5/breeze-client-adapter-uri-builder-json.js +0 -92
  364. package/fesm5/breeze-client-adapter-uri-builder-json.js.map +0 -1
  365. package/fesm5/breeze-client-adapter-uri-builder-odata.js +0 -250
  366. package/fesm5/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  367. package/fesm5/breeze-client-mixin-get-entity-graph.js +0 -254
  368. package/fesm5/breeze-client-mixin-get-entity-graph.js.map +0 -1
  369. package/fesm5/breeze-client-mixin-save-queuing.js +0 -356
  370. package/fesm5/breeze-client-mixin-save-queuing.js.map +0 -1
  371. package/fesm5/breeze-client.js +0 -13953
  372. package/fesm5/breeze-client.js.map +0 -1
  373. package/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.metadata.json +0 -1
  374. package/mixin-get-entity-graph/package.json +0 -13
  375. package/mixin-save-queuing/breeze-client-mixin-save-queuing.metadata.json +0 -1
  376. package/mixin-save-queuing/package.json +0 -13
@@ -1,190 +0,0 @@
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-fetch', ['exports', 'breeze-client'], factory) :
4
- (global = global || self, factory((global['breeze-client'] = global['breeze-client'] || {}, global['breeze-client']['adapter-ajax-fetch'] = {}), global['breeze-client']));
5
- }(this, (function (exports, breezeClient) { '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
- /** Breeze AJAX adapter using fetch API
57
- * See https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch
58
- */
59
- var AjaxFetchAdapter = /** @class */ (function () {
60
- function AjaxFetchAdapter() {
61
- this.name = AjaxFetchAdapter.adapterName;
62
- this.defaultSettings = {};
63
- this.requestInterceptor = undefined;
64
- }
65
- AjaxFetchAdapter.register = function (breezeConfig) {
66
- breezeConfig = breezeConfig || breezeClient.config;
67
- breezeConfig.registerAdapter("ajax", AjaxFetchAdapter);
68
- return breezeConfig.initializeAdapterInstance("ajax", AjaxFetchAdapter.adapterName, true);
69
- };
70
- AjaxFetchAdapter.prototype.initialize = function () {
71
- };
72
- AjaxFetchAdapter.prototype.ajax = function (config) {
73
- if (!fetch) {
74
- throw new Error("fetch API not supported in this browser");
75
- }
76
- var init = {
77
- method: config.type,
78
- mode: 'cors',
79
- cache: 'no-cache',
80
- credentials: 'include',
81
- headers: {
82
- 'Content-Type': config.contentType || 'application/json',
83
- },
84
- redirect: 'follow',
85
- referrer: 'client',
86
- };
87
- if (config.type !== "GET" && config.type !== "HEAD") {
88
- // body data type must match "Content-Type" header
89
- // let data = config.params || config.data;
90
- var data = config.data;
91
- if (typeof (data) !== "string") {
92
- data = JSON.stringify(data);
93
- }
94
- init.body = data;
95
- }
96
- var url = config.url;
97
- if (!breezeClient.core.isEmpty(config.params)) {
98
- // Hack: Not sure how Fetch handles writing 'search' parameters to the url.
99
- // so this approach takes over the url param writing completely.
100
- url = appendQueryStringParameter(url, encodeParams(config.params));
101
- }
102
- if (!breezeClient.core.isEmpty(this.defaultSettings)) {
103
- var compositeConfig = breezeClient.core.extend({}, this.defaultSettings);
104
- init = breezeClient.core.extend(compositeConfig, init);
105
- // extend is shallow; extend headers separately
106
- var headers = breezeClient.core.extend({}, this.defaultSettings.headers); // copy default headers 1st
107
- init.headers = breezeClient.core.extend(headers, init.headers);
108
- }
109
- var requestInfo = {
110
- adapter: this,
111
- config: init,
112
- dsaConfig: config,
113
- success: successFn,
114
- error: errorFn,
115
- };
116
- if (breezeClient.core.isFunction(this.requestInterceptor)) {
117
- var ri = this.requestInterceptor;
118
- ri(requestInfo);
119
- if (ri.oneTime) {
120
- this.requestInterceptor = undefined;
121
- }
122
- }
123
- if (requestInfo.config) { // exists unless requestInterceptor killed it.
124
- fetch(url, requestInfo.config).then(function (response) {
125
- if (!response.ok) {
126
- response.text().then(function (s) {
127
- requestInfo.error(response.status, response.statusText, s, response, null);
128
- });
129
- }
130
- else {
131
- response.json().then(function (j) {
132
- requestInfo.success(j, response.statusText, response);
133
- });
134
- }
135
- }).catch(function (err) {
136
- requestInfo.error(0, err && err.message || err, null, null, err);
137
- });
138
- }
139
- function successFn(data, statusText, response) {
140
- var httpResponse = {
141
- config: config,
142
- data: data,
143
- getHeaders: getHeadersFn(response),
144
- status: response.status,
145
- statusText: statusText
146
- };
147
- config.success(httpResponse);
148
- }
149
- function errorFn(status, statusText, body, response, errorThrown) {
150
- var httpResponse = {
151
- config: config,
152
- data: body,
153
- error: errorThrown || statusText,
154
- getHeaders: getHeadersFn(response),
155
- status: status,
156
- statusText: statusText
157
- };
158
- config.error(httpResponse);
159
- }
160
- };
161
- AjaxFetchAdapter.adapterName = "fetch";
162
- return AjaxFetchAdapter;
163
- }());
164
- breezeClient.config.registerAdapter("ajax", AjaxFetchAdapter);
165
- function getHeadersFn(response) {
166
- if (!response || response.status === 0) { // timeout or abort; no headers
167
- return function (headerName) {
168
- return (headerName && headerName.length > 0) ? "" : {};
169
- };
170
- }
171
- else {
172
- return function (headerName) {
173
- if (headerName && headerName.length > 0) {
174
- return response.headers.get(headerName);
175
- }
176
- var hob = {};
177
- response.headers.forEach(function (val, key) {
178
- hob[key] = val;
179
- });
180
- return hob;
181
- };
182
- }
183
- }
184
-
185
- exports.AjaxFetchAdapter = AjaxFetchAdapter;
186
-
187
- Object.defineProperty(exports, '__esModule', { value: true });
188
-
189
- })));
190
- //# sourceMappingURL=breeze-client-adapter-ajax-fetch.umd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"breeze-client-adapter-ajax-fetch.umd.js","sources":["ng://breeze-client/adapter-ajax-fetch/adapter-core.ts","ng://breeze-client/adapter-ajax-fetch/adapter-ajax-fetch.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 { AjaxAdapter, AjaxConfig, AjaxRequestInterceptor, BreezeConfig, config, core } from 'breeze-client';\r\nimport { appendQueryStringParameter, encodeParams } from './adapter-core';\r\n\r\n/** Breeze AJAX adapter using fetch API \r\n * See https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\r\n*/\r\nexport class AjaxFetchAdapter implements AjaxAdapter {\r\n static adapterName = \"fetch\";\r\n name: string;\r\n defaultSettings: { headers?: { [name: string]: string } };\r\n requestInterceptor?: AjaxRequestInterceptor;\r\n\r\n constructor() {\r\n this.name = AjaxFetchAdapter.adapterName;\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\", AjaxFetchAdapter);\r\n return breezeConfig.initializeAdapterInstance(\"ajax\", AjaxFetchAdapter.adapterName, true) as AjaxFetchAdapter;\r\n }\r\n\r\n initialize() {\r\n }\r\n\r\n ajax(config: AjaxConfig) {\r\n if (!fetch) {\r\n throw new Error(\"fetch API not supported in this browser\");\r\n }\r\n\r\n let init: RequestInit = {\r\n method: config.type, // *GET, POST, PUT, DELETE, etc.\r\n mode: 'cors', // no-cors, *cors, same-origin\r\n cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached\r\n credentials: 'include', // include, *same-origin, omit\r\n headers: {\r\n 'Content-Type': config.contentType || 'application/json',\r\n // ...config.headers\r\n // 'Content-Type': 'application/x-www-form-urlencoded',\r\n },\r\n redirect: 'follow', // manual, *follow, error\r\n referrer: 'client', // no-referrer, *client\r\n };\r\n if (config.type !== \"GET\" && config.type !== \"HEAD\") {\r\n // body data type must match \"Content-Type\" header\r\n // let data = config.params || config.data;\r\n let data = config.data;\r\n if (typeof(data) !== \"string\") {\r\n data = JSON.stringify(data);\r\n }\r\n init.body = data;\r\n }\r\n\r\n let url = config.url;\r\n if (!core.isEmpty(config.params)) {\r\n // Hack: Not sure how Fetch handles writing 'search' parameters to the url.\r\n // so this approach takes over the url param writing completely.\r\n url = appendQueryStringParameter(url, encodeParams(config.params));\r\n }\r\n\r\n if (!core.isEmpty(this.defaultSettings)) {\r\n let compositeConfig = core.extend({}, this.defaultSettings);\r\n init = core.extend(compositeConfig, init) 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 init.headers = core.extend(headers, init.headers) as any;\r\n }\r\n\r\n let requestInfo = {\r\n adapter: this, // this adapter\r\n config: init, // fetch api 'init' 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 fetch(url, requestInfo.config).then(response => {\r\n if (!response.ok) {\r\n response.text().then(s => {\r\n requestInfo.error(response.status, response.statusText, s, response, null);\r\n });\r\n } else {\r\n response.json().then(j => {\r\n requestInfo.success(j, response.statusText, response);\r\n });\r\n }\r\n }).catch(err => {\r\n requestInfo.error(0, err && err.message || err, null, null, err);\r\n });\r\n }\r\n\r\n function successFn(data: any, statusText: string, response: Response) {\r\n let httpResponse = {\r\n config: config,\r\n data: data,\r\n getHeaders: getHeadersFn(response),\r\n status: response.status,\r\n statusText: statusText\r\n };\r\n config.success(httpResponse);\r\n }\r\n\r\n function errorFn(status: number, statusText: string, body: string, response: Response, errorThrown: any) {\r\n let httpResponse = {\r\n config: config,\r\n data: body,\r\n error: errorThrown || statusText,\r\n getHeaders: getHeadersFn(response),\r\n status: status,\r\n statusText: statusText\r\n };\r\n config.error(httpResponse);\r\n }\r\n }\r\n}\r\n\r\nconfig.registerAdapter(\"ajax\", AjaxFetchAdapter);\r\n\r\nfunction getHeadersFn(response: Response): any {\r\n if (!response || response.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 {\r\n return function (headerName: string) {\r\n if (headerName && headerName.length > 0) {\r\n return response.headers.get(headerName);\r\n }\r\n let hob = {};\r\n response.headers.forEach((val, key) => {\r\n hob[key] = val;\r\n });\r\n return hob;\r\n };\r\n }\r\n}\r\n"],"names":["config","core"],"mappings":"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"}
@@ -1,2 +0,0 @@
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-fetch",["exports","breeze-client"],t):t(((e=e||self)["breeze-client"]=e["breeze-client"]||{},e["breeze-client"]["adapter-ajax-fetch"]={}),e["breeze-client"])}(this,(function(e,t){"use strict";var n=function(){function e(){this.name=e.adapterName,this.defaultSettings={},this.requestInterceptor=void 0}return e.register=function(n){return(n=n||t.config).registerAdapter("ajax",e),n.initializeAdapterInstance("ajax",e.adapterName,!0)},e.prototype.initialize=function(){},e.prototype.ajax=function(e){if(!fetch)throw new Error("fetch API not supported in this browser");var n={method:e.type,mode:"cors",cache:"no-cache",credentials:"include",headers:{"Content-Type":e.contentType||"application/json"},redirect:"follow",referrer:"client"};if("GET"!==e.type&&"HEAD"!==e.type){var o=e.data;"string"!=typeof o&&(o=JSON.stringify(o)),n.body=o}var i=e.url;if(t.core.isEmpty(e.params)||(i=function(e,t){if(!t)return e;var n=e.endsWith("?")?"":e.includes("?")?"&":"?";return e+n+t}(i,function e(t){var n,r,o="";for(var i in t)if(t.hasOwnProperty(i)){var a=t[i];if(a instanceof Array)for(var s=0;s<a.length;++s)n=a[s],(r={})[i+"["+s+"]"]=n,o+=e(r)+"&";else if(a&&a.toISOString)o+=encodeURIComponent(i)+"="+encodeURIComponent(a.toISOString())+"&";else if(a instanceof Object)for(var c in a)t.hasOwnProperty(i)&&(n=a[c],(r={})[i+"["+c+"]"]=n,o+=e(r)+"&");else null===a?o+=encodeURIComponent(i)+"=&":void 0!==a&&(o+=encodeURIComponent(i)+"="+encodeURIComponent(a)+"&")}return o.length?o.substr(0,o.length-1):o}(e.params))),!t.core.isEmpty(this.defaultSettings)){var a=t.core.extend({},this.defaultSettings);n=t.core.extend(a,n);var s=t.core.extend({},this.defaultSettings.headers);n.headers=t.core.extend(s,n.headers)}var c={adapter:this,config:n,dsaConfig:e,success:function(t,n,o){var i={config:e,data:t,getHeaders:r(o),status:o.status,statusText:n};e.success(i)},error:function(t,n,o,i,a){var s={config:e,data:o,error:a||n,getHeaders:r(i),status:t,statusText:n};e.error(s)}};if(t.core.isFunction(this.requestInterceptor)){var f=this.requestInterceptor;f(c),f.oneTime&&(this.requestInterceptor=void 0)}c.config&&fetch(i,c.config).then((function(e){e.ok?e.json().then((function(t){c.success(t,e.statusText,e)})):e.text().then((function(t){c.error(e.status,e.statusText,t,e,null)}))})).catch((function(e){c.error(0,e&&e.message||e,null,null,e)}))},e.adapterName="fetch",e}();function r(e){return e&&0!==e.status?function(t){if(t&&t.length>0)return e.headers.get(t);var n={};return e.headers.forEach((function(e,t){n[t]=e})),n}:function(e){return e&&e.length>0?"":{}}}t.config.registerAdapter("ajax",n),e.AjaxFetchAdapter=n,Object.defineProperty(e,"__esModule",{value:!0})}));
2
- //# sourceMappingURL=breeze-client-adapter-ajax-fetch.umd.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["ng://breeze-client/adapter-ajax-fetch/adapter-ajax-fetch.ts","ng://breeze-client/adapter-ajax-fetch/adapter-core.ts"],"names":["AjaxFetchAdapter","this","name","adapterName","defaultSettings","requestInterceptor","undefined","register","breezeConfig","config","registerAdapter","initializeAdapterInstance","prototype","initialize","ajax","fetch","Error","init","method","type","mode","cache","credentials","headers","Content-Type","contentType","redirect","referrer","data","JSON","stringify","body","url","core","isEmpty","params","parameter","separator","endsWith","includes","appendQueryStringParameter","encodeParams","obj","subValue","innerObj","query","name_1","hasOwnProperty","value","Array","i","length","toISOString","encodeURIComponent","Object","subName","substr","compositeConfig","extend","requestInfo","adapter","dsaConfig","success","statusText","response","httpResponse","getHeaders","getHeadersFn","status","error","errorThrown","isFunction","ri","oneTime","then","ok","json","j","text","s","catch","err","message","headerName","get","hob","forEach","val","key"],"mappings":"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","sourcesContent":["import { AjaxAdapter, AjaxConfig, AjaxRequestInterceptor, BreezeConfig, config, core } from 'breeze-client';\r\nimport { appendQueryStringParameter, encodeParams } from './adapter-core';\r\n\r\n/** Breeze AJAX adapter using fetch API \r\n * See https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API/Using_Fetch\r\n*/\r\nexport class AjaxFetchAdapter implements AjaxAdapter {\r\n static adapterName = \"fetch\";\r\n name: string;\r\n defaultSettings: { headers?: { [name: string]: string } };\r\n requestInterceptor?: AjaxRequestInterceptor;\r\n\r\n constructor() {\r\n this.name = AjaxFetchAdapter.adapterName;\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\", AjaxFetchAdapter);\r\n return breezeConfig.initializeAdapterInstance(\"ajax\", AjaxFetchAdapter.adapterName, true) as AjaxFetchAdapter;\r\n }\r\n\r\n initialize() {\r\n }\r\n\r\n ajax(config: AjaxConfig) {\r\n if (!fetch) {\r\n throw new Error(\"fetch API not supported in this browser\");\r\n }\r\n\r\n let init: RequestInit = {\r\n method: config.type, // *GET, POST, PUT, DELETE, etc.\r\n mode: 'cors', // no-cors, *cors, same-origin\r\n cache: 'no-cache', // *default, no-cache, reload, force-cache, only-if-cached\r\n credentials: 'include', // include, *same-origin, omit\r\n headers: {\r\n 'Content-Type': config.contentType || 'application/json',\r\n // ...config.headers\r\n // 'Content-Type': 'application/x-www-form-urlencoded',\r\n },\r\n redirect: 'follow', // manual, *follow, error\r\n referrer: 'client', // no-referrer, *client\r\n };\r\n if (config.type !== \"GET\" && config.type !== \"HEAD\") {\r\n // body data type must match \"Content-Type\" header\r\n // let data = config.params || config.data;\r\n let data = config.data;\r\n if (typeof(data) !== \"string\") {\r\n data = JSON.stringify(data);\r\n }\r\n init.body = data;\r\n }\r\n\r\n let url = config.url;\r\n if (!core.isEmpty(config.params)) {\r\n // Hack: Not sure how Fetch handles writing 'search' parameters to the url.\r\n // so this approach takes over the url param writing completely.\r\n url = appendQueryStringParameter(url, encodeParams(config.params));\r\n }\r\n\r\n if (!core.isEmpty(this.defaultSettings)) {\r\n let compositeConfig = core.extend({}, this.defaultSettings);\r\n init = core.extend(compositeConfig, init) 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 init.headers = core.extend(headers, init.headers) as any;\r\n }\r\n\r\n let requestInfo = {\r\n adapter: this, // this adapter\r\n config: init, // fetch api 'init' 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 fetch(url, requestInfo.config).then(response => {\r\n if (!response.ok) {\r\n response.text().then(s => {\r\n requestInfo.error(response.status, response.statusText, s, response, null);\r\n });\r\n } else {\r\n response.json().then(j => {\r\n requestInfo.success(j, response.statusText, response);\r\n });\r\n }\r\n }).catch(err => {\r\n requestInfo.error(0, err && err.message || err, null, null, err);\r\n });\r\n }\r\n\r\n function successFn(data: any, statusText: string, response: Response) {\r\n let httpResponse = {\r\n config: config,\r\n data: data,\r\n getHeaders: getHeadersFn(response),\r\n status: response.status,\r\n statusText: statusText\r\n };\r\n config.success(httpResponse);\r\n }\r\n\r\n function errorFn(status: number, statusText: string, body: string, response: Response, errorThrown: any) {\r\n let httpResponse = {\r\n config: config,\r\n data: body,\r\n error: errorThrown || statusText,\r\n getHeaders: getHeadersFn(response),\r\n status: status,\r\n statusText: statusText\r\n };\r\n config.error(httpResponse);\r\n }\r\n }\r\n}\r\n\r\nconfig.registerAdapter(\"ajax\", AjaxFetchAdapter);\r\n\r\nfunction getHeadersFn(response: Response): any {\r\n if (!response || response.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 {\r\n return function (headerName: string) {\r\n if (headerName && headerName.length > 0) {\r\n return response.headers.get(headerName);\r\n }\r\n let hob = {};\r\n response.headers.forEach((val, key) => {\r\n hob[key] = val;\r\n });\r\n return hob;\r\n };\r\n }\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"]}
@@ -1,195 +0,0 @@
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
@@ -1 +0,0 @@
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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"}
@@ -1,2 +0,0 @@
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
@@ -1 +0,0 @@
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"]}