breeze-client 2.1.2 → 2.1.3-mjs

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 (397) hide show
  1. package/LICENSE +1 -1
  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/esm2020/adapter-ajax-angularjs/adapter-ajax-angularjs.mjs +130 -0
  14. package/esm2020/adapter-ajax-angularjs/adapter-core.mjs +49 -0
  15. package/esm2020/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.mjs +5 -0
  16. package/esm2020/adapter-ajax-fetch/adapter-ajax-fetch.mjs +132 -0
  17. package/esm2020/adapter-ajax-fetch/adapter-core.mjs +49 -0
  18. package/esm2020/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.mjs +5 -0
  19. package/esm2020/adapter-ajax-httpclient/adapter-ajax-httpclient.mjs +137 -0
  20. package/esm2020/adapter-ajax-httpclient/adapter-core.mjs +49 -0
  21. package/esm2020/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.mjs +5 -0
  22. package/esm2020/adapter-ajax-jquery/adapter-ajax-jquery.mjs +103 -0
  23. package/esm2020/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.mjs +5 -0
  24. package/esm2020/adapter-ajax-post/adapter-ajax-post.mjs +77 -0
  25. package/esm2020/adapter-ajax-post/breeze-client-adapter-ajax-post.mjs +5 -0
  26. package/esm2020/adapter-data-service-odata/adapter-core.mjs +49 -0
  27. package/esm2020/adapter-data-service-odata/adapter-data-service-odata.mjs +456 -0
  28. package/esm2020/adapter-data-service-odata/breeze-client-adapter-data-service-odata.mjs +5 -0
  29. package/esm2020/adapter-data-service-webapi/adapter-data-service-webapi.mjs +93 -0
  30. package/esm2020/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.mjs +5 -0
  31. package/esm2020/adapter-model-library-backing-store/adapter-model-library-backing-store.mjs +268 -0
  32. package/esm2020/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.mjs +5 -0
  33. package/esm2020/adapter-model-library-ko/adapter-model-library-ko.mjs +240 -0
  34. package/esm2020/adapter-model-library-ko/breeze-client-adapter-model-library-ko.mjs +5 -0
  35. package/esm2020/adapter-uri-builder-json/adapter-core.mjs +49 -0
  36. package/esm2020/adapter-uri-builder-json/adapter-uri-builder-json.mjs +36 -0
  37. package/esm2020/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.mjs +5 -0
  38. package/esm2020/adapter-uri-builder-odata/adapter-core.mjs +49 -0
  39. package/esm2020/adapter-uri-builder-odata/adapter-uri-builder-odata.mjs +190 -0
  40. package/esm2020/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.mjs +5 -0
  41. package/esm2020/breeze-client.mjs +5 -0
  42. package/esm2020/index.mjs +2 -0
  43. package/esm2020/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.mjs +5 -0
  44. package/esm2020/mixin-get-entity-graph/mixin-get-entity-graph.mjs +269 -0
  45. package/esm2020/mixin-save-queuing/breeze-client-mixin-save-queuing.mjs +5 -0
  46. package/esm2020/mixin-save-queuing/mixin-save-queuing.mjs +400 -0
  47. package/esm2020/src/abstract-data-service-adapter.mjs +296 -0
  48. package/esm2020/src/array.mjs +4 -0
  49. package/esm2020/src/assert-param.mjs +312 -0
  50. package/esm2020/src/breeze.mjs +85 -0
  51. package/esm2020/src/complex-array.mjs +117 -0
  52. package/esm2020/src/config.mjs +223 -0
  53. package/esm2020/src/core.mjs +707 -0
  54. package/esm2020/src/csdl-metadata-parser.mjs +385 -0
  55. package/esm2020/src/data-service.mjs +203 -0
  56. package/esm2020/src/data-type.mjs +444 -0
  57. package/esm2020/src/default-property-interceptor.mjs +460 -0
  58. package/esm2020/src/entity-action.mjs +45 -0
  59. package/esm2020/src/entity-aspect.mjs +806 -0
  60. package/esm2020/src/entity-group.mjs +187 -0
  61. package/esm2020/src/entity-key.mjs +116 -0
  62. package/esm2020/src/entity-manager.mjs +2094 -0
  63. package/esm2020/src/entity-metadata.mjs +2109 -0
  64. package/esm2020/src/entity-query.mjs +996 -0
  65. package/esm2020/src/entity-state.mjs +99 -0
  66. package/esm2020/src/enum.mjs +141 -0
  67. package/esm2020/src/event.mjs +256 -0
  68. package/esm2020/src/interface-registry.mjs +41 -0
  69. package/esm2020/src/key-generator.mjs +108 -0
  70. package/esm2020/src/local-query-comparison-options.mjs +65 -0
  71. package/esm2020/src/mapping-context.mjs +405 -0
  72. package/esm2020/src/naming-convention.mjs +88 -0
  73. package/esm2020/src/observable-array.mjs +183 -0
  74. package/esm2020/src/predicate.mjs +1232 -0
  75. package/esm2020/src/primitive-array.mjs +85 -0
  76. package/esm2020/src/query-options.mjs +152 -0
  77. package/esm2020/src/relation-array.mjs +173 -0
  78. package/esm2020/src/save-options.mjs +41 -0
  79. package/esm2020/src/unattached-children-map.mjs +58 -0
  80. package/esm2020/src/validate.mjs +988 -0
  81. package/esm2020/src/validation-options.mjs +64 -0
  82. package/fesm2015/{breeze-client-adapter-ajax-angularjs.js → breeze-client-adapter-ajax-angularjs.mjs} +1 -1
  83. package/fesm2015/breeze-client-adapter-ajax-angularjs.mjs.map +1 -0
  84. package/fesm2015/{breeze-client-adapter-ajax-fetch.js → breeze-client-adapter-ajax-fetch.mjs} +5 -3
  85. package/fesm2015/breeze-client-adapter-ajax-fetch.mjs.map +1 -0
  86. package/fesm2015/{breeze-client-adapter-ajax-httpclient.js → breeze-client-adapter-ajax-httpclient.mjs} +1 -1
  87. package/fesm2015/breeze-client-adapter-ajax-httpclient.mjs.map +1 -0
  88. package/fesm2015/{breeze-client-adapter-ajax-jquery.js → breeze-client-adapter-ajax-jquery.mjs} +2 -2
  89. package/fesm2015/breeze-client-adapter-ajax-jquery.mjs.map +1 -0
  90. package/fesm2015/{breeze-client-adapter-ajax-post.js → breeze-client-adapter-ajax-post.mjs} +1 -1
  91. package/fesm2015/breeze-client-adapter-ajax-post.mjs.map +1 -0
  92. package/fesm2015/{breeze-client-adapter-data-service-odata.js → breeze-client-adapter-data-service-odata.mjs} +20 -22
  93. package/fesm2015/breeze-client-adapter-data-service-odata.mjs.map +1 -0
  94. package/fesm2015/{breeze-client-adapter-data-service-webapi.js → breeze-client-adapter-data-service-webapi.mjs} +13 -13
  95. package/fesm2015/breeze-client-adapter-data-service-webapi.mjs.map +1 -0
  96. package/fesm2015/{breeze-client-adapter-model-library-backing-store.js → breeze-client-adapter-model-library-backing-store.mjs} +13 -13
  97. package/fesm2015/breeze-client-adapter-model-library-backing-store.mjs.map +1 -0
  98. package/fesm2015/{breeze-client-adapter-model-library-ko.js → breeze-client-adapter-model-library-ko.mjs} +13 -13
  99. package/fesm2015/breeze-client-adapter-model-library-ko.mjs.map +1 -0
  100. package/fesm2015/{breeze-client-adapter-uri-builder-json.js → breeze-client-adapter-uri-builder-json.mjs} +8 -8
  101. package/fesm2015/breeze-client-adapter-uri-builder-json.mjs.map +1 -0
  102. package/fesm2015/{breeze-client-adapter-uri-builder-odata.js → breeze-client-adapter-uri-builder-odata.mjs} +85 -86
  103. package/fesm2015/breeze-client-adapter-uri-builder-odata.mjs.map +1 -0
  104. package/fesm2015/{breeze-client-mixin-get-entity-graph.js → breeze-client-mixin-get-entity-graph.mjs} +1 -1
  105. package/fesm2015/breeze-client-mixin-get-entity-graph.mjs.map +1 -0
  106. package/fesm2015/{breeze-client-mixin-save-queuing.js → breeze-client-mixin-save-queuing.mjs} +1 -1
  107. package/fesm2015/breeze-client-mixin-save-queuing.mjs.map +1 -0
  108. package/fesm2015/{breeze-client.js → breeze-client.mjs} +417 -422
  109. package/fesm2015/breeze-client.mjs.map +1 -0
  110. package/{fesm5/breeze-client-adapter-ajax-angularjs.js → fesm2020/breeze-client-adapter-ajax-angularjs.mjs} +41 -42
  111. package/fesm2020/breeze-client-adapter-ajax-angularjs.mjs.map +1 -0
  112. package/{fesm5/breeze-client-adapter-ajax-fetch.js → fesm2020/breeze-client-adapter-ajax-fetch.mjs} +44 -43
  113. package/fesm2020/breeze-client-adapter-ajax-fetch.mjs.map +1 -0
  114. package/{fesm5/breeze-client-adapter-ajax-httpclient.js → fesm2020/breeze-client-adapter-ajax-httpclient.mjs} +43 -44
  115. package/fesm2020/breeze-client-adapter-ajax-httpclient.mjs.map +1 -0
  116. package/{fesm5/breeze-client-adapter-ajax-jquery.js → fesm2020/breeze-client-adapter-ajax-jquery.mjs} +18 -19
  117. package/fesm2020/breeze-client-adapter-ajax-jquery.mjs.map +1 -0
  118. package/{fesm5/breeze-client-adapter-ajax-post.js → fesm2020/breeze-client-adapter-ajax-post.mjs} +8 -11
  119. package/fesm2020/breeze-client-adapter-ajax-post.mjs.map +1 -0
  120. package/{fesm5/breeze-client-adapter-data-service-odata.js → fesm2020/breeze-client-adapter-data-service-odata.mjs} +126 -134
  121. package/fesm2020/breeze-client-adapter-data-service-odata.mjs.map +1 -0
  122. package/{fesm5/breeze-client-adapter-data-service-webapi.js → fesm2020/breeze-client-adapter-data-service-webapi.mjs} +38 -42
  123. package/fesm2020/breeze-client-adapter-data-service-webapi.mjs.map +1 -0
  124. package/{fesm5/breeze-client-adapter-model-library-backing-store.js → fesm2020/breeze-client-adapter-model-library-backing-store.mjs} +63 -64
  125. package/fesm2020/breeze-client-adapter-model-library-backing-store.mjs.map +1 -0
  126. package/{fesm5/breeze-client-adapter-model-library-ko.js → fesm2020/breeze-client-adapter-model-library-ko.mjs} +57 -58
  127. package/fesm2020/breeze-client-adapter-model-library-ko.mjs.map +1 -0
  128. package/fesm2020/breeze-client-adapter-uri-builder-json.mjs +91 -0
  129. package/fesm2020/breeze-client-adapter-uri-builder-json.mjs.map +1 -0
  130. package/fesm2020/breeze-client-adapter-uri-builder-odata.mjs +245 -0
  131. package/fesm2020/breeze-client-adapter-uri-builder-odata.mjs.map +1 -0
  132. package/{fesm5/breeze-client-mixin-get-entity-graph.js → fesm2020/breeze-client-mixin-get-entity-graph.mjs} +45 -45
  133. package/fesm2020/breeze-client-mixin-get-entity-graph.mjs.map +1 -0
  134. package/{fesm5/breeze-client-mixin-save-queuing.js → fesm2020/breeze-client-mixin-save-queuing.mjs} +116 -126
  135. package/fesm2020/breeze-client-mixin-save-queuing.mjs.map +1 -0
  136. package/{fesm5/breeze-client.js → fesm2020/breeze-client.mjs} +3403 -3615
  137. package/fesm2020/breeze-client.mjs.map +1 -0
  138. package/mixin-get-entity-graph/{breeze-client-mixin-get-entity-graph.d.ts → index.d.ts} +1 -0
  139. package/mixin-save-queuing/{breeze-client-mixin-save-queuing.d.ts → index.d.ts} +1 -0
  140. package/package.json +126 -12
  141. package/src/entity-metadata.d.ts +6 -4
  142. package/src/entity-query.d.ts +1 -1
  143. package/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.metadata.json +0 -1
  144. package/adapter-ajax-angularjs/package.json +0 -13
  145. package/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.metadata.json +0 -1
  146. package/adapter-ajax-fetch/package.json +0 -13
  147. package/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.metadata.json +0 -1
  148. package/adapter-ajax-httpclient/package.json +0 -17
  149. package/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.metadata.json +0 -1
  150. package/adapter-ajax-jquery/package.json +0 -13
  151. package/adapter-ajax-post/breeze-client-adapter-ajax-post.metadata.json +0 -1
  152. package/adapter-ajax-post/package.json +0 -13
  153. package/adapter-data-service-odata/breeze-client-adapter-data-service-odata.metadata.json +0 -1
  154. package/adapter-data-service-odata/package.json +0 -13
  155. package/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.metadata.json +0 -1
  156. package/adapter-data-service-webapi/package.json +0 -13
  157. package/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.metadata.json +0 -1
  158. package/adapter-model-library-backing-store/package.json +0 -13
  159. package/adapter-model-library-ko/breeze-client-adapter-model-library-ko.metadata.json +0 -1
  160. package/adapter-model-library-ko/package.json +0 -13
  161. package/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.metadata.json +0 -1
  162. package/adapter-uri-builder-json/package.json +0 -13
  163. package/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.metadata.json +0 -1
  164. package/adapter-uri-builder-odata/package.json +0 -13
  165. package/breeze-client.d.ts +0 -8
  166. package/breeze-client.metadata.json +0 -1
  167. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js +0 -190
  168. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js.map +0 -1
  169. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js +0 -2
  170. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js.map +0 -1
  171. package/bundles/breeze-client-adapter-ajax-fetch.umd.js +0 -190
  172. package/bundles/breeze-client-adapter-ajax-fetch.umd.js.map +0 -1
  173. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js +0 -2
  174. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js.map +0 -1
  175. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js +0 -195
  176. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js.map +0 -1
  177. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js +0 -2
  178. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js.map +0 -1
  179. package/bundles/breeze-client-adapter-ajax-jquery.umd.js +0 -115
  180. package/bundles/breeze-client-adapter-ajax-jquery.umd.js.map +0 -1
  181. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js +0 -2
  182. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js.map +0 -1
  183. package/bundles/breeze-client-adapter-ajax-post.umd.js +0 -92
  184. package/bundles/breeze-client-adapter-ajax-post.umd.js.map +0 -1
  185. package/bundles/breeze-client-adapter-ajax-post.umd.min.js +0 -2
  186. package/bundles/breeze-client-adapter-ajax-post.umd.min.js.map +0 -1
  187. package/bundles/breeze-client-adapter-data-service-odata.umd.js +0 -743
  188. package/bundles/breeze-client-adapter-data-service-odata.umd.js.map +0 -1
  189. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js +0 -16
  190. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js.map +0 -1
  191. package/bundles/breeze-client-adapter-data-service-webapi.umd.js +0 -326
  192. package/bundles/breeze-client-adapter-data-service-webapi.umd.js.map +0 -1
  193. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js +0 -16
  194. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js.map +0 -1
  195. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js +0 -280
  196. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js.map +0 -1
  197. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js +0 -2
  198. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js.map +0 -1
  199. package/bundles/breeze-client-adapter-model-library-ko.umd.js +0 -252
  200. package/bundles/breeze-client-adapter-model-library-ko.umd.js.map +0 -1
  201. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js +0 -2
  202. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js.map +0 -1
  203. package/bundles/breeze-client-adapter-uri-builder-json.umd.js +0 -96
  204. package/bundles/breeze-client-adapter-uri-builder-json.umd.js.map +0 -1
  205. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js +0 -2
  206. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js.map +0 -1
  207. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js +0 -262
  208. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js.map +0 -1
  209. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js +0 -2
  210. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js.map +0 -1
  211. package/bundles/breeze-client-mixin-get-entity-graph.umd.js +0 -258
  212. package/bundles/breeze-client-mixin-get-entity-graph.umd.js.map +0 -1
  213. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js +0 -2
  214. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js.map +0 -1
  215. package/bundles/breeze-client-mixin-save-queuing.umd.js +0 -579
  216. package/bundles/breeze-client-mixin-save-queuing.umd.js.map +0 -1
  217. package/bundles/breeze-client-mixin-save-queuing.umd.min.js +0 -16
  218. package/bundles/breeze-client-mixin-save-queuing.umd.min.js.map +0 -1
  219. package/bundles/breeze-client.umd.js +0 -14094
  220. package/bundles/breeze-client.umd.js.map +0 -1
  221. package/bundles/breeze-client.umd.min.js +0 -16
  222. package/bundles/breeze-client.umd.min.js.map +0 -1
  223. package/esm2015/adapter-ajax-angularjs/adapter-ajax-angularjs.js +0 -130
  224. package/esm2015/adapter-ajax-angularjs/adapter-core.js +0 -49
  225. package/esm2015/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +0 -5
  226. package/esm2015/adapter-ajax-fetch/adapter-ajax-fetch.js +0 -130
  227. package/esm2015/adapter-ajax-fetch/adapter-core.js +0 -49
  228. package/esm2015/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +0 -5
  229. package/esm2015/adapter-ajax-httpclient/adapter-ajax-httpclient.js +0 -137
  230. package/esm2015/adapter-ajax-httpclient/adapter-core.js +0 -49
  231. package/esm2015/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +0 -5
  232. package/esm2015/adapter-ajax-jquery/adapter-ajax-jquery.js +0 -103
  233. package/esm2015/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +0 -5
  234. package/esm2015/adapter-ajax-post/adapter-ajax-post.js +0 -77
  235. package/esm2015/adapter-ajax-post/breeze-client-adapter-ajax-post.js +0 -5
  236. package/esm2015/adapter-data-service-odata/adapter-core.js +0 -49
  237. package/esm2015/adapter-data-service-odata/adapter-data-service-odata.js +0 -459
  238. package/esm2015/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +0 -5
  239. package/esm2015/adapter-data-service-webapi/adapter-data-service-webapi.js +0 -93
  240. package/esm2015/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +0 -5
  241. package/esm2015/adapter-model-library-backing-store/adapter-model-library-backing-store.js +0 -268
  242. package/esm2015/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +0 -5
  243. package/esm2015/adapter-model-library-ko/adapter-model-library-ko.js +0 -240
  244. package/esm2015/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +0 -5
  245. package/esm2015/adapter-uri-builder-json/adapter-core.js +0 -49
  246. package/esm2015/adapter-uri-builder-json/adapter-uri-builder-json.js +0 -36
  247. package/esm2015/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +0 -5
  248. package/esm2015/adapter-uri-builder-odata/adapter-core.js +0 -49
  249. package/esm2015/adapter-uri-builder-odata/adapter-uri-builder-odata.js +0 -192
  250. package/esm2015/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +0 -5
  251. package/esm2015/breeze-client.js +0 -9
  252. package/esm2015/index.js +0 -2
  253. package/esm2015/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +0 -5
  254. package/esm2015/mixin-get-entity-graph/mixin-get-entity-graph.js +0 -269
  255. package/esm2015/mixin-save-queuing/breeze-client-mixin-save-queuing.js +0 -5
  256. package/esm2015/mixin-save-queuing/mixin-save-queuing.js +0 -400
  257. package/esm2015/public_api.js +0 -2
  258. package/esm2015/src/abstract-data-service-adapter.js +0 -296
  259. package/esm2015/src/array.js +0 -4
  260. package/esm2015/src/assert-param.js +0 -312
  261. package/esm2015/src/breeze.js +0 -85
  262. package/esm2015/src/complex-array.js +0 -119
  263. package/esm2015/src/config.js +0 -223
  264. package/esm2015/src/core.js +0 -706
  265. package/esm2015/src/csdl-metadata-parser.js +0 -385
  266. package/esm2015/src/data-service.js +0 -203
  267. package/esm2015/src/data-type.js +0 -444
  268. package/esm2015/src/default-property-interceptor.js +0 -459
  269. package/esm2015/src/entity-action.js +0 -45
  270. package/esm2015/src/entity-aspect.js +0 -806
  271. package/esm2015/src/entity-group.js +0 -187
  272. package/esm2015/src/entity-key.js +0 -116
  273. package/esm2015/src/entity-manager.js +0 -2094
  274. package/esm2015/src/entity-metadata.js +0 -2109
  275. package/esm2015/src/entity-query.js +0 -996
  276. package/esm2015/src/entity-state.js +0 -99
  277. package/esm2015/src/enum.js +0 -141
  278. package/esm2015/src/event.js +0 -256
  279. package/esm2015/src/interface-registry.js +0 -41
  280. package/esm2015/src/key-generator.js +0 -108
  281. package/esm2015/src/local-query-comparison-options.js +0 -65
  282. package/esm2015/src/mapping-context.js +0 -405
  283. package/esm2015/src/naming-convention.js +0 -88
  284. package/esm2015/src/observable-array.js +0 -185
  285. package/esm2015/src/predicate.js +0 -1235
  286. package/esm2015/src/primitive-array.js +0 -87
  287. package/esm2015/src/query-options.js +0 -152
  288. package/esm2015/src/relation-array.js +0 -175
  289. package/esm2015/src/save-options.js +0 -41
  290. package/esm2015/src/unattached-children-map.js +0 -58
  291. package/esm2015/src/validate.js +0 -991
  292. package/esm2015/src/validation-options.js +0 -64
  293. package/esm5/adapter-ajax-angularjs/adapter-ajax-angularjs.js +0 -132
  294. package/esm5/adapter-ajax-angularjs/adapter-core.js +0 -49
  295. package/esm5/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +0 -5
  296. package/esm5/adapter-ajax-fetch/adapter-ajax-fetch.js +0 -132
  297. package/esm5/adapter-ajax-fetch/adapter-core.js +0 -49
  298. package/esm5/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +0 -5
  299. package/esm5/adapter-ajax-httpclient/adapter-ajax-httpclient.js +0 -139
  300. package/esm5/adapter-ajax-httpclient/adapter-core.js +0 -49
  301. package/esm5/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +0 -5
  302. package/esm5/adapter-ajax-jquery/adapter-ajax-jquery.js +0 -105
  303. package/esm5/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +0 -5
  304. package/esm5/adapter-ajax-post/adapter-ajax-post.js +0 -81
  305. package/esm5/adapter-ajax-post/breeze-client-adapter-ajax-post.js +0 -5
  306. package/esm5/adapter-data-service-odata/adapter-core.js +0 -49
  307. package/esm5/adapter-data-service-odata/adapter-data-service-odata.js +0 -466
  308. package/esm5/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +0 -5
  309. package/esm5/adapter-data-service-webapi/adapter-data-service-webapi.js +0 -98
  310. package/esm5/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +0 -5
  311. package/esm5/adapter-model-library-backing-store/adapter-model-library-backing-store.js +0 -270
  312. package/esm5/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +0 -5
  313. package/esm5/adapter-model-library-ko/adapter-model-library-ko.js +0 -242
  314. package/esm5/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +0 -5
  315. package/esm5/adapter-uri-builder-json/adapter-core.js +0 -49
  316. package/esm5/adapter-uri-builder-json/adapter-uri-builder-json.js +0 -38
  317. package/esm5/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +0 -5
  318. package/esm5/adapter-uri-builder-odata/adapter-core.js +0 -49
  319. package/esm5/adapter-uri-builder-odata/adapter-uri-builder-odata.js +0 -197
  320. package/esm5/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +0 -5
  321. package/esm5/breeze-client.js +0 -9
  322. package/esm5/index.js +0 -2
  323. package/esm5/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +0 -5
  324. package/esm5/mixin-get-entity-graph/mixin-get-entity-graph.js +0 -269
  325. package/esm5/mixin-save-queuing/breeze-client-mixin-save-queuing.js +0 -5
  326. package/esm5/mixin-save-queuing/mixin-save-queuing.js +0 -412
  327. package/esm5/public_api.js +0 -2
  328. package/esm5/src/abstract-data-service-adapter.js +0 -302
  329. package/esm5/src/array.js +0 -4
  330. package/esm5/src/assert-param.js +0 -317
  331. package/esm5/src/breeze.js +0 -85
  332. package/esm5/src/complex-array.js +0 -119
  333. package/esm5/src/config.js +0 -228
  334. package/esm5/src/core.js +0 -714
  335. package/esm5/src/csdl-metadata-parser.js +0 -385
  336. package/esm5/src/data-service.js +0 -207
  337. package/esm5/src/data-type.js +0 -451
  338. package/esm5/src/default-property-interceptor.js +0 -459
  339. package/esm5/src/entity-action.js +0 -52
  340. package/esm5/src/entity-aspect.js +0 -812
  341. package/esm5/src/entity-group.js +0 -189
  342. package/esm5/src/entity-key.js +0 -118
  343. package/esm5/src/entity-manager.js +0 -2112
  344. package/esm5/src/entity-metadata.js +0 -2144
  345. package/esm5/src/entity-query.js +0 -1023
  346. package/esm5/src/entity-state.js +0 -106
  347. package/esm5/src/enum.js +0 -144
  348. package/esm5/src/event.js +0 -259
  349. package/esm5/src/interface-registry.js +0 -43
  350. package/esm5/src/key-generator.js +0 -111
  351. package/esm5/src/local-query-comparison-options.js +0 -67
  352. package/esm5/src/mapping-context.js +0 -407
  353. package/esm5/src/naming-convention.js +0 -90
  354. package/esm5/src/observable-array.js +0 -201
  355. package/esm5/src/predicate.js +0 -1300
  356. package/esm5/src/primitive-array.js +0 -87
  357. package/esm5/src/query-options.js +0 -167
  358. package/esm5/src/relation-array.js +0 -175
  359. package/esm5/src/save-options.js +0 -43
  360. package/esm5/src/unattached-children-map.js +0 -60
  361. package/esm5/src/validate.js +0 -996
  362. package/esm5/src/validation-options.js +0 -66
  363. package/fesm2015/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  364. package/fesm2015/breeze-client-adapter-ajax-fetch.js.map +0 -1
  365. package/fesm2015/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  366. package/fesm2015/breeze-client-adapter-ajax-jquery.js.map +0 -1
  367. package/fesm2015/breeze-client-adapter-ajax-post.js.map +0 -1
  368. package/fesm2015/breeze-client-adapter-data-service-odata.js.map +0 -1
  369. package/fesm2015/breeze-client-adapter-data-service-webapi.js.map +0 -1
  370. package/fesm2015/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  371. package/fesm2015/breeze-client-adapter-model-library-ko.js.map +0 -1
  372. package/fesm2015/breeze-client-adapter-uri-builder-json.js.map +0 -1
  373. package/fesm2015/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  374. package/fesm2015/breeze-client-mixin-get-entity-graph.js.map +0 -1
  375. package/fesm2015/breeze-client-mixin-save-queuing.js.map +0 -1
  376. package/fesm2015/breeze-client.js.map +0 -1
  377. package/fesm5/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  378. package/fesm5/breeze-client-adapter-ajax-fetch.js.map +0 -1
  379. package/fesm5/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  380. package/fesm5/breeze-client-adapter-ajax-jquery.js.map +0 -1
  381. package/fesm5/breeze-client-adapter-ajax-post.js.map +0 -1
  382. package/fesm5/breeze-client-adapter-data-service-odata.js.map +0 -1
  383. package/fesm5/breeze-client-adapter-data-service-webapi.js.map +0 -1
  384. package/fesm5/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  385. package/fesm5/breeze-client-adapter-model-library-ko.js.map +0 -1
  386. package/fesm5/breeze-client-adapter-uri-builder-json.js +0 -92
  387. package/fesm5/breeze-client-adapter-uri-builder-json.js.map +0 -1
  388. package/fesm5/breeze-client-adapter-uri-builder-odata.js +0 -250
  389. package/fesm5/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  390. package/fesm5/breeze-client-mixin-get-entity-graph.js.map +0 -1
  391. package/fesm5/breeze-client-mixin-save-queuing.js.map +0 -1
  392. package/fesm5/breeze-client.js.map +0 -1
  393. package/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.metadata.json +0 -1
  394. package/mixin-get-entity-graph/package.json +0 -13
  395. package/mixin-save-queuing/breeze-client-mixin-save-queuing.metadata.json +0 -1
  396. package/mixin-save-queuing/package.json +0 -13
  397. package/public_api.d.ts +0 -1
