breeze-client 2.2.1-cjs → 2.2.2

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 (378) hide show
  1. package/adapter-ajax-angularjs/{breeze-client-adapter-ajax-angularjs.d.ts → index.d.ts} +1 -0
  2. package/adapter-ajax-fetch/{breeze-client-adapter-ajax-fetch.d.ts → index.d.ts} +1 -0
  3. package/adapter-ajax-httpclient/{breeze-client-adapter-ajax-httpclient.d.ts → index.d.ts} +1 -0
  4. package/adapter-ajax-jquery/{breeze-client-adapter-ajax-jquery.d.ts → index.d.ts} +1 -0
  5. package/adapter-ajax-post/{breeze-client-adapter-ajax-post.d.ts → index.d.ts} +1 -0
  6. package/adapter-data-service-odata/{breeze-client-adapter-data-service-odata.d.ts → index.d.ts} +1 -0
  7. package/adapter-data-service-webapi/{breeze-client-adapter-data-service-webapi.d.ts → index.d.ts} +1 -0
  8. package/adapter-model-library-backing-store/{breeze-client-adapter-model-library-backing-store.d.ts → index.d.ts} +1 -0
  9. package/adapter-model-library-ko/{breeze-client-adapter-model-library-ko.d.ts → index.d.ts} +1 -0
  10. package/adapter-uri-builder-json/{breeze-client-adapter-uri-builder-json.d.ts → index.d.ts} +1 -0
  11. package/adapter-uri-builder-odata/{breeze-client-adapter-uri-builder-odata.d.ts → index.d.ts} +1 -0
  12. package/esm2022/adapter-ajax-angularjs/adapter-ajax-angularjs.mjs +135 -0
  13. package/esm2022/adapter-ajax-angularjs/adapter-core.mjs +49 -0
  14. package/esm2022/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.mjs +5 -0
  15. package/esm2022/adapter-ajax-fetch/adapter-ajax-fetch.mjs +135 -0
  16. package/esm2022/adapter-ajax-fetch/adapter-core.mjs +49 -0
  17. package/esm2022/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.mjs +5 -0
  18. package/esm2022/adapter-ajax-httpclient/adapter-ajax-httpclient.mjs +139 -0
  19. package/esm2022/adapter-ajax-httpclient/adapter-core.mjs +49 -0
  20. package/esm2022/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.mjs +5 -0
  21. package/esm2022/adapter-ajax-jquery/adapter-ajax-jquery.mjs +107 -0
  22. package/esm2022/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.mjs +5 -0
  23. package/esm2022/adapter-ajax-post/adapter-ajax-post.mjs +77 -0
  24. package/esm2022/adapter-ajax-post/breeze-client-adapter-ajax-post.mjs +5 -0
  25. package/esm2022/adapter-data-service-odata/adapter-core.mjs +49 -0
  26. package/{esm5/adapter-data-service-odata/adapter-data-service-odata.js → esm2022/adapter-data-service-odata/adapter-data-service-odata.mjs} +138 -147
  27. package/esm2022/adapter-data-service-odata/breeze-client-adapter-data-service-odata.mjs +5 -0
  28. package/esm2022/adapter-data-service-webapi/adapter-data-service-webapi.mjs +100 -0
  29. package/esm2022/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.mjs +5 -0
  30. package/esm2022/adapter-model-library-backing-store/adapter-model-library-backing-store.mjs +269 -0
  31. package/esm2022/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.mjs +5 -0
  32. package/esm2022/adapter-model-library-ko/adapter-model-library-ko.mjs +241 -0
  33. package/esm2022/adapter-model-library-ko/breeze-client-adapter-model-library-ko.mjs +5 -0
  34. package/esm2022/adapter-uri-builder-json/adapter-core.mjs +49 -0
  35. package/esm2022/adapter-uri-builder-json/adapter-uri-builder-json.mjs +37 -0
  36. package/esm2022/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.mjs +5 -0
  37. package/esm2022/adapter-uri-builder-odata/adapter-core.mjs +49 -0
  38. package/esm2022/adapter-uri-builder-odata/adapter-uri-builder-odata.mjs +191 -0
  39. package/esm2022/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.mjs +5 -0
  40. package/esm2022/breeze-client.mjs +5 -0
  41. package/esm2022/index.mjs +2 -0
  42. package/esm2022/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.mjs +5 -0
  43. package/esm2022/mixin-get-entity-graph/mixin-get-entity-graph.mjs +269 -0
  44. package/esm2022/mixin-save-queuing/breeze-client-mixin-save-queuing.mjs +5 -0
  45. package/esm2022/mixin-save-queuing/mixin-save-queuing.mjs +421 -0
  46. package/esm2022/src/abstract-data-service-adapter.mjs +325 -0
  47. package/esm2022/src/array.mjs +4 -0
  48. package/esm2022/src/assert-param.mjs +330 -0
  49. package/esm2022/src/breeze.mjs +85 -0
  50. package/esm2022/src/complex-array.mjs +117 -0
  51. package/esm2022/src/config.mjs +232 -0
  52. package/esm2022/src/core.mjs +712 -0
  53. package/esm2022/src/csdl-metadata-parser.mjs +385 -0
  54. package/esm2022/src/data-service.mjs +221 -0
  55. package/esm2022/src/data-type.mjs +510 -0
  56. package/esm2022/src/default-property-interceptor.mjs +460 -0
  57. package/{esm2015/src/entity-action.js → esm2022/src/entity-action.mjs} +25 -25
  58. package/esm2022/src/entity-aspect.mjs +897 -0
  59. package/esm2022/src/entity-group.mjs +192 -0
  60. package/esm2022/src/entity-key.mjs +125 -0
  61. package/esm2022/src/entity-manager.mjs +2163 -0
  62. package/esm2022/src/entity-metadata.mjs +2242 -0
  63. package/esm2022/src/entity-query.mjs +1024 -0
  64. package/esm2022/src/entity-state.mjs +107 -0
  65. package/esm2022/src/enum.mjs +143 -0
  66. package/esm2022/src/event.mjs +264 -0
  67. package/esm2022/src/interface-registry.mjs +39 -0
  68. package/esm2022/src/key-generator.mjs +110 -0
  69. package/esm2022/src/local-query-comparison-options.mjs +65 -0
  70. package/esm2022/src/mapping-context.mjs +411 -0
  71. package/esm2022/src/naming-convention.mjs +92 -0
  72. package/esm2022/src/observable-array.mjs +183 -0
  73. package/esm2022/src/predicate.mjs +1259 -0
  74. package/esm2022/src/primitive-array.mjs +85 -0
  75. package/esm2022/src/query-options.mjs +152 -0
  76. package/esm2022/src/relation-array.mjs +173 -0
  77. package/esm2022/src/save-options.mjs +41 -0
  78. package/esm2022/src/unattached-children-map.mjs +56 -0
  79. package/esm2022/src/validate.mjs +995 -0
  80. package/esm2022/src/validation-options.mjs +64 -0
  81. package/{fesm2015/breeze-client-adapter-ajax-angularjs.js → fesm2022/breeze-client-adapter-ajax-angularjs.mjs} +6 -1
  82. package/fesm2022/breeze-client-adapter-ajax-angularjs.mjs.map +1 -0
  83. package/{fesm2015/breeze-client-adapter-ajax-fetch.js → fesm2022/breeze-client-adapter-ajax-fetch.mjs} +9 -4
  84. package/fesm2022/breeze-client-adapter-ajax-fetch.mjs.map +1 -0
  85. package/{fesm2015/breeze-client-adapter-ajax-httpclient.js → fesm2022/breeze-client-adapter-ajax-httpclient.mjs} +6 -4
  86. package/fesm2022/breeze-client-adapter-ajax-httpclient.mjs.map +1 -0
  87. package/{fesm2015/breeze-client-adapter-ajax-jquery.js → fesm2022/breeze-client-adapter-ajax-jquery.mjs} +6 -2
  88. package/fesm2022/breeze-client-adapter-ajax-jquery.mjs.map +1 -0
  89. package/{fesm2015/breeze-client-adapter-ajax-post.js → fesm2022/breeze-client-adapter-ajax-post.mjs} +1 -1
  90. package/fesm2022/breeze-client-adapter-ajax-post.mjs.map +1 -0
  91. package/{fesm2015/breeze-client-adapter-data-service-odata.js → fesm2022/breeze-client-adapter-data-service-odata.mjs} +68 -69
  92. package/fesm2022/breeze-client-adapter-data-service-odata.mjs.map +1 -0
  93. package/{fesm2015/breeze-client-adapter-data-service-webapi.js → fesm2022/breeze-client-adapter-data-service-webapi.mjs} +30 -30
  94. package/fesm2022/breeze-client-adapter-data-service-webapi.mjs.map +1 -0
  95. package/{fesm2015/breeze-client-adapter-model-library-backing-store.js → fesm2022/breeze-client-adapter-model-library-backing-store.mjs} +14 -13
  96. package/fesm2022/breeze-client-adapter-model-library-backing-store.mjs.map +1 -0
  97. package/{fesm2015/breeze-client-adapter-model-library-ko.js → fesm2022/breeze-client-adapter-model-library-ko.mjs} +14 -13
  98. package/fesm2022/breeze-client-adapter-model-library-ko.mjs.map +1 -0
  99. package/{fesm2015/breeze-client-adapter-uri-builder-json.js → fesm2022/breeze-client-adapter-uri-builder-json.mjs} +9 -8
  100. package/fesm2022/breeze-client-adapter-uri-builder-json.mjs.map +1 -0
  101. package/{fesm2015/breeze-client-adapter-uri-builder-odata.js → fesm2022/breeze-client-adapter-uri-builder-odata.mjs} +86 -86
  102. package/fesm2022/breeze-client-adapter-uri-builder-odata.mjs.map +1 -0
  103. package/{fesm2015/breeze-client-mixin-get-entity-graph.js → fesm2022/breeze-client-mixin-get-entity-graph.mjs} +1 -1
  104. package/fesm2022/breeze-client-mixin-get-entity-graph.mjs.map +1 -0
  105. package/{fesm2015/breeze-client-mixin-save-queuing.js → fesm2022/breeze-client-mixin-save-queuing.mjs} +23 -2
  106. package/fesm2022/breeze-client-mixin-save-queuing.mjs.map +1 -0
  107. package/{fesm2015/breeze-client.js → fesm2022/breeze-client.mjs} +1933 -1538
  108. package/fesm2022/breeze-client.mjs.map +1 -0
  109. package/mixin-get-entity-graph/{breeze-client-mixin-get-entity-graph.d.ts → index.d.ts} +1 -0
  110. package/mixin-save-queuing/{breeze-client-mixin-save-queuing.d.ts → index.d.ts} +1 -0
  111. package/package.json +94 -12
  112. package/src/config.d.ts +1 -1
  113. package/src/core.d.ts +1 -1
  114. package/src/entity-aspect.d.ts +1 -1
  115. package/src/entity-metadata.d.ts +8 -6
  116. package/src/entity-query.d.ts +1 -1
  117. package/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.metadata.json +0 -1
  118. package/adapter-ajax-angularjs/package.json +0 -13
  119. package/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.metadata.json +0 -1
  120. package/adapter-ajax-fetch/package.json +0 -13
  121. package/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.metadata.json +0 -1
  122. package/adapter-ajax-httpclient/package.json +0 -13
  123. package/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.metadata.json +0 -1
  124. package/adapter-ajax-jquery/package.json +0 -13
  125. package/adapter-ajax-post/breeze-client-adapter-ajax-post.metadata.json +0 -1
  126. package/adapter-ajax-post/package.json +0 -13
  127. package/adapter-data-service-odata/breeze-client-adapter-data-service-odata.metadata.json +0 -1
  128. package/adapter-data-service-odata/package.json +0 -13
  129. package/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.metadata.json +0 -1
  130. package/adapter-data-service-webapi/package.json +0 -13
  131. package/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.metadata.json +0 -1
  132. package/adapter-model-library-backing-store/package.json +0 -13
  133. package/adapter-model-library-ko/breeze-client-adapter-model-library-ko.metadata.json +0 -1
  134. package/adapter-model-library-ko/package.json +0 -13
  135. package/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.metadata.json +0 -1
  136. package/adapter-uri-builder-json/package.json +0 -13
  137. package/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.metadata.json +0 -1
  138. package/adapter-uri-builder-odata/package.json +0 -13
  139. package/breeze-client.d.ts +0 -8
  140. package/breeze-client.metadata.json +0 -1
  141. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js +0 -190
  142. package/bundles/breeze-client-adapter-ajax-angularjs.umd.js.map +0 -1
  143. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js +0 -2
  144. package/bundles/breeze-client-adapter-ajax-angularjs.umd.min.js.map +0 -1
  145. package/bundles/breeze-client-adapter-ajax-fetch.umd.js +0 -190
  146. package/bundles/breeze-client-adapter-ajax-fetch.umd.js.map +0 -1
  147. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js +0 -2
  148. package/bundles/breeze-client-adapter-ajax-fetch.umd.min.js.map +0 -1
  149. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js +0 -195
  150. package/bundles/breeze-client-adapter-ajax-httpclient.umd.js.map +0 -1
  151. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js +0 -2
  152. package/bundles/breeze-client-adapter-ajax-httpclient.umd.min.js.map +0 -1
  153. package/bundles/breeze-client-adapter-ajax-jquery.umd.js +0 -115
  154. package/bundles/breeze-client-adapter-ajax-jquery.umd.js.map +0 -1
  155. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js +0 -2
  156. package/bundles/breeze-client-adapter-ajax-jquery.umd.min.js.map +0 -1
  157. package/bundles/breeze-client-adapter-ajax-post.umd.js +0 -92
  158. package/bundles/breeze-client-adapter-ajax-post.umd.js.map +0 -1
  159. package/bundles/breeze-client-adapter-ajax-post.umd.min.js +0 -2
  160. package/bundles/breeze-client-adapter-ajax-post.umd.min.js.map +0 -1
  161. package/bundles/breeze-client-adapter-data-service-odata.umd.js +0 -747
  162. package/bundles/breeze-client-adapter-data-service-odata.umd.js.map +0 -1
  163. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js +0 -16
  164. package/bundles/breeze-client-adapter-data-service-odata.umd.min.js.map +0 -1
  165. package/bundles/breeze-client-adapter-data-service-webapi.umd.js +0 -333
  166. package/bundles/breeze-client-adapter-data-service-webapi.umd.js.map +0 -1
  167. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js +0 -16
  168. package/bundles/breeze-client-adapter-data-service-webapi.umd.min.js.map +0 -1
  169. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js +0 -280
  170. package/bundles/breeze-client-adapter-model-library-backing-store.umd.js.map +0 -1
  171. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js +0 -2
  172. package/bundles/breeze-client-adapter-model-library-backing-store.umd.min.js.map +0 -1
  173. package/bundles/breeze-client-adapter-model-library-ko.umd.js +0 -252
  174. package/bundles/breeze-client-adapter-model-library-ko.umd.js.map +0 -1
  175. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js +0 -2
  176. package/bundles/breeze-client-adapter-model-library-ko.umd.min.js.map +0 -1
  177. package/bundles/breeze-client-adapter-uri-builder-json.umd.js +0 -96
  178. package/bundles/breeze-client-adapter-uri-builder-json.umd.js.map +0 -1
  179. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js +0 -2
  180. package/bundles/breeze-client-adapter-uri-builder-json.umd.min.js.map +0 -1
  181. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js +0 -262
  182. package/bundles/breeze-client-adapter-uri-builder-odata.umd.js.map +0 -1
  183. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js +0 -2
  184. package/bundles/breeze-client-adapter-uri-builder-odata.umd.min.js.map +0 -1
  185. package/bundles/breeze-client-mixin-get-entity-graph.umd.js +0 -258
  186. package/bundles/breeze-client-mixin-get-entity-graph.umd.js.map +0 -1
  187. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js +0 -2
  188. package/bundles/breeze-client-mixin-get-entity-graph.umd.min.js.map +0 -1
  189. package/bundles/breeze-client-mixin-save-queuing.umd.js +0 -579
  190. package/bundles/breeze-client-mixin-save-queuing.umd.js.map +0 -1
  191. package/bundles/breeze-client-mixin-save-queuing.umd.min.js +0 -16
  192. package/bundles/breeze-client-mixin-save-queuing.umd.min.js.map +0 -1
  193. package/bundles/breeze-client.umd.js +0 -14234
  194. package/bundles/breeze-client.umd.js.map +0 -1
  195. package/bundles/breeze-client.umd.min.js +0 -16
  196. package/bundles/breeze-client.umd.min.js.map +0 -1
  197. package/esm2015/adapter-ajax-angularjs/adapter-ajax-angularjs.js +0 -130
  198. package/esm2015/adapter-ajax-angularjs/adapter-core.js +0 -49
  199. package/esm2015/adapter-ajax-angularjs/breeze-client-adapter-ajax-angularjs.js +0 -5
  200. package/esm2015/adapter-ajax-fetch/adapter-ajax-fetch.js +0 -130
  201. package/esm2015/adapter-ajax-fetch/adapter-core.js +0 -49
  202. package/esm2015/adapter-ajax-fetch/breeze-client-adapter-ajax-fetch.js +0 -5
  203. package/esm2015/adapter-ajax-httpclient/adapter-ajax-httpclient.js +0 -137
  204. package/esm2015/adapter-ajax-httpclient/adapter-core.js +0 -49
  205. package/esm2015/adapter-ajax-httpclient/breeze-client-adapter-ajax-httpclient.js +0 -5
  206. package/esm2015/adapter-ajax-jquery/adapter-ajax-jquery.js +0 -103
  207. package/esm2015/adapter-ajax-jquery/breeze-client-adapter-ajax-jquery.js +0 -5
  208. package/esm2015/adapter-ajax-post/adapter-ajax-post.js +0 -77
  209. package/esm2015/adapter-ajax-post/breeze-client-adapter-ajax-post.js +0 -5
  210. package/esm2015/adapter-data-service-odata/adapter-core.js +0 -49
  211. package/esm2015/adapter-data-service-odata/adapter-data-service-odata.js +0 -463
  212. package/esm2015/adapter-data-service-odata/breeze-client-adapter-data-service-odata.js +0 -5
  213. package/esm2015/adapter-data-service-webapi/adapter-data-service-webapi.js +0 -100
  214. package/esm2015/adapter-data-service-webapi/breeze-client-adapter-data-service-webapi.js +0 -5
  215. package/esm2015/adapter-model-library-backing-store/adapter-model-library-backing-store.js +0 -268
  216. package/esm2015/adapter-model-library-backing-store/breeze-client-adapter-model-library-backing-store.js +0 -5
  217. package/esm2015/adapter-model-library-ko/adapter-model-library-ko.js +0 -240
  218. package/esm2015/adapter-model-library-ko/breeze-client-adapter-model-library-ko.js +0 -5
  219. package/esm2015/adapter-uri-builder-json/adapter-core.js +0 -49
  220. package/esm2015/adapter-uri-builder-json/adapter-uri-builder-json.js +0 -36
  221. package/esm2015/adapter-uri-builder-json/breeze-client-adapter-uri-builder-json.js +0 -5
  222. package/esm2015/adapter-uri-builder-odata/adapter-core.js +0 -49
  223. package/esm2015/adapter-uri-builder-odata/adapter-uri-builder-odata.js +0 -192
  224. package/esm2015/adapter-uri-builder-odata/breeze-client-adapter-uri-builder-odata.js +0 -5
  225. package/esm2015/breeze-client.js +0 -9
  226. package/esm2015/index.js +0 -2
  227. package/esm2015/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.js +0 -5
  228. package/esm2015/mixin-get-entity-graph/mixin-get-entity-graph.js +0 -269
  229. package/esm2015/mixin-save-queuing/breeze-client-mixin-save-queuing.js +0 -5
  230. package/esm2015/mixin-save-queuing/mixin-save-queuing.js +0 -400
  231. package/esm2015/src/abstract-data-service-adapter.js +0 -327
  232. package/esm2015/src/array.js +0 -4
  233. package/esm2015/src/assert-param.js +0 -312
  234. package/esm2015/src/breeze.js +0 -85
  235. package/esm2015/src/complex-array.js +0 -119
  236. package/esm2015/src/config.js +0 -223
  237. package/esm2015/src/core.js +0 -714
  238. package/esm2015/src/csdl-metadata-parser.js +0 -385
  239. package/esm2015/src/data-service.js +0 -203
  240. package/esm2015/src/data-type.js +0 -506
  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 -513
  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/naming-convention.js +0 -90
  324. package/esm5/src/observable-array.js +0 -201
  325. package/esm5/src/predicate.js +0 -1307
  326. package/esm5/src/primitive-array.js +0 -87
  327. package/esm5/src/query-options.js +0 -167
  328. package/esm5/src/relation-array.js +0 -175
  329. package/esm5/src/save-options.js +0 -43
  330. package/esm5/src/unattached-children-map.js +0 -60
  331. package/esm5/src/validate.js +0 -996
  332. package/esm5/src/validation-options.js +0 -66
  333. package/fesm2015/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  334. package/fesm2015/breeze-client-adapter-ajax-fetch.js.map +0 -1
  335. package/fesm2015/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  336. package/fesm2015/breeze-client-adapter-ajax-jquery.js.map +0 -1
  337. package/fesm2015/breeze-client-adapter-ajax-post.js.map +0 -1
  338. package/fesm2015/breeze-client-adapter-data-service-odata.js.map +0 -1
  339. package/fesm2015/breeze-client-adapter-data-service-webapi.js.map +0 -1
  340. package/fesm2015/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  341. package/fesm2015/breeze-client-adapter-model-library-ko.js.map +0 -1
  342. package/fesm2015/breeze-client-adapter-uri-builder-json.js.map +0 -1
  343. package/fesm2015/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  344. package/fesm2015/breeze-client-mixin-get-entity-graph.js.map +0 -1
  345. package/fesm2015/breeze-client-mixin-save-queuing.js.map +0 -1
  346. package/fesm2015/breeze-client.js.map +0 -1
  347. package/fesm5/breeze-client-adapter-ajax-angularjs.js +0 -186
  348. package/fesm5/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  349. package/fesm5/breeze-client-adapter-ajax-fetch.js +0 -186
  350. package/fesm5/breeze-client-adapter-ajax-fetch.js.map +0 -1
  351. package/fesm5/breeze-client-adapter-ajax-httpclient.js +0 -193
  352. package/fesm5/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  353. package/fesm5/breeze-client-adapter-ajax-jquery.js +0 -111
  354. package/fesm5/breeze-client-adapter-ajax-jquery.js.map +0 -1
  355. package/fesm5/breeze-client-adapter-ajax-post.js +0 -86
  356. package/fesm5/breeze-client-adapter-ajax-post.js.map +0 -1
  357. package/fesm5/breeze-client-adapter-data-service-odata.js +0 -523
  358. package/fesm5/breeze-client-adapter-data-service-odata.js.map +0 -1
  359. package/fesm5/breeze-client-adapter-data-service-webapi.js +0 -111
  360. package/fesm5/breeze-client-adapter-data-service-webapi.js.map +0 -1
  361. package/fesm5/breeze-client-adapter-model-library-backing-store.js +0 -276
  362. package/fesm5/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  363. package/fesm5/breeze-client-adapter-model-library-ko.js +0 -248
  364. package/fesm5/breeze-client-adapter-model-library-ko.js.map +0 -1
  365. package/fesm5/breeze-client-adapter-uri-builder-json.js +0 -92
  366. package/fesm5/breeze-client-adapter-uri-builder-json.js.map +0 -1
  367. package/fesm5/breeze-client-adapter-uri-builder-odata.js +0 -250
  368. package/fesm5/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  369. package/fesm5/breeze-client-mixin-get-entity-graph.js +0 -254
  370. package/fesm5/breeze-client-mixin-get-entity-graph.js.map +0 -1
  371. package/fesm5/breeze-client-mixin-save-queuing.js +0 -356
  372. package/fesm5/breeze-client-mixin-save-queuing.js.map +0 -1
  373. package/fesm5/breeze-client.js +0 -13956
  374. package/fesm5/breeze-client.js.map +0 -1
  375. package/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.metadata.json +0 -1
  376. package/mixin-get-entity-graph/package.json +0 -13
  377. package/mixin-save-queuing/breeze-client-mixin-save-queuing.metadata.json +0 -1
  378. package/mixin-save-queuing/package.json +0 -13
