breeze-client 2.2.0-cjs → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (376) hide show
  1. package/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 +239 -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 +127 -0
  61. package/esm2022/src/entity-manager.mjs +2183 -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 +75 -0
  70. package/esm2022/src/mapping-context.mjs +422 -0
  71. package/{esm5/src/naming-convention.js → esm2022/src/naming-convention.mjs} +35 -29
  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 +160 -0
  76. package/esm2022/src/relation-array.mjs +173 -0
  77. package/esm2022/src/save-options.mjs +51 -0
  78. package/esm2022/src/unattached-children-map.mjs +56 -0
  79. package/{esm5/src/validate.js → esm2022/src/validate.mjs} +116 -110
  80. package/esm2022/src/validation-options.mjs +78 -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} +2034 -1535
  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/observable-array.js +0 -201
  324. package/esm5/src/predicate.js +0 -1307
  325. package/esm5/src/primitive-array.js +0 -87
  326. package/esm5/src/query-options.js +0 -167
  327. package/esm5/src/relation-array.js +0 -175
  328. package/esm5/src/save-options.js +0 -43
  329. package/esm5/src/unattached-children-map.js +0 -60
  330. package/esm5/src/validation-options.js +0 -66
  331. package/fesm2015/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  332. package/fesm2015/breeze-client-adapter-ajax-fetch.js.map +0 -1
  333. package/fesm2015/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  334. package/fesm2015/breeze-client-adapter-ajax-jquery.js.map +0 -1
  335. package/fesm2015/breeze-client-adapter-ajax-post.js.map +0 -1
  336. package/fesm2015/breeze-client-adapter-data-service-odata.js.map +0 -1
  337. package/fesm2015/breeze-client-adapter-data-service-webapi.js.map +0 -1
  338. package/fesm2015/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  339. package/fesm2015/breeze-client-adapter-model-library-ko.js.map +0 -1
  340. package/fesm2015/breeze-client-adapter-uri-builder-json.js.map +0 -1
  341. package/fesm2015/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  342. package/fesm2015/breeze-client-mixin-get-entity-graph.js.map +0 -1
  343. package/fesm2015/breeze-client-mixin-save-queuing.js.map +0 -1
  344. package/fesm2015/breeze-client.js.map +0 -1
  345. package/fesm5/breeze-client-adapter-ajax-angularjs.js +0 -186
  346. package/fesm5/breeze-client-adapter-ajax-angularjs.js.map +0 -1
  347. package/fesm5/breeze-client-adapter-ajax-fetch.js +0 -186
  348. package/fesm5/breeze-client-adapter-ajax-fetch.js.map +0 -1
  349. package/fesm5/breeze-client-adapter-ajax-httpclient.js +0 -193
  350. package/fesm5/breeze-client-adapter-ajax-httpclient.js.map +0 -1
  351. package/fesm5/breeze-client-adapter-ajax-jquery.js +0 -111
  352. package/fesm5/breeze-client-adapter-ajax-jquery.js.map +0 -1
  353. package/fesm5/breeze-client-adapter-ajax-post.js +0 -86
  354. package/fesm5/breeze-client-adapter-ajax-post.js.map +0 -1
  355. package/fesm5/breeze-client-adapter-data-service-odata.js +0 -523
  356. package/fesm5/breeze-client-adapter-data-service-odata.js.map +0 -1
  357. package/fesm5/breeze-client-adapter-data-service-webapi.js +0 -111
  358. package/fesm5/breeze-client-adapter-data-service-webapi.js.map +0 -1
  359. package/fesm5/breeze-client-adapter-model-library-backing-store.js +0 -276
  360. package/fesm5/breeze-client-adapter-model-library-backing-store.js.map +0 -1
  361. package/fesm5/breeze-client-adapter-model-library-ko.js +0 -248
  362. package/fesm5/breeze-client-adapter-model-library-ko.js.map +0 -1
  363. package/fesm5/breeze-client-adapter-uri-builder-json.js +0 -92
  364. package/fesm5/breeze-client-adapter-uri-builder-json.js.map +0 -1
  365. package/fesm5/breeze-client-adapter-uri-builder-odata.js +0 -250
  366. package/fesm5/breeze-client-adapter-uri-builder-odata.js.map +0 -1
  367. package/fesm5/breeze-client-mixin-get-entity-graph.js +0 -254
  368. package/fesm5/breeze-client-mixin-get-entity-graph.js.map +0 -1
  369. package/fesm5/breeze-client-mixin-save-queuing.js +0 -356
  370. package/fesm5/breeze-client-mixin-save-queuing.js.map +0 -1
  371. package/fesm5/breeze-client.js +0 -13956
  372. package/fesm5/breeze-client.js.map +0 -1
  373. package/mixin-get-entity-graph/breeze-client-mixin-get-entity-graph.metadata.json +0 -1
  374. package/mixin-get-entity-graph/package.json +0 -13
  375. package/mixin-save-queuing/breeze-client-mixin-save-queuing.metadata.json +0 -1
  376. package/mixin-save-queuing/package.json +0 -13