@@ -1,252 +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-model-library-ko', ['exports', 'breeze-client'], factory) :
4
- (global = global || self, factory((global['breeze-client'] = global['breeze-client'] || {}, global['breeze-client']['adapter-model-library-ko'] = {}), global['breeze-client']));
5
- }(this, (function (exports, breezeClient) { 'use strict';
6
-
7
- var core = breezeClient.core;
8
- var canIsolateES5Props = core.isES5Supported;
9
- var ko;
10
- var ModelLibraryKnockoutAdapter = /** @class */ (function () {
11
- function ModelLibraryKnockoutAdapter() {
12
- this.name = "ko";
13
- }
14
- ModelLibraryKnockoutAdapter.register = function (config$1) {
15
- config$1 = config$1 || breezeClient.config;
16
- config$1.registerAdapter("modelLibrary", ModelLibraryKnockoutAdapter);
17
- return config$1.initializeAdapterInstance("modelLibrary", "ko", true);
18
- };
19
- ModelLibraryKnockoutAdapter.prototype.initialize = function () {
20
- ko = core.requireLib("ko;knockout", "The Knockout library");
21
- ko.extenders.intercept = function (target, interceptorOptions) {
22
- var instance = interceptorOptions.instance;
23
- var property = interceptorOptions.property;
24
- // create a computed observable to intercept writes to our observable
25
- var result;
26
- if (target.splice) {
27
- result = ko.computed({
28
- read: target //always return the original observables value
29
- });
30
- }
31
- else {
32
- result = ko.computed({
33
- read: target,
34
- write: function (newValue) {
35
- instance._$interceptor(property, newValue, target);
36
- return instance;
37
- }
38
- });
39
- }
40
- //return the new computed observable
41
- return result;
42
- };
43
- };
44
- ModelLibraryKnockoutAdapter.prototype.getTrackablePropertyNames = function (entity) {
45
- var names = [];
46
- for (var p in entity) {
47
- if (p === "entityType")
48
- continue;
49
- if (p === "_$typeName")
50
- continue;
51
- var propDescr = getES5PropDescriptor(entity, p);
52
- if (propDescr && propDescr.get) {
53
- names.push(p);
54
- }
55
- else {
56
- var val = entity[p];
57
- if (ko.isObservable(val)) {
58
- names.push(p);
59
- }
60
- else if (!core.isFunction(val)) {
61
- names.push(p);
62
- }
63
- }
64
- }
65
- return names;
66
- };
67
- ModelLibraryKnockoutAdapter.prototype.initializeEntityPrototype = function (proto) {
68
- proto.getProperty = function (propertyName) {
69
- return this[propertyName]();
70
- };
71
- proto.setProperty = function (propertyName, value) {
72
- this[propertyName](value);
73
- // allow set property chaining.
74
- return this;
75
- };
76
- if (canIsolateES5Props) {
77
- isolateES5Props(proto);
78
- }
79
- };
80
- ModelLibraryKnockoutAdapter.prototype.startTracking = function (entity, proto) {
81
- // create ko's for each property and assign defaultValues
82
- var stype = (entity.entityType || entity.complexType);
83
- var es5Descriptors = stype._extra.es5Descriptors || {};
84
- // sort unmapped properties to the end
85
- stype.getProperties().sort(function (p1, p2) {
86
- var v1 = p1.isUnmapped ? 1 : 0;
87
- var v2 = p2.isUnmapped ? 1 : 0;
88
- return v1 - v2;
89
- }).forEach(function (prop) {
90
- var propName = prop.name;
91
- var val = entity[propName];
92
- var propDescr = es5Descriptors[propName];
93
- var koObj;
94
- // check if property is an ES5 property
95
- if (propDescr) {
96
- var getFn_1 = propDescr.get.bind(entity);
97
- if (propDescr.set) {
98
- var setFn_1 = propDescr.set.bind(entity);
99
- var rawAccessorFn_1 = function (newValue) {
100
- if (arguments.length === 0) {
101
- getFn_1();
102
- return;
103
- }
104
- else {
105
- setFn_1(newValue);
106
- }
107
- };
108
- koObj = ko.computed({
109
- read: function () {
110
- stype._koDummy();
111
- return getFn_1();
112
- },
113
- write: function (newValue) {
114
- entity._$interceptor(prop, newValue, rawAccessorFn_1);
115
- stype._koDummy.valueHasMutated();
116
- return entity;
117
- }
118
- });
119
- }
120
- else {
121
- koObj = ko.computed({
122
- read: getFn_1,
123
- write: function () {
124
- }
125
- });
126
- }
127
- // check if property is already exposed as a ko object
128
- }
129
- else if (ko.isObservable(val)) {
130
- if (prop.isNavigationProperty) {
131
- throw new Error("Cannot assign a navigation property in an entity ctor.: " + propName);
132
- }
133
- koObj = val;
134
- // otherwise
135
- }
136
- else {
137
- val = initializeValueForProp(entity, prop, val);
138
- koObj = prop.isScalar ? ko.observable(val) : ko.observableArray(val);
139
- }
140
- if (prop.isScalar) {
141
- if (propDescr) {
142
- Object.defineProperty(entity, propName, {
143
- enumerable: true,
144
- configurable: true,
145
- writable: true,
146
- value: koObj
147
- });
148
- }
149
- else {
150
- var koExt = koObj.extend({ intercept: { instance: entity, property: prop } });
151
- entity[propName] = koExt;
152
- }
153
- }
154
- else {
155
- val._koObj = koObj;
156
- // code to suppress extra breeze notification when
157
- // ko's array methods are called.
158
- koObj.subscribe(onBeforeChange, null, "beforeChange");
159
- // code to insure that any direct breeze changes notify ko
160
- val.arrayChanged.subscribe(onArrayChanged);
161
- koObj.equalityComparer = function () {
162
- throw new Error("Collection navigation properties may NOT be set.");
163
- };
164
- entity[propName] = koObj;
165
- }
166
- });
167
- };
168
- return ModelLibraryKnockoutAdapter;
169
- }());
170
- breezeClient.config.registerAdapter("modelLibrary", ModelLibraryKnockoutAdapter);
171
- // private fns
172
- function getES5PropDescriptor(proto, propName) {
173
- if (!canIsolateES5Props) {
174
- return null;
175
- }
176
- if (proto.hasOwnProperty(propName)) {
177
- return Object.getOwnPropertyDescriptor && Object.getOwnPropertyDescriptor(proto, propName);
178
- }
179
- else {
180
- var nextProto = Object.getPrototypeOf(proto);
181
- return nextProto ? getES5PropDescriptor(nextProto, propName) : null;
182
- }
183
- }
184
- function initializeValueForProp(entity, prop, val) {
185
- if (prop instanceof breezeClient.DataProperty) {
186
- if (prop.isComplexProperty) {
187
- // TODO: right now we create Empty complexObjects here - these should actually come from the entity
188
- if (prop.isScalar) {
189
- val = prop.dataType._createInstanceCore(entity, prop);
190
- }
191
- else {
192
- val = breezeClient.makeComplexArray([], entity, prop);
193
- }
194
- }
195
- else if (!prop.isScalar) {
196
- val = breezeClient.makePrimitiveArray([], entity, prop);
197
- }
198
- else if (val === undefined) {
199
- val = prop.defaultValue;
200
- }
201
- }
202
- else if (prop instanceof breezeClient.NavigationProperty) {
203
- if (val !== undefined) {
204
- throw new Error("Cannot assign a navigation property in an entity ctor.: " + prop.name);
205
- }
206
- if (prop.isScalar) {
207
- // TODO: change this to nullEntity later.
208
- val = null;
209
- }
210
- else {
211
- val = breezeClient.makeRelationArray([], entity, prop);
212
- }
213
- }
214
- else {
215
- throw new Error("unknown property: " + prop.name);
216
- }
217
- return val;
218
- }
219
- function onBeforeChange(args) {
220
- args._koObj._suppressBreeze = true;
221
- }
222
- function onArrayChanged(args) {
223
- var koObj = args.array._koObj;
224
- if (koObj._suppressBreeze) {
225
- koObj._suppressBreeze = false;
226
- }
227
- else {
228
- koObj.valueHasMutated();
229
- }
230
- }
231
- function isolateES5Props(proto) {
232
- var stype = (proto.entityType || proto.complexType);
233
- var es5Descriptors = {};
234
- stype.getProperties().forEach(function (prop) {
235
- var propDescr = getES5PropDescriptor(proto, prop.name);
236
- if (propDescr) {
237
- es5Descriptors[prop.name] = propDescr;
238
- }
239
- });
240
- if (!core.isEmpty(es5Descriptors)) {
241
- var extra = stype._extra;
242
- extra.es5Descriptors = es5Descriptors;
243
- stype._koDummy = ko.observable(null);
244
- }
245
- }
246
-
247
- exports.ModelLibraryKnockoutAdapter = ModelLibraryKnockoutAdapter;
248
-
249
- Object.defineProperty(exports, '__esModule', { value: true });
250
-
251
- })));
252
- //# sourceMappingURL=breeze-client-adapter-model-library-ko.umd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"breeze-client-adapter-model-library-ko.umd.js","sources":["ng://breeze-client/adapter-model-library-ko/adapter-model-library-ko.ts"],"sourcesContent":["import * as breeze from 'breeze-client';\r\n\r\nlet core = breeze.core;\r\n\r\nlet canIsolateES5Props = core.isES5Supported;\r\nlet ko: any;\r\n\r\nexport class ModelLibraryKnockoutAdapter implements breeze.ModelLibraryAdapter {\r\n name: string;\r\n constructor() {\r\n this.name = \"ko\";\r\n }\r\n\r\n static register(config?: breeze.BreezeConfig) {\r\n config = config || breeze.config;\r\n config.registerAdapter(\"modelLibrary\", ModelLibraryKnockoutAdapter);\r\n return config.initializeAdapterInstance(\"modelLibrary\", \"ko\", true) as ModelLibraryKnockoutAdapter;\r\n }\r\n\r\n initialize() {\r\n ko = core.requireLib(\"ko;knockout\", \"The Knockout library\");\r\n ko.extenders.intercept = function (target: any, interceptorOptions: any) {\r\n let instance = interceptorOptions.instance;\r\n let property = interceptorOptions.property;\r\n\r\n // create a computed observable to intercept writes to our observable\r\n let result: any;\r\n if (target.splice) {\r\n result = ko.computed({\r\n read: target //always return the original observables value\r\n });\r\n } else {\r\n result = ko.computed({\r\n read: target, //always return the original observables value\r\n write: function (newValue: any) {\r\n instance._$interceptor(property, newValue, target);\r\n return instance;\r\n }\r\n });\r\n }\r\n //return the new computed observable\r\n return result;\r\n };\r\n\r\n }\r\n\r\n getTrackablePropertyNames(entity: any) {\r\n let names: string[] = [];\r\n for (let p in entity) {\r\n if (p === \"entityType\") continue;\r\n if (p === \"_$typeName\") continue;\r\n\r\n let propDescr = getES5PropDescriptor(entity, p);\r\n if (propDescr && propDescr.get) {\r\n names.push(p);\r\n } else {\r\n let val = entity[p];\r\n if (ko.isObservable(val)) {\r\n names.push(p);\r\n } else if (!core.isFunction(val)) {\r\n names.push(p);\r\n }\r\n }\r\n }\r\n return names;\r\n }\r\n\r\n initializeEntityPrototype(proto: any) {\r\n\r\n proto.getProperty = function (propertyName: string) {\r\n return this[propertyName]();\r\n };\r\n\r\n proto.setProperty = function (propertyName: string, value: any) {\r\n this[propertyName](value);\r\n // allow set property chaining.\r\n return this;\r\n };\r\n\r\n if (canIsolateES5Props) {\r\n isolateES5Props(proto);\r\n }\r\n\r\n }\r\n\r\n startTracking(entity: any, proto: any) {\r\n // create ko's for each property and assign defaultValues\r\n\r\n let stype = (entity.entityType || entity.complexType) as breeze.StructuralType;\r\n let es5Descriptors = stype._extra.es5Descriptors || {};\r\n\r\n // sort unmapped properties to the end\r\n stype.getProperties().sort(function (p1, p2) {\r\n let v1 = p1.isUnmapped ? 1 : 0;\r\n let v2 = p2.isUnmapped ? 1 : 0;\r\n return v1 - v2;\r\n }).forEach(function (prop) {\r\n let propName = prop.name;\r\n let val = entity[propName];\r\n let propDescr = es5Descriptors[propName];\r\n let koObj: any;\r\n\r\n // check if property is an ES5 property\r\n if (propDescr) {\r\n let getFn = propDescr.get.bind(entity);\r\n if (propDescr.set) {\r\n let setFn = propDescr.set.bind(entity);\r\n let rawAccessorFn = function (newValue: any) {\r\n if (arguments.length === 0) {\r\n getFn();\r\n return;\r\n } else {\r\n setFn(newValue);\r\n }\r\n };\r\n koObj = ko.computed({\r\n read: function () {\r\n (stype as any)._koDummy();\r\n return getFn();\r\n },\r\n write: function (newValue: any) {\r\n entity._$interceptor(prop, newValue, rawAccessorFn);\r\n (stype as any)._koDummy.valueHasMutated();\r\n return entity;\r\n }\r\n });\r\n } else {\r\n koObj = ko.computed({\r\n read: getFn,\r\n write: function () {\r\n }\r\n\r\n });\r\n }\r\n // check if property is already exposed as a ko object\r\n } else if (ko.isObservable(val)) {\r\n if (prop.isNavigationProperty) {\r\n throw new Error(\"Cannot assign a navigation property in an entity ctor.: \" + propName);\r\n }\r\n koObj = val;\r\n // otherwise\r\n } else {\r\n val = initializeValueForProp(entity, prop, val);\r\n koObj = prop.isScalar ? ko.observable(val) : ko.observableArray(val);\r\n }\r\n\r\n\r\n if (prop.isScalar) {\r\n if (propDescr) {\r\n Object.defineProperty(entity, propName, {\r\n enumerable: true,\r\n configurable: true,\r\n writable: true,\r\n value: koObj\r\n });\r\n } else {\r\n let koExt = koObj.extend({ intercept: { instance: entity, property: prop } });\r\n entity[propName] = koExt;\r\n }\r\n } else {\r\n val._koObj = koObj;\r\n // code to suppress extra breeze notification when\r\n // ko's array methods are called.\r\n koObj.subscribe(onBeforeChange, null, \"beforeChange\");\r\n // code to insure that any direct breeze changes notify ko\r\n val.arrayChanged.subscribe(onArrayChanged);\r\n\r\n koObj.equalityComparer = function () {\r\n throw new Error(\"Collection navigation properties may NOT be set.\");\r\n };\r\n entity[propName] = koObj;\r\n }\r\n\r\n });\r\n\r\n }\r\n}\r\n\r\nbreeze.config.registerAdapter(\"modelLibrary\", ModelLibraryKnockoutAdapter);\r\n\r\n\r\n// private fns\r\n\r\nfunction getES5PropDescriptor(proto: any, propName: string): any {\r\n if (!canIsolateES5Props) {\r\n return null;\r\n }\r\n if (proto.hasOwnProperty(propName)) {\r\n return Object.getOwnPropertyDescriptor && Object.getOwnPropertyDescriptor(proto, propName);\r\n } else {\r\n let nextProto = Object.getPrototypeOf(proto);\r\n return nextProto ? getES5PropDescriptor(nextProto, propName) : null;\r\n }\r\n}\r\n\r\nfunction initializeValueForProp(entity: any, prop: breeze.EntityProperty, val: any) {\r\n if (prop instanceof breeze.DataProperty) {\r\n if (prop.isComplexProperty) {\r\n // TODO: right now we create Empty complexObjects here - these should actually come from the entity\r\n if (prop.isScalar) {\r\n val = (prop.dataType as breeze.ComplexType)._createInstanceCore(entity, prop);\r\n } else {\r\n val = breeze.makeComplexArray([], entity, prop);\r\n }\r\n } else if (!prop.isScalar) {\r\n val = breeze.makePrimitiveArray([], entity, prop);\r\n } else if (val === undefined) {\r\n val = prop.defaultValue;\r\n }\r\n\r\n } else if (prop instanceof breeze.NavigationProperty) {\r\n if (val !== undefined) {\r\n throw new Error(\"Cannot assign a navigation property in an entity ctor.: \" + prop.name);\r\n }\r\n if (prop.isScalar) {\r\n // TODO: change this to nullEntity later.\r\n val = null;\r\n } else {\r\n val = breeze.makeRelationArray([], entity, prop);\r\n }\r\n } else {\r\n throw new Error(\"unknown property: \" + (prop as any).name);\r\n }\r\n return val;\r\n}\r\n\r\n\r\nfunction onBeforeChange(args: any) {\r\n args._koObj._suppressBreeze = true;\r\n}\r\n\r\nfunction onArrayChanged(args: any) {\r\n let koObj = args.array._koObj;\r\n if (koObj._suppressBreeze) {\r\n koObj._suppressBreeze = false;\r\n } else {\r\n koObj.valueHasMutated();\r\n }\r\n}\r\n\r\nfunction isolateES5Props(proto: any) {\r\n let stype = (proto.entityType || proto.complexType) as breeze.StructuralType;\r\n let es5Descriptors = {};\r\n stype.getProperties().forEach(function (prop) {\r\n let propDescr = getES5PropDescriptor(proto, prop.name);\r\n if (propDescr) {\r\n es5Descriptors[prop.name] = propDescr;\r\n }\r\n });\r\n if (!core.isEmpty(es5Descriptors)) {\r\n let extra = stype._extra;\r\n extra.es5Descriptors = es5Descriptors;\r\n (stype as any)._koDummy = ko.observable(null);\r\n }\r\n}\r\n\r\n"],"names":["breeze.core","config","breeze.config","breeze.DataProperty","breeze.makeComplexArray","breeze.makePrimitiveArray","breeze.NavigationProperty","breeze.makeRelationArray"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("breeze-client")):"function"==typeof define&&define.amd?define("breeze-client/adapter-model-library-ko",["exports","breeze-client"],r):r(((e=e||self)["breeze-client"]=e["breeze-client"]||{},e["breeze-client"]["adapter-model-library-ko"]={}),e["breeze-client"])}(this,(function(e,r){"use strict";var t,n=r.core,i=n.isES5Supported,o=function(){function e(){this.name="ko"}return e.register=function(t){return(t=t||r.config).registerAdapter("modelLibrary",e),t.initializeAdapterInstance("modelLibrary","ko",!0)},e.prototype.initialize=function(){(t=n.requireLib("ko;knockout","The Knockout library")).extenders.intercept=function(e,r){var n=r.instance,i=r.property;return e.splice?t.computed({read:e}):t.computed({read:e,write:function(r){return n._$interceptor(i,r,e),n}})}},e.prototype.getTrackablePropertyNames=function(e){var r=[];for(var i in e)if("entityType"!==i&&"_$typeName"!==i){var o=a(e,i);if(o&&o.get)r.push(i);else{var s=e[i];t.isObservable(s)?r.push(i):n.isFunction(s)||r.push(i)}}return r},e.prototype.initializeEntityPrototype=function(e){e.getProperty=function(e){return this[e]()},e.setProperty=function(e,r){return this[e](r),this},i&&function(e){var r=e.entityType||e.complexType,i={};if(r.getProperties().forEach((function(r){var t=a(e,r.name);t&&(i[r.name]=t)})),!n.isEmpty(i)){r._extra.es5Descriptors=i,r._koDummy=t.observable(null)}}(e)},e.prototype.startTracking=function(e,n){var i=e.entityType||e.complexType,o=i._extra.es5Descriptors||{};i.getProperties().sort((function(e,r){return(e.isUnmapped?1:0)-(r.isUnmapped?1:0)})).forEach((function(n){var a,c=n.name,u=e[c],l=o[c];if(l){var f=l.get.bind(e);if(l.set){var y=l.set.bind(e),b=function(e){0!==arguments.length?y(e):f()};a=t.computed({read:function(){return i._koDummy(),f()},write:function(r){return e._$interceptor(n,r,b),i._koDummy.valueHasMutated(),e}})}else a=t.computed({read:f,write:function(){}})}else if(t.isObservable(u)){if(n.isNavigationProperty)throw new Error("Cannot assign a navigation property in an entity ctor.: "+c);a=u}else u=function(e,t,n){if(t instanceof r.DataProperty)t.isComplexProperty?n=t.isScalar?t.dataType._createInstanceCore(e,t):r.makeComplexArray([],e,t):t.isScalar?void 0===n&&(n=t.defaultValue):n=r.makePrimitiveArray([],e,t);else{if(!(t instanceof r.NavigationProperty))throw new Error("unknown property: "+t.name);if(void 0!==n)throw new Error("Cannot assign a navigation property in an entity ctor.: "+t.name);n=t.isScalar?null:r.makeRelationArray([],e,t)}return n}(e,n,u),a=n.isScalar?t.observable(u):t.observableArray(u);if(n.isScalar)if(l)Object.defineProperty(e,c,{enumerable:!0,configurable:!0,writable:!0,value:a});else{var d=a.extend({intercept:{instance:e,property:n}});e[c]=d}else u._koObj=a,a.subscribe(s,null,"beforeChange"),u.arrayChanged.subscribe(p),a.equalityComparer=function(){throw new Error("Collection navigation properties may NOT be set.")},e[c]=a}))},e}();function a(e,r){if(!i)return null;if(e.hasOwnProperty(r))return Object.getOwnPropertyDescriptor&&Object.getOwnPropertyDescriptor(e,r);var t=Object.getPrototypeOf(e);return t?a(t,r):null}function s(e){e._koObj._suppressBreeze=!0}function p(e){var r=e.array._koObj;r._suppressBreeze?r._suppressBreeze=!1:r.valueHasMutated()}r.config.registerAdapter("modelLibrary",o),e.ModelLibraryKnockoutAdapter=o,Object.defineProperty(e,"__esModule",{value:!0})}));
2
- //# sourceMappingURL=breeze-client-adapter-model-library-ko.umd.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["ng://breeze-client/adapter-model-library-ko/adapter-model-library-ko.ts"],"names":["ko","core","breeze.core","canIsolateES5Props","isES5Supported","ModelLibraryKnockoutAdapter","this","name","register","config","breeze.config","registerAdapter","initializeAdapterInstance","prototype","initialize","requireLib","extenders","intercept","target","interceptorOptions","instance","property","splice","computed","read","write","newValue","_$interceptor","getTrackablePropertyNames","entity","names","p","propDescr","getES5PropDescriptor","get","push","val","isObservable","isFunction","initializeEntityPrototype","proto","getProperty","propertyName","setProperty","value","stype","entityType","complexType","es5Descriptors","getProperties","forEach","prop","isEmpty","_extra","_koDummy","observable","isolateES5Props","startTracking","sort","p1","p2","isUnmapped","koObj","propName","getFn_1","bind","set","setFn_1","rawAccessorFn_1","arguments","length","valueHasMutated","isNavigationProperty","Error","breeze.DataProperty","isComplexProperty","isScalar","dataType","_createInstanceCore","breeze.makeComplexArray","undefined","defaultValue","breeze.makePrimitiveArray","breeze.NavigationProperty","breeze.makeRelationArray","initializeValueForProp","observableArray","Object","defineProperty","enumerable","configurable","writable","koExt","extend","_koObj","subscribe","onBeforeChange","arrayChanged","onArrayChanged","equalityComparer","hasOwnProperty","getOwnPropertyDescriptor","nextProto","getPrototypeOf","args","_suppressBreeze","array"],"mappings":"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","sourcesContent":["import * as breeze from 'breeze-client';\r\n\r\nlet core = breeze.core;\r\n\r\nlet canIsolateES5Props = core.isES5Supported;\r\nlet ko: any;\r\n\r\nexport class ModelLibraryKnockoutAdapter implements breeze.ModelLibraryAdapter {\r\n name: string;\r\n constructor() {\r\n this.name = \"ko\";\r\n }\r\n\r\n static register(config?: breeze.BreezeConfig) {\r\n config = config || breeze.config;\r\n config.registerAdapter(\"modelLibrary\", ModelLibraryKnockoutAdapter);\r\n return config.initializeAdapterInstance(\"modelLibrary\", \"ko\", true) as ModelLibraryKnockoutAdapter;\r\n }\r\n\r\n initialize() {\r\n ko = core.requireLib(\"ko;knockout\", \"The Knockout library\");\r\n ko.extenders.intercept = function (target: any, interceptorOptions: any) {\r\n let instance = interceptorOptions.instance;\r\n let property = interceptorOptions.property;\r\n\r\n // create a computed observable to intercept writes to our observable\r\n let result: any;\r\n if (target.splice) {\r\n result = ko.computed({\r\n read: target //always return the original observables value\r\n });\r\n } else {\r\n result = ko.computed({\r\n read: target, //always return the original observables value\r\n write: function (newValue: any) {\r\n instance._$interceptor(property, newValue, target);\r\n return instance;\r\n }\r\n });\r\n }\r\n //return the new computed observable\r\n return result;\r\n };\r\n\r\n }\r\n\r\n getTrackablePropertyNames(entity: any) {\r\n let names: string[] = [];\r\n for (let p in entity) {\r\n if (p === \"entityType\") continue;\r\n if (p === \"_$typeName\") continue;\r\n\r\n let propDescr = getES5PropDescriptor(entity, p);\r\n if (propDescr && propDescr.get) {\r\n names.push(p);\r\n } else {\r\n let val = entity[p];\r\n if (ko.isObservable(val)) {\r\n names.push(p);\r\n } else if (!core.isFunction(val)) {\r\n names.push(p);\r\n }\r\n }\r\n }\r\n return names;\r\n }\r\n\r\n initializeEntityPrototype(proto: any) {\r\n\r\n proto.getProperty = function (propertyName: string) {\r\n return this[propertyName]();\r\n };\r\n\r\n proto.setProperty = function (propertyName: string, value: any) {\r\n this[propertyName](value);\r\n // allow set property chaining.\r\n return this;\r\n };\r\n\r\n if (canIsolateES5Props) {\r\n isolateES5Props(proto);\r\n }\r\n\r\n }\r\n\r\n startTracking(entity: any, proto: any) {\r\n // create ko's for each property and assign defaultValues\r\n\r\n let stype = (entity.entityType || entity.complexType) as breeze.StructuralType;\r\n let es5Descriptors = stype._extra.es5Descriptors || {};\r\n\r\n // sort unmapped properties to the end\r\n stype.getProperties().sort(function (p1, p2) {\r\n let v1 = p1.isUnmapped ? 1 : 0;\r\n let v2 = p2.isUnmapped ? 1 : 0;\r\n return v1 - v2;\r\n }).forEach(function (prop) {\r\n let propName = prop.name;\r\n let val = entity[propName];\r\n let propDescr = es5Descriptors[propName];\r\n let koObj: any;\r\n\r\n // check if property is an ES5 property\r\n if (propDescr) {\r\n let getFn = propDescr.get.bind(entity);\r\n if (propDescr.set) {\r\n let setFn = propDescr.set.bind(entity);\r\n let rawAccessorFn = function (newValue: any) {\r\n if (arguments.length === 0) {\r\n getFn();\r\n return;\r\n } else {\r\n setFn(newValue);\r\n }\r\n };\r\n koObj = ko.computed({\r\n read: function () {\r\n (stype as any)._koDummy();\r\n return getFn();\r\n },\r\n write: function (newValue: any) {\r\n entity._$interceptor(prop, newValue, rawAccessorFn);\r\n (stype as any)._koDummy.valueHasMutated();\r\n return entity;\r\n }\r\n });\r\n } else {\r\n koObj = ko.computed({\r\n read: getFn,\r\n write: function () {\r\n }\r\n\r\n });\r\n }\r\n // check if property is already exposed as a ko object\r\n } else if (ko.isObservable(val)) {\r\n if (prop.isNavigationProperty) {\r\n throw new Error(\"Cannot assign a navigation property in an entity ctor.: \" + propName);\r\n }\r\n koObj = val;\r\n // otherwise\r\n } else {\r\n val = initializeValueForProp(entity, prop, val);\r\n koObj = prop.isScalar ? ko.observable(val) : ko.observableArray(val);\r\n }\r\n\r\n\r\n if (prop.isScalar) {\r\n if (propDescr) {\r\n Object.defineProperty(entity, propName, {\r\n enumerable: true,\r\n configurable: true,\r\n writable: true,\r\n value: koObj\r\n });\r\n } else {\r\n let koExt = koObj.extend({ intercept: { instance: entity, property: prop } });\r\n entity[propName] = koExt;\r\n }\r\n } else {\r\n val._koObj = koObj;\r\n // code to suppress extra breeze notification when\r\n // ko's array methods are called.\r\n koObj.subscribe(onBeforeChange, null, \"beforeChange\");\r\n // code to insure that any direct breeze changes notify ko\r\n val.arrayChanged.subscribe(onArrayChanged);\r\n\r\n koObj.equalityComparer = function () {\r\n throw new Error(\"Collection navigation properties may NOT be set.\");\r\n };\r\n entity[propName] = koObj;\r\n }\r\n\r\n });\r\n\r\n }\r\n}\r\n\r\nbreeze.config.registerAdapter(\"modelLibrary\", ModelLibraryKnockoutAdapter);\r\n\r\n\r\n// private fns\r\n\r\nfunction getES5PropDescriptor(proto: any, propName: string): any {\r\n if (!canIsolateES5Props) {\r\n return null;\r\n }\r\n if (proto.hasOwnProperty(propName)) {\r\n return Object.getOwnPropertyDescriptor && Object.getOwnPropertyDescriptor(proto, propName);\r\n } else {\r\n let nextProto = Object.getPrototypeOf(proto);\r\n return nextProto ? getES5PropDescriptor(nextProto, propName) : null;\r\n }\r\n}\r\n\r\nfunction initializeValueForProp(entity: any, prop: breeze.EntityProperty, val: any) {\r\n if (prop instanceof breeze.DataProperty) {\r\n if (prop.isComplexProperty) {\r\n // TODO: right now we create Empty complexObjects here - these should actually come from the entity\r\n if (prop.isScalar) {\r\n val = (prop.dataType as breeze.ComplexType)._createInstanceCore(entity, prop);\r\n } else {\r\n val = breeze.makeComplexArray([], entity, prop);\r\n }\r\n } else if (!prop.isScalar) {\r\n val = breeze.makePrimitiveArray([], entity, prop);\r\n } else if (val === undefined) {\r\n val = prop.defaultValue;\r\n }\r\n\r\n } else if (prop instanceof breeze.NavigationProperty) {\r\n if (val !== undefined) {\r\n throw new Error(\"Cannot assign a navigation property in an entity ctor.: \" + prop.name);\r\n }\r\n if (prop.isScalar) {\r\n // TODO: change this to nullEntity later.\r\n val = null;\r\n } else {\r\n val = breeze.makeRelationArray([], entity, prop);\r\n }\r\n } else {\r\n throw new Error(\"unknown property: \" + (prop as any).name);\r\n }\r\n return val;\r\n}\r\n\r\n\r\nfunction onBeforeChange(args: any) {\r\n args._koObj._suppressBreeze = true;\r\n}\r\n\r\nfunction onArrayChanged(args: any) {\r\n let koObj = args.array._koObj;\r\n if (koObj._suppressBreeze) {\r\n koObj._suppressBreeze = false;\r\n } else {\r\n koObj.valueHasMutated();\r\n }\r\n}\r\n\r\nfunction isolateES5Props(proto: any) {\r\n let stype = (proto.entityType || proto.complexType) as breeze.StructuralType;\r\n let es5Descriptors = {};\r\n stype.getProperties().forEach(function (prop) {\r\n let propDescr = getES5PropDescriptor(proto, prop.name);\r\n if (propDescr) {\r\n es5Descriptors[prop.name] = propDescr;\r\n }\r\n });\r\n if (!core.isEmpty(es5Descriptors)) {\r\n let extra = stype._extra;\r\n extra.es5Descriptors = es5Descriptors;\r\n (stype as any)._koDummy = ko.observable(null);\r\n }\r\n}\r\n\r\n"]}
@@ -1,96 +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-uri-builder-json', ['exports', 'breeze-client'], factory) :
4
- (global = global || self, factory((global['breeze-client'] = global['breeze-client'] || {}, global['breeze-client']['adapter-uri-builder-json'] = {}), 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
- var UriBuilderJsonAdapter = /** @class */ (function () {
57
- function UriBuilderJsonAdapter() {
58
- this.name = "json";
59
- }
60
- UriBuilderJsonAdapter.register = function (config$1) {
61
- config$1 = config$1 || breezeClient.config;
62
- config$1.registerAdapter("uriBuilder", UriBuilderJsonAdapter);
63
- return config$1.initializeAdapterInstance("uriBuilder", "json", true);
64
- };
65
- UriBuilderJsonAdapter.prototype.initialize = function () { };
66
- UriBuilderJsonAdapter.prototype.buildUri = function (entityQuery, metadataStore) {
67
- // force entityType validation;
68
- var entityType = entityQuery._getFromEntityType(metadataStore, false);
69
- if (!entityType)
70
- entityType = new breezeClient.EntityType(metadataStore);
71
- var json = entityQuery.toJSONExt({ entityType: entityType, toNameOnServer: true });
72
- json.from = undefined;
73
- json.queryOptions = undefined;
74
- if (json.parameters && json.parameters.$data) {
75
- // remove parameters if doing ajax post
76
- json.parameters = undefined;
77
- }
78
- var jsonString = JSON.stringify(json);
79
- if (jsonString.length > 2) {
80
- var urlBody = encodeURIComponent(jsonString);
81
- return appendQueryStringParameter(entityQuery.resourceName, urlBody);
82
- }
83
- else {
84
- return entityQuery.resourceName;
85
- }
86
- };
87
- return UriBuilderJsonAdapter;
88
- }());
89
- breezeClient.config.registerAdapter("uriBuilder", UriBuilderJsonAdapter);
90
-
91
- exports.UriBuilderJsonAdapter = UriBuilderJsonAdapter;
92
-
93
- Object.defineProperty(exports, '__esModule', { value: true });
94
-
95
- })));
96
- //# sourceMappingURL=breeze-client-adapter-uri-builder-json.umd.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"breeze-client-adapter-uri-builder-json.umd.js","sources":["ng://breeze-client/adapter-uri-builder-json/adapter-core.ts","ng://breeze-client/adapter-uri-builder-json/adapter-uri-builder-json.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 * as breeze from 'breeze-client';\r\nimport { appendQueryStringParameter } from './adapter-core';\r\n\r\nexport class UriBuilderJsonAdapter implements breeze.UriBuilderAdapter {\r\n name: string;\r\n\r\n constructor() {\r\n this.name = \"json\";\r\n }\r\n\r\n static register(config?: breeze.BreezeConfig) {\r\n config = config || breeze.config;\r\n config.registerAdapter(\"uriBuilder\", UriBuilderJsonAdapter);\r\n return config.initializeAdapterInstance(\"uriBuilder\", \"json\", true) as UriBuilderJsonAdapter;\r\n }\r\n\r\n initialize() {}\r\n\r\n buildUri(entityQuery: breeze.EntityQuery, metadataStore: breeze.MetadataStore) {\r\n // force entityType validation;\r\n let entityType = entityQuery._getFromEntityType(metadataStore, false);\r\n if (!entityType) entityType = new breeze.EntityType(metadataStore);\r\n let json = entityQuery.toJSONExt( { entityType: entityType, toNameOnServer: true}) as any;\r\n json.from = undefined;\r\n json.queryOptions = undefined;\r\n if (json.parameters && json.parameters.$data) {\r\n // remove parameters if doing ajax post\r\n json.parameters = undefined;\r\n }\r\n\r\n let jsonString = JSON.stringify(json);\r\n if (jsonString.length > 2) {\r\n let urlBody = encodeURIComponent(jsonString);\r\n return appendQueryStringParameter(entityQuery.resourceName, urlBody);\r\n } else {\r\n return entityQuery.resourceName;\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\nbreeze.config.registerAdapter(\"uriBuilder\", UriBuilderJsonAdapter);\r\n\r\n\r\n\r\n"],"names":["config","breeze.config","breeze.EntityType"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- !function(e,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("breeze-client")):"function"==typeof define&&define.amd?define("breeze-client/adapter-uri-builder-json",["exports","breeze-client"],r):r(((e=e||self)["breeze-client"]=e["breeze-client"]||{},e["breeze-client"]["adapter-uri-builder-json"]={}),e["breeze-client"])}(this,(function(e,r){"use strict";var t=function(){function e(){this.name="json"}return e.register=function(t){return(t=t||r.config).registerAdapter("uriBuilder",e),t.initializeAdapterInstance("uriBuilder","json",!0)},e.prototype.initialize=function(){},e.prototype.buildUri=function(e,t){var i=e._getFromEntityType(t,!1);i||(i=new r.EntityType(t));var n=e.toJSONExt({entityType:i,toNameOnServer:!0});n.from=void 0,n.queryOptions=void 0,n.parameters&&n.parameters.$data&&(n.parameters=void 0);var o=JSON.stringify(n);if(o.length>2){var u=encodeURIComponent(o);return function(e,r){if(!r)return e;var t=e.endsWith("?")?"":e.includes("?")?"&":"?";return e+t+r}(e.resourceName,u)}return e.resourceName},e}();r.config.registerAdapter("uriBuilder",t),e.UriBuilderJsonAdapter=t,Object.defineProperty(e,"__esModule",{value:!0})}));
2
- //# sourceMappingURL=breeze-client-adapter-uri-builder-json.umd.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["ng://breeze-client/adapter-uri-builder-json/adapter-uri-builder-json.ts","ng://breeze-client/adapter-uri-builder-json/adapter-core.ts"],"names":["UriBuilderJsonAdapter","this","name","register","config","breeze.config","registerAdapter","initializeAdapterInstance","prototype","initialize","buildUri","entityQuery","metadataStore","entityType","_getFromEntityType","breeze.EntityType","json","toJSONExt","toNameOnServer","from","undefined","queryOptions","parameters","$data","jsonString","JSON","stringify","length","urlBody","encodeURIComponent","url","parameter","separator","endsWith","includes","appendQueryStringParameter","resourceName"],"mappings":"8YAME,SAAAA,IACEC,KAAKC,KAAO,OAiChB,OA9BSF,EAAAG,SAAP,SAAgBC,GAGd,OAFAA,EAASA,GAAUC,EAAAA,QACZC,gBAAgB,aAAcN,GAC9BI,EAAOG,0BAA0B,aAAc,QAAQ,IAGhEP,EAAAQ,UAAAC,WAAA,aAEAT,EAAAQ,UAAAE,SAAA,SAASC,EAAiCC,GAExC,IAAIC,EAAaF,EAAYG,mBAAmBF,GAAe,GAC1DC,IAAYA,EAAa,IAAIE,EAAAA,WAAkBH,IACpD,IAAII,EAAOL,EAAYM,UAAW,CAAEJ,WAAYA,EAAYK,gBAAgB,IAC5EF,EAAKG,UAAOC,EACZJ,EAAKK,kBAAeD,EAChBJ,EAAKM,YAAcN,EAAKM,WAAWC,QAErCP,EAAKM,gBAAaF,GAGpB,IAAII,EAAaC,KAAKC,UAAUV,GAChC,GAAIQ,EAAWG,OAAS,EAAG,CACzB,IAAIC,EAAUC,mBAAmBL,GACjC,gBChCqCM,EAAaC,GACtD,IAAKA,EAAW,OAAOD,EAEvB,IAAIE,EAAYF,EAAIG,SAAS,KAAO,GAAKH,EAAII,SAAS,KAAO,IAAM,IAEnE,OAAOJ,EAAME,EAAYD,ED2BdI,CAA2BxB,EAAYyB,aAAcR,GAE5D,OAAOjB,EAAYyB,cAKzBpC,KAEAK,EAAAA,OAAcC,gBAAgB,aAAcN","sourcesContent":["import * as breeze from 'breeze-client';\r\nimport { appendQueryStringParameter } from './adapter-core';\r\n\r\nexport class UriBuilderJsonAdapter implements breeze.UriBuilderAdapter {\r\n name: string;\r\n\r\n constructor() {\r\n this.name = \"json\";\r\n }\r\n\r\n static register(config?: breeze.BreezeConfig) {\r\n config = config || breeze.config;\r\n config.registerAdapter(\"uriBuilder\", UriBuilderJsonAdapter);\r\n return config.initializeAdapterInstance(\"uriBuilder\", \"json\", true) as UriBuilderJsonAdapter;\r\n }\r\n\r\n initialize() {}\r\n\r\n buildUri(entityQuery: breeze.EntityQuery, metadataStore: breeze.MetadataStore) {\r\n // force entityType validation;\r\n let entityType = entityQuery._getFromEntityType(metadataStore, false);\r\n if (!entityType) entityType = new breeze.EntityType(metadataStore);\r\n let json = entityQuery.toJSONExt( { entityType: entityType, toNameOnServer: true}) as any;\r\n json.from = undefined;\r\n json.queryOptions = undefined;\r\n if (json.parameters && json.parameters.$data) {\r\n // remove parameters if doing ajax post\r\n json.parameters = undefined;\r\n }\r\n\r\n let jsonString = JSON.stringify(json);\r\n if (jsonString.length > 2) {\r\n let urlBody = encodeURIComponent(jsonString);\r\n return appendQueryStringParameter(entityQuery.resourceName, urlBody);\r\n } else {\r\n return entityQuery.resourceName;\r\n }\r\n\r\n }\r\n\r\n}\r\n\r\nbreeze.config.registerAdapter(\"uriBuilder\", UriBuilderJsonAdapter);\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"]}