@@ -1,105 +0,0 @@
1
- import { __extends } from "tslib";
2
- import * as breeze from 'breeze-client';
3
- // import { JsonResultsAdapter, KeyMapping } from './breeze';
4
- /** @hidden */
5
- var DataServiceWebApiAdapter = /** @class */ (function (_super) {
6
- __extends(DataServiceWebApiAdapter, _super);
7
- function DataServiceWebApiAdapter() {
8
- var _this = _super.call(this) || this;
9
- _this.jsonResultsAdapter = new breeze.JsonResultsAdapter({
10
- name: "webApi_default",
11
- visitNode: function (node, mappingContext, nodeContext) {
12
- if (node == null)
13
- return {};
14
- var entityTypeName = breeze.MetadataStore.normalizeTypeName(node.$type);
15
- var entityType = entityTypeName && mappingContext.entityManager.metadataStore.getEntityType(entityTypeName, true);
16
- var propertyName = nodeContext.propertyName;
17
- var ignore = propertyName && propertyName.substr(0, 1) === "$";
18
- return {
19
- entityType: entityType,
20
- nodeId: node.$id,
21
- nodeRefId: node.$ref,
22
- ignore: ignore
23
- };
24
- }
25
- });
26
- _this.name = "webApi";
27
- return _this;
28
- }
29
- DataServiceWebApiAdapter.register = function (config) {
30
- config = config || breeze.config;
31
- config.registerAdapter("dataService", DataServiceWebApiAdapter);
32
- return config.initializeAdapterInstance("dataService", "webApi", true);
33
- };
34
- /** @hidden @internal */
35
- DataServiceWebApiAdapter.prototype._prepareSaveBundle = function (saveContext, saveBundle) {
36
- var changeRequestInterceptor = this._createChangeRequestInterceptor(saveContext, saveBundle);
37
- var em = saveContext.entityManager;
38
- var metadataStore = em.metadataStore;
39
- var helper = em.helper;
40
- var serSaveBundle = {};
41
- serSaveBundle.entities = saveBundle.entities.map(function (e, ix) {
42
- var rawEntity = helper.unwrapInstance(e, transformValue);
43
- var autoGeneratedKey;
44
- if (e.entityType.autoGeneratedKeyType !== breeze.AutoGeneratedKeyType.None) {
45
- autoGeneratedKey = {
46
- propertyName: e.entityType.keyProperties[0].nameOnServer,
47
- autoGeneratedKeyType: e.entityType.autoGeneratedKeyType.name
48
- };
49
- }
50
- var originalValuesOnServer = helper.unwrapOriginalValues(e, metadataStore);
51
- rawEntity.entityAspect = {
52
- entityTypeName: e.entityType.name,
53
- defaultResourceName: e.entityType.defaultResourceName,
54
- entityState: e.entityAspect.entityState.name,
55
- originalValuesMap: originalValuesOnServer,
56
- autoGeneratedKey: autoGeneratedKey
57
- };
58
- rawEntity = changeRequestInterceptor.getRequest(rawEntity, e, ix);
59
- return rawEntity;
60
- });
61
- serSaveBundle.saveOptions = { tag: saveBundle.saveOptions.tag };
62
- changeRequestInterceptor.done(serSaveBundle.entities);
63
- return serSaveBundle;
64
- };
65
- /** @hidden @internal */
66
- DataServiceWebApiAdapter.prototype._prepareSaveResult = function (saveContext, data) {
67
- // use the jsonResultAdapter to extractResults and extractKeyMappings
68
- var jra = saveContext.dataService.jsonResultsAdapter || this.jsonResultsAdapter;
69
- var entities = jra.extractSaveResults(data) || [];
70
- var keyMappings = jra.extractKeyMappings(data) || [];
71
- var deletedKeys = jra.extractDeletedKeys ? (jra.extractDeletedKeys(data)) || [] : [];
72
- if (keyMappings.length) {
73
- // HACK: need to change the 'case' of properties in the saveResult
74
- // but KeyMapping properties internally are still ucase. ugh...
75
- keyMappings = keyMappings.map(function (km) {
76
- if (km.entityTypeName)
77
- return km; // it's already lower case
78
- var kmHack = km;
79
- var entityTypeName = breeze.MetadataStore.normalizeTypeName(kmHack.EntityTypeName);
80
- return { entityTypeName: entityTypeName, tempValue: kmHack.TempValue, realValue: kmHack.RealValue };
81
- });
82
- }
83
- if (deletedKeys.length) {
84
- deletedKeys = deletedKeys.map(function (dk) {
85
- if (dk.entityTypeName)
86
- return dk; // it's already lower case
87
- var entityTypeName = breeze.MetadataStore.normalizeTypeName(dk.EntityTypeName);
88
- // NOTE the dk.KeyValue => keyValues transition - needed because we are deserializing an .NET EntityKey
89
- return { entityTypeName: entityTypeName, keyValues: dk.KeyValue };
90
- });
91
- }
92
- return { entities: entities, keyMappings: keyMappings, deletedKeys: deletedKeys };
93
- };
94
- return DataServiceWebApiAdapter;
95
- }(breeze.AbstractDataServiceAdapter));
96
- export { DataServiceWebApiAdapter };
97
- /** Transform data properties while unwrapping entities before save */
98
- function transformValue(prop, val) {
99
- if (prop.dataType === breeze.DataType.DateOnly) {
100
- val = breeze.DataType.toDateOnlyString(val);
101
- }
102
- return val;
103
- }
104
- breeze.config.registerAdapter("dataService", DataServiceWebApiAdapter);
105
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1kYXRhLXNlcnZpY2Utd2ViYXBpLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYnJlZXplLWNsaWVudC9hZGFwdGVyLWRhdGEtc2VydmljZS13ZWJhcGkvIiwic291cmNlcyI6WyJhZGFwdGVyLWRhdGEtc2VydmljZS13ZWJhcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sS0FBSyxNQUFNLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLDZEQUE2RDtBQUU3RCxjQUFjO0FBQ2Q7SUFBOEMsNENBQWlDO0lBRTdFO1FBQUEsWUFDRSxpQkFBTyxTQUVSO1FBMkVELHdCQUFrQixHQUE4QixJQUFJLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQztZQUU1RSxJQUFJLEVBQUUsZ0JBQWdCO1lBRXRCLFNBQVMsRUFBRSxVQUFVLElBQVMsRUFBRSxjQUFxQyxFQUFFLFdBQStCO2dCQUNwRyxJQUFJLElBQUksSUFBSSxJQUFJO29CQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUM1QixJQUFJLGNBQWMsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztnQkFDeEUsSUFBSSxVQUFVLEdBQUcsY0FBYyxJQUFJLGNBQWMsQ0FBQyxhQUFhLENBQUMsYUFBYSxDQUFDLGFBQWEsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7Z0JBQ2xILElBQUksWUFBWSxHQUFHLFdBQVcsQ0FBQyxZQUFZLENBQUM7Z0JBQzVDLElBQUksTUFBTSxHQUFHLFlBQVksSUFBSSxZQUFZLENBQUMsTUFBTSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxHQUFHLENBQUM7Z0JBRS9ELE9BQU87b0JBQ0wsVUFBVSxFQUFFLFVBQVU7b0JBQ3RCLE1BQU0sRUFBRSxJQUFJLENBQUMsR0FBRztvQkFDaEIsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNwQixNQUFNLEVBQUUsTUFBTTtpQkFDUixDQUFDO1lBQ1gsQ0FBQztT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V0FBVyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsQ0FBQztJQUVwRixDQUFDO0lBdUJILCtCQUFDO0FBQUQsQ0FBQyxBQXJHRCxDQUE4QyxNQUFNLENBQUMsMEJBQTBCLEdBcUc5RTs7QUFFRCxzRUFBc0U7QUFDdEUsU0FBUyxjQUFjLENBQUMsSUFBeUIsRUFBRSxHQUFRO0lBQ3pELElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxNQUFNLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRTtRQUM5QyxHQUFHLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxHQUFHLENBQUMsQ0FBQztLQUM3QztJQUNELE9BQU8sR0FBRyxDQUFDO0FBQ2IsQ0FBQztBQUdELE1BQU0sQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLGFBQWEsRUFBRSx3QkFBd0IsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgYnJlZXplIGZyb20gJ2JyZWV6ZS1jbGllbnQnO1xyXG4vLyBpbXBvcnQgeyBKc29uUmVzdWx0c0FkYXB0ZXIsIEtleU1hcHBpbmcgfSBmcm9tICcuL2JyZWV6ZSc7XHJcblxyXG4vKiogQGhpZGRlbiAqL1xyXG5leHBvcnQgY2xhc3MgRGF0YVNlcnZpY2VXZWJBcGlBZGFwdGVyIGV4dGVuZHMgYnJlZXplLkFic3RyYWN0RGF0YVNlcnZpY2VBZGFwdGVyIHtcclxuXHJcbiAgY29uc3RydWN0b3IoKSB7XHJcbiAgICBzdXBlcigpO1xyXG4gICAgdGhpcy5uYW1lID0gXCJ3ZWJBcGlcIjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyByZWdpc3Rlcihjb25maWc/OiBicmVlemUuQnJlZXplQ29uZmlnKSB7XHJcbiAgICBjb25maWcgPSBjb25maWcgfHwgYnJlZXplLmNvbmZpZztcclxuICAgIGNvbmZpZy5yZWdpc3RlckFkYXB0ZXIoXCJkYXRhU2VydmljZVwiLCBEYXRhU2VydmljZVdlYkFwaUFkYXB0ZXIpO1xyXG4gICAgcmV0dXJuIGNvbmZpZy5pbml0aWFsaXplQWRhcHRlckluc3RhbmNlKFwiZGF0YVNlcnZpY2VcIiwgXCJ3ZWJBcGlcIiwgdHJ1ZSkgYXMgRGF0YVNlcnZpY2VXZWJBcGlBZGFwdGVyO1xyXG4gIH1cclxuXHJcbiAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXHJcbiAgX3ByZXBhcmVTYXZlQnVuZGxlKHNhdmVDb250ZXh0OiBicmVlemUuU2F2ZUNvbnRleHQsIHNhdmVCdW5kbGU6IGJyZWV6ZS5TYXZlQnVuZGxlKSB7XHJcbiAgICBsZXQgY2hhbmdlUmVxdWVzdEludGVyY2VwdG9yID0gdGhpcy5fY3JlYXRlQ2hhbmdlUmVxdWVzdEludGVyY2VwdG9yKHNhdmVDb250ZXh0LCBzYXZlQnVuZGxlKTtcclxuICAgIGxldCBlbSA9IHNhdmVDb250ZXh0LmVudGl0eU1hbmFnZXI7XHJcbiAgICBsZXQgbWV0YWRhdGFTdG9yZSA9IGVtLm1ldGFkYXRhU3RvcmU7XHJcbiAgICBsZXQgaGVscGVyID0gZW0uaGVscGVyO1xyXG4gICAgbGV0IHNlclNhdmVCdW5kbGU6IGFueSA9IHt9O1xyXG4gICAgc2VyU2F2ZUJ1bmRsZS5lbnRpdGllcyA9IHNhdmVCdW5kbGUuZW50aXRpZXMubWFwKGZ1bmN0aW9uIChlLCBpeCkge1xyXG4gICAgICBsZXQgcmF3RW50aXR5ID0gaGVscGVyLnVud3JhcEluc3RhbmNlKGUsIHRyYW5zZm9ybVZhbHVlKTtcclxuXHJcbiAgICAgIGxldCBhdXRvR2VuZXJhdGVkS2V5OiBPYmplY3QgfCB1bmRlZmluZWQ7XHJcbiAgICAgIGlmIChlLmVudGl0eVR5cGUuYXV0b0dlbmVyYXRlZEtleVR5cGUgIT09IGJyZWV6ZS5BdXRvR2VuZXJhdGVkS2V5VHlwZS5Ob25lKSB7XHJcbiAgICAgICAgYXV0b0dlbmVyYXRlZEtleSA9IHtcclxuICAgICAgICAgIHByb3BlcnR5TmFtZTogZS5lbnRpdHlUeXBlLmtleVByb3BlcnRpZXNbMF0ubmFtZU9uU2VydmVyLFxyXG4gICAgICAgICAgYXV0b0dlbmVyYXRlZEtleVR5cGU6IGUuZW50aXR5VHlwZS5hdXRvR2VuZXJhdGVkS2V5VHlwZS5uYW1lXHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG5cclxuICAgICAgbGV0IG9yaWdpbmFsVmFsdWVzT25TZXJ2ZXIgPSBoZWxwZXIudW53cmFwT3JpZ2luYWxWYWx1ZXMoZSwgbWV0YWRhdGFTdG9yZSk7XHJcbiAgICAgIHJhd0VudGl0eS5lbnRpdHlBc3BlY3QgPSB7XHJcbiAgICAgICAgZW50aXR5VHlwZU5hbWU6IGUuZW50aXR5VHlwZS5uYW1lLFxyXG4gICAgICAgIGRlZmF1bHRSZXNvdXJjZU5hbWU6IGUuZW50aXR5VHlwZS5kZWZhdWx0UmVzb3VyY2VOYW1lLFxyXG4gICAgICAgIGVudGl0eVN0YXRlOiBlLmVudGl0eUFzcGVjdC5lbnRpdHlTdGF0ZS5uYW1lLFxyXG4gICAgICAgIG9yaWdpbmFsVmFsdWVzTWFwOiBvcmlnaW5hbFZhbHVlc09uU2VydmVyLFxyXG4gICAgICAgIGF1dG9HZW5lcmF0ZWRLZXk6IGF1dG9HZW5lcmF0ZWRLZXlcclxuICAgICAgfTtcclxuICAgICAgcmF3RW50aXR5ID0gY2hhbmdlUmVxdWVzdEludGVyY2VwdG9yLmdldFJlcXVlc3QocmF3RW50aXR5LCBlLCBpeCk7XHJcbiAgICAgIHJldHVybiByYXdFbnRpdHk7XHJcbiAgICB9KTtcclxuXHJcbiAgICBzZXJTYXZlQnVuZGxlLnNhdmVPcHRpb25zID0geyB0YWc6IHNhdmVCdW5kbGUuc2F2ZU9wdGlvbnMudGFnIH07XHJcbiAgICBjaGFuZ2VSZXF1ZXN0SW50ZXJjZXB0b3IuZG9uZShzZXJTYXZlQnVuZGxlLmVudGl0aWVzKTtcclxuICAgIHJldHVybiBzZXJTYXZlQnVuZGxlO1xyXG4gIH1cclxuXHJcbiAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXHJcbiAgX3ByZXBhcmVTYXZlUmVzdWx0KHNhdmVDb250ZXh0OiBicmVlemUuU2F2ZUNvbnRleHQsIGRhdGE6IGFueSkge1xyXG4gICAgLy8gdXNlIHRoZSBqc29uUmVzdWx0QWRhcHRlciB0byBleHRyYWN0UmVzdWx0cyBhbmQgZXh0cmFjdEtleU1hcHBpbmdzXHJcbiAgICBsZXQganJhID0gc2F2ZUNvbnRleHQuZGF0YVNlcnZpY2UuanNvblJlc3VsdHNBZGFwdGVyIHx8IHRoaXMuanNvblJlc3VsdHNBZGFwdGVyO1xyXG4gICAgbGV0IGVudGl0aWVzID0ganJhLmV4dHJhY3RTYXZlUmVzdWx0cyhkYXRhKSB8fCBbXTtcclxuICAgIGxldCBrZXlNYXBwaW5nczogYnJlZXplLktleU1hcHBpbmdbXSA9IGpyYS5leHRyYWN0S2V5TWFwcGluZ3MoZGF0YSkgfHwgW107XHJcbiAgICBsZXQgZGVsZXRlZEtleXMgPSBqcmEuZXh0cmFjdERlbGV0ZWRLZXlzID8gKGpyYS5leHRyYWN0RGVsZXRlZEtleXMoZGF0YSkpIHx8IFtdIDogW107XHJcblxyXG4gICAgaWYgKGtleU1hcHBpbmdzLmxlbmd0aCkge1xyXG4gICAgICAvLyBIQUNLOiBuZWVkIHRvIGNoYW5nZSB0aGUgJ2Nhc2UnIG9mIHByb3BlcnRpZXMgaW4gdGhlIHNhdmVSZXN1bHRcclxuICAgICAgLy8gYnV0IEtleU1hcHBpbmcgcHJvcGVydGllcyBpbnRlcm5hbGx5IGFyZSBzdGlsbCB1Y2FzZS4gdWdoLi4uXHJcbiAgICAgIGtleU1hcHBpbmdzID0ga2V5TWFwcGluZ3MubWFwKGZ1bmN0aW9uIChrbSkge1xyXG4gICAgICAgIGlmIChrbS5lbnRpdHlUeXBlTmFtZSkgcmV0dXJuIGttOyAvLyBpdCdzIGFscmVhZHkgbG93ZXIgY2FzZVxyXG4gICAgICAgIGxldCBrbUhhY2sgPSBrbSBhcyBhbnk7XHJcbiAgICAgICAgbGV0IGVudGl0eVR5cGVOYW1lID0gYnJlZXplLk1ldGFkYXRhU3RvcmUubm9ybWFsaXplVHlwZU5hbWUoa21IYWNrLkVudGl0eVR5cGVOYW1lKTtcclxuICAgICAgICByZXR1cm4geyBlbnRpdHlUeXBlTmFtZTogZW50aXR5VHlwZU5hbWUsIHRlbXBWYWx1ZToga21IYWNrLlRlbXBWYWx1ZSwgcmVhbFZhbHVlOiBrbUhhY2suUmVhbFZhbHVlIH07XHJcbiAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIGlmIChkZWxldGVkS2V5cy5sZW5ndGgpIHtcclxuICAgICAgZGVsZXRlZEtleXMgPSBkZWxldGVkS2V5cy5tYXAoZnVuY3Rpb24gKGRrKSB7XHJcbiAgICAgICAgaWYgKGRrLmVudGl0eVR5cGVOYW1lKSByZXR1cm4gZGs7IC8vIGl0J3MgYWxyZWFkeSBsb3dlciBjYXNlXHJcbiAgICAgICAgbGV0IGVudGl0eVR5cGVOYW1lID0gYnJlZXplLk1ldGFkYXRhU3RvcmUubm9ybWFsaXplVHlwZU5hbWUoZGsuRW50aXR5VHlwZU5hbWUpO1xyXG4gICAgICAgIC8vIE5PVEUgdGhlIGRrLktleVZhbHVlID0+IGtleVZhbHVlcyB0cmFuc2l0aW9uIC0gbmVlZGVkIGJlY2F1c2Ugd2UgYXJlIGRlc2VyaWFsaXppbmcgYW4gLk5FVCBFbnRpdHlLZXlcclxuICAgICAgICByZXR1cm4geyBlbnRpdHlUeXBlTmFtZTogZW50aXR5VHlwZU5hbWUsIGtleVZhbHVlczogZGsuS2V5VmFsdWUgfTtcclxuICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcmV0dXJuIHsgZW50aXRpZXM6IGVudGl0aWVzLCBrZXlNYXBwaW5nczoga2V5TWFwcGluZ3MsIGRlbGV0ZWRLZXlzOiBkZWxldGVkS2V5cyB9O1xyXG5cclxuICB9XHJcblxyXG4gIGpzb25SZXN1bHRzQWRhcHRlcjogYnJlZXplLkpzb25SZXN1bHRzQWRhcHRlciA9IG5ldyBicmVlemUuSnNvblJlc3VsdHNBZGFwdGVyKHtcclxuXHJcbiAgICBuYW1lOiBcIndlYkFwaV9kZWZhdWx0XCIsXHJcblxyXG4gICAgdmlzaXROb2RlOiBmdW5jdGlvbiAobm9kZTogYW55LCBtYXBwaW5nQ29udGV4dDogYnJlZXplLk1hcHBpbmdDb250ZXh0LCBub2RlQ29udGV4dDogYnJlZXplLk5vZGVDb250ZXh0KSB7XHJcbiAgICAgIGlmIChub2RlID09IG51bGwpIHJldHVybiB7fTtcclxuICAgICAgbGV0IGVudGl0eVR5cGVOYW1lID0gYnJlZXplLk1ldGFkYXRhU3RvcmUubm9ybWFsaXplVHlwZU5hbWUobm9kZS4kdHlwZSk7XHJcbiAgICAgIGxldCBlbnRpdHlUeXBlID0gZW50aXR5VHlwZU5hbWUgJiYgbWFwcGluZ0NvbnRleHQuZW50aXR5TWFuYWdlci5tZXRhZGF0YVN0b3JlLmdldEVudGl0eVR5cGUoZW50aXR5VHlwZU5hbWUsIHRydWUpO1xyXG4gICAgICBsZXQgcHJvcGVydHlOYW1lID0gbm9kZUNvbnRleHQucHJvcGVydHlOYW1lO1xyXG4gICAgICBsZXQgaWdub3JlID0gcHJvcGVydHlOYW1lICYmIHByb3BlcnR5TmFtZS5zdWJzdHIoMCwgMSkgPT09IFwiJFwiO1xyXG5cclxuICAgICAgcmV0dXJuIHtcclxuICAgICAgICBlbnRpdHlUeXBlOiBlbnRpdHlUeXBlLFxyXG4gICAgICAgIG5vZGVJZDogbm9kZS4kaWQsXHJcbiAgICAgICAgbm9kZVJlZklkOiBub2RlLiRyZWYsXHJcbiAgICAgICAgaWdub3JlOiBpZ25vcmVcclxuICAgICAgfSBhcyBhbnk7XHJcbiAgICB9XHJcblxyXG4gIH0pO1xyXG5cclxufVxyXG5cclxuLyoqIFRyYW5zZm9ybSBkYXRhIHByb3BlcnRpZXMgd2hpbGUgdW53cmFwcGluZyBlbnRpdGllcyBiZWZvcmUgc2F2ZSAqL1xyXG5mdW5jdGlvbiB0cmFuc2Zvcm1WYWx1ZShwcm9wOiBicmVlemUuRGF0YVByb3BlcnR5LCB2YWw6IGFueSkge1xyXG4gIGlmIChwcm9wLmRhdGFUeXBlID09PSBicmVlemUuRGF0YVR5cGUuRGF0ZU9ubHkpIHtcclxuICAgIHZhbCA9IGJyZWV6ZS5EYXRhVHlwZS50b0RhdGVPbmx5U3RyaW5nKHZhbCk7XHJcbiAgfVxyXG4gIHJldHVybiB2YWw7XHJcbn1cclxuXHJcblxyXG5icmVlemUuY29uZmlnLnJlZ2lzdGVyQWRhcHRlcihcImRhdGFTZXJ2aWNlXCIsIERhdGFTZXJ2aWNlV2ViQXBpQWRhcHRlcik7XHJcbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './adapter-data-service-webapi';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlZXplLWNsaWVudC1hZGFwdGVyLWRhdGEtc2VydmljZS13ZWJhcGkuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9icmVlemUtY2xpZW50L2FkYXB0ZXItZGF0YS1zZXJ2aWNlLXdlYmFwaS8iLCJzb3VyY2VzIjpbImJyZWV6ZS1jbGllbnQtYWRhcHRlci1kYXRhLXNlcnZpY2Utd2ViYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYywrQkFBK0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9hZGFwdGVyLWRhdGEtc2VydmljZS13ZWJhcGknO1xuIl19
@@ -1,270 +0,0 @@
1
- import * as breeze from 'breeze-client';
2
- var core = breeze.core;
3
- var ModelLibraryBackingStoreAdapter = /** @class */ (function () {
4
- function ModelLibraryBackingStoreAdapter() {
5
- this.name = "backingStore";
6
- }
7
- ModelLibraryBackingStoreAdapter.register = function (config) {
8
- config = config || breeze.config;
9
- config.registerAdapter("modelLibrary", ModelLibraryBackingStoreAdapter);
10
- return config.initializeAdapterInstance("modelLibrary", "backingStore", true);
11
- };
12
- ModelLibraryBackingStoreAdapter.prototype.initialize = function () {
13
- };
14
- ModelLibraryBackingStoreAdapter.prototype.getTrackablePropertyNames = function (entity) {
15
- var names = [];
16
- for (var p in entity) {
17
- if (p === "entityAspect" || p === "entityType")
18
- continue;
19
- if (p === "_$typeName" || p === "_pendingSets" || p === "_backingStore")
20
- continue;
21
- var val = entity[p];
22
- if (!core.isFunction(val)) {
23
- names.push(p);
24
- }
25
- }
26
- return names;
27
- };
28
- // This method is called during Metadata initialization
29
- ModelLibraryBackingStoreAdapter.prototype.initializeEntityPrototype = function (proto) {
30
- proto.getProperty = function (propertyName) {
31
- return this[propertyName];
32
- };
33
- proto.setProperty = function (propertyName, value) {
34
- //if (!this._backingStore.hasOwnProperty(propertyName)) {
35
- // throw new Error("Unknown property name:" + propertyName);
36
- //}
37
- this[propertyName] = value;
38
- // allow setProperty chaining.
39
- return this;
40
- };
41
- movePropDefsToProto(proto);
42
- };
43
- // This method is called when an EntityAspect is first created - this will occur as part of the entityType.createEntity call.
44
- // which can be called either directly or via standard query materialization
45
- // entity is either an entity or a complexObject
46
- ModelLibraryBackingStoreAdapter.prototype.startTracking = function (entity, proto) {
47
- // can't touch the normal property sets within this method - access the backingStore directly instead.
48
- var bs = movePropsToBackingStore(entity);
49
- // assign default values to the entity
50
- var stype = breeze.EntityAspect.isEntity(entity) ? entity.entityType : entity.complexType;
51
- stype.getProperties().forEach(function (prop) {
52
- var propName = prop.name;
53
- var val = entity[propName];
54
- if (prop instanceof breeze.DataProperty) {
55
- if (prop.isComplexProperty) {
56
- if (prop.isScalar) {
57
- val = prop.dataType._createInstanceCore(entity, prop);
58
- }
59
- else {
60
- val = breeze.makeComplexArray([], entity, prop);
61
- }
62
- }
63
- else if (!prop.isScalar) {
64
- val = breeze.makePrimitiveArray([], entity, prop);
65
- }
66
- else if (val === undefined) {
67
- val = prop.defaultValue;
68
- }
69
- }
70
- else if (prop.isNavigationProperty) {
71
- if (val !== undefined && val !== null) {
72
- throw new Error("Cannot assign a navigation property in an entity ctor.: " + propName);
73
- }
74
- if (prop.isScalar) {
75
- // TODO: change this to nullstob later.
76
- val = null;
77
- }
78
- else {
79
- val = breeze.makeRelationArray([], entity, prop);
80
- }
81
- }
82
- else {
83
- throw new Error("unknown property: " + propName);
84
- }
85
- // can't touch the normal property sets within this method (IE9 Bug) - so we access the backingStore directly instead.
86
- // otherwise we could just do
87
- // entity[propName] = val
88
- // after all of the interception logic had been injected.
89
- if (prop.isSettable || prop.isNavigationProperty) {
90
- bs[propName] = val;
91
- }
92
- });
93
- };
94
- return ModelLibraryBackingStoreAdapter;
95
- }());
96
- export { ModelLibraryBackingStoreAdapter };
97
- breeze.config.registerAdapter("modelLibrary", ModelLibraryBackingStoreAdapter);
98
- // private methods
99
- // This method is called during Metadata initialization to correctly "wrap" properties.
100
- function movePropDefsToProto(proto) {
101
- var stype = (proto.entityType || proto.complexType);
102
- var extra = stype._extra;
103
- var alreadyWrapped = extra.alreadyWrappedProps || {};
104
- stype.getProperties().forEach(function (prop) {
105
- var propName = prop.name;
106
- // we only want to wrap props that haven't already been wrapped
107
- if (alreadyWrapped[propName])
108
- return;
109
- // If property is already defined on the prototype then wrap it in another propertyDescriptor.
110
- // otherwise create a propDescriptor for it.
111
- var descr;
112
- if (propName in proto) {
113
- descr = wrapPropDescription(proto, prop);
114
- }
115
- else {
116
- descr = makePropDescription(proto, prop);
117
- }
118
- // descr will be null for a wrapped descr that is not configurable
119
- if (descr != null) {
120
- Object.defineProperty(proto, propName, descr);
121
- }
122
- alreadyWrapped[propName] = true;
123
- });
124
- extra.alreadyWrappedProps = alreadyWrapped;
125
- }
126
- // This method is called when an instance is first created via materialization or createEntity.
127
- // this method cannot be called while a 'defineProperty' accessor is executing
128
- // because of IE bug mentioned above.
129
- function movePropsToBackingStore(instance) {
130
- var bs = getBackingStore(instance);
131
- var proto = Object.getPrototypeOf(instance);
132
- var stype = (proto.entityType || proto.complexType);
133
- stype.getProperties().forEach(function (prop) {
134
- var propName = prop.name;
135
- if (prop.isUnmapped) {
136
- // insure that any unmapped properties that were added after entityType
137
- // was first created are wrapped with a property descriptor.
138
- if (!core.getPropertyDescriptor(proto, propName)) {
139
- var descr = makePropDescription(proto, prop);
140
- Object.defineProperty(proto, propName, descr);
141
- }
142
- }
143
- if (!instance.hasOwnProperty(propName))
144
- return;
145
- // pulls off the value, removes the instance property and then rewrites it via ES5 accessor
146
- var value = instance[propName];
147
- delete instance[propName];
148
- instance[propName] = value;
149
- });
150
- return bs;
151
- }
152
- function makePropDescription(proto, property) {
153
- var propName = property.name;
154
- var pendingStores = proto._pendingBackingStores;
155
- if (!pendingStores) {
156
- pendingStores = [];
157
- proto._pendingBackingStores = pendingStores;
158
- }
159
- var descr = {
160
- get: function () {
161
- var bs = this._backingStore || getBackingStore(this);
162
- return bs[propName];
163
- },
164
- set: function (value) {
165
- // IE9 cannot touch instance._backingStore here
166
- var bs = this._backingStore || getPendingBackingStore(this);
167
- var accessorFn = getAccessorFn(bs, propName);
168
- this._$interceptor(property, value, accessorFn);
169
- },
170
- enumerable: true,
171
- configurable: true
172
- };
173
- descr.set.rawSet = function (value) {
174
- var bs = this._backingStore || getPendingBackingStore(this);
175
- var accessorFn = getAccessorFn(bs, propName);
176
- accessorFn(value);
177
- };
178
- return descr;
179
- }
180
- function getAccessorFn(bs, propName) {
181
- return function () {
182
- if (arguments.length === 0) {
183
- return bs[propName];
184
- }
185
- else {
186
- bs[propName] = arguments[0];
187
- return undefined;
188
- }
189
- };
190
- }
191
- function wrapPropDescription(proto, property) {
192
- if (!proto.hasOwnProperty(property.name)) {
193
- var nextProto = Object.getPrototypeOf(proto);
194
- return wrapPropDescription(nextProto, property);
195
- }
196
- var propDescr = Object.getOwnPropertyDescriptor(proto, property.name);
197
- if (!propDescr)
198
- return undefined;
199
- // if not configurable; we can't touch it - so leave.
200
- if (!propDescr.configurable)
201
- return undefined;
202
- // if a data descriptor - don't change it - this is basically a static property - i.e. defined on every instance of the type with the same value.
203
- if (propDescr.value)
204
- return undefined;
205
- // if a read only property descriptor - no need to change it.
206
- if (!propDescr.set)
207
- return undefined;
208
- var localAccessorFn = function (entity) {
209
- return function () {
210
- if (!propDescr)
211
- return undefined;
212
- if (arguments.length === 0) {
213
- return propDescr.get.bind(entity)();
214
- }
215
- else {
216
- var set = propDescr.set;
217
- var rawSet = set.rawSet || set;
218
- rawSet.bind(entity)(arguments[0]);
219
- return undefined;
220
- }
221
- };
222
- };
223
- var newDescr = {
224
- get: function () {
225
- if (!propDescr)
226
- return undefined;
227
- return propDescr.get.bind(this)();
228
- },
229
- set: function (value) {
230
- this._$interceptor(property, value, localAccessorFn(this));
231
- },
232
- enumerable: propDescr.enumerable,
233
- configurable: true
234
- };
235
- newDescr.set.rawSet = propDescr.set;
236
- return newDescr;
237
- }
238
- function getBackingStore(instance) {
239
- var proto = Object.getPrototypeOf(instance);
240
- processPendingStores(proto);
241
- var bs = instance._backingStore;
242
- if (!bs) {
243
- bs = {};
244
- instance._backingStore = bs;
245
- }
246
- return bs;
247
- }
248
- // workaround for IE9 bug where instance properties cannot be changed when executing a property 'set' method.
249
- function getPendingBackingStore(instance) {
250
- var proto = Object.getPrototypeOf(instance);
251
- var pendingStores = proto._pendingBackingStores;
252
- var pending = core.arrayFirst(pendingStores, function (pending) {
253
- return pending.entity === instance;
254
- });
255
- if (pending)
256
- return pending.backingStore;
257
- var bs = {};
258
- pendingStores.push({ entity: instance, backingStore: bs });
259
- return bs;
260
- }
261
- function processPendingStores(proto) {
262
- var pendingStores = proto._pendingBackingStores;
263
- if (pendingStores) {
264
- pendingStores.forEach(function (pending) {
265
- pending.entity._backingStore = pending.backingStore;
266
- });
267
- pendingStores.length = 0;
268
- }
269
- }
270
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRhcHRlci1tb2RlbC1saWJyYXJ5LWJhY2tpbmctc3RvcmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9icmVlemUtY2xpZW50L2FkYXB0ZXItbW9kZWwtbGlicmFyeS1iYWNraW5nLXN0b3JlLyIsInNvdXJjZXMiOlsiYWRhcHRlci1tb2RlbC1saWJyYXJ5LWJhY2tpbmctc3RvcmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sTUFBTSxlQUFlLENBQUM7QUFFeEMsSUFBSSxJQUFJLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQztBQUV2QjtJQUdFO1FBQ0UsSUFBSSxDQUFDLElBQUksR0FBRyxjQUFjLENBQUM7SUFDN0IsQ0FBQztJQUVNLHdDQUFRLEdBQWYsVUFBZ0IsTUFBNEI7UUFDMUMsTUFBTSxHQUFHLE1BQU0sSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDO1FBQ2pDLE1BQU0sQ0FBQyxlQUFlLENBQUMsY0FBYyxFQUFFLCtCQUErQixDQUFDLENBQUM7UUFDeEUsT0FBTyxNQUFNLENBQUMseUJBQXlCLENBQUMsY0FBYyxFQUFFLGNBQWMsRUFBRSxJQUFJLENBQW9DLENBQUM7SUFDbkgsQ0FBQztJQUVELG9EQUFVLEdBQVY7SUFDQSxDQUFDO0lBRUQsbUVBQXlCLEdBQXpCLFVBQTBCLE1BQXFCO1FBQzdDLElBQUksS0FBSyxHQUFhLEVBQUUsQ0FBQztRQUN6QixLQUFLLElBQUksQ0FBQyxJQUFJLE1BQU0sRUFBRTtZQUNwQixJQUFJLENBQUMsS0FBSyxjQUFjLElBQUksQ0FBQyxLQUFLLFlBQVk7Z0JBQUUsU0FBUztZQUN6RCxJQUFJLENBQUMsS0FBSyxZQUFZLElBQUksQ0FBQyxLQUFLLGNBQWMsSUFBSSxDQUFDLEtBQUssZUFBZTtnQkFBRSxTQUFTO1lBQ2xGLElBQUksR0FBRyxHQUFHLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsRUFB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R0FBRyxFQUFFLENBQUM7S0FDN0I7SUFDRCxPQUFPLEVBQUUsQ0FBQztBQUNaLENBQUM7QUFFRCw2R0FBNkc7QUFDN0csU0FBUyxzQkFBc0IsQ0FBQyxRQUFhO0lBQzNDLElBQUksS0FBSyxHQUFHLE1BQU0sQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLENBQUM7SUFDNUMsSUFBSSxhQUFhLEdBQUcsS0FBSyxDQUFDLHFCQUFxQixDQUFDO0lBQ2hELElBQUksT0FBTyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLFVBQVUsT0FBTztRQUM1RCxPQUFPLE9BQU8sQ0FBQyxNQUFNLEtBQUssUUFBUSxDQUFDO0lBQ3JDLENBQUMsQ0FBQyxDQUFDO0lBQ0gsSUFBSSxPQUFPO1FBQUUsT0FBUSxPQUFlLENBQUMsWUFBWSxDQUFDO0lBQ2xELElBQUksRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNaLGFBQWEsQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzNELE9BQU8sRUFBRSxDQUFDO0FBQ1osQ0FBQztBQUVELFNBQVMsb0JBQW9CLENBQUMsS0FBVTtJQUN0QyxJQUFJLGFBQWEsR0FBRyxLQUFLLENBQUMscUJBQXFCLENBQUM7SUFDaEQsSUFBSSxhQUFhLEVBQUU7UUFDakIsYUFBYSxDQUFDLE9BQU8sQ0FBQyxVQUFVLE9BQVk7WUFDMUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxhQUFhLEdBQUcsT0FBTyxDQUFDLFlBQVksQ0FBQztRQUN0RCxDQUFDLENBQUMsQ0FBQztRQUNILGFBQWEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO0tBQzFCO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIGJyZWV6ZSBmcm9tICdicmVlemUtY2xpZW50JztcclxuXHJcbmxldCBjb3JlID0gYnJlZXplLmNvcmU7XHJcblxyXG5leHBvcnQgY2xhc3MgTW9kZWxMaWJyYXJ5QmFja2luZ1N0b3JlQWRhcHRlciBpbXBsZW1lbnRzIGJyZWV6ZS5Nb2RlbExpYnJhcnlBZGFwdGVyIHtcclxuICBuYW1lOiBzdHJpbmc7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgdGhpcy5uYW1lID0gXCJiYWNraW5nU3RvcmVcIjtcclxuICB9XHJcblxyXG4gIHN0YXRpYyByZWdpc3Rlcihjb25maWc/OiBicmVlemUuQnJlZXplQ29uZmlnKSB7XHJcbiAgICBjb25maWcgPSBjb25maWcgfHwgYnJlZXplLmNvbmZpZztcclxuICAgIGNvbmZpZy5yZWdpc3RlckFkYXB0ZXIoXCJtb2RlbExpYnJhcnlcIiwgTW9kZWxMaWJyYXJ5QmFja2luZ1N0b3JlQWRhcHRlcik7XHJcbiAgICByZXR1cm4gY29uZmlnLmluaXRpYWxpemVBZGFwdGVySW5zdGFuY2UoXCJtb2RlbExpYnJhcnlcIiwgXCJiYWNraW5nU3RvcmVcIiwgdHJ1ZSkgYXMgTW9kZWxMaWJyYXJ5QmFja2luZ1N0b3JlQWRhcHRlcjtcclxuICB9XHJcblxyXG4gIGluaXRpYWxpemUoKSB7XHJcbiAgfVxyXG5cclxuICBnZXRUcmFja2FibGVQcm9wZXJ0eU5hbWVzKGVudGl0eTogYnJlZXplLkVudGl0eSkge1xyXG4gICAgbGV0IG5hbWVzOiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgZm9yIChsZXQgcCBpbiBlbnRpdHkpIHtcclxuICAgICAgaWYgKHAgPT09IFwiZW50aXR5QXNwZWN0XCIgfHwgcCA9PT0gXCJlbnRpdHlUeXBlXCIpIGNvbnRpbnVlO1xyXG4gICAgICBpZiAocCA9PT0gXCJfJHR5cGVOYW1lXCIgfHwgcCA9PT0gXCJfcGVuZGluZ1NldHNcIiB8fCBwID09PSBcIl9iYWNraW5nU3RvcmVcIikgY29udGludWU7XHJcbiAgICAgIGxldCB2YWwgPSBlbnRpdHlbcF07XHJcbiAgICAgIGlmICghY29yZS5pc0Z1bmN0aW9uKHZhbCkpIHtcclxuICAgICAgICBuYW1lcy5wdXNoKHApO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gbmFtZXM7XHJcbiAgfVxyXG5cclxuICAvLyBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgZHVyaW5nIE1ldGFkYXRhIGluaXRpYWxpemF0aW9uXHJcbiAgaW5pdGlhbGl6ZUVudGl0eVByb3RvdHlwZShwcm90bzogYW55KSB7XHJcblxyXG4gICAgcHJvdG8uZ2V0UHJvcGVydHkgPSBmdW5jdGlvbiAocHJvcGVydHlOYW1lOiBzdHJpbmcpIHtcclxuICAgICAgcmV0dXJuIHRoaXNbcHJvcGVydHlOYW1lXTtcclxuICAgIH07XHJcblxyXG4gICAgcHJvdG8uc2V0UHJvcGVydHkgPSBmdW5jdGlvbiAocHJvcGVydHlOYW1lOiBzdHJpbmcsIHZhbHVlOiBhbnkpIHtcclxuICAgICAgLy9pZiAoIXRoaXMuX2JhY2tpbmdTdG9yZS5oYXNPd25Qcm9wZXJ0eShwcm9wZXJ0eU5hbWUpKSB7XHJcbiAgICAgIC8vICAgIHRocm93IG5ldyBFcnJvcihcIlVua25vd24gcHJvcGVydHkgbmFtZTpcIiArIHByb3BlcnR5TmFtZSk7XHJcbiAgICAgIC8vfVxyXG4gICAgICB0aGlzW3Byb3BlcnR5TmFtZV0gPSB2YWx1ZTtcclxuICAgICAgLy8gYWxsb3cgc2V0UHJvcGVydHkgY2hhaW5pbmcuXHJcbiAgICAgIHJldHVybiB0aGlzO1xyXG4gICAgfTtcclxuXHJcbiAgICBtb3ZlUHJvcERlZnNUb1Byb3RvKHByb3RvKTtcclxuICB9XHJcblxyXG4gIC8vIFRoaXMgbWV0aG9kIGlzIGNhbGxlZCB3aGVuIGFuIEVudGl0eUFzcGVjdCBpcyBmaXJzdCBjcmVhdGVkIC0gdGhpcyB3aWxsIG9jY3VyIGFzIHBhcnQgb2YgdGhlIGVudGl0eVR5cGUuY3JlYXRlRW50aXR5IGNhbGwuXHJcbiAgLy8gd2hpY2ggY2FuIGJlIGNhbGxlZCBlaXRoZXIgZGlyZWN0bHkgb3IgdmlhIHN0YW5kYXJkIHF1ZXJ5IG1hdGVyaWFsaXphdGlvblxyXG5cclxuICAvLyBlbnRpdHkgaXMgZWl0aGVyIGFuIGVudGl0eSBvciBhIGNvbXBsZXhPYmplY3RcclxuICBzdGFydFRyYWNraW5nKGVudGl0eTogYnJlZXplLlN0cnVjdHVyYWxPYmplY3QsIHByb3RvOiBhbnkpIHtcclxuICAgIC8vIGNhbid0IHRvdWNoIHRoZSBub3JtYWwgcHJvcGVydHkgc2V0cyB3aXRoaW4gdGhpcyBtZXRob2QgLSBhY2Nlc3MgdGhlIGJhY2tpbmdTdG9yZSBkaXJlY3RseSBpbnN0ZWFkLlxyXG4gICAgbGV0IGJzID0gbW92ZVByb3BzVG9CYWNraW5nU3RvcmUoZW50aXR5KTtcclxuXHJcbiAgICAvLyBhc3NpZ24gZGVmYXVsdCB2YWx1ZXMgdG8gdGhlIGVudGl0eVxyXG4gICAgbGV0IHN0eXBlID0gYnJlZXplLkVudGl0eUFzcGVjdC5pc0VudGl0eShlbnRpdHkpID8gZW50aXR5LmVudGl0eVR5cGUgOiBlbnRpdHkuY29tcGxleFR5cGU7XHJcbiAgICBzdHlwZS5nZXRQcm9wZXJ0aWVzKCkuZm9yRWFjaChmdW5jdGlvbiAocHJvcCkge1xyXG5cclxuICAgICAgbGV0IHByb3BOYW1lID0gcHJvcC5uYW1lO1xyXG4gICAgICBsZXQgdmFsID0gZW50aXR5W3Byb3BOYW1lXTtcclxuXHJcbiAgICAgIGlmIChwcm9wIGluc3RhbmNlb2YgYnJlZXplLkRhdGFQcm9wZXJ0eSkge1xyXG4gICAgICAgIGlmIChwcm9wLmlzQ29tcGxleFByb3BlcnR5KSB7XHJcbiAgICAgICAgICBpZiAocHJvcC5pc1NjYWxhcikge1xyXG4gICAgICAgICAgICB2YWwgPSAocHJvcC5kYXRhVHlwZSBhcyBicmVlemUuQ29tcGxleFR5cGUpLl9jcmVhdGVJbnN0YW5jZUNvcmUoZW50aXR5LCBwcm9wKTtcclxuICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHZhbCA9IGJyZWV6ZS5tYWtlQ29tcGxleEFycmF5KFtdLCBlbnRpdHksIHByb3ApO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSBpZiAoIXByb3AuaXNTY2FsYXIpIHtcclxuICAgICAgICAgIHZhbCA9IGJyZWV6ZS5tYWtlUHJpbWl0aXZlQXJyYXkoW10sIGVudGl0eSwgcHJvcCk7XHJcbiAgICAgICAgfSBlbHNlIGlmICh2YWwgPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgdmFsID0gcHJvcC5kZWZhdWx0VmFsdWU7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgfSBlbHNlIGlmIChwcm9wLmlzTmF2aWdhdGlvblByb3BlcnR5KSB7XHJcbiAgICAgICAgaWYgKHZhbCAhPT0gdW5kZWZpbmVkICYmIHZhbCAhPT0gbnVsbCkge1xyXG4gICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiQ2Fubm90IGFzc2lnbiBhIG5hdmlnYXRpb24gcHJvcGVydHkgaW4gYW4gZW50aXR5IGN0b3IuOiBcIiArIHByb3BOYW1lKTtcclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKHByb3AuaXNTY2FsYXIpIHtcclxuICAgICAgICAgIC8vIFRPRE86IGNoYW5nZSB0aGlzIHRvIG51bGxzdG9iIGxhdGVyLlxyXG4gICAgICAgICAgdmFsID0gbnVsbDtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgdmFsID0gYnJlZXplLm1ha2VSZWxhdGlvbkFycmF5KFtdLCBlbnRpdHkgYXMgYnJlZXplLkVudGl0eSwgcHJvcCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcInVua25vd24gcHJvcGVydHk6IFwiICsgcHJvcE5hbWUpO1xyXG4gICAgICB9XHJcbiAgICAgIC8vIGNhbid0IHRvdWNoIHRoZSBub3JtYWwgcHJvcGVydHkgc2V0cyB3aXRoaW4gdGhpcyBtZXRob2QgKElFOSBCdWcpIC0gc28gd2UgYWNjZXNzIHRoZSBiYWNraW5nU3RvcmUgZGlyZWN0bHkgaW5zdGVhZC5cclxuICAgICAgLy8gb3RoZXJ3aXNlIHdlIGNvdWxkIGp1c3QgZG9cclxuICAgICAgLy8gZW50aXR5W3Byb3BOYW1lXSA9IHZhbFxyXG4gICAgICAvLyBhZnRlciBhbGwgb2YgdGhlIGludGVyY2VwdGlvbiBsb2dpYyBoYWQgYmVlbiBpbmplY3RlZC5cclxuICAgICAgaWYgKChwcm9wIGFzIGJyZWV6ZS5EYXRhUHJvcGVydHkpLmlzU2V0dGFibGUgfHwgcHJvcC5pc05hdmlnYXRpb25Qcm9wZXJ0eSkge1xyXG4gICAgICAgIGJzW3Byb3BOYW1lXSA9IHZhbDtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcblxyXG5icmVlemUuY29uZmlnLnJlZ2lzdGVyQWRhcHRlcihcIm1vZGVsTGlicmFyeVwiLCBNb2RlbExpYnJhcnlCYWNraW5nU3RvcmVBZGFwdGVyKTtcclxuXHJcbi8vIHByaXZhdGUgbWV0aG9kc1xyXG5cclxuLy8gVGhpcyBtZXRob2QgaXMgY2FsbGVkIGR1cmluZyBNZXRhZGF0YSBpbml0aWFsaXphdGlvbiB0byBjb3JyZWN0bHkgXCJ3cmFwXCIgcHJvcGVydGllcy5cclxuZnVuY3Rpb24gbW92ZVByb3BEZWZzVG9Qcm90byhwcm90bzogYW55KSB7XHJcbiAgbGV0IHN0eXBlID0gKHByb3RvLmVudGl0eVR5cGUgfHwgcHJvdG8uY29tcGxleFR5cGUpIGFzIGJyZWV6ZS5TdHJ1Y3R1cmFsVHlwZTtcclxuICBsZXQgZXh0cmEgPSBzdHlwZS5fZXh0cmE7XHJcblxyXG4gIGxldCBhbHJlYWR5V3JhcHBlZCA9IGV4dHJhLmFscmVhZHlXcmFwcGVkUHJvcHMgfHwge307XHJcblxyXG4gIHN0eXBlLmdldFByb3BlcnRpZXMoKS5mb3JFYWNoKGZ1bmN0aW9uIChwcm9wKSB7XHJcbiAgICBsZXQgcHJvcE5hbWUgPSBwcm9wLm5hbWU7XHJcbiAgICAvLyB3ZSBvbmx5IHdhbnQgdG8gd3JhcCBwcm9wcyB0aGF0IGhhdmVuJ3QgYWxyZWFkeSBiZWVuIHdyYXBwZWRcclxuICAgIGlmIChhbHJlYWR5V3JhcHBlZFtwcm9wTmFtZV0pIHJldHVybjtcclxuXHJcbiAgICAvLyBJZiBwcm9wZXJ0eSBpcyBhbHJlYWR5IGRlZmluZWQgb24gdGhlIHByb3RvdHlwZSB0aGVuIHdyYXAgaXQgaW4gYW5vdGhlciBwcm9wZXJ0eURlc2NyaXB0b3IuXHJcbiAgICAvLyBvdGhlcndpc2UgY3JlYXRlIGEgcHJvcERlc2NyaXB0b3IgZm9yIGl0LlxyXG4gICAgbGV0IGRlc2NyOiBhbnk7XHJcbiAgICBpZiAocHJvcE5hbWUgaW4gcHJvdG8pIHtcclxuICAgICAgZGVzY3IgPSB3cmFwUHJvcERlc2NyaXB0aW9uKHByb3RvLCBwcm9wKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGRlc2NyID0gbWFrZVByb3BEZXNjcmlwdGlvbihwcm90bywgcHJvcCk7XHJcbiAgICB9XHJcbiAgICAvLyBkZXNjciB3aWxsIGJlIG51bGwgZm9yIGEgd3JhcHBlZCBkZXNjciB0aGF0IGlzIG5vdCBjb25maWd1cmFibGVcclxuICAgIGlmIChkZXNjciAhPSBudWxsKSB7XHJcbiAgICAgIE9iamVjdC5kZWZpbmVQcm9wZXJ0eShwcm90bywgcHJvcE5hbWUsIGRlc2NyKTtcclxuICAgIH1cclxuICAgIGFscmVhZHlXcmFwcGVkW3Byb3BOYW1lXSA9IHRydWU7XHJcbiAgfSk7XHJcbiAgZXh0cmEuYWxyZWFkeVdyYXBwZWRQcm9wcyA9IGFscmVhZHlXcmFwcGVkO1xyXG59XHJcblxyXG4vLyBUaGlzIG1ldGhvZCBpcyBjYWxsZWQgd2hlbiBhbiBpbnN0YW5jZSBpcyBmaXJzdCBjcmVhdGVkIHZpYSBtYXRlcmlhbGl6YXRpb24gb3IgY3JlYXRlRW50aXR5LlxyXG4vLyB0aGlzIG1ldGhvZCBjYW5ub3QgYmUgY2FsbGVkIHdoaWxlIGEgJ2RlZmluZVByb3BlcnR5JyBhY2Nlc3NvciBpcyBleGVjdXRpbmdcclxuLy8gYmVjYXVzZSBvZiBJRSBidWcgbWVudGlvbmVkIGFib3ZlLlxyXG5cclxuZnVuY3Rpb24gbW92ZVByb3BzVG9CYWNraW5nU3RvcmUoaW5zdGFuY2U6IGFueSkge1xyXG5cclxuICBsZXQgYnMgPSBnZXRCYWNraW5nU3RvcmUoaW5zdGFuY2UpO1xyXG4gIGxldCBwcm90byA9IE9iamVjdC5nZXRQcm90b3R5cGVPZihpbnN0YW5jZSk7XHJcbiAgbGV0IHN0eXBlID0gKHByb3RvLmVudGl0eVR5cGUgfHwgcHJvdG8uY29tcGxleFR5cGUpIGFzIGJyZWV6ZS5TdHJ1Y3R1cmFsVHlwZTtcclxuICBzdHlwZS5nZXRQcm9wZXJ0aWVzKCkuZm9yRWFjaChmdW5jdGlvbiAocHJvcCkge1xyXG4gICAgbGV0IHByb3BOYW1lID0gcHJvcC5uYW1lO1xyXG4gICAgaWYgKHByb3AuaXNVbm1hcHBlZCkge1xyXG4gICAgICAvLyBpbnN1cmUgdGhhdCBhbnkgdW5tYXBwZWQgcHJvcGVydGllcyB0aGF0IHdlcmUgYWRkZWQgYWZ0ZXIgZW50aXR5VHlwZVxyXG4gICAgICAvLyB3YXMgZmlyc3QgY3JlYXRlZCBhcmUgd3JhcHBlZCB3aXRoIGEgcHJvcGVydHkgZGVzY3JpcHRvci5cclxuICAgICAgaWYgKCFjb3JlLmdldFByb3BlcnR5RGVzY3JpcHRvcihwcm90bywgcHJvcE5hbWUpKSB7XHJcbiAgICAgICAgbGV0IGRlc2NyID0gbWFrZVByb3BEZXNjcmlwdGlvbihwcm90bywgcHJvcCk7XHJcbiAgICAgICAgT2JqZWN0LmRlZmluZVByb3BlcnR5KHByb3RvLCBwcm9wTmFtZSwgZGVzY3IpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICBpZiAoIWluc3RhbmNlLmhhc093blByb3BlcnR5KHByb3BOYW1lKSkgcmV0dXJuO1xyXG4gICAgLy8gcHVsbHMgb2ZmIHRoZSB2YWx1ZSwgcmVtb3ZlcyB0aGUgaW5zdGFuY2UgcHJvcGVydHkgYW5kIHRoZW4gcmV3cml0ZXMgaXQgdmlhIEVTNSBhY2Nlc3NvclxyXG4gICAgbGV0IHZhbHVlID0gaW5zdGFuY2VbcHJvcE5hbWVdO1xyXG4gICAgZGVsZXRlIGluc3RhbmNlW3Byb3BOYW1lXTtcclxuICAgIGluc3RhbmNlW3Byb3BOYW1lXSA9IHZhbHVlO1xyXG4gIH0pO1xyXG4gIHJldHVybiBicztcclxufVxyXG5cclxuZnVuY3Rpb24gbWFrZVByb3BEZXNjcmlwdGlvbihwcm90bzogYW55LCBwcm9wZXJ0eTogYnJlZXplLkVudGl0eVByb3BlcnR5KSB7XHJcbiAgbGV0IHByb3BOYW1lID0gcHJvcGVydHkubmFtZTtcclxuICBsZXQgcGVuZGluZ1N0b3JlcyA9IHByb3RvLl9wZW5kaW5nQmFja2luZ1N0b3JlcztcclxuICBpZiAoIXBlbmRpbmdTdG9yZXMpIHtcclxuICAgIHBlbmRpbmdTdG9yZXMgPSBbXTtcclxuICAgIHByb3RvLl9wZW5kaW5nQmFja2luZ1N0b3JlcyA9IHBlbmRpbmdTdG9yZXM7XHJcbiAgfVxyXG4gIGxldCBkZXNjciA9IHtcclxuICAgIGdldDogZnVuY3Rpb24gKCkge1xyXG4gICAgICBsZXQgYnMgPSB0aGlzLl9iYWNraW5nU3RvcmUgfHwgZ2V0QmFja2luZ1N0b3JlKHRoaXMpO1xyXG4gICAgICByZXR1cm4gYnNbcHJvcE5hbWVdO1xyXG4gICAgfSxcclxuICAgIHNldDogZnVuY3Rpb24gKHZhbHVlOiBhbnkpIHtcclxuICAgICAgLy8gSUU5IGNhbm5vdCB0b3VjaCBpbnN0YW5jZS5fYmFja2luZ1N0b3JlIGhlcmVcclxuICAgICAgbGV0IGJzID0gdGhpcy5fYmFja2luZ1N0b3JlIHx8IGdldFBlbmRpbmdCYWNraW5nU3RvcmUodGhpcyk7XHJcbiAgICAgIGxldCBhY2Nlc3NvckZuID0gZ2V0QWNjZXNzb3JGbihicywgcHJvcE5hbWUpO1xyXG4gICAgICB0aGlzLl8kaW50ZXJjZXB0b3IocHJvcGVydHksIHZhbHVlLCBhY2Nlc3NvckZuKTtcclxuICAgIH0sXHJcbiAgICBlbnVtZXJhYmxlOiB0cnVlLFxyXG4gICAgY29uZmlndXJhYmxlOiB0cnVlXHJcbiAgfTtcclxuXHJcbiAgKGRlc2NyLnNldCBhcyBhbnkpLnJhd1NldCA9IGZ1bmN0aW9uICh2YWx1ZTogYW55KSB7XHJcbiAgICBsZXQgYnMgPSB0aGlzLl9iYWNraW5nU3RvcmUgfHwgZ2V0UGVuZGluZ0JhY2tpbmdTdG9yZSh0aGlzKTtcclxuICAgIGxldCBhY2Nlc3NvckZuID0gZ2V0QWNjZXNzb3JGbihicywgcHJvcE5hbWUpO1xyXG4gICAgYWNjZXNzb3JGbih2YWx1ZSk7XHJcbiAgfTtcclxuICByZXR1cm4gZGVzY3I7XHJcblxyXG59XHJcblxyXG5mdW5jdGlvbiBnZXRBY2Nlc3NvckZuKGJzOiB7fSwgcHJvcE5hbWU6IHN0cmluZyk6IGFueSB7XHJcbiAgcmV0dXJuIGZ1bmN0aW9uICgpIHtcclxuICAgIGlmIChhcmd1bWVudHMubGVuZ3RoID09PSAwKSB7XHJcbiAgICAgIHJldHVybiBic1twcm9wTmFtZV07XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICBic1twcm9wTmFtZV0gPSBhcmd1bWVudHNbMF07XHJcbiAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICB9XHJcbiAgfTtcclxufVxyXG5cclxuZnVuY3Rpb24gd3JhcFByb3BEZXNjcmlwdGlvbihwcm90bzogYW55LCBwcm9wZXJ0eTogYnJlZXplLkVudGl0eVByb3BlcnR5KTogYW55IHtcclxuICBpZiAoIXByb3RvLmhhc093blByb3BlcnR5KHByb3BlcnR5Lm5hbWUpKSB7XHJcbiAgICBsZXQgbmV4dFByb3RvID0gT2JqZWN0LmdldFByb3RvdHlwZU9mKHByb3RvKTtcclxuICAgIHJldHVybiB3cmFwUHJvcERlc2NyaXB0aW9uKG5leHRQcm90bywgcHJvcGVydHkpO1xyXG4gIH1cclxuXHJcbiAgbGV0IHByb3BEZXNjciA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IocHJvdG8sIHByb3BlcnR5Lm5hbWUpO1xyXG4gIGlmICghcHJvcERlc2NyKSByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIC8vIGlmIG5vdCBjb25maWd1cmFibGU7IHdlIGNhbid0IHRvdWNoIGl0IC0gc28gbGVhdmUuXHJcbiAgaWYgKCFwcm9wRGVzY3IuY29uZmlndXJhYmxlKSByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIC8vIGlmIGEgZGF0YSBkZXNjcmlwdG9yIC0gZG9uJ3QgY2hhbmdlIGl0IC0gdGhpcyBpcyBiYXNpY2FsbHkgYSBzdGF0aWMgcHJvcGVydHkgLSBpLmUuIGRlZmluZWQgb24gZXZlcnkgaW5zdGFuY2Ugb2YgdGhlIHR5cGUgd2l0aCB0aGUgc2FtZSB2YWx1ZS5cclxuICBpZiAocHJvcERlc2NyLnZhbHVlKSByZXR1cm4gdW5kZWZpbmVkO1xyXG4gIC8vIGlmIGEgcmVhZCBvbmx5IHByb3BlcnR5IGRlc2NyaXB0b3IgLSBubyBuZWVkIHRvIGNoYW5nZSBpdC5cclxuICBpZiAoIXByb3BEZXNjci5zZXQpIHJldHVybiB1bmRlZmluZWQ7XHJcblxyXG4gIGxldCBsb2NhbEFjY2Vzc29yRm4gPSBmdW5jdGlvbiAoZW50aXR5OiBhbnkpIHtcclxuICAgIHJldHVybiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGlmICghcHJvcERlc2NyKSByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICBpZiAoYXJndW1lbnRzLmxlbmd0aCA9PT0gMCkge1xyXG4gICAgICAgIHJldHVybiBwcm9wRGVzY3IuZ2V0IS5iaW5kKGVudGl0eSkoKTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBsZXQgc2V0ID0gcHJvcERlc2NyLnNldDtcclxuICAgICAgICBsZXQgcmF3U2V0ID0gKHNldCBhcyBhbnkpLnJhd1NldCB8fCBzZXQ7XHJcbiAgICAgICAgcmF3U2V0LmJpbmQoZW50aXR5KShhcmd1bWVudHNbMF0pO1xyXG4gICAgICAgIHJldHVybiB1bmRlZmluZWQ7XHJcbiAgICAgIH1cclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgbGV0IG5ld0Rlc2NyID0ge1xyXG4gICAgZ2V0OiBmdW5jdGlvbiAoKSB7XHJcbiAgICAgIGlmICghcHJvcERlc2NyKSByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICByZXR1cm4gcHJvcERlc2NyLmdldCEuYmluZCh0aGlzKSgpO1xyXG4gICAgfSxcclxuICAgIHNldDogZnVuY3Rpb24gKHZhbHVlOiBhbnkpIHtcclxuICAgICAgdGhpcy5fJGludGVyY2VwdG9yKHByb3BlcnR5LCB2YWx1ZSwgbG9jYWxBY2Nlc3NvckZuKHRoaXMpKTtcclxuICAgIH0sXHJcbiAgICBlbnVtZXJhYmxlOiBwcm9wRGVzY3IuZW51bWVyYWJsZSxcclxuICAgIGNvbmZpZ3VyYWJsZTogdHJ1ZVxyXG4gIH07XHJcbiAgKG5ld0Rlc2NyLnNldCBhcyBhbnkpLnJhd1NldCA9IHByb3BEZXNjci5zZXQ7XHJcbiAgcmV0dXJuIG5ld0Rlc2NyO1xyXG59XHJcblxyXG5cclxuZnVuY3Rpb24gZ2V0QmFja2luZ1N0b3JlKGluc3RhbmNlOiBhbnkpIHtcclxuICBsZXQgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoaW5zdGFuY2UpO1xyXG4gIHByb2Nlc3NQZW5kaW5nU3RvcmVzKHByb3RvKTtcclxuICBsZXQgYnMgPSBpbnN0YW5jZS5fYmFja2luZ1N0b3JlO1xyXG4gIGlmICghYnMpIHtcclxuICAgIGJzID0ge307XHJcbiAgICBpbnN0YW5jZS5fYmFja2luZ1N0b3JlID0gYnM7XHJcbiAgfVxyXG4gIHJldHVybiBicztcclxufVxyXG5cclxuLy8gd29ya2Fyb3VuZCBmb3IgSUU5IGJ1ZyB3aGVyZSBpbnN0YW5jZSBwcm9wZXJ0aWVzIGNhbm5vdCBiZSBjaGFuZ2VkIHdoZW4gZXhlY3V0aW5nIGEgcHJvcGVydHkgJ3NldCcgbWV0aG9kLlxyXG5mdW5jdGlvbiBnZXRQZW5kaW5nQmFja2luZ1N0b3JlKGluc3RhbmNlOiBhbnkpIHtcclxuICBsZXQgcHJvdG8gPSBPYmplY3QuZ2V0UHJvdG90eXBlT2YoaW5zdGFuY2UpO1xyXG4gIGxldCBwZW5kaW5nU3RvcmVzID0gcHJvdG8uX3BlbmRpbmdCYWNraW5nU3RvcmVzO1xyXG4gIGxldCBwZW5kaW5nID0gY29yZS5hcnJheUZpcnN0KHBlbmRpbmdTdG9yZXMsIGZ1bmN0aW9uIChwZW5kaW5nKSB7XHJcbiAgICByZXR1cm4gcGVuZGluZy5lbnRpdHkgPT09IGluc3RhbmNlO1xyXG4gIH0pO1xyXG4gIGlmIChwZW5kaW5nKSByZXR1cm4gKHBlbmRpbmcgYXMgYW55KS5iYWNraW5nU3RvcmU7XHJcbiAgbGV0IGJzID0ge307XHJcbiAgcGVuZGluZ1N0b3Jlcy5wdXNoKHsgZW50aXR5OiBpbnN0YW5jZSwgYmFja2luZ1N0b3JlOiBicyB9KTtcclxuICByZXR1cm4gYnM7XHJcbn1cclxuXHJcbmZ1bmN0aW9uIHByb2Nlc3NQZW5kaW5nU3RvcmVzKHByb3RvOiBhbnkpIHtcclxuICBsZXQgcGVuZGluZ1N0b3JlcyA9IHByb3RvLl9wZW5kaW5nQmFja2luZ1N0b3JlcztcclxuICBpZiAocGVuZGluZ1N0b3Jlcykge1xyXG4gICAgcGVuZGluZ1N0b3Jlcy5mb3JFYWNoKGZ1bmN0aW9uIChwZW5kaW5nOiBhbnkpIHtcclxuICAgICAgcGVuZGluZy5lbnRpdHkuX2JhY2tpbmdTdG9yZSA9IHBlbmRpbmcuYmFja2luZ1N0b3JlO1xyXG4gICAgfSk7XHJcbiAgICBwZW5kaW5nU3RvcmVzLmxlbmd0aCA9IDA7XHJcbiAgfVxyXG59XHJcblxyXG4iXX0=
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './adapter-model-library-backing-store';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJlZXplLWNsaWVudC1hZGFwdGVyLW1vZGVsLWxpYnJhcnktYmFja2luZy1zdG9yZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2JyZWV6ZS1jbGllbnQvYWRhcHRlci1tb2RlbC1saWJyYXJ5LWJhY2tpbmctc3RvcmUvIiwic291cmNlcyI6WyJicmVlemUtY2xpZW50LWFkYXB0ZXItbW9kZWwtbGlicmFyeS1iYWNraW5nLXN0b3JlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBRUgsY0FBYyx1Q0FBdUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9hZGFwdGVyLW1vZGVsLWxpYnJhcnktYmFja2luZy1zdG9yZSc7XG4iXX0=