@@ -1,108 +0,0 @@
1
- import { EntityKey } from './entity-key';
2
- import { config } from './config';
3
- /*
4
- @class KeyGenerator
5
- */
6
- export class KeyGenerator {
7
- constructor() {
8
- // key is dataProperty.name + || + entityType.name, value is propEntry
9
- // propEntry = { entityType, propertyName, keyMap }
10
- // keyMap has key of the actual value ( as a string) and a value of null or the real id.
11
- this._tempIdMap = {};
12
- }
13
- /*
14
- Returns a unique 'temporary' id for the specified [[EntityType]].
15
- Uniqueness is defined for this purpose as being unique within each instance of a KeyGenerator. This is sufficient
16
- because each EntityManager will have its own instance of a KeyGenerator and any entities imported into
17
- the EntityManager with temporary keys will have them regenerated and remapped on import.
18
-
19
- The return value of this method must be of the correct type as determined by the keyProperties of the
20
- specified EntityType
21
- @example
22
- // Assume em1 is a preexisting EntityManager
23
- let custType = em1.metadataStore.getEntityType("Customer");
24
- let cust1 = custType.createEntity();
25
- // next line both sets cust1's 'CustomerId' property but also returns the value
26
- let cid1 = em1.generateTempKeyValue(cust1);
27
- em1.saveChanges().then( function( data) {
28
- let sameCust1 = data.results[0];
29
- // cust1 === sameCust1;
30
- // but cust1.getProperty("CustomerId") != cid1
31
- // because the server will have generated a new id
32
- // and the client will have been updated with this
33
- // new id.
34
- });
35
- @method generateTempKeyValue
36
- @param entityType {EntityType}
37
- */
38
- generateTempKeyValue(entityType, valueIfAvail) {
39
- let keyProps = entityType.keyProperties;
40
- if (keyProps.length > 1) {
41
- throw new Error("Ids can not be autogenerated for entities with multipart keys");
42
- }
43
- let keyProp = keyProps[0];
44
- let propEntry = this._getPropEntry(keyProp, true);
45
- let nextId;
46
- if (valueIfAvail != null) {
47
- if (!propEntry.keyMap[valueIfAvail.toString()]) {
48
- nextId = valueIfAvail;
49
- }
50
- }
51
- if (nextId === undefined) {
52
- let dataType = keyProp.dataType;
53
- let getNextFn = dataType.getNext;
54
- if (getNextFn) {
55
- nextId = getNextFn(this);
56
- // need to watch out for collision with previously imported ids that might also get generated.
57
- while (propEntry.keyMap[nextId.toString()] != null) {
58
- nextId = getNextFn(this);
59
- }
60
- }
61
- else {
62
- throw new Error("Cannot use a property with a dataType of: " + dataType.toString() + " for id generation");
63
- }
64
- }
65
- propEntry.keyMap[nextId.toString()] = true;
66
- return nextId;
67
- }
68
- getTempKeys() {
69
- let results = [];
70
- //noinspection JSHint
71
- for (let key in this._tempIdMap) {
72
- let propEntry = this._tempIdMap[key];
73
- let entityType = propEntry.entityType;
74
- // let propName = propEntry.propertyName;
75
- //noinspection JSHint
76
- for (let keyValue in propEntry.keyMap) {
77
- results.push(new EntityKey(entityType, [keyValue]));
78
- }
79
- }
80
- return results;
81
- }
82
- // proto methods below are not part of the KeyGenerator interface.
83
- isTempKey(entityKey) {
84
- let keyProps = entityKey.entityType.keyProperties;
85
- if (keyProps.length > 1)
86
- return false;
87
- let keyProp = keyProps[0];
88
- let propEntry = this._getPropEntry(keyProp);
89
- if (!propEntry) {
90
- return false;
91
- }
92
- return (propEntry.keyMap[entityKey.values[0].toString()] !== undefined);
93
- }
94
- /** @hidden @internal */
95
- _getPropEntry(keyProp, createIfMissing = false) {
96
- let key = keyProp.name + ".." + keyProp.parentType.name;
97
- let propEntry = this._tempIdMap[key];
98
- if (!propEntry) {
99
- if (createIfMissing) {
100
- propEntry = { entityType: keyProp.parentType, propertyName: keyProp.name, keyMap: {} };
101
- this._tempIdMap[key] = propEntry;
102
- }
103
- }
104
- return propEntry;
105
- }
106
- }
107
- config.registerType(KeyGenerator, "KeyGenerator");
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5LWdlbmVyYXRvci5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2JyZWV6ZS1jbGllbnQvIiwic291cmNlcyI6WyJzcmMva2V5LWdlbmVyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFZbEM7O0lBRUk7QUFDSixNQUFNLE9BQU8sWUFBWTtJQUt2QjtRQUNFLHNFQUFzRTtRQUN0RSxtREFBbUQ7UUFDbkQsd0ZBQXdGO1FBQ3hGLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFHRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01Bd0JFO0lBQ0Ysb0JBQW9CLENBQUMsVUFBc0IsRUFBRSxZQUFzQjtRQUNqRSxJQUFJLFFBQVEsR0FBRyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQ3hDLElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7WUFDdkIsTUFBTSxJQUFJLEtBQUssQ0FBQywrREFBK0QsQ0FBQyxDQUFDO1NBQ2xGO1FBQ0QsSUFBSSxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ2xELElBQUksTUFBVyxDQUFDO1FBQ2hCLElBQUksWUFBWSxJQUFJLElBQUksRUFBRTtZQUN4QixJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLENBQUMsRUFBRTtnQkFDOUMsTUFBTSxHQUFHLFlBQVksQ0FBQzthQUN2QjtTQUNGO1FBRUQsSUFBSSxNQUFNLEtBQUssU0FBUyxFQUFFO1lBQ3hCLElBQUksUUFBUSxHQUFHLE9BQU8sQ0FBQyxRQUFRLENBQUM7WUFDaEMsSUFBSSxTQUFTLEdBQUksUUFBZ0IsQ0FBQyxPQUFPLENBQUM7WUFDMUMsSUFBSSxTQUFTLEVBQUU7Z0JBQ2IsTUFBTSxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDekIsOEZBQThGO2dCQUM5RixPQUFPLFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLElBQUksSUFBSSxFQUFFO29CQUNsRCxNQUFNLEdBQUcsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDO2lCQUMxQjthQUNGO2lCQUFNO2dCQUNMLE1BQU0sSUFBSSxLQUFLLENBQUMsNENBQTRDLEdBQUcsUUFBUSxDQUFDLFFBQVEsRUFBRSxHQUFHLG9CQUFvQixDQUFDLENBQUM7YUFDNUc7U0FDRjtRQUVELFNBQVMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxDQUFDLEdBQUcsSUFBSSxDQUFDO1FBQzNDLE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxPQUFPLEdBQWdCLEVBQUUsQ0FBQztRQUM5QixxQkFBcUI7UUFDckIsS0FBSyxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsVUFBVSxFQUFFO1lBQy9CLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUM7WUFDckMsSUFBSSxVQUFVLEdBQUcsU0FBUyxDQUFDLFVBQVUsQ0FBQztZQUN0Qyx5Q0FBeUM7WUFDekMscUJBQXFCO1lBQ3JCLEtBQUssSUFBSSxRQUFRLElBQUksU0FBUyxDQUFDLE1BQU0sRUFBRTtnQkFDckMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLFNBQVMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDckQ7U0FDRjtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFHRCxrRUFBa0U7SUFFbEUsU0FBUyxDQUFDLFNBQW9CO1FBQzVCLElBQUksUUFBUSxHQUFHLFNBQVMsQ0FBQyxVQUFVLENBQUMsYUFBYSxDQUFDO1FBQ2xELElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDO1lBQUUsT0FBTyxLQUFLLENBQUM7UUFDdEMsSUFBSSxPQUFPLEdBQUcsUUFBUSxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzFCLElBQUksU0FBUyxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDNUMsSUFBSSxDQUFDLFNBQVMsRUFBRTtZQUNkLE9BQU8sS0FBSyxDQUFDO1NBQ2Q7UUFDRCxPQUFPLENBQUMsU0FBUyxDQUFDLE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDLFFBQVEsRUFBRSxDQUFDLEtBQUssU0FBUyxDQUFDLENBQUM7SUFDMUUsQ0FBQztJQUVELHdCQUF3QjtJQUNoQixhQUFhLENBQUMsT0FBcUIsRUFBRSxlQUFlLEdBQUcsS0FBSztRQUNsRSxJQUFJLEdBQUcsR0FBRyxPQUFPLENBQUMsSUFBSSxHQUFHLElBQUksR0FBRyxPQUFPLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQztRQUN4RCxJQUFJLFNBQVMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQ3JDLElBQUksQ0FBQyxTQUFTLEVBQUU7WUFDZCxJQUFJLGVBQWUsRUFBRTtnQkFDbkIsU0FBUyxHQUFHLEVBQUUsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUF3QixFQUFFLFlBQVksRUFBRSxPQUFPLENBQUMsSUFBSSxFQUFFLE1BQU0sRUFBRSxFQUFFLEVBQUUsQ0FBQztnQkFDckcsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsR0FBRyxTQUFTLENBQUM7YUFDbEM7U0FDRjtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7Q0FFRjtBQUVELE1BQU0sQ0FBQyxZQUFZLENBQUMsWUFBWSxFQUFFLGNBQWMsQ0FBQyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW50aXR5VHlwZSwgRGF0YVByb3BlcnR5IH0gZnJvbSAnLi9lbnRpdHktbWV0YWRhdGEnO1xyXG5pbXBvcnQgeyBFbnRpdHlLZXkgfSBmcm9tICcuL2VudGl0eS1rZXknO1xyXG5pbXBvcnQgeyBjb25maWcgfSBmcm9tICcuL2NvbmZpZyc7XHJcblxyXG5pbnRlcmZhY2UgSVByb3BFbnRyeSB7XHJcbiAgZW50aXR5VHlwZTogRW50aXR5VHlwZTtcclxuICBwcm9wZXJ0eU5hbWU6IHN0cmluZztcclxuICBrZXlNYXA6IFJlY29yZDxzdHJpbmcsIGFueT47XHJcbn1cclxuXHJcbmludGVyZmFjZSBJVGVtcElkTWFwIHtcclxuICBbaW5kZXg6IHN0cmluZ106IElQcm9wRW50cnk7XHJcbn1cclxuXHJcbi8qXHJcbiAgQGNsYXNzIEtleUdlbmVyYXRvclxyXG4gICovXHJcbmV4cG9ydCBjbGFzcyBLZXlHZW5lcmF0b3Ige1xyXG4gIC8qKiBAaGlkZGVuIEBpbnRlcm5hbCAqL1xyXG4gIHByaXZhdGUgX3RlbXBJZE1hcDogSVRlbXBJZE1hcDtcclxuXHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gICAgLy8ga2V5IGlzIGRhdGFQcm9wZXJ0eS5uYW1lICsgfHwgKyBlbnRpdHlUeXBlLm5hbWUsIHZhbHVlIGlzIHByb3BFbnRyeVxyXG4gICAgLy8gcHJvcEVudHJ5ID0geyBlbnRpdHlUeXBlLCBwcm9wZXJ0eU5hbWUsIGtleU1hcCB9XHJcbiAgICAvLyBrZXlNYXAgaGFzIGtleSBvZiB0aGUgYWN0dWFsIHZhbHVlICggYXMgYSBzdHJpbmcpIGFuZCBhIHZhbHVlIG9mIG51bGwgb3IgdGhlIHJlYWwgaWQuXHJcbiAgICB0aGlzLl90ZW1wSWRNYXAgPSB7fTtcclxuICB9XHJcblxyXG5cclxuICAvKlxyXG4gIFJldHVybnMgYSB1bmlxdWUgJ3RlbXBvcmFyeScgaWQgZm9yIHRoZSBzcGVjaWZpZWQgW1tFbnRpdHlUeXBlXV0uXHJcbiAgVW5pcXVlbmVzcyBpcyBkZWZpbmVkIGZvciB0aGlzIHB1cnBvc2UgYXMgYmVpbmcgdW5pcXVlIHdpdGhpbiBlYWNoIGluc3RhbmNlIG9mIGEgS2V5R2VuZXJhdG9yLiBUaGlzIGlzIHN1ZmZpY2llbnRcclxuICBiZWNhdXNlIGVhY2ggRW50aXR5TWFuYWdlciB3aWxsIGhhdmUgaXRzIG93biBpbnN0YW5jZSBvZiBhIEtleUdlbmVyYXRvciBhbmQgYW55IGVudGl0aWVzIGltcG9ydGVkIGludG9cclxuICB0aGUgRW50aXR5TWFuYWdlciB3aXRoIHRlbXBvcmFyeSBrZXlzIHdpbGwgaGF2ZSB0aGVtIHJlZ2VuZXJhdGVkIGFuZCByZW1hcHBlZCBvbiBpbXBvcnQuXHJcblxyXG4gIFRoZSByZXR1cm4gdmFsdWUgb2YgdGhpcyBtZXRob2QgbXVzdCBiZSBvZiB0aGUgY29ycmVjdCB0eXBlIGFzIGRldGVybWluZWQgYnkgdGhlIGtleVByb3BlcnRpZXMgb2YgdGhlXHJcbiAgc3BlY2lmaWVkIEVudGl0eVR5cGVcclxuICBAZXhhbXBsZVxyXG4gICAgICAvLyBBc3N1bWUgZW0xIGlzIGEgcHJlZXhpc3RpbmcgRW50aXR5TWFuYWdlclxyXG4gICAgICBsZXQgY3VzdFR5cGUgPSBlbTEubWV0YWRhdGFTdG9yZS5nZXRFbnRpdHlUeXBlKFwiQ3VzdG9tZXJcIik7XHJcbiAgICAgIGxldCBjdXN0MSA9IGN1c3RUeXBlLmNyZWF0ZUVudGl0eSgpO1xyXG4gICAgICAvLyBuZXh0IGxpbmUgYm90aCBzZXRzIGN1c3QxJ3MgJ0N1c3RvbWVySWQnIHByb3BlcnR5IGJ1dCBhbHNvIHJldHVybnMgdGhlIHZhbHVlXHJcbiAgICAgIGxldCBjaWQxID0gZW0xLmdlbmVyYXRlVGVtcEtleVZhbHVlKGN1c3QxKTtcclxuICAgICAgZW0xLnNhdmVDaGFuZ2VzKCkudGhlbiggZnVuY3Rpb24oIGRhdGEpIHtcclxuICAgICAgICBsZXQgc2FtZUN1c3QxID0gZGF0YS5yZXN1bHRzWzBdO1xyXG4gICAgICAgIC8vIGN1c3QxID09PSBzYW1lQ3VzdDE7XHJcbiAgICAgICAgLy8gYnV0IGN1c3QxLmdldFByb3BlcnR5KFwiQ3VzdG9tZXJJZFwiKSAhPSBjaWQxXHJcbiAgICAgICAgLy8gYmVjYXVzZSB0aGUgc2VydmVyIHdpbGwgaGF2ZSBnZW5lcmF0ZWQgYSBuZXcgaWRcclxuICAgICAgICAvLyBhbmQgdGhlIGNsaWVudCB3aWxsIGhhdmUgYmVlbiB1cGRhdGVkIHdpdGggdGhpc1xyXG4gICAgICAgIC8vIG5ldyBpZC5cclxuICAgICAgfSk7XHJcbiAgQG1ldGhvZCBnZW5lcmF0ZVRlbXBLZXlWYWx1ZVxyXG4gIEBwYXJhbSBlbnRpdHlUeXBlIHtFbnRpdHlUeXBlfVxyXG4gICovXHJcbiAgZ2VuZXJhdGVUZW1wS2V5VmFsdWUoZW50aXR5VHlwZTogRW50aXR5VHlwZSwgdmFsdWVJZkF2YWlsPzogYm9vbGVhbikge1xyXG4gICAgbGV0IGtleVByb3BzID0gZW50aXR5VHlwZS5rZXlQcm9wZXJ0aWVzO1xyXG4gICAgaWYgKGtleVByb3BzLmxlbmd0aCA+IDEpIHtcclxuICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSWRzIGNhbiBub3QgYmUgYXV0b2dlbmVyYXRlZCBmb3IgZW50aXRpZXMgd2l0aCBtdWx0aXBhcnQga2V5c1wiKTtcclxuICAgIH1cclxuICAgIGxldCBrZXlQcm9wID0ga2V5UHJvcHNbMF07XHJcbiAgICBsZXQgcHJvcEVudHJ5ID0gdGhpcy5fZ2V0UHJvcEVudHJ5KGtleVByb3AsIHRydWUpO1xyXG4gICAgbGV0IG5leHRJZDogYW55O1xyXG4gICAgaWYgKHZhbHVlSWZBdmFpbCAhPSBudWxsKSB7XHJcbiAgICAgIGlmICghcHJvcEVudHJ5LmtleU1hcFt2YWx1ZUlmQXZhaWwudG9TdHJpbmcoKV0pIHtcclxuICAgICAgICBuZXh0SWQgPSB2YWx1ZUlmQXZhaWw7XHJcbiAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBpZiAobmV4dElkID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgbGV0IGRhdGFUeXBlID0ga2V5UHJvcC5kYXRhVHlwZTtcclxuICAgICAgbGV0IGdldE5leHRGbiA9IChkYXRhVHlwZSBhcyBhbnkpLmdldE5leHQ7XHJcbiAgICAgIGlmIChnZXROZXh0Rm4pIHtcclxuICAgICAgICBuZXh0SWQgPSBnZXROZXh0Rm4odGhpcyk7XHJcbiAgICAgICAgLy8gbmVlZCB0byB3YXRjaCBvdXQgZm9yIGNvbGxpc2lvbiB3aXRoIHByZXZpb3VzbHkgaW1wb3J0ZWQgaWRzIHRoYXQgbWlnaHQgYWxzbyBnZXQgZ2VuZXJhdGVkLlxyXG4gICAgICAgIHdoaWxlIChwcm9wRW50cnkua2V5TWFwW25leHRJZC50b1N0cmluZygpXSAhPSBudWxsKSB7XHJcbiAgICAgICAgICBuZXh0SWQgPSBnZXROZXh0Rm4odGhpcyk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCB1c2UgYSBwcm9wZXJ0eSB3aXRoIGEgZGF0YVR5cGUgb2Y6IFwiICsgZGF0YVR5cGUudG9TdHJpbmcoKSArIFwiIGZvciBpZCBnZW5lcmF0aW9uXCIpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJvcEVudHJ5LmtleU1hcFtuZXh0SWQudG9TdHJpbmcoKV0gPSB0cnVlO1xyXG4gICAgcmV0dXJuIG5leHRJZDtcclxuICB9XHJcblxyXG4gIGdldFRlbXBLZXlzKCkge1xyXG4gICAgbGV0IHJlc3VsdHM6IEVudGl0eUtleVtdID0gW107XHJcbiAgICAvL25vaW5zcGVjdGlvbiBKU0hpbnRcclxuICAgIGZvciAobGV0IGtleSBpbiB0aGlzLl90ZW1wSWRNYXApIHtcclxuICAgICAgbGV0IHByb3BFbnRyeSA9IHRoaXMuX3RlbXBJZE1hcFtrZXldO1xyXG4gICAgICBsZXQgZW50aXR5VHlwZSA9IHByb3BFbnRyeS5lbnRpdHlUeXBlO1xyXG4gICAgICAvLyBsZXQgcHJvcE5hbWUgPSBwcm9wRW50cnkucHJvcGVydHlOYW1lO1xyXG4gICAgICAvL25vaW5zcGVjdGlvbiBKU0hpbnRcclxuICAgICAgZm9yIChsZXQga2V5VmFsdWUgaW4gcHJvcEVudHJ5LmtleU1hcCkge1xyXG4gICAgICAgIHJlc3VsdHMucHVzaChuZXcgRW50aXR5S2V5KGVudGl0eVR5cGUsIFtrZXlWYWx1ZV0pKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdHM7XHJcbiAgfVxyXG5cclxuXHJcbiAgLy8gcHJvdG8gbWV0aG9kcyBiZWxvdyBhcmUgbm90IHBhcnQgb2YgdGhlIEtleUdlbmVyYXRvciBpbnRlcmZhY2UuXHJcblxyXG4gIGlzVGVtcEtleShlbnRpdHlLZXk6IEVudGl0eUtleSkge1xyXG4gICAgbGV0IGtleVByb3BzID0gZW50aXR5S2V5LmVudGl0eVR5cGUua2V5UHJvcGVydGllcztcclxuICAgIGlmIChrZXlQcm9wcy5sZW5ndGggPiAxKSByZXR1cm4gZmFsc2U7XHJcbiAgICBsZXQga2V5UHJvcCA9IGtleVByb3BzWzBdO1xyXG4gICAgbGV0IHByb3BFbnRyeSA9IHRoaXMuX2dldFByb3BFbnRyeShrZXlQcm9wKTtcclxuICAgIGlmICghcHJvcEVudHJ5KSB7XHJcbiAgICAgIHJldHVybiBmYWxzZTtcclxuICAgIH1cclxuICAgIHJldHVybiAocHJvcEVudHJ5LmtleU1hcFtlbnRpdHlLZXkudmFsdWVzWzBdLnRvU3RyaW5nKCldICE9PSB1bmRlZmluZWQpO1xyXG4gIH1cclxuXHJcbiAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXHJcbiAgcHJpdmF0ZSBfZ2V0UHJvcEVudHJ5KGtleVByb3A6IERhdGFQcm9wZXJ0eSwgY3JlYXRlSWZNaXNzaW5nID0gZmFsc2UpIHtcclxuICAgIGxldCBrZXkgPSBrZXlQcm9wLm5hbWUgKyBcIi4uXCIgKyBrZXlQcm9wLnBhcmVudFR5cGUubmFtZTtcclxuICAgIGxldCBwcm9wRW50cnkgPSB0aGlzLl90ZW1wSWRNYXBba2V5XTtcclxuICAgIGlmICghcHJvcEVudHJ5KSB7XHJcbiAgICAgIGlmIChjcmVhdGVJZk1pc3NpbmcpIHtcclxuICAgICAgICBwcm9wRW50cnkgPSB7IGVudGl0eVR5cGU6IGtleVByb3AucGFyZW50VHlwZSBhcyBFbnRpdHlUeXBlLCBwcm9wZXJ0eU5hbWU6IGtleVByb3AubmFtZSwga2V5TWFwOiB7fSB9O1xyXG4gICAgICAgIHRoaXMuX3RlbXBJZE1hcFtrZXldID0gcHJvcEVudHJ5O1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcHJvcEVudHJ5O1xyXG4gIH1cclxuXHJcbn1cclxuXHJcbmNvbmZpZy5yZWdpc3RlclR5cGUoS2V5R2VuZXJhdG9yLCBcIktleUdlbmVyYXRvclwiKTtcclxuXHJcbiJdfQ==
@@ -1,65 +0,0 @@
1
- import { core } from './core';
2
- import { assertConfig } from './assert-param';
3
- import { config } from './config';
4
- /**
5
- A LocalQueryComparisonOptions instance is used to specify the "comparison rules" used when performing "local queries" in order
6
- to match the semantics of these same queries when executed against a remote service. These options should be set based on the
7
- manner in which your remote service interprets certain comparison operations.
8
-
9
- The default LocalQueryComparisonOptions stipulates 'caseInsensitive" queries with ANSI SQL rules regarding comparisons of unequal
10
- length strings.
11
- **/
12
- export class LocalQueryComparisonOptions {
13
- /**
14
- LocalQueryComparisonOptions constructor
15
- > // create a 'caseSensitive - non SQL' instance.
16
- > var lqco = new LocalQueryComparisonOptions({
17
- > name: "caseSensitive-nonSQL"
18
- > isCaseSensitive: true;
19
- > usesSql92CompliantStringComparison: false;
20
- > });
21
- > // either apply it globally
22
- > lqco.setAsDefault();
23
- > // or to a specific MetadataStore
24
- > var ms = new MetadataStore({ localQueryComparisonOptions: lqco });
25
- > var em = new EntityManager( { metadataStore: ms });
26
- @param config - A configuration object.
27
- **/
28
- constructor(lqcoConfig) {
29
- assertConfig(lqcoConfig || {})
30
- .whereParam("name").isOptional().isString()
31
- .whereParam("isCaseSensitive").isOptional().isBoolean()
32
- .whereParam("usesSql92CompliantStringComparison").isBoolean()
33
- .applyAll(this);
34
- if (!this.name) {
35
- this.name = core.getUuid();
36
- }
37
- config._storeObject(this, "LocalQueryComparisonOptions", this.name);
38
- }
39
- /**
40
- Sets the 'defaultInstance' by creating a copy of the current 'defaultInstance' and then applying all of the properties of the current instance.
41
- The current instance is returned unchanged.
42
- > var lqco = new LocalQueryComparisonOptions({
43
- > isCaseSensitive: false;
44
- > usesSql92CompliantStringComparison: true;
45
- > });
46
- > lqco.setAsDefault();
47
- **/
48
- setAsDefault() {
49
- return core.setAsDefault(this, LocalQueryComparisonOptions);
50
- }
51
- }
52
- /**
53
- Case insensitive SQL compliant options - this is also the default unless otherwise changed.
54
- **/
55
- LocalQueryComparisonOptions.caseInsensitiveSQL = new LocalQueryComparisonOptions({
56
- name: "caseInsensitiveSQL",
57
- isCaseSensitive: false,
58
- usesSql92CompliantStringComparison: true
59
- });
60
- /**
61
- The default value whenever LocalQueryComparisonOptions are not specified. By default this is 'caseInsensitiveSQL'.
62
- **/
63
- LocalQueryComparisonOptions.defaultInstance = new LocalQueryComparisonOptions(LocalQueryComparisonOptions.caseInsensitiveSQL);
64
- LocalQueryComparisonOptions.prototype._$typeName = "LocalQueryComparisonOptions";
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9jYWwtcXVlcnktY29tcGFyaXNvbi1vcHRpb25zLmpzIiwic291cmNlUm9vdCI6Im5nOi8vYnJlZXplLWNsaWVudC8iLCJzb3VyY2VzIjpbInNyYy9sb2NhbC1xdWVyeS1jb21wYXJpc29uLW9wdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUM5QixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLFVBQVUsQ0FBQztBQWVsQzs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxPQUFPLDJCQUEyQjtJQVl0Qzs7Ozs7Ozs7Ozs7Ozs7T0FjRztJQUNILFlBQVksVUFBNkM7UUFDdkQsWUFBWSxDQUFDLFVBQVUsSUFBSSxFQUFFLENBQUM7YUFDekIsVUFBVSxDQUFDLE1BQU0sQ0FBQyxDQUFDLFVBQVUsRUFBRSxDQUFDLFFBQVEsRUFBRTthQUMxQyxVQUFVLENBQUMsaUJBQWlCLENBQUMsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxTQUFTLEVBQUU7YUFDdEQsVUFBVSxDQUFDLG9DQUFvQyxDQUFDLENBQUMsU0FBUyxFQUFFO2FBQzVELFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNwQixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRTtZQUNkLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDO1NBQzVCO1FBQ0QsTUFBTSxDQUFDLFlBQVksQ0FBQyxJQUFJLEVBQUUsNkJBQTZCLEVBQUUsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFnQkQ7Ozs7Ozs7O09BUUc7SUFDSCxZQUFZO1FBQ1YsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksRUFBRSwyQkFBMkIsQ0FBQyxDQUFDO0lBQzlELENBQUM7O0FBekJEOztHQUVHO0FBQ0ksOENBQWtCLEdBQUcsSUFBSSwyQkFBMkIsQ0FBQztJQUMxRCxJQUFJLEVBQUUsb0JBQW9CO0lBQzFCLGVBQWUsRUFBRSxLQUFLO0lBQ3RCLGtDQUFrQyxFQUFFLElBQUk7Q0FDekMsQ0FBQyxDQUFDO0FBRUg7O0dBRUc7QUFDSSwyQ0FBZSxHQUFHLElBQUksMkJBQTJCLENBQUMsMkJBQTJCLENBQUMsa0JBQWtCLENBQUMsQ0FBQztBQWdCM0csMkJBQTJCLENBQUMsU0FBUyxDQUFDLFVBQVUsR0FBRyw2QkFBNkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGNvcmUgfSBmcm9tICcuL2NvcmUnO1xyXG5pbXBvcnQgeyBhc3NlcnRDb25maWcgfSBmcm9tICcuL2Fzc2VydC1wYXJhbSc7XHJcbmltcG9ydCB7IGNvbmZpZyB9IGZyb20gJy4vY29uZmlnJztcclxuXHJcblxyXG4vKiogQ29uZmlndXJhdGlvbiBpbmZvIHRvIGJlIHBhc3NlZCB0byB0aGUgW1tMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnNdXSBjb25zdHJ1Y3Rvci4gKi9cclxuZXhwb3J0IGludGVyZmFjZSBMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnNDb25maWcge1xyXG4gIC8qKiBUaGUgbmFtZSBvZiB0aGlzIGNvbGxlY3Rpb24gb2YgY29uZmlndXJhdGlvbiBzZXR0aW5ncy4gKi9cclxuICBuYW1lPzogc3RyaW5nO1xyXG4gIC8qKiBXaGV0aGVyIHByZWRpY2F0ZXMgdGhhdCBpbnZvbHZlIHN0cmluZ3Mgd2lsbCBiZSBpbnRlcnByZXRlZCBpbiBhIFwiY2FzZVNlbnNpdGl2ZVwiIG1hbm5lci4gRGVmYXVsdCBpcyAnZmFsc2UnLiAqL1xyXG4gIGlzQ2FzZVNlbnNpdGl2ZT86IGJvb2xlYW47XHJcbiAgLyogV2hldGhlciBvciBub3QgdG8gZW5mb3JjZSB0aGUgQU5TSSBTUUwgc3RhbmRhcmRcclxuICBvZiBwYWRkaW5nIHN0cmluZ3Mgb2YgdW5lcXVhbCBsZW5ndGhzIGJlZm9yZSBjb21wYXJpc29uIHdpdGggc3BhY2VzLiBOb3RlIHRoYXQgcGVyIHRoZSBzdGFuZGFyZCwgcGFkZGluZyBvbmx5IG9jY3VycyB3aXRoIGVxdWFsaXR5IGFuZFxyXG4gIGluZXF1YWxpdHkgcHJlZGljYXRlcywgYW5kIG5vdCB3aXRoIG9wZXJhdGlvbnMgbGlrZSAnc3RhcnRzV2l0aCcsICdlbmRzV2l0aCcgb3IgJ2NvbnRhaW5zJy4gIERlZmF1bHQgaXMgdHJ1ZS4gKi9cclxuICB1c2VzU3FsOTJDb21wbGlhbnRTdHJpbmdDb21wYXJpc29uPzogYm9vbGVhbjtcclxufVxyXG5cclxuLyoqXHJcbkEgTG9jYWxRdWVyeUNvbXBhcmlzb25PcHRpb25zIGluc3RhbmNlIGlzIHVzZWQgdG8gc3BlY2lmeSB0aGUgXCJjb21wYXJpc29uIHJ1bGVzXCIgdXNlZCB3aGVuIHBlcmZvcm1pbmcgXCJsb2NhbCBxdWVyaWVzXCIgaW4gb3JkZXJcclxudG8gbWF0Y2ggdGhlIHNlbWFudGljcyBvZiB0aGVzZSBzYW1lIHF1ZXJpZXMgd2hlbiBleGVjdXRlZCBhZ2FpbnN0IGEgcmVtb3RlIHNlcnZpY2UuICBUaGVzZSBvcHRpb25zIHNob3VsZCBiZSBzZXQgYmFzZWQgb24gdGhlXHJcbm1hbm5lciBpbiB3aGljaCB5b3VyIHJlbW90ZSBzZXJ2aWNlIGludGVycHJldHMgY2VydGFpbiBjb21wYXJpc29uIG9wZXJhdGlvbnMuXHJcblxyXG5UaGUgZGVmYXVsdCBMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnMgc3RpcHVsYXRlcyAnY2FzZUluc2Vuc2l0aXZlXCIgcXVlcmllcyB3aXRoIEFOU0kgU1FMIHJ1bGVzIHJlZ2FyZGluZyBjb21wYXJpc29ucyBvZiB1bmVxdWFsXHJcbmxlbmd0aCBzdHJpbmdzLlxyXG4qKi9cclxuZXhwb3J0IGNsYXNzIExvY2FsUXVlcnlDb21wYXJpc29uT3B0aW9ucyB7XHJcbiAgLyoqIEBoaWRkZW4gQGludGVybmFsICovXHJcbiAgXyR0eXBlTmFtZTogc3RyaW5nOyAvLyBvbiBwcm90b3R5cGVcclxuICAvKiogVGhlIG5hbWUgZm9yIHRoaXMgaW5zdGFuY2UuICovXHJcbiAgbmFtZTogc3RyaW5nO1xyXG4gIC8qKiBXaGV0aGVyIHByZWRpY2F0ZXMgdGhhdCBpbnZvbHZlIHN0cmluZ3Mgd2lsbCBiZSBpbnRlcnByZXRlZCBpbiBhIFwiY2FzZVNlbnNpdGl2ZVwiIG1hbm5lci4gKGRlZmF1bHQgPSBmYWxzZSkuICAqL1xyXG4gIGlzQ2FzZVNlbnNpdGl2ZTogYm9vbGVhbjtcclxuICAvKiBXaGV0aGVyIG9yIG5vdCB0byBlbmZvcmNlIHRoZSBBTlNJIFNRTCBzdGFuZGFyZFxyXG4gIG9mIHBhZGRpbmcgc3RyaW5ncyBvZiB1bmVxdWFsIGxlbmd0aHMgYmVmb3JlIGNvbXBhcmlzb24gd2l0aCBzcGFjZXMuIE5vdGUgdGhhdCBwZXIgdGhlIHN0YW5kYXJkLCBwYWRkaW5nIG9ubHkgb2NjdXJzIHdpdGggZXF1YWxpdHkgYW5kXHJcbiAgaW5lcXVhbGl0eSBwcmVkaWNhdGVzLCBhbmQgbm90IHdpdGggb3BlcmF0aW9ucyBsaWtlICdzdGFydHNXaXRoJywgJ2VuZHNXaXRoJyBvciAnY29udGFpbnMnLiAgRGVmYXVsdCBpcyB0cnVlLiAqL1xyXG4gIHVzZXNTcWw5MkNvbXBsaWFudFN0cmluZ0NvbXBhcmlzb246IGJvb2xlYW47XHJcblxyXG4gIC8qKlxyXG4gIExvY2FsUXVlcnlDb21wYXJpc29uT3B0aW9ucyBjb25zdHJ1Y3RvclxyXG4gID4gICAgICAvLyBjcmVhdGUgYSAnY2FzZVNlbnNpdGl2ZSAtIG5vbiBTUUwnIGluc3RhbmNlLlxyXG4gID4gICAgICB2YXIgbHFjbyA9IG5ldyBMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnMoe1xyXG4gID4gICAgICAgICAgICAgIG5hbWU6IFwiY2FzZVNlbnNpdGl2ZS1ub25TUUxcIlxyXG4gID4gICAgICAgICAgICAgIGlzQ2FzZVNlbnNpdGl2ZTogdHJ1ZTtcclxuICA+ICAgICAgICAgICAgICB1c2VzU3FsOTJDb21wbGlhbnRTdHJpbmdDb21wYXJpc29uOiBmYWxzZTtcclxuICA+ICAgICAgICAgIH0pO1xyXG4gID4gICAgICAvLyBlaXRoZXIgYXBwbHkgaXQgZ2xvYmFsbHlcclxuICA+ICAgICAgbHFjby5zZXRBc0RlZmF1bHQoKTtcclxuICA+ICAgICAgLy8gb3IgdG8gYSBzcGVjaWZpYyBNZXRhZGF0YVN0b3JlXHJcbiAgPiAgICAgIHZhciBtcyA9IG5ldyBNZXRhZGF0YVN0b3JlKHsgbG9jYWxRdWVyeUNvbXBhcmlzb25PcHRpb25zOiBscWNvIH0pO1xyXG4gID4gICAgICB2YXIgZW0gPSBuZXcgRW50aXR5TWFuYWdlciggeyBtZXRhZGF0YVN0b3JlOiBtcyB9KTtcclxuICBAcGFyYW0gY29uZmlnIC0gQSBjb25maWd1cmF0aW9uIG9iamVjdC5cclxuICAqKi9cclxuICBjb25zdHJ1Y3RvcihscWNvQ29uZmlnOiBMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnNDb25maWcpIHtcclxuICAgIGFzc2VydENvbmZpZyhscWNvQ29uZmlnIHx8IHt9KVxyXG4gICAgICAgIC53aGVyZVBhcmFtKFwibmFtZVwiKS5pc09wdGlvbmFsKCkuaXNTdHJpbmcoKVxyXG4gICAgICAgIC53aGVyZVBhcmFtKFwiaXNDYXNlU2Vuc2l0aXZlXCIpLmlzT3B0aW9uYWwoKS5pc0Jvb2xlYW4oKVxyXG4gICAgICAgIC53aGVyZVBhcmFtKFwidXNlc1NxbDkyQ29tcGxpYW50U3RyaW5nQ29tcGFyaXNvblwiKS5pc0Jvb2xlYW4oKVxyXG4gICAgICAgIC5hcHBseUFsbCh0aGlzKTtcclxuICAgIGlmICghdGhpcy5uYW1lKSB7XHJcbiAgICAgIHRoaXMubmFtZSA9IGNvcmUuZ2V0VXVpZCgpO1xyXG4gICAgfVxyXG4gICAgY29uZmlnLl9zdG9yZU9iamVjdCh0aGlzLCBcIkxvY2FsUXVlcnlDb21wYXJpc29uT3B0aW9uc1wiLCB0aGlzLm5hbWUpO1xyXG4gIH1cclxuXHJcbiAgLyoqXHJcbiAgQ2FzZSBpbnNlbnNpdGl2ZSBTUUwgY29tcGxpYW50IG9wdGlvbnMgLSB0aGlzIGlzIGFsc28gdGhlIGRlZmF1bHQgdW5sZXNzIG90aGVyd2lzZSBjaGFuZ2VkLlxyXG4gICoqL1xyXG4gIHN0YXRpYyBjYXNlSW5zZW5zaXRpdmVTUUwgPSBuZXcgTG9jYWxRdWVyeUNvbXBhcmlzb25PcHRpb25zKHtcclxuICAgIG5hbWU6IFwiY2FzZUluc2Vuc2l0aXZlU1FMXCIsXHJcbiAgICBpc0Nhc2VTZW5zaXRpdmU6IGZhbHNlLFxyXG4gICAgdXNlc1NxbDkyQ29tcGxpYW50U3RyaW5nQ29tcGFyaXNvbjogdHJ1ZVxyXG4gIH0pO1xyXG5cclxuICAvKipcclxuICBUaGUgZGVmYXVsdCB2YWx1ZSB3aGVuZXZlciBMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnMgYXJlIG5vdCBzcGVjaWZpZWQuIEJ5IGRlZmF1bHQgdGhpcyBpcyAnY2FzZUluc2Vuc2l0aXZlU1FMJy5cclxuICAqKi9cclxuICBzdGF0aWMgZGVmYXVsdEluc3RhbmNlID0gbmV3IExvY2FsUXVlcnlDb21wYXJpc29uT3B0aW9ucyhMb2NhbFF1ZXJ5Q29tcGFyaXNvbk9wdGlvbnMuY2FzZUluc2Vuc2l0aXZlU1FMKTtcclxuXHJcbiAgLyoqXHJcbiAgU2V0cyB0aGUgJ2RlZmF1bHRJbnN0YW5jZScgYnkgY3JlYXRpbmcgYSBjb3B5IG9mIHRoZSBjdXJyZW50ICdkZWZhdWx0SW5zdGFuY2UnIGFuZCB0aGVuIGFwcGx5aW5nIGFsbCBvZiB0aGUgcHJvcGVydGllcyBvZiB0aGUgY3VycmVudCBpbnN0YW5jZS5cclxuICBUaGUgY3VycmVudCBpbnN0YW5jZSBpcyByZXR1cm5lZCB1bmNoYW5nZWQuXHJcbiAgPiAgICAgdmFyIGxxY28gPSBuZXcgTG9jYWxRdWVyeUNvbXBhcmlzb25PcHRpb25zKHtcclxuICA+ICAgICAgICBpc0Nhc2VTZW5zaXRpdmU6IGZhbHNlO1xyXG4gID4gICAgICAgIHVzZXNTcWw5MkNvbXBsaWFudFN0cmluZ0NvbXBhcmlzb246IHRydWU7XHJcbiAgPiAgICAgfSk7XHJcbiAgPiAgICAgbHFjby5zZXRBc0RlZmF1bHQoKTtcclxuICAqKi9cclxuICBzZXRBc0RlZmF1bHQoKSB7XHJcbiAgICByZXR1cm4gY29yZS5zZXRBc0RlZmF1bHQodGhpcywgTG9jYWxRdWVyeUNvbXBhcmlzb25PcHRpb25zKTtcclxuICB9XHJcblxyXG59XHJcbkxvY2FsUXVlcnlDb21wYXJpc29uT3B0aW9ucy5wcm90b3R5cGUuXyR0eXBlTmFtZSA9IFwiTG9jYWxRdWVyeUNvbXBhcmlzb25PcHRpb25zXCI7XHJcbiJdfQ==